Thèse d'habilitation à diriger des recherches,
université Paris VII, 2002.
Confidentiality is certainly the oldest security concern
when communicating on a public channel.
The concept of asymmetric cryptography introduced by
Diffie and Hellman in 1976 provided a new direction for
encryption, with new features and new kinds of security analyses.
For instance, with the public key of the recipient, anybody can
secretly send a message, without either having to ever met in
person before, or even prior knowledge of any common secret information.
This allows confidentiality in many more domains, but
also increases the threats since the public key provides
some information to the adversary,
which rules out perfect and unconditional secrecy.
We are thus led to consider computational security, under some
specific algorithmic assumptions.
A cryptographic scheme based on an algorithmic assumption such as
integer factoring provides no guarantee that one actually has
to factor in order to break the scheme.
Several famous incorrect constructions illustrate this fact.
In this thesis, we lay out foundations for provable security, and more
precisely for asymmetric encryption. This helps us to design concrete
cryptosystems meaningful in practice whose security relies on a
specific algorithmic assumption only, and no other heuristic.
To reach this aim, one precisely defines the security notions to be
guaranteed, considering both the goals an adversary would like to
achieve and the means it could provide. Then, one compares the difficulty
to defeat security relative to the algorithmic assumption.
Complexity theory may help through the notion of reduction:
a program, that uses an algorithm against the former
problem as a sub-program in order to solve the latter.
People have quickly realized how much such reductions could help for ruling
out flawed designs for cryptographic schemes. They recently highlighted
the importance of their efficiency. Indeed, the more efficient is the
reduction, the tighter is the relation between both the attack and the
algorithm problem. The size of the parameters
to be used in practice then depends on this more or less tight
link for achieving a specific security level. Several papers are
appended to this thesis which illustrate all the above steps for
provable security and its practical impacts.
Résumé
La confidentialité des messages est certainement le plus ancien
des besoins en sécurité de l'information.
Le concept de cryptographie asymétrique,
proposé en 1976 par Diffie et Hellman, a provoqué
un important bouleversement, aussi bien au niveau des fonctionnalités
que de l'analyse de sécurité.
Par exemple, avec la clé publique de son interlocuteur, il est
possible de lui envoyer un message confidentiel, sans jamais avoir
précédemment été en contact avec lui ; et donc sans partager de convention
secrète avec ce dernier. Les applications potentielles
sont alors plus vastes, mais les risques aussi plus importants.
En effet, la clé publique fournit de l'information à l'attaquant,
ce qui exclut notamment la confidentialité parfaite, ou inconditionnelle.
On s'est alors intéressé à la confidentialité calculatoire,
sous des hypothèses algorithmiques précises.
Décrire un schéma cryptographique basé sur une hypothèse algorithmique,
telle que la difficulté de la factorisation,
ne garantit néanmoins pas qu'il soit nécessaire de contredire
cette dernière pour ``casser'' le système.
Les contre-exemples sont d'ailleurs très nombreux, à cause de mauvaises
constructions.
Le but de ce mémoire est d'établir les fondements de la sécurité
prouvée, notamment en chiffrement asymétrique,
afin de décrire des schémas cryptographiques concrets dont la sécurité
repose exclusivement sur l'hypothèse algorithmique prédéterminée,
et non sur une construction heuristique.
Pour cela, on définit les notions
de sécurité à garantir, avec les buts et les moyens de l'adversaire.
Ensuite, on étudie le lien qu'il existe entre la difficulté à
mettre en défaut l'une de ces notions et la difficulté à contredire
l'hypothèse algorithmique.
La théorie de la complexité permet d'évaluer cette difficulté relative,
avec les réductions, soit des programmes qui utilisent un algorithme
contre le premier problème comme sous-programme pour résoudre le second.
On a vite pris conscience de l'intérêt de telles réductions pour garantir
l'absence de failles structurelles dans le schéma cryptographique.
Mais on n'a que récemment mesuré l'importance de leur efficacité.
Plus une réduction est efficace, plus le niveau de sécurité
et l'hypothèse algorithmique sont liés. De ce lien dépendra la taille
des paramètres à utiliser, et donc l'efficacité du protocole
cryptographique pratique pour un niveau de sécurité fixé.
De nombreux articles en annexe
illustrent toutes ces étapes de la sécurité prouvée,
et leurs implications pratiques.
| HDR Thesis -- 2002 |