Fully Homomorphic Encryption Over Exterior Product Spaces
Total Page:16
File Type:pdf, Size:1020Kb
FULLY HOMOMORPHIC ENCRYPTION OVER EXTERIOR PRODUCT SPACES by DAVID WILLIAM HONORIO ARAUJO DA SILVA B.S.B.A., Universidade Potiguar (Brazil), 2012 A thesis submitted to the Graduate Faculty of the University of Colorado Colorado Springs in partial fulfillment of the requirements for the degree of Master of Science Department of Computer Science 2017 © Copyright by David William Honorio Araujo da Silva 2017 All Rights Reserved This thesis for the Master of Science degree by David William Honorio Araujo da Silva has been approved for the Department of Computer Science by C. Edward Chow, Chair Carlos Paz de Araujo Jonathan Ventura 9 December 2017 Date ii Honorio Araujo da Silva, David William (M.S., Computer Science) Fully Homomorphic Encryption Over Exterior Product Spaces Thesis directed by Professor C. Edward Chow ABSTRACT In this work I propose a new symmetric fully homomorphic encryption powered by Exterior Algebra and Product Spaces, more specifically by Geometric Algebra as a mathematical language for creating cryptographic solutions, which is organized and presented as the En- hanced Data-Centric Homomorphic Encryption - EDCHE, invented by Dr. Carlos Paz de Araujo, Professor and Associate Dean at the University of Colorado Colorado Springs, in the Electrical Engineering department. Given GA as mathematical language, EDCHE is the framework for developing solutions for cryptology, such as encryption primitives and sub-primitives. In 1978 Rivest et al introduced the idea of an encryption scheme able to provide security and the manipulation of encrypted data, without decrypting it. With such encryption scheme, it would be possible to process encrypted data in a meaningful way. In 2009, Craig Gentry proposed the first fully homomorphic encryption scheme based on ideal lattices. Although his original solution has faced some important improvements, Gentry’s scheme is currently impracticable. Geometric Algebra is a field of mathematics already explored in many areas of Com- puter Science, Physics, Electrical Engineering, to cite a few. However, this is the first time that Geometric Algebra is proposed as the main building block of cryptographic solutions. Numbers are represented as multivectors, the special object for data representation, and through the GA operations (and some of its extensions), a series of transformations are performed, providing the mathematical under-determinacy required for encryption. Since the mathematics that empowers EDCHE is naturally homomorphic, EDCHE is illustrated as an intrinsically fully homomorphic encryption, allowing the required ho- momorphic additive and multiplicative properties and adding special capabilities such as comparison, sorting and searching. iii DEDICATION Dedicated to my parents, Janildo and Elisabete, my wife Cimaria, and my son and daughters, Johnathan, Samara and Sarah. Not even a thousand theses would be enough to properly express how much I love you all. iv ACKNOWLEDGEMENTS I would like to thank God, my Lord and Savior, for the gift of life and for so much love, for what I am constantly astonished and amazed. I also want to thank Dr. Carlos A. Paz de Araujo for believing in my potential and for investing in my academic and professional career in so many ways. Thank you for being such an inspiration, for mentoring me with absolute excellence and for teaching me that learning and creating are achievable goals, not matter the size or the complexity of the challenges in front of us. I want to thank Greg Jones for supporting me in my personal and professional develop- ment with the type of guidance that makes the difference in the life of any successful person. Thank you for being always optimistic and and willing to serve. I want to thank Marcelo Araujo Xavier for being a great incentive for my academic growth, helping me whenever I needed it. My gratitude also goes to my advisor Dr. Edward Chow for believing in me and in my ideas, for giving me practicable orientation during the entire research process and teaching me how to think as a Computer Scientist. I learned a lot during this whole process. v Table of Contents CHAPTER 1Introduction 1 1.1 Fundamental concepts and definitions . 1 1.2 Types and properties of secrecy system . 3 1.3 Statisticalmethods................................ 4 1.4 Homomorphism................................... 6 1.5 Homomorphicencryption ............................. 7 1.6 Fullyhomomorphicencryption . 8 1.7 Exterior product spaces and Geometric Algebra . 9 1.8 Enhanced Data-Centric Homomorphic Encryption . ... 9 1.9 EDCHESpecialApplications . 11 1.10MyContribution .................................. 13 2 FHE Using Ideal Lattices 15 2.1 Introduction..................................... 15 2.2 FullyHomomorphicEncryption . 16 2.3 Gentry’sFullyHomomorphicEncryption. .... 16 2.4 LimitationsofGentry’sscheme . 18 2.5 Intrinsic and Extrinsic Homomorphism . ....... 20 2.6 Conclusion...................................... 21 3ProductspacesandGeometricAlgebra 22 3.1 Introduction..................................... 22 3.2 Exterior Algebra and Product Spaces . 23 3.3 GeometricAlgebra ................................. 26 vi 3.4 Conclusion...................................... 35 4EncryptionusingMultivectors 37 4.1 Introduction..................................... 37 4.2 BasicMultivectorPackingScheme . 41 4.3 Sylvester’sEquation ............................... 43 4.4 Tripleproduct.................................... 44 4.5 The Underdeterminacy of the EDCHE Primitives . 45 4.6 EDCHEasaFramework.............................. 47 4.7 EDCHESub-primitives .............................. 48 4.8 SecretKeyExchange................................ 50 4.9 Sendingwithoutsending.............................. 55 4.10 Hierarchy Identity-Based Encryption . .... 59 4.11 ContinuousAuthentication . 62 4.12 EDCHE With Real Secret Keys . 64 4.13 Generating Keys from Existing Keys . 66 4.14 AutomaticKeyUpdate .............................. 68 4.15 Multivectortranslation. .... 68 4.16EDCHEwithXOR................................. 71 4.17 EDCHEWithRationalNumbers . 73 4.18Cryptanalysis ................................... 76 4.19 TimeandSpaceComplexity. 82 4.20Conclusion...................................... 83 5 FHE with EDCHE 85 5.1 Introduction..................................... 85 5.2 Selected Encryption Primitive . 86 5.3 DynamicPackingScheme ............................. 86 5.4 Additive Homomorphism . 90 5.5 ScalarMultiplicativeHomomorphism . ..... 92 5.6 Multiplicative Properties of the Rationalize . ....... 93 vii 5.7 Multiplicative Homomorphism with Cartesian product . ...... 95 5.8 Multiplicative Homomorphism With the Edge Product . ....... 102 5.9 Conclusion...................................... 105 6 EDCHE Applications 107 6.1 Introduction..................................... 107 6.2 Additive Homomorphism . 108 6.3 ScalarMultiplicativeHomomorphism . ..... 109 6.4 MultiplicativeHomomorphism. .... 111 6.5 HomomorphicSearch................................ 114 6.6 HomomorphicNumericSorting . 118 6.7 Homomorphic Alphanumeric Sort . 122 6.8 Conclusions ..................................... 126 7 AES Overall Comparison with EDCHE 127 7.1 Introduction..................................... 127 7.2 BlockCiphers.................................... 128 7.3 OverviewofAESDesign.............................. 130 7.4 Mathematical Concepts and Terminology Used in AES . 131 7.5 BooleanFunctions ................................. 136 7.6 Bundle Partitions, Transpositions and Bricklayer Functions .......... 136 7.7 Overall Differences Between AES and EDCHE . 139 7.8 PerformanceAnalysis............................... 141 7.9 Conclusions ..................................... 145 8 Conclusions and Future Work 147 8.1 Futurework.....................................153 Bibliography 155 APPENDIX viii AAdditionalExamples 159 A.1 ScaleProperties................................... 159 A.2 RatioProperties .................................. 161 A.3 SortingProperties ................................. 162 B Ruby Codes 165 B.1 MultivectorClass.................................. 165 B.2 ToolsClass ..................................... 171 B.3 EDCHEModule .................................. 172 B.4 Loader........................................ 174 B.5 ExampleWithPre-definedKeys . 174 B.6 ExampleWithCustomKeys ........................... 175 ix List of Tables TABLE 4.1 Diffie-HellmanKeyExchange . 51 7.1 Main Differences Between AES and EDCHE . 140 7.2 EDCHEPerformanceSpecs ............................ 142 7.3 EncryptionTime .................................. 142 7.4 CiphtertextSize................................... 143 7.5 EncryptionTime .................................. 143 7.6 AESPerformanceSpecs .............................. 144 7.7 AESPerformanceResults ............................. 144 x List of Figures FIGURE 4.1 EncryptionwiththeSylvester’sEquation . .... 44 4.2 EncryptionwiththeTripleProduct. 45 4.3 Multi-Ciphertexts Multivector . 60 4.4 NestedCiphtertexts ................................ 61 4.5 ContinuousAuthentication . 63 4.6 Key Generation via Rationalize . 68 4.7 Rationalnumbers.................................. 74 5.1 EDCHEOverview ................................. 85 7.1 BlockCipherDiagram ............................... 129 7.2 AESStateDiagram ................................130 7.3 ExampleofBundleTransposition . .... 137 7.4 ExampleofBricklayerTransformation . ..... 138 7.5 IterativeBooleanTransformation . .... 139 xi CHAPTER 1 Introduction After years of technological evolution, data is literally everywhere.