jeudi 28 juillet 2016

Codes source d'algorithmes de chiffrement symétriques

Lorsqu'on réalise des développements à base de carte à puce, c'est souvent parce qu'il y a un impératif de sécurité.

Si c'est le cas, on est rapidement confronté à la mise en oeuvre d'un ou plusieurs  chiffrement/déchiffrement. Et donc se pose la question de savoir quel code source (fiable par rapport à l'algorithme, si possible) utiliser.

Voici un site qui propose gratuitement des codes source concernant les algorithmes symétriques les plus populaires et les plus costauds (clés de 256 bits pour des traitements par blocs de 128 bits).

Dommage qu'il n'y ait pas de sources d'algos asymétriques, comme RSA par exemple qui est beaucoup utilisé dans les cartes à puce.

L'algorithme star, AES, est bien sûr présent avec un code source montrant sa mise en oeuvre avec une clé de 256 bits (rappelons que l'AES peut fonctionner avec des clés de 128, 192 ou 256 bits). Cet algorithme est actuellement considéré, officiellement, comme inviolable.

Je dois dire qu'à titre personnel je me tâte encore de savoir si je vais utiliser AES dans mes développements futurs ou si je vais utiliser TEA. AES a pour lui la robustesse supposée, mais a l'inconvénient d'être probablement l'algo le plus étudié au monde et rien ne dit qu'il soit sûr officieusement. Par ailleurs le code source n'est pas simple. TEA a pour lui la simplicité du code source (quelques lignes) et est probablement un des algo les moins étudiés (donc sûr quelque part), il est par contre sur le papier moins sûr qu'AES.

A noter qu'une implémentation gratuite et opensource d'AES est disponible sur le net, que ce soit pour Windows, Mac ou Linux, en 64 bits comme en 32 bits, en ligne de commande comme en version graphique : il s'agit de l'excellent AEScrypt. A découvrir.

Publié le 28 juillet par Alan Cartman (cartesapuce@gmail.com)

Aucun commentaire: