En criptografia, el nivell de seguretat és una mesura de la força que aconsegueix una primitiva criptogràfica — com ara un xifratge o una — hash. El nivell de seguretat s'expressa normalment com un nombre de "bits de seguretat" (també força de seguretat), on la seguretat de n bits significa que l'atacant hauria de realitzar 2 n operacions per trencar-lo, però s'han proposat altres mètodes que modelen més de prop els costos per a un atacant. Això permet una comparació convenient entre algoritmes i és útil quan es combinen múltiples primitives en un criptosistema híbrid, de manera que no hi ha un enllaç més feble clar. Per exemple, AES-128 (mida de clau 128 bits) està dissenyat per oferir un nivell de seguretat de 128 bits, que es considera aproximadament equivalent a un RSA que utilitza una clau de 3072 bits. miniatura|Esquema simple d'un xifratge simètric En aquest context, la reclamació de seguretat o el nivell de seguretat objectiu és el nivell de seguretat que una primitiva va ser dissenyada inicialment per assolir, tot i que de vegades també s'utilitza "nivell de seguretat" en aquests contextos. Quan es troben atacs que tenen un cost inferior a la reclamació de seguretat, la primitiva es considera trencada.
En criptografia simètrica Els algoritmes simètrics solen tenir una afirmació de seguretat estrictament definida. Per als xifratges simètrics, normalment és igual a la mida de la clau del xifratge, equivalent a la complexitat d'un atac de força bruta. Les funcions hash criptogràfiques amb una mida de sortida de n bits solen tenir un nivell de seguretat de resistència a col·lisions n /2 i un nivell de resistència a la preimatge n. La raó és que l'atac general d'aniversari sempre pot trobar col·lisions en 2n/2 passos. Per exemple, SHA-256 ofereix una resistència a col·lisions de 128 bits i una resistència a la preimatge de 256 bits.
No obstant això, hi ha algunes excepcions a això. El Phelix i l'Helix són xifrats de 256 bits que ofereixen un nivell de seguretat de 128 bits. Les variants SHAKE de SHA-3 també són diferents: per a una mida de sortida de 256 bits, SHAKE-128 proporciona un nivell de seguretat de 128 bits tant per a la resistència a col·lisions com per a la resistència a la preimatge. miniatura|Esquema simple d'un xifratge asimètric
En criptografia asimètrica El disseny de la majoria d'algoritmes asimètrics (és a dir, criptografia de clau pública) es basa en problemes matemàtics pràctics que són eficients per calcular en una direcció, però ineficients per revertir-los per part de l'atacant. Tanmateix, els atacs contra els sistemes actuals de clau pública sempre són més ràpids que la cerca per força bruta de l'espai de la clau. El seu nivell de seguretat no s'estableix en el moment del disseny, sinó que representa una suposició de duresa computacional, que s'ajusta per coincidir amb el millor atac conegut actualment.
S'han publicat diverses recomanacions que estimen el nivell de seguretat dels algoritmes asimètrics, que difereixen lleugerament a causa de les diferents metodologies.
Per al criptosistema RSA amb un nivell de seguretat de 128 bits, NIST i ENISA recomanen utilitzar claus de 3072 bits i IETF de 3253 bits. La conversió de la longitud de la clau a una estimació del nivell de seguretat es basa en la complexitat del GNFS.: § 7.5 L'intercanvi de claus Diffie-Hellman i el DSA són similars a RSA pel que fa a la conversió de la longitud de la clau a una estimació del nivell de seguretat.: § 7.5 La criptografia de corba el·líptica requereix claus més curtes, per la qual cosa les recomanacions per a 128 bits són 256-383 (NIST), 256 (ENISA) i 242 bits (IETF). La conversió de la mida de clau f al nivell de seguretat és aproximadament f / 2: el motiu és que el mètode per resoldre el problema del logaritme discret de la corba el·líptica, el mètode rho, acaba en addicions de 0,886 radis quadrats (2f).
Nivells típics La taula següent mostra exemples de nivells de seguretat típics per a tipus d'algoritmes tal com es troben a la secció 5.6.1.1 de la Recomanació NIST SP-800-57 per a la gestió de claus dels EUA.
Punts forts comparables dels algoritmes Bits de seguretatClau simètricaCamp finit/logaritme discret (DSA, DH, MQV)Factorització d'enters (RSA)Corba el·líptica (ECDSA, EdDSA, ECDH, ECMQV)802TDEA L = 1024, N = 160k = 1024160 ≤ f ≤ 2231123TDEA L = 2048, N = 224k = 2048224 ≤ f ≤ 255128AES-128L = 3072, N = 256k = 3072256 ≤ f ≤ 383192AES-192L = 7680, N = 384k = 7680384 ≤ f ≤ 511256AES-256L = 15360, N = 512k = 15360f ≥ 512 Segons la recomanació del NIST, una clau d'un nivell de seguretat determinat només s'ha de transportar sota protecció mitjançant un algorisme de nivell de seguretat equivalent o superior.
El nivell de seguretat es dona pel cost de trencar un objectiu, no pel cost amortitzat per a un grup d'objectius. Es necessiten 2128 operacions per trobar una clau AES-128, però es requereix el mateix nombre d'operacions amortitzades per a qualsevol nombre m de claus. D'altra banda, trencar m claus ECC utilitzant el mètode rho requereix sqrt( m) multiplicat pel cost base.
Significat de "trencat" Una primitiva criptogràfica es considera trencada quan es descobreix que un atac té un nivell de seguretat inferior al que s'anunciava. Tanmateix, no tots aquests atacs són pràctics: la majoria dels atacs demostrats actualment requereixen menys de 240 operacions, cosa que es tradueix en unes poques hores en un PC mitjà. L'atac més costós demostrat contra funcions hash és l'atac 261.2 contra SHA-1, que va durar 2 mesos en 900 GPU GTX 970 i va costar 75.000 dòlars (tot i que els investigadors estimen que només es van necessitar 11.000 dòlars per trobar una col·lisió).
Aumasson traça la línia entre atacs pràctics i impracticables en 280operacions. Proposa una nova terminologia:
Una primitiva trencada té un atac que requereix ≤ 280 operacions. És plausible que es dugui a terme un atac. Un primitiu ferit té un atac que requereix entre 280 i unes 2100 operacions. Un atac no és possible ara mateix, però és probable que les millores futures ho facin possible. Una primitiva atacada té un atac que és més barat que la reclamació de seguretat, però molt més costós que 2100. Un atac així està massa lluny de ser pràctic. Finalment, una primitiva analitzada és aquella sense atacs i més barata que la seva afirmació de seguretat.
Referències
Categoria:Criptografia