Keamanan Komputer Kriptografi -Aurelio Rahmadian-
Pendahuluan Kriptografi adalah suatu ilmu yang mempelajari bagaimana cara menjaga agar data atau pesan tetap aman saat dikirimkan, dari pengirim ke penerima tanpa mengalami gangguan dari pihak ketiga. Hal ini seiring dengan semakin berkembangnya teknologi jaringan komputer dan internet. Semakin banyaknya aplikasi yang muncul memanfaatkan teknologi jaringan. Beberapa aplikasi tersebut menuntut tingkat aplikasi pengiriman data yang aman.
Pendahuluan Cryptography is the art and science of keeping messages secure. –William Stallings (1995) “Crypto” berarti “secret” (rahasia) dan “graphy” berarti “writing” (tulisan). Sebuah algoritma kriptografik (cryptographic algorithm), disebut cipher. Cryptanalysis adalah seni dan ilmu untuk memecahkan ciphertext tanpa bantuan kunci. Cryptanalyst adalah pelaku atau praktisi yang menjalankan cryptanalysis. Cryptology merupakan gabungan dari cryptography dan cryptanalysis.
Prinsip Kriptografi Melindungi aspek-aspek berikut: Confidentiality Integrity Availability Authentication Non-Repudiation
Istilah dalam Kriptografi Plaintext (M) adalah pesan yang hendak dikirimkan (berisi data asli). Ciphertext (C) adalah pesan ter-enkrip (tersandi) yang merupakan hasil enkripsi. Enkripsi (fungsi E) adalah proses pengubahan plaintext menjadi ciphertext. Dekripsi (fungsi D) adalah kebalikan dari enkripsi yakni mengubah ciphertext menjadi plaintext, sehingga berupa data awal/asli. Kunci adalah suatu bilangan yang dirahasiakan yang digunakan dalam proses enkripsi dan dekripsi.
Proses Utama Enkripsi adalah proses dimana informasi/data yang hendak dikirim diubah menjadi bentuk yang hampir tidak dikenali sebagai informasi awalnya dengan menggunakan algoritma tertentu. Dekripsi adalah kebalikan dari enkripsi yaitu mengubah kembali bentuk tersamar tersebut menjadi informasi awal.
Proses Utama Secara matematis, proses atau fungsi enkripsi (E) dapat dituliskan sebagai: E(M) = C dimana: M adalah plaintext (message) dan C adalah ciphertext. Proses atau fungsi dekripsi (D) dapat dituliskan sebagai: D(C) = M
Kunci Kekuatan dari penyandian bergantung kepada kunci yang digunakan. Beberapa algoritma enkripsi memiliki kelemahan pada kunci yang digunakan. Untuk itu, kunci yang lemah tersebut tidak boleh digunakan. Selain itu, panjangnya kunci, yang biasanya dalam ukuran bit, juga menentukan kekuatan dari enkripsi. Kunci yang lebih panjang biasanya lebih aman dari kunci yang pendek. Jadi enkripsi dengan menggunakan kunci 128-bit lebih sukar dipecahkan dengan algoritma enkripsi yang sama tetapi dengan kunci 56-bit. Semakin panjang sebuah kunci, semakin besar keyspace yang harus dijalani untuk mencari kunci dengan cara brute force attack atau coba-coba karena keyspace yang harus dilihat merupakan pangkat dari bilangan 2. Jadi kunci 128-bit memiliki keyspace 2128, sedangkan kunci 56-bit memiliki keyspace 256. Artinya semakin lama kunci baru bisa ketahuan.
Algoritma Kriptografi Berdasarkan jenis kunci yang digunakan : Algoritma Simetris Algoritma Asimetris Berdasarkan besar data yang diolah : Algoritma Block Cipher Algoritma Stream Cipher
Berdasar Kunci yang Digunakan Algoritma Simetris Algoritma simetris (symmetric algorithm) adalah suatu algoritma dimana kunci enkripsi yang digunakan sama dengan kunci dekripsi sehingga algoritma ini disebut juga sebagai single-key algorithm.
Berdasar Kunci yang Digunakan Kelebihan algoritma simetris : Kecepatan operasi lebih tinggi bila dibandingkan dengan algoritma asimetrik. Karena kecepatannya yang cukup tinggi, maka dapat digunakan pada sistem real-time Kelemahan algoritma simetris : Untuk tiap pengiriman pesan dengan pengguna yang berbeda dibutuhkan kunci yang berbeda juga, sehingga akan terjadi kesulitan dalam manajemen kunci tersebut. Permasalahan dalam pengiriman kunci itu sendiri yang disebut “key distribution problem”
Berdasar Kunci yang Digunakan Algoritma Asimetris Algoritma asimetris (asymmetric algorithm) adalah suatu algoritma dimana kunci enkripsi yang digunakan tidak sama dengan kunci dekripsi. Pada algoritma ini menggunakan dua kunci yakni kunci publik (public key) dan kunci privat (private key). Kunci publik disebarkan secara umum sedangkan kunci privat disimpan secara rahasia oleh si pengguna. Walau kunci publik telah diketahui namun akan sangat sukar mengetahui kunci privat yang digunakan.
Berdasar Kunci yang Digunakan Kelebihan algoritma asimetris : Masalah keamanan pada distribusi kunci dapat lebih baik Masalah manajemen kunci yang lebih baik karena jumlah kunci yang lebih sedikit Kelemahan algoritma asimetris : Kecepatan yang lebih rendah bila dibandingkan dengan algoritma simetris Untuk tingkat keamanan sama, kunci yang digunakan lebih panjang dibandingkan dengan algoritma simetris.
Berdasar Besar Data yang Diolah Block Cipher Algoritma kriptografi ini bekerja pada suatu data yang berbentuk blok/kelompok data dengan panjang data tertentu (dalam beberapa byte), jadi dalam sekali proses enkripsi atau dekripsi data yang masuk mempunyai ukuran yang sama. Stream Cipher Algoritma yang dalam operasinya bekerja dalam suatu pesan berupa bit tunggal atau terkadang dalam suatu byte, jadi format data berupa aliran dari bit untuk kemudian mengalami proses enkripsi dan dekripsi.
Kriptografi Klasik Algoritma kriptografi klasik berbasis karakter. Menggunakan pena dan kertas saja, belum ada komputer. Termasuk ke dalam kriptografi kunci- simetris. Algoritma kriptografi klasik: Cipher Substitusi (Substitution Ciphers) Cipher Transposisi (Transposition Ciphers)
Kriptografi Klasik Cipher Substitusi Monoalfabet : setiap karakter ciphertext menggantikan satu macam karakter plaintext. Polyalfabet : setiap karakter ciphertext menggantikan lebih dari satu macam karakter plaintext.
Cipher Substitusi Caesar Cipher Salah satu contoh dari “substitution cipher” adalah Caesar Cipher yang digunakan oleh Julius Caesar. Pada prinsipnya, setiap huruf digantikan dengan huruf yang berada tiga (3) posisi dalam urutan alfabet.
Cipher Substitusi Penggunaan Caesar Cipher Plaintext: AWASI ASTERIX DAN TEMANNYA OBELIX Ciphertext: DZDVL DVWHULA GDQ WHPDQQBA REHOLA Dalam praktek, ciphertext dikelompokkan ke dalam kelompok n-huruf, misalnya kelompok 4-huruf: DZDV LDVW HULA GDQW HPDQ QBAR EHOL A Atau membuang semua spasi: DZDVLDVWHULAGDQWHPDQQBAREHOLA Tujuannya agar kriptanalisis menjadi lebih sulit
Cipher Substitusi ROT13 Substitution cipher yang masih umum digunakan di sistem UNIX adalah ROT13. Pada sistem ini sebuah huruf digantikan dengan huruf yang letaknya 13 posisi darinya. C = ROT13(M) M = ROT13(ROT13(M))
Cipher Substitusi Monoalphabetic cipher ini agak mudah dipecahkan dengan menganalisa ciphertext apabila beberapa informasi lain (seperti bahasa yang digunakan) dapat diketahui. Salah satu cara penyerangan (attack) yang dapat dilakukan adalah dengan menganalisa statistik dari frekuensi huruf yang muncul. Cara ini disebut frequency analysis.
Cipher Substitusi
Cipher Substitusi Book Cipher – Ottendorf Cipher
Cipher Substitusi Book Cipher – Ottendorf Cipher
Cipher Substitusi Book Cipher – Ottendorf Cipher
Cipher Substitusi Vigenère Cipher Termasuk ke dalam cipher abjad-majemuk (polyalpabetic substitution cipher). Algoritma tersebut baru dikenal luas 200 tahun kemudian yang oleh penemunya cipher tersebut kemudian dinamakan Vigenère Cipher. Vigenère Cipher menggunakan Bujursangkar Vigenère untuk melakukan enkripsi. Terdiri atas beberapa Caesar Cipher dengan jumlah pergeseran yang berbeda.
Cipher Substitusi
Cipher Substitusi Contoh penerapan Vigènere Cipher : Plainteks : THIS PLAINTEXT Kunci : sony sonysonys Cipherteks : LVVQ HZNGFHRVL Jika panjang kunci lebih pendek daripada panjang plainteks, maka kunci diulang secara periodik. Dalam hal ini Kunci “sony” diulang sebanyak panjang plaintext-nya Pada dasarnya, setiap enkripsi huruf adalah Caesar cipher dengan kunci yang berbeda-beda. c(‘T’) = ((‘T’ + ‘s’) mod 26)-1 = L T = 20 dan s= 19 ((20+19)%26)-1=12 L c(‘H’) = ((‘H’ + ‘o’) mod 26)-1 = V, dst
Cipher Substitusi Polygraph Cipher Huruf plaintext disubstitusi berkelompok, bukan individual. Digraphic cipher (substitusi berpasangan) yang ditemukan pertama kali disebut Playfair cipher, oleh Sir Charles Wheatstone pada 1854.
Cipher Substitusi Playfair Cipher
Cipher Substitusi Playfair Cipher
Cipher Transposisi Ciphertext diperoleh dengan mengubah posisi huruf di dalam plaintext. Dengan kata lain, algoritma ini melakukan transpose terhadap rangkaian huruf di dalam plaintext.
Cipher Transposisi Metode Blocking Contoh: Misalkan plaintext adalah POLITEKNIK ELEKTRONIKA NEGERI SURABAYA Enkripsi: POLITEK NIKELEK TRONIKA NEGERIS URABAYA Cipherteks: (baca secara vertikal) PNTNUOIRERLKOGAIENEBTLIRAEEKIYKKASA PNTN UOIR ERLK OGAI ENEB TLIR AEEK IYKK ASA
Cipher Transposisi Metode Permutasi
Cipher Transposisi 5 TEKNIK DASAR KRIPTOGRAFI N ETK5SKD AIIRK RAATGORPFI
Cipher Transposisi Scytale
Cipher Transposisi Scytale Plainteks : HELP ME I AM UNDER ATTACK Cipherteks : HENTEIDTLAEAPMRCMUAK