维吉尼亚算法加密与解密
用Python编程使用维吉尼亚算法 将《锦瑟》全文加密,密钥“ Ilovelife”,并进行解密。跪求各位大佬解答{:5_92:} >>> poem = """锦瑟无端五十弦,一弦一柱思华年。庄生晓梦迷蝴蝶,望帝春心托杜鹃。沧海月明珠有泪,蓝田日暖玉生烟。此情可待成追忆,只是当时已惘然。""">>> secret = "Ilovelife"
>>> def turn_secret(n):
global secret
temp = chr(ord(poem)+ord(secret))
secret = secret[:n] + temp + secret
>>>
>>> secret
'镯瓋晏筥仹厭徏イ乥\uf495\ue36fﵠ\uf58c\ue8bd\uf3e3앱\uf3f3𐪎﯂︕\U00012566\U00011ce3\U00011ce5\U0001947bﲊ\uf38cﮔ\uf532\uf7c7ﳋ𓎲앱\U00010216𐋦ﱷﭽ\U0001094fﱸ\U00010259\U0001947b\U00011a4c𐪟ﭔﰅ\U000108f8𐪎𐙎앱𐃓\uf634\ue95e\uf4f4\uf77f\U0001256c\uf535\U0001947b\ue959ﮞ\uf4c2ﭥ\uf361\uf647𐚥앱'
tommyyu 发表于 2022-11-9 08:07
大佬,该怎么解密呢??
asdg 发表于 2022-11-9 09:15
大佬,该怎么解密呢??
我现在编一下解密的程序 代码:def encode(string, secret): #加密
for n in range(len(string)):
string = string[:n] + chr(ord(string)+ord(secret)) + string
return string
def decode(string, secret): #解密
for n in range(len(string)):
string = string[:n] + chr(ord(string)-ord(secret)) + string
return string
效果:>>> poem = "锦瑟无端五十弦,一弦一柱思华年。庄生晓梦迷蝴蝶,望帝春心托杜鹃。沧海月明珠有泪,蓝田日暖玉生烟。此情可待成追忆,只是当时已惘然。"
>>> secret = 'Ilovelife'
>>> password = encode(poem, secret)
>>> password
'镯瓋晏筥仹厭徏イ乥彯乬桠悓厳廠に廪疄暜椒遦蟪蟛ク构広暊怌拄柋麹で洓淠杮晳琩杵浙ツ蕂疜晎曼珮畨煋ぱ毚愪呛忮扶遢怏ク呙暥徸晢幛愾熛か'
>>> poem_1 = decode(password, secret)
>>> poem_1
'锦瑟无端五十弦,一弦一柱思华年。庄生晓梦迷蝴蝶,望帝春心托杜鹃。沧海月明珠有泪,蓝田日暖玉生烟。此情可待成追忆,只是当时已惘然。'
页:
[1]