Anda di halaman 1dari 4

PAPER TUGAS AKHIR MATA KULIAH – KRIPTOGRAFI

Implementasi Algoritma AES (Advance Encryption Standard) pada Enkripsi dan Deskripsi
Pesan berbasis Aplikasi di Android

Aldiva Wibowo
4183550007
ILMU KOMPUTER
UNIVERSITAS NEGERI MEDAN
2021

Latar Belakang
Seiring dengan perkembangan Teknologi Informasi saat ini mengakibatkan manusia
dapat berkomunikasi dan saling bertukar data dan informasi tanpa dihalangi oleh jarak dan
waktu.. Namun yang cukup disayangkan adalah ketidakseimbangan antara setiap perkembangan
suatu teknologi tidak diiringi dengan perkembangan pada sistem keamanannya itu sendiri,
dengan demikian cukup banyak sistem – sistem yang masih lemah dan harus ditingkatkan
keamanannya.
AES atau Advance Encryption Standard, merupakan algoritma cryptographic yang dapat
digunakan untuk mengamankan data. Dibuat oleh Vincent Rijmen dan John Daemen asal Belgia
sering disebut sebagai algoritma Rijndael. Algoritma AES adalah blok chiphertext simetriks
yang dapat mengenkripsi (echiper) dan deskripsi (decipher).
Dalam algoritma kriptografi AES 128, 1blok plainteks berukuran 128 bit terlebih dahulu
dikonversi menjadi matriks heksadesimal berukuran 4x4 yang disebut state. Setiap elemen state
berukuran 1 byte. Proses enkripsi pada AES merupakan transformasi terhadap state secara
berulang dalam 10 ronde. Setiap ronde AES membutuhkan satu kunci hasil dari generasi kunci
yang menggunakan 2 transformasi yaitu subtitusi dan transformasi. Pada proses enkripsi AES
mengunakan 4 transformasi dasar dengan urutan trasformasi subbytes, shiftrows, mixcolumns,
dan addroundkey. Sedangkan pada proses dekripsi mengunakan invers semua transformasi dasar
pada algoritma AES kecuali addroundkey dengan urutan transformasi invshiftrows, invsubbytes,
addroundkey,dan invmixcolumns.
Pada data teks, proses enkripsi diawali dengan mengkonversi teks menjadi kode ASCII
dalam bilangan heksadesimal yang dibentuk menjadi matriks byte 4x4. Selanjutnya dilakukan
beberapa trnsformasi dasar seperti subbytes, shiftrows, mixcolumns, dan addroundkey. Akan
tetapi ketika melakukan trasformasi data yang diproses pada setiap trasformasi berupa data biner
dari matriks heksadesimal. Kriptografi AES 128 bit memiliki ruang kunci 2128 yang merupakan
nilai yang sangat besar dan dianggap aman untuk digunakan sehingga terhindar dari brute force
attack.
Landasan Teori
AES merupakan sistem penyandian blok yang bersifat non-Feistel karena AES
menggunakan komponen yang selalu memiliki invers dengan panjang blok 128 bit. Kunci AES
menggunakan proses yang berulang yang disebut dengan ronde. Proses di dalam AES
merupakan transformasi terhadap state. Sebuah teks asli dalam blok (128 bit) terlebih dahulu
diorganisir sebagai state.
Enkripsi AES adalah transformasi terhadap state secara berulang dalam beberapa ronde.
State yang menjadi keluara ronde k menjadi masukan untuk ronde ke-k +1. Pada Proses enkripsi
awalnya teks asli dibentuk sebagai sebuah state. Kemudian sebelum ronde 1 dimulai blok teks
asli dicampur dengan kunci ronde ke-0 (transformasi ini disebut AddRoundKey). Setelah itu,
ronde ke-1 sampai dengan ronde ke-(Nr-1) dengan Nr adalah jumlah ronde. AES menggunakan 4
jenis transformasi yaitu:
1. SubBytes, sebagai transformasi subtitusi.
2. ShiftRows, sebagai transformasi permutasi.
3. MixColumns, sebagai transformasi pengacakan.
4, AddRoundKey, sebagai transformasi penambahan kunci.
Pada ronde terakhir, yaitu ronde ke-Nr dilakukan transformasi serupa dengan ronde lain
namun tanpa transformasi serupa dengan ronde lain namun tanpa transformasi MixColumns.
Untuk Enkripsi ARS membutuhkan kunci ronde untuk setiap ronde transformasi kunci
ronde ini di bangkitkan dari kunci AES. Kunci AES 128 bit atau 4 word menghasilkan sebuah
larik sebanyak 44 word yang menjadi kunci.

Pembahasan
AES menggunakan chiper blok simteri yang dapat memproses blok data 128 bit, dengan
menggunakan kunci chiper yang panjangnya 128, 192, dan 256 bit. Berdasrakan hal tersebut,
perbedaan panjang kunci akan mempengaruhi jumlah putaran yang akan diimplementasikan
dalam algoritma AES. Secara ringkas akan ditampilkan pada tabel 1 berikut :

Adapun langkah-langkah enkripsi dan deskripsi AES sebagai berikut :


1. Addroundkey : Pada tahap ini pesan (plain text) akan di XOR kan dengan cipher key.
Tahap awal ini disebut dengan initial round. Contoh: Plaintext = NamaSayaAldivawi dan
Key = KriptografiAESni
4E 61 6D 61 4B 72 69 70
53 61 79 61 74 6F 67 72
41 6C 64 69 61 66 69 41
76 61 77 69 45 53 6E 69
XOR
2. Round : Selanjutnya akan dilakukan putaran sebanyak Nr-1 kali. Proses yang dilakukan
sebagai berikut :
a) Subbytes : pada proses ini hasil dari addround key akan dikonversikan
menggunakan nilai -5box.
b) Shiftrows : hasil dari subbytes digeser secara wrapping.
c) Mixcolumns : mengacak data dengan melakukan perkalian antara matriks public
keys dengan matriks hasil Shiftrows.
d) Addroundkey : state yang dihasilkan sebelumnya di XOR kan dengan Round key
SubBytes ShiftRows MixColumns AddRoundKey Key Schedule Round Constant
Round 0 05 27 20 33 4B 74 61 45
13 0E 0A 32 72 6F 66 53
04 1E 0D 19 69 67 69 6E
11 13 28 00 70 72 41 69

Round 1 6B CC B7 C3 6B CC B7 C3 84 7C 9F 5C 23 AF 2D AB A7 D3 B2 F7 01
7D AB 67 23 AB 67 23 7D 27 E7 81 9B CA 65 65 2C ED 82 E4 B7
F2 72 D7 D4 D7 D4 F2 72 D0 85 EC 06 40 72 72 F6 90 F7 9E F0
82 7D 34 63 63 82 7D 34 07 E3 E9 39 19 8F C4 7D 1E 6C 2D 44
Round 2 26 79 D8 62 26 79 D8 62 24 B3 42 04 28 6C 2F 9E 0C DF 6D 9A 02
74 4D 4D 71 4D 4D 71 74 83 F1 52 56 E2 12 55 E6 61 E3 07 B0
09 40 40 42 40 42 09 40 F1 D7 2E B2 7A AB CC A0 8B 7C E2 12

D4 73 1C FF FF D4 73 1C 82 37 ED AA F4 2D DA D9 76 1A 37 73

3. Final Round : untuk putaran ke Nr, dilakukan tahap-tahap yang sama dengan round
namun tidak melalui proses Mixcolumns. Adapun prosesnya sebagai berikut:
a) Subbytes
b) Shiftrows
c) Addroundkey

Kesimpulan
Dari kajian terori dapat ditarik kesimpulan yaitu penggunaan algoritma AES melibatkan
proses Addroundkey, Subbytes, Shiftrows, dan Mixcolumns pada setiap roundnya. Untuk
panjang kunci 128 bit mengalami round sebanyak 10 kali, Hal ini menyebabkan algoritma AES
sulit untuk dipecahkan.
Oleh karena itu, untuk menjamin keamanan pesan yang dikirim dari aplikasi dan diterima
langsung oleh pengguna lain maka penggunaan algoritma AES merupakan pilihan yang tepat.
Karena keamanan dari algoritma AES yang tinggi walaupun pesan diterima oleh pengguna yang
seharusnya tidak mendapatkan pesan tidak akan mengerti isi dari pesan karena terenkripsi
dengan kunci hexadecimal yang hanya bisa di deskripsikan oleh pengguna yang memiliki private
key nya.

Anda mungkin juga menyukai