APLIKASI PASSWORD MEMANFAATKAN SENSOR GERAK PADA PERANGKAT ANDROID
NASKAH PUBLIKASI
diajukan oleh Andrian Jalu Wardana 09.11.2827
kepada SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA YOGYAKARTA 2014
APLIKASI PASSWORD MEMANFAATKAN SENSOR GERAK PADA PERANGKAT ANDROID Andrian JaluWardana1), Dr. Kusrini, M.Kom2), 1)
Teknik Informatika STMIK AMIKOM Yogyakarta Magister Teknik Informatika STMIK AMIKOM Yogyakarta Jl Ringroad Utara, Condongcatur, Depok, Sleman, Yogyakarta Indonesia 55283 Email :
[email protected]),
[email protected]) 2)
Abstract - Lockscreen application will utilizes motion sensor type accelerometer contained on android devices. Accelerometer sensor itself is a motion sensor that can aware of any changes in the acceleration experienced in the vector x, y, z, including the force of gravity. In this lockscreen application, which is usually a password input characters, numbers, or symbols will be replaced with movements data changes of the android device experienced itself. Movement can be a shake, rotate, flip, reverse and others in accordance with the wishes of privileged users. Keywords – Lockscreen, Android, Accelerometer
ii. Bagaimana mengimplemen-tasikan aplikasi lockscreen yang memanfaatkan sensor gerak pada perangkat android, yang telah selesai dianalisis dan dirancang pada perangkat sesungguhnya ?
1.
Pendahuluan
1.4
1.1
Latar Belakang Masalah
Metodologi penelitian yang digunakan dalam proses penelitian ini adalah metode prototyping. Prototyping adalah proses iteratif dalam pengembangan sistem dimana kebutuhan diubah ke dalam sistem yang secara terusmenerus diperbaiki melalui kerjasama antara pengguna dan perancang sistem [1].
Beragam informasi dapat diolah dan disimpan pada perangkat android. Sebagian informasi-informasi yang diolah dan disimpan dengan perangkat android memiliki sifat rahasia, sehingga membutuhkan jaminan keamanan agar informasi tersebut tidak dapat diakses oleh pengguna yang tidak berhak. Sebagai langkah untuk mengamankan hak akses, setiap perangkat android memiliki sistem pengamanan standar berupa password, personal identification number (PIN) dan lockscreen pattern. Macam tipe sensor gerak yang dimiliki perangkat android adalah tipe accelerometer yang berfungsi untuk mengukur gaya gerak yang terpengaruhi gravitasi, tipe gyroscope yang berfungsi untuk mengukur kecepatan rotasi pada sumbu x y z, tipe linear acceleration yang berfungsi untuk mengukur gaya gerak tanpa terpengaruh gaya gravitasi, dan tipe rotation vector yang berfungsi untuk mengukur komponen vector rotasi terhadap sumbu x y z. 1.2
Rumusan Masalah
Bertitik tolak dari latar belakang masalah diatas penelitian ini akan membahas masalah-masalah sebagai berikut : i. Bagaimana menganalisis dan merancang aplikasi lockscreen yang memanfaatkan sensor gerak pada perangkat android ?
1.3
Tujuan Penelitian
Tujuan dari penelitian ini adalah membangun alternatif aplikasi pengamanan yang dapat digunakan untuk mengamankan hak akses pada telepon pintar android. Metodologi Penelitian
2.
Landasan Teori
2.1
Android
Sistem operasi android merupakan sistem operasi yang dikembangkan dengan basis linux. Terlihat dengan digunakannya kerrnel linux, pustaka linux, dan framework linux, dengan penambahan Dalvik Virtual Machine (DVM). Sehingga meskipun identik dengan sistem operasi linux aplikasi yang berjalan di linux tidak dapat dijalankan di android dan sebaliknya. 2.2
Sensor Gerak
Sistem operasi android menyediakan beberapa sensor yang memperbolehkan pengguna memonitor gerakan telepon pintar. Sensor gerak yang berbasiskan perangkat keras (accelerometer dan gyroscpe) dan sensor gerak yang dapat berbasiskan perangkat keras maupun perangkat lunak (gravity, linear acceleration, dan rotation vector).
Sensor gerak digunakan untuk memonitor gerakan-gerakan yang dialami perangkat seperti membalik, mengguncang, memutar, atau mengayun.
Beberapa metode dapat digunakan untuk membantu memonitor perubahan nilai pada sensor gerak. Salah satu metodenya menggunakan logcat aplikasi eclipse ketika proses pembuatan aplikasi dengan menghubungkan eclipse dengan telepon pintar.
Kode dibawah ini digunakan untuk membaca instansi sensor tipe accelerometer, apabila yang digunakan adalah sensor gerak tipe yang lain, maka pada bagian kode Sensor.TYPE_ACCELEROMETER dapat diganti dengan kode yang sesuai. private SensorManager mSensorManager; private Sensor mSensor; mSensorManager = (SensorManager)getSystemService(C ontext.SENSOR_SERVICE); mSensor = mSensorManager.getDefaultSensor (Sensor.TYPE_ACCELEROMETER );
2.3
UML
UML adalah bahasa grafis untuk mendokumentasikan, menspesifikasikan, dan membangun system perangkat lunak. UML berorientasi objek, menerapkan banyak level abstraksi, tidak bergantung proses pengembangan, tidak bergantung bahasa dan teknologi, pemaduan beberapa notasi di beragam metodologi, usaha bersama dari banyak pihak, dan didukung oleh banyak tools yang diintegrasikan melalui XML [2].
ii.
Weakness Penggunaan sensor gerak memiliki kelemahan pada kenyataan bahwa sensor gerak sangat sensitif dengan gerakan sekecil apapun.
iii.
Oppurtunity Penggunaan sensor gerak memberikan kelebihan pada keunikan dan variasi gerakan.
iv.
Threat Adanya aplikasi password lain yang memberikan keamanan dan kemudahan lebih baik.
3.2
Rancangan UML
2.3.1
Use Case
Dibawah ini adalah diagram use case aplikasi pengaturan.
Gambar 2 Use Case Pengaturan
3.2.2
Activity Diagram
Berikut ini adalah gambar diagram activity ketika akan membuka lockscreen. Gambar 1 Diagram-diagram UML[3]
3.
Analisis Dan Perancangan
3.1
Analisis Sistem
Metode analisis SWOT digunakan untuk menganalisa sebuah system berdasarkan kekuatan (strength), kelemahan (weakness), kesempatan (oppurtunity), dan ancaman (threat) yang dimiliki oleh system yang akan dibuat [4]. Berikut ini adalah analisa SWOT dari system yang akan dibuat : i.
Strength
Gambar 3. Diagram Activity Membuka Lockscreen
3.3
Rancangan Basis Data
Tabel Kunci utama dalam tabel ini berfungsi untuk menyimpan masukkan dari sensor accelerometer pada setiap titik waktu dengan id kunci 100-2000 dengan interval 100ms. Tabel 1. Rancangan Tabel Kunci
Name
Type
XYZ
varchar(4)
KeyId
integer(2)
X Y Z
float(5) float(5) float(5)
key Primary key Foreign key -
3.4
Rancangan Antarmuka
4.2
Implementasi Antarmuka
Berikut ini adalah tampilan antarmuka aplikasi pengaturan.
Halaman pengguna adalah tampilan yang dilihat dari sisi pengguna aplikasi.
Gambar 4. Rancangan Pengaturan
Gambar 4. Antarmuka Aplikasi
Berikut ini adalah tampilan antarmuka aplikasi lockscreen.
4.3
Pembahasan Kode Program
Method dibawah ini digunakan untuk merekam gerakan kode akses utama dan membandingkannya dengan kode akses utama di basis data.
Gambar 5. Rancangan Lockscreen
4.
Implementasi Dan Pembahasan
4.1
Implementasi Basis Data
Pembuatan basis data untuk aplikasi ini tidak membutuhkan banyak tabel karena basis data dalam aplikasi AcceLocks digunakan untuk menyimpan data kunci, data kunci utama, data kunci alternatif dan data status pemakaian aplikasi. Dibawah ini adalah gambar relasi basis data.
Gambar 6. Relasi Antar Tabel
private void scan() { final Handler handler = new Handler(); getData = new Thread() { public void run() { int time = 0; while (time < 2000) { time += 100; db = dbHelper.getReadableDatabase(); cursor = db.rawQuery("SELECT * FROM xyz WHERE keyid=" + time, null); if (cursor.moveToFirst()) { if ((x - 1 <= cursor.getFloat(1) && cursor.getFloat(1) <= x + 1) && (y - 1 <= cursor.getFloat(2) && cursor.getFloat(2) <= y + 1) && (z - 1 <= cursor.getFloat(3) && cursor.getFloat(3) <= z + 1)) { cek = true; ok += 1; } else { cek = false; } }
try { sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } } if (cek && ok > 15) { finish(); } else { attemp++; handler.post(new Runnable() { public void run() { prompt.setText ("KodeSalah !!!"); btnBuka.setVisibili ty (View.VISIBLE); btnBuka.setText(" Coba Lagi"); } }); if (attemp == 5) { waiting(); } } } }; getData.start(); }
4.4
Pengujian BlackBox
Pengujian yang dilakukan oleh penulis adalah dengan menjalankan aplikasi AcceLocks yang telah dibuat sehingga bisa terlihat kekurangan dari program ini. Beberapa kategori yang akan di uji adalah sebagai berikut : 1. Fungsi –fungsi yang tidak benar atau hilang 2. Kesalahan kinerja 3. Kesalahan tampilan 4. Kesalahan dalam struktur data 5.
Kesimpulan
Berdasarkan penjelasan dari bab-bab sebelumnya maka dapat disimpulkan bahwa : i. Aplikasi AcceLocks dibuat melalui tahapan analisis dan perancangan sistem. ii. Hasil dari proses analisis dan desain dapat diimplementasikan dan telah diuji kelayakannya.
Untuk lebih menyempurnakan program ini penulis memberikan beberapa saran diantaranya : i. Menambahkan ukuran skala dalam simulasi gerakan. ii. Menambahkan menu yang berfungsi untuk merubah tingkat ketepatan dalam membaca kode akses utama. iii. Menambahkan menu yang berfungsi untuk merubah panjang periode waktu kode akses utama. Daftar Pustaka [1] Al Fatta, Hanif.2007. Analisis dan Desain Sistem Informasi. Yogyakarta : Andi. pp. 36. [2] Suprianto, Dodit, dkk.. Pemrograman Aplikasi Android. [3] Hariyanto, Bambang. 2010. Rekayasa Sistem Berorientasi Objek.. Bandung : Informatika. pp. 256. [4] Al Fatta, Hanif.2007. Analisis dan Desain Sistem Informasi. Yogyakarta : Andi. pp. 44. Biodata Penulis Andrian Jalu Wardana, memperoleh gelar Sarjana Komputer (S.Kom), Jurusan Teknik Informatika STMIK AMIKOM Yogyakarta, lulus tahun 2014. Dr. Kusrini, M. Kom., Magister Teknik Informatika STMIK AMIKOM Yogyakarta.