Unconditional Security in Classical Cryptography
Total Page:16
File Type:pdf, Size:1020Kb
Masarykova universita, Fakulta informatiky Diplomová práce Unconditional Security in Classical Cryptography Petr Štika 2010 Prohlášení Prohlašuji, že tato práce je mým původním autorským dílem, které jsem vypracoval samostatně. Všechny zdroje, prameny a literaturu, které jsem při vypracování používal nebo z nich čerpal, v práci řádně cituji s uvedením úplného odkazu na příslušný zdroj. Brno 2010 Děkuji RNDr. Janu Boudovi, Ph.D. za odborné vedení diplomové práce a poskytování cenných rad při jejím zpracování. 2 Abstract This thesis focuses on classical cryptography, its primitives and their security, especially for the purposes of unconditional security. In recent years, the use of cryptography has increased dramatically, accompanied by growing attention from across the field of computer science. Despite the invention of quantum computing and the introduction of quantum cryptography, classical cryptography is still relevant. The work explores various cryptographic primitives and studies and presents results about their relative security. This thesis concludes that unconditional security in classical cryptography is possible and satisfactory. In the opening chapter it provides an overview of cryptography and its history, then it gives some of the cryptographic basics so that we are finally able to focus on the topic of this work – the unconditionally security of specific cryptographic primitives. Quantum cryptography and the possibility of limiting the ability of adversaries to gain desirable security properties are also mentioned. In the end there is described the result of this work – remarks and conclusions. Keywords classical cryptography, private key cryptography, public key cryptography, unconditional security, cryptographic primitives, anonymous transfer, authentication, bit commitment, blind signatures, Byzantine agreement, encryption, coin tossing, digital signatures, digital pseudosignatures, key exchange, oblivious transfer, secret sharing 3 Contents 1 Introduction...........................................................................................................................6 1.1 Background of this Work................................................................................................6 2 The Basics of Cryptography.................................................................................................9 2.1 Private Key Cryptography...............................................................................................9 2.2 The Probability Theory.................................................................................................10 2.3 Entropy..........................................................................................................................12 2.4 Unconditional Security..................................................................................................13 2.4.1 Using Quantum Cryptography...............................................................................14 2.4.2 Limiting the Adversary..........................................................................................15 2.5 Public Key Cryptography..............................................................................................15 2.6 Conclusion....................................................................................................................16 3 Cryptographic Primitives...................................................................................................17 3.1 Encryption.....................................................................................................................17 3.1.1 The Shift Cipher....................................................................................................17 3.1.2 One-time Pad.........................................................................................................19 3.2 Authentication...............................................................................................................21 3.2.1 Wegman-Carter Authentication ............................................................................21 3.3 Anonymous Transfer ....................................................................................................28 3.3.1 DC-net...................................................................................................................28 3.3.2 DC-net Protocol with Waidner-Pfitzmann's Improvements...................................30 3.4 Bit Commitment............................................................................................................34 3.4.1 Security of Bit Commitment Schemes...................................................................34 3.4.2 Examples of Bit Commitment Protocols...............................................................35 3.5 Digital Signatures..........................................................................................................39 3.5.1 Pseudosignatures...................................................................................................40 3.5.2 Blind Signatures....................................................................................................42 3.6 Byzantine Agreement....................................................................................................46 3.6.1 Byzantine Agreement Problem..............................................................................46 3.6.2 Byzantine Agreement Protocol with Pseudosignatures.........................................47 3.7 Coin Tossing.................................................................................................................49 3.7.1 Blum's Coin Flipping Protocol..............................................................................49 3.7.2 Perfectly Secure Coin Tossing Using Bit Commitment........................................50 3.8 Key Exchange...............................................................................................................51 3.8.1 Key Predistribution Protocol.................................................................................51 4 3.8.2 Key Distribution and Agreement Protocols ..........................................................53 3.9 Oblivious Transfer ........................................................................................................55 3.9.1 1-out-of-2 Oblivious Transfer Based on Blind Signatures....................................55 3.9.2 Oblivious Transfer with Trusted Initializer...........................................................56 3.10 Secret Sharing.............................................................................................................57 4 Conclusion............................................................................................................................58 5 Bibliography........................................................................................................................59 5 1 Introduction In recent years, the use of cryptography has increased dramatically. Every time a person buys something with a credit card, uses online banking, sends a password to access his e-mail, he uses cryptography. With this growth, it is not surprising the interest of academics and professionals has grown accordingly. Classical cryptography can be traced to the Ancient Greeks, but started to be widely used during the Second World War. New developments in the field have concentrated on the potential use of quantum computers for the purposes of cryptography. Because of the invention of quantum computing and the introduction of quantum cryptography, it may appear that classical cryptography is obsolete. This thesis will show that this is not the case. Cryptographic primitives of classical cryptography can provide unconditional security in situations where quantum cryptography cannot achieve it. There are existing primitives which are unconditionally secure, and if not, ways how to make present ones unconditionally secure are investigated, as will be shown later. As the author has already indicated, the scope of this work is the unconditional security of primitives in classical cryptography. The author is of the opinion that there is lack of studies exploring in depth the use of classical cryptography, and that cryptography's desired property – unconditional security – is poorly researched in comparison to the enormous current research in the field of quantum computing. This thesis concludes that unconditional security in classical cryptography is possible and satisfactory. The main contribution of this thesis to the field is mapping and summarizing current research results in the unconditional security in classical cryptography, as this topic is in our opinion not completely and exhaustively studied and presented. The text is divided into four chapters. After a brief introduction into the subject, the second chapter defines the fundamental elements of cryptography. The third part describes cryptographic primitives while the fourth chapter summarizes the results. The analysis is to determine whether cryptographic primitives can be unconditionally secure or not, and if not, what “workaround” may be presented. 1.1 Background of this Work Cryptography – in Greek this word means "hidden writing" – is an old discipline, primarily used for secure exchanging of information between parties. The main objective is to prevent a potential adversary from understanding this communication, which has been widely used especially by the military