• Tidak ada hasil yang ditemukan

Implementasi Kombinasi Algoritma RSA dan ElGamal Dalam Pengamanan Data Pada File Dokumen

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Kombinasi Algoritma RSA dan ElGamal Dalam Pengamanan Data Pada File Dokumen"

Copied!
12
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

2.1 Kriptografi

2.1.1 Pengertian Kriptografi

Kriptografi (cryptography) berasal dari Bahasa Yunani “criptos” yang artinya adalah rahasia, sedangkan “graphein” artinya tulisan. Jadi kriptografi berarti tulisan rahasia. Secara umum, kriptografi adalah ilmu dan seni untuk menjaga kerahasiaan pesan dengan cara menyandikannya ke dalam bentuk yang tidak dapat dimengerti lagi maknanya (Munir, 2006).

Kriptografi didefenisikan sebagai sebuah teknik rahasia dalam penulisan, dengan karakter khusus, dengan menggunakan huruf dan karakter di luar bentuk aslinya, atau dengan metode-metode lain yang hanya dapat dipahami oleh pihak-pihak yang memproses kunci, juga semua hal yang ditulis dengan cara seperti ini (Hasnan, 2010).

(2)

Kriptografi adalah ilmu mengenai teknik enkripsi dimana data diacak menggunakan suatu kunci enkripsi menjadi sesuatu yang sulit dibaca oleh seseorang yang tidak memiliki kunci dekripsi (Kromodimoeljo, 2009)

2.1.2 Sejarah Kriptografi

Kriptografi mempunyai sejarah yang panjang. Informasi yang lengkap mengenai sejarah kriptografi dapat ditemukan di dalam buku David Kahn yang berjudul The Codebreakers. Buku yang tebalnya 1000 halaman ini menulis secara rinci sejarah kriptografi, mulai dari penggunaan kriptografi oleh Bangsa Mesir 4000 tahun yang lalu hingga penggunaan kriptografi abad ke – 20.

Sejarah kriptografi sebagian besar merupakan sejarah kriptografi klasik, yaitu metode enkripsi yang menggunakan kertas dan pensil atau menggunakan alat bantu mekanik sederhana. Kriptografi klasik secara umum dikelompokkan menjadi dua kategori, yaitu algoritma transposisi (transposition cipher) dan algoritma substitusi (substitution cipher). Algoritma transposisi adalah algoritma yang mengubah susunan – susunan huruf di dalam pesan, sedangkan algoritma substitusi yaitu mengganti setiap huruf atau kelompok huruf dengan sebuah huruf atau kelompok huruf yang lain.

(3)

(a) (b)

Gambar 2.1 (a) Sebuah scytale; (b) Pesan ditulis secara horizontal, baris per baris.

Sedangkan algoritma substitusi paling awal dan paling sederhana adalah Caesar Cipher, yaitu digunakan oleh raja Yunani kuno, Julius Caesar. Caranya adalah dengan mengganti setiap karakter di dalam alfabet dengan karakter yang terletak pada tiga posisi berikutnya di dalam susunan alfabet. Pada perang dunia ke – 2, Pemerintah Nazi Jerman membuat mesin enkripsi yang dinamakan dengan Enigma. Mesin ini melakukan proses enkripsi yang sangat rumit. Namun Enigma berhasil dipecahkan oleh pihak sekutu dan keberhasilan memecahkan Enigma sering dikatakan sebagai faktor yang memperpendek perang dunia ke – 2.

Gambar 2.2 Mesin enigma

(4)

melahirkan konsep seperti tanda-tangan digital dan sertifikat digital. Dengan kata lain, kriptografi modern tidak hanya memberikan aspek keamanan (confidentiality), tetapi juga aspek keamanan lain seperti otentikasi dan integritas data.

2.1.3 Terminologi Kriptografi

Di dalam kriptografi akan sering ditemukan beberapa istilah atau terminologi. Berikut merupakan istilah penting untuk diketahui dalam memahami kriptografi (Munir, 2006).

a. Plainteks dan Cipherteks

Pesan merupakan data atau informasi yang dapat dibaca dan dimengerti maknanya. Nama lain untuk pesan adalah plainteks. Pesan tersebut dapat dikirim (melalui kurir, saluran telekomunikasi, dan lain – lain) dan dapat juga disimpan dalam media penyimpanan. Pesan dapat berupa teks, gambar, suara, atau video.

Agar pesan tidak dapat dimengerti maknanya oleh pihak lain, maka pesan perlu disandikan ke bentuk lain yang tidak dapat dipahami. Bentuk pesan yang telah tersandikan tersebut dinamakan dengan cipherteks. Cipherteks harus dapat ditransformasikan kembali menjadi plainteks semula agar pesan yang diterima bisa dibaca. Perbandingan antara plainteks dan cipherteks dapat dilihat pada Gambar 2.3.

(5)

b. Pengirim dan Penerima

Komunikasi data melibatkan pertukaran pesan antara dua entitas. Pengirim adalah entitas yang mengirim pesan kepada entitas lainnya. Penerima adalah entitas yang menerima pesan. Entitas disini dapat berupa orang, mesin (komputer), kartu kredit, dan sebagainya.

c. Enkripsi dan Dekripsi

Proses penyandian pesan, dari plainteks ke cipherteks dinamakan dengan enkripsi (encryption). Sedangkan proses mengembalikan pesan dari cipherteks ke plainteks dinamakan dengan deskripsi (decryption). Proses enkripsi dan deskripsi membutuhkan kunci sebagai parameter yang digunakan untuk transformasi.

(a) (b)

Gambar 2.4 (a) Skema enkripsi; (b) Skema dekripsi

d. Kriptanalisis

(6)

2.1.4 Tujuan Kriptografi

Munir (2006) merangkum tujuan dari kriptografi adalah sebagai berikut:

1. Kerahasiaan (Confidentiality), adalah layanan yang ditujukan untuk menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak berhak. Istilah lainnya adalah secrecy dan privacy. Banyak pendekatan untuk menghadirkan kerahasiaan, mulai dari perlindungan secara fisik sampai perlindungan melalui algoritma matematika yang menerjemahkan data sehingga sulit dipahami.

2. Integritas Data (Data Integrity), adalah layanan yang menjamin bahwa pesan masih asli/utuh atau belum pernah dimanipulasi selama pengiriman. Manipulasi data dapat berupa menyisipkan, menghapus dan menukar data tersebut.

3. Otentikasi (Authentication), adalah layanan yang berhubungan dengan identifikasi baik mengidentifikasi kebenaran pihak-pihak yang berkomunikasi (entity authentication) maupun mengidentifikasi asal usul pesan (data origin authentication). Dua pihak yang saling berkomunikasi harus dapat mengotentikasi satu sama lain sehingga ia dapat memastikan asal usul pesan. Otentikasi asal usul pesan secara implisit juga memberikan kepastian integritas data, sebab jika pesan telah dimodifikasi berarti asal usul pesan sudah tidak benar.

4. Penyangkalan (Non-Repudiation), adalah layanan untuk mencegah entitas yang berkomunikasi melakukan penyangkalan yaitu pengirim pesan telah menyangkal melakukan pengiriman atau penerima pesan menyangkal telah menerima pesan.

2.1.5 Jenis – Jenis Kriptografi

(7)

1. Kriptografi simetri

Konsep dasar dari kriptografi kunci simetri adalah di mana kunci untuk enkripsi sama dengan kunci untuk deskripsi. Istilah lain dari kriptografi simetri ini adalah kriptografi kunci privat (privat-key cryptography), kriptografi kunci rahasia (secret-key cryptography), atau kriptografi konvensional (conventional cryptography). Dalam kriptografi kunci simetri dapat diasumsikan bahwa si penerima dan pengirim pesan telah terlebih dahulu berbagi kunci sebelum pesan dikirimkan. Keamanan dari sistem ini terletak pada kerahasiaan kuncinya. Skema kriptografi simetri dapat dilihat pada Gambar 2.5.

(a) (b)

Gambar 2.5 (a) Skema enkripsi kriptografi simetri; (b) Skema dekripsi kriptografi simetri

2. Kriptografi asimetri

(8)

(a) (b) Gambar 2.6 (a) Skema enkripsi kriptografi asimetri;

(b) Skema dekripsi kriptografi asimetri

2.2 Algoritma Kriptografi

2.2.1 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. RSA adalah algoritma kriptografi modern yang menggunakan sistem kriptografi asimetri (kunci publik). Algoritma RSA yang dibuat oleh para ilmuwan pada tahun 1976 ini, melakukan pemfaktoran bilangan yang sangat besar untuk mendapatkan kunci privat (Munir, 2006).

Keunggulan dari algoritma RSA adalah tingkat kesulitannya dalam memfaktorkan bilangan besar menjadi faktor primanya dan kekurangan algoritma ini adalah jika bilangan tidak cukup besar maka dengan mudah dapat difaktorkan.

(Permana, Aditya dkk.) dalam jurnalnya yang berjudul “Kriptografi Pada File Dokumen Microsoft Office Menggunakan Metode RSA” menjelaskan bahwa algoritma RSA dapat diterapkan dalam proses enkripsi dan dekripsi file dokumen Microsoft Office yang dapat digunakan untuk melakukan proses kriptografi terhadap file .doc, .xls, .ppt.

(9)

menjelaskan bahwa algoritma RSA dapat diaplikasikan untuk teks-teks dengan

5. Bangkitkan kunci privat dengan menggunakan persamaan ⋅ ≡

1( �( )). Perhatikan bahwa ⋅ ≡1( �( )). Hitung hingga

Algoritma RSA memiliki besaran-besaran sebagai berikut: 1. dan bilangan prima (rahasia)

2. = ∗ (tidak rahasia)

3. �( ) = −1 ∗( −1) (rahasia)

4. (kunci enkripsi/kunci publik) (tidak rahasia) 5. (kunci dekripsi/kunci privat) (rahasia)

6. (plainteks) (rahasia)

(10)

2.2.1.2 Proses Enkripsi

Proses enkripsi pesan sebagai berikut:

1. Ambil kunci publik ( , ).

2. Nyatakan plainteks menjadi blok-blok 1, 2,…, dimana � menyatakan jumlah karakter plainteks.

3. Setiap blok dienkripsi menjadi blok dengan rumus = , sehingga didapat cipherteks 1, 2,…, �.

2.2.1.3 Proses Dekripsi

Setiap blok cipherteks didekripsi kembali menjadi blok dengan rumus =

� .

2.2.2 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 pada bilangan modulo prima yang besar (Munir, 2006).

(Ifanto, Mukhammad. 2009) dalam jurnalnya yang berjudul “Metode Enkripsi dan Dekripsi dengan Menggunakan Algoritma ElGamal” menjelaskan bahwa tingkat keamanan algoritma ini didasarkan pada kesulitan pemecahan masalah logaritma diskrit pada penggandaan bilangan bulat modulo prima yang besar.

(11)

ElGamal” menjelaskan bahwa aplikasi yang dihasilkan dapat digunakan untuk dokumen Microsoft Office dengan ekstensi .doc, .txt, .ppt dan .mdb.

2.2.2.1 Proses Pembangkitan Kunci

Algoritma membangkitkan pasangan kunci:

1. Pilih sembarang bilangan prima . (dengan syarat nilai harus lebih besar dari nilai plainteks terbesar).

2. Pilih dua buah bilangan acak � dan , dengan syarat �< dan 1≤ ≤ − 2.

3. Hitung = �

Hasil dari algoritma diatas :

-kunci publik adalah ( ,�, ) -kunci privat adalah ( , )

Algoritma ElGamal memiliki besaran-besaran sebagai berikut:

1. bilangan prima (tidak rahasia)

2. Bilangan acak, � (�< ) (tidak rahasia) 3. Bilangan acak, ( < ) (kunci privat) (rahasia) 4. = � (kunci publik) (tidak rahasia)

5. (plainteks) (rahasia)

(12)

2.2.2.2 Proses Enkripsi

Proses enkripsi pesan sebagai berikut:

1. Susun plainteks menjadi blok-blok 1, 2,…, � dimana � menyatakan jumlah karakter plainteks.

2. Pilih bilangan acak � yang dalam hal ini 1≤ � ≤ −2. 3. Setiap blok dienkripsi dengan rumus:

=���

= ��

Pasangan dan adalah cipherteks untuk blok pesan . Jadi, ukuran cipherteks dua kali ukuran plainteks.

2.2.2.3 Proses Dekripsi

Gunakan kunci privat untuk mendekripsi dan menjadi plainteks dengan

Gambar

Gambar 2.1 (a) Sebuah scytale; (b) Pesan ditulis secara horizontal, baris per baris.
Gambar 2.4 (a) Skema enkripsi; (b) Skema dekripsi
Gambar 2.6 (a) Skema enkripsi kriptografi asimetri;

Referensi

Dokumen terkait

Ditemukan bahwa kemampuan menafsirkan grafik kinematika siswa sebesar 19,09 % (tergolong rendah). Beberapa bentuk kesalahan penafsiran grafik kinematika adalah: a) pada

______ murid dapat mencapai objektif yang ditetapkan dan ______.. murid yang tidak mencapai objektif akan diberi bimbingan khas dalam sesi akan datang..

Kelompok Ternak Itik Putri Mandiri merupakan salah satu kelompok peternakan bergerak dalam bidang produksi telur itik konsumsi yang melakukan kegiatan pemeliharaan itik Karawang yang

[r]

______ murid dapat mencapai objektif yang ditetapkan dan ______ murid yang tidak mencapai objektif akan diberi bimbingan khas dalam sesi akan datang...

Penelitian ini dilaksanakan di lahan sawah Balai Benih Induk Padi Murni Tanjung Morawa Dinas Pertanian Provinsi Sumatera Utara dengan ketinggian + 20 meter di atas permukaan

[r]

Tujuan dari paper ini adalah untuk memperlihatkan bagaimana pemimpin NU, Abdurrahman Wahid (selanjutnya ditulis Gus Dur), menggunakan wacana dialog antaragama sebagai: pertama