常见加解密算法小工具
时间: 2023-07-25 18:10:18 浏览: 141
好的,以下是几种常见的加解密算法的 Python 小工具:
## Base64 编码/解码
```python
import base64
def base64_encode(text):
encoded = base64.b64encode(text.encode())
return encoded.decode()
def base64_decode(text):
decoded = base64.b64decode(text)
return decoded.decode()
text = 'Hello, World!'
encoded_text = base64_encode(text)
decoded_text = base64_decode(encoded_text)
print('原文:', text)
print('编码后:', encoded_text)
print('解码后:', decoded_text)
```
## MD5 加密
```python
import hashlib
def md5_encode(text):
md5 = hashlib.md5()
md5.update(text.encode())
return md5.hexdigest()
text = 'Hello, World!'
encoded_text = md5_encode(text)
print('原文:', text)
print('MD5 加密后:', encoded_text)
```
## AES 加密/解密
```python
from Crypto.Cipher import AES
import base64
def aes_encrypt(text, key, iv):
aes = AES.new(key.encode('utf-8'), AES.MODE_CBC, iv.encode('utf-8'))
encrypted = aes.encrypt(text.encode('utf-8'))
return base64.b64encode(encrypted).decode('utf-8')
def aes_decrypt(text, key, iv):
aes = AES.new(key.encode('utf-8'), AES.MODE_CBC, iv.encode('utf-8'))
decrypted = aes.decrypt(base64.b64decode(text)).decode('utf-8')
return decrypted.rstrip('\0')
text = 'Hello, World!'
key = '0123456789abcdef'
iv = 'fedcba9876543210'
encrypted_text = aes_encrypt(text, key, iv)
decrypted_text = aes_decrypt(encrypted_text, key, iv)
print('原文:', text)
print('AES 加密后:', encrypted_text)
print('AES 解密后:', decrypted_text)
```
需要提醒的是,加解密算法是需要谨慎使用的,尤其是在涉及到用户隐私的情况下。对于密码等敏感信息的存储和传输,应该使用专业的加解密库或者框架。