• Tidak ada hasil yang ditemukan

Implementasi Kombinasi Rivest Shamir Adleman (Rsa) Dan Elgamal Dalam Penyandian Citra Bitmap

N/A
N/A
Protected

Academic year: 2016

Membagikan "Implementasi Kombinasi Rivest Shamir Adleman (Rsa) Dan Elgamal Dalam Penyandian Citra Bitmap"

Copied!
99
0
0

Teks penuh

(1)

CITRA BITMAP

SKRIPSI

AHMAD IHSAN

081401058

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

(2)

IMPLEMENTASI KOMBINASI RIVEST SHAMIR ADLEMAN (RSA) DAN ELGAMAL DALAM PENYANDIAN

CITRA BITMAP

SKRIPSI

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

AHMAD IHSAN 081401058

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : IMPLEMENTASI KOMBINASI RIVEST SHAMIR

ADLEMAN (RSA) DAN ELGAMAL DALAM PENYANDIAN CITRA BITMAP

Kategori : SKRIPSI

Nama : AHMAD IHSAN

Nomor Induk Mahasiswa : 081401058

Program Studi : S1 ILMU KOMPUTER

Departemen : ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Siti Dara Fadilla, S.Si, M.T Drs. Marihat Situmorang, M.Kom NIP. 197705162005012001 NIP. 196312141989031001

Diketahui/disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

(4)

PERNYATAAN

IMPLEMENTASI KOMBINASI RIVEST SHAMIR ADLEMAN (RSA) DAN ELGAMAL DALAM PENYANDIAN CITRA BITMAP

SKRIPSI

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

Medan, 12 Januari 2015

(5)

PENGHARGAAN

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

Pada kesempatan kali ini penulis ingin mengucapkan terima kasih kepada semua pihak yang telah membantu penulis selama pengerjaan skripsi ini, antara lain kepada :

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

2. Drs. Marihat Situmorang, M.Kom selaku pembimbing I atas arahan, bimbingan dan nasehatnya kepada penulis dalam menyelesaikan skripsi ini. Serta Siti Dara Fadilla, S.Si, M.T selaku pembimbing II yang telah banyak memberikan arahan, bimbingan, nasehat dan motivasi kepada penulis selama penulisan skripsi ini..

3. Dr. Poltak Sihombing, M.Kom sebagai dosen penguji I dan Ade Candra, S.T, M.Kom selaku dosen penguji II atas masukan, saran dan nasehatnya kepada penulis dalam menyelesaikan skripsi ini.

4. Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

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

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

(6)

8. Abangda Tony Zatmiko, Rony Gustam Kalvarisi dan Kakanda saya Dewi Try Agustina atas segala nasehat, dukungan, doa dan teladan yang diberikan kepada penulis untuk dapat menyelesaikan skripsi ini.

9. Saudari Daini, atas kesetiaan, kebersamaan, semangat, doa, dukungan, dan keceriaan serta motivasi yang diberikan kepada penulis.

10. Teman-teman sejawat Ferdy Harahap, Hanafi, Rahmat Dani, Nurman Hidayat, M.Reza Alvi, Reycho Surahman Sinaga, Irfan Antoni Siregar, Saria Mahdi Ginting, Arion Immanuel Sitorus, Andronikus Simarmata atas dukungan, kebersamaan dan motivasi yang diberikan kepada penulis.

11. Keluarga besar S1 Ilmu Komputer, khususnya angkatan 2008 yang telah banyak memberi dukungan, masukan dan kerjasama yang baik.

12. Teman-teman parkir Ilkom Bang Rizal, Bang Nuzul, Bozes atas semua motivasi dan kebersamaan serta keceriaan untuk menghilangkan kejenuhan diri penulis.

13. Semua pihak yang terlibat langsung ataupun tidak langsung dalam membantu penyelesaian skripsi ini yang tidak dapat penulis ucapkan satu persatu.

Penulis menyadari bahwa skripsi ini masih jauh dari kesempurnaan, karena kesempurnaan hanyalah milik Allah semata. Oleh karena itu penulis menerima kritik dan saran dari semua pihak yang bersifat membangun dan menyempurnakan skripsi ini. Penulis berharap semoga skripsi ini bermanfaat bagi penulis sendiri pada khususnya dan pembaca pada umumnya.

Medan, 12 Januari 2015

(7)

ABSTRAK

Pertukaran informasi baik pesan berupa teks, citra dan video semakin mudah dan popular untuk dilakukan. Hal ini tidak mengurangi adanya resiko pencurian dan pembajakan pesan. Perlu dilakukan pengamanan pesan citra dengan menggunakan kriptografi sebelum data tersebut dikirim, dua diantaranya adalah algoritma kunci public Rivest-Shamir-Adleman (RSA) dan El-Gamal. Algoritma RSA dan El-Gamal menggunakan bilangan prima untuk mengenkripsi isi pesan. Bilangan prima dibangkitkan dengan menggunakan metode bilangan mersenne. Dalam penelitian ini, pengecekan terhadap keprimaan suatu bilangan menggunakan Lucas Lehmer Primality Test. Sistem yang dihasilkan dapat menjaga melakukan enkripsi dan dekripsi terhadap pesan citra menggunakan algoritma RSA dan El-Gamal.

(8)

ABSTRACT

Exchanging information such as text, image, and video is becoming popular and easy to do nowadays. This doesn't mean there is no risk in stealing or hijacking the information. It's necessary to secure the image messages using cryptography before sending, two among them are Rivest-Shamir-Adleman and El-Gamal public key algorithm . Those algorithm use prime numbers to encrypt the content. Prime number is generated using Mersenne number method. In this case, writer tries to check the prime number using Lucas Lehmer primality test. The resulting system can encrypt and decrypt the image message using RSA and El-Gamal algorithm.

(9)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar Isi viii

Daftar Tabel xi

Daftar Gambar xii

Bab 1 Pendahuluan

1.1 Latar Belakang Masalah 1

1.2 Rumusan Masalah 3

1.3 Batasan Masalah 3

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 4

1.6 Metode Penelitian 4

1.7 Sistematika Penulisan 5

Bab 2 Tinjauan Pustaka

2.1 Kriptografi 6

2.2 Algoritma RSA 9

2.3.Algoritma ElGamal 12

2.4 Pengertian Citra 14

2.4.1 Pengertian Citra Analog 14

2.4.2 Pengertian Citra Digital 15

2.5 Jenis Citra 15

2.5.1 Citra Biner 16

2.5.2 Citra Grayscale 16

2.5.3 Citra Warna (16 Bit) 17

(10)

2.6 Format File Citra Bitmap (.Bmp) 18

2.7 Mode Warna 19

2.7.1 Mode Warna RGB (Red, Green, Blue) 20

2.7.2 Mode Warna CMYK (Cyan, Magenta Yellow Black) 21 2.7.3 Mode Warna HSI (Hue, Saturation, Intensity) 22

2.8 Kedalaman Bit 22

Bab 3 Analisis Dan Perancangan Sistem 23

3.1 Analisis Sistem 23

3.1.1 Analisis Masalah 23

3.1.2 Pemodelan Perangkat Lunak 24

3.1.2.1 Use Case Diagram 25

3.1.2.2 Squence Diagram 28

3.1.3 Analisis Proses Sistem 29

3.1.3.1 Analisis Lucas Lehmer Primality Test 30

3.1.3.2 Analisis Algoritma RSA 33

3.1.3.3 Analisis Algoritma ElGamal 36

3.2 Perancangan Sistem 38

3.2.1 Pembangkit Kunci Algoritma RSA dan ElGamal 39

3.2.2 Enkripsi Citra 39

3.2.3 Dekripsi Citra 40

3.2.4 Perancangan Flowchart 41

3.2.4.1 Flowchart Pembangkit Kunci Lucas Lehmer 42 3.2.4.2 Flowchart Pembangkit Kunci RSA 43 3.2.4.3 Flowchart Pembangkit Kunci Dekripsi RSA 44 3.2.4.4 Flowchart Pembangkit Kunci Enkripsi RSA 45 3.2.4.5 Flowchart Pembangkit Kunci ElGamal 46 3.2.4.6 Flowchart Proses Enkripsi ElGamal 47 3.2.4.7 Flowchart Proses Dekripsi ElGamal 48

3.2.5 Perancangan Tampilan 49

3.2.5.1 Perancangan Form Utama 49

(11)

Bab 4 Implementasi Dan Pengujian Sistem 52

4.1 Implementasi 52

4.1.1 Proses Pengambilan Nilai RGB Pada Pixel 52 4.1.2 Proses Enkripsi Nilai RGB Citra Asli 54 4.1.3 Proses Dekripsi Nilai RGB Citra Ter-Enkripsi 56

4.2 Pengujian Sistem 57

4.2.1 Proses Pengenkripsian Citra Bitmap RSA dan ElGamal 57 4.2.2 Proses Pendekripsian Citra Bipmap RSA dan ElGamal 63

Bab 5 Kesimpulan dan Saran 67

5.1 Kesimpulan 67

5.2 Saran 68

Daftar Pustaka 69

(12)

DAFTAR TABEL

Halaman

Tabel 2.1 Hubungan Antara Bit pixel dengan Jumlah Warna Pada Bitmap 19 Tabel 2.2 Hubungan Antara Kedalaman warna dan Resolusi Warna 22

Tabel 3.1 Spesifikasi Use Case Enkripsi 26

(13)

DAFTAR GAMBAR

Halaman

Gambar 2.1 Diagram Proses Enkripsi dan Dekripsi Algoritma Simetris 8 Gambar 2.2 Diagram Proses Enkripsi dan Dekripsi Algoritma Asimetris 8 Gambar 2.3 Koordinat Citra Digital 14

Gambar 2.4 Citra Biner 16

Gambar 2.5 Citra Grayscale 16

Gambar 2.6 Deret Warna 16 Bit 17

Gambar 2.7 Kedalaman Warna 16 Bit High Color 17

Gambar 2.8 Citra Warna 24 Bit 18

Gambar 2.9 Warna RGB 21

Gambar 2.10 Warna CMYK 21

Gambar 2.11 Warna Hue 22

Gambar 3.1 Diagram Ishikawa untuk Analisis Permasalahan Sistem 24

Gambar 3.2 Use Case Perancang Sistem 25

Gambar 3.3 Activity Diagram Enkripsi 26

Gambar 3.4 Activity Diagram Dekripsi 27

Gambar 3.5 Squence Diagram Enkripsi Citra Digital 29 Gambar 3.6 Squence Diagram Dekripsi Citra Digital 29 Gambar 3.7 Rancangan Pembangkit Kunci Algoritma RSA dan ElGamal 39

Gambar 3.8 Proses Enkripsi Citra 40

Gambar 3.9 Proses Dekripsi Citra 40

Gambar 3.10 Flowchart Pembangkit Kunci Lucas Lehmer 42

Gambar 3.11 Flowchart Pembangkit Kunci RSA 43

Gambar 3.12 Flowchart Pembangkit Dekripsi RSA 44

Gambar 3.13 Flowchart Pembangkit Kunci Enkripsi RSA 45

Gambar 3,14 Flowchart Pembangkit Kunci ElGamal 46

Gambar 3.15 Flowchart Proses Enkripsi ElGamal 47

Gambar 3.16 Flowchart Proses Dekripsi ElGamal 48

Gambar 3.17 Rancangan Form Utama 49

(14)

Gambar 3.19 Rancangan Form Pembangkit Kunci ElGamal 51

Gambar 4.1 Citra 24Bit 1024 x 768 Pixel 52

Gambar 4.2 Matriks RGB Citra 53

Gambar 4.3 Tampilan Form Proses Enkripsi Citra 57

Gambar 4.4 Input Citra 58

Gambar 4.5 Generate RSA Key 59

Gambar 4.6 Pasangan Kunci 59

Gambar 4.7 Enkripsi Dekripsi Awal 60

Gambar 4.8 Generate ElGamal 60

Gambar 4.9 Pasangan Kunci ElGamal 61

Gambar 4.10 Proses Generate Key Selesai 61

Gambar 4.11 Konfirmasi Proses Enkripsi RSA 62

Gambar 4.12 Proses Enkripsi Algoritma RSA 62

Gambar 4.13 Konfirmasi Proses Enkripsi ElGamal 63

Gambar 4.14 Proses Enkripsi Selesai 63

Gambar 4.15 Aplikasi Enkripsi Dekripsi Citra Bitmap 64 Gambar 4.16 Menu “Dekripsi” Setelah Input Citra 64 Gambar 4.17 Private Key Dekripsi Algoritma RSA dan ElGamal 65

Gambar 4.18 Proses Dekripsi Algoritma RSA 65

(15)

ABSTRAK

Pertukaran informasi baik pesan berupa teks, citra dan video semakin mudah dan popular untuk dilakukan. Hal ini tidak mengurangi adanya resiko pencurian dan pembajakan pesan. Perlu dilakukan pengamanan pesan citra dengan menggunakan kriptografi sebelum data tersebut dikirim, dua diantaranya adalah algoritma kunci public Rivest-Shamir-Adleman (RSA) dan El-Gamal. Algoritma RSA dan El-Gamal menggunakan bilangan prima untuk mengenkripsi isi pesan. Bilangan prima dibangkitkan dengan menggunakan metode bilangan mersenne. Dalam penelitian ini, pengecekan terhadap keprimaan suatu bilangan menggunakan Lucas Lehmer Primality Test. Sistem yang dihasilkan dapat menjaga melakukan enkripsi dan dekripsi terhadap pesan citra menggunakan algoritma RSA dan El-Gamal.

(16)

ABSTRACT

Exchanging information such as text, image, and video is becoming popular and easy to do nowadays. This doesn't mean there is no risk in stealing or hijacking the information. It's necessary to secure the image messages using cryptography before sending, two among them are Rivest-Shamir-Adleman and El-Gamal public key algorithm . Those algorithm use prime numbers to encrypt the content. Prime number is generated using Mersenne number method. In this case, writer tries to check the prime number using Lucas Lehmer primality test. The resulting system can encrypt and decrypt the image message using RSA and El-Gamal algorithm.

(17)

BAB 1

PENDAHULUAN

1.1Latar Belakang Masalah

Dalam kehidupan rutinitas sehari-hari, interaksi sosial merupakan peristiwa yang tidak dapat dihindari. Komunikasi sesama merupakan salah satu kebutuhan dalam menjalani

hidup bersosial. Pada perkembangan zaman saat ini, tehnik dan metode yang telah ditemukan dalam penyampaian pesan ataupun berkomunikasi terhadap sesama sudah semakin beragam, salah satunya yaitu dengan berkirim pesan digital melalui berbagai media. Namun, hal tersebut masih belum menjamin bahwa pesan yang telah dikirim berstatus aman dan terhindar dari campur tangan pihak ketiga sebelum sampai ke tujuan, terlebih lagi jika pesan yang ingin disampaikan tersebut bersifat penting dan rahasia.

Ilmu yang mempelajari tentang cara-cara pengamanan data dikenal dengan istilah kriptografi. Penggunaan tehnik kriptografi telah ada sejak jaman Romawi kuno, Julius Caesar menggunakan tehnik kriptografi yang dijuluki Caesar cipher untuk mengirim pesan secara rahasia, meskipun tehnik yang digunakannya masih sangat sederhana. Begitu pula sewaktu perang dunia kedua, pihak sekutu berhasil memecahkan kode mesin kriptografi Jerman yang bernama Enigma. Keberhasilan yang sangat membantu pihak sekutu dalam memenangkan perang. Sejarah kriptografi penuh dengan intrik (muslihat) dan banyak orang melihat kriptografi sebagai sesuatu yang penuh dengan misteri.

(18)

mengirimkannya melalui jaringan yang tidak aman (seperti Internet) sehingga tidak dapat dibaca oleh siapa pun kecuali penerima yang dimaksud. Pada proses pengiriman data terdapat beberapa hal yang harus diperhatikan, yaitu : kerahasiaan, integritas data, autentikasi dan non repudiasi. Mengingat bahwa keamanan dalam pengiriman pesan masih belum begitu terjamin, maka dibutuhkan suatu proses pengamanan pesan berupa penyandian data sebelum dilakukan proses pengiriman. Seperti halnya pesan teks, pengamanan pesan citra dapat dilakukan dengan berbagai tehnik, salah satunya yang akan kita bahas dalam penelitian ini yaitu menggunakan tehnik kriptografi pada citra digital.

Kriptografi adalah ilmu yang mempelajari tentang bagaimana menjaga kerahasiaan suatu pesan, agar isi pesan yang disampaikan tersebut aman sampai ke penerima pesan (Ariyus, D. 2008). Langkah-langkah dalam kriptografi disebut algoritma kriptografi. Berdasarkan dari kunci yang digunakan algoritma kriptografi dapat dibagi menjadi tiga, Algoritma Simetri, Algoritma Assimetri, dan Hash Function. Dimana Algoritma Simetri menggunakan satu kunci untuk proses enkripsi dan dekripsinya. Sedangkan Algoritma Assimetri menggunakan dua kunci berbeda untuk proses enkripsi dan dekripsinya, yaitu kunci umum (public key) yang digunakan untuk proses enkripsi (perubahan data plain teks menjadi chipper text) yang sifatnya tidak rahasia, dan kunci pribadi (private key) yang digunakan untuk proses dekripsi (pengembalian data chipper text menjadi plain text) yang sifatnya rahasia dan masing-masing pihak memiliki kunci pribadi yang berbeda.

Penggunaan kunci pribadi dapat digunakan untuk autentikasi (pengenalan identitas pengirim) dan non repudiasi (pencegahan penyangkalan pengiriman data) karena dalam proses dekripsi dapat diketahui siapa pihak pengirim dengan melihat kunci pribadi yang dipakai.

(19)

Mencermati hal diatas penulis ingin melakukan penelitian yang berjudul

Implementasi Kombinasi Rivest Shamir Adleman (RSA) dan ElGamal dalam Penyandian Citra Bitmap” Penulis akan membahas teknik Kriptografi dengan menggunakan algoritma RSA yang kemudian dikombinasikan dengan algoritama ElGamal pada file citra bitmap.

1.2Rumusan Masalah

Berdasarkan latar belakang, maka yang menjadi rumusan masalah pada penelitian ini adalah bagaimana mengimplementasikan kombinasi algoritma Rivest Shamir Adleman (RSA) dan algoritma ElGamal dalam proses pengenkripsian dan pendekripsian pesan citra bitmap.

1.3Batasan Masalah

Batasan masalah yang menjadi acuan dalam pengerjaan skripsi ini adalah:

1. Penelitian ini membahas bagaimana memperoleh citra hasil penyandian algoritma RSA dan ElGamal.

2. Pesan yang akan disandikan adalah file Citra dengan Format *.bmp 3. Bahasa pemrograman yang akan digunakan yaitu Visualbasic.net

4. Bilangan prima yang digunakan hanya meliputi bilangan prima Lucas Lehmer.

1.4Tujuan Penelitian

(20)

1.5Manfaat Penelitian

Dari penelitian ini diharapkan:

1. Menambah literatur dan rujukan dalam bidang ilmu enkripsi dekripsi mengenai pengamanan terhadap data file citra menggunakan kombinasi algoritma Rivest Shamir Adleman (RSA) dan algoritma ElGamal.

2. Memperoleh aplikasi yang berguna bagi semua orang untuk memberikan rasa aman dengan pengamanan data secara ganda dalam melakukan pertukaran informasi digital.

1.6Metode Penelitian

Tahapan yang dilakukan dalam penelitian ini: 1. Studi Literatur

Penulisan tugas akhir ini diawali dengan melakukan pembelajaran literatur pada sejumlah buku, artikel, paper, jurnal, makalah, maupun situs internet mengenai ataupun berhubungan dengan kriptografi menggunakan algoritma Rivest Shamir Adleman (RSA) dan algoritma ElGamal terhadap file citra bitmap.

2. Analisis dan Perancangan Sistem

Pada tahap ini akan dilaksanakan analisis terhadap kriptografi algoritma Rivest Shamir Adleman (RSA) dan algoritma ElGamal serta mengenai file citra digital bitmap yang kemudian akan dilanjutkan tahap perancangan antarmuka dan perancangan sistem penyandian citra bitmap dengan menggunakan algoritma-algoritma tersebut.

3. Implementasi Sistem

Pada tahap ini akan dilaksanakan pengkodean ( coding ). 4. Pengujian Sistem

Dalam tahap ini dilakukan pengujian terhadap sistem yang telah dibangun, seperti melakukan ujicoba proses enkripsi dan dekripsi file citra digital.

5. Dokumentasi

(21)

1.7Sistematika Penulisan

Sistematika penulisan skripsi ini terdiri dari beberapa bagian utama, sebagai berikut :

BAB 1: PENDAHULUAN

Bab ini merupakan penjelasan mengenai latar belakang pemilihan topik penelitian

“Implementasi Kombinasi Algoritma Rivest Shamir Adleman (RSA) dan ElGamal

dalam Penyandian Citra Bitmap”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian serta sistematika penulisan.

BAB 2: TINJAUAN PUSTAKA

Bab ini berisi teori-teori yang berkaitan dengan penelitian yang dilakukan penulis. Teori-teori tersebut antara lain : algoritma kriptografi (khususnya RSA dan ElGamal), dan citra bitmap.

BAB 3: ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi tentang analisis dan perancangan sistem dengan menggunakan flowchart atau diagram alir dan perancangan interface atau antarmuka sistem untuk menghasilkan suatu rancang bangun yang pada tahap selanjutnya diimplementasikan dengan bahasa pemrograman.

BAB 4: IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab ini berisikan pembahasan yang berkaitan dengan implementasi perangkat lunak yang telah dirancang berdasarkan data yang diperoleh. Kinerja sistem dilihat dari keberhasilan enkripsi-dekripsi.

BAB 5: KESIMPULAN DAN SARAN

(22)

BAB 2

TINJAUAN PUSTAKA

2.1Kriptografi

Kriptografi ( cryptography ) berasal dari Bahasa Yunani yaitu “cryptos” yang artinya

secret” (rahasia) dan “graphein” yang artinya “writing” (menulis). Jadi kriptografi

berarti “secret writing” (tulisan rahasia). Kriptografi adalah ilmu dan seni untuk

menjaga kerahasiaan pesan dengan cara menyandikan ke dalam bentuk yang tidak dapat dimengerti maknanya. Kriptografi mempunyai sejarah yang sangat menarik dan panjang. Kriptografi sudah digunakan lebih dari 4000 tahun yang lalu, diperkenalkan oleh orang-orang mesir lewat hieroglyph. (Mollin, Richard A.2007)

Keamanan data merupakan suatu hal yang dibutuhkan semua orang, supaya data yang dikirim aman dari gangguan orang yang tidak bertanggungjawab yang dapat membahayakan keamanan pesan pada saat proses pengiriman data. Untuk mengamankan data tersebut kita menggunakan teknik kriptografi seperti yang sudah dijelaskan diatas. Ada beberapa komponen kriptografi dasar, seperti: (Ariyus, D. 2008)

1. Enkripsi

(23)

2. Dekripsi

Merupakan kebalikan dari Enkripsi. Pesan yang telah di Enkripsi dikembalikan kebentuk aslinya dan algoritma yang digunakan untuk dekripsi tentu saja berbeda dengan proses Enkripsi.

3. Kunci

Ada dua penerapan kunci pada pengamanan kriptografi yaitu, kunci umum (public key) dan kunci pribadi (private key).

4. Ciphertext

Ciphertext adalah bentuk penyandian dari proses Enkripsi dan pesan pada teks-kode ini tidak dapat dibaca karena berupa karakter-karakter yang tidak mempunyai ejaan atau makna tertentu.

5. Plaintext

Plaintext sering disebut dengan cleartex, Adalah teks asli yang memiliki makna yang akan dikirim kepada penerima. Teks asli inilah yang akan diproses dengan algoritma kriptografi menjadi ciphertext (teks-kode).

6. Pesan

Pesan adalah sesuatu informasi yang akan disampaikan atau dikirim kepada penerima dan pesan merupakan sesuatu yang sering dirahasiakan. Pesan dapat berupa data atau informasi yang di kirim baik itu melalui kurir, saluran komunikasi data, dan sebagainya atau yang disimpan didalam media perekaman seperti kertas, storage dan sebagainya.

7. Cryptanalysis

(24)

Algoritma kriptografi berdasarkan jenis kunci yang digunakan dapat dibedakan menjadi dua jenis yaitu:

a. Algoritma Simetris

Algoritma simetri sering disebut dengan algoritma klasik, karena memakai kunci yang sama untuk proses enkripsi dan dekripsi. Algoritma ini sudah ada sejak 4000 tahun yang lalu.

Karena kunci yang digunakan untuk proses enkripsi dan dekripsi sama, sehingga sering disebut juga one key/ private key/ single key, seperti Twofish, One Time Pad. (Mollin, Richard A.2007)

Gambar 2.1 Diagram proses enkripsi dan dekripsi algoritma simetris

b. Algoritma Asimetris

Algoritma Asimetri sering juga disebut dengan kunci publik. Dimana kunci yang digunakan untuk enkripsi berbeda dengan kunci yang digunakan untuk dekripsi, seperti algoritma RSA, ElGamal, dll. Kunci-kunci tersebut berhubungan satu sama lain: (Mollin, Richard A.2007)

Gambar 2.2 Diagram proses enkripsi dan dekripsi algoritma asimetris

Plainteks Cipherteks Plainteks

enkripsi dekripsi

Kunci enkripsi (K) Kunci dekripsi (K)

Plainteks

Kunci Public (K1) Kunci Privat (K2) Cipherteks

(25)

2.2 Algoritma RSA

Dari sekian banyak algoritma kriptografi kunci-publik yang pernah dibuat, algoritma yang paling populer adalah algoritma RSA. Algoritma RSA dibuat oleh 3 orang peneliti dari MIT (Massachussets Institute of Technology) pada tahun 1976, yaitu: Ron (R)ivest, Adi (S)hamir, dan Leonard (A)dleman. Keamanan algoritma RSA terletak pada sulitnya memfaktorkan bilangan yang besar menjadi faktor-faktor prima. Pemfaktoran dilakukan untuk memperoleh kunci pribadi. Selama pemfaktoran bilangan besar menjadi faktor-faktor prima belum ditemukan algoritma yang baik, maka selama itu pula keamanan algoritma RSA tetap terjamin. (Munir, R. 2007)

Besaran-besaran yang digunakan pada algoritma RSA:

1. p dan q bilangan prima (rahasia)

2. r = p  q (tidak rahasia)

3. n = (p – 1)(q – 1) (rahasia) 4. e (kunci enkripsi/kunci publik) (tidak rahasia) 5. d (kunci dekripsi/kunci privat) (rahasia)

6. x (plainteks) (rahasia)

7. y (cipherteks) (tidak rahasia)

a. Prosedur Membuat Pasangan Kunci

1. Pemilihan dua buah bilangan prima sembarang, p dan q.

2. Penghitungan r = p  q. Sebaiknya p  q, sebab jika p = q maka r = p2 sehingga p dapat diperoleh dengan menarik akar pangkat dua dari r.

3. Penghitungan n = (p – 1)(q – 1).

4. Pemiilihan kunci publik e, yang relatif prima terhadap n.

5. Pembangkitan kunci rahasia menggunakan persamaan d e = 1 + kn , sehingga d dapat dihitung dengan:

e kn

(26)

Keterangan : d : kunci dekripsi (rahasia)

e : kunci enkripsi (tidak rahasia) yang relatif prima terhadap n n : hasil perhitungan dari (p-1)(q-1)

k : dengan mencoba nilai 1,2,3,... sehingga nilai d bulat

Akan terdapat bilangan bulat k yang menyebabkan memberikan bilangan bulat d. Dengan catatan e dan d dapat dipertukarkan urutan pembangkitannya. Jika langkah 4

diganti dengan “Pemilihan kunci rahasia d, yang …”, maka pada langkah 5 kita

menghitung kunci publik dengan rumus yang sama.

Contoh : Misalkan p = 47 dan q = 71 (keduanya prima). Selanjutnya, hitung nilai r = p  q = 3337 dan n = (p – 1)(q – 1) = 3220

Pemilihan kunci publik e = 79, karena 79 relatif prima dengan 3220. e dan r dapat dipublikasikan ke umum. Selanjutnya penghitungan kunci dekripsi d seperti yang dituliskan pada langkah instruksi 5 dengan menggunakan persamaan (1),

79 3220) (

1 

k

d

Keterangan : d : kunci dekripsi (rahasia)

e : kunci enkripsi (tidak rahasia) diperoleh 79 n : hasil perhitungan dari (p-1)(q-1) diperoleh 3220 k : dengan mencoba nilai 1,2,3,... sehingga nilai d bulat

Dengan mencoba nilai k = 25 diperoleh nilai d yang bulat adalah 1019. Ini adalah kunci dekripsi yang harus dirahasiakan.

b. Proses Enkripsi

Plainteks disusun menjadi blok-blok x1, x2, …, sedemikian sehingga setiap blok merepresentasikan nilai di dalam rentang 0 sampai r – 1. Setiap blok xi dienkripsi

(27)

yi = xi e mod r ………(2)

Keterangan: yi : blok cipherteks r : hasil perkalian p dan q

xi : blok plainteks

e : kunci enkripsi (tidak rahasia) yang relatif prima terhadap n

c. Proses Dekripsi

Setiap blok cipherteks yi didekripsi kembali menjadi blok xi dengan rumus

xi = yid mod r ………(3)

Keterangan: yi : blok cipherteks

xi : blok plainteks

d : kunci dekripsi (rahasia) r : hasil perkalian p dan q

Contoh : Misalkan plainteks yang akan dienkripsikan adalah x = HARI INI atau dalam sistem desimal (pengkodean ASCII) = 7265827332737873

Kemudian x dipecah menjadi enam blok yang berukuran 3 digit: x1 = 726 x3 = 733 x5 = 787 x2 = 582 x4 = 273 x6 = 003

Nilai-nilai xi ini masih terletak di dalam rentang 0 sampai 3337 – 1 (agar transformasi

menjadi satu-ke-satu).

Kemudian blok-blok plainteks dienkripsikan dengan rumus yi = xi e mod r , sebagai

berikut:

72679 mod 3337 = 215 = y1 27379 mod 3337 = 933 = y4 58279 mod 3337 = 776 = y2 78779 mod 3337 = 1731 = y5 73379 mod 3337 = 1743 = y3 00379 mod 3337 = 158 = y6

(28)

Dekripsi dilakukan dengan menggunakan kunci rahasia d = 1019

Apabila blok-blok cipherteks didekripsikan akan bernilai sebagai berikut: 2151019 mod 3337 = 726 = x1

7761019 mod 3337 = 582 = x2 17431019 mod 3337 = 733 = x3

Blok plainteks yang lain dikembalikan dengan cara yang serupa. Akhirnya kita memperoleh kembali plainteks semula x = 7265827332737873

Kemudian diubah dalam karakter ASCII adalah x = HARI INI.

2.3 Algoritma ElGamal

Algoritma ElGamal dibuat oleh Taher ElGamal pada tahun 1984. Algoritma Elgamal juga adalah algoritma kriptografi kunci-publik. Algoritma ini pada mulanya digunakan untuk digital signature, namun kemudian dimodifikasi sehingga juga bisa digunakan untuk enkripsi dan dekripsi. Kekuatan algoritma ini terletak pada sulitnya menghitung logaritma diskrit. (Munir, R. 2006)

Besaran-besaran yang digunakan dalam algoritma ElGamal yaitu:

1. p bilangan prima (tidak rahasia)

2. Bilangan acak, g ( g < p) (tidak rahasia) 3. Bilangan acak, x (x < p) (kunci privat) (rahasia) 4. y = gx mod p (kunci publik) (tidak rahasia)

5. m (plainteks) (rahasia)

6. a dan b (cipherteks) (tidak rahasia)

a. Prosedur Membuat Pasangan Kunci

1. Pemilihan sembarang bilangan prima p.

2. Pemilihan dua buah bilangan acak g dan x, dengan syarat g < p dan x < p. 3. Penghitungan y = gx mod p……… (4)

(29)

b. Proses Enkripsi

Plainteks disusun menjadi blok-blok m1, m2, …, sedemikian sehingga setiap blok merepresentasikan nilai di dalam rentang 0 sampai p – 1. Dilanjutkan dengan pemilihan bilangan acak k, yang dalam hal ini 0  k  p – 1, sedemikian sehingga k relatif prima dengan p – 1. Setiap blok m dienkripsi dengan rumus:

a = gk mod p ………….. (5) dan b = ykm mod p…………..(6)

Keterangan: a : cipherteks pertama b : cipherteks kedua

p : bilangan prima yang telah ditentukan g : bilangan acak lebih kecil dari p

k : bilangan acak yang memenuhi 0  k  p – 1 y : kunci publik hasil dari gx mod p

m : blok-blok plainteks

Pasangan a dan b adalah cipherteks untuk blok pesan m. Dengan begitu ukuran cipherteks dua kali ukuran plainteksnya.

c. Proses Dekripsi

Untuk mendekripsi a dan b digunakan kunci rahasia, x, dan plainteks m diperoleh kembali dengan persamaan

(ax)-1 = ap-1-x mod p………….. (7) dan m = b/ax mod p………….. (8)

Keterangan: a : cipherteks pertama , x : kunci privat (x < p) b : cipherteks kedua , m : blok-blok plainteks p : bilangan prima yang telah ditentukan

(30)

2.4 Pengertian Citra

Citra adalah suatu representasi (gambaran), kemiripan, atau imitasi suatu objek. Citra sebagai keluaran suatu sistem perekaman data dapat bersifat optik berupa foto, bersifat analog berupa sinyal-sinyal video seperti gambar pada monitor televisi, atau bersifat digital. (Sutoyo. T. 2009)

Gambar koordinat citra digital dapat dilihat pada Gambar 2.3

Gambar 2.3 Koordinat Citra Digital

2.4.1 Pengertian Citra Analog

(31)

sensor gelombang pendek pada sistem radar, sensor ultrasound pada sistem USG, dan lain sebagainya. (Sutoyo. T. 2009)

Hampir semua kejadian alam boleh diwakili sebagai perwakilan analog seperti bunyi, cahaya, air, elektrik, angin dan sebagainya. Jadi citra analog adalah citra yang terdiri dari sinyal–sinyal frekuensi elektromagnetis yang belum dibedakan sehingga pada umumnya tidak dapat ditentukan ukurannya. (Putra, D. 2010)

2.4.2 Pengertian Citra Digital

Secara umum, pengolahan citra digital menunjuk pada pemrosesan gambar dua dimensi menggunakan komputer. Citra digital merupakan sebuah larik yang berisi nilai-nilai real maupun komplek yang direpresentasikan dengan deretan bit tertentu. (Putra, D. 2010)

Citra digital adalah citra yang dinyatakan secara diskrit (tidak kontinu), baik untuk posisi koordinatnya maupun warnanya. Dengan demikian, citra digital dapat digambarkan sebagai suatu matriks, dimana indeks baris dan indeks kolom dari matriks menyatakan posisi suatu titik di dalam citra dan harga dari elemen matriks menyatakan warna citra pada titik tersebut. Dalam citra digital yang dinyatakan sebagai susunan matriks seperti ini, elemen–elemen matriks tadi disebut juga dengan istilah piksel yang berasal dari kata picture element (pixel).(Basuki, A. 2005)

Citra digital adalah citra yang terdiri dari sinyal–sinyal frekuensi elektromagnetis yang sudah disampling sehingga dapat ditentukan ukuran titik gambar yang pada umumnya disebut piksel. Untuk menyatakan citra secara matematis, dapat didefinisikan fungsi f(x,y) di mana x dan y menyatakan suatu posisi dalam koordinat dua dimensi dan harga f pada titik (x,y) adalah harga yang menunjukkan warna citra pada titik tersebut. (Sutoyo. T. 2009)

2.5 Jenis Citra

(32)

Namun secara umum jangkauannya adalah 0-255. Citra dengan penggambaran seperti ini digolongkan ke dalam citra integer. (Putra, D. 2010)

2.5.1 Citra Biner

Citra biner adalah citra digital yang hanya memiliki dua kemungkinan nilai piksel yaitu hitam dan putih, sering juga disebut citra black and white atau citra monokrom. Hanya dibutuhkan 1 bit untuk mewakili nilai setiap piksel dari citra biner (Putra, D. 2010). Citra biner sering kali muncul sebagai hasil dari proses pengolahan seperti segmentasi, pengembangan, ataupun morfologi.

Gambar 2.4 Citra Biner (Basuki, A. 2005)

2.5.2 Citra Grayscale

(33)

Gambar 2.5 Citra Grayscale 2.5.3 Citra Warna (16 Bit)

Citra warna 16 bit (biasanya disebut citra highcolor) dengan setiap pixelnya diwakili dengan 2 byte memory (16 bit).

Warna 16 bit memiliki 65.356 warna. Dalam formasi bitnya, nilai merah dan biru mengambil tempat di 5 bit di kanan dan kiri. Komponen hijau memiliki 5 bit ditambah 1 bit ekstra. Pemilihan komponen hijau dengan deret 6 bit dikarenakan penglihatan manusia lebih sensitive terhadap warna hijau. (Putra, D. 2010)

Gambar 2.6 Deret Warna 16 Bit (Putra, D. 2010)

Gambar 2.7 Kedalaman Warna 16 bit High Color (Prasetyo, E. 2012)

(34)

Setiap pixel dari citra warna 24 bit diwakili dengan 24 bit sehingga total 16.777.216 variasi warna. Variasi ini sudah lebih dari cukup untuk memvisualisasikan seluruh warna yang dapat dilihat penglihatan manusia. Penglihatan manusia dipercaya hanya dapat membedakan hingga 10 juta warna saja.

Setiap poin informasi pixel (RGB) disimpan ke dalam 1 byte data. 8 bit pertama menyimpan nilai biru, kemudian diikuti dengan nilai hijau pada 8 bit kedua dan pada 8 bit terakhir merupakan warna merah. (Putra, D. 2010)

Gambar 2.8 Citra Warna 24 Bit

2.6 Format File Citra Bitmap (.bmp)

Format file citra standar yang digunakan saat ini terdiri dari beberapa jenis. Format-format ini digunakan dalam menyimpan citra dalam sebuah file. Setiap Format-format memiliki karakteristik masing-masing. (Putra, D. 2010)

(35)

Format .bmp adalah format penyimpanan standar tanpa kompresi yang umum dapat digunakan untuk menyimpan citra biner hingga citra warna. Format ini terdiri dari beberapa jenis yang setiap jenisnya ditentukan dengan jumlah bit yang digunakan untuk menyimpan sebuah nilai piksel. (Putra, D. 2010)

Pada format bitmap, citra disimpan sebagai suatu matriks di mana masing – masing elemennya digunakan untuk menyimpan informasi warna untuk setiap pixel. Jumlah warna yang dapat disimpan ditentukan dengan satuan bit-per-pixel. Semakin besar ukuran bit-per-pixel dari suatu bitmap, semakin banyak pula jumlah warna yang dapat disimpan. Format bitmap ini cocok digunakan untuk menyimpan citra digital yang memiliki banyak variasi dalam bentuknya maupun warnanya, seperti foto dan lukisan. (Putra, D. 2010)

Karakteristik lain dari bitmap yang juga penting adalah jumlah warna yang dapat disimpan dalam bitmap tersebut. Ini ditentukan oleh banyaknya bit yang digunakan untuk menyimpan setiap titik dari bitmap yang menggunakan satuan bpp (bit per pixel). Dalam Windows dikenal bitmap dengan 1, 4, 8, 16, dan 24 bit per piksel. Jumlah warna maksimum yang dapat disimpan dalam suatu bitmap adalah sebanyak 2n, dimana n adalah banyaknya bit yang digunakan untuk menyimpan satu titik dari bitmap. (Sutoyo. T. 2009)

Berikut ini tabel yang menunjukkan hubungan antara banyaknya bit per piksel dengan jumlah warna maksimum yang dapat disimpan dalam bitmap, dapat dilihat pada Tabel 1.

Tabel 2.1 Hubungan Antara Bit Per Piksel dengan Jumlah Warna Pada Bitmap No Jumlah bit per piksel (n) Jumlah warna

1 1 2

2 4 16

3 8 256

4 16 65536

(36)

2.7 Mode Warna

Dua mode warna yang banyak digunakan dalam dunia komputer adalah mode warna RGB yang diterapkan pada tabung display seperti pada monitor dan televisi/video dan CMYK yang digunakan pada kebanyakan mesin pencetak dokumen (printer). Untuk menampilkan sebuah citra pada layar monitor diperlukan lebih dari sekedar informasi tentang letak dari piksel-piksel pembentuk citra. Untuk memperoleh gambar yang tepat dibutuhkan juga informasi tentang warna yang dipakai untuk menggambarkan sebuah citra digital.

2.7.1 Mode Warna RGB (Red, Green, Blue)

RGB adalah suatu model warna yang terdiri atas 3 buah warna: merah (Red), hijau (Green), dan biru (Blue), yang ditambahkan dengan berbagai cara untuk menghasilkan bermacam-macam warna. Kegunaan utama model warna RGB adalah untuk menampilkan citra / gambar dalam perangkat elektronik, seperti televisi dan komputer, walaupun juga telah digunakan dalam fotografi biasa. Sebelum era elektronik, model warna RGB telah memiliki landasan yang kuat berdasarkan pemahaman manusia terhadap teori trikromatik.

Model warna ini merupakan model warna yang paling sering dipakai. Contoh alat yang memakai mode warna ini yaitu TV, kamera, komputer, dan kamera digital. Kelebihan model warna ini adalah gambar mudah disalin / dipindah ke alat lain tanpa harus di-convert ke mode warna lain, karena cukup banyak peralatan yang memakai mode warna ini. Kelemahannya adalah tidak bisa dicetak sempurna dengan printer, karena printer menggunakan mode warna CMYK, sehingga harus diubah terlebih dahulu. RGB merupakan model warna aditif, yaitu ketiga berkas cahaya yang ditambahkan bersama-sama, dengan menambahkan panjang gelombang, untuk membuat spektrum warna akhir.

(37)

biru terang untuk membuat putih. Kuning diproduksi dengan mencampurkan merah, hijau, warna cyan dengan mencampurkan hijau dan biru, warna magenta dari kombinasi merah dan biru. Monitor komputer dan televisi memakai RGB. (Sutoyo. T. 2009)

Gambar 2.9 Warna RGB (Sutoyo. T. 2009)

2.7.2 Mode Warna CMYK (Cyan, Magenta, Yellow, Black)

CMYK (Cyan Magenta Yellow Black) adalah model warna yang biasanya digunakan di percetakan (Printer, Sablon, dll). Tinta process cyan, process magenta, process yellow, process black dicampurkan dengan komposisi tertentu dan tepat serta akurat sehingga menghasilkan warna cetak yang tepat seperti yang diinginkan pada background putih dengan media kertas maupun lainnya. Bahkan bila suatu saat diperlukan, warna ini dengan mudah bisa dibentuk kembali.

(38)

Gambar 2.10 Warna CMYK (Sutoyo. T. 2009)

2.7.3 Mode Warna HSI (Hue, Saturation, Intensity)

Model warna HSI (Hue, Saturation, Intensity) merupakan model warna yang paling sesuai dengan manusia. Pada model ini warna dibagi menjadi 3 yaitu corak (hue) kejenuhan (saturasi) dan kecerahan (Intensitas). Corak (hue) dapat diaplikasikan untuk membedakan objek dengan latar belakang. Kecerahan (intensitas) merupakan nilai abu-abu dari piksel, yaitu rata-rata dari RGB.

Gambar 2.11 Warna Hue (Prasetyo, E. 2012)

2.8 Kedalaman Bit

(39)

piksel citra pada sebuah frame. Kedalaman bit biasanya dinyatakan dalam satuan bit/piksel. Semakin banyak jumlah bit yang digunakan untuk merepresentasikan sebuah citra, maka semakin baik kualitas citra tersebut.

Tabel 2.2 Hubungan Antara Kedalaman Warna Dan Resolusi Warna Kedalaman Warna Resolusi Warna

(40)

BAB 3

ANALISIS DAN PERANCANGAN

3.1 Analisis Sistem

Sebelum dilakukan tahap perancangan sebuah sistem, analisis sistem yang akan dibangun perlu dilakukan. Fase-fase awal pengembangan system dijabarkan secara kolektif melalui analisis sistem. Analisis sistem pada dasarnya merupakan tahapan yang ditujukan untuk menciptakan pemahaman yang menyeluruh terhadap sistem sehingga diperoleh gambaran tentang kebutuhan, cara kerja, dan alur data yang akan dikerjakan sistem. Tahapan ini merupakan tahapan yang sangat penting karena kesalahan di dalam tahapan ini akan menyebabkan kesalahan pada tahapan selanjutnya. Sistem yang dirancang akan lebih baik dan memudahkan pengembang sistem dalam perbaikan apabila pada kemudian hari ditemukan kesalahan atau kekurangan. Hal ini diharapkan akan mempermudah tahapan proses implementasi sistem.

3.1.1 Analisis Masalah

Pada penelitian ini dilakukan proses kriptografi dengan menggunakan Kombinasi Rivest Shamir Adleman (RSA) dan ElGamal dalam Penyandian Citra Bitmap untuk menjamin bahwa pesan yang telah dikirim berstatus aman dan terhindar dari campur tangan pihak ketiga sebelum sampai ke tujuan.

(41)

Dalam sistem ini teradapat dua pengguna yaitu pengirim (peng-enkripsi) dan penerima (pen-dekripsi) dimana keduanya memiliki peran sesuai kebutuhan.

Yang menjadi masalah utama penelitian ini adalah bagaimana mengirim pesan yang berstatus aman dan terhindar dari campur tangan pihak ketiga sebelum sampai ke tujuan, terlebih lagi jika pesan yang ingin disampaikan tersebut bersifat penting dan rahasia.

Gambar 3.1 Diagram Ishikawa untuk analisis permasalahan sistem

3.1.2 Pemodelan perangkat lunak

Perangkat lunak yang dirancang dalam sistem ini menggunakan bahasa pemrograman Visual Basic. Perancangan aplikasi ini dibuat berdasarkan metode algoritma RSA dan ElGamal yang disajikan oleh penulis. Program yang dirancang berdasarkan langkah demi langkah untuk menyelesaikan tehnik kriptografi.

(42)

3.1.2.1 Use case diagram

Use case diagram adalah diagram pemodelan setiap aspek dan kegiatan di dalam sistem. Sebuah use case diagram dapat menggambarkan semua kegiatan di dalam satu sistem yang berjalan, selain itu use case juga menggambarkan semua actor yang melakukan aktivitas di dalam sistem. Berikut adalah gambar dari rancangan use case diagram.

ENKRIPSI

DEKRIPSI

Generate Key

Input Key User 1

sender

User 2 receiver

System

Gambar 3.2 Use Case perancangan sistem

Terlihat pada gambar use case diagram di atas bahwa terdapat dua actor atau pengguna yaitu user1 sebagai sender (pengirim) dan user2 sebagai receiver (penerima). User1 memiliki peranan dalam melakukan proses enkripsi dan juga dekripsi yang akan melakukan pengiriman data atau informasi kepada user2. User2 hanya memiliki satu peranan yaitu melakukan proses dekripsi untuk memperoleh informasi asli dari data atau pesan yang diterima. Untuk lebih jelas kegiatan sistem dapat dilihat pada keterangan activity diagram berikut.

A. Activity diagram untuk use case enkripsi

(43)

User System

menginput citra bitmap

meng-generate RSA dan ElGamal key

menampilkan citra inputan

menampilkan pasangan kunci RSA dan ElGamal

Memulai proses Mengambil nilai RGB per pixel

Enkripsi nilai RGB algoritma RSA dan ElGamal

System memulai proses enkripsi ElGamal

System menampilkan hasil

Gambar 3.3 Activity diagram enkripsi

Berikut ini adalah tabel spesifikasi use case diagram pada proses enkripsi :

Tabel 3.1 Spesifikasi Use Case Enkripsi

Name Enkripsi

Actors User1

Description Use case ini mendeskripsikan proses enkripsi

Preconditions User menggunakan aplikasi kriptografi

Post Conditions User dapat melihat hasil enkripsi

(44)

B. Activity diagram untuk use case dekripsi

Activity diagram untuk use case dekripsi dapat dilihat pada gambar 3.4 berikut.

User System

menginput citra ter-enkripsi

memilih chekbox dekripsi

menampilkan citra inputan

mengubah tampilan input kunci

menginput kunci dekripsi ElGamal dan RSA

meng-klik button proses mengambil nilai RGB per pixel

memulai proses dekripsi ElGalam dan RSA

menampilkan hasil

(45)

Spesifikasi use case dekripsi dapat dilihat pada tabel berikut.

Tabel 3.2 Spesifikasi Use Case Dekripsi

Name Dekripsi

Actors User1 dan User2

Description Use case ini mendeskripsikan proses dekripsi

Preconditions User menggunakan aplikasi kriptografi

Post Conditions User dapat melihat hasil dekripsi

Success Scenario

(46)

Enkripsi Citra Input File Citra Bangkitkan Kunci RSA Bangkitkan Kunci Elgamal Baca Nilai Pixel Enkripsi Nilai Citra Simpan Citra Hasil Tampilkan Citra Hasil

Input File Citra *.bmp

File Citra

Kunci Public dan Private RSA

Kunci Public dan Private Elgamal

Baca Nilai Pixel RGB

Enkripsi Menggunakan Elgamal RSA dan Elgamal

Hasil

Gambar 3.5 Sequence Diagram enkripsi citra digital

Enkripsi Citra Input File Citra Masukkan Kunci PrivateRSA Masukkan Kunci PrivateElgamal Baca Nilai Pixel Dekripsi Simpan Citra Hasil Tampilkan Citra Hasil

Input File Citra *.bmp

File Citra

Private RSA

Private Elgamal

Baca Nilai Pixel RGB

Dekripsi Menggunakan Elgamal RSA dan Elgamal

Hasil

Gambar 3.6 Sequence Diagram dekripsi citra digital

3.1.3 Analisis proses sistem

(47)

dalam sistem ini yaitu lucas lehmer primality test. Berikut adalah uraian dari masing-masing algoritma secara singkat.

3.1.3.1 Analisis Lucas Lehmer Primality Test

Di dalam kriptografi, bilangan prima memiliki peranan yang sangat penting. Beberapa algoritma kriptografi, seperti RSA, menggantungkan kekuatannya pada sulitnya faktorisasi bilangan besar. Oleh karena itu, penggunaan bilangan prima yang besar menjadi sangat penting. Sebenarnya ada banyak cara untuk mengetahui suatu bilangan itu prima atau bukan, dan salah satu yang bisa digunakan adalah Lucas-Lehmer primality test.

Metode ini pertama kali ditemukan oleh dua orang ilmuan yaitu Francois Edouard Lucas Anatole berkebangsaan Perancis dan Derrick Henry Lehmer berkebangsaan Amerika Serikat.

Lucas Lehmer Primality Test bekerja dengan memanfaatkan bilangan Mersenne. Rumus bilangan Mersenne yaitu Mp = 2p – 1……… (9). Rumus ini ditemukan oleh Marin Mersenne seorang berkebangsaan Perancis yang hidup antara tahun 1588-1648. Untuk memperoleh bilangan Mersenne (Mp) adalah prima, maka p juga haruslah sebuah bilangan prima. Akan tetapi Mp belum tentu prima meskipun p adalah prima. Bilangan Mersenne biasanya digunakan untuk mencari bilangan prima yang sangat besar. (Mollin, Richard A. 2005)

Berikut ini merupakan langkah-langkah untuk mengetahui keprimaan suatu bilangan dengan Lucas-Lehmer primality test.

1. Masukkan bilangan Mersenne Mp = 2p–1 dimana p ≥ 3

2. Hitung Sj = S2j-1– 2 mod Mp ………..(10), dengan S1= 4 untuk j = 2,3,…,n-1 3. Jika Sp-1 = 0 mod Mp maka dapat disimpulkan bahwa Mp bilangan prima dan

(48)

Lucas-Lehmer prime generator memiliki algoritma sebagai berikut:

1. Tentukan nilai awal s := 4;

2. Untuk i from 3 to p do s := s2– 2 mod Mp;

3. Jika s = 0, return prime; otherwise return composite[4].

Untuk pseducode Lucas-Lehmer prime generator adalah sebagai berikut:

// Determine if M

if s = 0 return PRIME else return COMPOSITE

Berikut ini contoh pengujian bilangan prima dengan mengunakan metode Lucas-Lehmer:

bilangan prima yang memenuhi syarat metode pembangkit bilangan prima Lucas-Lehmer.

p = 13, M

P = (2

13

-1) = 8191

dari 3 hingga 13, maka lakukan:

(49)

s

bilangan prima yang memenuhi syarat metode pembangkit bilangan prima Lucas-Lehmer.

p = 17, M

P = (2

17

-1) = 131071

dari 3 hingga 17, maka lakukan:

(50)

s

Jadi, angka p = 17 merupakan bilangan prima dan M

P = 2 1

p

= 131071 merupakan

bilangan prima yang memenuhi syarat syarat metode pembangkit bilangan prima Lucas-Lehmer.

3.1.3.2 Analisis Algoritma RSA

Algoritma RSA merupakan algoritma yang cocok dalam proses Enkripsi dan Dekripsi untuk pencitraan gambar dan paling maju dalam bidang kriptografi yang menerapkan konsep public key. Algoritma ini pertama kali dipublikasikan di tahun 1977 oleh Ron Rivest, Adi Shamir, dan Leonard Adleman dari Massachusetts Institute of Technology (MIT). Nama RSA sendiri adalah singkatan dari nama belakang mereka bertiga.

Algoritma RSA dipatenkan oleh Massachusetts Institute of Technology pada tahun 1983 di Amerika Serikat, dan paten tersebut berlaku hingga 21 September 2000.

(51)

pasangan kunci tersebut digunakan dalam proses enkripsi dan dekripsi. Kunci public digunakan dalam untuk proses enkripsi, sedangkan kunci private digunakan untuk proses dekripsi.

Adapun Langkah-langkah dalam memproses Algoritma RSA, yaitu

1. Proses pembangkit kunci dapat dilakukan dengan cara :

1. Pemilihan dua buah bilangan prima sembarang, p dan q.

2. Penghitungan n = p  q. Sebaiknya p  q, sebab jika p = q maka r = p2 sehingga p dapat diperoleh dengan menarik akar pangkat dua dari r.

3. Penghitungan φ(n) = (p – 1)(q – 1).

4. Pemiilihan kunci publik e, yang relatif prima terhadap n.

5. Pembangkitan kunci rahasia menggunakan persamaan d e = 1 + kn , sehingga d dapat dihitung dengan:

e kn

d 1 (1)

Keterangan : d : kunci dekripsi (rahasia)

e : kunci enkripsi (tidak rahasia) yang relatif prima terhadap n n : hasil perhitungan dari (p-1)(q-1)

k : dengan mencoba nilai 1,2,3,... sehingga nilai d bulat

2. Proses Enkripsi dapat dilakukan dengan :

Plainteks disusun menjadi blok-blok x1, x2, …, sedemikian sehingga setiap blok merepresentasikan nilai di dalam rentang 0 sampai r – 1. Setiap blok xi

dienkripsi menjadi blok yi dengan rumus pada halaman berikut.

(52)

Keterangan: yi : blok cipherteks

xi : blok plainteks

e : kunci enkripsi (tidak rahasia) yang relatif prima terhadap n n : hasil perkalian p dan q

3. Proses Dekripsi dapat dilakukan dengan :

Setiap blok cipherteks yi didekripsi kembali menjadi blok xi dengan rumus

xi = yid mod n

Keterangan: yi : blok cipherteks

xi : blok plainteks

d : kunci dekripsi (rahasia) n : hasil perkalian p dan q

Pembangkit Kunci RSA

Misalkan pilih bilangan prima p = 13 dan q = 17. Selanjutnya cari kunci public (e dan n) dan kunci private (d dan n)

Hitung :

n = p * q = 17 * 19 = 323

Ф(n)= (p – 1)(q – 1) = 288. kunci publik e = 89,

karena GCD(89,323) = 1 maka 89 relatif prima dengan 323.

Hitung kunci private : d = 1+ (k * 288)

(53)

Enkripsi RSA

Misalkan nilai pixel(x,y) adalah R = 212, G = 242 dan B = 3. Nilai-nilai tersebut selanjutnya kita enkripsi menggunakan algoritma RSA.

CR = Re mod n = 21289 mod 323 = 127 CG =24289 mod 323 = 72

CG =389 mod 323 = 184

Dekripsi RSA

Misalkan nilai pixel(x,y) dari proses dekripsi Elgamal adalah R = 127, G = 72 dan B = 184. Nilai-nilai tersebut selanjutnya kita enkripsi menggunakan algoritma RSA.

R = CRe mod n = 127233 mod 323 = 212 G=72233 mod 323 = 242

B=184233 mod 323 = 3

3.1.3.3Analisis Algoritma ElGamal

Algoritma Elgamal juga adalah algoritma kriptografi kunci-publik. Algoritma ini pada mulanya digunakan untuk digital signature, namun kemudian dimodifikasi sehingga juga bisa digunakan untuk enkripsi dan dekripsi. Kekuatan algoritma ini terletak pada sulitnya menghitung logaritma diskrit.

Besaran-besaran yang digunakan dalam algoritma ElGamal yaitu:

1. p bilangan prima (tidak rahasia)

2. Bilangan acak, g ( g < p) (tidak rahasia) 3. Bilangan acak, x (x < p) (kunci privat) (rahasia) 4. y = gx mod p (kunci publik) (tidak rahasia)

5. m (plainteks) (rahasia)

(54)

Langkah-langkah yang dilakukan dalam algotritma ElGamal: 1. Pemilihan sembarang bilangan prima p.

2. Pemilihan dua buah bilangan acak g dan x, dengan syarat g < p dan x < p. 3. Penghitungan y = gx mod p.

4. Dengan kunci publik y, kunci rahasia x. Nilai g dan p tidak dirahasiakan.

Plainteks disusun menjadi blok-blok m1, m2, …, sedemikian sehingga setiap blok merepresentasikan nilai di dalam rentang 0 sampai p – 1. Dilanjutkan dengan pemilihan bilangan acak k, yang dalam hal ini 0  k  p – 1, sedemikian sehingga k relatif prima dengan p – 1. Setiap blok m dienkripsi dengan rumus:

a = gk mod p , dan b = ykm mod p

Keterangan:

a : cipherteks pertama b : cipherteks kedua p : bilangan prima yang telah ditentukan m : blok-blok plainteks g : bilangan acak lebih kecil dari p y : kunci publik ( gx mod p)

k : bilangan acak yang memenuhi 0  k  p – 1

Pembangkit Kunci Elgamal

Misalkan pilih bilangan prima p = 521. Selanjutnya hitung nilai g, x dan y. g = 429 (bilangan random antara 1 sampai p-1)

x = 25 (bilangan random antara 1 sampai p-1; x ≠ g) y = gx mod p = 42925 mod 521 = 278

Enkripsi Elgamal

Misalkan nilai pixel(x,y) dari proses enkripsi RSA adalah R = 127, G = 72 dan B = 184. Nilai-nilai tersebut selanjutnya kita enkripsi menggunakan algoritma RSA.

k = 34 (bilangan random antara 1 sampai p-2)

(55)

C2R = (yk * CR) mod p = (27834 * 127) mod 521 = 457 C1G = 42934 mod 521 = 275

C2G = (27834 * 72) mod 521 = 456 C1B = 42934 mod 521 = 275 C2B =(27834 * 184) mod 521 = 297

Dekripsi Elgamal

Misalkan nilai pixel(x,y) dari proses enkripsi Elgamal adalah C1R = C1G = C1B = 457, C2R = 456, C2G = 297 dan C2B = 70. Nilai-nilai tersebut selanjutnya kita enkripsi menggunakan algoritma RSA.

aR = C1Rp-1-x aG = C1Gp-1-x aB = C1Bp-1-x

CR = (C2R * aR) mod p = (457 * 275521-1-25) mod 521 = 127 CG =(456 * 275521-1-25) mod 521 = 72

CB =(297 * 275521-1-25) mod 521 = 184

3.2 Perancangan Sistem

(56)

3.2.1 Pembangkit Kunci Algoritma RSA dan Elgamal

Sebelum melakukan proses enkrisi ataupun dekripsi pada aplikasi ini terlebih dahulu dilakukan proses pembangkit kunci untuk kedua algoritma yaitu algoritma RSA dan Elgamal. Pembangkit kunci digunakan untuk mempermudah pengguna untuk mendapatkan kunci yang sesuai dengan dibutuhkan algoritma tanpa harus melakukan perhitungan untuk mendapatkan kunci yang dibutuhkan.

Gambar 3.7 Rancangan Pembangkit Kunci Algoritma RSA dan Elgamal

3.2.2 Enkripsi Citra

Proses Enkripsi dilakukan secara bertahap dimulai dengan melakukan enkripsi dengan algoritma RSA dan dilanjutkan dengan enkripsi dengan algoritma Elgamal. Tahapan dalam proses enkripsi ini dilakukan untuk mendapatkan hasil enkripsi citra yang sesuai dan nantinya dapat dilakukan proses dekripsi pada citra terenkripsi.

PEMBANGKIT BILANGAN PRIMA

PASANGAN KUNCI RSA

PEMBANGKIT BILANGAN PRIMA

(57)

Gambar 3.8 Proses Enkripsi Citra

3.2.3 Dekripsi Citra

Proses Dekripsi dilakukan untuk memperoleh citra asli dari citra terenkripsi. Untuk mendapatkan citra hasil yang sesuai pengguna harus memasukkan citra terenkripsi dan kunci yang tepat.

PUBLIC KEY TERENKRIPSI CITRA RSA

PUBLIC KEY TERENKRIPSI CITRA

(58)

3.2.4 Perancangan Flowchart

Flowchart atau bagan alir adalah bagan (chart) yang menunjukkan alir (flow) di dalam program atau prosedur sistem secara logika. Bagan alir (flowchart) digunakan terutama untuk alat bantu komunikasi dan untuk dokumentasi.

Sistem flowchart dapat didefinisikan sebagai bagan yang menunjukkan arus pekerjaan secara keseluruhan dari sistem. Bagan ini menjelaskan urut-urutan dari prosedur-prosedur yang ada di dalam sistem. Bagan alir sistem menunjukkan apa yang dikerjakan di sistem.

Flowchart merupakan langkah awal dalam pembuatan program. Dengan adanya flowchart, urutan proses kegiatan menjadi lebih jelas. Jika ada penambahan proses maka dapat dilakukan dengan lebih mudah. Setelah flowchart selesai disusun, selanjutnya pemrogram (programmer) menerjemahkannya ke bentuk program dengan bahasa pemrograman.

(59)

3.2.4.1Flowchart Pembangkit Kunci Lucas Lehmer

Mulai

p; bilangan prima

i = 1

if p = 2

s = 0 Ya

s = 4 Tidak

n = 2p - 1

i <= p

s = (s2 2) mod n Ya

s = 0

Tidak

Tidak

Is_prime Ya

Is_composit

Selesai

(60)

3.2.4.2Flowchart Pembangkit Kunci RSA

(61)

3.2.4.3Flowchart Proses Enkripsi RSA

Mulai

Citra_Asli

Max i = lebar(Citra_Asli) Max j = panjang(Citra_Asli)

i = 0

If i < Max i

If j < Max j

R = Citra_Asli(i,j).Red G = Citra_Asli(i,j).Green

B = Citra_Asli(i,j).Blue Ya

ER = Re mod n EG = Ge mod n EB = Be mod n Tidak

Tidak j = 0

Ya

Citra Terenkripsi

Selesai

Citra_Hasil.Red(i, j) = ER Citra_Hasil.Green(i, j) = EG

Citra_Hasil.Blue(i, j) = EB

(62)

3.2.4.4Flowchart Proses Dekripsi RSA

Mulai

Citra_Enkripsi

Max i = lebar(Citra_Enkripsi) Max j = panjang(Citra_Enkripsi)

i = 0

If i < Max i

If j < Max j

ER = Citra_Enkripsi(i,j).Red EG = Citra_Enkripsi(i,j).Green

EB = Citra_Enkripsi(i,j).Blue Ya

R = ERd mod n G = EGd mod n B = EBd mod n Tidak

Tidak j = 0

Ya

Citra Asli

Selesai Citra_Asli.Red(i, j) = R Citra_Asli.Green(i, j) = G

Citra_Asli.Blue(i, j) = B

(63)

3.2.4.5 Flowchart Pembangkit Kunci ElGamal

Mulai

p ; bilangan prima

g = random(2, p-1)

x = random(2, p-1)

x = g

Tidak

y = gx mod p

Ya

y, g, x, p

Selesai

(64)

3.2.4.6Flowchart Proses Enkripsi ElGamal

Gambar 3.15 Flowchart Proses Enkripsi ElGamal

(65)

3.2.4.7Flowchart Proses Dekripsi ElGamal

(66)

3.2.5 Perancangan Tampilan

Tujuan dari perancangan sistem adalah untuk memenuhi kebutuhan user mengenai gambaran yang jelas tentang perancangan sistem yang akan dibuat serta diimplementasikan.

Untuk mulai membangun suatu program yang akan dibangun, maka penulis terlebih dahulu merencanakan alur kerja berdasarkan kebutuhan user yang akan menggunakan aplikasi Enkrpisi dan Dekripsi Citra. Pada aplikasi ini akan dirancang form-form yang akan dipakai dalam aplikasi Enkripsi dan Dekripsi Citra, form yang akan dirancang adalah Form Tampilan utama, form Pembangkit Kunci RSA serta form pembangkit kunci ElGamal

3.2.5.1Perancangan Form Utama

Form ini menampilkan tampilan awal pada saat user membuka aplikasi Enkripsi Dekripsi Citra yang berisikan button open, button browse, public key, private key, button generate dan button proses.

Gambar 3.17 Rancangan form Utama

X _

Enkripsi Citra 32 Bit Menggunakan Algoritma RSA dan Elgamal

Public Key Private Key Public Key Private Key

RSA Key Elgamal Key

Enkripsi Dekripsi

Proses Generate

Generate

BROWSE OPEN

(67)

3.2.5.2Perancangan form Pembangkit Kunci RSA

Pada form pembangkit kunci RSA dibawah ini berisikan kolom batas nilai yang berfungsi untuk menginput nilai yang akan ditentukan pada saat akan melakukan proses Enkripsi dan Dekripsi RSA. Botton Generate Prime berfungsi untuk melakukan melakukan proses. Button kunci public dan kunci private berfungsi untuk menampilkan nilai yang telah diperoleh pada saat proses Enkripsi dan Dekripsi

Gambar 3.18 Rancangan form Pembangkit Kunci RSA

X _

Generate RSA Key

Batas Nilai Generate

Prime

Pasangan Kunci Enkripsi

Pasangan Kunci Dekripsi

Kunci Public

(68)

3.2.5.3Perancangan form Pembangkit Kunci Elgamal

Pada form pembangkit kunci ElGamal berisikan generate prime, generate key dan nilai g,x,y yang akan diperoleh setelah menginput nilai p.

Gambar 3.19 Rancangan form Pembangkit Kunci ElGamal

X _

Batas Nilai Generate Prime

p

Generate Key g

x

y

(69)

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1 Implementasi Sistem

Dalam tahap ini akan dilakukan pembahasan terhadap sistem yang telah dibangun bagaimana proses enskripsi dan dekripsi file citra digital dengan menggunakan kombinas algoritma RSA dan algoritma ElGamal yang telah dirancang akan berjalan. Berikut adalah pembahasan proses implementasinya.

4.1.1 Pengambilan nilai RGB pada pixel

Proses enkripsi file citra digital diawali dengan pengambilan nilai RGB pada masing-masing pixel yang terdapat pada file citra tersebut. Sebagai contoh dalam pembahasan ini akan ditunjukkan pada citra warna berdimensi 1024 x 768 pixel bagaimana proses ini berlangsung:

(70)

Dari contoh gambar 4.1 akan diperoleh nilai RGB dari setiap pixelnya. Misalkan dari gambar tersebut diambil bagian gambar yang diberi tanda lingkaran merah dan dapat diilustrasikan nilai setiap pixelnya sebagai berikut.

R=127 R=13 R=223 R=12 R=123 R=155 R=223 R=199

Pengambilan nilai RGB dilakukan pada setiap pixel citra secara keseluruhan dan masing-masing nilainya akan dienkripsikan menggunakan kombinasi algoritma yang akan diterapkan dalam sistem.

(71)

4.1.2 Proses enkripsi nilai RGB citra asli

Pada tahap ini akan dilakukan proses enkripsi terhadap nilai RGB tiap-tiap pixel menggunakan algoritma RSA. Dalam proses ini akan diambil permisalan nilai RGB pixel pada koordinat (x,y). Berikut penguraiannya:

a. Algoritma RSA

1. Pembangkitan pasangan kunci :

Pada tahapan pembangkitan pasangan kunci RSA, langkah awal yang dilakukan yaitu menentukan dua buah bilangan prima acak. Bilangan prima yang digunakan dalam system ini hanya meliputi bilangan prima Lucas Lehmer dengan memanfaatkan bilangan Mersenne.

System akan menampilkan pilihan daftar bilangan prima yang merupakan bilangan prima Lucas Lehmer. Dapat dimisalkan bilangan prima yang diambil adalah p = 13 dan q = 17. Dilanjutkan dengan pencarian kunci public (nilai n dan e) dan kunci privat (nilai n dan d) melalui proses perhitungan sebagai berikut.

Hitung :

n = p * q = 17 * 19 = 323

Ф(n)= (p – 1)(q – 1) = 288.

kunci publik e = 89, karena GCD(89,323) = 1 maka 89 relatif prima dengan 323.

Hitung kunci private : d = 1+ (k * 288)

Dengan mencoba nilai-nilai k = 1, 2, 3, …, diperoleh nilai d yang bulat adalah 233. Ini adalah kunci privat untuk mendekripsi pesan.

(72)

2. Proses enkripsi nilai RGB

Misalkan nilai pixel(x,y) adalah R = 212, G = 242 dan B = 3. Nilai-nilai tersebut selanjutnya kita enkripsi menggunakan algoritma RSA.

CR = Re mod n = 21289 mod 323 = 127 CG =24289 mod 323 = 72

CG =389 mod 323 = 184

b. Algoritma ElGamal

1. Pembangkitan pasangan kunci

Misalkan pilih bilangan prima p = 521. Selanjutnya hitung nilai g, x dan y. g = 429 (bilangan random antara 1 sampai p-1)

x = 25 (bilangan random antara 1 sampai p-1; x ≠ g) y = gx mod p = 42925 mod 521 = 278

2. proses enkripsi nilai RGB

Misalkan nilai pixel(x,y) dari proses enkripsi RSA adalah R = 127, G = 72 dan B = 184. Nilai-nilai tersebut selanjutnya kita enkripsi menggunakan algoritma ElGamal.

k = 34 (bilangan random antara 1 sampai p-2) C1R = gk mod p = 42934 mod 521 = 275

C2R = (yk * CR) mod p = (27834 * 127) mod 521 = 457 C1G = 42934 mod 521 = 275

C2G = (27834 * 72) mod 521 = 456 C1B = 42934 mod 521 = 275

Gambar

Gambar koordinat citra digital dapat dilihat pada Gambar 2.3
Gambar 2.4 Citra Biner (Basuki, A. 2005)
Gambar 2.7  Kedalaman Warna 16 bit High Color (Prasetyo, E. 2012)
Gambar 2.8  Citra Warna 24 Bit
+7

Referensi

Dokumen terkait

4.3 Analisis Hasil Pengujian Analisa hasil pengujian dilihat dari perbandingan citra gambar sebelum dan sesudah dilakukan proses enkripsi dan dekripsi dengan menggunakan

Jika file yang berisi kunci tersebut bocor pada publik, maka enkripsi citra ini akan sia-sia karena dapat didekripsi dengan mudah.” Analisa hasil pengujian dilihat dari

Berdasarkan penjelasan di atas, maka penulis melakukan penelitian dengan judul “Implementasi Kombinasi Algoritma RSA dan ElGamal dalam Pengamanan Data pada File Dokumen”.

Aplikasi Pengamanan Dokumen Office Dengan Algoritma Kriptografi Kunci Asimetris ElGamal.. Universitas

Jika file yang berisi kunci tersebut bocor pada publik, maka enkripsi citra ini akan sia-sia karena dapat didekripsi dengan mudah.” Analisa hasil pengujian dilihat dari

Pada bab ini telah dijelaskan mengenai latar belakang permasalahan yang akan diselesaikan yaitu pengembangan skema hybrid cryptosystem Blowfish dan RSA (Rivest Shamir

4.3 Analisis Hasil Pengujian Analisa hasil pengujian dilihat dari perbandingan citra gambar sebelum dan sesudah dilakukan proses enkripsi dan dekripsi dengan menggunakan

Jika file yang berisi kunci tersebut bocor pada publik, maka enkripsi citra ini akan sia-sia karena dapat didekripsi dengan mudah.” Analisa hasil pengujian dilihat dari