Analisis Sistem Perpangkatan Modulo

BAB III ANALISIS DAN PERANCANGAN SISTEM Tahap analisis dan perancangan sistem berguna untuk menentukan kebutuhan sistem dan menyesuaikan dengan kebutuhan pengguna sehingga memudahkan proses pembuatan sistem.

3.1 Analisis Sistem

Analisis sistem dilakukan dengan menentukan tujuan pembangunan sistem, memahami cara kerja, dan fungsi-fungsi sistem. Sistem yang akan dibangun ini merupakan sistem kriptografi kunci publik, tujuan pembangunan sistem adalah untuk keamanan data, yaitu mengamankan pesan plainteks milik pengguna dari pihak- pihak yang tidak diinginkan dengan mengubahnya ke bentuk yang sama sekali berbeda dengan pesan aslinya cipherteks melalui proses enkripsi. Algoritma kriptografi yang digunakan pada sistem adalah algoritma ElGamal, selain itu sistem juga menerapkan metode The Sieve of Eratosthenes untuk pembangkit bilangan prima. Algoritma kriptografi kunci publik ElGamal terbagi atas tiga aktivitas, yaitu : 1. Pembangkitan kunci Aktivitas pembangkitan kunci dilakukan oleh penerima pesan. Kunci yang dibangkitkan terdiri dari : a. Kunci p merupkan sembarang bilangan prima, dalam penelitian ini digunakan metode The Sieve of Eratosthenes untuk membangkitkan bilangan prima. b. Kunci a dengan ketentuan a merupakan bilangan bulat dan 2 ≤ a ≤ p-1. c. Kunci α merupakan salah satu akar primitif primitive root dari bilangan prima p , α ≠ p dan α ≠ a. Sebagaimana yang telah disebutkan pada bab yang sebelumnya, primitive root dari sebuah bilangan prima p adalah sebuah bilangan asli g yang mana orde modulo dari g mod p adalah p-1 [10]. d. Kunci y dengan persamaan . Sehingga keluaran dari aktivitas pembangkitan kunci ini adalah tiga kunci publik p, α, y yang akan dibagikan kepada para calon pengirim pesan dan satu kunci privat a yang hanya diketahui oleh penerima pesan. 2. Enkripsi Aktivitas enkripsi dilakukan oleh pengirim pesan dengan masukkan berupa tiga kunci publik p, α, y milik penerima pesan dan pesan asli plainteks m yang akan dikirimkan. Enkripsi dilakukan dengan menghitung cipherteks pertama dan cipherteks kedua . Hasil keluarannya berupa cipherteks c 1 , c 2 dikirimkan kepada penerima pesan. 3. Dekripsi Dekripsi dilakukan oleh penerima pesan dengan masukkan cipherteks c 1 , c 2 , kunci privat a, dan kunci publik p miliknya. Apabila cipherteks dan kunci yang dimasukkan benar maka akan diperoleh keluaran berupa plainteks yang sama dengan pesan aslinya. Berdasarkan pembahasan di atas, sistem yang akan dibangun memiliki tiga fungsi mengikuti aktivitas yang dimiliki algoritma ElGamal, yaitu pembangkit kunci, enkripsi, dan dekripsi. Di dalam fungsi ini terdapat proses-proses pendukung seperti pembangkit bilangan prima metode The Sieve of Eratosthenes, perhitungan modulo, dan proses pengujian apakah sebuah bilangan merupakan akar primitif dari kunci p.

3.1.1 Pembangkit Bilangan Prima