• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

2.1 Kriptografi

2.1.4. Distribusi kunci simetris

Masalah utama dari kriptografi simetris adalah sulitnya mendistribusikan kunci. Kunci tidak dapat dipertukarkan dengan aman melalui saluran data, kecuali di-enkripsi. Dengan mengenkripsi kunci, bagaimanapun pasti membutuhkan kunci lain. Dan kunci tersebut perlu dipertukarkan antara kedua entitas yang akan berkomunikasi(pengirim dan penerima SMS). Salah satu solusi dalam pendistribusian kunci adalah dengan cara manual misalnya dengan surat pos.

Distribusi manual memiliki kelemahan seperti mahal, memakan waktu, dan rentan terhadap kesalahan. Dua pendekatan otomatis untuk mendistribusikan kunci yang dibahas dalam bagian ini adalah : ANSI (American National Standards Institute) standar X9.17, Manajemen kunci dan pertukaran kunci Diffie / Hellman.

Pendekatan ANSI X9.17

Pendekatan ANSI X9.17 didasarkan pada hirarki kunci. Pada hirarki kunci, bagian bawah adalah kunci data(DK), kunci data ini digunakan untuk mengenkripsi dan mendekripsi pesan. Sedangkan dibagian paling atas dari hirarki kunci adalah kunci enkripsi (KKM) yang harus didistribusikan secara manual. Kunci KKM memiliki rentan hidup yang lebih lama daripada kunci DK. Pada hirarki kunci dua lapis, KKM berguna untuk mengenkripsi DK. Kemudian DK didistribusikan secara elektronik untuk mengenkripsi dan mendekripsi pesan. Model hirarki kunci 2 lapis tersebut dapat ditingkatkan menjadi 3 lapis. Dalam model hirarki kunci tiga lapis, KKM tidak digunakan untuk mengenkripsi kunci secara langsung, tetapi untuk mengenkripsi kunci enkripsi kunci lainnya(KK). KK yang dipertukarkan secara elektronik, digunakan untuk mengenkripsi kunci data. Pada gambar 2.5 menggambarkan pertukaran kunci antara dua pihak yang menggunakan model hirarki kunci tiga lapis.

Pada gambar diatas mengilustrasikan dua pengguna bertukar kunci secara langsung, yang dikenal dengan Point-to-Point. Selain itu standar ANSI X9.17 juga memberikan gambaran lain mengenai distribusi kunci dengan Key Distribution Center(KDC) dan Key Translation Center(KTC) yang memungkinkan untuk memanajemen kunci yang terpusat. Manajemen Kunci terpusat ditunjukan pada gambar 2.6

Gambar 2. 6 Manajemen Kunci

Perbedaan antara KDC dan KTC adalah bahwa KDC menghasilkan kunci bagi penggunanya sedangkan KTC digunakan ketika kedua entitas(pengirim dan penerima) membutuhkan manajemen kunci.

Key Distribution Center (KDC)

Pada mekanisme KDC dimisalkan Alice dan Bob ingin berkomunikasi dan menggunakan kunci simetris. Mereka tidak pernah bertemu (mungkin mereka hanya bertemu disebuah chat online)

dengan demikian belum ada kesepakatan mengenai kunci yang akan digunakan. Bagaimana mereka bisa setuju atau menyepakati kunci. Solusi yang sering digunakan adalah menggunakan KDC.

KDC adalah server yang dapat menghasilkan kunci yang berbeda pada masing-masing pengguna yang terdaftar dengan melakukan register terlebih dahulu untuk mendaftar ke KDC. Diilustrasikan bahwa Alice dan Bob adalah pengguna terdaftar KDC, mereka hanya tahu kunci masing-masing, KA – KDC dan KB – KDC.

Alice mengetahui

R1

Bob mengetahui R1Bob mengetahui R1

Alice dan Bob berkomunikasi menggunakan kunci session yaitu R1

Gambar 2. 7 Cara kerja Key Distribution Center

1. Langkah pertama yang harus dilakukan Alice adalah menggunakan KA – KDC untuk mengenkripsi komunikasinya dengan KDC, Alice mengirimkan pesan ke KDC dan mengatakan bahwa dia (A) ingin berkomunikasi dengan Bob (B).

2. Setelah itu KDC akan mendekripsi KA – KDC (A,B) dan kemudian KDC mengotentikasi Alice. KDC kemudian

menghasilkan nomor acak, R1. Ini adalah nilai yang akan menjadi kunci bersama untuk Alice dan Bob dan akan digunakan untuk melakukan enkripsi simetris ketika mereka berkomunikasi satu sama lain. R1 ini disebut dengan kunci one-time session. Lalu KDC menginformasikan kepada Alice dan Bob mengenai kunci one-time session mereka yaitu R1. KDC mengirimkan kembali pesan terenkripsi ke Alice berisi sebagai berikut :

 R1 merupakan kunci one-time session yang akan digunakan Alice dan Bob untuk berkomunikasi.

 Sepasang nilai A, dan R1, Dienkripsi oleh KDC menggunakan kunci Bob, KB – KDC. Kunci yang dihasilkan adalah KB-KDC (A, R1).

3. Selanjutnya Pesan dari KDC ke Alice adalah KA – KDC (R1, KB – KDC (R1)). Alice menerima pesan dari KDC dan memverifikasi R1. Dan Alice mengetahui kunci One-Time Sessionnya adalah R1. Alice juga mengekstrak KB – KDC (A, R1) dan memforward pesan kepada Bob.

4. Bob mendekripsi pesan yang diterima, KB – KDC (A, R1). Bob mengetahui bahwa R1 adalah kunci one-time sessionnya, dan Alice (A) yang akan berkomunikasi dengan dia. Bob harus mengotentikasi Alice terlebih dahulu menggunakan R1.

Keuntungan menggunakan KDC adalah fleksibilitas dan efisiensi. Karena pengguna hanya perlu bertukar dan menyimpan KKM. Bukan KKM dari setiap penerima.

One-Time Session Key

Kita telah melihat diatas bahwa kunci one-time session dihasilkan oleh KDC untuk digunakan dalam enkripsi kunci simetris antara dua entitas. Dengan menggunakan kunci one-time session dari KDC pengguna dibebaskan dari keharusan untuk menyepakati kunci bersama untuk setiap entitas dengan siapa ingin berkomunikasi. Sebaliknya, pengguna hanya perlu memiliki satu kunci rahasia bersama untuk berkomunikasi dengan KDC, dan KDC akan menginformasikan kunci one-time session dari KDC untuk semua komunikasi dengan entitas lainnya.

Kunci one-time session juga digunakan dalam kriptografi kunci publik . Sistem kunci publik sering digunakan untuk tujuan otentikasi. Setelah dua pihak telah dikonfirmasi, mereka kemudian menggunakan komunikasi kunci public yang dienkripsi untuk menyepakati satu kali

kunci simetris bersama . Session key simetris ini kemudian digunakan untuk mengenkripsi pesan.

Pertukaran kunci dengan Algoritma Diffie / Helman

Solusi lain untuk masalah distribusi kunci rahasia adalah pertukaran kunci Diffie / Hellman. Algoritma ini pertama kali diperkenalkan oleh Whitfield Diffie dan Martin Hellman pada tahun 1975. Mereka berdua adalah peneliti pada universitas Stanford. Mereka memperkenalkan algoritma ini untuk memberi solusi atas pertukaran informasi secara rahasia.

Algoritma ini tidak berdasarkan pada proses enkripsi dan dekripsi, melainkan lebih kepada proses matematika yang dilakukan untuk menghasilkan kunci rahasia yang dapat disebarkan secara bebas tanpa harus khawatir karena kunci rahasia tersebut hanya dapat didekripsi hanya oleh pengirim dan penerima pesan. Dasar dari algoritma ini adalah matematika dasar dari aljabar eksponen dan aritmatika modulus.

Langkah-langkah dalam pertukaran kunci dengan menggunakan algoritma Diffie-Hellman adalah sebagai berikut:

1. Pilih bilangan prima yang besar, p dan bilangan integer yang tidak melebihi dari nilai p, g, biasa disebut bilangan basis atau generator. Kedua bilangan tersebut dapat diketahui secara publik.

2. Pilih sebuah bilangan acak oleh pengirim, x, bilangan ini tidak boleh diketahui oleh orang lain.

3. Pilih sebuah bilangan acak oleh penerima, y, bilangan ini tidak boleh diketahui oleh orang lain.

4. Pengirim menghitung A = gx mod p. Bilangan A ini dapat diketahui secara publik.

5. Penerima menghitung B = gy mod p. Bilangan B ini dapat diketahui secara publik.

6. Lakukan pertukaran bilangan A dan B terhadap pengirim dan penerima.

7. Lalu Pengirim menghitung ka = Bx mod p.

8. Penerima menghitung kb = Ay mod p.

9. Berdasarkan hukum aljabar nilai ka sama dengan kb atau bisa disebut ka = kb = k. Sehingga pengirim dan penerima tersebut mengetahui kunci rahasia tersebut “k”.

Contoh penggunaan dari algoritma ini adalah:

1. Alice dan Bob menetapkan p = 23 dan g = 5.

2. Eve (penyadap) tahu nilai p dan g.

4. Alice menghitung nilai A = 56 mod 23 = 8.

5. Bob menghitung nilai B = 515 mod 23 = 19.

6. Alice dan Bob bertukar nilai A dan B.

7. Eve menyadap mereka dan tahu nilai A dan B.

8. Alice melakukan perhitungan ka = 196 mod 23 = 2.

9. Bob melakukan perhitungan kb = 815 mod 23 = 2.

10. Eve mengetahui nilai p , g, A, dan B tetapi dia tidak dapat mengetahui kunci rahasia, k dari Bob dan Alice. Alice dan Bob dapat mengetahui kunci rahasia tersebut dan dapat bertukar pesan dengan aman tanpa harus diketahui oleh Eve. Eve hanya dapat mengetahui nilai p, g, A, dan B tetapi tidak dapat menghitung kunci rahasia dari mereka berdua. Sehingga Eve tidak dapat mengetahui pesan rahasia apa antara Alice dan Bob.

Dokumen terkait