Performance Analysis for Fully and Partially Homomorphic Encryption Techniques تحليل االداء لتقنيات التشفير المتماثلة الكاملة والجزئية
Total Page:16
File Type:pdf, Size:1020Kb
Performance Analysis for Fully and Partially Homomorphic Encryption Techniques تحليل اﻻداء لتقنيات التشفير المتماثلة الكاملة والجزئية Prepared by Raya A. Al-Shibib Supervisor Prof. Ahmad Kayed A Thesis submitted in Partial Fulfillment of the Requirements for the Master Degree in Computer Science Department of Computer Science Faculty of Information Technology Middle East University Amman, Jordan May, 2016 II III IV V ACKNOWLEDGMENT Thanks to God I have completed this thesis praise and thanks for his blessings. I would like to thank Prof. Ahmed Kayed for support and assistance and gave me valuable information for the completion of this thesis. I would like to thank my friends, they always standing with me through the good Times and hard times. VI Dedication I dedicate this thesis to my mother who standing beside me and my Father God's mercy. I hope to reach my research into the world to benefit from it and be ongoing charity to dear my father. VII TABLE OF CONTENTS Subject Page Title …………………………………………………………………………….. I Authorization Statement…………………………………………………………… II Examination Committee Decision ………………………………………………… IV Acknowledgment ………………………………………………………………… V Dedication ………………………………………………………………………….. VI Table of Contents ………………………………………………………………… VII List of Table …………………………………………………………………….. XI List of Figures ……………………………………………………………..…… XIV List Abbreviations…………………………………………………………..….. XVI Abstract………………………………………………………………………….. XVIII CHAPTER ONE INTRODUCTION 1.1 Introduction………………………………………………………………………….. 2 1.2 Problem Statement………………………………………………………………… 4 1.3 Research Questions………………………………………………………………… 4 1.4 Limitations and Scope……………………………………………………………… 4 1.5 Objective………………………………………………………………………….. 5 VIII 1.6 Contribution………………………………………………………………………….. 5 1.7 Motivation………………………………………………………………………….. 6 1.8 Methodology………………………………………………………………………….. 6 1.9 Thesis Outline………………………………………………………………………… 7 CHAPTER TWO BACKGROUND 2.1 Background…………………………………………………………………………. 9 2.1.1 Deployment Cloud Computing…………………………………………………… 10 2.1.2 Services Cloud Computing……………………………………………………… 12 2.1.3 Properties of Cloud Computing Services………………………………………… 14 2.1.4 Cloud Security…………………………………………………………………… 15 2.1.5 Homomorphic Encryption Technique…………………………………………… 16 2.1.6 Partial Homomorphic Encryption (PHE) ………………………………………… 17 2.1.6.1 Paillier Cryptosystem…………………………………………………………… 18 2.1.6.2 RSA Cryptosystem……………………………………………………………… 18 2.1.7 NTRU………………………………………………………………………..….. 19 2.2 Literature Review…………………………………………………………………… 20 2.3 Summary 28 IX CHAPTER THREE Performance analysis for fully and partially homomorphic encryption techniques 3.1 Introduction………………………………………………………………………….. 30 3.2 Description Methodology…………………………………………………………… 32 3.2.1 Operation………………………………………………………………………….. 32 3.3 Scenario of Algorithm………………………………………………………………… 37 3.3.1 Fixed Data Size with Multi-Key Size Procedure………………………………… 37 3.3.1.1 Calculated Time of Multi-Key by Using Paillier Formula……………………… 37 3.3.1.2 Calculated Time of Multi-Key by Using RSA Formula………………………… 40 3.3.1.3 Calculated Time of Multi-Key by Using Additive NTRU Formula…………… 43 3.3.1.4 Calculated Time of Multi-Key by Using Multiplication NTRU Formula……… 46 3.3.1.5 Calculated Time of Multi-Key by Using Both NTRU Formula………………… 49 3.3.2 Fixed Key and Multi-Data Size Procedure……………………………………… 52 3.3.2.1 Calculated Time of Multi-Data Size by Using Paillier Formula………………… 52 3.3.2.2 Calculated Time of Multi-Data Size by Using RSA Formula…………………… 55 3.3.2.3 Calculated Time of Multi-Data Size by Using Additive NTRU Formula……… 58 3.3.2.4 Calculated Time of Multi-Data Size by Using Multiplication NTRU Formula… 61 3.3.2.5 Calculated Time of Multi-Data Size by Using Both NTRU Formula…………… 64 X CHAPTER FOUR Experimental & Result 4.1 Introduction………………………………………………………………………….. 69 4.2 Tools for Experimental…………………………………………………………… 70 4.3 Evaluation Measures……………………………………………………………….. 70 4.4 Proposed Methodology……………………………………………………………… 71 4.4.1 Execution Fixed Data Size with Multi-Key Size Procedure…………………… 72 4.4.1.1 Execution Time of Multi-Key by Using Paillier Formula……………………… 72 4.4.1.2 Execution Time of Multi-Key by Using RSA Formula………………………… 76 4.4.1.3 Execution Time of Multi-Key by Using Additive NTRU Formula…………… 80 4.4.1.4 Execution Time of Multi-Key by Using Multiplication NTRU Formula……… 84 4.4.1.5 Execution Time of Multi-Key by Using Both NTRU Formula………………… 88 4.4.2 Execution Fixed Key size with Multi-Data Size Procedure…………………… 92 4.4.2.1 Execution Time of Multi-Data Size by Using Paillier Formula………………… 92 4.4.2.2 Execution Time of Multi-Data Size by Using RSA Formula…………………… 97 4.4.2.3 Execution Time of Multi-Data Size by Using Additive NTRU Formula……… 102 4.4.2.4 Execution Time of Multi-Data Size by Using Multiplication NTRU Formula… 107 4.4.2.5 Execution Time of Multi-Data Size by Using Both NTRU Formula…………… 112 4.5 Summary……………………………………………………………………………… 116 CHAPTER FIVE Conclusion & Future work 5.1 Conclusion………………………………………………………………………….. 121 5.2 Future Work……………………………………………………………………….. 124 XI LIST OF TABLES Table Number Table Name Page Chapter Two Table (2-1) Some of Partially Homomorphic Encryption Schemes 17 Chapter Four Table (4-1) Result Execute Additive PHE (Multi Key Size) 73 Table (4-2) Calculate Security and Performance Ratio for Additive PHE 75 (Multi Key Size) Table (4-3) Result Execute Multiplication PHE (Multi Key Size) 77 Table (4-4) Calculate Security and Performance Ratio for Multiplication 79 PHE (Multi Key Size) Table (4-5) Result Execute Additive NTRU (Multi Key Size) 81 Table (4-6) Calculate Security and Performance Ratio for Additive 83 NTRU (Multi Key Size) Table (4-7) Result Execute Multiplication NTRU (Multi Key Size) 85 Table (4-8) Calculate Security and Performance Ratio for Multiplication 87 NTRU (Multi Key Size) Table (4-9) Result Execute Both NTRU (Multi Key Size) 89 Table (4-10) Calculate Security and Performance Ratio for Both NTRU 91 (Multi Key Size) Table (4-11) Result Execute Additive PHE (Multi Data Size) 93 XII Table (4-12) Calculate Data Flexibility and Performance Ratio for 95 Additive PHE (Multi Data Size) Table (4-13) Result Execute Multiplication PHE (Multi Data Size) 98 Table (4-14) Calculate Data Flexibility and Performance Ratio for 99 Multiplication PHE (Multi Data Size) Table (4-15) Result Execute Additive NTRU (Multi Data Size) 103 Table (4-16) Calculate Data Flexibility and Performance Ratio for 104 Additive NTRU (Multi Data Size) Table (4-17) Result Execute Multiplication NTRU (Multi Data Size) 108 Table (4-18) Calculate Data Flexibility and Performance Ratio for 109 Multiplication NTRU (Multi Data Size) Table (4-19) Result Execute Both NTRU (Multi Data Size) 113 Table (4-20) Calculate Data Flexibility and Performance Ratio for Both 114 NTRU (Multi Data Size) Table (4-21) Compare Time between Paillier and Additive NTRU with 116 Different Key Size Table (4-22) Compare Time between RSA and Multiplication NTRU 117 with Different Key Size Table (4-23) Compare Time between Both PHE and Both NTRU with 117 Different Key Size Table (4-24) Compare Time between Paillier and Additive NTRU with 118 Different Data Size XIII Table (4-25) Compare Time between RSA and Multiplication NTRU 118 with Different Data Size Table (4-26) Compare Time between Both PHE and Both NTRU with 119 Different Data Size XIV LIST OF FIGURES Figure Number Figure Name Page Chapter Two Figure (2-1) Cloud Computing Deployment Model 10 Chapter Three Figure (3-1) Major algorithm 31 Figure (3-2) Paillier Flowchart for Fixed Data Size 38 Figure (3-3) RSA Flowchart for Fixed Data Size 41 Figure (3-4) Additive NTRU Flowchart for Fixed Data Size 44 Figure (3-5) Multiplication NTRU Flowchart for Fixed Data Size 47 Figure (3-6) Both-NTRU Flowchart for Fixed Data Size 50 Figure (3-7) Paillier Flowchart for Fixed Key Size 53 Figure (3-8) RSA Flowchart for Fixed Key Size 56 Figure (3-9) Additive NTRU Flowchart for Fixed Key Size 59 Figure (3-10) Multiplication NTRU Flowchart for Fixed Key Size 62 Figure (3-11) Both NTRU Flowcharts for Fixed Key Size 65 Chapter Four Figure (4-1) Proposed Model 69 Figure (4-2) Main Interface 72 Figure (4-3) Execute Additive PHE (Multi Key Size) 73 Figure (4-4) Timing for Additive PHE (Multi Key Size) 74 XV Figure (4-5) Execute Multiplication RSA (Multi Key Size) 77 Figure (4-6) Timing Execute Multiplication PHE (Multi Key Size) 78 Figure (4-7) Execute Additive NTRU (Multi Key Size) 81 Figure (4-8) Timing Execute Additive NTRU (Multi Key Size) 82 Figure (4-9) Execute Multiplication NTRU (Multi Key Size) 85 Figure (4-10) Timing Execute Multiplication NTRU (Multi Key Size) 86 Figure (4-11) Execute Both NTRU (Multi Key Size) 89 Figure (4-12) Timing Execute Both NTRU (Multi Key Size) 90 Figure (4-13) Execute Additive PHE (Multi Data Size) 93 Figure (4-14) Timing Execute Additive PHE (Multi Data Size) 94 Figure (4-15) Execute Multiplication PHE (Multi Data Size) 97 Figure (4-16) Timing Execute Multiplication PHE (Multi Data Size) 98 Figure (4-17) Execute Additive NTRU (Multi Data Size) 102 Figure (4-18) Timing Execute Additive NTRU (Multi Data Size) 103 Figure (4-19) Execute Multiplication NTRU (Multi Data Size) 107 Figure (4-20) Timing Execute Multiplication NTRU (Multi Data Size) 108 Figure (4-21) Execute Both NTRU (Multi Data Size) 112 Figure (4-22) Timing Execute Both NTRU (Multi Data Size) 113 XVI LIST OF ABBREVIATIONS Abbreviations Meaning AES Advanced Encryption Standard ATV Alt-Lopez, Tromer and Vaikuntanathan CPU Central Processing Unit CCA1 Circadian Clock Associated