Hvordan kan en RSA 2048-kryptering brydes?


Bedste svar

I kryptanalysefeltet er der en enorm forskel mellem “ crack “og” break “.

Du knækker en adgangskode i den enkleste forstand ved at forsøge at låse systemet op med alle mulige gentagelser af dette kodeord, en metode kendt som brute-force cracking. Hvis du kender reglerne, der styrer oprettelsen og brugen af ​​adgangskoden, kender du også på forhånd omkostningerne til tid / kræfter, der er forbundet med denne kryptering. Hver eneste algoritme derude har en kendt forventning i beregningsindsats, der kræves for at knække den.

En algoritme som MD5 eller SHA-1 (reelle eksempler) siges at være brudt, når du finder en slags kollision, der reducerer det forventede univers (enhver mulig løsning på formlen, der bruges til at oprette nøglen / adgangskoden).

For at forenkle, lad mig lede dig gennem et virkeligt eksempel på WPS (Wi-Fi Protected Setup ). WPS blev oprettet for at gøre det lettere for brugerne at sikre deres Wi-Fi-netværk. Den bestod af en ottecifret PIN-kode, der ville blive udvekslet mellem den anmodende bruger og routeren ved tryk på en knap.

Skaberne af systemet vidste på forhånd det forventede univers: 8 tal giver dig 100.000.000 mulige kombinationer (10 ^ 8). Imidlertid splittede implementeringen af ​​protokollen dette nummer i 2 firecifrede kombinationer, der blev valideret separat.

Dette betød, at du kun rent faktisk skulle prøve 10.000 (10 ^ 4) + 10.000 (10 ^ 4) kombinationer i værste fald for at knække pinkoden. Dit univers med 100 millioner kombinationer faldt nu pludselig til kun 20.000 kombinationer. Algoritmen er effektivt brudt . Du kan derefter prøve at knække det – som du kunne have, hvis det ikke blev brudt – men da det er brudt, er dine chancer for at få succes meget bedre, kun kræver højst 20.000 forsøg i stedet for 100 millioner.

Konklusionen der drages af dette:

At bryde og knække er forskellige ting. En brudt chiffer betyder ikke, at det er usikkert, bare at det er lettere at knække nu. Afhængigt af værdien af, hvad der beskyttes af det, betyder det ikke at være brudt for et givet system, men kun en forståelse af, at det er mindre sikkert nu, end det oprindeligt var forventet at være.

RSA-2048 vil blive brudt, hvis nogen finder en måde at skabe kollisioner, der i sagens natur reducerer det forventede antal kombinationer til at knække krypteringen.

Svar

RSA har i sig selv kun et par angreb på det offentlige modul (som typisk er en semiprime eller to store tilfældigt valgte prim s ganget sammen). Den mest effektive klassiske algoritme til løsning af faktoriseringsproblemet, som muliggør afledning af den private nøgle ved hjælp af grundlæggende aritmetik, er GNFS (General Number Field Sieve). Denne algoritme kører i subeksponentiel tid og er ikke mulig at bruge på korrekt implementeret RSA-2048 bit-systemer.

Der findes også Shors algoritme, men den kan ikke monteres på RSA-2048 af en typisk angriber. Quantum-computerproducenter driver et oligopol, især ledet af D-Wave. Det er ikke kun utroligt dyrt at få en, men det kræver også specialudstyr til at køre og vedligeholde dem. Der er ikke oprettet nogen chip med tilstrækkelig informationsudholdenhed og magt til at bryde mere end et par bits.

Som tidligere nævnt er et kryptosystem intet uden en korrekt implementering. De fleste implementeringer af RSA bruger også en offentlig nøglefingeraftryksalgoritme, normalt en hash. Derudover er det muligt at finde faktorisering af primtal med en udnyttelse, der både er utrolig sjælden og også statistisk ubetydelig med hensyn til succesrate. Som Euclid påpegede , er der uendelige primtal, men ikke kun er der uendelige primtal, der er mange af dem inden for et bestemt nøgleområde. Hvis to moduler tilfældigvis deler den samme prime, er det let at finde deres faktorisering. Brug af største fælles divisoralgoritme , der kører i lineær tid (den kan let køres på den enhed, du ser dette på inden for millisekunder), kan den fælles faktor findes, derefter opdelt ud af modulerne for at give de to andre manglende primtal. Dette fører til adgang til begge nøgler. Enhver korrekt implementering af RSA vil aldrig genbruge primtal til separate nøgler, i stedet for at vælge dem helt tilfældigt. Da der findes mange mulige moduler inden for 2048 bit-tastaturområdet, som kan skrives som antallet af primtal længde 2048 vælg 2 (eller højere end 2, hvis der arbejdes med ikke-standardmoduler), er chancerne for, at to nøgler endda deler to primer, er ubetydelige . Med andre ord er det simpelthen spild af tid at tage alle nøglerne fra en nøgleserver og køre GCD-algoritmen på dem alle.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *