128 bits entropi er nok. Hele og eneste poenget med å vurdere entropi er å sørge for at systemet kan motstå brute force-angrep: rommet med mulige verdier må være så stort at enhver angriper bare kan prøve en ubetydelig andel av verdiene på ikke-latterlig tid. Det er sterke grunner til at 128 bits er svært tilstrekkelig for det. Realistisk sett kan en veldig kraftig organisasjon med mye penger til overs (inkludert behemoter som Apple eller Google, som kan mønstre mye mer ressurser enn vanlig fugleskremsel som NSA) håpe å utføre, si, maksimalt 2 85 sup > elementære beregninger (som kryptering av en AES-blokk) i løpet av et år - det vil ikke være diskret, og det er fortsatt mindre enn den milliondel av milliondelen av et 2 128 -rom.
Hvis du genererer en 256-biters AES-nøkkel fra en 128-bit frø og en sterk PRNG, i listen over algoritmer, har du ikke virkelig en 256-bit nøkkel. Fra angriperens synspunkt er dette en 128-bit nøkkel. Husk deg, det er fortsatt mer enn nok til å avskrekke angriperen. Men å hevde at "256 bits" her er på svindel (og i tilfelle AES innebærer en + 40% kjøretidskostnad uten faktisk gevinst). Det samme kan sies om HMAC, og faktisk alle algoritmer som er en del av "symmetrisk kryptografi".
For asymmetriske algoritmer kan man prøve å lage estimater av styrke og å søke ekvivalenser med symmetriske nøkler. Dette er veldig vanskelig å gjøre, fordi angrep på (si) RSA og AES ikke bruker den samme typen teknologi (for å gjøre ting enkelt: for RSA trenger du mye veldig veldig raskt RAM; for AES trenger du ikke noe RAM i det hele tatt, og bør bruke relativt sakte kretsløp for å gjøre dem virkelig billige å bygge og betjene). Se dette nettstedet for hva flere grupper av smarte mennesker har funnet på. Den generelle konsensus er at en 256-bit elliptisk kurve (i det minste en "normal" kurve) burde være noe tilsvarende en 128-bits symmetrisk styrke i styrke; en 4096-biters RSA-nøkkel kan være litt utenfor, forutsatt at denne påstanden er fornuftig, noe den ikke gjør (det er ingenting sterkere enn "kan ikke bryte den", så det å sammenligne styrker utover 100 biter er ganske meningsløst uansett). p>
Det er en relativt nylig ide som flyter rundt om kvantecomputere, som på en eller annen måte vil kreve en dobling av antall biter. Den teoretiske grunnen er at Grovers søkealgoritme kan utforske et rom med 2 n innganger til en funksjon (implementert på en kvantecomputer) ved å påkalle funksjon 2 n / 2 ganger. Under denne teorien trenger du en 256-bit nøkkel for å oppnå den magiske "128-biters sikkerhet". Imidlertid er det to hovedfeil i den teorien:
-
Feilen som alle påpeker er at kvantecomputere ikke eksisterer ennå (vel, nesten alle; noen mennesker påstås å ha kvantecomputere i salg). Dekoherens er tilsynelatende veldig vanskelig å overvinne, og vi vet ikke egentlig hvordan vi skal gjøre det, bortsett fra ved å gjøre hele maskinen veldig kald, og deretter be om at universet ikke vil innhente det vi prøver å gjøre i noen få millisekunder til. .
-
Mangelen som ingen påpeker, men er minst like viktig som den andre, er at det ikke er noe som tyder på at en elementær beregning på en kvantecomputer vil forbruke en mengde energi som ligner på en elementær beregning på en klassisk datamaskin. Dette er imidlertid et veldig viktig poeng. Siden oppfinnelsen av transistoren har datamaskiner stadig blitt mer effektive; det ble teoretisert som Moores lov. Det er også stadig tydeligere indikasjoner på at Moores lov er i ferd med å stoppe (Gordon Moore selv sa det), hovedsakelig fordi vi er nær den minimale størrelsen for elektroniske porter (hvis vi gjør dem mindre, så lekker de gal gjennom kvantetunneller) og vi er ute av nye ideer: økningen i makt i løpet av 1970-tallet matet på et basseng av ideer som alle hadde blitt unnfanget og uttalt på 1970-tallet, og nå er vi på slutten av vettet.
Så vi vil snart nå grensene for klassisk databehandling og dermed faktisk vite , med en viss pålitelig pålitelighet, hvor mye av et nøkkelrom som kan utforskes med klassiske datamaskiner. Imidlertid tok det rundt 70 år å nå det punktet.
For kvantedatamaskiner, siden de egentlig ikke eksisterer ennå, er vi på første dag. Det tar veldig mye ønsketenkning å hevde at vi, 70 år fremover, vil ha nådd maksimal optimalisering av kvantecomputere og at optimalisering vil bringe kostnadene for elementære kvanteoperasjoner i samme rekkefølge av størrelsen på kostnaden for elementære klassiske operasjoner. Faktisk vet ingen noe om det ennå.
Som en illustrasjon på vanskeligheten med å oppfatte en klar forestilling om hva teknologien vil være i stand til å oppnå i fremtiden, bør du vurdere følgende anekdote (som jeg nylig har lest i den boka): tilbake rundt 1810 , mer enn 25 år etter den historiske første gratisflygningen til Pilâtre de Rozier i en uforankret ballong, hadde den tidens største tenkere tenkt ut hva den nye oppfinnelsen kunne bringe for menneskeheten. Etter deres syn var toppen av nytten av en ballong å binde den til vognen din, og dermed gjøre den lettere og la den trekkes rundt med færre hester. Tenk på det når du føler deg visjonær.
Kvantemaskineffektivitet er dobbelt så spekulativ på det tidspunktet, det er egentlig ikke rasjonelt å inkludere det i noen tenkninger om nøkkellengden. Et mye mer fremtredende poeng er at når kvantecomputere fungerer, selv om de gjør det sakte, så er RSA, Diffie-Hellman og elliptiske kurver toast. Det er verdt å undersøke, og dette er det studiene på Post-Quantum cryptography konsentrerer seg om.