1
Modified AES Algorithm Using Multiple S-Boxes
Instructor: Truong Tuan Anh, PhD
S: Chu Xuân Tình - 1870583
2
Modified AES Algorithm Using Multiple
S-Boxes
1. Introduction
2. Advance Encryption Standard (AES)
3. Modified AES Algorithm
4. Avaluation
AES - Modifier
3
AES - introdution
Ø In 2000, the NIST formally adopted the AES
encryption algorithm and published it as a federal
standard under the designation FIPS-197.
Ø It was chosen because of its security,
performance, efficiency, implement ability, and low
memory requirements.
• Rijndael was selected as the AES
– Designed by Vincent Rijmen and Joan Daemen
in Belgium
4
AES - introdution
Ø The AES Cipher - Rijndael
• An iterative
– processes data as block of 4 columns of 4 bytes
(128 bits)
– operates on entire data block in every round
• Rijndael design:
– simplicity
– has 128/192/256 bit keys, 128 bits data
– resistant against known attacks
– speed and code compactness on many CPUs
• The MixColumn function in the AES algorithm is
an important property of the cipher
5
AES - introdution
Ø The MixColumn function in the AES algorithm
is an important property of the cipher
ü It provides strength against differential and linear
attacks due to the complexity of its mathematical
operations.
ü Require computational resources in software
implementation.
ü Replacing the MixColumn function, the speed
performance of the AES algorithm will be
improved.
ü Propose for a modified AES algorithm using
multiple S-Boxes.
6
AES - Classfication
AES - Basic
7
AES
Plaintext (128 bits)
Ciphertext (128 bits)
Key (128-256 bits)
AES Conceptual Scheme
AES - Basic
8
Ø Multiple rounds
• Rounds are (almost) identical
– First and last round are a little different
High Level Description
No MixColumns
AES - Overall Structure
AES - Cipher
AES -128-bit values
12
• Data block viewed as 4-by-4 table of bytes
• Represented as 4 by 4 matrix of 8-bit
bytes.
• Key is expanded to array of 32 bits words
1 byte
AES - Data Unit
AES - Unit Transformation
AES - Changing Plaintext to State
AES -Details of Each Round
AES- SubBytes: Byte Substitution
• A simple substitution of each byte
– provide a confusion
• Uses one S-box of 16x16 bytes containing a permutation of all 256
8-bit values
• Each byte of state is replaced by byte indexed by row (left 4-bits) &
column (right 4-bits)
– eg. byte {95} is replaced by byte in row 9 column 5
– which has value {2A}
• S-box constructed using defined transformation of values in Galois
Field- GF(28)
AES - SubBytes and InvSubBytes
AES - SubBytes Operation
• The SubBytes operation involves 16 independent byte-
to-byte transformations. • Interpret the byte as two hexadecimal
digits xy
• SW implementation, use row (x) and
column (y) as lookup pointer
S1,1 = xy16
x’y’16
AES - SubBytes Table
• Implement by Table Lookup
AES - InvSubBytes Table
Sample SubByte Transformation
• The SubBytes and InvSubBytes
transformations are inverses of each other.
AES - ShiftRows
• Shifting, which permutes the bytes.
• A circular byte shift in each each
– 1st row is unchanged
– 2nd row does 1 byte circular shift to left
– 3rd row does 2 byte circular shift to left
– 4th row does 3 byte circular shift to left
• In the encryption, the transformation is
called ShiftRows
• In the decryption, the transformation is
called InvShiftRows and the shifting is to
the right
AES - ShiftRows Scheme
AES - ShiftRows and InvShiftRows
AES - MixColumns
• ShiftRows and MixColumns provide diffusion to
the cipher
• Each column is processed separately
• Each byte is replaced by a value dependent on
all 4 bytes in the column
• Effectively a matrix multiplication in GF(28) using
prime poly m(x) =x8+x4+x3+x+1
AES -MixClumns Scheme
The MixColumns transformation operates at the column level; it
transforms each column of the state to a new column.
AES-MixColumn & InvMixColumn
AES - AddRoundKey
• XOR state with 128-bits of the round key
• AddRoundKey proceeds one column at a
time.
– adds a round key word with each state
column matrix
– the operation is matrix addition
• Inverse for decryption identical
– since XOR own inverse, with reversed keys
• Designed to be as simple as possible
AES - AddRoundKey Scheme
AES Round
AES Key Scheduling
• takes 128-bits (16-bytes) key and expands
into array of 44 32-bit words
AES -Key Expansion Scheme
AES -Key Expansion submodule
• RotWord performs a one byte circular left shift on a word
For example:
RotWord[b0,b1,b2,b3] = [b1,b2,b3,b0]
• SubWord performs a byte substitution on each byte of
input word using the S-box
• SubWord(RotWord(temp)) is XORed with RCon[j] – the
round constant
AES Security
• AES was designed after DES.
• Most of the known attacks on DES were already tested
on AES.
• Brute-Force Attack
– AES is definitely more secure than DES due to the larger-size
key.
• Statistical Attacks
– Numerous tests have failed to do statistical analysis of the
ciphertext
• Differential and Linear Attacks
– There are no differential and linear attacks on AES as yet.
AES ALGORITHM USING MULTIPLE S-BOXES
vPROPOSED MODIFIED 128-AES ALGORITHM
USING MULTIPLE S-BOXES
Ø The MixColumns function is perceive to be
requiring more computational resources in
software implementation as compared to the
other functions
Ø Propose for a modified version of the 128-AES
algorithm using two substitution boxes
ü The first S-Box is the Rijndael S-Box
ü The second S-Box is constructed using XOR
operation and affine transformation
AES ALGORITHM USING MULTIPLE S-BOXES
AES - CONSTRUCTION OF THE NEW S-BOX
vThe second S-Box is derived from the
original S- Box as designed in the AES
ØExclusive OR Operation
§ each cell in the AES-Rijndael will be
XORed with 7F
AES-Rijndael[x,y] XOR (7F)
§ The Key[i] shall be any hexadecimal value
between 00 to FF (Table 1. AES-
2SboxXOR7F)
AES - CONSTRUCTION OF THE NEW S-BOX
AES - CONSTRUCTION OF THE NEW S-BOX
vThe second S-Box is derived from the
original S- Box as designed in the AES
ØExclusive OR Operation
ØAffine Transform Operation
ü After creating the initial values of AES-
2SboxXOR
ü Scramble the bits in each byte value, we next
apply the following transformation to each bit bi
as stored in the initial AES-2SboxXOR7F:
AES - CONSTRUCTION OF THE NEW S-BOX
ØAffine Transform Operation
ü For the inverse AES-2SboxXOR, the following
transformation to each bit was used for bit
scrambling:
AES - CONSTRUCTION OF THE NEW S-BOX
EVALUATION RESULTS
EVALUATION RESULTS
EVALUATION RESULTS
CONCLUSION
üModified AES algorithm using multiple
S-boxes.
üWe observed that the speed performance
greatly increased in the modified AES
algorithm using multiple S-Boxes, while
the security side has slightly weakened.
üEasily implemented using cheap
processors and a minimum amount of
memory.
üVery efficient
49
Referents
• [1] National Institute of Standards and
Technology, Advanced Encryption Standard,
FIPS 197 (2011).
• [2] Paper “Modified AES Algorithm Using
Multiple S-Boxes”
• [3] Wiki & slide & Internet.
50
51
Thanks for your attention!

Modified aes algorithm using multiple s boxes

  • 1.
    1 Modified AES AlgorithmUsing Multiple S-Boxes Instructor: Truong Tuan Anh, PhD S: Chu Xuân Tình - 1870583
  • 2.
    2 Modified AES AlgorithmUsing Multiple S-Boxes 1. Introduction 2. Advance Encryption Standard (AES) 3. Modified AES Algorithm 4. Avaluation AES - Modifier
  • 3.
    3 AES - introdution ØIn 2000, the NIST formally adopted the AES encryption algorithm and published it as a federal standard under the designation FIPS-197. Ø It was chosen because of its security, performance, efficiency, implement ability, and low memory requirements. • Rijndael was selected as the AES – Designed by Vincent Rijmen and Joan Daemen in Belgium
  • 4.
    4 AES - introdution ØThe AES Cipher - Rijndael • An iterative – processes data as block of 4 columns of 4 bytes (128 bits) – operates on entire data block in every round • Rijndael design: – simplicity – has 128/192/256 bit keys, 128 bits data – resistant against known attacks – speed and code compactness on many CPUs • The MixColumn function in the AES algorithm is an important property of the cipher
  • 5.
    5 AES - introdution ØThe MixColumn function in the AES algorithm is an important property of the cipher ü It provides strength against differential and linear attacks due to the complexity of its mathematical operations. ü Require computational resources in software implementation. ü Replacing the MixColumn function, the speed performance of the AES algorithm will be improved. ü Propose for a modified AES algorithm using multiple S-Boxes.
  • 6.
  • 7.
    AES - Basic 7 AES Plaintext(128 bits) Ciphertext (128 bits) Key (128-256 bits) AES Conceptual Scheme
  • 8.
    AES - Basic 8 ØMultiple rounds • Rounds are (almost) identical – First and last round are a little different
  • 9.
  • 10.
    AES - OverallStructure
  • 11.
  • 12.
    AES -128-bit values 12 •Data block viewed as 4-by-4 table of bytes • Represented as 4 by 4 matrix of 8-bit bytes. • Key is expanded to array of 32 bits words 1 byte
  • 13.
  • 14.
    AES - UnitTransformation
  • 15.
    AES - ChangingPlaintext to State
  • 16.
    AES -Details ofEach Round
  • 17.
    AES- SubBytes: ByteSubstitution • A simple substitution of each byte – provide a confusion • Uses one S-box of 16x16 bytes containing a permutation of all 256 8-bit values • Each byte of state is replaced by byte indexed by row (left 4-bits) & column (right 4-bits) – eg. byte {95} is replaced by byte in row 9 column 5 – which has value {2A} • S-box constructed using defined transformation of values in Galois Field- GF(28)
  • 18.
    AES - SubBytesand InvSubBytes
  • 19.
    AES - SubBytesOperation • The SubBytes operation involves 16 independent byte- to-byte transformations. • Interpret the byte as two hexadecimal digits xy • SW implementation, use row (x) and column (y) as lookup pointer S1,1 = xy16 x’y’16
  • 20.
    AES - SubBytesTable • Implement by Table Lookup
  • 21.
  • 22.
    Sample SubByte Transformation •The SubBytes and InvSubBytes transformations are inverses of each other.
  • 23.
    AES - ShiftRows •Shifting, which permutes the bytes. • A circular byte shift in each each – 1st row is unchanged – 2nd row does 1 byte circular shift to left – 3rd row does 2 byte circular shift to left – 4th row does 3 byte circular shift to left • In the encryption, the transformation is called ShiftRows • In the decryption, the transformation is called InvShiftRows and the shifting is to the right
  • 24.
  • 25.
    AES - ShiftRowsand InvShiftRows
  • 26.
    AES - MixColumns •ShiftRows and MixColumns provide diffusion to the cipher • Each column is processed separately • Each byte is replaced by a value dependent on all 4 bytes in the column • Effectively a matrix multiplication in GF(28) using prime poly m(x) =x8+x4+x3+x+1
  • 27.
    AES -MixClumns Scheme TheMixColumns transformation operates at the column level; it transforms each column of the state to a new column.
  • 28.
  • 29.
    AES - AddRoundKey •XOR state with 128-bits of the round key • AddRoundKey proceeds one column at a time. – adds a round key word with each state column matrix – the operation is matrix addition • Inverse for decryption identical – since XOR own inverse, with reversed keys • Designed to be as simple as possible
  • 30.
  • 31.
  • 32.
    AES Key Scheduling •takes 128-bits (16-bytes) key and expands into array of 44 32-bit words
  • 33.
  • 34.
    AES -Key Expansionsubmodule • RotWord performs a one byte circular left shift on a word For example: RotWord[b0,b1,b2,b3] = [b1,b2,b3,b0] • SubWord performs a byte substitution on each byte of input word using the S-box • SubWord(RotWord(temp)) is XORed with RCon[j] – the round constant
  • 35.
    AES Security • AESwas designed after DES. • Most of the known attacks on DES were already tested on AES. • Brute-Force Attack – AES is definitely more secure than DES due to the larger-size key. • Statistical Attacks – Numerous tests have failed to do statistical analysis of the ciphertext • Differential and Linear Attacks – There are no differential and linear attacks on AES as yet.
  • 36.
    AES ALGORITHM USINGMULTIPLE S-BOXES vPROPOSED MODIFIED 128-AES ALGORITHM USING MULTIPLE S-BOXES Ø The MixColumns function is perceive to be requiring more computational resources in software implementation as compared to the other functions Ø Propose for a modified version of the 128-AES algorithm using two substitution boxes ü The first S-Box is the Rijndael S-Box ü The second S-Box is constructed using XOR operation and affine transformation
  • 37.
    AES ALGORITHM USINGMULTIPLE S-BOXES
  • 38.
    AES - CONSTRUCTIONOF THE NEW S-BOX vThe second S-Box is derived from the original S- Box as designed in the AES ØExclusive OR Operation § each cell in the AES-Rijndael will be XORed with 7F AES-Rijndael[x,y] XOR (7F) § The Key[i] shall be any hexadecimal value between 00 to FF (Table 1. AES- 2SboxXOR7F)
  • 39.
    AES - CONSTRUCTIONOF THE NEW S-BOX
  • 40.
    AES - CONSTRUCTIONOF THE NEW S-BOX vThe second S-Box is derived from the original S- Box as designed in the AES ØExclusive OR Operation ØAffine Transform Operation ü After creating the initial values of AES- 2SboxXOR ü Scramble the bits in each byte value, we next apply the following transformation to each bit bi as stored in the initial AES-2SboxXOR7F:
  • 41.
    AES - CONSTRUCTIONOF THE NEW S-BOX ØAffine Transform Operation ü For the inverse AES-2SboxXOR, the following transformation to each bit was used for bit scrambling:
  • 42.
    AES - CONSTRUCTIONOF THE NEW S-BOX
  • 43.
  • 44.
  • 45.
  • 46.
    CONCLUSION üModified AES algorithmusing multiple S-boxes. üWe observed that the speed performance greatly increased in the modified AES algorithm using multiple S-Boxes, while the security side has slightly weakened. üEasily implemented using cheap processors and a minimum amount of memory. üVery efficient 49
  • 47.
    Referents • [1] NationalInstitute of Standards and Technology, Advanced Encryption Standard, FIPS 197 (2011). • [2] Paper “Modified AES Algorithm Using Multiple S-Boxes” • [3] Wiki & slide & Internet. 50
  • 48.