Anda di halaman 1dari 10

MODUL 1

KRIPTOGRAFI

1.1 Tujuan Praktikum


- Memahami konsep kriptografi dalam penyembunyian pesan informasi.
- Memahami konsep dan perbedaan dalam implementasi antara symmetric key
dan asymmetric key.

- Memahami dan dapat mengimplementasikan sistem persandian Caesar dan


Vigenere dalam enkripsi dan dekripsi informasi.

- Memahami dan dapat mengimplementasikan konsep enkripsi S-DES dan RC4.

- Memahami dan dapat mengimplementasikan konsep RSA.

1.2 Alat Praktikum


- Cryptool 2

1.3 Dasar Teori


1.3.1 Kriptografi
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. Dekripsi menggunakan kunci dekripsi
mendapatkan kembali data asli. Proses enkripsi dilakukan menggunakan suatu
algoritma dengan beberapa parameter. Algoritma biasanya tidak dirahasiakan,
bahkan enkripsi yang mengandalkan kerahasiaan algoritma dianggap sesuatu yang
tidak baik. Rahasia terletak di beberapa parameter yang digunakan, jadi kunci
ditentukan oleh parameter. Parameter yang menentukan kunci dekripsi itulah yang
harus dirahasiakan (Kromodimoeljo, 2010).
Kriptografi pada awalnya dijabarkan sebagai ilmu yang mempelajari
bagaimana menyembunyikan pesan. Namun seiring perkembangannya kriptografi
pada pengertian modern adalah ilmu yang bersandarkan pada teknik matematika
untuk berurusan dengan keamanan informasi seperti kerahasiaan, keutuhan data
dan otentikasi entitas. Jadi, bila diklasifikasikan terdapat kriptografi klasik dan
kriptografi modern.

1
1.3.2 Tujuan Kriptografi
Kriptografi bertujuan untuk memberikan layanan keamanan sebagai berikut (Sadikin,
2012):
1. Otentikasi
Otentikasi memberikan kepastian terhadap identitas setiap entitas yang terlibat dan
sumber daya data.
2. Kendali Akses
Layanan keamanan jaringan yang menghalangi penggunaan tidak terotorisasi
terhadap sumber daya.
3. Kerahasiaan (Confidentiality)
Data yang ditransmisikan diproteksi terhadap pengungkapan oleh pihak-pihak yang
tidak berwenang.
4. Keutuhan Data (Data Integrity)
Data yang diterima oleh penerima dipastikan adalah sama dengan data yang dikirim
oleh pengirim.
5. Non-Repudiation
Setiap entitas yang berkomunikasi tidak dapat menolak atau menyangkal atas data
yang telah dikirim atau diterima.
6. Ketersediaan
Layanan ini membuat sumber daya system tetap dapat diakses dan digunakan
Ketika ada permintaan dari pihak yang berwenang.

1.3.3 Sistem Kriptografi Klasik


Sistem kriptografi klasik umumnya telah digunakan jauh sebelum era komputer.
Kriptografi klasik juga dibagi menjadi dua jenis cipher yaitu cipher transposisi yang
mengubah susunan huruf di dalam pesan dan cipher substitusi yang mengganti setiap
huruf atau kelompok huruf dengan sebuah huruf atau kelompok huruf lain. Kriptografi
klasik, teknik enkripsi yang digunakan adalah enkripsi simetris dimana kunci dekripsi
sama dengan kunci enkripsi. Penyandian ini berorientasi pada karakter. Terdapat 5
bagian dalam sistem kriptografi klasik (Sadikin, 2012) yaitu:
1. Plaintext
Pesan atau data dalam bentuk aslinya yang dapat dibaca dan masukan bagi
algoritma enkripsi.
2. Secret Key
2
Masukan bagi algoritma enkripsi merupakan nilai yang bebas terhadap teks asli
dan menentukan hasil keluaran algoritma enkripsi.
3. Ciphertext
Hasil dari proses algoritma enkripsi dan teks asli dianggap telah tersembunyi.
4. Algoritma Enkripsi
Algoritma enkripsi memiliki 2 masukan yaitu teks asli dan kunci rahasia, kedua
masukan tersebut akan diproses sehingga menghasilkan teks sandi.
5. Algoritma Dekripsi
Algoritma dekripsi memiliki 2 masukan yaitu teks sandi dan kunci rahasia,
keduanya akan diproses sehingga menghasilkan teks asli.

A. Caesar Cipher
Merupakan sistem persandian klasik berbasis subtitusi yang sederhana.
Enkripsi dan dekripsi pada sistem persandian Caesar menggunakan operasi
shift. Operasi shift adalah mensubtitusi suatu huruf menjadi huruf lain pada
daftar alfabet yang berada pada-k sebelah kanan atau kiri huruf sebenarnya.
Misal dipilih k = 3.

B. Vigenere Cipher
Merupakan sistem sandi poli-alfabetik yang sederhana. Sistem sandi
poli-alfabetik mengenkripsi sekaligus sebuah teks yang terdiri dari beberapa
huruf. Vigenere cipher menggunakan substitusi dengan fungsi shift seperti pada
Caesar. Fungsi enkripsi dan dekripsi adalah sebagai berikut :
● Enc(p1...pn) = (p1+k1pn+kn) mod 26

● Dec(p1...pn) = (p1-k1.......pn-kn) mod 26

1.3.4 Sistem Kriptografi Modern


Sistem kriptografi modern umumnya berorientasi pada bit. Untuk public key
cryptography, diperlukan teknik enkripsi asimetris dimana kunci dekripsi tidak
sama dengan kunci enkripsi. Enkripsi, dekripsi dan pembuatan kunci untuk teknik
enkripsi asimetris memerlukan komputasi yang lebih intensif dibandingkan
enkripsi simetris, karena enkripsi asimetris menggunakan bilangan-bilangan yang

3
sangat besar. Ada beberapa mekanisme yang berkembang pada kriptografi modern
(Sadikin, 2012):
1. Symmetric Key
Penyandian dengan kunci simetrik adalah penyandian yang kunci enkripsi dan
kunci dekripsinya bernilai sama. Penyandian ini masih digunakan pada kriptografi
modern. Skema penyandian ini dapat digambarkan pada gambar 1.1.

Gambar 1.1 Sistem Kriptografi Simetrik (Sumber: Sadikin, 2012)

Symmetric Key mempunyai 2 jenis sandi, yaitu Block Cipher dan Stream Cipher.

A. Block Cipher
Dalam kriptografi, block cipher adalah algoritma yang beroperasi pada
kelompok bit dengan panjang tetap yang disebut blok dengan transformasi yang
tidak bervariasi yang ditentukan oleh kunci simetris. Block Cipher banyak
digunakan untuk mengimplementasikan enkripsi data masal.
Salah satu contoh block cipher adalah S-DES. S-DES merupakan algoritma
DES (Data Encryption Standard) yang disederhanakan dan tidak digunakan dalam
kenyataan karena mudah untuk diserang. Namun dari algoritma yang
disederhanakan kita dapat memahami konsep yang digunakan oleh algoritma DES.
Berikut algoritmanya:

4
Gambar 1.2 Skema Algoritma DES
Contoh:
IP = [2 6 3 1 4 8 5 7] E/P = [4 1 2 3 2 3 4 1] IP-1 = [4 1 3 5 7 2 8 6]
01 00 11 10 00 01 10 11
𝑆0 = [11 10 01 00] 𝑆1 = [10 00 01 11]
00 10 01 11 11 00 01 00
11 01 11 10 10 01 00 11
Jika teks asli 𝑥 = (10101100) lalu 𝐾1 = (11111000) dan 𝐾2 = (10010011),
apa hasil enkripsi 𝑥 dengan S-DES?

Jawab:
- Masukkan teks asli ke dalam boks permutasi IP, 𝐼𝑃(10101100) =
(01110010)
- Ronde 1. Keluarkan IP sebelah kanan (0010) menjadi masukan boks
𝐸/𝑃(0010) = (00010100)
5
- Lakukan XOR antara 𝐾1 dengan keluaran 𝐸/𝑃 yaitu
(11111000) 𝑋𝑂𝑅 (00010100) = (11101100)
- Keluarkan operasi 𝑋𝑂𝑅 (11101100), 4 bit sebelah kiri dikenakan boks
substitusi 𝑆0 karena masukan adalah (1110) maka lihat pada boks substitusi
𝑆0, keluaranya adalah (11). Lakukan hal yang sama pada 4 bit sebelah kanan
dengan boks sumstitusi 𝑆1 sehingga menghasilkan nilai (01).
- Lakukan permutasi P4 terhadap gabungan 2 bit keluaran substitusi sehingga
menghasilkan 𝑃4(1101) = (1101)
- Lakukan XOR keluaran P4 dengan keluaran IP sebelah kiri yaitu
(1101)𝑋𝑂𝑅(0111) = (1010)
- Jadi keluaran Ronde 1 adalah (10100010)
- Lakukan swap pada keluaran Ronde 1 menjadi (00101010) untuk dimasukan
pada Ronde 2
- Lakukan langkah yang sama untuk Ronde 2 seperti pada Ronde 1 namun
dengan 𝐾2 = (10010011)
- Setelah mendapatkan keluaran Ronde 2 maka lakukan IP-1

B. Stream Cipher
Stream Cipher dibuat dengan tujuan mendapatkan sistem sandi yang
mampu melakukan penyandian unit data terkecil secara real time. Karena tujuan
tersebut maka stream cipher akan mengenkripsi dari 1 bit ke bit selanjutnya, dan
karena hal itu proses enkripsinya memerlukan komputasi yang lama dan sangat
berat.
Salah satu contoh dari stream cipher adalah algoritma RC4, dicirikan
dengan state dengan ukuran 256byte yang dilakukan proses permutasi dan
dicampur oleh kunci dimana kunci yang digunakan berukuran 256byte.

6
Gambar 1.3 Skema Stream Cipher

2. Asymmetric Key
Biasa disebut juga kriptografi kunci publik ini pertama kali diusulkan oleh
Deffie dan Hellman pada tahun 1976. Ide dari kriptografi ini terinspirasi dari cara kerja
gembok, karena gembok dan kuncinya harus berpasangan. Jika suatu kunci bukan
merupakan pasangan dari gembok tersebut maka tidak akan bisa membuka gembok.
Penyandian ini yang banyak dikembangkan. Skema penyandian ini dapat digambarkan
pada Gambar 1.4.

Gambar 1.4 Skema Asymmetric Key


Salah satu algoritma yang terkenal adalah RSA (Rivset, Shamir, and Adleman),
yang merupakan algoritma praktis yang mengimplementasikan sistem kriptografi kunci
publik dengan asumsi fungsi satu arah.

7
Gambar 1.5 Skema Algoritma RSA

1.3.5 Hash
Algoritma hash atau biasa disebut juga hash function merupakan algoritma
kriptografi yang tidak memerlukan key. Algoritma ini bersifat satu arah dimana
jika kita memasukkan data maka akan menghasilkan sebuah checksum atau
fingerprint dari data tersebut.
Algoritma hash biasa digunakan untuk melakukan verifikasi terhadap data
untuk memastikan data yang diterima tetap utuh tidak diubah atau rusak pada saat
proses pengiriman. Contoh hash function adalah MD5, SHA-1 dan SHA-256.

1.3.6 Avalanche Effect


Nilai Avalanche Effect (AE) merupakan salah satu acuan untuk menentukan
baik atau tidaknya sebuah algoritma kriptografi. Perubahan sebuah bit/Byte pada
plaintext atau kunci dapat menghasilkan perubahan beberapa bit/Byte dari
ciphertext. Semakin banyak perubahan bit/Byte saat dilakukan perubahan bit/Byte

8
pada plaintext atau kunci menyatakan semakin baik algoritma kriptografi tersebut.
Berikut ini merupakan rumus perhitungan AE pada umumnya:

∑ 𝑏𝑖𝑡𝑏𝑒𝑟𝑢𝑏𝑎ℎ
𝐴𝑣𝑎𝑙𝑎𝑛𝑐ℎ𝑒 𝐸𝑓𝑓𝑒𝑐𝑡(𝐴𝐸) = ∑ 𝑏𝑖𝑡𝑡𝑜𝑡𝑎𝑙
× 100% (1)

1.4 Langkah Praktikum


Praktikum akan dibagi menjadi beberapa percobaan yaitu enkripsi klasik,
enkripsi simetris, dan hash.
1.4.1 Enkripsi Klasik
1. Pada menu startcenter klik kolom pencarian pada bagian Templates. Cari
Avalanche (classic ciphers).
2. Klik 2x untuk membuka lembar kerjanya.
3. Pastikan metode enkripsi yang digunakan adalah Caesar

Gambar 1.6 Lembar kerja enkripsi klasik


4. Masukkan kata atau kalimat yang akan dienkripsi pada bagian kiri, lalu tekan
tombol Play untuk memulai proses enkripsi.
5. Klik continue pada jendela Avalance Visualization.
6. Ganti satu buah atau beberapa karakter pada bagian text input.
7. Nilai Avalanche Effect akan muncul.
8. Lakukan langkah yang sama untuk metode enkripsi Vigenere.
1.4.2 Enkripsi Simetris
1. Pada menu startcenter klik kolom pencarian pada bagian Templates. Cari
Avalanche (AES).
2. Klik 2x untuk membuka lembar kerjanya.

9
Gambar 1.7 Lembar kerja enkripsi AES
3. Masukkan kata atau kalimat yang akan dienkripsi pada bagian kiri, lalu tekan
tombol Play untuk memulai proses enkripsi.
4. Klik continue pada jendela Avalanche Visualization.
5. Ganti satu buah atau beberapa karakter pada bagian text input.
6. Klik pada tiap-tiap round untuk melihat perubahannya, atau langsung klik ke
General Overview untuk melihat hasilnya.
7. Lakukan langkah yang sama pada algoritma DES dengan menggantinya pada
langkah 1.
1.4.3 Hash
1. Pada menu startcenter klik kolom pencarian pada bagian Templates. Cari
Avalanche (hash function).
2. Klik 2x untuk membuka lembar kerjanya.

Gambar 1.8 Lembar kerja hash function


3. Ganti SHA function pada jendela SHA menjadi SHA-256 dan SHA512.
4. Masukkan kata atau kalimat yang akan dienkripsi pada bagian kiri, lalu tekan
tombol Play untuk memulai proses enkripsi.
5. Klik continue pada jendela Avalanche Visualization.
6. Ganti satu buah atau beberapa karakter pada bagian text input.
7. Nilai Avalanche Effect akan muncul.

10

Anda mungkin juga menyukai