Submit manuscript...
eISSN: 2641-936X

Electrical & Electronic Technology Open Access Journal

Review Article Volume 2 Issue 2

Biclique cryptanalysis of full round PRESENT with reduced data complexity

M Hadian Dehkordi, Roghayeh Taghizadeh

Iran University of Science and Technology (IUST), Iran

Correspondence: M Hadian Dehkordi, Iran University of Science and Technology (IUST), Iran

Received: February 25, 2018 | Published: September 26, 2018

Citation: Dehkordi MH, Taghizadeh R. Biclique cryptanalysis of full round PRESENT with reduced data complexity. Electric Electron Tech Open Acc J. 2018;2(3):251-255. DOI: 10.15406/eetoaj.2018.02.00021

Download PDF

Abstract

Biclique cryptanalysis is a generic attack on block cipher to recovering the secret key faster than brute force. In this paperwe use asymmetric independent biclique attack on full round PRESENT. The datacomplexities of our attacks are less than before, which for a fullround attack on PRESENT-80 and PRESENT-128 are 217 plain text-ciphertext pairs The computational complexity is slightly improved

Keywords: PRESENT, Lightweight block cipher, asymmetric independent biclique, key recovery

Introduction

Biclique cryptanalysis, introduced first in 20111 for hash cryptanalysis. After that, Bogdanove in2 used this technique and introduced the first biclique attack on full round AES. We can see lots of cryptanalysis results on the other block cipher, such as IDEA, Piccolo, LBlock, SQUARE, KLINE, ARIA, TWINE and HIGHT where proposed.3–10

Biclique attack is a kind of meet in the middle (MITM) attack that is improved for cryptanalysis block cipher to find the unknown secret key.In a biclique attack; first, all possible secret keys are partitioned into a set of groups of keys. For each group of keys, a bipartite graph is constructed. After that, a partial matching is used to filter the wrong key and get the candidate key for the correct keys .Finally, the valid pair (p,c) is used to get the correct key.

PRESENT has a simple structure and belong to a family of light weight 64-bit block cipher proposed in 2007.11 It supports two key sizes of 80 and 128 bits and denoted by PRESENT-80 and PRESENT-128. A number of biclique attacks on full round PRESENT have been published in.12–14 In this paper, we use an asymmetric independent biclique attack on full round PRESENT to reduce the data complexity. The data complexity for a full round attack on PRESENT-80 and PRESENT-128 are 217 plaintext-ciphertext pairs. By minimizing the number of active sboxes, the computational complexity is slightly improved. A summary of previous works and our result is given in Table 1.

Description of PRESENT

PRESENT is a 64-bit lightweight cipher that consists of 31 rounds with 80 or 128 bits secret key. After the final round, the state is added to XORed with round key to generate the ciphertext. Both versions of PRESENT, have the same structure as shown in Figure 1. But the key schedule is slightly different. See11for detail description of round function. The key schedule expands a secret key 80 or 128 bits to 32 round keys R K r , MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGsb Gaam4saSWaaWbaaeqabaqcLbmacaWGYbaaaKqzGeGaaiilaaaa@3BBD@ r=0,...,31 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGYb Gaeyypa0JaaGimaiaacYcacaGGUaGaaiOlaiaac6cacaGGSaGaaG4m aiaaigdaaaa@3E2A@ with 64 bits each. In PRESENT-80, the 80 bits secret key K = ( k 79 ,...,  k 0 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaKqzGeaeaaaaaa aaa8qacaWGlbGaaiiOaiabg2da9iaacckakmaabmaapaqaaKqzGeWd biaadUgal8aadaWgaaqaaKqzadWdbiaaiEdacaaI5aaal8aabeaaju gib8qacaGGSaGaaiOlaiaac6cacaGGUaGaaiilaiaacckacaWGRbWc paWaaSbaaeaajugWa8qacaaIWaaal8aabeaaaOWdbiaawIcacaGLPa aaaaa@4BD0@ , is stored in 80 bits register SK=(s k 79 ,...,s k 0 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaKqzGeaeaaaaaa aaa8qacaWGtbGaam4 `saiabg2da9iaacIcacaWGZbGaam4AaOWdamaa BaaaleaajugWa8qacaaI3aGaaGyoaaWcpaqabaqcLbsapeGaaiilai aac6cacaGGUaGaaiOlaiaacYcacaWGZbGaam4AaSWdamaaBaaabaqc LbmapeGaaGimaaWcpaqabaqcLbsacaGGPaaaaa@4AC3@ with s k i = k i MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaKqzGeaeaaaaaa aaa8qacaWGZbGaam4AaSWdamaaBaaabaqcLbmapeGaamyAaaWcpaqa baqcLbsapeGaeyypa0Jaam4AaSWdamaaBaaabaqcLbmapeGaamyAaa Wcpaqabaaaaa@4259@ . After that, SK is updated as follow:

 ( s k 79 ,...,s k 0 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaKqzGeaeaaaaaa aaa8qacaGGGcGcdaqadaWdaeaajugib8qacaWGZbGaam4AaOWdamaa BaaaleaajugWa8qacaaI3aGaaGyoaaWcpaqabaqcLbsapeGaaiilai aac6cacaGGUaGaaiOlaiaacYcacaWGZbGaam4AaSWdamaaBaaabaqc LbmapeGaaGimaaWcpaqabaaak8qacaGLOaGaayzkaaaaaa@49AC@ = ( s k 18 , ..., s k 0 , s k 79 ,...,s k 19 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaqcLbsapeGaam4CaiaadUgal8aadaWgaaqaaKqzadWd biaaigdacaaI4aaal8aabeaajugib8qacaGGSaGaaiiOaiaac6caca GGUaGaaiOlaiaacYcacaGGGcGaam4CaiaadUgak8aadaWgaaWcbaqc LbmapeGaaGimaaWcpaqabaqcLbsapeGaaiilaiaacckacaWGZbGaam 4AaOWdamaaBaaaleaajugWa8qacaaI3aGaaGyoaaWcpaqabaqcLbsa peGaaiilaiaac6cacaGGUaGaaiOlaiaacYcacaWGZbGaam4AaOWdam aaBaaaleaajugWa8qacaaIXaGaaGyoaaWcpaqabaaak8qacaGLOaGa ayzkaaaaaa@5AC4@

 ( s k 79 ,s k 78 ,s k 77 ,s k 76 )= sbox( s k 79 ,s k 78 ,s k 77 ,s k 76 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaKqzGeaeaaaaaa aaa8qacaGGGcGcdaqadaWdaeaajugib8qacaWGZbGaam4AaOWdamaa BaaaleaajugWa8qacaaI3aGaaGyoaaWcpaqabaqcLbsapeGaaiilai aadohacaWGRbGcpaWaaSbaaSqaaKqzadWdbiaaiEdacaaI4aaal8aa beaajugib8qacaGGSaGaam4CaiaadUgal8aadaWgaaqaaKqzadWdbi aaiEdacaaI3aaal8aabeaajugib8qacaGGSaGaam4CaiaadUgal8aa daWgaaqaaKqzadWdbiaaiEdacaaI2aaal8aabeaaaOWdbiaawIcaca GLPaaajugibiabg2da9iaacckacaWGZbGaamOyaiaad+gacaWG4bGc daqadaWdaeaajugib8qacaWGZbGaam4AaSWdamaaBaaabaqcLbmape GaaG4naiaaiMdaaSWdaeqaaKqzGeWdbiaacYcacaWGZbGaam4AaSWd amaaBaaabaqcLbmapeGaaG4naiaaiIdaaSWdaeqaaKqzGeWdbiaacY cacaWGZbGaam4AaOWdamaaBaaaleaajugWa8qacaaI3aGaaG4naaWc paqabaqcLbsapeGaaiilaiaadohacaWGRbGcpaWaaSbaaSqaaKqzad WdbiaaiEdacaaI2aaal8aabeaaaOWdbiaawIcacaGLPaaaaaa@752B@

( s k 19 ,s k 18 ,s k 17 ,s k 16 ,s k 15 )= ( s k 19 ,s k 18 ,s k 17 ,s k 16 ,s k 15 ) ( r+1 )  MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaqcLbsapeGaam4CaiaadUgak8aadaWgaaWcbaqcLbma peGaaGymaiaaiMdaaSWdaeqaaKqzGeWdbiaacYcacaWGZbGaam4AaO WdamaaBaaaleaajugWa8qacaaIXaGaaGioaaWcpaqabaqcLbsapeGa aiilaiaadohacaWGRbGcpaWaaSbaaSqaaKqzadWdbiaaigdacaaI3a aal8aabeaajugib8qacaGGSaGaam4CaiaadUgak8aadaWgaaWcbaqc LbmapeGaaGymaiaaiAdaaSWdaeqaaKqzGeWdbiaacYcacaWGZbGaam 4AaOWdamaaBaaaleaajugWa8qacaaIXaGaaGynaaWcpaqabaaak8qa caGLOaGaayzkaaqcLbsacqGH9aqpcaGGGcGcdaqadaWdaeaajugib8 qacaWGZbGaam4AaOWdamaaBaaaleaajugWa8qacaaIXaGaaGyoaaWc paqabaqcLbsapeGaaiilaiaadohacaWGRbWcpaWaaSbaaeaajugWa8 qacaaIXaGaaGioaaWcpaqabaqcLbsapeGaaiilaiaadohacaWGRbGc paWaaSbaaSqaaKqzadWdbiaaigdacaaI3aaal8aabeaajugib8qaca GGSaGaam4CaiaadUgal8aadaWgaaqaaKqzadWdbiaaigdacaaI2aaa l8aabeaajugib8qacaGGSaGaam4CaiaadUgal8aadaWgaaqaaKqzad WdbiaaigdacaaI1aaal8aabeaaaOWdbiaawIcacaGLPaaajugib8aa cqGHvksXpeGaaiiOaOWaaeWaa8aabaqcLbsapeGaamOCaiabgUcaRi aaigdaaOGaayjkaiaawMcaaKqzGeGaaiiOaaaa@8680@

The 64 leftmost bits of SK selected as 64 bits round keys R K r , MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGsb Gaam4saSWaaWbaaeqabaqcLbmacaWGYbaaaKqzGeGaaiilaaaa@3BBD@ for PRESENT-80. The above procedure is repeated until all round keys are constructed. The key schedule of PRESENT-128 is similar and is as follow

( s k 127 ,...,s k 0 )= ( s k 66 ,...,s k 0 ,s k 127 ,...,s k 67 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaqcLbsapeGaam4CaiaadUgal8aadaWgaaqaaKqzadWd biaaigdacaaIYaGaaG4naaWcpaqabaqcLbsapeGaaiilaiaac6caca GGUaGaaiOlaiaacYcacaWGZbGaam4AaSWdamaaBaaabaqcLbmapeGa aGimaaWcpaqabaaak8qacaGLOaGaayzkaaqcLbsacqGH9aqpcaGGGc GcdaqadaWdaeaajugib8qacaWGZbGaam4AaSWdamaaBaaabaqcLbma peGaaGOnaiaaiAdaaSWdaeqaaKqzGeWdbiaacYcacaGGUaGaaiOlai aac6cacaGGSaGaam4CaiaadUgal8aadaWgaaqaaKqzadWdbiaaicda aSWdaeqaaKqzGeWdbiaacYcacaWGZbGaam4AaSWdamaaBaaabaqcLb mapeGaaGymaiaaikdacaaI3aaal8aabeaajugib8qacaGGSaGaaiOl aiaac6cacaGGUaGaaiilaiaadohacaWGRbWcpaWaaSbaaeaajugWa8 qacaaI2aGaaG4naaWcpaqabaaak8qacaGLOaGaayzkaaaaaa@6B05@

( s k 123 ,s k 122 ,s k 121 ,s k 120 ) = sbox ( s k 123 ,s k 122 ,s k 121 ,s k 120 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaqcLbsapeGaam4CaiaadUgak8aadaWgaaWcbaqcLbma peGaaGymaiaaikdacaaIZaaal8aabeaajugib8qacaGGSaGaam4Cai aadUgal8aadaWgaaqaaKqzadWdbiaaigdacaaIYaGaaGOmaaWcpaqa baqcLbsapeGaaiilaiaadohacaWGRbGcpaWaaSbaaSqaaKqzadWdbi aaigdacaaIYaGaaGymaaWcpaqabaqcLbsapeGaaiilaiaadohacaWG RbGcpaWaaSbaaSqaaKqzadWdbiaaigdacaaIYaGaaGimaaWcpaqaba aak8qacaGLOaGaayzkaaqcLbsacaGGGcGaeyypa0JaaiiOaiaadoha caWGIbGaam4BaiaadIhacaGGGcGcdaqadaWdaeaajugib8qacaWGZb Gaam4AaSWdamaaBaaabaqcLbmapeGaaGymaiaaikdacaaIZaaal8aa beaajugib8qacaGGSaGaam4CaiaadUgak8aadaWgaaWcbaqcLbmape GaaGymaiaaikdacaaIYaaal8aabeaajugib8qacaGGSaGaam4Caiaa dUgal8aadaWgaaqaaKqzadWdbiaaigdacaaIYaGaaGymaaWcpaqaba qcLbsapeGaaiilaiaadohacaWGRbGcpaWaaSbaaSqaaKqzadWdbiaa igdacaaIYaGaaGimaaWcpaqabaaak8qacaGLOaGaayzkaaaaaa@7B40@ >

 ( s k 127 ,s k 126 ,s k 125 ,s k 124 )= sbox ( s k 127 , s k 126 ,s k 125 ,s k 124 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaKqzGeaeaaaaaa aaa8qacaGGGcGcdaqadaWdaeaajugib8qacaWGZbGaam4AaSWdamaa BaaabaqcLbmapeGaaGymaiaaikdacaaI3aaal8aabeaajugib8qaca GGSaGaam4CaiaadUgak8aadaWgaaWcbaqcLbmapeGaaGymaiaaikda caaI2aaal8aabeaajugib8qacaGGSaGaam4CaiaadUgal8aadaWgaa qaaKqzadWdbiaaigdacaaIYaGaaGynaaWcpaqabaqcLbsapeGaaiil aiaadohacaWGRbWcpaWaaSbaaeaajugWa8qacaaIXaGaaGOmaiaais daaSWdaeqaaaGcpeGaayjkaiaawMcaaKqzGeGaeyypa0JaaiiOaiaa dohacaWGIbGaam4BaiaadIhacaGGGcGcdaqadaWdaeaajugib8qaca WGZbGaam4AaSWdamaaBaaabaqcLbmapeGaaGymaiaaikdacaaI3aaa l8aabeaajugib8qacaGGSaGaaiiOaiaadohacaWGRbGcpaWaaSbaaS qaaKqzadWdbiaaigdacaaIYaGaaGOnaaWcpaqabaqcLbsapeGaaiil aiaadohacaWGRbWcpaWaaSbaaeaajugWa8qacaaIXaGaaGOmaiaaiw daaSWdaeqaaKqzGeWdbiaacYcacaWGZbGaam4AaSWdamaaBaaabaqc LbmapeGaaGymaiaaikdacaaI0aaal8aabeaaaOWdbiaawIcacaGLPa aaaaa@7CFF@

( s k 66 ,s k 65 ,s k 64 ,s k 63 ,s k 62 )= ( s k 66 ,s k 65 ,s k 64 ,s k 63 ,s k 62 ) ( r+1 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaqcLbsapeGaam4CaiaadUgal8aadaWgaaqaaKqzadWd biaaiAdacaaI2aaal8aabeaajugib8qacaGGSaGaam4CaiaadUgak8 aadaWgaaWcbaqcLbmapeGaaGOnaiaaiwdaaSWdaeqaaKqzGeWdbiaa cYcacaWGZbGaam4AaOWdamaaBaaaleaajugWa8qacaaI2aGaaGinaa WcpaqabaqcLbsapeGaaiilaiaadohacaWGRbWcpaWaaSbaaeaajugW a8qacaaI2aGaaG4maaWcpaqabaqcLbsapeGaaiilaiaadohacaWGRb GcpaWaaSbaaSqaaKqzadWdbiaaiAdacaaIYaaal8aabeaaaOWdbiaa wIcacaGLPaaajugibiabg2da9iaacckakmaabmaapaqaaKqzGeWdbi aadohacaWGRbWcpaWaaSbaaeaajugWa8qacaaI2aGaaGOnaaWcpaqa baqcLbsapeGaaiilaiaadohacaWGRbGcpaWaaSbaaSqaaKqzadWdbi aaiAdacaaI1aaal8aabeaajugib8qacaGGSaGaam4CaiaadUgak8aa daWgaaWcbaqcLbmapeGaaGOnaiaaisdaaSWdaeqaaKqzGeWdbiaacY cacaWGZbGaam4AaSWdamaaBaaabaqcLbmapeGaaGOnaiaaiodaaSWd aeqaaKqzGeWdbiaacYcacaWGZbGaam4AaOWdamaaBaaaleaajugWa8 qacaaI2aGaaGOmaaWcpaqabaaak8qacaGLOaGaayzkaaqcLbsapaGa eyyLIu8dbiaacckakmaabmaapaqaaKqzGeWdbiaadkhacqGHRaWkca aIXaaakiaawIcacaGLPaaaaaa@84D7@

The above procedure is repeated, and 64 bits round keys R K r , MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGsb Gaam4saSWaaWbaaeqabaqcLbmacaWGYbaaaKqzGeGaaiilaaaa@3BBD@ for PRESENT-128 are constructed as 64 leftmost bits of SK.

Biclique cryptanalysis

In this section, we give a brief overview on biclique cryptanalysis. See2 for complete detail of this. In a biclique attack, the biclique can be constructed in plaintext or ciphertext side. Here, we construct a biclique in ciphertext side so the attack is a chosen ciphertext attack, and we need the decryption oracle (for the biclique in plaintext side, the attack is a chosen plaintext attack, and we need the encryption oracle).15–18

(d1, d2) -dimensional asymmetric biclique: let f be subciher of cipher E that maps an intermediate state S to the ciphertext C, f k ( S ) =C MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaKqzGeaeaaaaaa aaa8qacaWGdbGaaiilaiaadAgal8aadaWgaaqaaKqzadWdbiaadUga aSWdaeqaaOWdbmaabmaapaqaaKqzGeWdbiaadofaaOGaayjkaiaawM caaKqzGeGaaiiOaiabg2da9iaadoeaaaa@4474@ . The 3-tuple [ { c i },{ s j },{ K[ i,j ] } ] MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaGqaaKqzGeaeaa aaaaaaa8qacaWFZaGaa8xlaiaa=rhacaWF1bGaa8hCaiaa=XgacaWF LbGaa8hOaOWaamWaa8aabaWdbmaacmaapaqaaKqzGeWdbiaa=ngak8 aadaWgaaWcbaqcLbmapeGaa8xAaaWcpaqabaaak8qacaGL7bGaayzF aaqcLbsacaWFSaGcdaGadaWdaeaajugib8qacaWFZbWcpaWaaSbaae aajugWa8qacaWFQbaal8aabeaaaOWdbiaawUhacaGL9baajugibiaa =XcakmaacmaapaqaaKqzGeWdbiaa=TeakmaadmaapaqaaKqzGeWdbi aa=LgacaWFSaGaa8NAaaGccaGLBbGaayzxaaaacaGL7bGaayzFaaaa caGLBbGaayzxaaaaaa@5A6C@ is called a( d1,d2 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaGqaaKqzGeaeaa aaaaaaa8qacaWFHbGcdaqadaWdaeaajugib8qacaWFKbGaa8xmaiaa =XcacaWFKbGaa8NmaaGccaGLOaGaayzkaaaaaa@3FEC@ -dimensional asymmetric biclique if for all i=0,1,..., 2 d1 -1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaGqaaKqzGeaeaa aaaaaaa8qacaWFPbGaa8xpaiaa=bdacaWFSaGaa8xmaiaa=XcacaWF UaGaa8Nlaiaa=5cacaWFSaGaa8NmaSWdamaaCaaabeqaaKqzadWdbi aa=rgacaWFXaaaaKqzGeGaa8xlaiaa=fdaaaa@45B4@ and  j=0,1,..., 2 d2 -1 , s j = f -1 K[ i,j ]  ( c i ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaGqaaKqzGeaeaa aaaaaaa8qacaWFGcGaa8NAaiaa=1dacaWFWaGaa8hlaiaa=fdacaWF SaGaa8Nlaiaa=5cacaWFUaGaa8hlaiaa=jdal8aadaahaaqabeaaju gWa8qacaWFKbGaa8Nmaaaajugibiaa=1cacaWFXaGaa8hOaiaa=Xca caWFZbWcpaWaaSbaaeaajugWa8qacaWFQbaal8aabeaajugib8qaca WF9aGaa8NzaSWdamaaCaaabeqaaKqzadWdbiaa=1cacaWFXaaaaOWd amaaBaaaleaajugib8qacaWFlbGcdaWadaWcpaqaaKqzGeWdbiaa=L gacaWFSaGaa8NAaaWccaGLBbGaayzxaaqcLbsacaWFGcaal8aabeaa k8qadaqadaWdaeaajugib8qacaWFJbWcpaWaaSbaaeaajugWa8qaca WFPbaal8aabeaaaOWdbiaawIcacaGLPaaaaaa@5FBE@ . The structure (d1, d2) -dimensional asymmetric biclique is shown in Figure 2.

The four main steps of the biclique attack are:

Key partitioning: An adversary chooses a partition of the key space into groups of key of cardinality 2(d1+d2) each. A key in a group is indexed as an element of 2d1×2d2 matrixes K[ i,j ]. MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGlb qcfa4aamWaaOqaaKqzGeGaamyAaiaacYcacaWGQbaakiaawUfacaGL Dbaajugibiaac6caaaa@3E46@

Constructing a biclique: Independent biclique is an efficient tool for making a biclique. The procedure of constructing the biclique is as follow:

    1. Choose a random ciphertext c0 and compute s 0 MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8 qacaWGZbWdamaaBaaaleaapeGaaGimaaWdaeqaaaaa@3823@ as s 0 = f 1 k[ 0,0 ]  ( c 0 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4Ca8aadaWgaaWcbaWdbiaaicdaa8aabeaak8qacqGH9aqpcaWG MbWdamaaCaaaleqabaWdbiabgkHiTiaaigdaaaGcpaWaaSbaaSqaa8 qacaWGRbWaamWaa8aabaWdbiaaicdacaGGSaGaaGimaaGaay5waiaa w2faaaWdaeqaaOWdbiaacckadaqadaWdaeaapeGaam4ya8aadaWgaa WcbaWdbiaaicdaa8aabeaaaOWdbiaawIcacaGLPaaaaaa@48DB@
    2. Compute s i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGZb WcdaWgaaqaaKqzadGaamyAaaWcbeaaaaa@39D0@ as s i = f 1 k[ i,0 ] ( c 0 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGZb WcdaWgaaqaaKqzadGaamyAaaWcbeaajugWaiabg2da9KqzGeGaamOz aSWaaWbaaWqabeaajugWaiabgkHiTiaaigdaaaWcdaWgaaadbaqcLb macaWGRbWcdaWadaadbaqcLbmacaWGPbGaaiilaiaaicdaaWGaay5w aiaaw2faaaqabaqcfa4aaeWaaSqaaKqzGeGaam4yaSWaaSbaaWqaaK qzadGaaGimaaadbeaaaSGaayjkaiaawMcaaaaa@4E4E@ for i=1,..., 2 d2 1. MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGPb Gaeyypa0JaaGymaiaacYcacaGGUaGaaiOlaiaac6cacaGGSaGaaGOm aKqbaoaaCaaaleqabaqcLbmacaWGKbGaaGOmaaaajugibiabgkHiTi aaigdacaGGUaaaaa@43DD@
    3. Compute c j MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGJb qcfa4aaSbaaSqaaKqzGeGaamOAaaWcbeaaaaa@39B0@ as c j = f k[ 0,j ] ( s 0 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGJb WcdaWgaaqaaKqzadGaamOAaaWcbeaajugibiabg2da9iaadAgalmaa BaaajuaGbaqcLbmacaWGRbWcdaWadaqcfayaaKqzadGaaGimaiaacY cacaWGQbaajuaGcaGLBbGaayzxaaaabeaadaqadaqaaKqzGeGaam4C aKqbaoaaBaaabaqcLbmacaaIWaaajuaGbeaaaiaawIcacaGLPaaaaa a@4BEE@ for j=1,..., 2 d1 1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGQb Gaeyypa0JaaGymaiaacYcacaGGUaGaaiOlaiaac6cacaGGSaGaaGOm aKqbaoaaCaaaleqabaqcLbmacaWGKbGaaGymaaaajugibiabgkHiTi aaigdaaaa@432B@ .

Partial matching: Partial matching is an efficient way that all keys in a group are tested. By using this method the computational complexity is reduced significantly. Since the biclique is constructed in the ciphertext side, partial matching is performed at the plaintext side. The remaining parts of cipher E are split into the subcipher g 1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGNb WcdaWgaaqaaKqzadGaaGymaaWcbeaaaaa@3991@ and g 2 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGNb WcdaWgaaqcfayaaKqzadGaaGOmaaqcfayabaaaaa@3AA3@ , E= g 1 0 g 2 0f MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGfb Gaeyypa0Jaam4zaSWaaSbaaeaajugWaiaaigdaaSqabaqcLbsacaaI WaGaam4zaSWaaSbaaeaajugWaiaaikdaaSqabaqcLbsacaaIWaGaam Ozaaaa@41EB@ . We choose the matching variable after subcipher before g 1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGNb WcdaWgaaqaaKqzadGaaGymaaWcbeaaaaa@3991@ subcipher g 2 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGNb WcdaWgaaqcfayaaKqzadGaaGOmaaqcfayabaaaaa@3AA3@ The value of matching variable v MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWG2b aaaa@3780@ is calculated in both directions to find the correct key. First, we called on the decryption oracle to obtain plaintext p j ,j=0,1,..., 2 d1 1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGWb WcdaWgaaqaaKqzadGaamOAaaWcbeaajugibiaacYcacaWGQbGaeyyp a0JaaGimaiaacYcacaaIXaGaaiilaiaac6cacaGGUaGaaiOlaiaacY cacaaIYaqcfa4aaWbaaSqabeaajugWaiaadsgacaaIXaaaaKqzGeGa eyOeI0IaaGymaaaa@491D@ . In forward direction, p j MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGWb WcdaWgaaqaaKqzadGaamOAaaWcbeaaaaa@39CE@ is partially encrypted under key p j MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGWb WcdaWgaaqaaKqzadGaamOAaaWcbeaaaaa@39CE@ to get v( 0,j ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWG2b qcfa4aaeWaaOqaaKqzGeGaaGimaiaacYcacaWGQbaakiaawIcacaGL Paaaaaa@3C93@ , j=0,1,..., 2 d1 1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGQb Gaeyypa0JaaGimaiaacYcacaaIXaGaaiilaiaac6cacaGGUaGaaiOl aiaacYcacaaIYaqcfa4aaWbaaSqabeaajugWaiaadsgacaaIXaaaaK qzGeGaeyOeI0IaaGymaaaa@4495@ and stored 2 d1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa qcfa4aaWbaaSqabeaajugWaiaadsgacaaIXaaaaaaa@3ACE@ values. After that, in backward direction, is partially decrypted under key k[ i,0 ] MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=wjYJH8sqFD0xXdHaVhbbf9v8qqaqFr0xc9pk0xbb a9q8WqFfeaY=biLkVcLq=JHqpepeea0=as0Fb9pgeaYRXxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4Aamaadmaapaqaa8qacaWGPbGaaiilaiaaicdaaiaawUfacaGL Dbaaaaa@3DA4@ to get, v( 0,j ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWG2b qcfa4aaeWaaOqaaKqzGeGaaGimaiaacYcacaWGQbaakiaawIcacaGL Paaaaaa@3C93@ i=0,1,..., 2 d2 1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGPb Gaeyypa0JaaGimaiaacYcacaaIXaGaaiilaiaac6cacaGGUaGaaiOl aiaacYcacaaIYaqcfa4aaWbaaSqabeaajugWaiaadsgacaaIYaaaaK qzGeGaeyOeI0IaaGymaaaa@4495@ and store 2 d2 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa qcfa4aaWbaaSqabeaajugWaiaadsgacaaIYaaaaaaa@3ACF@ values. For checking the matching, v( i,j )=v( i,j ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWG2b qcfa4aaeWaaOqaaKqzGeGaamyAaiaacYcacaWGQbaakiaawIcacaGL Paaajugibiabg2da9iaadAhajuaGdaqadaGcbaqcLbsacaWGPbGaai ilaiaadQgaaOGaayjkaiaawMcaaaaa@449E@ , we recomputed only those parts that differ from the stored values. Note that by using partial matching, we can reduce the computational complexity significantly.

Rechecking the candidate keys: Since some candidate keys remain in each group of keys, to filter the wrong keys, the valid pair ( p,c ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcfa4aaeWaaO qaaKqzGeGaamiCaiaacYcacaWGJbaakiaawIcacaGLPaaaaaa@3B3D@ is used to get the correct key. The structure of (d1, d2) -dimensional asymmetric biclique cryptanalysis is shown in Figure 3.

Independent asymmetric biclique attack on full round PRESENT-80

In this section, we first construct a ( 1,3 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcfa4aaeWaaO qaaKqzGeGaaGymaiaacYcacaaIZaaakiaawIcacaGLPaaaaaa@3AD8@ -dimension asymmetric biclique on the ciphertext side for round 29-31 of PRESENT-80. The partial secret key used in RK28, RK29, RK30 and RK31 are as fallow

R K 28 :( k 51,..., k 0 , k 79 ,..., k 68 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGsb Gaam4saSWaaWbaaeqabaqcLbmacaaIYaGaaGioaaaajugibiaacQda juaGdaqadaGcbaqcLbsacaWGRbWcdaWgaaqaaKqzadGaaGynaiaaig dacaGGSaGaaiOlaiaac6cacaGGUaGaaiilaaWcbeaajugibiaadUga lmaaBaaabaqcLbmacaaIWaaaleqaaKqzGeGaaiilaiaadUgajuaGda WgaaWcbaqcLbmacaaI3aGaaGyoaaWcbeaajugibiaacYcacaGGUaGa aiOlaiaac6cacaGGSaGaam4AaSWaaSbaaeaajugWaiaaiAdacaaI4a aaleqaaaGccaGLOaGaayzkaaaaaa@5771@ .

R K 29 :( k 70, k 69 ,..., k 7 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGsb Gaam4saSWaaWbaaWqabeaajugWaiaaikdacaaI5aaaaKqzGeGaaiOo aKqbaoaabmaakeaajugibiaadUgalmaaBaaabaqcLbmacaaI3aGaaG imaiaacYcaaSqabaqcLbsacaWGRbWcdaWgaaqaaKqzadGaaGOnaiaa iMdaaSqabaqcLbmacaGGSaGaaiOlaiaac6cacaGGUaGaaiilaKqzGe Gaam4AaSWaaSbaaeaajugWaiaaiEdaaSqabaaakiaawIcacaGLPaaa aaa@5049@ .

R K 30 :( k 9 ,..., k 0 , k 79 ,..., k 26 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGsb Gaam4saKqbaoaaCaaabeqaaKqzadGaaG4maiaaicdaaaqcLbsacaGG 6aqcfa4aaeWaaOqaaKqzGeGaam4AaSWaaSbaaeaajugWaiaaiMdaaS qabaqcLbsacaGGSaGaaiOlaiaac6cacaGGUaGaaiilaiaadUgalmaa BaaabaqcLbmacaaIWaaaleqaaKqzGeGaaiilaiaadUgalmaaBaaame aajugWaiaaiEdacaaI5aaameqaaKqzGeGaaiilaiaac6cacaGGUaGa aiOlaiaacYcacaWGRbqcfa4aaSbaaWqaaKqzadGaaGOmaiaaiAdaaW qabaaakiaawIcacaGLPaaaaaa@573F@

R K 31 :( k 28 ,..., k 0 , k 79 ,..., k 45 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGsb Gaam4saSWaaWbaaKqbagqabaqcLbmacaaIZaGaaGymaaaajugibiaa cQdajuaGdaqadaGcbaqcLbsacaWGRbWcdaWgaaqaaKqzadGaaGOmai aaiIdaaSqabaqcLbsacaGGSaGaaiOlaiaac6cacaGGUaGaaiilaiaa dUgalmaaBaaabaqcLbmacaaIWaaaleqaaKqzGeGaaiilaiaadUgalm aaBaaameaajugWaiaaiEdacaaI5aaameqaaKqzGeGaaiilaiaac6ca caGGUaGaaiOlaiaacYcacaWGRbWcdaWgaaqcfayaaKqzadGaaGinai aaiwdaaKqbagqaaaGccaGLOaGaayzkaaaaaa@5888@

The attack consist of four steps:

Key partitioning: The 80 bits key space is partitioned into 276 groups of 2 4 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa WcdaahaaqabeaajugWaiaaisdaaaaaaa@395A@ keys each. The base keys K[ 0,0 ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGlb qcfa4aamWaaOqaaKqzGeGaaGimaiaacYcacaaIWaaakiaawUfacaGL Dbaaaaa@3C9C@ take all 80 bits of the secret key with 4 bits fixed to zero and the remaining 76 bits take all possible values. In our attack, the differences Δ i k MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacqqHuo arlmaaDaaabaqcLbmacaWGPbaaleaajugWaiaadUgaaaaaaa@3C5D@ are chosen by varying k52 in forward direction, and the key differences j k MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacqGHhi s0lmaaDaaabaqcLbmacaWGQbaaleaajugWaiaadUgaaaaaaa@3C7E@ are chosen by varying ( k 36 , k 35 , k 34 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcfa4aaeWaaO qaaKqzGeGaam4AaSWaaSbaaeaajugWaiaaiodacaaI2aaaleqaaKqz GeGaaiilaiaadUgalmaaBaaabaqcLbmacaaIZaGaaGynaaWcbeaaju gibiaacYcacaWGRbWcdaWgaaqaaKqzadGaaG4maiaaisdaaSqabaaa kiaawIcacaGLPaaaaaa@46A1@ in backward direction

Constructing a biclique: We use these steps to construct a biclique for each group of keys in the ciphertext side. Let f be subcipher for round 29-31 of PRESENT-80.

Step1. Fix c 0 =0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGJb WcdaWgaaqaaKqzadGaaGimaaWcbeaajugibiabg2da9iaaicdaaaa@3BDB@ and compute s 0 = f 1 k[ 0,0 ] ( c 0 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGZb WcdaWgaaqaaKqzadGaaGimaaWcbeaajugibiabg2da9iaadAgalmaa CaaabeqaaKqzadGaeyOeI0IaaGymaaaajuaGdaWgaaWcbaqcLbmaca WGRbWcdaWadaqaaKqzadGaaGimaiaacYcacaaIWaaaliaawUfacaGL DbaaaeqaaKqbaoaabmaakeaajugibiaadogalmaaBaaabaqcLbmaca aIWaaaleqaaaGccaGLOaGaayzkaaaaaa@4D12@

Step2. Decrypt c 0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGJb WcdaWgaaqaaKqzadGaaGimaaWcbeaaaaa@398C@ under different keys K[ i,0 ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGlb qcfa4aamWaaOqaaKqzGeGaamyAaiaacYcacaaIWaaakiaawUfacaGL Dbaaaaa@3CD0@ to get corresponding states, s i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGZb WcdaWgaaqaaKqzadGaamyAaaWcbeaaaaa@39D0@ i=1,2,3 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGPb Gaeyypa0JaaGymaiaacYcacaaIYaGaaiilaiaaiodaaaa@3C0D@ .The active sboxes are visualized by the blue trail in backward direction in Figure 4. These sboxes should be calculated 23 times, while the other ones are computed only once; already done in step1.

Step3. Encrypt s0 under key K[ 0,1 ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGlb qcfa4aamWaaOqaaKqzGeGaaGimaiaacYcacaaIXaaakiaawUfacaGL Dbaaaaa@3C9D@ to get the corresponding state c1. The active sboxes are visualized by the red trail in forward direction in Figure 5. These sboxes should be calculated 2 times, while the other ones have already been computed.

Matching: We use partial matching by applying matching with precomputation and recomputation over the remaining round of the cipher to filter the wrong key. Let g 1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGNb WcdaWgaaqaaKqzadGaaGymaaWcbeaaaaa@3991@ and g 2 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGNb WcdaWgaaqcfayaaKqzadGaaGOmaaqcfayabaaaaa@3AA3@ be subciphers for rounds 1-15 and rounds 16-28 respectively. We take matching variable v in the bits v 63 , ... , v 60 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWG2b WcdaWgaaqaaKqzadGaaGOnaiaaiodaaSqabaqcLbsacaGGSaGaaiOl aiaac6cacaGGUaGaaiilaiaadAhajuaGdaWgaaWcbaqcLbmacaaI2a GaaGimaaWcbeaaaaa@42CF@ of the state v ( v 63 , ... , v 0 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWG2b qcfa4aaeWaaeaajugibiaadAhajuaGdaWgaaqaaKqzadGaaGOnaiaa iodaaKqbagqaaKqzGeGaaiilaiaac6cacaGGUaGaaiOlaiaacYcaca WG2bWcdaWgaaqcfayaaKqzadGaaGimaaqcfayabaaacaGLOaGaayzk aaaaaa@4739@ after round 15. Then we detect the right key by computing v in both directions. The correct key is the one that meets in both directions.

Complexity

The cost of a biclique is dominated by the number of sboxes to be calculated, so we count the number of sbox operations in the round transformation and key schedule. Each round of PRESENT-80 together with one round of key schedule takes 17 sbox computations, so the complexity of single encryption equals calculation of 31×17=527 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIZa GaaGymaiabgEna0kaaigdacaaI3aGaeyypa0JaaGynaiaaikdacaaI 3aaaaa@3ED2@ sboxes.

Biclique complexity: For each 276 groups of keys, the following computations should be calculated.

Forward direction complexity: In forward direction, 5 sboxes should be calculated 2 times. The active sboxes are visualized by the red trail in forward direction in Figure 4.

Backward direction complexity: In backward direction, 17 sboxes should be calculated23=8 times. The active sboxes are visualized by the blue trail in backward direction in Figure 4.The remaining 26 sboxes are calculated once. In total, 5×2+17×18+26=162 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaI1a Gaey41aqRaaGOmaiabgUcaRiaaigdacaaI3aGaey41aqRaaGymaiaa iIdacqGHRaWkcaaIYaGaaGOnaiabg2da9iaaigdacaaI2aGaaGOmaa aa@45A4@ sboxes should be calculated to construct a biclique.

Matching complexity: For each276 groups of keys the following computations should be calculated.

Forward direction complexity: In forward direction, 2+5+12×16+4=203 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa Gaey4kaSIaaGynaiabgUcaRiaaigdacaaIYaGaey41aqRaaGymaiaa iAdacqGHRaWkcaaI0aGaeyypa0JaaGOmaiaaicdacaaIZaaaaa@43A6@ sboxes in round transformation and 2 sboxes in key schedule should be calculated 23 times, and 25 sboxes are calculated only once. The active sboxes are visualized by the blue trail in forward direction in Figure 5. Note that 12 sboxes in round 15 need not to be computated. This procedure is repeated 2 times for all p i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGWb WcdaWgaaqaaKqzadGaamyAaaWcbeaaaaa@39CD@ 's, so in forward direction, 2×( 2 3 ×205+25 )=330 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa Gaey41aqBcfa4aaeWaaOqaaKqzGeGaaGOmaSWaaWbaaeqabaqcLbma caaIZaaaaKqzGeGaey41aqRaaGOmaiaaicdacaaI1aGaey4kaSIaaG OmaiaaiwdaaOGaayjkaiaawMcaaKqzGeGaeyypa0JaaG4maiaaioda caaIWaaaaa@49E7@ ssboxes should be calculated.

Backward direction complexity: In backward direction, 42 sboxes are calculated once, 1+5+8×16+4+1=139 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIXa Gaey4kaSIaaGynaiabgUcaRiaaiIdacqGHxdaTcaaIXaGaaGOnaiab gUcaRiaaisdacqGHRaWkcaaIXaGaeyypa0JaaGymaiaaiodacaaI5a aaaa@4495@ and sboxes in round transformation and one sbox in key schedule should be calculated 2 times. The active sboxes are visualized by the red trail in backward direction in Figure 5. This procedure is repeated 23 for all sj's, so in backward direction, 2 3 ×( 2×140+42 )=2576 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa WcdaahaaqabeaajugWaiaaiodaaaqcLbsacqGHxdaTjuaGdaqadaGc baqcLbsacaaIYaGaey41aqRaaGymaiaaisdacaaIWaGaey4kaSIaaG inaiaaikdaaOGaayjkaiaawMcaaKqzGeGaeyypa0JaaGOmaiaaiwda caaI3aGaaGOnaaaa@4AAC@ sboxes should be calculated.

Rechecking the candidate keys complexity: Since in each group, 24 keys should be checked and the probability of matching is 2-4, so 2 4 × 2 4 =1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa WcdaahaaqabeaajugWaiaaisdaaaqcLbsacqGHxdaTcaaIYaWcdaah aaqabeaajugWaiabgkHiTiaaisdaaaqcLbsacqGH9aqpcaaIXaaaaa@4212@ remaining key candidate should be tested to get the correct key.

In total, the computational complexity of our attack is given by: 2 76 ( 162+3330+2756 527 +1 )= 2 79.64 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa WcdaahaaqabeaajugWaiaaiEdacaaI2aaaaKqbaoaabmaakeaalmaa laaakeaajugWaiaaigdacaaI2aGaaGOmaiabgUcaRiaaiodacaaIZa GaaG4maiaaicdacqGHRaWkcaaIYaGaaG4naiaaiwdacaaI2aaakeaa jugWaiaaiwdacaaIYaGaaG4naaaajugibiabgUcaRiaaigdaaOGaay jkaiaawMcaaKqzGeGaeyypa0JaaGOmaSWaaWbaaeqabaqcLbmacaaI 3aGaaGyoaiaac6cacaaI2aGaaGinaaaaaaa@5483@

Data complexity: We need at most 217 chosen ciphertexts for performing a biclique attack.

Independent asymmetric biclique attack on full round PRESENT-128: In this section, we describe our attack on PRESENT-128. Since a biclique attack on full round PRESENT-128 is similar to PRESENT-80, we only state our results.

The partial keys used in RK27, RK28, RK29, RK30 and RK31 are as fallow:

RK27: ( k 16 ,..., k 0 , k 127 ,..., k 81 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcfa4aaeWaaO qaaKqzGeGaam4AaSWaaSbaaeaajugWaiaaigdacaaI2aaaleqaaKqz GeGaaiilaiaac6cacaGGUaGaaiOlaiaacYcacaWGRbWcdaWgaaqaaK qzadGaaGimaaWcbeaajugibiaacYcacaWGRbWcdaWgaaqaaKqzadGa aGymaiaaikdacaaI3aaaleqaaKqzGeGaaiilaiaac6cacaGGUaGaai OlaiaacYcacaWGRbWcdaWgaaqaaKqzadGaaGioaiaaigdaaSqabaaa kiaawIcacaGLPaaaaaa@5137@

RK28: ( k 83 ,..., k 20 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcfa4aaeWaaO qaaKqzGeGaam4AaSWaaSbaaeaajugWaiaaiIdacaaIZaaaleqaaKqz GeGaaiilaiaac6cacaGGUaGaaiOlaiaacYcacaWGRbWcdaWgaaqaaK qzadGaaGOmaiaaicdaaSqabaaakiaawIcacaGLPaaaaaa@4454@

RK29 ( k 22 ,..., k 0 , k 127 ,..., k 87 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcfa4aaeWaaO qaaKqzGeGaam4AaSWaaSbaaeaajugWaiaaikdacaaIYaaaleqaaKqz GeGaaiilaiaac6cacaGGUaGaaiOlaiaacYcacaWGRbqcfa4aaSbaaS qaaKqzadGaaGimaaWcbeaajugibiaacYcacaWGRbqcfa4aaSbaaWqa aKqzadGaaGymaiaaikdacaaI3aaameqaaKqzGeGaaiilaiaac6caca GGUaGaaiOlaiaacYcacaWGRbqcfa4aaSbaaWqaaKqzadGaaGioaiaa iEdaaWqabaaakiaawIcacaGLPaaaaaa@52E8@

RK30: ( k 89 ,..., k 26 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcfa4aaeWaaO qaaKqzGeGaam4AaSWaaSbaaeaajugWaiaaiIdacaaI5aaaleqaaKqz GeGaaiilaiaac6cacaGGUaGaaiOlaiaacYcacaWGRbWcdaWgaaqaaK qzadGaaGOmaiaaiAdaaSqabaaakiaawIcacaGLPaaaaaa@4460@

RK31: ( k 28 ,..., k 0 , k 127 ,... k 93 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcfa4aaeWaaO qaaKqzGeGaam4AaSWaaSbaaeaajugWaiaaikdacaaI4aaaleqaaKqz GeGaaiilaiaac6cacaGGUaGaaiOlaiaacYcacaWGRbWcdaWgaaqaaK qzadGaaGimaaWcbeaajugibiaacYcacaWGRbqcfa4aaSbaaWqaaKqz adGaaGymaiaaikdacaaI3aaameqaaKqzGeGaaiilaiaac6cacaGGUa GaaiOlaiaadUgalmaaBaaameaajugWaiaaiMdacaaIZaaameqaaaGc caGLOaGaayzkaaaaaa@512A@

We construct (1, 3)-dimensional asymmetric biclique on the ciphertext side for round 27-31. The key differences

Δ i k MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacqqHuo arlmaaDaaabaqcLbmacaWGPbaaleaajugWaiaadUgaaaaaaa@3C5D@ are chosen by varying k19 in forward direction and the key differences j k MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacqGHhi s0lmaaDaaabaqcLbmacaWGQbaaleaajugWaiaadUgaaaaaaa@3C7E@ are chosen by varying ( k 92 , k 91 , k 90 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcfa4aaeWaaO qaaKqzGeGaam4AaSWaaSbaaeaajugWaiaaiMdacaaIYaaaleqaaKqz GeGaaiilaiaadUgalmaaBaaabaqcLbmacaaI5aGaaGymaaWcbeaaju gibiaacYcacaWGRbqcfa4aaSbaaSqaaKqzadGaaGyoaiaaicdaaSqa baaakiaawIcacaGLPaaaaaa@4735@ in backward direction. The biclique construction is illustrated in Figure 6. Here, f, g1 and g2 are subciphers for rounds 28-31, rounds 1-14 and rounds 15-27 respectively. As we see, the Δ i k MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacqqHuo arlmaaDaaabaqcLbmacaWGPbaaleaajugWaiaadUgaaaaaaa@3C5D@ affects only 17 bits of ciphertext, and since we use the same value for c0 in each biclique, the data complexity does not exceed 217. We take matching variable v; the least significant 4 bits of the output value after round 14 as shown in Figure 7.

Complexity

Each round of PRESENT-128 together with one round of key schedule takes 18 sbox computations, so the complexity of single encryption equals calculation of 31×18=558 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIZa GaaGymaiabgEna0kaaigdacaaI4aGaeyypa0JaaGynaiaaiwdacaaI 4aaaaa@3ED7@ sboxes. The complexity of our attack is given by:

 

Biclique complexity: In forward direction, 5 sboxes in round transformation and one sbox in key schedule should be calculated 2 times. The active sboxes are visualized by the red trail in forward direction in Figure 6. In backward direction, 15 sboxes should be calculated 23=8 times. The active sboxes are visualized by the blue trail in backward direction in Figure 6. The remaining 44 sboxes are calculated once. In total 6×2+15×8+44=176 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaI2a Gaey41aqRaaGOmaiabgUcaRiaaigdacaaI1aGaey41aqRaaGioaiab gUcaRiaaisdacaaI0aGaeyypa0JaaGymaiaaiEdacaaI2aaaaa@44ED@ sboxes should be calculated to construct a biclique.

Matching complexity: In forward direction, 2+4+11×16+4=186 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa Gaey4kaSIaaGinaiabgUcaRiaaigdacaaIXaGaey41aqRaaGymaiaa iAdacqGHRaWkcaaI0aGaeyypa0JaaGymaiaaiIdacaaI2aaaaa@43AE@ sboxes in round transformation and one sbox in key schedule should be calculated 2 3 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa WcdaahaaqabeaajugWaiaaiodaaaaaaa@3959@ times and 26 sboxes are calculated once only. The active sboxes are visualized by the blue trail in forward direction in Figure 7. This procedure is repeated 2 times for all p i i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGWb WcdaWgaaqaaKqzadGaamyAaaWcbeaajugibiaadMgaaaa@3B4A@ 's, so in forward direction 2×( 2 3 ×187+26 )=3044 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa Gaey41aqBcfa4aaeWaaOqaaKqzGeGaaGOmaSWaaWbaaeqabaqcLbma caaIZaaaaKqzGeGaey41aqRaaGymaiaaiIdacaaI3aGaey4kaSIaaG OmaiaaiAdaaOGaayjkaiaawMcaaKqzGeGaeyypa0JaaG4maiaaicda caaI0aGaaGinaaaa@4AB0@ , sboxes should be calculated. In backward direction, 43 sboxes are calculated once and 1+4+8×16+4+1=138 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIXa Gaey4kaSIaaGinaiabgUcaRiaaiIdacqGHxdaTcaaIXaGaaGOnaiab gUcaRiaaisdacqGHRaWkcaaIXaGaeyypa0JaaGymaiaaiodacaaI4a aaaa@4493@ sboxes in round transformation should be calculated 2 times. The active sboxes are visualized by the red trail in backward direction in Figure 7. This procedure is repeated 23 times for all s j MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGZb WcdaWgaaqaaKqzadGaamOAaaWcbeaaaaa@39D1@ 's, so in backward direction, 2 3 ×( 2×138+43 )=2552 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa WcdaahaaqabeaajugWaiaaiodaaaqcLbsacqGHxdaTjuaGdaqadaGc baqcLbsacaaIYaGaey41aqRaaGymaiaaiodacaaI4aGaey4kaSIaaG inaiaaiodaaOGaayjkaiaawMcaaKqzGeGaeyypa0JaaGOmaiaaiwda caaI1aGaaGOmaaaa@4AAE@ sboxes should be calculated.

Rechecking the candidate keys complexity: Since in each group, 24 keys should be checked and the probability of matching is 2-4, so 2 4 × 2 4 =1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa WcdaahaaqabeaajugWaiaaisdaaaqcLbsacqGHxdaTcaaIYaWcdaah aaqabeaajugWaiabgkHiTiaaisdaaaqcLbsacqGH9aqpcaaIXaaaaa@4212@ remaining key candidate should be tested to reach the correct key.

In total, the computational complexity of our attack is given by: 2 124 ×( 176+3044+2552 558 +1 )= 2 127.50 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaaIYa WcdaahaaqabeaajugWaiaaigdacaaIYaGaaGinaaaajugibiabgEna 0MqbaoaabmaakeaalmaalaaakeaajugWaiaaigdacaaI3aGaaGOnai abgUcaRiaaiodacaaIWaGaaGinaiaaisdacqGHRaWkcaaIYaGaaGyn aiaaiwdacaaIYaaakeaajugWaiaaiwdacaaI1aGaaGioaaaajugibi abgUcaRiaaigdaaOGaayjkaiaawMcaaKqzGeGaeyypa0JaaGOmaSWa aWbaaeqabaqcLbmacaaIXaGaaGOmaiaaiEdacaGGUaGaaGynaiaaic daaaaaaa@5891@

Data complexity: We need at most 217 chosen ciphertexts for performing a biclique attack.

Figure 1 round function of Present.

Figure2 ( d 1 , d 2 )
MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8 qadaqadaWdaeaapeGaamiza8aadaWgaaWcbaWdbiaaigdaa8aabeaa k8qacaGGSaGaamiza8aadaWgaaWcbaWdbiaaikdaa8aabeaaaOWdbi aawIcacaGLPaaaaaa@3CA0@ dimensional asymmetric biclique in the ciphertext side.

Figure 3 Representation of   ( d1,d2 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8 qadaqadaWdaeaapeGaamizaiaaigdacaGGSaGaamizaiaaikdaaiaa wIcacaGLPaaaaaa@3BB8@ -dimensional asymmetric biclique cryptanalysis.

Figure 4 3-round (1,3)-asymmetric biclique for Present-80.

Figure 5 Recompilation in forward and backward direction for Present-80.

Figure 6 4-round (1,3)-asymmetric biclique for Present-128.

Figure 7 Recompilation in forward and backward direction for Present-128.

Version

Round

Computation

Data

Reference

PRESENT-80

full

279.76

223

15

full

279.49

225

16

full

279.86

223

17

full

279.64

217

This attack

PRESENT-128

full

2127.81

219

15

full

2127.32

223

16

full

2127.91

219

17

 

full

2127.5

217

This attack

Table 1 Summary of biclique cryptanalytic results on PRESENT

Outline: First in section 2, the structure of PRESENT is described. We overview biclique cryptanalysis in section3.

Section 4 contains a detailed description of our attack and compute complexity.

Finally, we conclude our work in section 5.

Conclusion

In this paper, we present a Biclique cryptanalysis of full round PRESENT with redduced data complexity. . In this paperwe use asymmetric independent biclique attack on full round PRESENT. We construct a asymmetric biclique in ciphertext side for round 29-31 of PRESENT-80 and round 27-31 of PRESENT-128.

The datacomplexities of our attacks are less than before, which for a fullround attack on PRESENT-80 and PRESENT-128 are 217 plain text-ciphertext pairs. The computational complexity is slightly improved

Acknowledgements

None.

Conflict of interest

The author declares there are no conflicts of interests.

References

  1. Dmitry Khovratovich, Christian Rechberger, Alexandra Savelieva. Bicliques for Preimages: Attacks on Skein-512 and the SHA-2 Family. 2012;1:244–263.
  2. Andrey Bogdanov, Dmitry Khovratovich, Christian Rechberger. Biclique Cryptanalysis of the Full AES. Advances in Cryptology – asiacrypt.2011;1:344–371.
  3. Dmitry Khovratovich, Gaëtan Leurent, Christian Rechberger. Narrow-Bicliques: Cryptanalysis of Full IDEA. Advances in Cryptology – eurocrypt. 2012;392–410.
  4. Yanfeng Wang, Wenling Wu, Xiaoli Yu. Biclique Cryptanalysis of Reduced-Round Piccolo Block Cipher. In Mark Dermot Ryan, Ben Smyth, Guilin Wang, editors. Information Security Practice and Experience. 2012;337–352.
  5. Yanfeng Wang, Wenling Wu, Xiaoli Yu, et al. Security on L Block against Biclique Cryptanalysis. Information Security Applications. 2012;1–14.
  6. Hamid Mala. Biclique Cryptanalysis of the Block Cipher square. 2014;8(3):207–212.
  7. Zahra Ahmadian, Mahmoud Salmasizadeh, Mohammad Reza Aref. Biclique Cryptanalysis of the Full-RoundKLEIN Block Cipher. Iet Information Security.2015;9(5):294–301.
  8. Shaozhen Chen, Tianmin Xu. Biclique Attack of the Full ARIA-256. 2012.
  9. Mustafa Coban, Ferhat Karakoc, Özkan Boztacs. Biclique Cryptanalysis of TWINE. Cryptology and Network Security. 2012;1:43–55.
  10. Deukjo Hong, Bonwook Koo, Daesung Kwon. Biclique Attack on the Full HIGHT. Howon Kim, editor. Information Security and Cryptology – ICISC. 2011;365–374.
  11. Andrey Bogdanov, Lars R Knudsen, Gregor Leander, et al. PRESENT: An Ultra-Lightweight Block Cipher. In: Pascal Paillier, Ingrid Verbauwhede, editors. IACR, India; 2007.
  12. Kitae Jeong, Hyung Chul Kang, Changhoon Lee, et al. Biclique cryptanalysis of lightweight block ciphers PRESENT, piccolo and led. 2012.
  13. Farzaneh Abed, Christian Foler, Eik List, et al. BicliqueCryptanalysis of PRESENTand LED Lightweight Ciphers. 2012.
  14. Changhoon Lee. Biclique cryptanalysis of PRESENT-80 and PRESENT-128.J Supercomput. 2014;(70):95–103.
  15. Bar On A, Dinur I, Dunkelman O, et al. Improved Analysis of Zorro-Like Ciphers. 2014.
  16. Blondeau C, Bogdanov A, Wang M. On the (In) Equivalence of Impossible Differential and Zero-Correlation Distinguishers for Feistel- and Skipjack-Type Ciphers. In: Boureanu I, Owesarski P, Vaudenay S, editors. Applied Cryptography and Network Security. 2014;271–288.
  17. Bogdanov A, Geng H, Wang M, et al. Zero-Correlation Linear Cryptanalysis with FFT and Improved Attacks on ISO Standards Camellia and CLEFIA. In: Lange T, Lauter K, Lisonek P, editors. Selected Areas in Cryptography – SAC. 2013;306–323.
  18. Donghoon Chang, Mohona Ghosh, Somitra Kumar Sanadhya. Biclique Cryptanalysis of full round AES-128 based hashing modes. In: Dongdai Lin, Moti Yung, Xiaofeng Wang, editors. Inscrypt. 2015;2:3–21.
Creative Commons Attribution License

©2018 Dehkordi, et al. This is an open access article distributed under the terms of the, which permits unrestricted use, distribution, and build upon your work non-commercially.