最贊回答 / 明日之春
這個(gè)是因?yàn)镈igestUtils.sha1Hex(src)中是默認(rèn)使用UTF-8的編碼格式來獲取字節(jié)數(shù)組的,而DigestUtils.sha1Hex(src.getBytes())是用系統(tǒng)默認(rèn)的編碼格式來獲取字節(jié)數(shù)組的,不一定是UTF-8。由于字節(jié)數(shù)組不同,所以結(jié)果也不同所以DigestUtils.sha1Hex(src)應(yīng)該等于DigestUtils.sha1Hex(src.getBytes("UTF-8"))
2016-10-27
最新回答 / 談笑泯過往丶
相對來還是叫安全的,如果你說的是截獲摘要,那么請問,截獲一次摘要,截獲者是幾乎不可能破譯摘要的內(nèi)容,那么密碼就無法修改,你下次登錄就會出現(xiàn)異地登錄的提示,這樣你就該修改密碼了,網(wǎng)上有人提供MD5的解密網(wǎng)站,說是解密,其實(shí)就是大量數(shù)據(jù)信息對比,你輸個(gè)123456的MD值獲取能破解,再復(fù)雜一點(diǎn)點(diǎn)就破解不了了
2016-05-14
最新回答 / 慕移動9181930
老師是臺灣的么?沒有必要在兼容ie6了,我們公司現(xiàn)在的項(xiàng)目做的都不考慮ie6的用戶了,因?yàn)槌杀咎吡?/div>
2016-01-31
最贊回答 / 大LOVE輝
MD5是摘要算法,類似有損壓縮一樣,不能復(fù)原的,因此不能解密。 網(wǎng)上的使用一般是在用戶點(diǎn)擊提交的時(shí)候用js,或Java 加密后的密碼存到數(shù)據(jù)庫中,這時(shí)候別人如果打開數(shù)據(jù)庫看也不知道你原來的密碼是什么。但是你登錄的時(shí)候輸入密碼后再重新用MD5摘要加密,看看出來的結(jié)果與數(shù)據(jù)庫中是否一致,如果一致登錄成功,不一致證明你輸入錯(cuò)誤了。 所以用MD5存密碼,除了你誰都不知道密碼是什么,但是如果你忘了也就不能去數(shù)據(jù)庫看了,只能改密碼,而不能找回。來自百度 ,謝謝采納
2016-01-31
最新回答 / taoy
還原密鑰的說法是不是不準(zhǔn)確?。课矣X得是這樣的:在使用Secretkey是,可以用系統(tǒng)生成的密鑰:KeyGenerator keyGen = KeyGenerator.getInstance("HmacMD5");//指定生成密鑰所使用的算法SecretKey key = keyGen.generateKey();//生成一個(gè)密鑰,這里生成的密鑰是符合算法的標(biāo)準(zhǔn)規(guī)范的密鑰。如果不想麻煩也可以把字符串當(dāng)作的密鑰,就像老師代碼中的十個(gè)a。有了這個(gè)key就可以保證以下代碼生成的密鑰是準(zhǔn)確無誤的了。SecretKe...
2015-12-28
- 課程須知
- 1、需具備Java面向?qū)ο蟮幕A(chǔ)知識 2、需要學(xué)習(xí)加解密的基礎(chǔ),具體內(nèi)容請見《Java實(shí)現(xiàn)Base64加密》課程的第一章
- 老師告訴你能學(xué)到什么?
- 1、能夠使用Java實(shí)現(xiàn)MD、SHA和MAC三種消息摘要算法進(jìn)行加密 2、能夠了解消息摘要算法的應(yīng)用場景
微信掃碼,參與3人拼團(tuán)