Buku Kriptografi Bahasa Indonesia


Tidak banyak buku yang membahas tentang kriptografi dalam bahasa Indonesia. Baik yang membahas aplikasi, penerapannya hingga yang membahas tentang teori matematika bahkan sampai konsep statistik. Jika kita lihat koleksi buku berbahasa Inggris, sudah banyak. Bahkan beberapa penulis membahas satu topik khusus dalam bagian kriptografi. Seperti Digital Signature karangan Jonathan Katz (2010) dan Guide to Elliptic Curve Cryptography karangan Alfred J. Menezes (2004).

Buku bahasa Indonesia biasanya lebih diminati terutama bagi pembaca kurang mengerti/memahami bahasa Inggris (seperti saya, hehe :D), dan punya keinginan untuk membaca dan memahami kriptografi. Berikut buku-buku kriptografi bahasa Indonesia yang pernah saya lihat, beberapa di antaranya pernah saya baca (tidak bermaksud untuk promosi):

Continue reading

Kriptografi dan Kompresi Pesan Singkat pada Android


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 %. 

Continue reading

Membuat Aplikasi Client Server menggunakan Android, PHP dan MySQL


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). Continue reading

Insert, Update & Delete on Java


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 ;

Continue reading