Reclamo più strong di ECC e RSA 10K

3

Ci sono molti siti web in cui è rivendicato qualcosa di simile a questo, ma nessuna spiegazione sulla base.

"La dimensione della chiave ECC di 256 bit equivale a una chiave RSA a 3072 bit e 10.000 volte più strong di una chiave RSA a 2048 bit"

Q: Qual è la base di questa affermazione sul fattore 10K? Da dove viene il 10K?

Vedo le dimensioni delle chiavi paragonabili da questa tabella (questa è riferita ovunque).

Inoltre, un link dove viene fatto il reclamo. BTW: Questo non è l'unico sito che fa questa affermazione.

    
posta Khanna111 30.07.2015 - 21:48
fonte

2 risposte

5

Queste stime sono molto grezze e, probabilmente, non hanno senso.

Gli algoritmi crittografici asimmetrici, come RSA e ECDSA, si basano su strutture matematiche e la loro rottura richiede di svelare tale struttura. In generale, la difficoltà di farlo aumenta con la dimensione degli oggetti sottostanti (cioè la "dimensione della chiave"), ma non in una regola esponenziale semplice, semplice.

Molti sforzi sono stati estesi a fare alcune "stime di forza" per poter confrontare le dimensioni delle chiavi RSA con le dimensioni delle chiavi ECDSA e anche le dimensioni delle chiavi per gli algoritmi simmetrici (come AES). È molto difficile anche definirlo correttamente, perché rompere una chiave RSA attraverso la scomposizione in fattori interi con gli algoritmi più noti per quella attività ( General Number Field Sieve) richiede non solo molti calcoli, ma anche una moltitudine di dati con schemi di accesso che non sono suscettibili di serializzazione e parallelismo - per dirla chiaramente, è necessario un computer con veramente gran quantità di molto veloce RAM (non stiamo parlando di semplici terabyte qui). Questo non si confronta direttamente con, ad esempio, la rottura di AES-key, che richiede molta CPU ma non ha bisogno di RAM, ed è imbarazzante parallelo.

Tuttavia, alcune persone intelligenti hanno ancora prodotto stime, e c'è un bel sito Web che li presenta e consente di modificare i parametri . Ad esempio, se si osservano le raccomandazioni NIST, una chiave RSA a 2048 bit viene considerata "in qualche modo equivalente" a una chiave a 112 bit per un algoritmo simmetrico, mentre una chiave RSA a 3072 bit viene considerata una chiave simmetrica a 128 bit . Le chiavi simmetriche sono solo un mucchio di bit senza una struttura speciale, quindi un tasto n -bit significa "può essere spezzato nello sforzo 2 n -1 in media "(elencando possibili combinazioni di bit n finché non viene trovato quello giusto). Pertanto, secondo le stime del NIST, si ritiene che RSA-3072 sia circa 65536 volte più strong di RSA-2048 (perché 128-112 = 16 e 2 16 = 65536).

Altre equazioni producono risultati diversi. Il metodo spiegato in RFC 3766 valuta RSA-2048 come equivalente a una chiave simmetrica a 103 bit e RSA-3072 fino a 125 bit. Ora queste stime implicherebbero che RSA-3072 sarebbe più di 4 milioni di volte più difficile da interrompere rispetto a RSA-2048 (2 125 / 2 103 = 4194304). Notiamo anche che RFC 3766 dice che RSA-2048 è mezzo milione di volte più debole di quello che il NIST dice che è.

Posso anche dire che una semplice affermazione come "RSA-3072 è X volte più difficile da rompere di RSA-2048" può avere senso solo se è possibile quantificare la durezza di rottura di RSA-2048 e RSA-3072. La quantificazione è: quanti soldi ci vorrebbe? E, proprio ora e anche per il prossimo futuro (vale a dire entro i prossimi 40 anni), l'unica risposta sana è "dimenticala". Nessuna quantità di denaro sulla Terra, anche con tutti i soldi esistenti presi insieme, ti comprerà una pausa chiave RSA-2048 o una pausa chiave RSA-3072. Questo è semplicemente fuori dalla portata della nostra tecnologia.

Questo non significa che RSA-2048 sarà sempre infrangibile; dice solo che se (o quando) è rotto, sarà attraverso un miglioramento qualitativo (una svolta algoritmica) le cui caratteristiche sono, per definizione, totalmente sconosciute.

Corrispondentemente, ogni affermazione su RSA-3072 che è "10 mila volte" più strong di RSA-2048 è in gran parte una speculazione non comprovata. O, nel migliore dei casi, una estrapolazione matematica da punti dati esistenti, innalzati a livelli che non hanno alcun senso fisico.

    
risposta data 30.07.2015 - 23:56
fonte
2

Ho appena trovato una fonte che afferma questo 10K che hai menzionato, tuttavia esiste uno studio di Symantec qui indicando quanto segue:

While key lengths for current encryption methods using RSA increase exponentially as security levels increase, ECC key lengths increase linearly . For example, 128-bit security requires a 3,072-bit RSA key, but only a 256-bit ECC key . Increasing to 256-bit security requires a 15,360- bit RSA key, but only a 512-bit ECC key 3....

Qui tu può trovare un primer "relativamente facile da capire" sulla crittografia a curva ellittica.

Un confronto tra i criptosistemi può essere trovato qui :

Elliptic curve cryptography is probably better for most purposes, but not for everything.

ECC's main advantage is that you can use smaller keys for the same level of security, especially at high levels of security (AES-256 ~ ECC-512 ~ RSA-15424). This is because of fancy algorithms for factoring like the Number Field Sieve.

Advantages of ECC:

  • Smaller keys, ciphertexts and signatures.
  • Very fast key generation and signatures.
  • Moderately fast encryption and decryption.
  • Binary curves are really fast in hardware.

Disadvantages of ECC:

  • Complicated and tricky to implement securely, particularly the standard curves.
  • Standards aren't state-of-the-art, particularly ECDSA which is kind of a hack compared to Schnorr signatures.
  • Signing with a broken random number generator compromises the key.
  • Still has some patent problems, especially for binary curves.
  • Newer algorithms could theoretically have unknown weaknesses. Binary curves are slightly scary. Don't use DUAL_EC_DRBG, since it has a back door.

Advantages of RSA:

  • Very fast, very simple encryption and verification.
  • Easier to implement than ECC.
  • Signing and decryption are similar; encryption and verification are similar.
  • Widely deployed, better industry support.

Disadvantages of RSA:

  • Very slow key generation.
  • Slow signing and decryption, which are slightly tricky to implement securely.
  • Two-part key is vulnerable to GCD attack if poorly implemented.
    
risposta data 30.07.2015 - 22:14
fonte

Leggi altre domande sui tag