PENERAPAN METODE KRIPTOGRAFI ONE TIME PAD PADA KEAMANAN PINTU BRANKAS BERBASIS ANDROID 1
Syukri Hamdani, 2Abdul Jabbar Lubis, 3Arnes Sembiring Program Studi Teknik Informatika Sekolah Tinggi Teknik Harapan Medan Jl. HM Jhoni No. 70 Medan, Indonesia 1
[email protected] Abstrak Pada era perkembangan, teknologi smartphone sangat mempengaruhi kehidupan manusia karena smartphone hadir sebagai benda seluler yang cerdas dan sangat penting dalam kehidupan masyarakat. Dari beberapa os smartphone yang digunakan didunia, android merupakan salah satu os yang populer saat ini dan merupakan bagian dari hasil pengembangan sistem terbuka atau open source. Dalam penerapan penelitian ini, dilakukan penerapan metode kriptografi pada keamanan pintu brankas dengan memanfaatkan smartphone sebagai pengenkripsi passwordnya dan arduino uno sebagai wadah pusat mikrokontrolernya. Arduino uno sendiri merupakan papan elektronik yang mempunyai ic yang dapat diprogram dari komputer dan merupakan pengganti dari minimum sistem. Modul arduino ini didukung dengan modul elektronika lainnya seperti motor servo, buzzer, keyped, lcd dan lain-lain. Rangkaian ini dirancang agar dapat membantu memperkuat keamana pintu brankas secara otomotis dengan menerapkan kriptografi one time pad. Kata kunci: Smartphone, Android, Arduino, Kriptografi.
Abstract In the era of technological development of smartphones, greatly affect human lives as the smartphone comes as mobile objects intelligent and very important in people's lives. From some os smartphones used in the world, is one of the android os popular today and is part of the development of open systems or open source. In the application of this research, the application of cryptographic methods in the security door safe by using the smartphone as a password and arduino uno pengenkripsi as container mikrokontrolernya center. Arduino Uno it self is an electronic board that has ic which can be programmed from a computer and is the successor of the minimum system. Arduino module is supported with other electronic modules such as servo motors, buzzer, keyped, lcd and others. The circuit is designed to help strengthen the security door was automatically safe by applying cryptographic one-time pad. Keywords: Smartphone, Android, Arduino, Cryptography
1. 1.1
PENDAHULUAN Latar Belakang
Kemajuan teknologi khususnya di bidang sistem keamanan berlapis pada pintu brankas akan memberikan manfaat yang sangat besar bagi keamanan barang berharga di dalam brankas itu sendiri. Karena secara praktis teknologi ini akan menjadi konsumsi atau kebutuhan sekunder personal atau orang secara universal, sehingga pengguna atau user dapat lebih mudah melakukan aktifitas diluar tanpa khawatir dengan barang berharga didalam brankas yang ditinggalkan. Tidak hanya sebagai sistem keamanan, teknologi yang berada dalam ruang lingkup ini dapat pula diaplikasikan sebagai suatu media yang dapat mempermudah aktivitas sehari-hari. Brankas merupakan suatu alat yang dipergunakan untuk menyimpan suatu barang atau aset-aset dan surat-surat yang berharga. Brankas
merupakan tempat penyimpanan yang dianggap praktis tetapi memiliki resiko yang tinggi. Dengan adanya kemajuan teknologi yang sangat berkembang memungkinkan mudahnya brankas untuk dibobol tanpa sepengetahuan pemiliknya. Dengan adanya hal tersebut maka diperlukan suatu pengamanan yang canggih sesuai dengan perkembangan teknologi.. Pada penelitian ini, penulis menggunakan Operating System Android sebagai media pengontrol pengenkripsi password. Yang mana modul dari rangkaian tersebut adalah Arduino Uno. Komponen utama didalam papan Arduino adalah sebuah mikrokontroler 8 bit dengan merk ATmega yang dibuat oleh Atmel Corporation. Pada papan Arduino menggunakan tipe ATmega yang berbeda-beda tergantung dari spesifikasinya, sebagai contoh penulis menggunakan Arduino Uno yang mana modul tersebut menggunakan ATmega328. Arduino tidak hanya sekedar sebuah alat pengembangan,
tetapi kombinasi dari hardware, bahasa pemrograman dan Integrated Development Environment (IDE) yang canggih. IDE adalah sebuah software yang sangat berperan untuk menulis program, meng-compile menjadi kode biner dan meng-upload ke dalam memory microcontroller. Untuk tampilan pada smartphone Android, penulis menggunakan aplikasi Basic For Android (B4A). Sedangkan untuk tampilan interface program, penulis menggunakan aplikasi khusus arduino, yaitu “arduino.ide”. Penggunaan aplikasi tersebut yaitu untuk komunikasi dari arduino ke desktop komputer (user). Aplikasi tersebut sebagai perintah untuk memasukkan program ke arduino, melalui komunikasi port USB. Salah satu penelitian yang dilakukan oleh Erlina Cahya Setianingrum dan Bambang Eka Purnama dari Universitas Surakarta yaitu merancang sebuah sistem mikrokontroler dengan sistem pengamanan apabila password yang dimasukkan benar, maka pintu brankas akan terbuka dan apabila password salah maka pemilik brankas akan mendapat sms dari handphone sistem. Dari penelitian ini, password yang diinputkan oleh user mudah dibajak karena apabila seseorang mengetahui passwordnya, maka bisa akses ke sistem tersebut karena password yang digunakan selalu sama [4]. Dari penelitian yang lain, yang dilakukan oleh Didit Eko Prasetyo, Sudarmawan yang berjudul Sistem Keamanan Berlapis Untuk Lemari Brankas Dengan Menggunakan 3 Kombinasi Password. Sistem kerja alat ini yaitu dengan memasukkan kode pada keypad 3x4 sesuai dengan kode yang telah diprogram untuk membuka kunci 1 pada lemari brankas, apabila kode yang dimasukkan benar maka kunci 1 lemari brankas akan terbuka. Begitu seterusnya sampai 3 kali dengan password yang berbeda. Dari penelitian ini lebih aman karena menggunakan 3 kali input password yang berbeda, tetapi konsep dasarnya masih sama dengan penelitian sebelumnya, yaitu memasukkan password yang sama setiap akses brankas [3].
1.2
Rumusan Masalah
Berdasarkan latar belakang yang telah dijelaskan, maka dapat diambil suatu rumusan masalah berikut. 1. Cara merancang Alat Pengaman Pintu Brankas Menggunakan Input Password dengan Metode One Time Pad (OTP). 2. Cara menerapkan Metode One Time Pad pada Alat Pengaman Pintu Brankas Menggunakan Input Password . 3. Cara mengintegrasikan antara Arduino Uno, Keypad dan LCD dengan metode One Time Pad agar mendapatkan sistem keamanan pintu brankas yang kuat.
1.3
Batasan Masalah
Dikarenakan banyaknya cakupan permasalahan yang terdapat pada perancangan alat ini, maka penulis perlu untuk membatasi batasan masalah yaitu: 1. Menggunakan keypad 4x4 karakter dengan input data password numerik antara 0 sampai dengan 9. 2. Metode yang digunakan yaitu One Time Pad (OTP) dengan sistem penjumlahan kode acak dengan Key = 1234 3. Menggunakan Arduino Uno R3 sebagai pengolahan data input dan output sistem. 4. Menggunakan aplikasi Basic4Android untuk membuat aplikasi Enkripsi pada Smartphone Android 5. Menggunakan LCD karakter 20x4 untuk menampilkan kode acak dan input data Password OTP (One Time Pad).
1.4 Tujuan Penelitian Berdasarkan perumusan masalah di atas maka tujuan yang ingin di capai pada penulisan skripsi ini adalah sebagai berikut: 1. Untuk merancang Alat Pengaman Pintu Brankas Menggunakan Input Password dengan Metode One Time Pad (OTP). 2. Untuk menerapkan Metode One Time Pad pada Alat Pengaman Pintu Brankas Menggunakan Input Password. 3. Untuk mengintegrasikan Arduino Uno, Keypad dan LCD dengan metode One Time Pad agar mendapatkan sistem keamanan pintu brankas yang kuat.
2.
Metode Penelitian
Dalam penulisan skripsi, menggunakan beberapa metode untuk mengumpulkan data-data yang akan diperlukan untuk menyelesaikan skripsi ini. 1. Metode Studi Pustaka Penulis melakukan studi pustaka untuk memperoleh data-data yang berhubungan dengan skripsi dari berbagai sumber bacaan seperti: bukubuku, jurnal, berkas-berkas, laporan yang berkaitan dengan judul yang diangkat sebagai referensi. 2 . Metode Eksperimen Yaitu membuat alat secara langsung dan menguji apakah Alat Pengaman Pintu Brankas Menggunakan Input Password dengan Metode One Time Pad (OTP) ini telah bekerja sesuai dengan keinginan. 3 . Metode pengujian sistem Yaitu melakukan pengujian terhadap alat atau sistem yang bertujuan untuk mengetahui apakah kinerja dari alat yang di buat sesuai dengan apa yang diharapkan atau belum.
2.1
LANDASAN TEORI
Dalam penerapan metode Kriptografi One Time Pad pada keamanan pintu brankas berbasis android ini, terdapat beberapa teori dasar yang meliputi komponen utama dan software-nya. Disini penulis akan membahasnya. Yang mana komponen utama sebagai otak programnya adalah Arduino Uno seri R3, interface pengenkripsi password menggunakan HP user android, serta software arduino.ide dan basic for android (B4A).
2.1.1 Kriptografi One Time Pad Kriptografi one time pad merupakan salah satu jenis teknik kriptografi yang menggunakan metode substitusi dengan cara memberikan syaratsyarat khusus terhadap kunci yang digunakan yaitu terbuat dari karakter atau huruf yang acak (kunci acak atau pad), dan pengacakannya tidak menggunakan rumus tertentu. Dengan kata lain one time pad adalah suatu sistem di mana suatu kunci rahasia yang dibuat acak digunakan hanya sekali untuk mengenkripsi pesan yang kemudian didekripsi lagi dengan kunci yang sama [5]. Algoritma Kriptografi terdiri dari tiga fungsi dasar yaitu : 1. Kunci Kunci yang dipakai untuk melakukan enkripsi dan dekripsi, kunci terbagi dua bagian yaitu kunci publik (public key) dan kunci privat (private key). Keamanan dari kriptografi modern hanya dengan merahasiakan kunci yang dimiliki oleh orang lain tanpa harus merahasiakan algoritma itu sendiri. 2. Enkripsi Enkripsi merupakan hal yang sangat penting dalam kriptografi yang merupakan pengamanan data yang dikirimkan terjaga kerahasiaannya. Pesan asli disebut plaintext yang dirubah menjadi kode-kode yang tidak dimengerti. Enkripsi bisa di artikan dengan cipher atau kode. Beda halnya dengan enkripsi, untuk merubah plaintext ke ciphertext kita menggunakan algoritma yang dapat mengkodekan data. 3. Dekripsi Dekripsi merupakan kebalikan dari enkripsi, pesan telah di enkripsi dikembalikan kebentuk asalnya (plaintext) disebut dengan dekripsi pesan. Algoritma yang digunakan untuk dekripsi tentu berbeda dengan yang digunakan untuk enkripsi. Contoh perhitungan : Sebuah Kode Acak ”3567” akan dienkripsi dengan Key ”1234” dengan perhitungan sebagai berikut, maka akan diperoleh hasil enkripsi ”4791”. Kode Acak :3 5 6 7 Key :1 2 3 4 Enkripsi :4 7 9 1 Jadi, input password menggunakan Keypad, harus sama dengan hasil enkripsi yaitu 4791 [5].
2.1.2 Mikrokontroller Tidak seperti sistem komputer, yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, pengolah angka dan lain sebagainya), Mikrokontroller hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan lainnya terletak pada perbandingan RAM dan ROM-nya. Pada sistem komputer perbandingan RAM dan ROM-nya besar, artinya program-program pengguna disimpan dalam ruang RAM yang relatif besar dan rutin-rutin antarmuka perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan pada mikrokontroler, perbandingan ROM dan RAM-nya yang besar artinya program kontrol disimpan dalam ROM (bisa Masked ROM atau Flash PEROM) yang ukurannya relatif lebih besar, sedangkan RAM digunakan sebagai tempat penyimpanan sementara, termasuk register-register yang digunakan pada mikrokontroller yang bersangkutan ATMEGA328.
2.1.3 Arduino Arduino merupakan rangkaian elektronik yang bersifat open source, serta memiliki perangkat keras dan lunak yang mudah untuk digunakan. Memiliki port input dan port output, sebagai perantara perintah masukan dan perintah pengiriman data (keluaran program). 1. Bagian Hardware Berupa papan yang berisi I/O, seperti Gambar 1.
Gambar 1 Tampilan Board Arduino Uno Sumber: Yuwono Martha Dinata, 2015 2. Bagian Software Berupa Sofware Arduino yang meliputi Integrated Depelopment Enviroment (IDE) untuk menulis program. Arduino memerlukan instlasi driver untuk menghubungkan dengan komputer. Pada IDE terdapat contoh program dan library untuk pengembangan program. IDE software Arduino yang digunakan diberi nama Sketch [8], seperti Gambar:
2.1.6 LCD (Liquid Crystal Display) Liquid Crystal Display (LCD) adalah komponen yang dapat menampilkan tulisan. Salah satu jenisnya memiliki dua baris dengan setiap baris terdiri atas enam belas karakter. LCD seperti itu biasa disebut LCD 16x2.LCD memiliki 16 pin dengan fungsi pin masing-masing [1]. Gambar 2 Tampilan Software Arduino Sumber: Yuwono Martha Dinata, 2015
2.1.4 Keypad Keypad adalah salah satu modul yang sering digunakan dalam embedded system. Fungsi utama modul ini adalah sebagai perangkat masukan. Secara hardware keypad adalah kumpulan tombol yang membentuk matrikx. Dengan n baris x n kolom. Teknik yang digunakan untuk mendeteksi tombol mana yang ditekan adalah dengan melakukan pengecekan baris dan kolom yang terhubung. Teknik ini sering disebut dengan scanning keypad. Kombinasi dari kemungkinan baris dan kolom yang terhubung adalah sejumlah tombol yang ditekan [7]. Konfigurasi modul keypad dapat dilihat pada Gambar 3 berikut:
Gambar 5 LCD karakter 16x2S Sumber: Abdul Kadir, 2014
2.1.7 Motor Servo Motor servo adalah sebuah motor DC dengan sistem umpan balik tertutup dimana posisi rotor-nya akan diinformasikan kembali ke rangkaian kontrol yang ada di dalam motor servo. Motor ini terdiri dari sebuah motor DC, serangkaian gear, potensiometer, dan rangkaian kontrol. Potensiometer berfungsi untuk menentukan batas sudut dari putaran servo. Sedangkan sudut dari sumbu motor servo diatur berdasarkan lebar pulsa yang dikirim melalui kaki sinyal dari kabel motor [1].
Gambar 3 Keypad Sumber: Sumardi, 2013
2.1.5 Buzzer Buzzer adalah sebuah komponen elektronika yang berfungsi untuk mengubah getaran listrik menjadi getaran suara. Buzzer berfungsi sebagai ndicator suara/alarm pada perancangan alat yang akan dibuat. Buzzer biasa digunakan sebagai ndicator bahwa proses telah selesai atau terjadi suatu kesalahan pada sebuah alat (alarm) [7].
Gambar 6 Motor Servo Sumber: Abdul Kadir, 2014
3.
ANALISIS SISTEM
DAN
PERANCANGAN
Analisis sistem merupakan penguraian suatu masalah kedalam bagian dari komponen-komponen yang bertujuan untuk mengidentifikasi dan mengevalluasi permasalahan-permasalahan tersebut.
3.1
Blog Diagram Sistem
Adapun diagram blok dari sistem yang dirancang adalah seperti yang diperlihatkan pada gambar 7 :
Gambar 4 Bentuk Fisik Buzzer Sumber: Sumardi, 2013
LCD keypad
Arduino Uno R3 Power Supply
Motor Servo
Buzzer Gambar 7 Diagram Blok Rangkaian
Penjelasan dan fungsi dari masing - masing blok pada sketsa blok diagram sistem diatas adalah sebagai berikut: a. Arduino Uno R3 : berfungsi sebagai pusat kendali dari keseluruhan sistem kerja rangkaian. b. Input Keypad : Sebagai input password berukuran 4x4 karakter. c. Power Supply : Sebagai sumber energi atau tegangan semua rangkaian elektronika yang telah dibuat agar bekerja sesuai perancangan. d. LCD : LCD berfungsi sebagai media penampilan data kode acak, input keypad serta informasi tulisan yang lainnya. e. Buzzer : sebagai alarm dan indikator suara. f. Motor Servo, berfungsi sebagai kunci pembuka brankas.
3.2
keypad oleh pengguna, dibandingkan dengan OTP[] yaitu hasil perhitungan Kode_Acak + Key. Apabila kode sama maka menuju proses berikutnya, apabila salah, maka alarm akan berbunyi 3 x. 8. Proses membuka kunci brankas, karena input password dan OTP sama/terverifikasi, maka servo bergerak membuka kunci brankas. 9. Menampilkan tulisan “BRANKAS TERBUKA” pada LCD 16x2. 10. Jika pintu ditutup dan mengenai limit Switch maka pintu terkunci. 11. Stop, akhir dari program. Start
Inisialisasi input dan output
Membaca Input Keypad
Karakter ‘*’ ditekan
Tidak
Flowchart
Pembuatan flowchart bertujuan untuk memudahkan kita dalam perancangan kerja alat yang memiliki peran yang sangat penting, yaitu untuk mempermudah dalam perancangan dan pemasangan komponen. Untuk lebih jelasnya dapat ditunjukkan pada gambar 8. Penjelasan Flowchart : 1. Start, yaitu ketika alat mulai dinyalakan maka sistem mulai aktif dan siap untuk ke proses selanjutnya. 2. Inisialisasi input dan output, yaitu proses eksekusi program bagian pengaturan LCD dan juga input dan output tiap pin arduino. 3. Membaca input keypad, yaitu pembacaan input karakter dari Keypad 4x4. 4. Jika karakter ’*’ ditekan, yaitu ketika tombol keypad * ditekan maka menuju ke proses selanjutnya, apabila tidak, maka kembali membaca input keypad. 5. Memberikan Kode_acak, yaitu mengenerate kode acak berupa kombinasi 4 angka yang berfungsi sebagai data awal pengkodean password. 6. Membaca input keypad, yaitu proses pembacaan data keypad sebagai input password yang nantinya disimpan pada variable array input password. 7. Jika input_password = OTP, yaitu proses membandingkan data input password dari
Menampilkan Kode Acak pada LCD
Membaca Input dari Keypad ke Arduino
Input Keypad=kode OTP
Alarm Bunyi
Tidak Ya
Proses Buka Kunci
Menampilkan di LCD Brankas Berhasil Terbuka
Limit Switch =0
Tidak
Brankas Terkunci
Stop
Gambar 8 Flowchart Sistem
3.3
Perancangan Rangkaian Secara Keseluruhan
Rangkaian keseluruhan ini merupakan gabungan dari rangkaian-rangkaian tiap bagian seperti rangkaian LCD, Motor Servo, Keypad, Power Supply, dan Buzzer menjadi satu kesatuan. Skematik rangkain keseluruhannya diperlihatkan pada gambar 9 berikut ini.
Adapun penjelasan dari rancangan tampilan pada android yang diperlihatkan pada gambar 11 adalah : 1. Label 1 : Untuk tampilan judul. 2. Label 2 dan Label 3 : Tampilan tanggal dan jam pada sistem android. 3. Edit Text 1 : Input Kode acak yang didapatkan dari tampilan LCD Arduino. 4. Button 1 : Tombol proses untuk memproses kode Acak menjadi password. 5. Label 4 : Output kode/password sebagai kunci untuk membuka brankas. 6. Button 2 dan Button 3 : tombol connect dan disconnect bluetooth
4. 4.1
Gambar 9 Rangkaian Keseluruhan
3.4
Interface Tampilan Basic4Android
Dalam perancangan keamanan pintu brankas, penulis mengunakan software aplikasi basic for android (B4A). Yang mana software tersebut didesign sesuai dengan smartphone android, yang bisa menampilkan design yang dikonsep pada komputer, lalu design tersebut dimasukkan kode perintah program.
IMPLEMENTASI DAN PENGUJIAN Kebutuhan Sistem
Adapun beberapa peralatan yang digunakan dalam penelitian ini adalah sebagai berikut : 1. Perangkat Keras a. Perangkat komputer pribadi (Laptop) atau PC b. Arduino Uno R3 dan Kabel Data c. Motor Servo d. Modul Keypad 4x4 e. LCD Karakter 16x2 f. Buzzer g. Limit Switch h. Mur dan Baut i. Kabel Pelangi j. Papan Tripleks 2. Perangkat Lunak a. Arduino IDE 1.6.5 b. Proteus Versi 8.1
4.2
Implementasi Sistem
Setelah semua kebutuhan sistem yang telah disiapkan sudah terpenuhi, maka tahapan selanjutnya adalah menerapkan dan membangun sistem yang akan dibuat. Gambar 10 Tampilan awal Basic For Android
3.5
Rancangan Desain Tampilan Android B4A
Abstrak Designer Label 1
4.2.1 Alat Secara Keseluruhan Modul yang telah disusun dengan semua rangkaian yang dibutuhkan dan telah diimplementasi dengan komponen-komponen yang diperlukan. Hasil rancangan alat secara keseluruhan dapat dilihat pada gambar 12 berikut ini :
Label 2 Label 3 Edit Text 1
Button 1 Label 4
Button 2
Gambar 11 Desain Tampilan Menu Utama
Gambar 12 Alat Keseluruhan
4.2.2
i++; }} konversi(); OTP=nilai password-key; lcd.setCursor(0,0); lcd.print("**--Verifikasi---**"); flag_pass_1==0;
Implementasi Kriptografi Brankas OTP
Proses untuk membuka brankas ini yaitu tombol “*” pada keypad ditekan, maka arduino akan menampilkan kode acak pada layar LCD karakter. if(karakter=='*') kode_acak(); void kode_acak() { // Getting ready for Reading PICCs acak = random(0,9999); lcd.setCursor(0,0); lcd.print("---Kode Acak Anda---"); lcd.setCursor(0,1); lcd.print("<<----- ");
Kode acak didapatkan dari proses random antara nilai 0-9999. Nilai random disimpan pada variabel acak yaitu pada cuplikan program ini, acak = random(0,9999);
Kode acak yang sudah didapatkan ditampilkan pada LCD.Proses implementasi kriptografi Brankas OTP menggunakan software Basic4Android ini, pertama membuat desain layout LOGIN. Pada menu LOGIN ini dengan mengisi username dan password dengan benar yaitu username=admin dan password=admin. Apabila username dan password sudah benar, maka tampil menu Proses Enkripsi.
Gambar 13 Tampilan Menu Login
Pada cuplikan program di atas menunjukkan bahwa pada saat proses input password OTP menggunakan keypad, ditunjukkan pada bagian password[i]=karakter; Setiap input keypad disimpan pada variabel array password. Proses selanjutnya yaitu konversi, dari nilai password diubah menjadi nilai kode acak. Setelah proses ini baru dilakukan perbandingan hasil input dengan hasil perhitungan dari rumus OTP=nilai password-key; Apabila input password sama dengan OTP maka berarti password input dari keypad sudah benar, sebaliknya, apabila input keypad tidak sama dengan hasil perhitungan OTP, maka password salah dan akan membunyikan buzzer.
4.3
Pengujian Alat
Pengujian dilakukan untuk mengetahui fungsi dan kinerja dari keseluruhan sistem. Program pengujian disimulasikan di suatu sistem yang sesuai. Pengujian ini dilaksanakan untuk mengetahui kehandalan dari sistem dan untuk mengetahui apakah sudah sesuai dengan perencanaan atau belum. Langkah-langkah melakukan pengujian Alat secara Keseluruhan : 1. Buka aplikasi Arduino IDE 2. Selanjutnya akan muncul tampilan awal “sketch_xxxxxx” secara otomatis seperti pada langkah sebelumnya. 3. Mengetikkan listing program untuk pengujian rangkaian Keseluruhan. 4. Klik Sketch Verify. Kemudian akan muncul kotak dialog untuk menyimpan file project yang baru dibuat. Dapat dilihat pada Gambar 4.18 di bawah ini.
Pada proses Enkripsi dari Kode Acak yang ditampilkan pada layar LCD Brankas, Kode OTP didapatkan dari Kode Acak (plaintext) dijumlahkan dengan key (1234). Proses ini seperti ditunjukkan pada cuplikan listing program berikut ini. Else nilai_kode_acak = Kode_Acak.text OTP.Text = nilai_kode_acak + 1234 End If
Pada proses deskripsi yaitu dilakukan pada bagian arduino uno R3. if(karakter){ lcd.setCursor(i+8,3); lcd.print("*"); //karakter password[i]=karakter; if(karakter=='D') {i=0; lcd.clear(); }
Gambar 14 Kotak Dialog menyimpan Program
5.
Kalau sudah tidak ada error, maka klik ikon Upload atau Ctrl + U. Dapat dilihat pada gambar 4.19 di bawah ini :
Gambar 15 Proses Uploading Program Dari Komputer Ke Arduino Hasil dan Analisa : Ketika alat diaktifkan, program yang pertama kali dijalankan yaitu inisialisasi program yang terdapat pada bagian void setup() { }; dan pada program sebelumnya. Pada bagian void loop() ketika tombol “*” belum ditekan, maka program yang dijalankan yaitu menampilkan tulisan ("--SECURITY BRANKAS-"); pada baris pertama dan ("PRESS Key * to OPEN"); pada baris kedua.
Gambar 18 Halaman Menu Enkripsi Kemudian inputkan kode acak yang telah didapat pada tampilan LCD, kedalam halaman kode enkripsi. Setelah kode diinputkan pada aplikasi android lalu tekan tombol button yg bergambar gembok dan proses enkripsi pun berjalan didalam program dan akan menghasilkan kode yang baru untuk membuka pintu brankas, terlihat pada gambar 17 dibawah ini.
Gambar 16 Tampilan Perintah Press Key “ * ” Dan apabila tombol “ * ” ditekan, maka arduino akan melakukan proses pengacakan nilai variable acak[] dengan nilai 0-9. Gambar 19 Halaman Proses Enkripsi
Gambar 17 Tampilan LCD Input Password OTP Gambar 20 Tampilan LCD Input Password Salah Untuk mendapatkan password dari kode acak yang ditampilkan pada layar LCD Brankas yaitu menggunakan aplikasi android yang telah dibuat, Pada saat aplikasi android dijalankan, muncul halaman LOGIN yang berfungsi untuk antisipasi pengguna yang tidak bertanggung jawab. Dan
Apabila user salah memasukkan password, maka pada alat akan muncul tampilan seperti pada gambar 20 diatas dan membunyikan buzzer 1 kali. Apabila input password benar, maka pada layar LCD muncul tampilan seperti pada gambar 21 dibawah kemudian membuka kunci pintu brankas.
setelah pengisian username dan password ditambahkan maka selanjutnya tekan tombol ”Login Now” dan aplikasi android pun sudah dapat kita gunakan
Gambar 21 Tampilan LCD Input Password Benar
4.4
Kelemahan dan Kelebihan Sistem
Setelah dilakukan beberapa pengujian dari alat yang telah dibuat, ada beberapa kelebihan dan kekurangan. Adapun kelebihan dan kekurangan tersebut antara lain : 4.4.1 Kelebihan 1. Lebih aman dari pada menggunakan brankas yang dijual dipasaran, karena sistem keamanannya lebih kuat. 2. Password untuk membuka lebih sulit dibobol, karena menggunakan metode OTP, jadi setiap akses brankas ditampilkan kode acak yang berbeda-beda. 3. Menggunakan smartphone android untuk mendapatkan password pembuka brankas. 4.4.2 Kelemahan 1. Harus terhubung dengan sumber tegangan (adaptor) untuk mengaktifkan sistem keamanan. 2. Sistem penguncian bisa dibuat lebih kuat lagi.
5.
Kesimpulan
Dari pembuatan alat Penerapan Metode Kriptografi One Time Pad (OTP) pada Sistem Keamanan Pintu Brankas Berbasis Android dan kemudian dilakukan pengujian dan analisanya sehingga didapatkan kesimpulan sebagai berikut : 1. Dengan menggunakan alat yang telah dibuat menggunakan smartphone android untuk mendapatkan password untuk membuka kunci brankas. 2. Pada saat proses membuka kunci brankas, password didapatkan dari proses perhitungan dari kode acak dijumlahkan dengan key yang telah ditentukan. Apabila password salah, maka berbunyi peringatan bahwa kode salah. Apabila selama 3 kali
3.
salah memasukkan password, maka alarm akan berbunyi. Input password menggunakan keypad berukuran 4x4. Dalam proses pembuatan password menggunakan metode One Time Pad (OTP) agar password akses untuk membuka brankas lebih sulit untuk dibajak oleh orang lain yang memiliki niat jahat untuk membobol brankas.
Daftar pustaka [1] Abdul Kadir, 2014, From Zero to a Pro, Yogyakarta: Penerbit Andi. [2] Abdul Kadir, 2012, Panduan Praktis Mempelajari Aplikasi Mikrokontroler dan Pemrogramannya menggunakan Arduino, Yogyakarta: Penerbit Andi. [3] Didit Eko Prasetyo, 2014, Sistem Keamanan Berlapis Untuk Lemari Brankas Dengan Menggunakan 3 Kombinasi Password, Jurusan Teknik Informatika AMIKOM, Yogyakarta. [4] Erlina Cahya, 2013, Sistem Pengaman Brankas Dengan Menggunakan Handphone Berbasis Mikrokontroler AT89S51, Seminar Riset Unggulan Nasional Informatika dan Komputer FTI UNSA Surakarta. [5] Hengky Mulyono, 2013, Implementasi Algoritma One Time Pad Pada Penyimpanan Data, ISSN: 2302-3805, SNTI STMIK AMIKOM Yogyakarta. [6] Heri Andrianto, Aan Darmawan, 2015, “Belajar Cepat dan Pemrograman Arduino”, Bandung: Penerbit Informatika. [7] Sumardi, 2013, Mikrokontroler, Belajar AVR Mulai dari Nol, Yogyakarta: Penerbit Graha Ilmu. [8] Yuwono Marta Dinata, 2015, “Arduino Itu Mudah”, Surabaya: Penerbit Elex Media Komputindo.