python中的hashlib和base64加密模塊使用實例
看到好幾位博主通過對模塊的各個擊破學習python,我也效法一下,本篇說一下python中加密涉及到的模塊。
hashlib
hashlib模塊支持的加密算法有md5 sha1 sha224 sha256 sha384 sha512(加密原理請參考此處),使用起來也很簡單。
以md5加密為例,有兩種方法:
一、 追加模式
代碼示例:
import hashlib #引入hashlib模塊
mm = hashlib.md5() #創(chuàng)建一個md5對象
mm.update("Hello") #通過update方法加密文本
mm.update(" world!") #追加,這兩句相當于 mm.update("Hello world!")
print mm.digest() #輸出加密后的二進制數(shù)據(jù)
print mm.hexdigest() #輸出加密后的十六進制數(shù)據(jù)
二、 一句話
如果不需要追加,只用加密一段文本,可用這種形式,代碼示例:
import hashlib
hashlib.new("md5","Hello world!").digest()
此外,md5等算法對象還提供了digest_size和block_size等屬性,指示加密后文本的大小。
對于其他的加密算法,只要在代碼中替換「md5」即可,不再舉例。
base64
這個模塊提供的加密算法并不安全,但十分簡單,有時候會用到。
代碼示例:
import base64
a = "Hello world!"
b = base64.encodestring(a) #加密
c = base64.decodestring(b) #解密
print a==c
python還有諸多的第三方模塊提供更多的加密方式,以后學到的時候再說。
相關文章
Django JWT Token RestfulAPI用戶認證詳解
這篇文章主要介紹了Django JWT Token RestfulAPI用戶認證詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-01-01
python數(shù)學建模之Matplotlib?實現(xiàn)圖片繪制
這篇文章主要介紹了python數(shù)學建模之Matplotlib?實現(xiàn)圖片繪制,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-07-07
Blender Python編程實現(xiàn)程序化建模生成超形示例詳解
這篇文章主要為大家介紹了Blender Python編程實現(xiàn)程序化建模生成超形示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-08-08
Python2和Python3之間的str處理方式導致亂碼的講解
今天小編就為大家分享一篇關于Python2和Python3之間的str處理方式導致亂碼的講解,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01

