Konečně pravý rootovský článek jako za starých časů (které nepamatuju). Naštěstí z toho nerozumím jedinému slovu...
Takze, abych to shrnul. Clanku vubec nerozumis a presto ti pripada dorby?
Vždycky jsem se podivoval u zpráv o tom, že dnešní maturanti nedokážou interpretovat psaný text, ale implikace
"konečně pravý rootovský článek jako za starých časů" => "článek je dobrý"
a
"netvrdil nic o tom, že je článek dobrý" => "článek není dobrý"
mě dostaly do kolen.
Možná je to jen důsledek moderní doby. Dnes je vše černobílé, každý musí mít na všechno názor. A to radikální.
Vše je buď úžasné, nebo příšerné. Vše musíte buď milovat nebo nenávidět. Ostatně, tak to být musí, ne? Vždyť na facebooku máme jan palec nahoru a palec dolů. Nic mezi.
V takové době se není co divit, že řada spoluobčanů se snaží akorát odhadnout, jestli jste klikl na palec nahoru, nebo na palec dolů. Možnost, že byste neklikl, je nemyslitelná. A tomu pak odpovídá povaha otázek.
NOFLAME: Takze, abych to shrnul. Prisel jste do diskuze, abyste prudil ostatni diskutery?
Konečně zase dobrý článek jako za starých časů, které pamatuju.
Na prvni phled to vypada, ze se chce najit co nejlepsi verejny koeficient pro DH tak, aby byl bezpecny a zaroven se s nim dobre pocitalo. Je to tak? Chapu to dobre?
...ignoruj ho ...spletl si web a kdyz uz nerozumi problemu tak se "vyjadri" alespon k cestine ...desi me, kolik takovych ko..tu se vyrojilo v posledni dobe na technicky zamerenych serverch - admini by je meli zacit banovat
Zhruba to chápete správně.
Těch křivkových parametrů je ale vícero - prvočíslo pro konečné těleso, tvar křivky (určuje přípustné algoritmy), koeficienty pro křivku ve Weierstrassově tvaru y2 = x3 + Ax2 + x
Koeficient A se například ladil taky kvůli "twist security" zmiňované v článku.
U NIST křivek se například jako jedno z prvočísel použilo 2256 − 2224 + 2192 + 296 − 1, protože v jejich implementaci se jim taky s tím dobře počítalo. Je celkem dobře vidět, že nastavené bity se vybírali velmi specificky.
ECC má proti RSA jednu zásadní nevýhodu: křivek je mnoho a každá má mnoho speciálních případů.
Oprava - myslel jsem křivku Montgomenryho tvaru, Weierstrassov tvar je obecný (jak jsem říkal, mnoho speciálních případů).
Děkuji za článek, vůbec jsem netušil, že jsou v těch různých eliptických křivkách takové "implementační" rozdíly.
V článku vyzvihujete rychlost, ale chybí (aspoň základní) srovnání s jinými algoritmy, to jsem našel na na http://bench.cr.yp.to/.
Nedávno jsem testoval algoritmy eliptických křivek pro IPsec na ARM, ale zůstal jsem u DH/RSA: ECDH je mnohem rychlejší než původní DH, ale operace podpis + ověření trvaly pro NIST křivky stejně dlouho, jako RSA (EC podpis i EC ověření trvaly zhruba polovinu času potřebného pro RSA podpis, RSA ověření je při rozumně zvoleném exponentu zanedbatelné -- t + t = 2t + 0). Po přečtení tohoto článku ještě EC zvážím, ale s jinými křivkami.
Díky za doplnění. Čísla a měření jsou popsány taky v paperech (linky v sekci "Na co je která křivka dobrá"), ale souhlasím, že bench.cr.yp.to je ještě lepší a přehlednejší zdroj.
Kdysi jsem si seriálu o SSH postěžoval, že pro klíče typu ECDSA, které OpenSSH preferuje, neexistuje podpora pro SSHFP záznamy. Toho se v den vydání chytil Ondřej Surý a téměř rok poté vyšlo i RFC 6594. Že dodnes není implementace ve vanilkovém SSH konformní s tímto RFC, přestože patche existují, to mě štve. Ale ještě víc mě naštvalo, když loni na podzim vyšlo OpenSSH 6.5 s podporou Ed25519 klíčů, přitom bez podpory SSHFP záznamů. A standard na sebe nechává čekat. The history book on the shelf, keeps always repeating itself… :(
ten dns zaznam je ovsem principalne spatne navrzeny uz id sveho vzniku.
kdyby to ondrej vzal za spravny konec, tak tu mame sshfp verze 2 a sshfp by bylo na ceste stat se osolete.
spravce mapovani by mel byt iana.
do mapy cisel by mely patrit v implementaci mandatorni algoritmy
mimo cisla by melo byt mozne poslat jeste standardizovany string opet spravovany iana popisujici volitelne implementace
melo by jit poslat nestandartni string oem/experimentalni implementace
Aha, o rozporu mezi Ed25519 a chybějící podporou pro odpovídající SSHFP jsem nevěděl.
Pamatuju si, že v TLS WG se dost bojovalo i o takovou drobnost, že Curve25519 má od první implementace wire-format souřadnic little-endian a to se nelíbilo lidem, co chtějí mít všechno v network order (big-endian).
Nakonec se to protáhlo na snahu standardizovat "formát na drátě" všech ECC.
Jen jako poznámka: NIST křivky mají standardizovaný wire-format s prvním bajtem určující jak je bod zapsán, pak data bodu:
Křivka Curve25519 je definována, aby nemusela používat znaménko (DH funkce ve větě 2.1 v původním paperu, link je v sekci "Na co je která křivka dobrá"). Bod v nekonečnu je validní bod na křivce, ale pro DH se nepoužívá.
TO jsem fakt jediný, kterého tahají za oči všechny ty Nist křivky ? Až půjdu přes most Karla do divadla Národa na stěnu Čerta, uznám, že jste zvítězili. Ale bude to vítězství Pyrrhy, dříve Pyrrhovo vítězství.
Pokud by Nist byl člověk, tak by to bylo divné. Ale tohle je NIST. Nejen že to je zkratka, ale ani nemá nic společného s křivkou. Volně a rozsáhle přeloženo je to "křivka, tak jak ji navrhl National Institute of Standards and Technology"
A tam už se to běžně používá i v opačném pořadí. HD rozlišení, DVD kvalita, USB kabel, ISO norma.
Mně to u těch křivek připadá správně: NIST křivky jako "nisťácké křivky", v opačném slovosledu by to muselo být "křivky od NIST". Vlastně "křivky NIST" je něco jako "most Karla" ;-)
Ale třeba C-band je pásmo C a nikoliv "cépásmo". To souhlasím.
Neviem, ci je to neumyselna sugescia dana stylom clanku, ale vyhodam Curve25519 by som asi velmi neveril. Zda sa, ze je tam len kopec vynimiek, aby sme sa vyhli znamym utokom. Ale co ostatne utoky?
Celá kryptografie je téměř samá výjimka :-) Existuje směr "provable security", ale ten používá často předpoklady, které nemohou v našem světě existovat (a to by bolo na velmi dlouho).
> Ale co ostatne utoky?
Jako ty co neznáme a tudíž se jim těžko lze bránit? Od toho je rigidní návrh založen na spoustě předchozího výzkumu.
Mimochodem, většina útoků na ECC je spíš na implementace (cachování, časové postranní kanály), těch algebraických moc není - až na ty zmíněný proti "křivkám s malou charakteristikou".
Asi je to clanek pro nekoho, kdo vi, co jsou elipticke krivky a ma spise formu jakehosi prehledu, nebo reserse. Napriklad "Velmi důležitým znakem každé zmíněné křivky je rychlost" je nesrozumitelne. Rychlost ceho? Ze by vypoctu?
"Rychlost vypoctu operace na krivce", vzhledem k tomu, ze nejak zajimava operace je stejne fakticky jenom jedna (nebo v alternativnim pohledu jina jedna pripadne se specialnim pripadem), tak to nema moc smysl nejak moc rozepisovat.
Díky za pochvalu, ale na ne-programovacím jazyce se prostě nelze shodnout:
Článek byl napsán v češtině, korekturu dělali alespoň 4 rodilí čeští mluvčí včetně redakce (o kterých vím).
Z článku byly odstraněny násilné překlady jako "biraconiálně ekvivalentní", kde ekvivalent neexistuje. Například s touhle větou nelze hnout ani s velkou překladatelskou gymnastikou:
"Our recommended curve for EdDSA is a twisted Edwards curve birationally equivalent to the curve Curve25519 [...]"
Existuje jediný způsob, jak výrazy budou znít "nativně": prostě je používat. Před 20+ lety se lidi taky smáli překladu "hovorca <-> mluvčí".
(Osobně bych všechno kromě angličtiny, latiny a možná mandarínšké čínštiny zrušil, ale spousta lidí bůhvíproč nesouhlasí.)