Numero di operazioni AES-256 al secondo su un Cray XE6 massimizzato

0

Quanti FLOP impiegano un'operazione AES-256 in modalità ECB? Quante operazioni AES-256 in modalità ECB possono eseguire al massimo Cray XE6 al secondo?

Cray afferma che può essere ridimensionato a oltre 1 milione di core del processore, ma la brochure non indica quanti, esattamente. Con 1 milione di core del processore, che lavorano a livelli di picco dell'armadio tra 12,2 e 20,2 teraflop al secondo, Cray XE6 può fare da 3,97 a 6,57 petaflops al secondo.

    
posta nlovric 20.11.2011 - 12:46
fonte

3 risposte

2

Cray XE6 accetta chip Opteron serie 6200, che supportano tutti il set di istruzioni AES. In AES-NI Performance Analyzed (che è Intel, non AMD), Patrick Schmid e Achim Roos hanno scoperto che AES NI ha un throughput di 3,5 cicli per byte. Se estrapolandolo al blocco AES-256 a 128 bit (16 byte), otteniamo 56 cicli per operazione AES-256. Opteron 6282 SE funziona a 3.1 GHz in modalità All Turbo. Supponendo che il set di istruzioni AES di Opteron 6282 SE abbia le stesse prestazioni delle nuove istruzioni Intel AES, un core Opteron 6282 SE potrebbe fare ~ 55,357,142.857143 operazioni AES-256 al secondo. Pertanto, un Cray XE6 con un milione di core Opteron 6282 SE potrebbe fare ~ 55,357,142,857,143 operazioni AES-256 al secondo. La figura non tiene conto delle operazioni di I / O necessarie.

Pertanto, per forzare bruscamente una chiave di crittografia AES-256-ECB in un attacco di testo normale, utilizzando tutte le possibili combinazioni, su un Cray XE6 con un milione di core Opteron 6282 SE, sarebbero necessari fino a ~ 66.282.862.563.751.221.625,826,507,369,649,000,000,000,000,000,000,000,000,000,000 anni per completare l'attacco con testo in chiaro noto. Tuttavia, se la chiave di crittografia è derivata da una passphrase di 10 caratteri che consiste solo di lettere minuscole inglesi az (26 ^ 10 = 141,167,095,653,376 combinazioni possibili), sarebbe necessario che lo stesso Cray XE6 si portasse a ~ 2,55 secondi per completare un non dizionario attacco con testo in chiaro Se la chiave di crittografia è derivata da una frase passata di 10 caratteri, possibilmente composta da lettere minuscole inglesi, lettere maiuscole inglesi, numeri e altri 22 caratteri (84 ^ 10 = 17,490,122,876,598,091,776 combinazioni possibili), ci vorrebbe lo stesso Cray XE6 fino a ~ 87,76 ore per completare un attacco con testo in chiaro non dizionario.

Ho calcolato la durata degli attacchi di testo in chiaro non dizionario su AES-256-ECB con un milione di core @ 3,1 GHz utilizzando le nuove istruzioni Intel AES. Puoi vederlo qui . Suppongo che sarebbe comunque utile mantenere qualcosa con un milione di core @ 3.1 GHz con Intel AES NI intorno a frasi di passaggio di forza bruta fino a 10 caratteri in un attacco di testo normale noto.

    
risposta data 21.11.2011 - 00:59
fonte
7

I core in un Cray XE6 sono AMD Opteron - questo è il tipo di cosa che si trova in un PC di base. Ci si potrebbe aspettare che ogni core possa calcolare un blocco AES in un po 'più di 300 cicli di clock; ma se i nuclei conoscono gli AES-NI opcodes, allora questo può scendere a 30 cicli di clock per istanza AES-256. Supponendo che tutto funzioni a 3 GHz, puoi sperare fino a 10 8 AES-256 operazioni al secondo. Con un milione di core, è 10 14 .

Nota che:

  • Una CPU completa è qualcosa di enorme se hai solo bisogno di un'implementazione AES. In particolare, le operazioni in virgola mobile di cui Cray vanta sono totalmente inutili per attaccare l'AES.

  • La maggior parte del prezzo di un Cray XE6 riguarda l'interconnessione della CPU: mazzi di helper bus e controller, che non sono usati per il crack AES.

  • Anche a 10 14 operazioni al secondo, avresti ancora bisogno di più tempo della vita dell'Universo per rompere effettivamente una chiave.

Comprare un Cray XE6 per crackare AES sarebbe un enorme spreco di denaro.

    
risposta data 20.11.2011 - 20:00
fonte
1

Non lo sappiamo, e se non riesci a metterlo tra le mani e a confrontarlo, non possiamo dirlo. In teoria, potresti prendere un singolo processore Opteron e provarlo su un desktop. Quando si lavora su quella scala, le singole istruzioni della macchina sono molto importanti e il codice di assemblaggio su misura per un'operazione di sollevamento pesante può essere appropriato. Anche il tempo speso a scrivere in memoria, ecc. Avrà importanza.

    
risposta data 20.11.2011 - 16:16
fonte

Leggi altre domande sui tag