Analisis Algoritma Pohlig-Hellman Analisis Algoritma RSA

BAB III METODE PENELITIAN Sesuai dengan tujuan penelitian yaitu membangun model perangkat lunak algoritma Pohlig-Hellman multiple-key berdasarkan algoritma RSA multiple-key, maka pada bab ini dimulai dengan pembahasan tentang gambaran studi kasus algoritma yang akan dibahas berupa analisis algoritma untuk algoritma Pohlig- Hellman, algoritma RSA, algoritma RSA Multiple-key, teorema Fermat dan konsep algoritma Pohlig-Hellman multiple-key, analisis sistem, perancangan sistem, kamus data dan perancangan antarmuka.

3.1. Bahan-bahan

Penelitian ini akan menggunakan bahasa pemrograman Bloodshed Dev-Pascal versi 1.9.2 FreePascal untuk perancangan program algoritma Pohlig-Hellman multiple-key dan beberapa perlengkapan lainnya juga akan digunakan sebagai alat pendukung dalam perancangan algoritma.

3.2. Analisis Algoritma

Untuk membuat rancangan Algoritma Pohlig-Hellman multiple-key maka perlu terlebih dahulu menganalisis algoritma Pohlig-Hellman, algoritma RSA, algoritma RSA Multiple-key dan Teorema Fermat.

3.2.1. Analisis Algoritma Pohlig-Hellman

Dalam tesis ini algoritma Pohlig-Hellman menjadi dasar untuk dikembangkan kemudian menggunakan konsep multiple-key. Konsep dasar algoritma Pohlig- Hellman adalah: BAB III Universitas Sumatera Utara 1. Pembangkitan Bilangan Prima Bilangan Prima p diambil secara acak dan diuji dengan Teorema Fermat. Dalam hal ini nilai p disarankan agar diambil dengan jumlah yang besar. 2. Perhitungan nilai totient Nilai totient � didapat dari � � = � −1 3. Perhitungan nilai kunci enkripsi e Nilai kunci enkripsi e dapat dihitung dengan syarat nilai 1 � � �. Dan nilai e tersebut adalah relatif prima dengan � � dihitung berdasarkan GCD e, � � = 1 4. Perhitungan nilai kunci dekripsi d Nilai d sebagai invers dari e modulo � , dinotasikan � � mod � � = 1 5. Enkripsi Enkripsi merupakan proses pengubahan plaintext menjadi ciphertext. Untuk melakukan enkripsi dapat dilakukan dengan rumus � = � � ��� � 6. Dekripsi Dekripsi merupakan proses pengubahan ciphertext menjadi plaintext. Untuk melakukan dekripsi dapat dilakukan dengan rumus � = � � ��� � Terdapat beberapa variabel yang menjadi dasar pada algoritma seperti bilangan prima p, nilai totient �, nilai kunci enkripsi e, nilai kunci dekripsi d. Setelah semua kunci ini dipenuhi maka selanjutnya dapat dilakukan proses enkripsi dan dekripsi. Setiap nilai-nilai yang didapati bersifat rahasia yang hanya boleh diketahui oleh pengirim dan penerima pesan. Cara yang aman dalam pembangkitan nilai sebaiknya dilakukan secara acak sehingga dapat mempersulit pihak lain untuk melakukan penyadapan.

3.2.2. Analisis Algoritma RSA

Algoritma kriptografi Pohlig-Hellman, algoritma RSA pada dasarnya melakukan cara yang sama dalam enkripsi dan dekripsi. Kebutuhan-kebutuhan yang menjadi dasar dalam analisis algoritma RSA adalah : 1. Pembangkitan Bilangan Prima Universitas Sumatera Utara Menentukan 2 bilangan prima p dan q secara acak dimana � ≠ �. Dalam rancangan ini digunakan teorema Fermat untuk pengujian bilangan prima dan dipilih secara acak. 2. Perhitungan nilai n Nilai n didapat dari perkalian p dan q. 3. Perhitungan nilai totient Nilai totient � = � − 1� − 1. Hasil �� digunakan untuk menentukan nilai kunci enkripsi e yang digunakan untuk melakukan enkripsi. 4. Perhitungan nilai kunci enkripsi e Nilai kunci enkripsi e diambil berdasarkan GCD ��, �=1 ; 1 � �n 5. Perhitungan nilai kunci dekripsi d. Nilai kunci dekripsi d dihitung dengan rumus � = � −1 ��� �� 6. Enkripsi Enkripsi merupakan proses pengubahan plaintext menjadi ciphertext. Untuk melakukan enkripsi dapat dilakukan dengan rumus � = � � ��� � dimana pada plaintext m n 7. Dekripsi Dekripsi merupakan kebalikan dari enkripsi. Masukannya adalah ciphertext dan keluarannya adalah plaintext. Untuk melakukan dekripsi dapat dilakukan dengan rumus � = � � ��� � Dalam algoritma RSA terdapat beberapa variabel yang menjadi dasar pada algoritma seperti dua bilangan prima p dan q, nilai n, nilai totient �, nilai kunci enkripsi e, nilai kunci dekripsi d. Setelah semua kunci ini dipenuhi maka selanjutnya dapat dilakukan proses enkripsi dan dekripsi. Universitas Sumatera Utara

3.2.3. Analisis Algoritma RSA Multiple-key