1. 程式人生 > >Python中的如何給一個字串加密

Python中的如何給一個字串加密

Python中自帶的hashlib模組的功能是給字串進行加密,加密方式有以下幾種:

md5、sha1、sh224、sha256、sha384、sha512

常用的是md5和sha1

這裡首先介紹一下sh1的用法:

步驟如下:

1、匯入sha1

2、生成sha1物件

3、sha1物件呼叫update()方法

4、sha1物件再次呼叫hexdigest()方法

5、儲存或者列印第4步生成的字串

程式碼如下:

from hashlib import sha1

def jia_mi(str):
    sh = sha1()
    sh.update(str.encode())
    return sh.hexdigest()

if __name__ == "__main__":
    pwd = jia_mi("hello")
    print(pwd)    
    

輸出結果為40為加密後的字串:

aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d

需要注意的是在Python3中生成的sha1物件在呼叫update()方法時,傳入的字串要先進行編碼

即encode()

如果不編碼會爆出下面的異常:

TypeError: Unicode-objects must be encoded before hashing