The code morphing technique is a well known mitigation to counter passive side-channel attacks relying on differential power analysis, which is capable of lowering the peak power correlation coefficient to negligible values even with several million of recorded traces. The aim of this work is to produce an hardware implementation exploiting this countermeasure, with the ultimate goal of keeping at its minimum the execution overheads, while remaining as transparent as possible to the software developer. Memory based instructions, which are unable to be expressed in alternative forms, are modified to work on data encoded in multiple shares, effectively providing a higher order defense against side-channel analysis. System memory bus is also improved in order to be resistant to differential power analysis and hence protect data transfers with memory. The Ibex RISC-V processor is taken as development base, over which is introduced the new secure execution mode that can be enabled on demand.

Il code morphing è una tecnica ben conosciuta per contrastare attacchi side-channel passivi basati sull'analisi differenziale dei consumi, in grado di ridurre i picchi di correlazione in potenza a valori trascurabili anche avendo a disposizione diversi milioni di tracce di consumo. L'intento di questo lavoro è quello di produrre un'implementazione in hardware che sfrutti questa contromisura, con l'obiettivo finale di ridurre al minimo i costi di esecuzione aggiuntivi, rimanendo il più trasparente possibile allo sviluppatore software. Le istruzioni operanti su memoria, che non possono essere espresse in forme diverse, sono state modificate per operare su dati codificati in share multiple, fornendo una difesa ad ordini superiori contro le analisi side-channel. Il bus di sistema che interconnette il core e la memoria è stato migliorato per resistere ad analisi differenziali di consumo, proteggendo quindi i trasferimenti di dati con la memoria. Il processore RISC-V Ibex è stato preso come base di sviluppo, sul quale viene introdotta la nuova modalità di esecuzione sicura che può essere abilitata su richiesta.

Countering side channel attacks in an in-order RISC-V processor with a code morphing based execution mode

Antognazza, Francesco
2019/2020

Abstract

The code morphing technique is a well known mitigation to counter passive side-channel attacks relying on differential power analysis, which is capable of lowering the peak power correlation coefficient to negligible values even with several million of recorded traces. The aim of this work is to produce an hardware implementation exploiting this countermeasure, with the ultimate goal of keeping at its minimum the execution overheads, while remaining as transparent as possible to the software developer. Memory based instructions, which are unable to be expressed in alternative forms, are modified to work on data encoded in multiple shares, effectively providing a higher order defense against side-channel analysis. System memory bus is also improved in order to be resistant to differential power analysis and hence protect data transfers with memory. The Ibex RISC-V processor is taken as development base, over which is introduced the new secure execution mode that can be enabled on demand.
BARENGHI, ALESSANDRO
ING - Scuola di Ingegneria Industriale e dell'Informazione
24-lug-2020
2019/2020
Il code morphing è una tecnica ben conosciuta per contrastare attacchi side-channel passivi basati sull'analisi differenziale dei consumi, in grado di ridurre i picchi di correlazione in potenza a valori trascurabili anche avendo a disposizione diversi milioni di tracce di consumo. L'intento di questo lavoro è quello di produrre un'implementazione in hardware che sfrutti questa contromisura, con l'obiettivo finale di ridurre al minimo i costi di esecuzione aggiuntivi, rimanendo il più trasparente possibile allo sviluppatore software. Le istruzioni operanti su memoria, che non possono essere espresse in forme diverse, sono state modificate per operare su dati codificati in share multiple, fornendo una difesa ad ordini superiori contro le analisi side-channel. Il bus di sistema che interconnette il core e la memoria è stato migliorato per resistere ad analisi differenziali di consumo, proteggendo quindi i trasferimenti di dati con la memoria. Il processore RISC-V Ibex è stato preso come base di sviluppo, sul quale viene introdotta la nuova modalità di esecuzione sicura che può essere abilitata su richiesta.
File allegati
File Dimensione Formato  
thesis.pdf

solo utenti autorizzati dal 07/07/2023

Descrizione: Volume di tesi
Dimensione 1.53 MB
Formato Adobe PDF
1.53 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/165322