• Tidak ada hasil yang ditemukan

BAB I : PENDAHULUAN

2.3 Pengertian Kriptografi

2.3.1 Konsep Dasar Kriptografi

Kriptografi berasal dari bahasa yunani crypto yang berarti tersembunyi atau rahasia dan graphia yang berarti tulisan. Menurut terminologinya, kriptografi adalah ilmu dan seni untuk menjaga keamanan

pesan ketika pesan dikirim dari suatu tempat ke tempat lain (Ariyus, 2008).

Pesan adalah data atau informasi yang dapat dibaca dan dimengerti

kurir, saluran telekomunikasi,dsb) atau yang disimpan didalam media

perekaman (kertas, storage, dsb). (Munir, 2006).

Ada beberapa pengertian menurut istilah, diantaranya yaitu :

1. Kriptografi adalah ilmu sekaligus seni untuk menjaga kerahasiaan pesan

dengan cara menyandikannya ke dalam bentuk yang tidak dapat

dimengerti lagi maknanya (Munir, 2006).

2. Kriptografi adalah ilmu yang mempelajari bagaimana supaya pesan atau

dokumen kita aman, tidak bisa dibaca oleh pihak yang tidak berhak

(Kurniawan, 2004).

3. Kriptografi adalah ilmu yang mempelajari bagaimana melakukan enkripsi

dan dekripsi, dengan memanfaatkan model matematika (Kurniawan, 2008).

2.3.2 Sistem kriptografi (Cryptosystem)

Cryptosystem adalah prosedur secara matematika, bagaimana suatu

plaintext diubah menjadi ciphertext. Secara umum cyptosystem dibagi menjadi dua tipe prosedur, yaitu:

1. Hashing functions, prosedur one-way (satu arah) untuk menghasilkan

ciphertext dari plaintext. Maksud one-way disini artinya, apabila suatu

plaintext telah diubah menjadi ciphertext, maka ciphertext ini tidak diubah kembali menjadi plaintext.

2. Encryption algorithms, prosedur two-way yang memungkinkan suatu

plaintext diubah menjadi ciphertext ataupun sebaliknya.

Pada encryption algorithms ini sendiri dapat diklasifikasi menjadi dua, antara lain :

a. Symmetric algorithm, memakai share key untuk melakukan enkripsi dan dekripsi.

b. Asymmetric algorithm, memakai dua key, yaitu public key untuk enkripsi dan private key untuk dekripsi (Kurniawan, 2008).

2.3.3 Algoritma kriptografi

Algoritma adalah urutan langkah-langkah logis untuk menyelesaikan

masalah yang disusun secara sistematis. Algoritma kriptografi merupakan

merupakan langkah-langkah logis bagaimana menyembunyikan pesan dari

orang-orang yang tidak berhak atas pesan tersebut (Ariyus, 2008).

Algoritma kriptografi terdiri dari tiga fungsi dasar, yaitu:

1. Enkripsi : merupakan hal yang sangat penting dalam kriptografi,

merupakan pengamanan data yang dikirimkan agar terjaga

kerahasiaannya. Pesan asli disebut plaintext, yang di ubah menjadi kode-kode yang tidak di mengerti. Enkripsi bisa diartikan dengan cipher atau

kode. Beda halnya dengan enkripsi, untuk mengubah teks-asli ke bentuk

teks kode kita menggunakan algoritma yang dapat mengkodekan data yang

kita ingini.

Sebagai contoh : kita mengubah beberapa kata menjadi angka, seperti pada

Tabel 2.1 Contoh Enkripsi

Huruf Asal Huruf diganti

A 4 U 2 I 1 E 3 O 8 PHY 7

Dari tabel diatas, misalkan kita mempunyai kata CRYPTOGRAPHY, maka akan menjadi CR7PT8GR47.

2. Dekripsi : merupakan kebalikan dari enkripsi. Pesan yang telah di enkripsi

dikembalikan ke bentuk asalnya (teks-asli), disebut dengan dekripsi pesan.

Algoritma yang digunakan untuk dekripsi tentu berbeda dengan algoritma

yang digunakan untuk enkripsi. Sebagai contoh: kata CR7PT8GR47

dengan menggunakan algoritma dekripsi tertentu, akan menjadi kata

CRYPTOGRAPHY

3. Kunci : yang dimaksud disini adalah kunci yang dipakai untuk melakukan

enkripsi dan dekripsi. Kunci terbagi menjadi dua bagian, yaitu: kunci

rahasia (private) dan kunci umum (public). Berikut ilustrasi proses enkripsi dan dekripsi :

Ciphertext

Plaintext

Kunci Kunci

Plaintext Enkripsi Dekripsi

Gambar 2.2. Ilustrasi Proses Enkripsi dan Dekripsi

Secara matematis proses enkripsi dan dekripsi dapat

digambarkan sebagai:

C = E(P) dan P = D(C), sehingga

P = D(E(P))

Dimana

P = plaintext

C = ciphertext

E = fungsi enkripsi yang memetakan plaintext ke ciphertext

D = fungsi dekripsi yang memetakan ciphertext ke plaintext

Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga

merupakan aspek keamanan informasi yaitu (Munir, 2006):

1. Kerahasiaan (confidentiality), adalah layanan yang ditujukan untuk menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak

berhak.

2. Integritas data (data integrity), adalah layanan yang menjamin bahwa pesan masih asli/utuh atau belum pernah dimanipulasi selama

3. Otentikasi (authentication), adalah layanan yang berhubungan dengan identifikasi, baik mengidentifikasi kebenaran pihak-pihak yang

berkomunikasi (user authentication atau entity authentication) maupun mengidentifikasi kebenaran sumber pesan (data origin authentication). 4. Nirpenyangkalan (non-repudiation), adalah layanan untuk mencegah

suatu entitas yang berkomunikasi melakukan penyangkalan, yaitu

pengirim pesan menyangkal melakukan pengiriman atau penerima

pesan menyangkal telah melakukan pengiriman.

Kriptosistem membutuhkan suatu kunci, berdasarkan kunci yang

digunakan kriptosistem dibagi menjadi dua yaitu :

2.3.3.1 Kriptosistem Simetrik

Enkripsi dan dekripsi menggunakan kunci yang sama. Contoh: DES,

RC4, Blowfish, AES, IDEA, A5.

2.3.3.2 Kriptosistem Asimetrik

Enkripsi dan dekripsi menggunakan kunci yang berbeda tetapi

merupakan pasangan. Pasangan tersebut terdiri dari :

1. Kunci publik (public )

Kunci ini dapat disebarkan kesiapa saja. Setiap yang mengetahui

kunci ini dapat melakukan enkripsi namun cipherteks yang

dihasilkan hanya dapat didekripsi menggunakan kunci

2. Kunci pribadi (private )

Kunci ini adalah pasangan dari kunci publik, hanya boleh diketahui

oleh pihak yang membangkitkan kunci.

Kriptosistem asimetrik bisa disebut juga kriptosistem kunci publik.

Contoh: RSA, El Gamal, Rabin.

2.3.4 Kriptosistem DES

Data Encryption Standard (DES) adalah salah satu kriptosistem simetrik. Dipublikasikan sejak tahun 1977 dan telah dipakai sebagai standar

selama 18 tahun. Berdasarkan data inputan yang diproses, DES termasuk

dalam kriptosistem blok dimana enkripsi dilakukan terhadap 1 blok data

plaintext sebanyak 64-bit dan kunci 56-bit. Plaintext tersebut dilewatkan kepada 16 tahap enkripsi yang disebut iterasi atau round. Round dapat

digambarkan sebagai berikut:

Li-1 Li-1 Key

Shift Shift

Gambar 2.3.Round pada DES

S-Box Permutation

P-Box P t ti

Expansion Compression

Nilai keluaran setiap round ditukar posisinya sebelum memasuki

round berikutnya. Pada tiap round digunakan nilai kunci yang dibangkitkan

dari kunci input melalui proses schedule. Proses tersebut dapat digambarkan sebagai berikut:

KEY

PERMUTED CHOICE 1

C 0

Gambar 2.4. Schedule pada DES

Bagian yang terpenting dari kriptosistem DES adalah S-box. S-box ini

merupakan fungsi yang memetakan suatu nilai biner 6-bit menjadi nilai biner

LEFTSHIFTS D 0 LEFT SHIFTS C 1 D 1 PERMUTED CHOICE 2 LEFT SHIFTS LEFT SHIFTS

D 15

C 15

LEFT SHIFTS LEFT SHIFTS

D 16 C 16 PERMUTED CHOICE 2 PERMUTED K1 K15 CHOICE 2 K16

4-bit. DES memiliki 8 buah S-box yang merupakan fungsi non linear, dimana

nilai keluarannya tidak dapat dikembalikan atau digunakan untuk mencari

nilai inputan S-box tersebut. S-box dapat digambarkan sebagai berikut :

48-Bit Input

S-Box 1 S-Box 2 S-Box 3 S-Box 4 S-Box 5 S-Box 6 S-Box 7 S-Box 8

32-Bit Output

Gambar 2.5. Hubungan Antar S-box

Sebelum memasuki round pertama plainteks mengalami perubahan posisi bit melalui proses initial permutasi. Dan setelah melewati round

terakhir terjadi perubahan posisi bit melalui proses invers initial permutasi

yang merupakan kebalikan dari initial permutasi. Output dari invers initial

permutasi inilah yang kemudian menjadi blok ciphertext. Enkripsi 1 blok data pada DES dapat digambarkan sebagai berikut :

Cipherteks R0 R1=L0⊕ f(R0,K1) R2=L1 f(R1,K2) R15=L14⊕ f(R14,K15) L16 = R15 L0 L2 = R1 R16=L15 f(R15,K16) L15 = R14 L1 = R0 IP IP-1 f f f K1 K16 K2

Gambar 2.6. Skema Enkripsi DES

Dalam implementasinya DES banyak digunakan untuk mengamankan

data yang bersifat terbatas, dimana klasifikasinya penting tetapi tidak terlalu

rahasia. Kriptosistem ini digunakan karena dianggap cukup kuat dan mudah

diimplementasikan pada perangkat keras maupun perangkat lunak. Diantara

aplikasi penggunaannya adalah pada bidang perbankan yaitu untuk

mengenkripsi nomor Personal Identification Number (PIN) dan penarikan rekening dengan melalui Automated Teller Machine (ATM).

2.3.4.1 Kelebihan DES

1. Proses enkripsinya lebih cepat.

2. kekuatanya terletak pada panjang kuncinya.

2.3.4.2 Kelemahan DES

1. Enkripsi dan dekripsi menggunakan kunci yang sama

2. Panjang kunci DES yang hanya 56 bit, sehingga dengan muda bagi

kriptoanalis untuk dapat membobolnya.

2.3.5 Triple Data Encryption Standard (Triple DES)

3DES (Triple Data Encryption Standard) merupakan suatu algoritma pengembangan dari algoritma DES (Data Encryption Standard). Pada dasarnya algoritma yang digunakan sama, hanya pada 3DES dikembangkan

dengan melakukan enkripsi dengan implementasi algoritma DES sebanyak

tiga kali. 3DES memiliki tiga buah kunci yang berukuran 168-bit (tiga kali

kunci 56-bit dari DES). Coba perhatikan gambar dibawah ini:

Enkripsi DES Kunci 1 Enkripsi DES Kunci 2 Enkripsi DES Kunci 3 ciphertext Enkripsi DES Kunci 1 Enkripsi DES Kunci 2 Enkripsi DES Kunci 3 Plaintext Plaintext

Pada gambar diatas terdapat tiga kunci, yaitu K1, K2, K3. Proses kerja dari

3DES, K1 berfungsi untuk enkripsi, K2 untuk dekripsi, dan K3 untuk

enkripsi, atau juga dikenal dengan mode Encrypt Descrypt Encript (EDE).

Contoh:

Diberikan tiga kunci:

K1 = 0x260b152f31b51c68

K2 = 0x321f0d61a773b558

K3 = 0x519b7331bf104ce3

Dan teks-asli P = 0x403da8a295d3fed9

16 Putaran kunci yang cocok diberikan K1, K2, dan K3. Untuk melakukan

perhitungan, yaitu pada tabel:

Tabel 2.2 : 16 Putaran tiga Kunci

Putaran K1 K2 K3

1 000ced9158c9 5a1ec4b60e98 03e4ee7c63c8

2 588490792e94 710c318334c6 8486dd46ac65

3 54882eb9409b c5a8b4ec83a5 575a226a8ddc

4 a2a006077207 96a696124ecf aab9e009d59b

5 280e26b621e4 7e16225e9191 98664f4f5421

6 e03038a08bc7 Ea906c836569 615718ca496c

7 84867056a693 88c25e6abb00 4499e580db9c

8 c65a127f0549 245b3af0453a 93e853d116b1

10 A311155c0deb 1a915708a7f0 27b30c31c6a6

11 0d02d10ed859 2d405ff9cc05 0a1ce39c0c87

12 1750b843f570 2741ac4a469a f968788e62d5

13 9e01c0a98d28 9a09b19d710d 84e78833e3c1

14 1a4a0dc85e16 9d2a39a252e0 521f17b28503

15 09310c5d42bc 87368cd0ab27 6db841ce2706

16 53248c80ee34 30258f25c11d C9313c0591e3

Enkripsi:

Tahap Pertama : EK1 = 0x7a39786f7ba32349

Tahap Kedua : DK2 = 0x9c60f85369113aea

Tahap Ketiga : EK3 = 0xe22ae33494beb930 = C ( Teks Kode )

Dekripsi:

Tahap Pertama : DK3 = 0x9c60f85369113aea

Tahap Kedua : EK2 = 0x7a39786f7ba32349

Tahap Ketiga : DK1 = 0x403da8a295d3fed9 = P ( Teks asli )

2.3.5.1 Kelebihan Triple DES

1. Proses enkripsi dekripsi 3 kali dari DES jadi lebih aman dibandingkan

dengan DES.

2.3.5.2 Kelemahan Triple DES

1. Proses enkripsi dan dekripsinya menggunakan kunci yang sama.

2. Dapat dianalisis dengan metode linier cryptoanalysis atau davies attack.

Dokumen terkait