jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

166
BAB I PENDAHULUAN 1.1 Latar Belakang 1

description

ggggg

Transcript of jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Page 1: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

BAB I

PENDAHULUAN

1.1 Latar Belakang

Masalah keamanan dan kerahasian data merupakan salah satu aspek penting

dalam komunikasi menggunakan komputer, komputer yang terhubung ke network

mempunyai ancaman keamanan yang lebih besar dari pada host/komputer yang

tidak terhubung ke mana-mana. Para penyusup (hacker), dan para perusak

(cracker), dan sebagainya pasti juga semakin meningkat .

Kita tidak bisa terus-menerus terlena akan keadaan dan kondisi dimana kita

dalam keadaan aman. Apakah kita akan menunggu hingga jaringan kita rusak?

Tentu tidak! Setelah sebuah jaringan komputer kita berfungsi dan terhubung ke

jaringan internet, saat itulah kita harus mulai bersiaga dan memikirkan strategi

beserta cara-cara untuk meningkat keamanan dan kerahasian data dalam jaringan

komputer yang kita miliki. Dengan tingkat keamanan dan kerahasiaan jaringan

komputer yang tinggi, user pun akan merasa aman saat bekerja dijaringan

komputer.

Pemecahan masalah pengamanan file atau data, penulis akan mencoba

mencarikan cara yang lebih aman yaitu dengan melakukan pengaman file atau

data dengan menggunakan dua macam kriptografi, yaitu simetris dan asimetris.

Kriptografi asimetris menggunakan dua kunci yang berbeda, yaitu kunci publik

dan kunci rahasia atau kunci pribadi. Kunci-kunci itu berhubungan secara

matematis, dengan kunci publik hanya dapat mengenkripsi pesan tetapi tidak

1

Page 2: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

mendekrip pesan. Sedangkan kriptografi simetris menggunakan kunci yang sama

dalam mengenkripsi dan mendekripsi pesan

1.2 Rumusan Masalah

Dalam masalah pengiriman attachment pada e-mail yang “diamankan“ pada

skripsi ini adalah berupa file atau data yang akan dikirimkan ke orang lain.

Semua file atau data tersebut diamankan menggunakan teknik kriptografi.

Analisis masalahnya bagaimana perbedaan antara kriptografi simetrik dengan

kriptografi asimetrik, metode algoritma yang digunakan adalah algoritma

blowfish untuk kunci simetrik dan algoritma RSA untuk kunci asimetrik. Program

ini dirancang untuk dapat mengetahui perbedaan dalam teknik enkripsi dan

deskripsi, khususnya dalam hal kunci yang digunakan dari masing-masing

algoritma kriptografi tersebut.

1.3 Maksud dan Tujuan

Maksud dari pembuatan srikpsi dengan judul “Sistem Keamanan Kriptografi Simetris

Dan Asimetris Dalam Masalah Pengiriman Attachment Pada Email ” adalah menganalisis

perbedaan kunci dari kriptografi simetris dengan algoritma Blowfish dan kriptografi

asimetris dengan Algoritma RSA dengan simulasi file attachment yang diamankan.

Tujuannya adalah untuk keamanan file attachment dari para penyusup

(hacker) dan para perusak (cracker).

2

Page 3: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 1.1 Proses transmisi pengiriman data

1.4 Batasan Masalah

Batasan yang akan diteliti :

1. Masalah kriptografi diterapkan hanya untuk keamanan dan kerahasian file

atau data.

2. Menggunakan kriptografi simetris dengan algoritma Blowfish dan

kriptografi asimetris dengan algoritma RSA, masing-masing menggunakan

kunci dengan panjang 64 bit.

3. Penelitian tidak sampai pada masalah pendistribusian manajemen kunci,

khususnya untuk algoritma RSA

4. Tahapan

1.5 Metodologi

1 Mengadakan pengumpulan bahan atau data dari internet berupa jurnal,

paper, dan informasi-informasi yang berkaitan dengan topik penulisan.

2 Melakukan analisa pengujian pada pengiriman E-mail, berupa attachment.

Dalam jaringan client / server.

3 Program dibuat dengan menggunakan microsoft visual basic 6.0

3

Page 4: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

4 Eksekusi program dilakukan pada tiga komputer dengan konsep jaringan

intranet, dengan spesifikasi sebagai berikut :

Spesifikasi Server :

1. CPU : Intel Pentium 750 MHz

2. Hard Disk : 12 Gb

3. Monitor : 14”(resolusi 800x600,1024x768, dan 1280x1024 pixels)

4. Memori : 128 Mb SDRAM PC-133

Spesifikasi Client 1 :

1. CPU : AMD Duron 1000 MHz

2. Hard Disk : 40 Gb

3. Monitor : 14”(resolusi 800x600,1024x768, dan 1280x1024 pixels)

4. Memori : 256 Mb SDRAM PC-133

Spesifikasi Client 2 :

1. CPU : Intel Pentium 866 MHz

2. Hard Disk : 40 Gb

3. Monitor : 15”(resolusi 800x600,1024x768, dan 1280x1024 pixels)

4. Memori : 256 Mb SDRAM PC-133

1.6 Sistematika Pembahasan

Dalam penulisan skripsi ini, pembahasan dibagi kedalam beberapa bab, yaitu :

BAB I PENDAHULUAN

Pada bab ini berisi tentang latar belakang masalah, rumusan masalah, tujuan,

ruang lingkup kajian, metedologi dan sistematika pembahasan.

4

Page 5: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

BAB II LANDASAN TEORI

Bab ini membahas mengenai kriptografi, teknik dasar kriptografi, teori dari

metode algoritma Blowfish dan metode algoritma RSA, email dan konsep

umum jaringan komputer.

BAB III ANALISIS MASALAH

Bab ini berisi tentang deskripsi masalah dan analisis masalah tentang teknik

enkripsi dan deskripsi dari masing-masing kriptografi simetrik dan asimetrik.

BAB IV PERANCANGAN DAN IMPLEMENTASI

Bab ini berisi tentang perancangan dan implementasi kriptografi dari kunci

simetrik dan kunci asimetrik.

BAB V SIMULASI DAN PENGUJIAN

Bab ini berisi tentang simulasi program, skenario pengujian dan uji kasus,

serta analisis hasil pengujian.

BAB VI KESIMPULAN DAN SARAN

Bab ini berisi tentang kesimpulan dan saran dari penulis.

5

Page 6: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

BAB II

LANDASAN TEORI

2.1 Kriptografi

Teknik pengacakan data yang disebut enkripsi, telah membentuk suatu bidang

keilmuan yang disebut kriptografi. Prinsip dasar dari teknik kriptografi adalah

menyembunyikan informasi dalam bentuk yang sedemikian rupa sehingga hanya

orang-orang yang berhak saja yang dapat mengetahui isi informasi yang

disembunyikan itu. Keinginan untuk merahasiakan informasi sudah muncul sejak

zaman dahulu.

2.2 Teknik Dasar Kriptografi

Prosedur kriptografi dapat dibuat pada level kata maupun karakter, namun

untuk aplikasi praktis umumnya dibuat pada level karakter, karena bila dilakukan

pada level kata akan diperlukan suatu kamus pasangan kata yang

mengakomodasikan seluruh kata yang digunakan dalam pesan.

Dalam dunia kriptografi pesan yang akan dirahasiakan disebut plaintext,

sedangkan bentuk pesan hasil proses enkripsi disebut ciphertext. Terdapat lima

teknik yang mendasari kriptografi, berikut ini akan di contohkan prosedur enkripsi

dari masing-masing teknik dasar itu untuk melakukan pengacakan data terhadap

suatu plaintext.

6

Page 7: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Tabel 2.1 Model Substitusi

2.2.1 Substitusi

Langkah pertama adalah membuat suatu tabel substitusi. Tabel substitusi

dapat dibuat sesuka hati, dengan catatan bahwa penerima pesan memiliki tabel

yang sama untuk keperluan dekripsi. Bila tabel substitusi dibuat secara acak,

akan semakin sulit pemecahan ciphertext oleh orang yang tidak berhak.

Substitusi salah satu contoh teknik ini adalah caesar cipher.

Misalnya dibuat tabel sebagai berikut :

A B C D E F G H I J K L M

B F I K Q G A T P J 6 H Y

N O P Q R S T U V W X Y Z

D 2 X 5 M V 7 C 3 1 4 9 8

1 2 3 4 5 6 7 8 9 0

E J N R L S U W Z O

Tabel substitusi diatas dibuat secara acak. Dengan menggunakan tabel

tersebut, plaintext “ 2 MODEL KRIPTOGRAFI “ dihasilkan ciphertext “ J

Y2KQH 6MPX72AMBGP “ dengan menggunakan tabel substitusi yang sama

dengan arah yang terbalik, plaintext dapat diperoleh kembali dari ciphertext.

2.2.2 Blocking

Sistem enkripsi terkadang membagi plaintext menjadi blok-blok yang

terdiri dari beberapa karakter yang kemudian di enkripsikan dengan

menggunakan teknik blocking adalah sebagai berikut.

7

Page 8: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Tabel 2.2 Model Blocking

Contoh : 2 MODEL KRIPTOGRAFI

2 E I R Blok 1L P A Blok 2

M T F Blok 3O K O I Blok 4D R G Blok 5

Dengan menggunakan enkripsi blocking, dipilih jumlah lajur dan kolom

untuk penulisan pesan. Jumlah lajur atau kolom menjadi kunci bagi kriptografi

dengan teknik ini. Plaintext ditulis secara vertical kebawah berurutan pada

lajur, dan dilanjutkan pada kolom berikutnya sampai seluruhnya tertulis.

Ciphertext-nya adalah hasil pembacaan plaintext secara horizontal berurutan

sesuai dengan bloknya jadi ciphertext yang dihasilkan dengan teknik ini

adalah “ 2EIR LPAM TFOKOIDRG “ plaintext dapat pula ditulis secara

horizontal dan ciphertext-nya adalah hasil pembacaan secara vertical.

2.2.3 Permutasi

Salah satu teknik enkripsi yang terpenting adalah permutasi atau sering

juga disebut transposisi. Teknik ini memindahkan atau merotasikan karakter

dengan aturan tertentu. Prinsipnya adalah berlawanan dengan teknik

substitusi, karakter berada pada posisi yang tetap tapi identitasnya yang diacak

pada teknik permutasi, identitas karakternya tetap, namun posisinya yang

diacak. Sebelum dilakukan permutasi, umumnya plaintext terlebih dahulu

dibagi menjadi blok-blok dengan panjang yang sama.

Sebagai contoh kriptografi, plaintext akan dibagi menjadi blok-blok

yang terdiri dari 3 karakter, dengan aturan permutasi sebagai berikut.

8

Page 9: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Tabel 2.3 Model Permutasi 3 karakter

Tabel 2.4 Teknik Permutasi 3 karakter

1 2 3

1 2 3

Dengan menggunakan aturan diatas, maka proses enkripsi dengan

permutasi dari plaintext adalah sebagai berikut.

K R I P T O G R A F I

I R K O T P A R G I F

Ciphertext yang dihasilkan dengan teknik permutasi ini adalah “

IRKOTPARG IF “.

2.2.4 Ekspansi

Ekspansi suatu metode sederhana untuk mengacak pesan adalah dengan

memelarkan pesan itu dengan aturan tertentu. Salah satu contoh penggunaan

teknik ini adalah dengan meletakan huruf konsonan atau bilangan ganjil yang

menjadi awal dari suatu kata diakhiri kata itu dan menambahkan akhiran “ an

“. Bila suatu kata dimulai dengan huruf vokal atau bilangan genap

ditambahkan akhiran “ i “, proses enkripsi dengan cara ekspansi terhadap

plaintext terjadi sebagai berikut.

K R I P T O G R A F I

R I P T O G R A F I K A N

9

ciphertext

plaintext

Page 10: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Tabel 2.5 Metode EkspansiCiphertext adalah “ RIPTOGRAFI KAN “, aturan ekspansi dapat dibuat

lebih kompleks. Terkadang teknik ekspansi digabungkan dengan teknik

lainnya, karena teknik ini bila berdiri sendiri terlalu mudah untuk dipecahkan.

2.2.5 Pemampatan

Pengurangan panjang pesan atau jumlah bloknya, cara lain untuk

menyembunyikan isi pesan. Contoh sederhana ini menggunakan cara

menghilangkan setiap karakter ketiga secara berurutan. Karakter-karakter

yang dihilangkan disatukan kembali dan disusunkan sebagai lampiran dari

pesan utama, dengan di awali oleh suatu karakter khusus, dalam contoh ini

digunakan “ & “. Proses yang terjadi untuk plaintext kriptografi dapat dilihat

sebagai berikut :

K R I P T O G R A F I

K R P T G R F I

I O A

K R P T G R F I & I O A

Aturan penghilangan karakter dan karakter khusus yang berfungsi

sebagai pemisah, menjadi dasar untuk proses dekripsi ciphertext menjadi

plaintext kembali.

Dengan menggunakan kelima teknik dasar kriptografi diatas, dapat

diciptakan kombinasi teknik kriptografi yang amat.

10

plaintext

pesan yang dimampatkan

pesan yang dihilangkan

chipertext

Tabel 2.6 Metode Pemampatan

Page 11: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

2.3 Teknik Kriptografi

Dalam dunia kriptografi, teknik enkripsi yang digunakan dibagi menjadi dua

bagian besar, yaitu enkripsi konvensional (simetrik) dan enkripsi asimetrik (kunci

publik).

2.3.1 Skema Enkripsi Kunci Simetrik

Dalam sistem kriptografi skema enkripsi kunci simetrik, kunci yang

digunakan untuk proses enkripsi dan proses dekripsi adalah sama atau

simetrik.

Suatu plaintext dienkripsi dengan menggunakan suatu algoritma dan

kunci sehingga dihasilkan suatu ciphertext. Kemudian ciphertext tersebut

disimpan atau dikirim ke pihak lain. Selanjutnya untuk mendapatkan kembali

plaintext dari ciphertext yang disimpan atau diterima, dilakukan dekripsi

terhadap ciphertext dengan menggunakan algoritma dan kunci yang sama.

Karena kuncinya sama, ketika data atau informasi digunakan untuk dua

atau lebih pengguna, maka masing-masing pengguna yang berkepentingan

terlebih dahulu harus setuju terhadap algoritma dan kunci yang digunakan.

Setiap pengguna yang terlibat harus saling menaruh kepercayaan untuk tidak

membocorkan kunci yang telah disepakati.

Dalam aplikasinya, skema enkrisi kunci simetrik akan efektif jika pihak

pengguna terbatas, namun menjadi tidak efektif ketika pihak pengguna terlalu

banyak. Ketika pihak pengguna terlalu banyak, diperlukan produksi kunci

yang banyak pula untuk di distribusikan ke masing-masing pengguna.

11

Page 12: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 2.1 Model Kriptografi Simetrik

Kunci yang dihasilkan oleh suatu sistem manajemen kunci. Manajemen

dan distribusi kunci merupakan persoalan yang paling utama ketika skema

enkripsi simetrik digunakan oleh pihak begitu banyak, karena tingkat

keamanannya menjadi sangat menurun. Beberapa kelemahan yang terdapat

pada skema enkripsi simetrik adalah :

1. Kunci harus terdistribusi dengan aman.

2. Jika kunci hilang atau dapat diketahui atau ditebak oleh pihak yang

tidak berhak, sistem kriptografi ini tidak aman lagi.

3. Jika ada n pengguna maka dibutuhkan jumlah kunci sebanyak

n(n-1)/2 kunci. Untuk jumlah yang besar sistem kriptografi ini

menjadi tidak efisien lagi, sebagai contoh : jika ada 1000 pengguna

maka dibutuhkan jumlah kunci kira-kira sebanyak 500.000 kunci

untuk diubah dan dipelihara secara aman.

Keuntungan dari skema enkripsi kunci simetrik ini adalah lebih cepat

dalam melakukan prosesnya dibandingkan terhadap skema kunci asimetrik.

Keuntungan inilah yang menjadi alasan mengapa skema ini masih banyak

digunakan sekalipun diakui kurang aman dibandingkan dengan skema kunci

asimetrik.

Contoh skema enkripsi kunci simetrik antara lain : DES (Data

Encryption Standard), IDEA (International Data Encryption Algorithm),

FEAL, RC5.

12

Page 13: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 2.2 Model Kriptografi Asimetrik

2.3.2 Skema Enkripsi Kunci Asimetrik

Dalam kriptografi skema enkripsi kunci simetrik, semua pihak pengguna

mengetahui dan menggunakan kunci yang sama, yang digunakan untuk

keperluan enkripsi dan dekripsi. Sebagaimana telah disebutkan pada bagian

sebelumnya skema ini memiliki persoalan mendasar dalam manajemen

kuncinya untuk memecahkan masalah ini, Whitfield Diffie dan Martin

Hellman memperkenalkan konsep kriptografi kunci publik (kunci asimetrik)

pada tahun 1976.

Sistem kriptografi kunci publik mempunyai dua penggunaan utama,

yaitu untuk enkripsi dekripsi dan tanda tangan digital (digital signature).

Dalam sistem ini, digunakan sepasang kunci, kunci pribadi (private key), dan

kunci publik dipublikasikan untuk umum sedangkan kunci pribadi dijaga

kerahasiaannya oleh pemilik kunci.

Hubungan antara kunci publik dan kunci pribadi merupakan fungsi satu

arah (one way function). Seseorang dapat mengirim sebuah pesan rahasia

dengan hanya menggunakan kunci publik tetapi pesan ciphertext hanya dapat

didekripsi dengan kunci pribadi oleh penerima pesan. Kriptografi kunci publik

dapat digunakan tidak hanya untuk enkripsi tetapi juga untuk autentifikasi

(digital signature), dan beberapa teknik yang lain.

13

Page 14: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Pada gambar diatas diperlihatkan skema enkripsi kunci publik. Suatu

plaintext dienkripsi dengan menngunakan suatu kunci publik sehingga

dihasilkan suatu ciphertext, kemudian ciphertext tersebut disimpan atau

dikirim kepihak lain, untuk mendapatkan kembali plaintext dari ciphertext

yang disimpan atau diterima dilakukan proses dekripsi terhadap ciphertext

dengan menggunakan kunci pribadi.

Sistem kriptografi yang menggunakan kunci publik : RSA, Elgamal,

Rabin, DSA. Pada tabel berikut diperlihatkan beberapa perbandingan antara

kunci publik dan kunci simetrik.

Skema Kunci Asimetrik Skema Kunci SimetrikKunci enkripsi dan dekripsi berbeda

dan saling berpasangan.

Kunci enkripsi dan dekripsi sama

Panjang kunci biasanya panjang. Panjang kunci biasanya relatif pendek

Pengaturan kunci lebih mudah. Pengaturan kunci tidak mudah

Keamanan lebih terjamin karena

kunci pribadi tidak pernah

ditransmisikan atau dipublikasikan

kepada seseorang.

Keamanan kurang terjamin karena kunci

harus ditransmisikan, kunci ini dipakai

bersama oleh pengirim dan penerima

Menyediakan fasilitas digital

signature yang tidak dapat disangkal,

ini menjamin keautentikan pengirim

dan asal data.

Tidak menyediakan signature, sehingga

pengirim memungkinkan dapat

menyangkal

Kecepatan prosesnya lebih lambat. Kecepatan prosesnya cepat

14

Page 15: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

2.4 Metode Algoritma Blowfish

2.4.1 Enkripsi Algoritma Blowfish

Blowfish adalah cipher blok 64-bit yang memiliki sebuah kunci yang

panjangnya variabel. Algoritma blowfish terdiri dari dua bagian yaitu key

expansion dan enkripsi data. Blok diagram enkripsi algoritma Blowfish dapat

dilihat pada gambar 2.3

Key expansion mengkonversikan sebuah kunci sampai 448 bit ke dalam

beberapa array subkey dengan total 4168 byte.

Enkripsi data terdiri dari sebuah fungsi yang sederhana dengan iterasi 16

kali. Semua operasi, penjumlahan dan XOR pada word 32-bit.

Blowfish menggunakan sejumlah subkey yang besar. Key ini harus

dihitung awal sebelum enkripsi atau dekripsi [1]

P-array mempunyai 18 subkey 32-bit :

P1, P2, P3,..............................P18

Empat S-box 32- bit mempunyai masing-masing 256 entry yaitu :

S1,0, S1,1, S1,2, S1,3, ................S1,255

S2,0, S2,1, S2,2, S2,3, ................S2,255

S3,0, S3,1, S3,2, S3,3, ................S3,255

S4,0, S4,1, S4,2, S4,3, ................S4,255

15

F

13 iterasi lagi

P2

F

Plaintext

P1

64 bit32 bit32 bit

32 bit

32 bit 32 bit

P18

F

Ciphertext

P16

32 bit 32 bit

64 bit

P17

Page 16: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 2.3 Blok diagram Algoritma Enkripsi Blowfish

16

Page 17: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

S-Box 2

S-Box 1

S-Box 3

S-Box 4

a

b

c

8 bit

d

8 bit

8 bit

8 bit

32 bit

32 bit

32 bit

32 bit

32 bit

32 bit

Blowfish adalah sebuah jaringan Feistel yang mempunyai 16 round.

Inputnya adalah ( x ) element data 64-bit. Untuk mengenkripsi ( x ) yaitu :

Bagi ( x ) dalam dua bagian 32-bit menghasil ( xL ) dan ( xR ).

Untuk i = 1 sampai 16 maka :

xL = xL Pi

xR = F(xL) xR

Swap (tukar) xL dan xR

Swap (tukar) xL dan xR (mengulang swap yang lalu)

xR = xR P17

xL = xL P18

Gabungkan kembali xL dan xR [1, 7]

Fungsi F adalah sebagai berikut [1]

Bagi xL dalam empat kuarter 8-bit yaitu a, b, c dan d seperti gambar 2.4 maka

F(xL) = ((S1,a + S2,b mod 232 ) S3,c ) + S4,d mod 232

Gambar 2.4 Fungsi F (Bruce Schenier: 1996)

2.4.2 Dekripsi Algoritma Blowfish

17

Page 18: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

F

13 iterasi lagi

P17

F

Ciphertext

P18

64 bit32 bit32 bit

32 bit

32 bit 32 bit

P1

F

Plaintext

P3

32 bit 32 bit

64 bit

P2

Dekripsi sama persis dengan enkripsi, kecuali bahwa P1, P2,…, P18

digunakan pada urutan yang berbalik (reverse). Blok diagram dekripsi seperti

pada gambar 2.5.

Gambar 2.5 Blok Diagram Dekripsi Blowfish

18

Page 19: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Dengan membalikkan 18 subkey untuk medekripsi metode algoritma

Blowfish. Pertama, masalah ini nampak tidak dapat dipercaya, karena ada dua

XOR operasi yang mengikuti pemakaian f-fungsi yang sebelumnya, dan hanya

satu yang sebelumnya pemakaian pertama f-fungsi. Meskipun jika kita

memodifikasi algoritma tersebut sehingga pemakaian subkey 2 sampai 17

menempatkan sebelum output f-fungsi yang di-XOR-kan ke sebelah kanan

blok dan dilakukan ke data yang sama sebelum XOR itu, walaupun itu berarti

ia sekarang berada di sebelaha kanan blok, karena XOR subkey tersebut telah

dipindahkan sebelum swap (tukar) kedua belah blok tersebut (tukar separuh

blok kiri dan separuh blok kanan). Kita tidak merubah suatu apapun karena

informasi yang sama di-XOR-kan ke separuh blok kiri antara setiap waktu,

informasi ini digunakan sebagai input f-fungsi. Kenyataannya, kita

mempunyai kebalikan yang pasti dari barisan dekripsi. [5]

2.4.3 Jaringan Feistel

Banyak algoritma menggunakan jaringan Feistel. Ide ini muncul pada

tahun 1970. Bila kita ambil sebuah blok dengan panjang n dan bagilah blok

tersebut dengan dua bagian sepanjang n/2 yaitu bagian L (kiri0 dan bagian R

(kanan). Tentu saja panjang n adalah genap. Kita dapat mendefinisikan

sebuah cipher blok iterasi dimana output round ke-I ditentukan dari output

round sebelumnya. [1,6]

19

Page 20: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Ki adalah subkey yang digunakan dalam round ke-I dan f adalah fungsi

round arbitrary.

2.4.4 Membangkitkan Subkey (Generating The Subkeys)

Subkey dihitung menggunakan algoritma Blowfish. Metode yang pasti

sebagai berikut. [4, 7]:

1. Pertama inisial P-array dan kemudian S-boxes, agar mempunyai string

yang tetap. String ini terdiri dari digit hexadesimal.

2. XOR P1 dengan 32 bit key pertama , XOR P2 dengan 32- bit key yang

kedua dan seterusnya untuk semua bit key, sampai semua P-array yang

telah di-XOR-kan dengan key bit.

3. Enkripsikan string all-zero dengan algoritma blowfish menggunakan

subkey yang dijelaskan pada langkah 1 dan langkah 2.

4. Gantikan P1 dan P2 dengan output langkah 3.

5. Enkripsikan output langkah 3 menggunakan algoritma Blowfish dengan

subkey yang termodifikasi.

6. Gantikan P3 dan P4 dengan output langkah 5.

7. Teruskan proses tersebut, gantikan semua entry P-array, dan kemudian

semua empat S-boxes supaya mempunyai output algoritma Blowfish

secara kontinyu berubah.

Total iterasi 521 dibutuhkan untu membangkitkan semua subkey yang

diinginkan dari pada mengeksekusi proses turunan ini beberapa kali. [4]

2.4.5 Kriteria Algoritma Blowfish

20

Page 21: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Blowfish dirancang oleh Bruce Schneier dengan kriteria rancangan

sebagai berikut. [1]

1. Cepat. Blowfish mengenkripsi data pada 32-bit microprosesor dengan rate

26 clock siklus per byte.

2. Tersusun rapi (compact). Blowfish dapat running kurang lebih 5 K

memori.

3. Sederhana (simple). Blowfish hanya menggunakan operasi yang sederhana

yaitu penjumlahan, XOR dan tabel dalam mencari operand 32-bit.

Rancanannya mudah dianalisa yang membuatnya tahan terhadapat

kesalahan (errors) implimentasi.

4. Keamanannya variabel. Panjang key (kunci) adalah variabel dan dapat

menjadi sepanjang 448 bit.

Blowfish dioptimasi bagi aplikasi-aplikasi dimana kunci tersebut tidak

sering berubah, seperti jaringan komunikasi atau sebuah encriptor file

otomatis. Blowfish ini siknifikan lebih cepat dari pada DES bila implimentasi

pada 32-bit mikroprosesor yang mempunyai cahce data yang besar, seperti

Pentium dan PowerPC. Blowfish tidak cocok untuk aplikasi seperti paket

switcing yang kuncinya sering berubah, atau sebagai sebuah fungsi hash one-

way. Syarat memorinya besar yang membuatnya tidak mungkin untuk aplikasi

smart card. [1]

2.5 Metode Algoritma RSA

21

Page 22: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Membahas prinsip kerja RSA, serta berbagai teori dan perhitungan

matematika yang digunakan pada algoritma RSA.

2.5.1 Prinsip Kerja RSA

RSA (Rivest Shamir Adleman) adalah singkatan dari para pembuatnya

yaitu Ron Rivest, Adi Shamir dan Leonard Adleman yang dibuat pada tahun

1977. RSA merupakan sistem kriptografi asimetrik.

Prinsip kerja RSA hanya menggunakan operasi pemangkatan dan

operasi mod (modulus) yang menghasilkan nilai yang relatif acak.[5]

C = Me mod n (2.1)

Pada tabel 2.1 terlihat tingkat kesulitan untuk menemukan hubungan

yang simetris antara angka-angka dikolom M dengan anka-angka dikolom C,

dikolom C diperoleh dari operasi M7 mod 77.

M 2 3 4 5 6 7 8 9 10

C 51 31 60 47 41 28 57 37 10

Karena hubungan yang terlihat acak, maka sulit untuk mendapatkan

kembali nilai M walaupun diketahui nilai e, n dari hasil operasi Me mod n.

Oleh karena itu dibutuhkan nilai pasangan dari e pada contoh tersebut

pasangan dari e = 7 dan e = 43, tepatnya dilakukan M7 mod 77 lalu hasilnya

dipasangkan dengan 43 dan di-mod-kan dengan 77, maka akan didapat nilai M

kembali secara matematis dapat ditulis :

M = Cd mod n (2.2)

22

Tabel 2.8 Nilai C = M7 mod 77

Page 23: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Contoh jika C = 31, d = 43 dan n = 77 maka:

M = 3143 mod 77

= 3

Pada prinsipnya kerja RSA ini adalah dimana e sebagai kunci publik, d

sebagai kunci pribadi, M sebagai plaintext, C sebagai ciphertext, dan n sebagai

modulus publik. Dari prinsip kerja RSA dapat dilihat bahwa keamanan sistem

penyandian RSA bergantung pada kunci-kunci yang digunakan untuk enkrip

dan deskripsi, ukuran kunci yang digunakan pada sistem penyandian ini

menentukan jumlah kombinasi kunci yang mungkin. Jika menggunakan

ukuran 64 bit, maka total banyaknya kombinasi kunci yang mungkin adalah

264 = 18446744073709551616

Ukuran yang terbaik untuk modulus publik RSA bergantung pada

kebutuhan keamanan, jika modulusnya besar, maka akan diperoleh keamanan

yang lebih terjamin, tetapi kecepatan operasi RSA nya lebih lambat, karena

untuk membangkitkan modulus n harus merupakan hasil kali dua bilangan

prima p dan q yang menyusun modulus harus sama panjangnya. Hal ini akan

membuat modulus lebih kokoh. Jadi jika digunakan modulus 64 bit maka

masing-masing bilangan prima harus mempunyai panjang 32 bit, dua bilangan

prima yang menyususn modulus n berasal dari bilangan-bilangan acak yang

terdapat pada program, dengan metode pembangkitan bilangan acak untuk

menentukan bilangan prima p dan q.

2.5.2 Teori Matematika

23

Page 24: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Teori dasar secara matematika yang diterapkan dalam pengamanan data

digital dengan teknik enkripsi RSA.

2.5.2.1 Bilangan Prima

Merupakan bilangan bulat utuh (integer) yang lebih besar dari satu

serta hanya dapat dibagi oleh faktor satu dan bilangan itu sendiri.

Jika dua bilangan adalah prima secara relatif pada saat kedua

bilangan tersebut tidak membagi faktor yang bersamaan selain dari bilangan

satu. Dengan kata lain misalnya p adalah bilangan prima relatif terhadap n

jika pembagi bersama terbesar (greatest common divisor) dari p dan n sama

dengan satu, secara matematis ditulis sebagai.

GCD(p,n)=1 (2.3)

2.5.2.2 Algoritma Euclidean

Algoritma Euclidean (Euclid’s algorithm) adalah suatu proses untuk

menemukan pembagi bersama terbesar (greatest common divisor) dari dua

bilangan bulat untuk semua pasangan dari bilangan bulat utuh (integer) yaitu

s dan d terdapat sepasang bilangan bulat utuh yang unik, yaitu q sebagai

hasil bagi dan r sebagai sisa, secara matematis dapat ditulis sebagai berikut.

s =dq + r (2.4)

Dengan 0≤ r ≤ |d|

Jika diberikan dua bilangan bulat positif r dan s pembagi bersama

terbesarnya dapat dihitung dengan penerapan algoritma pembagian

euclidean pada saat r < s, algoritma euclidean menggunakan langkah-

langkah berikut.

24

Page 25: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

s = q1r + r1 (2.5)

r = q2r + r2 (2.6)

r1 = q3r + r3 (2.7)

.

.

.rn-2 = qn rn-1 + rn (2.8)

rn-1 = qn+1 rn (2.9)

proses ini akan berhenti pada saat telah didapatkan sisa sama dengan

0. sisa rn yang bukan nol terakhir adalah pembagi bersama terbesar (greatest

common divisor) dari r dan s. secara matematika dapat ditulis sebagai

berikut.

Rn = GCD(r,s) (2.10)

Dari algoritma pembagian euclidean dapat diperoleh beberapa sifat

aljabar bilangan bulat utuh yang sangat penting, yaitu untuk setiap bilangan

bulat utuh r dan s terdapat bilangan bulat utuh a dan b yang disebut

kombinasi linear dari r dan s secara matematis dapat ditulis sebagai berikut.

GCD(r,s) = ar + bs (2.11)

2.5.2.3 Teorema Euler dan Fungsi - Euler

leonhard pada tahun 1760 membuat teorema euler dan fungsi -

euler. jika GCD(a,n) = 1, maka a(n) = 1 (mod n). Teorema euler ini

berguna dalam perumusan pangkat yang besar dari modulus n.

2.5.2.3.1 Fungsi - Euler

25

Page 26: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

fungsi - atau euler’s totient function di definisikan sebagai (n)

adalah jumlah bilangan bulat utuh (integer) positif yang tidak lebih dari n

dan merupakan bilangan prima secara relatif dengan n utuk n ≥ 1

jika n bilangan prima, maka setiap bilangan bulat utuh positif

yang kurang dari n adalah prima secara relatif dengan n. Secara matematik

dapat ditulis. [7]

(n) = n – 1 (2.12)

jika dan hanya jika n adalah bilangan prima

contoh : (11) = 10, (23) = 22, (29) = 28

jika n = p* q dengan p dan q adalah bilangan prima. [7]

(n) = (p) * (q) (2.13)

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

jika dan hanya jika p dan q adalah bilangan prima

contoh : (35)

(35) = (5) * (7) = (5-1) * (7-1)

= 4 * 6 = 24

jadi bilangan bulat utuh positif 24 adalah prima secara relatif

dengan 35

2.5.2.3.2 Teorema Euler

misalnya r1,r2,...,r(n) menjadi bilangan bulat utuh positif (n) yang

kurang dari n dan merupakan bilangan prima secara relatif dengan n. Jika

diberikan suatu nilai a, maka ar1,ar2,...,ar(n) harus kongruen dengan

perubahan urtutan angka dari r1,r2,...,r(n) (mod n) pada urutan tertentu, dan

26

Page 27: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

bilangan-bilangan (n) semuanya harus berbeda dan prima secara relatif

dengan n.

Untuk ari, ri ε z dapat ditentukan bahwa ari adalah kongruen

(sama dan sebangun) dengan ri (mod n) yang dilambangkan dengan.[8]

ari ≡ ri (mod n) (2.15)

jika ari – ri dapat dibagi rata dengan n, sehingga

ari – ri = n * t (2.16)

untuk t ε z

contoh : 17 ≡ 33 (mod 8), karena 17 – 33 = 8(-2) hal ini berarti

bahwa ari dan ri mempunyai sisa yang sama pada saat dibagi dengan n

tetapi ari tidak perlu lebih kecil dari n.

Pada saat GCD(ari,n) = 1 untuk setiap i, 1 ≤ i ≤ (n) maka

berlaku persamaan berikut [7]

(ar1) (ar2) ... (ar(n)) ≡ r1 r2 ... r(n) (mod n) (2.17)

atau

a(n) (r1 r2 ... r(n)) ≡ r1 r2 ... r(n) (mod n) (2.18)

pada saat GCD(ri,n) = 1 dengan i = 1, 2, ...,(n), hal ini menunjukkan

bahwa hasil kali r1, r2, ...,r(n) juga adalah bilangan prima secara relatif

dengan n, sehingga GCD(r1 r2 ... r(n), n) = 1

jika n ≥ 2 adalah bilangan bulat utuh (integer) positif dan

GCD(a,n) ≡ 1 maka. [7]

a(n) = 1 (mod n) (2.19)

27

Page 28: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

dengan (n) merupakan bilangan bulat utuh positif kurang dari n dan

prima secara relatif dengan n. Persamaan (2.19) disebut teorema euler

dengan fungsi - euler.

2.5.3 Algoritma RSA

Model sistem penyandian RSA memiliki 2 buah kunci yang berbeda,

yaitu enkripsi dan kunci deskripsi. Enkripsi untuk menyandikan sebuah pesan

(plaintext) adalah bilangan bulat utuh (integer) disimbolkan e dan kunci

diskripsi menerjemahkan pesan tersandi (ciphertext) adalah bilangan bulat

utuh yang disimbolkan dengan d .

Dalam perancangan ini terdapat bilangan bulat untuh n sebagai modulus

publik yang diperoleh dari perkalian dua bilangan prima secara acak yaitu p

dan q dan p ≠ q.

n = p * q (2.20)

kunci e sebagai kunci publik (publik key) dipilih sebagai bilangan prima

dan prima secara relatif (reletively prime) dengan (n) sebagai euler’s untuk

totient function.

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

Kunci e adalah prima secara relatif dengan (n) jika

GCD (e, (n)) = 1 (2.22)

Yang dapat dibuktikan dengan algoritma Euclidean.

Ciphertext C dapat dihasilkan dengan cara memproses plaintext M,

0 ≤ M ≤ n-1 yang dapat dipangkatkan dengan kunci publik e kemudian di-

mod-kan dengan modulus publik n, seperti yang diperlihatkan berikut ini.

28

Page 29: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Ek (M) = C = Me (mod n) (2.23)

Sebaliknya plaintext asli dapat dihasilkan kembali dengan memproses

ciphertext C yang dipangkatkan dengan kunci pribadi d kemudian di-mod-kan

dengan modulus publik n, seperti.

Dk (C) = M = Cd (mod n) = Med (mod n) (2.24)

Kunci pribadi (private key) d dapat dihasilkan dengan menggunakan

teorema euler yang dapat menurunkan pangkat yang besar dari modulus n

dengan urutan sebagai berikut. Dari teorema euler a(n) ≡ 1 (mod n) untuk

GCD(a,n) = 1, misalkan a menjadi plaintext maka teorema euler menjadi.

M(n) ≡ 1 (mod n) (2.25)

Dengan GCD(m,n) = 1 sehingga plaintext M, adalah prima secara relatif

dengan n, berdasarkan teorema a(n) ≡ 1 (mod n) (3.26)

Jika a = b (mod n) maka berlaku a = b (mod n) untuk GCD(,n) = 1.

dari teorema tersebut maka persamaan (2.26) menjadi.

M(n) * M ≡ 1 * M (mod n).

M(n)+1 ≡ 1 * M (mod n) (2.27)

Dari persamaan (2.24) dan (2.27) dapat dilihat

(n)+1 = e * d

1 = e * d - (n) (2.28)

Persamaan (2.28) dapat ditulis dalam bentuk

e * d ≡ 1 (mod (n)) (2.29)

29

Page 30: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

yang merupakan fungsi matematik untuk menghitung kunci pribadi d

berdasarkan teorema euler serta dipengaruhi oleh kombinasi linear dari e dan

(n) menghasilkan bentuk 1 = e * d - (n) .

jika kombinasi linear dari e dan (n) menghasilkan bentuk

1 = (n) – e * d (2.30)

maka untuk memperoleh bentuk 1 ≡ e * d (mod (n)) nilai d harus

ditempatkan kembali dengan (n) – d, sehingga persamaan (2.30) menjadi.

1 = (n) – e((n) – d)

1 = (n) – e(n) + ed

1 = ( – e) (n) + ed (2.31)

dengan - e adalah bilangan bulat utuh, dengan kata lain, jika nilai d < 0

maka nilai d menjadi d1 = d + (n).

2.6 E-Mail

Konsep email adalah seperti kita mengirim surat dengan pos biasa, dimana

kita mengirimkan ke kantor pos dengan diberi alamat yang dituju. Dari kantor pos

tersebut akan disampaikan ke kantor pos terdekat dengan alamt yang dituju dan

akhirnya sampai ke alamt tersebut. Dan penerima hanya membuka kotak posnya

saja yang ada didepan rumah. Pengirim tidak tahu apakah orang yang dituju sudah

menerima surat tersebutatau belum, langsung dibalas atau tidak.

Dengan email data terkirim secara elektronik sehingga samapi ditujuan

dengan sangat cepat. Selain itu dapat juga dikirim file-file berupa program,

30

Page 31: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

gambar dan aflikasi lainnya. Kita juga dapat mengirim ke lebih satu orang dalam

waktu yang bersamaan.

Pengiriman email yang lebih cepat dapat dilakukan dengan menggunkan

Simple Mail Transfer Protocol (SMTP). Untuk masalah ini, setelah dibuat,server

mail segera membangun hubungan dengan alamt tujuan dan mengirimkannya.

Untuk mengirimkan pesan melalui email, seorang baru hanya membutuhkan

informasi alamat penerima, yang terdiri dari nama dan alamat. Bagian nama

digunakan user-id penerima dan tempat adalah domain name dari komputer yang

dituju. Simbol @ digunakan untuk memisahkan kedua bagian ini. Jika seorang

user ingin mengirimkan email kepada seseorang pada komputer yang sama, maka

user tersebut tidak perlu memberikan domain name, karena komputer secara

otomatis akan menyampaikannya kepada pemakai lokal dengan ID tersebut.

Email terdiri dari tiga bagian yang berbeda, yaitu header, isi pesan dan tanda

tangan. Bagian header digunakan untuk mengetikan alamat pengirim, alamt

penerima, tanggal dan waktu pesan yang dikirim, ID yang digunakan oleh

program email dan subyek pesan email tersebut. Bagian kedua terdiri dari isi

pesan yang ingin disampaikan. Aturan umum di internet adlah menghindari

pengiriman pesan lebih besar dari 64 KB. Bagian ketiga adalah tanda tangan.

Tanda tangan tersebut dibuat dengan gambar dari simbol karakterASCII.

2.6.1 Cara Kerja Email

Sama halnya dengan surat biasa yang harus melewati beberapa kantor

pos sebelum sampai tujuannya,begitu dikirimkan oleh seseorang melalui

komputer yang tersanbung ke internet sebuah email masuk kebeberapa

31

Page 32: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

komputer lain di sepanjang jaringan internet. Komputer-komputer itu disebut

dengan email server. Ketika email tersebut sampai ke server yang menjadi

tujuan seperti yang ditunjuk pada alamt email kepada siapa kita menulis email,

email tersebut disimpan pada subuah emailbox.

Untuk bisa menerima email kita meski memiliki sebuah account pada

suatu email server yang tentu berada pada sebuah ISP (Internet Service

Provider). Ini sama dengan bila kita memiliki alamat rumah kita. Hanya

bedanya , bila pada snail mail kita hanya bisa menerima surat manakala kita

berada dialamat kita, sedangkan pada email, kita bisa menerimanya di mana

saja kita berada.

Hal itu bisa dilakukan karena bila kita bisa menghubungi sebuah email

server di mana kita punya account email, maka kita bisa menggambil atau

men-download semua email yang ditunjukan kepada alamat email yang kita

miliki. Untuk itu kita meski memperhatikan protokol penerimaan dan

pengiriman email. Protokol disini maksudnya adalah sebuah prosedur standar

untuk mengatur transmisi data diantara komputer-komputer. Untuk

pengiriman, protokolnya adalah SMTP, singkatan dari Simple Mail Transfer

Protocol; untuk penerimaan, protokolnya adalah POP singkatan dari Post

Office Protocol. Setiap email server memiliki SMTP dan POP yang berbeda-

beda.

2.6.2 Anatomi Alamat Email

Alamat email terdiri dari dua bagian yang terpisahkan dengan tanda axon

/ @ misalnya alamat [email protected]. Disebelah kiri @ disebut

32

Page 33: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

user name (herry.st), yang menunjuk pada identitas sipemilik alamat email.

User name bisa merupakan nama si pemilik, singkatan nama, nickname,

nomor, atau apapun juga. User name juga menjadi nama bagi emailbox yang

dimiliki seseorang di sebuah mail server.

Di sebelah kanan @ (unikom.ac.id disebut domain name) yang

menunjukan identitas mail server dimana seorang user memiliki emailbox

doamian name biasanya menunjukan nama perusahaan atau organisasi pemilik

sebuah account. [email protected] (Yayasan Lembaga Bantuan Hukum

Indonesia).

Selain itu, dari bagian paling belakang dari sebuah email kita bisa

memperoleh beberapa dugaan mengenai pemiliknya. Misalnya .com, biasanya

ini dimiliki oleh perusahaan komersialatau usaha bisnis lainnya, edu., biasanya

menunjukan bahwa pemiliknya adalah sebuah universitas atau institusi

pendidikan, seperti [email protected], .gov, dimiliki oleh instansi

pemerintah, .mil, dimiliki instansi militer.

2.6.3 Mekanisme Email

Dalam perkembangannya, email ternayata tidak hanya seperti yang

dideskripsikan pada keterangan di atas. Lebih rinci, dari mekanisme

pengiriman dan penerimaannya terdapat beberapa jenis sebagai berikut :

1. POP Email

Email jenis ini adalah persis seperti yang telah dijelaskan pada baigian

diatas. POP singkatan dari Post Office Protocol. Jadi, jalan yang dilalui

sebuah email mirip dengan yang dialami oleh sebuah surat biasa yang

33

Page 34: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

mesti melewati beberapa kantor pos perantara sebelum akhirnya sampai

ketujuan. Akan halnya dengan email, sebuah email akan melewti beberapa

komputer yang berperan sebagai router atau email server, sebelum

akhirnya tiba pada email server yang ada pada ISP dimana alamat email

kita terdaftar.

2. Web Base Email

Web Base Email, atau email berbasis wab dikembangkan dengan tujuan

untuk memberikan jasa email kepada orang yang memiliki akses internet,

tetapi tidak memiliki account email sendiri, atau yang dimiliki bukan akses

ke email server tapi sebuah web server.

Jadi, orang yang akan mengirimkan email pertama-tama harus memiliki

prosedur untuk membuat sebuah account email yang pada umumnya

disediakan secara gratis. Setelah selesai kita akan memiliki sebuah account

email dengan user name yang telah kita tentukan dan domain name yang

sudah ditetapkan oleh si pemberi jasa email gratis ini, termasuk dengan

password. Bila kita akan menulis sebuah email, email tersebut tidak ditulis

pada email client yang konvensional tapi pada sebuah kolom / halam

khusus yang disediakan untuk itu. Pada kolom / halaman tersebut sudah

lengkap tersedia bagian-bagian yang bisa diklik untuk mengirimkan,

menyimpan, dan sebagainya.

Bila kita akan mengecek apakah ada email yang ditujukan untuk kita ,

maka kita harus masuk kebagian inbox yang tentu disediakan dihalaman

tertentudi website yang memberikan jasa email semacam ini. Sekali lagi,

34

Page 35: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

semuannya tidak menggunakan email client, seperti yang dituliskan diatas,

tapi fasilitas yang dibuat khusus pada sebuah website. Contoh untuk ini

banyak sekali, seperti hotmail.com, yahoo.com, mailexcite.com, dan

sebagainya.

3. Email Forwarder

Email Forwarder adalah sebuah fasilitas yang dulu banyak tersedia secara

gratis, tapi kini sudah banyak yang komersial, dalam arti menuntut kita

untuk membayar sejumlah uang tertentu.

Pengertian Email Forwarder adalah sebuah cara untuk membuat alias dari

alamat email kita yang sebenarnya. Orang menggunakan Email Forwarder

dengan berbagai macam alasan. Mungkin alamat email yang sebenarnya

dirasakan terlalu jelas menunjukan identitas seseorang, seperti ISP yang

digunakan, atau negara asal pengirim. Alasan lain boleh jadi adalah bila

seseorang ingin anonim dalam sebuah forum diskusi tertentu, atau

mungkin menggunakan sebuah email forwarder dan dengan identitas

yang sama sekali lain.

2.6.4 Format Email

1. Plain Text

Dengan Plain Text, dimaksudkan bahwa tulisan yang kita ketikan hanya

berupa data dalam format ASCII (American Standard Code for

Information Interchange). Tulisan yang disajiakan dalam format Plain

Text sama sekali tidak memungkinkan kita untuk membuat modifikasi

pada tampilan visualnya, seperti membuat tebal, atau membuat miring

35

Page 36: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

sebuah teks, mengganti warna, ukuran huruf, latar belakang, atau

membubuhkan hiasan-hiasan tertentu.

2. HTML

HTML singkatan dari HyperText Mark-up Languange, yaitu sebuah

bahasa standar yang digunakan untuk menampilkan/mengatur penampilan

materi-materi informasi di internet. Email yang ditulis menggunakan

format HTML akan memungkinkan isinya disusun secara variatif, mulai

dari pengaturan huruf, warna, layout, sampai peletakan gambar.

2.6.5 Variasi Email

Dalam beberapa hal email memang meniru surat biasa, meskipun jelas

email memiliki banyak kelebihan lain. Ini terlihat jelas pada kemungkinan

bentuk komunikasi yang bisa dilakukan dengan email.

Sekurang-kurangnya adal lima macam, yaitu : point to point, carbon copy,

blind carbon copy, distribution list dan disscussion list.

1. Point to Point

Maksudnya adalah mengirimkan email langsung ke sebuah alamat

tertentu. Di Indonesia terdapat kesepakatan diantara mereka yang sering

berkirim email bahwa ini dinamakan japri, singkatan dari jalur pribadi.

2. Carbon Copy

Pengertian Carbon, disini analog dengan bila kita mengetik surat (dengan

mesin tik konvensional) menggunakan kertas karbon untuk dapat

salinannya. Maksudnya adalah sebuah email, selain ditunjukan kesebuah

alamat utama juga dikirimkan tembusannya ke alamat lain. Biasanya

36

Page 37: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

alamat utama kita tuliskan pada bagian yang diawali dengan “TO”,

sedangkan alamat tembusannya kita tuliskan pada bagian “CC”

3. Blind Carbon Copy

Ini adalah variasi dari CC. orang yang menerima email yang alamatnya

dituliskan pada bagain “TO” oleh sipengirim, bisa melihat kepada siapa

atau kepada alamat email mana saja email tersebut dikirimkan sebagai

tembusan. Ini karena ia bisa melihat langsung pada bagian “CC”. kadang-

kadang ada kbutuhan untuk mengirimkan sebuah email kepada seseorang

tapi kita tidak ingin orang tersebut tahu bahwa kita juga mengirimkan

tembusannya kepada alamat orang lain. Untuk itulah digunakan BCC.

Beberapa email client menyediakan bagian “BCC”, selain “TO” dan ”CC”.

4. Distribution List

Pengertian Distribution List agak berbeda dengan tiga variasi bentuk

sebelumnya, karena ini lebih berkenaan dengan pengaturan distribusi

email yang dilakukan secara external, artinya tidak terintegrasi dengan

email client yang digunakan.

Yang dimaksud dengan Distribution List adalah sebuah cara komunikasi

dengan menggunakan email secara satu arah. Biasanya ini dibuat oleh

orang yang berkepentingan untuk menyebarluaskan informasi tertentu

(pengumuman, berita harian, update mengenai perkembangan suatu

proyek, buletin, jurnal, dan sebagainya), akan tetapi tidak mengharapkan

adanya respon dari para penerima emailnya. Untuk itu yang harus

dilakukan adalah membuat sebuah alamat tertentu khusus untuk keperluan

37

Page 38: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

ini. Bila pengelola Distribution List mengirimkan sebuah email ke alamat

tersebut, maka alamat itu akan mem-forward email email tadi kesemua

alamat email yang menjadi pelanggan (subscriber) dari Distribution List.

Untuk menjadi pelanggan, biasnya calon pelanggan diminta untuk

mengikuti prosedur tertentu yang ditetapkan oleh si pengelola. Bisa pula

si pengelola yang memasukan alamat email mereka ke database pelanggan

secara manual.

5. Disscussion List

Disscussion List sering kali juga disebut mailing list atau lebih populer

dengan milis. Pengertiannya hampir sama dengan Distribution List hanya

memungkinkan siapa saja yang tergabung menjadi subcriber untuk

mengirimkan respon terhadap sebuah email. Akan tetapi belum tentu

semua orangbisa begitu saja mengikuti sebuah milis. Kadang-kadang ada

milis untuk kalangan terbatas, sementara banyak yang terbuka untuk siapa

saja.

Untuk dapat bergabung kedalam sebuah milis pertama-tama seseorang

mesti melakukan proses subcription (mendaftar) dengan suatu prosedur

tertentu. Seringkali proses ini tidak memerlukan intervensiseorang

administrator yang mengelola milis, baik untuk menyetujui atau menolak

permohonan menjadi anggota milis. Milis yang seperti itu tentu adalah

sebuah milis yang terbuka bagi siapa saja untuk bergabung.

Akan tetapi kadang-kadang ada juga milis yang mempersyaratkan calon

anggota untuk memberikan keterangan mengenai jati dirinya sebelum

38

Page 39: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

permohonan bergabung disetujui. Bila seorang administrator milis

menyetujui permohonan untuk bergabung, biasanya tak lama kemudian

akan dikirimkan informasi mengenai tatacara pengiriman email dan

keterangan-keterangan lainnya tentang milis tersebut; tujuan milis, yang

boleh dilakukan dan tidak boleh dilakukan, cara keluar dari milis, alamat

email administrator, dan sebagainya.

2.6.6 Pertukaran Email

Pertukaran Email menggunakan TCP/IP

Keterangan :

a. Pemakai diterminal berhubungan dengan user agent (AU), beberapa agent

email yang populer saat ini adalah pine, eudora, netscape, outlook dan

pegasus.

b. Pertukaran email menggunakan protokol TCP/IP yang digunakan oleh

Message Transport Agent (MTA). MTA yang umum dipakai adalah

sendmail untuk linux dan MDaemon untuk windows.

c. Perintah dikirim oleh client ke server dan server merespon dengan kode

balasan numerik dan beberapa string yang dapat dibaca.

39

User diterminal

User Agent

MTA ClientAntrian yang akan dikirim

User Agent

Mailbox Penerima

MTA ServerUser diterminal

Gambar 2.6 Pertukaran Email Dalam TCP/IP

Page 40: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

2.7 Konsep Umum Jaringan

Ada bermacam-macam jenis jaringan yaitu :

1. LAN (Local Area Network)

Local Area Network merupakan topologi jaringan yang didesain pada

suatu area yang biasanya meliputi satu jaringan komputer dalam satu

perusahaan, kampus atau instansi. LAN biasanya diinstalasi untuk

keperluan suatu organisasi. Media transmisi data yang pailing banyak

digunakan untuk instalasi LAN adalah kabel, copper cable (UTP atau

Coaxial) ataupun fibre cable (serat optik)

2. MAN (Metropolitan Area Network)

Metropolitan Area network. Organisaasi jaringan komputer yang lebih

besar cakupannya dibandingkan LAN. Man biasanya meliputi suatu distrik

atau kota. Melalui MAN maka instansi, perusahaan atau kampus yang

memiliki LAN dapat saling terkoneksi satu dengan yang lainnya. Media

transmisi untuk MAN menggunakan kabel, fiber optik dan wireless media

(waveLAN menggunakan gelombang radio).

3. WAN (Wide Area Network)

WAN adalah jaringan yang ruang lingkupnya sudah menggunakan saran

satelit atau kabel bawah laut dan areanya lebih luas dari MAN. Dengan

menggunakan saran WAN, sebuah bank yang ada di Bandung bisa

menghuibungi kantor cabangnyan yang ada di luar negeri hanya dalam

beberapa menit saja.

40

Page 41: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

4. GAN ( Global Area Network)

GAN merupakan suatu jaringan yang menghubungkan negara-negara di

seluruh dunia. Contoh yang sangat baik dari GAN ini adalah internet.

Jaringan Internet adalah jaringan local yang menerapkan teknologi internet

seperti world wide web (WWW), file transfer protokol (FTP), dan ghopher.

Sehingga jaringan tersebut memiliki server web sendiri untuk

menyebarluaskan informasi dengan format file HTML (hyper text markup

language). Informasi ini disebut juga atau berupa homepage atau webpage

2.7.1 Topologi Fisik Jaringan

Topologi Star

Topologi ini memiliki karakteristik sebagai berikut :

a. Setiap node berkomunikasi langsung dengan central node, traffic

data mengalir dari node ke central node dan kembali lagi.

b. Mudah dikembangkan, karena setiap node memiliki kabel yang

langsung terhubung ke central node.

c. Keunggulan : jika satu kabel node terputus yang lainnya tidak

terganggu.

d. Dapat digunakan kabel yang “lower grade” karena hanya

menghendle satu trafic node, biasanya menggunakan kebel UTP.

41

Page 42: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Topologi Bus

Topologi ini memiliki karakteristik sebagai berikut :

a. Merupakan satu kabel yang ujungnya ditutup,dimana sepanjang

kabel terdapat node-node.

b. Umum digunakan karena sederhana dalam instalasi.

c. Signal melewati kabel dalam dua arah dan mungkin terjadi collision.

d. Problem terbesar kabel terputus, jika salah satu semen kabel terputus

maka seluruh jaringan akan berhenti.

42

Ethernet/IEEE 802.3100 BaseT

Gambar 2.8 Topologi Bus

Mini komputer

Workstation

Gambar 2.7 Topologi Star

Page 43: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Topologi Ring

Topologi Ring memiliki karakteristik sebagai berikut :

a. Lingkaran tertutup dengan node-node.

b. Sederhana dalam layout.

c. Signal mengalir dalam satu arah, sehingga dapat menghindarkan

terjadinya Collision (dua paket data tercampur), sehingga

memungkinkan pergerakan data yang cepat collision detection yang

lebih sederhana.

d. Problem sama dengan Topologi Bus yaitu jika salah satu semen

kabel terputus maka seluruh jaringan akan berhenti.

e. Biasanya Topologi Ring tidak dibuat secara fisik melainkan

melainkan direalisasikan dengan sebuah konsentrator dan kelihatan

seperti topologi star.

43

Gambar 2.9 Topologi Ring

Page 44: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

2.7.2 Topologi Logik Jaringan

Ethernet

Ethernet dikembangkan oleh Xerox cop. Pada tahun 70-an, dan menjadi

populer pada tahun 80-an. Ethernet bekerja berdasarkan Broadcast

Network,dimana setiap node menerima setiap transmisi data yang

dikirim oleh sebuah node. Menggunakan metode CSMA/CD. Cara kerja

Ethernet berikut : sebelum mengirimkan paket data, setiap node melihat

apakah jaringan juga sedang mengirimkan paket data. Juka jaringan

sibuk, node itu menunggu sampai tidak ada sinyal lagi yang dikirim oleh

jaringan. Jika jaringan sepi barulah node mengirimkan pakrtnya. Jika

pada saat yang sama ada dua node yang mengirimkan data maka terjadi

Collision. Jika terjadi collision, kedua node mengirimkan sinyal jam

kejaringan dan semua node berhemti mengirimkan paket data dan

kembali menunggu. Kemudian secara random, node-node itu kembali

menunggu atau mengirimkan data. Paket yang mengalami collision akan

dikirimkan kembali saat ada kesempatan. Kecepatannya mencapai 10

Mbps, menurun jika semakin banyak node yang terpasang. Interface

yang digunakan :

1) Thick Ethernet menggunakan interface DB15 (10Base5).

2) Thin Ethernet menggunakan interface coaxial dengan T-connecter

(10Base5).

3) Twisted pair Ethernet menggunakan Ethernet menggunakan

interface RJ-45 (10BaseT/100BaseT/100BaseTX).

44

Page 45: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

4) Ethernet combo merupakan gabungan dari interface dalam satu

card.

Token Ring

Token Ring dikembangkan oleh IBM. Untuk menghindari collision tidak

menggunakan collision detection melainkan Token Pasing Scame. Token

Pasing Scame dapat dijelaskan sebagai berikut: sebuah Token yang

bebas mengalir pada setiap node melalui jaringan. Saat sebuah node

ingin mengirimkan paket data, node itu meraih dan melekatkan frame

atau paket datanya ke token. Jadi token tidak dapat digunakan lagi oleh

node yang lain sampai data mencapai tujuannya. Jika telah sampai token

dilepaskan lagi oleh Originating station. Token mengalir dijaringan

dalam satu arah dan setiap station di-poll satu persatu. Kecepatannya

mencapaiu 4 Mbps-6Mbps. Interface yang digunakan adalah :

1. Token Ring Card dengan interface DB9.

2. Token Ring Card dengan interface RJ-45.

FDDI

FDDI (Fiber Distributer Data Interface),digunakan dengan kebel fiber

optik.bekerja berdasarkan dua ring konsetrik, masing-masing

berkecepatan 100 Mbps, dengan menggunakan Token Pasing Scame.

Salah satu ring dapat berfungsi sebagai back-up, atau dibuat menjadi

pengiriman saja(mengirim dan menerima data dalam arah yang berbeda).

Bisa menjadi 1000 node. Tidak kompatibel dengan Ethernet, namun

45

Page 46: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Ethernet dapat di enkapitulasi dalam paket FDDI bukan merupakan

standar IEEE.

2.7.3 Konsep Transmission Control Protokol / Internet Protokol (TCP/IP)

2.7.3.1 Dasar Arsitektur TCP / IP

Pada dasarnya, komunikasi data merupakan proses memindahkan

data dari satu komputer ke komputer yang lain. Untuk dapat memindahkan

data pada komputer harus ditambahkan alat khusus yang dikenal sebagai

Interface jaringan. Jenis interface ini bermacam-macam dan tergantung

media fisik untuk menstransfer data tersebut.

Dalam proses memindahkan data ini terdapat beberapa masalah

yang harus dipecahkan, pertama, data harus dapat dipindahkan kr

komputer yang tepat, sesuai dengan tujuannya. Hal ini akan menjadi rumit

jika komputer sasaran pentransferan data ini tidak ada pada jaringan lokal,

melainkan ditempat yang jauh. Semakin jauh jarak antara kedua tempat,

kemungkinan rusaknya data diperjalanan semakin besar. Karena itu maka

diperlukan adanya mekanisme yang mencegah rusaknya data diperjalanan.

Hal lain yang perlu diperhatikan yaitu pada komputer sasaran

pentransferan data, mungkin terdapat lebih dari satu aplikasi yang

menunggu datangnya data. Data yang dikirim harus sampai ke aplikasi

yang tepat, pada komputer yang tepat, tanpa kesalahan.

Cara alamiah menghadapi masalah rumit adalah memecah masalah

tersebut menjadi bagian yang lebih kecil. Dalam memecahkan masalah

diatas, para ahli jaringan komputer pun melakukan hal yang sama. Aturan

46

Page 47: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

ini lebih akrab disebut sebgai protokol komunikasi data, protokol ini di

implementasikan dalam bentuk program komputer (Sofware) yang tepat

pada komputer dan peralatan komunikasi data lainnya.

TCP / IP adalah sekumpulan protokol yang didesain untuk

menangani komunikasi data. TCP / IP terdiri dari sekumpulan protokol

yang masing-masing bertanggung jawab atas bagian-bagian tertentu dari

sekumpulan data. Berkat prinsip ini, tugas masing-masing menjadi jelas

dan sederhana, protokol yang satu tidak perlu mengetahui cara kerja

protokol yang lain sepanjang masing bisa mengirim dan menerima data.

Berkat penggunaan prinsip ini pula, TCP/IP menjadi protokol

komunikasi data yang pleksibel. Protokol TCP/IP dapat diterapkan dengan

mudah disetiap jenis komputer dan interface jaringan, karena sebagian

besar isi kumpulan protokol ini tidak spesifik terhadap satu komputer atau

peralatan jaringan tertentu, hanya perlu dilakukan perubahan pada protokol

yang berhubungan dengan interface jaringan saja.

2.7.3.2 Lapisan Pada TCP / IP

TCP / IP terbentuk dari empat (4) lapisan kumpulan protokol yang

bertingkat yaitu : Application Layer, Transfort Layer, Internet Layer dan

Network Layer.

Dalam TCP/IP terjadi penyampaian data dari protokol lapisan yang

satu ke protokol yang berada dilapisan yang lian. Jika suatu protokol

menerima data dari protokol menerima data dari protokol lain di layer

atasnya, ia akan menambahkan informasi tambahan miliknya kedata

47

Page 48: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

tersebut. Informasi ini memiliki fungsi yang sesuai dengan fungsi protokol

tersebut setelah itu, data akan diteruskan lagi ke protokol pada layer

dibawahnya.

Hal lain yang sebaliknya terjadi jika suatu protokol menerima data

dari suatu protokol lain yang berada pada layer dibawahnya. Jika data ini

dianggap valid, protokol akan melepas informasi tambahan, untuk

kemudian meneruskan data itu ke protokol lain yang berada berada pada

layer diatasnya.

Data

TCP / IP Header Data

IP Header TCP / IP Header Data

Network Interface Header IP Header TCP / IP Header Data

1. Network Interface Layer

Bertanggung jawab mengirim dan menerima data ke dan dari media

fisik. Media fisik dapat berupa kabel, serat optik atau gelombang radio.

Karena tugasnya ini, protokol pada lapisan ini harus mampu

menerjemahkan signal listrik menjadi data digital yang dimengerti

komputer, yang berasal dari peralatan yang sejenis.

2. Network Layer

Bertanggung jawab dalam proses pengiriman paket ke alamat yang

tepat.

48

Application Layer

Transfort Layer

Internet Layer

Network Layer

Gambar 2.10 Pergerakan Data dalam TCP / IP

Page 49: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

3. Tranfort Layer

Berisi protokol yang bertanggung jawab untuk mengadakan

komunikasi antara dua host atau komputer.

4. Application Layer

Pada lapisan ini terletak semua aplikasi yang menggunakan protokol

TP/IP.

49

Page 50: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

BAB III

ANALISIS MASALAH

3.1 Deskripsi Masalah

Permasalahan yang akan dibahas dalam skripsi ini adalah salah satu masalah

pengiriman attachment pada e-mail yang diamankan berupa file atau data yang

akan dikirimkan kepada orang lain, yang banyak diimplementasikan di dunia

nyata. Kriptografi merupakan suatu teknik untuk sistem keamanan berupa

penyandian suatu file atau data sehingga file atau data tersebut aman dari para

penyusup (hacker) dan para perusak (cracker).

Persoalan yang akan diteliti mengenai analisis terhadap perbedaan dalam hal

penggunaan teknik kunci antara kriptografi simetrik dan Asimetrik. Kriptografi

simetrik dilakukan dengan menggunakan algoritma Blowfish, sedangkan

kriptografi asimetrik menggunakan algoritma RSA, yang digunakan dalam

enkripsi dan dekripsi, berupa file atau data.

3.2 Pemecahan Algoritma Blowfish

Blowfish adalah cipher blok 64-bit yang memiliki sebuah kunci yang

panjangnya variabel. Algoritma blowfish terdiri dari dua bagian yaitu key

expantion dan enkripsi data.

50

Page 51: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Adapun langkah-langkah subkey dihitung menggunakan algoritma blowfish :

1. Pertama inisial P-array dan kemudian S-boxes, agar mempunyai string

yang tetap. String ini terdiri dari digit hexadesimal.

2. XOR P1 dengan 32 bit key pertama , XOR P2 dengan 32- bit key yang

kedua dan seterusnya untuk semua bit key, sampai semua P-array yang

telah di-XOR-kan dengan key bit.

3. Enkripsikan string all-zero dengan algoritma Blowfish menggunakan

subkey yang dijelaskan pada langkah 1 dan langkah 2.

4. Gantikan P1 dan P2 dengan output langkah 3.

5. Enkripsikan output langkah 3 menggunakan algoritma Blowfish dengan

subkey yang termodifikasi.

6. Gantikan P3 dan P4 dengan output langkah 5.

7. Teruskan proses tersebut, gantikan semua entry P-array, dan kemudian

semua empat S-boxes supaya mempunyai output algoritma Blowfish

secara kontinyu berubah.

Total iterasi 521 dibutuhkan untuk membangkitkan semua subkey yang

diinginkan.. [4

51

Page 52: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Blowfish adalah sebuah jaringan Feistel yang mempunyai 16 round. Inputnya

adalah ( x ) element data 64-bit. Untuk mengenkripsi ( x ) yaitu :

52

Gambar 3.1 Diagram Alir enkripsi blok algoritma Blowfish

Page 53: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Bagi ( x ) dalam dua bagian 32-bit menghasil ( xL ) dan ( xR ).

Untuk i = 1 sampai 16 maka :

xL = xL Pi

xR = F(xL) xR

Swap (tukar) xL dan xR

Swap (tukar) xL dan xR (mengulang swap yang lalu)

xR = xR P17

xL = xL P18

Gabungkan kembali xL dan xR [1, 7]

Fungsi F adalah sebagai berikut [1]

Bagi xL dalam empat kuarter 8-bit yaitu a, b, c dan d seperti gambar 2.4 maka

F(xL) = ((S1,a + S2,b mod 232 ) S3,c ) + S4,d mod 232

53

Gambar 3.2 Diagram Alir fungsi F

Page 54: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

3.3 Pemecahan Algoritma RSA

Prinsip kerja RSA hanya menggunakan operasi pemangkatan dan operasi mod

(modulus) yang menghasilkan nilai yang relatif acak, seperti pada persamaan 2.1.

Dari prinsip kerja RSA dapat dilihat bahwa keamanan sistem penyandian RSA

bergantung pada kunci-kunci yang digunakan untuk enkripsi dan dekripsi, ukuran

kunci yang digunakan pada sistem penyandian ini menentukan jumlah kombinasi

kunci yang mungkin. Jika menggunakan ukuran 64 bit, maka total banyaknya

kombinasi kunci yang mungkin adalah 264 = 18446744073709551616

Ukuran yang terbaik untuk modulus publik RSA bergantung pada kebutuhan

keamanan, jika modulusnya besar, maka akan diperoleh keamanan yang lebih

terjamin, tetapi kecepatan operasi RSA-nya lebih lambat, karena untuk

membangkitkan modulus n harus merupakan hasil kali dua bilangan prima p dan q

yang menyusun modulus harus sama panjangnya. Jadi jika digunakan modulus 64

bit maka masing-masing bilangan prima harus mempunyai panjang 32 bit, dua

bilangan prima yang menyusun modulus n berasal dari bilangan-bilangan acak

yang terdapat pada program, dengan metode pembangkitan bilangan acak untuk

menentukan bilangan prima p dan q.

3.3.1 Sistem Pembangkitan Kunci

Sistem ini adalah fasilitas yang disediakan untuk membangkitkan kunci

publik dan private yang diperlukan untuk melakukan poses enkripsi dan

proses dekripsi. Secara keseluruhan sistem pembangkitan kunci dirancang

sesuai dengan urutan dan tahapan proses yang diperlukan untuk

54

Page 55: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

membangkitkan kunci publik dan private berdasarkan metode RSA. Proses

tersebut dapat dilihat pada diagram alir pada gambar 3.3

3.3.2 Pembangkit Bilangan Prima

Tahap pertama dari proses pembangkitan kunci adalah memilih dua

bilangan prima yang cukup besar. Untuk membantu pengguna dalam memilih

dua buah bilangan prima digunakan sistem pembangkit bilangan prima yang

menampilkan bilangan prima dalam batas yang diinginkan.

55

Gambar 3.3 Diagram Alir pembangkit kunci RSA

Mulai

Input range bilangan Prima yang dicari

Pembangkit bilangan Prima

Input bilangan prima yang dipilih

Hitung : n = ?, = ?, GCD = ?

Input bilangan lebih kecil dan relatif prima dari (N) sebagai e

Hitung d

Selesai

Page 56: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Metode yang digunakan untuk mencari bilangan prima tersebut adalah

dengan membagi bilangan tersebut dengan bilangan yang lebih kecil, bila

bilangan tersebut hanya habis dibagi bilangan satu atau angka itu sendiri,

maka angka tersebut adalah bilangan prima.

56

Y

Mulai

Y

P = ? Q = ?

P < 2

Q < 2

Isprime = False

For x =counter to longsqrStep 2

Counter = 2Isprime = True

P mod counter = 0Q mod counter = 0

Counter = 3

Isprime = False

Pembangkit acak3170 - 9999

P dan QLongsqr = int(sqr(P/Q))

T

T

B

A

Page 57: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

3.3.3 Enkripsi Algoritma RSA

Adapun langkah-langkah untuk menentukan pasangan kunci e dan d

serta untuk menjadikan plaintext dan menerjemahkan ciphertext adalah :

1. Pilih dua bilangan prima yang besar secara acak yaitu p dan q, p ≠ q.

2. Hitung n = p x q secara modulus publik.

3. Hitung (n) = (p-1) x (q-1) sebagai euler’s totient function.

4. Pilih kunci publik e secara acak sehingga e adalah bilangan prima dari

GCD(e, (n)) = 1, yang didapat dengan menggunakan algoritma euclidean.

5. Hitung kunci pribadi d dengan kombinasi linier dari e dari (n)

berdasarkan algoritma euclidean yang diperoleh dari langkah ke empat

sehingga mendapatkan bentuk akhir d = d + (n).

6. untuk mengenkripsi plaintext M, 0 ≤ M ≤ n-1, dilakukan perhitungan

C = Me (mod n).

57

Gambar 3.4 Diagram Alir pembangkit bilangan prima

Y

Selesai

Bilangan primaP dan Q

T

Isprime = FalseP mod x = 0Q mod x = 0

B

A

Page 58: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Maka untuk proses selanjutnya agar lebih jelas dapat dilihat pada gambar

3.4 adalah diagram alir untuk proses enkripsi algoritma RSA.

3.3.4 Dekripsi Algoritma RSA

Langkah-langkah proses dekripsi algoritma RSA, lihat pada gambar 3.5,

dalam bentuk diagram alir.

58

Mulai

Gambar 3.5 Diagram Alir Proses Enkripsi Algoritma RSA

P dan Q

n = p x q

Pilih e relativeprima dalam

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

Input Plaintext

C = Me (mod n)

Output ciphertext

selesaii

Page 59: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

3.3.5 Pengujian Algoritma RSA

Dengan proses sebagai berikut :

1. p = 29 q = 31

2. n = p x q = 29 x 31 = 899

3. (n) = (p-1) x (q-1) = (29-1) x (31-1) = 28 x 30 = 840

4. GCD(e, (n)) = 1

840 = (13) 64 + 8

13 = (8) 1 + 5

8 = (5) 1 + 3

59

Gambar 3.6 Diagram Alir Proses Dekripsi Algoritma RSA

Mulai

Pilih e relativeprima dalam

d = e-1 (mod n)

Input ciphertext

M = Cd (mod n)

Output plaintext

selesai

Page 60: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

5 = (3) 1 + 2

3 = (2) 1 + 1

2 = (1) 2 + 0

GCD(13, 840) = 1

Jadi e = 13 telah memenuhi syarat, karena GCD(e, (n)) = 1

5. Kombinasi linier dari 13 dan 840 adalah :

1 =

1 = 3 – 2(1)

1 = 3 – (5 – (371)) = (3) 2 – (5)1

1 = (8 – (5)1)2 – (5)1 = (8)2 – (5)3

1 = (8)2 – (13 –(8)1)3 = (8)5 – (13)3

1 = (840 – (13)64)5 –(13)3 = (840)5 – (13) 323

kombinasi linier ini menghasilkan bentuk dasar 1 = yang

memberikan nilai d < 0 sehingga nilai d1 = d + (n) = -323 +840 = 517

6. plaintext M =123 , 0 ≤ m ≤ n-1

enkripsi plaintext M :

C = Me (mod n) = 12313 (mod 899)

= 402

7. dekripsi ciphertext C :

M = Cd (mod n) = 402517 (mod 899)

= 123

Dari hasil yang diperoleh terlihat bahwa pesan yang telah di enkripsi tersebut

dapat di dekripsi kembali menjadi pesan yang asli.

60

Page 61: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

BAB IV

PERANCANGAN DAN IMPLEMENTASI

Pada Bab 4 ini, perancangan dan implementasi akan dibahas mengenai,

perancangan antarmuka sistem pengguna dan implementasi.

4.1 Perancangan

4.1.1 Perancangan Antarmuka Sistem Pengguna

Berikut ini akan dibahas mengenai struktur menu dan perancangan Layar

Tampilan yang digunakan.

4.1.1.1 Struktur Menu

Pilihan menu yang terdapat didalam rancangan program dapat dilihat

pada Gambar 4.1

61

Gambar 4.1 Sruktur Menu

Page 62: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Keterangan :

1. Kriptomail : Sebuah nama dari program yang dibuat

2. Mail : Fasilitas menu untuk terhubung ke server dan

keluar dari server

3. Bantuan : Identitas dari pembuat perangkat lunak

4. Kotak E-Mail : Fasilitas untuk menampung email masuk

a.) Baca Pesan : Fasilitas untuk membaca email masuk

Simetrik : Kunci simetrik untuk men-dekripsi file

Asimetrik : Kunci Asimetrik untuk men-dekripsi file

7. Kirim E-mail : Fasilitas untuk pengiriman email, yang terdiri

dari kirim pesan, attachment, hapus, dan pilih

kunci. Kunci yang disediakan Simetrik

(blowfish) dan Asimetrik (RSA) , digunakan

enkripsi

8. Hapus : Digunakan untuk menghapus email pada kotak

email

9. Kembali : Fasilitas pembacaan email

10. Lanjut : Fasilitas pembacaan email

11. Cek Mail : Untuk pengecekan email

12. Pembangkit Kunci : Fasilitas untuk membangkitkan kunci acak,

yang terdiri dari kirim kunci, kunci publik dan

kunci privat

62

Page 63: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

4.1.1.2 Perancangan Layar Tampilan

Program berinteraksi dengan pengguna melalui layar tampilan dalam

bentuk jendela (window). Layar tampilan menampilkan informasi yang

berbeda-beda tergantung pada perintah yang diberikan oleh pengguna

Program ini diberi nama Kriptomail. Kriptomail memiliki beberapa

layar tampilan, beberapa rancangan layar tampilan adalah sebagai berikut.

Untuk program utama pada gambar 4.2 terdapat enam menu datar

yaitu kirim E-mail, hapus, kembali,lanjut, cek Mail dan pembangkit kunci.

Dan terdapat dua menu tarik yang terdiri dari Mail yang isinya terhubung ke

server, keluar dari server dan keluar dari program dan Bantuan yang berisi

identitas pembuat program.

63

Gambar 4.2 Layar Tampilan utama terdiri dari daftar menu, dan pada bagian bawah terdapat informasi jumlah email dan waktu

Gambar 4.3 Layar Tampilan kotak e-mail yang digunakan untuk menampung email masuk

Page 64: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 4.4 Layar Tampilan untuk pembacaan email masuk Jika tidak ada file Attachment

Gambar 4.5 Layar Tampilan untuk pembacaan email masuk Jika ada file Attachment

Pada gambar 4.3 kotak E-mail, yang berisi dari siapa email itu

dikirim, catatan (subject) dan tanggal berapa pengirim mengirimkan

emailnya.

Untuk membaca pesan maka rancangannya seperti gambar 4.4

dimana terdapat from, date, to, cc dan subjek dan terdiri dari dua pilihan

menu datar Simetrik dan Asimetrik.

64

Page 65: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 4.7 Layar Tampilan untuk Dekripsi file Attachment untuk kunci RSA

Gambar 4.6 Layar Tampilan untuk Dekripsi file Attachment untuk kunci Blowfish

Gambar 4.8 Layar Tampilan untuk penulisan pesan dan pengiriman Attacment

Dalam layar tampilan baca pesan setelah email diterima dari dari

pengirim maka akan dicek ada tidaknya file attactment jika ada maka layar

tampilan akan memberitahukan bahwa ada satu pesan yang telah diterima

lihat pada gambar 4.5.

Didalam kunci Blowfish terdiri dari dua menu datar yaitu dekripsi

untuk mendekrip file yang telah dikirim dan batal untuk membatalkan proses

dekripsi.

Untuk kunci privat terdiri dari tiga menu datar yaitu kunci, dekripsi

dan batal.

65

Page 66: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 4.10 Layar Tampilan untuk Dekripsi file Attachment untuk kriptografi asimetrik

Gambar 4.9 Layar Tampilan untuk Enkripsi file Attachment untuk kriptografi simetrik

Untuk perancangan layar tampilan tulis pesan dapat dilihat pada

gambar 4.8. yang terdiri dari tiga menu datar yaitu kirim pesan, Attach,

hapus, empat header email yaitu to, cc, subject, Attechment, dan menu pilih

kunci Simetrik, Asimetrik dan tanpa pakai kunci.

Perancangan kunci Blowfish atau kriptografi Simetrik dimana user

hanya tinggal memasukan kunci secara bebas . Terdiri dari dua menu datar

yaitu enkripsi dan batal.

Sedangkan untuk kunci publik atau kriptografi Asimetrik dimana

user harus mencari dahulu kunci publik yang akan dipakai. Terdiri dari

empat menu datar yaitu enkripsi untuk mengenkripsi file yang akan

dikirimkan, kunci dimana user harus mencari kunci yang akan digunakan,

batal untuk membatalkan proses, dan hapus untuk menghapus kunci jika

kunci yang dimasukan salah.

66

Page 67: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 4.11 merupakan perancangan sistem pembangkit kunci

dimana terdiri dari empat menu datar yaitu kirim kunci bila kunci telah

diacak maka hasilnya akan dikirimkan ke orang yang akan menerima pesan

pemakai, kunci privat, kunci publik dan kunci acak dimana bila kunci acak

ini diklik maka nilai (P), (Q), “N” Modulus dan (P-1)*(Q-1) akan terisi dan

menghasilkan kunci privat dan kunci publik.

4.2 Implementasi

Hasil perancangan akan diimplementasikan kedalam program komputer.

Meliputi penjelasan tentang lingkungan implementasi, perangkat lunak, perangkat

keras untuk implementasi Kriptomail, dan implementasi antarmuka.

4.2.1 Lingkungan Implementasi

Lingkungan yang digunakan untuk menjalankan aplikasi adalah berbasis

Windows. Sistem operasi yang digunakan adalah keluarga sistem operasi

67

Gambar 4.11 Layar Tampilan untuk sistem pembangkitan kunci acak yang terdiri dari sepasang kunci, adalah kunci publik dan kunci privat

Page 68: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Microsoft Windows, yaitu MS Windows Xp, MS Windows 2000, MS

Windows9x/Me.

4.2.2 Perangkat Lunak

Bahasa pemrograman yang digunakan adalah Visual Basic 6. Alasan

pemilihan Visual Basic 6 karena lebih mudah untuk digunakan, dan memiliki

komponen-komponen aktif kontrol yang terintegrasi dengan MS Windows.

Selain itu juga memiliki fasilitas pengaturan tampilan yang baik dan mampu

menangani data dengan ukuran yang besar.

4.2.3 Perangkat Keras

Perangkat keras yang digunakan untuk implementasi ini mempunyai

spesifikasi sebagai berikut :

Spesifikasi Server :

5. CPU : Intel Pentium 750 MHz

6. Hard Disk : 12 Gb

7. Monitor : 14”(resolusi 800x600,1024x768, dan 1280x1024 pixels)

8. Memori : 128 Mb SDRAM PC-133

Spesifikasi Client 1 :

5. CPU : AMD Duron 1000 MHz

6. Hard Disk : 40 Gb

7. Monitor : 14”(resolusi 800x600,1024x768, dan 1280x1024 pixels)

8. Memori : 256 Mb SDRAM PC-133

68

Page 69: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Spesifikasi Client 2 :

5. CPU : Intel Pentium 866 MHz

6. Hard Disk : 40 Gb

7. Monitor : 15”(resolusi 800x600,1024x768, dan 1280x1024 pixels)

8. Memori : 256 Mb SDRAM PC-133

4.2.4 Implementasi Antarmuka

Implementasi antarmuka dikembangkan dengan pendekatan metode

berorientasi objek. Hal ini dilakukan karena adanya kemudahan penempatan

dan pengaturan komponen visual pada layar tampilan dan tersedianya fasilitas

tersebut pada Visual Basic 6. Antarmuka perangkat lunak diimplementasikan

dalam bentuk jendela (window).

69

Page 70: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Maka dari tampilan utama pada gambar 4.12 bila akan mengrimimkan

pesan maka akan tampil seperti gambar 4.13 dibawah ini.

70

Gambar 4.12 Layar Tampilan utama terdiri dari daftar menu, dan pada bagian bawah terdapat informasi jumlah email dan waktu, selain itu terdapat Layar Tampilan kotak

e-mail yang digunakan untuk menampung email masuk

Gambar 4.13 Tampilan layar untuk mengirimkan pesan

Page 71: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Pada saat akan mengirimkan pesan, ada tiga pilihan apakah akan

memakai kunci Simetrik, Asimetrik dan tidak pakai kunci.

4.2.4.1 Pengiriman File Secara Asimetrik

Pada pengiriman file secara Asimetrik dimana kunci ada dua yaitu

Privat dan Publik, kunci publik untuk enkripsi dan kunci Privat untuk

dekripsi. Dimana tampilan layar utama pengiriman file secara Asimetrik

dapat dilihat pada gambar 4.14.

Pada Asimetrik kunci publik akan dicari terlebih dahulu seperti pada

gambar 4.15 dibawah ini. Kunci publik yang telah dikirimkan oleh pihak

pengirim, dengan format file (.pub)

71

Gambar 4.14 Tampilan layar untuk penulisan pesan secara Asimetrik

Page 72: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 4.15 Pencarian kunci publik

4.16 Tampilan layar setelah kunci ditemukan

Setelah kunci publik ditemukan maka dapat terlihat pada gambar 4.16.

Langkah selanjutnya adalah pencarian file yang akan dikirimkan dan

yang akan dienkripsi dapat dilihat pada gambar 4.17.

72

Page 73: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Setelah file yang akan dikirimkan ditemukan maka proses akan

dimulai, dapat terlihat pada gambar 4.18 dimana proses enkripsi telah

selesai. Dapat dilihat ukuran file yang dienkripsi dan waktu. Disini proses

enkripsi selesai tapi proses pengirimkan belum dijalankan. Maka bila akan

mengirimkan file tersebut klik tombol Attach akan muncul dialog pencarian

seperti pada gambar 4.19. pada gambar 4.19 terlihat Attachment sudah berisi

file yang akan dikirimkan. Maka klik tombol “kirim pesan” dan file pun

sudah terkirim.

73

Gambar 4.17 Tampilan layar pencarian file yang akan di enkripsi

Page 74: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

74

Gambar 4.18 Tampilan layar setelah proses enkripsi selesai

Gambar 4.19 Tampilan layar file yang akan dikirimkan

Page 75: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

File yang sudah terenkripsi dan yang akan dikirimkan akan berisi

seperti gambar 4.20 dibawah ini. File tidak akan terbaca kecuali file

didekripsi.

1. Pengiriman File Secara Simetrik

Pengiriman secara Simetrik dimana kunci untuk enkripsi dan

dekripsi menggunakan kunci yang sama. Tampilan utama untuk pengiriman

file secara Simetrik dapat dilihat pada gambar 4.21. Dimana kunci bebas,

klik tombol Attach maka muncul perintah untuk memasukan kunci dapat

dilihat pada gambar 4.22.

75

Gambar 4.20 Tampilan layar file yang terenkripsi

Page 76: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

76

Gambar 4.22 Tampilan layar pengiriman file secara Simetris

Gambar 4.21 Tampilan layar utama pengiriman file secara Simetrik

Page 77: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 4.24 Tampilan layar setelah proses enkripsi selesai

Setelah kunci diisikan maka langkah selanjutnya adalah pencarian

file yang akan dienkripsi, seperti pada gambar 4.23.

Maka setelah file ditemukan, file tersebut lalu dienkripsi seperti pada

gambar 4.24 dibawah ini.

77

Gambar 4.23 Tampilan layar pencarian file yang akan dienkripsi

Page 78: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Setelah proses enkripsi selesai maka file yang dienkripsi tadi akan

berisi file yang tidak terbaca seperti pada gambar 4.25 dibawah ini.

4.2.4.3 Proses Pembangkitan Kunci

Pada Asimetrik kunci yang digunakan menggunakan dua kunci yaitu

kunci privat dan kunci Publik untuk itu perlu adanya pembangkitan kunci.

Untuk Sistem Pembangkitan Kunci dapat dilihat Pada gambar 4.26 dan

informasi bilangan yang dibangkitkannya dapat dilihat pada gambar 4.27

78

Gambar 4.26 Proses Pembangkitan Kunci

Gambar 4.25 Tampilan layar file yang terenkripsi algoritma Blowfish

Page 79: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

4.2.4.4 Penerimaan File secara Asimetrik

File yang dikirimkan tadi akan diterima oleh penerima tampilan

utamanya seperti pada gambar 4.28 kemudian langkah selanjutnya adalah

pencarian kunci Asimetrik, tampilannya seperti gambar 4.29.

79

Gambar 4.28 Tampilan layar penerimaan file

Gambar 4.27 Informasi bilangan yang dibangkitkan

Page 80: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 4.29 Tampilan layar isi kunci

Gambar 4.30 Tampilan layar proses pencarian kunci

Maka selanjutnya akan dicari kunci privatnya yang sudah ada seperti

gambar 4.30 dibawah ini.

Setelah proses pencarian kunci selesai maka proses selanjutnya

adalah mendeskripsi seperti pada gambar 4.31.

80

Page 81: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 4.32 Penyimpanan file hasil dekripsi RSA

Maka setelah file dideskrip akan muncul tampilan untuk

penyimpanan file yang sudah dideskrip, seperti pada gambar 4.32.

81

Gambar 4.31 Tampilan layar dekripsi

Page 82: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Setelah proses penyimpanan selesai maka muncul tampilan sebagai

berikut. File yang dikirim tadi sudah dapat dibaca.

4.2.4.5 Penerimaan File secara Simetrik

Untuk Simetrik hanya tinggal memasukan kunci yang sama seperti

pada waktu pengirim melakukan enkripsi.

Setelah kunci dimasukan maka proses dekripsi dimulai seperti pada

gambar 4.35 dimana file berhasil didekripsi dapat dilihat ukuran file dan

waktunya.

82

Gambar 4.33 Umpan Balik

Gambar 4.34 Proses memasukan kunci

Page 83: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Hasil dekripsi tadi maka akan disimpan dalam harddisk seperti pada

gambar 4.36

83

Gambar 4.36 Penyimpanan file ter-dekripsi

Gambar 4.35 Proses dekripsi selesai

Page 84: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 4.37 Umpan Balik

Setelah data tersimpan maka akan muncul tampilan seperti gambar

4.37 dibawah ini. Maka file pun dapat dibaca.

84

Page 85: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Gambar 5.2 Konsep jaringan Intranet

BAB V

SIMULASI DAN PENGUJIAN

5.1 Prosedur Simulasi

Tahapan – tahapan untuk melakukan simulasi :

A. Terdapat 3 pihak yang terlibat :

1. Pihak I : sebagai pengirim ( Client 1 )

2. Pihak II : sebagai penerima ( Client 2)

3. Pihak III : sebagai penyedia akses email ( Server )

B. Konsep jaringan Internet

C. Konsep jaringan Intranet

85

Gambar 5.1 Konsep jaringan Internet

Page 86: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

D. Simulasi Pertama untuk Kriptografi Simetrik (Algoritma Blowfish)

Diasumsikan bahwa antara client 1 dengan client 2 harus adanya kesepakatan,

yaitu dalam hal pemakaian kunci.

Yang dibutuhkan :

1. Algoritma yang sama dengan kunci yang sama dapat digunakan untuk proses

dekripsi dan enkripsi.

2. Pengirim dan penerima harus membagi algoritma dan kunci yang sama.

Yang dibutuhkan untuk keamanan adalah kunci harus dirahasiakan.

E. Simulasi Kedua untuk Kriptografi Asimetrik (Algoritma RSA)

Jika client 1 ingin mengirimkan pesan kepada client 2, maka client 1 akan

mengenkripsi pesannya dengan kunci publik dari client 2.

Ketika client 2 menerima pesan dari client 1, maka client 2 akan

menggunakan kunci privatnya untuk mendekripsi pesan dari client 1.

Yang dibutuhkan :

1. Algoritma yang digunakan untuk enkripsi dan dekripsi dengan sepasang

kunci, satu untuk enkripsi dan satu untuk dekripsi.

2. Pengirim dan penerima harus mempunyai sepasang kunci yang cocok.

Yang dibutuhkan untuk keamanan adalah salah satu dari kunci harus dirahasiakan.

F. Perangkat Keras

Perangkat keras yang digunakan untuk simulasi ini mempunyai spesifikasi

sebagai berikut :

Spesifikasi Server :

9. CPU : Intel Pentium 750 MHz

86

Page 87: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

10. Hard Disk : 12 Gb

11. Monitor : 14”(resolusi 800x600,1024x768, dan 1280x1024 pixels)

12. Memori : 128 Mb SDRAM PC-133

Spesifikasi Client 1 :

9. CPU : AMD Duron 1000 MHz

10. Hard Disk : 40 Gb

11. Monitor : 14”(resolusi 800x600,1024x768, dan 1280x1024 pixels)

12. Memori : 256 Mb SDRAM PC-133

Spesifikasi Client 2 :

9. CPU : Intel Pentium 866 MHz

10. Hard Disk : 40 Gb

11. Monitor : 15”(resolusi 800x600,1024x768, dan 1280x1024 pixels)

12. Memori : 256 Mb SDRAM PC-133

G. Perangkat Lunak

1. Sistem Operasi menggunakan Microsoft Windows Xp sp2.

2. MDeamon 4.0 : sebagai aplikasi perangkat lunak yang menyediakan akses E-

mail (Mail Server)

3. Outlook Express 6.0 : sebagai koneksi bantuan dari program client ke server

(MDeamon).

5.2 Pengujian

Skenario pengujian, melakukan uji kunci dari kedua algoritma Blowfish dan

RSA dan dilakukan uji perbandingan

87

Page 88: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

5.2.1 Uji Kunci Algoritma Blowfish

Blowfish adalah cipher blok 64-bit yang memiliki sebuah kunci yang

panjangnya variabel. Algoritma blowfish terdiri dari dua bagian yaitu key

expantion dan enkripsi data. Key expantion mengkonversikan sebuah kunci

sampai 448 bit ke dalam beberapa array subkey dengan total 4168 byte.

P-array mempunyai 18 subkey, Empat S-box mempunyai masing-masing

256 entry.

Proses membangkitkan subkey (Generating The Subkeys) :

Kunci ekspansi p-boxes dan s-boxes :

m_pBox = dari 0 sampai dengan 17

Inisialisasi p-boxes :

m_pBox(0) = &H243F6A88 = 608135816 m_pBox(9) = &H38D01377 = 953160567 m_pBox(1) = &H85A308D3 = -2052912941 m_pBox(10) = &HBE5466CF = -11017664913 m_pBox(2) = &H13198A2E = 320440878 m_pBox(11) = &H34E90C6C = 887688300 m_pBox(3) = &H3707344 = 57701188 m_pBox(12) = &HC0AC29B7 = -1062458953 m_pBox(4) = &HA4093822 = -1542899678 m_pBox(13) = &HC97C50DD = -914599715 m_pBox(5) = &H299F31D0 = 698298832 m_pBox(14) = &H3F84D5B5 = 1065670069 m_pBox(6) = &H82EFA98 = 137296536 m_pBox(15) = &HB5470917 = -1223635817 m_pBox(7) = &HEC4E6C89 = -330404727 m_pBox(16) = &H9216D5D9 = -1843997223 m_pBox(8) = &H452821E6 = 1160258022 m_pBox(17) = &H8979FB1B = -1988494565

sBox = terdapat empat sBox mempunyai masing-masing 256 entry :

Insialisasi s-boxes

m_sBox(0, 0) = &HD1310BA6 m_sBox(1, 0) = &H98DFB5AC m_sBox(2, 0) = &H2FFD72DB m_sBox(3, 0) = &HD01ADFB7 m_sBox(0, 1) = &HB8E1AFED m_sBox(1, 1) = &H6A267E96 m_sBox(2, 1) = &HBA7C9045 m_sBox(3, 1) = &HF12C7F99 m_sBox(0, 2) = &H24A19947 m_sBox(1, 2) = &HB3916CF7 m_sBox(2, 2) = &H801F2E2 m_sBox(3, 2) = &H858EFC16 m_sBox(0, 3) = &H636920D8 m_sBox(1, 3) = &H71574E69 m_sBox(2, 3) = &HA458FEA3 m_sBox(3, 3) = &HF4933D7E m_sBox(0, 4) = &HD95748F m_sBox(1, 4) = &H728EB658

m_sBox(3, 8) = &H55605C60 m_sBox(0, 9) = &HE65525F3 m_sBox(1, 9) = &HAA55AB94 m_sBox(2, 9) = &H57489862 m_sBox(3, 9) = &H63E81440 m_sBox(0, 10) = &H55CA396A m_sBox(1, 10) = &H2AAB10B6 m_sBox(2, 10) = &HB4CC5C34 m_sBox(3, 10) = &H1141E8CE m_sBox(0, 11) = &HA15486AF m_sBox(1, 11) = &H7C72E993 m_sBox(2, 11) = &HB3EE1411 m_sBox(3, 11) = &H636FBC2A m_sBox(0, 12) = &H2BA9C55D m_sBox(1, 12) = &H741831F6 m_sBox(2, 12) = &HCE5C3E16 m_sBox(3, 12) = &H9B87931E m_sBox(0, 13) = &HAFD6BA33

m_sBox(2, 17) = &HF6D6FF3 m_sBox(3, 17) = &H83F44239 m_sBox(0, 18) = &H2E0B4482 m_sBox(1, 18) = &HA4842004 m_sBox(2, 18) = &H69C8F04A m_sBox(3, 18) = &H9E1F9B5E m_sBox(0, 19) = &H21C66842 m_sBox(1, 19) = &HF6E96C9A m_sBox(2, 19) = &H670C9C61 m_sBox(3, 19) = &HABD388F0 m_sBox(0, 20) = &H6A51A0D2 m_sBox(1, 20) = &HD8542F68 m_sBox(2, 20) = &H960FA728 m_sBox(3, 20) = &HAB5133A3 m_sBox(0, 21) = &H6EEF0B6C m_sBox(1, 21) = &H137A3BE4 m_sBox(2, 21) = &HBA3BF050 m_sBox(3, 21) = &H7EFB2A98

88

Page 89: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

m_sBox(2, 4) = &H718BCD58 m_sBox(3, 4) = &H82154AEE m_sBox(0, 5) = &H7B54A41D m_sBox(1, 5) = &HC25A59B5 m_sBox(2, 5) = &H9C30D539 m_sBox(3, 5) = &H2AF26013 m_sBox(0, 6) = &HC5D1B023 m_sBox(1, 6) = &H286085F0 m_sBox(2, 6) = &HCA417918 m_sBox(3, 6) = &HB8DB38EF m_sBox(0, 7) = &H8E79DCB0 m_sBox(1, 7) = &H603A180E m_sBox(2, 7) = &H6C9E0E8B m_sBox(3, 7) = &HB01E8A3E m_sBox(0, 8) = &HD71577C1 m_sBox(1, 8) = &HBD314B27 m_sBox(2, 8) = &H78AF2FDA

m_sBox(1, 13) = &H6C24CF5C m_sBox(2, 13) = &H7A325381 m_sBox(3, 13) = &H28958677 m_sBox(0, 14) = &H3B8F4898 m_sBox(1, 14) = &H6B4BB9AF m_sBox(2, 14) = &HC4BFE81B m_sBox(3, 14) = &H66282193 m_sBox(0, 15) = &H61D809CC m_sBox(1, 15) = &HFB21A991 m_sBox(2, 15) = &H487CAC60 m_sBox(3, 15) = &H5DEC8032 m_sBox(0, 16) = &HEF845D5D m_sBox(1, 16) = &HE98575B1 m_sBox(2, 16) = &HDC262302 m_sBox(3, 16) = &HEB651B88 m_sBox(0, 17) = &H23893E81 m_sBox(1, 17) = &HD396ACC5

m_sBox(0, 22) = &HA1F1651D m_sBox(1, 22) = &H39AF0176 m_sBox(2, 22) = &H66CA593E m_sBox(3, 22) = &H82430E88 m_sBox(0, 23) = &H8CEE8619 m_sBox(1, 23) = &H456F9FB4 m_sBox(2, 23) = &H7D84A5C3 m_sBox(3, 23) = &H3B8B5EBE m_sBox(0, 24) = &HE06F75D8 m_sBox(1, 24) = &H85C12073 m_sBox(2, 24) = &H401A449F m_sBox(3, 24) = &H56C16AA6 m_sBox(0, 25) = &H4ED3AA62 m_sBox(1, 25) = &H363F7706 m_sBox(2, 25) = &H1BFEDF72 m_sBox(3, 25) = &H429B023D m_sBox(0, 26) = &H37D0D724

m_sBox(1, 26) = &HD00A1248 m_sBox(2, 26) = &HDB0FEAD3 m_sBox(3, 26) = &H49F1C09B m_sBox(0, 27) = &H75372C9 m_sBox(1, 27) = &H80991B7B m_sBox(2, 27) = &H25D479D8 m_sBox(3, 27) = &HF6E8DEF7 m_sBox(0, 28) = &HE3FE501A m_sBox(1, 28) = &HB6794C3B m_sBox(2, 28) = &H976CE0BD m_sBox(3, 28) = &H4C006BA m_sBox(0, 29) = &HC1A94FB6 m_sBox(1, 29) = &H409F60C4 m_sBox(2, 29) = &H5E5C9EC2 m_sBox(3, 29) = &H196A2463 m_sBox(0, 30) = &H68FB6FAF m_sBox(1, 30) = &H3E6C53B5 m_sBox(2, 30) = &H1339B2EB m_sBox(3, 30) = &H3B52EC6F m_sBox(0, 31) = &H6DFC511F m_sBox(1, 31) = &H9B30952C m_sBox(2, 31) = &HCC814544 m_sBox(3, 31) = &HAF5EBD09 m_sBox(0, 32) = &HBEE3D004 m_sBox(1, 32) = &HDE334AFD m_sBox(2, 32) = &H660F2807 m_sBox(3, 32) = &H192E4BB3 m_sBox(0, 33) = &HC0CBA857 m_sBox(1, 33) = &H45C8740F m_sBox(2, 33) = &HD20B5F39 m_sBox(3, 33) = &HB9D3FBDB m_sBox(0, 34) = &H5579C0BD m_sBox(1, 34) = &H1A60320A m_sBox(2, 34) = &HD6A100C6 m_sBox(3, 34) = &H402C7279

m_sBox(0, 35) = &H679F25FE m_sBox(1, 35) = &HFB1FA3CC m_sBox(2, 35) = &H8EA5E9F8 m_sBox(3, 35) = &HDB3222F8 m_sBox(0, 36) = &H3C7516DF m_sBox(1, 36) = &HFD616B15 m_sBox(2, 36) = &H2F501EC8 m_sBox(3, 36) = &HAD0552AB m_sBox(0, 37) = &H323DB5FA m_sBox(1, 37) = &HFD238760 m_sBox(2, 37) = &H53317B48 m_sBox(3, 37) = &H3E00DF82 m_sBox(0, 38) = &H9E5C57BB m_sBox(1, 38) = &HCA6F8CA0 m_sBox(2, 38) = &H1A87562E m_sBox(3, 38) = &HDF1769DB m_sBox(0, 39) = &HD542A8F6 m_sBox(1, 39) = &H287EFFC3 m_sBox(2, 39) = &HAC6732C6 m_sBox(3, 39) = &H8C4F5573 m_sBox(0, 40) = &H695B27B0 m_sBox(1, 40) = &HBBCA58C8 m_sBox(2, 40) = &HE1FFA35D m_sBox(3, 40) = &HB8F011A0 m_sBox(0, 41) = &H10FA3D98 m_sBox(1, 41) = &HFD2183B8 m_sBox(2, 41) = &H4AFCB56C m_sBox(3, 41) = &H2DD1D35B m_sBox(0, 42) = &H9A53E479 m_sBox(1, 42) = &HB6F84565 m_sBox(2, 42) = &HD28E49BC m_sBox(3, 42) = &H4BFB9790 m_sBox(0, 43) = &HE1DDF2DA m_sBox(1, 43) = &HA4CB7E33 m_sBox(2, 43) = &H62FB1341

m_sBox(3, 43) = &HCEE4C6E8 m_sBox(0, 44) = &HEF20CADA m_sBox(1, 44) = &H36774C01 m_sBox(2, 44) = &HD07E9EFE m_sBox(3, 44) = &H2BF11FB4 m_sBox(0, 45) = &H95DBDA4D m_sBox(1, 45) = &HAE909198 m_sBox(2, 45) = &HEAAD8E71 m_sBox(3, 45) = &H6B93D5A0 m_sBox(0, 46) = &HD08ED1D0 m_sBox(1, 46) = &HAFC725E0 m_sBox(2, 46) = &H8E3C5B2F m_sBox(3, 46) = &H8E7594B7 m_sBox(0, 47) = &H8FF6E2FB m_sBox(1, 47) = &HF2122B64 m_sBox(2, 47) = &H8888B812 m_sBox(3, 47) = &H900DF01C m_sBox(0, 48) = &H4FAD5EA0 m_sBox(1, 48) = &H688FC31C m_sBox(2, 48) = &HD1CFF191 m_sBox(3, 48) = &HB3A8C1AD m_sBox(0, 49) = &H2F2F2218 m_sBox(1, 49) = &HBE0E1777 m_sBox(2, 49) = &HEA752DFE m_sBox(3, 49) = &H8B021FA1 m_sBox(0, 50) = &HE5A0CC0F m_sBox(1, 50) = &HB56F74E8 m_sBox(2, 50) = &H18ACF3D6 m_sBox(3, 50) = &HCE89E299 m_sBox(0, 51) = &HB4A84FE0 m_sBox(1, 51) = &HFD13E0B7 m_sBox(2, 51) = &H7CC43B81 m_sBox(3, 51) = &HD2ADA8D9 m_sBox(0, 52) = &H165FA266 m_sBox(1, 52) = &H80957705

m_sBox(2, 52) = &H93CC7314 m_sBox(3, 52) = &H211A1477 m_sBox(0, 53) = &HE6AD2065 m_sBox(1, 53) = &H77B5FA86 m_sBox(2, 53) = &HC75442F5 m_sBox(3, 53) = &HFB9D35CF m_sBox(0, 54) = &HEBCDAF0C m_sBox(1, 54) = &H7B3E89A0 m_sBox(2, 54) = &HD6411BD3 m_sBox(3, 54) = &HAE1E7E49 m_sBox(0, 55) = &H250E2D m_sBox(1, 55) = &H2071B35E m_sBox(2, 55) = &H226800BB m_sBox(3, 55) = &H57B8E0AF m_sBox(0, 56) = &H2464369B

m_sBox(1, 61) = &H571BE91F m_sBox(2, 61) = &HF296EC6B m_sBox(3, 61) = &H2A0DD915 m_sBox(0, 62) = &HB6636521 m_sBox(1, 62) = &HE7B9F9B6 m_sBox(2, 62) = &HFF34052E m_sBox(3, 62) = &HC5855664 m_sBox(0, 63) = &H53B02D5D m_sBox(1, 63) = &HA99F8FA1 m_sBox(2, 63) = &H8BA4799 m_sBox(3, 63) = &H6E85076A m_sBox(0, 64) = &H4B7A70E9 m_sBox(1, 64) = &HB5B32944 m_sBox(2, 64) = &HDB75092E m_sBox(3, 64) = &HC4192623

m_sBox(0, 70) = &H4CDD2086 m_sBox(1, 70) = &H8470EB26 m_sBox(2, 70) = &H6382E9C6 m_sBox(3, 70) = &H21ECC5E m_sBox(0, 71) = &H9686B3F m_sBox(1, 71) = &H3EBAEFC9 m_sBox(2, 71) = &H3C971814 m_sBox(3, 71) = &H6B6A70A1 m_sBox(0, 72) = &H687F3584 m_sBox(1, 72) = &H52A0E286 m_sBox(2, 72) = &HB79C5305 m_sBox(3, 72) = &HAA500737 m_sBox(0, 73) = &H3E07841C m_sBox(1, 73) = &H7FDEAE5C m_sBox(2, 73) = &H8E7D44EC

89

Page 90: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

m_sBox(1, 56) = &HF009B91E m_sBox(2, 56) = &H5563911D m_sBox(3, 56) = &H59DFA6AA m_sBox(0, 57) = &H78C14389 m_sBox(1, 57) = &HD95A537F m_sBox(2, 57) = &H207D5BA2 m_sBox(3, 57) = &H2E5B9C5 m_sBox(0, 58) = &H83260376 m_sBox(1, 58) = &H6295CFA9 m_sBox(2, 58) = &H11C81968 m_sBox(3, 58) = &H4E734A41 m_sBox(0, 59) = &HB3472DCA m_sBox(1, 59) = &H7B14A94A m_sBox(2, 59) = &H1B510052 m_sBox(3, 59) = &H9A532915 m_sBox(0, 60) = &HD60F573F m_sBox(1, 60) = &HBC9BC6E4 m_sBox(2, 60) = &H2B60A476 m_sBox(3, 60) = &H81E67400 m_sBox(0, 61) = &H8BA6FB5

m_sBox(0, 65) = &HAD6EA6B0 m_sBox(1, 65) = &H49A7DF7D m_sBox(2, 65) = &H9CEE60B8 m_sBox(3, 65) = &H8FEDB266 m_sBox(0, 66) = &HECAA8C71 m_sBox(1, 66) = &H699A17FF m_sBox(2, 66) = &H5664526C m_sBox(3, 66) = &HC2B19EE1 m_sBox(0, 67) = &H193602A5 m_sBox(1, 67) = &H75094C29 m_sBox(2, 67) = &HA0591340 m_sBox(3, 67) = &HE4183A3E m_sBox(0, 68) = &H3F54989A m_sBox(1, 68) = &H5B429D65 m_sBox(2, 68) = &H6B8FE4D6 m_sBox(3, 68) = &H99F73FD6 m_sBox(0, 69) = &HA1D29C07 m_sBox(1, 69) = &HEFE830F5 m_sBox(2, 69) = &H4D2D38E6 m_sBox(3, 69) = &HF0255DC1

m_sBox(3, 73) = &H5716F2B8 m_sBox(0, 74) = &HB03ADA37 m_sBox(1, 74) = &HF0500C0D m_sBox(2, 74) = &HF01C1F04 m_sBox(3, 74) = &H200B3FF m_sBox(0, 75) = &HAE0CF51A m_sBox(1, 75) = &H3CB574B2 m_sBox(2, 75) = &H25837A58 m_sBox(3, 75) = &HDC0921BD m_sBox(0, 76) = &HD19113F9 m_sBox(1, 76) = &H7CA92FF6 m_sBox(2, 76) = &H94324773 m_sBox(3, 76) = &H22F54701 m_sBox(0, 77) = &H3AE5E581 m_sBox(1, 77) = &H37C2DADC m_sBox(2, 77) = &HC8B57634 m_sBox(3, 77) = &H9AF3DDA7 m_sBox(0, 78) = &HA9446146 m_sBox(1, 78) = &HFD0030E m_sBox(2, 78) = &HECC8C73E

m_sBox(3, 78) = &HA4751E41 m_sBox(0, 79) = &HE238CD99 m_sBox(1, 79) = &H3BEA0E2F m_sBox(2, 79) = &H3280BBA1 m_sBox(3, 79) = &H183EB331 m_sBox(0, 80) = &H4E548B38 m_sBox(1, 80) = &H4F6DB908 m_sBox(2, 80) = &H6F420D03 m_sBox(3, 80) = &HF60A04BF m_sBox(0, 81) = &H2CB81290 m_sBox(1, 81) = &H24977C79 m_sBox(2, 81) = &H5679B072 m_sBox(3, 81) = &HBCAF89AF m_sBox(0, 82) = &HDE9A771F m_sBox(1, 82) = &HD9930810 m_sBox(2, 82) = &HB38BAE12 m_sBox(3, 82) = &HDCCF3F2E m_sBox(0, 83) = &H5512721F m_sBox(1, 83) = &H2E6B7124 m_sBox(2, 83) = &H501ADDE6 m_sBox(3, 83) = &H9F84CD87 m_sBox(0, 84) = &H7A584718 m_sBox(1, 84) = &H7408DA17 m_sBox(2, 84) = &HBC9F9ABC m_sBox(3, 84) = &HE94B7D8C m_sBox(0, 85) = &HEC7AEC3A m_sBox(1, 85) = &HDB851DFA m_sBox(2, 85) = &H63094366 m_sBox(3, 85) = &HC464C3D2 m_sBox(0, 86) = &HEF1C1847 m_sBox(1, 86) = &H3215D908 m_sBox(2, 86) = &HDD433B37 m_sBox(3, 86) = &H24C2BA16 m_sBox(0, 87) = &H12A14D43 m_sBox(1, 87) = &H2A65C451

m_sBox(2, 87) = &H50940002 m_sBox(3, 87) = &H133AE4DD m_sBox(0, 88) = &H71DFF89E m_sBox(1, 88) = &H10314E55 m_sBox(2, 88) = &H81AC77D6 m_sBox(3, 88) = &H5F11199B m_sBox(0, 89) = &H43556F1 m_sBox(1, 89) = &HD7A3C76B m_sBox(2, 89) = &H3C11183B m_sBox(3, 89) = &H5924A509 m_sBox(0, 90) = &HF28FE6ED m_sBox(1, 90) = &H97F1FBFA m_sBox(2, 90) = &H9EBABF2C m_sBox(3, 90) = &H1E153C6E m_sBox(0, 91) = &H86E34570 m_sBox(1, 91) = &HEAE96FB1 m_sBox(2, 91) = &H860E5E0A m_sBox(3, 91) = &H5A3E2AB3 m_sBox(0, 92) = &H771FE71C m_sBox(1, 92) = &H4E3D06FA m_sBox(2, 92) = &H2965DCB9 m_sBox(3, 92) = &H99E71D0F m_sBox(0, 93) = &H803E89D6 m_sBox(1, 93) = &H5266C825 m_sBox(2, 93) = &H2E4CC978 m_sBox(3, 93) = &H9C10B36A m_sBox(0, 94) = &HC6150EBA m_sBox(1, 94) = &H94E2EA78 m_sBox(2, 94) = &HA5FC3C53 m_sBox(3, 94) = &H1E0A2DF4 m_sBox(0, 95) = &HF2F74EA7 m_sBox(1, 95) = &H361D2B3D m_sBox(2, 95) = &H1939260F m_sBox(3, 95) = &H19C27960 m_sBox(0, 96) = &H5223A708

m_sBox(1, 96) = &HF71312B6 m_sBox(2, 96) = &HEBADFE6E m_sBox(3, 96) = &HEAC31F66 m_sBox(0, 97) = &HE3BC4595 m_sBox(1, 97) = &HA67BC883 m_sBox(2, 97) = &HB17F37D1 m_sBox(3, 97) = &H18CFF28 m_sBox(0, 98) = &HC332DDEF m_sBox(1, 98) = &HBE6C5AA5 m_sBox(2, 98) = &H65582185 m_sBox(3, 98) = &H68AB9802 m_sBox(0, 99) = &HEECEA50F m_sBox(1, 99) = &HDB2F953B m_sBox(2, 99) = &H2AEF7DAD m_sBox(3, 99) = &H5B6E2F84 m_sBox(0, 100) = &H1521B628 m_sBox(1, 100) = &H29076170 m_sBox(2, 100) = &HECDD4775 m_sBox(3, 100) = &H619F1510 m_sBox(0, 101) = &H13CCA830 m_sBox(1, 101) = &HEB61BD96 m_sBox(2, 101) = &H334FE1E m_sBox(3, 101) = &HAA0363CF m_sBox(0, 102) = &HB5735C90 m_sBox(1, 102) = &H4C70A239 m_sBox(2, 102) = &HD59E9E0B m_sBox(3, 102) = &HCBAADE14 m_sBox(0, 103) = &HEECC86BC m_sBox(1, 103) = &H60622CA7 m_sBox(2, 103) = &H9CAB5CAB m_sBox(3, 103) = &HB2F3846E m_sBox(0, 104) = &H648B1EAF m_sBox(1, 104) = &H19BDF0CA m_sBox(2, 104) = &HA02369B9 m_sBox(3, 104) = &H655ABB50

m_sBox(0, 105) = &H40685A32 m_sBox(1, 105) = &H3C2AB4B3 m_sBox(2, 105) = &H319EE9D5 m_sBox(3, 105) = &HC021B8F7 m_sBox(0, 106) = &H9B540B19 m_sBox(1, 106) = &H875FA099 m_sBox(2, 106) = &H95F7997E m_sBox(3, 106) = &H623D7DA8 m_sBox(0, 107) = &HF837889A m_sBox(1, 107) = &H97E32D77 m_sBox(2, 107) = &H11ED935F m_sBox(3, 107) = &H16681281

m_sBox(3, 113) = &HFACB4FD0 m_sBox(0, 114) = &HC742F442 m_sBox(1, 114) = &HEF6ABBB5 m_sBox(2, 114) = &H654F3B1D m_sBox(3, 114) = &H41CD2105 m_sBox(0, 115) = &HD81E799E m_sBox(1, 115) = &H86854DC7 m_sBox(2, 115) = &HE44B476A m_sBox(3, 115) = &H3D816250 m_sBox(0, 116) = &HCF62A1F2 m_sBox(1, 116) = &H5B8D2646 m_sBox(2, 116) = &HFC8883A0

m_sBox(1, 131) = &H97244546 m_sBox(2, 131) = &H14214F74 m_sBox(3, 131) = &HBF8B8840 m_sBox(0, 132) = &H4D95FC1D m_sBox(1, 132) = &H96B591AF m_sBox(2, 132) = &H70F4DDD3 m_sBox(3, 132) = &H66A02F45 m_sBox(0, 133) = &HBFBC09EC m_sBox(1, 133) = &H3BD9785 m_sBox(2, 133) = &H7FAC6DD0 m_sBox(3, 133) = &H31CB8504 m_sBox(0, 134) = &H96EB27B3

90

Page 91: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

m_sBox(0, 108) = &HE358829 m_sBox(1, 108) = &HC7E61FD6 m_sBox(2, 108) = &H96DEDFA1 m_sBox(3, 108) = &H7858BA99 m_sBox(0, 109) = &H57F584A5 m_sBox(1, 109) = &H1B227263 m_sBox(2, 109) = &H9B83C3FF m_sBox(3, 109) = &H1AC24696 m_sBox(0, 110) = &HCDB30AEB m_sBox(1, 110) = &H532E3054 m_sBox(2, 110) = &H8FD948E4 m_sBox(3, 110) = &H6DBC3128 m_sBox(0, 111) = &H58EBF2EF m_sBox(1, 111) = &H34C6FFEA m_sBox(2, 111) = &HFE28ED61 m_sBox(3, 111) = &HEE7C3C73 m_sBox(0, 112) = &H5D4A14D9 m_sBox(1, 112) = &HE864B7E3 m_sBox(2, 112) = &H42105D14 m_sBox(3, 112) = &H203E13E0 m_sBox(0, 113) = &H45EEE2B6 m_sBox(1, 113) = &HA3AAABEA m_sBox(2, 113) = &HDB6C4F15

m_sBox(3, 116) = &HC1C7B6A3 m_sBox(0, 117) = &H7F1524C3 m_sBox(1, 117) = &H69CB7492 m_sBox(2, 117) = &H47848A0B m_sBox(3, 117) = &H5692B285 m_sBox(0, 118) = &H95BBF00 m_sBox(1, 118) = &HAD19489D m_sBox(2, 118) = &H1462B174 m_sBox(3, 118) = &H23820E00 m_sBox(0, 119) = &H58428D2A m_sBox(1, 119) = &HC55F5EA m_sBox(2, 119) = &H1DADF43E m_sBox(3, 119) = &H233F7061 m_sBox(0, 120) = &H3372F092 m_sBox(1, 120) = &H8D937E41 m_sBox(2, 120) = &HD65FECF1 m_sBox(3, 120) = &H6C223BDB m_sBox(0, 121) = &H7CDE3759 m_sBox(1, 121) = &HCBEE7460 m_sBox(2, 121) = &H4085F2A7 m_sBox(3, 121) = &HCE77326E m_sBox(0, 122) = &HA6078084 m_sBox(1, 122) = &H19F8509E

m_sBox(1, 134) = &H55FD3941 m_sBox(2, 134) = &HDA2547E6 m_sBox(3, 134) = &HABCA0A9A m_sBox(0, 135) = &H28507825 m_sBox(1, 135) = &H530429F4 m_sBox(2, 135) = &HA2C86DA m_sBox(3, 135) = &HE9B66DFB m_sBox(0, 136) = &H68DC1462 m_sBox(1, 136) = &HD7486900 m_sBox(2, 136) = &H680EC0A4 m_sBox(3, 136) = &H27A18DEE m_sBox(0, 137) = &H4F3FFEA2 m_sBox(1, 137) = &HE887AD8C m_sBox(2, 137) = &HB58CE006 m_sBox(3, 137) = &H7AF4D6B6 m_sBox(0, 138) = &HAACE1E7C m_sBox(1, 138) = &HD3375FEC m_sBox(2, 138) = &HCE78A399 m_sBox(3, 138) = &H406B2A42 m_sBox(0, 139) = &H20FE9E35 m_sBox(1, 139) = &HD9F385B9 m_sBox(2, 139) = &HEE39D7AB m_sBox(3, 139) = &H3B124E8B

m_sBox(0, 140) = &H1DC9FAF7 m_sBox(1, 140) = &H4B6D1856 m_sBox(2, 140) = &H26A36631 m_sBox(3, 140) = &HEAE397B2 m_sBox(0, 141) = &H3A6EFA74 m_sBox(1, 141) = &HDD5B4332 m_sBox(2, 141) = &H6841E7F7 m_sBox(3, 141) = &HCA7820FB m_sBox(0, 142) = &HFB0AF54E m_sBox(1, 142) = &HD8FEB397 m_sBox(2, 142) = &H454056AC m_sBox(3, 142) = &HBA489527 m_sBox(0, 143) = &H55533A3A m_sBox(1, 143) = &H20838D87 m_sBox(2, 143) = &HFE6BA9B7 m_sBox(3, 143) = &HD096954B m_sBox(0, 144) = &H55A867BC m_sBox(1, 144) = &HA1159A58 m_sBox(2, 144) = &HCCA92963 m_sBox(3, 144) = &H99E1DB33 m_sBox(0, 145) = &HA62A4A56 m_sBox(1, 145) = &H3F3125F9 m_sBox(2, 145) = &H5EF47E1C m_sBox(3, 145) = &H9029317C m_sBox(0, 146) = &HFDF8E802 m_sBox(1, 146) = &H4272F70 m_sBox(2, 146) = &H80BB155C m_sBox(3, 146) = &H5282CE3 m_sBox(0, 147) = &H95C11548 m_sBox(1, 147) = &HE4C66D22 m_sBox(2, 147) = &H48C1133F m_sBox(3, 147) = &HC70F86DC m_sBox(0, 148) = &H7F9C9EE m_sBox(1, 148) = &H41041F0F m_sBox(2, 148) = &H404779A4

m_sBox(3, 148) = &H5D886E17 m_sBox(0, 149) = &H325F51EB m_sBox(1, 149) = &HD59BC0D1 m_sBox(2, 149) = &HF2BCC18F m_sBox(3, 149) = &H41113564 m_sBox(0, 150) = &H257B7834 m_sBox(1, 150) = &H602A9C60 m_sBox(2, 150) = &HDFF8E8A3 m_sBox(3, 150) = &H1F636C1B m_sBox(0, 151) = &HE12B4C2 m_sBox(1, 151) = &H2E1329E m_sBox(2, 151) = &HAF664FD1 m_sBox(3, 151) = &HCAD18115 m_sBox(0, 152) = &H6B2395E0 m_sBox(1, 152) = &H333E92E1 m_sBox(2, 152) = &H3B240B62 m_sBox(3, 152) = &HEEBEB922 m_sBox(0, 153) = &H85B2A20E m_sBox(1, 153) = &HE6BA0D99 m_sBox(2, 153) = &HDE720C8C m_sBox(3, 153) = &H2DA2F728 m_sBox(0, 154) = &HD0127845 m_sBox(1, 154) = &H95B794FD m_sBox(2, 154) = &H647D0862 m_sBox(3, 154) = &HE7CCF5F0 m_sBox(0, 155) = &H5449A36F m_sBox(1, 155) = &H877D48FA m_sBox(2, 155) = &HC39DFD27 m_sBox(3, 155) = &HF33E8D1E m_sBox(0, 156) = &HA476341 m_sBox(1, 156) = &H992EFF74 m_sBox(2, 156) = &H3A6F6EAB m_sBox(3, 156) = &HF4F8FD37 m_sBox(0, 157) = &HA812DC60 m_sBox(1, 157) = &HA1EBDDF8

m_sBox(2, 157) = &H991BE14C m_sBox(3, 157) = &HDB6E6B0D m_sBox(0, 158) = &HC67B5510 m_sBox(1, 158) = &H6D672C37 m_sBox(2, 158) = &H2765D43B m_sBox(3, 158) = &HDCD0E804 m_sBox(0, 159) = &HF1290DC7 m_sBox(1, 159) = &HCC00FFA3 m_sBox(2, 159) = &HB5390F92 m_sBox(3, 159) = &H690FED0B m_sBox(0, 160) = &H667B9FFB m_sBox(1, 160) = &HCEDB7D9C m_sBox(2, 160) = &HA091CF0B m_sBox(3, 160) = &HD9155EA3 m_sBox(0, 161) = &HBB132F88 m_sBox(1, 161) = &H515BAD24 m_sBox(2, 161) = &H7B9479BF m_sBox(3, 161) = &H763BD6EB m_sBox(0, 162) = &H37392EB3 m_sBox(1, 162) = &HCC115979 m_sBox(2, 162) = &H8026E297 m_sBox(3, 162) = &HF42E312D m_sBox(0, 163) = &H6842ADA7 m_sBox(1, 163) = &HC66A2B3B m_sBox(2, 163) = &H12754CCC m_sBox(3, 163) = &H782EF11C m_sBox(0, 164) = &H6A124237 m_sBox(1, 164) = &HB79251E7 m_sBox(2, 164) = &H6A1BBE6 m_sBox(3, 164) = &H4BFB6350 m_sBox(0, 165) = &H1A6B1018 m_sBox(1, 165) = &H11CAEDFA m_sBox(2, 165) = &H3D25BDD8 m_sBox(3, 165) = &HE2E1C3C9 m_sBox(0, 166) = &H44421659

m_sBox(1, 166) = &HA121386 m_sBox(2, 166) = &HD90CEC6E m_sBox(3, 166) = &HD5ABEA2A m_sBox(0, 167) = &H64AF674E m_sBox(1, 167) = &HDA86A85F m_sBox(2, 167) = &HBEBFE988 m_sBox(3, 167) = &H64E4C3FE m_sBox(0, 168) = &H9DBC8057 m_sBox(1, 168) = &HF0F7C086

m_sBox(0, 175) = &H466E598E m_sBox(1, 175) = &H20B45770 m_sBox(2, 175) = &H8CD55591 m_sBox(3, 175) = &HC902DE4C m_sBox(0, 176) = &HB90BACE1 m_sBox(1, 176) = &HBB8205D0 m_sBox(2, 176) = &H11A86248 m_sBox(3, 176) = &H7574A99E m_sBox(0, 177) = &HB77F19B6

m _sBox(3, 183) = &H30DC7D62 m_sBox(0, 184) = &H11E69ED7 m_sBox(1, 184) = &H2338EA63 m_sBox(2, 184) = &H53C2DD94 m_sBox(3, 184) = &HC2C21634 m_sBox(0, 185) = &HBBCBEE56 m_sBox(1, 185) = &H90BCB6DE m_sBox(2, 185) = &HEBFC7DA1 m_sBox(3, 185) = &HCE591D76

91

Page 92: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

m_sBox(2, 168) = &H60787BF8 m_sBox(3, 168) = &H6003604D m_sBox(0, 169) = &HD1FD8346 m_sBox(1, 169) = &HF6381FB0 m_sBox(2, 169) = &H7745AE04 m_sBox(3, 169) = &HD736FCCC m_sBox(0, 170) = &H83426B33 m_sBox(1, 170) = &HF01EAB71 m_sBox(2, 170) = &HB0804187 m_sBox(3, 170) = &H3C005E5F m_sBox(0, 171) = &H77A057BE m_sBox(1, 171) = &HBDE8AE24 m_sBox(2, 171) = &H55464299 m_sBox(3, 171) = &HBF582E61 m_sBox(0, 172) = &H4E58F48F m_sBox(1, 172) = &HF2DDFDA2 m_sBox(2, 172) = &HF474EF38 m_sBox(3, 172) = &H8789BDC2 m_sBox(0, 173) = &H5366F9C3 m_sBox(1, 173) = &HC8B38E74 m_sBox(2, 173) = &HB475F255 m_sBox(3, 173) = &H46FCD9B9 m_sBox(0, 174) = &H7AEB2661 m_sBox(1, 174) = &H8B1DDF84 m_sBox(2, 174) = &H846A0E79 m_sBox(3, 174) = &H915F95E2

m_sBox(1, 177) = &HE0A9DC09 m_sBox(2, 177) = &H662D09A1 m_sBox(3, 177) = &HC4324633 m_sBox(0, 178) = &HE85A1F02 m_sBox(1, 178) = &H9F0BE8C m_sBox(2, 178) = &H4A99A025 m_sBox(3, 178) = &H1D6EFE10 m_sBox(0, 179) = &H1AB93D1D m_sBox(1, 179) = &HBA5A4DF m_sBox(2, 179) = &HA186F20F m_sBox(3, 179) = &H2868F169 m_sBox(0, 180) = &HDCB7DA83 m_sBox(1, 180) = &H573906FE m_sBox(2, 180) = &HA1E2CE9B m_sBox(3, 180) = &H4FCD7F52 m_sBox(0, 181) = &H50115E01 m_sBox(1, 181) = &HA70683FA m_sBox(2, 181) = &HA002B5C4 m_sBox(3, 181) = &HDE6D027 m_sBox(0, 182) = &H9AF88C27 m_sBox(1, 182) = &H773F8641 m_sBox(2, 182) = &HC3604C06 m_sBox(3, 182) = &H61A806B5 m_sBox(0, 183) = &HF0177A28 m_sBox(1, 183) = &HC0F586E0 m_sBox(2, 183) = &H6058AA

m_sBox(0, 186) = &H6F05E409 m_sBox(1, 186) = &H4B7C0188 m_sBox(2, 186) = &H39720A3D m_sBox(3, 186) = &H7C927C24 m_sBox(0, 187) = &H86E3725F m_sBox(1, 187) = &H724D9DB9 m_sBox(2, 187) = &H1AC15BB4 m_sBox(3, 187) = &HD39EB8FC m_sBox(0, 188) = &HED545578 m_sBox(1, 188) = &H8FCA5B5 m_sBox(2, 188) = &HD83D7CD3 m_sBox(3, 188) = &H4DAD0FC4 m_sBox(0, 189) = &H1E50EF5E m_sBox(1, 189) = &HB161E6F8 m_sBox(2, 189) = &HA28514D9 m_sBox(3, 189) = &H6C51133C m_sBox(0, 190) = &H6FD5C7E7 m_sBox(1, 190) = &H56E14EC4 m_sBox(2, 190) = &H362ABFCE m_sBox(3, 190) = &HDDC6C837 m_sBox(0, 191) = &HD79A3234 m_sBox(1, 191) = &H92638212 m_sBox(2, 191) = &H670EFA8E m_sBox(3, 191) = &H406000E0 m_sBox(0, 192) = &H3A39CE37 m_sBox(1, 192) = &HD3FAF5CF

m_sBox(2, 192) = &HABC27737 m_sBox(3, 192) = &H5AC52D1B m_sBox(0, 193) = &H5CB0679E m_sBox(1, 193) = &H4FA33742 m_sBox(2, 193) = &HD3822740 m_sBox(3, 193) = &H99BC9BBE m_sBox(0, 194) = &HD5118E9D m_sBox(1, 194) = &HBF0F7315 m_sBox(2, 194) = &HD62D1C7E m_sBox(3, 194) = &HC700C47B m_sBox(0, 195) = &HB78C1B6B m_sBox(1, 195) = &H21A19045 m_sBox(2, 195) = &HB26EB1BE m_sBox(3, 195) = &H6A366EB4 m_sBox(0, 196) = &H5748AB2F m_sBox(1, 196) = &HBC946E79 m_sBox(2, 196) = &HC6A376D2 m_sBox(3, 196) = &H6549C2C8 m_sBox(0, 197) = &H530FF8EE m_sBox(1, 197) = &H468DDE7D m_sBox(2, 197) = &HD5730A1D m_sBox(3, 197) = &H4CD04DC6 m_sBox(0, 198) = &H2939BBDB m_sBox(1, 198) = &HA9BA4650 m_sBox(2, 198) = &HAC9526E8 m_sBox(3, 198) = &HBE5EE304 m_sBox(0, 199) = &HA1FAD5F0 m_sBox(1, 199) = &H6A2D519A m_sBox(2, 199) = &H63EF8CE2 m_sBox(3, 199) = &H9A86EE22 m_sBox(0, 200) = &HC089C2B8 m_sBox(1, 200) = &H43242EF6 m_sBox(2, 200) = &HA51E03AA m_sBox(3, 200) = &H9CF2D0A4 m_sBox(0, 201) = &H83C061BA

m_sBox(1, 201) = &H9BE96A4D m_sBox(2, 201) = &H8FE51550 m_sBox(3, 201) = &HBA645BD6 m_sBox(0, 202) = &H2826A2F9 m_sBox(1, 202) = &HA73A3AE1 m_sBox(2, 202) = &H4BA99586 m_sBox(3, 202) = &HEF5562E9 m_sBox(0, 203) = &HC72FEFD3 m_sBox(1, 203) = &HF752F7DA m_sBox(2, 203) = &H3F046F69 m_sBox(3, 203) = &H77FA0A59 m_sBox(0, 204) = &H80E4A915 m_sBox(1, 204) = &H87B08601 m_sBox(2, 204) = &H9B09E6AD m_sBox(3, 204) = &H3B3EE593 m_sBox(0, 205) = &HE990FD5A m_sBox(1, 205) = &H9E34D797 m_sBox(2, 205) = &H2CF0B7D9 m_sBox(3, 205) = &H22B8B51 m_sBox(0, 206) = &H96D5AC3A m_sBox(1, 206) = &H17DA67D m_sBox(2, 206) = &HD1CF3ED6 m_sBox(3, 206) = &H7C7D2D28 m_sBox(0, 207) = &H1F9F25CF m_sBox(1, 207) = &HADF2B89B m_sBox(2, 207) = &H5AD6B472 m_sBox(3, 207) = &H5A88F54C m_sBox(0, 208) = &HE029AC71 m_sBox(1, 208) = &HE019A5E6 m_sBox(2, 208) = &H47B0ACFD m_sBox(3, 208) = &HED93FA9B m_sBox(0, 209) = &HE8D3C48D m_sBox(1, 209) = &H283B57CC m_sBox(2, 209) = &HF8D56629 m_sBox(3, 209) = &H79132E28

m_sBox(0, 210) = &H785F0191 m_sBox(1, 210) = &HED756055 m_sBox(2, 210) = &HF7960E44 m_sBox(3, 210) = &HE3D35E8C m_sBox(0, 211) = &H15056DD4 m_sBox(1, 211) = &H88F46DBA m_sBox(2, 211) = &H3A16125 m_sBox(3, 211) = &H564F0BD m_sBox(0, 212) = &HC3EB9E15 m_sBox(1, 212) = &H3C9057A2 m_sBox(2, 212) = &H97271AEC m_sBox(3, 212) = &HA93A072A m_sBox(0, 213) = &H1B3F6D9B m_sBox(1, 213) = &H1E6321F5 m_sBox(2, 213) = &HF59C66FB m_sBox(3, 213) = &H26DCF319 m_sBox(0, 214) = &H7533D928 m_sBox(1, 214) = &HB155FDF5 m_sBox(2, 214) = &H3563482 m_sBox(3, 214) = &H8ABA3CBB m_sBox(0, 215) = &H28517711 m_sBox(1, 215) = &HC20AD9F8 m_sBox(2, 215) = &HABCC5167 m_sBox(3, 215) = &HCCAD925F m_sBox(0, 216) = &H4DE81751 m_sBox(1, 216) = &H3830DC8E m_sBox(2, 216) = &H379D5862 m_sBox(3, 216) = &H9320F991 m_sBox(0, 217) = &HEA7A90C2 m_sBox(1, 217) = &HFB3E7BCE m_sBox(2, 217) = &H5121CE64 m_sBox(3, 217) = &H774FBE32 m_sBox(0, 218) = &HA8B6E37E m_sBox(1, 218) = &HC3293D46 m_sBox(2, 218) = &H48DE5369

m_sBox(3, 218) = &H6413E680 m_sBox(0, 219) = &HA2AE0810 m_sBox(1, 219) = &HDD6DB224 m_sBox(2, 219) = &H69852DFD m_sBox(3, 219) = &H9072166 m_sBox(0, 220) = &HB39A460A

m_sBox(2, 227) = &H6B89FB4 m_sBox(3, 227) = &HCE6EA048 m_sBox(0, 228) = &H6F3F3B82 m_sBox(1, 228) = &H3520AB82 m_sBox(2, 228) = &H11A1D4B m_sBox(3, 228) = &H277227F8

m_sBox(1, 236) = &HCEB69CEB m_sBox(2, 236) = &HC2A86459 m_sBox(3, 236) = &H12BAA8D1 m_sBox(0, 237) = &HB6C1075E m_sBox(1, 237) = &HE3056A0C m_sBox(2, 237) = &H10D25065

92

Page 93: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

m_sBox(1, 220) = &H6445C0DD m_sBox(2, 220) = &H586CDECF m_sBox(3, 220) = &H1C20C8AE m_sBox(0, 221) = &H5BBEF7DD m_sBox(1, 221) = &H1B588D40 m_sBox(2, 221) = &HCCD2017F m_sBox(3, 221) = &H6BB4E3BB m_sBox(0, 222) = &HDDA26A7E m_sBox(1, 222) = &H3A59FF45 m_sBox(2, 222) = &H3E350A44 m_sBox(3, 222) = &HBCB4CDD5 m_sBox(0, 223) = &H72EACEA8 m_sBox(1, 223) = &HFA6484BB m_sBox(2, 223) = &H8D6612AE m_sBox(3, 223) = &HBF3C6F47 m_sBox(0, 224) = &HD29BE463 m_sBox(1, 224) = &H542F5D9E m_sBox(2, 224) = &HAEC2771B m_sBox(3, 224) = &HF64E6370 m_sBox(0, 225) = &H740E0D8D m_sBox(1, 225) = &HE75B1357 m_sBox(2, 225) = &HF8721671 m_sBox(3, 225) = &HAF537D5D m_sBox(0, 226) = &H4040CB08 m_sBox(1, 226) = &H4EB4E2CC m_sBox(2, 226) = &H34D2466A m_sBox(3, 226) = &H115AF84 m_sBox(0, 227) = &HE1B00428 m_sBox(1, 227) = &H95983A1D

m_sBox(0, 229) = &H611560B1 m_sBox(1, 229) = &HE7933FDC m_sBox(2, 229) = &HBB3A792B m_sBox(3, 229) = &H344525BD m_sBox(0, 230) = &HA08839E1 m_sBox(1, 230) = &H51CE794B m_sBox(2, 230) = &H2F32C9B7 m_sBox(3, 230) = &HA01FBAC9 m_sBox(0, 231) = &HE01CC87E m_sBox(1, 231) = &HBCC7D1F6 m_sBox(2, 231) = &HCF0111C3 m_sBox(3, 231) = &HA1E8AAC7 m_sBox(0, 232) = &H1A908749 m_sBox(1, 232) = &HD44FBD9A m_sBox(2, 232) = &HD0DADECB m_sBox(3, 232) = &HD50ADA38 m_sBox(0, 233) = &H339C32A m_sBox(1, 233) = &HC6913667 m_sBox(2, 233) = &H8DF9317C m_sBox(3, 233) = &HE0B12B4F m_sBox(0, 234) = &HF79E59B7 m_sBox(1, 234) = &H43F5BB3A m_sBox(2, 234) = &HF2D519FF m_sBox(3, 234) = &H27D9459C m_sBox(0, 235) = &HBF97222C m_sBox(1, 235) = &H15E6FC2A m_sBox(2, 235) = &HF91FC71 m_sBox(3, 235) = &H9B941525 m_sBox(0, 236) = &HFAE59361

m_sBox(3, 237) = &HCB03A442 m_sBox(0, 238) = &HE0EC6E0E m_sBox(1, 238) = &H1698DB3B m_sBox(2, 238) = &H4C98A0BE m_sBox(3, 238) = &H3278E964 m_sBox(0, 239) = &H9F1F9532 m_sBox(1, 239) = &HE0D392DF m_sBox(2, 239) = &HD3A0342B m_sBox(3, 239) = &H8971F21E m_sBox(0, 240) = &H1B0A7441 m_sBox(1, 240) = &H4BA3348C m_sBox(2, 240) = &HC5BE7120 m_sBox(3, 240) = &HC37632D8 m_sBox(0, 241) = &HDF359F8D m_sBox(1, 241) = &H9B992F2E m_sBox(2, 241) = &HE60B6F47 m_sBox(3, 241) = &HFE3F11D m_sBox(0, 242) = &HE54CDA54 m_sBox(1, 242) = &H1EDAD891 m_sBox(2, 242) = &HCE6279CF m_sBox(3, 242) = &HCD3E7E6F m_sBox(0, 243) = &H1618B166 m_sBox(1, 243) = &HFD2C1D05 m_sBox(2, 243) = &H848FD2C5 m_sBox(3, 243) = &HF6FB2299 m_sBox(0, 244) = &HF523F357 m_sBox(1, 244) = &HA6327623 m_sBox(2, 244) = &H93A83531 m_sBox(3, 244) = &H56CCCD02

m_sBox(0, 245) = &HACF08162 m_sBox(1, 245) = &H5A75EBB5 m_sBox(2, 245) = &H6E163697 m_sBox(3, 245) = &H88D273CC m_sBox(0, 246) = &HDE966292 m_sBox(1, 246) = &H81B949D0 m_sBox(2, 246) = &H4C50901B m_sBox(3, 246) = &H71C65614 m_sBox(0, 247) = &HE6C6C7BD m_sBox(1, 247) = &H327A140A m_sBox(2, 247) = &H45E1D006 m_sBox(3, 247) = &HC3F27B9A m_sBox(0, 248) = &HC9AA53FD m_sBox(1, 248) = &H62A80F00 m_sBox(2, 248) = &HBB25BFE2 m_sBox(3, 248) = &H35BDD2F6 m_sBox(0, 249) = &H71126905 m_sBox(1, 249) = &HB2040222 m_sBox(2, 249) = &HB6CBCF7C m_sBox(3, 249) = &HCD769C2B m_sBox(0, 250) = &H53113EC0 m_sBox(1, 250) = &H1640E3D3 m_sBox(2, 250) = &H38ABBD60 m_sBox(3, 250) = &H2547ADF0 m_sBox(0, 251) = &HBA38209C m_sBox(1, 251) = &HF746CE76 m_sBox(2, 251) = &H77AFA1C5 m_sBox(3, 251) = &H20756060 m_sBox(0, 252) = &H85CBFE4E m_sBox(1, 252) = &H8AE88DD8 m_sBox(2, 252) = &H7AAAF9B0 m_sBox(3, 252) = &H4CF9AA7E m_sBox(0, 253) = &H1948C25C m_sBox(1, 253) = &H2FB8A8C m_sBox(2, 253) = &H1C36AE4

m_sBox(3, 253) = &HD6EBE1F9 m_sBox(0, 254) = &H90D4F869 m_sBox(1, 254) = &HA65CDEA0 m_sBox(2, 254) = &H3F09252D m_sBox(3, 254) = &HC208E69F m_sBox(0, 255) = &HB74E6132 m_sBox(1, 255) = &HCE77E25B m_sBox(2, 255) = &H578FDFE3 m_sBox(3, 255) = &H3AC372E6v

Pengujian kunci

93

Page 94: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Karakter 1 2 3 4 5 6 7 8 9 0ASCII 49 50 51 52 53 54 55 56 57 58

Pola kunci :

Kunci = 11

Kunci = 121

Kunci = 1231 2 3

Kunci = 12341

Kunci = 123451 5 4 3 2

Kunci = 1234561 5 3

Kunci = 12345671 5 2 6 3 7 4

Kunci = 123456781 5

Pada gambar 5.3 merupakan contoh pola kunci yang digunakan untuk

melakukan perulangan sebanyak p-array (p-boxes), contoh pada gambar 5.3

menggunakan 40 bit (5 byte) jadi yang akan diambil untuk bit kunci adalah

string 1, 5, 4, 3, 2. untuk lebih jelasnya dapat dilihat pada tabel 5.2.

Kunci Proses Perulangan Kunci (desimal)

94

Tabel 5.1 Nilai karakter dari ASCII

Gambar 5.3 Model pola kunci

Page 95: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

1 49 49 49 49 49 49 49 49 4949 49 49 49 49 49 49 49 49

12 49 49 49 49 49 49 49 49 4949 49 49 49 49 49 49 49 49

123 49 50 51 49 50 51 49 50 5149 50 51 49 50 51 49 50 51

1234 49 49 49 49 49 49 49 49 4949 49 49 49 49 49 49 49 49

12345 49 53 52 51 50 49 53 52 5150 49 53 52 51 50 49 53 52

123456 49 53 51 49 53 51 49 53 5149 53 51 49 53 51 49 53 51

1234567 49 53 50 54 51 55 52 49 5350 54 51 55 52 49 53 50 54

12345678 49 53 49 53 49 53 49 53 4953 49 53 49 53 49 53 49 53

Selanjutnya setiap kunci mengalami perulangan sampai dengan empat

kali dengan pola : datax = [(data baru) x 257] – [(data lama) x 256] dilajutkan

dengan melakukan operasi OR dengan kunci (datax = datax OR Kunci(i)),

sehingga kunci termodifikasi menjadi 32 bit. Hasil dari kunci yang

termodifikasi kemudian di XOR dengan p-box (p-array), artinya XOR P0

dengan 32 bit kunci pertama, XOR P1 dengan 32 bit kunci yang kedua dan

seterusnya untuk semua bit kunci, sampai semua p-boxes (p-array) di XOR

dengan bit kunci .

Uji kasus Pertama : kunci 16 bit

Kunci String ASCII

95

Tabel 5.2 Proses perulangan kunci sebanyak p-boxes (p-array)

Page 96: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

12 12 <49><50>

Pola kunci :

12 49 49 49 49 49 49 49 49 4949 49 49 49 49 49 49 49 49

data baru = 0, data lama = 0, j = 0, kunci = 49

iterasi I (kunci = 49)

(kunci ke-1)

[(data baru) x 257] – [(data lama) x 256] = datax

[(0) x 257] – [(0) x 256] = 0

0 OR 49 = 49

(kunci ke-2)

[49 x 257] – [0 x 256] = 12593

12593 OR 50 = 12595

(kunci ke-1)

[12595 x 257] – [49 x 256] = 3224371

3224371 OR 49 = 3224371

(kunci ke-2)

[3224371 x 257] – [12595 x 256] = 825439027

825439027 OR 50 = 825439027

sehingga proses tersebut menghasilkan perubahan sebagai berikut : 49,

12595, 3224371, 825439027. bit kunci pertama menjadi 825439027 dengan

32 bit (4 byte). proses tersebut berulang sampai iterasi 18.

Uji kasus Kedua : kunci 32 bit

Kunci String ASCII

96

Tabel 5.3 Uji kasus pertama kunci Blowfish

Page 97: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

1234 1234 <49><50><51><52>

Pola kunci :

1234 49 49 49 49 49 49 49 49 4949 49 49 49 49 49 49 49 49

data baru = 0, data lama = 0, j = 0, kunci = 49

iterasi I (Kunci 49)

(kunci ke-1)

[(data baru) x 257] – [(data lama) x 256] = datax

[(0) x 257] – [(0) x 256] = 0

0 OR 49 = 49

(kunci ke-2)

[49 x 257] – [0 x 256] = 12593

12593 OR 50 = 12595

(kunci ke-3)

[12595 x 257] – [49 x 256] = 3224371

3224371 OR 51 = 3224371

(kunci ke-4)

[3224371 x 257] – [12595 x 256] = 825439027

825439027 OR 52 = 825439031

sehingga proses tersebut menghasilkan perubahan sebagai berikut : 49,

12595, 3224371, 825439031. bit kunci pertama menjadi 825439031 dengan

32 bit (4 byte). proses tersebut berulang sampai iterasi 18.

Uji kasus Ketiga : kunci 64 bit

Kunci String ASCII

97

Tabel 5.4 Uji kasus kedua kunci Blowfish

Page 98: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

12345678 12345678 <49><50><51><52><53><54><55><56>

Pola kunci :

12345678 49 53 49 53 49 53 49 53 4953 49 53 49 53 49 53 49 53

data baru = 0, data lama = 0, j = 0, kunci = 49, 53

iterasi I (Kunci 49)

(kunci ke-1)

[(data baru) x 257] – [(data lama) x 256] = datax

[(0) x 257] – [(0) x 256] = 0

0 OR 49 = 49

(kunci ke-2)

[49 x 257] – [0 x 256] = 12593

12593 OR 50 = 12595

(kunci ke-3)

[12595 x 257] – [49 x 256] = 3224371

3224371 OR 51 = 3224371

(kunci ke-4)

[3224371 x 257] – [12595 x 256] = 825439027

825439027 OR 52 = 825439031

iterasi II (Kunci 53)

(kunci ke-5)

[(0) x 257] – [(0) x 256] = 0

0 OR 53 = 53

(kunci ke-6)

98

Tabel 5.5 Uji kasus ketiga kunci Blowfish

Page 99: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

[53 x 257] – [0 x 256] = 13621

13621 OR 54 = 13623

(kunci ke-7)

[13623 x 257] – [53 x 256] = 3487543

3487543 OR 55 = 3487543

(kunci ke-8)

[3487543 x 257] – [13623 x 256] = 892811063

892811063 OR 56 = 892811071

sehingga proses tersebut menghasilkan perubahan keseluruhan sebagai

berikut :

Iterasi

Bit kunci baru Iterasi Bit kunci baru

1 49 12595 3224371 825439031 10 53 13623 3487543 892811071

2 53 13623 3487543 892811071 11 49 12595 3224371 825439031

3 49 12595 3224371 825439031 12 53 13623 3487543 892811071

4 53 13623 3487543 892811071 13 49 12595 3224371 825439031

5 49 12595 3224371 825439031 14 53 13623 3487543 892811071

6 53 13623 3487543 892811071 15 49 12595 3224371 825439031

7 49 12595 3224371 825439031 16 53 13623 3487543 892811071

8 53 13623 3487543 892811071 17 49 12595 3224371 825439031

9 49 12595 3224371 825439031 18 53 13623 3487543 892811071

Hasil dari kunci yang termodifikasi kemudian di XOR dengan p-boxes

(p-array), artinya XOR P0 dengan 32 bit kunci pertama, XOR P1 dengan 32 bit

kunci yang kedua dan seterusnya untuk semua bit kunci, sampai semua

p-boxes (p-array) di XOR dengan kunci bit. Secara keseluruhan hasil

perubahan dapat dilihat pada tabel 5.7

99

Tabel 5.6 Hasil keseluruhan proses iterasi kunci 64 bit

Page 100: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

m_pBox(0) 353130943 m_pBox(1) -1332461588 m_pBox(2) 573225241 m_pBox(3) 910640251 m_pBox(4) -1791358187 m_pBox(5) 480773871 m_pBox(6) 958253487 m_pBox(7) -646358090 m_pBox(8) 1947931345 m_pBox(9) 233251912 m_pBox(10) -1889053192 m_pBox(11) 31341395 m_pBox(12) -241231232 m_pBox(13) -62167070 m_pBox(14) 246933122 m_pBox(15) -2140127704 m_pBox(16) -1557797138 m_pBox(17) -1135686620

Dari hasil tabel 5.7 dilakukan enkripsi dengan algoritma sebagai

berikut:

1. Xl = Xl xor m_pBox(I)

2. Xr = Xr xor F(Xl)

3. Xr = Xr xor m_pBox(I + 1)

4. Xl = Xl xor F(Xr)

proses tersebut dibagi dua, yaitu kiri dan kanan masing-masing 32 bit (4 byte),

dengan seluruh putaran sebanyak 16 hasil akhir dapat dilihat pada tabel 5.8 .

m_pBox(i) m_pBox(i + 1)1957715466 416839446-529060201 -1460272997-928667717 -1998199513-1108600457 728625641565704989 17266028141303842310 -621198487-583135018 19092110141131101876 -313812715

100

Tabel 5.7 Hasil XOR p-boxes dengan bit kunci

Page 101: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

-252270378 -736939447

Sehingga secara keseluruhan terdapat p-array (p-boxes) dan s-boxes yang baru

hasil dari proses membangkitkan subkey (Generating The Subkeys).

Analisis dari uji kasus Algoritma Blowfish :

Sebelum melakukan enkripsi, terlebih dahulu melakukan inisialisasi

p-boxes dan s-boxes secara berurutan dengan string yang tetap. Dengan P

array dari P0,P1,…,P17 dan terdapat empat s-boxes masing-masing 256 entry.

Sebelum melakukan enkripsi data terlebih dahulu melakukan proses

membangkitkan subkey dengan pola datax = [(data baru x 257) - (data lama x

256)] dengan perulangan 4 kali , tujuan untuk mengubah bit kunci menjadi 32

bit (4 byte). Kunci diubah menjadi kode ASCII yang bernilai desimal.

Selanjutnya kunci dimodifikasi dengan p-array. Jika kunci yang diinputkan

dengan string “blowfish” dengan 64 bit (8 byte) maka kunci akan diulang

sebanyak p-boxes . yaitu “ bfbfbfbfbfbfbfbfbf ” dengan 18 subkey, untuk

proses langkah-langkahnya dapat dilihat pada gambar 5.3. Hasil akhir

keseluruhan terdapat p-boxes dan s-box dengan nilai string yang baru.

5.2.2 Uji Kunci Algoritma RSA

Batas atas bilangan acak yang dibangkitkan adalah 9999, batas bawah

bilangan acak yang dibangkitkan adalah 3170, batas panjang kunci yang

dibangkitkan adalah 64 bit (8 byte), maka total banyaknya kombinasi kunci

101

Tabel 5.8 P-Boxes hasil dari enkripsi blok subkey

Page 102: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

yang mungkin adalah 264 = 18.446.744.073.709.551.616, maka masing-masing

bilangan prima harus mempunyai panjang 32 bit (4 byte), dua bilangan prima

yang menyususn modulus n.

Hasil akhir yang diinginkan adalah sebagai berikut, dengan parameter-

parameter :

P = sebagai nilai bilangan prima acak pertama

Q = sebagai nilai bilangan prima acak kedua

N = sebagai nilai modulus publik hasil dari perkalian P dan Q

Ф(n) = sebagai euler’s totient function

E = nilai yang akan digunakan sebagai kunci publik (Enkripsi)

D = nilai yang akan digunakan sebagai kunci privat (Dekripsi)

Sehingga terdapat pasangan kunci :

Kunci publik = (E, N)

Kunci privat = (D, N)

Melakukan pembangkitan kunci acak :

1. Uji kasus Pertama :

102

Page 103: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Pembangkit bilangan acak

Prima (P)

Pembangkit bilangan acak

Prima (Q)

N = P x Q 51849757Ф(n) = (P-1)(Q-1) 51834780GCD(e, Ф(n)) = 1 80138819

d 21095699

Hasil akhir yang didapat :

P = 5431 , Q = 9547

103

<3924><7155><5421><9607><3363><6144><5325><7763><5260><5268><6648><6948><6389><9651><7712><5725><7475><5317><5666><5751><9775><3582><6729><8364><4834><3488><9118><4337><5222><8880><6459><4610><6967><4502><4865><9561><6630><7218><5860><5586><4723><7959><9795><9498><9118><9292><5601><3637><4319><8337><8354><7589><9511><7020><8055><6472><6848><8651><7186><8985><6340><7684><3644><9849><8282><6792><7810><6880><6676><6617><4988><4404><6300><9190><6626><9840><5637><7686><5924><9800><7119><3494><8568><7647><6878><9637><8826><6427><5001><6376><6621><5449><8932><6094><4117><3702><9578><8901><9135><3272><5208><6049><4416><5923><4870><3838><5677><9683><4484><6539><3559><5431>

<6289><5858><7333><3945><4452><4543><9492><5826><6876><5068><7074><8568><6158><9130><8528><6237><3544><7435><5332><4107><5507><3600><9562><8410><6673><3912><9497><9264><6900><7080><7179><4579><7858><7653><8175><3470><9617><6259><4499><9180><7232><6198><5344><8841><7816><3191><6352><4204><6637><9287><6685><8224><4192><8467><5613><7498><9621><7873><5929><6659><9975><7067><3698><4470><7779><8281><5343><4068><3957><6168><3728><9553><8076><4880><8903><8908><7614><7823><3701><4738><5522><7410><8631><4023><9980><8966><3325><7874><3665><6825><5088><8116><8629><8234><4013><4367><7761><9449><7372><7448><9669><5976><8887><8651><4284><9652><5798><3645><7258><4245><9115><9547>

Tabel 5.9 Uji pembangkitan kunci kasus pertama

Page 104: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

N = 51849757 , Ф(n) = 51834780

E = 80138819 , D = 21095699

Di dapat pasangan kunci sebagai berikut :

Kunci publik = (80138819, 51849757)

Kunci privat = (21095699, 51849757)

Kesimpulan : hasil akhir sesuai dan benar

2. Uji kasus Kedua :

Pembangkit bilangan acak

Prima (P)

Pembangkit bilangan acak

Prima (Q)

N = P x Q 44305433

Ф(n) = (P-1)(Q-1) 44291508

GCD(e, Ф(n)) = 1 47253257

d 11482253

Hasil akhir yang didapat :

P = 9007 , Q = 4919

N = 44305433 , Ф(n) = 44291508

E = 47253257 , D = 11482253

Di dapat pasangan kunci sebagai berikut :

Kunci publik = (47253257, 44305433)

Kunci privat = (11482253, 44305433)

104

<3458><8954><5507><7125><4656><3361><5865><9016><9727><9785><4461><9779><7428><9007>

<7470><4496><8400><8804><3759><6566><4703><6831><8173><6839><7251><3223><3213><4919>

Tabel 5.10 Uji pembangkitan kunci kasus kedua

Page 105: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Kesimpulan : hasil akhir sesuai dan benar

3. Uji kasus Ketiga

Pembangkit bilangan acak

Prima (P)

Pembangkit bilangan acak

Prima (Q)

N = P x Q 47201171

Ф(n) = (P-1)(Q-1) 47187000

GCD(e, Ф(n)) = 1 84942433

d 30396097

Hasil akhir yang didapat :

P = 5351 , Q = 8821

N = 47201171 , Ф(n) = 47187000

E = 84942433 , D = 30396097

Di dapat pasangan kunci sebagai berikut :

Kunci publik = (84942433, 47201171)

Kunci privat = (30396097, 47201171)

Kesimpulan : hasil akhir sesuai dan benar

Analisis dari uji kasus Algoritma RSA :

Pembangkitan kunci dari algoritma RSA melibatkan rumus-rumus

matamatika, hasil akhir yang didapat untuk nilai bilangan prima pertama

105

<4315><7874><7109><9075><7346><4821><7201><5293><6961><3686><4280><3632><8794><7354><3817><5534><5351>

<6150><6205><4321><3510><8374><7923><5383><6401><8571><9543><4919><3466><6918><5825><3588><7447><8821>

Tabel 5.11 Uji pembangkitan kunci kasus ketiga

Page 106: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

mempunyai panjang 32 bit (4 byte), sedangkan nilai bilangan prima kedua

mempunyai panjang 32 bit (4 byte). Ukuran yang terbaik untuk modulus

publik RSA bergantung pada kebutuhan keamanan, jika modulusnya besar,

maka akan diperoleh keamanan yang lebih terjamin, untuk membangkitkan

modulus N harus merupakan hasil kali dua bilangan prima. Fungsi euler’s

totient function didefinisikan sebagai Ф(n) adalah jumlah bilangan bulat utuh

(integer) positif yang tidak lebih dari n, jika n bilangan prima, maka setiap

bilangan bulat utuh positif yang kurang dari n adalah prima secara relatif

dengan n. hasil akhir terdapat pasangan kunci yang digunakan untuk enkripsi

dan dekripsi, berupa kunci privat dan kunci publik.

5.2.3 Uji Banding

Melakukan uji terhadap ukuran file orginal dengan ukuran file enkripsi,

dan waktu yang dibutuhkan selama proses enkripsi, terhadap algoritma

Blowfish dan algoritma RSA.

5.2.3.1 Algoritma Blowfish

Pada uji algoritma Blowfish akan diuji sembilan file dengan format

file, sebagai berikut : bmp, jpg, pdf, doc, avi, xls, zip. Hasil pengujian

dapat dilihat pada tabel 5.12

PlaintextUkuran

File Orginal(byte)

UkuranFile Enkripsi

(byte)

Waktu(detik)

Key.bmp 1220 1232 0,12Banner.jpg 11659 11672 0,13

Rsa.pdf 38673 38688 0,16

106

Page 107: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

1220

11659

38673

45570

82946

88064

111106

286820

547180

1232

11672

38688

45584

82960

88080

111120

286832

547192

key.bmp

Banner.jpg

RSA.pdf

Email.doc

Clock.avi

Tabel.xls

Citra.doc

Mdeamon.zip

pgp.zip

File Enkripsi

File Orginal

Gambar 5.4 Grafik hasil perbandingan ukuran file antara file orginal dengan file enkripsi

Email.doc 45570 45584 0,27Clock.avi 82946 82960 0,29Tabel.xls 88064 88080 0,34Citra.doc 111106 111120 0,40

Mdeamon.zip 286820 286832 0,77Pgp.zip 547180 547192 1,42

Penambahan ukuran file enkripsi harus sesuai dengan model pola,

algoritma :

1. CipherLen = OrigLen + 12

2. CipherLen = CipherLen + 8 - (CipherLen Mod 8)

contoh dari tabel 5.12, hasil file enkripsi dengan plaintext E-mail.doc,

sebagai berikut : dimana origlen sebagai panjang dari ukuran file orginal

dan cipherlen sebagai panjang dari file enkripsi.

a. 45570 + 12 = 45582

b. 45582 + 8 – (45582 Mod 8) = 45590 – 6 = 45584

jadi panjang file enkripsi menjadi 45584.

Untuk melihat perbandingan perubahan penambahan ukuran dari

sebuah file, dapat dilihat pada gambar 5.4.

107

Tabel 5.12 Uji perbandingan waktu enkripsi Blowfish

Page 108: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Sedangkan untuk waktu proses sangat dipengaruhi oleh kondisi

dari hardware (perangkat keras) dari komputer yang digunakan. Semakin

besar ukuran dari file maka semakin besar waktu yang dibutuhkan untuk

melakukan proses enkripsi. Lihat pada gambar 5.5

5.2.3.2 Algoritma RSA

108

Uji Perbandingan waktu Enkripsi Blowfish

00.20.40.60.8

11.21.41.6

Palintext

wa

ktu

(d

eti

k)

Gambar 5.5 Grafik uji perbandingan waktu enkripsi blowfish

Page 109: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Pada uji algoritma RSA akan diuji sembilan file dengan format

file, sebagai berikut : bmp, jpg, pdf, doc, avi, xls, zip. Hasil pengujian

dapat dilihat pada tabel 5.13

PlaintextUkuran

File Orginal(byte)

UkuranFile Enkripsi

(byte)

Waktu(detik)

Key.jpg 1220 7693 0,20Banner.jpg 11659 97806 13,69

Rsa.pdf 38673 324771 160,19Email.doc 45570 226763 170,83Clock.avi 82946 626170 740,02Tabel.xls 88064 442368 598,74Citra.doc 111106 939166 1567,50

Mdeamon.zip 286820 2424184 10445,42Pgp.zip 547180 4600514 48427,23

Pada hasil pengujian dapat dilihat pada tabel 5.13, ukuran file

orginal dibandingkan dengan ukuran file enkripsi, terjadi penambahan

yang cukup besar, dan membutuhkan waktu yang cukup lama, hal ini

disebabkan pada algoritma RSA menggunakan rumus matematika dalam

melakukan proses enkripsi. Pada algoritma RSA perubahan waktu juga

dipengaruhi oleh kondisi hardware (perangkat keras) dari komputer yang

digunakan. Dapat dilihat pada gambar 5.6 Grafik uji perbandingan waktu

enkripsi RSA

109

Uji Perbandingan waktu Enkripsi RSA

0

10000

20000

30000

40000

50000

60000

Plaintext

waktu

(d

eti

k)

Gambar 5.6 Grafik uji perbandingan waktu enkripsi RSA

Tabel 5.13 Uji perbandingan waktu enkripsi RSA

Page 110: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

Semakin besar ukuran dari file maka semakin besar waktu yang

dibutuhkan untuk melakukan proses enkripsi. Pada gambar 5.6 perubahan

dari grafik garis yang selalu menaik.

BAB VI

110

Page 111: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

KESIMPULAN DAN SARAN

6.1 Kesimpulan

Dari analisa algoritma dan implementasi program maka perbedaan antara kriptografi

simetris dengan menggunakan algoritma Blowfish dan kriptografi asimetris dengan

menggunakan algoritma RSA dapat disimpulkan sebagai berikut:

1. Pada algoritma Blowfish terdapat inisialisasi p-array (p-boxes)dan s-boxes, p-

array mempunyai 18 subkey, empat s-boxes mempunyai masing-masing 256

entry.

2. Pola dari model kunci yang digunakan untuk melakukan perulangan sebanyak subkey

adalah datax = [(data baru x 257) – (data lama x 256)], dilajutkan dengan melakukan

operasi OR dengan kunci (datax = datax OR Kunci(i)), sehingga kunci termodifikasi

menjadi 32 bit.

3. Ukuran file atau data sebelum dan sesudah dienkripsi dengan algoritma Blowfish

terjadi perubahan karena adanya penambahan ukuran file sesuai dengan algoritma

yang digunakan.

4. Hasil akhir dari proses bahwa waktu yang dibutuhkan untuk mengenkripsi file atau

data sangat cepat, dan perangkat keras (Hardware) juga sangat menentukan. Semakin

besar ukuran file semakin besar pula waktu untuk mengenkripsi.

5. Pola dari model algoritma RSA, kunci yang dibangkitkan melibatkan rumus-

rumus matematika.

6. Hasil akhir dari model kunci didapat sepasang kunci, yaitu kunci privat

digunakan untuk proses dekripsi, dan kunci publik digunakan untuk proses

enkripsi. Masing-masing kunci mempunyai panjang 64 bit.

111

Page 112: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

7. Ukuran file atau data sebelum dan sesudah dienkripsi dengan algoritma RSA terjadi

perubahan karena adanya penambahan ukuran file yang cukup besar, disebabkan

pada algoritma RSA menggunakan rumus matematika dalam melakukan proses

enkripsi.

8. Hasil akhir dari proses enkripsi algoritma RSA membutuhkan waktu yang

lama, dibandingkan dengan algoritma Blowfish

6.2 Saran

1. Disarankan dalam mendesain sistem keamanan hendaknya mengikuti tahapan-

tahapan dasar yang benar dari input proses dan output.

2. Dalam mendesain sistem keamanan hendaknya dilakukan pemilihan algoritma

yang sesuai dan aman, serta waktu yang efisien.

112

Page 113: jbptunikompp-gdl-s1-2004-herrysason-771-Skripsi+-l

113