Jak lze prolomit šifrování RSA 2048?


Nejlepší odpověď

V poli dešifrování je obrovský rozdíl mezi „ crack „a“ break „.

Zlomíte heslo v nejjednodušším smyslu tím, že se pokusíte odemknout systém pomocí všechny možné iterace tohoto hesla, metoda známá jako praskání hrubou silou. Pokud znáte pravidla, kterými se řídí vytváření a používání hesla, předem také znáte náklady na čas / úsilí spojené s touto šifrou. Každý jednotlivý algoritmus má předem známou očekávanou výpočetní sílu potřebnou k jeho prolomení.

Algoritmus, jako je MD5 nebo SHA-1 (skutečné příklady), je považován za porušený, když najdete nějaký druh kolize, která snižuje očekávaný vesmír (všechna možná řešení vzorce použitého k vytvoření klíče / hesla).

Pro zjednodušení vám představím skutečný příklad WPS (Wi-Fi Protected Setup) ). WPS byl vytvořen, aby uživatelům usnadnil zabezpečení jejich Wi-Fi sítě. Skládal se z osmimístného kódu PIN, který by si mohl vyměnit mezi žádajícím uživatelem a routerem po stisknutí tlačítka.

Tvůrci systému předem znali očekávaný vesmír: 8 čísel vám dává 100 000 000 možných kombinace (10 ^ 8). Implementace protokolu však toto číslo rozdělila na 2 čtyřciferné kombinace, které byly ověřeny samostatně.

To znamenalo, že byste vlastně museli vyzkoušet pouze 10 000 (10 ^ 4) + 10 000 (10 ^ 4) kombinace, v nejhorším případě, prolomit PIN. Váš vesmír 100 milionů kombinací nyní najednou klesl na pouhých 20 000 kombinací. Algoritmus je účinně rozbitý . Pak to můžete zkusit rozbít – jak byste mohli, pokud by to nebylo rozbité -, ale jak to je rozbité, vaše šance na úspěch jsou mnohem lepší, stačí pouze maximálně 20 000 pokusů místo 100 milionů.

Z toho lze vyvodit závěr:

Prolomení a prolomení jsou různé věci. Zlomená šifra neznamená, že je nejistá, pouze že je nyní jednodušší to rozluštit. V závislosti na hodnotě toho, co je chráněno, rozbití neznamenají smrt pro daný systém, pouze pochopení, že nyní je méně bezpečné, než se původně očekávalo.

RSA-2048 bude přerušeno, pokud někdo najde způsob, jak vytvořit kolize, které inherentně sníží očekávaný počet kombinací k prolomení šifry. RSA 2048 může být prolomen jako tak jako každá jiná šifra hrubou silou.

Odpověď

RSA, sama o sobě, má pouze několik útoků na veřejný modul (což je obvykle semiprime nebo dva velké náhodně vybrané prime s vynásobeny společně). Nejúčinnějším klasickým algoritmem pro řešení faktorizačního problému, který umožňuje odvození soukromého klíče pomocí základní aritmetiky, je General Number Field Sieve (GNFS). Tento algoritmus běží v subexponenciálním čase a není možné jej použít na správně implementovaných bitových systémech RSA-2048.

Existuje také Shorův algoritmus, ale ten nelze na RSA-2048 připojit typickým útočníkem. Výrobci kvantových počítačů provozují oligopol, zejména vedený společností D-Wave. Jejich získání je nejen neuvěřitelně nákladné, ale vyžaduje také specializované vybavení pro jejich provoz a údržbu. Nebyl vytvořen žádný čip s dostatečnou vytrvalostí a silou informací k překonání více než několika bitů.

Jak již bylo zmíněno dříve, kryptosystém není nic bez správné implementace. Většina implementací RSA také využívá algoritmus otisků prstů veřejného klíče, obvykle hash. Kromě toho je možné najít faktorizaci prvočísel pomocí jednoho exploitu, který je jak neuvěřitelně vzácný, tak statisticky zanedbatelný z hlediska úspěšnosti. Jak zdůraznil Euclid , existují nekonečná prvočísla, ale nejen že existují nekonečná prvočísla, existuje jich spousta v určitém prostoru klíčů. Pokud dva moduly sdílejí stejné prvočíslo, je snadné najít jejich faktorizaci. Pomocí největšího společného algoritmu dělitele , který běží v lineárním čase (lze jej snadno spustit na zařízení, na které se díváte během milisekund), může běžný faktor být nalezen, poté rozdělen z modulů, čímž se získá další dvě chybějící prvočísla. To vede k přístupu k oběma klíčům. Jakákoli správná implementace RSA by nikdy znovu nepoužila prvočísla pro samostatné klíče, místo toho by je vybrala úplně náhodně. Vzhledem k tomu, že v prostoru klíčů 2048 bitů existuje mnoho možných modulů, které lze zapsat jako # prvočísla délka 2048 vyberte 2 (nebo vyšší než 2, pokud pracujete s nestandardními moduly), šance na dva klíče, dokonce i na sdílení dvou prvočísel, jsou zanedbatelné . Jinými slovy, převzetí všech klíčů z klíčového serveru a spuštění algoritmu GCD na všech z nich je prostě ztráta času.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *