diperlukan selama pengiriman pesan, seperti informasi validitas pesan, nomor pengirim, nomor penerima dan informasi-informasi lainya. Pada
bagian message body, terdapat isi dari pesan yang akan dikirimkan. Pada sebuah aplikasi penerimaan SMS pada telepon selular
dikenal dengan nomor port, nomor port ini digunakan sebagai pengenal apabila terdapat dua buah atau lebih aplikasi penerimaan SMS pada
sebuah telepon selular. Aplikasi penerimaan SMS tersebut akan menunggu pesan yang ditujukan pada nomor port tersebut. Untuk
mengirimkan pesan pada port yang spesifik, pengirim harus menyertakan nomor port pada pesan yang dikirimkannya. Jika pengirim
tidak menyertakan nomor port, seperti halnya yang dilakukan oleh aplikasi standar setiap telepon selular, maka pesan akan ditunjukan
ke aplikasi standar yang dimiliki oleh setiap telepon selular atau aplikasi memiliki nomor port 0. Informasi nomor port tersebut dibawa
bersama paket pesan yang dikirimkan oleh pengirim, oleh karena itu jika pengirim menyertakan informasi nomor port tujuan, maka
panjang pesan maksimal yang dapat dikirimkan akan berkurang karena sebagian terpakai oleh informasi nomor port .
2.3 Pembahasan Umum JAVA
JAVA menurut definisi dari SUN adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada komputer
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
standalone
ataupun pada komputer dalam lingkungan jaringan. JAVA2 adalah generasi kedua dari JAVA
platform
generasi awalnya adalah
Java Development Kit
. Java berdiri diatas sebuah mesin
interpreter
yang diberi nama
Java Virtual Machine
JVM. JVM ini yang akan membaca
byte code
dalam file .
class
dari suatu program sebagai representasi langsung program yang berisi bahasa
mesin. Oleh karena itu bahasa JAVA disebut sebagai bahasa pemprograman yang
portable
karena dapat dijalankan pada berbagai sistem operasi, asalkan pada sistem operasi tersebut terdapat JVM.
Platform
JAVA memilik tiga buah edisi yang berbeda yaitu J2EE Java2
Enterprise Edition
, J2SE Java2
Second Edition
dan J2ME Java2
Micro Edition
M.Shalahuddin, Rosa A.S, 2006:4. Hubungan antara J2EE, J2SE dan J2ME dapat dilihat pada Gambar 2.5 di bawah ini.
Gambar 2.5 Hubungan antara J2EE, J2SE dan J2ME Martin de Jode, 2004:4
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
2.4 JAVA 2 Platform Micro Edition
J2ME 2.4.1 Sekilas
tentang J2ME
Java 2 Micro Edition
atau yang biasa disebut J2ME adalah lingkungan pengembangan yang didesain untuk meletakkan perangkat
lunak JAVA pada barang elektronik beserta perangkat pendukungnya. Pada J2ME, jika perangkat lunak berfungsi baik pada sebuah perangkat
maka belum tentu juga berfungsi pada perangkat yang lainnya. J2ME biasa digunakan pada telepon seluler,
pager
,
Personal Digital Assistance PDA’s
dan sejenisnya.
Arsitektur J2ME dapat dilihat pada Gambar 2.6 berikut .
Gambar 2.6 Arsitektur
High Level View
J2ME A.N Klingsheim, 2004:21
Teknologi
J2ME
ditujukan untuk cakupan user yang luas sekali dari mulai
handphone
hingga
set-top-box
yang
powerful
seperti halnya sebuah komputer yang dilengkapi dengan
J2SE
atau
J2EE
.
J2ME
memiliki beberapa keunggulan yaitu
http:j2me.winwinfaisal.info
:
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
1. Sebagaimana kekhasan aplikasi yang ditulis dengan bahasa
pemrograman JAVA maka aplikasi
J2ME
memiliki ciri running
any where, any time, over any device
. 2.
Aplikasi dapat dijalankan secara
on-line
maupun
off-line
. 3.
Memiliki kode yang
portable
. 4.
Safe network delivery
. 5.
Aplikasi yang ditulis dengan
J2ME
akan memiliki kompatibilitas yang tinggi dengan platform J2SE dan J2EE
Tetapi selain memiliki beberapa keunggulan, teknologi J2ME juga memiliki beberapa keterbatasan, terutama jika diaplikasikan pada
ponsel. J2ME sangat tergantung pada perangkat
device
yang digunakan, bisa dari segi merk ponsel, maupun kemampuan ponsel, dan
dukungannya terhadap teknologi J2ME. Misalnya, jika sebuah ponsel tidak memiliki kamera maka jelas J2ME pada ponsel tersebut tidak
dapat mengakses kamera. Keterbatasan lainnya adalah pada ukuran aplikasi, karena memori pada ponsel sangat terbatas.
2.4.2 JAVA Messaging
J2ME menyediakan antarmuka interface untuk messaging pada paket javax.wireless.Messaging. Sebuah message memiliki
dua bagian yaitu bagian alamat address port dan bagian data data
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
port. Message direpresentasikan dengan sebuah kelas yang mengimplementasi antarmuka pada paket
javax.wireless.Messaging . Antarmuka dasar untuk messaging
yang terdapat dalam paket tersebut adalah antarmuka Message. Untuk bagian data pada message, API messaging ini mendukung dua jenis
data yaitu text message dan binary message. Kedua jenis pesan ini direpresentasikan oleh subantarmuka dari antarmuka
Message yaitu TextMessage dan BinaryMessage. Untuk pengiriman dan penerimaan pesan, J2ME menyediakan
antar muka MessageConnection. Antar muka ini menyediakan method dasar untuk melakukan pengiriman dan penerimaan pesan.
Instansiasi dari MessageConnection diperoleh dengan memanggil method Connect.Open. Setelah objek MessageConnection
terbentuk, pengiriman pesan dilakukan oleh objek tersebut dengan memanggil method send.
2.4.3 J2ME
Profile
Profile
melengkapi
Configuration
dengan menambahkan kelas- kelas tambahan yang menyediakan fitur-fitur yang lebih spesifik yang
sesuai bagi jenis-jenis
device
tertentu.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
Salah satu
profile
yang terdapat dalam arsitektur J2ME adalah MIDP atau
Mobile Information Device Profile.
Mobile Information Device Profile
MIDP
MIDP atau
Mobile Information Device Profile
adalah spesifikasi untuk sebuah
profile
J2ME.
Profile
ini menambahkan
networking, user interface components,
dan
local storage
pada CLDC.
Profile
ini ditujukan khususnya kepada
mobile device
yang memiliki keterbatasan pada
display
dan fasilitas penyimpanan, dan oleh karena itu MIDP menyediakan
user interface
yang relatif sederhana dan
networking
dasar yang berbasis HTTP 1.1. Posisi MIDP pada arsitektur J2ME dapat dilihat pada Gambar
2.7 di bawah ini.
Gambar 2.7 Posisi MIDP dalam Arsitektur J2ME A.N Klingsheim, 2004:25
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
2.4.4 Kilo Virtual Machine
KVM
KVM atau
Kilo Virtual Machine
adalah paket JVM yang di desain untuk perangkat yang kecil. Posisi KVM pada arsitektur J2ME dapat
dilihat pada Gambar 2.8 di bawah ini.
Gambar 2.8 Posisi KVM pada Arsitektur J2ME
2.4.5 MIDlets
Sebuah
MIDlet
adalah aplikasi JAVA yang didesain untuk dapat berjalan pada
mobile device
. Sebuah
MIDlet
terdiri dari satu atau lebih paket-paket
MIDlet
dan bersama-sama menggunakan suatu
file
JAVA
Archive
JAR.
2.4.5.1 Daur Hidup MIDlet
Di setiap waktu, suatu MIDlet menjalankan satu dari tiga status: Paused, Active, atau Destroyed. Gambar 2.9 di
bawah ini menunjukkan diagram status daur hidup dari sebuah MIDlet.
MIDP
CLDC Kumpulan
Library
KVM
Sistem Operasi
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
Gambar 2.9 Diagram Status Daur Hidup sebuah MIDlet 2.4.5.2 Emulator Perangkat MIDlet
SUN Microsystem telah menyediakan J2ME Wireless Toolkit sering disingkat dengan J2ME WTK untuk
mengembangkan aplikasi dalam handphone. J2ME Wireless Toolkit dapat di download di
http:java.sun.comj2me secara gratis. J2ME Wireless Toolkit adalah kakas yang menyediakan lingkungan emulator,
dokumentasi beserta contoh-contoh aplikasi JAVA untuk perangkat kecil small device.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
Gambar 2.10 berikut ini adalah contoh J2ME Wireless Toolkit versi 2.5.2.
Gambar 2.10 Contoh Emulator J2ME Wireless Toolkit 2.5.2
2.4.6 Java Application Descriptor JAD
Digunakan untuk mendeskripsikan isi aplikasi untuk keperluan pemetaan. File JAD berisi deskripsi file JAR
Java Archive
dan pemetaan atribut
MIDlet
, sedangkan file JAR berisi kumpulan kelas dan
resource
.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
2.5 RMS
MIDlet
tidak menggunakan
file
sistem untuk menyimpan data, tetapi menyimpan semua informasi dalam sebuah memori
non-volatile
memori tetap yang disebut
Record Management System
RMS. Tidak seperti DBMS
Database Management System
yang umum yang bisa bekerja pada
field
kolom data, RMS bekerja hanya pada
record
baris data. Masing-masing
record
terdiri dari
recordID
yaitu suatu nilai integer yang berperan sebagai
key
, dan sebuah
array
bertipe
byte
untuk menyimpan data. Sekumpulan
record
disebut dengan
record store
. Di bawah ini adalah gambar yang menjelaskan penyimpanan
record
dalam
record store
.
Gambar 2.11 Penyimpanan Record dalam Record Store
2.6 Vigenere Chiper
Metode enkripsi Vigenere chiper adalah salah satu seni mengamankan data yang banyak digunakan saat ini. Pada penerapannya Vigenere chiper
yang akan meminta password untuk setiap data yang akan diproses. Password yang
diberikan akan men-generate isi beritadata yang dimaksud. Sehingga akan
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
membentuk deretan kode yang hanya bisa dibaca oleh penerima atau pembaca yang mengetahui kode password yang bersangkutan.
Vigenere cipher adalah contoh terbaik dari chiper alfabet-majemuk ’manual’ yang sangat dikenal karena mudah dipahami dan diimplementasikan.
Cipher menggunakan bujur sangkar vigenere untuk melakukan enkripsi. Kolom paling kiri dari bujursangkar menyatakan huruf-huruf kunci, sedangkan baris
paling atas menyatakan huruf-huruf plainteks. Setiap baris dalam bujur sangkar menyatakan huruf-huruf cipherteks yang diperoleh dengan Caesar chiper, yang
mana jumlah pergeseran huruf plainteks ditentukan nilai numerik huruf kunci tersebut yaitu, a=0, b=1,c=2,....,z=25. Sebagai contoh, huruf kunci c=2
menyatakan huruf-huruf plainteks digeser sejauh 2 huruf ke kanan dari susunan alfabetnya, sehingga huruf-huruf cipherteks pada baris c. Gambar
2.12 berikut ini adalah contoh potongan bujursangkar Vigenere.
Gambar 2.12. Potongan Bujursangkar Vigenere
Bujursangkar vigenere digunakan untuk memperoleh cipherteks dengan lajur kunci yang sudah ditentukan. Jika panjang kunci lebih pendek dari pada
panjang plainteks maka kunci diulang penggunaannya sistem periodik. Bila kunci adalah m, maka periodenya dikatakan m, sebagai contoh jika plainteks
adalah THIS PLAINTEXT dan kunci adalah sony, maka penggunaan kunci secara periodik adalah sebagai berikut :
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
Plainteks : THIS PLAINTEXT
Kunci : sony sonysonys
Bujursangkar vigenere dapat dilihat pada Gambar 2.13 di bawah ini.
Gambar 2.13 Bujursangkar Vigenere
Setiap huruf plainteks akan dienkripsi dengan setiap huruf kunci di bawahnya. Untuk mengerjakan enkripsi dengan Vigenere Chiper, lakukan pada
bujursangkar vigenere sebagai berikut: tarik garis vertikal dari huruf plainteks
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
ke bawah, lalu tarik garis mendatar dari huruf kunci ke kanan. Perpotongan kedua garis tersebut menyatakan huruf cipherteksnya.
Misalkan plainteks THIS PLAINTEKT dienkripsi dengan kunci sony. Karena panjang kunci tidak sama dengan panjang plainteks, maka kunci
diulang secara periodik : Plainteks
: THIS PLAINTEXT Kunci
: sony sonysonys Untuk huruf plainteks pertama T, tarik garis vertikal dari huruf T dan
tarik garis mendatar dari huruf s. Perpotongannya adalah pada kotak yang berisi huruf L. dengan cara yang sama, tarik garis vertikal dari huruf H dan tarik garis
mendatar dari huruf O. Perpotongannya adalah pada kotak yang juga berisi huruf v.hasil enkripsi seluruhnya adalah sebagai berikut :
Plainteks : THIS PLAINTEXT
Kunci : sony sonysonys
Chiperteks : LVVQ HZNGFHRVL
Jika diamati bahwa huruf plainteks T dapat dienkripsi menjadi L atau H, dan huruf cipherteks V dapat merepresentasikan huruf plainteks H, I, dan X.
Hal ini merupakan karakteristik dari chiper alfabet-majemuk. Pada chiper subtitusi sederhana, setiap huruf cipherteks selalu menggantikan huruf plainteks
tertentu, sedangkan pada cipher alfabet-majemuk setiap huruf cipherteks dapat
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
memiliki kemungkinan banyak huruf plainteks. Jadi, dengan menggunakan vigenere chiper, akan dapat mencegah frekuensi huruf-huruf di dalam
cipherteks yang mempunyai pola tertentu dibandingkan dengan metode enkripsi yang lain.
2.7 Unified Modelling Language UML 2.7.1 Gambaran