Teknik Pemecahan Kunci Algoritma Rivest Shamir Adleman (Rsa) Dengan Metode Kraitchik

TEKNIK PEMECAHAN KUNCI ALGORITMA RIVEST SHAMIR ADLEMAN
(RSA) DENGAN METODE KRAITCHIK

SKRIPSI

BUDI SATRIA MUCHLIS
091401046

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

Universitas Sumatera Utara

TEKNIK PEMECAHAN KUNCI ALGORITMA RIVEST SHAMIR ADLEMAN
(RSA) DENGAN METODE KRAITCHIK

SKRIPSI


Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana
Ilmu Komputer

BUDI SATRIA MUCHLIS
091401046

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

Universitas Sumatera Utara

ii

PERSETUJUAN

Judul


Kategori
Nama
Nomor Induk Mahasiswa
Program Studi
Fakultas

: TEKNIK PEMECAHAN KUNCI ALGORITMA
RIVEST SHAMIR ADLEMAN (RSA) DENGAN
MENGGUNAKAN METODE KRAITCHIK
: SKRIPSI
: BUDI SATRIA MUCHLIS
: 091401046
: SARJANA (S1) ILMU KOMPUTER
: ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI
Diluluskan di
Medan, 17 April 2014

Komisi Pembimbing


:

Pembimbing 2

Pembimbing 1

Dian Rachmawati, S.Si, M.Kom
NIP. 19830723 200912 2 004

M.Andri Budiman, ST, M.Comp.Sc, MEM
NIP. 19751008 200801 1 011

Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,

Dr. Poltak Sihombing, M.Kom
NIP. 19620317 199103 1 001

Universitas Sumatera Utara


iii

PERNYATAAN

TEKNIK HACKING KUNCI ALGORITMA RIVEST SHAMIR ADLEMAN (RSA)
DENGAN METODE KRAITCHIK

SKRIPSI

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

Medan, 17 April 2014

Budi Satria Muchlis
091401046

Universitas Sumatera Utara


`

ivi

PENGHARGAAN

Alhamdulillah wa syukurillah , puji syukur kehadirat Allah SWT yang selalu

melimpahkan rahmat dan karunia-Nya kepada setiap manusia mulai dari ruhiyah,
fikriyah dan jasmaniyah, mulai dari yang disadari atau tanpa disadari. Semuanya
hanya karena keridhoan-Nya lah semua terjadi dan atas izin-Nya pula penulis dapat
menyelesaikan penyusunan skripsi ini. sebagai syarat untuk memperoleh gelar Sarjana
Komputer, pada Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan
Teknologi Informasi Universitas Sumatera Utara.
Ucapan terima kasih penulis sampaikan kepada:
1. Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H, MSc(CTM). Sp.A(K) selaku
Rektor Universitas Sumatera Utara.
2. Bapak Prof. Dr. Muhammad Zarlis selaku Dekan Fakultas Ilmu Komputer dan
Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu

Komputer Universitas Sumatera Utara.
4. Ibu Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi S1 Ilmu
Komputer Universitas Sumatera Utara dan Dosen Pembimbing Akademik.
5. Bapak M. Andri Budiman, ST, M.CompSc, MEM dan Ibu Dian Rachmawati, S.Si,
M.Kom Selaku Dosen Pembimbing.
6. Bapak Prof. Dr. Opim Salim Sitompul, M.Sc dan Bapak Handrizal, S.Si.
M.Comp.Sc selaku Dosen Pembanding.
7. Para dosen dan pegawai di Departemen Ilmu Komputer Fasilkom-TI USU.
8. Orang tua tercinta, Ayahanda Muchlis Sy. Lodde dan ibunda Melly Efyanti, yang
selalu memberikan kasih sayang dan dukungannya tiada kenal pamrih, bersusah
payah hanya demi anaknya. Semoga selalu dalam lindungan dan keridhoan Allah
sepanjang masa dan selalu bahagia dunia-akhirat.
9. Mbak Shinta Melany dan Bang Hendra Halius (juga untuk Keysha) yang sudah
memberikan dukungan moril dan materil selama 5 tahun hidup bersama, hanya
Allah SWT. yang dapat membalas semua kebaikan yang telah diberikan. Serta
kepada Kak Rival Maulana, Bang David Hayatullah, Mas Angga Perwira yang

Universitas Sumatera Utara

v


selalu memotivasi penulis untuk menjadi yang terbaik. Semoga selalu dalam
lindungan Allah SWT.
10. Saudara-saudara seperjuangan khususnya: Mahadi Z., Mhd. Arisandy Pratama,
Zuwarbi Wiranda Hsb, Anton Gumala Putra, Basrah Nasution, Wahyu Ramadhan,
Saipul Anwar, Affandi, Syukri Jundi dan Ganda Wijaya serta Vanji, Maulana,
Aditya dan lainnya yang selalu mengingatkan penulis dalam suka dan dukanya.
Semoga hati kita selalu dipersatukan Allah SWT. dalam naungan cinta-Nya.
11. Saudara-saudara senior khususnya: abangda Akmal Ahmad, Arie Yudha Nugraha
A.Md., Suharsono S.Kom, Zainuddin Siregar S.Kom., Eko Verdianto S.Kom,
Azizah Endarstati S.Kom dan yang lainya yang selalu memberikan semangat dan
dorongan dan motivasi kepada penulis selama menyelesaikan skripsi ini.
12. Saudara-saudara UKMI Al-Khuwarizmi, UKMI Al-Falak FMIPA, KAM Rabbani,
UKMI Ad-Dakwah, FSLDK Sumut, IMILKOM, para pejuang Ilkom Stambuk
2009 dan lainnya yang tidak bisa disebutkan satu persatu, yang selalu memberikan
semangat dan dorongan kepada penulis selama menyelesaikan skripsi ini.
Semoga Allah SWT melimpahkan berkah dan kebahagiaan dunia dan akhirat
kepada semua pihak yang telah memberikan bantuan, perhatian, serta dukungan baik
moril maupun materil kepada penulis dalam menyelesaikan skripsi ini. “Bekerjalah
seakan-akan engkau hidup selamanya, Beribadahlah seakan-akan engkau mati esok

hari”.

Medan, 17 April 2014

Penulis

Universitas Sumatera Utara

vi

ABSTRAK

Penelitian ini bertujuan memecahkan kunci privat algoritma RSA dengan memfaktorkan
kunci publik n menggunakan metode Kraitchik dan melihat efisiensi waktu
pemfaktorannya. Kriptanalisis dengan pemfaktoran (factoring) menggunakan kunci
publik n yaitu n = p . q yang tidak dirahasiakan untuk memecahkan kunci privat RSA.
Jika kunci publik n berhasil difaktorkan menjadi p dan q maka ɸ(n) = (p – 1)(q – 1) dapat
dihitung dan dengan menggunakan kunci publik e, kunci privat d pun akan dapat
terpecahkan. Metode Kraitchik yang mengawali munculnya algoritma pemfaktoran yang
paling modern menyatakan bahwa untuk menemukan faktor x dan y dari bilangan bulat n

sedemikian rupa sehingga x2 ≡ y2 (mod n). Hasil penelitian memperlihatkan bahwa
efisiensi waktu pemfaktoran kunci publik n metode Kraitchik sangat dipengaruhi oleh
selisih faktor kunci (p – q) yaitu semakin besar selisih antara p dan q maka semakin lama
waktu pemfaktorannya. Pemfaktoran panjang kunci publik n sebesar 19 digit atau 152 bit
dengan selisih faktor kunci (p – q) = 22641980 membutuhkan waktu selama 93,6002 ms
lebih cepat jika dibandingkan dengan panjang kunci sebesar 15 digit atau 120 bit dengan
selisih faktor kunci (p – q) = 23396206 yang membutuhkan waktu selama 5850,0103 ms.
Faktor lainnya yang mempengaruhi efisiensi waktu pemfaktoran metode Kraitchik adalah
Gcd (p – 1,q – 1), panjang kunci dan faktor prima (p – 1),(q – 1).
Kata Kunci: RSA, Kriptanalisis, Pemfaktoran (Factoring), Metode Kraitchik

Universitas Sumatera Utara

vii
An RSA Key Factoring Technique Using Kraitchik‟s Method
ABSTRACT

This study aims to discover the private key of RSA by factoring public key n using
Kraitchik‟s method and to observed the time efficiency. Kraitchik‟method factoring
the RSA private key using the public key n (n = p.q) that is not kept secret. When

public key n is successfully factored into p and q then ɸ(n) = (p – 1)(q – 1) can be
calculated and by using public key e, private key d will be discovered. Kraitchik
method that started the rise of most modern factoring algorithm aims to find the
factors x and y of an integer n such that x2 ≡ y2 (mod n). The results showed that the
time efficiency of Kraitchik‟s method to factor the public key n is highly influenced
by the difference of key factors (p – q), that is, the greater the difference between p
and q then the longer the time to factor n. The public key n of 19 digits or 152 bits
with difference (p – q) takes time 93,6002 ms that is faster than a key of 15 digits or
120 bits with difference (p – q) = 23396206 which takes time for 5850.0103 ms. Other
factors that effect the efficiency time of Kraitchik‟s method is gcd (p – 1, q – 1), the
key length and the prime factors (p – 1), (q – 1).
Keyword: RSA, Cryptanalysis, Factoring, Kraitchik‟s method

Universitas Sumatera Utara

viii

DAFTAR ISI

Hal.

Persetujuan
Pernyataan
Penghargaan
Abstrak
Abstract
Daftar Isi
Daftar Tabel
Daftar Gambar
Daftar Lampiran
Bab I Pendahuluan
1.1 Latar Belakang
1.2 Rumusan Masalah
1.3 Tujuan Penelitian
1.4 Batasan Penelitian
1.5 Manfaat Penelitian
1.6 Metode Penelitian
1.7 Sistematika Penulisan
Bab II Landasan Teori
2.1. Keamanan Informasi
2.2. Kriptografi
2.2.1. Definisi dan Terminologi
2.2.2. Tujuan Kriptografi
2.3. Sistem Kriptografi (Cryptosystem)
2.4. Rivest Shamir Adleman (RSA)
2.4.1. Pembangkitan Kunci
2.4.2. Proses Enkripsi
2.4.3. Proses Dekripsi
2.5. Kriptanalisis (Cryptanalysis)
2.6. Metode Kriptanalisis RSA
2.6.1. Pemfaktoran (Factoring)
2.6.2. Serangan Fungsi RSA
2.6.3. Implementation Attacks
2.7. Pemfaktoran Metode Kraitchik
2.8. Invers Modulo (Extended Euclidean)
2.9. Uji Bilangan Prima Algoritma Lehmann

ii
iii
iv
vi
vii
viii
x
xi
xii

1
2
3
3
3
4
4

6
8
8
10
11
13
13
15
16
16
18
18
18
19
19
20
22

Universitas Sumatera Utara

ix

Bab III Analisis dan Perancangan Sistem
3.1. Analisis Sistem
3.1.1. Analisis Masalah (Cause and Effect Diagram)
3.1.2. Analisis Kebutuhan
3.2. Perancangan Sistem
3.2.1. Use Case Diagram
3.2.2. Activity Diagram
3.3. Flowchar t
3.3.1. Flowchart Pemecahan Kunci RSA Metode Kraitchik
3.3.2. Flowchart Menghitung Kunci Publik dan Kunci Privat
3.3.3. Flowchart Dekripsi RSA
3.4. Pseudocode
3.4.1. Pseudocode Pemecahan Kunci RSA
(Metode Kraitchik)
3.4.2. Pseudocode Menghitung Kunci Publik e
3.4.3. Pseudocode Menghitung Kunci Privat d
3.4.4. Pseudocode Dekripsi RSA
3.5. Perancangan Antarmuka Sistem (System Interface)
3.5.1. Form Halaman Utama
3.5.2. Form Pemecahan Kunci RSA
3.5.3. Form Dekripsi RSA
3.5.4. Form Bantuan
3.5.5. Form Tentang

24
24
24
25
27
27
29
31
32
33
34
35

Bab IV Implementasi dan Pengujian
4.1. Implementasi Sistem
4.1.1. Spesifikasi Kebutuhan Perangkat keras
4.1.2. Spesifikasi Kebutuhan Perangkat Lunak
4.1.3. Implementasi Aplikasi
4.2. Pengujian Sistem
4.2.1. Pengujian Proses Pemecahan Kunci RSA dan Dekripsi RSA
4.2.2. Pengujian Panjang dan Nilai Kunci Publik n
4.2.3. Selisih Kunci (p – q)
4.2.4. Gcd (p – 1, q – 1)
4.2.5. Faktor Prima (p – 1) dan (q – 1)

43
43
43
43
44
48
48
50
52
53
54

Bab V Kesimpulan dan Saran
5.1 Kesimpulan
5.2. Saran

55
55
56

Daftar Pustaka

57

35
36
37
38
39
39
40
41
42
42

Universitas Sumatera Utara

x

DAFTAR TABEL

Hal.
Tabel 3.1 Kebutuhan Fungsional Sistem Pemecahan Kunci RSA
Metode Kraitchik
Tabel 3.2 Kebutuhan Nonfungsional Sistem Pemecahan Kunci RSA
Metode Kraitchik
Tabel 3.3 Narasi Use Case Pemecahan Kunci RSA
Tabel 3.4 Narasi Use Case Dekripsi RSA
Tabel 4.1 Kunci Publik n Terhadap Waktu Pemfaktoran
Tabel 4.2 Kunci Publik n dan Selisih Kunci (p – q) Terhadap Waktu Pemfaktoran
Tabel 4.3 Kunci Publik n dan Gcd(p – 1, q – 1) Terhadap Waktu Pemfaktoran
Tabel 4.4 Kunci Publik n dan Faktor Prima (p – 1), (q – 1)
Terhadap Waktu Pemfaktoran

25
26
28
29
51
52
53
54

Universitas Sumatera Utara

xi

DAFTAR GAMBAR

Hal.
Gambar 2.1 Proses enkripsi dan dekripsi
Gambar 2.2 Skema symmetric cryptosystem
Gambar 2.3 Skema public-key cryptosystem
Gambar 2.4 Skema komunikasi kriptografi
Gambar 2.5 Skema komunikasi kriptografi kunci-publik
Gambar 3.1 Analisis masalah Sistem Pemecahan Kunci RSA Metode Kraitchik
Gambar 3.2 Use case diagram Sistem Pemecahan Kunci RSA Metode Kraitchik
Gambar 3.3 Activity diagram untuk use case Pemecahan Kunci RSA
Gambar 3.4 Activity diagram untuk use case Dekripsi RSA
Gambar 3.5 Flowchart pemfaktoran metode Kraitchik
Gambar 3.6 Flowchart menghitung kunci publik dan kunci privat
Gambar 3.7 Flowchart proses dekripsi RSA
Gambar 3.8 Pseudocode pemecahan kunci RSA (metode Kraitchik)
Gambar 3.9 Pseudocode menghitung kunci publik e
Gambar 3.10 Pseudocode menghitung kunci privat d
Gambar 3.11 Pseudocode Dekripsi RSA
Gambar 3.12 Form „Halaman Utama‟
Gambar 3.13 Form „Pemecahan Kunci RSA‟
Gambar 3.14 Form „Dekripsi RSA‟
Gambar 3.15 Form „Bantuan‟
Gambar 3.16 Form „Tentang‟
Gambar 4.1 Form ‟Halaman Utama‟
Gambar 4.2 Form ‟Pemecahan Kunci RSA‟
Gambar 4.3 Form ‟Dekripsi RSA‟
Gambar 4.4 Form ‟Bantuan‟
Gambar 4.5 Form ‟Tentang‟
Gambar 4.6 Aplikasi RSA yang diuji
Gambar 4.7 Proses pemecahan kunci RSA
Gambar 4.8 Proses dekripsi RSA
Gambar 4.9 (a) ciphertext atau file terenkripsi (Encrypted.txt)
(b) plaintext atau file hasil dekripsi (tanda-tanda hati yang mati.txt)

10
12
13
17
18
24
27
30
31
32
33
34
35
36
37
38
40
40
41
42
42
44
45
46
47
47
48
49
49
50
50

Universitas Sumatera Utara

xii

DAFTAR LAMPIRAN

Hal.
A. Listing Program
B. Curriculum Vitae (CV)

A-1
B-1

Universitas Sumatera Utara