Tugas 10 [Indah] Kriptografi Modern
KRIPTOGRAFI MODERN
Kriptografi merupakan ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasian data, keabsahan ata, integritas data serta autentikasi data. Secara umum yang kita ketahui, kriptografi terdiri atas dua buah bagian utama yang penting yaitu bagian enkripsi dan bagian deskripsi.Enkripsi merupakan proses transformasi informasi atau plaintext menjadi bentuk lain sehingga isi pesan yang sebenarnya tidak dapat dipahami atau sering disebut ciphertext, hal ini dimaksudkan agar informasi tetap terlindung dari pihak yang tidak berhak menerima. Sedangka, pengertian Deskripsi adalah proses kebalikan dari enkripsi, yaitu transformasi data ke data bentuk semula gambaran umum proses enkripsi dan deskripsi ditunjukkan oleh gambar berikut.
* Algoritma asimetris
adalah pasangan kunci kriptografi yang salah satunya digunakan untuk proses enkripsi dan satu lagi deskripsi. Semua orang yang mendapatkan kunci publik dapat menggunakannya untuk mengenkripsi suatu pesan, sedangkan hanya satu orang saja yang memiliki rahasia itu, dalam hal ini kunci rahasia, untuk melakukan pembongkaran terhadap kode yang dikirim untuknya. Contoh algoritma terkenal yang menggunakan kunci asimetris adalah RSA (merupakan singkatan dari nama penemunya, yaitu Rivest, Shamir dan Adleman).
* Algoritma Hibrida
Algoritma hibrida adalah algoritma yang memanfaatkan dua tingkatan kunci, yaitu kunci rahasia (simetri) yang disebut juga session key (kunci sesi) untuk enkripsi data dan pasangan kunci rahasia adalah kunci publik untuk pemberian tanda tangan digital serta melindungi kunci simetris.
Algoritma Kriptografi yang beroperasi dalam mode bit dapat dikelompokan menjadi dua kategori, yaitu
1. Cipher Aliran
Algoritma kriptografi beroperasi pada plainteks/cipherteks dalam bentuk bit tunggal, yag dalam hal ini rangkaian rangkaian bit dienkripsikan / dideskripsikan bit per bit. Stream Chiper atau Stream Encryption merupakan suatu teknik enkripsi data dengan cara melakukan transformasi dari tiap bit secara terpisah berdasarkan posisi tiap bit dalam aliran data yang biasanya dikendalikan menggunakan operasi XOR. Enkripsi aliran data merupakan hasil dari operasi XOR setiap bit plainteks dengan setiap bit kuncinya. Pada stream chiper bila terjadi kesalahan selama transisi maka kesalahan pada teks enkripsi penerima akan terjadi tepat ditempat kesalahan tersebut terjadi. Dalam praktek pertimbangan kesalahan yang mungkin terjadi sangatlah penting untuk penentuan teknik enkripsi yang akan digunakan.
2. Cipher Blok (Block Cipher)
Algoritma kriptografi beroperasi pada plainteks/cipherteks dalam bentuk blok bit, yang dalam hal ini rangkaian bit dibagi menjadi blok-blok bit yang panjangnya sudah ditentukan sebelumnya.Misalnya panjang blok adalah 64 bit, maka itu algoritma enkripsi memperlakukan 8 karakter setiap kali penyandian (1 karakter = 8 bit dalam pengkodean ASCII)
Rangkaian Bit
Rangkaian bit yang dipecah menjadi blok-blok bit dapat ditulis dalam sejumlah cara bergantung pada panjang blok.
Contoh: Plainteks 100111010110 dibagi menjadi blok bit yang panjangnya 4 menjadi
1001 1101 0110
Setiap blok menyatakan bilangan bulat dari 0 sampai 15, yaitu 9 13 6
Bila plainteks dibagi menjadi blok-blok yang berukuran 3 bit, maka rangkaian bit di atas menjadi:
100 111 010 110
Setiap blok menyatakan bilangan bulat dari 0 sampai 7, yaitu 4 7 2 6
Bila panjang rangkaian bit tidak habis dibagi dengan ukuran blok yang ditetapkan, maka blok yang terakhir ditambah dengan bit-bit semu yang disebut padding bits.
Misalnya rangkaian bit di atas dibagi menjadi blok 5-bit menjadi
10011 10101 00010
Blok yang terakhir telah ditambahkan 3 bit 0 di bagian awal (dicetak tebal) agar ukurannya menjadi 5 bit. Padding bits dapat mengakibatkan ukuran plainteks hasil dekripsi lebih besar daripada ukuran plainteks semula.
Cara lain untuk menyatakan rangkaian bit adalah dengan notasi heksadesimal (HEX). Rangkaian bit dibagi menjadi blok yang berukuran 4 bit dengan representasi dalam HEX adalah: 0000 = 0 0001 = 1 0010 = 2 0011 = 3
0100 = 4 0101 = 5 0011 = 6 0111 = 7
1000 = 8 1011 = 9 1010 = A 1011 = B
1100 = C 1101 = D 1101 = E 1111 = F
Misalnya, plainteks 100111010110 dibagi menjadi blok bit yang panjangnya 4 menjadi
1001 1101 0110
yang dalam notasi HEX adalah 9 D 6
Operator XOR
Operator biner yang sering digunakan dalam cipher yang yang beroperasi dalam mode bit adalah XOR atau exclusive-or.Notasi matematis untuk opeartor XOR adalah ⊕ (dalam Bahas C, operator XOR dilambangkan dengan ^).Operator XOR diperasikan pada dua bit dengan aturan sebagai berikut:
0 ⊕ 0 = 0
0 ⊕ 1 = 1
1 ⊕ 0 = 1
1 ⊕ 1 = 0
Operator XOR identik dengan penjumlahan modulo 2.
Misalkan a, b, dan c adalah peubah Boolean. Hukum-hukum yang terkait dengan operator XOR:
(i) a ⊕ a=0
(ii) a ⊕ b = b ⊕ a (Hukum komutatif)
(iii) a ⊕ (b ⊕ c) = (a ⊕ b) ⊕ c (Hukum asosiatif)
* Jika dua rangkaian dioperasikan dengan XOR, maka operasinya dilakukan dengan meng-XOR-kan setiap bit yang berkoresponden dari kedua ramngkaian bit tersebut.
Contoh: 10011 ⊕ 11001 = 01010
yang dalam hal ini, hasilnya diperoleh sebagai berikut:
1 0 0 1 1
1 1 0 0 1 ⊕
1 ⊕ 1 0 ⊕ 1 0 ⊕ 0 1⊕ 0 1 ⊕ 1
0 1 0 1 0
* Algoritma enkripsi sederhana yang menggunakan XOR adalah dengan meng-XOR-kan plainteks (P) dengan kunci (K) menghasilkan cipherteks:
C = P ⊕ K (6.1)
Karena meng-XOR-kan nilai yang sama dua kali menghasilkan nilai semula, maka proses dekripsi menggunakan persamaan:
P = C ⊕ K (6.2)
Contoh: plainteks 01100101 (karakter ‘e’)
kunci 00110101 ⊕ (karakter ‘5’)
cipherteks 01010000 (karakter ‘P’)
kunci 00110101 ⊕ (karakter ‘5’)
plainteks 01100101 (karakter ‘e’)
* Program komersil yang berbasis DOS atau Macintosh menggunakan algoritma XOR sederhana ini. Sayangnya, algoritma XOR sederhana tidak aman karenacipherteksnya mudah dipecahkan.
Cara memecahkannya adalah sebagai berikut (asumsi: panjang kunci adalah sejumlah kecil byte):
Ø Cari panjang kunci dengan prosedur counting coincidence sbb: XOR-kan cipherteks terhadap dirinya sendiri setelah digeser sejumlah byte, dan hitung jumlah byte yang sama. Jika pergeseran itu kelipatan dari panjang kunci (yang tidak diketahui), maka 6% dari byte akan sama. Jika tidak, maka 0.4% akan sama. Angka persentase ini disebut index of coincidence. Pergeseran terkecil mengindikasikan panjang kunci yang dicari.
Ø Geser cipherteks sejauh panjang kunci dan XOR-kan dengan dirinya sendiri. Operasi ini menghasilkan plainteks yang ter-XOR dengan plainteks yang digeser sejauh panjang kunci tersebut.Cari panjang kunci dengan prosedurcounting coincidence sbb: XOR-kan cipherteks terhadap dirinya sendiri setelah digeser sejumlah byte, dan hitung jumlah byte yang sama. Jika pergeseran itu kelipatan dari panjang kunci (yang tidak diketahui), maka 6% dari byte akan sama. Jika tidak, maka 0.4% akan sama. Angka persentase ini disebut index of coincidence. Pergeseran terkecil mengindikasikan panjang kunci yang dicari.
Ø Geser cipherteks sejauh panjang kunci dan XOR-kan dengan dirinya sendiri. Operasi ini menghasilkan plainteks yang ter-XOR dengan plainteks yang digeser sejauh panjang kunci tersebut.
Contoh Soal
1. Jelaskan keterkaitan ilmu CRYPTOGRAPHY dengan ilmu yg lainnya (bagian, sub bagian, induk, saudara, dll.). Kadang kala sering juga disebut ontology atau taxonomi dari ilmu CRYPTOGRAPHY?
Jawaban: Steganografi adalah seni dan ilmu menulis atau menyembunyikan pesan tersembunyi dengan suatu cara sehingga selain si pengirim dan si penerima, tidak ada seorangpun yang mengetahui atau menyadari bahwa ada suatu pesan rahasia. Cryptocurrency sendiri adalah mata uang digital yang menggunakan teknik enkripsi untuk meregulasi setiap unit mata uang baru dan memverifikasi setiap pengiriman dana yang terjadi.
2. Yang dimaksud dengan kriptografi adalah?
Jawaban : Kriiptografi adalah ilmu atau seni untuk menjaga kerahasiaan pesan dengan cara menyamarkannya menjadi bentuk yang tidak dapat dimengerti. Beberapa contoh dalam kehidupan yang menggunakan kriptografi : ATM, Email Dll.
3. Sebutkan dan jelaskan terminologi dasar pada kriptografi ?
Jawaban :
1. Plainteks : pesan yang dirahasiakan.
2. Chiperteks : pesan hasil penyandian.
3. Enkripsi : proses penyandian dari plainteks ke chiperteks.
4. Dekripsi : proses pembalikan dari chiperteks ke plainteks
5. Algoritma kriptografi : fungsi matematika yang digunakan untuk enkripsi dan dekripsi.
4. Apa yang dimaksud dengan enkripsi?
Jawab: Enkripsi (Encryption) adalah sebuah proses menjadikan pesan yang dapat dibaca (plaintext) menjadi pesan acak yang tidak dapat dibaca (ciphertext).
5. Contoh dari enkripsi adalah?
Jawab: enkripsi yang digunakan oleh Julius Caesar, yaitu dengan mengganti masing-masing huruf dengan 3 huruf selanjutnya (disebut juga Additive/Substitution Cipher):
Plaintext, Ciphertext, rumah, xasgn motor, suzux kompor, qusvux
6. Apa yang dimaksud dengan deskripsi?
Jawab: Dekripsi merupakan proses kebalikan dari enkripsi dimana proses ini akan mengubah ciphertext menjadi plaintext dengan menggunakan algortima ‘pembalik’ dan key yang sama.
7. Contoh dari deskripsi adalah?
Jawab:
- Ciphertext. Plaintext
- xasgn. rumah
- suzux. motor
- qusvux. kompor
8. Tujuan kriptografi adalah?
Jawab :
1. kerahasiaan (confidentiality), yaitu menjaga supaya pesan tidak dapat dibaca oleh pihak-pihak yang tidak berhak.
2. integritas data (data integrity), yaitu memberikan jaminan bahwa untuk tiap bagian pesan tidak akan mengalami perubahan dari saat data 10 dibuat/dikirim oleh pengirim sampai dengan saat data tersebut dibuka oleh penerima data.
3. otentikasi (authentication), yaitu berhubungan dengan identifikasi, baik mengidentifikasi kebenaran pihak-pihak yang berkomunikasi maupun mengidentifikasi kebenaran sumber pesan
4. nirpenyangkalan (non repudiation), yaitu memberikan cara untuk membuktikan bahwa suatu dokumen datang dari seseorang tertentu sehingga apabila ada seseorang yang mencoba mengakui memiliki dokumen tersebut, dapat dibuktikan kebenarannya dari pengakuan orang tersebut.
9. Sebutkan jenis kriptografi berdasarkan kunci?
Jawab: Algoritma Simetris merupakan Algoritma ini disebut simetris karena memiliki key atau kunci yang sama dalam proses enkripsi dan dekripsi sehingga algoritma ini juga sering disebut algoritma kunci tunggal atau algoritma satu kunci. Key dalam algoritma ini bersifat rahasia atau private key sehingga algoritma ini juga disebut dengan algoritma kunci rahasia. Algoritma Asimetris merupakan Algoritma ini disebut asimetris karena kunci yang digunakan untuk enkripsi berbeda dengan kunci yang digunakan untuk dekripsi. Kunci yang digunakan untuk enkripsi adalah kunci publik atau public key sehingga algoritma ini juga disebut dengan algoritma kunci publik. Sedangkan kunci untuk dekripsi menggunakan kunci rahasia atau private key.
10. Sebutkan jenis kriptografi Berdasarkan besar data yang diolah:
Jawab :
* Algoritma 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.
* Algoritma stream cipher : Informasi / data yang hendak dikirim dioperasikan dalam bentuk blok – blok yang lebih kecil (byteatau 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.
Nama : Indah Winarni
Nim : 2103015141
Sumber : https://onlinelearning.uhamka.ac.id


Komentar
Posting Komentar