對(duì)上述七中加密方式的整理,始于前端js對(duì)密碼加密實(shí)現(xiàn)的需要啤月,目前使用最多是AES煮仇、RSA、MD5谎仲,當(dāng)然這三個(gè)的嵌套和混合使用情況也比較多浙垫。
這應(yīng)該是Python3目前最全的整理,所有案列都親自測(cè)試可行,并標(biāo)注了使用的一些注意事項(xiàng)和說明夹姥。
目前總結(jié)有下面幾點(diǎn):
對(duì)稱加密(加密解密密鑰相同):DES杉武、DES3、AES
非對(duì)稱加密(分公鑰私鑰):RSA
信息摘要算法/簽名算法:MD5辙售、HMAC轻抱、SHA
前端實(shí)際使用中MD5、AES旦部、RSA使用頻率是最高的
幾種加密方式配合次序:采用非對(duì)稱加密算法管理對(duì)稱算法的密鑰祈搜,然后用對(duì)稱加密算法加密數(shù)據(jù),用簽名算法生成非對(duì)稱加密的摘要
DES志鹃、DES3夭问、AES、RSA曹铃、MD5缰趋、SHA、HMAC傳入的消息或者密鑰都是bytes數(shù)據(jù)類型陕见,不是bytes數(shù)據(jù)類型的需要先轉(zhuǎn)換秘血;密鑰一般是8的倍數(shù)
Python實(shí)現(xiàn)RSA中,在rsa庫中帶有生成簽名和校對(duì)簽名的方法
安全性:DES<DES3=AES<RSA,至于MD5评甜、SHA灰粮、HMAC不好說了
具體使用示例見下:
源碼上傳到github,點(diǎn)擊閱讀原文或者后臺(tái)回復(fù):加密忍坷,可獲得github連接粘舟。
ID:Python之戰(zhàn)
**|作|者|公(zhong)號(hào):python之戰(zhàn) **
專注Python,專注于網(wǎng)絡(luò)爬蟲佩研、RPA的學(xué)習(xí)-踐行-總結(jié)
喜歡研究和分享技術(shù)瓶頸柑肴,歡迎關(guān)注
獨(dú)學(xué)而無友,則孤陋而寡聞!