溫馨提示×

python加密函數(shù)怎樣使用

小樊
81
2024-10-26 18:46:16
欄目: 編程語言

Python中常用的加密函數(shù)主要有兩種:cryptography庫中的Fernet加密和使用hashlib庫進行MD5、SHA1、SHA256等哈希加密。以下是這兩種加密函數(shù)的使用方法:

Fernet加密

首先,需要生成一個密鑰,然后使用該密鑰對數(shù)據(jù)進行加密和解密??梢允褂?code>cryptography庫中的Fernet類來實現(xiàn)。

from cryptography.fernet import Fernet

# 生成密鑰
key = Fernet.generate_key()

# 創(chuàng)建Fernet對象
cipher_suite = Fernet(key)

# 加密數(shù)據(jù)
plain_text = "Hello, World!"
cipher_text = cipher_suite.encrypt(plain_text.encode())

print("加密后的數(shù)據(jù):", cipher_text)

# 解密數(shù)據(jù)
decrypted_text = cipher_suite.decrypt(cipher_text).decode()
print("解密后的數(shù)據(jù):", decrypted_text)

hashlib哈希加密

hashlib庫提供了多種哈希算法,如MD5、SHA1、SHA256等。可以使用這些算法對數(shù)據(jù)進行哈希加密。

import hashlib

# 數(shù)據(jù)
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)

請注意,以上示例中的加密方式都是單向加密,即將數(shù)據(jù)轉(zhuǎn)換為不可逆的哈希值或密文。如果需要解密或還原原始數(shù)據(jù),需要保存相應(yīng)的密鑰或密碼。同時,加密后的數(shù)據(jù)應(yīng)妥善保管,避免泄露。

0