Fonction physique non clonable
Une solution matérielle qui exploite les variations inhérentes au dispositif pour produire une réponse unique, non clonable, du dispositif à une entrée donnée.
Les appareils étant beaucoup plus connectés avec l’IoT, ils nécessitent d’être sécurisés via des processus d’authentification et d’identification. Cela permet, par exemple d’empêcher un accès non fiable à un cloud par un appareil contrefait.
L’authentification nécessite des clés qui doivent être intégrées dans les dispositifs. La méthode traditionnelle consiste à stocker ces clés dans des puces cryptographiques, des composants OTP (mot de passe à usage unique) ou des mémoires non volatiles. Cependant, les valeurs stockées peuvent être récupérées et copiées à l’aide de divers moyens tels que :
- Techniques avancées de lecture de mémoire,
- Techniques de rétro-ingénierie,
- Attaques physiques (par exemple par sondage).
La solution pour remédier à cela consiste à utiliser des clés extraites du silicium qui sont générées par un PUF. Cette caractéristique distinctive offre une réelle protection contre les techniques de rétro-ingénierie.
La fonction physiquement non clonable (PUF) est connue pour être une solution destinée aux applications anti-copie au niveau du silicium. Cependant, comme il s’agit de composants sensibles, ils sont la cible évidente d’attaques physiques. Ils doivent donc être bien protégés.
Avoir un bon PUF nécessite de prendre en compte de nombreux paramètres :
- Le caractère aléatoire, qui indique l’équilibre entre 0 et 1,
- La stabilité, avec laquelle un PUF produit les mêmes réponses aux mêmes ensembles de défis,
- La diffusion, qui indique le degré de différence entre les identifiants générés à partir des différents ensembles de challenges dans le même PUF,
- L’unicité, qui indique le degré de différence entre les identifiants générés.
Un PUF se décompose en deux éléments :
- Un ensemble de sources d’entropie du PUF basé sur une boucle, qui exploite le bruit électronique pour fournir des bits aléatoires bruts.
- Le gestionnaire du PUF, qui contrôle les sources d’entropie du PUF en leur donnant divers challenges. Les mesures renvoyées par les sources d’entropie du PUF sont traitées par le gestionnaire pour générer la clé.
Secure-IC a développé une génération de clé forte avec un PUF en boucle afin d'assurer
- La disponibilité d’un modèle stochastique :
- Un modèle stochastique explique et donne des preuves de la qualité de l’entropie et de la fiabilité de la PUF.
- Une bonne entropie :
- Il est important que la réponse du PUF ait une bonne entropie pour être utilisée comme clé. En effet, une bonne clé cryptographique est un mélange entre ‘0’ et ‘1’.
- Auto-tests fonctionnels intégrés :
- Il est important de valider l’intégrité du PUF avant de l’utiliser, par exemple en utilisant des tests de performance ou des BIST.
- Contre-mesures de sécurité :
- Le PUF intègre des contre-mesures contre plusieurs types d’attaques telles que les attaques par canal auxiliaire, les attaques par injection de fautes, etc.
- Fiabilité prouvée en ce qui concerne les variations de Pivot Token (PVT) :
- Les sorties du PUF sont stables dans toutes les conditions de fonctionnement
- Une fiabilité éprouvée vis-à-vis du vieillissement :
- La clé générée par le PUF est stable pendant toute la durée de vie du système.
- Flexibilité en termes d’encombrement, de consommation d’énergie et de latence
- Portabilité sur de nombreuses technologies différentes
L'IP de fonction physique non clonable (PUF) est particulièrement pertinente pour:
- Empreinte digitale du dispositif, elle permet l’identification précise d’une puce. Cet identifiant doit être membre d’une liste autorisée.
- Utiliser la sortie comme partie d’un paramètre cryptographique. La réponse du PUF peut être utilisée comme une clé cryptographique.
- Le PUF est utilisé comme partie d’un générateur de clés privées/publiques. Ces clés sont ensuite utilisées dans le protocole d’authentification.
- La réponse PUF est utilisée comme clé principale (Root Key) du système pour crypter et authentifier le firmware. Le firmware est décrypté et authentifié pendant le démarrage avant d’être chargé.
L'IP PUF offre les bénéfices suivants:
- PUF indépendant de la mémoire vive
- Possibilité de ne pas dépendre des données d’aide
- Évaluation du vieillissement, de la température et de la tension
- Un ensemble complet de contre-mesures intégrées contre diverses attaques :
- Protection contre les attaques dès la conception, complétée par un ensemble complet de contre-mesures.
- Prêt à être utilisé sur le terrain et à protéger vos dispositifs et vos actifs pour tout type d’application.
- L’entropie élevée réduit la probabilité de collision
- Chaque dispositif est véritablement unique
- À chaque étape de la conception, des leviers sont disponibles pour assurer la fiabilité et les niveaux d’entropie :
- Hautement adaptable à n’importe quel kit de conception, avec des mesures de sauvegarde pour assurer un bon fonctionnement,
- Réglage des paramètres du PUF avant et après silicium pour s’adapter à chaque application et à chaque situation,
- Action possible à chaque étape pour éviter tout besoin de ré-ingénierie.
- Solution hautement sécurisée pour l’approvisionnement en clés. La clé est générée à l’intérieur des puces en utilisant le PUF et n’est pas stockée en mémoire.
- Validé sur silicium
Secure-IC est membre du comité technique ISO/IEC JTC 1/SC 27 qui travaille sur l’ISO/IEC 20897 Exigences de sécurité, méthodes de test et d’évaluation pour les fonctions physiquement non clonables pour la génération de paramètres de sécurité non stockés (i.e. Security requirements, test and evaluation methods for physically unclonable functions for generating non-stored security parameter).
Plus d’information sur l’accompagnement à la certification et à la conformité de la sécurité