Python中常用的加密函數主要有兩種:cryptography
庫中的Fernet加密和使用hashlib
庫進行MD5、SHA1、SHA256等哈希加密。以下是這兩種加密函數的使用方法:
首先,需要生成一個密鑰,然后使用該密鑰對數據進行加密和解密。可以使用cryptography
庫中的Fernet
類來實現。
from cryptography.fernet import Fernet
# 生成密鑰
key = Fernet.generate_key()
# 創建Fernet對象
cipher_suite = Fernet(key)
# 加密數據
plain_text = "Hello, World!"
cipher_text = cipher_suite.encrypt(plain_text.encode())
print("加密后的數據:", cipher_text)
# 解密數據
decrypted_text = cipher_suite.decrypt(cipher_text).decode()
print("解密后的數據:", decrypted_text)
hashlib
庫提供了多種哈希算法,如MD5、SHA1、SHA256等。可以使用這些算法對數據進行哈希加密。
import hashlib
# 數據
data = "Hello, World!"
# 使用MD5算法進行哈希加密
md5_hash = hashlib.md5(data.encode()).hexdigest()
print("MD5哈希值:", md5_hash)
# 使用SHA1算法進行哈希加密
sha1_hash = hashlib.sha1(data.encode()).hexdigest()
print("SHA1哈希值:", sha1_hash)
# 使用SHA256算法進行哈希加密
sha256_hash = hashlib.sha256(data.encode()).hexdigest()
print("SHA256哈希值:", sha256_hash)
請注意,以上示例中的加密方式都是單向加密,即將數據轉換為不可逆的哈希值或密文。如果需要解密或還原原始數據,需要保存相應的密鑰或密碼。同時,加密后的數據應妥善保管,避免泄露。