Sie sind auf Seite 1von 46

TECHNOLOGICAL INSTITUTE OF THE PHILIPPINES QUEZON CITY

Graduate Programs

A Modified Key Scheduling Operation of


International Data Encryption Algorithm
using Serpent Key Scheduling
Gerald T. Cayabyab
Doctor in Information Technology Student
Dissertation 1
June 10, 2019 – T.I.P. Quezon City gerald.cayabyab@gmail.com
Introduction
• Huge amount of
vital information is
becoming available
in the cloud.

• There are 4.39


Billion of Users as
of 2019

Figure 1. Internet Users as of 2019


https://www.internetworldstats.com/stats.htm
Modified Key Scheduling Operation of IDEA
Introduction
• This year’s numbers of the
internet user growth actually
accelerated in the past year,
with more than 366 million
new users coming online.
• Internet users are growing at
a rate of more than 11 new
users per second, which
results in that impressive total
of one million new users each
Figure 2. Active Internet Users as of January 2019 day.
Source: https://datareportal.com/reports/digital-2019-global-digital-overview
Modified Key Scheduling Operation of IDEA
Introduction

• Protecting the information or


any related entity of the system
from theft or damage to any
entity plays a vital role in
protecting the confidentiality,
integrity, and availability of any
asset against threat and
vulnerability.
Figure 3. Cyber Security Statistics in 2019

Source: https://www.stanfieldit.com/wp-content/uploads/Cyber-Security-Statistics-2019.png
Modified Key Scheduling Operation of IDEA
Introduction
• Massive reports of computer
related crimes had identified
issues of data breaches. At the
point that an attack becomes
successful, entities who own
these data are on great danger.
• These data are used for
important transactions such us
business, education,
government security to name a
Figure 3. Cyber Security Statistics in 2019
few.
Source: https://www.stanfieldit.com/wp-content/uploads/Cyber-Security-Statistics-2019.png
Modified Key Scheduling Operation of IDEA
Introduction
• Cryptography is a field of
science that learns about
how to conceal an important
information.
• Files are turned into forms
that cannot be read by
anyone and return it back to
the original data by using
various techniques.
• These techniques ensure that
information cannot be known
by any unwanted party. Figure 4. Cryptography

Modified Key Scheduling Operation of IDEA


Introduction

Original Encryption Key


Text or Decryption Scheduling
Plaintext Process Operation

Modified Key Scheduling Operation of IDEA


International Data Encryption Algorithm
International Data
Encryption Algorithm (IDEA)
• One of the many security algorithms that are
used for security purposes.
• It is proven secured and it applies block
encryption algorithm, which permits effective
protection of transmitted and stored data against
unauthorized users.
Figure 2. Internet Growth as of January 2019
Source: https://datareportal.com/reports/digital-2019-global-digital-overview
Modified Key Scheduling Operation of IDEA
About IDEA
IDEA’s Algorithmic Structures
1) Entirely avoids the use of any lookup
tables or S-boxes;
2) Different key sub-blocks are used every
round; and
3) Encryption process is identical to the
decryption process.

Modified Key Scheduling Operation of IDEA


About IDEA
• IDEA provides a strong security level against differential
attacks and performs multiple operations to increase its
security level.

• The algorithm is also using a 128 bits key size for stronger
encryption.

• It was identified that IDEA do not have any weakness related


to differential and linear attacks.

Modified Key Scheduling Operation of IDEA


Problems Discovered in IDEA
• It was discovered that weak keys made IDEA vulnerable
to exploits(Rafighi & Moatazedi, 2017).
• This implies that if one generates a random key to
encrypt a message, weak keys are very unlikely to give
rise to a security problem (Afzal et al., 2015).
• Susceptibility regarding different classes of weak keys
and minimum rounds version were observed in IDEA.
(H. Singh, Danewalia, Chopra, & N, 2014).
• Weak key scheduling of IDEA results to the vulnerability
of the encryption algorithm (Prajwal & Prema, 2018a).
Modified Key Scheduling Operation of IDEA
Problems Discovered in IDEA
• The IDEA encryption algorithm is a symmetric technique that
employs a simple rotations or permutations in the key
schedule algorithm.
• IDEA uses only simple permutations to generate the sub-
keys from the secret key (Daemen, Govaerts, & Vandewalle,
2007).
• This cyclic change of secrete keys is the reason why IDEA
key scheduling algorithm is very weak (Rafighi & Moatazedi,
2017).

Modified Key Scheduling Operation of IDEA


Problems Discovered in IDEA
• After the development of cryptanalysis techniques(Yegireddi
& Kumar, 2017), such as linear and differential attacks began
to use the non-linear components in the key schedule
algorithm.
• These components were used to avoid different attacks due
to weak key schedule (Afzal et al., 2015).
• Unfortunately, the use of these non-linear components
generating nonrandom and related sub keys make even a
strong cipher algorithm vulnerable to attacks (Prajwal &
Prema, 2018a).
• The sub keys of this algorithm are categorized in the class of
weak keys (Prajwal & Prema, 2018a).
Modified Key Scheduling Operation of IDEA
IDEA’s Key Scheduling Operation
Each round uses six 16-bit sub keys,
while the half-round uses four, a total
of 52 for 8.5 rounds. The first eight
sub keys are extracted directly from
the key, with K1 fro the first round
being the lower 16 bits; further groups
of eight keys are created by rotating
the main key left 25 bits between each
group of eight. This means that it is
rotated less than once per round, on
average, for a total of six rotations.
Figure 3. Key Scheduling Operation of IDEA
Modified Key Scheduling Operation of IDEA
Project Objectives

• The study aims to modify the key


scheduling operation of IDEA for both
encryption and decryption process in
securing text files.

Modified Key Scheduling Operation of IDEA


Project Objectives
• Specifically, this study aims to:
A. Modify the IDEA key scheduling operation to become
256-bit key using affine transformation, primitive
polynomial, and golden ratio;
B. Conduct performance analysis to measure memory
space consumption, time required to complete the
operations, and throughput of the modified
technique; and
C. Compare the original IDEA to the proposed modified
IDEA in terms of security.

Modified Key Scheduling Operation of IDEA


Significance of the Study
• The design and implementation of the proposed modification of IDEA
would increase its cryptographic strength

• The use of strong encryption guarantees data is safe against waves


of data breaches and cyber-attacks. Even though there are several
cryptanalysis to challenge the security of the algorithm there are
continuous study that will address different exploitation of its
vulnerability and strengthen the scheme and resolve any attack.

• The design of a strong key schedule is a crucial part of cipher design


and an important part of any block cipher algorithm. If the key
schedule algorithm is not strong enough then the whole
cryptosystem can be compromised.
Modified Key Scheduling Operation of IDEA
Scope and Delimitations
The proposed study is focus on the modification of
IDEA’s key schedule operation:

• Use 256 Bit secret key, and 32 Bit block partition.

• Operate with 128-Bit plaintext and 32-Bit ciphertext blocks


partition.

• Implement affine transformation, primitive polynomial, and


golden ratio to generate keys for encryption and decryption
process.
Modified Key Scheduling Operation of IDEA
Scope and Delimitations
For the evaluation criteria to use in the
performance analysis, comparison of the
original IDEA to the Modified IDEA are as
follows:
• Memory space consumption
• Time required to complete the operations
• Throughput of the modified technique

Modified Key Scheduling Operation of IDEA


Concept of the Study

Modified Key Scheduling Operation of IDEA


Operational Framework/Materials
Software:
• The use of Eclipse will be utilized as an
integrated development environment
software. Java will also be used as a
programming language for the
development of the simulation of the
modified algorithm. This may be changed
as necessary
Modified Key Scheduling Operation of IDEA
Operational Framework/Materials
Hardware:
• Processor Intel® Core™ i7 -8750H CPU @
2.20 GHz, or faster processor

• Internal Memory 8.0 GB RAM

• Hard Disk Space 16GB

Modified Key Scheduling Operation of IDEA


Operational Framework/Materials
Data:

• The input data that will be used in the


simulation of the modified IDEA that
includes any characters in the extended
ASCII code.

Modified Key Scheduling Operation of IDEA


Experimental Design
Figure 2 shows the block diagram of the modified IDEA.

Figure 2. Block Level Description Modified IDEA


Modified Key Scheduling Operation of IDEA
Experimental Design
The process starts with the plaintext message and secret key as
inputs.

Figure 2. Block Level Description Modified IDEA


Modified Key Scheduling Operation of IDEA
Experimental Design
It will then be encrypted using the proposed modified algorithm.

Figure 2. Block Level Description Modified IDEA


Modified Key Scheduling Operation of IDEA
Experimental Design
Encryption process involves two phases –(1) generation of sub keys
for encryption and (2) plaintext encryption.

Figure 2. Block Level Description Modified IDEA


Modified Key Scheduling Operation of IDEA
Procedure for the different phases
A. Overview
In the modified algorithm, there would be 4 main
parts:
1. Plaintext and Secret Key;
2. Key Schedule Operation;
3. Encryption process;
4. Decryption process;

Modified Key Scheduling Operation of IDEA


Procedure for the different phases
• Part 1 gets a 128-bit input text and generates a 128-bit
output text using a 256-bit secret key under 8 similar rounds
and an output conversion.
• Part 2 key schedule operation of the modified IDEA: (1) key
slicing, (2) bit transformation, and (3) modified key schedule
operation using affine transformation, golden ratio, and
primitive polynomial.
• Part 3 uses 52 unique sub keys in each round (8 Rounds and
Output transformation) for the encryption process.
• Part 4 uses 52 unique sub keys(in reverse order) in each
round (8 Rounds and Output transformation) for decryption
process.
Modified Key Scheduling Operation of IDEA
Procedure for the different phases
B. Key Generation Operation
key schedule operation of the modified IDEA generates 52 sub-keys (starting
with G8, G9, G10, …, G59) that will be used for the modified IDEA encryption
and decryption; the 256-bit key is divided into eight 32-bit sub-keys. The first
8 sub keys (G0 to G7) form the unprocessed keys which will be used for
affine transformation.

Generation of 8 – 32 Bit Unprocessed Keys

Secret key (256-bit)

G[0] G[1] G[2] G[3] G[4] G[5] G[6] G[7]

Figure 2. The 8 – 32-Bit blocks of unprocessed subkeys


Modified Key Scheduling Operation of IDEA
Procedure for the different phases
B. Key Generation Operation

Gi = (Gi-8 ⊕ Gi-5 ⊕ Gi-3 ⊕ Gi-1 ⊕ φ ⊕ i ) <<<11


where φ is the fractional part of the golden ratio (√5 + 1)/2 or 0x9e3779b9
in hexadecimal and 10011110001101110111100110111001 in 32-bit form.

The underlying polynomial x^8 + x^7 + x^5 + x^3 + 1 is primitive, together


with the addition of the round index (i) is chosen to ensure an even
distribution of key bits throughout the rounds, eliminating weak keys and
related keys(Anderson, Ross; Biham, Eli; Knudsen, 1998).

Modified Key Scheduling Operation of IDEA


Procedure for the different phases
B. Key Generation Operation
The process of generating the keys are based on
the following rules:
1. Enter the secret key which may contain
numerals, alphabets, and other special symbols.
Character Input (Maximum of 32 characters or
256 bits).
2. Convert the characters in 8 binary formats.
3. Check the secret key in binary format if is not
equal to 256 bits, if it’s TRUE then it needs to
pad left by ‘1’.
4. The secret key should be divided into 8 32-bit
partition blocks.
5. Generate the pre-key by computing the (Gi)
using the affine transformation, golden ratio, and Figure 4. The key schedule operation of Modified IDEA
primitive polynomial.
Modified Key Scheduling Operation of IDEA
Procedure for the different phases
C. Key Distribution of Modified IDEA
Table 1 shows the key distribution for both encryption and decryption process.
Table 1. The key distribution for modified IDEA key generation operation.

Modified Key Scheduling Operation of IDEA


Procedure for the different phases
D. Sample Simulation of Key Schedule Operation
Using figure 4, the secret key will be grouped into 8 – 32bits and these unprocessed
subkeys will be used for the generation of other subkeys (G8, G9…, G59). The table
below shows how the secret keys are grouped into 32-bit subkey
Table 2. Character to Binary Conversion of sample secret key

Modified Key Scheduling Operation of IDEA


Procedure for the different phases
D. Sample Simulation of Key Schedule Operation
Using the Table 2, the generated G0 from the first 4 characters in binary
format until G7 (original 256 bits secret key).
Table 3. Unprocessed Sub keys.
Unprocessed keys
G0 = 01000111011001010111001001100001
G1 = 0110110001100100 0101010001000011
G2 = 011000010111100101100001 01100010
G3 = 011110010110000101100010 00110001
G4 = 010011010110111101100100 01101001
G5 = 01100110011010010110010101100100
G6 = 01001001010001000100010101000001
G7 = 00110110001101110011100000110000
Modified Key Scheduling Operation of IDEA
Procedure for the different phases
E. Generation of G8 to G59 using affine transformation
Substitution of values using affine transformation from the
unprocessed pre keys of Table 3.
The figure below shows the substitution of values for subkey
G8. This process will continue until such time the operation
generates 52 unique subkeys.

Figure 5. The structure of extended convolutional neural network

Modified Key Scheduling Operation of IDEA


Procedure for the different phases
E. Generation of G8 to G59 using affine transformation
After getting the result using XOR operation, the value will be shifted 11 bits to the left
from 21st bit from the Least Significant Bit (LSB). The figure below shows the shifting
procedure.
11110000011011010011010010110101 Computed values from substitution

G[8] = 11110000011 011010011010010110101

011010011010010110101 11110000011 <<< 11 digits

Final value for G8 01101001101001011010111110000011

Figure 6. Left Shifting of bits for each subkey (Gi).


Modified Key Scheduling Operation of IDEA
Procedure for the different phases
To generate all the 52 subkeys, repeat the procedures provided above.
These processes will produce unique subkeys for Round 1 to Round 8 and
for the Output Transformation of both encryption and decryption process.
The generated subkeys from G8 to G33.

Modified Key Scheduling Operation of IDEA


Procedure for the different phases
• The generated subkeys from G34 to G59

Modified Key Scheduling Operation of IDEA


Procedure for the different phases
The modified IDEA will still use the
process of encryption by using the
generated sub keys starting with G8. For
Round 1, generated sub keys will use the
following (G8, G9, G10, G11, G12, and 13).
The process of encryption uses 8 rounds in
modified IDEA. Each round involves series
of operation on the four data block using 6
sub keys (G8,…G13). The operations
provided below uses multiply *, add * and
XOR operation where multiply * means
Figure 7. Encryption Process of Modified IDEA multiplication modulo and add * mean
addition module.
Modified Key Scheduling Operation of IDEA
Comparison of Modified IDEA vs IDEA
Generation of 8 – 32 Bit Unprocessed Keys

Secret key (256-bit)

32 BIT 32 BIT 32 BIT 32 BIT 32 BIT 32 BIT 32 BIT 32 BIT

Generation of first 6 sub key + 2 sub keys for


the next Round
Secret key (128-bit)

16 BIT 16 BIT 16 BIT 16 BIT 16 BIT 16 BIT 16 BIT 16 BIT

Modified Key Scheduling Operation of IDEA


Comparison of Modified IDEA vs IDEA
Generation of first 6 sub key +
2 sub keys for the next Round

Original 128-bit
Secret Key
K1 (BITS
97 – 112)

K1 (BITS K2 (BITS 17- …. K6 (BITS K2 (BITS


1-16) 32) 81-96) 113 – 128)

circular-left shift by 25 bits

Original 128-bit Secret Key

Original 128-bit Secret Key

Unused
K3 (BITS K4 (BITS 17- …. K6 (BITS bits (65 –
1-16) 32) 49 - 64) 128)

Modified Key Scheduling Operation of IDEA


Evaluation

The strength of the modified IDEA will


be evaluated based on the following
criteria:
1. Frequency Analysis
2. Poker test
3. Entropy test
Modified Key Scheduling Operation of IDEA
Evaluation
For further evaluation test, the paper will use
CrypTool1 as a software aid for evaluation. CT1 is
an open source Windows application for
encryption and decryption which was originally
designed as an internal business program for
information security training and then has been
developed to become an important open source
project in encryption and IT security awareness

Modified Key Scheduling Operation of IDEA


Evaluation

Also, to check the comparison of cipher text


for both original and modified algorithm an
online tool named “HOW SECURE IS MY
PASSWORD?”(Osama Almasri, 2013)will be
used.

Modified Key Scheduling Operation of IDEA


Evaluation

“Research is a formalized curiosity. It is


poking and prying with a purpose.”
– Zora Neale Hurston

Thank You!

Modified Key Scheduling Operation of IDEA

Das könnte Ihnen auch gefallen