Quali sono le tecniche di mitigazione contro gli attacchi Cache-timing su AES?

1

Ho letto qui un documento di Daniel Bernstein

This paper demonstrate complete AES key recovery from known-plaintext timing of a network server of another computer. This attack should be blamed on the AES design not on the particular AES library used by the server. It is extremely difficult to write constant-time high-speed AES software for common general-purpose computers

Esistono contromisure per nuovi processori e architetture?
Perché è così importante scrivere software AES ad alta velocità costante per comuni computer generici? Qual è il problema?

    
posta alfa tera 29.01.2017 - 22:20
fonte

1 risposta

2

Non è che la creazione di un'implementazione a tempo costante sia intrinsecamente problematica, è soprattutto una questione di efficienza e consapevolezza.

Le implementazioni basate su tabelle sono veloci. Sono possibili implementazioni a tempo costante, ma tendono a comportare prestazioni ridotte rispetto alla versione basata su tabella.

Inoltre, e più probabile è il colpevole, è il livello di consapevolezza dell'implementatore dell'esistenza di attacchi di temporizzazione della cache. Questo non è qualcosa che è immediatamente ovvio per chi non lo sapesse. Le implementazioni che sono a tempo costante non sono generalmente così per caso: sono state scritte in questo modo con esplicita intenzione dall'implementatore. Un buon esempio è bearssl .

Infine, molte CPU moderne hanno il set di istruzioni AES-NI , che sostanzialmente scarica il calcolo AES su un hardware dedicato circuito e deve essere eseguito in tempo costante .

    
risposta data 29.01.2017 - 23:40
fonte

Leggi altre domande sui tag