• Tidak ada hasil yang ditemukan

Langkah terakhir dari protokol ini yaitu dan akan mengkalkulasi nilai yang diterima dengan nilai atau kunci rahasia masing-masing yang kemudian akan menghasilkan kunci yang sama, misalkan . setelah menerima pesan mod dari kemudian menghitung dengan rumus mod , begitupun dengan akan menghitung nilai dengan rumus mod . Apabila kalkulasi benar maka akan didapakan nilai dan yang sama, atau .

{ }

{ }

22

Dengan demikian dan berhasil membangkitkan sebuah kunci sesi rahasia yaitu dengan menggunakan protokol pertukaran kunci Diffie-Hellman. Kunci ini hanya diketahui oleh dan , dan kemudian akan digunakan oleh keduanya dalam berkomunikasi secara rahasia pada suatu waktu tertentu dengan menggunakan kunci tersebut pada suatu algoritme kriptografi simetris.

Implementasi Protokol Pertukaran Kunci Diffie Hellman

Pada bab ini dijelaskan bagaimana proses pembangkitan kunci dengan protokol pertukaran kunci Diffie-Hellman menggunakan bantuan perangkat lunak

Maple 13.

Dua party, misalkan dan akan membangkitkan sebuah kunci dengan menggunakan protokol pertukaran kunci Diffie-Hellman, yang nantinya akan digunakan dalam protokol komunikasi dengan menggunakan kriptografi simetris.

Langkah pertama dan telah sepakat untuk memilih secara acak bilanganbulat positif yang besar dan merupakan bilangan prima, misalkan . Dengan bantuan perangkat lunak Maple 13, dengan menggunakan Algoritme 2 didapatkan secara acak dengan nilai yang merupakan sebuah bilangan prima.

Setelah terpilih , langkah selanjutnya adalah dan kembali bersepakat untuk memilih secara acak generator dari dengan . Dengan bantuan perangkat lunak Maple 13, dan dengan menggunakan Algoritme 3, telah terpilih secara acak generator dari yaitu 271.

Akan diperiksa apakah benar merupakan generator dari atau bukan. Dengan melakukan penghitungan didapatkan nilai . Selanjutnya sesuai dengan algoritme tes elemen prima primitif, dihitung masing-masing nilai dari mod dan mod yang hasilnya secara berturut-turut yaitu dan . Berdasarkan algoritme tes elemen prima primitif karena hasil keduanya yaitu mod dan mod , maka 271 adalah benar merupakan generator dari .

Bilangan dan tidak bersifat rahasia, tidak akan menjadi masalah apabila diketahui oleh publik. Sehingga ketika proses pengambilan atau pemilihan kedua bilangan tersebut meskipun jarak antara kedua party atau posisinya sangat berjauhan, misalkan berbeda negara atau benua, mereka tetap dapat membentuk suatu kunci menggunakan algoritme Diffie-Hellman pada jaringan tidak aman sekalipun.

Langkah kedua setelah terpilih bilangan dan , dan masing-masing memilih sebuah bilangan acak pada selang ], misalkan memilih dan memilih . Kedua bilangan ini bersifat rahasia, hanya dan yang mengetahui bilangannya masing-masing. Dengan menggunakan pembangkit bilangan bulat acak pada perangkat lunak Maple 13, didapatkan bilangan yang hanya diketahui oleh , dan bilangan yang hanya diketahui oleh .

Selanjutnya dari bilangan yang telah ada pada yaitu , kemudian menghitung nilai mod mod . Begitu pula dengan , dari bilangan yang dimilikinya yaitu kemudian menghitung

23 Setelah masing-masing menghitung nilai dan , maka dan saling bertukar nilai tersebut. mengirimkan bilangan kepada ,dan mengirimkan nilai kepada . Sama seperti bilangan dan , bilangan dan ini juga tidak bersifat rahasia. Sehingga dan dapat menggunakan jalur tidak aman sekalipun ketika saling bertukar bilangan dan .

Langkah terakhir, setelah menerima dari dan menerima dari , keduanya menghitung bilangan yang mereka terima dengan bilangan rahasia masing-masing untuk mendapatkan suatu nilai yang merupakan kunci rahasia bersama. Dengan demikian menghitung mod mod dan menghitung mod mod . Jika perhitungan benar maka dan

akan mendapatkan hasil yang sama yaitu . Kemudian inilah yang disebut dengan kunci rahasia bersama yang telah dibangkitkan atau dibentuk secara bersama-sama oleh dan dengan menggunakan protokol pertukaran kunci Diffie-Hellman. Selanjutnya nlai ini dapat digunakan dalam suatu algoritme kriptografi simetris.

Analisis Keamanan Protokol Pertukaran Kunci Diffie-Hellman

Protokol persetujuan kunci Diffie-Hellman ini pada dasarnya digunakan untuk membentuk sebuah kunci sesi yang bersifat rahasia dan aman dari pihak-pihak yang tidak berhak untuk mengetahuinya, atau biasa disebut dengan penyerang. Misalkan adalah seorang penyerang yang ingin mengetahui kunci sesi milik dan , agar dapat dengan mudah untuk mengetahui pesan rahasia yang sedang di pertukarkan oleh dan , pihak penyerang yaitu akan berusaha untuk mencari nilai yang merupakan rahasia A dan nilai yang merupakan rahasia B dari beberapa nilai yang dipublikasikan antara lain dan . Jika mampu membongkar rahasia dan yaitu nilai dan , maka dengan mudah kunci sesi rahasia yaitu dapat diketahui oleh .

Versi dasar dari protokol Diffie-Hellman memberikan perlindungan kerahasiaan kunci yang terbentuk dari penyerang pasif, yaitu penyerang yang hanya memantau atau memonitor saluran komunikasi. Tetapi tidak melindungi kerahasiaan kunci dari penyerang aktif, yaitu penyerang yang bisa menghapus, menambahkan atau masuk melalui suatu jalur komunikasi untuk merubah pengiriman ke saluran komunikasi yang lain. Penyerang aktif ini biasa disebut dengan man-in-the-middle attack.

Cara yang dilakukan dalam penyerangan man-in-the-middle attack akan dijelasan dalam sebuah contoh berikut. Misal adalah penyerang dan merupakan pihak yang tidak berhak untuk mendapatkan kunci rahasia yang sedang dibentuk oleh dan . Karena nilai berada dijalur publik maka dapat dengan mudah mendapatkan dan menahan nilai milik yang dikirim kepada kemudian menggantikannya dengan nilai dengan adalah kunci rahasia milik dia sendiri, lalu dikirimkannya kepada . Begitu pula ketika mengirim nilai kepada , dengan mudah mendapatkan dan menahan nilai tersebut, kemudian menggantikannya dengan nilai di mana juga adalah kunci rahasia milik dia sendiri, lalu mengirimkannya kepada . Dengan demikian tidak akan menerima nilai yang dikirim oleh ,

24

tapi menerima nilai yang dikirimkan oleh . Begitupun dengan yang tidak akan menerima nilai yang dikirimkan oleh , tapi menerima nilai yang dikirimkan oleh Sehingga pada akhirnya akan terbentuk dua buah kunci rahasia bersama yaitu kunci rahasia bersama milik dan yaitu , serta kunci kunci rahasia bersama milik dan yaitu

.

Setelah terjadi proses pembentukan kunci antara dan yang diserang oleh , ketika akan mengirim pesan rahasia kepada , akan mengenkripsi pesan tersebut kemudian mengirimkannya kepada melalui jalur publik, karena dirasa cukup aman dengan meyakini bahwa hanya yang memiliki kunci sesi yang sama dengannya sehingga tidak akan ada yang mampu mendekripsi pesan rahasia tersebut kecuali Akan tetapi ternyata kunci sesi rahasia bersama milik tidak sama dengan melainkan dengan , sehingga yang dapat mendekripsi pesan tersebut bukanlah tetapi . Kemudian dapat membaca pesan rahasia milik yang akan dikirimkan kepada , atau bahkan mengubah isi pesannya lalu mengenkripsinya kembali, dan mengirim pesan milik sendiri kepada . Sehingga pesan yang diterima oleh adalah pesan dari bukan dari . Hal ini juga berlaku sebaliknya ketika berniat ingin mengirim pesan rahasia kepada melalui jalur publik.

Kelemahan ini terjadi karena pada protokol pertukaran kunci Diffie-Hellman versi dasar tidak mengautentifikasi kedua pihak yang berkomunikasi sehingga kejadian seperti pada contoh yang sebelumnya dijelaskan dapat terjadi. Agar lebih aman proses autentifikasi perlu diimplementasikan dalam protokol ini, sehingga ketika proses pembentukan kunci sedang berlangsung setiap party dapat dengan yakin bahwa proses pertukaran kunci sedang dilakukan dengan orang yang diinginkan. Dengan demikian ancaman dari man-in-the-middle attack dapat dihindari.

Dokumen terkait