Cryptographic Protocols - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2021

Cryptographic Protocols

Protocoles cryptographiques

George Teşeleanu
  • Fonction : Auteur
  • PersonId : 1093939

Résumé

Influenced by the plethora of concepts a cryptographer has to manage, in this work we touch on different areas of cryptography and we either take the role of the designer or of the attacker. By presenting both sides of the same coin, we wish that the reader will start to appreciate the beauty of this puzzling science and will begin to see the relationships that arise between seemingly different concepts. We further present a brief synopsis of the seven main chapters contained in this work. One of the most difficult things about structuring this work was the interdependency of some of the chapters. We have tried to present the material in this thesis in a logical and natural order. Without further ado, here is the thesis outline. Chapter 2 tackles secret key cryptography and is split into three parts. The first part analyses the security of the (affine) Hill cipher and their corresponding modes of operation. Definitions and background information are presented in Section 2.1.1. The core of the first part consists of Sections 2.1.2 and 2.1.3 that contain several key ranking functions and ciphertext only attacks. Experimental results are provided in Section 2.1.4 and some possible research directions are given in Section 2.1.5. The letter frequencies and the Vigenère attack used in Section 2.1.4 are given in Appendices A and B. Some possible methods for increasing the brute-force complexity for the Grain family of stream ciphers are presented in the second part of this chapter. We introduce notations and give a quick reminder of the Grain family technical specifications in Section 2.2.1. Section 2.2.2 describes generic attacks against the Grain ciphers. In Section 2.2.3 we provide the reader with a security analysis of IV padding schemes for Grain ciphers. We underline various interesting ideas as future work in Section 2.2.4. We recall Grain v1 in Appendix C, Grain-128 in Appendix D and Grain-128a in Appendix E. We do not recall the corresponding parameters of Grain v0, even though the results presented in this section still hold in that case. In Appendices F and G we provide test values for our proposed algorithms. The last part of this chapter studies the effect of using quasigroups isotopic to groups when designing SPNs. Hence, prerequisites are given in Section 2.3.1. An SPN generalization is introduced in Section 2.3.2 and its security is studied in Section 2.3.3. In Chapter 3 we discuss several public key protocols and some of their applications. The first part introduces several hardness assumptions necessary for proving the protocols' security. Zero-knowledge protocols are studied in the second part of this chapter. Therefore, we recall zero-knowledge concepts in Section 3.2.1. Inspired by Maurer's Unified-Zero Knowledge construction, in Section 3.2.2 we introduce a Unified Generic Zero-Knowledge protocol and prove it secure. We provide the reader with various special cases of UGZK in Section 3.2.3. A hash variant of our core protocol is tackled in Section 3.2.4 together with its security analysis. As a possible application for UGZK, in Section 3.2.5 we describe a lightweight authentication protocol, discuss security and complexity aspects and present implementation trade-offs which arise from small variations of the proposed result. In Section 3.2.6 we underline future work proposals. The third part of this chapter contains a signature scheme inspired by Maurer's UZK paradigm. The necessary prerequisites are given in Section 3.3.1 and the exact details of the UDS signature are provided in Section 3.3.2. An application for UDS is given in the fourth part of this chapter. More precisely, after introducing preliminaries in Section 3.4.1, we introduce a co-signing protocol built on the legally fair contract signing protocol of Ferradi et. al in Section 3.4.2. We discuss some related open problems in Section 3.4.3. Two public key encryption schemes are presented in the fifth part. In Section 3.5.1 we introduce definitions, security assumptions and schemes used throughout the section. First we introduce in Section 3.5.2 a slight modification of the generalized ElGamal encryption scheme, that will be used in a subsequent chapter. Then, inspired by the Joye-Libert PKE scheme and aiming at obtaining a relevant generalization, in Section 3.5.3 we propose a new scheme based on $2^k$ residues, prove it secure in the standard model and analyze its performance compared to other related cryptosystems. Future work is presented in Section 3.5.3.5 and in Appendix H we present some optimized decryption algorithms for our proposed scheme. The final part of this chapter provides the reader with an application of our Joye-Libert based scheme to biometric authentication. Thus, definitions and security requirements are presented in Section 3.6.1, while our proposed authentication protocol is described in Section 3.6.2. Some useful results for understating the security of Cocks' identity based encryption and of certain variations of it are provided in Chapter 4. Basic notions and Cocks' scheme are presented in the first part of the chapter. The second part considers sets of the form $a+X=\{(a+x)\bmod n\mid x\in X\}$, where $n$ is a prime or the product of two primes $n=pq$ and $X$ is a subset of $\mathbb Z_n^*$ whose elements have some given Jacobi symbols modulo prime factors of $n$. The third part of the chapter points out two applications of the previously mentioned results. The first one provides the reader with a deep analysis of some distributions related to Cocks' IBE scheme and Galbraith's test, providing thus rigorous proofs for Galbraith's test. The second application discussed, relates to the computational indistinguishability of some distributions used for proving the security of certain variations of Cocks' IBE. We were able to prove statistical indistinguishability of those distributions without any hardness assumption. The chapter concludes with Section 4.4. An unconventional method for backdooring cryptographic systems is studied in Chapter 5. The basic notions about kleptographic attacks are given in Section 5.1. The first part of this chapter deal with a threshold kleptographic attack that can be implemented in the generalized ElGamal signature. Thus, in Section 5.2.1 we describe a simplified attack on the generalized ElGamal signature and then extended it in Section 5.2.2. A series of signatures that support the implementation of our attack are provided in Section 5.2.3. Future work is presented in Section 5.2.4 and a two-party malicious signing protocol is presented in Appendix I. We provide a supplementary kleptographic mechanism in Appendix J. A method for infecting Maurer's UZK protocol is studied in the second part of this chapter. In Sections 5.3.1 and 5.3.2 we present our new general kleptographic attacks and prove them secure. Instantiations of our attacks can be found in Section 5.3.3. Some possible research directions are given in Section 5.3.4. In the third part, we introduce a subscription based marketing model suitable for selling infected devices. Hence, some additional preliminaries are given in Section 5.4.1. Based on the ElGamal encryption algorithm, a series of kleptographic subscriptions that fit different scenarios are provided in Sections 5.4.2 to 5.4.4. We discuss some open problems in Section 5.4.5. Hash channels are tackled in the last part of the chapter. By adapting and improving Wu's mechanism we introduce new hash channels in Section 5.5.1. A series of experiments are conducted in Section 5.5.2, while several applications are provided in Section 5.5.3. In Chapter 6 we study (pseudo)-random numbers generators. The first part of the chapter deals with Adobe Flash Player's vulnerability in the pseudo-random number generator used for constant blinding. We introduce the necessary prerequisites in Section 6.1.1. The core of our seed recovering mechanism consists of Sections 6.1.2 and 6.1.3 and contains a series of algorithms for inverting a generalized version of the hash function used by the Flash Player. Experimental result are given in Section 6.1.4. Supplementary algorithms may be found in Appendix K. The second part contain an architecture that can be used to implement health tests for random numbers generator. Definitions and background information are presented in Section 6.2.1. Two classes of digital filters that amplify existing biases are described in Sections 6.2.2 and 6.2.3. Some possible applications are given in Section 6.2.4. In Section 6.2.5 we apply our proposed architecture to broken Bernoulli noise sources and present some experimental results. The theoretical model is provided in Section 6.2.6. Some finer measurements are provided in Section 6.2.7. In Section 6.2.8 we underline future work proposals. Chapter 7 contains several protocols that fall in the category of recreational cryptography. Thus, in Section 7.1 we describe various schemes which aim at solving Yao's millionaires' problem and provide the reader with their corresponding security analyses. In Section 7.2 we present a set of protocols which act as solutions for comparing information without revealing it and discuss their security. In Section 7.3 we describe a public key cryptosystem constructed by means of an electrical scheme and tackle its security. In Appendix L we recall various physical cryptographic solutions which appeared in the literature, while in Appendix M we present a generic physical public key encryption scheme useful for introducing students to different properties of physical systems.
Influencés par la pléthore de concepts qu'un cryptographe doit gérer, nous abordons dans cet ouvrage différents domaines de la cryptographie et nous prenons soit le rôle du concepteur, soit celui de l'attaquant. En présentant les deux côtés de la même pièce, nous souhaitons que le lecteur commence à apprécier la beauté de cette science déroutante et qu'il commence à voir les relations qui existent entre des concepts apparemment différents. Nous présentons ensuite un bref synopsis des sept principaux chapitres contenus dans cet ouvrage. L'interdépendance de certains chapitres a été l'un des aspects les plus difficiles de la structuration de cet ouvrage. Nous avons essayé de présenter le matériel de cette thèse dans un ordre logique et naturel. Sans plus attendre, voici le plan de la thèse. Le chapitre 2 aborde la cryptographie à clé secrète et est divisé en trois parties. La première partie analyse la sécurité du chiffrement de Hill (affine) et les modes d'opération correspondants. Les définitions et les informations de base sont présentées dans la section 2.1.1. Le cœur de la première partie est constitué des sections 2.1.2 et 2.1.3 qui contiennent plusieurs fonctions de classement des clés et des attaques sur le texte chiffré uniquement. Les résultats expérimentaux sont présentés dans la section 2.1.4 et certaines directions de recherche possibles sont données dans la section 2.1.5. Les fréquences des lettres et l'attaque Vigen\`ere utilisée dans la Section 2.1.4 sont données dans les Annexes A et B. Certaines méthodes possibles pour augmenter la complexité de la force brute pour la famille de chiffrement de Grain sont présentées dans la deuxième partie de ce chapitre. La section 2.2.1 présente les notations et donne un bref rappel des spécifications techniques de la famille Grain. La Section 2.2.2 décrit les attaques génériques contre les ciphers Grain. Dans la section 2.2.3, nous fournissons au lecteur une analyse de sécurité des schémas de remplissage IV pour les chiffrements Grain. Dans la section 2.2.4, nous soulignons diverses idées intéressantes pour les travaux futurs. Nous rappelons Grain v1 dans l'annexe C, Grain-128 dans l'annexe D et Grain-128a dans l'annexe E. Nous ne rappelons pas les paramètres correspondants de Grain v0, même si les résultats présentés dans cette section sont toujours valables dans ce cas. Dans les annexes F et G, nous fournissons des valeurs de test pour nos algorithmes proposés. La dernière partie de ce chapitre étudie l'effet de l'utilisation de quasigroupes isotopiques aux groupes lors de la conception de SPNs. Les conditions préalables sont donc données dans la section 2.3.1. Une généralisation des SPN est présentée à la section 2.3.2 et sa sécurité est étudiée à la section 2.3.3. Dans le chapitre 3, nous discutons de plusieurs protocoles à clé publique et de certaines de leurs applications. La première partie présente plusieurs hypothèses de dureté nécessaires pour prouver la sécurité des protocoles. Les protocoles à connaissance nulle sont étudiés dans la deuxième partie de ce chapitre. Par conséquent, nous rappelons les concepts de connaissance zéro dans la section 3.2.1. Inspirés par la construction de la connaissance nulle unifiée de Maurer, nous présentons dans la section 3.2.2 un protocole générique unifié à connaissance nulle et prouvons sa sécurité. Nous présentons au lecteur divers cas particuliers de UGZK dans la section 3.2.3. Une variante de hachage de notre protocole de base est abordée à la section 3.2.4, ainsi que son analyse de sécurité. En tant qu'application possible de UGZK, nous décrivons dans la section 3.2.5 un protocole d'authentification léger, discutons des aspects de sécurité et de complexité et présentons les compromis de mise en œuvre qui découlent de petites variations du résultat proposé. Dans la section 3.2.6, nous soulignons les propositions de travaux futurs. La troisième partie de ce chapitre contient un schéma de signature inspiré du paradigme UZK de Maurer. Les conditions préalables nécessaires sont données dans la section 3.3.1 et les détails exacts de la signature UDS sont fournis dans la section 3.3.2. Une application d'UDS est donnée dans la quatrième partie de ce chapitre. Plus précisément, après avoir présenté les préliminaires dans la section 3.4.1, nous présentons un protocole de cosignature basé sur le protocole de signature de contrat légalement équitable de Ferradi et al. dans la section 3.4.2. La section 3.4.3 aborde certains problèmes connexes ouverts. Deux schémas de chiffrement à clé publique sont présentés dans la cinquième partie. Dans la Section 3.5.1, nous introduisons les définitions, les hypothèses de sécurité et les schémas utilisés tout au long de la section. Dans la section 3.5.2, nous présentons d'abord une légère modification du schéma de chiffrement ElGamal généralisé, qui sera utilisé dans un chapitre ultérieur. Ensuite, en s'inspirant du schéma PKE de Joye-Libert et en cherchant à obtenir une généralisation pertinente, nous proposons dans la Section 3.5.3 un nouveau schéma basé sur des résidus $2^k$, nous prouvons qu'il est sûr dans le modèle standard et nous analysons ses performances par rapport à d'autres cryptosystèmes connexes. Les travaux futurs sont présentés dans la section 3.5.3.5 et dans l'annexe H, nous présentons quelques algorithmes de décryptage optimisés pour notre schéma proposé. La dernière partie de ce chapitre présente au lecteur une application de notre schéma basé sur Joye-Libert à l'authentification biométrique. Ainsi, les définitions et les exigences de sécurité sont présentées dans la section 3.6.1, tandis que le protocole d'authentification que nous proposons est décrit dans la section 3.6.2. Certains résultats utiles pour comprendre la sécurité du chiffrement basé sur l'identité de Cocks et de certaines de ses variantes sont fournis au chapitre 4. Les notions de base et le schéma de Cocks sont présentés dans la première partie du chapitre. La deuxième partie considère des ensembles de la forme $a+X=\{(a+x)\bmod n\mid x\in X\}$, où $n$ est un nombre premier ou le produit de deux nombres premiers $n=pq$ et $X$ est un sous-ensemble de $\mathbb Z_n^*$ dont les éléments ont des symboles de Jacobi donnés modulo des facteurs premiers de $n$. La troisième partie du chapitre met en évidence deux applications des résultats mentionnés précédemment. La première fournit au lecteur une analyse approfondie de certaines distributions liées au schéma IBE de Cocks et au test de Galbraith, fournissant ainsi des preuves rigoureuses pour le test de Galbraith. La deuxième application discutée concerne l'indiscernabilité computationnelle de certaines distributions utilisées pour prouver la sécurité de certaines variations de l'IBE de Cocks. Nous avons pu prouver l'indiscernabilité statistique de ces distributions sans aucune hypothèse de dureté. Le chapitre se termine par la section 4.4. Une méthode non conventionnelle de backdooring des systèmes cryptographiques est étudiée dans le chapitre 5. Les notions de base sur les attaques kleptographiques sont données dans la Section 5.1. La première partie de ce chapitre traite d'une attaque kleptographique à seuil qui peut être implémentée dans la signature ElGamal généralisée. Ainsi, dans la Section 5.2.1, nous décrivons une attaque simplifiée sur la signature ElGamal généralisée, puis nous l'étendons dans la Section 5.2.2. Une série de signatures qui supportent l'implémentation de notre attaque est fournie dans la Section 5.2.3. Les travaux futurs sont présentés à la section 5.2.4 et un protocole de signature malveillant à deux parties est présenté à l'annexe I. Nous fournissons un mécanisme kleptographique supplémentaire dans l'annexe J. Une méthode pour infecter le protocole UZK de Maurer est étudiée dans la deuxième partie de ce chapitre. Dans les sections 5.3.1 et 5.3.2, nous présentons nos nouvelles attaques kleptographiques générales et prouvons leur sécurité. Des instanciations de nos attaques sont présentées dans la section 5.3.3. Quelques directions de recherche possibles sont données dans la Section 5.3.4. Dans la troisième partie, nous introduisons un modèle de marketing basé sur l'abonnement, adapté à la vente de dispositifs infectés. Par conséquent, la Section 5.4.1 présente quelques préliminaires supplémentaires. Sur la base de l'algorithme de chiffrement ElGamal, une série d'abonnements kleptographiques adaptés à différents scénarios sont fournis dans les sections 5.4.2 à 5.4.4. Nous discutons de certains problèmes ouverts dans la section 5.4.5. Les canaux de hachage sont abordés dans la dernière partie du chapitre. En adaptant et en améliorant le mécanisme de Wu, nous introduisons de nouveaux canaux de hachage dans la Section 5.5.1. Une série d'expériences est menée dans la Section 5.5.2, tandis que plusieurs applications sont fournies dans la Section 5.5.3. Dans le chapitre 6, nous étudions les générateurs de nombres (pseudo)-aléatoires. La première partie du chapitre traite de la vulnérabilité d'Adobe Flash Player dans le générateur de nombres pseudo-aléatoires utilisé pour l'aveuglement constant. Nous présentons les conditions préalables nécessaires dans la section 6.1.1. Le cœur de notre mécanisme de récupération des graines est constitué des sections 6.1.2 et 6.1.3 et contient une série d'algorithmes pour inverser une version généralisée de la fonction de hachage utilisée par le Flash Player. Les résultats expérimentaux sont donnés dans la Section 6.1.4. Des algorithmes supplémentaires se trouvent dans l'annexe K. La deuxième partie contient une architecture qui peut être utilisée pour mettre en œuvre des tests de santé pour le générateur de nombres aléatoires. Les définitions et les informations de base sont présentées dans la Section 6.2.1. Deux classes de filtres numériques qui amplifient les biais existants sont décrites dans les sections 6.2.2 et 6.2.3. La section 6.2.4 présente quelques applications possibles. Dans la section 6.2.5, nous appliquons l'architecture que nous proposons à des sources de bruit de Bernoulli brisé et présentons quelques résultats expérimentaux. Le modèle théorique est présenté à la section 6.2.6. La Section 6.2.7 présente des mesures plus fines. Dans la section 6.2.8, nous soulignons les propositions de travaux futurs. Le chapitre 7 contient plusieurs protocoles qui entrent dans la catégorie de la cryptographie récréative. Ainsi, dans la section 7.1, nous décrivons divers schémas qui visent à résoudre le problème des millionnaires de Yao et nous fournissons au lecteur les analyses de sécurité correspondantes. Dans la section 7.2, nous présentons un ensemble de protocoles qui servent de solutions pour comparer des informations sans les révéler et nous discutons de leur sécurité. Dans la section 7.3, nous décrivons un système de cryptage à clé publique construit au moyen d'un schéma électrique et abordons sa sécurité. Dans l'annexe L, nous rappelons diverses solutions de cryptographie physique apparues dans la littérature, tandis que dans l'annexe M, nous présentons un schéma générique de cryptage à clé publique physique utile pour initier les étudiants à différentes propriétés des systèmes physiques.
Fichier principal
Vignette du fichier
Thesis.pdf (3.04 Mo) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

tel-03408765 , version 1 (04-11-2021)
tel-03408765 , version 2 (06-05-2022)

Identifiants

  • HAL Id : tel-03408765 , version 2

Citer

George Teşeleanu. Cryptographic Protocols. Cryptography and Security [cs.CR]. Simion Stoilow Institute of Mathematics of the Romanian Academy (Roumanie), 2021. English. ⟨NNT : ⟩. ⟨tel-03408765v2⟩
243 Consultations
148 Téléchargements

Partager

Gmail Facebook X LinkedIn More