Jak kryptografie Public Key opravdu funguje, používá pouze jednoduchou matematiku

Po tisíce let, pokud jste chtěli poslat tajnou zprávu, byl v podstatě jeden způsob, jak to udělat. Zprávu byste zakódovali pomocí zvláštního pravidla, známého pouze vám a vašemu zamýšlenému publiku. Toto pravidlo fungovalo jako klíč k zámku. Pokud jste měli klíč, můžete zprávu rozvzdušit; Jinak byste si museli vybrat zámek. Některé zámky jsou tak efektivní, že je nikdy nelze vybrat, a to ani s nekonečným časem a zdroji. Ale i tato schémata trpí stejnou Achillovou patou, která trápí všechny takové šifrovací systémy: Jak se dostanete do klíče do správných rukou, přičemž je zadržujete mimo špatné?
Kontraintuitivní řešení, známé jako Kryptografie veřejného klíčeSpoléhá se na udržení klíčového tajemství, ale spíše na to, aby byl široce dostupný. Trik je také použít druhý klíč, který s nikým sdílíte, dokonce i osobu, se kterou komunikujete. Pouze pomocí této kombinace dvou klíčů – jedné veřejnosti, jednoho soukromého – může někdo vyšplhat a rozrušit zprávu.
Abychom pochopili, jak to funguje, je snazší myslet na „klávesy“ ne jako objekty, které se hodí do zámku, ale jako dvě doplňkové složky neviditelným inkoustem. První složka způsobuje, že zprávy zmizí a druhá se znovu objeví. Pokud chce špion s názvem Boris poslat svůj protějšek Natasha tajnou zprávu, napíše zprávu a poté použije první složku k tomu, aby byla na stránce neviditelná. (To je pro něj snadné: Natasha zveřejnila snadný a dobře známý vzorec pro zmizení inkoustu.) Když Natasha obdrží papír v poště, použije druhou složku, která se znovu objeví Borisova zpráva.
V tomto schématu může kdokoli učinit zprávy neviditelnými, ale pouze Natasha je může znovu zviditelnit. A protože nikdy nesdílí vzorec pro druhou složku s kýmkoli – dokonce ani Borisem – může si být jistá, že zpráva nebyla dešifrována. Když Boris chce přijímat tajné zprávy, jednoduše přijme stejný postup: publikuje snadný recept na to, aby zprávy zmizely (že Natasha nebo kdokoli jiný může použít), přičemž si ponechá další jen pro sebe, který se znovu objeví.
V kryptografii veřejného klíče fungují „veřejné“ a „soukromé“ klíče stejně jako první a druhé ingredience v tomto zvláštním neviditelném inkoustu: jeden šifruje zprávy, druhý je dešifruje. Ale místo používání chemikálií používá kryptografie veřejného klíče matematické hádanky Funkce Trapdoor. Tyto funkce se snadno vypočítají v jednom směru a extrémně obtížně se zvrátí. Obsahují také informace o „pasti“, které, pokud jsou známy, způsobují, že funkce triviálně snadno vypočítají v obou směrech.
Jedna běžná funkce pasti zahrnuje vynásobení dvou velkých prvotních čísel, snadné operace. Ale zvrácení – to znamená, počínaje produktem a nalezení každého hlavního faktoru – je výpočetně nepraktické. Chcete -li vytvořit veřejný klíč, začněte se dvěma velkými prvočíslemi. To jsou vaše trapdoors. Vynásobte obě čísla společně a poté proveďte další Matematické operace. Tento veřejný klíč může nyní šifrovat zprávy. Chcete -li je dešifrovat, budete potřebovat odpovídající soukromý klíč, který obsahuje hlavní faktory – potřebné pasti. S těmito čísly je snadné zprávu dešifrovat. Udržujte tyto dva hlavní faktory v tajnosti a zpráva zůstane v tajnosti.
Základy kryptografie veřejného klíče byly poprvé objeveny v letech 1970 až 1974 britskými matematiky pracujícími pro britské vládní komunikační sídlo, stejnou vládní agenturu, která během druhé světové války popraskala nacistický záhadný zákon. Jejich práce (která zůstala klasifikována až do roku 1997) byla sdílena s americkou národní bezpečnostní agenturou, ale kvůli omezené a nákladné výpočetní kapacitě ani vláda neprovedla systém. V roce 1976 objevili američtí vědci Whitfield Diffie a Martin Hellman první veřejně známý Schéma kryptografie veřejného klíčeovlivněn kryptografem Ralphem Merkle. Jen o rok později, algoritmus RSA, pojmenovaný po jeho vynálezcích Ron Rivest, Adi Shamir a Leonard Adleman, vytvořil praktický způsob, jak používat kryptografii veřejných klíčů. Dnes se stále používá, základní stavební blok moderního internetu, což umožňuje vše od nakupování až po webový e-mail.
Tento systém dvou klíčů také umožňuje „digitální podpisy“-matematický důkaz, že držitel soukromého klíče generoval zprávu. Funguje to proto, že soukromé klíče lze použít také k šifrování zpráv, nejen je dešifrují. To je samozřejmě zbytečné pro udržení zpráv v tajnosti: Pokud jste použili svůj soukromý klíč k tomu, aby se vyšplhala zpráva, mohl by někdo použít odpovídající veřejný klíč k jejímu rozrušení. Ale to dokazuje, že vy a jen vy jste vytvořili zprávu, protože jako držitel soukromého klíče můžete zprávu šifrovat. Bez této myšlenky nemohly existovat kryptoměny jako bitcoin.
Pokud jsou dva kryptografické klíče namísto jednoho tak efektivní, proč trvalo tisíciletí objevit? Podle Russell ImpagliazzoKoncept funkce Trapdoor, počítačový vědec a kryptografický teoretik na Kalifornské univerzitě v San Diegu, nebyl před vynálezem počítačů dostatečně užitečný.
„Je to otázka technologie,“ řekl. „Osoba v 19. století považovala šifrování za šifrování mezi jednotlivými agenty s vojenskou inteligencí v poli-doslova v poli se střelbou zbraní. Takže pokud je váš první krok„ vybrat dvě 100místná prvočísla, aby se rozmnožila, “bitva bude před tím, než to uděláte.“ Pokud problém snížíte na něco, co může člověk udělat rychle, nebude to strašně bezpečné.
Původní příběh přetištěný se svolením Kolik časopisuRedaktně nezávislá publikace podporovaná Simonsfoundation.