factograf
CS
Přihlásit se

autentizační funkce (MAC) v kryptografii

Poly1305

Poly1305 je v kryptografii MAC funkce, tedy funkce určená k ověření integrity dat a autentizaci zprávy. Návrh funkce představil její autor Daniel J. Bernstein v roce 2004, finální podobu zveřejnil v roce 2005 a v roce 2015 ji standardizovala IRTF ve dvojici s šifrou ChaCha20 v rámci RFC 7539.

Popis

Jméno je odvozeno od použitého prvočísla 2130−5 a od skutečnosti, že jádrem algoritmu je vyhodnocení polynomu, jehož koeficienty tvoří šestnáctibajtové bloky zprávy, ve zvoleném bodě r.

Interně může být pro vytváření pomocných nepředvídatelných jednorázových hodnot použita symetrická šifra. Původní návrh počítal s použitím šifry AES a byl proto označován za Poly1305/AES.

Implementace a využití

Sám autor D. J. Bernstein nabídl jako volné dílo vlastní implementaci funkce v optimalizacích mimo jiné pro AMD Athlon, Pentium, PowerPC a UltraSPARC.

Implementace funkce je také součástí autorem vytvářené knihovny NaCl (kde je v ní používána bloková šifra Salsa20).

Kromě RFC 7539 obecně standardizujícího podobu funkce dále funkci zmiňuje RFC 7905, které ji v kombinaci s ChaCha20 standardizuje jako sestavu pro autentizované šifrování v TLS. V této podobě ji už od roku 2014 používá společnost Google místo starší šifry RC4 pro ochranu HTTPS komunikace mezi jí provozovanými servery a uživateli používajícími její webový prohlížeč Chrome na její platformě Android.

Od roku 2013 používá kombinaci ChaCha20 a Poly1305 program OpenSSH, který se díky tomu následně zbavil povinné závislosti na knihovně OpenSSL. RFC 7634 standardizuje použití ChaCha20 a Poly1305 v protokolech IKE a IPSec.

Číst dál

V 9 jazycích

Text z Wikipedie, CC BY-SA 4.0 · Zdrojový článek