Le istruzioni AES-NI accelerano sia AES-128 che AES-256?

6

Ho un processore AES con accelerazione HW. Con questo in mente, la mia prima domanda sarebbe:

Le istruzioni AES-NI accelerano sia AES -128 e AES -256 crittografia / decrittografia?

In secondo luogo, se è vero che queste CPU accelerano entrambe le lunghezze, perché alcuni VPN provider raccomandano AES -128 per la velocità ?

    
posta Vlastimil 19.12.2016 - 15:27
fonte

2 risposte

4

Sì, AES-NI accelera sia AES-128 che AES-256, e sì, c'è una differenza di prestazioni tra AES-128 e AES-256 con accelerazione hardware, secondo il software link :

On Ivy Bridge here are the raw numbers for both Cyber-Block-Chaining (CBC) and XEX-based tweaked-codebook mode with ciphertext stealing (XTS) modes with both 128- and 256-bit keys.

Note that for XTS mode, only half the key is used, so XTS-512 essentially utilizes a 256-bit key.

# Tests are approximate using memory only (no storage IO).
#  Algorithm | Key |  Encryption |  Decryption     
     aes-cbc   128b   581.3 MiB/s  1961.8 MiB/s     
     aes-cbc   256b   431.4 MiB/s  1503.1 MiB/s     
     aes-xts   256b  1665.6 MiB/s  1642.3 MiB/s     
     aes-xts   512b  1318.3 MiB/s  1282.1 MiB/s

And for Haswell:

# Tests are approximate using memory only (no storage IO).
#  Algorithm | Key |  Encryption |  Decryption     
     aes-cbc   128b   663.8 MiB/s  2486.8 MiB/s     
     aes-cbc   256b   493.9 MiB/s  2043.6 MiB/s     
     aes-xts   256b  2265.2 MiB/s  2261.1 MiB/s     
     aes-xts   512b  1778.0 MiB/s  1778.7 MiB/s

We made the following observations:

  • For CBC encryption, we see a 40% improvement for 128-bit keys over 256-bit keys.
  • For XTS encryption, we see a 30% improvement for 256-bit keys over 512-bit keys.
  • For CBC decryption, we see a 20% improvement for 128-bit keys over 256-bit keys.
  • For XTS decryption, we see a 30% improvement for 256-bit XTS keys over 512-bit keys.

Si noti che questa è la prestazione non elaborata dell'istruzione AES-NI. Nel mondo reale, l'I / O del disco o l'I / O di rete si verificano mentre i dati vengono crittografati / decodificati, il che influirebbe sulle prestazioni del mondo reale.

Inoltre, ritengo che i numeri di cui sopra siano per prestazioni single core, in implementazioni che utilizzano più core, persino AES-256 può facilmente saturare l'intera larghezza di banda I / O di un SSD e della maggior parte delle reti.

Come notato qui, però, assicurati di utilizzare la giusta modalità di concatenamento per il tuo scopo in realtà influisce sulla velocità di trasmissione molto più significativamente delle dimensioni della chiave.

    
risposta data 19.12.2016 - 15:59
fonte
0

Sì, se il tuo dispositivo è dotato di AES-NI, accelera e migliora la velocità delle applicazioni che eseguono la crittografia e la decrittografia utilizzando la crittografia AES come sai. Hai già la chiave sul tuo link.

I provider VPN non sanno se hai AES-NI o meno. E rimangono nel caso standard di non averlo. Raccomandano AES-128 che è più agile. Ad ogni modo, se hai AES-NI, AES-128 è più veloce di AES-256. Penso che stiamo parlando di qualcosa di quasi impercettibile.

    
risposta data 19.12.2016 - 15:35
fonte

Leggi altre domande sui tag