採用工具是Anaconda的python軟體工具,因為其包含python語句外,還包含許多統計函數
2、具體使用步驟
1)資料庫資料匯出成csv檔案,其中有需進行md5加密欄位
2)csv匯入至python中
3)載入md5函數
4)進行md5加密
5)匯出加密後資料
MD5是什麼?
MD5為電腦安全領域廣泛使用的一種散列函數,用以提供訊息的完整性保護。
1991年,Rivest開發出技術上更為趨近成熟的md5演算法。它在MD4的基礎上增加了"安全-帶子"(safety-belts)的概念。雖然MD5比MD4複雜度大一些,但卻更為安全。這個演算法很明顯的由四個和MD4設計有少許不同的步驟組成。在MD5演算法中,資訊-摘要的大小和填充的必要條件與MD4完全相同。Den boer和Bosselaers曾發現MD5演算法中的假衝突(pseudo-collisions),但除此之外就沒有其他被發現的加密後結果了。
MD5有什麼作用?
典型應用是對一段資訊(Message)產生資訊摘要(Message-Digest),以防止被篡改。比如,在Unix下有很多軟體在下載的時候都有一個檔案名稱相同,副檔名為.md5的檔案,在這個檔案中通常只有一行文本,大致結構如:
MD5 (tanajiya.tar.gz) = 0ca175b9c0f726a831d895e269332461
這就是tanajiya.tar.gz檔案的數位簽章。MD5將整個檔案當作一個大文本資訊,通過其無法復原的字串變換演算法,產生了這個唯一的MD5資訊摘要。為了讓讀者朋友對MD5的應用有個直觀的認識,筆者以一個比方和一個執行個體來簡要描述一下其工作過程:
大家都知道,地球上任何人都有自己獨一無二的指紋,這常常成為司法機關鑒別罪犯身份最值得信賴的方法;與之類似,MD5就可以為任何檔案(不管其大小、格式、數量)產生一個同樣獨一無二的“數位指紋”,如果任何人對檔案做了任何改動,其MD5值也就是對應的“數位指紋”都會發生變化。
先對單個欄位加密:
import hashlib m=hashlib.md5() #單個md5加密 d='1dsadad33' type(d) #m.update(d) #在進行md5雜湊計算前,需要對資料進行編碼。必須將資料轉換為bytes類型 #方法可是d.encode("utf8"),除utf8,還有gb2312、mbcs、unicode_escape等 m.update(d.encode("utf8")) psw=m.hexdigest() print(psw)