📜  简单替代密码的测试

📅  最后修改于: 2020-11-08 08:35:30             🧑  作者: Mango


在本章中,我们将重点介绍使用各种方法测试替换密码,这有助于生成如下所示的随机字符串-

import random, string, substitution
def main():
   for i in range(1000):
      key = substitution.getRandomKey()
      message = random_string()
      print('Test %s: String: "%s.."' % (i + 1, message[:50]))
      print("Key: " + key)
      encrypted = substitution.translateMessage(message, key, 'E')
      decrypted = substitution.translateMessage(encrypted, key, 'D')
      
      if decrypted != message:
         print('ERROR: Decrypted: "%s" Key: %s' % (decrypted, key))
         sys.exit()
      print('Substutition test passed!')

def random_string(size = 5000, chars = string.ascii_letters + string.digits):
   return ''.join(random.choice(chars) for _ in range(size))
if __name__ == '__main__':
   main()

输出

您可以将输出观察为随机生成的字符串,这有助于生成随机的纯文本消息,如下所示-

弦乐

测试成功完成后,我们可以观察到输出消息Substitution test经过了!

代换

因此,您可以系统地破解替换密码。