Implementasi kombinasi Algoritma Kriptografi End Of Fil Pada Pengamanan Data Teks

IMPLEMENTASI KOMBINASI ALGORITMA KRIPTOGRAFI LUC DAN STEGANOGRAFI END OF FILE PADA PENGAMANAN DATA TEKS
SK R I P SI
ANNISSA FADILLA 101401072
PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA M E DAN 2014
Universitas Sumatera Utara

IMPLEMENTASI KOMBINASI ALGORITMA KRIPTOGRAFI LUC DAN STEGANOGRAFI END OF FILE PADA PENGAMANAN DATA TEKS SKRIPSI
Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar Sarjana Komputer
ANNISSA FADILLA 101401072
PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA MEDAN 2014
Universitas Sumatera Utara

PERSETUJ UAN

Judul
Kategori Nama Nomor Induk Mahasiswa Program Studi Departemen Fakultas

: IMPLEMENTASI KOMBINASI ALGORITMA KRIPTOGRAFI LUC DAN STEGANOGRAFI END OF FILE PADA PENGAMANAN DATA TEKS
: SKRIPSI : ANNISSA FADILLA : 101401072 : SARJANA (S1) ILMU KOMPUTER : ILMU KOMPUTER : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI (FASILKOM-TI)

Diluluskan di Medan, 9 Desember 2014

Komisi Pembimbing Pembimbing 2

:

Pembimbing 1

M. Andri Budiman, ST, M.Comp.Sc, MEM MT, MM NIP.197510082008011011

Dr. Elviawaty Muisa Zamzami, ST, NIP.197007162005012002

Diketahui/Disetujui oleh Program Studi S1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP.196203171991021001

Universitas Sumatera Utara


PERNYATAAN IMPLEMENTASI KOMBINASI ALGORITMA KRIPTOGRAFI LUC DAN
STEGANOGRAFI END OF FILE 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, September 2014 Annissa Fadilla 101401072
Universitas Sumatera Utara

PENGHARGAAN
Segala puji dan syukur bagi Allah SWT, atas segala limpahan rahmat dan karunia-Nya 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. Tidak lupa juga shalawat dan salam kepada tauladan umat Rasululloh Muhammad SAW.
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 pembanding II yang telah memberikan kritik dan saran guna memperbaiki kesalahan yang ada pada skripsi ini
5. Ibu Dr. Elviawaty Muisa Zamzami, ST, MT, MM selaku dosen pembimbing I yang telah memberikan bimbingan, kritik, dan saran kepada penulis dalam menyelesaikan skripsi ini
6. Bapak M. Andri Budiman, ST, M.Comp.Sc, MEM selaku dosen pembimbing II yang memberikan bimbingan, kritik, saran dan dukungan kepada penulis mulai dari tahap pengambilan judul skripsi hingga penulis menyelesaikan skripsi ini.
7. Ibu Dian Rachmawati, S.Si, M.Kom selaku dosen pembanding I yang telah memberikan kritik dan saran guna memperbaiki kesalahan yang ada pada skripsi ini.
8. Bapak Ade Candra, ST, M.Kom selaku dosen pembimbing akademik yang telah memberika nasehat dan bimbingan kepada penulis dari tahap awal perkuliahan.
Universitas Sumatera Utara

9. Seluruh dosen dan pegawai Program studi S1 Ilmu Komputer Fasilkom-TI USU
10. Ayahanda Ery Isnanto yang selalu memberikan kasih sayang, doa dan dukungan kepada penulis, Ibunda Almh Nazariah Hanum sosok yang selalu mengajarkan tentang kesabaran, usaha dan doa, serta adinda Muhammad Fadil Abdillah yang selalu memberikan doa dan dukungannya kepada penulis.

11. Sahabat yang selalu saling mendoakan dan memberi dukungan Zulwita Hariyati, Devina Pratiwi Halim, Nurul Ulfah Primadini, Uswatun Hasanah, Fanny Fairina Nadyaningrum, Aulia Akbar Harahap, Auliza Nanda Nasution, Bernard Darius Tarigan, Abangda Ahmad Royhan Putra Siregar dan Kakanda Fauzana Sudirman. Sahabat yang telah banyak membantu penulis Nurhennida Br. Sitepu serta teman-teman stambuk 2010 yang tidak dapat penulis sebutkan satu per satu. Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah
memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini. Penulis menyadari bahwa skripsi ini masih jauh dari sempurna untuk itu penulis menerima kritik dan saran yang membangun agar dapat menyempurnakan skripsi ini. Akhirnya, semoga skripsi ini bermanfaat bagi pribadi, keluarga, masyarakat, organisasi dan negara.
Medan, September 2014
Penulis
Universitas Sumatera Utara

ABSTRAK
Perkembangan teknologi informasi yang semakin melesat dewasa ini memberikan kemudahan bagi siapa saja dalam melakukan komunikasi ataupun pertukaran informasi. Di sisi lain, dengan kemudahan tersebut timbul juga permasalahan lain dalam hal keamanan dan kerahasiaan data yang dapat terganggu oleh tindakan kejahatan komputer seperti penyadapan, perusakan ataupun pencurian data dan informasi. Kombinasi kriptografi dan steganografi dapat menjadi salah satu solusi untuk mencegah tindak kejahatan komputer tersebut. Kriptografi merupakan seni atau ilmu untuk menjaga keamanan data dengan cara mengacak data atau pesan. Sedangkan steganografi merupakan ilmu dan seni untuk menyembunyikan pesan dalam suatu media lain. Pada penelitian ini, pesan atau file teks yang akan dikirim terlebih dahulu enkripsi dengan algoritma kriptografi LUC, selanjutnya hasil enkripsi akan disembunyikan pada suatu file citra dengan format bitmap dengan menggunakan metode steganografi End of File. Kemudian dilakukan proses ekstraksi pesan dari dalam citra untuk selanjutnya di dekripsi agar kembali menjadi pesan asli. Implementasi sistem menggunakan MatLab R2012a. Sistem diuji dengan melakukan proses enkripsi dan dekripsi, serta penyisipan dan ekstraksi pesan hingga 100.000 karakter. Hasil pengujian menunjukkan bahwa panjang karakter yang dienkripsi dan didekripsi berbanding lurus dengan kecepatan waktu eksekusi. Kata Kunci: Kriptografi, Steganografi, LUC, End Of File
Universitas Sumatera Utara

IMPLEMENTATION OF COMBINATION OF CRYPTOGRAPHY LUC ALGORITHM AND STEGANOGRAPHY END OF FILE ON DATA TEXT SECURITY
ABSTRACT
The rapid development in information technology these days provides the convenience for everyone to communicate or exchange information. On the other hand, along with those conveniences, another problem arises in terms of security and confidentiality of the data that can be disrupted by computer criminality, such as tapping, theft or destruction of data and information. The combination of cryptography and steganography can be one of the solutions to prevent such computer criminality. Cryptography is an art or knowledge to secure data by scrambling the data or message. Meanwhile, steganography is a knowledge and art to hide messages in other media. In this research, messages or file text that will be sent is encrypted first with LUC algorithm, and then the ciphertext will be hidden in an image file with a bitmap format using the steganography End of File method. Later on, extraction will be done to the message in the image to be decrypted to the original message. Implementation of the system will use MatLab R2012a. System was tested by performing encryption and decryption process, as well as the embedding and extraction of the message to 100.000 characters. The test result showed that the length of the encrypted and decrypted character is proportional to the speed of the execution time.
Keyword: Cryptography, Steganography, LUC, End Of File
Universitas Sumatera Utara

DAFTAR ISI

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 Batasan Masalah 1.4 Tujuan Penelitian 1.5 Manfaat Penelitian 1.6 Metodologi Penelitian 1.7 Sistematika Penulisan

Bab II Landasan Teori 2.1 Teori Bilangan 2.1.1 Keterbagian 2.1.2 Greatest Common Divisor (GCD) 2.1.3 Algoritma Euclidean 2.1.4 Relatif Prima 2.1.5 Least Common Multiple (LCM) 2.1.6 Aritmatika Modulo 2.1.7 Invers Modulo 2.2 Kriptografi 2.2.1 Algoritma Simetris 2.2.2 Algoritma Asimetris (Public Key Algorithm) 2.2.3 Algoritma Asimetris Non Public Key 2.3 Algoritma Kriptografi LUC 2.3.1 Pembangkitan Kunci LUC 2.3.2 Lehmann Prime Generator 2.3.3 Algoritma Enkripsi LUC 2.3.4 Algoritma Dekripsi LUC 2.4 Steganografi 2.4.1 Steganografi End of FIle 2.5 Penelitian yang Relevan

Halaman
ii iii iv vi vii viii xi xii xiv
1 2 2 3 3 3 4
6 6 6 6 7 7 8 8 9 10 11 12 12 13 13 14 15 15 16 18

Universitas Sumatera Utara

Bab III Analisis dan Perancangan 3.1 Analisis Algoritma Kriptografi LUC dan Steganografi End of File 3.1.1 Analisis Algoritma Kriptografi LUC 3.1.1.1 Pembangkitan Kunci LUC 3.1.1.2 Proses Enkripsi LUC 3.1.1.3 Proses Dekripsi LUC 3.1.2 Analisis Metode Steganografi End of FIle 3.1.2.1 Proses Embedding Steganografi End of File 3.1.2.2 Proses Extraction Steganografi End of File 3.2 Analisis Sistem 3.2.1 Analisis Persyaratan 3.2.1.1 Analisis Persyaratan Fungsional 3.2.1.2 Analisis Persyaratan Non Fungsional 3.2.2 Analisis Masalah 3.3 Perancangan Sistem 3.3.1 Flowchart Sistem 3.3.1.1 Flowchart Proses Pembangkitan Kunci 3.3.1.2 Flowchart Proses Enkripsi/Penyisipan 3.3.1.3 Flowchart Proses Ekstraksi/Dekripsi 3.3.1.4 Flowchart Lehmann Primw Generator 3.3.2 UML Diagram 3.3.2.1 Use Case Diagram 3.3.2.2 Activity Diagram 3.3.2.2.1 Activity Diagram Proses Enkripsi/Penyisipan 3.3.2.2.2 Activity Diagram Proses Ekstraksi/Dekripsi 3.3.2.3 Sequence Diagram 3.3.2.3.1 Sequence Diagram Proses Pembangkitan Kunci 3.3.2.3.2 Sequence Diagram Proses Enkripsi/Penyisipan 3.3.2.3.3 Sequence Diagram Proses Ekstraksi/Dekripsi 3.3.3 Pseudocode 3.3.3.1 Pseudocode Proses Enkripsi 3.3.3.2 Pseudocode Proses Dekripsi 3.3.3.3 Pseudocode Proses Penyisipan 3.3.3.4 Pseudocode Proses Ekstraksi 3.3.4 Interface Sistem 3.3.4.1 Tampilan Halaman Utama 3.3.4.2 Tampilan Menu Key Generator 3.3.4.3 Tampilan Submenu Enkripsi/Penyisipan 3.3.4.4 Tampilan Submenu Ekstraksi/Dekripsi 3.3.4.5 Tampilan Menu About 3.3.4.6 Tampilan Menu Help
Bab IV Implementasi dan Pengujian 4.1 Implementasi 4.1.1 Tampilan Antarmuka Sistem 4.1.1.1 Tampilan Halaman Utama 4.1.1.2 Tampilan Halaman Menu Key Generator 4.1.1.3 Tampilan Halaman Submenu Enkripsi/Penyisipan 4.1.1.4 Tampilan Halaman Submenu Ekstraksi/Dekripsi

19 19 19 20 22 24 24 25 26 26 26 26 27 28 28 28 30 31 32 32 32 36 36 37 38 38 39 40 40 40 41 42 43 43 44 45 46 47 49 49
51 51 51 52 53 54

Universitas Sumatera Utara

4.1.1.5 Tampilan Halaman Menu About 4.1.1.6 Tampilan Halaman Menu Help 4.2 Pengujian Sistem 4.2.1 Pengujian Proses Pembangkitan Kunci 4.2.2 Pengujian Proses Enkripsi dan Penyisipan 4.2.3 Pengujian Proses Ekstraksi dan Dekripsi 4.3 Hasil Pengujian 4.3.1 Hasil Pengujian Proses Enkripsi LUC 4.3.2 Hasil Pengujian Proses Penyisipan End of File 4.3.3 Hasil Pengujian Proses Ekstraksi End of File 4.3.4 Hasil Pengujian Proses Dekripsi LUC
Bab V Kesimpulan dan Saran 5.1 Kesimpulan 5.2 Saran
Daftar Pustaka


55 55 56 56 57 63 65 65 67 71 73
76 76
78

Universitas Sumatera Utara

DAFTAR TABEL

Halaman

Tabel 2.1 Perhitungan barisan Lucas sampai n=10

13

Tabel 3.1 Proses perhitungan kunci dekripsi d

20

Tabel 3.2 Spesifikasi Use Case Pembangkit Kunci


33

Tabel 3.3 Spesifikasi Use Case Enkripsi/Penyisipan

34

Tabel 3.4 Spesifikasi Use Case Ekstraksi/Dekripsi

35

Tabel 4.1 Perhitungan Proses Enkripsi

66

Tabel 4.2 Rincian Waktu Proses Enkripsi

67

Tabel 4.3 Rincian Waktu Proses Penyisipan (Embedding)


68

Tabel 4.4 Rincian ukuran citra ynag dihasilkan berdasarkan jumlah karakter pesan 69

Tabel 4.5 Rincian Waktu Proses Ekstraksi

72

Tabel 4.6 Perhitungan Proses Dekripsi

73

Tabel 4.7 Rincian Waktu Proses Dekripsi

74

Tabel 4.8 Hasil percobaan waktu proses enkripsi dan dekripsi dengan beberapa kunci

yang berbeda


75

Universitas Sumatera Utara

DAFTAR GAMBAR

Halaman

Gambar 2.1 Skema Kriptografi Algoritma Simetris

10

Gambar 2.2 Skema Kriptografi Algoritma Asimetris

11

Gambar 2.3 Skema Kriptografi Algoritma Non Public Key

12


Gambar 2.4 Perbedaan Steganografi dan Kriptografi

16

Gambar 2.5 Citra *bmp true color

16

Gambar 2.6 Citra setelah disisip pesan

17

Gambar 3.1 Diagram Ishikawa Masalah Penelitian

28

Gambar 3.2 Flowchart Pembangkitan Kunci

29


Gambar 3.3 Flowchart Proses Enkripsi/Penyisipan

30

Gambar 3.4 Flowchart Proses Ekstraksi/Dekripsi

31

Gambar 3.5 Flowchart Pembangkit Bilangan Prima Lehmann

32

Gambar 3.6 Use Case Diagram Sistem

33

Gambar 3.7 Activity Diagram Proses Enkripsi/Penyisipan

36


Gambar 3.8 Activity Diagram Proses Ekstraksi/Dekripsi

37

Gambar 3.9 Sequence Diagram Proses Pembangkitan Kunci

38

Gambar 3.10 Sequence Diagram Proses Enkripsi/Penyisipan

39

Gambar 3.11 Sequence Diagram Proses Ekstraksi/Dekripsi

40

Gambar 3.12 Rancangan Halaman Utama Sistem

44

Gambar 3.13 Rancangan Menu Key Generator

45

Gambar 3.14 Rancangan Submenu Enkripsi/Penyisipan

46

Gambar 3.15 Rancangan Submenu Ekstraksi/Dekripsi

48

Gambar 3.16 Rancangan Menu About

49

Gambar 3.17 Rancangan Menu Help

50

Gambar 4.1 Tampilan Halaman Utama

51

Gambar 4.2 Tampilan Submenu pada Menu Process

52

Gambar 4.3 Tampilan Halaman Key Generator

52

Gambar 4.4 Tampilan Halaman Enkripsi/Penyisipan

53

Gambar 4.5 Tampilan Halaman Ekstraksi/Dekripsi

54

Gambar 4.6 Tampilan Halaman About

55

Gambar 4.7 Tampilan Halaman Help

56

Gambar 4.8 Hasil proses pembangkitan kunci

57

Gambar 4.9a Input Plaintext secara langsung

58

Gambar 4.9b Input Plaintext dengan memilih file teks

58

Gambar 4.10 Pesan dialog berupa untuk mengisi pesan terlebih dahulu

59

Gambar 4.11 Pesan dialog berupa peringatan kunci enkripsi dan nilai N tidak boleh

kosong dan harus dalam bentuk numerik

59

Gambar 4.12 Ciphertext yang dihasilkan dari proses enkripsi

60

Universitas Sumatera Utara

Gambar 4.13 User memilih citra *bmp sebagai citra cover

60

Gambar 4.14 Citra cover yang telah dipilih

61

Gambar 4.15 Citra Stego yang dihasilkan setelah proses penyisipan

62

Gambar 4.16 Proses penyimpanan citra stego

62

Gambar 4.17 User memilih citra stego

63

Gambar 4.18 Proses ekstraksi ciphertext dari citra stego

63

Gambar 4.19 Pesan dialog citra tidak menyimpan pesan rahasia

64

Gambar 4.20 Pesan dialog berupa peringatan kunci dekripsi dan nilai N tidak boleh

kosong dan harus dalam bentuk numerik

64

Gambar 4.21 Proses dekripsi ciphertext menjadi plaintext

65

Gambar 4.22 Grafik jumlah karakter Plaintext terhadap lama proses enkripsi

67

Gambar 4.23 Grafik jumlah karakter Plaintext terhadap lama proses penyisipan 68

Gambar 4.24 Grafik jumlah karakter Ciphertext terhadap lama proses ekstraksi 72

Gambar 4.25 Grafik jumlah karakter Ciphertext terhadap lama proses dekripsi 74

Universitas Sumatera Utara

DAFTAR LAMPIRAN
A. Listing Program B. Curriculum Vitae

Halaman
A-1 B-1

Universitas Sumatera Utara

ABSTRAK
Perkembangan teknologi informasi yang semakin melesat dewasa ini memberikan kemudahan bagi siapa saja dalam melakukan komunikasi ataupun pertukaran informasi. Di sisi lain, dengan kemudahan tersebut timbul juga permasalahan lain dalam hal keamanan dan kerahasiaan data yang dapat terganggu oleh tindakan kejahatan komputer seperti penyadapan, perusakan ataupun pencurian data dan informasi. Kombinasi kriptografi dan steganografi dapat menjadi salah satu solusi untuk mencegah tindak kejahatan komputer tersebut. Kriptografi merupakan seni atau ilmu untuk menjaga keamanan data dengan cara mengacak data atau pesan. Sedangkan steganografi merupakan ilmu dan seni untuk menyembunyikan pesan dalam suatu media lain. Pada penelitian ini, pesan atau file teks yang akan dikirim terlebih dahulu enkripsi dengan algoritma kriptografi LUC, selanjutnya hasil enkripsi akan disembunyikan pada suatu file citra dengan format bitmap dengan menggunakan metode steganografi End of File. Kemudian dilakukan proses ekstraksi pesan dari dalam citra untuk selanjutnya di dekripsi agar kembali menjadi pesan asli. Implementasi sistem menggunakan MatLab R2012a. Sistem diuji dengan melakukan proses enkripsi dan dekripsi, serta penyisipan dan ekstraksi pesan hingga 100.000 karakter. Hasil pengujian menunjukkan bahwa panjang karakter yang dienkripsi dan didekripsi berbanding lurus dengan kecepatan waktu eksekusi. Kata Kunci: Kriptografi, Steganografi, LUC, End Of File
Universitas Sumatera Utara

IMPLEMENTATION OF COMBINATION OF CRYPTOGRAPHY LUC ALGORITHM AND STEGANOGRAPHY END OF FILE ON DATA TEXT SECURITY
ABSTRACT
The rapid development in information technology these days provides the convenience for everyone to communicate or exchange information. On the other hand, along with those conveniences, another problem arises in terms of security and confidentiality of the data that can be disrupted by computer criminality, such as tapping, theft or destruction of data and information. The combination of cryptography and steganography can be one of the solutions to prevent such computer criminality. Cryptography is an art or knowledge to secure data by scrambling the data or message. Meanwhile, steganography is a knowledge and art to hide messages in other media. In this research, messages or file text that will be sent is encrypted first with LUC algorithm, and then the ciphertext will be hidden in an image file with a bitmap format using the steganography End of File method. Later on, extraction will be done to the message in the image to be decrypted to the original message. Implementation of the system will use MatLab R2012a. System was tested by performing encryption and decryption process, as well as the embedding and extraction of the message to 100.000 characters. The test result showed that the length of the encrypted and decrypted character is proportional to the speed of the execution time.
Keyword: Cryptography, Steganography, LUC, End Of File
Universitas Sumatera Utara

BAB I
PENDAHULUAN
1.1 Latar Belakang
Keamanan dan kerahasiaan informasi merupakan hal yang sangat penting bagi suatu individu, organisasi ataupun perusahaan. Suatu data atau informasi akan memiliki nilai yang lebih tinggi jika menyangkut tentang aspek-aspek bisnis, keamanan ataupun kepentingan umum. Informasi-informasi tersebut tentunya akan banyak diminati oleh berbagai pihak yang juga memiliki kepentingan didalamnya. Terlebih lagi dengan perkembangan teknologi informasi dewasa ini, yang memberikan kemudahan bagi kita untuk melakukan komunikasi dan pertukaran informasi melalui internet. Hal ini juga dapat meningkatkan tindakan kejahatan komputer yang dapat dilakukan melalui teknologi yang biasa disebut dengan istilah cybercrime, seperti penyadapan, pencurian ataupun perusakan data atau informasi.
Untuk melindungi dan menjaga kerahasiaan informasi agar terhindar dari tindakan-tindakan kejahatan komputer oleh orang-orang yang tidak berhak, maka salah satu cara yang dapat dilakukan adalah dengan memanfaatkan teknik kriptografi. Kriptografi merupakan ilmu dan seni untuk menjaga keamanan pesan ketika pesan dikirim dari suatu tempat ketempat yang lain [3]. Pesan asli disebut plaintext dan pesan rahasia disebut ciphertext. Proses untuk mengubah plaintext menjadi ciphertext disebut dengan enkripsi atau enciphering. Sebaliknya, proses mengubah ciphertext menjadi plaintext disebut dengan dekripsi atau deciphering [9].
Salah satu metode kriptografi adalah algoritma LUC. Algoritma ini pertama kali diperkenalkan oleh Peter J. Smith dan Michael J. J. Lennon pada tahun 1993 di New Zealand. Algoritma ini merupakan algoritma kunci publik yang berbasis dari Lucas Function [2].
Selain dengan kriptografi, cara lain yang dapat digunakan untuk melindungi kerahasiaan informasi adalah dengan teknik steganografi. Steganografi merupakan ilmu dan seni untuk menyembunyikan pesan dalam suatu media sehingga orang lain tidak menyadari keberadaan pesan tersebut. Berbeda dengan kriptografi yang melakukan perubahan terhadap pesan, steganografi bertujuan untuk menghilangkan
1
Universitas Sumatera Utara

kecurigaan dengan cara menyamarkan pesan tersebut [4]. Kombinasi antara kriptografi dan steganografi ini diharapkan dapat menghasilkan perlindungan yang lebih baik bagi pesan/informasi, yaitu dengan mengenkripsikan pesan terlebih dahulu dengan teknik kriptografi, lalu menyembunyikan pesan yang telah dienkripsi dengan teknik steganografi.
Sebelumnya Saputra et al. (2006) telah melakukan penelitian tentang Kriptografi Teks dengan Menggunakan Algoritma LUC. Pada penelitian tersebut dihasilkan enkripsi berupa teks yang telah disandikan dalam bentuk bilangan [12]. Selanjutnya Irawan (2013) juga melakukan penelitian tentang sistem keamanan pesan pada Android dengan algoritma LUC yang berhasil mengenkripsi pesan huruf kapital di Android Gingerbread (2.3.4) [7]. Selain itu Wandani (2012) melakukan penelitian yang menerapkan sistem keamanan data dengan tenkik steganografi End of File dan Rabin Public Key Cryptosystem. Penelitian tersebut berhasil menyisipkan pesan rahasia yang sebelumnya telah dienkripsi ke dalam sebuah citra [16].
Berdasarkan pemaparan di atas, maka penulis akan mencoba melakukan penelitian dengan judul “Implementasi Kombinasi Algoritma Kriptografi LUC dan Steganografi End of File pada Pengamanan Data Teks”.
1.2 Rumusan Masalah Rumusan masalah yang akan dibahas pada penelitian ini adalah bagaimana menerapkan kombinasi antara algoritma kriptografi LUC dengan steganografi End of File untuk pengamanan data teks.
1.3 Batasan Masalah Beberapa batasan masalah pada penelitian ini adalah sebagai berikut:
1. Pengujian bilangan prima yang digunakan adalah algoritma Lehmann 2. Pesan berupa inputan langsung dan dalam bentuk *.txt dan *.rtf 3. Media penyisipan pesan adalah citra true color 24 bit dengan format *.bmp 4. Pesan yang dapat dienkripsi adalah karakter-karakter didalam tabel ASCII
(American Standard Code for Information Interchange) 5. Aplikasi dibuat dengan MatLab R2012a
Universitas Sumatera Utara

1.4 Tujuan Penelitian 1. Mengetahui proses enkripsi dan dekripsi pesan teks dengan menggunakan algoritma kriptografi LUC 2. Mengetahui proses penyisipan dan ekstraksi pesan teks dengan menggunakan algoritma steganografi End of File 3. Merancang aplikasi yang mengkombinasikan algoritma kriptografi LUC dan steganografi End of File
1.5 Manfaat Penelitian Manfaat dari penelitian ini yaitu:
1. Menjaga keamanan dan kerahasiaan pesan yang akan dikirim/didistribusikan dengan menerapkan algoritma kriptografi LUC dan teknik steganografi End of File.
2. Sebagai bahan referensi bagi peneliti lain yang ingin melakukan penelitian dalam bidang kriptografi dan steganografi
1.6 Metodologi Penelitian Metode penelitian yang dilakukan dalam penelitian ini adalah: 1. Studi literatur
Dilakukan pengumpulan bahan referensi yang dapat berupa buku, jurnal, makalah, e-book, serta hasil penelitian yang berkaitan tentang algoritma kriptografi LUC dan steganografi End of File.
2. Analisis dan Perancangan Pada tahap ini, dilakukan analisis terhadap algoritma kriptografi LUC dan steganografi End of File, serta analisis masalah dan analisis persyaratan sistem. Selanjutnya dilakukan perancangan dalam bentuk flowchart, pseudocode dan desain antarmuka (interface) dari sistem.
Universitas Sumatera Utara

3. Implementasi Algoritma kriptografi LUC dan steganografi End of File diimplementasikan kedalam bentuk aplikasi perangkat lunak untuk pengamanan data teks

4. Pengujian Pengujian dilakukan terhadap keberhasilan proses yang dilakukan dalam kriptografi (pembangkitan kunci, enkripsi dan dekripsi) serta proses peyisipan dan ekstraksi pesan rahasia.

5. Dokumentasi Selama analisis dan perancangan sistem hingga pengujian, dilakukan pendokumentasian berupa laporan skripsi.

1.7 Sistematika Penulisan Sistematika penulisan skripsi ini terdiri dari beberapa bagian utama, yaitu:

BAB I

PENDAHULUAN Bab ini menjelaskan latar belakang judul skripsi ”Implementasi Kombinasi Algoritma Kriptografi LUC dan Steganografi End of File pada Pengamanan Data Teks”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian dan sistematika penulisan.

BAB II

LANDASAN TEORI Bab ini berisi penjelasan mengenai sistem kriptografi dan teori-teori dasar yang digunakan dalam algoritma LUC, serta steganografi End of File.

BAB III ANALISIS DAN PERANCANGAN Bab ini membahas analisis terhadap masalah peelitian dan perancangan terhadap sistem yang akan dibangun.

Universitas Sumatera Utara

BAB IV IMPLEMENTASI DAN PENGUJ IAN Bab ini berisi implementasi algoritma kriptografi LUC dan steganografi End of File, pengujian terhadap sistem yang telah dibangun, serta pembahasan hasil pengujian.

BAB V

KESIMPULAN DAN SARAN Bab ini memuat kesimpulan dari keseluruhan uraian bab-bab sebelumnya dan saran berdasarkan hasil pengujian yang diharapkan dapat bermanfaat untuk pengembangan selanjutnya.

Universitas Sumatera Utara

Universitas Sumatera Utara

BAB II LANDASAN TEORI
2.1 Teori Bilangan 2.1.1 Keterbagian
Jika a dan b ∈Z (Z = himpunan bilangan bulat) dimana b ≠ 0, maka dapat dikatakan b habis dibagi dengan a atau b mod a = 0 dan dinotasikan dengan a|b jika terdapat suatu bilangan x ∈Z sehingga membentuk a = bx. Jika b tidak habis dibagi dengan a atau b mod a ≠ 0, maka dapat dinotasikan sebagai a | b [9]. Contoh:
3 | 9 9 ÷ 3 = 3 atau 9 mod 3 = 0 3 | 5 5 ÷ 3 = 1,67 atau 5 mod 3 = 2
2.1.2 Greatest Common Divisor (GCD) Misalkan a,b ∈Z dan a,b ≠ 0, maka d disebut Greatest Common Divisor (GCD) atau Faktor Persekutuan Terbesar (FPB) dari a dan b jika:
(i) d > 0 (ii) d|a dan d|b dan dinotasikan sebagai d = gcd(a,b) [9]. Contoh:
Faktor Pembagi 15 = {1,3,5,15} Faktor Pembagi 25 = {1,5,25} Maka gcd(15,25) adalah 5
2.1.3 Algoritma Euclidean Algoritma Euclidean merupakan algoritma yang digunakan untuk mencari gcd dari dua bilangan bulat. Algoritma ini ditemukan oleh seorang matematikawan Yunani bernama Euclid, yang menuliskan algoritmanya tersebut dalam bukunya yang terkenal, Element [11].
51
Universitas Sumatera Utara

Misalkan m dan n adalah bilangan bulat tak negatif dengan m ≥ n. Misalkan r0

= m dan r1 = n. Lakukan pembagian secara berturut – turut untuk memperoleh

r0 = r1q1 + r2

0 ≤ r2 ≤ r1,

r1 = r2q2 + r3

0 ≤ r3 ≤ r2,



rn-2 = rn-1 qn-1 + rn

0 ≤ rn ≤ rn-1,

rn-1 = rn qn + 0

gcd (m,n)

= gcd(r0,r1) = gcd(r1,r2) = ... = gcd(rn-2,rn-1) = gcd(rn-1,rn) = gcd(rn,0) = rn

Jadi, gcd dari m dan n adalah sisa terakhir yang tidak nol dari runtunan pembagian tersebut [11]. Contoh: Tentukan gcd(150, 22)
150 mod 22 = 18 22 mod 18 = 4 18 mod 4 = 2
4 mod 2 = 0 (berhenti) Maka gcd(150,22) adalah 2

2.1.4 Relatif Prima
Jika a,b ∈Z dan gcd(a,b) = 1 maka a dan b dikatakan relatif prima [9]. Contoh:
11 dan 7 relatif prima karena gcd(11,7) = 1 15 dan 5 tidak relatif prima karena gcd(15,5) = 0 ≠ 1
2.1.5 Least Common Multiple (LCM) Misalkan a,b dan d ∈Z, d disebut Least Common Multiple atau Kelipatan Persekutuan Terbesar (KPK) dari a dan b jika:

Universitas Sumatera Utara

(i) d > 0 (ii) a|d dan b|d dan dinotasikan sebagai d = lcm(a,b) [9]. Contoh:
Tentukan lcm(12,20). Kelipatan 12 = {12,24,36,48,60,72,84,...} Kelipatan 20 = {20,40,60,80,100,...} Maka lcm(12,20) adalah 60

2.1.6 Aritmatika Modulo
Misalkan a,m ∈Z dan m > 0, operasi a mod m (dibaca “a modulo m”) memberikan sisa jika a dibagi dengan m. Dengan kata lain a mod m = r sedemikian sehingga a = mq +r, dengan 0 ≤ r < m [11].

Contoh: (ii) 30 mod 3 = 0

(i) 33 mod 5 = 3 (karena 33 dibagi 5 memberikan hasil (q) = 6 dan sisa (r) = 3, atau ditulis sebagai 33 = 5 ⋅ 6 + 3)
(30 = 3 ⋅ 10 + 0)

Misalkan a,b ∈Z dan m > 0, a dan b dikatakan kongruen dalam hal modulo m jika memiliki sisa yang sama jika dibagi dengan bilangan positif m. Hal ini dilambangkan dengan a ≡ b (mod m) . Contoh:
38 mod 5 = 3 13 mod 5 = 3 Maka 38 ≡ 13 (mod 5)

2.1.7 Invers Modulo
Misalkan suatu bilangan a relatif prima terhadap n atau gcd(a,n) = 1, maka invers dari a mod n adalah a-1 sedemikian hingga a-1. a = 1(mod n) [11].

Universitas Sumatera Utara

Contoh:
Invers Modulo dari 4 mod 11 a-1 1 2 3

a-1. 4 (mod 11) 4 8 1

Maka, invers modulo dari 4 mod 11 = 3 karena 3.4 = 1 (mod 11).

2.2 Kriptografi
Secara etimologi, Kriptografi berasal dari bahasa Yunani, yaitu krypto dan graphia. Kripto berarti rahasia dan graphia yang berarti tulisan. Menurut terminologinya kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan ketika pesan dikirim dari suatu tempat ketempat yang lain. Dalam perkembangannya, kriptografi juga digunakan untuk mengidentifikasi pengiriman pesan dengan tanda tangan digital dan keaslian pesan dengan sidik jari digital (fingerprint) [3].

Pada dasarnya, kriptografi terdiri dari beberapa komponen seperti [4]: 1. Enkripsi
Enkripsi merupakan hal yang sangat penting dalam kriptografi sebagai pengamanan atas data yang dikirmkan agar rahasianya terjaga. Enkripsi mengubah pesan asli (plaintext) menjadi kode-kode yang tidak dimengerti (ciphertext). 2. Dekripsi Dekripsi merupakan kebalikan dari proses enkripsi, yaitu mengubah kembali pesan yang telah dienkripsi ke bentuk asalnya. 3. Kunci Kunci yang dimaksud disini adalah kunci yang dipakai untuk melakukan proses enkripsi dan dekripsi. Kunci terdiri atas dua, yaitu kunci pribadi (private key) dan kunci publik (public key) 4. Ciphertext

Universitas Sumatera Utara

Ciphertext merupakan suatu pesan yang sudah melalui proses enkripsi. Pesan yang ada pada ciphertext tidak bisa dibaca karena berisi karakter-karakter yang tidak memiliki makna. 5. Plaintext Plaintext merupakan suatu pesan bermakna yang akan diproses menggunakan algoritma kriptografi agar menjadi ciphertext.
6. Pesan Pesan bisa berupa data atau informasi yang dikirim melalui kurir, saluran komunikasi data dan sebagainya.
7. Cryptanalysis Cryptanalysis bisa diartikan sebagai analisis sandi untuk mendapatkan plaintext tanpa harus mengetahui kunci secara wajar.
Adapun fungsi dari kriptografi adalah [13]: - Confidentiality (Kerahaasiaan). Menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak berhak. - Authentication (Otentikasi). Memungkinkan penerima pesan untuk memastikan asal usulnya ; artinya seorang penyelundup tidak dapat menyamarkan dirinya sebagai orang lain - Integrity (Integritas Data). Memungkinkan penerima pesan untuk membuktikan bahwa pesan tidak di modifikasi/manipulasi selama dalam pengiriman; artinya seorang penyelundup tidak bisa menukar pesan yang asli dengan pesan yang salah. - Nonrepudiation (Non-Penyangkalan). Pengirim tidak bisa menyangkal bahwa ia telah mengirimkan pesan.
2.2.1 Algoritma Simetris
Algoritma simetris merupakan algoritma yang menggunakan kunci yang sama pada proses enkripsi dan dekripsinya. Algoritma simetris juga biasa disebut algoritma konvensional. Sistem kriptografi dengan algoritma simetris ini mengasumsikan pengirim dan penerima pesan sudah berbagi kunci yang sama sebelum bertukar pesan. Keamanan algoritma simetris ini terletak pada kerahasiaan kuncinya [10]
Universitas Sumatera Utara

Gambar 2.1 Skema Kriptografi Algortma Simetris. [10]. Algoritma simetris dibagi menjadi dua kategori, yaitu stream cipher (cipher aliran) dan block cipher. Stream cipher beroperasi dengan melakukan enkripsi dan dekripsi terhadap satu bit atau satu byte data. Sedangkan block cipher beroperasi dengan melakukan enkripsi dan dekripsi terhadap satu blok data [13].
Beberapa sistem kriptografi yang menggunakan algoritma simetris adalah [3]: - One Time Pad - RC 4 - Data Encryption Standard (DES) - Advanced Encryption Standard (AES)
2.2.2 Algoritma Asimetris (Public Key Algorithm) Algoritma asimetris merupakan algoritma yang memiliki kunci yang berbeda untuk proses enkripsi dan dekripsinya. Algoritma ini biasa juga disebut dengan algoritma kunci publik karena kunci untuk proses enkripsi bersifat publik, artinya siapapun bisa menggunakan kunci tersebut untuk melakukan enkripsi. Sementara itu, kunci untuk mendekripsikan pesan bersifat privat sehingga hanya si penerima pesan yang dapat mendekripsikan pesan karena hanya ia yang mengetahui kunci privatnya sendiri [13].
Gambar 2.2 Skema Kriptografi Algoritma Asimetris [10].
Universitas Sumatera Utara

Contoh sistem kriptografi yang menggunakan algoritma kunci publik adalah RSA (Rivest Shamir Adleman), ElGamal dan LUC.

2.2.3 Algoritma Asimetris Non Public Key

Algoritma kriptografi non Public Key merupakan algoritma kriptografi dimana kunci yang digunakan untuk proses enkripsi dan dekripsinya berbeda, maka tidak termasuk algoritma simetris. Namun algoritma ini tidak termasuk dalam kriptografi kunci publik karena kedua kunci dapat dengan mudah diturunkan satu sama lain, jadi kedua kuncinya harus tetap dirahasiakan. Contoh algoritma yang menggunakan kriptografi non-public key adalah Pohlig-Hellman [13].

Kunci Privat, K1

Kunci Privat, K2

Plaintext, P

Enkripsi EK1(P) = C

Ciphertext, C

Dekripsi DK2(C) = P

Plaintext, P

Gambar 2.3. Skema Kriptografi Algoritma Non Public Key.
2.3 Algoritma Kriptografi LUC
Algoritma kriptografi LUC merupakan salah satu sistem kriptografi yang menerapkan algoritma kunci publik. Algoritma ini dikemukakan oleh Peter J. Smith dan Michael J.J. Lennon pada tahun 1993 di New Zealand. LUC memiliki tiga tahap utama, yaitu pembangkitan kunci, enkripsi dan dekripsi [2].
LUC dibangun berdasarkan fungsi Lucas (Lucas Function). Penggunaan fungsi Lucas didalam mengolah data dari plaintext menjadi ciphertext atau sebaliknya hampir menyerupai fungsi pemangkatan yang digunakan oleh RSA.

Universitas Sumatera Utara

Fungsi Lucas merupakan fungsi deret dan yang dibangun dari dua

bilangan integer P dan Q. Kemudian dibangun sebuah persamaan kuadrat − +

= 0. Jika akar dari persamaan tersebut adalah a dan b, maka didapatkan P = a+b

dan Q = ab. Kemudian fungsi Lucas didefinisikan sebagai berikut [2]:

= ( − )/ ( − )

(1)

=+

(2)

Dua fungsi pada barisan Lucas dapat diturunkan dari persamaan (1) dan (2) yang

didefinisikan sebagai berikut:

=− dimana n ≥ 2, = 0 dan = 1

(3)

=−

(4)

dimana n ≥ 2, = 2 dan =

Sistem kriptografi LUC hanya akan menggunakan deretan dengan nilai Q=1

sehingga persamaan (4) dapat didefinisikan sebagai

=−

(5)

dimana n ≥ 2, = 2 dan =

Sebagai contoh dimisalkan P = 3, Q = 1, maka 10 barisan Lucas pertama:

Tabel 2.1 Perhitungan barisan Lucas sampai n=10. [12]

2.3.1 Pembangkitan Kunci LUC
Dibutuhkan dua buah kunci, yaitu kunci publik e dan kunci privat d untuk melakukan proses enkripsi dan dekripsi pada LUC. Proses pembangkitan kunci dilakukan dengan cara sebagai berikut [15]: 1. Pilih dua buah bilangan prima acak besar p dan q, dimana p ≠ q dan gcd(p,q) = 1 2. Hitung N = p . q 3. Ambil kunci publik acak e dengan syarat e relatif prima terhadap
ϕ(N) =(p-1)(p+1)(q-1)(q+1) atau gcd(e, ϕ(N)) = 1 4. Hitung kunci dekripsi d dengan ketentuan
Universitas Sumatera Utara

R(N)=lcm((p-1),(q-1),(p+1),(q-1)) dan de =1 mod R(N)

2.3.2 Lehmann Prime Generator

Dalam algoritma kriptografi kunci publik diperlukan bilangan prima untuk proses

pembangkitan kunci. Salah satu algoritma pengujian bilangan prima adalah algoritma

Lehmann. Cara kerja algoritma Lehmann adalah sebagai berikut:

1. Pilih bilangan acak a yang lebih kecil dari p

2. Hitung = ( )/

3. Jika ( )/ ≠ 1 atau − 1 (

), maka p pasti bukan prima

4. Jika ( )/ ≡ 1 atau − 1 (

), maka kemungkinan p bikan prima tidak

lebih dari 50%

Pengujian diulangi sebanyak t kali. Jika pehitungan menghasilkan nilai 1 atau -1, tetapi tidak selalu 1, maka kemungkinan p adalah prima dengan tingkat kesalahan tidak lebih dari 1/ 2 [13]. Pengujian sebaiknya dilakukan sehingga kemungkinan primanya ≥ 99%.

Contoh 1:

Misalkan penulis ingin melakukan pengujian apakah 9 adalah bilagan prima

a=2

= 2( )/

9

≡2 9

≡ 16 mod 9 ≡ 7 ( 9)

Maka, dapat disimpulkan jika 9 bukan bilangan prima.

Contoh 2:

Misalkan penulis ingin melakukan pengujian apakah 11 adalah bilangan prima

a=2

= 2( )/

11

≡ 2 11

≡ 32 mod 11 ≡ − 1( 11) --- Kemungkinan tidak prima < 50 %

a=3

Universitas Sumatera Utara

= 3( )/

11

≡ 3 11

≡ 243 mod 11 ≡ 1(

11) --- Kemungkinan prima 50 % + 25 % = 75 %

Setelah melakukan pengujian sebanyak dua kali dan menghasilkan nilai 1 dan -1, maka dapat disimpulkan bahwa 11 adalah bilangan prima dengan kemungkinan prima 75 %.

2.3.3 Algoritma Enkripsi LUC Dengan menggunakan kunci publik e yang telah dibangkitkan sebelumnya, maka proses enkripsi pesan plaintext menjadi ciphertext dengan algoritma kriptografi LUC adalah sebagai berikut:

C = =(P − ) mod N

(6)

Fungsi enkripsi akan menghitung suku ke-n dari fungsi deret Lucas dengan indeks n adalah kunci publik e dan P adalah plaintext. Proses enkripsi akan menghasilkan ciphertext C.

2.3.4 Algoritma Dekr ipsi LUC

Untuk mengembalikan ciphertext C menjadi pesan asli/plaintext P, maka dilakukan proses dekripsi dengan menggunakan kunci privat d. Fungsi dekripsi dengan algoritma kriptografi LUC didefinisikan sebagai berikut:

P = =(C. − ) mod N

(7)

Seperti pada proses enkripsi, fungsi dekripsi akan menghitung suku ke-n dari fungsi deret Lucas dengan indeks n adalah kunci privat d dan C adalah ciphertext. Proses dekripsi akan menghasilkan pesan asli/plaintext P.

2.4 Steganografi
Istilah steganografi berasal dari bahasa Yunani, yaitu steganos yang berarti penyamaran atau penyembunyian dan graphein yang berarti tulisan. Jadi, steganografi bisa diartikan sebagai ilmu dan seni menyamarkan/menyembunyikan pesan tertulis ke dalam pesan lainnya. Steganografi menyembunyikan pesan dalam data lain tanpa mengubah data yang

Universitas Sumatera Utara

ditumpanginya sehingga data yang ditumpanginya sebelum dan setelah proses penyembunyian hampir terlihat sama.
Steganografi yang bersifat “computer-based” bisa diterapkan dengan menggunakan berbagai media sebagai cover (media penyisipan). Media penyisipan merupakan suatu media untuk menyimpan pesan rahasia. Beberapa contoh media pemyimpan pesan rahasia yang digunakan dalam teknik steganografi antara lain adalah teks, audio, citra dan video.
Perbedaan mendasar antara steganografi dengan kriptografi terletak pada proses penyembunyian data dan hasil akhir proses tersebut. Kriptografi melakukan proses pengacakan data asli sehingga dihasilkan data terenkripsi yang benar-benar acak dan berbeda dari aslinya. Sementara itu steganografi menyembunyikan data dalam data lain dengan cara menumpanginya tanpa mengubah data yang ditumpanginya tersebut sehingga tampilan data tetap terlihat sama [4]. Perbedaan steganografi dan kriptografi terlihat pada Gambar 2.4.
Gambar 2.4 Perbedaan Steaganografi dan Kriptografi [1].
2.4.1 Steganografi End of File Salah satu teknik dari steganografi adalah End of File. Teknik ini digunakan dengan cara menambahkan data diakhir file citra. Pada teknik ini, data atau file yang akan ditambahkan dapat lebih besar dari ukuran file citra [1].
Pesan yang disisipkan dengan metode ini jumlahnya tidak terbatas. Akan tetapi efek sampingnya adalah ukuran berkas menjadi lebih besar dari ukuran sebelumnya.
Universitas Sumatera Utara

Perhitungan kasar ukuran file yang telah disisipkan pesan sama dengan ukuran file sebelum disisipkan pesan ditambah dengan ukuran pesan rahasia yang disisipkan. Untuk mengenal data yang disisipkan pada akhir file, diperlukan suatu tanda pengenal atau simbol pada awal dan akhir data yang akan disisipkan [14][16].
Misalkan sebuah citra ukuran 10x6 memiliki nilai pixel seperti Gambar 2.5.
Gambar 2.5 Citra *bmp true color 200 42 97 182 101 40 24 88 63 112 67 200 100 50 75 50 121 42 91 109 25 150 65 200 75 28 56 90 83 100 156 46 77 19 25 189 84 210 78 33 101 34 213 40 101 60 80 111 143 77 44 66 99 125 190 200 31 80 92 111 Citra RGB tersebut akan disisipkan ciphertext “79 75 69”. Kemudian ciphertext yang akan ditambahkan diberi karakter “&&&” dengan kode ASCII 38 sebagai penanda awal dan ÿÿÿ dengan kode ASCII 255 sebagai penanda akhir pesan. Selanjutnya sisipkan pesan di akhir citra, sehingga citra menjadi:
200 42 97 182 101 40 24 88 63 112 67 200 100 50 75 50 121 42 91 109 25 150 65 200 75 28 56 90 83 100 156 46 77 19 25 189 84 210 78 33 101 34 213 40 101 60 80 111 143 77 44 66 99 125 190 200 31 80 92 111 38 38 38 79 75 69 255 255 255 0
Universitas Sumatera Utara

Gambar 2.6 Citra setelah disisip pesan
Dan matriks tersebut akan dipetakan kembali dalam bentuk citra baru seperti Gambar 2.6 yang disebut stego image [7]. Jika besar plaintext tidak memenuhi lebar pixel citra, maka akan ditambahkan nilai pixel 0 yang merepresentasi warna hitam.
2.5 Penelitian yang Relevan Berikut adalah beberapa penelitian tentang algoritma kriptografi LUC dan steganografi End of File:
1. Pada penelitian yang dilakukan Irawan [7]. Penelitian yang bertujuan untuk merancang sebuah aplikasi yang mampu melakukan pengamanan pesan SMS pada telepon seluler berbasis android dengan menggunakan algoritma kriptografi LUC. Penelitian ini berhasil melakukan enkripsi dan dekripsi pesan teks yang terdiri dari huruf kapital.
2. Pada penelitian yang dilakukan Jauyah [8]. Penelitian ini bertujuan untuk membangun sebuah prototipe untuk aplikasi pengenalan telnet di lingkungan sistem operasi Linux dengan menggunakan sistem kriptografi LUC. Selain itu, peneliti juga melakukan perbandingan antara sistem kriptografi LUC dan RSA dari aspek pelaksanaan dan keselamatan, dan menyatakan bahwa sistem kripto LUC memiliki perbedaan yang tidak begitu signifikan dibandingkan dengan
Universitas Sumatera Utara

sistem kripto RSA dan dapat dijadikan sebagai alternatif dengan kemampuan yang cukup baik [8]. 3. Penelitian yang dilakukan oleh Wandani [16]. Penelitian ini berhasil mengkombinasikan algoritma kriptografi Rabin untuk mengenkripsi pesan berupa angka, lalu menyisipkan pesan kedalam sebuah citra berformat *bmp dengan teknik steganografi End of File.
Universitas Sumatera Utara

BAB III ANALISIS DAN PERANCANGAN
3.1 Analisis Algoritma Kriptografi LUC dan Steganografi End of File 3.1.1 Analisis Algor itma Kriptografi LUC Algoritma kriptografi LUC merupakan algoritma kriptografi yang menggunakan kunci asimetris dan dibangun berdasarkan fungsi deret Lucas. Terdapat tiga proses utama dalam algoritma kriptografi LUC, yaitu pembangkitan kunci, enkripsi dan dekripsi.
3.1.1.1 Pembangkitan Kunci LUC Langkah – langkah yang digunakan dalam proses pembangkitan kunci LUC adalah sebagai berikut: 5. Pilih dua buah bilangan prima acak besar p dan q, dimana p ≠ q dan gcd(p,q) = 1
Contoh: Misalkan diketahui bilangan prima p = 13 dan q = 17 gcd(13,17) = 1
6. Hitung N = p . q Contoh: N = p.q = 13. 17 N = 221
7. Ambil kunci publik acak e dengan syarat e relatif prima terhadap ϕ(N) =(p-1)(p+1)(q-1)(q+1) atau gcd(e, ϕ(N)) = 1
Contoh: • Hitung Φ (N) = (p – 1) · (q – 1) · (p +1) · (q +1)
Universitas Sumatera Utara

= (13 – 1) · (17 – 1) · (13 +1) · (17 +1) = 12 · 16 · 14 · 18 Φ (N) = 48384 • Pilih e secara acak dengan syarat gcd(e, Φ(N)) = 1 Misalkan e = 61, nilai memenuhi syarat karena gcd(61, 48384) = 1
8. Hitung kunci dekripsi d dengan ketentuan R(N)=lcm((p-1),(q-1),(p+1),(q-1)) dan de =1 mod R(N) Contoh: • Hitung nilai R(N) = lcm((12),(16),(14),(18)) R(N) = 1008
• Cari nilai dengan d·61 = 1 mod 1008 . proses pencarian nilai d dapat dilihat pada Tabel 3.1 dibawah ini
Tabel 3.1 Proses perhitungan kunci dekripsi d d d. 61 (mod 1008) 1 61 2 122 3 283 ⋮⋮ 661 1
Jadi kunci privat d = 661.
3.1.1.2 Proses Enkripsi LUC Dengan menggunakan kunci publik e yang telah dibangkitkan sebelumnya, maka proses enkripsi pesan plaintext menjadi ciphertext dengan algoritma kriptografi LUC adalah sebagai berikut: 1. Tentukan plaintext P dan ubah nilai P kedalam nilai ASCII
Contoh: Misalkan plaintext P = AKU dengan nilai ASCII = 65 75 85 .
Universitas Sumatera Utara

2. Hitung ciphertext C dengan menggunakan rumus: C = =(P − ) mod N
dimana indeks n adalah kunci publik e dan P adalah plaintext. Sesuai dengan ketetapan pada fungsi deret Lucas, maka nilai = 2 dan = . Contoh:
Diketahui n = e = 61 N = 221 • Untuk P = 65 V0 = 2 V1 = P = 65 V2 = (P.V1 – V0) mod N
= (65.65- 2) mod 221 = 24 ⋮ V97 = 143
• Untuk P = 75 V0 = 2 V1 = P = 75 V2 = (P.V1 – V0) mod N = (75.75 - 2) mod 221 = 98 ⋮ V97 = 98
Universitas Sumatera Utara

• Untuk P = 85 V0 = 2 V1 = P = 85 V2 = (P.V1 – V0) mod N = (85.85 - 2) mod 221 = 151 ⋮ V97 = 34 Maka, ciphertext yang diperoleh adalah “143 98 34”
3.1.1.3 Proses Dekripsi LUC Untuk mengembalikan ciphertext C menjadi pesan asli/plaintext P, maka dilakukan proses dekripsi dengan menggunakan kunci privat d. Langkah – langkah proses dekripsi dengan algoritma kriptografi LUC didefinisikan sebagai berikut: 1. Tentukan ciphertext C
Contoh: Misalkan ciphertext C = 143 98 34
2. Hitung plaintext P dengan menggunakan rumus: P = =(C − ) mod N
dimana indeks n adalah kunci publik d dan C adalah ciphertext. Contoh:
Diketahui n = d = 661 N = 221

• Untuk C = 143 V0 = 2 V1 = C = 143

Universitas Sumatera Utara

V2 = (C.V1 – V0) mod N = (143. 143 - 2) mod 221 =
⋮ V181 = 65 = A
• Untuk C = 98 V0 = 2 V1 = C = 98 V2 = (C.V1 – V0) mod N = (98. 98 - 2) mod 221 = 99 ⋮ V181 = 75 = K
• Untuk C = 34 V0 = 2 V1 = C = 34 V2 = (C.V1 – V0) mod N = (34.34 - 2) mod 221 = 49 ⋮ V181 = 85 = U Maka, plaintext yang diperoleh adalah “AKU”
Universitas Sumatera Utara

3.1.2 Analisis Metode Steganografi End of File Steganografi End of File merupakan metode steganografi dimana penyisipan pesan dilakukan pada akhir file, sehingga tidak akan mengganggu kualitas citra yang disisipi. Pada steganografi End of File terdapat dua proses utama, proses penyisipan pesan kedalam suatu file atau Embedding, dan proses pengambilan pesan dari suatu file atau Extraction. File yang digunakan sebagai media penyisipan disebut cover. Beberapa contoh media penyimpan pesan rahasia yang digunakan dalam teknik steganografi antara lain adalah teks, audio, citra dan video.
Pada penelitian ini, media yang digunakan sebagai cover adalah citra true color berformat *bmp. Sedangkan pesan yang akan disisipkan merupakan pesan teks pada file berformat *txt atau *rtf yang sudah dienkripsi terlebih dahulu dengan algoritma kriptografi LUC.
3.1.2.1 Proses Embedding Steganografi End of File Langkah - langkah pada proses penyisipan pesan atau Embedding dengan menggunakan metode steganografi End of File adalah sebagai berikut: 1. Input ciphertext yang akan disisipkan
Contoh: Ciphertext yang akan disisipkan adalah “143 98 34”
2. Pilih citra *bmp yang akan digunakan sebagai citra cover dan baca nilai tiap pixel dari citra cover Contoh: Misalkan citra dengan ukuran 10 x 6 dengan nilai pixel 196 10 97 182 101 40 24 88 63 112 67 200 100 50 90 50 121 42 92 109 25 150 45 200 75 28 56 90 88 100 176 56 77 100 25 200 84 211 78 33 101 34 250 40 100 60 90 111 143 77 44 66 99 125 190 200 31 80 92 111
Universitas Sumatera Utara

3. Tambahkan ciphertext pada akhir pixel citra, beri penanda sebagai awal dan akhir ciphertext. Contoh: Misalkan karakter penanda awal adalah “&&&” dengan nilai ASCII = 38 dan karakter penanda akhir adalah “ÿÿÿ” dengan nilai ASCII = 255 196 10 97 182 101 40 24 88 63 112 67 200 100 50 90 50 121 42 92 109 25 150 45 200 75 28 56 90 88 100 176 56 77 100 25 200 84 211 78 33 101 34 250 40 100 60 90 111 143 77 44 66 99 125 190 200 31 80 92 111 38 38 38 143 98 34 255 255 255 0
Jika besar plaintext tidak memenuhi lebar pixel citra, maka akan ditambahkan nilai pixel 0 yang merepresentasi warna hitam.
4. Petakan kembali menjadi sebuah citra baru. Citra baru yang telah disisipi ciphertext ini disebut stego image atau citra stego. 196 10 97 182 101 40 24 88 63 112 67 200 100 50 90 50 121 42 92 109 25 150 45 200 75 28 56 90 88 100 176 56 77 100 25 200 84 211 78 33 101 34 250 40 100 60 90 111 143 77 44 66 99 125 190 200 31 80 92 111 38 38 38 143 98 34 255 255 255 0
3.1.2.2 Proses Extraction Steganografi End of File Langkah - langkah pada proses pengambilan pesan atau Extraction dengan menggunakan metode steganografi End of File adalah sebagai berikut: 1. Inputkan citra stego dan baca nilai tiap pixel dari citra stego
Contoh: 196 10 97 182 101 40 24 88 63 112 67 200 100 50 90 50 121 42 92 109
Universitas Sumatera Utara

25 150 45 200 75 28 56 90 88 100 176 56 77 100 25 200 84 211 78 33 101 34 250 40 100 60 90 111 143 77 44 66 99 125 190 200 31 80 92 111 38 38 38 143 98 34 255 255 255 0
2. Ambil nilai pixel awal karakter penanda sampai karakter penanda terakhir pada baris akhir pixel citra stego Contoh: 38 38 38 143 98 34 255 255 255 0
3. Petakan menjadi ciphertext Contoh : Ciphertext berada diantara nilai karakter penanda awal “&&&” dan karakter penanda akhir “ÿÿÿ”, maka diperoleh ciphertext 143 98 34.
3.2 Analisis Sistem 3.2.1 Analisis Persyaratan (Requirement Analysis) Analisis persyaratan tebagi menjadi dua, yaitu analisis persyaratan fungsional dan analisis persyaratan non fungsional.
3.2.1.1 Analisis Persyaratan Fungsional (Functional Requirement) Analisis fungsional pada sistem adalah segala proses – proses yang dapat dilakukan oleh sistem. Pada penelitian ini persyaratan fungsi