Kriptografi dan Kompresi Pesan Singkat pada Android

18 July 2013 10 comments

Publikasi pada Prosiding Seminar Nasional Teknologi Informasi Komunikasi dan Industri (SNTIKI) ke-4 Tahun 2012.

Fakultas Sains dan Teknologi Unversitas Islam Negeri Sultan Syarif Kasim Riau

Paper 21 page 66.

ISSN 2085-9902.

Pekanbaru, 03 Oktober 2012

Deskripsi:

Publikasi pada prosiding ini berkaitan dengan penelitian pada skripsi saya. Peneltian ini adalah  pemanfaatan (implementasi) algoritma kriptografi Advanced Encryption Standard (AES) 128 bit yang dikombinasikan dengan algoritma kompresi Huffman. Implementasi penelitian ini adalah algoritma yang diterapkan pada bahasa Java (Android) dan sebagai bahan pengujian penggunaan algoritma tersebut pada pesan singkat (sms).

Prosiding SNTIKI 4

Prosiding SNTIKI 4

Abstrak

Komunikasi melalui Short Message Service (SMS) merupakan teknologi pengiriman pesan yang masih memiliki beberapa permasalahan yaitu ukuran pesan yang terbatas dan keamanan isi pesan. Ukuran pesan yang lebih dari 140 byte akan dikirim lebih dari satu SMS dan isi pesan dapat dibaca oleh orang lain jika memiliki akses ke SMS Center. Implementasi kriptografi dan kompresi pada SMS dapat meningkatkan keamanan pesan serta meningkatkan efisiensi jumlah pengiriman pesan. Algoritma Advanced Encryption Standard (AES) merupakan salah satu metode kriptografi yang handal untuk mengamankan data dan dikombinasikan dengan kompresi Huffman yang menggunakan prinsip statistik untuk menghasilkan data yang berukuran lebih kecil. Kombinasi enkripsi dan kompresi dapat menghasilkan empat mode pengiriman pesan yaitu Compress Only, Compress and Encrypt, Encrypt and Compress dan Encrypt Only. Mode pengiriman Compress Only dapat mengurangi ukuran pesan dengan rasio kompresi sebesar 72,87 %. Sedangkan mode pengiriman Encrypt Only dapat meningkatkan keamanan pesan, tetapi menghasilkan pesan yang lebih besar dari pesan asli. Jika kompresi dan enkripsi dikombinasikan menghasilakan rasio kompresi sebesar 75,94 %. 

Read more…

Membuat Aplikasi Client Server menggunakan Android, PHP dan MySQL

17 June 2013 92 comments

Posting kali ini, kita mencoba membuat aplikasi client server berbasis Android dan menghubungkan dengan database MySQL. Client-server ? Ya…. Kita akan membuat aplikasi Android yang datanya akan disimpan pada sebuah server. Bisa local (localhost) atau di internet.

Mengapa kita harus menympan data di database,  bukankah di Android memiliki database untuk menyimpan data ?. Sebenarnya Android memiliki fasilitas untuk menyimpan data yaitu:

  1. Shared preferences. Terdiri dari key dan value data. Model ini biasanya untuk menyimpan settingan (pengaturan) sebuah aplikasi.
  2. File. Fasilitas ini juga dapat menyimpan data sama halnya dengan Shared Preferences, hanya saja data disimpan ke dalam bentuk file. Misalnya: txt, xml atau bentuk file lainnya
  3. SQLite Database. Fasilitas ini cukup idel untuk menyimpan data yang lumayan banyak. Berbeda halnya dengan no 1 dan 2 di atas yang biasanya untuk menyimpan data yang sedikit seperti pengaturan. Dengan SQLite, kita dapat melakukan query dan table-table  seperti halnya database pada umumnya.

Untuk mempelajari ketiga fasilitas di atas, silakan klik  http://developer.android.com/training/basics/data-storage/index.html.

Ketiga fasilitas di atas menyimpan data pada ponsel pengguna (client). Nah, bagaimana jika ingin data itu selalu update dan dapat mengaksesnya siapa saja dan dimana saja (anyone, anytime and anywhere)?. Itulah alasanya mengapa kita memerlukan sebuah server dalam hal ini MySQL.

Aplikasi yang akan kita bangun tergambar seperti berikut:

Android, PHP, MySQL

Android, PHP, MySQL

Berdasarkan gambar di atas, ponsel Android akan melakukan request (get/post) ke server melalui internet. Cara ini juga sama jika ingin aplikasi berada pada localhost. Selanjutnya web server (dalam hal ini PHP), akan memproses request dari Android dan akan melakukan query ke database (MySQL). Read more…

Insert, Update & Delete on Java

30 June 2012 Leave a comment

CRUD: Create, Read, Update dan Delete merupakan salah satu hal utama dalam pembangunan sebuah aplikasi berbasis database. Pada post kali ini, saya ingin berbagi aplikasi sederhana tentang insert, update dan delete data ke sebuah tabel. Tabel ini nantinya cukup menggunakan DefaultTabelModel saja, agar lebih sederhana.

Pertama, kita membuat database di MySQL.


Create database LATIHAN_JAVA;

Kemudian membuat tabel Mahasiswa dengan 3 field (ID, NIM dan NAMA).

CREATE TABLE IF NOT EXISTS `mahasiswa` (
 `ID` int(11) NOT NULL AUTO_INCREMENT,
 `NIM` varchar(11) DEFAULT NULL,
 `NAMA` varchar(255) DEFAULT NULL,
 PRIMARY KEY (`ID`),
 UNIQUE KEY `NIM` (`NIM`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=39 ;

Read more…

Simple Google Map Viewer di Android

1 June 2012 Leave a comment

Kali ini saya ingin berbagi salah satu keunggulan Android yaitu menampilkan peta dari Google Map. Peta ini dapat dikembangkan lagi menjadi GPS, LSB (Location Base Service) atau lainnya. Pada artikel kali ini, saya hanya ingin berbagi cara sederhana menampilkan peta berdasarkan koordinat (Latitide dan Longitude). Sebelumnya kita harus mendaftarkan API Key untuk bisa menggunakan Maps Baca Cara Mendaftarkan API Key.

Baiklah, pertama kita buat sebuah project Android:

Read more…

Cara Mendaftarkan Key API Google Maps

31 May 2012 3 comments

Membangun aplikasi Android berbasis map (misalnya map viewer, LBS dll) harus memiliki API Google Map. Karena Google Map merupakan hak cipta milik Google. Untuk memanfaatkan Google Map di aplikasi Android, API Key harus ada pada aplikasi yang dibangun agar bisa mengakses database Google Map.

Nah, bagaimana cara mendapatkan key tersebut ??? Untungnya, Google tidak meminta biaya sepeserpun untuk mendapatkan API key tersebut. Syaratnya memiliki akun Google Mail (gmail). Key tersebut digeneret berdasarkan MD5 dari keystore aplikasi Java yang terinstal pada komputer kita. Untuk mendapatkan sertifikat fingerprint (MD5), berikut langkah-langkahnya:

1. Masuk ke direktori “.android”. Letaknya biasanya di : “C:\Users\<user>\.android”. Copy file “debug.keystore” ke direktori C. Langkah ini untuk mempermudah pemanggilan file nantinya. Read more…

Inilah Perbedaan Samsung Android dengan Sony Ericson Android

26 May 2012 4 comments

Pada post kali ini, saya ingin berbagi dari hal yang pernah saya temukan saat membuat aplikasi android. Aplikasi yang saya develope di emulator tidak ada masalah dan berjalan baik. Saya kemudian mencoba menjalankan aplikasi tersebut di perangkat yang berbeda (kebetulan yang saya punya adalah merk Samsung dan Sony Ericson, bukan promosi yach…).

Aplikasi yang saya buat adalah aplikasi sms berbasis Android. Ketika dijalankan pada dua perangkat, aplikasi berjalan baik dan tidak terjadi error. Sms yang dikirim dan diterima juga terbaca dengan baik di aplikasi yang saya buat. Masalah terjadi ketika saya ingin mengirim pesan biner dari desimal 0 (nol) hingga 127 dalam standar GSM 03.38.

Percobaan 1.

Pesan desimal dari 0 (nol) hingga 128 dikirim dari Samsung ke Sony Ericson.

Pesan yang telah dikirim dapat dibaca dengan baik di Sony Ericson dan seluruh karakter dari nol hingga 127 dapat dikonversi ke desimal sesuai dengan aslinya. Dan pesan yang tersimpan pada sentbox di Samsung juga dapat dibaca sesuai dengan karakternya.

Read more…

PHP: Family Tree (Pohon Keluarga)

24 April 2012 5 comments

Pohon keluarga atau Family Tree merupakan salah satu representasi silsilah sebuah keluarga. Hal ini untuk mempermudah melihat dan menggambarkan sebuah keluarga besar. Misalnya keluarga ‘A’ memiliki 7 orang anak. Masing-masing memiliki 2 anak. Dalam postingan ini saya ingin berbagi sebuah source sederhana membangun sebuah pohon keluarga dengan PHP.

Family Tree

Read more…

Follow

Get every new post delivered to your Inbox.

Join 1,092 other followers

%d bloggers like this: