Coffre-fort temporel

Mars 2023

Examinons à présent les problèmes de sécurité particuliers liés à cette horloge radioactive.

Voici la structure générale, probablement la plus simple :

Par rapport à la mesure du délai (page précédente), le secret à relâcher a été ajouté, lorsque le niveau cible sera atteint, plus exactement lorsque la valeur de radioactivité mesurée sera inférieure à ce seuil, puisqu'elle décroit systématiquement dans ce cas de figure.

Du point de vue sécurité, très classiquement il faudra protéger le secret des observateurs extérieurs, ce qui se fait habituellement dans toutes les puces cryptographiques.

Le niveau cible n'a pas besoin d'être secret, sauf si vous ne voulez pas révéler quand le secret sera relâché. Il faut impérativement protéger sa valeur contre une substitution quelconque. Par exemple, un attaquant pourrait cibler la case mémoire où est stockée la valeur et l'altérer. Rien que pour ça, c'est mieux de tout cacher, voire de prévoir de la redondance et un contrôle d'intégrité.

Pour empêcher la reprogrammation du système, on pourra utiliser un fusible pour n'autoriser qu'une seule écriture.

Radiations

La partie vraiment nouvelle du point de vue sécurité, c'est l'usage de la radioactivité. Nous avons augmenté la surface d'attaque, et invariablement, de nouvelles attaques vont se produire.

Attaques aux radiations

Une attaque un peu évidente est de placer le système près d'une source radioactive, en espérant perturber la mesure interne.

L'attaquant approche une source radioactive près de l'horloge à isotopes,
espérant lui faire relâcher le secret. Cela ne fera que la bloquer.

Dans ce cas précis, le système est basé sur de la désintégration et donc de la disparition d'isotopes, augmenter la radioactivité empêchera d'atteindre le seuil pour libérer le secret. Il s'agit alors d'un déni de service, mais le secret restera protégé.

Généralement les circuits électroniques sont détériorés par une exposition radioactive importante. On pourra alors blinder l'ensemble comme on le fait pour les circuits intégrés de nos bombes atomiques.

Le seul moyen de relâcher le secret, c'est de baisser la radioactivité dans le système, ce qui suppose d'avoir accès à la source interne.

Il faut savoir que les puces cryptographiques sont plutôt conçues pour tomber en panne quand on tente de les ouvrir, aussi un démontage n'aura guère de chance de donner l'accès au secret.

Ou alors on pourrait provoquer la désintégration de l'isotope utilisé, par exemple en le bombardant de neutrons ou autres particules adéquates ─ce qui n'est pas à la portée de tout le monde. Mais ce faisant, l'attaquant aura toutes les chances de détériorer le circuit autour, en particulier la diode de lecture.

On pourra toujours ajouter d'autres capteurs de radioactivité pour surveiller plus spécifiquement l'environnement, comme les badges pour les humains. À la première tentative de redémarrage de la puce, si le niveau externe est anormal, alors la puce se bloque.

Attaques aux radiations à la programmation

Un moment très critique est la programmation de la puce, qui n'arrivera qu'une seule fois. C'est le moment où on entre le secret, et on calcule le niveau cible en donnant le délai souhaité (ou la date de libération, c'est pareil si on connait la date courante).

Un attaquant pourrait augmenter la radioactivité de l'environnement juste au moment de la programmation.

En effet, c'est le moment le plus vulnérable car si le système mesure un niveau plus haut que le réel par exemple en mesurant 20 000 au lieu de 10 000, alors le niveau cible calculé sera trop haut par exemple 5 000 au lieu de 2 500, ce qui canule le délai. Le secret sera relâché bien plus tôt, voire immédiatement après l'éloignement de la source supplémentaire !

En contre-mesure on pourra surveiller le niveau de radioactivité. Non seulement on pourra avertir l'utilisateur que le niveau est anormalement élevé, et on aura tendance à limiter les valeurs autorisées lors de la programmation, dans une certaine mesure bien sûr.

J'espère vous avoir convaincu qu'ajouter une horloge d'une manière sécurisée dans une puce électronique est loin d'être infaisable.

Au moment où j'écris ces lignes (février-mars 2023), c'est un projet au niveau TRL 1 à 2.