Python训练营作业1:加密解密
import random
#定义加密方式
def encrypt(keyword):
"""
对称加密
:keyword: 明文
:return: 密文
"""
result = ""
for ch in keyword:
code = ord(ch) ^ encrypt_key #ord()函数主要用来返回对应字符的ascii码。
result += str(chr(code)) #chr()主要用来表示ascii码对应的字符他的输入时数字,可以用十进制或十六进制
return result
encrypt_key = random.randint(0, 10000)
print("密钥为:{}".format(encrypt_key))
while True:
print("请输入要加密的内容:")
input_str = input()
print("输入的字符串为:{}".format(input_str))
# 加密
en_str = encrypt(input_str)
print("加密后的密文为:{}".format(en_str))
# 解密
de_str = encrypt(en_str)
print("解密后的明文为:{}".format(de_str))
运行结果:
MD5加密:
import hashlib
while True:
print("请输入要加密的内容:")
keyword = input()
print("输入的字符串为:{}".format(keyword))
b = hashlib.md5()
b.update(keyword.encode(encoding='utf-8'))
print ('MD5加密前:'+ keyword)
print ('MD5加密后:'+b.hexdigest())
运行结果:
请输入要加密的内容:
www.greed.com@@贪心学院
输入的字符串为:www.greed.com@@贪心学院
MD5加密前:www.greed.com@@贪心学院
MD5加密后:c2d73c77aae67995a37fe41752337730
MD5解密:(后续学习补充)