国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java如何實(shí)現(xiàn)密碼加密

瀏覽:4日期:2022-08-26 17:30:55

在查詢(xún)時(shí),我們?nèi)绻獙?duì)用戶(hù)的登錄信息進(jìn)行加密,通常會(huì)將其密碼進(jìn)行加密.

1) 可以借助spring框架工具類(lèi)DigestUtils

2) 也可以使用shiro框架來(lái)實(shí)現(xiàn)

//保存用戶(hù)自身信息//1構(gòu)建一個(gè)鹽值對(duì)象String salt=UUID.randomUUID().toString();//隨機(jī)字符串//2對(duì)密碼進(jìn)行鹽值加密(加密算法MD5-特點(diǎn):不可逆,相同內(nèi)容加密結(jié)果也相同)//2.1加密方式1(借助spring框架工具類(lèi)DigestUtils)//String newPassword=DigestUtils.md5DigestAsHex((salt+entity.getPassword()).getBytes());//2.2加密方式2(借助shiro框架中的API)SimpleHash sh=new SimpleHash('MD5', entity.getPassword(), salt, 1);String newPassword=sh.toHex();System.out.println('newPassword='+newPassword);entity.setSalt(salt);entity.setPassword(newPassword);

以上就是兩者方式分別使用,

注意:

鹽值salt:UUID.randomUUID().toString();生成的是一個(gè)隨機(jī)字符串.

SimpleHash sh=new SimpleHash('MD5', entity.getPassword(), salt, 1);

這行shiro框架提供的加密中,

第一個(gè)參數(shù)'MD5'為加密算法,其特點(diǎn):不可逆(只能加密不能解密),但是相同內(nèi)容加密結(jié)果也相同;

第二個(gè)參數(shù)source,代表原密碼;

第三個(gè)參數(shù)salt,就是我們先生成的鹽值隨機(jī)數(shù);

第四個(gè)參數(shù)1,代表加密次數(shù),我們這里只加密了一次.

entity.setSalt(salt);entity.setPassword(sh.toHex());

加密處理過(guò)后,我們?cè)賹⑿滦薷牡拿艽a轉(zhuǎn)換為16進(jìn)制數(shù)賦值給對(duì)象,salt的傳遞看你對(duì)象屬性的設(shè)置.

然后再根據(jù)新的對(duì)象內(nèi)的數(shù)據(jù)進(jìn)行操作即可.

以上就是Java如何實(shí)現(xiàn)密碼加密的詳細(xì)內(nèi)容,更多關(guān)于Java密碼加密的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 孟津县| 钟祥市| 习水县| 乌鲁木齐市| 固原市| 广宁县| 会同县| 延津县| 美姑县| 揭阳市| 秭归县| 雅安市| 南召县| 苗栗县| 蓝田县| 苍山县| 文水县| 慈利县| 浙江省| 株洲市| 高雄市| 卢湾区| 黔西| 民权县| 宜良县| 永平县| 桑日县| 墨脱县| 滨州市| 齐齐哈尔市| 桓台县| 海门市| 论坛| 同心县| 登封市| 曲麻莱县| 玛多县| 海宁市| 彰化市| 沭阳县| 临武县|