DS0706 - Sécurité de la société numérique

Chiffrements authentifiés et résistants aux attaques par canaux auxiliaires – BRUTUS

Résumé de soumission

La cryptographie symétrique est utilisée à grande échelle car elle est la seule capable de fournir des fonctionnalités primordiales comme le chiffrement à très haut débit et à bas coût, l'authentification de messages et le hachage efficace. Aujourd'hui, les algorithmes symétriques sont utilisés dans les téléphones mobiles, les cartes de crédit, les connexions sans fil, et la cryptographie symétrique est un domaine de recherche très actif. Ces fonctionnalités reposent sur l'emploi de primitives cryptographiques telles que le chiffrement par bloc, le chiffrement à flot ou les fonctions de hachage. La conception de chiffrements par bloc sûrs et efficace est considérée comme bien comprise : des algorithmes conçus il y a plus de dix ans résistent toujours à toute tentative d'attaque dans un contexte classique. L'algorithme AES, qui est la primitive symétrique la plus utilisée, en est un exemple parlant. Sa résistance aux attaques statistiques a été prouvée, et il offre des performances suffisantes pour un large éventail de contextes d'emploi.

De manière informelle, une telle primitive est considérée comme sûre dans les modèles de sécurité classiques s'il est difficile de distinguer ses sorties de chaînes aléatoires. Dans de nombreuses applications, la cryptographie est utilisée dans un cadre où les attaquants ont accès à des canaux d'information dits auxiliaires, qui ne sont pas couverts dans les modèles de sécurité classiques. Par exemple, une implémentation d'un système de télévision à péage doit se protéger contre un attaquant ayant un accès physique à l'équipement et peut mesurer certaines grandeurs physiques au cours du calcul afin de retrouver la clé. Dans des cas extrêmes, l'attaquant peut même avoir la capacité de lire la mémoire et d'en extraire les clés. Dans de tels contextes, de nombreuses implémentations sont vulnérables à des attaques pratiques. D'autre part, la conception d'un algorithme de chiffrement par bloc se limite à la définition d'une permutation paramétrée par une clé. Ils sont souvent utilisés pour protéger la confidentialité ou l'intégrité d'une donnée, ils doivent pour cela être composés selon un mode opératoire approprié. Aujourd'hui, la plupart des applications visant à protéger la confidentialité d'une donnée nécessitent également la protection de son intégrité. Cette situation entraîne un besoin fort de modes opératoires combinant ces deux propriétés. Le mode combiné le plus répandu, GCM, n'est cependant pas suffisamment efficace pour les réseaux à haut débit. De plus, le niveau de sécurité offert s'écroule dès qu'un IV est réutilisé ou si un message trop long est chiffré. Ces inconvénients ont motivé la compétition internationale CAESAR, soutenue financièrement par le NIST, qui a récemment été lancée pour définir de nouveaux schémas de chiffrement authentifié. Cette compétition a donné lieu à la publication de mécanismes novateurs, dont le niveau de sécurité doit encore être établi.

Le projet Brutus vise à étudier la sécurité des systèmes de chiffrement authentifié, et en particulier des candidats CAESAR les plus prometteurs. Cette étude consistera aussi bien à tenter d'attaquer les primitives sous-jacentes qu'à établir des preuves de sécurité sur les modes opératoires. Nous nous placerons aussi bien dans des modèles d'attaque classiques (en boîte noire) que dans des environnements plus hostiles, parmi lesquels des plateformes matérielles offrant des canaux auxiliaires. Nous chercherons également à mesurer l'impact du non-respect d'hypothèses d'implémentation telles que la réutilisation de nonces. Enfin, un but plus constructif du projet Brutus sera la recommandation de certaines solutions en fonction du contexte d'emploi, à la fois en termes de choix de mécanismes et de conseils d'implémentation. Cette tâche couvrira également le domaine de la cryptographie en boîte blanche, dans lequel on cherche à cacher une clé même si un attaquant dispose de toute l'implémentation, y compris les données secrètes.

Coordinateur du projet

Université Rennes 1 (Laboratoire public)

L'auteur de ce résumé est le coordinateur du projet, qui est responsable du contenu de ce résumé. L'ANR décline par conséquent toute responsabilité quant à son contenu.

Partenaire

Université Rennes 1
Inria Paris-Rocquencourt
Laboratoire PRISM USVQ FRE 3709
UNIVERSITE LILLE I
Laboratoire PRiSM (UMR CNRS-UVSQ 8144)
ORANGE LABS
SGDSN/ANSSI
Institut National de Recherche en Informatique et en Automatique

Aide de l'ANR 744 743 euros
Début et durée du projet scientifique : septembre 2014 - 48 Mois

Liens utiles