Provable encryption schemes for distributed systems
Schémas de Chiffrement Prouvables pour les Systèmes Distribués
Résumé
This thesis proposes the use of provable encryption schemes to obtain end-to-end security
of distributed systems. We first analyze sufficient conditions of a provable encryption
scheme used in voting systems and discover several inconsistencies in the satisfaction of
these hypotheses in the implementations of the ElGamal encryption scheme. We propose
and compare different methods to obtain chosen plaintext attacks indistinguishable
implementations.We also study broadcast encryption schemes and propose a new scheme
based on ElGamal. We implement and compare different broadcast encryption schemes
in means of execution time and memory space. Furthermore, we consider scenarios based
on broadcast encryption schemes to securely deliver messages in hierarchical distributed
systems. We extend these scenarios to a more complex architecture where software
updates are required, combining broadcast encryption schemes and remote attestation
protocols. To express different levels of confidentiality and integrity, we use security
classes featuring an order among them. Our key insight is that by mapping broadcast
subgroups of nodes to security levels, we can control that information securely flows from
the server to the nodes belonging to different security classes. We demonstrate this via
two type systems and soundness proofs with respect to a new secure information flow
property for server code fitting our architectures.
Cette thèse propose l’utilisation de schémas de chiffrement prouvables pour obtenir la
sécurité de bout en bout de systèmes distribués. Nous analysons d’abord les conditions
suffisantes d’un schéma de cryptage prouvable utilisé dans les systèmes de vote et
découvrons plusieurs incohérences dans la satisfaction de ces hypothèses dans les implémentations
du schéma de cryptage ElGamal. Nous proposons et comparons différentes
méthodes pour obtenir des implémentations indiscernables d’attaques en texte clair
choisies. Nous étudions également les schémas de cryptage de diffusion et proposons un
nouveau schéma basé sur ElGamal. Nous mettons en oeuvre et comparons différents
schémas de cryptage par diffusion en fonction de temps d’exécution et d’espace mémoire.
De plus, nous considérons des scénarios basés sur des schémas de cryptage de diffusion
pour délivrer de manière sécurisée des messages dans des systèmes distribués hiérarchiques.
Nous étendons ces scénarios à une architecture plus complexe où des mises à
jour logicielles sont nécessaires, en combinant des schémas de cryptage par diffusion et
des protocoles d’attestation à distance. Pour exprimer différents niveaux de confidentialité
et d’intégrité, nous utilisons des classes de sécurité présentant un ordre entre elles.
Notre idée clé est qu’en faisant correspondre des sous-groupes de noeuds de diffusion à
des niveaux de sécurité, nous pouvons contrôler que les informations circulent en toute
sécurité du serveur vers les noeuds appartenant à des classes de sécurité différentes.
Nous le démontrons par le biais de deux systèmes de types et de preuves de solidité
concernant une nouvelle propriété de flux d’informations sécurisé pour le code serveur
adapté aux notres architectures.
Origine : Fichiers produits par l'(les) auteur(s)