
POST QUANTUM CRYPTOGRAPHY: IMPLEMENTING ALTERNATIVE PUBLIC KEY SCHEMES ON EMBEDDED DEVICES Preparing for the Rise of Quantum Computers DISSERTATION for the degree of Doktor-Ingenieur of the Faculty of Electrical Engineering and Information Technology at the Ruhr-University Bochum, Germany by Stefan Heyse Bochum, October 2013 Post Quantum Cryptography: Implementing Alternative Public Key Schemes on Embedded Devices Copyright © 2013 by Stefan Heyse. All rights reserved. Printed in Germany. F¨ur Mandy, Captain Chaos und den B¨oarn. Author’s contact information: [email protected] www.schnufff.de Thesis Advisor: Prof. Dr.-Ing. Christof Paar Ruhr-University Bochum, Germany Secondary Referee: Prof. Paulo S. L. M. Barreto Universidade de S˜ao Paulo, Brasil Tertiary Referee: Prof. Tim E. G¨uneysu Ruhr-University Bochum, Germany Thesis submitted: October 8, 2013 Thesis defense: November 26, 2013. v “If you want to succeed, double your failure rate.” (Tom Watson, IBM). “Kaffee dehydriert den K¨orper nicht. Ich w¨are sonst schon Staub.” (Franz Kafka) vii Abstract Almost all of today’s security systems rely on cryptographic primitives as core c components which are usually considered the most trusted part of the system. The realization of these primitives on the underlying platform plays a crucial role for any real-world deployment. In this thesis, we discuss new primitives in public-key cryptography that could serve as alterna- tives to the currently used RSA, ECC and discrete logarithm cryptosystems. Analyzing these primitives in the first part of this thesis from an implementer’s perspective, we show advantages of the new primitives. Moreover, by implementing them on embedded systems with restricted resources, we investigate if these schemes have already evolved into real alternatives to the current cryptosystems. The second and main part of this work explores the potential of code-based cryptography, namely the McEliece and Niederreiter cryptosystems. After discussing the classical description and a modern variant, we evaluate different implementation possibilities, e. g., decoders, con- stant weight encoders and conversions to achieve CCA2-security. Afterwards, we evaluate the performance of the schemes using plain binary Goppa codes, quasi-dyadic Goppa codes and quasi-cyclic MDPC codes on smartcard class microcontrollers and a range of FPGAs. We also point out weaknesses in a straightforward implementation that can leak the secret key or the plaintext by means of side channel attacks. The third part is twofold. At first, we investigates the most promising members of Multivariate Quadratics Public Key Scheme (MQPKS) and its variants, namely Unbalanced Oil and Vinegar (UOV), Rainbow and Enhanced TTS (enTTS). UOV resisted all kinds of attacks for 13 years and can be considered one of the best examined MQPKS. We describe implementations of UOV, Rainbow and enTTS on an 8-bit microcontroller. To address the problem of large keys, we used several optimizations and also implemented the 0/1-UOV scheme introduced at CHES 2011. To achieve a security level usable in practice on the selected device, all recent attacks are summarized and parameters for standard security levels are given. To allow judgement of scaling, the schemes are implemented for the most common security levels in embedded systems of 64, 80 and 128 bits symmetric security. This allows a direct comparison of the four schemes for the first time, because they are implemented for the same security levels on the same platform. The second contribution is an implementation of the modern symmetric authentication pro- tocol LaPin, which is based on Ring-Learning-Parity-with-Noise (Ring-LPN). We show that, compared to classical AES-based protocols, LaPin has a very compact memory footprint while at the same time achieving a performance at the same order of magnitude. Keywords Embedded systems, Alternative Public-Key Schemes, Code-based, MQ-based, LPN, FPGA, Microcontroller. x Kurzfassung Nahezu alle heutigen Sicherheitssysteme beruhen auf kryptographischen Primitiven als Kern- komponenten, welche in der Regel als vertrauenswurdigster¨ Teil des Sytems gelten. Die Reali- sierung dieser Primitiven auf der zugrunde liegenden Plattform spielt eine entscheidende Rolle fur¨ jeden realen Einsatz. In dieser Arbeit werden neue Primitiven fur¨ Public-Key-Kryptographie diskutiert, die sich als potenzielle Alternativen zu den derzeit verwendeten RSA und ECC Kryp- tosystemen etablieren k¨onnten. Die Analyse dieser Primitiven im ersten Teil der Arbeit aus der Perspektive eines Entwicklers zeigt die Vorteile der neuen Systeme. Daruber¨ hinaus wird unter- sucht durch die Implementierung auf eingebetteten Systemen mit eingeschr¨ankten Ressourcen, ob sich diese Verfahren bereits zu echten Alternativen entwickelt haben. Die zweite und wichtigste Teil der Arbeit untersucht das Potenzial der kodierungsbasierten Kryptographie, namentlich das McEliece und Niederreiter Kryptosystem. Nach einer Diskussion der klassischen Beschreibung und einer modernen Variante werden verschiedene Umsetzungs- aspekte prA˜ ¤sentiert, z. B. Decoder, Encoder und Festgewichtskonvertierungen um CCA2- Sicherheit zu erreichen. Anschließend wird die Leistung der Systeme mit einfachen bin¨aren Goppa Codes, quasi-dyadischen Goppa Codes und quasi-zyklischen MDPC Codes auf Mikro- controller der Smartcard-Klasse und einer Reihe von FPGAs evaluiert. Daruberhinaus¨ wird auf Schw¨achen in einer einfachen Implementierung hingewiesen, die den geheimen Schlussel¨ oder den Klartext mittels Seitenkanal-Angriffen extrahieren k¨onnen. Der dritte Teil pr¨asentiert zwei weitere alternative Kryptosysteme. Zun¨achst werden die viel- versprechendsten Mitglieder der MQPKS-Familie sowie deren Varianten, UOV, Rainbow und enTTS untersucht. UOV widerstand in den vergangenen 13 Jahre allen Arten von Angriffen und kann als eines der bestuntersuchtesten MQPKS angesehen werden. Anschliessend werden Implementierungen von UOV, Rainbow und enTTS auf einem 8-Bit-Mikrocontroller evaluiert. Um das Problem der großen Schlussel¨ zu addressieren, werden einige Optimierungen ausgewer- tet, sowie das 0/1-UOV Schemata implementiert. Um eine praktisch nutzbare Sicherheitsstufe auf dem ausgew¨ahlten Ger¨at zu gew¨ahrleisten, werden alle jungsten¨ Angriffe zusammengefasst und Parameter fur¨ Standard-Sicherheitsstufen angegeben. Um die Skalierung zu beurteilen, werden die Verfahren mit den g¨angigsten Sicherheitsstufen fur¨ eingebetteten Systeme 264, 280 und 2128 bits symmetrischer Sicherheit implementiert. Der zweite Beitrag ist eine Umsetzung des modernen symmetrischen Authentifizierungsprotokoll LaPin, welches auf dem Ring-LPN- Problem basiert. Es wird gezeigt dass, mit klassischen AES-basierten Protokollen verglichen, LaPin einen sehr kompakte Speicherbedarf hat, w¨ahrend zur gleichen Zeit eine Leistung in der gleichen Gr¨oßenordnung erreicht wird. Schlagworte. Eingebettete Systeme , Alternative Public-Key-Verfahren,Codierungsbasierte Kryptographie, MQ-basierte Kryptographie , LPN, FPGA, Microcontroller. xii Acknowledgements This thesis would have been impossible without the inspiring working atmosphere at the EmSec group. I would like to express my gratitude to my PhD supervisor Christof Paar. He always gave me the freedom to try things out, while at the same time encouraging me to focus on the impor- tant parts. Special thanks go to all my colleges, especially Tim G¨uneysu, Amir Moradi, Markus Kasper, KaOs (Timo Kasper and David Oswald), Ingo von Maurich and Thomas P¨oppelmann. At all times I could ask them stupid questions and they found the time to discuss them with me. And of course I would like to thank my office mate Ralf Zimmermann. I will never get the picture of him riding a pony in a bee costume out of my head. Beside this strange imagination, we are the best rubber ducking team ever. A great “thank you” goes to the students I supervised during my PhD time: Without them, many parts of this thesis would be much smaller. Especially I would like to thank Olga Paustjan, Peter Czypek, Hannes Hudde and Gennadi Stamm. I am also very gratefull to the international community for the support I received. A lot of mathematicians accepted me as an engineer and answered my endless stream of questions. A big “thank you” goes to Nicolas Sendrier, Christiane Peters, Paulo Baretto, Rafael Misoczky, Dan Bernstein and Tanja Lange. Very often I felt ignorant of higher math and a second later I had to explain some basic engineering facts. Thank you for the nice time. And finally, a big “thank you” to our team assistant Irmgard K¨uhn. She took all the adminis- trative load off my shoulders and always found a kind word for everyone. Without C8H10N4O2, this wouldn’t exist! Table of Contents Preface ............................................ vii Abstract ............................................ vii Kurzfassung .......................................... x Acknowledgements ......................................xiii I The Preliminaries 1 1 Introduction 5 1.1 Motivation ....................................... 5 1.2 Thesis Outline ..................................... 6 1.3 Summary of Research Contributions ......................... 6 2 Overview 9 2.1 Alternatives to Classical PKC ............................. 10 2.1.1 Hash-Based Cryptography ........................... 10 2.1.2 Code-Based Cryptography ........................... 11 2.1.3 Multivariate-Quadratic Cryptography .................... 11 2.1.4 Lattice-Based Cryptography .......................... 12 2.1.5 Summary ...................................
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages255 Page
-
File Size-