NTRU

NTRU是一个带有专利保护的开源公开密钥加密系统,使用晶格加密算法英语lattice-based cryptography来加密数据。它包括两部分算法:NTRUEncrypt英语NTRUEncrypt用来加密,NTRUSign英语NTRUSign用来进行数字签名。与其他流行的公钥加密系统不同,它可以防止被Shor算法破解,并显著提升了性能。

历史

第一个被命名为NTRU的加密系统版本,是数学家Jeffrey Hoffstein英语Jeffrey HoffsteinJill Pipher英语Jill Pipher,和Joseph H. Silverman英语Joseph H. Silverman于1996年开发的。同年,Daniel Lieman加入了NTRU开发团队,并成立了公司NTRU Cryptosystems, Inc., 获得了该加密系统的专利。[1]2009年,该公司被一家名为Security Innovation的软件安全公司收购。[2]2013年,Damien Stehle和Ron Steinfeld创建了NTRU的一个可靠版本,目前正在由欧盟委员会授权的后量子加密小组进行研究。[3]

2016年5月,Daniel BernsteinTanja Lange等人发布了NTRU Prime,[4]通过消除一些令人不安的代数结构以抵抗潜在的攻击。

性能

在同等加密强度下,NTRU执行大开销的私钥操作比RSA算法快得多。[5]RSA算法的私钥操作耗时与密钥长度呈三次方关系,而NTRU相应操作为二次方关系。

据鲁汶大学电子工程部门表示,“使用一块现代的GTX280显卡,在256 bit加密强度下,最高可达每秒二十万次的加密的吞吐量。与最新的对称加密AES实现相比(这并不公平),只慢了大概二十倍。”[6]

防止量子计算机破解

RSA加密算法椭圆曲线加密算法(英语:Elliptic Curve Cryptography, ECC)不同,NTRU在基于量子计算机的攻击面前没有已知的弱点。国家标准技术研究所在一份2009年的调查中写到“目前不存在一种能同时兼顾公钥加密和数字签名,并在Shor算法面前没有弱点的可行替代方案”以及“在基于格的众多已有加密方案中,NTRU加密算法族看起来是最可行的”。[7]欧盟的PQCRYPTO计划(Horizon 2020 ICT-645622)正在评估Stehle–Steinfeld可靠版本的NTRU (并非原始版本的NTRU算法),以作为一项潜在的欧洲标准。[3]然而Stehle-Steinfeld版本的NTRU“比原始版本效率要低得多”."[8]

标准

  • IEEE Std 1363.1标准,发布于2008年,标准化了基于格的公钥加密算法,尤其是NTRUEncrypt。[9]
  • X9.98标准,标准化了基于格的公钥加密算法,尤其是NTRUEncrypt,作为X9页面存档备份,存于互联网档案馆)金融服务标准的一部分。[10]
  • 欧洲委员会的PQCRYPTO计划正在考虑标准化Stehle-Steinfeld可靠版本的NTRU[8]

发行方式

最初,NTRU只有一个带专利保护的付费开源库可用,打算写开源实现的作者收到诉讼威胁。[11][12]直到2011年出现了第一个开源实现,[13]在2013年,Security Innovation豁免了开源项目的专利授权要求,[14]并以GPL v2协议释放了一份NTRU的参考实现。[15]

Security Innovation依然提供付费的专有软件选项。[16]

现在存在两个开源的NTRU实现:

  • GPL-licensed下的参考实现[15]
  • BSD-licensed下的库[13]

分别在Java和C下可用。

参考

  1. ^ Robertson, Elizabeth D. RE: NTRU Public Key Algorithms IP Assurance Statement for 802.15.3 (PDF). IEEE. August 1, 2002 [February 4, 2013]. (原始内容存档 (PDF)于2016-04-09). 
  2. ^ Robinson, Maureen. Security Innovation acquires NTRU Cryptosystems, a leading security solutions provider to the embedded security market (新闻稿). Wilmington, MA: Security Innovation. July 22, 2009 [February 4, 2013]. (原始内容存档于2013-12-17). 
  3. ^ 3.0 3.1 Lange, Tanja. Initial recommendations of long-term secure post-quantum systems (PDF). PQCRYPTO.EU. Horizon 2020 ICT-645622. 1 March 2015 [18 January 2015]. (原始内容存档 (PDF)于2016-04-29). 
  4. ^ 存档副本 (PDF). [2016-10-24]. (原始内容存档 (PDF)于2016-09-27). 
  5. ^ NTRU: Quantum-Resistant High Performance Cryptography. [2016-10-24]. (原始内容存档于2016-10-10). 
  6. ^ Hermans, Jens; Vercauteren, Frederik; Preneel, Bart. Pieprzyk, Josef , 编. Speed Records for NTRU (PDF). Topics in Cryptography – CT-RSA 2010. Lecture Notes in Computer Science (San Francisco, CA: Springer Berlin Heidelberg). 2010, 5985: 73–88 [February 4, 2013]. ISBN 978-3-642-11924-8. ISSN 0302-9743. doi:10.1007/978-3-642-11925-5_6. (原始内容存档 (PDF)于2016-10-06). 
  7. ^ Perlner, Ray A.; Cooper, David A. Seamons, Kent; McBurnett, Neal; Polk, Tim , 编. Quantum resistant public key cryptography: a survey (PDF). Proceedings of the 8th Symposium on Identity and Trust on the Internet (New York, NY: ACM). 2009: 85–93 [February 3, 2013]. ISBN 978-1-60558-474-4. doi:10.1145/1527017.1527028. (原始内容 (PDF)存档于2012年5月14日). 
  8. ^ 8.0 8.1 Cryptology ePrint Archive: Report 2013/004. eprint.iacr.org. [2016-01-18]. (原始内容存档于2016-03-04). 
  9. ^ IEEE P1363: Standard Specifications For Public Key Cryptography. Grouper.ieee.org. [7 December 2014]. (原始内容存档于2014年12月1日). 
  10. ^ Security Innovation’s NTRUEncrypt Adopted as X9 Standard for Data Protection - Business Wire. Businesswire.com. [7 December 2014]. (原始内容存档于2016-08-13). 
  11. ^ Statement by the libtomcrypt (LTC) author. 
  12. ^ Email exchange between Security Innovation and a software author. [2016-10-24]. (原始内容存档于2016-10-05). 
  13. ^ 13.0 13.1 Buktu, Tim. NTRU: Quantum-Resistant cryptography. Independent / not affiliated with NTRU Cryptosystems, Inc. [February 4, 2013]. (原始内容存档于2013-01-29). 
  14. ^ FOSS Exception. [2016-10-24]. (原始内容存档于2019-02-14). 
  15. ^ 15.0 15.1 Open Source NTRU Public Key Cryptography and Reference Code. [2016-10-24]. (原始内容存档于2018-03-31). 
  16. ^ Security Innovation - NTRU Cryptography. [2016-10-24]. (原始内容存档于2014-12-10). 

外部链接