Automated Techniques for Hash Function and Block Cipher Cryptanalysis

Total Page:16

File Type:pdf, Size:1020Kb

Automated Techniques for Hash Function and Block Cipher Cryptanalysis Arenberg Doctoral School of Science, Engineering & Technology Faculty of Engineering Department of Electrical Engineering (ESAT) Automated Techniques for Hash Function and Block Cipher Cryptanalysis Nicky MOUHA Dissertation presented in partial fulfillment of the requirements for the degree of Doctor of Engineering June 2012 Automated Techniques for Hash Function and Block Cipher Cryptanalysis Nicky MOUHA Jury: Dissertation presented in partial Prof. em. dr. ir. Yves D. Willems, chair fulfillment of the requirements for Prof. dr. ir. Bart Preneel, supervisor the degree of Doctor of Engineering Prof. dr. ir. Vincent Rijmen, secretary Prof. dr. ir. Frank Piessens Dr. Svetla Petkova-Nikova Dr. Matt Robshaw (Applied Cryptography Group, Orange Labs, France) June 2012 Our greatest glory is not in never falling, but in rising every time we fall. Confucius c 2012 Nicky Mouha � D/2012/7515/71 ISBN 978-94-6018-535-9 If I have seen further it is only by standing on the shoulders of giants. Isaac Newton Acknowledgments Every research paper is a puzzle piece, linking other pieces together to reveal a bigger picture. As such, research can’t be done in isolation. In the past few years, I’ve been extremely fortunate to meet the world’s best and brightest in thefield of symmetric-key cryptography. Many times, I’ve found myself to be the stupidest and most ignorant person in the room. To me, such experiences have been exciting and humbling, but most of all a great opportunity to learn. Therefore, I would like to personally thank everyone who contributed in one way or another to this thesis. Unfortunately, this will not be possible. I have been inspired by far too many brilliant people at conferences, workshops and seminars throughout the world. Thanks to everyone who is not explicitly mentioned in these acknowledgments. Often, your simple insights completely changed my view of the world. Most of all, I would like to thank my supervisor, prof. dr. ir. Bart Preneel. He has given me the freedom to work independently, yet was always there for me when I needed his advice. I’ve been assigned a low workload in teaching, supervising and administration. To compensate for this, I’ve frequently volunteered to organize conferences, guide newcomers and perform computer-related tasks. I’ve been very fortunate to travel the world many times over. This has been a lot of fun for me, but also a great cultural enrichment. For all of these reasons and more, I consider myself to be one of the luckiest Ph.D. students. I can’t thank my supervisor enough for this. Special thanks go to the the members of the jury: prof. em. dr. ir. Yves D. Willems, prof. dr. ir. Bart Preneel, prof. dr. ir. Vincent Rijmen, prof. dr. ir. Frank Piessens, dr. Svetla Petkova-Nikova and dr. Matt Robshaw. Their detailed com- ments and suggestions have greatly improved the text of this Ph.D. thesis. I faced a setback before I even started working on my Ph.D., when my appli- cation for an FWO-Vlaanderen scholarship was rejected. However, my supervisor continued to encourage me, and helped me through a successful application for an IWT-Vlaanderen scholarship. I would like to thank the jury composed by IWT, and diligent jury member Joan Daemen in particular, for their positive evaluation. Thanks to IWT for thefinancial support, and to scholarship coordinators Marc Pollet and Michèle Oleo for the administrative support. The invaluable input of my co-authors should be acknowledged: Jean-Philippe Aumasson, Tor E. Bjørstad, Andrey Bogdanov, Christophe De Cannière, Dawu Gu, I II ACKNOWLEDGMENTS Sebastiaan Indesteege, Özgül Küçük, Gaëtan Leurent, Willi Meier, Florian Mendel, Thomas Peyrin, Raphael C.-W. Phan, Bart Preneel, Vincent Rijmen, Yu Sasaki, Gautham Sekar, Yue Sun, Petr Susil, Søren S. Thomsen, Elmar Tischhauser, Deniz Toz, Meltem Sönmez Turan, Markus Ullrich, Kerem Varıcı, Vesselin Velichkov, Meiqin Wang and Qingju Wang. I’ve always tried to involve other people as early as possible in the scientific process of writing a paper. I know that this slows down the research, but I do believe that the resulting papers have a much higher quality than I could achieve on my own. I would also like to thank all the other members of the symmetric-key crypto- graphy subgroup at COSIC, for providing a very pleasant working environment: Mohamed Ahmed Abdelraheem, Elena Andreeva, Begül Bilgin, Jiazhe Chen, Yoni De Mulder, Orr Dunkelman, Barış Ege, Emilia Käsper, Kota Ideguchi, Bart Men- nink, Svetla Nikova, Christian Rechberger, Kyoji Shibutani, Fatih Sulak, Vasin Suttichaya, Gauthier Van Damme and Hirotaka Yoshida. Special thanks go to prof. dr. ir. Vincent Rijmen for leading our subgroup, and advising us along the way. I’d especially like to thank secretary Péla Noë, European projects coordina- tor Saartje Verheyen and accountants Elvira Wouters, Elsy Vermoesen and Wim Devroye. Without their help, it would be impossible to get anything done at all. Thanks to Sebastiaan Indesteege, who saved me countless hours by providing me with a template to write this thesis. Unfortunately, COSIC has grown too large to thank all other members individually. In 2011, I’ve enjoyed a brief stay at Tsinghua University under the supervision of prof. dr. Xiaoyun Wang. I am extremely grateful for this opportunity. Thanks to secretary Qi Shi for sorting out all the administrative and technical issues. I’d like to say xièxie to all my colleagues: Jingguo Bi, Kuan Cheng, Jiazhe Chen, Dan Ding, Lianzhi Fu, Lidong Han, Changhui Hu, Keting Jia, Jianwei Li, Leibo Li, Mingjie Liu, Xichen Mu, Yongchuan Niu, Yue Sun, Chengliang Tian, An Wang, Maoning Wang, Zhongyue Wang, Wei Wei, Hongbo Yu, Yanyan Yu, Jingyuan Zhao, Xuexin Zheng and Guizhen Zhu. Non-Chinese readers may struggle to read the list of names, but they are very familiar names to me. I can talk for hours about the exciting time I’ve spent with each and every one of them. Thanks for providing me with a home away from home. During the last two years of my Ph.D., I volunteered as a resident assistant at Studentenwijk Arenberg, the largest group of KU Leuven-owned buildings for student housing. I’d to thank Els Bruyninckx and Steven Timmermans for their continuous support, as well as for selecting me in thefirst place. Thanks to all the other resident assistants of the Heverlee Area Residences: Alexander, Andreas, Bram, Charlotte, Gladys, Harm, Lies, Liesbeth, Lode, Lotte, Michiel, Olivier, Pascale, Rebecca, Romina, Stefaan, Stefanie, Stein, Vincent and Wim. I’ve learned a lot from you. Teaming up with you to organize parties, quizzes, barbecues and much more made my job an amazing experience. Thanks as well to all the 110 inhabitants, in particular those who didn’t make too much noise, kept the kitchens clean and didn’t forget their keys too often. ACKNOWLEDGMENTS III Last but not least, I would like to thank my parents and grandparents, as well as my brothers Yannick and Dylan. They never knew exactly what I was doing — which is understandable: most of the time, I didn’t even know it myself. I know that I’ve caused many sleepless nights after saying things such as “Hey mom, dad, I’m going to China for a few months.” Still, my family always loved and supported me. For that, I’ll be forever grateful. Nicky Mouha Heverlee, June 2012 IV ACKNOWLEDGMENTS The main purpose of science is simplicity, and as we under- stand more things, everything is becoming simpler. Edward Teller Abstract Cryptography is the study of mathematical techniques that ensure the confi- dentiality and integrity of information. This relatively newfield started out as classified military technology, but has now become commonplace in our daily lives. Cryptography is not only used in banking cards, secure websites and electronic signatures, but also in public transport cards, car keys and garage door openers. Two building blocks in the domain of cryptography are block ciphers and (cryp- tographic) hash functions. Block ciphers use a secret key to transform a plaintext into a ciphertext, in such a way that this secret key is needed to recover the original plaintext. Hash functions transform an arbitrary-length message into a fixed-length hash value. These hash values can serve as “fingerprints” for the ori- ginal messages: it should be infeasible tofind two distinct messages with the same hash value (a collision). Yet, Wang et al. recently showed thatfinding collisions is feasible for MD5 and SHA-1, two of the most commonly used hash functions today. Although the SHA-2 family currently remains unbroken, its design is very similar. For this reason, the United States National Institute of Standards and Technology (NIST) launched an international competition for a new hash function standard: SHA-3. The research performed in this Ph.D. thesis closely follows the evaluation pe- riod of the SHA-3 competition. Results were obtained for hash functions ARI- RANG, BLAKE, ESSENCE, Hamsi, Khichidi-1, LUX, Sarmal, Skein and TIB3. Outside of the competition, results were also obtained for a simplified version of the hash function HAS-V. In the area of cryptographic theory, observations were made on the resistance of regular hash functions against the birthday attack. The most commonly used hash functions: MD5, SHA-1 and SHA-2, as well two out of thefive SHA-3finalists (BLAKE and Skein) use operations such as addition modulo 2n, exclusive OR, bitwise Boolean functions, bit shifts and bit rotations. Dissatisfied with commonly used ad hoc techniques to analyze such constructions, we introduced the framework of S-functions to allow for a simple and automated analysis. Recently, meet-in-the-middle attacks became a very popular way to analyze block ciphers and hash functions.
Recommended publications
  • TS 102 176-1 V2.1.1 (2011-07) Technical Specification
    ETSI TS 102 176-1 V2.1.1 (2011-07) Technical Specification Electronic Signatures and Infrastructures (ESI); Algorithms and Parameters for Secure Electronic Signatures; Part 1: Hash functions and asymmetric algorithms 2 ETSI TS 102 176-1 V2.1.1 (2011-07) Reference RTS/ESI-000080-1 Keywords e-commerce, electronic signature, security ETSI 650 Route des Lucioles F-06921 Sophia Antipolis Cedex - FRANCE Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16 Siret N° 348 623 562 00017 - NAF 742 C Association à but non lucratif enregistrée à la Sous-Préfecture de Grasse (06) N° 7803/88 Important notice Individual copies of the present document can be downloaded from: http://www.etsi.org The present document may be made available in more than one electronic version or in print. In any case of existing or perceived difference in contents between such versions, the reference version is the Portable Document Format (PDF). In case of dispute, the reference shall be the printing on ETSI printers of the PDF version kept on a specific network drive within ETSI Secretariat. Users of the present document should be aware that the document may be subject to revision or change of status. Information on the current status of this and other ETSI documents is available at http://portal.etsi.org/tb/status/status.asp If you find errors in the present document, please send your comment to one of the following services: http://portal.etsi.org/chaircor/ETSI_support.asp Copyright Notification No part may be reproduced except as authorized by written permission.
    [Show full text]
  • Statistical Weaknesses in 20 RC4-Like Algorithms and (Probably) the Simplest Algorithm Free from These Weaknesses - VMPC-R
    Statistical weaknesses in 20 RC4-like algorithms and (probably) the simplest algorithm free from these weaknesses - VMPC-R Bartosz Zoltak www.vmpcfunction.com [email protected] Abstract. We find statistical weaknesses in 20 RC4-like algorithms including the original RC4, RC4A, PC-RC4 and others. This is achieved using a simple statistical test. We found only one algorithm which was able to pass the test - VMPC-R. This algorithm, being approximately three times more complex then RC4, is probably the simplest RC4-like cipher capable of producing pseudo-random output. Keywords: PRNG; CSPRNG; RC4; VMPC-R; stream cipher; distinguishing attack 1 Introduction RC4 is a popular and one of the simplest symmetric encryption algorithms. It is also probably one of the easiest to modify. There is a bunch of RC4 modifications out there. But is improving the old RC4 really as simple as it appears to be? To state the contrary we confront 20 candidates (including the original RC4) against a simple statistical test. In doing so we try to support four theses: 1. Modifying RC4 is easy to do but it is hard to do well. 2. Statistical weaknesses in almost all RC4-like algorithms can be easily found using a simple test discussed in this paper. 3. The only RC4-like algorithm which was able to pass the test was VMPC-R. It is approximately three times more complex than RC4. We believe that any algorithm simpler than VMPC-R would most likely fail the test. 4. Before introducing a new RC4-like algorithm it might be a good idea to run the statistical test described in this paper.
    [Show full text]
  • Security Evaluation of the K2 Stream Cipher
    Security Evaluation of the K2 Stream Cipher Editors: Andrey Bogdanov, Bart Preneel, and Vincent Rijmen Contributors: Andrey Bodganov, Nicky Mouha, Gautham Sekar, Elmar Tischhauser, Deniz Toz, Kerem Varıcı, Vesselin Velichkov, and Meiqin Wang Katholieke Universiteit Leuven Department of Electrical Engineering ESAT/SCD-COSIC Interdisciplinary Institute for BroadBand Technology (IBBT) Kasteelpark Arenberg 10, bus 2446 B-3001 Leuven-Heverlee, Belgium Version 1.1 | 7 March 2011 i Security Evaluation of K2 7 March 2011 Contents 1 Executive Summary 1 2 Linear Attacks 3 2.1 Overview . 3 2.2 Linear Relations for FSR-A and FSR-B . 3 2.3 Linear Approximation of the NLF . 5 2.4 Complexity Estimation . 5 3 Algebraic Attacks 6 4 Correlation Attacks 10 4.1 Introduction . 10 4.2 Combination Generators and Linear Complexity . 10 4.3 Description of the Correlation Attack . 11 4.4 Application of the Correlation Attack to KCipher-2 . 13 4.5 Fast Correlation Attacks . 14 5 Differential Attacks 14 5.1 Properties of Components . 14 5.1.1 Substitution . 15 5.1.2 Linear Permutation . 15 5.2 Key Ideas of the Attacks . 18 5.3 Related-Key Attacks . 19 5.4 Related-IV Attacks . 20 5.5 Related Key/IV Attacks . 21 5.6 Conclusion and Remarks . 21 6 Guess-and-Determine Attacks 25 6.1 Word-Oriented Guess-and-Determine . 25 6.2 Byte-Oriented Guess-and-Determine . 27 7 Period Considerations 28 8 Statistical Properties 29 9 Distinguishing Attacks 31 9.1 Preliminaries . 31 9.2 Mod n Cryptanalysis of Weakened KCipher-2 . 32 9.2.1 Other Reduced Versions of KCipher-2 .
    [Show full text]
  • The Hitchhiker's Guide to the SHA-3 Competition
    History First Second Third The Hitchhiker’s Guide to the SHA-3 Competition Orr Dunkelman Computer Science Department 20 June, 2012 Orr Dunkelman The Hitchhiker’s Guide to the SHA-3 Competition 1/ 33 History First Second Third Outline 1 History of Hash Functions A(n Extremely) Short History of Hash Functions The Sad News about the MD/SHA Family 2 The First Phase of the SHA-3 Competition Timeline The SHA-3 First Round Candidates 3 The Second Round The Second Round Candidates The Second Round Process 4 The Third Round The Finalists Current Performance Estimates The Outcome of SHA-3 Orr Dunkelman The Hitchhiker’s Guide to the SHA-3 Competition 2/ 33 History First Second Third History Sad Outline 1 History of Hash Functions A(n Extremely) Short History of Hash Functions The Sad News about the MD/SHA Family 2 The First Phase of the SHA-3 Competition Timeline The SHA-3 First Round Candidates 3 The Second Round The Second Round Candidates The Second Round Process 4 The Third Round The Finalists Current Performance Estimates The Outcome of SHA-3 Orr Dunkelman The Hitchhiker’s Guide to the SHA-3 Competition 3/ 33 History First Second Third History Sad A(n Extremely) Short History of Hash Functions 1976 Diffie and Hellman suggest to use hash functions to make digital signatures shorter. 1979 Salted passwords for UNIX (Morris and Thompson). 1983/4 Davies/Meyer introduce Davies-Meyer. 1986 Fiat and Shamir use random oracles. 1989 Merkle and Damg˚ard present the Merkle-Damg˚ard hash function.
    [Show full text]
  • Cryptography Knowledge Area (Draft for Comment)
    CRYPTOGRAPHY KNOWLEDGE AREA (DRAFT FOR COMMENT) AUTHOR: Nigel Smart – KU Leuven EDITOR: George Danezis – University College London REVIEWERS: Dan Bogdanov - Cybernetica Kenny Patterson – Royal Holloway, University of London Liqun Chen – University of Surrey Cryptography Nigel P. Smart April 2018 INTRODUCTION The purpose of this chapter is to explain the various aspects of cryptography which we feel should be known to an expert in cyber-security. The presentation is at a level needed for an instructor in a module in cryptography; so they can select the depth needed in each topic. Whilst not all experts in cyber-security need be aware of all the technical aspects mentioned below, we feel they should be aware of all the overall topics and have an intuitive grasp as to what they mean, and what services they can provide. Our focus is mainly on primitives, schemes and protocols which are widely used, or which are suitably well studied that they could be used (or are currently being used) in specific application domains. Cryptography by its very nature is one of the more mathematical aspects of cyber-security; thus this chapter contains a lot more mathematics than one has in some of the other chapters. The overall presentation assumes a basic knowledge of either first-year undergraduate mathematics, or that found in a discrete mathematics course of an undergraduate Computer Science degree. The chapter is structured as follows: After a quick recap on some basic mathematical notation (Sec- tion 1), we then give an introduction to how security is defined in modern cryptography. This section (Section 2) forms the basis of our discussions in the other sections.
    [Show full text]
  • NISTIR 7620 Status Report on the First Round of the SHA-3
    NISTIR 7620 Status Report on the First Round of the SHA-3 Cryptographic Hash Algorithm Competition Andrew Regenscheid Ray Perlner Shu-jen Chang John Kelsey Mridul Nandi Souradyuti Paul NISTIR 7620 Status Report on the First Round of the SHA-3 Cryptographic Hash Algorithm Competition Andrew Regenscheid Ray Perlner Shu-jen Chang John Kelsey Mridul Nandi Souradyuti Paul Information Technology Laboratory National Institute of Standards and Technology Gaithersburg, MD 20899-8930 September 2009 U.S. Department of Commerce Gary Locke, Secretary National Institute of Standards and Technology Patrick D. Gallagher, Deputy Director NISTIR 7620: Status Report on the First Round of the SHA-3 Cryptographic Hash Algorithm Competition Abstract The National Institute of Standards and Technology is in the process of selecting a new cryptographic hash algorithm through a public competition. The new hash algorithm will be referred to as “SHA-3” and will complement the SHA-2 hash algorithms currently specified in FIPS 180-3, Secure Hash Standard. In October, 2008, 64 candidate algorithms were submitted to NIST for consideration. Among these, 51 met the minimum acceptance criteria and were accepted as First-Round Candidates on Dec. 10, 2008, marking the beginning of the First Round of the SHA-3 cryptographic hash algorithm competition. This report describes the evaluation criteria and selection process, based on public feedback and internal review of the first-round candidates, and summarizes the 14 candidate algorithms announced on July 24, 2009 for moving forward to the second round of the competition. The 14 Second-Round Candidates are BLAKE, BLUE MIDNIGHT WISH, CubeHash, ECHO, Fugue, Grøstl, Hamsi, JH, Keccak, Luffa, Shabal, SHAvite-3, SIMD, and Skein.
    [Show full text]
  • Distinguishing Attacks on the Stream Cipher Py
    Distinguishing Attacks on the Stream Cipher Py Souradyuti Paul‡, Bart Preneel‡, and Gautham Sekar‡† ‡Katholieke Universiteit Leuven, Dept. ESAT/COSIC, Kasteelpark Arenberg 10, B–3001, Leuven-Heverlee, Belgium †Birla Institute of Technology and Science, Pilani, India, Dept. of Electronics and Instrumentation, Dept. of Physics. {souradyuti.paul, bart.preneel}@esat.kuleuven.be, [email protected] Abstract. The stream cipher Py designed by Biham and Seberry is a submission to the ECRYPT stream cipher competition. The cipher is based on two large arrays (one is 256 bytes and the other is 1040 bytes) and it is designed for high speed software applications (Py is more than 2.5 times faster than the RC4 on Pentium III). The paper shows a statistical bias in the distribution of its output-words at the 1st and 3rd rounds. Exploiting this weakness, a distinguisher with advantage greater than 50% is constructed that requires 284.7 randomly chosen key/IV’s and the first 24 output bytes for each key. The running time and the 84.7 89.2 data required by the distinguisher are tini · 2 and 2 respectively (tini denotes the running time of the key/IV setup). We further show that the data requirement can be reduced by a factor of about 3 with a distinguisher that considers outputs of later rounds. In such case the 84.7 running time is reduced to tr ·2 (tr denotes the time for a single round of Py). The Py specification allows a 256-bit key and a keystream of 264 bytes per key/IV. As an ideally secure stream cipher with the above specifications should be able to resist the attacks described before, our results constitute an academic break of Py.
    [Show full text]
  • Year 2010 Issues on Cryptographic Algorithms
    Year 2010 Issues on Cryptographic Algorithms Masashi Une and Masayuki Kanda In the financial sector, cryptographic algorithms are used as fundamental techniques for assuring confidentiality and integrity of data used in financial transactions and for authenticating entities involved in the transactions. Currently, the most widely used algorithms appear to be two-key triple DES and RC4 for symmetric ciphers, RSA with a 1024-bit key for an asymmetric cipher and a digital signature, and SHA-1 for a hash function according to international standards and guidelines related to the financial transactions. However, according to academic papers and reports regarding the security evaluation for such algorithms, it is difficult to ensure enough security by using the algorithms for a long time period, such as 10 or 15 years, due to advances in cryptanalysis techniques, improvement of computing power, and so on. To enhance the transition to more secure ones, National Institute of Standards and Technology (NIST) of the United States describes in various guidelines that NIST will no longer approve two-key triple DES, RSA with a 1024-bit key, and SHA-1 as the algorithms suitable for IT systems of the U.S. Federal Government after 2010. It is an important issue how to advance the transition of the algorithms in the financial sector. This paper refers to issues regarding the transition as Year 2010 issues in cryptographic algorithms. To successfully complete the transition by 2010, the deadline set by NIST, it is necessary for financial institutions to begin discussing the issues at the earliest possible date. This paper summarizes security evaluation results of the current algorithms, and describes Year 2010 issues, their impact on the financial industry, and the transition plan announced by NIST.
    [Show full text]
  • New Developments in Cryptology Outline Outline Block Ciphers AES
    New Developments in Cryptography March 2012 Bart Preneel Outline New developments in cryptology • 1. Cryptology: concepts and algorithms Prof. Bart Preneel • 2. Cryptology: protocols COSIC • 3. Public-Key Infrastructure principles Bart.Preneel(at)esatDOTkuleuven.be • 4. Networking protocols http://homes.esat.kuleuven.be/~preneel • 5. New developments in cryptology March 2012 • 6. Cryptography best practices © Bart Preneel. All rights reserved 1 2 Outline Block ciphers P1 P2 P3 • Block ciphers/stream ciphers • Hash functions/MAC algorithms block block block • Modes of operation and authenticated cipher cipher cipher encryption • How to encrypt/sign using RSA C1 C2 C3 • Multi-party computation • larger data units: 64…128 bits •memoryless • Concluding remarks • repeat simple operation (round) many times 3 3-DES: NIST Spec. Pub. 800-67 AES (2001) (May 2004) S S S S S S S S S S S S S S S S • Single DES abandoned round • two-key triple DES: until 2009 (80 bit security) • three-key triple DES: until 2030 (100 bit security) round MixColumnsS S S S MixColumnsS S S S MixColumnsS S S S MixColumnsS S S S hedule Highly vulnerable to a c round • Block length: 128 bits related key attack • Key length: 128-192-256 . Key S Key . bits round A $ 10M machine that cracks a DES Clear DES DES-1 DES %^C& key in 1 second would take 149 trillion text @&^( years to crack a 128-bit key 1 23 1 New Developments in Cryptography March 2012 Bart Preneel AES variants (2001) AES implementations: • AES-128 • AES-192 • AES-256 efficient/compact • 10 rounds • 12 rounds • 14 rounds • sensitive • classified • secret and top • NIST validation list: 1953 implementations (2008: 879) secret plaintext plaintext plaintext http://csrc.nist.gov/groups/STM/cavp/documents/aes/aesval.html round round.
    [Show full text]
  • Electronic Signature Algorithms Standard
    Electronic Signature Algorithms Standard Version: 1.0 Author: Qatar Public Key Infrastructure Section Document Classification: PUBLIC Published Date: June 2018 Electronic Signature Algorithms Standard Version: 1.0 Page 1 of 13 Classification: Public Document Information Date Version Reviewed By 04/06/2018 1.0 Qatar National PKI Team Electronic Signature Algorithms Standard Version: 1.0 Page 2 of 13 Classification: Public Content 1. Overview ......................................................................................................................................... 4 2. Introduction .................................................................................................................................... 4 1. Objective of the document ......................................................................................................... 4 2. Audience ..................................................................................................................................... 4 3. Security properties of electronic signature .................................................................................... 4 4. Hash algorithms .............................................................................................................................. 4 1. Hash functions ............................................................................................................................ 4 2. Hash function properties ...........................................................................................................
    [Show full text]
  • A Hybrid Proof-Of-Work, Proof-Of-Stake Crypto-Currency
    Memcoin2 0.05 Conceptual White Paper MEMCOIN2: A HYBRID PROOF-OF-WORK, PROOF-OF-STAKE CRYPTO-CURRENCY Adam Mackenzie1 Abstract Crypto-currencies are gaining traction as monetary instruments. A novel crypto-currency with a hybrid proof-of-work and proof- of-stake system is proposed that aords eventual democratic control of the monetary supply to the userbase through participatory voting. Among the features included to achieve this control are a novel a ‘polymorphic’ hash tree and extensive use of sequential ‘memory-hard’ secure hash algorithms. Keywords proof-of-work — proof-of-stake — crypto-currency 1Please note that this white paper is a work-in-progress. Contents 1. The use of a proof-of-work (PoW) algorithm for which an FPGA and ASIC implementation may not be easily Executive Summary 1 created (Section i). The MC2 Contribution.........................1 The btcd Platform............................1 2. A proof-of-stake (PoS) system that works alongside the PoW system to further secure the blockchain (Section Introduction 2 ii). i. Secure Hash Trees for PoW...................2 ii. A Novel PoS System.......................2 3. An internal participatory voting system for major con- iii. Miner Reward Algorithms....................3 troversies that may arise about the future of the blockchain, iv. Block Header and Transaction Data..............4 including interest rates (Section ii). v. Colored Coins...........................5 4. A new distribution scheme and diculty retargeting vi. Lightweight Clients........................5 algorithm that should aord stability to the cryptocur- References 6 rency’s equivalent at value (Section iii). Appendix A: PoW Hashing Function 7 5. A colored coin system to allow users of the blockchain Appendix B: PoS Voting for PoW Blocks 9 to create and maintain their own derivatives within Appendix C: PoW and PoS Hybrid Design 11 the blockchain itself (Section v).
    [Show full text]
  • Fundamental Data Structures Contents
    Fundamental Data Structures Contents 1 Introduction 1 1.1 Abstract data type ........................................... 1 1.1.1 Examples ........................................... 1 1.1.2 Introduction .......................................... 2 1.1.3 Defining an abstract data type ................................. 2 1.1.4 Advantages of abstract data typing .............................. 4 1.1.5 Typical operations ...................................... 4 1.1.6 Examples ........................................... 5 1.1.7 Implementation ........................................ 5 1.1.8 See also ............................................ 6 1.1.9 Notes ............................................. 6 1.1.10 References .......................................... 6 1.1.11 Further ............................................ 7 1.1.12 External links ......................................... 7 1.2 Data structure ............................................. 7 1.2.1 Overview ........................................... 7 1.2.2 Examples ........................................... 7 1.2.3 Language support ....................................... 8 1.2.4 See also ............................................ 8 1.2.5 References .......................................... 8 1.2.6 Further reading ........................................ 8 1.2.7 External links ......................................... 9 1.3 Analysis of algorithms ......................................... 9 1.3.1 Cost models ......................................... 9 1.3.2 Run-time analysis
    [Show full text]