• Tidak ada hasil yang ditemukan

Analisis dan implementasi watermarking dengan algoritma aes untuk pemberian data hak cipta pada file audio

N/A
N/A
Protected

Academic year: 2017

Membagikan "Analisis dan implementasi watermarking dengan algoritma aes untuk pemberian data hak cipta pada file audio"

Copied!
178
0
0

Teks penuh

(1)

i Skripsi

Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Komputer

Oleh :

Muhamad Soleh

103091029579

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH

JAKARTA

(2)

ii Skripsi

Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Komputer

Pada Fakultas Sains dan Teknologi

Universitas Islam Negeri Syarif Hidayatullah Jakarta

Oleh: Muhamad Soleh

103091029579

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH

JAKARTA

(3)

vi

Watermarking pada file audio telah menjadi fokus perhatian pada masa sekarang ini. Hal ini berhubungan dengan transmisi data yang lebih cepat melalui Internet, yang telah memungkinkan pertumbuhan file audio digital yang tidak sah. Watermarking memberikan kemampuan untuk melindungi hak cipta terhadap produk file audio. Yang menjadi masalah watermarking pada audio terletak pada kualitas file audio dan watermark yang disisipkan harus tetap ada setelah mengalami berbagai operasi file audio yang dapat merusak file audio tersebut. Penelitian ini membahas mengenai watermarking pada file audio dengan algoritma AES (Advanced Encryption Standard) – Rinjdael pada prosedur penyisipan dan ekstraksi yang bertujuan untuk proteksi. Metode watermarking yang digunakan pada proses penyisipan dan ekstraksi adalah metode low bit coding. Transformasi dari dan ke domain frekuensi pada proses penyisipan dan ekstraksi tidak dilakukan. Hasil pengujian menunjukkan bahwa kualitas file audio setelah disisipi data menunjukkan hasil tidak pasti dan data yang disisipkan kedalam sinyal audio sulit dideteksi oleh sistem pendengaran manusia.

(4)

vii

karunia-Nya penulis dapat menyelesaikan laporan Tugas Akhir ini dengan judul

“Analisis dan Implementasi Watermarking dengan Algoritma AES untuk

Pemberian Data Hak Cipta pada File Audio”, yang sekaligus merupakan salah satu syarat dalam menyelesaikan program studi Strata Satu (S1) pada jurusan

Teknik Informatika, Unicersitas Islam Negeri (UIN) Syarif Hidayatullah Jakarta.

Berhasilnya penyusunan laporan Tugas Akhir ini tidak terlepas dari semua

pihak yang telah memberikan bimbingan, dukungan serta dorongan semangat

kepada penulis. Karena itu pada kesempatan ini penulis menyampaikan rasa

terima kasih kepada :

1. Dr. Syopiansyah Jaya Putra, M.Sis, selaku Dekan Fakultas Sains dan

Teknologi Universitas Islam Negeri (UIN) Jakarta.

2. Yusuf Durrachman, M.Sc, MIT, selaku Ketua Program Studi Teknik Informatika dan Viva Arifin, MMSi, selaku Sekretaris Program Studi

Teknik Informatika.

3. Yusuf Durrachman, M.Sc, MIT, dan Arini, MT, selaku dosen pembimbing

I dan II, yang telah meluangkan perhatian dan waktu untuk membimbing

dan mendidik dalam penyusunan skripsi ini.

(5)

viii peneliti dalam masa perkuliahan.

Penulis menyadari bahwa penulisan skripsi ini masih jauh dari sempurna,

oleh karena itu saran dan kritik yang membangun sangat penulis harapkan guna

penyempurnaan penulisan yang akan datang.

Akhir kata penulis mempersembahkan skripsi ini dengan segala kelebihan

dan kekurangannya, semoga dapat bermanfaat bagi kita semua, amien

Ciputat, September 2010

(6)

ix

bahan bakarnya adalah pengorbanan, ketulusan, kearifan, keistikomahan dan

keikhlasan. Skripsi ini adalah salah satu bagian dalam perjuangan hidup saya,

dimana tempat saya meletakan beberapa harapan dan citi-cita dalam hidup. Tidak

peduli seberapa banyak orang meragukan kemampuan saya untuk menyelesaikan

skripsi ini. Namun saya sangat yakin dan percaya tanpa seizin Allah SWT, skripsi

ini tidak akan terselesaikan dengan baik, karena Dialah yang Maha Berkehendak

dan Maha Memiliki segala kekuatan untuk menentukan sesuatu.

Dalam proses penyusunan skripsi ini banyak sekali masukan, pengalaman

serta motivasi yang menuntunku menuju proses pendewasaan berfikir dan

bertingkah laku. Alhamdulillah dan terima kasih Aku ucapkan kepada semua

pihak yang telah menjadi perantara Allah SWT, agar Aku terus bisa merasakan

karunia-Nya itu, diantaranya:

1. Ayahanda H. Asmat, Ibunda Hj. Taslimah, serta kakak-kakak yang tak henti-hentinya memberikan dukungan baik moril maupun materil bagi

peneliti dalam menjalani hidup ini.

2. My Computer yang telah menemaniku dan menghiburku dalam

penyusunan skripsi ini, sampai selesainya skripsi ini.

3. Keluarga besar Teknik Informatika kelas C angkatan 2003, yang telah

melewati waktu bersama, terimakasih atas saran-saran serta dukungan

(7)

x

5. Anwar, Iswan, Lukman, Oman, Rizki, Tri, Wuri dan teman-teman

seperjuangan yang telah memberikan banyak informasi dan telah bersedia

meluangkan waktu untuk berdiskusi dan selalu memberi penulis inspirasi

dan dukungan.

6. Teman-teman dari Prodi Teknik Informatika angkatan 2003 kelas A, B &

D.

7. Nurlela (Alm) terimakasih atas dukungan yang menjadi tambahan

semangat untuk penulis.

8. Teman-teman dari masa SMU, Farhan, Hari, Rindu dan Sidqi, terimakasih

atas dukungan yang tidak pernah disadari menjadi tambahan semangat

untuk penulis.

Dan kepada seluruh pihak dan teman-teman peneliti yang lain yang

tidak bisa disebutkan namanya satu per satu yang telah memberi dukungan

kepada peneliti sehingga skripsi ini dapat terselesaikan dengan baik.

Semoga Allah membalas semua kebaikan dan ketulusan hati kalian.

Ciputat, September 2010

(8)

xi

Halaman Judul ... ii

Lembar Pengesahan Pembimbing ... iii

Lembar Pengesahan Ujian ... iv

Lembar Pernyataan ... v

Abstrak ... vi

Kata Pengantar ... vii

Lembar Persembahan ... ix

Daftar Isi ... xi

Daftar Gambar ... xvi

Daftar Tabel ... xx

Daftar Lampiran ... xxi

Daftar Istilah ... xxii

BAB I PENDAHULUAN 1.1. Latar Belakang Masalah ... 1

1.2. Rumusan Masalah ... 3

1.3. Batasan Masalah ... 3

1.4. Tujuan Penelitian ... 4

1.5. Manfaat Penelitian ... 4

1.6. Metode Penelitian ... 5

(9)

xii

2.2. Hak Cipta ……….. 9

2.3. Watermarking ... 9

2.3.1. Tujuan Penggunaan Watermarking ... 10

2.3.2. Karakteristik Watermarking ... 11

2.3.3. Cara Kerja Watermarking ... 12

2.3.4. Trade-Off dalam Watermarking ... 14

2.3.5. Metode Watermarking ... 15

2.4. Wave Audio Format (WAV) ... 18

2.5. Kriptografi ... 19

2.5.1. Pengertian Kriptografi ... 20

2.5.2. Istilah-istilah dalam kriptografi ... 21

2.5.3. Tujuan Kriptografi ... 24

2.5.4. Kriptografi Kunci-Simetri dan Nirsinetri ... 26

2.5.4.1. Kriptografi Kunci-Simetri ... 26

2.5.4.2. Kriptografi Kunci-Nirsimetri ... 27

2.6. AdvancedEncryption Standard (AES) ... 28

2.6.1. Representasi Data ... 29

2.6.2. Algoritma AES ... 31

2.6.2.1. Enkripsi ... 31

(10)

xiii

2.6.2.2. Dekripsi ... 35

2.6.2.2.1. InvShiftRows ... 36

2.6.2.2.2. InvSubBytes ... 37

2.6.2.2.3. InvMixColumns ... 37

2.6.2.2.4. InverseAddRoundKey ... 38

2.6.2.3.Ekspansi Kunci ... 38

2.7. Bahasa Pemrograman C# ... 40

2.7.1. Mengenal Struktur Program C# ... 43

2.7.2. Eksekusi Program ... 45

2.8. Perancangan Program ... 46

2.8.1. Rapid Application Development (RAD) ... 46

2.8.2. State-Transition Diagram (Diagram) ... 48

2.8.3. Flow-Chart ... 49

2.9. Studi Literatur ... 53

BAB III METODE PENELITIAN 3.1. Metode Pengumpulan Data ... 58

3.1.1. Studi Pustaka ... 58

3.1.2. Studi Literatur ... 59

3.2. Metode pengembangan Sistem ... 59

(11)

xiv

(User Interface) ... 62

3.2.3. Fase Konstruksi ... 62

3.2.4. Fase Pelaksanaan ... 63

BAB IV

ANALISIS DAN PERANCANGAN

4.1. Fase Perencanaan Syarat-syarat ... 65

4.2.1. Analisis Kebutuhan ... 65

4.2.2. Menentukan Tujuan ... 66

4.2.3. Menentukan Syarat-syarat ... 66

4.2. Fase Perancangan ... 68

4.2.1. Perancangan Proses ... 68

4.2.1.1. Proses Penyisipan ... 69

4.2.1.2. Proses Ekstraksi ... 69

4.2.1.3. Flow-chart Proses Penyisipan dan Ekstraksi Pesan ... 70

4.2.2. Perancangan Antar Muka ... 75

4.2.2.1. Perancangan Form Utama ... 75

4.2.2.2. Perancangan Form Ekstrak ... 79

4.2.2.3. Perancangan Form About ... 80

4.2.2.4. Perancangan Form Bantuan ... 81

(12)

xv

4.4.1.2. Proses Penyisipan ... 84

4.4.1.3. Proses Ekstraksi ... 89

4.4.1.4. Form About ... 93

4.4.1.5. Form Bantuan ... 94

4.4.2. Pengujian Aplikasi ... 95

4.4.2.1. Pengujian Spesifikasi Sistem ... 98

4.4.2.2. Pengujian Ukuran File Terhadap File Carrier 104

4.4.2.3. Pengujian Ketahanan Data ... 105

4.4.3. Analisis Hasil Pengujian Aplikasi ... 108

4.4.3.1. Analisis Hasil Uji Spesifikasi Sistem ... 108

4.4.3.2. Analisis Hasil Uji Ukuran File Terhadap File Carrier ... 111

4.4.3.3. Analisis Hasil Uji Ketahanan Data ... 113

BAB V PENUTUP 5.1. Kesimpulan ... 115

5.2. Saran ... 116

(13)

xvi

Gambar 2.2 Trade-Off dalam watermarking ... 14

Gambar 2.3 Susunan bit ... 18

Gambar 2.4 Cabang-cabang bidang ilmu kriptografi ... 24

Gambar 2.5 Skema kriptografi kunci-Simetri ... 26

Gambar 2.6 Skema kriptografi kunci Nir-Simetri ... 27

Gambar 2.7 Masukan dan keluaran Array State ... 30

Gambar 2.8 Diagram alir proses enkripsi ... 32

Gambar 2.9 Transformasi SubBytes ... 33

Gambar 2.10 Transformasi ShiftRows ... 34

Gambar 2.11 Diagram alir proses dekripsi ... 36

Gambar 2.12 Transformasi InvShiftRows ... 36

Gambar 2.13 Pseudcode proses ekspansi kunci... 39

Gambar 2.14 Komposisi bahasa C# ... 41

Gambar 2.15 Tampilan visual C# ... 42

Gambar 2.16 Console Application ... 43

Gambar 2.17 Sintakis kode program ... 44

Gambar 2.18 Contoh penamaan fungsi class ... 45

Gambar 2.19 Hasil eksekusi dari gambar 2.18 ... 45

Gambar 2.20 Fase-fase RAD James Martin ... 46

(14)

xvii

Gambar 3.1 Metodologi penelitian pengembangan aplikasi watermarking

dengan algoritma AES pada file audio ... 64

Gambar 4.1. Proses penyisipan ... 69

Gambar 4.2. Proses ekstraksi ... 70

Gambar 4.3. Flow-chart proses penyisipan pesan ... 71

Gambar 4.4. Flow-chart proses enkripsi dengan metode AES di sebelah kiri dan flow-chart proses penyisipan pesan menggunakan metode LSB di sebelah kanan ... 72

Gambar 4.5. Flow-chart proses ekstraksi pesan ... 73

Gambar 4.6. Flow-chart proses pengambilan pesan menggunakan metode LSB di sebelah kiri dan flow-chart proses dekripsi dengan metode AES di sebelah kanan ... 74

Gambar 4.7. Rancangan form utama ... 77

Gambar 4.8a. State Transition Diagram ... 78

Gambar 4.8b. State Transition Diagram ... 79

Gambar 4.9. Rancangan form extract Message ... 80

Gambar 4.10. Rancanganform about ... 81

Gambar 4.11. Rancanganform help ... 81

(15)

xviii

Gambar 4.16. Tampilan cari audio ... 90

Gambar 4.17. Tampilan form extract ... 90

Gambar 4.18. Tampilan file save output ... 91

Gambar 4.19. Tampilan form about ... 94

Gambar 4.20. Tampilan form help ... 95

Gambar 4.21. Spectrum suara file rocketrockers hari untukmu.wav asli ... 98

Gambar 4.22. Spectrum suara file rocketrockers hari untukmu.wav setelah disisipi pesan ... 99

Gambar 4.23. Spectrum suara hari untukmu.wav asli dengan filter bandstop ... 99

Gambar 4.24. Spectrum suara hari untukmu.wav yang sudah disispi pesan dengan filter bandstop ... 100

Gambar 4.25. Spectrum suara file rocketrockers hari untukmu.wav Asli ... 100

Gambar 4.26. Spectrum suara file rocketrockers hari untukmu.wav Setelah disisipi pesan ... 101

Gambar 4.27. Spectrum suara hari untukmu.wav Asli dengan filter bandstop ... 101

Gambar 4.28. Spectrum suara hari untukmu.wav yang sudah disispi pesan dengan filter bandstop ... 102

(16)

xix

Gambar 4.32. Tampilan aplikasi xilisoft ... 106

Gambar 4.33. Tampilan add file ... 106

Gambar 4.34. Tampilan menu list file profile ... 107

(17)

xx

Tabel 2.2. Tabel S-box dalam transformasi Subbytes () ... 32

Tabel 2.3. Tabel Inverse S-box dalam transformasi InvSubbytes () ... 37

Tabel 2.4. Bagian-bagian halaman kerja visual C# 2005 ... 42

Tabel 2.5. Perbandingan metode RAD, Sekuensial Linear, Prototype dan Spiral ... 46

Tabel 2.6. Simbol-simbol program flow-chart menurut ANSI (American National Standard Institute) ... 50

Tabel 2.7. Studi literature yang digunakan ... 53

Tabel 4.1. Tabel spesifikasi file carrier yang akan diuji ... 97

Tabel 4.2. Pengujian proses dan kesesuaian data ... 104

Tabel 4.3. Tabel uji ukuran file pesan terhadap file carrier ... 104

Tabel 4.4. Tabel uji ketahanan data ... 108

Tabel 4.5. Tabel hasil uji spesifikasi sistem ... 109

Tabel 4.6. Tabel hasil uji Ukuran file pesan terhadap file carrier ... 112

Tabel 4.7. Tabel hasil uji ketahanan data wav to mp3 ... 113

Tabel 4.8. Tabel hasil uji ketahanan data wav to aac ... 114

(18)

xxi

GRAFIK SINYAL SUARA WAV………..………. 120

LAMPIRAN II ………...………..………..………..….... 124

FILE INPUT ………...………..………..………..….... 124

LAMPIRAN III ………...………..……….……..….... 128

(19)

xxii

Istilah

Arti

Analisis

Penyelidikan terhadap suatu peristiwa (karangan, perbuatan, dan sebagainya) untuk mengetahui keadaan yang sebenarnya (sebab-musabab, duduk perkaranya, dan sebagainya.)

Algoritma Urutan langkah-langkah logis penyelesaian masalah

yang disusun secara sistematis

Data

Data adalah fakta berupa angka, karakter, symbol, gambar, tanda-tanda, isyarat, tulisan, suara, bunyi yang merepresentasikan keadaan sebenarnya yang selanjutnya digunakan sebagai masukan suatu Sistem Informasi.

Hak cipta

Hak eksklusif bagi pencipta atau penerima hak untuk mengumumkan atau memperbanyak ciptaannya atau memberikan izin untuk itu dengan tidak mengurangi pembatasan-pembatasan menurut peraturan perundang-undangan yang berlaku

Hardware

Perangkat keras (hardware) mengacu kepada obyek memungkinkan untuk disentuh, seperti disket, disk drive, layar monitor, keybord, printer, scanner dan chip.

Internet

Suatu jaringan komputer global terbentuk dari jaringan-jaringan komputer lokal dan regional, memungkinkan komunikasi data antar komputer-komputer yang terhubung ke jaringan tersebut. Kualitas Tingkat baik buruknya atau taraf atau derajat sesuatu.

WAV merupakan format standar berkas audio yang

dikembangkan Microsoft dan IBM.

PCM

File wave yang tidak terkompresi, akibatnya ukuran file sangat besar jika file mempunyai durasi yang panjang.

Software

(20)
(21)

1 1.1. Latar Belakang Masalah

Perkembangan teknologi komputer saat ini telah membawa

perubahan bagi kita untuk melakukan akses serta mendistribusikan

berbagai informasi dalam bentuk format digital. Sehingga saat ini sering

disebut sebagai era digital, atau dunia digital. Dengan perkembangan

komputer digital dan perangkat-perangkat lainnya yang serba digital dalam

hal ini audio digital, telah membuat data digital semakin banyak

digunakan dan mudah diduplikasi. Sehingga seringkali menimbulkan

konflik. Konflik yang sering timbul adalah adanya sengketa antara

beberapa pihak yang mengklaim bahwa pihaknya adalah pemilik sah dari

sebuah audio digital.

Konflik tersebut yang kemudian menyebabkan timbulnya

kebutuhan untuk melindungi hak kepemilikan (hak cipta) pada file audio

dengan memberikan data hak cipta pada audio digital untuk keaslian

(otentikasi) pemilik. Perlindungan hak cipta dengan pengontentifikasian

dari isi data audio dapat digunakan untuk membuktikan keaslian dari suatu

file audio yang disimpan atau beredar masih asli atau sudah mengalami

perubahan. Jika isi data audio yang diekstraksi tidak sama dengan isi data

audio asli, maka dapat disimpulkan file audio sudah otentik lagi.

(22)

yang mengetahui kunci untuk mengestrak atau membuka informasi yang

disisipkan.

Salah satu cara untuk mengatasi permasalahan diatas dapat

menggunakan teknik audio watermarking dengan kriptografi.

Watermarking atau tanda air bisa diartikan sebagai suatu teknik

penyembunyian data atau informasi “rahasia” ke dalam suatu data lainnya

dengan cara “menumpangi” (kadang disebut host data), tanpa orang lain

menyadari adanya data tambahan pada data host-nya (Doni Ariyus,

2007:92). Kriptografi adalah ilmu dan seni untuk menjaga kerahasiaan

pesan dengan cara menyandikannya ke dalam bentuk yang tidak dapat

dimengerti lagi maknanya (Rinaldi Munir, 2006:2). Berdasarkan kunci

yang dipakainya untuk enkripsi dan dekripsi, kriptografi terbagi dua

diantaranya algoritma kriptografi modern yang memakai sistem algoritma

kunci-simetri, yaitu : DES (Data Encryption Standard), Blowfish,

Triple-DES, IDEA, Serpent, AES dan lain-lain, dan algoritma kriptografi modern

yang menggunakan algoritma kunci nirsimetri, yaitu RSA, Diffle Hellman,

dan lain-lain. Penyisipan informasi watermark dengan algoritma AES ke

dalam audio dilakukan sedemikian, sehingga tidak merusak kualitas audio

yang telah disisipi informasi hak cipta. Informasi hak cipta ini harus dapat

diekstrak untuk pembuktian keaslian atas produk audio digital tersebut.

Penggunaan watermarking dan algoritma AES secara bersamaan

dimaksudkan untuk memberikan keamanan berlapis dalam pengamanan

(23)

skripsi ini, adalah “Analisis dan Implementasi Watermarking dengan

Algoritma AES untuk Penyimpanan Data Hak Cipta Pada File Audio”.

1.2. Rumusan Masalah

Berdasarkan latar belakang masalah diatas, penulis

mengidentifikasi masalah sebagai berikut :

1. Bagaimana menyisipkan atau menyimpan informasi watermark dengan

algoritma AES ke dalam suatu file audio.

2. Bagaimana mengestrak informasi watermark dari file audio.

3. Bagaimana ketahanan informasi watermark pada file audio.

4. Apakah terjadi perubahan kualitas dan besar ukuran data pada file

audio setelah melalui proses penyisipan dan ekstraksi pesan.

1.3. Batasan Masalah

Agar pembahasan dalam skripsi ini dapat mencapai hasil yang

optimal, maka penulis membatasi ruang lingkup pembahasan sebagai

berikut :

1. File audio yang akan disisipi informasi Watermark adalah file audio

yang berformat WAV yang mempunyai audio format berjenis PCM

(Pulse Code Modulation).

2. File audio berwatermark adalah dalam format WAV. File audio

berwatermark merupakan audio WAV yang telah disisipi informasi

watermark.

3. Data hak cipta yang akan disisipkan dan diekstrak ke dan dari file

(24)

4. Proses penyisipan dan ekstraksi menggunakan metode low bit coding.

5. Algoritma yang digunakan untuk enkripsi menggunakan algoritma

enkripsi Rijndael (Advanced Encryption Standard (AES)).

6. Pokok objek penelitian adalah kualitas file dan besar file keluaran.

7. Program dibuat dengan menggunakan bahasa Visual C#, Microsoft

Visual Studio 2005.

1.4. Tujuan

Berdasarkan latar belakang, rumusan masalah, dan batasan

masalah, maka tujuan penelitian dari pembuatan aplikasi watermarking

dengan algoritma AES dalam menunjang penulisan skripsi ini adalah :

1. Mengimplementasikan proses penyisipan dan ekstraksi informasi

watermarking dengan algoritma AES.

2. Melakukan analisis perbandingan terhadap kualitas dan ukuran data

pada file audio sebelum dan sesudah melalui proses penyisipan dan

ekstraksi.

1.5. Manfaat

Sesuai dengan permasalahan dan tujuan penelitian yang telah

disebutkan di atas, maka manfaat penelitian dapat dirumuskan sebagai

berikut :

a. Bagi Penulis

1. Penulis bisa menerapkan dan mengembangkan ilmu keamanan data

digital watermarking dan kriptografi yang diperoleh selama penulis

(25)

2. Memahami penerapan watermarking pada data audio.

3. Untuk memenuhi salah satu syarat kelulusan starata satu (S1)

Program Studi Teknik Informatika Fakultas Sains dan Teknologi

UIN Syarif Hidayatulah Jakarta.

b. Bagi Akademik

1. Mengetahui kemampuan mahasiswa dalam menguasai materi teori

keamanan data digital watermarking dan kriptografi yang telah

diperoleh selama kuliah.

2. Mengetahui kemampuan mahasiswa dalam menerapkan ilmu

keamanan data digital watermarking dan kriptografi pada data

digital dalam hal ini audio digital dan sebagai bahan evaluasi.

c. Bagi Pengguna

1. Program aplikasi audio watermarking ini, dapat dijadikan sebagai

salah satu media alternatif untuk pemberian data hak cipta pada file

audio sebagai pembuktian keaslian file (otentikasi).

1.6. Metodologi Penelitian

Metode yang akan digunakan untuk menyelesaikan skripsi ini

adalah :

1. Metode Pengumpulan Data

Metode pengumpulan data yang akan digunakan yaitu :

a. Studi Pustaka

Studi pustaka yaitu metode pengumpulan data dan

(26)

diperlukan dari berbagai buku, e-book, website, serta sumber lainya

yang berkaitan dengan penelitian yang dapat dijadikan acuan

dalam penelitian ini.

b. Studi Literatur

Studi literatur merupakan pengembangan instrumen atau

penelitian sejenis yang sudah dibuat sebelumnya

2. Metode Pengembangan Sistem

Metode pengembangan sistem yang digunakan dalam

pembuatan skripsai ini menggunakan empat tahap siklus

pengembangan model Rapid Application Development (RAD),

Kendall & Kendall, (1998 & 2000) yang terdiri dari :

a. Fase menentukan syarat-syarat, yaitu menetukan tujuan dan

kebutuhan sistem.

b. Fase perancangan, yaitu perancangan proses-proses yang akan

terjadi dalam sistemdan perancangan antar muka.

c. Fase kontruksi, pada tahapan ini dilakukan pengkodean terhadap

rancangan-rancangan yang telah didefinisikan.

d. Fase pelaksana, pada tahapan ini dilakukan pengujian terhadap

sistem dan analisa pengujian terhadap sistem.

1.7. Sistematika Penulisan

Untuk memberikan gambaran yang lebih jelas dan sistematis,

skripsi ini dibagi menjadi lima bab dan tiap bab memiliki beberapa sub

(27)

BAB I Pendahuluan

Penguraian secara singkat mengenai latar belakang

masalah, rumusan masalah, batasan masalah, tujuan dan

manfaat penelitian, metodologi penelitian serta sistematika

penulisan.

BAB II Landasan Teori

Bab ini berisikan semua landasan teori yang digunakan

dalam penyusunan dan penulisan skripsi ini.

BAB III Metodologi Penelitian

Bab ini berisi uraian mengenai metodologi yang dipakai

penulis, metode pengumpulan data dan metode

pengembangan sistem.

BAB IV Analisa dan Perancangan

Bab ini menjelaskan spesifikasi perangkat keras dan

perangkat lunak yang digunakan, implementasi program,

pengujian, analisa pengujian serta tampilan layar hasil

program berikut cara penggunaannya.

BAB V Penutup

Pada bab ini akan berisi kesimpulan dari hasil pembahasan

bab-bab sebelumnya dan berisi saran-saran untuk

(28)

8 2.1. Pengetian Analisis

Analisis atau juga disebut dengan analisa menurut Kamus Besar

Bahasa Indonesia adalah Penyelidikan terhadap suatu peristiwa (karangan,

perbuatan, dan sebagainya) untuk mengetahui keadaan yang sebenarnya

(sebab-musabab, duduk perkaranya, dan sebagainya.) (http : // pusat bahasa.

Diknes. Go. Id).

Analisis data merupakan upaya mencari dan menata data secara

sistematis untuk meningkatkan pemahaman peniliti tentang kasus yang

diteliti dan menyajikannya sebagai temuan bagi orang lain. Proses analisis

data dalam penelitian adalah sebagai berikut, (http : // www.um-pwr.ac.id) :

1. Menelaah seluruh data yang terkumpul dari berbagai sumber.

2. Mengadakan reduksi data dengan jalan membuat abstraksi.

3. Menyusun dalam satuan-satuan dan kategorisasi.

4. Menafsirkan dan atau memberikan makna terhadap data.

Analisis dapat diartikan sebagai proses atau tahapan dalam penelitian

atau penyelidikan dalam mengevaluasi data yang telah terkumpul untuk

meningkatkan pemahaman sehingga menhasilkan suatu kesimpulan ynag

(29)

2.2. Hak Cipta

Hak Cipta adalah hak eksklusif bagi pencipta atau penerima hak

untuk mengumumkan atau memperbanyak ciptaannya atau memberikan izin

untuk itu dengan tidak mengurangi pembatasan-pembatasan menurut

peraturan perundang-undangan yang berlaku (http://www.dgip.go.id). Hak

cipta merupakan hak eksklusif bagi pencipta atau pemegang hak cipta untuk

mengumumkan atau memperbanyak ciptaannya, yang timbul secara

otomatis, setelah suatu ciptaan dilahirkan tanpa mengurangi pembatasan

menurut peraturan perundang-undangan yang berlaku (Yusran Isnaini,

2009:11). Jadi hak cipta adalah hak eksklusif dari pada pencipta atau

pemegang hak cipta atau hasil ciptaanya untuk mengumumkan atau

memperbanyak ciptaannya tanpa mengurangi pembatasan-pembatasan

menurut peraturan perundang-undangan yang berlaku.

2.3. Watermarking

Watermarking atau tanda air bisa diartikan sebagai suatu teknik

penyembunyian data atau informasi “rahasia” ke dalam suatu data lainnya

dengan cara “menumpangi” (kadang disebut host data), tanpa orang lain

menyadari adanya data tambahan pada data host-nya (Doni Ariyus,

2007:92). Disamping itu, data yang ter-watermark harus tahan (robust)

terhadap serangan-serangan, baik secara sengaja maupun tidak sengaja

untuk menghilangkan data watermark didalamanya.

Watermarking ini memanfaatkan kekurangan-kekurangan sistem

(30)

Watermarking merupakan suatu cara untuk penyembunyian atau penanaman

data/informasi tertentu (baik hanya berupa catatan umum maupun rahasia)

ke dalam suatu data digital lainnya, tetapi tidak diketahui kehadirannya oleh

indera manusia (indera penglihatan atau pendengaran), dan mampu

menghadapi proses-proses pengolahan sinyal digital sampai pada tahap

tertentu.

Jadi watermarking dapat juga diartikan sebagai suatu teknik

penyisipan atau penyembunyian data atau informasi “umum maupun

rahasia” ke dalam data digital lainnya (host data) tanpa diketahui adanya

data tambahan pada host datanya oleh indera manusia seperti mata dan

telinga .

2.3.1. Tujuan Penggunaan Watermarking

Dokumen merupakan representasi riwayat organisasi secara

eksplisit (Doni Ariyus, 2007:221). Dokumen dalam bentuk

elektronik dapat memudahkan pembukaan serta penelusuran isi dari

riwayat dokumen tersebut yang sebelumnya susah untuk dilakukan

pada dokumen dalam bentuk kertas, memungkinkan pembagian

informasi (information sharing) yang efektif, serta dapat

memberikan kontribusi pada penyebarluasan pengetahuan pada

lingkungan-lingkungan terkait. Dokumen elektronik mendukung

pengambilan kebijakan berbasis bukti yaitu dengan menyediakan

bukti dari aksi dan keputusan sebelumnya. Namun untuk

(31)

baik untuk menjamin integritas dan otentitasnya. Dokumen-dokumen

elektronik yang berisi transaksi elektronik yang otentik harus dijaga

sedemikian rupa sehingga tetap terjaga kualitas legal dan bobot

buktinya. Untuk itulah dipelukannya teknik watermarking.

Penyisipan watermark pada dokumen memiliki berbagai

macam tujuan (Doni Ariyus, 2007:222). Untuk aplikasi perlindungan

hak cipta, tanda yang disisipkan pada dokumen (gambar, teks, atau

audio) digunakan sebagai identifier yang menunjukan hak

kepimilikan atau hak penggunaan dokumen. Jenis tanda air

mempengaruhi keefektifan tanda air itu sendiri dalam setiap

aplikasinya. Baik tanda air perceptible maupun inperceptible,

keduanya dapat mencegah terjadinya penyalahgunaan, namun

dengan cara yang berbeda. Tanda air digital digunakan untuk

memberikan identifikasi sebuah dokumen atas informasi sumber

daya, penulis, creator, pemilik, distributor, dan konsumer yang

berhak atas dokumen tersebut.

2.3.2. Karakteristik Watermarking

Ada beberapa karakteristik yang diinginkan dari pengguna

watermark pada suatu dokumen, diantaranya tidak dapat terdeteksi

(imperceptible), robustness, dan security (Doni Ariyus, 2007:222).

1. Imperceptible : Memberikan karakteristik watermark agar sebisa

(32)

aslinya. Hal ini dimaksudkan untuk tidak merubah status

dokumen yang bernilai tinggi secara hukum maupun komersial.

2. Robustness : Karakteristik ini tergantung aplikasi dari watermark

itu sendiri. Apabila digunakan sebagai identifikasi

kepemilikan/copyright, watermark harus memilki ketahanan

terhadap berbagai macam modifikasi yang mungkin bisa

dilakukan untuk merubah/menghilangkan copyright. Jika

digunakan untuk mengautentifikasi content, watermark sebisa

mungkin bersifat fragile, sehingga apabila isinya telah

mengalami perubahan, maka watermark juga akan mangalamu

perubahan/rusak, sehingga dapat terdeteksi adanya usaha

modifikasi terhadap isi.

3. Security : Teknik watermark harus dapat mencegah usaha-usaha

untuk mendeteksi dan memodifikasi informasi watermark yang

disisipkan ke dalam dokumen. Kunci watermark menjamin

hanya orang yang berhak saja yang dapat melakukan hal tersebut.

Namun aspek ini tidak dapat mencegah siapapun untuk membaca

dokumen yang bersangkutan.

2.3.3. Cara Kerja Watermarking

Dalam watetmark digital, sebuah sinyal low-energy

disisipkan ke sinyal utama sebagai cover signal untuk

menyembunyikan sinyal low-energy tersebut (Doni ariyus,

(33)
[image:33.612.149.539.58.416.2]

watermark, dan cover signal-nya adalah dokumen yang bisa berupa

gambar, video, suara, atau teks dalam format digital.

Gambar 2.1. Proses pemberian watermark pada dokumen (Sumber : Doni Ariyus, 2007:223)

Secara umum, sistem watermarking terdiri atas embedder dan

detector (Doni ariyus, 2007:223). Embedder berkerja untuk

menyisipkan watermark ke dalam dokumen (cover signal) dan

detector akan mendeteksi watermark yang ada di dalam dokumen.

Kunci watermark digunakan selama proses penyisipan dan

pendeteksian. Kunci tersebut bersifat privat dan hanya boleh

diketahui oleh pihak-pihak yang diberi otoritas untuk menyisipkan

(34)
[image:34.612.149.539.56.420.2]

2.3.4. Trade-Off dalam Watermarking

Gambar 2.2. Trade-Off dalam watermarking

(Sumber : http://digitally1.paume.itb.ac.id)

Parameter-parameter yang diperlukan dalam penerapan

watermarking (http://digitally1.paume.itb.ac.id) :

1. Jumlah data (bit rate) yang akan disembunyikan.

2. Ketahanan (robustness) terhadap pengolahan sinyal.

Terdapat suatu trade-off diantara kedua parameter (bitrate

dan robustness) tersebut dengan Invisibly (tidak tampak). Bila

diinginkan robustness yang tinggi maka bitrate akan menjadi rendah,

sedangkan akan semakin visible, dan sebaliknya semakin invisible

maka robustness akan menurun. Jadi harus dipilih nilai-nilai dari

parameter tersebut agar memberikan hasil yang sesuai dengan yang

kita inginkan (sesuai dengan aplikasi).

Hubungan Invisibility dengan Robustness dapat diterangkan

sebagai berikut : misalkan suatu data asli diubah (ditambah atau

dikurangi) sedikit mungkin dengan maksud memberikan efek

(35)

pengolahan digital saja, perubahan tadi akan berubah/hilang. Dengan

demikian dikatakan robustness rendah, tetapi invisibility tinggi.

2.3.5. Metode Watermarking

Beberapa buah metode watermarking pada suara digital yaitu

phase coding, spread spectrum, echo data hiding, dan low bit coding

(http://digilib.unikom.ac.id).

1. Phase Coding

Cara kerja metode ini adalah dengan mengganti fase

bagian awal sinyal suara dengan fase yang berhubungan yang

mewakili data. Fase bagian lain yang mengikuti diatur untuk

melindungi fase relatif antar bagian.

Phase coding merupakan metode yang paling efektif dari

segi perbandingan noise signal-to-perceived. Jika hubungan fase

antar setiap komponen frekuensi diubah secara dramatis, akan

terjadi dispresi fase yang tampak dengan jelas. Akan tetapi,

selama modifikasi fase cukup kecil (tergantung pada pengamat),

coding yang tidak mungkin terdengar dapat dilakukan.

2. Spread Spectrum

Pada saluran komunikasi normal, konsentrasi informasi

pada spektrum frekuensi yang sesempit mungkin sangat

diinginkan untuk menghemat bandwidth yang tersedia dan

mengurangi tenaga yang dibutuhkan. Dasar teknik spread

(36)

menyebarkan data melalui spektrum frekuensi yang seluas

mungkin. Hal tersebut menyebabkan resepsi sinyal, walaupun

terdapat interferensi pada beberapa frekuensi.

Salah satu metode komunikasi spread spectrum adalah

Direct Sequence Spread Spectrum Encoding (DSSS). Metode ini

menyebarkan sinyal dengan melipatgandakan dengan sebuah

chip, panjang maksimum urutan pseudorandom yang dimodulasi

pada nilai yang diketahui. Karena sinyal penampung adalah suatu

bentuk waktu diskrit, nilai sampling dapat digunakan sebagai

nilai chip untuk coding.

3. Echo Data Hiding

Metode Echo data hiding dilakukan dengan

menambahkan data pada sinyal suara penampung dengan

memunculkan echo. Data yang akan disembunyikan dalam

bentuk echo dinyatakan dengan variasi dari tiga parameter, yaitu

amplitudo awal, decay rate, dan offset (delay). Amplitudo awal

menyatakan amplitudo asal dari data suara tersebut, decay rate

menyatakan seberapa besar echo yang akan diciptakan, dan offset

menyatakan jarak antara sinyal suara dengan echo dalam bentuk

fase sudut dalam persamaan analog. Jika offset dari sinyal asal

dan echo berkurang, maka kedua sinyal akan bercampur. Echo

(37)

Selanjutnya, untuk proses pengkodean, sinyal suara asal

dipecah menjadi beberapa bagian. Pada setiap bagian, echo

dimunculkan dengan menggunakan waktu tunda sesuai bit data

yang akan disembunyikan. Waktu tunda tersebut dinyatakan

dalam parameter offset, serta besarnya echo yang akan disisipkan

dinyatakan dengan decay rate. Setelah selesai, semua pecahan

sinyal digabungkan kembali sehingga menjadi sinyal utuh.

4. Low Bit Coding

Metode Low-bit-coding adalah cara yang paling

sederhana untuk menyimpan data kedalam data yang lain.

Dengan mengganti bit yang paling tidak penting atau least

significant bit (LSB) pada setiap titik sampling dengan string

berkode biner (coded binary string), kita dapat mengkode

sejumlah besar data kedalam suara digital.Secara teori, kapasitas

saluran adalah 1 kb per detik (1 kbps) per 1 kHz. Kelamahan

metode ini adalah lemahnya kekebalan terhadap manipulasi.

Least Significant Bit (LSB) termasuk ke dalam teknik

penyisipan data ranah spasial (waktu), yaitu dengan

memodifikasi langsung nilai byte dari covertext (nilai byte dapat

mempresentasikan intensitas atau warna pixel atau amplitudo).

Penyembunyian data dilakukan dengan mengganti bit-bit

data dalam segmen covertext dengan bit-bit dari data yang akan

(38)

8 bit), ada bit yang paling berarti (Most Significant Bit atau MSB)

dan bit yang kurang berarti (Least Significant Bit atau LSB),

[image:38.612.150.539.53.451.2]

contoh:

Gambar 2.3. Susunan bit (Sumber : http://informatika.org)

Bit yang bisa diganti adalah bit LSB, karena

perubahannya hanya akan mengubah nilai byte satu lebih tinggi

atau satu lebih rendah dari nilai sebelumnya. Misalkan byte

tersebut menunjukan warna merah, maka perubahan byte tersebut

tidak memberi perubahan yang berarti pada warna merah

tersebut, karena mata manusia tidak dapat menangkap

perubahannya yang sedikit.

2.4. Waveform Audio Format (WAV)

WAV adalah singkatan dari istilah dalam bahasa inggris Waveform

Audio Format, merupakan format standar berkas audio yang dikembangkan

Microsoft dan IBM. Walaupun WAV dapat menampung audio dalam bentuk

terkompresi, umumnya format WAV merupakan audio yang tidak

terkompres (Telkom, 2009). Kualitas dari file wave ditentukan oleh bitrate,

(39)

Bitrate merupakan ukuran bit tiap sample-nya, dapat disimpan per

8-bits, 16-8-bits, 32 bits. Makin banyak bitrate dalam satu sample suara makin

baik kualitas suara file tersebut, karena data yang disimpan semakin akurat.

Samplerate menyatakan banyaknya jumlah sample yang dimainkan

setiap detiknya. Samplerate yang umum dipakai adalah 8000Hz (suara yang

dihasilkan menyerupai suara telepon), 11025 Hz (untuk perkaman suara

manusia), 22050 Hz (untuk perekaman suara musik) dan 44100 Hz, (sering

dipakai dalam audio cd karena cocok untuk semua jenis suara).

Jumlah channel akan menentukan suara yang dihasilkan termasuk

mono atau stereo. Mono menggunakan 1 channel suara, sedangkan stereo

menggunakan lebih dari 1 chanel suara (umumnya 2). Suara manusia dapat

direkam secara mono, sedangkan file-file untuk kualitas cd direkam secara

stereo.

2.5. Kriptografi

Penggunaan teknik kriptografi yang bertujuan untuk menjaga

kerahasian pesan sudah banyak diterapkan dalam kehidupan manusia.

Diantaranya transaksi di mesin ATM (Anjungan Tunai Mandiri atau

Automatic Teller Machine), transaksi di bank dengan kartu kredit mengakses

internet sampai mengaktifkan peluru kendali pun menggunakan kriptografi.

Oleh karena itu, kriptografi merupakan seni pengamanan pesan yang

(40)

2.5.1. Pengertian Kriptografi

Kriptografi (cryptography) berasal dari dua kata dari bahasa

Yunani, yaitu “cryptos” yang berate “secret” (rahasia) dan

graphein” yang berartin “writing” (tulisan), jadi kriptografi bisa

diartikan sebagai tulisan rahasia (secret writing). Menurut

terminologinya kriptografi adalah ilmu dan seni untuk menjaga

keamanan pesan yang dikirim dari suatu tempat ke tempat yang lain.

(Doni Ariyus 2006:9).

Definisi kriptografi yang banyak di buku-buku lama (sebelum

sebelum tahun 1980-an) menyatakan bahwa kriptografi adalah ilmu

dan seni untuk menjaga kerahasian pesan dengan cara

menyandikannya ke dalam bentuk yang tidak dapat dimengerti lagi

maknanya (Rinaldi Munir, 2006:2). Definisi ini sudah tidak sesuai

lagi dengan dunia sekarang. Karena kriptograpi tidak hanya

memperhatikan privacy saja tetapi juga harus memperhatikan data

integrity, authentication, dan non-repudiation.

Definisi kriptograpi menurut Bruce Schneier adalah ilmu seni

untuk menjaga keamanan pesan. Sedangkan menurut Alfred j.

Menezes, Paul C. Van Ourschot dan Scott A. Vanstone, kriptografi

adalah ilmu yang mempelajari teknik-teknik matematika yang

berhubungan dengan keamanan informasi seperti kerahasian,

(41)

Kriptograpi juga bisa diartikan sebagai teknik mengamankan

pesan yang dianggap rahasia dengan cara mengubah pesan dari yang

dapat dibaca menjadi pesan yang tidak dapat dibaca dengan

memperhatikan aspek keamanan pesan seperti kerahasian, integritas

data, otentikasi dan tidak penyangkalan.

2.5.2. Istilah-Istilah Dalam Kriptograpi

Dalam kriptograpi kita akan sering menemukan berbagai

istilah atau terminologi yang harus kita ketahui dan kita pahami. Di

bawah ini merupakan beberapa istilah penting dalam kriptograpi

yang akan sering ditemukan (Rinaldi Munir, 2006:3):

1. Pesan, Plainteks dan Chiperteks

Pesan (message) adalah kumpulan data atau informasi

yang dapat dibaca dan dimengerti maknanya. Nama lain untuk

pesan adalah plainteks (plaintext) atau teks jelas (cleartext).

Pesan dapat berupa data atau informasi yang dikirim (melalui

kurir, saluran telekomunikasi, dan sebagainya) atau yang

disimpan di dalam media perekaman (kertas, storage, dan

sebagainya). Pesan yang tersimpan tidak hanya berupa teks

tetapi juga berbentuk citra (image), suara atau bunyi (audio),

video atau berkas biner lainnya (Rinaldi Munir, 2006:3).

Agar pesan tidak dapat dibaca oleh pihak lain, maka

pesan perlu disandikan ke bentuk lain yang tidak dapat dibaca

(42)

tertentu. Bentuk pesan yang tidak dapat dibaca atau dipahami

disebut chiperteks (chipertext) atau kriptogram (cryptogram).

Melalui proses yang berkebalikan, chiperteks dapat diubah

kembali menjadi pesan yang dapat dibaca atau plainteks.

2. Pengirim dan Penerima

Untuk melakukan komunikasi dua arah kita

memerlukan adanya dua entitas, yaitu pengirim dan penerima

pesan. Pengirim (sender) adalah entitas yang mengirimkan

pesan ke entitas lainya. Sedangkan penerima (receiver) adalah

entitas yang menerima pesan.entitas yang dimaksud tidak

hanya terbatas pada manusia saja, tetapi bisa juga berupa mesin

(computer), kartu kredit, dan sebagainya.

3. Enkripsi dan Deskripsi

Pesan atau informasi yang dapat dibaca disebut sebagai

plaintext atau cleartext. Teknik untuk membuat pesan menjadi

tidak dapat dibaca disebut enkripsi. Pesan yang tidak dapat

dibaca disebut ciphertext. Proses yang merupakan kebalikan

dari enkripsi disebut sebagai deskripsi. Jadi deskripsi akan

membuat ciphertext mejadi plaintext (YusufKurniawan,

2004:1)

4. Cipher dan Kunci

Algotima kriptograpfi disebut juga cipher yaitu aturan

(43)

yang digunakan untuk enkripsi dan deskripsi (Rinaldi Munir,

2006:5). Sedangkan menurut Jack Febrian (2004:94), cipher

adalah algoritma kriptografi (cryptographic algorithm) berupa

persamaan matematika yang digunakan dalam proses enkripsi

dan dekripsi. Cipher adalah algoritma kriptografi yang

mengunakan konsep matematis dalam proses enkripsi dan

dekripsi pesan.

Kunci dalam kriptografidipakai untuk melakukan

enkripsi dan dekripsi, kunci terbagi menjadi dua jenis, yaitu

kunci pribadi (private key) dan kunci umum (public key) (Doni

Ariyus, 2006:13).

5. Sistem kriptografi

Kriptografi membentuk sebuah sistem yang dinamakan

sistem kriptografi. Sistem kriptografi (cryptosystem) adalah

kumpulan yang terdiri dari algoritma kriptografi, semua

plainteks dan chiperteks yang mungkin, dan kunci. Di dalam

sistem kriptografi, cipher hanya salah satu komponen saja

(Rinaldi Munir, 2006:7).

6. Penyadap

Penyadap (eavesdropper) adalah orang yang mencoba

menangkap pesan selama ditransmisikan. Tujuan penyadapan

adalah untuk mendapatkan informasi sebanyak-banyaknya

(44)

berkomunikasi dengan maksud untuk memecahkan cipherteks.

Nama lain untuk penyadap adalah enemy, adversary, intruder,

interceptor, bad guy (Rinaldi Munir, 2006:8).

7. Kriptologi dan Kriptanalis

Kriptologi merupakan bidang ilmu yang mempelajari

semua yang berkaitan dengan kriptografi dan kriptanalisis.

Kriptanalis (cryptanalyst) adalah ilmu untuk

mendapatkan plaintext pesan tanpa harus mengetahui kunci

secara wajar (Yusuf Kurniawan, 2004:4). Pelaku kriptanalisis

disebut kriptanalis. Gambar 2.4 akan memperlihatkan

[image:44.612.147.536.53.566.2]

hubungan antara kriptologi, kriptografi dan kriptoanalisis.

Gambar 2.4. Cabang-cabang bidang ilmu kriptologi (Sumber: Renaldi Munir, 2006:8)

2.5.3. Tujuan kriptografi

Penggunaan kriptografi bertujuan untuk memberikan solusi

perihal layanan keamanan suatu pesan yang mencakup aspek-aspek

(45)

1. Kerahasian

Kerahasiaan adalah layanan yang ditunjukan untuk

menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang

tidak berhak. Di dalam kriptografi, layanan ini direalisasikan

dengan menyadikan pesan dari plainteks menjadi cipherteks.

2. Integritas Data (data Integrity)

Untuk menjaga intgeritas data, sistem harus memiliki

kemampuan untuk mendeteksi manipulasi pesan oleh

pihak-pihak yang tidak berhak, anatara lain penyisipan, penghapusan

dan pensubsitusian data lain ke pesan data yang sebenarnya.

3. Otentikasi (authentication)

Otentikasi adalah layanan yang berhubungan dengan

identifikasi, baik itu mengidentifikasi kebenaran pihak-pihak

yang berkumunikasi (user authentication atau entity

authentication) mau pun mengidentifikasi kebenaran sumber

pesan (data origin authentication).

4. Nirpenyangkalan (non-repudiation)

Kriptografi dapat mencegah salah satu pihak yang

berkomunikasi melakukan penyangkalan, yaitu pengirim pesan

menyangkal melakukan pengiriman begitu pun juga dengan

(46)

2.5.4. Kriptografi Kunci-Simetri dan Nirsimetri

Berdasarkan kunci yang digunakan untuk enkripsi dan

dekripsi, kriptografi kunci-simetri dan kriptografi kunci nirsimetri.

Masing-masing mempunyai kelemahan dan keunggulan. Tetapi,

keduanya mempunyai tujuan yang sama yaitu mengamankan

kerahasiaan pesan.

2.5.4.1. Kriptografi Kunci-Simetri

Kriptografi kunci-simetri atau kriptografi simetri

adalah kriptografi yang memakai kunci yang sama, baik itu

untuk mengubah plainteks menjadi cipherteks atau proses

enkripsi. Juga digunakan untuk mengubah kembali

cipherteks menjadi plainteks atau proses dekripsi.

Kriptografi kunci simetri biasa juga disebut sebagai

kriptografi kunci privat.

Gambar 2.5. Skema kriptografi kunci-Simetri (Sumber: http://www.ece.cmu.edu)

Kerahasian kunci dalam kriptografi kunci-simetri

sangatlah penting, karena jika kunci jatuh ke tangan yang

[image:46.612.150.535.57.452.2]
(47)

dan penerima pesan biasanya sudah memastikan kunci yang

sama sebelum pesan dikirimkan.

Berikut merupakan contoh algoritma kriptografi

modern yang memakai sistem algoritma kunci-simetri,

yaitu : DES (Data Encryption Standard), Blowfish,

Triple-DES, IDEA, Serpent, AES dan lain-lain. Kriptografi simetri

dikenal sebagai satu-satunya jenis kriptografi sampai

dengan tahun 1976.

2.5.4.2. Kriptografi Kunci-Nirsimetri

Kriptografi kunci nirsimetri atau kunci public

adalah kriptografi yang memakai dua kunci. Dalam artian

sistem kriptografi ini memakai dua kunci yang berbeda

untuk mengenkripsi dan mendekripsi pesan.

Kunci unutk mengenkripsi pesan dan

mengirimkannya tidak bersifat rahasia atau bisa diketahui

oleh siapa saja. Sedangkan kunci untuk membuka pesan

hanya diketahui oleh pihak yang menerima saja.

(48)

Kriptografi kunci publik mempunyai beberapa

keunggulan dibandingkan kunci privat. Pertama, keamanan

kunci lebih terjaga karena kunci yang didistribusikan

adalah kunci publik yang bisa diketahui oleh semua orang.

Kedua, jumlah kunci rahasia dapat ditekan, yaitu

pembuatan kunci rahasia tidak perlu dibuat sebanyak orang

yang melakukan komunikasi, cukup dengan dua kunci saja

kunci public dan privat saja.

Berikut merupakan contoh algoritma kriptografi

modern yang menggunakan algoritma kunci nirsimetri,

yaitu RSA, Diffle Hellman, dan lain-lain.

2.6. Advanced Encryption Standard (AES)

Advanced Encryption Standard (AES) dipublikasikan oleh NIST

(National Institute of Standards and Technology) pada tahun 2001. AES

merupakan simetri block cipher untuk menggantikan DES (Data Encryption

Standard) (Doni Ariyus,2006:84). DES adalah sebuah algoritma kriptografi

simetri dengan panjang kunci 56 bit dan blok data 64 bit (Rinaldi Munir,

2004:136). Pada tahun 1990 panjang kunci DES dianggap terlalu pendek

dan pada tahun 1998 algoritma DES sudah berhasil dipecahkan dalam 96

hari hingga akhirnya dibuatlah mesin khusus untuk memecahkan algoritma

DES (Doni Ariyus, 2006:84).

Dengan alasan tersebut maka, NIST mengadakan kompetisi untuk

(49)

Encryption Standard). Dari hasil seleksi tahap pertama NIST memilih 15

algoritma, dan pada tahap kedua memilih 5 algoritma. NIST akhirnya

mengumumkan standar baru pada November 2001. NIST memilih algoritma

Rijndael yang dibuat oleh Dr. Vincent Rijmen dan Dr. Joan Daemen

kriptografer dari Belgia sebagai algoritma AES (Wiliam Stallings,

2003:140).

2.6.1. Representasi Data

Input dan output dari algoritma AES terdiri dair urutan data

sebesar 128 bit. Urutan data yang sudah terbentuk dalam satu

kelompok 128 bit tersebut disebut juga sebagai blok data atau

plaintext yang nantinya akan dienkripsi mnjadi ciphertext. Cipher key

dari AES terdiri dari key dengan panjang 128 bit, 192 bit, atau 256 bit.

Urutan bit diberi nomor urut dari 0 sampai dengan n-1 dimana

n adalah nomor urutan. Urutan data 8 bit secara beruntun disebut

sebagai byte dimana byte ini adalah unit dasar dari operasi yang akan

dilakukan pada blok data.

Dalam algoritma AES, data sepanjang 128 bit akan

dibagi-bagi menjadi array byte dimana setiap array byte ini terdiri dari 8 bit

data input yang saling berurutan. Array byte ini direpsentasikan dalam

bentuk :

a0a1a2...a15 (2.1) Dimana :

(50)

a1 = { input8,input9,...,input15 } a15 = { input120,input121,...,input127 } an = { input8n,input8n+1,...,input8n+7 }

Operasi algoritma AES dilakukan pada sebuah state dimana

state sendiri adalah sebuah array byte dua dimensi. Setiap state pasti

mempunyai jumlah baris yang tetap, yaitu 4 baris, sedangkan jumlah

kolom tergantung dari besarnya blok data. Baris pada state

mempunyai indeks nomor row (r) dimana 0 ≤ r < 4, sedangkan kolom

mempunyai indeks nomor coloumn (c) dimana 0 ≤ c < Nb. Nb sendiri

adalah besarnya blok data dibagi 32.

Pada saat permulaan, input bit pertama kali akan disusun

menjadi suatu array byte dimana panjang dari array byte yang

digunakan pada AES adalah sepanjang 8 bit data. Array byte inilah

yang nantinya akan dimasukan atau dikopi ke dalam state dengan

urutan :

s[r,c] = in[r + 4c]untuk 0 ≤ r < 4 dan 0 ≤ c < Nb (2.2)

Sedangkan dari state akan dikopi ke output dengan urutan :

out[r + 4c] = s[r,c] untuk 0 ≤ r < 4 dan 0 c < Nb (2.3)

[image:50.612.148.540.57.453.2]
(51)

(Sumber: Renaldi Munir, 2006:158)

2.6.2. Algoritma AES

Rinjdael mendukung panjang kunci dari 128 sampai 256 bit

dengan step 32 bit. Karena AES menetapkan panjang kunci adalah

128, 192, dan 256, maka dikenal sebagai AES-128, AES-192, dan

[image:51.612.149.536.53.445.2]

AES-256, yang perbedaannya akan ditunjukan oleh table 2.1.

Tabel 2.1. Tiga buah versi AES

(Sumber:Rinaldi Munir, 2006:158)

Panjang Kunci (Nk

words)

Ukuran Blok

(Nb words)

Jumlah Putaran

(Nr)

AES-128 4 4 10

AES-196 6 4 12

AES-256 8 4 14

2.6.2.1. Enkripsi

Proses enkripsi pada algoritma AES terdiri dari 4 jenis

transformasi bytes, yaitu SubBytes, ShiftRows, MixColumns,

dan AddRounkey. Pada awal proses enkripsi, input yang telah

dikopikan ke dalam state akan mengalami transformasi byte

AddRoundKey. Setelah itu state akan mengalami transformasi

SubBytes, ShiftRows, MixColumns, dan AddRoundKey secara

berulang-ulang sebanyak Nr (jumlah putaran). Proses ini

dalam algoritma AES di sebut juga round function. Round

(52)

dimana pada round terakhir state tidak mengalami

transformasi MixColumns.

Gambar 2.8. Diagram alir proses enkripsi (Sumber: http//www.cert.or.id)

2.6.2.1.1.SubBytes

Transformasi SubBytes() memetakan setiap

byte dari array state dengan menggunakan table

subsitusi S-box yang ditunjukkan oleh tabel 2.2.

(53)

Cara pensubsitusiannya adalah sebagai

berikut. Untuk setiap byte pada array state, misalkan

S[r, c] = xy adalah digit heksadesimal dari nilai S[r,

c], maka nilai subsitusi yang dinyatakan dengan S[r,

c], adalah elemen dalama S-box yang merupakan

perpotongan garis x dengan kolom y, gambar 2.12

memperlihatkan transformasi SubBytes.

Gambar 2.9. Transformasi SubBytes

(Sumber : http://id.wikipedia.org/wiki /Berkas:AES-SubBytes.svg)

2.6.2.1.2.ShiftRows

Transformasi ShiftRows pada dasarnya adalah

proses pergeseran bit dimana bit paling kiri akan

dipindahkan menjadi bit paling kanan (rotasi bit).

Transformasi ini diterapkan pada baris 2, baris3, dan

baris 4. Baris 2 akan mengalami pergeseran bit

sebanyak satu kali, sedangkan baris 3 dan baris 4

masing –masing mengalami pergeseran bit sebanyak

(54)

Gambar 2.10. Transformasi ShiftRows

(Sumber : http://student.ceid.upatras.gr)

2.6.2.1.3.MixColumns

MixColumns mengoperasikan setiap elemen

yang berada dalam satu kolom pada state. Elemen

pada kolom dikalikan dengan suatu polinomial tetap

a(x) = {03}x3 + {01}x2 + {01}x + {02}.Secara lebih

jelas, transformasi MixColumnsdapayt dilihat pada perkalian matriks berikut ini :

=

c c c c c c c c

s

s

s

s

s

s

s

s

, 3 , 2 , 1 , 0 ' , 3 ' , 2 ' , 1 ' , 0

02

01

01

03

03

02

01

01

01

03

02

01

01

01

03

02

(55)

2.6.2.1.4.AddRoundKey

Pada proses AddRoundKey sebuah round key

ditambahkan pada state dengan operasi bitwise

XOR. Setiap round key terdiri dari NbWord dimana

tiap word tersebut akan dijumlahkan dengan word

atau kolom yang bersesuaian dari state sehingga :

[

]

[

]

[

]

Nb

c

w

s

s

s

s

s

s

s

s

c c c c c c c c roundNbc

0

untuk

,

,

,

,

,

,

1', 2', 3', 0, 1, 2, 3, *

' , 0

£

£

¯

=

+ (2.5)

[wi] adalah word dari key yang bersesuaian

dimana i = round*Nb+c. Transformasi

AddRoundKey diimplementasikan pertama kali pada

round = 0, dimana key yang digunakan adalah initial

key (key yang dimasukan oleh kriptografer dan

belum mengalami proses key expansion).

2.6.2.2. Dekripsi

Transformasi cipher dapat dibalikan dan

diimplementasikan dalam arah yang berlawanan untuk

menghasilkan inverse cipher yang mudah dipahami untuk

algoritma AES. Transformasi byte yang digunakan pada

invers cipher adalah InvShiftRows, InvSubBytes,

InvMixColumns, dan AddroundKey. Algoritma dekripsi dapat

(56)

Gambar2.11. Diagram alir proses dekripsi (Sumber : http://www.cert.or.id)

2.6.2.2.1 InvShiftRows

InShiftRows adalah transformasi byte yang

berkebalikan dengan transformasi ShiftRows. Pada

transformasi InvShiftRows, dilakukan pergeseran bit

ke kanan sedangkan pada ShiftRows dilakukan

pergeseran bit ke kiri. Pada baris kedua, pergeseran

bit dilakukan sebanyak 3 kali, sedangkan pada baris

ketiga dan baris keempat, dilakukan pergeseran bit

sebanyak dua kali dan satu kali.

Gambar 2.12.Transformasi InvShiftRows

(57)

2.6.2.2.2.InvSubBytes

InvSubBytes juga merupakan transformasi

bytes yang berkebalikan dengan transformasi

SubBytes. Pada InvSubBytes, tiap elemen pada state

dipetakan dengan menggunakan tabel inverse S-Box.

Tabel 2.3. Tabel Inverse S-box dalam transformasi InvSubbytes() (Sumber : William Stalling, 2003:152)

Perkalian invers yang dilakukan pada

transformasi InvSubBytes ini sama dengan perkalian

invers yang dilakukan pada transformasi SubBytes.

2.6.2.2.3.InvMix Columns

Pada InvMix Columns, kolom-kolom pada

tiap state (word) akan dipandang sebagai polinom

atas GF(28) dan mengalikan modulo x4 + 1 dengan

polinom tetap a-1(x) ang diperoleh dari :

(58)

Atau dalam matriks :

(

)

(

)

(

)

'

x

s

x

a

x

s

=

˜

(2.7)

=

c c c c c c c c

s

s

s

s

E

D

B

B

E

D

D

B

E

D

B

E

s

s

s

s

, 3 , 2 , 1 , 0 ' , 3 ' , 2 ' , 1 ' , 0

0

09

0

0

0

0

09

0

0

0

0

09

09

0

0

0

)

}

02

({

)

}

03

({

)

}

03

({

)

}

02

({

)

}

03

({

)

}

02

({

)

}

03

({

)

}

02

({

, 3 , 2 , 1 , 0 ' , 3 , 3 , 2 , 1 , 0 ' , 2 , 3 , 2 , 1 , 0 ' , 1 , 3 , 2 , 1 , ' , 0 c c c c c c c c c c c c c c c c c c c o c

s

s

s

s

s

s

s

s

s

s

s

s

s

s

s

s

s

s

s

s

¯

¯

¯

=

¯

¯

¯

=

¯

¯

¯

=

¯

¯

¯

=

2.6.2.2.4.Inverse AddRoundKey

Transformasi Inverse AddRoundkey tidak

mempunyai perbedaan dengan transformasi

AddRoundKey karena pada tranformasi ini hanya

dilakukan operasi penambahan sederhana dengan

menggunakan operasi bitwise XOR.

2.6.2.3. Ekspansi Kunci

Algoritma AES mengambil kunci cipher, K, dan

melakukan rutin ekspansi kunci (key expansion) untuk

membentuk key schedule. Ekspansi kunci menghasilkan total

Nb(Nr+1) word. Algoritma ini membutuhkan set awal key

(59)

data kunci sebanyak Nb word. Hasil key schedule terdiri dari

array 4 byte word linear yang dinotasikan dengan [wi].

SubWord adalah fungsi yang mengambil 4 byte word

input dan mengaplikasikan S-Box ke tiap-tiap data 4

byteuntuk menghasilkan word output. Fungsi RotWord

mengambil word [a0, a1, a2, a3] sebagai input, melakukan

pergeseran siklik, dan mengembalikan word [a1, a2, a3, a0].

Rcon[i] terdiri dari nilai-nilai yang diberikan oleh [xi-1, {00},

{00}, {00}], dengan xi-1 sebagai pangkat dari x (x dinotasikan

sebagai {02} dalam field GF(28)). Pseudocode dari proses

ekspansi key dapat dilihat seperti yang ada di bawah berikut

ini :

[image:59.612.150.535.54.681.2]

(60)

Dari pseudocode dapat dilihat bahwa word ke Nk

pertama pada ekspansi kunci berisi kunci cipher. Setiap word

berikutnya, w[i], sama dengan XOR dari word sebelumnya,

w[i-1] dan word Nk yang ada pada posisi sebelumnya,

w[i-Nk]. Untuk word pada posisi yang merupakan kelipatan Nk,

sebuah tranformasi diaplikasikan pada w[i-1] sebelum XOR,

lalu dilanjutkan oleh XOR dengan konstanta round, Rcon[i].

Transformasi ini terdiri dari pergeseran siklik dari byte data

dalam suatu word RotWord, lalu diikuti aplikasi dari lookup

tabel untuk semua 4 byte data dari word SubWord.

2.7. Bahasa Pemrograman C#

C# (dibaca “See-Sharp”) adalah bahasa pemrograman baru yang

diciptakan oleh Microsoft (dikembangkan dibawah kepemimpinan Andres

Heljsberg yang juga telah menciptakan berbagai macam bahasa

pemrograman termasuk Borland Turbo C++ dan Borland Delphi). C# pada

dasarnya bukan bahasa sulit karena intinya mengambil dari berbagai bahasa

pemrograman yang ada. Bahasa yang paling banyak digunakan adalah

bahasa Java. Untuk lebih jelas mengetahui komposisi bahasa C#, dapat

(61)

Gambar 2.14. Komposisi bahasa C# (Sumber : Jaenudin, 2006: 17)

Seperti halnya bahasa pemrograman yang lain, C# bias digunakan

untuk membangun berbagai macam jenis aplikasi, seperti aplikasi berbasis

windows (desktop), aplikasi berbasis web serta aplikasi berbasis web service.

Ada beberapa keuntungan menggunakan teknologi C# yang berada

di lingkungan .NET dalam membangun sebuah aplikasi, diantaranya

(Jaenudin, 2006: 18) :

1. Mudah, Visual C# yang sangat sederhana mudah digunakan dalam

mengimpementasikan pengembangan sebuah aplikasi.

2. Efisien, kemudahan saat pembuatan aplikasi sangat berpengaruh pada

efisiensi waktu pengerjaan aplikasi dan berdampak pada efisiensi biaya.

3. Produktivitas, kemudahan pengerjaan aplikasi akan berdampak besar

dalam menghasilkan produk yang berupa aplikasi.

4. Konsisten, kemudahan yang dihadirkan oleh visual C# akan berdampak

pada konsistensi program.

Untuk mengenal lebih dekat Visual C# lihat gambar 2.15 yang

menampilkan ruang kerja Visual C# 2005 dengan berbagai tools dan

(62)

Gambar 2.15. Tampilan visual C#

(Sumber : Jaenudin, 2006: 21)

Pada gambar 2.15, bagian yang ditunjuk oleh panah bernomor adalah

bagian penting dari halaman kerja Visual C# dengan fungsi yang

berbeda-beda yang akan dijelaskan Tabel 2.4.

Tabel 2.4 Bagian-bagian halaman kerja visual C# 2005 (Sumber : Jaenudin, 2006:22)

NO NAMA BAGIAN KETERANGAN

1 MenuBar Berisi daftar menu (perintah) yang umum digunakan oleh setiap aplikasi berbasis

windows, misalnya : Menu File.

2 ToolBar Berisi daftar perintah yang sering digunakan dan dipresentasikan dalam bentuk tombol.

3 ToolBox Berisi daftar komponen yang dapat

digunakan untuk mendesain tampilan muka

sebuah aplikasi. 1

3 5

2

(63)

4 Solution Explorer Berisi daftar file, reference, dan project yang sedang dikerjakan.

5 StartPage Merupakan halaman pertama yang tampak ketika C# dibuka, dan disinilah daftar project

yang sedang dibangun dapat dilihat.

2.7.1. Mengenal Struktur Program C#

Untuk mengenal struktur program dalam C#, perhatikan

gambar 2.16 yang menampilkan beberapa sintakis yang secara

otomatis dibuat oleh Visual C#.

Gambar 2.16.Console Application

(Sumber : Jaenudin, 2006:25)

Untuk lebih jelasnya, perhatikan sintakis dari kode program

(64)

using System.Collection.Generic;

using System.Text;

namespace Contoh {

class Program {

static void main (string[] args) {

Console.WriteLine(“Belajar Visual C#”); Console.ReadLine();

} }

}

Gambar 2.17. Sintakis kode program

(Sumber : Jaenudin,2006: 25)

Pada bagian awal program yang dimulai dengan keyword

using, berfungsi untuk memanggil class library yang dibutuhkan

aplikasi. Apabila membutuhk

Gambar

gambar, video, suara, atau teks dalam format digital.
Gambar 2.2. Trade-Off dalam watermarking
Gambar 2.3. Susunan bit
Gambar 2.4.  Cabang-cabang bidang ilmu kriptologi   (Sumber: Renaldi Munir, 2006:8)
+7

Referensi

Dokumen terkait

Implementasi pada ukuran dan jenis file yang berbeda serta hasil akhir file stego yang dapat diekstraksi kembali menjadi file asli menggunakan kunci yang sama telah membuktikan

Tujuan dari penelitian ini adalah membangun suatu aplikasi yang dapat mengamankan file gambar dengan menggunakan algoritma Advanced Encryption Standard (AES).... 1.5

Implementasi pada ukuran dan jenis file yang berbeda serta hasil akhir file stego yang dapat diekstraksi kembali menjadi file asli menggunakan kunci yang sama telah membuktikan

Blok pertama pada diagram diatas merupakan file asli atau file cover yang akan menjadi media steganografi end of file, blok kedua yaitu data header terdiri dari

Dalam hal ini proses penyimpanan data juga bisa saja gagal dilakukan jika file yang akan disimpan memiliki ukuran yang lebih besar dari pada ruang penyimpanan yang tersedia,

Isyana Sarasvat i-Tetap Dalam Jiwa Ü M ╛ ╡ M ╔ : £ Isyana Sarasvat i-Tetap Dalam Jiwa Ü W ╛ ¥ N ╔ Ü £ Dari Hasil Perbanding an metadata file audio Asli

Pada gambar 1(a), dijelaskan bahwa proses awal dari watermarking adalah ketika adalah sebuah original data (data asli) akan dimasukkan sebuah watermark guna melindungi hak

Implementasi pada ukuran dan jenis file yang berbeda serta hasil akhir file stego yang dapat diekstraksi kembali menjadi file asli menggunakan kunci yang sama telah membuktikan