中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

Python數據加密怎樣實現簡單

小樊
82
2024-10-26 16:58:16
欄目: 編程語言

在Python中,有多種方法可以實現數據加密。以下是兩種簡單的方法:

  1. 使用cryptography庫進行加密和解密操作。首先需要安裝該庫,可以使用以下命令進行安裝:
pip install cryptography

然后可以使用Fernet對稱加密算法進行加密和解密操作。以下是一個示例代碼:

from cryptography.fernet import Fernet

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

# 加密數據
data = b"Hello, World!"
encrypted_data = cipher_suite.encrypt(data)
print("Encrypted data:", encrypted_data)

# 解密數據
decrypted_data = cipher_suite.decrypt(encrypted_data)
print("Decrypted data:", decrypted_data)
  1. 使用pycryptodome庫進行加密和解密操作。首先需要安裝該庫,可以使用以下命令進行安裝:
pip install pycryptodome

然后可以使用AES對稱加密算法進行加密和解密操作。以下是一個示例代碼:

from Crypto.Cipher import AES
from Crypto.Random import get_random_bytes
from Crypto.Util.Padding import pad, unpad
import base64

# 生成密鑰
key = get_random_bytes(16)
cipher_suite = AES.new(key, AES.MODE_CBC)

# 加密數據
data = b"Hello, World!"
iv = cipher_suite.iv
encrypted_data = cipher_suite.encrypt(pad(data, AES.block_size))
encrypted_data = base64.b64encode(iv + encrypted_data)
print("Encrypted data:", encrypted_data)

# 解密數據
decoded_data = base64.b64decode(encrypted_data)
iv = decoded_data[:16]
encrypted_data = decoded_data[16:]
cipher_suite = AES.new(key, AES.MODE_CBC, iv)
decrypted_data = unpad(cipher_suite.decrypt(encrypted_data), AES.block_size)
print("Decrypted data:", decrypted_data)

需要注意的是,以上示例中的加密和解密操作都是對稱加密算法,即使用相同的密鑰進行加密和解密操作。在實際應用中,通常會使用非對稱加密算法(如RSA)來保證密鑰的安全性,并使用對稱加密算法來加密大量的數據。

0
大竹县| 元谋县| 临沧市| 青阳县| 昂仁县| 精河县| 鄱阳县| 三都| 太康县| 肃南| 崇礼县| 潢川县| 鄂尔多斯市| 岳池县| 和硕县| 南乐县| 甘洛县| 达孜县| 桃园市| 都安| 松桃| 凤庆县| 南宁市| 阳谷县| 若尔盖县| 襄汾县| 仙居县| 天镇县| 和林格尔县| 山丹县| 广饶县| 哈巴河县| 普兰店市| 凤山市| 吴忠市| 沅江市| 德惠市| 汪清县| 肃宁县| 汶川县| 勃利县|