Side-channel attacks are a class of techniques that exploits some weakness in the implementation of a cryptographic primitive. Statistical correlation between a measurable property of the device running the primitive, for instance power consumption or EM emissions, and some variable manipulated in the primitive is exploited to recover, fully or partially, a secret parameter. In particular, profiled side-channel attacks build a model of a sensitive variable according to a set of measurements from the device where the primitive is run. Such attacks are commonly adopted to assess the security of cryptographic implementations. Recently, deep learning has been applied to block ciphers with very successful results, while fewer works have targeted public-key cryptosystems, where an additional constraint requires the attack phase to employ a single measurement to retrieve the secret key. This work extends a recent attack on RSA exponentiation using neural networks and compares the results in terms of success rate with those of template attacks, a common profiling technique. The same neural network-based approach is subsequently adapted to ECC, in particular against scalar multiplication of a generic point in Curve P-256. The RSA and ECC implementations belong to BearSSL cryptolibrary. The attacks are immune to the most common countermeasures based on input randomization and succeed with a negligible error for both RSA and ECC.
Gli attacchi Side-Channel costituiscono una categoria di attacchi in grado di sfruttare debolezze nell'implementazione di funzioni crittografiche. Attraverso la correlazione statistica fra il valore di una variabile manipolata dalla funzione e una quantità misurabile ottenuta dal particolare dispositivo è possibile recuperare, del tutto o in parte, la variabile stessa. Le quantità comunemente misurate includono consumi di corrente e radiazioni elettromagnetiche. In particolare gli attacchi side-channel profilati modellano il valore di una variabile segreta utilizzata da un funzione crittografica a partire da un insieme di misurazioni ottenute dal dispositivo mentre esegue tale funzione. Questi attacchi sono utilizzati comunemente per valutare la sicurezza di un'implementazione crittografica. Alcune tecniche di deep learning sono state utilizzate recentemente nel contesto della crittografia simmetrica con risultati promettenti, mentre esistono meno lavori sulla crittografia asimmetrica, dove si richiede che la variabile segreta si riesca a recuperare utilizzando i consumi di una sola esecuzione della funzione. In questo lavoro estendiamo un recente attacco con reti neurali sull'esponenziazione dell'algoritmo RSA, confrontandone i risultati con quelli ottenuti dagli attacchi con template, un'altra frequente tecnica di profilazione. Lo stesso approccio con reti neurali è successivamente applicato alla crittografia su curve ellittiche, più precisamente alla moltiplicazione scalare in Curve P-256. Le implementazioni di RSA e della moltiplicazione scalare su curve ellittiche provengono dalla libreria BearSSL. Gli attacchi proposti su entrambi gli algoritmi sono immuni dalle più comuni randomizzazioni degli input e recuperano la variabile segreta con un errore trascurabile.
Improving feature extraction and classification in neural network based side channel attacks against asymmetric cryptosystems
Pace, Andrea
2019/2020
Abstract
Side-channel attacks are a class of techniques that exploits some weakness in the implementation of a cryptographic primitive. Statistical correlation between a measurable property of the device running the primitive, for instance power consumption or EM emissions, and some variable manipulated in the primitive is exploited to recover, fully or partially, a secret parameter. In particular, profiled side-channel attacks build a model of a sensitive variable according to a set of measurements from the device where the primitive is run. Such attacks are commonly adopted to assess the security of cryptographic implementations. Recently, deep learning has been applied to block ciphers with very successful results, while fewer works have targeted public-key cryptosystems, where an additional constraint requires the attack phase to employ a single measurement to retrieve the secret key. This work extends a recent attack on RSA exponentiation using neural networks and compares the results in terms of success rate with those of template attacks, a common profiling technique. The same neural network-based approach is subsequently adapted to ECC, in particular against scalar multiplication of a generic point in Curve P-256. The RSA and ECC implementations belong to BearSSL cryptolibrary. The attacks are immune to the most common countermeasures based on input randomization and succeed with a negligible error for both RSA and ECC.File | Dimensione | Formato | |
---|---|---|---|
Thesis_06-07.pdf
accessibile in internet solo dagli utenti autorizzati
Descrizione: Tesi Andrea Pace
Dimensione
4.89 MB
Formato
Adobe PDF
|
4.89 MB | Adobe PDF | Visualizza/Apri |
Thesis_final.pdf
accessibile in internet solo dagli utenti autorizzati
Descrizione: Tesi definitiva Andrea Pace
Dimensione
4.75 MB
Formato
Adobe PDF
|
4.75 MB | Adobe PDF | Visualizza/Apri |
I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/10589/164470