1. 程式人生 > >Python實現DES、DES3、AES、RSA、MD5、SHA、HMAC加密方式及示例

Python實現DES、DES3、AES、RSA、MD5、SHA、HMAC加密方式及示例

對上述七中加密方式的整理,始於前端js對密碼加密實現的需要,目前使用最多是AES、RSA、MD5,當然這三個的巢狀和混合使用情況也比較多。

這應該是Python3目前最全的整理,所有案列都親自測試可行,並標註了使用的一些注意事項和說明。

目前總結有下面幾點:

對稱加密(加密解密金鑰相同):DES、DES3、AES

非對稱加密(分公鑰私鑰):RSA

資訊摘要演算法/簽名演算法:MD5、HMAC、SHA

前端實際使用中MD5、AES、RSA使用頻率是最高的

幾種加密方式配合次序:採用非對稱加密演算法管理對稱演算法的金鑰,然後用對稱加密演算法加密資料,用簽名演算法生成非對稱加密的摘要

DES、DES3、AES、RSA、MD5、SHA、HMAC傳入的訊息或者金鑰都是bytes資料型別,不是bytes資料型別的需要先轉換;金鑰一般是8的倍數

Python實現RSA中,在rsa庫中帶有生成簽名和校對簽名的方法

安全性:DES<DES3=AES<RSA,至於MD5、SHA、HMAC不好說了

具體使用示例見下:
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述

原始碼上傳到github,點選閱讀原文或者後臺回覆:加密,可獲得github連線。


ID:Python之戰

|作|者|公(zhong)號:python之戰

專注Python,專注於網路爬蟲、RPA的學習-踐行-總結

喜歡研究和分享技術瓶頸,歡迎關注

獨學而無友,則孤陋而寡聞!