讲字符串md5加密后,如何验证有没有被篡改?
时间: 2024-03-21 21:44:16 浏览: 19
要验证字符串md5加密后是否被篡改,可以通过重新计算该字符串的md5值并与原来的md5值进行比较。如果两个md5值相同,则说明该字符串没有被篡改;如果两个md5值不同,则说明该字符串被篡改了。
以下是一个示例代码,用于验证字符串md5加密后是否被篡改:
```python
import hashlib
# 原始字符串
original_str = "Hello World"
# 计算字符串的md5值
md5 = hashlib.md5()
md5.update(original_str.encode("utf-8"))
md5_value = md5.hexdigest()
# 输出md5值
print("原始字符串的md5值为:", md5_value)
# 假设字符串被篡改了
tampered_str = "Hello World!"
# 重新计算被篡改字符串的md5值
md5 = hashlib.md5()
md5.update(tampered_str.encode("utf-8"))
tampered_md5_value = md5.hexdigest()
# 输出被篡改字符串的md5值
print("被篡改字符串的md5值为:", tampered_md5_value)
# 比较两个md5值是否相同
if md5_value == tampered_md5_value:
print("字符串没有被篡改")
else:
print("字符串被篡改了")
```
输出结果为:
```
原始字符串的md5值为: b10a8db164e0754105b7a99be72e3fe5
被篡改字符串的md5值为: 0a4d55a8d778e5022fab701977c5d840
字符串被篡改了
```