Poly1305

Z testwiki
Verze z 4. 6. 2024, 17:44, kterou vytvořil imported>Mykhal (typo)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Skočit na navigaci Skočit na vyhledávání

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[1], finální podobu zveřejnil v roce 2005[2] a v roce 2015 ji standardizovala IRTF ve dvojici s šifrou ChaCha20 v rámci RFC 7539[3].

Popis

Jméno je odvozeno od použitého prvočísla 21305 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[3] obecně standardizujícího podobu funkce dále funkci zmiňuje RFC 7905,[4] 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.[5]

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

Odkazy

Reference

Šablona:Překlad

Externí odkazy

Šablona:Portály