pembelajaran penyandian data di dalam database mysql

advertisement
PEMBELAJARAN PENYANDIAN DATA DI DALAM DATABASE MYSQL
MENGGUNAKAN METODE VERNAM CIPHER
DAN GRONSFELD CIPHER
Skripsi
Oleh :
FACHRUL ROZI PRATAMA
NIM : 1210000077
FAKULTAS TEKNIK DAN ILMU KOMPUTER
PROGRAM STUDI TEKNIK INFORMATIKA
UNIVERSITAS POTENSI UTAMA
MEDAN
2016
2
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Komputer
ABSTRAK
The importance of information in life makes people vying and hantusias to get
information ahead of others, because with important information they can process
data so that it becomes the new information. With the new information that people
can earn so much money. Today the use of computer technology has evolved to be
very fast, so much information is stored and processed through computer
technology. The use of computers to manage information have been used in the
business world, students and others. Information that has been processed
normally be a highly confidential data, most people store their personal data and
conceal from the public into a computer that is usually called a database.The
need for data security in the computer database so that the confidential
information, especially those maintained. To the authors recommend a system to
secure data on MySQL database. In this system, the contents of the data in the
database can be encrypted, so it can not be read by information thieves. But in its
application needs a method to solve the security problem in the data.Dengan the
above background, the author takes the title "Learning Encoding In The MySQL
Database Using Method And Gronsfeld Vernam Cipher Cipher".
Keywords : Vernam Cipher, Gronsfeld Cipher, MYSQL,Visual Basic 2010,
Universitas Potensi Utama.
ABSTRAK
Pentingnya sebuah informasi dalam kehidupan membuat orang-orang berlombalomba dan hantusias untuk mendapatkan informasi lebih dahulu dari orang lain,
karena dengan adanya informasi yang penting mereka dapat mengolah data
sehingga menjadi informasi yang baru. Dengan adanya informasi yang baru
orang-orang dapat menghasilkan uang yang banyak. Pada zaman sekarang ini
penggunaan teknologi komputer sudah berkembang menjadi sangat pesat,
sehingga informasi banyak disimpan dan diolah melalui teknologi komputer.
Penggunaan komputer untuk mengelola informasi sudah dipakai di kalangan
dunia bisnis, pelajar dan lain sebagainya. Informasi yang telah diolah biasanya
menjadi sebuah data yang sangat rahasia, kebanyakan orang menyimpan datadata pribadi mereka dan merahasiakan dari umum ke dalam sebuah komputer
yang biasa disebut database. Perlu adanya keamanan data di dalam komputer
terutama database agar rahasia informasi mereka tetap terjaga. Untuk itu penulis
merekomendasikan sebuah sistem pengamanan data pada database MySQL. Pada
sistem ini isi data di dalam database dapat disandikan, sehingga tidak dapat
terbaca oleh pencuri informasi. Namun di dalam penerapannya dibutuhkannya
metode untuk menyelesaikan masalah di dalam keamanan data.Dengan latar
belakang diatas maka penulis mengambil judul “Pembelajaran Penyandian Data
Di Dalam Database MySQL Menggunakan Metode Vernam Cipher Dan
Gronsfeld Cipher”.
Kata Kunci : Vernam Cipher, Gronsfeld Cipher, MYSQL,Visual Basic 2010,
Universitas Potensi Utama.
LEMBAR DEDIKASI
Yang Utama Dari Segalanya...
Sembah sujud serta syukur kepada Allah SWT. Taburan cinta dan kasih sayangMu telah memberikanku kekuatan, membekaliku dengan ilmu serta
memperkenalkanku dengan cinta. Atas karunia serta kemudahan yang Engkau
berikan akhirnya skripsi yang sederhana ini dapat terselesaikan. Sholawat dan
salam selalu terlimpahkan keharibaan Rasullah Muhammad SAW.
Kupersembahkan karya sederhana ini kepada orang yang sangat kukasihi dan
kusayangi.
Ibunda dan Ayahanda Tercinta
Sebagai tanda bakti, hormat, dan rasa terima kasih yang tiada terhingga
kupersembahkan karya kecil ini kepada Ibu dan Ayah yang telah memberikan
kasih sayang, segala dukungan, dan cinta kasih yang tiada terhingga yang tiada
mungkin dapat kubalas hanya dengan selembar kertas yang bertuliskan kata cinta
dan persembahan. Semoga ini menjadi langkah awal untuk membuat Ibu dan
Ayah bahagia karna kusadar, selama ini belum bisa berbuat yang lebih. Untuk Ibu
dan Ayah yang selalu membuatku termotivasi dan selalu menyirami kasih sayang,
selalu mendoakanku, selalu menasehatiku menjadi lebih baik,
Terima Kasih Ibu.... Terima Kasih Ayah...
Dosen Pembimbing Skripsi ku...
Bapak Iwan Fitrianto Rahmad, M.Kom dan Bapak Helmi Kurniawan, ST, M.Kom
selaku dosen pembimbing Skripsi saya, terima kasih banyak pak...bu.., saya sudah
dibantu selama ini, sudah dinasehati, sudah diajari, saya tidak akan lupa atas
bantuan dan kesabaran dari bapak.
Terima kasih banyak pak...., bapak adalah dosen favorit saya..
Seluruh Dosen Pengajar di Fakultas Teknik Dan Ilmu Komputer :
Terima kasih banyak untuk semua ilmu, didikan dan pengalaman yg sangat berarti
yang telah kalian berikan kepada kami…
KATA PENGANTAR
Alhamdulillah penulis ucapkan puji syukur atas kehadiran Allah SWT,
yang telah memberikan Rahmat dan Hidayah, serta Kesehatan, sehingga penulis
dapat menyelesaikan Skripsi yang berjudul “ Pembelajaran Penyandian Data Di
Dalam Database MySQL Menggunakan Metode Vername Cipher Dan
Gronsfeld Cipher ” sesuai dengan yang direncanakan.
Tugas akhir ini disusun dengan berdasarkan pengamatan saya tentang
penyandian data di dalam database MySql, merupakan syarat untuk menyelesaikan
pendidikan program Strata I pada Universitas Potensi Utama.
Pada kesempatan ini penulis ingin menyampaikan rasa terima kasihnya
kepada :
1. Bapak Iwan Fitrianto Rahmad, M.Kom, sebagai Dosen Pembimbing I
yang telah memberi pengarahan serta saran-saran yang berguna bagi
penulis dalam menyelesaikan Skripsi.
2. Bapak Helmi Kurniawan, ST, M.Kom, sebagai Dosen Pembimbing II
yang memberikan arahan dan kritik yang membangun dan konstruktif
sehingga penulis bisa menyelesaikan pembuatan skripsi ini.
3. Ibu Hj. Nuriandy BA, selaku Pembina Yayasan Potensi Utama Medan.
4. Bapak Bob Subhan Riza, ST, M.Kom, selaku Ketua Yayasan Potensi
Utama Medan.
5. Ibu Rika Rosnelly, SH, M.Kom, selaku Rektor Universitas Potensi Utama.
i
6. Ibu Lili Tanti, M.Kom, selaku Wakil Rektor I Universitas Potensi Utama.
7. Ibu Ratih Puspasari, selaku Dekan Fakultas Teknik dan Ilmu Komputer
Universitas Potensi Utama.
8. Bapak Budi Triandi, M.Kom, selaku Ketua Program Studi Teknik
Informatika Universitas Potensi Utama.
9. Dosen Fakultas Teknik dan Ilmu Komputer secara khusus dan Dosen
Fakultas lain secara umum yang membantu kelancaran penyelesaian
Skripsi Ini.
10. Teristimewa saya mengucapkan salam sayang dan Terima Kasih kepada
Ayahanda Tercinta “Elfix Friyanto” dan Ibunda tersayang “Norma”,
berkat kasih saying, nasihat dan motivasi dari merekalah saya mampu
menjalani skripsi ini serta doa yang selalu mereka sampaikan kepada Allah
SWT.
11. Tersayang ”Rikha Aulia Lubis S.E” saya mengucapkan banyak terima
kasih yang telah memberi saya semangat dan selalu pengertian kepada
saya selama pembuatan skripsi ini.
ii
12. Kepada teman teman satu perjuangan “Agus Fajar Rizki”,”Wigi
Pranata”,”Sutrsno”,”Niko”,”Mhd Hardiansyah”,”Peter Simanjuntak”,yang
telah memberi dorongan kepada saya
Medan, Agustus 2016
Penulis,
FACHRUL ROZI PRATAMA
1210000077
iii
DAFTAR ISI
ABSTRAK
KATA PENGANTAR ...................................................................................
i
DAFTAR ISI ...................................................................................................
iv
DAFTAR GAMBAR .....................................................................................
vii
DAFTAR TABEL...........................................................................................
viii
DAFTAR LAMPIRAN .................................................................................
ix
BAB I
PENDAHULUAN
I.1.
Latar Belakang .................................................................
1
I.2.
Ruang Lingkup Permasalahan ..........................................
3
1.2.1. Identifikasi Masalah .................................................
3
1.2.2. Perumusan Masalah .................................................
3
1.2.3. Batasan Masalah ......................................................
4
Tujuan Dan Manfaat ........................................................
4
1.3.1. Tujuan ...................................................... ...............
4
1.3.2. Manfaat .................................................... ...............
4
I.4.
Metodologi Penelitian .......................................................
5
I.5
Keaslian Penelitian .............................................................
6
I.6
Sistematika Penulisan.........................................................
7
I.3.
BAB II
TINJAUAN PUSTAKA
II.1.
Aplikasi .............................................................................
9
II.1.1. Data .........................................................................
9
II.1.2. Keamanan ...............................................................
10
II.1.3. Definisi Keamanan Data..........................................
10
iv
II.2.
Sistem ................................................................................
11
II.2.1. Elemen Sistem .........................................................
11
Kriptografi .........................................................................
13
II.3.1. Sistem Kriptografi ..................................................
14
II.3.2. Karakteristik Sistem Kriptografi .............................
15
II.4.
Algoritma Gronsfeld Cipher ............................................
16
II.5.
Algoritma Vernam Cipher..................................................
18
II.6.
Microsoft Visual Basic 2010 .............................................
20
II.7.
Basis Data...........................................................................
21
II.8.
Database MySQL ..............................................................
23
II.8.1. Perintah-Perintah MySQL ........................................
24
Unified Modeling Language (UML) .................................
25
II.10. Entity Relationship Diagram .............................................
31
II.3
II.9.
BAB III
ANALISA DAN DESAIN SISTEM
III.1. Analisis Sistem Yang Berjalan ..........................................
32
III.1.1. Analisa Input .......................................................
32
III.1.2. Analisa Proses ......................................................
33
III.1.3. Analisa Output ....................................................
34
III.2.
Strategi Pemecahan Masalah .............................................
34
III.3.
Penerapan Metode .............................................................
34
III.4.
Evaluasi Sistem Yang Berjalan .........................................
36
III.5.
Desain Sistem ....................................................................
37
III.5.1. Desain Sistem Secara Global ...............................
37
v
III.6.
BAB IV
BAB V
III.5.1.1. Use Case Diagram ..................................
37
III.5.1.2 Sequence Diagram ...................................
38
III.5.1.3 Activity Diagram Penyandian ..................
39
Desain Sistem Secara Detail ............................................
40
III.6.1. Desain Input ........................................................
40
III.6.2. Desain Output ......................................................
41
HASIL DAN PEMBAHASAN
IV.1. Tampilan Hasil ..................................................................
43
IV.2. Pembahasan .......................................................................
46
IV.2.1. Uji Coba Program ..................................................
47
IV.2.2. Hasil Uji Coba........................................................
48
IV.3. Kelebihan dan Kekurangan Sistem .......................................
48
IV.3.1. Kelebihan Sistem ...................................................
48
IV.3.2. Kekurangan Sistem ................................................
49
KESIMPULAN DAN SARAN
V.1.
Kesimpulan .......................................................................
50
V.2.
Saran ..................................................................................
50
DAFTAR PUSTAKA
LAMPIRAN
vi
DAFTAR GAMBAR
Gambar III.1. Proses Penyandian Data Di Dalam Database MySQL
Menggunakan Metode Vernam Cipher Dan Gronsfeld
Cipher ....................................................................................
33
Gambar III.2. Use Case Aplikasi Pembelajaran Penyandian Data Di Dalam
Database MySQL Menggunakan Metode Vernam Cipher Dan
Gronsfeld Cipher ...................................................................
38
Gambar III.3. Sequence Diagram Penyandian ..............................................
39
Gambar III.4. Activity Diagram Penyandian .................................................
40
Gambar III.5. Rancangan Form Penyandian .................................................
41
Gambar III.6. Rancangan Output Form Penyandian.....................................
42
Gambar IV.1. Tampilan Form Login ............................................................
43
Gambar IV.2. Tampilan Form Penyandian ...................................................
44
Gambar IV.3
Tampilan Form Penjelasan .....................................................
45
Gambar IV.4
Tampilan Form Biodata .........................................................
46
vii
DAFTAR TABEL
Tabel I.1.
Keaslian Penelitian ...................................................................
6
Tabel II.1.
Simbol Use Case ......................................................................
26
Tabel II.2.
Simbol Activity Diagram..........................................................
28
Tabel II.3.
Simbol Sequence Diagram .......................................................
29
Tabel II.4.
Multiplicity Class Diagram ......................................................
30
Tabel II.5.
Simbol Yang Digunakan Pada Entity Relationship
Diagram (ERD) .......................................................................
Tabel III.1.
Input Penyandian Data Di Dalam Database MySQL Menggunakan
Metode Vernam Cipher Dan Gronsfeld Cipher ......................
Tabel III.2.
31
33
Output Penyandian Data Di Dalam Database MySQL
Menggunakan Metode Vernam Cipher Dan Gronsfeld
Tabel IV.1.
Cipher ......................................................................................
34
Blackbox Testing ......................................................................
47
viii
DAFTAR LAMPIRAN
Lampiran-1 Listing Program
Lampiran-2 Surat Pengajuan Judul Skripsi
Lampiran-3 Formulir Pendaftaran Judul Skripsi
Lampiran-4 Surat Pernyataan Bersedia Membimbing I
Lampiran-5 Surat Pernyataan Bersedia Membimbing II
ix
BAB I
PENDAHULUAN
BAB I
PENDAHULUAN
I.1. Latar Belakang
Pentingnya sebuah informasi dalam kehidupan membuat orang-orang
berlomba-lomba dan hantusias untuk mendapatkan informasi lebih dahulu dari
orang lain, karena dengan adanya informasi yang penting mereka dapat mengolah
data sehingga menjadi informasi yang baru. Dengan adanya informasi yang baru
orang-orang dapat menghasilkan uang yang banyak. Pada zaman sekarang ini
penggunaan teknologi komputer sudah berkembang menjadi sangat pesat,
sehingga informasi banyak disimpan dan diolah melalui teknologi komputer.
Penggunaan komputer untuk mengelola informasi sudah dipakai di kalangan
dunia bisnis, pelajar dan lain sebagainya. Informasi yang telah diolah biasanya
menjadi sebuah data yang sangat rahasia, kebanyakan orang menyimpan data-data
pribadi mereka dan merahasiakan dari umum ke dalam sebuah komputer yang
biasa disebut database. Di dunia bisnis kebanyakan di perusahaannya
menggunakan database MySQL sebagai aplikasi untuk menyimpan data-data
perusahaan, karena database MySQL mampu menampung data dalam jumlah
yang besar dan kegunaannya yang mudah. Untuk itu menjaga keamanan data
menjadi sangat penting bagi mereka. Banyaknya pencuri informasi dan perusak
data membuat kalangan pembisnis merasa risau, karena dengan jatuhnya
informasi ketangan mereka, bisnis mereka akan berjalan menjadi tidak baik
1
2
karena informasi tersebut dapat diolah ataupun dirusak oleh para pencuri data
tersebut. (Anisa, 2013).
Perlu adanya keamanan data di dalam komputer terutama database agar
rahasia informasi mereka tetap terjaga. Untuk itu penulis merekomendasikan
sebuah sistem pengamanan data pada database MySQL. Pada sistem ini isi data di
dalam database dapat disandikan, sehingga tidak dapat terbaca oleh pencuri
informasi. Namun di dalam penerapannya dibutuhkannya metode untuk
menyelesaikan
masalah
di
dalam
keamanan
data.
Untuk
itu
penulis
merekomendasikan dua metode yaitu metode vernam cipher dan metode
gronsfeld cipher agar keamanan datanya lebih terjaga. Metode vernam cipher atau
biasa dikenal dengan sebutan one time pad (OTP) merupakan algoritma berjenis
symmetric 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 hasil 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. (M. Sholeh dan J.V. Hamokwarong, 2011). Metode Gronsfeld
adalah satu cipher subsitusi sederhana polyalphabetic. Gaspar Schot adalah
seorang kriptografer abad ke 17 di Jerman, yang belajar cipher ini selama
perjalanan antara Mainz dan Frankfurt dengan menghitung Gronsfeld, maka
terciptalah nama dari chipper tersebut yaitu gronsfeld. System gronsfeld
menggunakan suatu kunci numeric yang biasanya cukup pendek misalnya 7341,
kunci ini diulang secara periodic, sesuai dengan jumlah kata plaintext. (Aznuddin,
3
2013). Dengan latar belakang diatas maka
penulis mengambil
judul
“Pembelajaran Penyandian Data Di Dalam Database MySQL Menggunakan
Metode Vernam Cipher Dan Gronsfeld Cipher”.
I.2.
Ruang lingkup Permasalahan
Adapun beberapa tahap yang dilakukan dalam membuat ruang lingkup
permasalahan adalah :
I.2.1. Identifikasi Masalah
Dengan mengetahui latar belakang pemilihan judul di atas, maka
indentifikasi masalah dari penulis untuk skripsi ini adalah:
1.
Diperlukan sebuah keamanan isi database MySQL.
2.
Diperlukan sebuah metode untuk penyandian database MySQL.
3.
Diperlukan sebuah perangkat lunak untuk menyandikan data di dalam
database MySQL.
I.2.2. Perumusan Masalah
Perumusan masalah yang terdapat pada penelitian ini yaitu:
1.
Bagaimana tampilan antarmuka aplikasi penyandian data di dalam database
MySQL menggunakan metode vernam cipher dan gronsfeld cipher?
2.
Bagaimana metode vernam cipher dan gronsfeld cipher dapat menyandikan
isi database MySQL?
3.
Bagaimana menerapkan aplikasi penyandian data di dalam database MySQL
menggunakan metode vernam cipher dan gronsfeld cipher di komputer?
4
I.2.3. Batasan Masalah
Disebabkan banyaknya permasalahan dan waktu yang terbatas, maka agar
pembahasan masalah tidak melebar penulis membatasi masalah sebagai berikut:
1.
Aplikasi hanya untuk menyandikan isi database MySQL.
2.
Aplikasi tidak dapat menyandikan isi database yang bertipe data angka.
3.
Input aplikasi ini berupa teks untuk disandikan.
4.
Output aplikasi ini berupa teks yang tersandikan.
5.
Perancangan dan pembuatan Aplikasi ini menggunakan bahasa Microsoft
Visual Basic 2010.
I.3.
Tujuan Dan Manfaat
1.3.1 Tujuan
1.
Untuk menghasilkan sebuah perangkat lunak yang dapat menyandikan isi
database MySQL.
2.
Untuk mengetahui dan memahami cara kerja dari Metode Vernam Cipher
dan Gronsfeld Cipher di dalam penyandian isi database MySQL..
3.
Untuk membantu user dalam menyandikan isi database MySQL.
1.3.2 Manfaat
1.
2.
Mengatasi masalah penyandian isi database MySQL.
Penulis dapat lebih memahami penggunaan metode vernam cipher dan
gronsfeld cipher.
3.
Penulis mendapat wawasan dalam pembuatan aplikasi komputer.
5
I.4.
Metodologi Penelitian
Metode merupakan suatu cara yang sistematik untuk mengerjakan suatu
permasalahan.
Untuk
itu
penulis
menggunakan
beberapa
cara
untuk
memperolehnya, diantaranya :
1. Pengumpulan Data
Pada tahap ini dilakukan dengan mempelajari teori dasar yang mendukung
penelitian, pencarian dan pengumpulan data-data yang dibutuhkan. Untuk
mengumpulkan data yang dibutuhkan, maka penulis memakai teknik :
a. Pengamatan Langsung (Observation)
Melakukan pengamatan secara langsung ke tempat objek pembahasan
yang ingin diperoleh yaitu bagian-bagian terpenting dalam pengambilan
data yang diperlukan berkaitan tentang database MySQL.
b. Wawancara (Interview)
Teknik ini secara langsung bertatap muka dengan pihak bersangkutan
untuk mendapatkan penjelasan dari masalah-masalah yang sebelumnya
kurang jelas yaitu tentang mekanisme sistem yang digunakan pada
perusahaan dan juga untuk meyakinkan bahwa data yang diperoleh
dikumpulkan benar-benar akurat.
c. Sampling
Meneliti dan memilih data - data yang tersedia dan sesuai dengan bidang
yang dipilih sebagai berkas lampiran.
6
2. Penelitian perpustakaan (Library Research)
Pada metode ini penulis mengutip dari beberapa bacaan yang berkaitan
dengan pelaksanaan skripsi yang dikutip dapat berupa teori ataupun beberapa
pendapat dari beberapa buku bacaan. Ini dimaksudkan untuk memberikan
landasan teori yang kuat melalui buku-buku yang tersedia diperpustakaan,
yang berhubungan dengan penulisan Laporan Skripsi ini.
I.5. Keaslian Penelitian
Berikut adalah tabel keaslian penelitian, penelitian mengenai pembelajaran
penyandian data di dalam database MySQL menggunakan metode vernam cipher
dan gronsfeld cipher.
Tabel I.1. Keaslian Penelitian
No
Nama / Tahun
1.
Azanuddin,
2013
2.
M. Sholeh Dan
J.V.
Hamokwarong,
2011
3.
4.
Judul
Hasil Penelitian
Penyandian Short
Message Service
(SMS) Pada Telepon
Selular Dengan
Menggunakan
Algoritma Gronsfeld
Dengan menerapkan algoritma
gronsfeld dalam penyandian SMS,
maka dapat mencegah dari
ancaman penyadapan dan
pencurian SMS karena SMS yang
dikirim bukan berupa SMS yang
asli melainkan berupa chiperteks,
sehingga akan sulit untuk
dimengerti penyerang.
Aplikasi ini menggunakan dua
metode enkripsi dan dekripsi agar
lebih aman dan terjamin
kerahasiaan data.
Aplikasi Kriptografi
Dengan Metode
Vernam Cipher Dan
Metode Permutasi
Biner
Aman Julianto Aplikasi Penyandian
Pakpahan, 2013 Data Dengan
Menggunakan
Algoritma Noekeon
Fachrul Rozi
Pembelajaran
Pratama, 2016
Penyandian Data Di
Dalam Database
MySQL
Perangkat lunakyang dihasilkan
diharapkan dapat menambah
perbendaharaan aplikasi
kriptografi
Aplikasi ini menggunakan dua
metode yang disatukan untuk
menciptakan keamanan yang
lebih dari satu metode.
7
Menggunakan
Metode Vernam
Cipher Dan
Gronsfeld Cipher
I.6. Sistematika Penulisan
Adapun sistematika penulisan yang diajukan dalam tugas akhir ini adalah
sebagai berikut :
BAB I
:
PENDAHULUAN
Pada bab ini menerangkan tentang latar belakang, ruang lingkup
permasalahan, tujuan dan manfaat, metode penelitian dan
sistematika penulisan.
BAB II
:
TINJAUAN PUSTAKA
Pada bab ini menerangkan teori dasar yang berhubungan dengan
program yang dirancang serta bahasa pemrograman yang
digunakan.
BAB III
:
ANALISA DAN DESAIN SISTEM
Pada bab ini mengemukakan analisa masalah program yang akan
dirancang dan rancangan program yang digunakan pada penulisan
Skripsi ini.
BAB IV
:
HASIL DAN PEMBAHASAN
Pada bab ini mengemukakan tentang hasil implementasi sstem
yang dirancang mencakup uji coba sistem, tampilan serta
8
perangkat yang dibutuhkan. Analisa sistem dirancang untuk
mengetahui kelebihan dan kekurangan sistem yang dibuat.
BAB V
:
KESIMPULAN DAN SARAN
Dalam bab ini berisikan berbagai kesimpulan yang dapat dibuat
berdasarkan uraian yang telah disimpulkan, serta saran kepada
perusahaan.
BAB II
TINJAUAN PUSTAKA
BAB II
TINJAUAN PUSTAKA
II.1.
Aplikasi
Aplikasi merupakan rangkaian kegiatan atau perintah untuk dieksekusi
oleh komputer atau suatu perangkat lunak komputer yang memanfaatkan
kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan
pengguna. Beberapa aplikasi yang digabung bersama menjadi suatu paket kadang
disebut sebagai suatu paket atau suite aplikasi (application suite). Aplikasiaplikasi dalam suatu paket biasanya memiliki antar muka pengguna yang
memiliki kesamaan sehingga memudahkan pengguna untuk mempelajari dan
menggunakan tiap aplikasi. Sering kali, mereka memiliki kemampuan untuk
saling berinteraksi satu sama lain sehingga menguntungkan pengguna. (Ernita
Sitohang, 2013).
II.1.1. Data
Data dapat didefenisikan sebagai kenyataan yang digambarkan oleh nilai,
bilangan-bilangan, untaian karakter atau symbol-simbol yang membawa arti
tertentu. Informasi sendiri dapat didefenisikan sebagai hasil dari pengolahan data
dalam bentuk yang lebih berguna bagi penerimaanya, yang digunakan sebagai alat
bantu dalam pengambilan. (Ernita Sitohang, 2013).
9
10
II.1.2. Keamanan
Keamanan merupakan salah satu aspek terpenting dari sebuah system
informasi. Masalah keamanan sering kurang mendapatkan perhatian dari para
perancang dan pengelola sistem informasi. Masalah keamanan sering berada
diurutan setelah tampilan, atau bahkan diurutan terakhir dalam daftar hal-hal yang
dianggap penting. Keamanan adalah keadaan bebas dari bahaya. Istilah ini dapat
digunakan dengan hubungan kepada kejahatan, dan segala bentuk kecelakaan.
Keamanan merupakan topik yang luas termasuk keamanan nasional terhadap
serangan teroris, keamanan komputer terhadap hacker, keamanan rumah terhadap
maling dan penyelusup lainnya, keamanan financial terhadap kehancuran ekonomi
dan banyak situasi berhubungan lainnya. Host komputer yang terhubung ke
network, mempunyai ancaman keamanan lebih besar dari pada host yang tidak
berhubungan kemana-mana. Dengan mengendalikan network security resiko
tersebut dapat dikurangi. (Ernita Sitohang, 2013).
II.1.3. Definisi Keamanan Data
Keamanan data dan informasi terdiri dari perlindungan terhadap aspekaspek berikut :
1. Confidentiality (kerahasiaan) aspek yang menjamin kerahasiaan data atau
informasi, memastikan bahwa informasi hanya dapat diakses oleh orang yang
berwenang dan menjamin kerahasiaan data yang dikirim, diterima dan disimpan.
2. Integrity ( integritas) aspek yang menjamin bahwa data tidak dirubah tanpa ada
ijin pihak yang berwenang (authorized), menjaga keakuratan dan keutuhan
informasi serta metode prosesnya untuk menjamin aspek intefrity ini.
11
3. Availability (ketersediaan) aspek yang menjamin bahwa data akan tersedia saat
dibutuhkan, memastikan user yang berhak dapat menggunakan informasi dan
perangkat terkait (aset yang berhubungan bilamana diperlukan).
Keamanan data dan informasi diperoleh dengan mengimplementasi
seperangkat alat control yang layak, yang dapat berupa kebijakan-kebijakan,
praktek-praktek, prosedur-prosedur, struktur-stuktur organisasi dan piranti lunak.
(Ernita Sitohang, 2013).
II.2.
Sistem
Sistem adalah sekumpulan elemen yang saling terkait atau terpadu yang
dimaksudkan untuk mencapai suatu tujuan. Sebagai gambaran, jika dalam sebuah
sistem terdapat elemen yang tidak memberikan manfaat dalam mencapai tujuan
yang sama, maka elemen tersebut dapat dipastikan bukanlah bagian dari sistem.
(Abdul Kadir, 2014).
II.2.1. Elemen Sistem
Elemen – elemen yang membentuk sebuah sistem yaitu :
a. Tujuan
Setiap sistem memiliki tujuan (goal), entah hanya satu atau mungkin banyak.
Tujuan inilah yang menjadi pemotivasi yang mengarahkan sistem. Tanpa tujuan,
sistem menjadi tidak terarah dan tidak terkendali. Tentu saja, tujuan antara satu
sistem dengan sistem lain berbeda – beda. Begitu pula yang berlau pada sistem
informasi. Setiap sistem informasi memiliki suatu tujuan, tetapi denga tujuan yang
12
berbeda – beda. Walaupun begitu, tujuan utama yang umum ada tiga macam,
yaitu :
1. Untuk mendukung fungsi kepengurusan manajemen,
2. Untuk mendukung pengambilan keputusan manajemen,
3. Untuk mendukung kegiatan operasi perusahaan.
b. Masukan
Masukan (input) sistem adalah segala sesuatu yang masuk kedalam sistem dan
selanjutnya menjadi bahan untuk diproses. Masukan dapat berupa hal-hal
berwujud (tampak secara fisik) maupun yang tidak tampak. Contoh masukan yang
berwujud adalah bahan mentah, sedangkan contoh yang tidak berwujud adalah
informasi (misalnya permintaan jasa dari pelanggan). Pada sistem informasi,
masukan dapat berupa data transaksi, dan data non-transaksi (misalnya, surat
pemberitahuan), serta instruksi.
c. Proses
Proses merupakan bagian yang melakukan perubahan atau transformasi dari
masukan menjadi keluaran yang berguna, misalnya berupa informasi dan produk,
tetapi juga bias berupa hal – hal yang tidak berguna, misalnya saja sisa
pembuangan atau limbah. Pada pabrik kimia, proses dapat berupa pemanasan
bahan mentah. Pada rumah sakit, proses dapat berupa aktivitas pembedahan
pasien. Pada sistem informasi, proses dapat berupa suatu tindakan yang bermacam
– macam. Meringkas data, melakukan perhitungan, dan mengurutkan data
merupakan beberapa contoh proses.
13
d. Keluaran
Keluaran (output) merupakan hasi dari pemrosesan. Pada sistem informasi,
keluaran bias berupa suatu informasi, saran, cetakan laporan, dan sebagainya.
(Abdul Kadir, 2014).
II.3.
Kriptografi
Kriptografi pada awalnya dijabarkan sebagai ilmu yang mempelajari
bagaimana menyembunyikan pesan. Namun pada pengertian kriptografi modern
kriptografi adalah ilmu yang bersabdarkaan pada teknik matematika untuk
berurusan dengan keamanan informasi seperti kerahasiaan, keutuhan data dan
otentikasi entitas. Jadi pengertian kriptografi modern adalah tidak saja berurusan
hanya dengan penyembunyian pesan namun lebih pada sekumpulan teknik yang
menyediakan keamanan informasi. (Rifki Sadikin, 2012).
1.
Fungsi Hash
Fungsi hash adalah fungsi yang melakukan pemetaan pesan dengan panjang
sembarang ke sebuah teks khusus yang disebut message digest dengan panjang
tetap. Fungsi hash umumnya dipakai sebagai nilai uji (check value) pada
mekanisme keutuhan data. (Rifki Sadikin, 2012)
2.
Penyandian Dengan Kunci Simetrik
Penyandian dengan kunci simetrik adalah penyandian yang kunci enkripsi
dan kunci dekripsi bernialai sama. Kunci pada penyandian simetrik diasumsikan
bersifat rahasia hanya pihak yang melakukan enkripsi dan dekripsi yang
mengetahui nilainya. Oleh karena itu penyandian dengan kunci simetrik disebut
14
juga penyandian dengan kunci rahasia secret key encipherment. (Rifki Sadikin,
2012)
3.
Penyandian dengan kunci asimetrik
Penyandian dengan kunci asimetrik atau sering disebut juga dengan
penyandian kunci publik (public key) adalah penyandian dengan kunci enkripsi
dan dekripsi berbeda nilai. Kunci enkripsi yang juga disebut dengan kunci publik
(public key) bersifat terbuka. Sedangkan, kunci dekripsi yang juga disebut kunci
privat (private key) bersifat tertutup/ rahasia. (Rifki Sadikin, 2012).
II.3.1. Sistem Kriptografi
Sistem kriptografi terdiri dari 5 bagian yaitu :
1.
Plaintext
Pesan atau data dalam bentuk aslinya yang dapat terbaca. Plaintext adalah
masukan bagi algoritma enkripsi. (Rifki Sadikin, 2012).
2.
Secret Key
Secret key yang juga merupakan masukan bagi algoritma enkripsi
merupakan nilai yang bebas terhadap teks asli dan menentukan hasil keluaran
algoritma enkripsi. (Rifki Sadikin, 2012).
3.
Ciphertext
Ciphertexti adalah keluaran algoritma enkripsi. Ciphertext dapat dianggap
sebagai pesan dalam bentuk tersembunyi. Algoritma enkripsi yang baik akan
menghasilkan ciphertext yang terlihat acak. (Rifki Sadikin, 2012).
15
4.
Algoritma Enkripsi
Algortima enkripsi memiliki 2 masukan teks asli dan kunci rahasia.
Algoritma enkripsi melakukan transformasi terhadap teks asli sehingga
menghasilkan teks sandi. (Rifki Sadikin, 2012).
5.
Algoritma Dekripsi
Algoritma dekripsi memiliki 2 masukan yaitu teks sandi dan kunci rahasia.
Algoritma dekripsi memulihkan kembali teks sandi menjadi teks asli bila kunci
rahasia yang dipakai algoritma dekripsi sama dengankunci rahasia yang dipakai
algoritma enkripsi. (Rifki Sadikin, 2012).
II.3.2. Karakteristik Sistem Kriptografi
Sistem kriptografi dapat dikarakteristikan berdasarkan :
1.
Tipe Operasi Dipakai Dalam Enkripsi Dan Dekripsi
Dua tipe operasi yang dipakai dala enkripsi dan dekripsi : subsitusi, elemen
pada pesan (karakter, byte atau bit) ditukar/ disubsitusikan dengan elemen lain
dari ruang pesan. Misalnya subsitusi sederhana A ditukar B, B ditukar D, dan C
ditukar Z, pesan ”BACA” menjadi ”DBZB”. Tipe operasi lainnya adalah
transposisi, elemen pada pesan berpindah posisi misalnya posisi 1 menjadi posisi
4 dan posisi 2 menjadi posisi 3, posisi 3 menjadi posisi 1 dan posisi 4 menjadi
posisi 2, pesan ”KAMI” menjadi ”MAIK”. Sistem kriptografi modern mencakup
kedua tipe operasi ini. (Rifki Sadikin, 2012).
2.
Tipe Kunci Yang Dipakai
Umumnya sistem kriptografi klasik dan beberapa sistem kriptografi modern
menggunakan kunci yang sama pada sisi penyandi dan penyulih sandi. Sistem
16
kriptografi seperti ini disebut kriptografi dengan kunci simetri. Baru pada tahun
1976 sistem kriptografi yang memperbolehkan kunci yang tidak sama diusulkan
oleh Whitfield Deffie dan Martin Hellman, (Deffie & Hellman, 1976). Sistem
kriptografi ini disebut dengan kriptografi dengan kunci asimetri. (Rifki Sadikin,
2012).
3.
Tipe Pengolahan Pesan
Ketika melakukan penyandian pesan yang akan dienkripsi ataupun
didekripsi diolah pesatuan blok elemen disebut dengan block cipher. Cara lain
adalah dengan menganggap masukan untuk enkripsi dan dekripsi sebagai aliran
elemen secara terus menerus disebut dengan stream cipher. (Rifki Sadikin, 2012).
II.4. Algoritma Gronsfeld Cipher
Algoritma Gronsfeld adalah satu cipher subsitusi sederhana polyalphabetic.
Gaspar Schot adalah seorang kriptografer abad ke 17 di Jerman, yang belajar
cipher ini selama perjalanan antara Mainz dan Frankfurt dengan menghitung
Gronsfeld, maka terciptalah nama dari chipper tersebut yaitu gronsfeld. System
gronsfeld menggunakan suatu kunci numeric yang biasanya cukup pendek
misalnya 7341, kunci ini diulang secara periodic, sesuai dengan jumlah kata
plaintext. (Aznuddin, 2013).
Algoritma enkripsi Gronsfeld cipher :
Ci = ( Pi + Ki ) mod 256
Algoritma dekripsi Gronsfeld cipher :
Pi = ( Ci – Ki ) mod 256
17
Contoh Proses Enkripsi :
Plaintext
: GRO
Kunci
: 734
Solusi :
Ascii Plaintext :
G = 71
R = 82
O = 79
Key : 7,3,4
C1
= (G + k1) mod 256
= (71 + 7) mod 256
= 78 mod 256
= 78 = N
C2
= (R + k2) mod 256
= (82 + 3) mod 256
= 85 mod 256
= 85 = U
C3
= (O + k3) mod 256
= (79 + 4) mod 256
= 83 mod 256
= 83 = S
Chipertext : NUS
Contoh Proses Dekripsi :
18
C1
= (N - k1) mod 256
= (78 - 7) mod 256
= 71 mod 256
= 71 = G
C2
= (U - k2) mod 256
= (85 - 3) mod 256
= 83 mod 256
= 83 = R
C3
= (S - k3) mod 256
= (83 - 4) mod 256
= 79 mod 256
= 79 = O
Plaintext : GRO
II.5. Algoritma Vernam Cipher
Algoritma vernam cipher atau biasa dikenal dengan sebutan one time pad
(OTP) merupakan algoritma berjenis symmetric 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 hasil 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. (M. Sholeh dan J.V. Hamokwarong,
2011).
Algoritma enkripsi Vernam cipher :
19
Ci = ( Pi xor Ki ) mod 256
Algoritma dekripsi Vernam cipher :
Pi = ( Ci xor Ki ) mod 256
Contoh Proses Enkripsi :
Plaintext
: GRO
Kunci
: OSG
Solusi :
Ascii Plaintext :
G = 71
R = 82
O = 79
Key :
O = 79
S = 83
G = 71
C1
= (G xor k1) mod 256
= (71 xor 79) mod 256
= 8 mod 256
=8
C2
= (R xor k2) mod 256
= (82 xor 83) mod 256
= 1 mod 256
=1
20
C3
= (O xor k3) mod 256
= (79 xor 71) mod 256
= 8 mod 256
=8
Ascii Chipertext : 818
Contoh Proses Dekripsi :
C1
= (G xor k1) mod 256
= (8 xor 79) mod 256
= 71 mod 256
= 71 = G
C2
= (R xor k2) mod 256
= (1 xor 83) mod 256
= 82 mod 256
= 82 = R
C3
= (O xor k3) mod 256
= (8 xor 71) mod 256
= 79 mod 256
= 79 = O
Plaintext : GRO
II.6.
Microsoft Visual Basic 2010
Visual Basic 2010 merupakan salah satu bagian dari produk pemrograman
terbaru yang dikeluarkan oleh Microsoft, yaitu Microsoft Visual Studio 2010.
Visual Studio merupakan produk pemrograman andalan dari mocrosoft
21
corporation, dimana di dalamnya berisi beberapa jenis IDE pemrograman seperti
Visual Basic, Visual C++, Visual Web Developer, Visual C#, dan Visual F#.
Semua IDE pemrograman tersebut sudah mendukung penuh implementasi
.Net Framework terbaru, yaitu .Net Framework 4.0 yang merupakan
pengembangan dari .Net Framework 3.5. Adapun database standar yang
disertakan adalah Microfot SQL Server 2008 express.
Visual Basic 2010 merupakan versi perbaikan dan pengembangan dari
versi pendahulunya yaitu visual basic 2008. Beberapa pengembangan yang
terdapat di dalamnya antara lain dukungan terhadap library terbaru dari Microsoft,
yaitu .Net Framework 4.0, dukungan terhadap pengembangan aplikasi
menggunakan Microsoft SilverLight, dukungan terhaddap aplikasi berbasis cloud
computing, serta
perluasan dukungan terhadap
database-database, baik
standalone maupun database server. (Wahana Komputer, 2011).
II.7.
Basis Data
Basis data dapat didefenisikan sebagai koleksi dari data-data yang
terorganisasi sedemikian rupa sehingga data mudah disimpan dan dimanipulasi
(diperbarui, dicari, diolah dengan perhitungan-perhitungan tertentu, serta
dihapus). Secara teoritis, basis data tidak harus berurusan dengan komputer
(misalnya, catatan belanja hari ini yang dibuat oleh seorang ibu rumah tangga juga
merupakan basis data dalam bentuk yang sangat sederhana). (Adi Nugroho,
2011).
Untuk mengelola basis data diperlukan perangkat lunak yang disebut
Database Management System (DBMS). DBMS adalah perangkat lunak sistem
22
yang memungkinkan para pemakai membuat, memelihara, mengontrol dan
mengakses basis data dengan cara yang praktis dan efisien. DBMS dapat
digunakan untuk mengakomodasikan berbagai macam pemakai yang memiliki
kebutuhan akses yang berbeda-beda. (Abdul Kadir, 2014).
Umumnya DBMS menyediakan fitur-fitur sebagai berikut :

Independensi data-program
Karena basis data ditangani oleh DBMS, program dapat dipilih sehingga tidak
tergantung pada struktur data dalam basis data. Dengan perkataan lain,
program tidak akan terpenaruh sekiranya bentuk fisik data diubah.

Keamanan
Keamanan dimaksudkan untuk mencegah pengaksesan data oleh orang yang
tidak berwewenang.

Integritas
Hal ini ditujukan untuk menjaga agar data selalu dalam keadaan yang valid
dan konsisten.

Konkurensi
Konkurensi memungkinkan data dapat diakses oleh banyak pemakai tanpa
menimbulkan masalah.

Pemulihan (recovery)
DBMS menyediakan mekanisme untuk mengembalikan basis data ke keadaan
semula yang konsisten sekiranya terjadi gangguan perangkat keras atau
kegagalan perangkat lunak.
23

Katalog Sistem
Katalog Sistem adalah deskripsi tentang data yang terkandung dalam basis
data yang dapat diakses oleh pemakai.

Perangkat Produktivitas
Untuk menyediakan kemudahan bagi pemakai dan meningkatkan
produktivitas, DBMS menyediakan sejumlah perangkat produktivitas seperti
pembangkit query dan pembangkit laporan.
II.8.
Database MySQL
Database MySQL merupakan aplikasi yang bersifat daemon atau menetap
dalam memori yang berjalan bersama dengan sistem operasi Microsoft Windows.
Interface utama MySQL database server adalah command line atau berbasis DOS
sehingga diperlukan pengetahuan khusus mengenai penggunaan perintah atau
commandi dalam command shell MySQL. (Wahana Komputer, 2011).
Menurut Anisya (2013) MySQL (biasa dibaca dengan mai-es-ki-el atau
bisa juga mai-se-kuel) adalah suatu perangkat lunak database relasi (Relational
Database
Management
System
atau DBMS), seperti
halnya
ORACLE,
POSTGRESQL, MSSQL, dan lain sebagainya. SQL merupakan singkatan dari
Structure Query Language, didefenisikan sebagai suatu sintaks perintah – perintah
tertentu atau bahasa program yang digunakan untuk mengelola suatu database.
Jadi MySQL adalah softwarenya dan SQL adalah bahasa perintahnya.
24
II.8.1. Perintah-Perintah MySQL
Query dikirimkan ke database dalam bentuk SQL Query. (Anisya, 2013).
Beberapa perintah yang umum digunakan adalah sebagai berkut:
a. CREATE : Untuk membuat tabel baru
CREATE TABLE <NAMA TABLE>
(<NAMA KOLOM> <TIPE>,
<NAMA KOLOM> <TIPE>,
.........
PRIMARY KEY (<NAMA KOLOM>)
FOREIGN KEY (<NAMA KOLOM>)
REFERENCES <NAMA_TABLE>
(<NAMA KOLOM>)
b. SELECT : Untuk mengambil record dari database yang memenuhi kriteria
tertentu.
SELECT <NAMA KOLOM>,
<NAMA KOLOM>,
...
FROM <NAMA TABEL>
WHERE <KONDISI>
c. INSERT : Untuk menambah record ke dalam suatu tabel
INSERT INTO <NAMA TABEL>
(<NAMA KOLOM>,
<NAMA KOLOM> )
25
VALUES (<NILAI KOLOM>, <NILAI KOLOM>, . . .)
d. UPDATE : Untuk merubah isi record tertentu pada suatu tabel
UPDATE <NAMA TABEL>
SET (<NAMA KOLOM> = <NILAI
KOLOM>,<NAMA KOLOM> = <NILAI
KOLOM>, . . . )
WHERE <KONDISI>
e. DELETE : Untuk menghapus record pada suatu tabel
DELETE FROM <NAMA TABEL>
WHERE <KONDISI>
f. DROP : Untuk menghapus sebuah tabel
DROP <NAMA TABEL>
II.9.
Unified Modeling Language (UML)
Menurut
Windu
Gata
(2013)
Hasil
pemodelan
pada
OOAD
terdokumentasikan dalam bentuk Unified Modeling Language (UML). UML
adalah bahasa spesifikasi standar yang dipergunakan untuk mendokumentasikan,
menspesifikasikan dan membangun perangkat lunak.
UML merupakan metodologi dalam mengembangkan sistem berorientasi
objek dan juga merupakan alat untuk mendukung pengembangan sistem. UML
saat ini sangat banyak dipergunakan dalam dunia industri yang merupakan standar
bahasa pemodelan umum dalam industri perangkat lunak dan pengembangan
sistem. (Gellysa Urva dan Helmi Fauzi Siregar, 2015).
26
Alat bantu yang digunakan dalam perancangan berorientasi objek
berbasiskan UML adalah sebagai berikut :
1.
Use case Diagram
Use case diagram merupakan pemodelan untuk kelakukan (behavior) sistem
informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara
satu atau lebih aktor dengan sistem informasi yang akan dibuat. Dapat dikatakan
use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sistem
informasi dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut.
Simbol-simbol yang digunakan dalam use case diagram dapat dilihat pada tabel
II.2 dibawah ini :
Tabel II.2. Simbol Use Case
Gambar
Keterangan
Use case menggambarkan fungsionalitas yang
disediakan sistem sebagai unit-unit yang bertukar
pesan antar unit dengan aktor, biasanya dinyatakan
dengan menggunakan kata kerja di awal nama use
case.
Aktor adalah abstraction dari orang atau sistem yang
lain yang mengaktifkan fungsi dari target sistem.
Untuk mengidentifikasikan aktor, harus ditentukan
pembagian tenaga kerja dan tugas-tugas yang
berkaitan dengan peran pada konteks target sistem.
Orang atau sistem bisa muncul dalam beberapa
27
peran. Perlu dicatat bahwa aktor berinteraksi dengan
use case, tetapi tidak memiliki control terhadap use
case.
Asosiasi antara aktor dan use case, digambarkan
dengan garis tanpa panah yang mengindikasikan
siapa atau apa yang meminta interaksi secara
langsung dan bukannya mengidikasikan aliran data.
Asosiasi
antara
aktor
dan
use
case
yang
menggunakan panah terbuka untuk mengidinkasikan
bila aktor berinteraksi secara pasif dengan sistem.
Include, merupakan di dalam use case lain (required)
atau pemanggilan use case oleh use case lain,
contohnya
adalah
pemanggilan
sebuah
fungsi
program.
Extend, merupakan perluasan dari use case lain jika
kondisi atau syarat terpenuhi.
(Sumber : Gellysa Urva dan Helmi Fauzi Siregar; 2015)
2.
Diagram Aktivitas (Activity Diagram)
Activity Diagram menggambarkan workflow (aliran kerja) atau aktivitas dari
sebuah sistem atau proses bisnis. Simbol-simbol yang digunakan dalam activity
diagram dapat dilihat pada tabel II.2 dibawah ini :
28
Tabel II.3. Simbol Activity Diagram
Gambar
Keterangan
Start point, diletakkan pada pojok kiri atas dan
merupakan awal aktifitas.
End point, akhir aktifitas.
Activites, menggambarkan suatu proses/kegiatan
bisnis.
Fork (Percabangan), digunakan untuk menunjukkan
kegiatan yang dilakukan secara parallel atau untuk
menggabungkan dua kegiatan pararel menjadi satu.
Join (penggabungan) atau rake, digunakan untuk
menunjukkan adanya dekomposisi.
Decision Points, menggambarkan pilihan untuk
pengambilan keputusan, true, false.
Swimlane,
pembagian
activity
diagram
New Swimline
menunjukkan siapa melakukan apa.
(Sumber : Gellysa Urva dan Helmi Fauzi Siregar; 2015)
untuk
29
3.
Diagram Urutan (Sequence Diagram)
Sequence diagram menggambarkan kelakuan objek pada use case dengan
mendeskripsikan waktu hidup objek dan pesan yang dikirimkan dan diterima antar
objek. Simbol-simbol yang digunakan dalam sequence diagram dapat dilihat pada
tabel II.4 dibawah ini :
Tabel II.4. Simbol Sequence Diagram
Gambar
Keterangan
Entity Class, merupakan bagian dari sistem yang
berisi kumpulan kelas berupa entitas-entitas yang
membentuk gambaran awal sistem dan menjadi
landasan untuk menyusun basis data.
Boundary Class, berisi kumpulan kelas yang menjadi
interface atau interaksi antara satu atau lebih aktor
dengan sistem, seperti tampilan formentry dan form
cetak.
Control class, suatu objek yang berisi logika aplikasi
yang tidak memiliki tanggung jawab kepada entitas,
contohnya adalah kalkulasi dan aturan bisnis yang
melibatkan berbagai objek.
Message, simbol mengirim pesan antar class.
Recursive, menggambarkan pengiriman pesan yang
dikirim untuk dirinya sendiri.
30
Activation, activation mewakili sebuah eksekusi
operasi dari objek, panjang kotak ini berbanding
lurus dengan durasi aktivitas sebuah operasi.
Lifeline, garis titik-titik yang terhubung dengan
objek, sepanjang lifeline terdapat activation.
(Sumber : Gellysa Urva dan Helmi Fauzi Siregar; 2015)
4.
Class Diagram (Diagram Kelas)
Merupakan hubungan antar kelas dan penjelasan detail tiap-tiap kelas di dalam
model desain dari suatu sistem, juga memperlihatkan aturan-aturan dan tanggng
jawab entitas yang menentukan perilaku sistem.
Class diagram juga menunjukkan atribut-atribut dan operasi-operasi dari sebuah
kelas dan constraint yang berhubungan dengan objek yang dikoneksikan. Class
diagram secara khas meliputi: Kelas (Class), Relasi, Associations, Generalization
dan Aggregation, Atribut (Attributes), Operasi (Operations/Method), Visibility,
tingkat akses objek eksternal kepada suatu operasi atau atribut.
Hubungan antar kelas mempunyai keterangan yang disebut dengan
multiplicity atau kardinaliti yang dapat dilihat pada tabel II.5 dibawah ini :
Tabel II.5. Multiplicity Class Diagram
Multiplicity
Penjelasan
1
Satu dan hanya satu
0..*
Boleh tidak ada atau 1 atau lebih
1..*
1 atau lebih
0..1
Boleh tidak ada, maksimal 1
31
n..n
Batasan antara. Contoh 2..4 mempunyai arti
minimal 2 maksimum 4
(Sumber : Gellysa Urva dan Helmi Fauzi Siregar; 2015)
II.10. Entity Relationship Diagram
Entity Relationship Diagram (ERD) adalah bagian yang menunjukkan
hubungan antara entity yang ada dalam sistem. Simbol-simbol yang digunakan
dapat dilihat dari tabel II.6. (Yuhendra, M.T, Dr. Eng dan Riza Eko Yulianto,
2015).
Tabel II.6. Simbol Yang Digunakan Pada Entity Relationship Diagram
(ERD)
SIMBOL
KETERANGAN
Entity
Atribut Dan Entity
Atribut Dan Entity Dengan Key (Kunci)
Relasi Atau Aktifitas Antar Entity
Hubungan Satu Dan Pasti
Hubungan Banyak Dan Pasti
Hubungan Satu Tapi Tidak Pasti
Hubungan Banyak Tapi Tidak Pasti
(Sumber : Yuhendra, M.T, Dr. Eng dan Riza Eko Yulianto; 2015)
BAB III
ANALISIS DAN DESAIN SISTEM
BAB III
ANALISA DAN DESAIN SISTEM
III.1. Analisis Sistem Yang Berjalan
Penggunaan komputer untuk mengelola informasi sudah dipakai di
kalangan dunia bisnis, pelajar dan lain sebagainya. Informasi yang telah diolah
biasanya menjadi sebuah data yang sangat rahasia, kebanyakan orang menyimpan
data-data pribadi mereka dan merahasiakan dari umum ke dalam sebuah komputer
yang biasa disebut database. Di dunia bisnis kebanyakan di perusahaannya
menggunakan database MySQL sebagai aplikasi untuk menyimpan data-data
perusahaan, karena database MySQL mampu menampung data dalam jumlah
yang besar dan kegunaannya yang mudah. Untuk itu menjaga keamanan data
menjadi sangat penting bagi mereka. Banyaknya pencuri informasi dan perusak
data membuat kalangan pembisnis merasa risau, karena dengan jatuhnya
informasi ketangan mereka, bisnis mereka akan berjalan menjadi tidak baik
karena informasi tersebut dapat diolah ataupun dirusak oleh para pencuri data
tersebut
III.1.1. Analisa Input
Input data pada aplikasi penyandian data di dalam database MySQL
menggunakan metode vernam cipher dan gronsfeld cipher adalah berupa teks
yang asli dari database. Adapun inputan yang diperlukan dapat dilihat pada tabel
III.1.
32
33
Tabel III.1. Input Penyandian Data Di Dalam Database MySQL
Menggunakan Metode Vernam Cipher Dan Gronsfeld Cipher
No.
1.
2.
Teks Asli
Rozi
123
Kunci
332
Oke
III.1.2. Analisa Proses
Berdasarkan sistem yang sedang berjalan, tahapan-tahapan proses
penyandian data di dalam database MySQL menggunakan metode vernam cipher
dan gronsfeld cipher adalah sebagai berikut :
Enkripsi
Dekripsi
Teks Sandi
Mulai
Teks Asli
Input Teks Asli
Dan Kunci
Teks Sandi
Teks Sandi
Input Teks Sandi
Dan Kunci
Teks Asli
Gambar III.1. Proses Penyandian Data Di Dalam Database MySQL
Menggunakan Metode Vernam Cipher Dan Gronsfeld Cipher
34
III.1.3. Analisa Output
Hasil output pada aplikasi penyandian data di dalam database MySQL
menggunakan metode vernam cipher dan gronsfeld cipher adalah berupa isi teks
database yang telah di sandikan. Adapun inputan yang diperlukan dapat dilihat
pada tabel III.3.
Tabel III.3. Output Penyandian Data Di Dalam Database MySQL
Menggunakan Metode Vernam Cipher Dan Gronsfeld Cipher
No.
1.
2.
Teks Asli
Rozi
123
Kunci
332
Oke
Teks Sandi
ZERt
DfDs
III.2. Strategi Pemecahan Masalah
III.3. Penerapan Metode
Untuk dapat membuktikan keamanan aplikasi penyandian data di dalam
database MySQL menggunakan metode vernam cipher dan gronsfeld cipher,
maka diperlukan sebuah perhitungan manual. Adapun perhitungan manual metode
vernam cipher dan gronsfeld cipher adalah sebagai berikut :
Algoritma enkripsi Gronsfeld cipher :
Ci = ( Pi + Ki ) mod 256
Algoritma dekripsi Gronsfeld cipher :
Pi = ( Ci – Ki ) mod 256
Contoh Proses Enkripsi :
Plaintext
: GRO
Kunci
: 734
35
Solusi :
Ascii Plaintext :
G = 71
R = 82
O = 79
Key : 7,3,4
C1
= (G + k1) mod 256
= (71 + 7) mod 256
= 78 mod 256
= 78 = N
C2
= (R + k2) mod 256
= (82 + 3) mod 256
= 85 mod 256
= 85 = U
C3
= (O + k3) mod 256
= (79 + 4) mod 256
= 83 mod 256
= 83 = S
Chipertext : NUS
Contoh Proses Dekripsi :
C1
= (N - k1) mod 256
= (78 - 7) mod 256
= 71 mod 256
36
= 71 = G
C2
= (U - k2) mod 256
= (85 - 3) mod 256
= 83 mod 256
= 83 = R
C3
= (S - k3) mod 256
= (83 - 4) mod 256
= 79 mod 256
= 79 = O
Plaintext : GRO
III.4. Evaluasi Sistem Yang Berjalan
Berdasarkan analisa terhadap input, proses dan output pada aplikasi
penyandian data di dalam database MySQL menggunakan metode vernam cipher
dan gronsfeld cipher yang sedang berjalan, penulis menemukan beberapa
kelemahan antara lain sebagai berikut :
1.
Diperlukan sebuah keamanan isi database MySQL.
2.
Diperlukan sebuah metode untuk penyandian database MySQL.
3.
Diperlukan sebuah perangkat lunak untuk menyandikan data di dalam
database MySQL.
Untuk menangani kelemahan-kelemahan sistem yang ada salah satu solusi
yang ditawarkan adalah dengan merancang aplikasi penyandian data di dalam
database MySQL menggunakan metode vernam cipher dan gronsfeld cipher.
37
III.5. Desain Sistem
III.5.1. Desain Sistem Secara Global
Desain sistem atau perancangan sistem adalah proses pengembangan
spesifikasi baru berdasarkan hasil rekomendasi analisis sistem. Dalam tahap
perancangan, diharuskan merancang spesifikasi yang dibutuhkan.
Bentuk rancangan sistem yang penulis buat menggunakan beberapa bentuk
diagram dari UML (Unified Modeling Language) yaitu Use Cace Diagram, Class
Diagram dan Activity Diagram.
III.5.1.1. Use Case Diagram
Perancangan dimulai dari identifikasi aktor dan bagaimana hubungan
antara aktor dan use case didalam sistem. Perancangan Use Case Diagram dapat
dilihat pada gambar III.2.
38
Aplikasi Pembelajaran Penyandian Data Di Dalam Database MySQL
Menggunakan Metode Vernam Cipher Dan Gronsfeld Cipher
Pesan Asli
Kunci
Proses
Pesan Rahasia
Penjualan
Enkrip
Pesan Rahasia
Kunci
Proses
Pesan Asli
Penjualan
Dekrip
Gambar III.2. Use Case Aplikasi Pembelajaran Penyandian Data Di Dalam
Database MySQL Menggunakan Metode Vernam Cipher Dan Gronsfeld
Cipher
III.5.1.2. Sequence Diagram
Rangkaian kegiatan pada setiap terjadi event sistem digambarkan pada
sequence diagram berikut:
1.
Sequence Diagram Penyandian
Serangkaian kerja melakukan penyandian dapat terlihat seperti pada gambar
III.5 berikut :
39
User
Sistem
Enkrip Pesan
Tidak
Ya
Tulis Pesan Asli
Tulis Kunci
Kunci Sukses
Klik Enkrip
Pesan Tersandikan
Dekrip Pesan
Tidak
Ya
Input Pesan Sandi
Tulis Kunci
Kunci Sukses
Klik Dekrip
Tidak
Pesan Asli Terbuka
Gambar III.3. Sequence Diagram Penyandian
40
III.5.1.3. Activity Diagram Penyandian
Pada proses ini kita akan membuat alur dari system yang dirancang yaitu
activity diagram. Berikut adalah activity diagram sistem yang dirancang.
1. Activity Diagram Penyandian
Aktivitas yang dilakukan untuk melakukan penyandian dapat dilihat seperti
pada gambar III.4 berikut :
Admin
Form Penyandian
Proses
Sandi
Enkrip
Pesan Rahasia
Sandi
Dekrip
Berhasil
Pesan
Asli
Gambar III.4. Activity Diagram Penyandian
Hasil
41
III.6. Desain Sistem secara Detail
III.6.1. Desain Input
Perancangan Input merupakan masukan yang penulis rancang guna
lebih memudahkan dalam entry data.
Entry data yang dirancang akan lebih
mudah dan cepat dan meminimalisir kesalahan penulisan dan memudahkan
perubahan.
Perancangan Input tampilan yang dirancang adalah sebagai berikut :
1. Perancangan Form Penyandian
Perancangan Form Penyandian berfungsi untuk menyandikan isi database
MySQL. Adapun rancangan form login dapat dilihat pada gambar III.5. sebagai
berikut :
Buka Database
Primary
Tampilkan
Database
Nama Database
Nama Tabel
Pesan Asli
Pesan Rahasia
Kunci
Kunci
Enkrip
Gambar III.5. Rancangan Form Penyandian
Dekrip
42
III.6.2. Desain Output
Desain sistem ini berisikan pemilihan menu dan hasil pencarian yang
telah dilakukan. Adapun bentuk rancangan output dari aplikasi penyandian isi
database ini adalah sebagai berikut :
1. Rancangan Output Form Penyandian
Rancangan Output Form Penyandian berfungsi menampilkan form
penyandian. Adapun rancangan Output Form Penyandian dapat dilihat pada
Gambar III.6. sebagai berikut:
Buka Database
Primary
**********
Nama Database
*****
**********
Nama Tabel
*****
**********
Tampilkan
Database
*****
*****
*****
*****
*****
*****
Pesan Asli
*****
Pesan Rahasia
*****
Kunci
*****
Kunci
*****
Enkrip
Gambar III.6. Rancangan Output Form Penyandian
Dekrip
BAB IV
HASIL DAN PEMBAHASAN
BAB IV
HASIL DAN PEMBAHASAN
IV.1. Tampilan Hasil
Berikut ini akan dijelaskan tentang tampilan hasil dari perancangan
Aplikasi
Pembelajaran
Penyandian
Data
Di
Dalam
Database
MySQL
Menggunakan Metode Vernam Cipher Dan Gronsfeld Cipher dapat dilihat
sebagai berikut :
1.
Tampilan Form Menu Utama
Tampilan yang disajikan oleh sistem untuk menampilkan menu utama dapat
dilihat pada gambar IV.1.
Gambar IV.1. Tampilan Form Login
43
44
2.
Tampilan Form Penyandian
Tampilan yang disajikan oleh sistem untuk menampilkan form penyandian
dapat dilihat pada gambar IV.2.
Gambar IV.2. Tampilan Form Penyandian
45
3.
Tampilan Form Penjelasan
Tampilan yang disajikan oleh sistem untuk menampilkan form Penjelasan
dapat dilihat pada gambar IV.3.
Gambar IV.3. Tampilan Form Penjelasan
46
4.
Tampilan Form Biodata
Tampilan yang disajikan oleh sistem untuk menampilkan form Biodata
dapat dilihat pada gambar IV.4.
Gambar IV.4. Tampilan Form Biodata
IV.2.
1.
Pembahasan
Satu unit laptop atau PC dengan spesifikasi sebagai berikut :
a. Processor Core i3 / Core i2 / Core 2 duo
b. RAM minimal 2 Gb
c. Hardisk minimal 80 Gb
2. Perangkat Lunak dengan spesifikasi sebagai berikut :
a. Sistem Operasi Windows 7 / Windows Xp
b. Visual Studio 2010
47
c. Xampp
IV.2.1.
Uji Coba Program
Uji coba terhadap sistem bertujuan untuk memastikan bahwa sistem
sudah berada pada kondisi siap pakai. Instrumen yang digunakan untuk
melakukan pengujian ini yaitu dengan menggunakan Blackbox Testing :
Tabel. IV.1. Blackbox Testing
No
Form
Keterangan
Hasil
1
Form Penyandian, teks primary,
Sistem akan
Valid
teks nama database dan teks nama
menampilkan isi
tabel di isi.
tabel dari database
sesuai dengan
nama yang di isi
ke dalam
datagridview
2
Form Penyandian, teks pesan asli
Sistem
dan teks kunci di isi kemudian
menyandikan isi
klik enkrip
teks di dalam
Valid
database dan
gridview
3
Form Penyandian, teks pesan
Sistem membuka
rahasia dan teks kunci di isi
teks yang tersandi
kemudian klik dekrip
di dalam database
dan gridview
Valid
48
IV.2.2. Hasil Uji Coba
Setelah melakukan uji coba terhadap sistem, maka dapat disimpulkan
hasil yang didapatkan yaitu :
1.
Performance menjadi lebih menarik.
2.
Sistem dapat menyandikan sesuai dengan metode yang diterapkan.
3.
Sistem dapat memproses enkripsi dan dekripsi dengan cepat dan tepat.
4.
Hanya membutuhkan waktu beberapa detik dalam enkripsi dan deksripsi data.
5.
Antarmuka
yang
sederhana
dapat
mempermudah
pengguna
dalam
mempelajari sistem ini.
6.
Keamanan sistem cukup terjamin dari resiko peretasan dengan teknik yang
biasa dilakukan para peretasan.
IV.3. Kelebihan dan Kekurangan Sistem
Setiap sistem memiliki kelebihan dan kekurangan, berikut ini adalah
kelebihan dan kekurangan sistem yang telah dibuat.
IV.3.1. Kelebihan Sistem
Adapun kelebihan sistem yang telah dibuat diantaranya yaitu :
1.
Minimnya kesalahan yang terjadi dalam enkripsi dan dekripsi data. Dapat
mempermudah
dan
mempercepat
user/pengguna
dalam
melakukan
penyandian data sehingga tidak perlu lagi melakukan pemeriksaan data secara
berulang-ulang.
2.
Sistem keamanan pada aplikasi Pembelajaran Penyandian Data Di Dalam
Database MySQL Menggunakan Metode Vernam Cipher Dan Gronsfeld
49
Cipher yang telah dirancang akan memberi kenyamanan kepada pengguna
aplikasi dalam penyandian data.
3.
Memudahkan dalam penyandian data di dalam database MySQL.
IV.3.2. Kekurangan Sistem
Adapun kekurangan sistem yang telah dibuat diantaranya yaitu :
1.
Pengolahan data dalam melakukan penyandian data ini masih tergolong
dalam pengolahan skala kecil.
2.
Sistem yang telah dirancang belum menggunakan berbasis online.
3.
Sistem ini masih memiliki beberapa bugs yang terkadang muncul.
BAB V
KESIMPULAN DAN SARAN
BAB V
KESIMPULAN DAN SARAN
V.1. Kesimpulan
Berdasarkan pembahasan dari bab-bab sebelumnya yang telah dilakukan
maka dapat diambil beberapa kesimpulan sebagai berikut :
1. Pembelajaran Penyandian Data Di Dalam Database MySQL Menggunakan
Metode Vernam Cipher Dan Gronsfeld Cipher menambah wawasan penulis di
dalam bidang ilmu kriptografi.
2. Tampilan Aplikasi Pembelajaran Penyandian Data Di Dalam Database
MySQL Menggunakan Metode Vernam Cipher Dan Gronsfeld Cipher bersifat
user friendly, sehingga pengguna aplikasi dapat memahami dengan mudah.
3. Aplikasi Pembelajaran Penyandian Data Di Dalam Database MySQL
Menggunakan Metode Vernam Cipher Dan Gronsfeld Cipher dapat
menyandikan isi seluruh database yang ada pada database MySQL.
V.2. Saran
Untuk pengembangan lebih lanjut pada aplikasi Pembelajaran Penyandian
Data Di Dalam Database MySQL Menggunakan Metode Vernam Cipher Dan
Gronsfeld Cipher ini, maka dapat diberikan beberapa saran sebagai berikut :
1. Aplikasi Pembelajaran Penyandian Data Di Dalam Database MySQL
Menggunakan Metode Vernam Cipher Dan Gronsfeld Cipher dapat
menyandikan database lain seperti misalnya SQL Server.
50
51
2. Aplikasi Pembelajaran Penyandian Data Di Dalam Database MySQL
Menggunakan Metode Vernam Cipher Dan Gronsfeld Cipher dapat
menggunakan metode lain yang penyandiannya lebih kuat.
3. Aplikasi Pembelajaran Penyandian Data Di Dalam Database MySQL
Menggunakan Metode Vernam Cipher Dan Gronsfeld Cipher dapat diterapkan
berbasis online.
DAFTAR PUSTAKA
Sholeh, Ahmad Timbul, 2013, Jurnal : Mengamankan Skrip Pada Bahasa
Pemograman PHP Dengan Menggunakan Kriptografi
Base64
Pakpahan , Aman Julianto ; 2015 , Jurnal : Aplikasi Penyandian Data Dengan
Menggunakan Algoritma NEOKEON
Anisya, 2013,Jurnal: Aplikasi Sistem Database Rumah Sakit Terpusat Pada
Rumah Sakit Umum(RSU)’AISYIYAH Padang Dengan
Menerapkan Open Source (PHP – MYSQL)
Azanuddin,2013,Jurnal:Penyandian Short Message Service (SMS) Pada
Telepon Selular Dengan Menggunakan Algoritma Gronsfeld
Sitohang, Ernita, 2013,Jurnal:Perangkat Aplikasi Keamanan Data Text
Menggunakan Elektronic Codebook Dengan Algoritma DES
M. Sholeh danJ.V.Hamokwarong, 2011,Jurnal: Aplikasi Kriptografi Dengan
Metode Vernam Cipher Dan Metode Permutasi Biner
Sadikin ,Rifki, 2012,:Kriptografi Untuk Keamanan Jaringan
LAMPIRAN
LISTING PROGRAM
Form Kriptografi
Imports System.Data.Odbc
Imports System.Data
Public Class Form1
Public conn As OdbcConnection
Public da As OdbcDataAdapter
Public ds As DataSet
Public strcon As String
Public Sub sambungMYSQL()
strcon = "Driver={MySQL ODBC 5.3 ANSI Driver};database=" &
Databasetxt.Text & ";server=localhost;uid=root"
conn = New OdbcConnection(strcon)
If conn.State = ConnectionState.Closed Then
conn.Open()
End If
End Sub
Private Sub jalankansql(ByVal sQl As String)
Dim objcmd As New System.Data.Odbc.OdbcCommand
strcon = "Driver={MySQL ODBC 5.3 ANSI Driver};database=" &
Databasetxt.Text & ";server=localhost;uid=root"
conn = New OdbcConnection(strcon)
If conn.State = ConnectionState.Closed Then
conn.Open()
End If
Try
objcmd.Connection = conn
objcmd.CommandType = CommandType.Text
objcmd.CommandText = sQl
objcmd.ExecuteNonQuery()
objcmd.Dispose()
DataGridView.Refresh()
DataGridView.RefreshEdit()
Catch ex As Exception
MsgBox("Tidak Dapat Menyimpan Data ke Server, Periksa Kembali
Sambungan Database Anda", vbInformation, "Informasi")
End Try
End Sub
Private Sub ubah()
On Error GoTo perubahdata
Dim satu, pjg, ttl As Double
Dim dua As String
dua = PesanAsli.Text
satu = dua
Dim tukar As String = "ALTER TABLE " & Tabletxt.Text & " CHANGE
& Fieldtxt.Text & " " & Fieldtxt.Text & " TEXT"
Dim objcmd2 As New System.Data.Odbc.OdbcCommand
strcon = "Driver={MySQL ODBC 5.3 ANSI Driver};database=" &
Databasetxt.Text & ";server=localhost;uid=root"
conn = New OdbcConnection(strcon)
If conn.State = ConnectionState.Closed Then
conn.Open()
End If
"
objcmd2.Connection = conn
objcmd2.CommandType = CommandType.Text
objcmd2.CommandText = tukar
objcmd2.ExecuteNonQuery()
objcmd2.Dispose()
DataGridView.Refresh()
DataGridView.RefreshEdit()
BtnTampil.PerformClick()
Dim ubahlagi As String = "update " & Tabletxt.Text & " set " &
Fieldtxt.Text & "='" & Pesantxt.Text & "' where " & Idtxt.Text & "='" &
Rahasia1txt.Text & "'"
Dim objcmd1 As New System.Data.Odbc.OdbcCommand
strcon = "Driver={MySQL ODBC 5.3 ANSI Driver};database=" &
Databasetxt.Text & ";server=localhost;uid=root"
conn = New OdbcConnection(strcon)
If conn.State = ConnectionState.Closed Then
conn.Open()
End If
objcmd1.Connection = conn
objcmd1.CommandType = CommandType.Text
objcmd1.CommandText = ubahlagi
objcmd1.ExecuteNonQuery()
objcmd1.Dispose()
DataGridView.Refresh()
DataGridView.RefreshEdit()
BtnTampil.PerformClick()
Exit Sub
perubahdata:
Dim ubah As String = "update " & Tabletxt.Text & " set " &
Fieldtxt.Text & "='" & Pesantxt.Text & "' where " & Idtxt.Text & "='" &
Rahasia1txt.Text & "'"
Dim objcmd As New System.Data.Odbc.OdbcCommand
strcon = "Driver={MySQL ODBC 5.3 ANSI Driver};database=" &
Databasetxt.Text & ";server=localhost;uid=root"
conn = New OdbcConnection(strcon)
If conn.State = ConnectionState.Closed Then
conn.Open()
End If
objcmd.Connection = conn
objcmd.CommandType = CommandType.Text
objcmd.CommandText = ubah
objcmd.ExecuteNonQuery()
objcmd.Dispose()
DataGridView.Refresh()
DataGridView.RefreshEdit()
BtnTampil.PerformClick()
End Sub
Private Sub BtnTampil_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles BtnTampil.Click
sambungMYSQL()
da = New Odbc.OdbcDataAdapter("select * from " & Tabletxt.Text,
conn)
ds = New DataSet
ds.Clear()
da.Fill(ds, Tabletxt.Text)
DataGridView.DataSource = (ds.Tables(Tabletxt.Text))
Primary.Text = DataGridView.Columns(0).HeaderText
End Sub
Private Sub DataGridView_CellClick(ByVal sender As Object, ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles
DataGridView.CellClick
On Error Resume Next
PesanAsli.Text = DataGridView.SelectedCells(0).Value
Rahasia2txt.Text = DataGridView.SelectedCells(0).ColumnIndex
Dim af As Integer
af = Val(Rahasia2txt.Text)
Fieldtxt.Text = DataGridView.Columns(af).HeaderText
If Fieldtxt.Text = Idtxt.Text Then
Rahasia1txt.Text = DataGridView.SelectedCells(0).Value
End If
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Label13.Visible = True
Label8.Visible = True
ListView1.Visible = True
ListView2.Visible = True
Pesantxt.Clear()
TextBox9.Clear()
TextBox5.Clear()
TextBox6.Clear()
ListView1.Clear()
ListView2.Clear()
Timer1.Enabled = True
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
Label15.Visible = True
Label14.Visible = True
ListView3.Visible = True
ListView4.Visible = True
Pesantxt.Clear()
TextBox7.Clear()
TextBox8.Clear()
ListView3.Clear()
ListView4.Clear()
Timer2.Enabled = True
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Timer1.Tick
If Val(TextBox5.Text) <> 1 Then
Dim a As Integer
a = Val(TextBox5.Text)
a = a + 1
TextBox5.Text = a
Else
TextBox5.Clear()
Dim i As Integer
i = Val(TextBox6.Text)
i = i + 1
TextBox6.Text = i
'Gronsfeld
Dim j, jum, nkata, nkunci, nkey, nenc, nk As Integer
Dim skata, skey As String
Dim splaint, spl As String
splaint = ""
spl = ""
j = 0
skata = PesanAsli.Text
jum = Len(skata)
skey = Enkrip_Key.Text
If j = Len(skey) Then
j = 1
Else
j = j + 1
End If
nkata = Asc(Mid(skata, i, 1))
nkunci = Asc(Mid(skey, j, 1)) - 48
nkey = Asc(Mid(skey, j, 1))
nenc = ((nkata + nkunci) Mod 255)
ListView1.Items.Add("Ascii " & nkata & " (" & Chr(nkata) & ")"
& " Menjadi Karakter " & Chr(nenc))
spl = spl & Chr(nenc)
nk = nenc
nenc = ((nenc - nkey) Mod 255)
ListView2.Items.Add("Ascii " & nk & " (" & Chr(nk) & ")" & "
Menjadi Karakter " & Chr(nenc))
splaint = splaint & Chr(nenc)
Pesantxt.Text = Pesantxt.Text & splaint
TextBox9.Text = TextBox9.Text & splaint
If i = jum Then
TextBox1.Text = spl
TextBox2.Text = Pesantxt.Text
Call ubah()
Timer1.Enabled = False
End If
End If
End Sub
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Timer2.Tick
If Val(TextBox7.Text) <> 1 Then
Dim a As Integer
a = Val(TextBox7.Text)
a = a + 1
TextBox7.Text = a
Else
TextBox7.Clear()
Dim i As Integer
i = Val(TextBox8.Text)
i = i + 1
TextBox8.Text = i
'Metode Gronsfeld
On Error Resume Next
Dim j, jum, nkata, nkunci, nkey, nenc, nk As Integer
Dim skata, skey, ada As String
Dim splaint, spl As String
splaint = ""
spl = ""
j = 0
skata = TextBox9.Text
jum = Len(skata)
skey = Dekrip_Key.Text
If j = Len(skey) Then
j = 1
Else
j = j + 1
End If
nkata = Asc(Mid(skata, i, 1))
nkunci = Asc(Mid(skey, j, 1)) - 48
nkey = Asc(Mid(skey, j, 1))
nenc = ((nkata + nkey) Mod 255)
ListView3.Items.Add("Ascii " & nkata & " (" & Chr(nkata) & ")"
& " Menjadi Karakter " & Chr(nenc))
spl = spl & Chr(nenc)
nk = nenc
nenc = ((nenc - nkunci) Mod 255)
ListView4.Items.Add("Ascii " & nk & " (" & Chr(nk) & ")" & "
Menjadi Karakter " & Chr(nenc))
splaint = splaint & Chr(nenc)
Pesantxt.Text = Pesantxt.Text & splaint
If i = jum Then
TextBox3.Text = spl
TextBox4.Text = Pesantxt.Text
Call ubah()
Timer2.Enabled = False
End If
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
End Sub
End Class
Form Menu Utama
Public Class Form4
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Form2.Show()
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button3.Click
Form3.Show()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
Form1.Show()
End Sub
Private Sub Form4_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
End Sub
End Class
Download