Fabriquer sa propre enclave à base de FPGA

Magazine
Marque
MISC
Numéro
99
Mois de parution
septembre 2018
Spécialité(s)


Résumé

Cet article se veut être une introduction à l’exécution d’un code sur un processeur spécialisé distant, incluant une composante sécurité. Ce n’est bien sûr par un concurrent à une enclave industrielle, mais la lecture de cet article devrait vous donner quelques clefs de compréhension !


 

L’obfuscation de code est un procédé consistant à compliquer l’analyse d’un programme par un attaquant potentiel. L’obfuscation traditionnelle agit sur le code source, ou bien le binaire du programme à exécuter, par exemple en changeant la représentation des données ou encore en ajoutant du code inutile. Cependant, plus l’obfuscation est efficace, plus elle complique le fonctionnement du programme : l’obfuscation a un impact sur les performances.

Ici, il s’agit d’utiliser un FPGA (Field-Programmable Gate Array), une carte programmable matériellement, et d’y implémenter un coprocesseur qui coopèrera avec le processeur (appelé CPU dans la suite de l’article) pour exécuter les programmes. Des fragments du programme à exécuter seront sélectionnés, déportés et exécutés sur le FPGA, afin de rendre la compréhension globale du code plus difficile pour un éventuel attaquant.

Cet article est réservé aux abonnés. Il vous reste 95% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous