NTRU
NTRU är ett kryptosystem med öppen källkod med offentlig nyckel som använder gitterbaserad kryptografi för att kryptera och dekryptera data. Den består av två algoritmer: NTRUEncrypt , som används för kryptering, och NTRUSign , som används för digitala signaturer . Till skillnad från andra populära kryptosystem med offentlig nyckel är den resistent mot attacker med Shors algoritm . NTRUEncrypt patenterades, men placerades i allmän egendom 2017. NTRUSign är patenterat, men det kan användas av programvara under GPL .
Historia
Den första versionen av systemet, som kallades NTRU, utvecklades 1996 av matematikerna Jeffrey Hoffstein , Jill Pipher och Joseph H. Silverman . Samma år gick utvecklarna av NTRU ihop med Daniel Lieman och grundade företaget NTRU Cryptosystems, Inc., och fick patent på kryptosystemet. Namnet "NTRU", som valts för företaget och som snart även tillämpades på systemet, härleddes ursprungligen från ordleken Number Theorists 'R' Us eller, alternativt, stod för Number Theory Research Unit . 2009 förvärvades företaget av Security Innovation, ett mjukvarusäkerhetsföretag. 2013 skapade Damien Stehle och Ron Steinfeld en bevisligen säker version av NTRU, som studeras av en post-kvantkrypteringsgrupp chartrad av Europeiska kommissionen.
I maj 2016 släppte Daniel Bernstein , Chitchanok Chuengsatiansup, Tanja Lange och Christine van Vredendaal NTRU Prime, som lägger till försvar mot potentiell attack till NTRU genom att eliminera algebraisk struktur som de ansåg vara oroande. Men efter mer än 20 års granskning har man hittills inte hittat något konkret tillvägagångssätt för att attackera den ursprungliga NTRU som utnyttjar dess algebraiska struktur.
NTRU blev finalist i den tredje omgången av Post-Quantum Cryptography Standardization- projektet, medan NTRU Prime blev en alternativ kandidat.
Prestanda
Med motsvarande kryptografisk styrka utför NTRU kostsamma privata nyckeloperationer mycket snabbare än RSA gör. Tiden för att utföra en privat RSA-operation ökar när kuben för nyckelstorleken, medan den för en NTRU-operation ökar kvadratiskt.
2010 noterade institutionen för elektroteknik, universitetet i Leuven att "[med] en modern GTX280 GPU kan en genomströmning på upp till 200 000 krypteringar per sekund uppnås vid en säkerhetsnivå på 256 bitar. Jämför detta med en symmetrisk chiffer (inte en mycket vanlig jämförelse), detta är bara cirka 20 gånger långsammare än en nyligen genomförd AES-implementering."
Motstånd mot kvantdatorbaserade attacker
Till skillnad från RSA och elliptisk kurvkryptografi är NTRU inte känt för att vara sårbart för attacker på kvantdatorer . National Institute of Standards and Technology skrev i en undersökning från 2009 att "[det] finns genomförbara alternativ för både offentlig nyckelkryptering och signaturer som inte är sårbara för Shor's Algorithm" och att "[av] de olika gitterbaserade kryptografiska system som har varit utvecklat, verkar NTRU-familjen av kryptografiska algoritmer vara den mest praktiska". Europeiska unionens PQCRYPTO-projekt ( Horizon 2020 ICT-645622) utvärderar den bevisligen säkra Stehle–Steinfeld-versionen av NTRU (inte den ursprungliga NTRU-algoritmen själv) som en potentiell europeisk standard. Men Stehle–Steinfeld-versionen av NTRU är "betydligt mindre effektiv än det ursprungliga schemat".
Standardisering
- Standarden IEEE Std 1363.1, utfärdad 2008, standardiserar gitterbaserad kryptografi med publik nyckel, särskilt NTRUEncrypt.
- Standarden X9.98 standardiserar gitterbaserad kryptografi med publik nyckel, särskilt NTRUEncrypt, som en del av X9 -standarderna för finansbranschen.
- Europeiska kommissionens PQCRYPTO-projekt överväger standardisering av den bevisligen säkra Stehle–Steinfeld-versionen av NTRU.
Genomföranden
Ursprungligen var NTRU endast tillgängligt som ett eget bibliotek mot betalning, och författare med öppen källkod hotades med rättsliga åtgärder. Det var inte förrän 2011 som den första implementeringen med öppen källkod dök upp, och 2013 undantog Security Innovation projekt med öppen källkod från att behöva få en patentlicens och släppte en NTRU-referensimplementering under GPL v2 .
Implementeringar:
- OpenSSH använder som standard NTRU kombinerat med X25519 ECDH-nyckelutbytet sedan augusti 2022, inkluderat i version 9.0.
- Den GPL -licensierade referensimplementeringen
- Ett BSD-licensierat bibliotek
- hoppborg
- GoldBug Messenger var den första chatt- och e-postklienten med NTRU-algoritm under öppen källkod, som är baserad på Spot-On Encryption Suite Kernels.
- Dessutom ger wolfSSL stöd för NTRU-chiffersviter i en lätt C-implementering.