最新回答 / 宋兆恒
前端后端都是應(yīng)該要加密的,前端可以發(fā)送一個(gè)hidden域的加密后的password到后臺(tái),后臺(tái)再對(duì)這段數(shù)據(jù)進(jìn)行再次加密的處理,兩端的加密算法不一樣,由雙方自己掌握,但是明文密碼按規(guī)矩是不可以直接傳輸?shù)?。不要傳輸明文密碼。 實(shí)際上你傳過來到后臺(tái)的數(shù)據(jù)。在我后臺(tái)看來就是密碼,我后臺(tái)會(huì)對(duì)這段字符再次進(jìn)行加密,數(shù)據(jù)庫中會(huì)儲(chǔ)存我加密后的密碼值。校驗(yàn)的時(shí)候,從數(shù)據(jù)庫取出加密后的密碼,并獲取前端傳輸過來的字符串,用相應(yīng)的算法對(duì)兩者進(jìn)行比對(duì)就可以了。
2019-04-19
最贊回答 / 水不要魚_
你有沒有發(fā)現(xiàn)MD5 加密之后的長(zhǎng)度是一樣的,不管原本的信息有多長(zhǎng)?這是因?yàn)?MD5 是摘要算法,有點(diǎn)類似于從你要加密的信息中選取一部分信息出來加密,所以即使你得到了 MD5 加密之后的結(jié)果,也很難從一部分信息中反推出原本的完整信息。另外,MD5 也是存在被破解的情況,那就是最傳統(tǒng)的破解方法,從一堆數(shù)據(jù)中一個(gè)個(gè)去試。所以, MD5 可以設(shè)置一個(gè)鹽值,類似于干擾信息,可以降低被破解的概率。
2018-05-30
最新回答 / 慕粉2333001784
你應(yīng)該是對(duì)一個(gè)對(duì)象用了toString方法,所以才會(huì)這樣,你再看看你需要輸出的到底是什么?用GET方法后再toString或許就可以了
2018-04-02
最新回答 / 蝶夢(mèng)疏妄
可能是轉(zhuǎn)義的時(shí)候出的問題因?yàn)槲?public static void bcHmacMD5() { HMac hmac = new HMac(new MD5Digest()); hmac.init(new KeyParameter(org.bouncycastle.util.encoders.Hex.decode(""))); hmac.update(src.getBytes(), 0, src.getBytes().length); // ...
2017-07-01
最新回答 / vita_強(qiáng)
老師只是提供了你一種學(xué)習(xí)的思路,但是實(shí)際運(yùn)用過程中,很多知識(shí)還是要自己去總結(jié)的
2017-06-15
最新回答 / taoy
一個(gè)byte是八比特,new String時(shí)按照byte的值到字符表中找對(duì)應(yīng)的字符來生成字符串。Hex.byteArrayToString是把一個(gè)byte變成兩個(gè)十六進(jìn)制的英文與數(shù)字組合,內(nèi)容當(dāng)然就不會(huì)一樣。
2017-04-10
最贊回答 / 宋兆恒
無論輸入的消息有多長(zhǎng),計(jì)算出來的消息摘要的長(zhǎng)度總是固定的。例如應(yīng)用MD5算法摘要的消息有128個(gè)比特位,用SHA-1算法摘要的消息最終有160比特位的輸出,SHA-1的變體可以產(chǎn)生192比特位和256比特位的消息摘要。一般認(rèn)為,摘要的最終輸出越長(zhǎng),該摘要算法就越安全。
2017-03-02
最新回答 / 無語的人
不一定是10個(gè),key的元素個(gè)數(shù)是偶數(shù)就行。以下是CC的Hex.decodeHex()方法的文檔注釋:<...圖片...>BC報(bào)這個(gè)異常的原因應(yīng)該類似。
2016-12-06
最新回答 / 慕后端6532889
。。。eclipse么?去官網(wǎng)下唄eclipse下載? 。話說,我現(xiàn)在都不用eclipse了,IntellJ?IDEA編輯器挺好用的,主要是顏值比eclipse高,快捷鍵也多,代碼提示也更智能。IDEA學(xué)生通道
2016-11-07