Generování distribuovaného klíče - Distributed key generation

Generování distribuovaného klíče (DKG) je kryptografický proces, ve kterém více stran přispívá k výpočtu sdílené sady veřejných a soukromých klíčů. Na rozdíl od většiny šifrování veřejného klíče modely, na distribuované klíče se nespoléhá Důvěryhodné třetí strany.[1] Místo toho účast a práh poctivých stran určuje, zda lze pár klíčů úspěšně vypočítat.[2] Generování distribuovaného klíče brání jednotlivým stranám v přístupu k soukromému klíči. Zapojení mnoha stran vyžaduje generování distribuovaného klíče, aby bylo zajištěno utajení za přítomnosti zlomyslný příspěvky do klíčového výpočtu.[1]

Generování distribuovaného klíče se běžně používá k dešifrování sdílených šifrovací texty nebo vytvořte skupinu digitální podpisy.[2]

Dějiny

Protokol pro generování distribuovaného klíče byl poprvé specifikován Torbenem Pedersenem v roce 1991. Tento první model závisel na zabezpečení Společného-Feldmanova protokolu pro ověřitelné sdílení tajemství během procesu tajného sdílení.[3]

V roce 1999 Rosario Gennaro, Stanislaw Jarecki, Hugo Krawczyk a Tal Rabin předložili řadu bezpečnostních důkazů, které prokazují, že ověřitelné sdílení tajemství Feldman bylo zranitelné škodlivými příspěvky do generátoru distribuovaných klíčů společnosti Pedersen, který by uvolnil informace o sdíleném soukromém klíči.[4] Stejná skupina také navrhla aktualizované schéma generování distribuovaného klíče zabraňující škodlivým příspěvkům ovlivňovat hodnotu soukromého klíče.


Metody

Protokol generování distribuovaného klíče specifikovaný Gennarem, Jareckim, Krawczykem a Rabinem předpokládá, že skupina hráčů byla již před generováním klíčů vytvořena poctivou stranou. Rovněž předpokládá, že komunikace mezi stranami je synchronní.[4]

  1. Všechny strany používají Pedersen ověřitelné sdílení tajemství protokol pro sdílení výsledků dvou náhodných polynomiální funkce.
  2. Každá strana poté ověří všechny akcie, které získala. Pokud ověření selže, odešle příjemce stížnost straně, jejíž podíl selhal. Každá obviněná strana pak vysílání jejich podíly. Každá strana má poté možnost ověřit vysílané podíly nebo diskvalifikovat obviněné strany. Všechny strany vytvářejí společný seznam nediskvalifikovaných stran.
  3. Každá nediskvalifikovaná strana vysílá sadu hodnot vytvořených zvednutím společného generátor na sílu každé hodnoty použité v jednom polynomu v Část 1.
  4. Tyto hodnoty vysílání jsou ověřovány každou stranou podobně jako v Část 2. Když ověření selže, strana nyní vysílá obě hodnoty přijaté v Část 1 a hodnoty přijaté v Část 3. Pro každou stranu s ověřitelnými stížnostmi rekonstruují všechny ostatní strany své vlastní sady hodnot, aby vyloučily diskvalifikované příspěvky.
  5. Skupina vypočítá soukromý klíč jako produkt každého kvalifikovaného příspěvku (náhodný polynom každé kvalifikované strany vyhodnocen na 0).[4]


Vyhněte se předpokladu synchronizace

V roce 2009 představili Aniket Kate a Ian Goldberg protokol pro generování distribuovaného klíče vhodný pro použití přes internet.[5] Na rozdíl od dřívějších konstrukcí tento protokol nevyžaduje vysílací kanál nebo předpoklad synchronní komunikace a knihovna připravená k použití je k dispozici.

Robustnost

Za mnoha okolností a robustní generátor distribuovaných klíčů je nutný. Robustní generátorové protokoly mohou rekonstruovat veřejné klíče, aby odstranily škodlivé sdílené složky, i když škodlivé strany během fáze rekonstrukce stále zůstávají v kvalifikované skupině.[4] Například robustní mnohostranné digitální podpisy mohou tolerovat počet uživatelů se zlými úmysly zhruba úměrných délce modulu použitého během generování klíče.[6]

Řídké hodnocené DKG

Generátory distribuovaných klíčů mohou implementovat řídkou matici vyhodnocení, aby se zlepšila účinnost během fází ověřování. Řídké vyhodnocení může zlepšit dobu běhu (kde je počet stran a je prahová hodnota uživatelů se zlými úmysly) . Namísto důkladného ověření vyžaduje řídké hodnocení, aby malá skupina stran ověřila malou, náhodně vybranou sadu akcií. To má za následek malou pravděpodobnost, že generování klíče selže v případě, že pro ověření nebude vybrán velký počet škodlivých sdílených složek.[7]

Aplikace

Generování distribuovaného klíče a kryptografie distribuovaného klíče se zřídka používají přes internet kvůli závislosti na synchronní komunikaci.[4]

Distribuovaná klíčová kryptografie je užitečná v úschova klíčů služby, kde společnost může dosáhnout prahové hodnoty pro dešifrování šifrovací verze soukromého klíče. Tímto způsobem může společnost vyžadovat, aby více zaměstnanců získalo soukromý klíč, aniž by službě úschovy poskytlo kopii prostého textu.[1]

Generování distribuovaného klíče je také užitečné v na straně serveru Heslo ověřování. Li hash hesla jsou uloženy na jednom serveru, narušení na serveru by vedlo k tomu, že by útočníkům byly k dispozici všechny hodnoty hash hesla analyzovat offline. Variace generování distribuovaného klíče mohou ověřovat hesla uživatelů na více serverech a eliminovat je jednotlivé body selhání.[8][9]

Generování distribuovaného klíče se běžněji používá pro skupinové digitální podpisy. Funguje to jako forma hlasování, kdy by se musela účastnit hranice členů skupiny, aby skupina mohla digitálně podepsat dokument.[2]

Reference

  1. ^ A b C Kate, Aniket; Goldberg, Ian (2010). Distribuované generátory soukromého klíče pro kryptografii založenou na identitě. Zabezpečení a kryptografie pro sítě. Přednášky z informatiky. 6280. 436–453. CiteSeerX  10.1.1.389.4486. doi:10.1007/978-3-642-15317-4_27. ISBN  978-3-642-15316-7.
  2. ^ A b C Boldyreva, Alexandra (2003). Prahové podpisy, více podpisů a slepé podpisy založené na schématu podpisu skupiny Gap-Diffie-Hellman (PDF). Kryptografie veřejného klíče. Přednášky z informatiky. 2567. 31–46. doi:10.1007/3-540-36288-6_3. ISBN  978-3-540-00324-3.
  3. ^ Pedersen, T. P. (1992). "Neinteraktivní a informační teoretické bezpečné ověřitelné sdílení tajemství". Pokroky v kryptologii - CRYPTO '91. Přednášky z informatiky. 576. str. 129–140. doi:10.1007/3-540-46766-1_9. ISBN  978-3-540-55188-1.
  4. ^ A b C d E Gennaro, Rosario; Jarecki, Stanislaw; Krawczyk, Hugo; Rabin, Tal (24. května 2006). "Zabezpečená distribuovaná distribuce klíčů pro kryptosystémy založené na diskrétním protokolu". Journal of Cryptology. 20 (1): 51–83. CiteSeerX  10.1.1.134.6445. doi:10.1007 / s00145-006-0347-3.
  5. ^ Kate, Aniket; Goldberg, Ian (2006). Msgstr "Generování distribuovaného klíče pro internet". IEEE ICDCS. doi:10.1109 / ICDCS.2009.21.
  6. ^ Castelluccia, Claude; Jarecki, Stanisław; Kim, Jihye; Tsudik, Gene (2006). "Zabezpečené agregace potvrzení a multisignatury s omezenou robustností". Počítačové sítě. 50 (10): 1639–1652. doi:10.1016 / j.comnet.2005.09.021.
  7. ^ Canny, John; Sorkin, Steve (2004). Praktické generování distribuovaných klíčů ve velkém měřítku (PDF). Pokroky v kryptografii - EUROCRYPT 2004. Přednášky z informatiky. 3027. str. 138–152. CiteSeerX  10.1.1.69.6028. doi:10.1007/978-3-540-24676-3_9. ISBN  978-3-540-21935-4.
  8. ^ MacKenzie, Philip; Shrimpton, Thomas; Marcus, Jakobsson (2006). "Prahová výměna klíčů ověřená heslem". Journal of Cryptology. 19 (1): 27–66. CiteSeerX  10.1.1.101.6403. doi:10.1007 / s00145-005-0232-5.
  9. ^ Jarecki, Stanislaw; Kiayias, Aggelos; Krawczyk, Hugo (2014). „Round-Optimal Password-Protected Secret Sharing and T-PAKE in the Password-Only model“ (PDF). Archiv kryptologie ePrint. 650. Citováno 5. listopadu 2014.