|
发表于 2017-3-29 17:00:30
|
显示全部楼层
本帖最后由 elbert 于 2017-3-29 17:07 编辑
- def enco(s,g1):
- m = len(s)
- n = len(g1)
- k=m//n
- print(k)
- mw = []
- for j in range(k):
- for i in range(n):
- mw.append(str(ord(s[i+n*j]) ^ ord(g1[i])))
- print(",".join(mw))
- def deco(s1,g1):
- n1 = len(g1)
- s1 = s1.split(',')
- m1 = len(s1)
- k1 = m1//n1
- print("密文长度为:%s \nk1的数值为:%s" % (m1 , k1))
- mw1 = []
- for j in range(k1):
- for i in range(n1):
- mw1.append(chr(int(s1[i+n1*j]) ^ ord(g1[i])))
- print("".join(mw1))
-
-
- s = input("输入明文:")
- g1 = input("请输入密钥:")
- enco(s,g1)
- s1 = input("请输入密文(以','分开):")
- g1 = input("请输入密钥:")
- deco(s1,g1)
复制代码 |
|