Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Oleh: Nilam Amalia Pusparani G

Presentasi serupa


Presentasi berjudul: "Oleh: Nilam Amalia Pusparani G"— Transcript presentasi:

1 Oleh: Nilam Amalia Pusparani G64102039
Analisis RSA dengan Penambahan Chinese Remainder Theorem untuk Mempercepat Dekripsi Oleh: Nilam Amalia Pusparani G

2 PENDAHULUAN Latar Belakang
Keamanan merupakan aspek yang sangat penting dalam pertukaran informasi. Teknik mengamankan informasi erat kaitannya dengan kriptografi.

3 PENDAHULUAN Penelitian: - RSA - Algoritma Faktorisasi Integer
- n besar, maka sumberdaya besar - RSA-CRT

4 PENDAHULUAN Tujuan Mengimplementasikan skema enkripsi dan dekripsi RSA dan RSA-CRT. Menganalisis algoritma Menganalisis waktu yang dibutuhkan untuk enkripsi dan dekripsi Menganalisis tingkat keamanan

5 PENDAHULUAN Ruang Lingkup RSA CRT  RSA-CRT Modulus n 1024 bit
Data: File teks dengan ukuran yang bervariasi dari 1764 byte sampai dengan byte.

6 PENDAHULUAN Manfaat Penelitian
Menghasilkan RSA dengan waktu dekripsi yang lebih cepat

7 TINJAUAN PUSTAKA Kriptografi
Kriptografi adalah studi teknik matematik yang berkaitan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, autentikasi entitas, dan autentikasi asal data (Menezes et al. 1996).

8 TINJAUAN PUSTAKA Enkripsi Kunci Publik - 1 kunci umum, 1 kunci pribadi
- tidak layak menentukan kunci dekripsi dari kunci enkripsi

9 TINJAUAN PUSTAKA RSA (Rivest-Shamir-Adleman)
Algoritma ini menggunakan kunci publik untuk enkripsi dan kunci pribadi untuk dekripsi. Keamanan metode ini terletak pada kesulitan untuk memfaktorkan modulus n yang sangat besar, tetapi kelebihan ini mengakibatkan lambatnya waktu untuk menyelesaikan proses.

10 TINJAUAN PUSTAKA Tiga Tahap Algoritma RSA: Pembangkitan kunci Enkripsi
Dekripsi

11 TINJAUAN PUSTAKA Pembangkitan kuncinya adalah sebagai berikut.
Pilih dua bilangan prima, p dan q secara acak dan terpisah untuk setiap p dan q. Hitung n = p x q. Hitung (n) = (p-1) (q-1). Pilih bilangan bulat antara satu dan  (1<e<) yang juga merupakan coprime dari . Coprime yang dimaksud adalah bilangan terbesar yang dapat membagi e dan  untuk menghasilkan nilai 1 (pembagi ini dinyatakan dengan gcd (greatest common divisor). Hitung d, dimana d  e^-1 mod (n).

12 TINJAUAN PUSTAKA Enkripsi: Plaintext : M < n
Ciphertext : C = M^e (mod n) Dekripsi: Ciphertext : C Plaintext : M = C^d (mod n)

13 TINJAUAN PUSTAKA Algoritma Euclid
- berfungsi menentukan gcd dari dua bilangan bulat - gcd bernilai positif - gcd (a,0) = |a| dan gcd (0,0) tak terdefinisikan - c = gcd (a,b)  gcd (a/c, b/c) = 1

14 TINJAUAN PUSTAKA Extended Euclid
Algoritma Euclid dapat diperluas sehingga tidak hanya menghasilkan pembagi bersama terbesar dari dua bilangan bulat a dan b, tetapi juga menghasilkan bilangan bulat x dan y yang memenuhi ax + by = d

15 TINJAUAN PUSTAKA Relatif Prima
Dua buah bilangan a dan b disebut relatif prima apabila gcd (a, b) = 1. Sebagai contoh bilangan 7 dan 11 adalah relatif prima, karena pembagi 7 dan 1 adalah 7, sedangkan pembagi 11 adalah 1 dan 11, sehingga gcd (7, 11) = 1 (Cornel et al. 1990)

16 TINJAUAN PUSTAKA RSA-CRT (Rivest-Shamir-Adleman-Chinese Remainder Theorem) 3 Tahap: - Pembangkitan kunci - Enkripsi - Dekripsi

17 TINJAUAN PUSTAKA Pembangkitan Kunci:
Pilih bilangan prima p dan q secara acak, sehingga gcd (p-1, q-1) = 2. Hitung n = p x q. Pilih 2 integer dp dan dq secara acak, sehingga gcd (dp, p-1) = 1, gcd (dq, q-1) = 1dan dp == dq mod 2. Cari suatu nilai d sehingga d == dp mod p-1 dan d == dq mod q-1. Hitung e = d^-1 (mod (n)).

18 TINJAUAN PUSTAKA Enkripsi Plaintext : M < n
Ciphertext : C = M^e (mod n) Dekripsi Mp = C^dp mod p dan Mq = C^dq mod q v = (Mq – Mp) p_inv_q mod q M = Mp + pv

19 TINJAUAN PUSTAKA Analisis Algoritma
Analisis algoritma dilakukan untuk menduga besarnya sumber daya waktu yang dibutuhkan untuk sembarang ukuran input n (Cormen et al. 1990).

20 TINJAUAN PUSTAKA Analisis Uji Running Time
- Waktu total yang dibutuhkan untuk melakukan seluruh tahapan proses yang dieksekusi. - RSA dan RSA-CRT dihitung berdasarkan keadaan running time untuk waktu rata-rata.

21 METODE PENELITIAN Analisis Algoritma:
kompleksitas algoritma pembangkitan kunci, kompleksitas algoritma enkripsi, dan kompleksitas algoritma dekripsi.

22 METODE PENELITIAN Analisis Keamanan  studi literatur

23 METODE PENELITIAN Analisis Hasil Implementasi
- Waktu enkripsi RSA dan RSA-CRT - Waktu dekripsi RSA dan RSA-CRT

24 METODE PENELITIAN Spesifikasi Uji Implementasi - 10 file teks
byte sampai dengan byte - 10x pengulangan

25 HASIL DAN PEMBAHASAN Analisis Algoritma
- Analisis Subrutin Primality Test Pada subrutin ini RSA menggunakan algoritma Miller-Rabin. Algoritma Miller-Rabin adalah sebagai berikut. x ;= a^m mod n; If (x ≡ 1 mod n) return ”n is prime” and halt; For (j = 0, 1, ..., k-1) If (x ≡ -1 mod n) return ”n is prime” and halt; Else x := x2 mod n; Return ”n is composite” and halt; Subrutin Primality Test menggunakan algoritma modular exponentiation, sehingga kompleksitasnya adalah O((lg n)^3).

26 HASIL DAN PEMBAHASAN Analisis Subrutin Euclid If b = 0 Then Euclid  a
Else Euclid  (b, a mod b) Perkalian: O((lg n)^2)

27 HASIL DAN PEMBAHASAN Analisis Subrutin Extended Euclid If b = 0 Then
return (a, 1, 0) (d1, x1, y1) Extended Euclid (b, a, mod b) (d, x, y)  (d1, y1, x1 - a/b y1) return (d, x, y) Perkalian: O((lg n)^2

28 HASIL DAN PEMBAHASAN Analisis Subrutin Modular Exponentiation
Algoritma Modular Exponentiation digunakan untuk melakukan operasi modular, a^b mod n. Algoritmanya adalah sebagai berikut. d  1 Andaikan (b1, b2, ... bk-1, bk) adalah representasi biner dari b Untuk i  1 sampai k lakukan d  (d*d) mod n Jika bi = 1 maka d  (d*a) mod n Modular Exponentiation  d Algoritma Modular Exponentiation mempunyai kompleksitas sebesar O((lg n)^3) (Menezes et al. 1996).

29 HASIL DAN PEMBAHASAN Analisis Algoritma Pembangkitan Kunci pada RSA
Pilih dua bilangan prima, p dan q secara acak dan terpisah untuk setiap p dan q.  O((lg n)^3) Hitung n = p x q.  O((lg n)^2) Hitung (n) = (p-1) (q-1).  O((lg n)^2) Pilih bilangan bulat antara satu dan (1<e<) yang juga merupakan coprime dari . Coprime yang dimaksud adalah bilangan terbesar yang dapat membagi e dan  untuk menghasilkan nilai 1 (pembagi ini dinyatakan dengan gcd (greatest common divisor).  O((lg n)^2 Hitung d, dimana d  e-1 mod (n).  O((lg n)^2) Jadi: O((lg n)^3

30 HASIL DAN PEMBAHASAN Analisis Algoritma Enkripsi pada RSA
C = M^e (mod n) Modular Exponentiation: O((lg n)^3)

31 HASIL DAN PEMBAHASAN Analisis Algoritma Dekripsi pada RSA
M = C^d (mod n) Modular Exponentiation: O((lg n)^3)

32 HASIL DAN PEMBAHASAN Analisis Algoritma Pembangkitan Kunci pada RSA-CRT Pilih bilangan prima p dan q secara acak, sehingga gcd (p-1, q-1) = 2.  O((lg n)^3) Hitung n = p x q.  O((lg n)^2) Pilih 2 integer dp dan dq secara acak, sehingga gcd (dp, p-1) = 1, gcd (dq, q-1) = 1dan dp == dq mod 2.  dp € Z* p-1 dan dq € Z* q-1. Didapat O((lg (p-1)^2) + (lg (q-1)^2)) = O((lg (n/2))^2) Cari suatu nilai d sehingga d == dp mod p-1 dan d == dq mod q-1.  O((lg (p-1)) + (lg (q-1))) = O((lg (n/2)) Hitung e = d-1 (mod (n)).  O((lg n)^2) Jadi: O((lg n)^3)

33 HASIL DAN PEMBAHASAN Analisis Algoritma Enkripsi pada RSA-CRT
C = M^e (mod n) Modular Exponentiation: O((lg n)^3)

34 HASIL DAN PEMBAHASAN Analisis Algoritma Dekripsi pada RSA-CRT
- Mp = C^dp mod p dan Mq = C^dq mod q  O(((lg p)^3) + ((lg q)^3)) = O((lg (n/2))^3) - v = (Mq – Mp) p_inv_q mod q  O((lg (n/2))^2) - M = Mp + pv  O((lg p) ((lg (n/2))^2 ) = O((lg (n/2))^3) Jadi: O((lg (n/2))^3)

35 HASIL DAN PEMBAHASAN Analisis Keamanan
Rivest, Shamir, dan Adleman menyarankan nilai p dan q panjangnya lebih dari 100 digit. Dengan demikian hasil kali n = p x q akan lebih dari 200 digit. Usaha untuk memfaktorkan bilangan bulat 200 digit menjadi faktornya sangat besar.

36 HASIL DAN PEMBAHASAN Desimal Bit Waktu MIPS Algoritma 100 332 7 QS 110
365 75 120 398 830 129 428 5000 130 431 1000 GNFS 140 465 2000 155 512 8000

37 HASIL DAN PEMBAHASAN Analisis Hasil Implementasi Enkripsi RSA
NO Ukuran File (byte) Waktu Enkripsi (ms) 1 1764 21.8 2 3528 36 3 5292 54.6 4 8820 101.6 5 10584 112.6 6 12348 125 7 14112 134.5 8 15876 135.8 9 17640 170.3 10 21168 181.2 Waktu Rata-rata (ms) 107.34 Enkripsi RSA-CRT NO Ukuran File (byte) Waktu Enkripsi (ms) 1 1764 20.4 2 3528 38.9 3 5292 73.6 4 8820 104.6 5 10584 121.8 6 12348 134.1 7 14112 148.5 8 15876 149.9 9 17640 151.6 10 21168 168.6 Waktu Rata-rata (ms) 111.2

38 HASIL DAN PEMBAHASAN Dekripsi RSA NO Ukuran File (byte)
Waktu Dekripsi (ms) 1 1764 610.8 2 3528 1401.7 3 5292 2348.3 4 8820 3814.4 5 10584 3995.3 6 12348 4411 7 14112 5162.5 8 15876 5689.2 9 17640 6511.1 10 21168 8173.6 Waktu Rata-rata (ms)

39 HASIL DAN PEMBAHASAN Dekripsi RSA-CRT NO Ukuran File (byte)
Waktu Enkripsi (ms) 1 1764 317 2 3528 626.5 3 5292 845.5 4 8820 1243.8 5 10584 1357.7 6 12348 1374.9 7 14112 1503 8 15876 1726.4 9 17640 2353.2 10 21168 2376.4 Waktu Rata-rata (ms)

40 HASIL DAN PEMBAHASAN

41 HASIL DAN PEMBAHASAN

42 KESIMPULAN DAN SARAN Kesimpulan
- Keamanan RSA bertumpu pada kompleksitas problem faktorisasi bilangan bulat. - Pembangkitan kunci dan Enkripsi RSA dan RSA-CRT: O((lg n)^3) - Dekripsi RSA: O((lg n)^3)

43 KESIMPULAN DAN SARAN - Dekripsi RSA-CRT: O((lg (n/2))^3)
bit mampu memberikan keamanan yang lebih lama - Dekripsi RSA-CRT lebih cepat daripada RSA

44 KESIMPULAN DAN SARAN Saran
- Ruang lingkup penelitian ini dibatasi pada algoritma RSA untuk panjang modulus kunci 1024 bit. Penelitian selanjutnya dapat dikembangkan dengan menggunakan kunci yang lain yaitu kunci 2048 bit. - Eksponensial enkripsi (e) yang digunakan pada penelitian ini adalah Untuk penelitian selanjutnya dapat menggunakan e random. - Penelitian ini menggunakan algoritma RSA-CRT untuk mempercepat dekripsi. Penelitian selanjutnya dapat menggunakan varian RSA yang lain seperti Rebalanced RSA-CRT.

45 SEKIAN


Download ppt "Oleh: Nilam Amalia Pusparani G"

Presentasi serupa


Iklan oleh Google