Vous êtes ici : Accueil > INNOVATION INDUSTRIELLE > DÉMONSTRATEURS > ScrambleCache
Publié le 12 avril 2023


ScrambleCache

Une sécurité renforcée pour les données de la mémoire cache des processeurs

Les mémoires caches réduisent les temps d’accès entre mémoire principale et processeur. Elles sont vulnérables à des attaques de type cache timing, qui permettent d’obtenir des données sensibles ou des clés de chiffrement. ScrambleCache est une contremesure matérielle qui améliore les deux mécanismes de sécurité les plus utilisés : randomisation et partitionnement du cache. Son efficacité a été établie par une preuve de concept sur mémoire cache de type write through, dans le cadre d’un démonstrateur sur un FPGA avec le processeur RISC-V CVA6. Deux brevets ont été déposés.

Nouveautés

La randomisation et le partitionnement protègent les mémoires caches, mais ralentissent les processeurs. ScrambleCache limite cette latence :

  • par la randomisation, c’est-à-dire l’ajout de variables pseudo-aléatoires qui biaisent l’observation par un attaquant des temps d’accès à la mémoire : ajout d’une table d’historique de la randomisation et d’identifiants des applications associés, pour éviter de vider et recharger systématiquement la mémoire cache.

  • par le partitionnement, c’est-à-dire la répartition des données dans différentes zones mémoire : recours à un partitionnement dynamique, donc variable, et d’une indication de la légitimité de chaque application sur chaque donnée, pour ne pas répéter les chargements de données communes à plusieurs applications.
Prochaines étapes

  • Optimisation de ScrambleCache pour une mémoire cache de type write back et évaluation sur un ASIC.

  • Benchmark de ScrambleCache avec différentes applications sur le système d'exploitation Linux pour valider l’impact réduit sur les temps d’accès (déjà vérifié par simulation).

  • Étude de l’implémentation de ScrambleCache sur différents types de processeurs.



Applications


ScrambleCache est adapté à tous les processeurs utilisant une mémoire cache, en particulier ceux présents dans :

• les ordinateurs personnels et professionnels ;

• les smartphones ;

• les calculateurs automobiles ;

• les dispositifs médicaux ;

• l’électronique industrielle.

Ces équipements gèrent des données sensibles et peuvent être la cible d’attaques par canaux auxiliaires logiciels aussi appelées attaques cache timing.


Publication

A. Jaamoum, T. Hiscock, G. Di Natale ”Scramble Cache : An Efficient Cache Architecture for Randomized Set Permutation“, DATE Conference 2021


Travail mené dans le cadre du consortium IRT Nanoelec


Intéressé par cette technologie ?

 Contact 

  Flyer