NTRU

NTRU je částečně patentovaný šifrovací systém, který používá pro zašifrování a dešifrování dat asymetrickou kryptografii založenou na celočíselných mřížích.NTRU obsahuje dva algoritmy: NTRUEncrypt (ve veřejné doméně[1]), který slouží pro šifrování, a NTRUSign (patent vlastněn NTRU Cryptosystems, Inc.) určený pro elektronické podepisování. Na rozdíl od nejpopulárnějších asymetrických šifrovacích algoritmů založených například na problému hledání prvočíselného rozkladu nebo na problému nalezení diskrétního logaritmu, které jsou teoreticky prolomitelné pomocí kvantového počítače Shorovým algoritmem, není pro NTRU znám žádný útok pomocí kvantového počítače (postkvantová kryptografie). Také jeho výkonnost je prokazatelně lepší. K dispozici je uzavřená placená implementace NTRU, ale také volně dostupná verze jako otevřený software.[2]

Historie

První verze nazvaná NTRU byla vytvořena v roce 1996 matematiky Jeffrey Hoffsteinem, Jill Pipherovou a Josephem H. Silvermanem. Stejného roku se tvůrci spojili s D. Liemanem a založili společnost NTRU Cryptosystems a tento kryptosystém nechali patentovat.[3]V roce 2009 byla firma koupena společností Security Innovation zabývající se softwarovou bezpečností.[4] Roku 2013 přišli Damien Stehlé a Ron Steinfeld s novou verzí algoritmu.[5] Nyní je tak dostupná verze zdarma (bez patentových omezení).[6]

Výkonnost

NTRU provádí nákladné operace se soukromými klíči rychleji než RSA při ekvivalentní kryptografické síle. S rostoucí velikostí klíče počet vykonaných operací za sekundu u RSA roste kubicky, zatímco u NTRU roste jen kvadraticky.

Podle Oddělení Elektrotechniky na Univerzitě v Lovani: „S použitím Grafické karty GTX280 může být dosaženo až 200 000 šifrování za sekundu na úrovni zabezpečení 256 bitů. Když to porovnáme s rychlostí symetrické šifry (běžně se neporovnávají), je pouze asi 20krát pomalejší než poslední implementace AES.“[7]

Odolnost vůči útokům pomocí kvantových počítačů

Na rozdíl od RSA a Kryptografie nad eliptickými křivkami (angl. ECC), není u NTRU známá žádná zranitelnost vůči útokům pomocí kvantového počítače. NIST napsal ve svém přehledu z roku 2009 že, „NTRU je vhodná alternativa jak pro šifrování s veřejným klíčem, tak pro elektronické podpisy, která není zranitelná Shorovým algoritmem“ a „z různých šifrovacích systémů založených na mřížích, které byly vyvinuty, se zdá být NTRU nejpraktičtější“.[8]

Standardizace

  • Standard IEEE 1363.1, vydaný v roce 2008, standardizuje asymetrickou kryptografii založenou na mřížích, zejména NTRUEncrypt.[9]
  • Standard X9.98 standardizuje asymetrickou kryptografii založenou na mřížích, zejména NTRUEncrypt, jako část standardu X9 pro odvětví finančních služeb.[10]

Implementace

NTRU je dostupné jako open source knihovna v jazyce C nebo Java[2] a uzavřená placená knihovna.[11]

Reference

V tomto článku byl použit překlad textu z článku NTRU na anglické Wikipedii.