The XL and XSL Attacks on Baby Rijndael

The XL and XSL Attacks on Baby Rijndael

Iowa State University Capstones, Theses and Retrospective Theses and Dissertations Dissertations 1-1-2005 The XL and XSL attacks on Baby Rijndael Elizabeth Kleiman Iowa State University Follow this and additional works at: https://lib.dr.iastate.edu/rtd Recommended Citation Kleiman, Elizabeth, "The XL and XSL attacks on Baby Rijndael" (2005). Retrospective Theses and Dissertations. 19136. https://lib.dr.iastate.edu/rtd/19136 This Thesis is brought to you for free and open access by the Iowa State University Capstones, Theses and Dissertations at Iowa State University Digital Repository. It has been accepted for inclusion in Retrospective Theses and Dissertations by an authorized administrator of Iowa State University Digital Repository. For more information, please contact [email protected]. The XL and XSL attacks on Baby Rijndael by Elizabeth Kleiman A thesis submitted to the graduate faculty in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Major: Mathematics Program of Study Committee: Clifford Bergman, Major Professor Maria Axenovich Giora Slutzki Iowa State University Ames, Iowa 2005 Copyright © Elizabeth Kleiman, 2005. All rights reserved. ii Graduate College Iowa State University This is to certify that the master's thesis of Elizabeth Kleiman has met the thesis requirements of Iowa State University Signatures have been redacted for privacy lll DEDICATION To my family, for their guidance, support, love and enthusiasm. Without these things this thesis could not have been possible. IV TABLE OF CONTENTS LIST OF TABLES . vi LIST OF FIGURES vn ABSTRACT . viii CHAPTER 1. Introduction 1 1.1 Ciphers 1 1.2 MQ problem 4 CHAPTER 2. Rijndael - AES - Advanced Encryption Standard . 6 2.1 AES . 6 2.2 Rijndael structure 7 2.3 Algebra Definitions . 8 2.4 Rijndael and GF(28 ) 10 CHAPTER 3. Baby Rijndael 14 3.1 Baby Rijndael structure 14 3.1.1 Introduction 14 3.1.2 The cipher . 15 3.2 Baby Rijndael S-box Structure 17 3.3 Example . 19 3.3.1 Example for Key Schedule . 19 3.3.2 Example for Encryption . 20 CHAPTER 4. XL and XSL attacks 21 4.1 Relinearization technique . 21 v 4.2 The XL method for solving MQ problem . 22 4.3 XSL attack on MQ problem . 24 CHAPTER 5. XL attack on one round of Baby Rijndael 27 5.1 Constructing equations ... 27 5.1.1 Null space equations 27 5.1.2 Equations with inverse property 28 5.1.3 Decrease number of variables 30 5.2 Applying XL attack on equations . 31 CHAPTER 6. The XL and XSL attacks on four round Baby Rijnael 34 6.1 Equations for four round Baby Rijndael .... 34 6.2 The XL method for four round Baby Rijndael . 36 6.3 The XSL method for four round Baby Rijndael 36 6.4 Conclusions ................... 37 APPENDIX . A Toy Example of "T' method" 40 BIBLIOGRAPHY ..... 43 ACKNOWLEDGEMENTS 44 Vl LIST OF TABLES Table 3.1 S-box table lookup ............... 16 Table 3.2 Different representations for GF(24) elements. 18 Table 3.3 The inverse elements. 19 Table 5.1 S-box space matrix.. 33 Table 6.1 Values of ti. 39 vii LIST OF FIGURES Figure 1.1 Iterative block cipher with three rounds. ... 3 Figure 1.2 Key-alternating block cipher with two rounds. 3 Figure 2.1 The matrices A and K . 7 Figure 2.2 The M matrix. ..... 8 Figure 2.3 The affine transformation. 11 Figure 2.4 SubBytes. 12 Figure 2.5 Shift Rows. 12 Figure 2.6 MixColumns. 13 Figure 2.7 AddRoundKey. 13 Figure 3.1 SubBytes operation. 16 Figure 3.2 ShiftRows operation. 16 Figure 3.3 MixColumn operation. 17 Figure 3.4 The affine transformation for Baby Rijndael. 18 Figure 5.1 One round of Baby Rijndael. 30 Figure 6.1 Four rounds of Baby Rijndael. 35 Vlll ABSTRACT There are several recently proposed algorithms for solving the overdefined MQ problem, two of them are XL represented in (2) and XSL represented in (3). There is an opinion that these algorithms may be used as an attack on AES, because AES can be represented as an overdefined MQ problem. In our research we constructed a new cipher called Baby Rijndael. It is a scaled-down version of Rijndael with the same algebraic structure. We apply the XL and XSL attacks on Baby Rijndael to see if it might be possible to apply them on AES. 1 CHAPTER 1. Introduction 1.1 Ciphers There are some very basic concepts in cryptography we should define. Definition 1.1.1. A cryptosystem is a five-tuple (P, C, K, E, D), where: 1. P is a finite set of possible inputs/plaintexts, 2. C is a finite set of possible outputs/ciphertexts, 3. K is a finite set of possible keys, and 4. for each k E K there is an encryption function ek E E, and a corresponding decryption function dk E D. Each ek : P---+ C and dk : C---+ P has the property dk(ek(x)) = x for every plaint ext element x E P. The function ek is called a cipher. There are many different kinds of ciphers. All of them take a message as an input and give back some output. The message can be represented in many ways; it may be just an array of letters or words, or it might be text represented as numbers, or even binary numbers. The output also can be some array of letters or numbers. We will call the input a plaintext block and the output a ciphertext block. The operation of transforming a plaintext block into a ciphertext block is called encryption. The operation of transforming a ciphertext block into a plaintext block is called decryption. Most of the ciphers use not only some input, but also a key, because it makes the cipher more secure. Assume Alice wants to send a secret message to Bob. She wants to be sure that nobody except Bob can read the message. This is easy to do if they have some cipher that nobody but 2 them knows or if they share some secret key. However, in many cases, Bob will never see or speak to Alice, so they won't be able to agree upon such a cipher or a key. There are two different kinds of ciphers using keys: public-key ciphers and private-key ciphers. The big difference between these two is that in a private-key cipher, only Alice and Bob know the secret key. In public-key cipher, the key is not secret-everyone knows it. We can define these concepts more precisely as follows. Definition 1.1.2. A public-key cryptosystem is a cryptosystem in which each participant has a public key and a private key. It should be infeasible to determine the private key from knowledge of the public key. To send a message to Alice, Bob will use her public key. Nobody except Alice knows her private key, and one must know the private key to decrypt the message. The most well-known public key cryptosystem is the RSA cryptosystem. More detail can be found in (8). However, in this paper we will be dealing with AES, also called Rijndael, which is a private-key cryptosystem. Definition 1.1.3. A symmetric-key cryptosystem (or a private-key cryptosystem) is a cryptosystem in which the participants share a secret key. To encrypt a message, Bob will use this key. To decrypt the message Alice will either use the same key or will derive the decryption key from the secret key. In a symmetric-key cryptosystem, exposure of the private key makes the system insecure. Definition 1.1.4. A block cipher is a function which maps n-bit plaintext blocks to n-bit ciphertext blocks. The function is parameterized by a key. n is called the block size. Definition 1.1.5. An iterated block cipher is one that encrypts a plaintext block by a process that has several rounds. In each round, the same transformation or round function is applied to the intermediate result, called the state, using a round key. The set of round keys is usually derived from the user-provided secret key by a key schedule. The number of rounds in an iterated cipher depends on the desired security level. In most cases, an increased number of rounds will improve the security offered by a block cipher. 3 _L_J i i t Pili :L.... p(2: J_J ··1 ·1 i k::;,· l l l jl ('1;l; i • i ' Figure 1.1 Iterative block cipher with three rounds. (4) pg. 25. Definition 1.1.6. A key-alternating block cipher is an iterative block cipher with the following properties: 1. Alternation: The cipher is defined as the alternated application of key-independent round transformations and key additions. The first round key is added before the first round and the last round key is added after the last round. 2. Simple key addition: The round keys are added to the state by means of a simple addition modulo two, called XOR (EB). k Figure 1.2 Key-alternating block cipher with two rounds. (4) pg. 26. We said that a block cipher is a function and this is true for any cipher. First, we want to 4 encrypt plaintext, and then we want to decrypt ciphertext to get our plaintext back. So the important condition for our function is to be one-to-one. Definition 1.1. 7. A function is one-to-one if no two different elements in the domain are mapped to the same element in image.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    53 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us