Implementasi Algoritma Rijndael Dan Rsa Pada Pengamanan Data Teks

i

IMPLEMENTASI ALGORITMA RIJNDAEL DAN RSA
PADA PENGAMANAN DATA TEKS

SKRIPSI

REYCHO SURAHMAN SINAGA
081401004

PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2013

Universitas Sumatera Utara

ii

IMPLEMENTASI ALGORITMA RIJNDAEL DAN RSA

PADA PENGAMANAN DATA TEKS

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar
Sarjana Komputer

REYCHO SURAHMAN SINAGA
081401004

PROGRAM STUDI S1 ILMU KOMPUTER
DEPARTEMEN ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2013

Universitas Sumatera Utara

ii


PERSETUJUAN

Judul
Kategori
Nama
Nomor Induk Mahasiswa
Program Studi
Departemen
Fakultas

: IMPLEMENTASI ALGORITMA RIJNDAEL DAN
RSA PADA PENGAMANAN DATA TEKS
: SKRIPSI
: REYCHO SURAHMAN SINAGA
: 081401004
: S1 ILMU KOMPUTER
: ILMU KOMPUTER
: ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI (FASILKOM-TI)

Diluluskan di
Medan, 5 Desember 2013

Komisi Pembimbing

:

Pembimbing 2

Syahriol Sitorus S.si, MIT
NIP. 197103101997031004

Pembimbing 1

Drs. James P. marbun M.kom
NIP. 195806111986031002

Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,


Dr. Poltak Sihombing, M.Kom
NIP. 196203171991031001

Universitas Sumatera Utara

iii

PERNYATAAN

IMPLEMENTASI ALGORITMA RIJNDAEL DAN RSA
PADA PENGAMANAN DATA TEKS

SKRIPSI

Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, 5 Desember 2013


REYCHO SURAHMAN SINAGA
NIM: 081401004

Universitas Sumatera Utara

iv

PENGHARGAAN

Alhamdulillahirabbil’alamin, penulis mengucapkan puji syukur yang tiada hentinya
kehadirat Allah SWT atas limpahan rahmat dan karunia-Nya serta segala nikmat iman,
islam, pikiran dan pemahaman terhadap ilmu pengetahuan sehingga penulis dapat
menyelesaikan skripsi ini dengan baik. Shalawat dan salam penulis ucapkan kepada
Rasulullah Muhammad SAW beserta para sahabat dan keluarganya yang telah
menjadi tauladan bagi penulis dalam menjalani kehidupan.
Pada kesempatan ini penulis mengucapkan terima kasih kepada semua pihak
yang telah membantu penulis selama pengerjaan skripsi ini, antara lain kepada:
1.

Prof. Dr. dr. Syahril Pasaribu, DTM&H, Msc(CTM). Sp.A(K) selaku Rektor

Universitas Sumatra Utara.

2.

Prof. DR. Muhammad Zarlis, M.Sc selaku Dekan Fakultas Ilmu Komputer dan
Teknologi Informasi.

3.

Dr. Poltak Sihombing, M.Kom selaku Ketua Departemen Ilmu Komputer,
Fakultas Ilmu komputer dan Teknologi Informasi, Universitas Sumatera Utara.

4.

Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi Ilmu Komputer.

5.

Drs. James Piter Marbun M.kom selaku Dosen Pembimbing I yang telah banyak
memberikan bimbingan, motivasi, dan nasehatnya kepada penulis dalam

menyelesaikan skripsi ini.

6.

Syahriol Sitorus S.Si, MIT selaku Dosen Pembimbing II atas bimbingan, nasehat
dan motivasi kepada penulis selama penulisan skripsi ini.

7.

Mohammad Andri Budiman, S.T, M.Comp.Sc, MEM selaku dosen penguji I dan
Bapak Amer Sharif, S.Si, M.Kom selaku dosen penguji II atas masukan dan
nasehatnya kepada penulis dalam menyelesaikan skripsi ini.

8.

Seluruh Dosen Departemen Ilmu Komputer, Fakultas Ilmu Komputer dan
Teknologi Informasi, Universitas Sumatera Utara yang telah membimbing dan
mencurahkan ilmunya selama masa perkuliahan.

9.


Seluruh pegawai administrasi Departemen Ilmu Komputer, Fakultas Ilmu
Komputer dan Teknologi Informasi, Universitas Sumatera Utara yang telah
membantu penulis dalam pengurusan administrasi selama perkuliahan, seminar
dan sidang meja hijau.

10. Kedua orang tua tercinta, Ayahanda Kasman Sinaga S.Pd dan Ibunda Sulfiana
atas segala nasehat, doa, dan dukungan serta kepercayaan yang telah diberikan
kepada penulis selama kuliah dan menyelesaikan skripsi ini.

Universitas Sumatera Utara

v

11. Fitrah Hasunah Sinaga S.E, Ade Elvirahma Sinaga, Rifqi Ayunda Pratama S.kom,
Rahma Rosita S.Pdi, Fadillah Mukminah,Sultan Rafid, Rahmi Mironi, Susinta
Sitorus dan Wilhelmina Sinaga selaku keluarga tercinta yang selalu memberikan
dukungan, motivasi, keceriaan, do’a dan kasih sayang kepada penulis untuk dapat
menyelesaikan skripsi ini.
12. Zulia Ayunani S.pdi, atas kesetiaan, semangat, doa, dukungan, dan motivasi yang

diberikan kepada penulis.
13. Irfan Antoni Siregar S.Kom, Ahmad Ihsan, Saria Mahdi S.kom, Sohib R. Siregar,
Arion Imanuel Sitorus, Marthin Febrianto selaku sahabat yang selalu memberikan
dukungan, kebersamaan dan motivasi, serta teman-teman khususnya angkatan
2008 yang telah memberikan warna serta keceriaan selama belajar di S1 Ilmu
Komputer.
14. Keluarga besar BKM AL-KHAWARIZMI yang telah banyak memberikan
dukungan, masukan serta nasihat selama belajar di S1 Ilmu Komputer.
15. Keluarga Besar A2GR ( Roni Astria, Hendrik Karisma, Herri Salputra, Adi
juliadi, Deni, Hendri, Putra dan Andar Boy) yang telah memberikan semangat,
motivasi dan kebersamaan baik suka maupun duka.
16. Semua pihak yang terlibat langsung ataupun tidak langsung dalam membantu
penyelesaian skripsi ini yang tidak dapat penulis ucapkan satu persatu.
Penulis menyadari bahwa skripsi ini masih jauh dari kesempurnaan, karena
kesempurnaan hanyalah milik Allah semata.Oleh karena itu penulis menerima kritik
dan saran dari semua pihak yang bersifat membangun dan menyempurnakan skripsi
ini.Penulis berharap semoga skripsi ini bermanfaat bagi penulis sendiri pada
khususnya dan pembaca pada umumnya.

Medan, 5 Desember 2013


Penulis

Universitas Sumatera Utara

vi

ABSTRAK

Pada penelitian ini akan membahas kombinasi dua buah algoritma kriptografi simetris
dan asimetris yaitu Rijndael dan RSA. Algoritma kriptografi Rijndael bersifat simetris
itu artinya kunci yang digunakan pada saat enkripsi dan dekripsi sama, oleh sebab itu
pengguna harus terlebih dahulu menyepakati kunci yang akan digunakan, hal ini
memberikan kemungkinan ketidak amanan pada saat pengiriman kunci tersebut.
Algoritma RSA merupakan algoritma kriptografi yang sifatnya asimetris yang berarti
memiliki pasangan kunci yang berbeda pada setiap prosesnya yaitu publik key dan
privat key. Dalam penelitian ini algoritma Rijndael berfungsi untuk enkripsi plainteks
dan dekripsi cipherteks dengan menggunakan kunci simetris (sessionkey), sedangkan
pasangan kunci RSA digunakan untuk enkripsi kunci simetris (sessionkey) dengan
menggunakan kunci publik dan hasil enkripsi tersebut yaitu cipherkey didekripsi

dengan menggunakan kunci privat. Algoritma Rijndael pada penelitian ini
menggunakan kunci 128-bit dan untuk algoritma RSA menggunakan 1024-bit. Hasil
pengujian ini bertujuan untuk meningkatkan integritas data dan melakukan sistem
pengamanan pertukaran kunci (key exchange).

Katakunci: Kriptografi, Kriptografi Simetris, kriptografi Asimetris, Rijndael,
Kriptografi RSA.

Universitas Sumatera Utara

vii

IMPLEMENTATION OF RIJNDAEL AND RSA
ON THE TEXT DATA SECURITY

ABSTRCT

This research discuss the combination of two symmetric and asymmetric
cryptographic algorithms, namely Rijndael and RSA. Rijndael is a symmetric
cryptographic algorithms it means used the same key at time of encryption and
decryption process, therefore users must first agree on a key they used, this give the
possibility of insecurity at the time of delivery of the key. RSA algorithm is an
asymmetric cryptographic algorithms that are meaningful to have different key pair
for each process those are public key and private key. In this study the Rijndael
algorithm function using symmetric key ( sessionkey ) to encryption plaintext and
decryption ciphertext, while key pair of the RSA used to encrypt the symmetric key
(sessionkey) using the public key and the encryption result is cipherkey decrypted
using the private key. Rijndael algorithm in this study using 128-bit key and for RSA
algorithm use1024-bit. The results of this research can help to improve data integrity
and perform key exchange security system (key exchange ).
Keywords: Cryptography, Cryptography Symmetric, Cryptography
Asymmetric, Rijndael and RSA.

Universitas Sumatera Utara

viii

DAFTAR ISI

Persetujuan ...................................................................................................................... iii
Pernyataan ....................................................................................................................... iv
penghargaan ......................................................................................................................v
Abstrak ............................................................................................................................ vi
Abstract .......................................................................................................................... vii
Daftar Isi ....................................................................................................................... viii
Daftar Tabel ......................................................................................................................x
Daftar Gambar ................................................................................................................ xi
BAB 1 Pendahuluan
1.1 Latar Belakang ...............................................................................................1
1.2 Rumusan Masalah ..........................................................................................2
1.3 Batasan Masalah ............................................................................................3
1.4 Tujuan Penelitian ...........................................................................................3
1.5 Manfaat Penelitian .........................................................................................4
1.6 Metode Penelitian ..........................................................................................4
1.7 Sistematika Penulisan ....................................................................................4
BAB 2 Landasan Teori
2.1 Kriptografi......................................................................................................6
2.1.1 Algoritma kriptografi kunci simetris .................................................7
2.1.2 Algoritma kriptografi kunci asimetris ...............................................8
2.2 Jenis-Jenis Serangan Terhadap Kriptografi ..................................................10
2.3 Algoritma Rijndael (AES) ............................................................................12
2.3.1 Prose enkripsi algoritma Rijndael ..................................................14
2.3.2 Proses dekripsi algoritma Rijndael .................................................18
2.3.3 Key expantion ..................................................................................20
2.4 Algoritma Kriptografi RSA ..........................................................................21
2.4.1 Algoritma pembangkit bilangan prima ...........................................23
BAB 3 Analisis Dan Perancangan
3.1 Analisis Masalah ..........................................................................................24
3.2 Analisis Sistem..............................................................................................24
3.2.1 Analisis kebutuhan perangkatlunak ..................................................25
3.2.2 Analisis kebutuhan fungsional dan non-fungsional ..........................26
3.3 Perancangan Sistem .....................................................................................26
3.3.1 Skema kosep dasar perancangan sistem ...........................................27
3.3.2 Dekripsi umum perangkat lunak .......................................................28
3.3.3 Rancangan proses kerja sistem secara umum ..................................29
3.4 Diagram alir (Flowchart) .............................................................................30
3.5 Use Case diagram .........................................................................................36
3.6 Perancangan Interface ...................................................................................40
3.6.1 Rancangan menu utama ....................................................................41
3.6.2 Rancangan halaman enkripsi ...........................................................42
3.6.3 Rancangan halaman dekripsi ...........................................................42

Universitas Sumatera Utara

ix

BAB 4 IMPLEMENTASI DAN PENGUJIAN
4.1 Proses Algoritma Rijndael ..................................................................................44
4.1.1 Key expantion..........................................................................................44
4.1.2 Enkripsi plainteks....................................................................................47
4.1.3 Dekripsi plainteks ...................................................................................52
4.2 Algoritma Kriptografi RSA ................................................................................54
4.2.1 Proses enkripsi RSA ................................................................................55
4.2.2 Proses dekripsi RSA ................................................................................57
4.3 Implementasi padaSistem ...................................................................................59
4.3.1 Tampilan awal sistem .............................................................................59
4.3.2 Tanpilan menu enkripsi...........................................................................60
4.3.3 Tampilan menu dekripsi ..........................................................................67
BAB 5 KESIMPULAN DAN SARAN
5.1 Kesimpulan .........................................................................................................69
5.2 Saran ..................................................................................................................70
Daftar Pustaka .................................................................................................................72
Lampiran

Universitas Sumatera Utara

x

DAFTAR GAMBAR

2.1
2.2
2.3
2.4
2.5
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
3.12
3.13
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.15
4.16
4.17
4.18
4.19
4.20
4.21

Skema Kriptografi Simetri
Skema Kriptografi Asimetri
Diagram Proses Enkripsi Rijndael
Perkalian Matriks Mixcoloumn Rijndael
Diagram Proses Dekripsi Rijndael
Konsep Perancangan Proses Pengamanan Plainteksdan Sessionkey
Konsep Perancangan Proses Pendekripsian Plainteksdan Sessionkey
Rancangan Proses Kerja Sistem Secara Umum
Flowchart Proses Enkripsi Plaintekspada Algoritma Rijndael
Flowchart Proses Dekripsi Ciphertekspada Algoritma Rijndael
Flowchart Pembangkitan Kunci Publik dan Privat Algoritma RSA
Flowchart Enkripsi Sessionkeypada Algoritma RSA
Flowchart Proses Dekripsi Cipherkey pada Algoritma RSA
Flowchart Gambaran Umum Sistem
Uses Case Diagram pada Sistem Enkripsi Rijndael dan RSA
Rancangan Menu Utama
Rancangan Halaman Enkripsi
Rancangan Halaman Dekripsi
Operasi Rot Word
Proses Subtitusi Byte S-Box dengan Hasil Rot Word
Nilai R-con
Proses Pengisian Kolom Ke-1 pada Roundkey Pertama
Proses Pengisian Roundkey pada Kolom 2-4
Hasil Seluruh Roundkey
Proses Pengisian Array State dan Hasil Addroundkey
Hasil Representasi Bilangan Hex dengan Menggunakan S-Box
Proses Transformasi Siftrows
Hasil Proses Mixcolumn
Operasi Transformasi Addroundkey dengan Operasi XOR
Halaman Main Menu
Halaman Menu Enkripsi
Tampilan Hasil Proses Open File pada Menu Enkripsi
Tampilan Input Sessionkey pada Menu Enkripsi
Tampilan Hasil Enkripsi Plainteks
Tampilan Hasil proses Enkripsi Plainteks dan Sessionkey
Tampilan Halaman Menu Dekripsi
Tampilan Hasil Inputan Cipherteks dan Cipherkey pada Menu Dekripsi
Tampilan Proses Dekripsi Cipherkey
Tampilan Hasil Proses Dekripsi Cipherkey dan Cipherteks

8
9
14
17
18
27
28
29
30
31
32
33
34
35
36
41
42
43
44
45
45
46
46
47
47
48
48
49
49
59
60
61
62
63
64
65
66
67
68

Universitas Sumatera Utara

xi

DAFTAR TABEL

2.1 Table Perbandingan Jumlah Putaran pada Rijndael
2.2 S-BoxYang Digunakan dalam Transformasi Subbyte Rijndael
2.3 Jumlah Pergeseran State pada Tahap Shiftrow
2.4 S-Box yang Digunakan dalam Transformas InvSubbyte Rijndael
3.1 Kegiatan Use Case Enkripsi Plainteks
3.2 Kegiatan Use Case Enkripsi Sessionkey
3.3 Kegiatan Use Case Dekripsi Cipherkey
3.4 Kegiatan Use Case Dekripsi Cipherteks
4.1 Hasil Proses Enkripsi
4.2 Proses Dekripsi Cipherteks Menjadi Plainteks
4.3 Konversi Karakter Plainteks Menjadi Kode ASCII
4.4 Proses Enkripsi Algoritma RSA
4.5 Proses Dekripsi Algoritma RSA
4.6 Konversi Karakter Kode ASCII Desimal menjadi Plainteks

13
15
16
19
37
38
39
40
50
52
55
56
57
58

Universitas Sumatera Utara