AES standard rispetto ai parametri aggiuntivi con Rijndael: cosa è più sicuro?

1

So che Rijndael e AES sono abbastanza simili e AES è solo un sottoinsieme di Rijndael, e ho letto che Rijndael può avere blocchi a 256 bit mentre AES ha "solo" blocchi a 128 bit.

Il problema è che non ho idea della crittografia, la mia domanda è cosa è più sicuro? "AES standard" è più sicuro o alcune delle opzioni ottimizzate utilizzano Rijndael? In questo momento sto usando MCRYPT_RIJNDAEL_256 in PHP che è (per quanto posso dire) Rijndael con blocco a 256 bit e dimensione della chiave mentre AES-256 ha una chiave a 256 bit ma "solo" blocchi a 128 bit.

  1. Il punto è alla fine se utilizzare AES o Rijndael?

  2. Anche quale modalità sarebbe la migliore per sicurezza / prestazioni? In questo momento ho BCE dato che è stato utilizzato in un tutorial in quel momento.

  3. Esiste un altro algoritmo ancora più sicuro? Dovrebbe essere veloce, dal momento che sto facendo un sacco di roba crittografica che lo usa, ma sono comunque sicuro.

posta My1 18.09.2015 - 13:36
fonte

2 risposte

2

I blocchi da 128 bit vanno bene

Sì, le dimensioni dei blocchi più grandi presentano alcuni vantaggi. Se i tuoi blocchi sono più grandi, puoi crittografare più dati con la stessa chiave fino a quando non dovrai passare a una nuova chiave.

Ma per scopi pratici è abbastanza. (Rivaluta una volta che hai intenzione di stare al sicuro oltre la barriera del petabyte con la stessa chiave.)

ECB non funziona.

I blocchi di input identici sono crittografati per blocchi di output identici. Questo è male.

La crittografia non autenticata è negativa.

Gli attaccanti possono capovolgere i bit nei blocchi, eliminare blocchi, blocchi resort, inserire blocchi. Questo è male.

Prova ad utilizzare GCM

GCM è una modalità operativa di "Crittografia autenticata" per cifrari a blocchi. Nasconde le ripetizioni nel testo in chiaro e sigilla il testo cifrato contro la manipolazione.

Non so se questo è in PHP in modo nativo. Queste domande suggeriscono che qualcosa del genere è fattibile tramite OpenSSL:

risposta data 18.09.2015 - 13:53
fonte
1

La dimensione del blocco AES / Rijndael non ha alcuna influenza sulla sicurezza. Le dimensioni dei blocchi più grandi di Rijndael potrebbero aiutare con la sicurezza solo quando si inizia a crittografare sostanzialmente più di 2 68 byte con una sola chiave: stiamo parlando di un milione di terabyte qui, quindi non capita presto.

Ciò che conta per la sicurezza è come usi l'algoritmo. Parli di "BCE" e questo non è un buon segno. Gli algoritmi crittografici raggiungono alcune caratteristiche molto precise, che hanno senso e in realtà migliorano la sicurezza solo se utilizzate in modo ragionevole, cioè come parte di un ben definito e ben progettato protocollo dove contano modelli di attacco e gestione delle chiavi sono stati accuratamente investigati Semplicemente spruzzando la crittografia sul tuo codice come se fosse una polvere magica di folletto non ti darà sicurezza; solo un sentimento di sicurezza.

Per quanto riguarda le prestazioni, deve essere misurato. Quando le persone misurano l'impatto sulle prestazioni dell'uso della crittografia, di solito notano che è molto meno importante di quanto inizialmente ipotizzato.

    
risposta data 18.09.2015 - 13:53
fonte

Leggi altre domande sui tag