BAB II TINJAUAN PUSTAKA 2.1. Kriptografi - Teknik Pemecahan Kunci Privat Elgamal dengan Algoritma Baby Step Giant Step

BAB II TINJAUAN PUSTAKA

2.1. Kriptografi

  Kriptografi secara etimologi berasal dari bahasa Yunani kryptos yang artinya tersembunyi dan graphien yang artinya menulis, sehingga kriptografi merupakan metode pembelajaran untuk mengirimkan pesan secara rahasia. (Mollin, 2007).

  Menurut Katz (2007), kriptografi adalah studi ilmiah atau teknik untuk mengamankan informasi digital, transaksi, dan komputasi yang terdistribusi.

  Kriptografi memiliki beberapa istilah atau terminologi, antara lain (Schneier,1996) : 1.

  Pengirim dan Penerima Misalkan seorang pengirim ingin mengirim pesan pada penerima.

  Kemudian, pengirim ingin mengirim pesan secara aman. Pengirim ingin menjamin bahwa penyadap tidak bisa membaca pesannya.

  2. Pesan dan Enkripsi Sebuah pesan disebut pesan murni (plaintext) atau pesan yang akan dikirim. Proses untuk menyamarkan pesan untuk menyembunyikan maksudnya disebut enkripsi(encryption). Pesan yang dienkripsi disebut ciphertext. Proses untuk mengembalikan ciphertext menjadi plaintext disebut dekripsi(decryption).

  3. Algoritma dan Kunci Algoritma kriptografi disebut juga cipher, adalah fungsi matematis yang digunakan untuk enkripsi dan dekripsi. Kunci digunakan sebagai pengenal antara proses enkripsi dan dekripsi.

4. Algoritma Simetris Ada dua tipe algoritma yang berbasis kunci yaitu simetris dan asimetris.

  Algoritma simetris kadang-kadang disebut juga algoritma konvensional, adalah algoritma dimana kunci enkripsi dapat dihitung dari kunci dekripsi dan sebaliknya. Di kebanyakan algoritma simetris, kunci enkripsi dan dekripsi adalah sama. Algoritma ini juga disebut algoritma kunci rahasia, algoritma kunci tunggal, atau algoritma satu kunci, membutuhkan persetujuan antara pengirim dan penerima sebelum mereka bisa melakukan komunikasi secara aman. Proses Enkripsi dan Dekripsi algoritma simetris dapat dilihat pada Gambar 2.1.

Gambar 2.1. Proses Enkripsi dan Dekripsi

  Algoritma Simetris(Paar et all, 20010) 5. Algoritma Asimetris

  Algoritma kunci publik didesain agar kunci yang digunakan untuk enkripsi berbeda dengan kunci yang digunakan untuk dekripsi. Algoritma ini dikatakan kunci publik karena kunci enkripsi dapat dibuat publik. Seseorang yang tidak bersangkutan dapat menggunakan kunci enkripsi untuk melakukan enkripsi, tetapi hanya orang-orang tertentu saja yang dapat melakukan dekripsi. Kunci enkripsi sering disebut kunci publik, dan kunci dekripsi sering disebut kunci privat. Proses enkripsi dan dekripsi algoritma asimetris dapat dilihat pada Gambar 2.2.

Gambar 2.2. Proses Enkripsi dan Dekripsi

  Algoritma Asimetris(Paar et all, 2010) 6. Kriptanalisis

  Keseluruhan tujuan dari kriptografi adalah untuk menjaga plaintext dan kunci agar tidak diketahui oleh penyadap. Penyadap diasumsikan memiliki akses penuh untuk komunikasi antara pengirim dan penerima.

  Kriptanalisis adalah ilmu untuk memulihkan plaintext dari sebuah pesan tanpa akses ke kunci. Kriptanalisis yang berhasil mampu memulihkan plaintext atau kuncinya. Dapat juga menemukan kelemahan dari sebuah kriptosistem.

7. Keamanan Algoritma

  Algoritma yang berbeda dapat menawarkan tingkat keamanan yang berbeda, tergantung pada seberapa rumit untuk dipecahkan. Jika harga yang dibutuhkan untuk memecahkan algoritma lebih besar dari nilai data yang dienkripsi, maka kemungkinan pesan tersebut kemungkinan aman. Jika waktu yang dibutuhkan untuk memecahkan algoritma lebih lama dari lamanya data tersebut harus rahasia, maka pesan tersebut juga kemungkinan aman. Jika jumlah data yang dienkripsi dengan sebuah kunci lebih kecil dari data yang dibutuhkan untuk memecahkan algoritma tersebut, maka pesan kemungkinan aman.

2.2. Keamanan Data

  Menurut Schneier (1996) selain menyediakan kerahasiaan, kriptografi sering diminta untuk melakukan pekerjaan lain yaitu :

  1. Autentikasi, pesan harus memungkinkan penerima untuk bisa memastikan asalnya. 2. pesan harus memungkinkan penerima untuk

  Integritas, memverifikasi pesan tersebut tidak dimodifikasi sewaktu proses pengiriman.

  3. Non-repudiasi, pengirim tidak bisa menyangkal bahwa dia adalah pengirim pesan.

  2.3. Bilangan Prima dan Komposit

  Misalkan ada bilangan bulat positif 1, 2, 3, 4, ... Di antara bilangan tersebut ada bilangan prima dan bilangan komposit. Bilangan komposit adalah bilangan yang memiliki faktor ≠ 1, seperti 15 = 3,5; atau 16 = 2,8. Karakteristik bilangan prima adalah hanya memiliki faktor sebanyak 1 (Riesel, 2011).

  2.4. Bilangan Prima Aman

  Bilangan prima aman adalah bilangan prima berbentuk p = 2q + 1 dimana q adalah prima (Menezes et all, 1996). Langkah-langkah untuk menentukan suatu bilangan prima aman atau tidak adalah sebagai berikut : 1.

  Pilih bilangan prima p ≥ 5

  �− 2.

  Hitung q = 3. Jika q adalah bilangan prima, maka output (“prima aman”) 4. Jika q komposit, maka output (“bukan prima aman”) Contoh 1 : 1.

  Pilih bilangan prima p = 13

  −

  2. = 6 q =

  3. q komposit, maka p = 13 bukan prima aman.

  Contoh 2 : 1.

  Pilih bilangan prima p = 23

  −

  2. = 11 q =

  3. q adalah prima, makan p = 23 adalah prima aman.

  2.5. Faktor Persekutuan Terbesar ( Greatest Common Divisor)

  Bilangan bulat d yang tidak negatif adalah faktor persekutuan terbesar dari bilangan bulat a dan b, ditulis d = gcd(a,b), jika : (i) d adalah faktor persekutuan dari a dan b dan (ii) jika c|a dan c|b, maka c|d. Demikian dapat dinyatakan bahwa, gcd(a,b) adalah bilangan bulat positif terbesar yang membagi a dan b, dengan pengecualian gcd(0,0) = 0 (Menezes et all, 1996).

  Contoh : Faktor persekutuan dari 12 dan 18 adalah {1, 2, 3, 6}, maka gcd(12,18) adalah 6.

  2.6. Relatif Prima

  Dua angka a dan b dikatakan relatif prima jika angka-angka tersebut tidak memiliki faktor persekutuan ( gcd(a, b) = 1 ) (Batten, 2013).

  Contoh : 19 dan 13 adalah relatif prima dikarenakan gcd(19,13) = 1. 6 dan 8 tidak relatif prima dikarenakan gcd(6,8) = 2.

  2.7. Kekongruenan

  Jika a dan b adalah bilangan bulat, maka a dikatakan kongruen ke b modulo n, ditulis

  a

  ≡ b (mod n), jika n habis membagi (a b). Bilangan bulat n disebut modulus kongruen (Menezes et all, 1996).

  Contoh :

  24 ≡ 4 (mod 5) karena 24 – 4 = 20 dan n = 5 habis membagi 20.

  2.8. Fungsi Euler (

  �) Untuk n adalah bilangan bulat < n yang relatif prima dengan n, dengan

  ≥ 1, � ketentuan (Menezes et all, 1996) :

  1.

  = p – 1. Jika p adalah bilangan prima, maka � 2. = .

  Jika gcd(m , n) = 1, maka � � �

  � � � �

  3. , , ... , adalah faktorisasi prima dari n, maka Jika n = = n ...

  � − − −

  � � � �

  Contoh : 1.

  � = − = 2. =

  � � ∗ = ∗ = 3. =

  � � = − = =

  2.9. Ordo Modulo

  Jika gcd(a, n) = 1 maka ordo a modulo n adalah adalah bilangan bulat positif terkecil

  � e sehingga � = mod . Dalam hal ini ditulis e = � � (Batten, 2013).

  �

  Contoh : :

  � , , , .

  = 9 mod = mod = mod = mod Maka � = .

  2.10. Modulo Invers Jika a dan m relatif prima dan m > 1, maka dapat ditemukan invers dari a modulo m.

  • 1

  Invers dari a(mod m), disebut juga invers perkalian, yaitu bilangan bulat a (Menezes et all, 1996).

  Contoh :

  • 4 1. (mod 7). Tentukan invers modulonya.

  Diberikan m ≡ 3

  • 1

  4

  2. ) (mod 7) m ≡ (3

  • -1

  3. ) (mod 7) Tentukan invers modulo dari n ≡ (3

  n n . 3 (mod) 7

  1

  3

  2

  6

  3

  3

  4

  5

  5

  1 4. n adalah hasil iterasi yang menghasilkan nilai 1. Maka dari itu n = 5.

  4 m (mod 7) = 2.

  ≡ 5

  2.11. Akar Primitif ( Primitive Roots)

  Jika m merupakan elemen bilangan bulat, n merupakan elemen bilangan asli dan , ord = �

  �

  maka m disebut akar primitif modulo n. Dengan kata lain, m adalah akar primitif jika m termasuk pada eksponen modulo n.

  � Menurut algoritma Gauss, jika m merupakan elemen bilangan asli, 1 < m < p,

  t t

  hitung m untuk t = 1,2,... hingga m ≡1 (mod p). Dengan kata lain, hitung pangkat hingga nilai ditemukan. Jika t = = p

  • – 1, maka m adalah akar ord ord

  � � primitif (Mollin, 2007).

  Contoh :

  Apakah 2 dan 4 merupakan akar primitif dari 5? Cek bilangan 2 :

  t

  1. : Hitung m ≡1 (mod p)

  1

  2

  3

  4

  2 2 (mod 5), 2 4 (mod 5), 2 3 (mod 5), 2 1 (mod 5) ≡ ≡ ≡ ≡

  Karena nilai t = ord

  �

  2. = p – 1, maka 2 merupakan akar primitif modulo 5.

  Cek bilangan 4 :

  t

  1. : Hitung m ≡1 (mod p)

  1

  2

  4 4 (mod 5), 4 1 (mod 5) ≡ ≡

  �

  Karena nilai t = ≠ p – 1, maka 4 bukan merupakan akar primitif modulo 5. ord

  Menurut Shoup (2008), terdapat cara menemukan akar primitif yang efisien dengan menggunakan faktor prima dari p

  • – 1. Langkah-langkahnya adalah sebagai berikut : 1.

  Hitung fakor prima dari p-1 hingga setiap faktor memiliki nilai yang berbeda.

  p-1 / f 2. mod p.

  Untuk setiap faktor (f) hitung m 3. Jika tidak ada yang menghasilkan nilai 1, maka m adalah bilangan prima.

  Contoh : Menggunakan cara di atas, akan dicari apakah 5 merupakan akar primitif dari 37.

1. Hitung faktor prima dari 37

  f = [2, 3] p-1 / f 2.

  mod p Untuk setiap faktor prima, hitung m

  36/2 f [2] = 5 mod 37 = 36

  36/3 f [3] = 5 mod 37 = 10 Karena tidak ada yang menhasilkan nilai 1, maka 5 merupakan akar primitif dari 37.

2.12. Metode Pembangkit Bilangan Prima Lehmann

  Menurut Scheiner(1996), berikut adalah langkah-langkah untuk menentukan apakah p adalah prima menggunakan pembangkit bilangan prima Lehmann :

1. Pilih sembarang bilangan a lebih kecil dari p

  • – 1) / 2
  • – 1) / 2

  mod p = 5

  (p-1)/2

  mod p = 4

  (7

  mod 7 = 4

  3

  mod 7 = 64 mod 7 = 1 Kemungkinan p prima = 50% + 25% = 75%.

  4. a

  (p-1)/2

  (7

  3

  mod 7 = 5

  3

  mod 7 = 125 mod 7 = 6 5. a

  (p-1)/2

  mod p = 6

  (7

  mod 7 = 6

  3

  mod 7 = 27 mod 7 = 6 3. a

  mod 7 = 3

  mod 7

  1. a

  2. Hitung p mod 2, jika p mod 2 = 0 maka p bukanlah bilangan prima.

  3. Hitung a

  (p-1)/2 mod p.

  4. Jika a

  (p-1)/2 ≠ 1 atau -1 (mod p), maka p sudah pasti tidak prima.

  5. Jika a

  (p-1)/2

  = 1 atau -1 (mod p), maka kemungkinan bahwa p tidak prima adalah tidak lebih dari 50%. Contoh 1 : Diberikan sebuah bilangan p = 7, dipilih a = 2, 3, 4, 5,6.

  (p-1)/2

  (7

  mod p = 2

  (7

  mod 7 = 2

  3

  mod 7 = 8 mod 7

  = 1 Kemungkinan p prima = 50%.

  2. a

  (p-1)/2

  mod p = 3

  • – 1) / 2
  • – 1) / 2
  • – 1) / 2

  = 216 mod 7 = 6 Karena kemungkinan p prima adalah 75%, p dapat dikatakan bilangan prima.

  Metode pembangkit bilangan prima Lehmann dipilih karen pada prosesnya hanya perlu melakukan perulangan sebanyak sepuluh kali untuk menentukan sebuah bilangan prima atau tidak.

  2.13. Algoritma ElGamal

  Algoritma ElGamal ditemukan oleh Taher ElGamal pada tahun 1984. Algoritma ini pada mulanya digunakan untuk digital signature, namun kemudian dimodifikasi sehingga juga bisa digunakan untuk enkripsi dan dekripsi. ElGamal digunakan di dalam perangkat lunak sekuriti yang dikembangkan oleh GNU, program PGP dan pada sistem keamanan lainnya, Keamanan algoritma ini terletak pada sulitnya menghitung logaritma diskrit (Munir, 2006).

  Algoritma ini didasarkan pada masalah logaritma diskret dan terdiri dari tiga proses, yaitu proses pembentukan kunci, proses enkripsi, dan proses dekripsi. Algoritma ini merupakan cipher blok, yaitu melakukan proses enkripsi pada blok-blok palinteks dan menghasilkan blok-blok ciphertext yang kemudian dilakukan proses dekripsi, dan hasilnya digabungkan kembali menjadi pesan yang utuh dan dapat dimengerti. Untuk membentuk sistem kriptografi ElGamal, dibutuhkan bilangan prima

  p dan elemen primitif (Massandy, 2009).

  2.14. Pembentukan Kunci

  Proses pertama pada algoritma ElGamal adalah pembentukan kunci yang terdiri dari kunci privat dan kunci publik. Pada proses ini dibutuhkan sebuah bilangan prima aman p, akar primitif

  � yang, dan sembarang a ∈ {0,1,...,p-2}. Pada proses pembentukan kunci, panjang digit bilangan prima p sangat berpengaruh pada panjang pesan yang dienkripsi (Singh & Kumar 2012). Kunci publik algoritma ElGamal berupa pasangan 3 bilangan, yaitu ( � , , p), dengan

  � mod dimana a merupakan kunci rahasia (Batten, 2013).

2.15. Proses Pembentukan Kunci

  Langkah-langkah dalam pembentukan kunci adalah sebagai berikut (Menezes et all, 1996): 1.

  Pilih bilangan prima besar (p > 255) dan elemen primitif � dari bilangan bulat mod p.

  2. Pilih bilangan bulat a, dimana 1 ≤ ap – 2.

  3. Hitung � mod .

  4. Publikasikan nilai � , �, dan p, serta rahasiakan nilai a. Pihak yang membuat kunci adalah pihak penerima. Penerima kemudian akan mengirimkan kunci publik yaitu

  � , �, dan p untuk digunakan pada proses enkripsi. Misalkan Alice dan Bob ingin berkomunikasi. Dalam hal ini Bob akan membuat kunci publik dan kunci privat. Bob memilih bilangan prima p = 257,

  � = 20, dan kunci privat a = 5.

  5

  mod 257 = 93 � mod = 20

  Jadi kunci publik Bob adalah p = 257, � = 20, dan � = 93 dan kunci privatnya adalah 5. Bob mengirimkan (257, 20, 93) pada Alice dan menyimpan kunci privatnya.

2.16. Enkripsi Pada proses enkripsi, pesan asli (plaintext) diubah menjadi pesan rahasia (ciphertext).

  Pada proses ini digunakan kunci publik (p, � � ). Dalam perhitungannya, algoritma

  ElGamal menggunakan bilangan bulat. Oleh karena itu digunakanlah kode ASCII(American Standard for Information Interchange). Kode ASCII adalah representasi numerik dari karakter-karakter yang digunakan dalam komputer.

  Setelah mendapatkan kunci publik, Alice memilih bilangan acak rahasia b

  {0,1,...,p-2}. Bilangan acak b sebaiknya berbeda untuk setiap plaintext menghindari serangan acak bilangan b yang dapat mempengaruhi plaintext lainnya (Sharma et all, 2012). Misalkan m adalah pesan yang akan dikirim. Selanjutnya m diubah ke dalam blok-blok karakter dan setiap karakter dikonversikan ke dalam kode ASCII, sehingga diperoleh plaintext m

  1 , m 2 , m 3 , ... , m n dengan m i ∈ {1, 2,..., p-1} dan i =1, 2,..., n.

  Enkripsi kemudian dilakukan dengan menghitung � mod dan

  � mod Algoritma enkripsi pesan : 1.

  1 , m 2 , ... , m n sehingga setiap blok

  Plaintext disusun menjadi blok-blok m merepresentasikan nilai di dalam rentang 0 sampai p

  • – 1 (dengan mengubah nilai m menjadi kode ASCII).

  2. Pilih bilangan acak b dengan rentang 0 < b < p – 1, sehingga b relatif prima dengan p

  • – 1.

  3. Setiap blok m dienkripsi dengan rumus � mod dan � mod .

  4. Setelah dienkripsi, blok teks disusun menjadi = � , � ). Menggunakan kunci publik Bob (p,

  � � ) = (257, 20, 93), Alice ingin mengirimkan pesan ”GUNALAN” kepada Bob. Pesan tersebut harus dienkripsi, oleh karena itu hal yang dilakukan oleh Alice adalah memotong pesan-pesan menjadi blok- blok karakter dan setiap karakter dikonversi menjadi kode ASCII. Dapat dilihat pada

Tabel 2.1 :Tabel 2.1. Konversi Blok-blok Karakter Pesan ke Kode ASCII

i Karakter Plaintext m i ASCII

  1

  7 N m

  9

  55 6 65 228 92 152 7 78 189 202

  44 214 4 65 43 181 226 5 76 234 215

  67 14 187 2 85 10 168 219 3 78 124

  1 71

  � m i mod 257

  �

  � mod 257

  �

  i m i b i

Tabel 2.2. Proses Enkripsi

  Proses selanjutnya adalah menentukan bilangan acak rahasia b i ∈ {0,1,....,257}. Kemudian dihitung � mod dan � mod .

  78 Dari Tabel 1, diperoleh banyaknya karakter pada pesan tersebut adalah n = 7.

  7

  65

  71

  1 G m

  6 A m

  76

  5

  5 L m

  65

  4

  4 A m

  78

  3

  3 N m

  85

  2

  2 U m

  6 Berdasarkan Tabel 2.2. diperoleh ciphertext ( � , � ), sebagai berikut :

  (14, 187) (168,219) (44, 214) (181, 226) (215, 55) (92, 152) (202, 9) Selanjutnya ciphertext dikirim ke Bob.

2.17. Dekripsi

  � , � ) maka dihitung : �

  Algoritma dekripsi pesan : 1. Hitung �

  Bob telah menerima ciphertext dari Alice, ciphertext yang diperoleh adalah sebagai berikut : (14, 187) (168,219) (44, 214) (181, 226) (215, 55) (92, 152) (202, 9)

  � ≡ mod 2. Setelah plaintext m diperoleh, konversikan ke dalam karakter yang sesuai dengan kode ASCII, kemudian hasilnya digabungkan kembali.

  −

  �

  mod Hitung

  �− −

  dengan m adalah plaintext.

  −

  Setelah ciphertext diterima, proses selanjutnya adalah mendekripsikan ciphertext menggunakan kunci publik (p, � � ) dan kunci privat a. (p, � � ) sebagai kunci publik dan a sebagai kunci privat, jika diberikan ciphertext (

  � ≡ �

  −

  mod dan �

  �− −

  ≡ �

  − � ≡ mod . Untuk itu Bob pertama kali menghitung p – 1 – a = 257 – 1 – 5 = 251. Kemudian menggunakan kunci publik p = 257 dan kunci privat a = 5, Bob melakukan perhitungan seperti pada tabel 2.3 :

Tabel 2.3. Proses Dekripsi

  251 251 i m

   (mod 257) (mod 257)

  � �� � �� �

  1 14 187

  10

  71 G 2 168 219 248

  85 U

  3 44 214

  46

  78 N 4 181 226 172

  65 A 5 215 55 221

  76 L

  6 92 152 134

  65 A 7 202 9 180

  78 N Berdasarkan Tabel 2.3, Diketahui bahwa pesan tersebut adalah

  “GUNALAN”

  Baby-step Giant-step 2.18.

  Keamanan ElGamal bergantung pada pemecahan masalah logaritma diskrit dengan modulo yang sangat besar (Sharma et all, 2012). Metode Baby-step Giant-step merupakan salah satu metode pencarian dengan mencocokkan dua daftar. Metode ini bertujuan untuk menemukan a dari

  � mod . Dalam hal ini a disebut logaritma diskrit.

  Jika ingin menemukan a langkah pertama adalah memilih � ≈ √ − + 1

  2

  sehingga p . Hal ini dilakukan karena perhitungan akan melakukan hasil yang

  • – 1 ≤ N sama jika melebihi

  √ . Kemudian dibuat dua dafta dimana daftar pertama meningkatkan pemangkatan sebanyak satu, sedangkan daftar kedua meningkatkan pemangkatan sebanyak N.

  • Nk

  2. Hitung daftar Baby-step dengan rumus �

  6

  93

  5

  33 4 146

  3

  20 2 143

  1

  1

  j mod 257

  �

  j

Tabel 2.4. Proses Baby-step

  mod p untuk 0 ≤ j < N.

  j

  N ⌈ √ − ⌉ + 1 = 17.

  Daftar Baby-step : �

  Jika ditemukan hasil yang sama di setiap daftar (akan memakan banyak waktu jika p bernilai besar) dapat ditulis � ≡ � �

  j

  mod p untuk 0 ≤ j ≤ N. Daftar Giant-step :

  � �

  mod p untuk 0 ≤ kN. Daftar Baby-step akan diproses sebanyak

  √ − modulo p dikarenakan � adalah akar primitif.

  Daftar Giant-step mungkin akan diproses sedikit lama dikarenakan proses berjalan sebanyak perkalian dengan � .

  −�

  1. Pilih nilai � ≈ ⌈ √ − ⌉ + 1 .

  mod sehingga �

  ≡ � mod , maka ditemukanlah � = + � .

  Banyaknya langkah pada algoritma ini sekitar √ dan angka sebanyak N perlu disimpan (Batten, 2013).

  Diberikan 20

  a

  mod 257 = 93. a dapat dihitung dengan mengikuti langkah langkah berikut:

  61 7 192

  • Nk

  k

  Lehmer dalam Kriptografi Elgamal” menyebutkan bahwa kunci p yang besar dapat mempengaruhi lamanya waktu dekripsi.

  Pada penelitian yang dilakukan oleh Ratnaningtyas Yoga Wijayanti (2013) yang berjudul ”Analisis dan Perbandingan Penggunaan Metode Pembangkitan Bilangan Prima Fermat dan Lucas-

  mod 257 = 93

  5

  ≡ 93 * 20 (mod p), jadi menurut rumus a = j + Nk, a = 5 + 0 = 5. Oleh karena itu diperoleh a = 5 yang memenuhi perhitungan 20

  5

  93 Perhitungan Giant-step dihentikan karena kecocokan yang ditemukan yaitu 20

  � ∗ �

Tabel 2.5. Proses Giant-step

  untuk 0 ≤ k < N hinga ditemukan hasil yang cocok pada daftar Baby-step.

  Hitung daftar Giant-step dengan rumus � �

  17 131 3.

  19 12 123 13 147 14 113 15 204 16 225

  11

  8 242 9 214 10 168

  j mod 257

  �

  j

  • - 17k

2.19. Penelitian yang Relevan 1.

2. Pada penelitian yang dilakukan oleh Anandia Zelvina (2012) yang berjudul

  ”Perancangan Aplikasi Pembelajaran Kriptografi Kunci Publik ElGamal untuk Mahasiswa” menyebutkan bahwa pada algoritma ElGamal suatu

  plaintext yang sama akan dienkripsi menjadi ciphertext yang berbeda-beda.

  Hal ini dikarenakan pemilihan bilangan k yang acak. Akan tetapi, walaupun

  ciphertext yang diperoleh berbeda beda, tetapi pada proses dekripsi akan diperoleh plaintext yang sama.

  3 Pada penelitian yang dilakukan oleh Muhamad Zaki Riyanto (2007) yang berjudul ”Pengamanan Pesan Rahasia Menggunakan Algoritma Kriptografi ElGamal atas Grup Pergandaan Z p

  • ” menyebutkan bahwa agar dapat menentukan elemen primitif grup Z p *, maka penentuan bilangan prima p sebagai kunci publik sebaiknya harus diketahui faktorisasi prima dari p-1, seperti bilangan prima aman, yaitu p= 2q + 1, dengan q bilangan prima.

Dokumen yang terkait

SK Dirjen Pendis Nomor 5162 Tahun 2018 tentang Juknis Penilaian Hasil Belajar pada MTs (Madrasah Tsanawiyah) - Berkas Edukasi

1 3 88

SK Dirjen Pendis Nomor 3751 Tahun 2018 tentang Juknis Penilaian Hasil Belajar pada MA (Madrasah Aliyah) - Berkas Edukasi

0 6 86

BAB II GAMBARAN UMUM LOKASI PENELITIAN PRAKTIK KERJA LAPANGAN MANDIRI(PKLM) A. Sejarah Singkat Berdirinya Kantor Pelayanan Pajak Pratama Medan Polonia - Pelaksanaan Surat Teguran Dalam Upaya Untuk Meningkatkan Penerimaan Pajak Negara Di Kantor Pelayanan P

0 0 14

BAB I PENDAHULUAN A. Latar Belakang Praktik Kerja Lapangan Mandiri - Pelaksanaan Surat Teguran Dalam Upaya Untuk Meningkatkan Penerimaan Pajak Negara Di Kantor Pelayanan Pajak Pratama Medan Polonia

0 0 16

BAB II TINJAUAN PUSTAKA 2.1. Defenisi Kanker Payudara - Karakteristik Penderita Kanker Payudara Yang Dirawat Inap Di Rsu Dr. Pirngadi Medan Tahun 2011-2013

0 0 34

BAB II GAMBARAN UMUM MENGENAIASHIGARU - Fungsi Dan Tugas Ashigaru Dalam Situasi Perang Pada Zaman Kamakura Hingga Zaman Edo

0 0 14

BAB II TINJAUAN PUSTAKA 2.1. Landasan Teori 2.2 . Kinerja Perusahaan - Pengaruh Pertumbuhan Rasio Keuangan ( Current Ratio, Debt To Eqiuty Ratio , Total Asset Turn Over ) dan Ukuran Perusahaan Terhadap Kinerja Perusahaan pada Perusahaan Manufaktur yang Te

0 0 24

Buku BNPB Panduan Kesiapsiagaan Bencana untuk Keluarga - Berkas Edukasi

0 2 64

2. Primitive Root (prim_root.py) - Teknik Pemecahan Kunci Privat Elgamal dengan Algoritma Baby Step Giant Step

0 1 19

BAB I PENDAHULUAN A. Latar Belakang - Buku 2 Isi

0 1 27