• Aucun résultat trouvé

Protocole de reconfiguration sécurisée

CHAPITRE II. SECURITE FLEXIBLE

II.3. R ECONFIGURATION SECURISEE

II.3.3. Protocole de reconfiguration sécurisée

Nous allons proposer une solution de transfert sécurisé qui puisse s’appliquer à n’importe quel média (prise en compte des transmissions simplex) et dans laquelle les notions suivantes seront présentes :

- Confidentialité : La confidentialité permet de dissimuler les données échangées au regard des utilisateurs non autorisés. Elle est fournie par l’utilisation d’un algorithme de chiffrement (voir § I.3.1).

- Authentification : L’authentification de l’expéditeur est nécessaire afin d’empêcher que n’importe quel utilisateur puisse accéder aux zones reconfigurables (voir § I.3.3).

- Intégrité : L’intégrité est employée afin d’éviter qu’une partie d’un message soit modifiée intentionnellement ou non. Cette fonction est accomplie par l’utilisation d’un MDC (pour Modification Detection

Code) (voir § I.3.5).

- Rapidité : Potentiellement, la quantité de données échangées est importante. Par conséquent, cela se traduit par l’utilisation d’un protocole hybride (chiffrement asymétrique et symétrique).

Ce protocole hybride doit être réalisé en deux étapes distinctes. Dans un premier temps a lieu l’échange de la clé de session générée par le customer et dans un second temps l’envoi du bitstream chiffré.

• Echange de la clé de session KS

Pour ce faire, nous utilisons le principe MAC,[MEN96], qui associe un algorithme de signature numérique avec un algorithme de chiffrement asymétrique réalisé deux fois (voir Figure II.17). Tout d’abord, il convient de générer le condensé,

H, de la clé de session à l’aide d’une fonction de hachage à sens unique. Ce condensé

est ensuite concaténé avec les données de la clé de session et fournie à une fonction de chiffrement asymétrique utilisée avec la clé privée du customer (KPVC). Cette étape

ajoute une notion d’authentification à la donnée transmise en prouvant l’identité de l’émetteur car seul un utilisateur possédant la clé KPVC est capable d’avoir généré ce

message, soit le customer. Dans un second temps, le résultat est chiffré avec la clé publique de l’utilisateur final (KPBU) afin de garantir la confidentialité, autorisant la

transmission de ce message sur un canal non sécurisé. En effet, le résultat de ce chiffrement s’il est intercepté, ne pourra être interprété sans avoir connaissance de la clé KPVU que seul l’utilisateur final possède.

Après réception du message transmis sur le canal non sécurisé, l’utilisateur final, utilise sa propre clé privée (KPVU) afin de retrouver le message chiffré contenant

le texte clair et son condensé. Ensuite, il applique sur ce message la clé publique du

SECURITE FLEXIBLE

- 51 -

nouveau le condensé de cette clé, HBIS, et la compare avec celle qui était présente dans

le message afin de vérifier l’intégrité de KS.

Cela implique que le customer connaisse la clé publique de l’utilisateur final car il est possible que l’utilisateur ne puisse pas envoyer d’information au customer. De même, l’utilisateur final doit connaître la clé publique du customer.

unsecured channel

Customer

H

KS

One Way

Hash Function Public Key Cipher

H HBIS Integrity? KPBC KPVC KPVU KPBU End-user KPBU KPVC KS KS KPBC KPVU Random Number Generator

Figure II.17 : Transmission de la clé de session.

• Transfert du bitstream chiffré

L’utilisation d’algorithmes de chiffrement asymétriques nécessitant un temps de calcul très important, nous préférons utiliser un chiffrement symétrique pour envoyer le bitstream afin de gagner en rapidité.

Le flot de données correspondant au bitstream est chiffré avec la clé de session

KS que les deux utilisateurs se sont échangés dans l’étape d’échange de clé. Tout

comme précédemment, nous appliquons le principe MAC aux messages transmis sur le canal non sécurisé en ajoutant le condensé au bitstream (voir Figure II.18) mais cette fois-ci, une seule étape de chiffrement est réalisée. Le récepteur compare toujours le condensé intégré aux messages reçus avec celui qu’il génère lui-même afin de vérifier l’intégrité du bitstream.

unsecured channel

Customer

H

KS

One Way

Hash Function Symmetric Cipher

H HBIS Integrity? KS KS End-user KS KS Random Number Generator KS KS Bitstream

Figure II.18 : Chiffrement et transmission du bitstream.

L’utilisation d’un tel protocole hybride permet de changer régulièrement de clé de session. Ceci permet de limiter le nombre de messages chiffrés avec une même clé et de perturber un attaquant qui tenterait de collecter un grand nombre de messages chiffrés.

SECURITE FLEXIBLE

- 52 -

Les fonctions utilisées dans ces deux phases (fonction de hachage, chiffrement asymétrique et symétrique) sont généralement présentes dans un circuit sécurisé soit sous la forme de macro-cellules, soit à l’aide du CPU.

De multiples algorithmes et longueur de clé peuvent s’appliquer à ce protocole ; nous pouvons les choisir en fonction de ce que la plate-forme utilisée est capable d’accomplir. Par exemple, nous pouvons employer :

- pour l’échange de clés : compression, RSA avec une clé de 2048 bits en mode de fonctionnement CBC, SHA-1 avec un condensé de 160 bits, et un remplissage des messages avec des valeurs aléatoires.

- pour l’envoi de données : compression, AES avec une clé de 128 bits en mode de fonctionnement CBC, SHA-1 avec un condensé de 160 bits, et un remplissage des messages avec des valeurs aléatoires.

Il convient de compresser les données avant de les chiffrer afin de supprimer la redondance des données dans un message car cette propriété est exploitée par la cryptanalyse.

II.4. Synthèse

Dans ce chapitre nous avons présenté les concepts nécessaires à l’intégration de logique reconfigurable dans un circuit sécurisé afin de répondre au mieux aux besoins des industriels en sécurité flexible.

Dans la première partie de ce chapitre, nous avons réalisé un rapide état de l’art des technologies reconfigurables existantes, sans oublier les inévitables FPGA, en concluant que l’utilisation de circuits dédiés est une solution qui ne possède pas un niveau de sécurité suffisamment élevé. Ce choix présente d’importantes failles, notamment lors de la mise à jour de la matrice reconfigurable. L’utilisation de cœurs reconfigurables n’est, elle aussi, pas envisageable pour des raisons économiques essentiellement mais aussi sécuritaires. Dans un contexte industriel de conception de circuits sécurisés, le paramètre financier occupe une place importante dans le choix des solutions. En effet, le marché des circuits sécurisés n’est pas demandeur de sécurité flexible si le coût en est trop élevé.

Pour cette raison, dans la suite de ce chapitre, nous avons étudié l’utilisation de logique reconfigurable répartie qui ne possède pas les inconvénients des deux solutions énoncées précédemment. En revanche, elle ne peut s’utiliser qu’avec une plate-forme déjà existante. Ce qui en soit est un avantage si l’industriel qui souhaite implanter de la sécurité flexible possède déjà une plate-forme robuste et éprouvée. De nombreuses directions ont été étudiées tant au niveau de l’architecture, des dimensions de l’élément reconfigurable de base, du type de reconfiguration (parallèle ou série) ainsi qu’au niveau des compromis temps d’exécution / surface. Les choix doivent être pris par le concepteur du circuit sécurisé en fonction des besoins auxquels il souhaite répondre ainsi que des contraintes économiques. La puissance de la solution que nous proposons est qu’elle peut s’adapter à n’importe quelle partie combinatoire d’un circuit. De plus, elle s’adapte parfaitement aux domaines des

SECURITE FLEXIBLE

- 53 -

circuits sécurisés en répondant parfaitement aux problèmes énoncés dans l’introduction de ce chapitre.

Enfin, nous avons achevé ce chapitre en présentant un protocole de reconfiguration des éléments programmables. La logique reconfigurable couplée avec ce protocole robuste et rapide permet aux concepteurs de circuits sécurisés d’investiguer de nouvelles voies pour déjouer les tentatives de clonage et de retro- ingénierie.

Dans la suite de ce manuscrit, nous allons maintenant nous focaliser sur un autre problème que rencontrent les industriels du marché des circuits sécurisés : les attaques par analyse des informations qui fuient par l’intermédiaire des canaux cachés, et plus particulièrement les analyses du courant consommé.

ANALYSE DIFFERENTIELLE DU COURANT CONSOMME

- 55 -

Documents relatifs