BAB 2 LANDAS AN TEORI
2.1
MicrosoftOutlookProgramming Outlook menyimpan hal-hal seperti Email, Appointment, Task, dan Contact di
dalam table pada sebuah database berstruktur hirarki.Hal ini tidak seperti Object Model dokumen yang digunakan sebagian besar aplikasi Office lainnya dan dibutuhkan perubahan orientasi bagi para pemrogram yang telah
berpengalaman dalam
pemrograman aplikasi Office seperti Word dan Excel(Ken Slovak, 2007, p1). Sebuah sesi Outlook mulai ketika Outlook dijalankan danberakhir ketika Outlook ditutup. Data dan property yang tersedia pada tahap ini ditentukan oleh profil Outlook yang telah masuk. Setiap profil Outlook mengandung penyimpanan data, akun Email, dan pengaturan lainnya yang menyusun lingkungan Outlook secara keseluruhan. Kebanyakan pengguna hanya memiliki satu Outlook profile standar, tetapi Outlook mendukung pembuatan lebih dari satu profil yang masing-masingnya menyusun lingkungan Outlook yang berbeda.Outlook hanya bisa memiliki satu sesi yang terbuka pada suatu waktu dan hanya bisa menggunakan properti dari suatu profil Outlook pada saat yang sama. Untuk mengganti ke profil Outlook yang lain, Outlook harus ditutup dan dibuka kembali(Ken Slovak, 2007, p5).
2.1.1 Profil Outlook Setiap profil Outlook memiliki akses terhadap tempat penyimpanan data profil tersebut, yang bisa merupakan file PST, kotak pesan Exchange, folder umum Exchange, atau tempat penyimpanan spesial yang dikenal sebagai Custom Store Providers(Ken 6
7 Slovak, 2007, p6).Sebuah profil juga memiliki pengaturan akun Email tertentu dan grup penerimaan pengiriman yang mengatur bagaimana suatu fitur Outlook bertindak, seperti mengirim Email atau undangan pertemuan pada waktu yang ditunda. Lepas dari profil atau property profil, sesi Outlook selalu terbuka menjadi suatu NameSpace¸ yang selalu merupakan “M API”: Outlook. NameSpace _ns; _ns = _app. GetNamespace(“M API”); Kepanjangan M API adalah Messaging Application Programming Interface, Outlook menggunakan protocol M API untuk semua akses datanya dan tempat penyimpanan data Outlook dirancang dalam interface penyimpanan M API (Ken Slovak, 2007, p6).Outlook membungkus sebagian besar protokol dan penyimpanan MAPI dalam Outlook Object Model, jadi hampir secara keseluruhan pemrogram tidak perlu berurusan secara langsung dengan kerumitan M API.
2.1.2 Sesi Outlook Pada semua sesi Outlook, penyimpan data yang tersedia contohnya file PST terdapat dalam Stores Collectiondari objek NameSpace. Setiap objek penyimpanan pada Stores Collection memberikan akses terhadap level teratas dari penyimpanan tersebut. Penyimpanan ini juga bisa diakses melalui objek NameSpace level bawah Folders Collection. Setiap penyimpanan memiliki Folders Collection-nya masing-masing, dan setiap objek folder dalam Folder Collection tersebut bisa memiliki Folders Colletion(subfolders)-nya masing-masing. Tampilan pengguna mewakili koleksi folder dan folder ini dalam bentuk folder Outlook dan subfolder Outlook.
8 2.1.3 Folder Outlook Setiap folder di dalam Outlook didesikasikan untuk meyimpan berbagai macam tipe item seperti Email, Task, Contacts, atau Appointments(Ken Slovak, 2007, p6).Setiap folder mengandung item sesuai dengan tipe item dari masing-masing folder.Ada folder spesial seperti Inbox dan Deleted Items yang bisa menampung berbagai macam item dengan
tipe berbeda (Ken
Slovak,
2007,
p7).Potongan
kode dibawah
ini
menggambarkan bagaimana mengakses item dari folder “Sent Items” Outlook: Outlook. NameSpace oNS; Outlook. Folder oFolder; Outlook. Items colItems; Outlook. M ailItem oM ail; oNS = Application. GetNameSpace(“M API”); oFolder = oNS. GetDefaultFolder(olFolderSentM ail); colItems = oFolder. Items; oM ail = colItems. Item(1); Catatan: •
Kode ini membuat sebuah objek NameSpace dan menggunakan methodGetDefaultFolder() untuk menarik reference ke folder “Sent Items”. Folder ini di deklarasikan sebagai objek Folder.
•
Objek Folder diturunkan dari objek M APIFolder dan ditambahkan method, properti, dan even tambahan.
•
Kode tersebut lalu mendapatkan Items Collection dari folder Sent Items dan mengembalikan reference ke salah satu item dari Items Collection.
9 2.1.4 Outlook Items Setiap Outlook Item mengandung banyak properti yang membentuk item tersebut (Ken Slovak, 2007, p8).Properti standar terdapat di setiap Item danselalu didefinisikan untuk sebuah Item, seperti Subject atau Body.Pengguna juga dapat menambahkan properti pada Item dari kode dan tampilan pengguna.UserProperties juga disebut Named Properties dan memegang peranan penting pada sebagian besar pengembangan Outlook lanjutan, sering digunakan untuk menyimpan data spesifik aplikasi (Ken Slovak, 2007, p8).
2.1.5 Outlook Data Storage Pemrograman Outlook berbeda dengan pemrograman beberapa aplikasi Microsoft Office yang lain karena tidak terfokus pada dokumen tetapi lebih kepada masing-masing Item yang tersimpan dalam database. Setiap item Outlook, Appointment atau Email adalah sebuah baris dalam sebuah database dengan setiap kolomnya merupakan properti individu, seperti Subject.Outlook menyamarkan penyimpanan data dengan Collection dan Item, tetapi masih mengakses database ketika mengakses Outlook Data.Outlook Data disimpan di file PST(Personal Storage) untuk pengguna yang tidak menggunakan Server exchange, dan untuk Archieve dan data offline bagi pengguna Exchange Server.Tempat penyimpanan data Outlook lainnya adalah file berekstensi OST (Offline Storage) yang digunakan dalam mode online dan cached oleh pengguna ServerExchange dan kotak surat Exchange. Hal yang sama dari semua tempat penyimpanan data ini adalah pengaturan tempat penyimpanan dan penggunaan turunan dari basis data JET yang digunakan untuk Access. M enggunakan driver basis data Open
10 Database Connectivity (ODBC), Outlook Items bisa diakses sebagai recordset, meskipun hanya sebagian properti dari item yang tersedia sebagai kolom pada recordset. Outlook Data disusun ke dalam Stores, Folders, dan Items(Ken Slovak, 2007, p9). Setiap objek Folder memiliki kumpulan foldernya sendiri, yang bisa menampung banyak subfolder lagi dengan masing-masing subfolder mampu menampung subfolder sendiri. Folders memiliki hubungan one-to-many dengan items, seperti Emails dan contacts. Setiap Item memiliki properti berbeda yang disimpan dalam barisnya tabel folder item termasuk properti yang sifatnya umum terhadap semua item seperti Subject dan properti yang menyangkut item tertentu seperti tanggal mulai dan akhir dari suatu Appointment.
2.2
S MS SM S adalah layanan yang mengirim dan menerima pesan tertulis singkat (teks)
di antara pengguna telepon genggam.SM S pertama diyakini telah dikirim pada tahun 1992 melalui saluran sinyal jaringan GSM Eropa. Sejak percobaan transfer SM S tersebut berhasil, penggunaan SM S mengalami peningkatan yang luar biasa (Le Bodic, 2005). Pesan teks SM S disusun dari karakter alfanumerik, ataupun karakter-karakrer non alfanumerik. Pesan teks SM S dikemas dalam satu paket/frame yang berkapasitas maksimal 140 byte. Dalam satu paket 140 bytes direpresentasikan berupa 140 karakter huruf latin (8 bit) atau 70 karakter alfabet non-latin (16 bit) seperti huruf pada bahasa Jepang, Korea, dan China. SM S pada awalnya dikembangkan sebagai bagian dari GSM yang memenuhi spesifikasi teknikal ETSI.SM S mengizinkan perangkat mobile dan perangkat jaringan
11 yang terhubung untuk melakukan pertukaran pesan teks singkat.Bekerja berdasarkan standarisasi SM S yang dikemukakan oleh ETSI dan sekarang dilaksanakan dalam ruang lingkup akitivitas 3GPP. Sejak pengenalannya dalam jaringan G SM , sekarang SM S dapat dipakai dalam teknologi jaringan lain seperti GPRS dan CDM A(Le Bodic, 2005).
2.2.1 Fitur Dasar S MS SM S mempunyai sejumlah fitur dasar yaitu: a. Message Submission and Delivery Fitur ini merupakan fitur paling dasar dari SM S yaitu mengirim dan menerima pesan singkat (Le Bodic, 2005). Message Sending Mobile-originated Messages adalah pesan SM S yang disampaikan oleh mobile station kepada SM S center. Pesan tersebutditujukan kepada SM S Entity lain seperti perangkat mobile atau Internet host. SM S entity pengirimmenentukan validity periodyang merupakan waktu pesan SM S dinyatakan valid untuk disimpan sementara pada suatu SM S center. Fitur ini juga dikenal sebagai Short Message-Mobile Originated (SM -MO). Message Delivery Mobile-terminated messages adalah pesan SM S yang disampaikan oleh SM S center kepada mobile station. Fitur juga dikenal sebagai Short Message Mobile Terminated (SM -M T). b. Status Report Fitur ini memungkinkan SM S entity untuk meminta laporan status pengiriman pesan SM S ke SM S entity penerima. Laporan status yang ditujukan kepada
12 pengirim merupakan laporan apakah pesan SM S telah berhasil dikirim kepada SM S entity penerima. c. Reply Path Fitur ini menunjukan bahwa SM S entity atau SM S center yang melayani mampu dan bersedia untuk secara langsung menangani balasan dari SM S entity penerima dalam respon terhadap pesan asli. Dalam situasi ini SM S penerima biasanyamenyerahkan pesan balasan langsung ke SM S center yang melayani penyampaian pesan asli. d. Validity Period Validity period merupakan merupakan batas waktu dimana pesan SM S dianggap valid, setelah itu pesan tersebutdi hapus.
2.2.2 Mode Pengiriman S MS Dalam pengiriman/penerimaan SM S ada dua mode yakni mode teks dan mode PDU (Protocol Data Unit). a. M ode Teks M ode ini adalah cara paling mudah untuk mengirim pesan, karena pada mode ini pesan yang dikirimkan tidak perlu dilakukan koversi lagi melainkan isi pesannya langsung dapat dikirimkan. Teks yang dikirim tetap dalam bentuk aslinya dengan panjang mencapai 160 (7 bit default alfabet) atau 140 (8 bit) karakter.M ode teks ini tidak didukung oleh semua operator GSM ataupun terminal hanya terbatas pada GSM 900, 1800, 1900.
13 b. M ode PDU (Protocol Data Unit) M ode PDU merupakan format pesan dalam bentuk oktet heksadesimal untuk mengirimkan pesan dalam bentuk command dari terminal pengirim ke penerima.PDU format berisi SMS service center, nomor penerima, dan batas waktu pesan disimpan di SM S service center (Period validity).
2.2.3 Cara Kerja Pengiriman S MS Pada saat mengirim pesan, oesan tersebut tidak langsung dikirimkan ke nomor tujuan,tetapi pesan dikirimkan terlebih dahulu ke SM SC (SM S center) baru pesan tersbut diteruskan ke nomor tujuan. Jika nomor tujuan aktif dan berhasil menerima pesan dari pengirim penerimamemberikan respond balik kepada SM SC dan jika nomor tujuan tidak aktid dan tidak bisa menerima pesan dari pengirim maka pesan dari pengirimdisimpan di SM SC sampai period validity-nya habis. Berhasil atau tidak terkirimnya pesan ke nomor tujuan SM SCmemberikan report kepada pengirim (Le Bodic, 2005).
Gambar 2.2-1 S kema Transfer S MS (Le Bodic, 2005, p. 59)
2.3
AT Command
14 Perintah AT (AT Command) digunakan untuk berkomunikasi dengan terminal melalui serial port pada computer. Dengan menggunakan perintah AT, kita dapat mengetahui kekuatan sinyal dari terminal, mengirim pesan, menambahkan item pada buku alamat, mematikan terminal dan banyak fungsi lainnya. Setiap vendor biasanya memberikan referensi tentang daftar perintah AT yang tersedia. Daftar Perintah AT yang berhubungan dengan SM S: a. General Configuration Command Perintah yang digunakan untuk mengatur jalur terminal untuk berkomunikasi dengan perangkat mobile (modem). b. Message Configuration Command Perintah yang digunakan untuk mengatur konfigutasi dari SM S yang ada pada terminal. c. Message Receiving and Reading Command Perintah yang digunakan untuk membaca pesan yang tersimpan di perangkat mobile dan untuk mendapatkan notifikasi pesan masuk. d. Message Sending and Writing Command Perintah untuk membuat , mengirim dan menghapus pesan di dalam perangkat mobile. Tabel 2.3-1 Perintah AT Command yang Berhubungan Dengan S MS
General configuration commands
AT Command
Description
+CSM S
Select message service
+CPM S
Preferred message storage
+CM GF
Message format
+CESP
Enter SMS block mode protocol
+CM S ERROR
Message service failure code
15 M essage configuration commands
M essage receiving and reading commands
M essage sending and writing commands
+CSCA
Service center address
+CSM P
Set text mode parameters
+CSDH
Show text mode parameters
+CSCB
Select cell broadcast message types
+CSAS
Save settings
+CRES
Restore settings
+CNM I
New message indications to TE
+CM GL
List messages
+CM GR
Read message
+CNM A
New message acknowledgment
+CM GS
Send message
+CM SS
Send message from storage
+CM GW
Write message to Memory
+CM GD
Delete message
+CM GC
Send command
+CMM S
More message to send
Contoh penggunaan perintah AT yang umum adalah sebagai berikut: 1. M engecek apakah modemsudah terkoneksi dengan komputer Sintaks
: AT
Respon
: OK ERROR
2. M enentukan mode format pesan menjadi mode teks Sintaks
:AT+CMGF=1
Respon
:OK
3. M enghapus pesan pada indeks ke 0
Sintaks
:AT+CMGD=0
Respon
:OK
16 4. M embaca pesan tertentu Sintaks
: AT+CMGR=0
Respon
:
+CM GR: "REC READ", "+85291234567", "07/04/20,10:08:02+32",145,4,0,0,"+85290000000",145,49 It is easy to read text messages via AT commands. OK
2.4
Smart Card
2.4.1 SejarahS mart Card Smart Card adalah sebuah kartu yang dapat menyimpan dan memproses informasi melalui sebuah sirkuit elektronik yang ditanamkan pada silicon di tubuh plastiknya.Smart Card bersifat portable dan tamper-resistant.Tidak seperti magnetic stripe Card, Smart Card memiliki kemampuan untuk memproses informasi, oleh karena itu tidak dibutuhkan akses ke database ketika terjadi transaksi. (Zhiqun Chen, 2004) Smart Card berawal dari ide menggabungkan sebuah sirkuit elektronik dengan kartu plastik yang diperkenalkan oleh dua orang ilmuwan dari German, yaitu Jurgen Dethloff dan Helmut Grotrupp pada tahun 1968. Percobaan penggunaan Smart Card pertama kali dilakukan di Prancis dan German pada awal tahun 1980, dengan menggunakannya sebagai kartu telepon prabayar dan debit/credit Card.(Zhiqun Chen, 2004) Smart Card memiliki potensi yang besar dalam hal keamanan dan fleksibilitas. Dengan adanya kemajuan pada bidang teknologi chip dan cryptography, Smart Card menjadi semakin baik. Smart Card dapat menggantikan uang cash, menyimpan dan mengamankan data personal seseorang, mencegah akses yang tidak diinginkan terhadap
17 kabel, dan meningkatkan keamanan pada telepon nir kabel. Saat ini Smart Card sudah banyak digunakan diberbagai penjuru dunia, karena fungsinya yang sangat bermanfaat.
Gambar 2.4-1Gambar Depan Smart Card (Zhiqun Chen, 2004, p. 12)
2.4.2 Jenis S mart Card SmartCard
dapat
dibedakan
menjadi
MemoryCard
dan
MicroprocessorCard.Kemudian berdasarkan mekanisme aksesnya dapat dikelompokkan menjadi contactCard dan contactlessCard(Zhiqun Chen, 2004). Memorycard merupakan kartu dengan kemampuan yang terbatas, karena tidak memiliki Microprocessor. Kartu ini hanya dilengkapi dengan chip memori yang tidak dapat menunjang logika pemrograman. Rata - rata MemoryCard dapat menyimpan data sebesar 1K hingga 4K,kartu jenis ini contohnya adalah kartu telepon prabayar. Tanpa adanya CPU untuk melakukan proses data, maka kartu ini hanya dapat menjalankan beberapa perintah terbatas yang telah diprogram sebelumnya. Fungsi yang ada juga sangat terbatas dan tidak dapat diprogram ulang, sehingga kartu ini tidak dapat
18 digunakan kembali.Keunggulan dari kartu ini adalah teknologinya yang sederhana dan harganya yang murah. Sedangkan MicroprocessorCard sesuai dengan namanya adalah kartu yang dilengkapi dengan processor. Dengan adanya processor kartu ini memiliki kemampuan dan keamanan yang lebih tinggi. Data tidak dapat secara langsung diproses oleh sembarang aplikasi, processor dapat menyediakan keamanan melalui password, enkripsi, dll.Kartu ini contohnya banyak digunakan sekarang sebagai kartu identitas dan kartu bank, dimana keamanan data dan privasi adalah prioritas utama. Berdasarkan mekanisme akses kartunya, dapat dibedakan menjadi contact Card yaitu kartu yang harus dimasukkan ke dalam mesin pembaca kartu.Kartu ini berkomunikasi dengan menggunakan 8 contact point ketika dimasukkan.Karena dirasakan kurang efisien jika harus memasukkan kartu terlebih dahulu, maka contactless Card menjadi lebih luas digunakan.ContactlessCard tidak perlu untuk dimasukkan ke dalam
mesin
pembaca
kartu,
tetapi
dapat
berkomunikasi
melalui
bidang
elektromagnetik. Daya untuk kartu ini dapat diperoleh dari batere internal atau didapatkan dari mesin pembaca kartu melalui bidang elektromagnetik kartu ini.
Gambar 2.4-2 Contact PointsSmart Card (Zhiqun Chen, 2004, p. 15)
19
2.4.3 Komunikasi Smart Card Untuk dapat membaca Smart Card, kartu tersebut harus dimasukkan ke dalam Card Acceptance Device (CAD) yang memungkinkan untuk terhubung dengan komputer.CAD dapat dibedakan menjadi dua, yaitu Reader dan terminal. Reader adalah sebuah alat yang terhubung dengan komputer melalui serial, pararel, atau port USB. M elalui alat ini Smart Card dapat berkomunikasi dengan komputer tersebut. Sebuah Reader memiliki slot kosong untuk memasukkan kartu atau dapat juga menerima data melalui bidang elektromagnetic Smart Card. Selain memberikan daya bagi Smart Card, Reader juga membuat jalur komunikasi data sehingga Smart Card dapat berkomunikasi dengan komputer(Zhiqun Chen, 2004). Sedangkan terminal merupakan komputer, tetapi komputer yang digabungkan dengan komponen yang dapat membaca Smart Card. Salah satu contoh dari terminal adalah ATM . Terminal dengan komponen yang dapat membaca Smart Card tersebut,mampu untuk memproses dan melakukan pertukaran data dengan Smart Card. Komunikasi yang terjadi antara Smart Card dengan komputer baik melalui Reader maupun terminal adalah half-duplex. Data dapat dikirim dari kartu ke komputer atau sebaliknya, tetapi tidak dalam waktu yang bersamaan. Sama seperti komunikasi antara komputer, komunikasi Smart Card dengan komputer juga menggunakan paket data yang dinamakan Application Protocol Data Units (APDU).APDU dapat berisi perintah untuk Smart Card atau pesan respon dari Smart Card. Smart Card selalu bersifat pasif menunggu perintah dari komputer, lalumenjalankan perintah tersebut dan mengirimkan respon balik kepada komputer(Zhiqun Chen, 2004).
20
21 Sesuai dengan ISO 7816-4, APDU merupakan protocol yang berada pada application-level antara komputer dengan smartcard. Pesan APDU terdiri dari dua struktur, yang pertama disebut command APDU (C-APDU) yaitu perintah yang diberikan komputer kepada smartcard.Dan yang kedua disebut response APDU (RAPDU) yaitu pesan balik yang dikirimkan oleh smartcard kepada komputer.C-APDU terdiri dari 2 bagian yaitu header dan body, R-APDU juga terdiri dari 2 bagian yaitu body dan mandatorytrailer (Zhiqun Chen, 2004).
Gambar 2.4-3 S truktur command APD U(Zhiqun Chen, 2004, p. 18)
Gambar 2.4-4 S truktur respon se APDU(Zhiqun Chen, 2004, p. 18) Bagian pertama dalam C-APDU adalah header yang berisi 4 byte, yaitu CLA (class of instruction), INS (instruction code), dan P1 dengan P2 (parameter 1 dan 2).CLA mengidentifikasikan kategori dari perintah yang dikirimkan, INS menentukan instruksi yang diberikan pada perintah, dan P1 P2 digunakan untuk memberikan informasi tambahan pada instruksi yang diberikan. Bagian kedua dalam C-APDU adalah body, bagian ini bersifat pilihan dan memiliki besar yang tidak tetap, terdiri dari Lc, datafield, dan Le.Bagian Lc memberikan informasi jumlah byte yang terdapat dalam datafield. Sedangkan datafieldmerupakan
22 data tambahan yang dikirimkan kepada kartu untuk menjalankan instruksi yang terdapat pada bagian header. Yang terakhir adalah Le yaitu jumlah byte yang diharapkan pada R-APDU yang diberikan oleh smart card. Setelah mendapatkan C-APDU, kartu akan memberikan pesan balik berupa RAPDU. Bagian pertama dari R-APDU adalah body yang hanya berisi data field, panjang dari bagian ini ditentukan oleh Le pada R-APDU. Lalu pada bagian mandatory trailer berisi SW 1 dan SW 2 yang disebut juga statusword, bagian ini menunjukkan status hasil dari proses C-APDU oleh smart card. M isalnya jika status word bernilai “0x9000”, maka artinya C-APDU berhasil dijalankan dengan baik. Karena bagian body pada C-APDU dan R-APDU bersifat pilihan, maka APDU dapat dikelompokan menjadi 4 kasus yaitu : •
Tidak ada datafield yang dikirimkan kepada atau dari kartu, C-APDU hanya terdiri dari header maka R-APDU hanya terdiri dari mandatorytrailer.
•
Tidak ada datafield yang dikirimkan kepada kartu, tetapi ada datafield yang diberikan oleh kartu. C-APDU mengirimkan Le, maka R-APDU akan merespon dengan datafield sebesar Le yang diberikan (dalam byte).
•
Datafield dikirimkan kepada kartu, tetapi tidak ada datafield yang diberikan oleh kartu. C-APDU hanya mengirimkan Lc dan datafield tanpa adanya Le, maka RAPDU hanya berisi mandatorytrailer.
•
Datafield dikirimkan kepada kartu, dan data field juga diberikan oleh kartu. CAPDU mengirimkan Lc, datafield, dan Le, maka R-APDU akan berisi datafield, SW1, dan SW2.
23
Gambar 2.4-5 S truktur kasus APDU(Zhiqun Chen, 2004, p. 20)