美国是否有最大允许的密钥大小?

信息安全 合法的 算法
2021-08-14 19:56:09

我听说在美国很长一段时间以来,在军事用途之外使用加密都是非法的。
但是,我也听说,当法规更新时,对加密强度进行了限制(例如 AES 等常用算法的密钥大小)。

这最后的陈述是真的吗?

1个回答

粗略地说,不,最后的说法是不正确的。

有关美国密码法的详细信息,请参阅此站点(同一站点还包含许多其他国家/地区的加密法信息)。

AES 接受三种大小的密钥:128、192 和 256 位。三者中最小的已经远远超出了可以通过蛮力破解的范围(请参阅此答案),因此,如果美国“限制加密强度”,那么他们就没有做好。事实上,AES 具有三种不同的密钥大小,主要是为了符合不灵活(和) 美国军事法规要求三种不同的“安全级别”。这种规定在前计算机时代是有意义的,那时你必须在安全性和效率之间做出选择(当时没有已知的加密算法,对于一般的现场使用来说既安全又足够实用)。由于这些法规都没有规定“低级别”实际上必须是弱的,NIST 选择了三种密钥大小,较小的已经足够大以击败基于地球的攻击者。

一般来说,美国的法律主要是关于出口,而不是国内使用。曾经禁止使用大密钥长度(并且强制密钥长度小到足以被实际破坏)。不过,情况发生了变化;美国法律的现状是它们不太依赖于密钥长度。这与美国立法者越来越意识到试图强制执行强加密货币禁令不太可能奏效有关;拥有一个跟踪现有产品的系统是一个更好的主意,并且使所有这些产品“合法”只会有所帮助。