我试图通过首先获得密文,然后通过密码运行密文以提供第二个密文来使Caesar密码更安全一些。不完全确定如何做到这一点,这将是算法的循环。我可以将密钥乘以* 2吗?
答案 0 :(得分:4)
您可以使用第二个密钥再次加密密文,但Caesar密码的属性是每个字符都是自己加密的。您与邮件的其他字符没有关系。这就是为什么你可以用多个密钥重复加密一些明文的原因,但是这不会给你额外的安全性,因为所有这些密钥都可以压缩成一个密钥,它与单个调用中的级联一样。
我们来看一个例子。让消息为“hi”,键为5,2,20和大小为26的字母。这为我们提供了以下中间和最后的密文:
c1: "mn"
c2: "op"
cf: "ij"
这当然与使用密钥1
的加密相同。由于我们的字母表长度为26,因此最终密钥可以计算为(5 + 2 + 20) % 26
。
你可以实现一个更安全的经典密码的Vigenère密码。它仍然没有像AES这样的现代分组密码具有相同的安全性。