Rotational Analysis of Chacha Permutation

Total Page:16

File Type:pdf, Size:1020Kb

Rotational Analysis of Chacha Permutation Rotational analysis of ChaCha permutation Stefano Barbero1, Emanuele Bellini2, and Rusydi Makarim2 1 Politecnico di Torino, Italy 2 Cryptography Research Centre, Technology Innovation Institute, UAE Abstract. We show that the underlying permutation of ChaCha20 stream cipher does not behave as a random permutation for up to 17 rounds with respect to rotational cryptanalysis. In particular, we derive a lower and an upper bound for the rotational probability through ChaCha quarter round, we show how to extend the bound to a full round and then to the full permutation. The obtained bounds show that the probability to find − what we call a parallel rotational collision is, for example, less than 2 488 for 17 rounds of ChaCha permutation, while for a random permutation − of the same input size, this probability is 2 511. We remark that our distinguisher is not an attack to ChaCha20 stream cipher, but rather a theoretical analysis of its internal permutation from the point of view of rotational cryptanalysis. Keywords: ChaCha20 · Stream Cipher · Rotational cryptanalysis · Per- mutation · Distinguisher arXiv:2008.13406v1 [math.CO] 31 Aug 2020 Table of Contents Rotational analysis of ChaCha permutation ......................... 1 Stefano Barbero, Emanuele Bellini, and Rusydi Makarim 1 Introduction....................................... ............ 2 1.1 Ourcontribution .................................... ...... 3 1.2 Outlineofthepaper .................................. ..... 3 1.3 Relatedworks...................................... ....... 3 2 ChaCha permutation description......................... ........ 5 2.1 Notation .......................................... ....... 5 2.2 ChaCha permutation specification ....................... .... 5 3 Propagationof rotational pairs ......................... ......... 7 3.1 Conditions for rotational pairs propagation . .... 7 3.2 Bounds for the quarter round ......................... ...... 9 3.3 Experimentalresult................................. ....... 13 3.4 Bounds propagation through the full round ............... .... 14 3.5 Bounds propagation through the full permutation . ... 15 4 Distinguisher description . ......... 15 4.1 Rotational collisions of a random permutation . 15 4.2 ChaCha permutation vs random permutation ............... .. 17 5 Conclusion.......................................... .......... 17 1 Introduction Salsa20 [9] and ChaCha20 [8] are two closely related stream ciphers developed by Daniel J. Bernstein. Salsa20, the original cipher, was designed in 2005, then later submitted to the eSTREAM project by Daniel J. Bernstein [5]. Its detailed spec- ification can be found in [5]. ChaCha20 is a modification of Salsa20, published by Bernstein in 2008, aimed at increasing diffusion and performance on some architectures. Google has selected ChaCha20 along with Bernsteins Poly1305 message authentication code as a replacement for RC4 in TLS, and its specifica- tions can be found in [15]. Both ciphers are ARX (Add-Rotate-Xor) ciphers, i.e. built on a pseudorandom function based only on the following three operations: 32-bit modular addition, circular rotation, and bitwise exclusive or (XOR). This pseudorandom function is itself built upon a 512 bit permutation. According to [10], both permutations are not designed to simulate ideal permutations: they are designed to simulate ideal permutations with certain symmetries, i.e., ideal permutations of the orbits of the state space under these symmetries. The in- put of the Salsa and ChaCha function is partially fixed to specific asymmetric constants, guaranteeing that different inputs lie in different orbits. To our knowl- edge, while for Salsa some of these properties of ”non-pseudorandomness” are well known, this is not the case for ChaCha (see Section subsection 1.3). Again to our knowledge, because of the use of asymmetric constants injected into the input state of the permutation, none of these properties can be used to attack the entire stream cipher, or other ciphers where these permutations have been reused, as Salsa20 permutation in the Rumba20 compression function [7], a tweaked ver- sion of the ChaCha20 permutation in the BLAKE and BLAKE2 hash functions [1], or ChaCha12 permutation in the original SPHINCS post-quantum signature scheme [10] 3. That said, studying mathematical properties of the Salsa and ChaCha per- mutations is still of theoretical interest, and it is useful to understand how these permutations can be reused to design other cryptographic primitives. 1.1 Our contribution In this work, we show that ChaCha permutation does not behave as a ran- dom permutation, with respect to rotational cryptanalysis. To do so, we first derive and formally prove a lower and an upper bound for the probability of the propagation of rotational pairs through ChaCha quarter round. We provide experimental evidence of the correctness of the bounds by testing them on a toy version of ChaCha permutation. We then show how to extend the bounds to a full round and then to the full permutation. The obtained bounds allow us to distinguish ChaCha permutation, with for example 17 rounds, from a random permutation by using 2489 calls to an oracle running either ChaCha permutation or the random permutation. To do so, we prove that what we call a parallel rota- tional collision, is more likely to happen in ChaCha permutation, rather than in a random permutation. For example, such a collision happens with probability less than 2−488 for ChaCha permutation with 17 rounds, while with probability 2−511 for a random permutation. This distinguisher is not an attack to ChaCha20 stream cipher, but rather a theoretical analysis of its permutation from the point of view of rotational cryptanalysis. 1.2 Outline of the paper In subsection 1.3 we briefly summarize the existing studies on the core function of Salsa and ChaCha stream ciphers. In section 2, we introduce the notation used throughout this manuscript and recall ChaCha permutation specifications. In section 3, we derive the lower and upper bound on the probability of the propagation of a rotational pair for ChaCha quarter round, for the full rounds, and for the full permutation. In section 4, we describe a distinguihser exploiting the above mentioned bounds. Finally, in section 5, we conclude the manuscript. 1.3 Related works Often, rather than only considering the underlying permutation of Salsa and ChaCha, researchers study the so called Salsa (or ChaCha) core function (also 3 The current SPHINCS submission to the NIST post-quantum standardization pro- cess does not use ChaCha anymore. called ChaCha block function in [15]), whose output consists in applying the permutation and then xoring the output of the permutation with its input. Already in the specifications of Salsa20 [6], there is an example showing how the 0 vector is a fixed point for Salsa core function. This is also true for ChaCha. In [13], the authors find4 an invariant for Salsa core main building block, the quarterround function, that is then extended to the row-round and column- round functions. This allows them to find an input subset of size 232 for which the Salsa20 core behaves exactly as the transformation f(x)=2x. This allows to construct 231 collisions for any number of rounds. They also show a differential characteristic with probability one that proves that the Salsa20 core does not have 2nd preimage resistance. In [3], it is pointed out that none of the results in [13] has an impact on security of Salsa20 stream cipher, due to the use of fixed constants in the input. Indeed, Salsa20 is not designed to be a collision-resistant compression function [4]. In the Salsa20 security document [2, Section 4], two other symmetries of the cipher are reported, i.e. – shifting the entire Salsa20 core input array along the diagonal has exactly the same effect on the output, i.e. y0,0 y0,1 y0,2 y0,3 x0,0 x0,1 x0,2 x0,3 y , y , y , y , x , x , x , x , 1 0 1 1 1 2 1 3 = Salsa 1 0 1 1 1 2 1 3 y2,0 y2,1 y2,2 y2,3 x2,0 x2,1 x2,2 x2,3 y3,0 y3,1 y3,2 y3,3 x3,0 x3,1 x3,2 x3,3 y3,3 y3,0 y3,1 y3,2 x3,3 x3,0 x3,1 x3,2 y , y , y , y , x , x , x , x , 0 3 0 0 0 1 0 2 = Salsa 0 3 0 0 0 1 0 2 ; y1,3 y1,0 y1,1 y1,2 x1,3 x1,0 x1,1 x1,2 y2,3 y2,0 y2,1 y2,2 x2,3 x2,0 x2,1 x2,2 – the Salsa20 core operations are almost compatible with rotation of each input word by, say, 10 bits. This shift and rotation structures are eliminated by the use of fixed constants in the input diagonal. Precisely, the input diagonal is different from all its nontrivial shifts and all its nontrivial rotations and all nontrivial shifts of its nontrivial rotations. In other words, two distinct arrays with this diagonal are always in distinct orbits under the shift/rotate group. We are not aware of similar properties for the case of the ChaCha permuta- tion. In particular, we are not aware of any study of the rotational properties of the ChaCha permutation. 4 According to the authors and to [3], most of these results were already informally observed by Matt Robshaw in June 2005, and independently posted to sci.crypt by David Wagner in September 2005, but we could not find any reference besides [16]. 2 ChaCha permutation description In this section, we first define our notation, then we describe the specifications of ChaCha permutation. We do not describe the entire details of ChaCha as a stream cipher. 2.1 Notation F Fw n n Let 2 be the binary field with two elements, and Mn×n( 2 ) the set of all × Fw w matrices with elements in 2 . We indicate with lowercase letters -bit words, Fw n Fw n i.e. x ∈ 2 , with bold lower case letters vectors of words, i.e. x ∈ ( 2 ) , and n n n2 Fw with uppercase letters a × matrix of words, i.e.
Recommended publications
  • Basic Cryptography
    Basic cryptography • How cryptography works... • Symmetric cryptography... • Public key cryptography... • Online Resources... • Printed Resources... I VP R 1 © Copyright 2002-2007 Haim Levkowitz How cryptography works • Plaintext • Ciphertext • Cryptographic algorithm • Key Decryption Key Algorithm Plaintext Ciphertext Encryption I VP R 2 © Copyright 2002-2007 Haim Levkowitz Simple cryptosystem ... ! ABCDEFGHIJKLMNOPQRSTUVWXYZ ! DEFGHIJKLMNOPQRSTUVWXYZABC • Caesar Cipher • Simple substitution cipher • ROT-13 • rotate by half the alphabet • A => N B => O I VP R 3 © Copyright 2002-2007 Haim Levkowitz Keys cryptosystems … • keys and keyspace ... • secret-key and public-key ... • key management ... • strength of key systems ... I VP R 4 © Copyright 2002-2007 Haim Levkowitz Keys and keyspace … • ROT: key is N • Brute force: 25 values of N • IDEA (international data encryption algorithm) in PGP: 2128 numeric keys • 1 billion keys / sec ==> >10,781,000,000,000,000,000,000 years I VP R 5 © Copyright 2002-2007 Haim Levkowitz Symmetric cryptography • DES • Triple DES, DESX, GDES, RDES • RC2, RC4, RC5 • IDEA Key • Blowfish Plaintext Encryption Ciphertext Decryption Plaintext Sender Recipient I VP R 6 © Copyright 2002-2007 Haim Levkowitz DES • Data Encryption Standard • US NIST (‘70s) • 56-bit key • Good then • Not enough now (cracked June 1997) • Discrete blocks of 64 bits • Often w/ CBC (cipherblock chaining) • Each blocks encr. depends on contents of previous => detect missing block I VP R 7 © Copyright 2002-2007 Haim Levkowitz Triple DES, DESX,
    [Show full text]
  • Rotational Cryptanalysis of ARX
    Rotational Cryptanalysis of ARX Dmitry Khovratovich and Ivica Nikoli´c University of Luxembourg [email protected], [email protected] Abstract. In this paper we analyze the security of systems based on modular additions, rotations, and XORs (ARX systems). We provide both theoretical support for their security and practical cryptanalysis of real ARX primitives. We use a technique called rotational cryptanalysis, that is universal for the ARX systems and is quite efficient. We illustrate the method with the best known attack on reduced versions of the block cipher Threefish (the core of Skein). Additionally, we prove that ARX with constants are functionally complete, i.e. any function can be realized with these operations. Keywords: ARX, cryptanalysis, rotational cryptanalysis. 1 Introduction A huge number of symmetric primitives using modular additions, bitwise XORs, and intraword rotations have appeared in the last 20 years. The most famous are the hash functions from MD-family (MD4, MD5) and their descendants SHA-x. While modular addition is often approximated with XOR, for random inputs these operations are quite different. Addition provides diffusion and nonlinearity, while XOR does not. Although the diffusion is relatively slow, it is compensated by a low price of addition in both software and hardware, so primitives with relatively high number of additions (tens per byte) are still fast. The intraword rotation removes disbalance between left and right bits (introduced by the ad- dition) and speeds up the diffusion. Many recently design primitives use only XOR, addition, and rotation so they are grouped into a single family ARX (Addition-Rotation-XOR).
    [Show full text]
  • Improved Masking for Tweakable Blockciphers with Applications to Authenticated Encryption
    Improved Masking for Tweakable Blockciphers with Applications to Authenticated Encryption Robert Granger1, Philipp Jovanovic2, Bart Mennink3, and Samuel Neves4 1 Laboratory for Cryptologic Algorithms, École polytechnique fédérale de Lausanne, Switzerland, [email protected] 2 Decentralized and Distributed Systems Lab, École polytechnique fédérale de Lausanne, Switzerland, [email protected] 3 Dept. Electrical Engineering, ESAT/COSIC, KU Leuven, and iMinds, Belgium, [email protected] 4 CISUC, Dept. of Informatics Engineering, University of Coimbra, Portugal, [email protected] Abstract. A popular approach to tweakable blockcipher design is via masking, where a certain primitive (a blockcipher or a permutation) is preceded and followed by an easy-to-compute tweak-dependent mask. In this work, we revisit the principle of masking. We do so alongside the introduction of the tweakable Even-Mansour construction MEM. Its masking function combines the advantages of word-oriented LFSR- and powering-up-based methods. We show in particular how recent advancements in computing discrete logarithms over finite fields of characteristic 2 can be exploited in a constructive way to realize highly efficient, constant-time masking functions. If the masking satisfies a set of simple conditions, then MEM is a secure tweakable blockcipher up to the birthday bound. The strengths of MEM are exhibited by the design of fully parallelizable authenticated encryption schemes OPP (nonce-respecting) and MRO (misuse-resistant). If instantiated with a reduced-round BLAKE2b permutation, OPP and MRO achieve speeds up to 0.55 and 1.06 cycles per byte on the Intel Haswell microarchitecture, and are able to significantly outperform their closest competitors.
    [Show full text]
  • Identifying Open Research Problems in Cryptography by Surveying Cryptographic Functions and Operations 1
    International Journal of Grid and Distributed Computing Vol. 10, No. 11 (2017), pp.79-98 http://dx.doi.org/10.14257/ijgdc.2017.10.11.08 Identifying Open Research Problems in Cryptography by Surveying Cryptographic Functions and Operations 1 Rahul Saha1, G. Geetha2, Gulshan Kumar3 and Hye-Jim Kim4 1,3School of Computer Science and Engineering, Lovely Professional University, Punjab, India 2Division of Research and Development, Lovely Professional University, Punjab, India 4Business Administration Research Institute, Sungshin W. University, 2 Bomun-ro 34da gil, Seongbuk-gu, Seoul, Republic of Korea Abstract Cryptography has always been a core component of security domain. Different security services such as confidentiality, integrity, availability, authentication, non-repudiation and access control, are provided by a number of cryptographic algorithms including block ciphers, stream ciphers and hash functions. Though the algorithms are public and cryptographic strength depends on the usage of the keys, the ciphertext analysis using different functions and operations used in the algorithms can lead to the path of revealing a key completely or partially. It is hard to find any survey till date which identifies different operations and functions used in cryptography. In this paper, we have categorized our survey of cryptographic functions and operations in the algorithms in three categories: block ciphers, stream ciphers and cryptanalysis attacks which are executable in different parts of the algorithms. This survey will help the budding researchers in the society of crypto for identifying different operations and functions in cryptographic algorithms. Keywords: cryptography; block; stream; cipher; plaintext; ciphertext; functions; research problems 1. Introduction Cryptography [1] in the previous time was analogous to encryption where the main task was to convert the readable message to an unreadable format.
    [Show full text]
  • Rotational Rebound Attacks on Reduced Skein
    Rotational Rebound Attacks on Reduced Skein Dmitry Khovratovich1;2, Ivica Nikoli´c1, and Christian Rechberger3 1: University of Luxembourg; 2: Microsoft Research Redmond, USA; 3: Katholieke Universiteit Leuven, ESAT/COSIC, and IBBT, Belgium [email protected], [email protected], [email protected] Abstract. In this paper we combine the recent rotational cryptanalysis with the rebound attack, which results in the best cryptanalysis of Skein, a candidate for the SHA-3 competition. The rebound attack approach was so far only applied to AES-like constructions. For the first time, we show that this approach can also be applied to very different construc- tions. In more detail, we develop a number of techniques that extend the reach of both the inbound and the outbound phase, leading to rotational collisions for about 53/57 out of the 72 rounds of the Skein-256/512 com- pression function and the Threefish cipher. At this point, the results do not threaten the security of the full-round Skein hash function. The new techniques include an analytical search for optimal input values in the rotational cryptanalysis, which allows to extend the outbound phase of the attack with a precomputation phase, an approach never used in any rebound-style attack before. Further we show how to combine multiple inside-out computations and neutral bits in the inbound phase of the rebound attack, and give well-defined rotational distinguishers as certificates of weaknesses for the compression functions and block ciphers. Keywords: Skein, SHA-3, hash function, compression function, cipher, rotational cryptanalysis, rebound attack, distinguisher. 1 Introduction Rotational cryptanalysis and the rebound attack proved to be very effective in the analysis of SHA-3 candidates and related primitives.
    [Show full text]
  • Differential Cryptanalysis of the Data Encryption Standard
    Differential Cryptanalysis of the Data Encryption Standard Eli Biham1 Adi Shamir2 December 7, 2009 1Computer Science Department, Technion – Israel Institute of Technology, Haifa 32000, Israel. Email: [email protected], WWW: http://www.cs.technion.ac.il/˜biham/. 2Department of Applied Mathematics and Computer Science, The Weizmann Institute of Science, Rehovot 76100, Israel. Email: [email protected]. This versionofthebookisprocessedfromtheauthor’soriginalLaTeXfiles,andmaybe differentlypaginatedthantheprintedbookbySpringer(1993). Copyright:EliBihamandAdiShamir. Preface The security of iterated cryptosystems and hash functions has been an active research area for many years. The best known and most widely used function of this type is the Data Encryption Standard (DES). It was developed at IBM and adopted by the National Bureau of Standards in the mid 70’s, and has successfully withstood all the attacks published so far in the open literature. Since the introduction of DES, many other iterated cryptosystems were developed, but their design and analysis were based on ad-hoc heuristic arguments, with no theoretical justification. In this book, we develop a new type of cryptanalytic attack which can be successfully applied to many iterated cryptosystems and hash functions. It is primarily a chosen plaintext attack but under certain circumstances, it can also be applied as a known plaintext attack. We call it “differen- tial cryptanalysis”, since it analyzes the evolution of differences when two related plaintexts are encrypted under the same key. Differential cryptanalysis is the first published attack which is capable of breaking the full 16-round DES in less than 255 complexity. The data analysis phase computes the key by analyzing about 236 ciphertexts in 237 time.
    [Show full text]
  • A Survey of ARX-Based Symmetric-Key Primitives
    397 International Journal of Communication Networks and Information Security (IJCNIS) Vol. 11, No. 3, December 2019 A Survey of ARX-based Symmetric-key Primitives Nur Fasihah Mohd Esa1, Shekh Faisal Abdul-Latip1 and Mohd Rizuan Baharon1 1INSFORNET Centre for Advanced Computing Technology, Fakulti Teknologi Maklumat dan Komunikasi, Universiti Teknikal Malaysia Melaka Abstract: Addition Rotation XOR is suitable for fast and fast software-oriented implementation. Nevertheless, the implementation symmetric –key primitives, such as stream and security properties are still not well studied in literature as block ciphers. This paper presents a review of several block and compared to SPN and Feistel ciphers. stream ciphers based on ARX construction followed by the Observation of addition from [4]: First, addition modulo discussion on the security analysis of symmetric key primitives n where the best attack for every cipher was carried out. We 2 on the window can be approximated by addition modulo benchmark the implementation on software and hardware platforms according to the evaluation metrics. Therefore, this paper aims at . Second, this addition gives a perfect approximation if providing a reference for a better selection of ARX design strategy. the carry into the window is estimated correctly. The probability distribution of the carry is generated, depending Keywords: ARX, cryptography, cryptanalysis, design, stream on the probability of approximation correctness. The ciphers, block ciphers. probability of the carry is independent of w; in fact, for 1. Introduction uniformly distributed addends it is , where The rapid development of today’s computing technology has is the position of the least significant bit in the window. made computer devices became smaller which in turn poses Thirdly, the probability of correctness for a random guess of a challenge to their security aspects.
    [Show full text]
  • An Overview on Cryptanalysis of ARX Ciphers
    An overview on cryptanalysis of ARX ciphers S. Barbero S. Barbero An overview on cryptanalysis of ARX ciphers ARX operations n n-bits strings: we essentially play in F2 and use the natural correspondence with Z2n n−1 n−2 x = (xn−1; xn−2;:::; x1; x0) $ xn−12 +xn−22 +···+x12+x0 n Addition : is the modular addiction mod 2 Rotation: nr and or respectively indicate a constant-distance left-rotation or right-rotation of r bits (r < n) of a n-bit word x (when will be clear from the − −! context, we will also use the notations x =nr x = x or ) x nr = (xn−r−1; xn−r−2;:::; x1; x0; xn−1;::: xn−r ) x or = (xr−1;:::; x1; x0; xn−1; xn−2;:::; xr ) XOR: ⊕ is the bitwise addition (exclusive OR) S. Barbero An overview on cryptanalysis of ARX ciphers Why ARX? ARX ciphers are block ciphers with very interesting advantages such as fast performance on PCs; compact implementation; easy algorithms; no timing attacks: in many other ciphers analyzing the time taken to execute cryptographic algorithms gives useful informations to the attacker in order to work backwards to the input, since the time of execution can differ based on the input; functionally completeness (assuming constants included): every possible logic gate can be realized as a network of gates using ARX operations and constants. S. Barbero An overview on cryptanalysis of ARX ciphers Basic disavantages of ARX On the other hand we have some disavantages not best trade–off in hardware, although there are some different attempts of optimizations for various ARX ciphers; it is still not so clear which is their security against some cryptanalytic tools such as linear and differential cryptanalysis, it is also still not so clear which is their security against side channel attacks, i.e.
    [Show full text]
  • Cryptanalysis of Symmetric Encryption Algorithms Colin Chaigneau
    Cryptanalysis of symmetric encryption algorithms Colin Chaigneau To cite this version: Colin Chaigneau. Cryptanalysis of symmetric encryption algorithms. Cryptography and Security [cs.CR]. Université Paris-Saclay, 2018. English. NNT : 2018SACLV086. tel-02012149 HAL Id: tel-02012149 https://tel.archives-ouvertes.fr/tel-02012149 Submitted on 8 Feb 2019 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Cryptanalyse des algorithmes de chiffrement symetrique´ These` de doctorat de l’Universite´ Paris-Saclay prepar´ ee´ a` l’Universite´ de Versailles Saint-Quentin-en-Yvelines NNT : 2018SACLV086 Ecole doctorale n◦580 Sciences et Technologies de l’Information et de la Communication (STIC) Specialit´ e´ de doctorat : Mathematiques` et Informatique These` present´ ee´ et soutenue a` Versailles, le mercredi 28 novembre 2018, par Colin Chaigneau Composition du Jury : M. Louis GOUBIN Professeur, Universite´ de Versailles President´ Saint-Quentin-en-Yvelines, France M. Thierry BERGER Professeur Em´ erite,´ Universite´ de Limoges, France Rapporteur Mme. Mar´ıa NAYA-PLASENCIA Directrice de Recherche, INRIA Paris, France Rapporteure M. Patrick DERBEZ Maˆıtre de Conference,´ Universite´ de Rennes 1, France Examinateur Mme. Marine MINIER Professeure, Universite´ de Lorraine, France Examinatrice M. Gilles VAN ASSCHE Senior Principal Cryptographer, STMicroelectronics, Examinateur Belgique M.
    [Show full text]
  • Fast Keyed Hash/Pseudo-Random Function Using SIMD Multiply and Permute
    Fast keyed hash/pseudo-random function using SIMD multiply and permute J. Alakuijala, B. Cox, and J. Wassenberg Google Research February 7, 2017 Abstract HighwayHash is a new pseudo-random function based on SIMD multiply and permute instructions for thorough and fast hashing. It is 5.2 times as fast as SipHash for 1 KiB inputs. An open-source implementation is available under a permissive license. We discuss design choices and provide statistical analysis, speed measurements and preliminary cryptanalysis. Assuming it withstands further analysis, strengthened variants may also substantially accelerate file checksums and stream ciphers. 1 Introduction Hash functions are widely used for message authentication, efficient searching and `random' decisions. When attackers are able to find collisions (multiple inputs with the same hash result), they can mount denial of service attacks or disturb applications expecting uniformly distributed inputs. So-called `keyed-hash' functions prevent this by using a secret key to ensure the outputs arXiv:1612.06257v3 [cs.CR] 6 Feb 2017 are unpredictable. These functions are constructed such that an attacker who controls the inputs still cannot deduce the key, nor predict future outputs. The authors of SipHash refer to these as `strong pseudo-random functions' [1]. However, existing approaches are too slow for large-scale use. In this paper, we introduce two alternatives that are about 2 and 5 times as fast as SipHash. We are mainly interested in generating random numbers and message authentication, for which 64-bit hashes are sufficient. These are not `collision- resistant' because adversaries willing to spend considerable CPU time could 1 q π 64 find a collision after hashing about 2 2 inputs.
    [Show full text]
  • High-Speed, Hardware-Oriented Authenticated Encryption
    ICEPOLE: High-speed, Hardware-oriented Authenticated Encryption Pawe lMorawiecki1;2, Kris Gaj5, Ekawat Homsirikamol5, Krystian Matusiewicz8, Josef Pieprzyk3;4, Marcin Rogawski7, Marian Srebrny1;2, and Marcin W´ojcik6 1 Institute of Computer Science, Polish Academy of Sciences, Poland 2 Section of Informatics, University of Commerce, Kielce, Poland 3 Department of Computing, Macquarie University, Australia 4 Electrical Engineering and Computer Science School, Science and Engineering Faculty, Queensland University of Technology, Brisbane, Australia 5 Cryptographic Engineering Research Group, George Mason University, USA 6 Cryptography and Information Security Group, University of Bristol, United Kingdom 7 Cadence Design Systems, San Jose, USA 8 Intel, Gda´nsk,Poland Abstract. This paper introduces our dedicated authenticated encryption scheme ICEPOLE. ICE- POLE is a high-speed hardware-oriented scheme, suitable for high-throughput network nodes or generally any environment where specialized hardware (such as FPGAs or ASICs) can be used to provide high data processing rates. ICEPOLE-128 (the primary ICEPOLE variant) is very fast. On the modern FPGA device Virtex 6, a basic iterative architecture of ICEPOLE reaches 41 Gbits/s, which is over 10 times faster than the equivalent implementation of AES-128-GCM. The throughput-to-area ratio is also substantially better when compared to AES-128-GCM. We have carefully examined the security of the algorithm through a range of cryptanalytic techniques and our findings indicate that ICEPOLE offers high security level. Keywords: authenticated encryption scheme, authenticated cipher, ICEPOLE 1 Introduction Protocols such as SSL/TLS [12, 16], the backbone of the Internet, are designed to provide data confidentiality and authenticity. Often the underlying algorithms of these protocols realize en- cryption and authentication separately (e.g., AES in CBC mode for encryption and HMAC- SHA1 for authentication).
    [Show full text]
  • Malicious Keccak
    Malicious Keccak Pawe lMorawiecki1;2 1 Institute of Computer Science, Polish Academy of Sciences, Poland 2 Section of Informatics, University of Commerce, Kielce, Poland Abstract. In this paper, we investigate Keccak | the cryptographic hash function adopted as the SHA-3 standard. We propose a malicious variant of the function, where new round constants are introduced. We show that for such the variant, collision and preimage attacks are possible. We also identify a class of weak keys for the malicious Keccak working in the MAC mode. Ideas presented in the paper were verified by implementing the attacks on the function with the 128-bit hash. Keywords: cryptanalysis, Keccak, SHA-3, malicious hashing 1 Introduction A malicious variant of a cryptographic primitive is the one with a backdoor. An attacker who knows the backdoor can easily manipulate or even totally compromise the algorithm's security. A holy grail for all intelligence agencies is to have backdoors, which are extremely hard to detect and, at the same time, easy to use, widely applicable. Recent revelations by Edward Snowden have shown that the NSA has deliberately inserted a backdoor in the standardized pseudorandom number generator Dual EC DRBG [3]. This backdoor gives the knowledge of the internal state of the generator and consequently the attacker can predict future keystream bits. At the time of Snowden's revelations, NIST actually recommended Dual EC DRBG, so there are speculations that the NIST standards are manipulated by NSA, such as the NIST's recommended elliptic curve constants [8]. Malicious cryptography can be also an issue in the commercial cryptography software or in some services relying on supposedly strong cryptographic algorithms.
    [Show full text]