Kriptografi Berdasarkan Kunci yang Dipakai

7 2.1.2. Tujuan kriptografi Kriptografi bertujuan untuk memberikan layanan keamanan sebagai berikut : PaarPelzl, 2010 1. Kerahasiaan Confidentiality Informasi dirahasiakan dari semua pihak yang tidak berwenang. 2. Keutuhan Data Inegrity Pesan tidak berubah dalam proses pengiriman hingga pesan diterima oleh penerima. 3. Autentikasi Message Authentication Kepastian terhadap identitas setiap entitas yang terlibat dan keaslian sumber data. 4. Nirpenyangkalan Nonrepudiation Setiap entitas yang berkomunikasi tidak dapat menolak atau menyangkal atas data yang telah dikirim atau diterima.

2.2. Sistem Kriptografi

Sistem kriptografi adalah algoritma, seluruh kemungkinan plaintext, ciphertext dan kunci. P adalah notasi yang digunakan untuk plaintext, C adalah ciphertext, E adalah fungsi enkripsi dan D adalah fungsi dekripsi Schneier, 1996. Sedangkan untuk kunci dapat dinotasikan sebagai K. Berdasarkan kunci yang dipakai, algoritma kriptografi dibagi menjadi tiga, yaitu algoritma simetri menggunakan satu kunci untuk enkripsi dan dekripsi, algoritma asimetri menggunakan kunci yang berbeda untuk enkripsi dan dekripsi dan fungsi hash Ariyus, 2008. Selain berdasarkan kunci yang dipakai, karakteristik kriptografi juga dibagi berdasarkan tipe operasi yang dipakai untuk enkripsi dan dekripsi serta berdasarkan tipe pengolahan pesan Sadikin, 2012.

2.3. Kriptografi Berdasarkan Kunci yang Dipakai

Algoritma Kriptografi dibagi tiga berdasarkan kunci yang dipakai, yaitu algoritma simetri menggunakan satu kunci untuk proses enkripsi dan dekripsi, algoritma Universitas Sumatera Utara 8 asimetri menggunakan kunci yang berbeda untuk proses enkripsi dan dekripsi, dan fungsi hash Ariyus, 2008. Karakteristik kriptografi dibagi dua berdasarkan tipe operasi yang dipakai untuk enkripsi dan dekripsi teknik substitusi dan teknik permutasi serta berdasarkan tipe pengolahan pesan block cipher dan stram cipher Verma, 2015. 2.3.1. Sistem kriptografi simetri Algoritma simetris adalah algoritma yang menggunakan kunci enkripsi yang sama dengan kunci dekripsinya Kromodimoeljo, 2010. Bila mengirim pesan dengan algoritma ini, si penerima pesan harus diberitahu kunci dari pesan tersebut agar bisa mendekripsikan pesan yang dikirim. Keamanan dari pesan yang menggunakan algoritma ini tergantung pada kunci. Jika kunci tersebut diketahui oleh orang lain maka orang tersebut dapat melakukan enkripsi dan dekripsi pada pesan. Yang termasuk algoritma kunci simetris adalah Hill Cipher, Affine Cipher, OTP, DES, RC2, RC4, RC5, IDEA, Twofish, Magenta, FEAL, dan lain-lainnya. Skema kriptografi simetris ditunjukkan secara umum pada Gambar 2.2. Gambar 2.2. Skema Kriptografi Simetris Fauzana, 2013 2.3.2. Sistem kriptografi asimetri Algoritma asimetris disebut juga dengan kriptografi kunci publik karena algortima ini memiliki kunci yang berbeda untuk enkripsi dan dekripsi, dimana enkripsi menggunakan public key dan untuk dekripsinya menggunakan private key. Public key dan private key harus saling berpasangan secara matematis. Dengan memberikan public key, pembuat kunci berhak memberikan dan mendapatkan public key agar pesan aman dan hanya bisa dibaca oleh si pembuat kunci. Dalam kriptografi kunci asimetri, hampir Universitas Sumatera Utara 9 semua algoritma kriptografinya menggunakan konsep kunci publik, seperti Rivest- Shamir-Adleman RSA, El-Gamal, Rabin dan sebagainya Harahap, 2014. Skema kriptografi asimetris ditunjukkan secara umum pada Gambar 2.3. Gambar 2.3 Kriptografi Asimetris Fauzana, 2013 Sistem kriptografi asimetri kunci publik pertama kali diusulkan oleh Diffie dan Hellman pada tahun 1976. Ide kriptografi kunci publik sebenarnya mirip dengan cara kerja kunci gembok, misalnya terdapat sebuah peti yang berisi pesan rahasia, lalu peti itu dikunci dengan gembok di mana gembok ini dimiliki oleh semua orang gembok bekerja seperti public key. Peti terkunci tersebut kemudian dikirim ke tujuan atau penerima yang memiliki kunci untuk membuka gembok. Penerima dapat membuka gembok apabila kunci yang dipegang olehnya merupakan pasangan dari gembok tersebut. Kunci yang dipegang oleh penerima bekerja seperti private key Sadikin, 2012. Sistem kriptografi kunci publik memiliki kunci untuk enkripsi K e dan kunci untuk dekripsi K d yang berbeda. Kunci untuk enkripsi K e disebut juga sebagai kunci publik K Publik bersifat tidak rahasia sehingga dapat didistribusikan melalui saluran tidak aman. Sedangkan kunci dekripsi K d disebut juga kunci privat K Privat bersifat rahasia dan harus dijaga kerahasiaannya oleh pemegang kunci. Berikut ini adalah algoritma sistem kriptografi kunci publik Sadikin, 2012. 1. Sebelum A melakukan enkripsi, B membangkitkan sepasang kunci yaitu kunci privat dan kunci publik milik B dengan memanggil fungsi PembangkitKunci . K Publik B, K Privat B  PembangkitKunci B memublikasikan kunci publik K Publik B dan menjaga kerahasiaan kunci privat K Privat B. Universitas Sumatera Utara 10 2. A melakukan enkripsi sebuah teks asli P dengan kunci publik B K Publik B menghasilkan sebuah teks sandi C dengan memanggil fungsi enkripsi E. C  EK Publik B, P A mengirim teks sandi C ke B melalui saluran tidak aman. 3. B mendekripsi teks sandi C dengan kunci privat B K Privat B untuk mendapatkan teks asli P dengan fungsi dekripsi D. P  DK Privat B, C B mendapatkan P jika teks sandi C dienkripsi dengan kunci publik B yang sesuai. Jadi dalam kriptografi kunci publik, kunci publik dapat disebar-luaskan kepada umum dan sebaiknya disebar luaskan. Sebaliknya, kunci privat harus dirahasiakan oleh pemiliknya. Perlu untuk diingat, biasanya algoritma tidak dirahasiakan, bahkan enkripsi yang mengandalkan kerahasiaan algoritma dianggap sesuatu yang tidak baik Kromodimoeljo, 2010. Hal ini sesuai dengan prinsip Kerckhoff yaitu semua algoritma kriptografi harus publik, hanya kunci yang rahasia Munir, 2006. Dalam kriptografi kunci asimetri, hampir semua algoritma kriptografinya menggunakan konsep kunci publik, seperti Rivest-Shamir-Adleman RSA, El-Gamal, Rabin dan sebagainya. Kecuali algoritma Pohlig˗Hellman karena kunci enkripsi maupun kunci dekripsinya bersifat rahasia. Fauzana, 2013. Skema algoritma kriptografi asimetri nirkunci publik dengan asumsi kunci sudah diketahui oleh kedua belah pihak sebelumnya dapat dilihat pada Gambar 2.4. Gambar 2.4. Skema Kriptografi Asimetri Nirkunci Publik Fauzana, 2013 Universitas Sumatera Utara 11 2.3.3. Fungsi hash Fungsi hash adalah sebuah fungsi yang masukannya adalah sebuah pesan dan keluarannya adalah sebuah sidik pesan message fingerprint Ariyus, 2008. Fungsi hash sering disebut dengan fungsi hash satu arah one-way function, message digest, fingerprint, fungsi kompresi dan message authentication code MAC yang merupakan suatu fungsi matematika yang mengambil masukan panjang variabel dan mengubahnya ke dalam urutan biner dengan panjang yang tetap. Fungsi hash biasanya diperlukan bila ingin membuat sidik jari dari suatu pesan. Sidik jari pada pesan merupakan suatu tanda bahwa pesan tersebut benar-benar berasal dari orang yang diinginkan Ariyus, 2008. Beberapa fungsi hash yang banyak dipakai adalah MD5 dan SHA.

2.4. Teori Bilangan Integer