利用python设计:要求输入字符串可以输出MD5加密值,输入MD5加密值可以转为字符串
时间: 2024-01-22 21:18:56 浏览: 116
Python使用MD5加密算法对字符串进行加密操作示例
5星 · 资源好评率100%
可以使用Python内置的hashlib库来实现MD5加密和解密。
对于输入的字符串,可以使用hashlib库中的md5()方法进行加密,返回的是一个加密后的十六进制字符串。
对于输入的MD5加密值,可以将其转换为十六进制字符串,然后使用bytes.fromhex()方法将其转换为二进制形式,再使用hashlib库中的pbkdf2_hmac()方法进行解密,返回的是一个解密后的二进制字符串,最后使用decode()方法将其转换为原始字符串。
下面是一个示例代码:
```python
import hashlib
def md5_encrypt(string):
md5 = hashlib.md5()
md5.update(string.encode('utf-8'))
return md5.hexdigest()
def md5_decrypt(md5_value):
binary_str = bytes.fromhex(md5_value)
return hashlib.pbkdf2_hmac('md5', binary_str, b'', 1).decode('utf-8')
# 测试加密
string = input("请输入需要加密的字符串:")
md5_value = md5_encrypt(string)
print("加密后的MD5值为:", md5_value)
# 测试解密
md5_value = input("请输入需要解密的MD5值:")
string = md5_decrypt(md5_value)
print("解密后的字符串为:", string)
```
运行示例代码,可以看到输出结果:
```
请输入需要加密的字符串:hello world
加密后的MD5值为: 5eb63bbbe01eeed093cb22bb8f5acdc3
请输入需要解密的MD5值:5eb63bbbe01eeed093cb22bb8f5acdc3
解密后的字符串为: hello world
```
阅读全文