首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pad加密防止窃听

Pad加密防止窃听
EN

Security用户
提问于 2013-09-24 15:44:43
回答 2查看 264关注 0票数 -1

在安全方面,为什么一次加密是无条件安全的,不被窃听?

此外,为什么三重DES使用加解密加密组合而不是三重加密组合?

EN

回答 2

Security用户

发布于 2013-09-24 16:16:02

Vernam密码(一次性便携板的官方名称)是安全的,因为任何加密的值都可以同样地被解密为任何明文值。如果我有密码值HFKCV,它可以解密到HELLO,或启动,或停止,完全取决于密钥。

但是安全性取决于真正随机的密钥的字节,关键属性是密钥的每个字节必须与密钥的每个其他字节无关。(如果关键材料被重复使用,安全性也可能被破坏,但这使得攻击不同于我在下面描述的攻击。)

问题是,许多所谓的一次性数据并不考虑非随机密钥生成过程的影响。他们相信他们可以获得rand()的输出或散列算法的输出,并且它是足够随机的。但是这些算法通常是确定性的,输出彼此相关的字节,这就足以破解加密。

让我们使用一个故意差的“随机数生成器”作为关键生成器来演示随机数选择过程的重要性。这个糟糕的随机数例程接受种子,添加一个种子,并将其作为随机数输出。要用此机制加密明文消息HELLO,我们将生成一个生成的密钥流1、2、3、4、5,加密后的值将是IGOPT。作为一个知道IGOPT == HELLO的攻击者,我可能会查看生成它的密钥流,并注意到模式是1、2、3、4、5,这可能使我能够反向工程随机数生成器,并想出一种解密任何消息的方法。(在本例中,我了解到加密功能已经从随机的一次填充转移到了“加法”。)重要的是,无论使用什么“随机函数”来生成关键材料,反求工程的方法都是相同的。

--

为了回答另一个无关的问题,3 3DES使用EDE来支持从旧的8字节密钥安装迁移到新的24字节密钥安装。早在那时,许多金融机构就使用带有8字节密钥的单一DES来保护银行交易和零售收费授权。一旦发现单个DES是弱的,它们就必须找到一种方法来提高安全性,同时保持向后兼容,因为并非每一家银行和零售商都能在一夜之间同步更改所有加密系统。(银行将有“硬件安全模块”(HSMs),而零售商在其收银机上有数万个PIN面板。它们都需要使用相同的基本密钥进行加密。改变几个HSM对银行来说是相当昂贵的,但是改变成千上万的PIN垫对零售商来说是非常昂贵的。)

在EDE模式下使用3 DES可以使您在所有三个操作(称为“键控选项3")中使用单个8字节键,并与只有单个DES和一个8字节键的人保持兼容。它是兼容的,因为第一种加密被以下解密完全逆转,所以第三种加密成为唯一有效的加密。通过这种方式,银行可以在保持相同的8字节密钥的同时,悄悄地将系统升级为3 DES,而客户则继续使用具有相同密钥的单个DES。最后,他们的客户将他们的PIN pad升级到3 3DES系统,这样他们就可以被注入一个24字节的密钥。只有这样,3 3DES才能适当地保护通信。

票数 2
EN

Security用户

发布于 2013-09-24 16:17:16

对于OTP是无条件安全的,一次发布维基百科页面有一个合理的解释;但这里有一个较短的解释: OTP是无条件安全的,因为任何加密的消息都可能是相同大小的任何其他明文消息的加密,概率相等。

有关3 3DES,请参见@CodesInChaos建议的这个答案。摘要:这是为了更容易地向后兼容的DES,并顺利过渡。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/42877

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档