您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關python3常見解密加密算法有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
一.使用base64
Base64編碼,64指A-Z、a-z、0-9、+和/這64個字符,還有“=”號不屬于編碼字符,而是填充字符。
優點:方法簡單
缺點:不保險,別人拿到密文可以自己解密出明文
編碼原理:將3個字節轉換成4個字節((3 X 8)=24=(4X6)),先讀入3個字節,每讀一個字節,左移8位,再右移四次,每次6位,這樣就有4個字節了。
解碼原理:將4個字節轉換成3個字節,先讀入4個6位(用或運算),每次左移6位,再右移3次,每次8位,這樣就還原了。
Python3中base64模塊與Python2使用方法有了明顯的不一樣,接下來簡要介紹下base64模塊。
Python 3.5.2+ (default, Aug 5 2016, 08:07:14)
[GCC 6.1.1 20160724] on linux
Type "help", "copyright", "credits" or "license" for more information.
首先導入base64模塊
>>> import base64 >>> my_str='hello'
然后把字符串轉碼為UTF-8格式:
>>> utf_str=my_str.encode(encoding="utf-8") >>> utf_str b'hello'
我們試著用Base64方式加密:
>>> word=base64.b64encode(utf_str) >>> word b'aGVsbG8='
最后用Base64方式解密:
>>> hello=base64.b64decode(word.decode()) >>> hello b'hello' >>> hello.decode() 'hello'
可以看到,已經成功解密出來!
二.使用pycrypto
Python有個專門的加密解密工具包pycropto,這個包里面實現了MD2,MD4,MD5,RIPEMD,SHA1,SHA256等加密算法。
>>> from Crypto.Hash import MD5 >>> obj = MD5.new() >>> obj.update(b"hello") >>> obj.hexdigest() >>> obj.hexdigest() '5d41402abc4b2a76b9719d911017c592'
關于“python3常見解密加密算法有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。