Implementasi Pengamanan File Text Dengan Algoritma Kriptografi Kanpsak dan Algoritma Steganografi FOF First of File)

IMPLEMENTASI PENGAMANAN FILE TEXT DENGAN ALGORITMA KRIPTOGRAFI KNAPSACK DAN ALGORITMA STEGANOGRAFI

  FOF (First of File)

SKRIPSI DISA HAYANTI 091401066 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2013

  

IMPLEMENTASI PENGAMANAN FILE TEXT DENGAN

ALGORITMA KRIPTOGRAFI KNAPSACK

DAN ALGORITMA STEGANOGRAFI

FOF (First of File)

  SKRIPSI Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar Sarjana

  Komputer DISA HAYANTI

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

  2013

      PERSETUJUAN

  Judul IMPLEMENTASI PENGAMANAN FILE TEXT DENGAN ALGORITMA KRIPTOGRAFI KNAPSACK DAN ALGORITMA STEGANOGRAFI FOF (First of

  File)

  Kategori SKRIPSI Nama DISA HAYANTI Nomor Induk Mahasiswa 091401066 Program Studi SARJANA (S1) ILMU KOMPUTER Fakultas

  ILMU KOMPUTER DAN TEKNOLOGI INFORMASI Diluluskan di Medan, 2013

  Komisi Pembimbing Pembimbing

  II, Pembimbing I, Herriyance, ST, M.Kom Dr. Poltak Sihombing, M.Kom NIP. 19801024 201012 1 002 NIP. 19620317 199103 1 001 Diketahui/Disetujui oleh Program Studi S1 Ilmu Komputer Ketua, Dr. Poltak Sihombing, M.Kom NIP. 19620317 199103 1 001

     

PERNYATAAN

  

IMPLEMENTASI PENGAMANAN FILE TEXT DENGAN ALGORITMA

KRIPTOGRAFI KNAPSACK DAN ALGORITMA STEGANOGRAFI

FOF (First of File)

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

  Medan, 2013 Disa Hayanti 091401066

      PENGHARGAAN

  Puji dan syukur penulis ucapkan kepada Tuhan yang Maha Kuasa atas segala berkat dan kasih karuniaNya sehingga penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fasilkom-TI Universitas Sumatera Utara.

  Ucapan terima kasih penulis sampaikan kepada :

  1. Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H, M.Sc(CTM). Ap.A(K) selaku Rektor Universitas Sumatera Utara.

  2. Bapak Prof. Dr. Muhammad Zarlis, M.Kom, selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

  3. Bapak Dr. Poltak Sihombing, M.Kom, selaku Ketua Departemen Ilmu Komputer Universitas Sumatera Utara.

  4. Ibu Maya Silvi Lydia, B.Sc, M.Sc, selaku Sekretaris Departemen Ilmu Komputer Universitas Sumatera Utara.

  5. Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, semua dosen dan pegawai pada program studi S1 Ilmu Komputer Fasilkom-TI USU.

  6. Bapak Dr. Poltak Sihombing, M.Kom dan Bapak Herriyance, ST, M.Kom, selaku Dosen Pembimbing.

  7. Bapak Syahril Efendi, S.Si, MIT dan Bapak Amer Sharif, S.Si, M.Kom, selaku Dosen Penguji.

  8. Bapak Ade Candra, ST. M.Kom, selaku dosen pembimbing akademik saya.

  9. Ayahanda M.Siregar dan Ibunda N.Pasaribu yang telah membesarkan, mendidik saya dan juga kepada saudara-saudara saya, Susi H.S., Ria J.H.S., Leonardo.S yang selalu mendoakan, menyayangi, mendukung baik material dan spiritual.

  10. Dan juga kepada teman-teman satu stambuk 2009 kom B dan kom A yang namanya tidak bisa disebutkan satu per satu.

  Penulis menyadari bahwa skripsi ini jauh dari sempurna baik dari segi materi maupun cara penyajiannya. Oleh karena itu, penulis menerima kritik dan saran yang bersifat membangun untuk menyempurnakan skripsi ini. Penulis berharap, agar skripsi ini dapat bermanfaat bagi penulis dan pembaca.

  Medan, 2013 Penulis

     

ABSTRAK

  Perkembangan teknologi yang semakin maju mengakibatkan keamanan data menjadi sangat penting karena teknik-teknik kejahatan terhadap data seperti dalam hal pengiriman dan penerimaan data juga semakin berkembang sehingga pengamanan terhadap data juga perlu harus ditingkatkan. Masalah yang diangkat pada penelitian adalah pengamanan file

  

text dengan menggunakan dua metode, yaitu kriptografi Merkle Hellman Knapsack

  dengan penambahan permutasi dan steganografi FOF (First of File). Kriptografi Merkle

  

Hellman Knapsack mengenkripsi plaintext dengan menggunakan kunci publik, sedangkan

untuk dekripsi ciphertext digunakan kunci privat dan posisi kunci hasil permutasi.

  Keamanan terhadap data ditingkatkan dengan cara menyembunyikan data pada citra secara FOF. Dari hasil penelitian, pada kriptografi proses dekripsi membutuhkan waktu lebih lama dari pada proses enkripsi dan perbedaan ukuran kedua proses, yaitu ciphertext jauh lebih besar beberapa kali lipat dari plaintext. Selain itu, banyak elemen kunci juga mempengaruhi ukuran ciphertext. Pada algoritma FOF mengakibatkan tinggi pixel citra semakin bertambah dan garis pada bagian atas citra terlihat semakin jelas sesuai dengan pertambahan ukuran ciphertext yang disisipi. Ukuran citra sebagai coverimage juga mempengaruhi besar garis pada bagian atas citra.

  Katakunci : Kriptografi, steganografi, Merkle Hellman Knapsack, FOF (First of File)

     

  

IMPLEMENTATION OF SECURITY TEXT FILE WITH CRYPTOGRAPHY

KNAPSACK ALGORITHM AND STEGANOGRAFI FOF (First of File)

ALGORITHM

ABSTRACT

  The development of increasingly advanced technology make security data becomes very important because techniques crimes againts data such as sending and receiving data is also growing so that the security of the data also needs to be improved. The issues raised in this research is security of text file using two methods, that is Merkle Hellman Knapsack cryptography with the addition of permutations and FOF (First of File) steganography. Merkle Hellman Knapsack cryptography encrypt the plaintext using public key, whereas for decryption ciphertext using private key and position key after permutation. Security of data enhanced by hiding data to image by FOF. From the research, process of decryption takes longer than the encryption process and differences in the size of both processes, that is ciphertext is much greater multiple of the plaintext. Moreover, amount of key elements also affect the size of the ciphertext. FOF algorithm resulted in increasingly high pixel image and line at the top of the image is evident in accordance with the increase in size ciphertext which is inserted. Image size as coverimage also affect the large line at the top of the image.

  

Keyword : Cryptography, steganography, Merkle Hellman Knapsack, FOF (First of File)

     

DAFTAR ISI

  Pernyataan iii Penghargaan iv Abstrak v Abstract vi Daftar Isi vii

  13

  10

  2.3 Landasan Matematika Kriptografi

  11

  2.3.1 Aritmetika Modulo

  11

  2.3.2 Teorema Euclidean 12

  2.3.3 Relatif Prima

  12

  2.3.4 Permutasi (Transposisi)

   12

  2.4 Algoritma Kriptografi Knapsack

  2.4.1 Knapsack Problem 13

  9

  2.4.2 Algoritma Knapsack Sederhana

  13

  2.4.3 Superincreasing Knapsack Problem

  14

  2.4.4 The Merkle Hellman Knapsack Cryptosystem

  16

  2.5 Steganografi

  20

  2.5.1 Defenisi Steganografi

  20

  2.5.2 Konsep dan Terminologi

  21

  2.2.2 Algoritma Asimetris (Kunci Publik)

  2.2.1 Algoritma Simetris (Konvensional)

  Daftar Tabel x

  3

  Daftar Gambar xi

  Daftar Lampiran xiii

   

  Bab I Pendahuluan

  1.1 Latar Belakang

  1

  1.2 Rumusan Masalah

  2

  1.3 Batasan Masalah

  3

  1.4 Tujuan Penelitian

  1.5 Manfaat Penelitian

  Halaman Persetujuan ii

  4

  1.6 Sistematika Penulisan

  4 Bab II Landasan Teori

  2.1 Kriptografi

  6

  2.1.1 Definisi Kriptografi

  6

  2.1.2 Terminologi

  6

  2.1.3 Tujuan Kriptografi

  8

  2.2 Kriptografi Simetri dan Asimetri

  9

     

  2.5.3 Kriteria Steganografi

  22

  2.5.4 Metode First Of File (FOF)

  23

  2.5.5 Citra

  24

  2.5.6 Format File Citra Bitmap

   25 Bab III Analisis dan Perancangan Sistem

  3.1 Analisis Sistem

  26

  3.1.1 Analisis Masalah

  26

  3.1.2 Analisis Persyaratan

  27

  3.1.2.1 Persyaratan Fungsional

  28

  3.1.2.2 Persyaratan Nonfungsional

  28

  3.1.3 Perancangan Flowchart

   29

  3.1.3.1 Flowchart Aplikasi 29

  3.1.3.2 Flowchart Key Generation 30

  3.1.3.3 Flowchart Encryption

   32

  3.1.3.4 Flowchart Decryption

   32

  3.1.3.5 Flowchart Embedded

   34

  3.1.3.6 Flowchart Extraction

   34

  3.1.4 Pemodelan Sistem

  36

  3.1.4.1 Use Case Diagram 36

  3.1.4.1.1 Use Case Key Generation

  37

  3.1.4.1.2 Use Case Encryption

   39

  3.1.4.1.3 Use Case Embedded

   40

  3.1.4.1.4 Use Case Extraction

   42

  3.1.4.1.5 Use Case Decryption

   43

  3.1.4.2 Activity Diagram (Diagram Aktivitas)

  44

  3.1.4.3 Sequence Diagram

   47

  3.2 Rancangan Interface Aplikasi

  49

  3.2.1 Rancangan Interface Form Home

   49

  3.2.2 Rancangan Interface Form Help

   50

  3.2.3 Rancangan Interface Form Key Generation

  51

  3.2.4 Rancangan Interface Form Encryption

   53

  3.2.5 Rancangan Interface Form Embedded

   54

  3.2.6 Rancangan Interface Form Extraction

   56

  3.2.7 Rancangan Interface Form Decryption

   57 Bab IV Implementasi dan Pengujian

  4.1 Implementasi

  59

  4.1.1 Form Home

  59

  4.1.2 Form Pembangkit Kunci (Key Generation)

  60

  4.1.3 Form Enkripsi (Encryption)

   62

  4.1.4 Form Penyisipan (Embedded)

  63

  4.1.5 Form Ekstraksi (Extraction)

   64

  4.1.6 Form Dekripsi (Decryption)

   64

  4.1.8 Form Help

  65

     

  80

  91 Daftar Pustaka

  5.2 Saran

  89

  5.1 Kesimpulan

   82 Bab V Kesimpulan dan Saran

  4.2.6.3 Analisis Ukuran File Citra Terhadap Ukuran File Text (Ciphertext)

  4.2.6.2 Analisis Waktu Proses Terhadap Besar Ukuran File 81

  80

  4.2.6.1 Analisis Ukuran File Terhadap Proses Enkripsi / Dekripsi

  4.2.6 Hasil Pengujian

  4.2 Pengujian 66

  77

  4.2.5 Proses Decryption

   75

  4.2.4 Proses Extraction

   72

  4.2.3 Proses Penyisipan (Embedded)

   70

  4.2.2 Proses Enkripsi (Encryption)

  67

  4.2.1 Proses Pembangkitan Kunci

  92 Listing Program A-1

     

DAFTAR TABEL

Nomor

  Coverimage Bervariasi

  85

  83

  81

  80

  43

  42

  40

  39

  37

  15

  4.5 Contoh Solusi Superincreasing Knapsack Dokumentasi Naratif Use Case Key Generation Dokumentasi Naratif Use Case Encryption Dokumentasi Naratif Use Case Embedded Dokumentasi Naratif Use Case Extraction Dokumentasi Naratif Use Case Decryption Perbandingan Besar Ukuran File Plaintext dan Ciphertext Perbandingan waktu proses enkripsi dan dekripsi Hasil Pengujian Proses Embedded dan Extraction Data Hasil Pengujian Pada Table 4.3 Data Hasil Pengujian dengan File Ciphertext yang Sama dan

  Tabel Nama Tabel Halaman

  4.4

  4.3

  4.2

  4.1

  3.5

  3.4

  3.3

  3.2

  3.1

  2.1

  87

     

DAFTAR GAMBAR

Nomor

  30

  45

  45

  37

  35

  34

  33

  32

  31

  27

  46

  24

  23

  22

  21

  11

  10

  7

  Proses Pembangkitan Kunci Pesan Dialog Peringatan Start value Pesan Dialog Peringatan Key q Pesan Dialog Peringatan Key q Pesan Dialog Peringatan Key r Pesan Dialog Error GCD

  46

  47

  Rancangan Interface Form Key Generation Rancangan Interface Form Encryption Rancangan Interface Form Embedded Rancangan Interface Form Extraction Rancangan Interface Form Decryption

  63

  69

  68

  68

  68

  67

  66

  65

  64

  62

  48

  61

  60

  57

  56

  54

  53

  51

  50

  49

  Form Home Form Key Generation Form Encryption Form Embedded Form Extraction Form Decryption Form Help

  Interface Form Help

  Gambar Nama Gambar Halaman

  3.4

  3.12

  3.11

  3.10

  3.9

  3.8

  3.7

  3.6

  3.5

  3.3

  3.14

  3.2

  3.1

  2.7

  2.6

  2.5

  2.4

  2.3

  2.2

  2.1

  3.13

  3.15

  Rancangan Interface Form Home

  4.6

  Ishikawa Diagram untuk Analisis Permasalahan Sistem Flowchart Pengamanan Data Secara Umum Flowchart Key Generation Flowchart Encryption Flowchart Decryption Flowchart Embedded Flowchart Extraction Use Case Diagram Sistem Activity Diagram Key Generation Activity Diagram Encryption Activity Diagram Embedded Activity Diagram Extraction Activity Diagram Decryption Sequence Diagram Sistem

  4.13 Skema Enkripsi dan Dekripsi Skema Kriptografi Simetris Skema Kriptografi Asimetris Proses Embedding Konsep Dasar Steganografi Citra RGB ukuran 200 x 291 Citra RGB ukuran 200 x 292

  4.12

  4.11

  4.10

  4.9

  4.8

  4.7

  4.5

  3.16

  4.4

  4.3

  4.2

  4.1

  3.21

  3.20

  3.19

  3.18

  3.17

  69

     

  73

  Opendialog Untuk Memilih Kunci Privat Opendialog Untuk memilih Position Key

  Opendialog Untuk memilih Ciphertext Pesan Dialog Error Dekripsi Proses Dekripsi (Decryption)

  70

  71

  71

  72

  73

  74

  Savedialog Untuk Menyimpan Stegoimage Opendialog Untuk Memilih Stegoimage

  75

  75

  76

  76

  77

  78

  78

  79

  Pesan Dialog Error Ekstraksi Proses Ekstraksi (Extraction)

  Proses Penyisipan (Embedded)

  4.14

  4.22

  4.15

  4.16

  4.17

  4.18

  4.19

  4.20

  4.21

  4.23

  Opendialog Untuk Memilih Coverimage Opendialog Untuk Memilih Ciphertext

  4.24

  4.25

  4.26

  4.27

  4.28

  4.29 Opendialog Untuk Memilih Kunci Publik

  Opendialog Untuk Memilih Plaintext

  Proses Enkripsi (Encryption) Proses Penyimpanan Data Hasil Enkripsi

  79

     

DAFTAR LAMPIRAN

  Halaman

  A. Listing Program A-1

  B. Curriculum Vitae (CV) B-1