Seminar Nasional Teknologi Informatika, "The Future of Computer Vision", 2017, ISBN : 978-602-50006-0-7 Pertukaran kunci Diffie-Hellman dengan Pembangkit Bilangan Acak Linear Congruential Generator (LCG) Ferawaty Ng STMIK Mikroskill [email protected] Abstrak Dalam Kriptografi keamanan suatu pesan sangatlah penting seiring dengan berkembangnya teknologi komputer. Keamanan dalam hal pertukaran pesan/informasi pun sangat dibutuhkan. Algoritma Diffie-Hellman merupakan salah satu kunci yang dapat digunakan dalam pertukaran pesan. Dalam metode Diffie Hellman dapat dilihat bahwa pertukaran pesan/informasi oleh dua pihak sulit untuk diketahui oleh pihak ketiga karna kurangnya informasi tentang kesepakatan kode yang dimiliki oleh dua pihak. I. LATAR BELAKANG Keamanan sistem komputer menjadi semakin penting seiring dengan berkembangnya proses bisnis yang terdigitalisasi. Proses bisnis terdigitalisasi ini merupakan bisnis yang sebagian besar kegiatannya .Menggunakan teknologi komputer serta menjadikan komputer sebagai media penyimpanan data-data sehingga bisa dikatakan media komputer menjadi faktor penting di dalam proses-proses bisnis yang dijalankan. Keamanan sistem komputer yang menjadi sorotan bukan hanya dari perangkat komputernya saja, namun juga keamanan jaringan, software atau program aplikasi dan juga keamanan basis data. II. TINJAUAN PUSTAKA A. Pengertian Kriptografi Kriptografi adalah suatu ilmu untuk menjaga kerahasiaan sebuah pesan. Beberapa istilah penting dalam ilmu kriptografi antara lain : Plaintext : Naskah asli Ciphertext : Pesan yang sudah disandi Enkripsi : Proses melakukan konversi dari plaintext ke ciphertext Dekripsi : Proses melakukan konversi dari ciphertext menuju plaintext Kriptanalisis : Ilmu yang memecahkan ciphertext menjadi plaintext. Kriptologi : Ilmu yang mempelajari Kriptografi Dalam kriptografi pesan asli disebut plaintext serta terdapat istilah enkripsi dan dekripsi. Enkripsi adalah proses yang melakukan perubahan sebuah kode dari yang dapat dimengerti menjadi sebuah kode yang tidak dapat dimengerti (tidak terbaca). 25 Seminar Nasional Teknologi Informatika, "The Future of Computer Vision", 2017, ISBN : 978-602-50006-0-7 Enkripsi dapat diartikan sebagai kode atau cipher. Sedangkan, dekripsi adalah proses untuk mengembalikan informasi teracak menjadi bentuk aslinya dengan menggunakan algoritma yang sama pada saat mengenkripsi. B. Pengertian Algoritma Algoritma adalah Sistim kerja komputer memiliki brainware, hardware, dan software. Tanpa salah satu dari ketiga sistim tersebut, komputer tidak akan berguna. Algoritma adalah susunan yang logis dan sistematis untuk memecahkan suatu masalah atau untuk mencapai tujuan tertentu. Dalam dunia komputer, Algoritma sangat berperan penting dalam pembangunan suatu software. Dalam dunia sehari-hari, mungkin tanpa kita sadari Algoritma telah masuk dalam kehidupan kita. Algoritma berbeda dengan Logaritma. Logaritma merupakan operasi Matematika yang merupakan kebalikan dari eksponen atau pemangkatan. Contoh Logaritma seperti bc= a ditulis sebagai blog a = c (b disebut basis). Contoh nyata Algoritma dalam kehidupan sehari-hari adalah "Cara Membuat Mie Instan". Berikut langkah-langkah cara membuat mie instan: 1. Ambil panci di dalam lemari yang terletak di dapur. 2. Siapkan peralatan yang diperlukan seperti panci, gunting, piring, serta sendok dan garpu. 3. Masukkan bumbu mie instan pada piring 4. Hidupkan kompor, kemudian tuangkan air kurang lebih tiga gelas air ke dalam panci kemudian tunggu hingga air mendidih. 5. Masukkan mie instan ke dalam air mendidih, lalu aduk dan tunggu hingga tiga menit. 6. Tiriskan air di dalam panci, kemudian tuangkan mie pada piring. 7. Aduk mie agar bumbu tercampur merata pada mie kemudian sajikan dengan keadaan hangat. C. Pembangkit Bilangan Acak Metode membangkitkan bilangan acak Linear Congruential Generator (LRG) yaitu dengan menggunakan rumus : Zi = (a * Zi - 1 + c) mod m keterangan : Zi = bilangan acak ke-i dari deretnya Zi-1 = bilangan acak sebelumnya a = faktor pengali c = increment m = modulus Rumus di atas dibutuhkan pembangkit yang disebut dengan Umpan (seed) yang merupakan kunci pembangkitnya adalah Z0. Contoh hasil perhitungan dengan membangkitkan bilangan acak sebanyak 10 kali sebagai berikut : misalkan : Z0 = 2 m=7 a=3 c=5 Z1 = ( a * Z0 + 3 ) mod 4 Z1 = (3 * 2 + 5) mod 7 = 4 Z2 = (3 * 4 + 3) mod 7 = 3 Z3 = (3 * 3 + 3) mod 7 = 0 Z4 = ( a * 0+ 3 ) mod 4 = 5 Z5 = (3 * 2 + 5) mod 7 = 6 Z6 = (3 * 4 + 3) mod 7 = 2 Z7 = (3 * 3 + 3) mod 7 = 4 Z8 = (3 * 2 + 5) mod 7 = 3 Z9 = (3 * 4 + 3) mod 7 = 0 Z10 = (3 * 3 + 3) mod 7 = 5 Bilangan acak yang dibangkitkan berdasarkan perhitungan di atas adalah 4, 3, 0, 5, 6, 2, 4, 3, 0, 5. Dan berdasarkan di atas maka dikatakanlah kemunculan bilangan acak karena tidak terjadi perulangan secara periodik. Untuk mendapatkan hasil bilangan acak yang baik maka perlu diperhatikan kondisi berikut ini : • c relatif prima terhadap m • a > 0 dan m > 0 Untuk mendapatkan angka random yang besar adalah dengan memperbesar nilai m. D. Algoritma Diffie Hellman Algoritma pertukaran kunci Diffie- Hellman (protokol Diffie-Hellman) beguna untuk mempertukarkan kunci rahasia pada komunikasi menggunakan kriptografi simetris. 26 Seminar Nasional Teknologi Informatika, "The Future of Computer Vision", 2017, ISBN : 978-602-50006-0-7 Kekuatan algoritma ini adalah pada sulitnya melakukan perhitungan logaritma diskrit. Langkahlangkahnya adalah sebagai berikut, 1. Misalkan Alice dan Bob adalah pihak-pihak yang berkomunikasi. Mula-mula Alice dan Bob menyepakati 2 buah bilangan yang besar (sebaiknya prima) P dan Q, sedemikian sehingga P < Q. Nilai P dan Q tidak perlu rahasia, bahkan Alice dan Bob dapat membicarakannya melalui saluran yang tidak aman sekalipun. 2. Alice membangkitkan bilangan bulat acak x yang besar dan mengirim hasil perhitungan berikut kepada Bob : X = Px mod Q. 3. Bob membangkitkan bilangan bulat acak y yang besar dan mengirim hasil perhitungan, berikut kepada Alice: Y = P y mod Q. 4. Alice menghitung K = Y x mod Q. 5. Bob menghitung K’ = X y mod Q. Alice Bob Bangkitka n bilangan x Hitung X=Px mod Q Bangkitka n bilangan y Hitung Y=Py mod Q Hitung Key = Xy mod Q Hitung Key = Yx mod Q memiliki informasi tentang x dan y. Dan untuk mengetauinya ia perlu melakukan perhitungan logaritma diskrit yang sangat sulit untuk dikerjakan. Diffie-Hellman key exchange adalah metode dimana subyek menukar kunci rahasia melalui media yang tidak aman tanpa mengekspos kunci. Metode ini diperlihatkan oleh Dr. W. Diffie dan Dr. M. E. Hellman pada tahun 1976 pada papernya “New Directions in Cryptography”. Metode ini memungkinkan dua pengguna untuk bertukar kunci rahasia melalui media yang tidak aman tanpa kunci tambahan. Metode ini memiliki dua parameter sistem, p dan g. Kedua parameter tersebut publik dan dapat digunakan oleh semua pengguna sistem. Parameter p adalah bilangan prima, dan paramater g (sering disebut generator) adalah integer yang lebih kecil dari p yang memiliki properti berikut ini : Untuk setiap bilangan n antara 1 dan p-1 inklusif, ada pemangkatan k pada g sehingga gk = n mod p Penggunaan Algoritma Diffie-Hellman dalam pertukaran kunci dapat dilakukan secara aman dan efektif dalam pemrosesan jika dibandingkan dengan algoritma RSA yang cenderung lebih lama dalam pemrosesan algoritmanya. Proses pertukaran kunci ini dapat dilakukan lebih dari 2 orang asal memenuhi 2 prinsip. Algoritma Diffie-Hellman lebih memfokuskan dalam perubahan nilai kunci dan proses matematis dalam penentuan kunci akhir yang sama. Sedangkan Algoritma RSA lebih memfokuskan pada saat enkripsi dan dekripsi. Kedua algoritma tersebut memiliki tingkat keamanan yang relatif sama kuatnya dan implementasinya pun banyak digunakan di dunia keamanan jaringan. Kedua Algoritma ini samasama mengandalkan kesulitan pemfaktoran dalam bilangan yang bernilai sangat besar.Pertukaran kunci dengan cara yang aman dapat dilakukan dengan algoritma Diffie-Hellman dan algoritma RSA. Gambar 1. Langkah pertukaran Diffie-Hellman Jika perhitungan dilakukan dengan benar maka K = K’. Dengan demikian Alice dan Bob telah memiliki sebuah kunci yang sama tanpa diketahui pihak lain. Dan apabila pihak ketiga ingin menyadap informasi percakapan antara Alice dan Bob ia tidak akan menemukan nilai K karena hanya memiliki informasi tentang X, Y, p, q namun tidak 27 Seminar Nasional Teknologi Informatika, "The Future of Computer Vision", 2017, ISBN : 978-602-50006-0-7 dalam penentuan kunci akhir yang sama. Sedangkan Algoritma RSA lebih memfokuskan pada saat enkripsi dan dekripsi.Kedua algoritma tersebut memiliki tingkat keamanan yang relatif sama kuatnya dan implementasinya pun banyak digunakan di dunia keamanan jaringan. KeduaAlgoritma ini sama-sama mengandalkan kesulitan pemfaktoran dalam bilangan yang bernilai sangat besar.Pertukaran kunci dengan cara yang aman dapat dilakukan dengan algoritma DiffieHellman dan algoritma. Untuk lebih mudah memahami metode DiffieHellman, perhatikan contoh berikut ini : Gambar 2. Proses pengiriman pesan III. PEMBAHASAN Diffie-Hellman merupakan system kiptografi public key yang pertama. Namun Diffie-Hellman ini hanya digunakan untuk key agreement. Penggunaan Diffie-Hellman yaitu apabila 2 orang bertukar pesan seperti A dan B bertukar pesan maka kode pesan hanya dimiliki dan diketahui oleh A dan B saja meskipun pesan mereka dapat dilihat oleh semua orang. Metode Diffie-Hellman key exchange adalah metode dimana subyek menukar kunci rahasia melalui media yang tidak aman tanpa mengekspos kunci. Metode ini diperlihatkan oleh Dr. W. Diffie dan Dr. M. E. Hellman pada tahun 1976 pada papernya “New Directions in Cryptography”. Metode ini memungkinkan dua pengguna untuk bertukar kunci rahasia melalui media yang tidak aman tanpa kunci tambahan. Metode ini memiliki dua parameter sistem, p dan g. Kedua parameter tersebut publik dan dapat digunakan oleh semua pengguna sistem. Parameter p adalah bilangan prima, dan paramater g (sering disebut generator) adalah integer yang lebih kecil dari p yang memiliki properti berikut ini: Untuk setiap bilangan n antara 1 dan p-1 inklusif, ada pemangkatan k pada g sehingga gk = n mod p Penggunaan Algoritma Diffie-Hellman dalam pertukaran kunci dapat dilakukan secara aman dan efektif dalam pemrosesan jika dibandingkan dengan algoritma RSA yang cenderung lebih lama dalam pemrosesan algoritmanya. Proses pertukaran kunci ini dapat dilakukan lebih dari 2 orang asal memenuhi 2 prinsip yang telah dibahas tadi. Algoritma Diffie-Hellman lebih memfokuskan dalam perubahan nilai kunci dan proses matematis p=23 (prima) g=11 (sebuah pembangkit bilangan acak) Alice : A A = gk mod p = 116 mod 23 =9 Bob : B B = gk’ mod p = 115 mod 23 =5 A menerima B = 5 K’ = Ak’ mod p = 95 mod 23 = 59049 mod 23 =8 B menerima A = 9 K = Bk mod p = 56 mod 23 = 15625 mod 23 =8 IV. KESIMPULAN/SARAN Dari penelitian ini dapat disimpulkan bahwa metode Diffie Hellman adalah suatu metode yang termasuk unik karena dalam pertukaran pesan/informasi metode ini terbilang bebas/terbuka karna proses penyampaian pesan pada metode ini dapat dilihat oleh umum,meski begitu metode penyampaian pesan/informasi menggunakan metode ini dapat dikatakan sulit untuk disadap oleh pihak lain yang tidak bersangkutan. DAFTAR PUSTAKA [1] Munir, Rinaldi. "Kriptografi." Informatika, Bandung (2006). [2] Kromodimoeljo, Sentot. "Teori dan Aplikasi Kriptografi." SPK IT Consulting (2009). 28 Seminar Nasional Teknologi Informatika, "The Future of Computer Vision", 2017, ISBN : 978-602-50006-0-7 [3] Ramadhan, Andresta. "Perbandingan Algoritma Linear Congruential Generators, BlumBlumShub, dan Mersenne Twister untuk Membangkitkan Bilangan Acak Semu." Institut Teknologi Bandung. Bandung (2011). [4] Bernard Raditio Parulian, Surya Michrandi Nasution, Tito Waluyo Purboyo” Perancangan dan Implementasi Secure Cloud dengan Menggunakan Diffie - Hellman Key Exchange Dan Triple DES Algorithm (3DES)”,Telkom University. Bandung. [5] Wahyuni,Ana.” Keamanan Pertukaran Kunci Kriptografi dengan Algoritma Hybrid : Diffie-Hellman dan RSA”,Fakultas Ilmu Komputer Universitas AKI. [6] Kocher, Paul. "Timing attacks on implementations of Diffie-Hellman, RSA, DSS, and other systems." Advances in Cryptology—CRYPTO’96. Springer Berlin/Heidelberg, 1996. [7] Steiner, Michael, Gene Tsudik, and Michael Waidner. "Diffie-Hellman key distribution extended to group communication." Proceedings of the 3rd ACM conference on Computer and communications security. ACM, 1996. 29