roger 发表于 2019-6-26 08:50:11

2019年6月第四周打卡_慢慢猜吧出题思路

很简单的一道密码题

C1,C2,C3是用来加密key的字符串
key = 'ilovestudyreverseforum'
c1 = 'believeyoucananalyseit'
c2 = 'youarenotfarfromsucces'
c3 = 'flagiszuihouyizhoudaka'


加密的结果为:jpzdinxsrsteieespdgvcf
加密的结果为:gzivvwgiwdrvavfewzqtye
加密的结果为:nwobmksolffytmqzszrrem


通过遍历字母表来找差值,根据C1,C2可以慢慢的推出key的一部分,然后C3的一部分也可就猜出来了

完整代码如下:


key = 'ilovestudyreverseforum'
c1 = 'believeyoucananalyseit'
c2 = 'youarenotfarfromsucces'
c3 = 'flagiszuihouyizhoudaka'
c4= 'jpzdinxsrsteieespdgvcf'
c5= 'gzivvwgiwdrvavfewzqtye'
c6= 'nwobmksolffytmqzszrrem'
res1 = ''
res2 = ''
res3 = ''
res4 = ''
res5 = ''
res6 = ''
for i in range(len(key)):
      res1+=chr((((ord(c1)-ord('a'))+(ord(key)-ord('a')))%26)+ord('a'))
      res2+=chr((((ord(c2)-ord('a'))+(ord(key)-ord('a')))%26)+ord('a'))
      res3+=chr((((ord(c3)-ord('a'))+(ord(key)-ord('a')))%26)+ord('a'))

      res4+=chr((((ord(c4)-ord('a'))-(ord(key)-ord('a')))%26)+ord('a'))
      res5+=chr((((ord(c5)-ord('a'))-(ord(key)-ord('a')))%26)+ord('a'))
      res6+=chr((((ord(c6)-ord('a'))-(ord(key)-ord('a')))%26)+ord('a'))
print ('加密的结果为:'+res1)
print ('加密的结果为:'+res2)
print ('加密的结果为:'+res3)
print ('解密的结果为:'+res4)
print ('解密的结果为:'+res5)
print ('解密的结果为:'+res6)


页: [1]
查看完整版本: 2019年6月第四周打卡_慢慢猜吧出题思路