加密是一种将信息转换为密文的过程,以保护信息不被未授权的第三方访问。以下是一些基本的加密概念:
- 对称加密:使用相同的密钥进行加密和解密。
- 非对称加密:使用一对密钥,一个用于加密,另一个用于解密。
- 散列函数:将任意长度的数据映射为固定长度的数据,通常用于密码存储和验证。
对称加密
对称加密的例子包括:
- AES(高级加密标准)
- DES(数据加密标准)
非对称加密
非对称加密的例子包括:
- RSA
- ECC(椭圆曲线加密)
散列函数
散列函数的例子包括:
- MD5
- SHA-256
例子
以下是一个简单的AES加密的例子:
from Crypto.Cipher import AES
from Crypto.Util.Padding import pad, unpad
key = b'This is a key123'
cipher = AES.new(key, AES.MODE_CBC)
plaintext = b'This is a secret message.'
padded_plaintext = pad(plaintext, AES.block_size)
ciphertext = cipher.encrypt(padded_plaintext)
# 解密过程
decipher = AES.new(key, AES.MODE_CBC, cipher.iv)
decrypted_plaintext = unpad(decipher.decrypt(ciphertext), AES.block_size)
加密示例
更多关于加密的信息,您可以查看加密技术概述。