java加密技術(shù)

java加密技術(shù)

ID:28090506

大?。?.02 MB

頁數(shù):97頁

時間:2018-12-07

java加密技術(shù)_第1頁
java加密技術(shù)_第2頁
java加密技術(shù)_第3頁
java加密技術(shù)_第4頁
java加密技術(shù)_第5頁
資源描述:

《java加密技術(shù)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、WORD格式整理版Java加密技術(shù)(一)文章分類:Java編程???加密解密,曾經(jīng)是我一個畢業(yè)設(shè)計的重要組件。在工作了多年以后回想當時那個加密、解密算法,實在是太單純了。????言歸正傳,這里我們主要描述Java已經(jīng)實現(xiàn)的一些加密解密算法,最后介紹數(shù)字證書。????如基本的單向加密算法:?·BASE64嚴格地說,屬于編碼格式,而非加密算法·MD5(MessageDigestalgorithm5,信息摘要算法)·SHA(SecureHashAlgorithm,安全散列算法)·HMAC(HashMessageAuthenticationCode,散列消息鑒別

2、碼)???復雜的對稱加密(DES、PBE)、非對稱加密算法:?·DES(DataEncryptionStandard,數(shù)據(jù)加密算法)·PBE(Password-basedencryption,基于密碼驗證)·RSA(算法的名字以發(fā)明者的名字命名:RonRivest,AdiShamir和LeonardAdleman)·DH(Diffie-Hellman算法,密鑰一致協(xié)議)·DSA(DigitalSignatureAlgorithm,數(shù)字簽名)·ECC(EllipticCurvesCryptography,橢圓曲線密碼編碼學)???本篇內(nèi)容簡要介紹BASE6

3、4、MD5、SHA、HMAC幾種方法。?????MD5、SHA、HMAC這三種加密算法,可謂是非可逆加密,就是不可解密的加密方法。我們通常只把他們作為加密的基礎(chǔ)。單純的以上三種的加密并不可靠。?BASE64?按照RFC2045的定義,Base64被定義為:Base64內(nèi)容傳送編碼被設(shè)計用來把任意序列的8位字節(jié)描述為一種不易被人直接識別的形式。(TheBase64Content-Transfer-Encodingisdesignedtorepresentarbitrarysequencesofoctetsinaformthatneednotbehumanl

4、yreadable.)?常見于郵件、http加密,截取http信息,你就會發(fā)現(xiàn)登錄操作的用戶名、密碼字段通過BASE64加密的。?學習參考好幫手WORD格式整理版?通過java代碼實現(xiàn)如下:?Java代碼??1./**?2.?*?BASE64解密?3.?*??4.?*?@param?key?5.?*?@return?6.?*?@throws?Exception?7.?*/??8.public?static?byte[]?decryptBASE64(String?key)?throws?Exception?{??9.????return?(new?BASE

5、64Decoder()).decodeBuffer(key);??10.}??11.??12./**?13.?*?BASE64加密?14.?*??15.?*?@param?key?16.?*?@return?17.?*?@throws?Exception?18.?*/??19.public?static?String?encryptBASE64(byte[]?key)?throws?Exception?{??20.????return?(new?BASE64Encoder()).encodeBuffer(key);??21.}??學習參考好幫手WORD格

6、式整理版主要就是BASE64Encoder、BASE64Decoder兩個類,我們只需要知道使用對應(yīng)的方法即可。另,BASE加密后產(chǎn)生的字節(jié)位數(shù)是8的倍數(shù),如果不夠位數(shù)以=符號填充。?MD5?MD5--message-digestalgorithm5(信息-摘要算法)縮寫,廣泛用于加密和解密技術(shù),常用于文件校驗。校驗?不管文件多大,經(jīng)過MD5后都能生成唯一的MD5值。好比現(xiàn)在的ISO校驗,都是MD5校驗。怎么用?當然是把ISO經(jīng)過MD5后產(chǎn)生MD5的值。一般下載linux-ISO的朋友都見過下載鏈接旁邊放著MD5的串。就是用來驗證文件是否一致的。??通過

7、java代碼實現(xiàn)如下:?Java代碼??1./**?2.?*?MD5加密?3.?*??4.?*?@param?data?5.?*?@return?6.?*?@throws?Exception?7.?*/??8.public?static?byte[]?encryptMD5(byte[]?data)?throws?Exception?{??9.??10.????MessageDigest?md5?=?MessageDigest.getInstance(KEY_MD5);??11.????md5.update(data);??12.??學習參考好幫手WORD

8、格式整理版1.????return?md5.digest();??2.??3.}

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。