Aller au contenu
ecdsa.com

Agilité cryptographique (crypto-agilité)

La capacité d’un système à changer d’algorithmes cryptographiques, de tailles de clé et de paramètres sans refonte – grâce à la négociation, à la configuration et à l’inventaire –, que la transition post-quantique fait passer du statut de bonne pratique à celui de nécessité.
Autres graphiescryptographic agilitycrypto agilityalgorithm agility

L’agilité comporte trois volets : savoir où la cryptographie est utilisée (un inventaire, de plus en plus souvent exprimé sous forme de nomenclature cryptographique), pouvoir la modifier (identifiants d’algorithme dans les formats, négociation dans les protocoles, aucune taille de clé ou de signature codée en dur, couches d’abstraction dans le code) et pouvoir déployer le changement (rotation des clés, double publication, surveillance de ce que les pairs négocient réellement).

Les contre-exemples sont courants : bases de données aux colonnes de signature de largeur fixe, protocoles qui supposent des signatures de 64 octets, cartes à puce qui ne prennent en charge qu’une seule courbe et bibliothèques qui n’acceptent que des clés RSA. L’agilité a aussi un coût : chaque option négociable est une surface d’attaque, comme le montrent les attaques par repli et par confusion d’algorithme, si bien que les systèmes agiles devraient tout de même n’autoriser qu’une liste courte et à jour d’algorithmes.

Normes et références

Tous les termes