• Tidak ada hasil yang ditemukan

Kombinasi Kriptografi Vernam Cipher Dan Rivest Cipher 4

N/A
N/A
Protected

Academic year: 2016

Membagikan "Kombinasi Kriptografi Vernam Cipher Dan Rivest Cipher 4"

Copied!
89
0
0

Teks penuh

(1)

KOMBINASI KRIPTOGRAFI VERNAM CIPHER DAN RIVEST CIPHER 4

TESIS

FITRI MARINA RITONGA 117038049

PROGRAM STUDI S2 TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

(2)

KOMBINASI KRIPTOGRAFI VERNAM CIPHER DAN RIVEST CIPHER 4

TESIS

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Magister Teknik Informatika

FITRI MARINA RITONGA 117038049

PROGRAM STUDI S2 TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : KOMBINASI KRIPTOGRAFI VERNAM CIPHER

DAN RIVEST CIPHER 4

Kategori : TESIS

Nama Mahasiswa : FITRI MARINA RITONGA

Nomor Induk Mahasiswa : 117038049

Program Studi : S2 TEKNIK INFORMATIKA

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Dr. Marwan Ramli, M. Si Prof. Dr. Herman Mawengkang

Diketahui/disetujui oleh

Program Studi S2 Teknik Informatika Ketua,

(4)

PERNYATAAN

KOMBINASI KRIPTOGRAFI VERNAM CIPHER DAN RIVEST CIPHER 4

TESIS

Saya mengakui bahwa tesis ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, 23 Agustus 2013

(5)

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN

AKADEMIS

Sebagai sivitas akademika Universitas Sumatera Utara, saya yang bertanda tangan di bawah ini :

Nama : Fitri Marina Ritonga

NIM : 117038049

Program Studi : S2 Teknik Informatika Jenis Karya Ilmiah : Tesis

Demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada Universitas Sumatera Utara Hak bebas Royalti Non-Eksklusif (non-Exlusive Royalty Free Right) atas tesis saya yang berjudul

KOMBINASI KRIPTOGRAFI VERNAM CIPHER DAN RIVEST CIPHER 4

Beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti Non-Eksklusif ini, Universitas Sumatera Utara berhak menyimpan, mengalih media, memformat, mengelola dalam bentuk data-base, merawat dan mempublikasikan Tesis saya tanpa meminta izin dari saya selama tetap mencantumkan nama saya sebagai penulis dan sebagai pemegang dan atau sebagai pemilik hak cipta.

Demikian pernyataan ini dibuat dengan sebenarnya.

Medan, 23 Agustus 2013

(6)

Telah diuji pada

Tanggal : 23 Agustus 2013

PANITIA PENGUJI TESIS

Ketua : Prof. Dr. Herman Mawengkang Anggota : 1. Dr. Marwan Ramli, M. Si

(7)

RIWAYAT HIDUP

DATA PRIBADI

Nama lengkap berikut gelar : Fitri Marina Ritonga, S. Kom, M. Kom Tempat dan Tanggal Lahir : Padangsidimpuan, 16 September 1988

Alamat Rumah : Jl. KH. Zubeir Ahmad No.25 Padangsidimpuan

HP : 08126442002

e-mail :pipyd.ncut@gmail.com

DATA PENDIDIKAN

SD : SD Negri 145565 Padangsidimpuan Tamat : 2000 SMP : SMP Negeri 4 Padangsidimpuan Tamat : 2003 SMA : SMA Negeri 4 Padangsidimpuan Tamat : 2006

S-1 : Ilmu Komputer USU Tamat : 2011

(8)

UCAPAN TERIMA KASIH

Assalamu’alaikum Wr.Wb

Rasa syukur yang tidak terhingga penulis ucapkan kepada Allah SWT, Pencipta alam semesta yang memberikan rahmat dan karunia-Nya kepada Penulis sehingga akhirnya atas izin Allah SWT Penulis dapat menyelesaikan tugas akhir ini dengan baik. Shlawat dan salam kepada ruh Nabi Besar Muhammad SAW yang telah membawa pencerahan dan titik terang bagi umat manusia dalam menjalani hidup dan kehidupan.

Dalam menyelesaikan tugas akhir ini penulis telah banyak menerima bimbingan, arahan, masukan , serta dorongan semangat dari berbagai pihak. Untuk itu penulis mengucpkan terima kasih yang tak terhingga kepada :

Rektor Universitas Sumatera Utara, Prof. Dr. dr. Syahril Pasaribu, DTM&H, M.Sc (CTM), Sp. A(K) atas kesempatan yang diberikan kepada saya untuk mengikuti dan menyelesaikan pendidikan Program Magister.

Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara Prof. Dr. Muhammad Zarlis atas kesempatan yang diberikan kepada saya menjadi mahasiswa Program Magister pada Program Pascasarjana FASILKOM-TI Universitas Sumatera Utara.

Ketua Program Studi Magister (S2) Teknik Informatika, Prof. Dr. Muhammad Zarlis dan sekretaris Program Studi Magister (S2) Teknik Informatika M. Andri Budiman, S.T, M.Comp, M.E.M beserta seluruh staff pengajar pada Program Studi Magister (S2) Teknik Informatika Program Pascasarjana FASILKOM-TI Universitas Sumatera Utara.

Terimakasih yang tak terhingga dan penghargaan setinggi-tingginya saya ucapkan kepada Prof. Dr. Herman Wawengkang, selaku pembimbing utama dan kepada Dr. Marwan Ramli, M. Si, selaku pembimbing lapangan yang dengan penuh kesabaran membimbing saya hingga selesainya tesis ini dengan baik.

(9)

Situmorang, sebagai pembanding yang telah memberikan saran dan masukan serta arahan yang baik demi penyelesaian tesisi ini.

Staff Pegawai dan Administrasi pada Program Studi Magister (S2) Teknik Informatika Program Pascasarjana FASILKOM-TI Universitas Sumatera Utara yang

telah memberikan bantuan dan pelayanan terbaik kapada penulis selama mengikuti perkuliahan hingga saat ini.

Kepada Ayahanda H. Indra Aruman Ritonga, Ibunda Hj. Lisliwati Pasaribu S.Ag yang terus memberikan curahan kasih sayangnya, terus memotivasi penulis dalam menyelesaikan tugas akhir ini, cinta kalian akan terus terpatri dalam jiwaku, terima kasih Ayah dan Ibuku, serta kepada seluruh keluarga besar yang tidak dapat saya sebutkan satu persatu, terimakasih atas segala pengorbanannya, baik moril maupun materil budi baik ini tidak dapat dibalas hanya diserahkan kepada Allah SWT.

Rekan mahasiswa/i angkatan ketiga tahun 2011 pada Program Pascasarjana Fasilkom-TI Universitas Sumatera Utara yang telah banyak membantu penulis baik berupa dorongan semangat dan doa selama mengikuti perkuliahan.

Akhirnya, penulis menyadari didalam penulisan Tesis ini masih terdapat banyak kekurangan, oleh karena itu untuk kesempurnaan penulisan Tesis ini penulis mengharapkan kritik dan saran yang berifat membangun. Semoga Allah SWT selalu bersama kita dalam meraih cita-cita dan harapan kita semua, semoga kita tetap dapat mencintai, menjaga, memajukan, serta mengharumkan nama baik Almamater kita, Maju terus S2 Teknik Informatika Universita Sumatera Utara dalam mencerdaskan kehidupan bangsa dan selalu terdepan dalam pentas pendidikan dan melahirkan mahasiswa yang terdidik, berbudaya, berprestasi serta berbudi pekerti luhur.

Wassalamu’alaikum warohmatullohi wabarokatuh.

Medan, 23 Agustus 2013

(10)

ABSTRAK

Algoritma RC4 merupakan salah satu algoritma kunci simetris berbentuk stream cipher yang memproses unit atau input data, pesan atau informasi pada satu saat. Unit atau data pada umumnya sebuah byte atau bahkan bit (byte dalam hal RC4). Algoritma ini tidak harus menunggu sejumlah input data, pesan atau informasi tertentu sebelum diproses atau menambahkan byte tambahan untuk mengenkrip. RC4 mempunyai sebuah S-Box, S0,S1,……,S255, yang berisi permutasi dari bilangan 0 sampai 255. Sedangkan Algoritma Vernam Chiper merupakan salah satu algoritma kriptografi klasik yang sudah dikenal luas saat ini. Kedua Algoritma ini menggunakan XOR dalam melakukan enkripsi dan dekripsi sehingga memudahkan untuk melakukan penggabungan atau kombinasi antara RC4 dan Vernam Chiper

Kunci : RC-4, Vernam Chiper, Keamanan Data, Kombinasi RC-4 dan Vernam

(11)

CRYPTOGRAPHY COMBINATION VERNAM CIPHER

AND RIVEST CIPHER 4

ABSTRACT

RC4 algorithm is a symmetric key algorithm which processes the stream

cipher-shaped units or input of data, messages or information at one time. Unit or a byte of

data in general or even bits (byte in RC4). This algorithm does not have to wait for a

number of data input, messages or information before processing or adding additional

bytes to encrypt. RC4 has an S-Box, S0, S1, ..., S255, which contains a permutation

of the numbers 0 to 255. While the Vernam cipher algorithm is one of the classic

cryptographic algorithms that are well known today. The second algorithm uses XOR

encryption and decryption in doing so make it easier to merge or combination and

Vernam cipher RC4.

Keywords: RC-4, Vernam cipher, Data Security, and a combination of the RC-4

(12)

DAFTAR ISI

Halaman

UCAPAN TERIMA KASIH i

ABSTRAK iii

ABSTRACT iv

DAFTAR ISI v

DAFTAR TABEL vii

DAFTAR GAMBAR viii

BAB 1 PENDAHULUAN

1.1. Latar Belakang 1

1.2. Rumusan Masalah 2

1.3. Batasan Masalah 2

1.4. Tujuan Penelitian 2

1.5. Manfaat Penelitian 3

BAB II TINJAUAN TEORITIS

2.1. Microsoft Access 4

2.2. Security/Keamanan 8

2.3. Sejarah Kriptografi 9

2.4. Kriptografi dan Sistem Informasi 11

2.5. Mekanisme Kriptografi 12

2.6. Kriptografi Simetrik dan Asimetrik 14

2.6.1. Kriptografi Simetrik 14

2.6.2. Kriptografi Asimetrik 15

2.7. Keamanan Sistem Kriptografi 15

2.8. Vernam Chiper 16

2.9. Rivest Cipher 4 (RC4) 16

BAB III METODE PENELITIAN

3.1. Lingkungan Penelitian 20

(13)

3.1.2. Proses Dekripsi Vernam Chiper 21 3.1.3. Analisis Kelemahan Algoritma Kriptografi Vernam

Cipher 22

3.2. Rivest Chiper 4 (RC4) 23

3.3.Gabungan Vernam Chiper dan RC-4 25 BAB IV HASIL DAN PEMBAHASAN

4.1. Hasil Penelitian 32

4.2. Pembahasan 34

BAB V KESIMPULAN DAN SARAN

5.1. Kesimpulan 46

5.2. Saran-Saran 46

DAFTAR PUSTAKA

(14)

DAFTAR TABEL

Halaman

Tabel 2.1. Type Database ... 7

Tabel 4.1. Kombinasi RC4 dan Vernam Cipher... 34

Tabel 4.2. Pembentukan code ascii... 35

Tabel 4.3. Sbox f(1) ... 39

Tabel 4.4. Sbox f(2) ... 40

Tabel 4.5. Plain Teks ... 42

Tabel 4.6. Cipherteks ... 43

(15)

DAFTAR GAMBAR

Halaman

Gambar 2.1 : Link Ms. Access ... 4

Gambar 2.2 : Buat Form Baru (Adi Kurniadi, 2000) ... 5

Gambar 2.3 : Mekanisme kriptografi (Munir, 2011)... 13

Gambar 2.4 : Kriptografi berbasis kunci (Munir, 2011)... 14

Gambar 3.1 : Contoh Hasil XOR Sehingga mendapatkan Plain Teks ... 22

(16)

ABSTRAK

Algoritma RC4 merupakan salah satu algoritma kunci simetris berbentuk stream cipher yang memproses unit atau input data, pesan atau informasi pada satu saat. Unit atau data pada umumnya sebuah byte atau bahkan bit (byte dalam hal RC4). Algoritma ini tidak harus menunggu sejumlah input data, pesan atau informasi tertentu sebelum diproses atau menambahkan byte tambahan untuk mengenkrip. RC4 mempunyai sebuah S-Box, S0,S1,……,S255, yang berisi permutasi dari bilangan 0 sampai 255. Sedangkan Algoritma Vernam Chiper merupakan salah satu algoritma kriptografi klasik yang sudah dikenal luas saat ini. Kedua Algoritma ini menggunakan XOR dalam melakukan enkripsi dan dekripsi sehingga memudahkan untuk melakukan penggabungan atau kombinasi antara RC4 dan Vernam Chiper

Kunci : RC-4, Vernam Chiper, Keamanan Data, Kombinasi RC-4 dan Vernam

(17)

CRYPTOGRAPHY COMBINATION VERNAM CIPHER

AND RIVEST CIPHER 4

ABSTRACT

RC4 algorithm is a symmetric key algorithm which processes the stream

cipher-shaped units or input of data, messages or information at one time. Unit or a byte of

data in general or even bits (byte in RC4). This algorithm does not have to wait for a

number of data input, messages or information before processing or adding additional

bytes to encrypt. RC4 has an S-Box, S0, S1, ..., S255, which contains a permutation

of the numbers 0 to 255. While the Vernam cipher algorithm is one of the classic

cryptographic algorithms that are well known today. The second algorithm uses XOR

encryption and decryption in doing so make it easier to merge or combination and

Vernam cipher RC4.

Keywords: RC-4, Vernam cipher, Data Security, and a combination of the RC-4

(18)

BAB 1 PENDAHULUAN

1.1. Latar Belakang

Kemajuan teknologi komputer memungkinkan orang-orang dan komputer di seluruh dunia terhubung dalam suatu dunia maya yang dikenal sebagai cyberspace atau internet, begitu pula berbagai organisasi seperti perusahaan, lembaga negara, lembaga keuangan, militer dan sebagainya. Namun kemajuan teknologi tersebut selalu diikuti dengan sisi buruk teknologi itu sendiri. Salah satu dari sisi buruk tersebut adalah rawannya keamanan data sehingga menimbulkan tantangan dan tuntutan akan tersedianya suatu sistem pengamanan data yang sama canggihnya dengan kemajuan teknologi komputer tersebut. Hai inilah yang menjadi latar belakang berkembangnya sistem keamanan untuk melindungi data yang ditransmisikan melalui suatu jaringan komunikasi (Ariyus,2005).

Keamanan yang terjamin dari suatu sistem sangat diperlukan dalam kegiatan bisnis, sistem yang aman mampu memberikan tingkat kepercayaan yang tinggi bagi pengguna sistem tersebut, sehingga dapat memberi nilai tambah dan daya guna bagi sistem tersebut. Pengguna sistem akan merasa nyaman dan aman ketika menggunakan sistem yang mampu mengamankan data pengguna dari penyerang (Ariyus, 2005).

(19)

Ada banyak algoritma kriptografi yang telah diciptakan oleh para peneliti kriptografi, namun dalam penelitian ini penulis akan membahas mengenai Algoritma Vernam Chiper dan Rivest Cipher 4 (RC-4), Algoritma Vernam Chiper dan Rivest Cipher 4 merupakan jenis algoritma kunci simetris (menggunakan kunci yang sama untuk enkripsi dan dekripsi). Kelemahan dari algoritma kriptografi RC4 dan Vernam Chiper adalah bahwa kedua algoritma tersebut menggunakan operasi XOR dalam melakukan proses enkripsi, sehingga penyerang mudah untuk menyandikan kembali ciphertext menjadi plaintext, hanya dengan melakukan kembali operasi XOR. Misalnya diasumsikan A berhasil menyadap dua buah ciphertext yang berbeda menggunakan kunci yang sama, lalu A kemudian melakukan operasi XOR terhadap kedua ciphertext yang berhasil disadapnya. Jika A berhasil mengetahui plaintext dari salah satu ciphertext tersebut, maka A akan dengan mudah menemukan plaintext yang lain tanpa mengetahui rangkaian kuncinya (Munir, 2006)

Melihat kelemahan dari algoritma kroptografi Vernam Chiper dan Rivest Cipher 4 (RC-4) tersebut, maka penulis tertarik untuk mengatasi kelemahan kedua algoritma kriptografi tersebut dengan cara mengkombinasikan kedua algoritma tersebut, sehingga penyerang akan lebih sulit untuk melakukan penyandian kembali ciphertext menjadi plaintext.

1.2. Rumusan Masalah

Adapun rumusan masalah dari tesis ini adalah Bagaimana menghasilkan sebuah algoritma kriptografi yang baru dengan menggunakan Vernam Cipher dan Rivest Cipher 4 yang diimplementasikan untuk melakukan enkripsi dan deskripsi pada record sebuah file text.

1.3. Batasan Masalah

(20)

1.4. Tujuan Penelitian

Tujuan penelitian tesis ini adalah menggabung algoritma kriptografi yang merupakan kombinasi dari Algoritma Kriptografi Vernam Cipher dan Algoritma Kriptografi Rivest Cipher 4, dengan tingkat kesulitan pemecahan algoritma yang lebih tinggi dibanding Algoritma Kriptografi Vernam Cipher dan Algoritma Kriptografi Rivest Cipher 4.

1.5. Manfaat Penelitian

(21)

BAB II

TINJAUAN TEORITIS

2.1. Microsoft Access

Microsoft Access adalah aplikasi database yang dibuat oleh Microsoft untuk menunjang kebutuhan perkantoran akan sebuah aplikasi database yang relatif sederhana (Adi Kurniadi, 2000) .

1. Table. 2. Query. 3. Form. 4. Report. 5. Macro. 6. Switchboard. 7. SQL Command.

8. Designing Advanced Form (Latihan).

Untuk membuka Ms Access, anda dapat melakukannya dengan cara menekan tombol start, kemudian pilih program, pilih Microsoft Office, dan pilih Microsoft Access.

Gambar 2.1 : Link Ms. Access

(22)

Setelah terbuka, anda akan dihadapkan pada kotak dialog untuk membuka file lama atau membuat database baru.

Gambar 2.2 : Buat Form Baru (Adi Kurniadi, 2000)

Pilihlah blank access database, supaya anda dapat mempelajari Ms Access dari awal. Selanjutnya anda akan diminta memilih nama database yang akan anda buat, dan disimpan dalam format standart Access yaitu .mdb.

2.1.1 Table

Table adalah sebuah lokasi informasi yang terstruktur, yang terdiri dari baris (rows)dan kolom (column). Saat membicarakan table dalam database, kita tidak bisa lepas dari field, record, dan tipe data. Untuk mengenal lebih jauh tentang field, record, dan tipe data, perhatikan gambar berikut ini (Adi Kurniadi, 2000) :

Nama Dosen Mata Kuliah Budhi Kristianto Web Programming Felix David Bahasa C

field

(23)

Teguh Wahyono Etika Profesi

Secara harafiah, Fielddapat dikatakan sebagai judul dari kolom dalam sebuah table. Record adalah data yang ada di dalam sebuah field. Sedangkan tipe data adalah jenis-jenis data yang dikenal dalam sistem database dan pemrograman komputer.

Tipe datayang dikenal oleh Access adalah :

1. Text, adalah tipe data yang berisikan huruf atau kombinasi huruf dan angka. Tipe data ini memiliki panjang 255 karakter.

2. Memo, adalah tipe data yang berisikan huruf atau kombinasi huruf dan angka. Tipe data ini memiliki panjang 65535 karakter.

3. Number, adalah tipe data yang berisikan angka untuk perhitungan matematis. Tipe data ini memiliki panjang 1, 2, 4, atau 8 byte (1 byte = 1 karakter = 8 bit binary). 4. Date/Time, adalah tipe data yang berisikan tanggal bulan dan tahun. Tipe data ini

memiliki panjang 8 byte.

5. Currency, adalah tipe data yang berisikan angka yang melibatkan 1 sampai 4 angka di belakang koma (desimal). Tipe data ini mampu terlibat dalam perhitungan sampai 15 digit di depan koma, dan 4 digit di belakang koma. Panjangnya 8 byte.

6. AutoNumber, adalah tipe data yang berisikan angka yang mengalami increment (penambahan dengan skala kelipatan yang tetap). Defaultnya adalah 1. Panjangnya 4 byte.

7. Yes/No, adalah tipe data yang berisikan jawaban yes/no, true/false, atau on/off. Panjangnya hanya 1 bit (bukan byte).

8. OLE Object, adalah tipe data yang berisikan bermacam-macam object, seperti file Ms Word, spreadheet milik Ms Excel, grafik, gambar, dan sebagainya. Ukurannya tak terbatas, tergantung dari kapasitas hardisk.

(24)

Sebenarnya ada beberapa tipe data standart yang sangat familiar dalam bidang komputasi database, namun memiliki nama yang berbeda dari yang dikenal Access. Namun demikian, Access juga dapat mengenali tipe data standart tersebut (Adi Kurniadi, 2000).

Tipe data yang dimaksud adalah : 1. Char (karakter).

Ms Access SQL Query Visual Basic ADO Engine Ms SQL Engine

- Binary - adBinary Binary,

VarBinary

Yes/no Yes/no Boolean adBoolean Boolean, Bit, Logical,

Long Integer Long adInteger Counter, AutoIncrement

Currency Currency Currency adCurrency Currency, Money Date/time Date/Time Date adDate DateTime, Date,

(25)

Number (FieldSize= Double)

Double Double adDouble Double, Float, Float8,

Long Integer Long adInteger Long, Int, Integer, Integer4

OLE Object OLE Object String adLongVarBi nary

Single Single adSingle Single, Float4, IEEESingle, Real

Number (FieldSize= Integer)

Integer Integer adSmallInt Short, Integer2, SmallInt

Text Text String adVarWChar Text,

(26)

2.2. Security/Keamanan

Keamanan merupakan komponen yang vital dalam komunikasi data elektronis. Masih banyak yang belum menyadari bahwa keamanan (security) merupakan sebuah komponen penting yang tidak murah. Teknologi kriptografi sangat berperan juga dalam proses komunikasi, yang digunakan untuk melakukan enkripsi (pengacakan) data yang ditransaksikan selama perjalanan dari sumber ke tujuan dan juga melakukan dekripsi (menyusun kembali) data yang telah teracak tersebut. Berbagai sistem yang telah dikembangkan adalah seperti sistem private key dan public key. Penguasaan algoritma-algoritma populer digunakan untuk mengamankan data juga sangat penting. Contoh – contoh algoritma ini antara lain : DES, IDEA, RC5, RSA, dan ECC (Elliptic Curve Cryptography). Penelitian dalam bidang ini di perguruan tinggi merupakan suatu hal yang penting. (Kristianto, 2003)

Dari sisi tindakan pihak yang bertanggung jawab, keamanan jaringan komputer terbagi dua level:

1. keamanan fisik peralatan mulai dari server, terminal/client router sampai dengan cabling.

2. keamanan sistem sekiranya ada penyeludup yang berhasil mendapatkan akses ke saluran fisik jaringan komputer. Sebagai contoh, dalam sistem mainframe-dumb-terminal di suatu gedung perkantoran, mulai dari komputer sentral sampai ke terminal secara fisik keamanan peralatan dikontrol penuh oleh otoritas sentral. Manakala sistem tersebut hendak diperpanjang sampai ke kantor-kantor cabang di luar gedung, maka sedikit banyak harus menggunakan komponen jaringan komputer yang tidak sepenuhnya dikuasai pemilik sistem seperti menyewa kabel leased-line atau menggunakan jasa komunikasi satelit.

Dari sisi pemakaian, sistem keamanan dipasang untuk mencegah: 1. Pencurian.

2. Kerusakan.

3. Penyalahgunaan data yang terkirim melalui jaringan komputer.

(27)

telah dapat mengurangi bahkan membuang kemungkinan adanya kerusakan data akibat buruknya konektivitas fisik namun kerusakan tetap bisa terjadi karena bug pada program aplikasi atau ada unsur kesengajaan yang mengarah ke penyalahgunaan sistem.

Di institusi pendidikan, selain kepentingan administratif sebagaimana di institusi-institusi lainnya, jaringan komputer Internet khususnya dapat digunakan untuk berinteraksi dengan konsumen (siswa). Pada umumnya, institusi pendidikan tidak menyelenggarakan pelayanan jasa yang ketat seperti penyelenggaraan bank atau asuransi. Namun demikian, dalam sistem terpadu, beberapa komponen bisa bersifat kritis seperti komunikasi data pembayaran SPP dan menyentuh rahasia pribadi seperti penggunaan email untuk konsultasi bimbingan dan penyuluhan. Untuk masalah pembayaan SPP, yang penting adalah akurasi data dan pada dasarnya daftar pembayar SPP tidak perlu disembunyikan karena pada akhirnya semua siswa membayar SPP. Untuk konsultasi psikologis sebaiknya memang hanya siswa dan pembibing saja yang bisa membaca teks komunikasi bahkan administrator jaringan pun harus dibuat tidak bisa membaca electronic-mail (Aryus. 2005).

2.3. Sejarah Kriptografi

Kriptografi memiliki sejarah yang panjang dan mengagumkan. Penulisan rahasia ini dapat dilacak kembali ke 3000 tahun SM saat digunakan oleh bangsa Mesir. Mereka menggunakan hieroglyphcs untuk menyembunyikan tulisan dari mereka yang tidak diharapkan. Hieroglyphcs diturunkan dari bahasa Yunani hieroglyphica yang berarti ukiran rahasia. Hieroglyphs berevolusi menjadi hieratic, yaitu stylized script yang lebih mudah untuk digunakan. Sekitar 400 SM, kriptografi militer digunakan oleh bangsa Spartan dalam bentuk sepotong papirus atau perkamen dibungkus dengan batang kayu. Sistem ini disebut Scytale (Zelvina ,at all, 2012)

(28)

alfabet yang digunakan, cipher ini merupakan substitusi monoalfabetik. Cipher semacam ini mencakup penggeseran alfabet dengan 3 huruf dan mensubstitusikan huruf tersebut. Substitusi ini kadang dikenal dengan C3 (untuk Caesar menggeser 3 tempat). Secara umum sistem cipher Caesar dapat ditulis sebagai berikut :

Zi = Cn(Pi)

Dimana Zi adalah karakter-karekter ciphertext, Cn adalah transformasi substitusi alfabetik, n adalah jumlah huruf yang digeser, dan Pi adalah karakter-karakter plaintext. Disk mempunyai peranan penting dalam kriptografi sekitar 500thn yang lalu. Di Italia sekitar tahun 1460, Leon Battista Alberti mengembangkan disk cipheruntuk enkripsi. Sistemnya terdiri dari dua disk konsentris. Setiap disk memiliki alfabet di sekelilingnya, dan dengan memutar satu disk berhubungan dengan yang lainnya, huruf pada satu alfabet dapat ditransformasi ke huruf pada alfabet yang lain (Nathasia & Wicaksono, 2012).

(29)

Sistem disk digunakan secara luas selama perang sipil US. Federal Signal Officer mendapatkan hak paten pada sistem disk mirip dengan yang ditemukan oleh Leon Battista Alberti di Italia, dan dia menggunakannya untuk mengkode dan mendekodekan sinyal- sinyal bendera diantara unit- unit. Sistem Unix menggunakan cipher substitusi yang disebut ROT 13 yang menggeser alfabet sebanyak 13 tempat. Penggeseran 13 tempat yang lain membawa alfabet kembali ke posisi semula, dengan demikian mendekodekan pesan. Mesin kriptografi mekanik yang disebut Hagelin Machine dibuat pada tahun 1920 oleh Boris Hagelin di Scockholm, Swedia. Di US, mesin Hagelin dikenal sebagai M-209. Pada tahun 20-an, Herbert O. Yardley bertugas pada organisasi rahasia US MI-8 yang dikenal sebagai “Black Chamber”. MI-8 menjebol kode-kode sejumlah negara. Selama konferensi Angkatan Laut Washington tahun 1921-1922, US membatasi negosiasi dengan Jepang karena MI-8 telah memberikan rencana negosiasi Jepang yang telap disadap kepada sekretaris negara US. Departemen negara menutup MI-8 pada tahun 1929 sehingga Yardley merasa kecewa. Sebagai wujud kekecewaanya, Yardley menerbitkan buku The American Black Chamber, yang menggambarkan kepada dunia rahasia dari MI-8. Sebagai konsekuensinya, pihak Jepang menginstal kode-kode baru. Karena kepeloporannya dalam bidang ini, Yardley dikenal sebagai “Bapak Kriptografi Amerika”.

2.4. Kriptografi dan Sistem Informasi

Keamanan telah menjadi aspek yang sangat penting dari suatu sistem informasi. Sebuah informasi umumnya hanya ditujukan bagi segolongan tertentu. Oleh karena itu sangat penting untuk mencegahnya jatuh kepada pihak-pihak lain yang tidak berkepentingan. Untuk melaksanakan tujuan tersebut dirancang suatu sistem keamanan yang berfungsi melindungi sistem informasi (Munir, 2011).

(30)

1. Kerahasiaan (confidentiality)

Kerahasiaan adalah layanan yang digunakan untuk menjaga informasi dari setiap pihak yang tidak berwenang untuk mengaksesnya. Dengan demikian informasi hanya akan dapat diakses oleh pihak-pihak yang berhak saja.

2. Integritas data (data integrity)

Integritas data merupakan layanan yang bertujuan untuk mencegah terjadinya pengubahan informasi oleh pihak-pihak yang tidak berwenang. Untuk meyakinkan integritas data ini harus dipastikan agar sistem informasi mampu mendeteksi terjadinya manipulasi data. Manipulasi data yang dimaksud di sini meliputi penyisipan, penghapusan, maupun penggantian data.

3. Otentikasi (authentication)

Otentikasi merupakan layanan yang terkait dengan identifikasi terhadap pihak-pihak yang ingin mengakses sistem informasi (entity authentication) maupun keaslian data dari sistem informasi itu sendiri (data origin authentication).

4. Ketiadaan penyangkalan (non-repudiation)

Ketiadaan penyangkalan adalah layanan yang berfungsi untuk mencegah terjadinya penyangkalan terhadap suatu aksi yang dilakukan oleh pelaku sistem informasi.

2.5. Mekanisme Kriptografi

Suatu sistem kriptografi (kriptosistem) bekerja dengan cara menyandikan suatu pesan menjadi suatu kode rahasia yang dimengerti oleh pelaku sistem informasi saja. Pada dasarnya mekanisme kerja semacam ini telah dikenal sejak jaman dahulu. Bangsa Mesir kuno sekitar 4000 tahun yang lalu bahkan telah mempraktekkannya dengan cara yang sangat primitive (Munir, 2011).

Dalam era teknologi informasi sekarang ini, mekanisme yang sama masih digunakan tetapi tentunya implementasi sistemnya berbeda. Sebelum membahas lebih jauh mekanisme kriptografi modern, berikut ini diberikan beberapa istilah yang umum digunakan dalam pembahasan kriptografi (Munir, 2011).

(31)

Plaintext (message) merupakan pesan asli yang ingin dikirimkan dan dijaga keamanannya. Pesan ini tidak lain dari informasi tersebut.

2. Ciphertext

Ciphertext merupakan pesan yang telah dikodekan (disandikan) sehingga siap

untuk dikirimkan.

3. Cipher

Ciphermerupakan algoritma matematis yang digunakan untuk proses penyandian plaintext menjadi ciphertext.

4. Enkripsi

Enkripsi (encryption) merupakan proses yang dilakukan untuk menyandikan plaintext sehingga menjadi Ciphertext.

5. Dekripsi

Dekripsi (decryption) merupakan proses yang dilakukan untuk memperoleh kembali plaintext dari Ciphertext.

6. Kriptosistem

(32)

Gambar 2.3 : Mekanisme kriptografi(Munir, 2011)

Prosesnya pada dasarnya sangat sederhana. Sebuah plaintext (m) akan dilewatkan pada proses enkripsi (E) sehingga menghasilkan suatu ciphertext (c). Kemudian untuk memperoleh kembali plaintext, maka ciphertext (c) melalui proses dekripsi (D) yang akan menghasilkan kembali plaintext (m). Secara matematis proses ini dapat dinyatakan sebagai,

E(m) = c D(c) = m

D(E(m)) = m

Kriptografi sederhana seperti ini menggunakan algoritma penyandian yang disebut cipher. Keamanannya bergantung pada kerahasiaan algoritma penyandian tersebut, karena itu algoritmanya harus dirahasiakan. Pada kelompok dengan jumlah besar dan anggota yang senantiasa berubah, penggunaannya akan menimbulkan masalah. Setiap ada anggota yang meninggalkan kelompok, algoritma harus diganti karena anggota ini dapat saja membocorkan algoritma (Munir, 2011).

(33)

demikian ada sedikit perubahan yang harus dilakukan pada mekanisme yang digambarkan pada gambar diatas menjadi seperti gambar dibawah berikut ini.

Gambar 2.4 : Kriptografi berbasis kunci(Munir, 2011)

Mekanisme kriptografi seperti ini dinamakan kriptografi berbasis kunci. Dengan demikian kriptosistemnya akan terdiri atas algoritma dan kunci, beserta segala plaintext dan ciphertextnya.

Persamaan matematisnya menjadi seperti berikut, Ee(m) = c Dd(c) = m Dd(Ee(m)) = m dengan,

e = kunci enkripsi d = kunci dekripsi

2.6. Kriptografi Simetrik dan Asimetrik

(34)

tidaknya kunci yang digunakan dalam proses enkripsi dengan kunci yang digunakan pada proses dekripsi.(Zelvina ,at all, 2012)

2.6.1. Kriptografi Simetrik

Kriptografi simetrik (symmetric cryptography) atau dikenal pula sebagai kriptografi kunci rahasia (secret-key cryptography), merupakan kriptografi yang menggunakan kunci yang sama baik untuk proses enkripsi maupun dekripsi. Secara matematis dapat dinyatakan bahwa :

e = d = k

Ek(m) = c Dk(c) = m

Kriptografi simetrik sangat menekankan pada kerahasiaan kunci yang digunakan untuk proses enkripsi dan dekripsi. Oleh karena itulah kriptografi ini dinamakan pula sebagai kriptografi kunci rahasia (Zelvina ,at all, 2012).

2.6.2. Kriptografi Asimetrik

Kriptografi asimetrik (asymmetric cryptography) menggunakan kunci enkripsi dan kunci dekripsi yang berbeda. Kunci enkripsi dapat disebarkan kepada umum dan dinamakan sebagai kunci publik (public key) sedangkan kunci dekripsi disimpan untuk digunakan sendiri dan dinamakan sebagai kunci pribadi (private key). Oleh karena itulah, kriptografi ini dikenal pula dengan nama kriptografi kunci publik (public key cryptography).

(35)

2.7. Keamanan Sistem Kriptografi

Keamanan suatu sistem kriptografi merupakan masalah yang paling fundamental. Dengan menggunakan sistem standar terbuka, maka keamanan suatu sistem kriptografi akan lebih mudah dan lebih cepat dianalisa. Mengingat kenyataan inilah maka sekarang tidak digunakan lagi algoritma rahasia yang tidak diketahui tingkat keamanannya.

Sebuah sistem kriptografi dirancang untuk menjaga plaintext dari kemungkinan dibaca oleh pihak-pihak yang tidak berwenang, yang secara umum dinamakan sebagai penyerang (attacker). Penyerang diasumsikan memiliki akses tak terbatas terhadap jalur tak aman yang digunakan untuk transaksi ciphertext. Oleh karena itu, penyerang dianggap memiliki akses langsung terhadap ciphertext.

(36)

2.8. Vernam Cipher

Algoritma One Time Pad (OTP) merupakan algoritma berjenis symetric key yang artinya bahwa kunci yang digunakan untuk melakukan enkripsi dan dekripsi merupakan kunci yang sama. Dalam proses enkripsi, algoritma ini menggunakan cara stream cipher yang berasal dari hasi XOR antara bit plaintext dan bit key. Pada metode ini plain text diubah kedalam kode ASCII dan kemudian dikenakan operasi XOR terhadap kunci yang sudah diubah ke dalam kode ASCII (Sholeh, & Hamokwarong, 2011).

Proses dekripsi merupakan proses yang dilakukan untuk mengembalikan file dari bentuk simbol-simbol kembali ke bentuk semula. Dekripsi Vernam Cipher dapat dilakukan dengan menggunakan rumus dibawah ini (Ariyanto, at all, 2008):

P(i) = C(i) XOR K(i) Dalam hal ini :

C = Cipher Teks P = Plain Teks K = Kunci

Enkripsi data merupakan bagian awal dari proses pengamanan data. Dalam proses enkripsi ini data ang asli akan dilakukan proses pengacakan dengan algoritma yang sudah ditentukan, adapun proses enkripsi pada Vernam Cipher dapat dilakukan dengan menggunakan rumus dibawah ini (Ariyanto, at all, 2008):

C(i) = P(i) XOR K(i) Dalam hal ini :

(37)

P = Plain Teks K = Kunci

I = index karakter

2.9. Rivest Cipher 4 (RC4)

RC4 merupakan salah satu jenis stream cipher, yaitu memproses unit atau input data, pesan atau informasi pada satu saat. Unit atau data pada umumnya sebuah byte atau bahkan kadang kadang bit (byte dalam hal RC4). Dengan cara ini enkripsi atau dekripsi dapat dilaksanakan pada panjang yang variabel. Algoritma ini tidak harus menunggu sejumlah input data, pesan atau informasi tertentu sebelum diproses, atau menambahkan byte tambahan untuk mengenkrip. Contoh stream cipher adalah RC4, Seal, A5, Oryx, dan lain-lain. Tipe lainnya adalah block cipher yang memproses sekaligus sejumlah tertentu data (biasanya 64 bit atau 128 bit blok), contohnya : Blowfish, DES, Gost, Idea, RC5, Safer, Square, Twofish, RC6, Loki97, dan lain-lain (Kadry& Smaili, 2010).

RC4 merupakan enkripsi stream simetrik proprietaryyang dibuat oleh RSA Data Security Inc (RSADSI). Penyebarannya diawali dari sebuah source code yang diyakini sebagai RC4 dan dipublikasikan secara 'anonymously' pada tahun 1994. Algoritma yang dipublikasikan ini sangat identik dengan implementasi RC4 pada produk resmi. RC4 digunakan secara luas pada beberapa aplikasi dan umumnya dinyatakan sangat aman. Sampai saat ini diketahui tidak ada yang dapat memecahkan/membongkarnya, hanya saja versi ekspor 40 bitnya dapat dibongkar dengan cara "brute force" (mencoba semua kunci yang mungkin). RC4 tidak dipatenkan oleh RSADSI, hanya saja tidak diperdagangkan secara bebas (trade secret) (Kadry& Smaili, 2010).

(38)

i dan j, yang diinisialisasi dengan bilangan nol. Untuk menghasilkan random byte langkahnya adalah sebagai berikut (Slamet Maryono, 2012):

i = (i + 1) mod 256 j = (j + Si) mod 256 swap Sidan Sj t = (Si+ Sj) mod 256 K = St

Byte K di XOR dengan plaintexs untuk menghasilkan cipherteks atau di XOR dengan cipherteks untuk menghasilkan plainteks. Enkripsi sangat cepat kurang lebih 10 kali lebih cepat dari DES.

Inisialisasi S-Box juga sangat mudah. Pertama isi secara berurutan S0= 0, S1= 1,...,S255 = 255. Kemudian isi array 256 byte lainnya dengan kunci yang diulangi sampai seluruh array K0, K1,...,K255 terisi seluruhnya. Set indeks j dengan nol, Kemudian lakukan langkah berikut :

for i = 0 to 255

j = (j + Si+ Ki) mod 256 swap Sidan Sj

(39)

Untuk lebih meningkatkan keamanan dari metoda ini dapat juga mengembangkan inisialisasi kunci yang baru yang kita sebut saja inisialisasi SK (strengtened key), pada proses ini kunci user di-expand hingga 260 byte (tetapi kemudian hanya 256 byte saja yang digunakan) dengan menggunakan SHA-1, caranya pertama kunci user dijadikan kunci, kemudian 1-20 byte pertama pada buffer diproses dengan SHA kemudian digestnya diletakan pada 20 byte pertama, kemudian diambil byte 1-40 diproses dengan SHA dan hasilnya diletakan mulai pada byte 20, berikutnya byte 1-60 hasilnya diletakkan pada mulai byte 40, dan seterusnya. Kemudian buffer ini dienkrip dengan RC4, lalu buffer dijadikan kunci kembali, proses terakhir ini diulang sebanyak 16 kali untuk mencoba mencampur dengan baik sehingga dihasilkan kunci yang se-random mungkin.

(40)

BAB III

METODE PENELITIAN

3.1. Lingkungan Penelitian

Dalam penelitian ini penulis membangun algoritma kriptogtafi baru (yang merupakan kombinasi algoritma kriptografi Vernam Cipher dan Rivest Cipher 4), terkait hal tersebut maka penulis nantinya akan menganalisa langkah-langkah kerja algoritma kriptografi Vernam Cipher dan Rivest Cipher 4 tersebut, sehingga nantinya algoritma kriptografi yang penulis bangun akan memiliki tingkat kesulitan yang lebih tinggi untuk dipecahkan dibandingkan algoritma kriptografi Vernam Cipher dan Rivest Cipher 4.

3.1.1 Proses Enkripsi Vernam Cipher

Adapun algoritma enkripsi Vernam Cipher dalam bentuk psedocodedibawah ini : Langkah 1 : Input Plaintext

Langkah 2 : Input Kunci

Langkah 3 : Ubah Setiap karakter pada Plaintext kedalam bentuk Ascii Code

I=0

Jum = LEN(Plaintext) For i=1 to jum

(41)

Langkah 4 : Ubah Setiap karakter pada Kunci kedalam bentuk Ascii Code

I=0

Jum = LEN(Kunci) For i=1 to jum

K(i) = Asc(substr(Kunci, 1,i)) Next i

Langkah 5 : Lakukan Enkripsi dengan rumus I=0

Jum = LEN(PlainTeks) For i=1 to jum

Next i

Langkah 6 : Ubah Ascii Ciphertext kedalam bentuk karakter I=0

Jum = LEN(Ciphertext) For i=1 to jum

Karakter_C(i) = chr(substr(C(i), 1,i)) Next i

3.1.2 Proses Dekripsi Vernam Cipher

(42)

Adapun algoritma dekripsi Vernam Cipher dalam bentuk psedocodedibawah ini : Langkah 1 : Input Cipherteks

Langkah 2 : Input Kunci

Langkah 3 : Ubah Setiap karakter pada Ciphertext kedalam bentuk Ascii Code

I=0

Jum = LEN(Ciphertext ) For i=1 to jum

C(i) = Asc(substr(Ciphertext , 1,i)) Next i

Langkah 4 : Ubah Setiap karakter pada Kunci kedalam bentuk Ascii Code

I=0

Jum = LEN(Kunci) For i=1 to jum

K(i) = Asc(substr(Kunci, 1,i)) Next i

Langkah 5 : Lakukan Enkripsi dengan rumus I=0

Jum = LEN(Ciphertext) For i=1 to jum

Next i

(43)

Langkah 6 : Ubah Ascii Plaintext kedalam bentuk karakter I=0

Jum = LEN(Plaintext ) For i=1 to jum

Karakter_P(i) = chr(substr(Plaintext ,1,i)) Next i

3.1.3 Analisis Kelemahan Algoritma Kriptografi Vernam Cipher

Adapun kelemahan terlihat pada kotak yang ada di psedocode diatas, kelemahan algoritma Vernam Cipher ini terletak pada pemakaian XOR dalam melakukan enkripsi dan dekripsi antara plaintext dan kunci (Agustanti, 2010)

P(i) = C(i) XOR K(i)

(44)

Gambar 3.1 : Contoh Hasil XOR Sehingga mendapatkan Plain Teks 3.2. Rivest Cipher 4 (RC4)

(45)

Swap (S[i],S[j]) Next y

Langkah 2:

Lakukan Pengacakan S-Box Jum = Len(Kunci)

i = 0 j = 0

For y=1 to Jum

i = (i + 1) mod Jum j = (j + S[i]) mod Jum swap (S[i],S[j])

Key(y) = S[(S[i]+S[j]) mod jum] Next y

Langkah 3:

Lakukan Enkripsi

Jum = Panjang(PlainText) i = 0

j = 0

For y=1 to Jum

Next y

(46)

Dan untuk melakukan Dekripsi maka dilakukan langkah sebagai berikut ini : Langkah 1:

Inisialisasi S-Box (Array S) Jum = Len(Kunci)

i = 0 j = 0

For y=1 to Jum

j = (j + S[i] + K [i mod jum]) mod jum Swap (S[i],S[j])

Next y Langkah 2:

Lakukan Pengacakan S-Box Jum = Len(Kunci)

i = 0 j = 0

For y=1 to Jum

i = (i + 1) mod Jum j = (j + S[i]) mod Jum swap (S[i],S[j])

(47)

Langkah 3:

Lakukan Enkripsi

Jum = Panjang(PlainText) i = 0

j = 0

For y=1 to Jum

Next y

3.2.1. Analisis Kelemahan Algoritma Kriptografi Rivest Cipher

Adapun kelemahan dari RC-4 terlihat pada kotak yang ada di psedocode diatas, algoritma kriptografi ini menggunakan XOR dalam melakukan operasi pada enkripsi dan dekripsinya

Jika diasumsikan A berhasil menyadap 2 buah Cipher text berbeda dengan kunci yang sama, A kemudian meng XOR kan kedua Cipher text tersebut, jika berhasil mengetahui plain teks dari Cipher text tersebut maka akan dengan mudah menemukan plaintext yang lain tanpa perlu mengetahui rangkaian kuncinya seperti contoh dibawah ini :

(48)

Gambar 3.2 : Contoh Hasil XOR Sehingga mendapatkan Plain

3.3.Gabungan Vernam Cipher dan RC-4

Melihat kekurangan dari kedua algoritma ini maka dilakukan beberapa teknik untuk mengurangi kekurangan tersebut diantaranya adalah dengan menggabungkan kedua algoritma tersebut sehingga diperoleh sebuah algoritma yang baru yang sangat berbeda dengan algoritma sebelumnya, adapun proses penggabungan algoritma ini dilakukan dengan cara sebagai berikut ini :

Proses Enkripsi :

Tahap 1 : Lakukan pembentukan kunci pertama dengan cara melakukan konversi karakater kunci kedalam bentuk Ascii Code didefeinisikan menjadi f(1)

Jum = LEN(Kunci) For i=1 to Jumlah

f1(i) = Asc(substr(kunci,i,1)) next i

(49)

Inisialisasi S-Box (Array S) Jum = Len(Kunci)

i = 0 j = 0

For y=1 to Jum

j = (j + S[i] + K [i mod jum]) mod jum Swap (S[i],S[j])

Next y Langkah 2:

Lakukan Pengacakan S-Box Jum = Len(Kunci)

i = 0 j = 0

For y=1 to Jum

i = (i + 1) mod Jum j = (j + S[i]) mod Jum swap (S[i],S[j])

Key(y) = S[(S[i]+S[j]) mod jum] Next y

Tahap 3 : untuk f(1,1) dan f(1,2) Buat sebuah table yang panjang kolomnya 0 s/d 255

Tahap 4 : isi tabel untuk f(1,1) dengan nilai 0 s/d 255 For i=0 to 255

(50)

f2(1,i) = i next i

Tahap 5 : berikutnya adalah dengan mengisi f(1,2) dengan nilai dimulai dari nilai kunci f(1), jika nilai f(i) sudah di masukkan maka isi kolom selanjutnya dengan urutan 0 s/d 255 tanpa memasukkan nilai angka yang sudah dimasukkan sebelumnya.

For i=0 to 255 kolom selanjutnya masukkan urutan 0 s/d 255 tanpa memasukkan nilai angka yang sudah dimasukkan sebelumnya.

For i=0 to 255

Tahap 7 : Untuk melakukan enkripsi dilakukan permutasi dengan cara berikut ini :

a. Cari nilai Ascii Code dari PlainttextP(i) di deretan angka f(1,1) jika jika ditemukan ambil nilai f(1,2) sesuai dengan urutan plaintteks tersebut sebagai Ciphertext C(i)

X = 1

For j=1 to Len(Plaintext) Urut = X

(51)

If f1(Urut,i) = P(i) then angka f(2,1) jika jika ditemukan ambil nilai f(2,2) sesuai dengan urutan plaintteks tersebut sebagai Ciphertext C(i)

X = 1

(52)

Jum = LEN(Kunci) For i=1 to Jumlah

f1(i) = Asc(substr(kunci,i,1)) next i

Tahap 2 : Lakukan pembentukan kunci kedua dengan algoritma RC-4 didefeinisikan menjadi f(2)

Inisialisasi S-Box (Array S) Jum = Len(Kunci)

i = 0 j = 0

For y=1 to Jum

j = (j + S[i] + K [i mod jum]) mod jum Swap (S[i],S[j])

Next y Langkah 2:

Lakukan Pengacakan S-Box Jum = Len(Kunci)

i = 0 j = 0

For y=1 to Jum

i = (i + 1) mod Jum j = (j + S[i]) mod Jum swap (S[i],S[j])

(53)

Next y

Tahap 3 : untuk f(1,1) dan f(1,2) Buat sebuah table yang panjang kolomnya 0 s/d 255

Tahap 4 : isi tabel untuk f(1,1) dengan nilai 0 s/d 255 For i=0 to 255 nilai angka yang sudah dimasukkan sebelumnya.

For i=0 to 255 kolom selanjutnya masukkan urutan 0 s/d 255 tanpa memasukkan nilai angka yang sudah dimasukkan sebelumnya.

For i=0 to 255

(54)

a. Cari nilai Ascii Code dari Ciphertext C(i) di deretan angka f(1,1) jika jika ditemukan ambil nilai f(1,2) sesuai dengan urutan plaintteks tersebut sebagai Ciphertext P(i)

X = 1 angka f(2,1) jika jika ditemukan ambil nilai f(2,2) sesuai dengan urutan Ciphertexttersebut sebagai Plaintext P(i)

(55)
(56)

BAB IV

HASIL DAN PEMBAHASAN

Bab ini mendiskusikan pseucode hasil kombinasi algoritma Vernam Cipher dan Rivest Cipher 4 dalam proses enkripsi dan dekripsi pada Kriptografi.

4.1. Hasil Penelitian

Berikut ini adalah pseucode hasil kombinasi algoritma Vernam Cipher dan Rivest Cipher 4. Kombinasi kedua algoritma tersebut dilakukan dengan cara, pertama sekali akan ditentukan posisi satu (baris pertama). Setelah posisi satu ditemukan (baris keempat) dilanjutkan dengan menentukan posisi kedua sebagai kunci (baris kesembilan). Demikian seterusnya, proses ini dilakukan sampaikan dengan proses enkripsi selesai.

Pseudocode

Posisi = 1

Fori = 0 ToLen(Plainteks) - 1

arrPlaintext(i) = Asci(PlainTeks(i)) IfPosisi = 1 Then

Forj = 0 To255

IfarrPlaintext(i) = j Then Enkripsi(i) = sBox(j) Exit for

Posisi = 2 End If Next j

(57)

Forj = 0 To255

IfarrPlaintext(i) = j Then Enkripsi(i) = sBox(j) j = 257

Posisi = 1 End If

Next j End If Next i

Dalam bentuk coding, pseudocodedi atas dapat dituliskan sebagai

Posisi = 1

Fori = 0 ToLen(Me.xPlainText.Text) - 1

arrPlaintext(i) = CStr(Asc(Mid(Me.xPlainText.Text, i + 1, 1)))

IfPosisi = 1 Then Forj = 0 To255

IfarrPlaintext(i) = j Then sDekripsi(i) = i

(58)

Next Else

Forj = 0 To255

IfarrPlaintext(i) = j Then sDekripsi(i) = i

'MsgBox(1 & " - " & Me.ListBox2.Items(j))

j = 257 Posisi = 1 End If Next End If Next

Penjelasan Coding Posisi = 1

1. Lakukan perulangan dari 0 sampai panjang karakter plainteks Fori = 0 ToLen(Me.xPlainText.Text) – 1

2. Ambil nilai desimal dari plainteks

arrPlaintext(i) = CStr(Asc(Mid(Me.xPlainText.Text, i + 1, 1)))

3. Untuk posisi 1, lakukan pencarian nilai arrPlainText didalam sBOX f(1), sesuai dengan nomor urut dari j

Forj = 0 To255

(59)

sEnkripsi(i) = Me.ListBox1.Items(j)

'MsgBox(1 & " - " & Me.ListBox1.Items(j))

j = 257 Posisi = 2

End If Next

4. Untuk posisi 2, lakukan pencarian nilai arrPlainText didalam sBOX f(2), sesuai dengan nomor urut dari j

Forj = 0 To255

IfarrPlaintext(i) = j Then

sEnkripsi(i) = Me.ListBox2.Items(j)

'MsgBox(1 & " - " & Me.ListBox2.Items(j))

j = 257 Posisi = 1 End If Next

4.2. Pembahasan

Sebagai contoh akan dilakukan enkripsi dengan menggunakan algoritma kombinasi RC4 dan Vernam Chiper. Plainteks yang digunakan adalah HELO dengan kunci 2573.

(60)

Kunci

H 72

E 69

L 76

O 79

1. Proses Pembentukan Kunci f(1)

Untuk membentuk kunci f(0) cara yang dilakukan adalah dengan membuat nilai code ascii, seperti terlihat pada tabel di bawah ini :

Kunci Nilai Code Ascii Kunci

2 50

5 53

6 54

2 50

2. Pembentukan Kunci f(2)

(61)

Array S 0 1 2 3

Array K 2 5 7 3

Inisialisasi i dan j dengan 0 kemudian dilakukan KSA agar tercipta state-array yang acak. Penjelasan iterasi lebih lanjut dapat dijelaskan sebagai berikut.

Iterasi 1 i = 0

j = (0 + S[0] + K [0 mod 4]) mod 4 j = (j + S[i] = K[ (i Mod 4) ] Mod 4 = (0 + 0 + 2) mod 4 = 2

Swap (S[0],S[2]). Akibatnya diperoleh array S

Array S 2 1 0 3

Iterasi 2 i = 1

j = (2 + S[1] + K [1 mod 4]) mod 4 = (2 + 1 + 5) mod 4 =0

Swap (S[1],S[0]) Sehingga hasil array S adalah

(62)

Iterasi 3 i = 2

j = (0 + S[2] + K [2 mod 4]) mod 4 = (0 + 0 + 7) mod 4 = 3

Swap (S[2],S[3]) Sehingga hasil array S adalah

Array S 1 2 3 0

Iterasi 4 i = 3

j = (3 + S[3] + K [3 mod 4]) mod 4 = (3 + 0 + 3) mod 4 = 2

Swap (S[3],S[2]) Akibatnya diperoleh array S

Array S 1 2 0 3

Setelah melakukan KSA, akan dilakukan Pseudo Random Generation Algorithm (PRGA). PRGA akan dilakukan sebanyak 4 kali dikarenakan plainteks yang akan dienkripsi berjumlah 4 karakter. Hal ini disebakan karena dibutuhkan 1 kunci dan 1 kali operasi XOR untuk tiap-tiap karakter pada plainteks. Berikut adalah tahapan penghasilan kunci enkripsi dengan PRGA

(63)

Array S 1 2 0 3

Inisialisasi i = 0 j = 0 Iterasi 1

i = (0 + 1) mod 4 = 1 j = (0 + S[1]) mod 4

= (0+ 2) mod 4 = 2 swap (S[1],S[2])

1 0 2 3

K1 = S[(S[1]+S[2]) mod 4] = S[2 mod 4] = S[2]

= 2 K1 = 00000010

Iterasi 2

i = (1 + 1) mod 4 = 2 j = (2 + S[2]) mod 4

(64)

swap (S[2],S[0])

2 0 1 3

K2 = S[(S[2]+S[0]) mod 4] = S[3 mod 4] = 3

K2 = 00000011

Iterasi 3

i = (2 + 1) mod 4 = 3

j = (0 + S[3]) mod 4 = (0+ 3) mod 4 = 3 swap (S[3],S[3])

2 0 1 3

K3 = S[(S[3]+S[3]) mod 4] = S[(3 + 3) mod 4 ] = S[6 mod 4 ] = S[2]

= 1

K3 = 00000001 Iterasi 4

(65)

j = (3 + S[0]) mod 4 = (3+ 2) mod 4 = 1

swap (S[0],S[1)

0 2 1 3

K1 = S[(S[0]+S[1]) mod 4] = S[2 mod 4] = 2 = S[2]

= 1 K1 = 00000001

Dengan demikian kunci f(1) yang terbentuk adalah

Binary Kunci 00000010 00000011 00000001 00000001

Desimal Kunci 2 3 1 1

3. Proses Tabel Permuasi

Dalam melakukan proses enkripsi, dilakukan proses permutasi antara f(1) dan f(2) dengan cara mengisi f(1) dan f(2) dengan nilai dimulai dari nilai kunci f(1), jika nilai f(i) sudah di masukkan maka isi kolom selanjutnya dengan urutan 0 s/d 255 tanpa memasukkan nilai angka yang sudah dimasukkan sebelumnya.

f(1,1) 0 1 2 3 4 5 6 7 8 9

(66)

f(1,1) 20 21 22 23 24 25 26 27 28 29 f(1,2) 70 71 72 73 74 75 76 77 78 79 f(1,1) 30 31 32 33 34 35 36 37 38 39 f(1,2) 80 81 82 83 84 85 86 87 88 89 f(1,1) 40 41 42 43 44 45 46 47 48 49 f(1,2) 90 91 92 93 94 95 96 97 98 99 f(1,1) 50 51 52 53 54 55 56 57 58 59 f(1,2) 100 101 102 103 104 105 106 107 108 109 f(1,1) 60 61 62 63 64 65 66 67 68 69

f(1,2) 110 111 112 113 114 115 116 117 118 119 Proses 1,3 f(1,1) 70 71 72 73 74 75 76 77 78 79

(67)

f(1,1) 130 131 132 133 134 135 136 137 138 139 f(1,2) 180 181 182 183 184 185 186 187 188 189 f(1,1) 140 141 142 143 144 145 146 147 148 149 f(1,2) 190 191 192 193 194 195 196 197 198 199 f(1,1) 150 151 152 153 154 155 156 157 158 159 f(1,2) 200 201 202 203 204 205 206 207 208 209 f(1,1) 160 161 162 163 164 165 166 167 168 169 f(1,2) 210 211 212 213 214 215 216 217 218 219 f(1,1) 170 171 172 173 174 175 176 177 178 179 f(1,2) 220 221 222 223 224 225 226 227 228 229 f(1,1) 180 181 182 183 184 185 186 187 188 189 f(1,2) 230 231 232 233 234 235 236 237 238 239 f(1,1) 190 191 192 193 194 195 196 197 198 199 f(1,2) 240 241 242 243 244 245 246 247 248 249 f(1,1) 200 201 202 203 204 205 206 207 208 209 f(1,2) 250 251 252 253 254 255 0 1 2 3 f(1,1) 210 211 212 213 214 215 216 217 218 219

f(1,2) 4 5 6 7 8 9 10 11 12 13

(68)

f(1,1) 240 241 242 243 244 245 246 247 248 249 f(1,2) 34 35 36 37 38 39 40 41 42 43 f(1,1) 250 251 252 253 254 255

f(1,2) 44 45 46 47 48 49

Tabel f(2)

f(2,1) 0 1 2 3 4 5 6 7 8 9

f(2,2) 1 2 3 4 5 6 7 8 9 10

f(2,1) 10 11 12 13 14 15 16 17 18 19 f(2,2) 11 12 13 14 15 16 17 18 19 20 f(2,1) 20 21 22 23 24 25 26 27 28 29 f(2,2) 21 22 23 24 25 26 27 28 29 30 f(2,1) 30 31 32 33 34 35 36 37 38 39 f(2,2) 31 32 33 34 35 36 37 38 39 40 f(2,1) 40 41 42 43 44 45 46 47 48 49 f(2,2) 41 42 43 44 45 46 47 48 49 50 f(2,1) 50 51 52 53 54 55 56 57 58 59 f(2,2) 51 52 53 54 55 56 57 58 59 60

f(2,1) 60 61 62 63 64 65 66 67 68 69 Proses 2 f(2,2) 61 62 63 64 65 66 67 68 69 70

(69)
(70)

f(2,1) 190 191 192 193 194 195 196 197 198 199 f(2,2) 191 192 193 194 195 196 197 198 199 200 f(2,1) 200 201 202 203 204 205 206 207 208 209 f(2,2) 201 202 203 204 205 206 207 208 209 210 f(2,1) 210 211 212 213 214 215 216 217 218 219 f(2,2) 211 212 213 214 215 216 217 218 219 220 f(2,1) 220 221 222 223 224 225 226 227 228 229 f(2,2) 221 222 223 224 225 226 227 228 229 230 f(2,1) 230 231 232 233 234 235 236 237 238 239 f(2,2) 231 232 233 234 235 236 237 238 239 240 f(2,1) 240 241 242 243 244 245 246 247 248 249 f(2,2) 241 242 243 244 245 246 247 248 249 250 f(2,1) 250 251 252 253 254 255

f(2,2) 251 252 253 254 255 0

4. Proses Enkripsi

Enkripsi dilakukan dengan cara berikut ini :

c. Cari nilai Ascii Code dari PlainttextP(i) dideretan angka f(1,1) jika jika ditemukan ambil nilai f(1,2) sesuai dengan urutan plaintteks tersebut sebagai chipertext C(i) d. Selanjutnya Cari nilai Ascii Code dari Plainttext P(i) dideretan angka f(2,1) jika

jika ditemukan ambil nilai f(2,2) sesuai dengan urutan plaintteks tersebut sebagai chipertext C(i)

Adapun prosesnya seperti di bawah ini :

Tabel Plain Teks PlainTeks

(71)

Plainteks

H 72

E 69

L 76

O 79

a. Cari nilai 72 dari tabel f(1,1) dan ambil nilai f(1,2) sebagai nilai enkripsi f(1,72) = 122

b. Cari nilai 69 dari tabel f(2,1) dan ambil nilai f(2,2) sebagai nilai enkripsi f(1,69) = 70

c. Cari nilai 76 dari tabel f(1,1) dan ambil nilai f(1,2) sebagai nilai enkripsi f(1,76) = 126

d. Cari nilai 79 dari tabel f(2,1) dan ambil nilai f(2,2) sebagai nilai enkripsi f(1,79) = 80

Dengan demikian diperoleh hasil enkripsi untuk plainteks HELO adalah 122,70, 126, 80

5. Proses Dekripsi

Dekripsi dilakukan dengan cara berikut ini :

a. Cari nilai Ascii Code dari chiperteks C(i) di deretan angka f(1,2) jika jika ditemukan ambil nilai f(1,1) sesuai dengan urutan plaintteks tersebut sebagai chipertext P(i)

b. Selanjutnya Cari nilai Ascii Code dari chipertext (i) di deretan angka f(2,2) jika jika ditemukan ambil nilai f(2,1) sesuai dengan urutan plaintteks tersebut sebagai chipertext P(i)

Adapun prosesnya seperti di bawah ini :

(72)

Ascii ChiperTeks 122

70 126

80

a. Cari nilai 193 dari tabel f(1,2) dan ambil nilai f(1,1) sebagai nilai enkripsi f(1,122) = 72

b. Cari nilai 70 dari tabel f(2,2) dan ambil nilai f(2,1) sebagai nilai enkripsi f(1,70) = 69

c. Cari nilai 197 dari tabel f(1,2) dan ambil nilai f(1,1) sebagai nilai enkripsi f(1,126) = 76

d. Cari nilai 81 dari tabel f(2,2) dan ambil nilai f(2,1) sebagai nilai enkripsi f(1,80) = 79

Dengan demikian hasil dekripsinya adalah : 72(H) , 69(E), 76(L), 79(O)

Plainteks dan

50,53,55,51 1,1,2,3 122, 70, 126, 80

(73)

Berdasarkan Tabel….. di atas terlihat bahwa terdapat perbedaan hasil enkripsi dengan menggunakan algoritma Vernam, RC4 dan kombinasi algoritma Vernam dan RC4.

6. Kekuatan Algoritma

Adapun kekuatan dari algoritma tersebut diuraikan sebagai berikut ini.

1. Algoritma akan melakukan enkripsi dan dekripsi dari sebuah sbox f(1) dan f(2) berdasarkan dua buah kunci yang berbeda

2. Proses enkripsi dan dekripsi dilakukan pada f(1) dan f(2) secara bergantian, sehingga akan sulit untuk diketahui dimana posisi teks yang akan dienkripsi dan didekripsi, karena posisi enkripsi dan dekripsi ditentukan berdasarkan kunci dari proses RC-4 dan Vernam Chiper

3. Jika salah satu kunci dari f(1) ataupun f(2), maka harus ditemukan juga kunci yang lainnya sehingga plainteks dapat dipecahkan, karena kedua f(1) dan f(2) harus valid. 4. Program akan melakukan enkripsi dan dekripsi dari sebuah sbox f1(1) dan f(2)

berdasarkan dua buah kunci yang berbeda.

5. Dalam Melakukan enkripsi dan dekripsi maka gabungan vernam chiper dan RC-4 memerlukan 2 buah kunci yang berbeda dari proses yang berbeda pula, dan sebagai contoh jika “A” berhasil menemukan 1 buah kunci pada chiper text maka “A” harus dapat menemukan kunci yang lainnya jika akan membuka chipertext yang dimaksud. 6. Dalam melakukan melakukan enkripsi dan dekripsi maka gabungan vernam chiper dan

(74)

BAB V

KESIMPULAN DAN SARAN

5.1. Kesimpulan

Sebagai penutup pembahasan dalam penulisan tugas akhir, penulis mengambil kesimpulan-kesimpulan sekaligus memberikan saran kepada user yang menggunakan aplikasi ini.

Dengan adanya kesimpulan dan saran ini dapatlah diambil suatu perbandingan yang akhirnya dapat memberikan perbaikan-perbaikan pada masa yang akan datang.

Adapun kesimpulan yang penulis peroleh adalah sebagai berikut:

1. Algoritma Vernam Cipher memiliki kelemahan, jika salah satu kunci ditemukan maka akan mudah untuk memecahkan plaintext atau ciphertext tersebut karena hanya menggunaan operasi XOR.

2. Kelemahan algoritma kriptografi Rivest Cipher adalah hanya menggunakan sekali operasi. Jika kunci ditemukan maka akan mudah mendapatkan plaintext ataupun ciphertextnya, karena hanya menggunakan operasi XOR.

3. Dalam Kombinasi RC-4 dan Vernam Cipher akan menghasilkan algoritma yang baru yang lebih sulit untuk dipecahkan, karena menggunakan metode dua kali operasi.

5.2. Saran-Saran

Adapun saran-saran yang akan penulis usulkan untuk meningkatkan kinerja instansi tersebut adalah sebagai berikut:

1. Program Enkripsi dan Dekripsi ini masih jauh dari kesempurnaan, maka diharapkan kepada pembaca untuk dapat menambah figure- figure yang lainnnya supaya kamus ini lebih baik dan lebih sempurna.

(75)

DAFTAR PUSTAKA

Agustanti, S.P. 2010. Pengamanan Kunci Enkripsi One Time Pad (OTP) Menggunakan Enkripsi RSA. Jurnal Media Teknik Vol.7 No.1

Aribowo, E. 2008. Aplikasi Pengamanan Dokumen Office Dengan Algoritma Kriptografi Kunci Asimestris Elgamal. Junal Informatika Vol.2, No.2, Juli 2008

Ariyanto, E., Pravitasari, T.I & Setyorini. 2008. Analisa Implementasi Algoritma Stream Cipher Sosemanuk Dan Dicing Dalam Proses Enkripsi Data. Seminar Nasional Informatika 2008 (semnasIF 2008) ISSN: 1979-2328

Ariyus, D. 2005. Computer Security. Andi Offisent. Yogyakarta

Ariyus, D. 2006. Pengantar Ilmu Kriptograpfi. Andi Offisent. Yogyakarta

Ariyus, D. 2006. Kriptografi Keamanan Data Dan Komunikasi .Graha Ilmu. Yogyakarta Kadry, S & Smaili, M. 2010. An Improvement of RC4 Cipher Using Vigenere Cipher.

International Journal Of Computational Intelligence And Information Security. Vo.1 No.3, May 2010

Kristianto, A.2003. Keamanan Data Pada Jaringan Komputer. Gava Media. Yogyakarta Kurniadi, A. 2000. Pemrograman Microsoft Visual Basic 6.0. Andi. Yogyakarta

Kurniawan, Y. 2004. Kriptografi Keamanan Internet Data Jaringan Komunikasi. Informatika Bandung. Bandung

Munir, R. 2006. Kriptografi. Infornatika Bandung. Bandung

Munir, R. 2011. Kriptografi Keamanan. Informatika Bandung. Bandung

(76)

Pardeep & Kumar Prateriya. P. 2012. PC1- RC4 and PC2- RC4 Algorithms : Pragmatic Enrichment Algorithm to Enhance RC4 Stream Cipher Algorithm. International Journal of Computer Science and Network (IJCSN)Volume 1, Issue 3, June 2012 www.ijcsn.org ISSN 2277-5420

Rakmat, B & Fairuzabadi, M. 2010. Steganografi Menggunakan Metode Least Significant Bit Dengan Kombinasi Algoritma Kriptografi Vigenere dan RC4. Jurnal Dinamika Informatika Volume 5, Nomor 2, September 2010

Sadikin, R. 2012. Kriptografi Untuk Keamanan Jaringan. Andi offiset. Yogyakarta

Sholeh. M & J.V. Hamokwarong. 2011. Aplikasi Kritografi Dengan Metode Vernam Cipher Dan Metode Permutasi Biner. Momentum, Vol.7, No.2, Oktober 2010: 8-13

(77)

Lampiran 1. Listing Program

Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command1.Click

nFile = ""

Form1.xPlainText.ReadOnly = False Form1.ShowDialog()

End Sub

Private Sub Command2_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command2.Click

nFile = ""

Me.CommonDialog1Open.Filter = "Text Files|*.txt"

Me.CommonDialog1Open.ShowDialog() nFile = Me.CommonDialog1Open.FileName If Len(Trim(nFile)) < 1 Then

Else

Form1.ShowDialog() End If

End Sub

Private Sub Command3_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command3.Click

nFile = ""

Me.CommonDialog1Open.Filter = "Enkripsi Text Files|*.enc"

Me.CommonDialog1Open.ShowDialog() nFile = Me.CommonDialog1Open.FileName If Len(Trim(nFile)) < 1 Then

Else

Form2.Show() End If End Sub

Private Sub Command4_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command4.Click

Dim Q As Integer

Q = MsgBox("Apakah Mau Keluar ? ", MsgBoxStyle.YesNo, "Keluar") If Q = MsgBoxResult.Yes Then

End End If End Sub

Private Sub Command5_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command5.Click

FrmTeori.ShowDialog() End Sub

(78)

nFile = ""

Me.CommonDialog1Open.Filter = "Text Files|*.txt"

Me.CommonDialog1Open.ShowDialog() nFile = Me.CommonDialog1Open.FileName If Len(Trim(nFile)) < 1 Then

Else

Form1.Show() End If End Sub

Public Sub exit_Renamed_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles exit_Renamed.Click

Dim Q As Integer

Q = MsgBox("Apakah Mau Keluar ? ", MsgBoxStyle.YesNo, "Keluar") If Q = MsgBoxResult.Yes Then

End End If End Sub

Public Sub mbAru_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles mbAru.Click

nFile = ""

Form1.xPlainText.ReadOnly = False Form1.Show()

End Sub

Private Sub FrmMenuUtama_Load(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Load

nKunci = "00000"

RTB1.filename = Dir1.Path & "\" & File1.List(i) 'RTB.Text = RTB.Text & ", " & File1.List(i)

RTB.Text = RTB.Text & ", " & RTB1.Text

RTB1.Text = ""

(79)

If RTB.Text = "" Then

Public Sub mnAboutMe_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles mnAboutMe.Click

MsgBox("Nama : PIPYD") End Sub

Public Sub mnDekripsi_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles mnDekripsi.Click

nFile = ""

Me.CommonDialog1Open.Filter = "Enkripsi Text Files|*.enc"

Me.CommonDialog1Open.ShowDialog() nFile = Me.CommonDialog1Open.FileName If Len(Trim(nFile)) < 1 Then

Else

Inherits System.Windows.Forms.Form Dim sArr(1000, 8) As String

Private Sub cmdSimpan_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cmdSimpan.Click

On Error GoTo FileError

CD1Save.DefaultExt = "enc"

CD1Save.Filter = "Enkripsi Text Files|*.enc"

CD1Save.ShowDialog()

SaveFileText(CD1Save.FileName, (Me.xEnkripsi.Text)) MsgBox("File Sudah disimpan ..", MsgBoxStyle.Information) Exit Sub

(80)

If Err.Number = DialogResult.Cancel Then Exit Sub

(81)

End If

Private Sub Command4_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command4.Click

(82)

' arrayK(i) = Mid(sKunci, i + 1, 1) & "=" & cc & "===> " & cc1)

(83)

posisi = 1

Private Sub Command5_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command5.Click

Me.Close() End Sub

Private Sub FrmEnkripsi_Load(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Load

(84)

Dim k As String

Inherits System.Windows.Forms.Form Dim sArr(1000, 8) As String

Private Sub cmdSimpan_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cmdSimpan.Click

On Error GoTo FileError

CD1Save.DefaultExt = "enc"

CD1Save.Filter = "Text Files|*.txt"

CD1Save.ShowDialog()

SaveFileText(CD1Save.FileName, (Me.xEnkripsi.Text)) MsgBox("File Sudah disimpan ..", MsgBoxStyle.Information) Exit Sub

FileError:

If Err.Number = DialogResult.Cancel Then Exit Sub

MsgBox("File Tidak Bisa disimpan ...." & CD1Save.FileName) 'OpenFile = ""

End Sub

(85)
(86)

End Sub

Private Sub Command4_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command4.Click

(87)

'Lakukan Pertukanan Nilai S[i] dengan S[j] & "=" & cc & "===> " & cc1)

Gambar

Tabel 4.4. Sbox f(2) ..................................................................................
Gambar 2.1 : Link Ms. Access
Gambar 2.2 : Buat Form Baru (Adi Kurniadi, 2000)
Tabel 2.1 Type Database
+7

Referensi

Dokumen terkait

Proses yang digunakan untuk membentuk balok seluler memungkinkan bagian bawah balok akhir dibentuk dari bagian donor yang lebih berat daripada setengah bagian atas - dengan kata

9.54 Memandangkan terdapat masalah-masalah serta keperluan untuk memperkukuhkan industri insurans supaya dapat memainkan peranan yang sewajarnya dalam ekonomi,

PENGEMBANGAN E-MODULE (ELECTRONIC MODULE) UNTUK MEDIA PEMBELAJARAN MATA PELAJARAN PRODUKTIF TKJ (TEKNIK KOMPUTER JARINGAN) DENGAN MENGGUNAKAN.. METODE RAD (RAPID

1. Penundaan untuk memulai maupun menyelesaikan kerja pada tugas yang dihadapi. Seseorang yang melakukan prokrastinasi tahu bahwa tugas yang dihadapinya harus

sebuah kertas tisu melaporkan bahwa perbedaan antara penggunaan bahan bubuk dan reagen pada pengambilan sidik bibir laten pada suatu benda, dipengaruhi oleh beberapa faktor antara

Untuk menemukan hubungan pola asuh orang tua, pergaulan teman sebaya dan media televisi terhadap karakter siswa di SMP Negeri 25 Purworejo, dengan unsur pokok kajian seperti

Penelitian ini membahas tentang menganalisis perbandingan teknik rendering tiga dimensi antara render Cycles dengan render Eevee yang ada didalam perangkat lunak opensource Blender

Pelaksanaan sama halnya dengan pertemuan sebelumnya, guru tetap mengecek kehadiran siswa. Selain itu, memberikan apersepsi dan motivasi, guru memotivasi siswa dengan