Python 加密和解密的技術(shù)不難掌握。有許多現(xiàn)成的庫可以幫助你實現(xiàn)加密和解密的功能。以下是一些常用的庫和方法:
PyCryptodome:這是一個功能強(qiáng)大的加密庫,提供了許多加密算法,如 AES、DES、RSA 等。使用 PyCryptodome,你可以輕松地實現(xiàn)加密和解密功能。
安裝:pip install pycryptodome
示例:
from Crypto.Cipher import AES
from Crypto.Random import get_random_bytes
from Crypto.Util.Padding import pad, unpad
key = get_random_bytes(16) # AES-128 需要 16 字節(jié)的密鑰
plaintext = b"Hello, World!"
cipher = AES.new(key, AES.MODE_CBC)
ciphertext = cipher.encrypt(pad(plaintext, AES.block_size))
print("加密后的文本:", ciphertext)
cipher = AES.new(key, AES.MODE_CBC, cipher.iv)
decrypted_text = unpad(cipher.decrypt(ciphertext), AES.block_size)
print("解密后的文本:", decrypted_text)
cryptography:這是另一個流行的加密庫,提供了許多加密算法和密碼學(xué)工具。
安裝:pip install cryptography
示例:
from cryptography.fernet import Fernet
key = Fernet.generate_key()
cipher_suite = Fernet(key)
plaintext = b"Hello, World!"
ciphertext = cipher_suite.encrypt(plaintext)
print("加密后的文本:", ciphertext)
decrypted_text = cipher_suite.decrypt(ciphertext)
print("解密后的文本:", decrypted_text)
這些庫提供了簡單易用的接口,讓你可以快速實現(xiàn)加密和解密功能。當(dāng)然,加密和解密本身涉及到許多復(fù)雜的數(shù)學(xué)原理和安全問題,但如果你只需要實現(xiàn)基本的加密和解密功能,這些庫已經(jīng)足夠使用了。如果你需要更深入地了解加密技術(shù),建議學(xué)習(xí)密碼學(xué)相關(guān)書籍和課程。