复制
收藏
提问
简洁

python实例数据加密代码

5b93999a3
13小时前
全网
文档
学术
百科
知识库
时间不限
自动
回答简洁模式
深入研究一些

Python实例数据加密代码可以通过多种方法实现,以下是一个使用PyCryptodome库进行AES加密和解密的示例代码。7

Python AES加密解密示例

安装PyCryptodome库

pip install pycryptodome

加密解密代码

from Crypto.Cipher import AES
import base64

# 密钥(16字节)
key = b'thisisakey123456'

# 加密函数
def encrypt(raw):
    cipher = AES.new(key, AES.MODE_EAX)
    nonce = cipher.nonce
    ciphertext, tag = cipher.encrypt_and_digest(raw.encode('utf-8'))
    return base64.b64encode(nonce + ciphertext + tag).decode('utf-8')

# 解密函数
def decrypt(enc):
    enc = base64.b64decode(enc)
    nonce = enc[:16]
    ciphertext = enc[16:-16]
    tag = enc[-16:]
    cipher = AES.new(key, AES.MODE_EAX, nonce=nonce)
    return cipher.decrypt_and_verify(ciphertext, tag).decode('utf-8')

# 示例数据
data = "这是一个需要加密的文本"

# 加密
encrypted_data = encrypt(data)
print(f"加密后的数据: {encrypted_data}")

# 解密
decrypted_data = decrypt(encrypted_data)
print(f"解密后的数据: {decrypted_data}")

代码说明

  1. 密钥: 使用16字节的密钥进行加密和解密。
  2. 加密函数: 使用AES加密模式EAX,返回加密后的数据和认证标签。
  3. 解密函数: 使用相同的密钥和nonce进行解密,并验证数据的完整性。
  4. 示例数据: 加密和解密一个简单的文本字符串。

通过这个示例,你可以了解如何在Python中使用AES进行数据加密和解密。7

你觉得结果怎么样?
数据加密的基本原理是什么?
常见的加密算法有哪些?
如何选择合适的加密方法?
AES加密模式有哪些?
如何生成安全的AES密钥?
PyCryptodome库支持哪些加密算法?

以上内容由AI搜集生成,仅供参考

在线客服