Implementasi QR Code dan Algoritma Vigenere Pada Sistem Laporan Kehilangan Kendaraan Bermotor 1
Romi Fadillah Rahmat, 2Dani Gunawan, 3Ginanjar Cipto Prasetyo 1,2,3
Program Studi S1 Teknologi Informasi Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara E-mail:
[email protected],
[email protected],
[email protected]
Abstrak — Kurangnya bukti-bukti dan informasi mengenai data pencurian kendaraan bermotor menjadi kendala di dalam pengungkapan kasus. Pengungkapan kasus yang terlalu lama dan banyaknya kasus yang tidak dapat di ungkap menjadikan masyarakat pesimis akan kinerja aparat kepolisian. Oleh karena itu dibutuhkan suatu sistem yang saling terintegrasi serta dapat melakukan pengecekan kendaraan secara mobile. Data pemilik kendaraan bermotor yaitu no polisi, nama, alamat, nomor rangka dan nomor mesin diamankan menggunakan algoritma Viginere, kemudian dikonversi ke bentuk QR Code. Hasil scan QR Code yang dilakukan polisi di lapangan akan dikirimkan ke server untuk verifikasi data pemilik kendaraan bermotor. Komunikasi antara telepon pintar Android dan server diamankan menggunakan algoritma Viginere. Kata kunci : pencurian, kendaraan, android, algoritma vigenere, qr code. I. PENDAHULUAN Kasus pencurian kendaraan bermotor bukanlah kasus yang baru bagi Kepolisian Republik Indonesia (POLRI). Setiap harinya ada saja pelaporan pencurian kendaraan di seluruh kota di wilayah Republik Indonesia. Untuk wilayah Polresta (Kepolisian Resor Kota) Medan selama tahun 2013, kasus pencurian kendaraan bermotor tertinggi dari kasus kriminal lainnya. Tercatat 2469 kasus pencurian kendaraan bermotor. Dari kasus tersebut hanya sekitar 361 yang dapat terungkap [1]. Diduga, jumlah sebenarnya jauh lebih banyak, karena data di atas hanya data yang dilaporkan ke Polisi. Beberapa kasus pencurian kendaraan dapat terungkap apabila adanya operasi yang dilakukan, itu pun hanya sebagian kecil saja dan sebagian besarnya tidak terungkap dikarenakan polisi kurang memiliki cukup bukti dan kurang memaksimalkan teknologi informasi di instansinya. Menurut amanah Undang-Undang Republik Indonesia No.22 Tahun 2009 tentang lalu lintas dan angkutan jalan. Polisi melalui Polisi lalu lintas berhak menindaklanjuti kasus pencurian tersebut. Beberapa hal inilah yang mendorong pemikiran mengenai membangun sistem yang dapat melakukan pengecekan kendaraan secara mobile, cepat, efektif dan efisien.
Banyaknya kasus pencurian kendaraan bermotor yang terjadi berbanding terbalik dengan jumlah kasus pencurian kendaraan yang berhasil diungkap. Masyarakat seakan pesimis kepada kinerja kepolisian dalam mengungkap kasus ini. Oleh karena itu perlu adanya sistem yang saling terintegrasi untuk mengakomodasi kebutuhan Kepolisian dalam mengungkap kasus pencurian kendaraan bermotor. Beberapa penelitian terdahulu yang digunakan sebagai bahan rujukan dan masukan berkaitan tentang QR Code antara lain yaitu : Enkripsi pada QR Code tiket dengan RSA [2], implementasi sistem absensi pegawai menggunakan QR Code [3], menyimpan image pada qr code [4], memanfaatkan qr code untuk menyimpan data augment reality [5], dan perancangan qr code dengan metode perceptron [6]. Sedangkan beberapa penelitian terdahulu yang berkaitan tentang algoritma vigenere, antara lain yaitu : Aplikasi enkripsi dan deskripsi SMS dengan vigenere di handphone [7], vigenere cipher untuk aksara Korea [8], aplikasi kriptosistem dengan algoritma vigenere [9], membandingkan keamanan vigenere dengan sidewinder cipher [10], dan memodifikasi vigenere cipher agar sulit dipecahkan [11]. II. METODOLOGI PENELITIAN A. Quick Response Code QR Code adalah perkembangan dari barcode atau kode batang yang hanya mampu menyimpan informasi secara horizontal sedangkan QR Code mampu menyimpan informasi lebih banyak, baik secara horizontal maupun vertikal. QR Code biasanya berbentuk persegi putih kecil dengan bentuk geometris hitam. Beberapa penjelasan anatomi QR Code [12] antara lain : a. Finder Pattern berfungsi untuk identifikasi letak QR Code. b. Format Information berfungsi untuk informasi tentang error correction level dan mask pattern. c. Data berfungsi untuk menyimpan data yang dikodekan.
Gambar 1. Anatomi QR Code d. Timing Pattern merupakan pola yang berfungsi untuk identifikasi koordinat pusat QR Code, berbentuk modul hitam putih. e. Alignment Pattern merupakan pola yang berfungsi memperbaiki penyimpangan QR Code terutama distorsi non linier. f. Version Information adalah versi dari sebuah QR Code. g. Quiet Zone merupakan daerah kosong di bagian terluar QR Code yang mempermudah mengenali pengenalan QR oleh sensor CCD. h. QR Code version adalah versi dari QR Code yang digunakan. QR Code mampu mengoreksi kesalahan dan pengembalian data dalam pembacaan kode apabila qr code kotor atau rusak. Ada 4 tingkatan koreksi kesalahan dalam QR code [13] :
Gambar 2. Level Koreksi
Gambar 3. Tabel Vigenere Contoh : Menggunakan kasus di atas dengan menggunakan Rumus Enkripsi. dimana Pi = S dan Ki = J Ci = ( Pi + Ki ) mod 26 Ci = ( S + J ) mod 26 Ci = ( 18 + 9 ) mod 26 Ci = 27 mod 26 Ci = 1 = B Sedangkan Rumus Dekripsi Pi = ( Ci – Ki ) mod 26 Pi = ( B – J ) mod 26 Pi = ( 1 – 9 ) mod 26 Pi = -8 mod 26 Pi = 18 = S
B. Sandi Vigenere Sandi Vigenere adalah sebuah sandi klasik yang memiliki konsep yang relatif sederhana dan banyak digunakan sampai sekarang[14]. Sandi Vigenere merupakan sebuah algoritma kriptografi klasik, algoritma ini tergolong algoritma dasar karena menggunakan algoritma berbasis karakter [8]. Gambar 3 digunakan untuk menyandikan sebuah pesan. Setiap huruf yang disandikan dengan menggunakan baris yang berbeda, sesuai dengan kata kunci yang diulang-ulang. Huruf pertama pada pesan di sandikan dengan huruf pertama kata kunci, dan begitu seterusnya. Rumus Enkripsi Ci = ( Pi + Ki ) mod 26 Rumus Deskripsi Pi = ( Ci – Ki ) mod 26 Keterangan Ci = nilai desimal (a=0) karakter tersandi ke-i Pi = nilai desimal karakter pesan ke-i Ki = nilai desimal karakter kata kunci ke-i
Gambar 4. Karakter ASCII yang digunakan
Sandi Vigenere dengan 95 karakter merupakan pengembangan dari kriptografi vigenere yang asli dengan menambahkan beberapa karakter yang terdapat pada tabel ASCII sehingga berjumlah 95 karakter yang sebelumnya berjumlah 26 karakter. Lihat gambar 4. C. Android Android adalah sistem operasi mobile berbasis open source yang di miliki raksasa internet saat ini, Google. Android dikembangkan dengan menggunakan kernel linux. Android dimulai sebagai sebuah start up rahasia pada tahun 2003, dan dibeli oleh Google pada tahun 2005 dan sebagai jalan google untuk memasuki pasar perangkat lunak bergerak [15]. D. Library PHP QR Code PHP (Hypertext Preprocessor) qr code merupakan library open source (LGPL) yang digunakan untuk menghasilkan qr code. Library ini dikembangkan berdasarkan library libqrencode C, yang menyediakan API (Application Programming Interface) untuk membentuk gambar qr code dan diimplementasikan pada PHP [16]. Fitur-fitur yang terdapat pada library php qr code diantaranya : 1. Mendukung versi qr code 1 sampai dengan 40. 2. Mendukung encode angka, huruf, 8 bit encoding dan kanji. 3. Diimplementasikan murni di PHP. 4. Dapat di ekspor ke png dan jpeg. 5. Mudah dalam mengkonfigurasi. 6. 100% open source (LGPL).
2012. PERPU ini juga mengatur pembagian tugas penyidik Polisi dan penyidik pegawai negeri sipil, tata cara pemeriksaan dan penindakan kendaraan bermotor di jalan, denda dan hukuman bagi pelanggar lalu lintas. H. Rancangan sistem 1. Perancangan QR Code pada plat kendaraan
Gambar 5. Rancangan Plat kendaraan QR Code yang terletak pada plat kendaraan berukuran 3,5 x 3,5 cm. QR code di cetak pada kertas stiker dan di tempel pada plat kendaraan tersebut. 2. Perancangan sandi vigenere pada sistem Sandi vigenere yang digunakan untuk menyandikan data di dalam qr code adalah sandi vigenere dengan 95 karakter. Susunan karakter ASCII dapat dilihat pada gambar 5.
E. Library Zxing Zxing merupakan aplikasi open source dan library java yang dapat melakukan proses berbagai format gambar barcode satu dimensi atau 2 dimensi [3]. Fungsi dari library ini adalah untuk memudahkan programmer untuk membangun aplikasi pembacaan qr code di android dan dapat melakukan scan qr code tanpa harus terhubung ke server. F. Undang-undang Undang-undang merupakan peraturan perundangan yang dibentuk dan di susun oleh Dewan perwakilan Rakyat (DPR) dengan persetujuan bersama Presiden. UndangUndang No.22 Tahun 2009 tentang lalu lintas dan angkutan merupakan peraturan tertulis yang dibentuk DPR bersama Presiden. Undang-undang ini adalah pengganti UU No. 14 Tahun 1992 tentang lalu lintas dan angkutan jalan karena tidak sesuai dengan kondisi, perubahan lingkungan strategis, dan kebutuhan penyelenggaraan lalu lintas dan angkutan jalan. Isi dari UU ini berkaitan dengan pembagian tugas aparat, kewajiban pengendara kendaraan, pasal pelanggaran dan denda. G. Peraturan pemerintah pengganti undang-undang PERPU adalah peraturan perundang-undangan yang di tetapkan oleh presiden dalam hal ikhwal kegentingan yang memaksa. Peraturan pemerintah pengganti undang-undang no.80 tahun 2012 tentang tata cara pemeriksaan kendaraan bermotor di jalan dan penindakan pelanggaran lalu lintas dan angkutan jalan. PERPU ini berlaku tanggal 15 Oktober
Gambar 6. Karakter ASCII 95 karakter Rumus Enkripsi Ci = ( Pi + Ki ) mod 95 Rumus Deskripsi Pi = ( Ci – Ki ) mod 95 Contoh : dimana Pi = S dan Ki = J Enkripsi Ci = ( Pi + Ki ) mod 95 Ci = ( S + J ) mod 95 Ci = ( 44 + 35 ) mod 95 Ci = 79 mod 95 Ci = 79 = ;
Dekripsi Pi = ( Ci – Ki ) mod 95 Pi = ( ; – J ) mod 95 Pi = ( 79 – 35 ) mod 95 Pi = 44 mod 95 Pi = 44 = S
Mulai
Pada link halaman web ada beberapa karakter yang tidak sesuai dengan format dan merupakan bagian dari format tersebut, maka sandi vigenere di modifikasi kembali dengan menggunakan 63 karakter. Rumus yang digunakan sama tetapi modulo yang digunakan 63 sesuai karakter yang digunakan.
Scan QR Code
Valid?
3. Flowchart Pada penelitian ini terdapat 4 flowchart yang menggambarkan sistem. 2 flowcart aplikasi mobile, 1 admin STNK dan admin laporan. Berikut adalah flowchart sistem yang akan dibuat pada penelitian ini :
Deskripsi Vigenere 95 karakter
Cek data
Enkripsi Vigenere 63 karakter
Mulai
ada
Cek database server
Cek Internet
Bermasalah
Tidak ada
Dekripsi Vigenere 95 karakter
Output
Input data Tidak bermasalah Selesai
tidak
Gambar 9. Flowcart Scan QR Code aplikasi mobile Valid ?
Database Sistem
Mulai
ya Enkripsi Vigenere 95 karakter
Cek Internet
QR Code Generator
Ada
Cetak QR code
Selesai
Cek No Polisi/ Mesin/Rangka
Gambar 7. Flowcart input data pada admin STNK
Enkripsi Vigenere 63 karakter Tidak ada
Mulai
Cek database server ada
Input data
tidak
Tidak ada Dekripsi Vigenere 95 karakter
output
Database Sistem
simpan
Valid ? Selesai
Gambar 10. Flowcart input aplikasi mobile
Selesai
Gambar 8. Flowcart input data pada admin STNK
III. HASIL DAN PEMBAHASAN A. Implementasi sandi vigenere 95 karakter dan QR Code Data yang digunakan dalam qr code berupa Nomor Polisi, Nama, Alamat, Nomor Rangka dan Nomor Mesin. Dengan formatnya sebagai berikut : No_Polisi;Nama;Alamat;No_Rangka;No_Mesin Contoh Pesan = BK4567CBA;SETYADI NUGRAHA;JL. MEGAWATI GG. DAMAI NO. 15, KEL. PASAR MERAH TIMUR, MEDAN;MH314D0029K305890;14D-306160 Kunci
= anjar
Enkripsi= BX#57PKAbSR2YRDV)N!G4JHR;WU.;MRPA#A6R XG_)DRMNR 4O_)1,,-TE2.-YA9A4)MVRNQ IZ3R{ ZNDRN|VH*1'M0'2,T3'5+(0b1'M-*0) 6' Kemudian, data hasil enkripsi tersebut di tambahkan kata GcP di awal dan PcG di akhir. Fungsi dari kata ini adalah untuk pengecekan data valid pada saat di scan oleh aplikasi android. Dan juga untuk menyulitkan pemecahan sandi. Nilai = GcPBX#57PKAbSR2YRDV)N!G4JHR;WU.;MRPA#A6R XG_)DRMNR 4O_)1,,-TE2.-YA9A4)MVRNQ IZ3R{ ZNDRN|VH*1'M0'2,T3'5+(0b1'M-*0) 6'PcG Lalu data nilai di encode untuk menjadikan sebuah qr code. Dengan correction level M dengan jumlah perkiraan koreksi 15 % dan matrix point size 8. Lihat gambar 11.
http://localhost/projectZ/admin/admin_view.php? oCilzhnC&4o2xlzsviNj7g=Q5 Deskripsi tidak ditampilkan di layar tetapi langsung ditampilkan halaman yang diakses. C. Implementasi sandi vigenere 95 karakter pada Json JavaScript Object Notation (JSON) digunakan untuk pertukaran data dari server ke perangkat mobile. Pertukaran data menggunakan json ini relatif ringan dan mudah. Pada saat melakukan scan pada perangkat mobile dan melakukan cek database, No. Polisi, Nama, No. Telepon, Alamat akan di kirim ke perangkat mobile. Sedangkan pada saat melakukan cek data dengan input manual, baik input no. polisi dan no. mesin server akan mengirimkan No. Polisi, Nama, Alamat, No. Rangka, No. Mesin, Merk, Jenis, Type, Warna, Tgl Berlaku, Nama Pelapor, No. Telepon pada perangkat mobile. Contoh Data
Gambar 11. QR Code Enkripsi Scan qr code dilakukan di perangkat mobile android. QR code diterjemahkan menjadi karakter ASCII. Data hasil scan qr code ini yang masih berupa data terenkripsi, lalu dideskripsi dengan kunci yang sama. Proses deskripsi merupakan kebalikan dari proses enkripsi. Kemudian hasilnya ditampilkan di layar pengguna. B. Implementasi sandi vigenere 63 karakter QR Code Implementasi sandi vigenere dengan 63 karakter ini dilakukan hanya URL (Uniform Resource Locator) dengan metode GET. Contoh http://localhost/projectZ/admin/admin_view.php?op=lihat& NoPolisi=N3741QO URL yang dienkripsi hanya bagian yang menampilkan data saja. Dapat dilihat pada contoh URL bagian yang ditebalkan. Vigenere 63 tidak berbeda jauh dengan sandi vigenere dengan 95 karakter, hanya saja jumlah hurufnya ASCII yang digunakan berbeda. Pesan Kunci Enkripsi
= op=lihat&NoPolisi=N3741QO = anjar = oCilzhnC&4o2xlzsviNj7g=Q5
Setelah dienkripsi URL menjadi seperti ini.
No. Polisi = BK4567CBA Nama = SETYADI NUGRAHA Alamat = JL. MEGAWATI GG. DAMAI NO. 15, KEL. PASAR MERAH TIMUR,MEDAN No. Rangka = MH314D0029K305890 No. Mesin = 14D-306160 Merk = YAMAHA Jenis = SPD MOTOR Type = 3C1(VIXION/FZ150) Warna = MERAH Nama Pelapor = No. Telepon = Tgl. Berlaku = 15-05-2019 Nama pelapor dan Nomor Telepon akan terisi jika kendaraan masuk dalam pelaporan kehilangan. Kemudian data tersebut di-encode ke JSON {"cek":[{"NoPolisi":"BK4567CBA","Nama":"SETYADI NUGRAHA","Alamat":"JL. MEGAWATI GG. DAMAI NO. 15, KEL. PASAR MERAH TIMUR, MEDAN","NoRangka":"MH314D0029K305890","NoMesin ":"14D-306160","Merk":"YAMAHA","Jenis":"SPD MOTOR","Type":"3C1(VIXION\/FZ150)","Warna":"MERA H","NamaPelapor":"","NoTelepon":"","TglBerlaku":"1505-2019","data1":"0"}],"sukses":"1"} Kemudian data format json ini dilakukan enkripsi kembali dengan menggunakan sandi vigenere 95 karakter dengan sandi yang berbeda dan dikirim ke perangkat mobile. Pesan = {"cek":[{"NoPolisi":"BK4567CBA","Nama":"SETYADI NUGRAHA","Alamat":"JL. MEGAWATI GG. DAMAI NO. 15, KEL. PASAR MERAH TIMUR, MEDAN","NoRangka":"MH314D0029K305890","NoMesin ":"14D-306160","Merk":"YAMAHA","Jenis":"SPD MOTOR","Type":"3C1(VIXION\/FZ150)","Warna":"MERA H","NamaPelapor":"","NoTelepon":"","TglBerlaku":"1505-2019","data1":"0"}],"sukses":"1"} Kunci
= anjar
Enkripsi = {/leB"{~{=NBYoCiFr"a"OT4,6*LBR"]+Nrmn+:=SR2YRD V)N!G4JHR"]+ACazjt=:/SL} ZNGRWN2I;GT[ UAZJI;N1[ (5])KVL_)PRSN0 3E4JH;TVVU8,VEUA0+,=NB0aEgxj"a"ZQ3(4Q90)9X"0,8,9"{"0xMvsvw"a "$#D|3#%1-0/?"3eEt"a"!JMRHN+,=JrwiJ"{+S6D-VO O4+,=TLye=:/"C((8RXZO0a/WZ$$0^"]+WrrAj"a"ZNRRH/ ?"4azjPvlnyoI"{+"{"0xTvlryoE"{+"{"6plSeEuaBu/]"(5^95| 2# 9=,/maKa$+:=0/h]{"FDkJeF+:=1/h Pada perangkat mobile data ini lalu dideskripsi kembali dengan sandi vigenere 95 karakter harus dengan kunci yang sama. Jika tidak, maka hasil deskripsi akan berbeda dengan data asli. Kemudian dilakukan parsing data untuk memisahkan json format menjadi data yang diperlukan. Kemudian data diurai dan ditampilkan ke layar pengguna. Jika terdapat pada database pelaporan kehilangan maka tampilan layar akan berwarna merah D. Pengujian Sistem Tabel 1. Hasil Pengujian Sistem No.
Skenario Uji
Hasil yang diharapkan
Hasil pengujian
1.
Input pada admin STNK
Berhasil
2.
Edit pada admin STNK
3.
Input pada admin Laporan Edit pada admin Laporan
Dapat menyimpan data dan melakukan enkripsi lalu di rubah menjadi qr code. Dapat melakukan pembaharuan data pada database dan melakukan enkripsi lalu di rubah menjadi qr code. Dapat menyimpan data ke database. Dapat melakukan pembaharuan data pada database. Dapat mengenkripsi url get dan dapat mendeskripsikan untuk menampilkan halaman yang di minta. Harus mampu membuat qr code. Dapat membaca qr code dan mendeskripsikan sandi vigenere. Dapat langsung melakukan cek database server dan melakukan deskripsi sandi vigenere. Dapat menampilkan data yang sesuai.
4.
5.
URL enkripsi
6.
Encode qr code
7.
Scan qr code
8.
Cek data dari perangkat mobile
9.
Mengganti kunci sandi
Berhasil
Berhasil Berhasil
Berhasil
Berhasil Berhasil
Berhasil
Lihat tabel 2
Tabel 2. Mengganti Kunci Sandi No. 1.
2.
Skenario Uji Mengganti kunci sandi vigenere Kunci = anjar Input URL Scan Json
Dapat mengenkripsi data Dapat enkripsi dan dekripsi data Dapat mendeskripsi data Dapat enkripsi dan dekripsi data
Kunci = uSu4L4y Input URL Scan Json
Dapat mengenkripsi data Dapat enkripsi dan dekripsi data Dapat mendeskripsi data Dapat enkripsi dan dekripsi data
3.
Kunci = FasilkomTI Input URL Scan Json
Dapat mengenkripsi data Dapat enkripsi dan dekripsi data Dapat mendeskripsi data Dapat enkripsi dan dekripsi data
Pada perangkat android yang tidak memiliki autofocus pada kamera dalam melakukan scan qr code, pembacaan data kurang cepat ketimbang perangkat android yang memiliki autofocus pada kameranya.
IV. KESIMPULAN A. Kesimpulan Berdasarkan hasil dari implementasi dan pengujian terhadap sistem maka dapat ditarik beberapa kesimpulan diantaranya yaitu: 1. QR Code dan sandi vigenere mampu melindungi dan menjaga kerahasiaan data. 2. Sandi vigenere terbukti dapat melakukan enkripsi dan dekripsi data kendaraan dan qr code dapat menampung data dari hasil enkripsi sandi vigenere tersebut. 3. Dengan otentikasi data STNK pada database pemilik kendaraan dan pelaporan kehilangan kendaraan langsung di tempat, mobile user dapat mengetahui kendaraan tersebut bermasalah dengan hukum atau tidak dan mobile user dapat menindaklanjutinya. 4. Dengan kunci yang sama, hasil dari pengecekan data di server yang dikirim ke aplikasi mobile kemudian di tampilkan sesuai dengan data yang ada di database. B. Saran Berikut adalah saran-saran untuk pengembangan sistem ini ke depannya : 1. Agar lebih baik lagi perlu adanya melakukan modifikasi sandi vigenere dengan sandi lainnya yang dapat digunakan pada sistem ini atau pun dapat mengganti sandi tersebut dengan sandi yang sangat sulit dalam pemecahannya seperti RSA dan lain-lain. 2. Jenis qr code sebaiknya menggunakan qr code LogoQ, dan qr code sebaiknya dicetak pada media yang tahan terhadap segala kondisi cuaca. 3. Dalam scan qr code kedepannya harus mampu melakukan scan pada tempat -tempat yang memiliki intensitas cahaya sedikit seperti malam hari dan cahaya berlebih pada siang hari. 4. Diharapkan sistem ini sebagai dasar dalam pengembangan sistem serupa dan dapat diterapkan di seluruh wilayah negara kesatuan republik Indonesia dalam menanggulangi masalah laporan pencurian kendaraan bermotor.
Hasil pengujian
DAFTAR PUSTAKA [1] 2013, Kasus Curanmor Tertinggi di Medan. Starberita.com, 30 Desember 2013 (diakses 15 Januari 2014). [2] Irawan, Calvin. 2010. Enkripsi Pada QR Code Tiket Dengan RSA. Makalah IF3058 Kriptografi – Sem II tahun 2010/2011. [3] Tresnani, Dini Lestari. 2012. Implementasi sistem absensi pegawai menggunakan qr code pada samartphone berbasis android. Makalah TA.
[4] Nugraha, M. Pasca. 2011. Pengembangan Aplikasi QR Code Generator dan QR Code Reader dari Data Berbentuk Image. Konfensi Nasional Informatika – KNIF 2011. [5] Yoon, Hyoseok. Park, Nohyoung. Jang, Youngkyoon. & Woo, Woontack. 2011. QR Code Data Representation for Mobile Augmented Reality. International AR Standards Meeting – February 17-19 2011. [6] Novalia. 2012. Perancangan Pengenalan QR (Quick Response) Code dengan Jaringan Syarad Tiruan Metode Perceptron. Skripsi. Universitas Sumatera Utara. [7] Nugroho, Bayu. Kristian. 2010. Aplikasi Enkripsi SMS Pada Telepon Seluler Berbasis J2ME dengan Metode Vigenere Cipher. Skripsi. Universitas Diponegoro. [8] Kurniawan, I.R.G. 2012. Vigenere Cipher Untuk Aksara Korea (Hangul). Makalah IF3058 Kriptografi – Sem II tahun 2011/2012. [9] Mushlih, Hijasma. 2012. Pembuatan Aplikasi Kriptosistem Menggunakan Metode Algoritma Vigenere Cipher. Skripsi. Amikom Yogyakarta. [10] Putra, Wiliam. Eka. 2011. Perbandingan Tingkat Keamanan Vigenere Cipher dengan Sidewinder Cipher. Makalah IF3058 Kriptografi – Sem II tahun 2010/2011. [11] Bhardwaj, C.R.S. 2012. Modification of vigenere cipher by random Numbers, Punctuations & Mathematical Symbols. IOSR Journal of Computer Engineering : PP 35-38. [12] Ariadi. 2011. Analisis dan Perancangan Kode Matriks Dua Dimensi Quick Response (QR) Code. Skripsi. Universitas Sumatera Utara. [13] Denso ADC. 2011. QR Code Essentials. (Online) http://www.nacs.org/LinkClick.aspx?fileticket=D1FpV AvvJuo%3D&tabid=1426&mid=4802 (25 Oktober 2013). [14] Bruen, Aiden. A & Forcinito, Mario. A. 2011. Cryptography, Information Theory, and ErrorCorrection: A Handbook for the 21st Century. John Wiley & Sons : Canada. [15] James, Derek. 2013. Android Game Programming For Dummies. Jhon Wiley & Sons, Inc : New Jersey. [16] Overview. 2013. http://phpqrcode.sourceforge.net, (diakses 15 Januari 2014).