为什么DES只能用于56bit密钥?为什么明文的长度必须是64位?

时间:2013-10-06 22:38:48

标签: cryptography des

为什么DES只能用于56bit密钥?如果我们使用更长的密钥会发生什么?另外,为什么明文的长度必须是64位?

1 个答案:

答案 0 :(得分:2)

当时美国法规要求用户使用超过56位密钥,提交“密钥恢复”以启用执法后门访问。

因此,DES作为标准在最大允许密钥长度为56位时指定。如果您使用较长的密钥,则与其他DES系统不兼容。

请参阅:http://en.wikipedia.org/wiki/56-bit_encryption

如果您正在实施一个系统&有加密选择,更现代和更多绝对建议使用更强的密码。目前的标准是AES(高级加密系统),它是广泛可用的,强大的,允许密钥大小从128 - 256位。

对于桌面或服务器应用程序,AES-256将是一个很好的默认选择。

请参阅:http://en.wikipedia.org/wiki/Advanced_Encryption_Standard

加密数据时,明文必须经常“填充”到最小尺寸。密码依赖于多个位之间的混乱和交互,以保持明文的保密性。避免潜在地暴露关键。对于没有填充的短明文,作为一个因素和&而去除了混乱和相互作用。数学复杂性大幅下降。

仅加密没有填充的单个字符,例如'y'或'n'响应,可以例如将2 ^ 256个键空间减少到可能2 ^ 24。这可能会在几分钟内破解。这将使攻击者能够猜测密钥的大部分,快速破解密钥,然后(最糟糕的是) - 解密信道上的所有其他流量。