因为“活板门”质数(‘trapdoored' primes)的出现,使用1024位密钥加密算法已不再安全。在本文中,专家Michael Cobb解释了加密后门的工作机制。
自2010年起,美国国家标准与技术研究院(NIST)建议使用最少2048位数字签名算法(DSA),Rivest-Shamir-Adleman(RSA)算法和diffie-hellman算法,自2014年起,政府机构不允许使用1024位密钥。
然而,现在常用的仍然是1024位密钥。部署和兼容性问题是其中一个原因。例如,域名系统安全扩展的规范限制最多到1024位DSA密钥,Java只支持diffie - hellman和DSA密钥,高于1024位的版本8在2014年才发布。
鉴于攻击成本,公众对于针对1024位密钥进行的攻击缺乏必要的紧迫感。
然而,由于“活板门”质数(‘trapdoored' primes)的出现,攻击1024位密钥不再是理论上的。“活板门”质数允许攻击者打破某些1024位密钥来解密通信和密码,仿冒关键业主签署数据,而受害者毫不知情。
许多加密系统的安全性基于数学问题,涉及质数众多,以致攻击者难以解决离散对数问题。与RSA密钥的素数一样独一无二,diffie-hellman质数和DSA经常使用标准化,并被大量的应用程序使用。
“活板门”质数都是精雕细琢的质数,有特殊的数域筛,专用的整数分解算法,可用来求解离散对数问题。这使得破坏1024位密钥比以往容易了10000倍。
更糟糕的是,没有已知的现行方式能够知晓攻击发生。密钥被破坏时,一个‘密钥活板门'看起来像任何密钥。一旦破坏完成,攻击者可以利用其破解任何加密。该后门可用于加密解密使用diffie - hellman密钥交换及使用DSA算法的通信加密或伪造签名,而这些都是网络和数据安全的支柱。
一旦攻击者获取到一个或多个‘活板门’质数,并将其纳入标准的或广泛使用的库,数亿用户都将成为潜在的受害者。
此前斯诺登已暗示加密正被削弱,其研究表明一些标准化的1024位密钥可能存在的“活板门”质数。例如diffie - hellman组RFC 5114中指定参数,被广泛用作生成加密密钥的基础,多用在应用程序使用传输层安全协议、安全Shell协议的远程管理服务器和互联网密钥交换协议。
这些参数来自NIST的测试数据。因为“活板门”质数的存在和积极使用,使用1024位密钥已不再安全。企业和软件开发者使用基于离散对数问题的硬度密码需要使用至少2048位密钥加密算法。
本文转自d1net(转载)