黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java md5加密方法

Java md5加密方法

更新時間:2022-08-22 10:48:49 來源:動力節點 瀏覽4790次

MD5加密很常用,比如數據庫中密碼等敏感字段需要加密存儲,核對密碼時先以同樣的方式對用戶輸入的密碼進行加密,再與數據庫中存儲的密碼比較。

MD5加密有很多種實現方式,此處介紹2種。

1.使用JDK自帶MessageDigest

public class MD5Util {    
    public static String getMD5Str(String str) {
        byte[] digest = null;
        try {
            MessageDigest md5 = MessageDigest.getInstance("md5");
            digest  = md5.digest(str.getBytes("utf-8"));
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        //16是表示轉換為16進制數
        String md5Str = new BigInteger(1, digest).toString(16);
        return md5Str;
    }
}

2.使用Spring自帶的DigestUtils

上面是自己封裝,太麻煩,Spring已經給我們封裝好了。

String md5Str = DigestUtils.md5DigestAsHex("原串".getBytes());

說明

只使用md5加密是不行的,很容易被破解。常見的做法有:

先對原串進行一些處理,比如先給它拼接一個字符串常量,再進行md5加密。即使對方解密,也獲取不到原串。

使用多種加密算法。比如先用md5加密,再對加密的結果使用其它加密算法進行加密。比如先使用md5加密,對加密的結果再次使用md5加密。

這2種方式方式經常一起使用。

第一種確實有問題,我測試了幾百萬個數據,不符合的數據加密后長度集中在29、30、31,

這幾百萬個數據中沒有出現大于32的,數據庫字段長度設置為32字符,能存儲得下,依然可以使用,只不過數據長度不一定是32位。

第二種加密后是32位的,無論是性能、可靠性、編碼量都比其它方式優異,推薦。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 91视频成人| 日本xxxxn1819| 未成人禁止视频高清在线观看 | 五月婷婷国产 | 窝窝免费午夜视频一区二区 | 欧美激情免费a视频 | 欧美日韩国产高清 | 99成人在线 | 黄色成人毛片 | 永久免费观看午夜视频在线 | 国产播放啪视频免费视频 | 国产在线观看一区精品 | 亚洲区精品 | 久久99精品九九九久久婷婷 | 欧美专区亚洲 | 免费精品视频 | 久久综合丝袜长腿丝袜 | 国产黄色精品 | 国内视频一区二区三区 | 天天影视涩香欲综合网 | 亚洲色大成网站www 亚洲色图天堂 | 伦理 在线 | 国产呦萝资源网站 | 午夜激情福利在线 | 久综合网| 动漫精品一区二区三区四区 | 天天操综合视频 | 国内自拍欧美 | 欧美午夜不卡 | 天天精品视频在线观看资源 | 综合久久久久久 | 免费网站国产 | 亚洲va欧美 | 在线色片 | 小黄漫画激情四射在线观看 | 欧美三级一区二区三区 | 青青草原手机在线视频 | 99热在线观看免费 | 中文字幕在线观看免费视频 | 久久天天躁日日躁狠狠躁 | 国产一区成人 |