欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java代碼實(shí)現(xiàn)MD5加密及驗(yàn)證過(guò)程詳解

 更新時(shí)間:2019年10月12日 10:20:37   作者:我的有趣住在無(wú)趣里  
這篇文章主要介紹了java代碼實(shí)現(xiàn)MD5加密及驗(yàn)證過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

MD5加密

在我們的程序中,不管是什么,都會(huì)有安全問(wèn)題,今天就說(shuō)的是MD5加密的方法

MD5是哈希算法,也就是 從明文A到密文B很容易,但是從密文B到明文A幾乎不可能

也就是說(shuō),給你密文,是幾乎無(wú)法通過(guò)解密來(lái)得到明文的。

這個(gè)一般用于存儲(chǔ)密碼。也就是數(shù)據(jù)庫(kù)里存的是密文,管理員只能看到密文,而看不到明文。

在pom文件導(dǎo)入相關(guān)依賴

  <!--MD5依賴-->
  <dependency>
   <groupId>org.apache.commons</groupId>
   <artifactId>commons-lang3</artifactId>
   <version>3.3.2</version>
  </dependency>
  <dependency>
    <groupId>commons-codec</groupId>
    <artifactId>commons-codec</artifactId>
   </dependency>

添加MD5工具類

import org.apache.commons.codec.digest.DigestUtils;

public class Md5 {
 public final static String md5key = "Ms2";
 /**
  * MD5方法
  * @param text 明文
  * @param key 密鑰
  * @return 密文
  * @throws Exception
  */
 public static String md5(String text, String key) throws Exception {
  //加密后的字符串
  String encodeStr= DigestUtils.md5Hex(text + key);
  System.out.println("MD5加密后的字符串為:encodeStr="+encodeStr);
  return encodeStr;
 }

 /**
  * MD5驗(yàn)證方法
  * @param text 明文
  * @param key 密鑰
  * @param md5 密文
  * @return true/false
  * @throws Exception
  */
 public static boolean verify(String text, String key, String md5) throws Exception {
  //根據(jù)傳入的密鑰進(jìn)行驗(yàn)證
  String md5Text = md5(text, key);
  if(md5Text.equalsIgnoreCase(md5))
  {
   System.out.println("MD5驗(yàn)證通過(guò)");
   return true;
  }
  return false;
 }
}

簡(jiǎn)單說(shuō)一下里面的md5方法和verify方法

md5方法

  • 方法說(shuō)明:加密明文
  • 第一個(gè)傳參的參數(shù)是需要加密的文字
  • 第二個(gè)傳參的參數(shù)是需要密鑰
  • 這個(gè)方法會(huì)return出加密后的MD5密文

verify方法

  • 方法說(shuō)明:將明文轉(zhuǎn)密文,密文與密文進(jìn)行比較,判斷是否一致
  • 第一個(gè)參數(shù)是明文
  • 第二個(gè)參數(shù)是密鑰
  • 第三個(gè)參數(shù)是密文
  • return 出判斷結(jié)果

里面還有一個(gè)變量md5key 這個(gè)就是我們的密鑰

通過(guò)這個(gè)密鑰對(duì)明文進(jìn)行加密

使用我們?cè)谑褂眠@個(gè)方法時(shí)

要獲取密鑰可以直接調(diào)用這個(gè)變量

當(dāng)然這個(gè)密鑰也可以自己設(shè)置

這就是我們的MD5加密方法

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • java獲取當(dāng)前日期和時(shí)間的二種方法分享

    java獲取當(dāng)前日期和時(shí)間的二種方法分享

    這篇文章主要介紹了java獲取當(dāng)前日期和時(shí)間的二種方法,需要的朋友可以參考下
    2014-03-03
  • java中正則表達(dá)式實(shí)例詳解

    java中正則表達(dá)式實(shí)例詳解

    這篇文章主要介紹了java中正則表達(dá)式實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • java代碼規(guī)范review異常事故記錄

    java代碼規(guī)范review異常事故記錄

    這篇文章主要為大家介紹了java代碼規(guī)范關(guān)于異常review代碼發(fā)生異常的事故記錄,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Spring項(xiàng)目使用Maven和BCrypt實(shí)現(xiàn)修改密碼功能方式

    Spring項(xiàng)目使用Maven和BCrypt實(shí)現(xiàn)修改密碼功能方式

    在數(shù)字時(shí)代,信息安全尤其是密碼安全至關(guān)重要,本文通過(guò)實(shí)例探討如何在Spring項(xiàng)目中利用Maven和BCrypt實(shí)現(xiàn)一個(gè)安全的密碼修改功能,我們將從環(huán)境搭建到編寫核心業(yè)務(wù)邏輯,再到完成功能測(cè)試,確保每一步都遵循最佳安全實(shí)踐,通過(guò)本文,你將了解到密碼安全的重要性
    2024-10-10
  • springboot整合quartz項(xiàng)目使用案例

    springboot整合quartz項(xiàng)目使用案例

    quartz是一個(gè)定時(shí)調(diào)度的框架,就目前市場(chǎng)上來(lái)說(shuō),其實(shí)有比quartz更優(yōu)秀的一些定時(shí)調(diào)度框架,不但性能比quartz好,學(xué)習(xí)成本更低,而且還提供可視化操作定時(shí)任務(wù),這篇文章主要介紹了springboot整合quartz項(xiàng)目使用(含完整代碼),需要的朋友可以參考下
    2023-05-05
  • SpringCloud之Ribbon使用示例解析

    SpringCloud之Ribbon使用示例解析

    這篇文章主要為大家介紹了SpringCloud之Ribbon使用示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • spring使用aspect注解切面不起作用的排查過(guò)程及解決

    spring使用aspect注解切面不起作用的排查過(guò)程及解決

    這篇文章主要介紹了spring使用aspect注解切面不起作用的排查過(guò)程及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • 深入淺析ArrayList 和 LinkedList的執(zhí)行效率比較

    深入淺析ArrayList 和 LinkedList的執(zhí)行效率比較

    這篇文章主要介紹了ArrayList 和 LinkedList的執(zhí)行效率比較的相關(guān)資料,需要的朋友可以參考下
    2017-08-08
  • MyBatisPlus分頁(yè)的同時(shí)指定排序規(guī)則說(shuō)明

    MyBatisPlus分頁(yè)的同時(shí)指定排序規(guī)則說(shuō)明

    這篇文章主要介紹了MyBatisPlus分頁(yè)的同時(shí)指定排序規(guī)則說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-12-12
  • 解決RestTemplate第一次請(qǐng)求響應(yīng)速度較慢的問(wèn)題

    解決RestTemplate第一次請(qǐng)求響應(yīng)速度較慢的問(wèn)題

    這篇文章主要介紹了解決RestTemplate第一次請(qǐng)求響應(yīng)速度較慢的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-10-10

最新評(píng)論