Pada pertemuan kali ini, kami membahas mengenai Kriptografi. Apa sih Kriptografi itu?
Kriptografi pada slide dosen saya adalah Ilmu sekaligus seni untuk menjaga keamanan pesan
Menurut sumber lain, Kriptografi (cryptography) berasal dari bahasa Yunani, terdiri dari dua suku kata yaitu kripto dan graphia. Kripto artinya menyembunyikan, sedangkan graphia artinya tulisan. Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi, seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data .Tetapi tidak semua aspek keamanan informasi dapat diselesaikan dengan kriptografi. Kriptografi dapat pula diartikan sebagai ilmu atau seni untuk menjaga keamanan pesan
Ada sebuah contoh kriptografi
*Pesan >> Plaintext atau Cleartext
*Pesan dapat berupa data atau informasi yang dikirim (melalui kurir, saluran komunikasi data, dsb)
*Pesan dapat disimpan di dalam media perekaman (kertas, storage, dsb).
Setelah di kriptografi
*Agar pesan tidak dapat dimengerti maknanya oleh pihak lain, maka pesan disandikan ke bentuk lain.
*Bentuk pesan yang tersandi disebut ciphertext atau cryptogram. Tidak bergantung dengan suatu program.
*Ciphertext harus dapat ditransformasi kembali menjadi plaintext.
ILUSTRASI
Komponen utama kriptografi
Pada prinsipnya, Kriptografi memiliki 4 komponen utama yaitu:
1. Plaintext, yaitu pesan yang dapat dibaca
2. Ciphertext, yaitu pesan acak yang tidka dapat dibaca
3. Key, yaitu kunci untuk melakukan teknik kriptografi
4. Algorithm, yaitu metode untuk melakukan enkrispi dan dekripsi
Tujuan kriptografi
1. Menjaga kerahasiaan (confidentiality) pesan.
2. Keabsahan pengirim (user authentication).
3. Keaslian pesan (message authentication).
4. Anti-penyangkalan (non-repudiation).
Tambahan!
Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan aspek keamanan informasi yaitu :
- Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka/mengupas informasi yang telah disandi.
- Integritas data, adalah berhubungan dengan penjagaan dari perubahan data secara tidak sah. Untuk menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh pihak-pihak yang tidak berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain kedalam data yang sebenarnya.
- Autentikasi, adalah berhubungan dengan identifikasi/pengenalan, baik secara kesatuan sistem maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi harus saling memperkenalkan diri. Informasi yang dikirimkan melalui kanal harus diautentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain.
- Non-repudiasi., atau nirpenyangkalan adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman/terciptanya suatu informasi oleh yang mengirimkan/membuat.
Kriptografi menyediakan:
- Proses menyandikan plaintext menjadi ciphertext disebut enkripsi (encryption) atau enciphering
- Proses mengembalikan} ciphertext menjadi plaintextnya disebut dekripsi (decryption) atau deciphering
Deskripsi Enkripsi
Enkripsi (Encryption) adalah sebuah proses menjadikan pesan yang dapat dibaca (plaintext) menjadi pesan acak yang tidak dapat dibaca (ciphertext). Berikut adalah contoh enkripsi yang digunakan oleh Julius Caesar, yaitu dengan mengganti masing-masing huruf dengan 3 huruf selanjutnya (disebut juga Additive/Substitution Cipher)
Dekripsi merupakan proses kebalikan dari enkripsi dimana proses ini akan mengubah ciphertext menjadi plaintext dengan menggunakan algortima „pembalik‟ dan key yang sama.
Sehingga Kata yang telah di Enkripsi akan dapat dimengerti oleh pembaca.
Kriptografi adalah ilmu sekaligus seni untuk menjaga keamanan pesan
Praktisi (pengguna kriptografi) disebut} kriptografer (cryptographer).
Algoritma kriptografi adalah:
◦aturan/metode untuk enkripsi dan dekripsi
◦fungsi matematika yang digunakan untuk enkripsi dan dekripsi.
Kunci adalah parameter yang digunakan untuk transformasi enkripsi dan dekripsi.
Sistem kriptografi (atau cryptosystem) adalah algoritma kriptografi, plainteks, cipherteks, dan kunci.
Penyadap adalah orang yang mencoba menangkap pesan selama ditransmisikan. Nama lain: enemy, adversary, intruder, interceptor, bad guy
Kriptanalisis (cryptanalysis) adalah ilmu dan seni untuk memecahkan cipherteks menjadi plainteks tanpa mengetahui kunci yang diberikan. Pelakunya disebut kriptanalis.
Kriptologi (cryptology) adalah studi mengenai kriptografi dan kriptanalisis.
Persamaan kriptografer dan kriptanalis:
Keduanya sama-sama menerjemahkan cipherteks menjadi plainteks
Perbedaan kriptografer dan kriptanalis:
Kriptografer bekerja atas legitimasi pengirim atau penerima pesan
Kriptanalis bekerja atas nama penyadap yang tidak berhak.
Aplikasi kriptografi:
· Pengiriman data melalui saluran komunikasi
· Penyimpanan data di dalam} disk storage.
Contoh-contoh pada pengiriman data melalui saluran komunikasi
1. ATM tempat mengambil uang
2. Internet
3. Militer
4. Wi-fi
5. Pay TV
6. GSM
Contoh-contoh pada data tersimpan:
1. Dokumen teks
Plainteks (plain.txt):
Ketika saya berjalan-jalan di pantai, saya menemukan banyak sekali kepiting yang merangkak menuju laut. Mereka adalah anak-anak kepiting yang baru menetas dari dalam pasir. Naluri mereka mengatakan bahwa laut adalah tempat kehidupan mereka
Cipherteks (cipher.txt):
Ztâxzp/épêp/qtüyp{p}<yp{p}/sx/•p}âpx;_épêp/|t}t|äzp}/qp}êpz/étzp{x/zt•xâx}v_êp}v/|tüp}vzpz/|t}äyä/{päâ=/\tützp_psp{pw/p}pz<p}pz/zt•xâx}v/êp}v/qpüä_|t}tâpé/spüx/sp{p|/•péxü=/]p{äüx_|ttüzp/|t}vpâpzp}/qpwåp/{päâ/psp{pw_ât|•pâ/ztwxsä•p}/|tützp=
2. Kriptografi dokumen gambar
3. Kriptografi dokumen basis data
Algoritma Enkripsi dan Dekripsi
- Kekuatan algoritma kriptografi TIDAK ditentukan dengan menjaga kerahasiaan algoritmanya.
- Cara tersebut tidak aman dan tidak cocok lagi di saat ini.
- Pada sistem kriptografi modern, kekuatan kriptografinya terletak pada kunci, yang berupa deretan karakter atau bilangan bulat, dijaga kerahasiaannya
Algoritma Enkripsi dan Dekripsi
Dengan menggunakan kunci K, maka fungsi enkripsi dan dekripsi menjadi
E(P,K) = C
D(C,K) = P
dan kedua fungsi ini memenuhi
D(E(P,K),K) = P
Teknik dasar kriptografi
· Substitusi
· Blocking
· Permutasi
· Ekspansi
· Pemampatan
Penjelasannya dilihat dibawah.
Langkah pertama adalah membuat suatu tabel substitusi. Tabel substitusi dapat dibuat sesuka hati, dengan catatan bahwa penerima pesan memiliki tabel yang sama untuk keperluan dekripsi.
Bila tabel substitusi dibuat secara acak, akan semakin sulit pemecahan ciphertext oleh orang yang tidak berhak.}
Contoh
1. Tabel subsitusi
2. Caesar Chipher
3. ROT 13
Caesar Chipher
Metode penyandian ini dinamakan caesar chiper, setelah digunakan Julius Caesar untuk berkomunikasi dengan para panglimanya. Dalam kriptografi, Caesar Chiper dikenal dengan beberapa nama seperti: shift cipher, Caesar’s code atau Caesar shift.Caesar Chiper merupakan teknik enkripsi yang paling sederhana dan banyak digunakan. Chiper ini berjenis chiper substitusi, dimana setiap huruf pada plaintextnya digantikan dengan huruf lain yang tetap pada posisi alfabet. Misalnya diketahui bahwa pergeseran = 3, maka huruf A akan digantikan oleh huruf D, huruf B menjadi huruf E, dan seterusnya.
Algoritma enkripsi sederhana pada masa raja Julius Caesar. Tiap huruf alfabet digeser 3 huruf
Model perhitungan
Misalkan setiap huruf dikodekan dengan angka:
A = 0, B = 1, C = 2, …, Z = 25
Maka secara matematis enkripsi dan dekripsi pada Caesar cipher dirumuskan sebagai berikut:
Enkripsi: ci = E(pi) = (pi + 3) mod 26
Dekripsi: pi = D(ci) = (ci – 3) mod 26
Jika pergeseran huruf sejauh k, maka :
Enkripsi: ci = E(pi) = (pi + k) mod 26
Dekripsi: pi = D(ci) = (ci – k) mod 26
k = kunci rahasia
Pada Caesar Cipher, k = 3
Untuk alfabet ASCII 256 karakter :
Enkripsi: ci = E(pi) = (pi + k) mod 256
Dekripsi: pi = D(ci) = (ci – k) mod 256
Contoh soal:
Plainteks : MATH
Cipherteks: RFYM
k = 5
p1 = „M‟ = 12 >> c1 = E(12) = (12 + 5) mod 26 = 17 = „R‟
p2 = „A‟ = 0 >> c2 = E(0) = (0 + 5) mod 26 = 5 = „F‟
p3 = „T‟ = 19 >> c3 = E(19) = (19 + 5) mod 26 = 24 = „Y‟
p4 = „H‟ = 7 >> c4 = E(7) = (7 + 5) mod 26 = 12 = „M‟
ROT13
Pada sistem ini sebuah huruf digantikan dengan huruf yang letaknya 13 posisi darinya.
Sebagai contoh, huruf “A” digantikan dengan huruf “N”, huruf “B” digantikan dengan huruf “O”, dan seterusnya.}
Secara matematis, hal ini dapat dituliskan sebagai:
C ROT13 = (M)
Untuk mengembalikan kembali ke bentuk semulanya dilakukan proses enkripsi ROT13 dua kali.
M = ROT13(ROT13(M))
Blocking
Sistem enkripsi terkadang membagi plaintext menjadi blok-blok yang terdiri dari beberapa karakter yang kemudian dienkripsikan secara independen.
Dengan menggunakan enkripsi blocking dipilih jumlah lajur dan kolom untuk penulisan pesan. Jumlah lajur atau kolom menjadi kunci bagi kriptografi dengan teknik ini.}
Plaintext dituliskan secara vertikal ke bawah berurutan pada lajur, dan dilanjutkan pada kolom berikutnya sampai seluruhnya tertulis. Ciphertext-nya adalah hasil pembacaan plaintext secara horizontal berurutan sesuai dengan blok-nya.
Jika plaintext adalah 5 TEKNIK DASAR KRIPTOGRAFI maka hasil chipertext . Jika menggunakan teknik blocking dengan 1blok berisi 4 karakter.
Jadi ciphertext yang dihasilkan dengan teknik ini adalah "5K G KRTDRAEAIFKSPINAT IRO".
Plaintext dapat pula ditulis secara horizontal dan ciphertextnya adalah hasil pembacaan secara vertikal.
Permutasi
- Salah satu teknik enkripsi yang terpenting adalah permutasi atau sering juga disebut transposisi. Teknik ini memindahkan atau merotasikan karakter dengan aturan tertentu. Prinsipnya adalah berlawanan dengan teknik substitusi.
- Dalam teknik substitusi, karakter berada pada posisi yang tetap tapi identitasnya yang diacak. Pada teknik permutasi, identitas karakternya tetap, namun posisinya yang diacak.}
- Sebelum dilakukan permutasi, umumnya plaintext terlebih dahulu dibagi menjadi blok-blok dengan panjang yang sama.}
- Untuk contoh diatas, plaintext akan dibagi menjadi blok-blok yang terdiri dari 6 karakter, dengan aturan permutasi sebagai berikut :
Dengan menggunakan aturan diatas, maka proses enkripsi dengan permutasi dari plaintext adalah sebagai berikut :
Ciphertext yang dihasilkan dengan teknik permutasi ini adalah "N ETK5 SKD AIIRK RAATGORPIF".
Ekspansi
Suatu metode sederhana untuk mengacak pesan adalah dengan memelarkan pesan itu dengan aturan tertentu. Salah satu contoh penggunaan teknik ini adalah dengan meletakkan huruf konsonan atau bilangan ganjil yang menjadi awal dari suatu kata di akhir kata itu dan menambahkan akhiran "an". Bila suatu kata dimulai dengan huruf vokal atau bilangan genap, ditambahkan akhiran "i". Proses enkripsi dengan cara ekspansi terhadap plaintext terjadi sebagai berikut :
Ciphertextnya adalah "5AN EKNIKTAN ASARDAN RIPTOGRAFIKAN". Aturan ekspansi dapat dibuat lebih kompleks. Terkadang teknik ekspansi digabungkan dengan teknik lainnya, karena teknik ini bila berdiri sendiri terlalu mudah untuk dipecahkan.
Pemampatan (Compaction)
Mengurangi panjang pesan atau jumlah bloknya adalah cara lain untuk menyembunyikan isi pesan. Contoh sederhana ini menggunakan cara menghilangkan setiap karakter ke‐tiga secara berurutan. Karakter‐karakter yang dihilangkan disatukan kembali dan disusulkan sebagai "lampiran" dari pesan utama, dengan diawali oleh suatu karakter khusus, dalam contoh ini digunakan "&". Proses yang terjadi untuk plaintext kita adalah :
Aturan penghilangan karakter dan karakter khusus yang berfungsi sebagai pemisah menjadi dasar untuk proses dekripsi ciphertext menjadi plaintext kembali.
Dengan menggunakan kelima teknik dasar kriptografi diatas, dapat diciptakan kombinasi teknik kriptografi yang amat banyak, dengan faktor yang membatasi semata‐mata hanyalah kreativitas dan imajinasi kita. Walaupun sekilas terlihat sederhana, kombinasi teknik dasar kriptografi dapat menghasilkan teknik kriptografi turunan yang cukup kompleks, dan beberapa teknik dasar kriptografi masih digunakan dalam teknik kriptografi modern.q
Algoritma Kriptografi :
Berdasarkan jenis kunci yang digunakan :
o Algoritma Simetris
o Algoritma Asimetris
Berdasarkan besar data yang diolah :
o Algoritma Block Cipher
o Algoritma Stream Cipher
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.
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 q terjadi kesulitan dalam manajemen kunci tersebut.
- Permasalahan dalam pengiriman kunci itu sendiri yang disebut “key distribution problem”.
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.
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.
Berdasarkan besar data yang diolah:
- Block Cipher
Informasi/data yang hendak dikirim dalam bentuk blok-blok besar (misal 64-bit) dimana blok-blok ini dioperasikan dengan fungsi enkripsi yang sama dan akan menghasilkan informasi rahasia dalam blok-blok yang berukuran sama juga. Contoh: RC4, Seal, A5, Oryx
- Stream Cipher
Informasi/data yang hendak dikirim dioperasikan dalam bentuk blok-blok yang lebih kecil (byte atau bit), biasanya satu karakter per-satuan waktu proses, menggunakan tranformasi enkripsi yang berubah setiap waktu. Contohnya: Blowfish, DES, Gost, Idea, RC5, Safer, Square, Twofish, RC6, Loki97.
Kriptografi Dengan Kunci Simetris/Private:
- Bentuk kriptografi tradisional
- Kunci Simetris digunakan untuk mengenkrip dan mendekrip pesan
- Kunci Simetris juga berkaitan dengan otentikasi
Masalah utama:
1. Pengirim dan penerima menyetujui kunci simetris tanpa ada orang lain yang mengetahui.
2. Butuh metode dimana kedua pihak dapat berkomunikasi tanpa takut disadap.
Contoh Metode Kriptografi Dengan Kunci Simetris/Private
- Metode Caesar Cipher
- Huruf A-Z diberi nilai 0-25
- Karakter pesan dijumlah dengan kunci lalu di modulo 26
- Metode Vigenere Cipher
- Huruf A-Z diberi nilai 0-25
- Kunci terdiri dari sekumpulan random karakter
- Karakter pesan dijumlah dengan kunci lalu di modulo 26
- Metode Book Key Cipher
- Menggunakan teks dari sebuah sumber (misalnya buku) untuk
mengenkrip plainteks
- Karakter pesan dijumlah dengan kunci lalu di modulo 26
- Metode DES (Data Encryption Standard)
- Metode Triple DES Melakukan 3 kali pengenkripan
- Metode AES (Advanced Encryption Standard) Menggantikan DES (karena dapat dibobol)
- Metode Rijndael Block Cipher
- Metode IDEA (Internatinal Data Encryption Algorithm)
- Metode RC5 dan RC6
Kunci Nirsimetris/Publik
- Setiap orang memiliki sepasang kunci, kunci publik dan kunci private.
- Kunci publik dipublikasikan
- Kunci private disimpan rahasia dan tidak boleh ditransmisikan atau dipakai bersama
- Metode RSA (Ronald Rivest, Adi Shamir, Leonard Adleman)
- Metode Diffie Hellman Key Exchange
- Metode El Gamal
One-Way Function / Fungsi Hash
· Merupakan fungsi satu arah yang dapat menghasilkan ciri (signature) dari data (berkas)
· Fungsi yang memproduksi output dengan panjang tetap dari input yang berukuran variable
· Perubahan satu bit saja akan mengubah keluaran hash secara drastic
· Digunakan untuk menjamin integritas dan digital signature
· Plaintext yang di hash, tidak dapat dikembalikan ke bentuk asalnya.
· Oleh karena itu Hash sering disebut sebagai one-way Hash, proses mengubah plaintext menjadi bentuk unik dari plaintext.
· Hasil dari hash algorithm disebut hash atau digest
Contoh:
ü MD5 (Message Diggest), Hasilnya 128-bit
ü SHA (Secure Hash Function), Hasilnya 160-bit
Hash Algoritm
· Contoh penggunaan Hash Function adalah pada mesin ATM.
· Pengguna memiliki nomer PIN
· Nomer PIN tersebut di hash dan tersimpan dalam pita magnet yang ada dalam ATM.
- Steganography, Membuat seolah-olah pesan tidak ada
Film: “Mercury rising”, “Beautiful mind”
- Cryptography, dibagi menjadi:
Transposition (letters arranged), Substitution (letters substituted with other letters)
Tidak ada komentar:
Posting Komentar