AES method has three types according to the
key length that are AES- 128, AES -192, and AES
256. Previous studies mentioned that the most
excellent AES algorithm is AES 128 (Arya, 2016).
Therefore, in this study the method used is AES 128.
2 THEORITICAL FRAMEWORK
2.1 Cryptography
The term “cryptography” is derived from two Greek
words, crypto and graphia. Crypto means secret and
graphia means writing (Munir, 2006).
Terminologically, cryptography is encryption
techniques where randomized data uses an encryption
key so that it will be difficult to read by someone who
does not have a decryption key (Kromodimoeldjo,
2009).
According to historical records, cryptography
has been used in Egypt since 4000 years ago by
Egyptian kings during the war to send secret
messages to their warlords through their couriers. The
person who does this encoding is called a
cryptographer, while the person who studies science
and art in opening or deciphering a cryptographic
algorithm without having to know the key is called
cryptanalyst (Munir, 2006).
A good cryptographic algorithm is determined
by the complexity of processing data or messages to
be delivered and by fulfilling the following 4
requirements (Munir, 2006):
Confidentiality. Message (plaintext) can only be
read by authorized party.
Authentication. The sender of the message must
be identified with certainty, the intruder must be
ensured that he cannot pretend to be someone else.
Integrity. The recipient of the message must be
able to ensure that the message received is not
modified during data transmission process.
Non-repudiation. The sender of the message must
not be able to deny the message he sent.
Cryptograph basically consists of two processes,
namely the process of encryption and the decryption
process. The encryption process is the process of
encoding common messages into secret messages
called ciphertext. Ciphertext is something to be
delivered through open communication channels.
When ciphertext is received by the recipient of the
message, then the secret message is changed again
into an open message through the decryption process
so that the message can be read again by the recipient
of the message. This plaintext can be writing, photos,
or videos in the form of binary data.
Generally, based on the key similarities, the
encryption algorithm is divided into 2 types:
1. Symmetric key algorithm
In this algorithm, the key used in encryption and
decryption is the same. The AES method is
included in this algorithm.
2. Asymmetric key algorithm
This algorithm uses different keys in the
encryption and decryption process. For example,
the RSA method.
2.2 Advanced Encryption Standard
(AES)
Advanced Encryption Standard (AES) is a
cryptographic algorithm that can be used rightly to
secure data. This AES algorithm works on data blocks
in the form of 4 x 4 matrix. Symmetrical ciphertext
blocks can encrypt (encipher) and decrypt (decipher)
information. AES algorithm uses clicking the
cryptographic keys 128, 192, and 256 bits to encrypt
and decrypt the data. Therefore, this algorithm is
known as AES-128, AES-192, and AES-256. This
algorithm also has another name that is Rijndael
algorithm. It is because this algorithm was made by
Rijndael, which is combined from Vincent Rijmen
dan John Daemen.
AES (Advanced Encryption Standard) is the
development of the standard DES (Data Encryption
Standard) encryption algorithm of which validity
period deemed to be over due to security. The rapid
computer speed was considered very dangerous to the
DES, so that on March 2, 2001 the new Rijndael
algorithm was established as AES (Publication,
2001).
In the process stages of this algorithm, there are
3 main processes, namely encryption, decryption, and
key expansion.
2.2.1 Key Expansion
The key expansion function takes the user supplied
16 bytes long key and utilizes the previously created
round constant matrix rcon and the substitution table
s_box to generate a 176 byte long key schedule w,
which will be used during the end and decryption
processes (Buchholz, 2001)
.
In this key generation. we initialize the initial
key as a 16 byte cipher key and then expand to