Garanties de dureté pour AES

14

De nombreux cryptosystèmes à clé publique ont une sorte de sécurité prouvable. Par exemple, le cryptosystème Rabin est aussi difficile que l'affacturage.

Je me demande si ce type de sécurité prouvable existe pour les cryptosystèmes à clé secrète, tels que AES. Sinon, quelle est la preuve qu'il est difficile de casser de tels cryptosystèmes? (autre que la résistance aux attaques par essais et erreurs)

Remarque: je connais les opérations AES (AddRoundKey, SubBytes, ShiftRows et MixColumns). Il semble que la dureté d'AES découle de l'opération MixColumns, qui à son tour doit hériter de sa difficulté d'un problème difficile sur Galois Fields (et donc de l'algèbre). En fait, je peux reformuler ma question comme suit: "Quel problème algébrique dur garantit la sécurité d'AES?"

MS Dousti
la source

Réponses:

8

MIXCOLUMNS empêche les attaques qui ne se concentrent que sur quelques S-box, car le mélange des colonnes nécessite que tous les S-box participent au cryptage. (Les concepteurs de Rijndael ont appelé cela une «stratégie à large piste».) La raison pour laquelle l'analyse d'une S-box est difficile est due à l'utilisation de l'opération d'inversion de champ fini. L'inversion "lisse" les tableaux de distribution des entrées de la boîte S, de sorte que les entrées semblent (presque) uniformes, c'est-à-dire qu'on ne peut les distinguer d'une distribution aléatoire sans la clé. C'est la combinaison des deux fonctionnalités qui permet à Rijndael de se protéger contre les attaques connues.

En passant, le livre The Design of Rijndael est une très bonne lecture, et discute de la théorie et de la philosophie de la cryptographie.

Aaron Sterling
la source
1
Bonne explication. Merci. En fait, j'avais accès au livre, mais je ne savais pas quelle partie lire (concernant ma question). Suggérez-vous un chapitre ou une section spéciale?
MS Dousti du
3
Je l'ai lu il y a plus de deux ans, dans une bibliothèque, donc je n'ai pas la table des matières devant moi, et je ne suis pas sûr de pouvoir donner une réponse concrète à votre question, sauf que j'ai aimé la manière ils ont conçu les S-box pour être facilement réalisables. Cependant, une chose que je peux suggérer est l'explication de Stinson d'AES et d'autres réseaux de substitution-permutation dans Cryptography: Theory and Practice. C'est le chapitre 3 de l'édition que j'ai, et il semble que vous pouvez télécharger le livre gratuitement à ce lien: ebookee.com/…
Aaron Sterling
1
Merci d'avoir suggéré le livre de Stinson. Pourriez-vous également consulter la table des matières de The Design of Rijndael et voir si elle rappelle quelque chose d'utile?
MS Dousti
2
Merci pour le lien! :-) Oui, la section 3.6 et le chapitre 5 m'ont tous deux été très intéressants, car ils ont discuté du "pourquoi", pas seulement du "quoi".
Aaron Sterling
10

Comme l'a dit David, nous n'avons pas de telles réductions pour AES. Cependant, cela ne signifie pas que le cryptosystème Rabin ou RSA est plus sécurisé que AES. En fait, je ferais confiance à la sécurité (au moins unidirectionnelle, probablement aussi pseudo-aléatoire) des chiffrements de blocs tels que AES / DES, etc. est difficile, précisément parce qu'il n'y a pas de structure algébrique et qu'il est donc plus difficile d'imaginer qu'il y aura une sorte d'algorithme révolutionnaire.

On peut construire des chiffres de bloc directement à partir de fonctions unidirectionnelles, ce qui est une hypothèse minimale pour une grande partie de la crpyotgraphie, mais la construction résultante sera terriblement inefficace et donc non utilisée.

Boaz Barak
la source
Merci Boaz. Je pense que la construction Luby-Rackoff est celle qui fournit une pseudo-aléatoire prouvable basée sur des structures de type DES, non?
MS Dousti
3
Oui. Plus précisément, vous commencez avec une fonction unidirectionnelle, la convertissez en générateur pseudo-aléatoire en utilisant Hastad, Impagliazzo, Luby, Levin, puis la convertissez en fonction pseudo-aléatoire en utilisant Goldreich, Goldwasser, Micali, puis utilisez Luby-Rackoff pour la convertir en une permutation pseudo-aléatoire (ie, bloc ci pher)
Boaz Barak
6

Puisqu'on peut convertir n'importe quel schéma de chiffrement à clé publique en schéma à clé secrète de manière générique, vous pouvez obtenir des schémas à clé secrète avec des garanties de sécurité prouvables similaires.

Mais cette réponse est pédante: pour le blockcipher déployé typique, nous n'avons pas d'analyse de sécurité prouvable dans le sens de la réduction au problème de calcul. Il y a eu des propositions de blockciphers avec des réductions de sécurité, mais le bagage de calcul nécessaire pour faciliter une réduction les rend non compétitifs avec des schémas plus efficaces comme les algorithmes AES.

Fait intéressant, la communauté de la sécurité prouvée a généralement convenu qu'il est judicieux de prendre la sécurité du chiffrement par blocs (permutation pseudo-aléatoire) comme hypothèse, puis de la réduire lors de l'analyse des protocoles de niveau supérieur qui utilisent le chiffrement par blocs comme composant. Autrement dit, contrairement à certains autres défis de la conception de protocoles sécurisés, il semble suffisant de faire confiance à l'intuition des cryptanalystes pour la sécurité en ce qui concerne les chiffreurs de blocs.

David Cash
la source