【文章】10.8 密文中隐藏密文 密文 乱码本

admin 2021年4月3日18:53:57评论33 views字数 1475阅读4分55秒阅读模式

10.8 密文中隐藏密文

    在过去几年里,Alice和Bob一直是互相用密文发送消息。Eve将所有的这些消息全部收集起来,但对它们无可奈何。最后,秘密警察为这些不可读的密文烦透了,于是就把他俩抓了起来,“把密钥交出来!”,他们命令道。Alice和Bob拒绝了,但随后他们就找到了办法。他们怎样去做呢?

    加密一个文件而有两种解密方法,每一种用各自不同的密钥,这不是很好。Alice可以用他们的共享密钥加密发给Bob的真正消息,再用别的密钥加密一些无关紧要的消息。如果Alice被捕,她可以供出加密无关紧要消息的密钥,而对真正的密钥守口如瓶。

    做到这点最简单的方法是使用一次一密乱码本。假设P是明文,D是虚假明文,C是密文,K是真正的密钥,K是虚假密钥。Alice加密P:

P⊕K=C

    Alice和Bob共享密钥K,所以Bob可以解密C:

C⊕K=P

    如果秘密警察强迫他们供出密钥,他们并不会供出密钥K,而是:

K=C⊕D

    秘密警察就用它恢复出了明文——虚假明文:

C⊕K=D

    因为使用的是一次一密乱码本,且K是完全随机的,所以没有任何方法证实K不是真正密钥。为了使情况更有信服力,Alice和Bob可以编造一些轻度不犯法的虚假消息代替根本没有犯法的真正消息。一对以色列间谍曾经这样做过。

    Alice可以用她喜爱的算法和密钥K 加密P得到C。然后将C跟一些世俗的明文——譬如《傲慢与偏见》来得到K。她将C和这些异或运算储藏在她的硬盘上。现在,当安全局审讯她时,她可以解释她是一个业余的密码爱好者,K只不过是C的一次一密乱码本。安全局可能要怀疑某些东西,但除非他们已知密钥K,否则他们无法证实Alice的解释不合理。

    另一个方法是用对称算法的密钥K 对P加密,用密钥K对D进行加密。打乱密文的比特(或字节)产生最后的密文。如果安全局需要密钥,Alice就将K交出并说了打乱的比特(或字节)是为挫败密码分析而设计的随机的噪音。麻烦就出在她的解释太令人相信了,以至于安全局很可能不信她(仔细考虑一下,本书的建议)。

    对Alice来说一个更好的方法是生成一个虚假消息D,将明文P和D级联,然后压缩后使大小如同D一般。令级联为P。Alice接着用她跟Bob共享的算法加密P得到C,并将它传给Bob,Bob解密得到P,P,D。然后两人同时计算C⊕D= K。  当安全局叩开他们的门时K就变成了虚假一次一密乱码本。Alice必须把D传送出去,这样两人就伪造了现场。

    对Alice来说其它方法是利用无关紧要的消息,并通过某些纠错编码运作它。然后引入一些与秘密的加密消息有关的错误。在接收端,Bob析取出错误,恢复秘密消息并解密。Alice和Bob或许被强迫去解释为什么在无噪声的计算机网络上怎会一直有30%的错码率,但在别的环境中该方案可以实施。

    最后,Alice和Bob可以在他们的数字签名算法中使用阈下信道(参见4.2和23.3节)。该方法是检测不到的,可以很好的使用,但它有一个缺点是每个签名的无关紧要的消息只允许20左右的阈下文本字符。它并不适合传送密钥。

文章来源于lcx.cc:【文章】10.8 密文中隐藏密文 密文 乱码本

相关推荐: 我所知道的黑暗创投圈

和标题同名的那家创投服务的同学不用太紧张,不要以为你们取巧取了个这样的名字就能做三个代表了。我就不细说你们创始人在某个投资人的内部会上被台下群喷“你们的模式根本就没意义”这件事了。 孵化器?中国要做YC?别让我笑了 这个其实是我动笔写这篇文章的真正原因,因为我…

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年4月3日18:53:57
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【文章】10.8 密文中隐藏密文 密文 乱码本http://cn-sec.com/archives/319101.html

发表评论

匿名网友 填写信息