• Tidak ada hasil yang ditemukan

dasar 002

N/A
N/A
Protected

Academic year: 2017

Membagikan "dasar 002"

Copied!
10
0
0

Teks penuh

(1)

Teori Dasar dan Algoritma RSA

Algoritma kriptografi RSA ditemukan oleh tiga orang yang kemudian nama-nama mereka

disingkat menjadi RSA. Ketiga penemu itu adalah Ron Riverst, Adi Shamir, dan Leonard

Adleman. RSA dibuat di MIT pada tahun 1977 dan dip atenkan oleh MIT (Massachussets

Institute of Technology) pada tahun 1983. Sejak 21 September 2000, paten tersebut berakhir,

sehingga saat ini semua orang dapatmenggunakannya dengan bebas (Brian, 2000).

RSA merupakan algoritma kriptografi asimetris yang paling mudah untuk

diimplementasikan dan dimengerti. (Ariyus,2008) Algoritma kriptografi RSA merupakan

algoritma yang termasuk dalam kategori algoritma asimetri atau algoritma kunci publik.

Algoritma kriptografi RSA Universitas Sumatera Utara 15 didesain sesuai fungsinya sehingga

kunci yang digunakan untuk enkripsi berbeda dari kunci yang digunakan untuk dekripsi.

Algoritma RSA disebut kunci publik karena kunci enkripsi dapat dibuat publik yang

berarti semua orang boleh mengetahuinya, namun hanya orang tertentu (si penerima pesan

sekaligus pemilik kunci dekripsi yang merupakan pasangan kunci publik) yang dapat melakukan

dekripsi terhadap pesan tersebut. Keamanan algoritma RSA didasarkan pada sulitnya

memfaktorkan bilangan besar menjadi faktor-faktor primanya (Sulistyanto, 2004).

Secara umum ada beberapa besaran-besaran yang harus diperhatikan dalam algoritma RSA,

yaitu:

p dan q adalah bilangan prima

(rahasia)

n = p.q

(tidak rahasia)

φ

(n) = (p-1)(q-1)

(rahasia)

e (kunci enkripsi)

(tidak rahasia)

d (kunci dekripsi)

(rahasia)

m (plaintext)

(tidak rahasia)

c (chipertext)

(rahasia)

Konsep Dasar Perhitungan Matematis

Dalam setiap proses pada algoritma RSA terdapat perhitungan matematis. Pada proses

pembangkitan kunci dibutuhkan perhitungan untuk menentukan nilai Totient n dan perhitungan

dengan algoritma Euclidean untuk menentukan nilai dua buah bilangan yang relatif prima.

Sedangkan pada proses enkripsi dan dekripsi dilakukan perhitungan menggunakan metode Fast

Exponentiation.

Menghitung FPB menggunakan algoritma Euclidean

A = 80

B = 12

(2)

80 = 6 * 12 + 8

12 = 1 * 8 + 4

8 = 1 * 4 + 0

Langkah-langkah mencari gcd(80,12) dengan algoritma Euclidean yaitu :

1. 80 dibagi 12 = 6, sisa 8 ( atau 80 = 6 * 12 + 8 )

2. 12 dibagi 8 = 1, sisa 4 ( atau 12 = 1 * 8 + 4 )

3. 8 dibagi 4 = 2, sisa 0 (atau 8 = 2 * 4 + 0)

Pembagian terakhir menghasilkan 0, maka sisa pembagian terakhir sebelum 0, yaitu 4. Jadi gcd

(80,12) = 4

Algorimakriptografi

RSA

terdiridarialgoritmaenkripsi

RSA

danalgoritmadekripsi RSA. Algoritma RSA adalahsebagaiberikut :

Pembangkitan sepasang kunci

o

Pilih dua bilangan prima sembarang,

p

dan

q

o

Hitung

n

=

p

×

q

o

Hitung

(

n

) = (

p

– 1)(

q

– 1)

o

Pilih kunci public

e

, yang relative prima terhadap ϕ(n).

o

Bangkitkan kunci privat dengan rumus :

e

d

1 (mod

(n))

atau

d

=

1

+(

k

×

φ

(

n

))

e

dengan k = 1,2,3,4,5 …

n

Hasil dari algoritma diatas adalah

1. Kunci

public

(e,n)

2. Kunci

private

(d,n)

(3)

o

Ambil kunci

public

(e dan n).

o

Pecah plainteks menjadi blok-blok m

1

, m

2

, m

3

…, sehingga setiap blok

merepresentasikan nilai di dalam selang [0, n-1].

o

Setiap blok m

i

di enkripsi menjadi blok c

i

dengan rumus

c

i

= m

ie

mod n

e

=kunci publik

Deskripsi

o

Gunakankunci

private

(d dan n)

o

Untukmendapatkanplaintekskembali,

blokcipherteks

ci

didekripsimenjadiblok m

i

denganrumus

m

i

= c

id

mod n

d

=kunci private

Contoh :

Karakter :TAMAN

Penyelesaian :

Yang dilakukan untuk mendapatkan Public key dan privat key :

Pilih 2 bilangan prima

p dan q, misalnya 13 dan17

Cari

n = p*q = 13 * 17 = 221

Hitung ø(

n)=(p-1)(q-1)

= (13-1)(17-1)= 192

Pilih

e yang relatif prima terhadap ø(n) = 192 maksudnya pilih angka prima

sampai batasakhirnya 192

2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59

61 67 71 73 79 83 89 97 10 1

10 3

10 7

10 9

11 3

12 7

13 1

13 7

13 9 14

9 15 1

15 7

16 3

16 7

17 3

17 9

18 1

(4)

Dengan Tabel bilangan prima dari 0–192kitacari GCD

Gcd(2,192)=2 Gcd(3,192)=3 Gcd(5,192)=1 Gcd(7,192)=1

Gcd(11,192)=1 Gcd(13,192)=1 Gcd(17,192)=1 Gcd(19,192)=1

Gcd(23,192)=1 Gcd(29,192)=1 Gcd(31,192)=1 Gcd(37,192)=1

Gcd(41,192)=1 Gcd(43,192)=1 Gcd(47,192)=1 Gcd(53,192)=1

Gcd(59,192)=1 Gcd(61,192)=1 Gcd(67,192)=1 Gcd(71,192)=1

Gcd(73,192)=1 Gcd(79,192)=1 Gcd(83,192)=1 Gcd(89,192)=1

Gcd(97,192)=1 Gcd(101,192)=1 Gcd(103,192)=1 Gcd(107,192)=1

Gcd(109,192)=1 Gcd(113,192)=1 Gcd(127,192)=1 Gcd(131,192)=1

Gcd(137,192)=1 Gcd(139,192)=1 Gcd(149,192)=1 Gcd(151,192)=1

Gcd(157,192)=1 Gcd(163,192)=1 Gcd(167,192)=1 Gcd(173,192)=1

Gcd(179,192)=1 Gcd(181,192)=1 Gcd(191,192)=1

Cara mencari gcd menggunakan algoritma Euclidean :

192 = 96 *2 + 0 192 = 64*3+0

192 = 38*5+2 5 = 2*2+1 2 = 2*1+0

(5)

192 = 17*11+5 11 = 2*5+1

5 = 5*1+0

192 = 14*13+10 13 = 1*10+3

10 = 3*3+1 3 =3*1+0

192 = 11*17+5 17 = 3*5+2

5 = 2*2+1 2 =2*1+0

192 = 14*19+10 13 = 1*10+3

10 = 3*3+1 3 =3*1+0

192 = 8*23+8 23 = 2*8+7

8 = 1*7+1 1=1*1+0

192 = 6*29+18 29 = 1*18+11

18 = 1*11+7 11 =1*7+4

7 = 1*4+3 4 = 1*3+1 1 = 1*1+0

192 = 6*31+6 31 = 5*6+1

6 = 6*1+0

192 = 5*37+7 37 = 5*7+2

7 = 3*2+1 2 = 2*1+0

192 = 4*41+28 41 = 1*28+13

28 = 2*13+2 13 = 6*2+1

2 = 2*1+0

192 = 4*43+20 43 = 2*20+3

20 = 6*3+2 3 = 1*2+1 2 = 2*1+0

192 = 4*47+4 47 = 11*4+3

4 = 1*3+1 3 =3*1+0

192 = 3*53+33 53 = 1*33+20 33 = 1*20+13 20 =1*13+7

13 = 1*7+6 7 = 1*6+1 6 = 6*1+0

192 = 3*59+15 59 = 3*15+14

15 = 1*14+1 14 = 14*1+0

192 = 3*61+9 61 = 6*9+7

9 = 1*7+2 7 = 3*2+1 2 = 2*1+0

192 = 2*67+58 67 = 1*58+9

58 = 6*9+4 9 = 2*4+1 1 = 1*1+0

192 = 3*61+9 61 = 6*9+7

9 = 1*7+2 7 = 3*2+1 2 = 2*1+0 192 = 2*73+46

73 = 1*46+27 46 = 1*27+19 27 = 1*19+8

19 = 2*8+3 8 = 2*3+2 3 = 1*2+1 2 = 2*1+0

192 = 2*79+34 79 = 2*34+11

34 = 3*11+1 11 = 11*1+0

192 = 2*83+26 83 = 3*26+5

26 = 5*5+1 5 = 5*1+0

192 = 2*89+14 89 = 6*14+5

14 = 2*5+4 5 = 1*4+1 4 = 4*1+0

192 = 1*97+95 97 = 1*95+2 95 = 47*2+1 2 = 2*1+0

192 = 1*101+91 101 = 1*91+10

91 = 9*10+1 10 = 10*1+0

192 = 1*103+89 103 = 1*89+14

89 = 6*14+5 14 = 2*5+4

5 = 1*4+1 4 = 4*1+0

192 = 1*107+85 107 = 1*85+22

85 = 3*22+19 22 = 1*19+3

19 = 6*3+1 3 = 3*1+0 192 = 1*107+85

107 = 1*85+22 85 = 3*22+19

22 = 1*19+3

192 = 1*113+79 113 = 1*79+34

79 = 2*34+11 34 = 3*11+1

192 = 1*127+65 127 = 1*65+62

65 = 1*62+3 62 = 20*3+2

192 = 1*131+61 131 = 2*61+9

(6)

19 = 6*3+1

3 = 3*1+0 11 = 11*1+0

3 = 1*2+1 2 = 2*1+0

7 = 3*2+1 2 = 2*1+0 192 = 1*137+55

137 = 2*55+27 55 = 2*27+1 27 = 27*1+0

192 = 1*139+53 139 = 2*53+33

53 = 1*33+20 33 = 1*20+13 20 = 1*13+7

13 = 1*7+6 7 = 1*6+1 6 = 6*1+0

192 = 1*149+43 149 = 3*43+20

43 = 2*20+3 20 = 6*3+2

3 = 1*2+1 2 = 2*1+0

192 = 1*151+41 151 = 3*41+28

41 = 1*28+13 28 = 2*13+2

13 = 6*2+1 2 = 2*1+0

192 = 1*157+35 157 = 4*35+17

35 = 2*17+1 17 = 17*1+0

192 = 1*163+29 163 = 5*29+18

29 = 1*18+11 18 = 1*11+7

11 = 1*7+4 7 = 1*4+3 4 = 1*3+1 3 = 3*1+0

192 = 1*167+25 167 = 6*25+17

25 = 1*17+8 17 = 2*8+1

8 = 8*1+0

192 = 1*173+19 173 = 9*19+2

19 = 9*2+1 2 = 2*1+0

192 = 1*179+13 179 = 13*13+10

13 = 1*10+1 10 = 10*1+0

192 = 1*181+11 181 = 16*11+5

11 = 2*5+1 5 = 5*1+0

192 = 1*191+1 191 = 191*1+0

Dari hasil gcd diatas, sesuai dengan syarat

gcd(e,ø(n))=1,

maka kita memilih

gcd(5,192)=1 dengan nilai e=5.

Tentukannilai

d

,dihitungdenganrumus e*d mod

ø

(

n

)

= 1 atau

d

=

1

+(

k

×

ø

(

n

))

e

dengan mencoba memasukkan nilai k = 1,2,3,4,5,....

sampai diperoleh nilai d merupakan bilangan bulat.

Kami mencoba beberapa nilai k = 1, 2, 3 dan 4

k = 1

d

=

1

+(

k

×

ø

(

n

))

e

=

1

+(

1

192

)

5

=

38

,

6

k = 2

d

=

1

+(

k

×

ø

(

n

))

e

=

1

+(

2

192

)

(7)

k = 3

d

=

1

+(

k

×

ø

(

n

))

e

=

1

+(

3

192

)

5

=

115

,

4

k = 4

d

=

1

+(

k

×

ø

(

n

))

e

=

1

+(

4

192

)

5

=

153

,

8

Yang dilakukan untukmengenkripsi :

Didapatkuncipublik(e,n) adalah (5,221)dankunciprivate(d,n) adalah(77,221)

Selanjutnya kitamengenkripsi pesan tersebut menggunakan tabel ASCII

(

lampiran

):

T

a

m

a

n

84

97

109

97

110

Enkripsi berdasarkan tabel ASCII : 84 97 109 97 110

Nilai n = 221 sehingga selang blok-bloknya menjadi 0 sampain-1 = 220

Pecah chipper diatas menjadi blok-blok m

1

, m

2

, m

3

... m

i

m

1 =

84

m

2 =

97

m

3 =

109

m

4 =

97

(8)

Enkripsikan setiap blok menggunakan rumus

c

i

= m

ie

mod

n

dangunakankuncipublik(e,n) adalah (5,221)

C

1 =

84

5

mod 221 = 67

C

2 =

97

5

mod 221 = 54

C

3 =

109

5

mod 221 =96

C

4 =

97

5

mod 221 =54

C

5 =

110

5

mod 221 =145

Chippertext : 67549654145

Yang dilakukan untukmendekripsikan :

Chippertext : 67549654145

Ambilkuncikunciprivate(d,n) adalah(77,221)untukmendeskripsikan.

Selanjutnya tentukan selang dengan n = 221 maka selang menjadi [0 , n-1]

yaitu dari 0 sampai 220.

Diblok-blok menjadi

C

1 =

67

C

4 =

54

C

2 =

54

C

5 =

145

C

3 =

96

Lalu

dekripsikan

menggunakan

m

i

= c

id

mod

n

denganmenggunakankunciprivate(d,n) adalah(77,221)

m

1 =

67

77

mod 221 = 84

(9)

m

3 =

96

77

mod 221 = 109

m

4 =

54

77

mod 221 = 97

m

5 =

145

77

mod 221 = 110

Untuk melihathasilnya kita dapat melihat tabel ASCII

84 97 109 97 110

T

a

m

a

n

(10)

Referensi

Garis besar

Dokumen terkait

Tujuan penelitian ini adalah membandingkan pemeriksaan dokter gigi dan bukan dokter gigi dan untuk mendapatkan ketepatan pemeriksaan agar hasil survei kesehatan

sebagai treatment dalam menghadapi masalah; disiplin diri, biasanya dapat dilihat melalui sikap yang bertanggung jawab dalam setiap kegiatan; ketekunan, yaitu

Oleh karena itu berbagai event pendukungnya pun ya juga tidak jauh dari kegiatan yang biasa dilakukan anak pelajar SMA, seperti kegiatan jurnalistik itu.” (Wawancara

Pemikiran Nasr dalam perkembangan relasi agama dan sains dalam tradisi Islam jelas memberikan kontribusi yang besar terhadap perkembangan relasi agama dan sains,

1).. Pada route ini terdapat sejumlah 36 armada angkutan kota dengan jenis mobil suzuki cary dan daihatsu espass. Pada route ini terdapat sejumlah 13 armada angkutan kota dengan

Elemen yang kedua, pengaruh sebuah organisasi pendidikan, dielaborasi pada versi 1986 untuk meluruskan bahwa pendidikan jarak jauh adalah berbeda dari apa yang disebut

digilib.uinsby.ac.id digilib.uinsby.ac.id digilib.uinsby.ac.id digilib.uinsby.ac.id digilib.uinsby.ac.id digilib.uinsby.ac.id.. digilib.uinsby.ac.id digilib.uinsby.ac.id

Aurreko atalean ekarri dugun historiaren ondorengo zuzena, egun Donostian, beraien burua feminista moduan izendat zen duten bi gazte talde dira. Batetik Medeak taldea dugu