• Tidak ada hasil yang ditemukan

SMART CARD APPLICATION IN ACADEMIC INFORMATION SYSTEM

N/A
N/A
Protected

Academic year: 2019

Membagikan "SMART CARD APPLICATION IN ACADEMIC INFORMATION SYSTEM"

Copied!
329
0
0

Teks penuh

(1)

TUGAS AKHIR

Diajukan untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik pada

Program Studi Teknik Elektro

Fakultas Teknik Universitas Sanata Dharma

Disusun oleh :

RB SURYO INDRIANTO

NIM : 035114014

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS TEKNIK

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2007

(2)

FINAL PROJECT

Presented as Partial Fulfillment of the Requirements

To Obtain the SARJANA TEKNIK Degree

in Electrical Engineering

of Sanata Dharma University

By :

RB SURYO INDRIANTO

Student Number : 035114014

ELECTRICAL ENGINEERING STUDY PROGRAM

ELECTRICAL ENGINEERING DEPARTMENT

ENGINEERING FACULTY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2007

(3)
(4)
(5)
(6)

Kupersembahkan tugas akhir ini

kepada kedua orang tuaku, kakakku,

dan kepada semua orang yang sedang menderita karena teknologi.

Freedom Is A Choice

And

Your Choice Is Your Freedom

(7)

INTISARI

Smart card

adalah kartu plastik dengan

chip

mikroprosesor yang tertanam

didalamnya.

Smart card

akan diaplikasikan untuk memberikan kemudahan dalam

mengakses informasi akademik.

Smart card

akan diisi dengan data-data historis

mahasiswa seperti NIM, IPK, jumlah SKS, dan informasi lain.

Dalam penelitian ini

smart card

dibuat dalam bentuk model menggunakan

mikrokontroler AVR ATTINY2313. Model

smart card

ini mampu menampung data

sebesar 128 byte. Protokol komunikasi yang digunakan mengacu pada standar ISO 7816.

Program PC terminal sebagai sumber informasi akan menyediakan berbagai data yang

hendak disimpan pada

smart card

. Selain itu sistem ini juga menyediakan program yang

berfungsi khusus untuk pembacaan

smart card

, sehingga akan lebih mempermudah

pengguna dalam mengakses informasi.

Penelitian ini telah berhasil mengaplikasikan

smart card

dalam sistem informasi

akademik.

Smart card

dapat digunakan untuk menyimpan infomasi akademik

mahasiswa.

Kata kunci:

smart card

, sistem informasi akademik, ISO 7816

(8)

ABSTRACT

Smart card is a plastic card with a microprocessor chip embedded in it. The smart

card will be applied to provide simplicity to access academic information. The smart card

will be loaded with student historical data such as: student number, GPA, number of

credit, and other information.

In this research the smart card is made into a model which uses AVR

ATTINY2313 microcontroller. This smart card model is able to store 128 byte data.

Communication protocol used refers to ISO 7816 standard. The PC terminal program as

information source provides various data which will be stored in the smart card.

Additionally this system also provides a program which specifically to read the smart

card to be more user-friendly in accessing information.

This research succeeded applies the smart card into information academic system.

The smart card can be used to store student academic information.

Keywords: smart card, academic information system, ISO 7816

(9)

Puji dan syukur kepada Allah Bapa atas segala kasih dan karunia-Nya sehingga

penulis dapat menyelesaikan penulisan tugas akhir ini tepat pada waktunya. Tugas akhir

ini berjudul aplikasi smart card dalam sistem informasi akademik.

Tugas akhir ini dibuat untuk memenuhi salah satu syarat dalam memperoleh gelar

sarjana teknik pada program studi Teknik Elektro Universitas Sanata Dharma. Penulisan

tugas akhir ini didasarkan pada hasil yang penulis peroleh berdasarkan pada perancangan

alat, pembuatan alat, dan sampai pada pengujian alat.

Penulis menyadari bahwa tugas akhir ini tidak akan terwujud dengan baik tanpa

bantuan dari pihak lain. Oleh karena itu pada kesempatan ini, penulis ingin mengucapkan

terima kasih kepada:

1.

Yesus Kristus, sumber segala inspirasiku

2.

Bapak Ir. Iswanjono, M.T. sebagai dosen pembimbing I yang telah bersedia

memberikan ide, saran, bimbingan, dan waktu untuk penulis dalam

menyelesaikan tugas akhir.

3.

Bapak Ir. Tjendro selaku dosen pembimbing II yang telah memberikan

pengarahan dan bimbingan dalam penyelesaian tugas akhir ini.

4.

Para laboran khususnya mas Mardi dan mas Sur sebagai obat stres paling

manjur dikala gundah gulana.

5.

Mas Ucup yang selalu membuat lab bersih mewangi sepanjang hari.

6.

Yakob, Gigih, Denis, Alex, Jo, Inggit, dan semua angkatan 2003 atas

sumbangan semangatnya.

7.

Anak-anak kos 125, Sweaty, Nicken, Dora the exploler, Rosa, San2 Wa2, Cik

Na2, yang merelakan diri terganggu ketenangan hatinya.

(10)

Oleh karena itu, kritik dan saran yang sifatnya membangun dari semua pihak akan sangat

membantu dalam perbaikan-perbaikan karya tulis ini.

Yogyakarta, 3 Agustus 2007

Penulis

(11)

Lembar Pengesahan oleh Pembimbing...

Lembar Pengesahan oleh Penguji...

Lembar Pernyataan Keaslian Karya...

Halaman Persembahan dan moto hidup...

Intisari...

Abstract...

Kata Pengantar...

Daftar Isi ...

Daftar Gambar...

Daftar Tabel ...

BAB 1 Pendahuluan ...

1.1 Latar Belakang Masalah ...

1.2 Rumusan Masalah...

1.3 Batasan Masalah ...

1.4 Tujuan Penulisan ...

1.5 Manfaat Penulisan………...

1.6 Metodologi Penulisan...

1.7 Sistematika Penulisan...

BAB 2 Dasar Teori ...

2.1

Definisi Smart Card ...

2.2

Jenis-jenis Kartu Dan Standarisasinya...

2.2.1

Memory Card...

2.2.2

Contact CPU Card...

2.2.3

Contactless Card...

2.2.4

Combi Card...

2.3

Format Kartu...

2.4

Terminal Kartu (Card Reader)...

2.5

Protokol Komunikasi...

2.5.1

Command...

2.5.2

Card Status...

(12)

2.6.2

EEPROM...

2.6.3

USART...

a.

USART I/O Data Register (UDR)...

b.

USART Control and Status Register A (UCSR A)...

c.

USART Control and Status Register B (UCSRB)...

d.

USART Control and Status Register C (UCSRC)...

e.

USART Baud Rate Register (UBRRH,UBRRL)...

f.

Format Frame...

2.7

Visual Basic 6.0 Enterprises Edition...

2.7.1

Window Property...

2.7.2

Form Designer...

2.7.3

Form Window layout...

2.7.4

Komunikasi serial dengan Visual Basic 6.0 Enterprises...

a.

Konfigurasi Port Serial...

b.

Pengaksesan Port Serial...

2.8

RS 232...

2.9

Database...

BAB 3 Perancangan... ...

3.1 Diagram Blok Sistem ...

3.2 Perancangan Perangkat Keras ...

3.2.1 Smart Card...

3.2.2 Antarmuka Serial...

a.

Catu Daya...

b.

Sistem Clock...

c.

Konverter Logika RS232 ke TTL...

3.2.3 Desain card reader...

3.3 Perancangan Perangkat Lunak ...

3.3.1 Perangkat Lunak Smart Card ...

a.

Data dan Lokasi Memori...

b.

Protokol Komunikasi...

(13)

b.

Form Admin...

c.

Form User...

d.

Form Pelengkap...

e.

Database...

BAB 4 Hasil dan Pembahasan...

4.1 Model smart card dan card reader...

4.2 Sistem operasi smart card...

4.2.1 Protokol komunikasi...

a.

ATR (Answere To Reset)...

b.

Command dan Response...

4.2.2 Memori EEPROM...

4.3 Program PC Terminal...

4.3.1 Program Sistem Informasi Akademik “SIA”...

4.3.2 Program “READER”...

4.3.3 Database mahasiswa...

BAB 5 Kesimpulan dan Saran

5.1 Kesimpulan...

5.2 Saran...

Daftar Pustaka...

Lampiran...

54

57

59

60

60

61

62

62

62

63

65

66

67

76

78

81

81

81

83

85

(14)

Gambar 2.2 TPDU Header...

10

Gambar 2.3 Format 1 APDU Command...

11

Gambar 2.4 Format 2 APDU Command...

11

Gambar 2.5 Format 3 APDU Command...

11

Gambar 2.6 Format 4 APDU Command...

11

Gambar 2.7 Format APDU Response...

12

Gambar 2.8 Protokol komunikasi antara terminal dan smart card...

13

Gambar 2.9 Arsitektur AVR ATTiny2313...

14

Gambar 2.10 EEAR (EEPROM Address Register)...

15

Gambar 2.11 EEDR (EEPROM Data Register)...

15

Gambar 2.12 EECR (EEPROM Control Register)...

16

Gambar 2.13 UDR (USART I/O Data Register)...

18

Gambar 2.14 UCSRA (USART Control and Status Register A)...

19

Gambar 2.15 UCSRB (USART Control and Status Register B)...

19

Gambar 2.16 UCSRC (USART Control and Status Register C)...

20

Gambar 2.17 USART Baud Rate Register (UBRRH,UBRRL) ...

20

Gambar 2.18 Format Frame ...

22

Gambar 2.19 Konfigurasi Port Serial...

24

Gambar 2.20 Level tegangan RS232 pada pengiriman huruf “A” tanpa

bit paritas ...

27

Gambar 2.21 Struktur Database ...

28

Gambar 3.1 Diagram Blok Sistem ...

29

(15)

Gambar 3.5 Konfigurasi IC MAX 232 ...

34

Gambar 3.6 Rangkaian Antarmuka Serial ...

34

Gambar 3.7 Desain Card Reader ...

35

Gambar 3.8 Flowchart Sistem...

37

Gambar 3.9 Flowchart Komunikasi...

37

Gambar 3.10 Format ATR...

39

Gambar 3.11 Flowchart Subroutine serial_kirim ...

40

Gambar 3.12 Flowchart Sistem Operasi Smart Card ...

41

Gambar 3.13 Flowchart Cek Command ...

42

Gambar 3.14 Flowchart Simpan Data...

43

Gambar 3.15 Flowchart Baca Data...

44

Gambar 3.16 Flowchart Subroutine serial_status ...

45

Gambar 3.17 Form Menu...

46

Gambar 3.18 Form Admin...

47

Gambar 3.19 Form User...

47

Gambar 3.20 Form Pswadmin...

48

Gambar 3.21 Form Pswuser...

48

Gambar 3.22 Form Help...

48

Gambar 3.23 Flowchart Form Menu...

49

Gambar 3.24 Flowchart Form Admin...

50

Gambar 3.25 Flowchart Simpan Data Baru...

51

Gambar 3.26 Flowchart Edit Data...

51

(16)

Gambar 3.30 Flowchart Form User...

55

Gambar 3.31 Flowchart Baca Data Dari Smart Card (Read)...

55

Gambar 3.32 Flowchart Upgrade data...

56

Gambar 3.33 Flowchart Ubah Password...

56

Gambar 3.34 Flowchart password untuk admin...

58

Gambar 3.35 Flowchart password untuk user...

58

Gambar 3.36 Koneksi Database...

59

Gambar 4.1 Model Smart Card...

60

Gambar 4.2 Card Reader...

61

Gambar 4.3 Answer To Reset...

62

Gambar 4.4 Data EEPROM...

65

Gambar 4.5 Tampilan splash screen “SIA”...

67

Gambar 4.6 Tampilan Form Menu...

67

Gambar 4.7 Tampilan form password untuk admin...

68

Gambar 4.8 Tampilan Form Admin...

68

Gambar 4.9 Tampilan Password untuk User...

72

Gambar 4.10 Tampilan Form User...

73

Gambar 4.11 tampilan Cek Data...

75

Gambar 4.2 Tampilan update password...

75

Gambar 4.13 Tampilan Form Help...

76

Gambar 4.14 Tampilan splash screen “READER”...

77

(17)
(18)

Tabel 2.2. Mode Bit EEPROM...

16

Tabel 2.3. Pengaturan Baud Rate………..

21

Tabel 2.4. Alamat dan lokasi bit register UART ...

25

Tabel 3.1. Data dan lokasi memori...

38

Tabel 3.2. Tabel Protokol Komunikasi...

39

Tabel 3.3. Tabel Database...

59

Tabel 4.1 Tabel pengujian command dan response...

63

(19)

1.1

Latar Belakang Masalah

Ada berapa definisi tentang

smart card

tergantung aplikasi dari

smart card

itu

sendiri. Secara umum

smart card

atau kartu pintar adalah kartu plastik dengan

mikroprosesor yang terintegrasi didalamnya. Mikroprosesor inilah yang menjadi otak

dari

smart card

.

Teknologi

smart card

sudah ada sejak 20 tahun yang lalu.

Smart card

pertama kali diperkenalkan sebagai sistem pembayaran telepon. Dewasa ini

smart

card

mengalami perkembangan yang sangat pesat dalam hal aplikasi dan teknologi.

Smart card

mulai digunakan untuk berbagai aplikasi seperti a

ccess control, computer

logon,

pengaman

data base

, dan pembayaran elektronik.

Teknologi tersebut menawarkan banyak manfaat signifikan bagi para

penyedia dan pengguna jasa, sekaligus menawarkan tantangan bagi siapa saja yang

ingin mengembangkan inovasi ini lebih lanjut. Mobilitas tinggi didapatkan dari

ukuran fisik yang kecil dengan dimensi

chip

hanya 85,6 mm x 54 mm. Keamanan

data didukung oleh adanya mikroprosesor dalam

chip

yang dapat melakukan proses

enkripsi

data yang disimpan. Kestabilan dan kecepatan dapat dioptimalkan dengan

makin banyaknya bahasa pemrograman yang mendukungnya [1].

Dalam suatu perguruan tinggi, tentunya tidak lepas dari sistem informasi

yang berlaku pada perguruan tinggi yang bersangkutan. Sistem itu disebut sistem

informasi akademik. Dengan semakin berkembangnya suatu perguruan tinggi,

(20)

bertambahnya mahasiswa, dan ilmu pengetahuan yang semakin berkembang, mau

tidak mau perguruan tinggi harus meningkatkan pelayanan dan kualitas sumber daya

manusia yang ada. Perguruan tinggi yang baik tentu memiliki sistem informasi

akademik yang cukup bahkan lebih untuk mahasiswa, dosen, karyawan, dan calon

mahasiswa yang akan mendaftar.

Sebuah perguruan tinggi yang memiliki sistem informasi akademik yang

handal dan selalu di-

update

akan mendukung kinerja perguruan tinggi yang

bersangkutan baik dalam pelayanan terhadap mahasiswa maupun karyawan [2].

Universitas Sanata Dharma sebagai salah satu Perguruan Tinggi Swasta di

Yogyakarta mulai berusaha meningkatkan sistem informasi akademik yang dimiliki.

Peluncuran

web site

Sistem Pengolahan Sumber Belajar Digital pada akhir tahun

2006 merupakan salah satu wujud usaha tersebut.

Web site

ini diharapkan mampu

menjadi sumber informasi bagi komunitas yang membutuhkannya.

Penggunaan fasilitas

web site

dalam suatu sistem informasi memang sudah

sangat umum dilakukan. Namun sistem seperi ini memiliki kekurangan dalam hal

mobilitas dan biaya karena untuk mengaksesnya masih tergantung jaringan internet

dan dengan biaya akses yang tidak murah.

Salah satu tuntutan yang dihadapi dunia pendidikan saat ini adalah

menciptakan sistem pelayanan terhadap mahasiswa yang dapat memberikan

kemudahan dalam mengakses informasi dengan tingkat keamanan yang tinggi,

mobilitas tinggi, ketangguhan terhadap gangguan, kestabilan, dan unjuk kerja yang

(21)

Berdasarkan uraian diatas akan dilakukan penelitian tentang aplikasi

smart

card

dalam sistem informasi akademik. Penggunaan

smart card

dapat menjadi salah

satu alternatif dalam penyediaan informasi.

Smart card

akan diisi dengan data-data

historis mahasiswa seperti NIM, IPK,jumlah SKS, KP, KKL, TA, dan lain lain yang

merupakan syarat kelulusan pada Program Studi Teknik Elektro Universitas Sanata

Dharma.

1.2

Rumusan Masalah

Dari uraian latar belakang masalah diatas dapat dirumuskan dua rumusan

masalah yaitu

1.

Bagaimana merancang model

smart card

dan

card reader

berbasis

mikrokontroler ?

2.

Bagaimana merancang

software

PC terminal ?

1.3

Batasan Masalah

Penelitian ini memiliki batasan masalah sebagai berikut

1.

Jenis kartu yang dibuat adalah jenis

contact CPU card

.

2.

Standar antarmuka ISO 7816

3.

Kartu berisi data historis mahasiswa seperti NIM, IPK, KKL, KP, dan

lain-lain.

4.

Smart Card

berbasis mikrokontroler AVR ATTiny2313 dengan kapasitas

(22)

1.4

Tujuan Penulisan

Tujuan dari penelitian ini adalah

1.

Memaparkan perancangan model

smart card

dan

card reader

berbasis

mikrokontroler.

2.

Memaparkan perancangan

software

PC terminal

1.5

Manfaat Penulisan

Penelitian ini memiliki beberapa manfaat yang dapat dipetik. Bagi penulis

penelitian ini dapat menambah pengetahuan tentang aplikasi

smart card

khususnya

dalam sistem informasi akademik. Bagi pembaca penelitian ini dapat menjadi bahan

pertimbangan dalam memanfaatkan teknologi

smart card.

Penelitian ini juga

bermanfaat bagi perkembangan ilmu pengetahuan dan teknologi.

1.6

Metodologi Penelitian

Penelitian ini dilakukan dengan metodologi penelitian berupa perancangan

hardware

dan

software

, pengujian alat, pengambilan data, analisis data, dan

penarikan kesimpulan.

1.7

Sistematika Penulisan

(23)

BAB I PENDAHULUAN

Dalam bab ini telah diuraikan tentang pemilihan topik sebagai dasar

pemikiran lewat latar belakang penelitian, rumusan masalah yang akan dibahas,

batasan masalah, tujuan penulisan, manfaat, dan metodologi dari penelitian ini.

BAB II DASAR TEORI

Dalam bab ini akan dipaparkan beberapa teori mengenai

smart card

dan

mikrokontroler yang akan digunakan dalam perancangan

BAB III PERANCANGAN

Pada bagian ini akan dilakukan perancangan model

smart card

dan

card

reader

serta

software

terminal.

BAB IV HASIL DAN PEMBAHASAN

Bab ini berisi pembahasan terhadap data yang telah diperoleh

BAB V KESIMPULAN DAN SARAN

Bagian ini menyimpulkan uraian dari bab-bab sebelumnya agar dapat

memberi penjelasan dalam memahami maksud dan tujuan penulisan serta akan

diberikan beberapa saran bagi siapa saja yang ingin membahas topik ini lebih

(24)

2.1 Definisi Smart Card

Istilah

smart card

memiliki berbagai macam pengertian karena

smart card

telah digunakan dalam berbagai aplikasi. Jadi penggunaan

smart card

akan

menentukan definisi dari

smart card

. Secara umum

smart card

didefinisikan sebagai

kartu plastik dengan

chip

mikroprosesor yang terintegrasi didalamnya.

Mikroprosesor berperan sebagai otak dari kartu sehingga kartu memiliki kemampuan

untuk berpikir dan perintah yang dikehendaki [3].

2.2 Jenis-jenis Kartu Dan Standarisasinya

Secara umum jenis kartu ada 4 macam yaitu

memory card, contact CPU

card, contactless card

, dan

combi card.

2.2.1 Memory Card

Memory card

adalah sebuah kartu yang hanya memiliki memori dan akses

logika saja. Hampir sama dengan kartu pita magnetik,

memory card

hanya

mampu digunakan untuk tempat penyimpanan data saja. Data yang tersimpan

dapat diakses dengan suatu perintah tertentu dan biasanya kartu jenis ini tidak

memiliki pengendali keamanan.

(25)

2.2.2 Contact CPU Card

Kartu jenis ini memiliki mikroprosesor yang terdapat pada kartu. Dengan

adanya mikroprosesor maka program yang terdapat didalam chip dapat

dieksekusi. Di dalam

chip

terdapat 4 blok utama yaitu ROM, RAM, memori

EEPROM, dan I/O port.

Contact CPU Card

memiliki tingkat keamanan yang

lebih tinggi dari

memori card

2.2.3 Contactless Card

Teknologi

contactless card

mampu meningkatkan efektifitas transaksi data

dari jenis kartu sebelumnya sehingga mampu digunakan untuk berbagai macam

aplikasi. kartu jenis ini mentransfer data tanpa ada kontak elektrik antara kartu

dan terminalnya. Dapat berupa

memory card

atau

microprocessor card

.

2.2.4 Combi Card

Combi card

adalah gabungan dari

contact

dan

contactless card

. Kedua jenis

kartu ini memiliki protokol komunikasi dan proses pengembangan yang berbeda.

Gabungan dari kedua jenis kartu ini akan menghasilkan kartu dengan tingkat

keamanan dan efisiensi yang tinggi [1].

Ada banyak manufaktur yang membuat

smart card

sehingga perlu dibuatkan

standarisasi skala internasional untuk memudahkan dalam pertukaran dan transfer

(26)

card

tunduk pada standarisasi yang ditetapkan oleh ISO (

International Organisation

for Standarisation

) / IEC (

International Electrotechnical Commission

) dan CEN

(

Comite Eurpean de Normalisation

). Dokumen standarisasi

smartcard

yang perlu

diketahui untuk penulisan ini hanya dokumen ISO7816 [3].

2.3 Format Kartu

Smartcard

mempunyai format yang hampir sama dengan jenis kartu lain,

misalnya kartu magnetik. Standarisasi format kartu dapat dilihat pada gambar 2.1.

Kartu ini mempunyai dimensi chip 85,6mm x 54mm. Semua jenis

smartcard

memiliki

chip

dengan dimensi yang sama. Chip ini ditanam dalam plat plastik tipe

ID-1 yang terbuat dari bahan PVC dengan tebal 0,76 mm sesuai standar ISO 7810.

Selain plat ID-1 ada juga plat tipe ID-00 dan ID-000 dengan dimensi masing-masing

66,10mm x 33,10mm dan 25mm x 15mm.

(27)

2.4 Terminal Kartu (Card Reader)

Satu-satunya cara untuk menghubungkan

smart card

dengan ‘dunia luar’

adalah lewat komunikasi serial. Perangkat tambahan yang dibutuhkan untuk

melakukan kontak listrik ke

smart card

disebut

Terminal

. Fungsi lainya adalah untuk

memberi suplai listrik ke

smart card

. Sebutan lain untuk terminal adalah

card reader

atau

chip reader

atau

smart card reader

.

Terminal harus mampu melayani mekanisme khusus dalam melakukan

kontak elektrik ke

smart card

dan memberikan suplai listrik ke dalam

chip

smart

card

, sebelum melakukan proses selanjutnya. Pada saat

smart card

dimasukkan ke

dalam terminal maka proses yang terjadi adalah terminal melakukan kontak dan

menyalurkan suplai listrik ke dalam

chip smart card

, kemudian terminal mendeteksi

respon dari

smart card

lalu mengirim byte

-

byte

dalam format tertentu lewat kabel

serial [1].

2.5 Protokol Komunikasi

Protokol komunikasi antara terminal dan

smart card

tercantum dalam ISO

7816-3 (

transport protocol

) dan ISO 7816-4 (

aplication protokol

) [3]. Kedua

protokol tersebut akan dibahas dalam bagian ini.

Terminal akan menginisialisasi sebuah

smart card

dengan mengirimkan

sinyal pada kontak reset (RST). Kartu akan merespon dengan mengirimkan sejumlah

byte kepada teminal yang disebut dengan ATR (

AnswerTo Reset

). ATR terdiri dari

dua bagian yaitu

protocol byte

yang menyediakan informasi tentang protokol

(28)

tentang tipe kartu. Panjang

historical byte

biasanya 14 byte tergantung dengan tipe

kartu.

Setelah sinyal ATR ditransmisikan maka terminal dapat berkomunikasi

dengan

smart card

dengan mengirimkan

command

.

Command

tersebut dibuat dalam

satu paket yang disebut

transport protocol data unit

(TPDU). Setiap paket dimulai

dengan lima byte (

header

) yang diikuti dengan sejumlah data jika diperlukan. Format

dari TPDU

Header

ditunjukkan oleh gambar 2.2.

CLA INS P1 P2 P3

Gambar 2.2 TPDU Header [3]

Dengan perincian masing-masing byte adalah sebagai berikut

1.

Class byte

(CLA) adalah

clas

2.

s instructions.

3.

Instruction byte

(INS) adalah byte instruksi yang menjadi indikator bahwa

terminal akan mengirim data atau menerima data dari

smart card.

4.

Parameter byt

e (P1 dan P2) adalah parameter dari instruksi.

5.

Parameter byte

(P3) adalah byte yang menunjukkan terminal akan mengirim

data ke kartu (Lc) atau terminal menerima data dari kartu (Le).

2.5.1 Command

(29)

a.

Tidak diperlukan pertukaran

byte data. Format pertama dari APDU

Command

tampak pada gambar 2.3 berikut.

CLA INS P1 P2

Gambar 2.3 Format 1 APDU Command [3]

b.

Terminal akan menerima data dari

smart card

(Le). Ini adalah bentuk kedua

dari format APDU

Command

seperti tampak pada gambar 2.4.

CLA INS P1 P2 Le

Gambar 2.4 Format 2 APDU Command [3]

c.

Terminal akan mengirim data ke

smart card

(Lc). Gambar 2.5 menunjukkan

format ketiga dari APDU

Command.

CLA INS P1 P2 Lc Data

Gambar 2.5 Format 3 APDU Command [3]

d.

Terminal akan mengirim data ke

smart card

(Lc) dan juga menerima data

dari

smart card

(Le). Kemungkinan keempat ini tampak pada gambar 2.6.

CLA INS P1 P2 Lc Data Le

(30)

2.5.2 Card Status

Card status

(SW1 dan SW2) akan mengakhiri suatu

command

. Hal ini

adalah bagian dari standar ISO 7816-4. Tabel 2.1 berisi beberapa kode untuk

status.

Tabel 2.1. Format Card Status [3]

SW 1

SW 2

ARTI

90 00

O

K

67 00

P3

salah

69

66

Command tidak tersedia

6A 86

P1-P2

salah

6D

00

INS tidak dikenali

6E

00

CLA tidak valid

2.5.3 Response

Berdasarkan SW1 dan SW2 maka sebuah APDU akan dikembalikan

dalam suatu format tertentu. Format tersebut disebut dengan

response

APDU.

Format dari suatu APDU

Response

ditunjukkan oleh gambar 2.7. Bagian data

sifatnya opsional karena beberapa APDU

command

tidak membutuhkan data dari

smart card.

Data SW1 SW2

Gambar 2.7 Format APDU Response [3]

Komunikasi antara terminal dan

smart card

tampak pada gambar 2.8.

Komunikasi tersebut meliputi APDU

command

yang dikirim terminal ke

smart card

(31)

Gambar 2.8. Protokol komunikasi antara terminal dan

smart card

[3]

2.6 Mikrokontroler AVR ATTINY2313

AVR ATTiny2313 merupakan salah satu jenis mikrokontroler buatan Atmel.

Dalam penelitian ini mikrokontroler jenis ini dipilih karena memiliki beberapa

fasilitas yang cukup mampu menggantikan

chip smart card

. Fasilitas tersebut

diantaranya 32 x 8 bit

General Purpose Register

, memori program

flash

pada ROM

sebesar 2 Kbyte, memori EEPROM 128 byte, dan yang tidak kalah penting adalah

serial I/O dengan USART (

Universal Synchronous Asynchronous Receiver an

Transmiter

).

2.6.1

Arsitektur

ATTINY2313

Mikrokontroler ATTiny2313 merupakan mikrokontroler CMOS dengan

daya rendah yang memiliki arsitektur AVR RISC 8 bit. Arsitektur ini mendukung

kemampuan untuk melaksanakan eksekusi instruksi hanya dalam satu siklus

clock

osilator. Hal ini sangat cocok digunakan dalam desain sistem aplikasi yang

(32)

Mikrokontroler AVR memiliki model arsitektur Harvard yaitu memori

dan bus untuk program dan data dipisahkan. Dalam arsitektur AVR, seluruh 32

register umum yang ada terhubung langsung ke ALU prosesor. Hal inilah yang

membuat AVR cepat dalam mengeksekusi instruksi. Arsitektur AVR

ATTiny2313 ditunjukkan dalam gambar 2.9 berikut.

Gambar 2.9 Arsitektur ATTiny2313 [5]

2.6.2

EEPROM

ATTiny2313 memiliki kapasitas EEPROM 128 byte. Untuk melakukan

akses terhadap EEPROM terdapat tiga

register

penting yang berhubungan

dengan EEPROM.

Register

tersebut adalah EEAR (EEPROM

Adress Register

),

(33)

Gambar 2.10 EEAR (EEPROM Address Register) [5]

Pada gambar 2.10 ditunjukkan EEPROM

Address register

pada

mikrokontroler ATTiny 2313. Pada

register

tersebut bit 7 tidak digunakan dan

akan selalu dibaca 0. EEPROM

Address Register

adalah

register

alamat

EEPROM dalam 128 byte ruang EEPROM. Byte data EEPROM dialamati secara

linier antara 0 sampai 127.

Gambar 2.11 EEDR (EEPROM Data Register) [5]

Selain EEAR untuk mengakses EEPROM juga diperlukan pengaturan

EEDR (EEPROM Data Register) yang tampak pada gambar 2.11. Untuk operasi

penulisan EEPROM,

register

EEDR mengandung data yang akan ditulis ke

EEPROM pada alamat yang diberi oleh

register

EEAR. Untuk operasi

(34)

Gambar 2.12 EECR (EEPROM Control Register) [5]

Untuk mengendalikan pengaksesan EEPROM digunakan register EECR

(EEPROM Control Register) seperti tampak pada gambar 2.12. Bit 7 dan 6 pada

register

ini tidak digunakan. Bit 5 dan 4 (EEPM1–0) adalah

programming mode

bit. Seting bit ini akan menentukan aksi pemrograman yang akan di-

trigger

ketika penulisan EEPE. Hal ini dimungkinkan untuk memprogram data dalam

operasi

atomic

(hapus data lama dan tuis data baru) atau operasi

split the erase

and write

dalam dua operasi yang berbeda. Waktu pemrograman untuk berbagai

mode dapat dilihat dalam tabel 2.2. Pada saat EEPE set, semua penulisan ke

EEPMn akan diabaikan. Selama reset, bit EEPMn akan kembali ke 0b00 kecuali

EEPROM baru

bussy programming

.

Tabel 2.2. Mode bit EEPROM [5]

(35)

Bit 2 (EEMPE atau EEPROM

Master Program Enable

) akan

menentukan apakah penulisan EEPE ke “1” akan mempunyai efek atau tidak.

Ketika bit ini diset, seting EEPE bersamaan empat siklus clock akan

memprogram EEPROM pada alamat yang dipilih. Jika EEMPE

clear

, seting

EEPE tidak akan mempunyai pengaruh. Ketika EEMPE diset melaui

software

,

hardware

akan meng-

clear

bit ini setelah empat siklus

clock

.

Bit 1 (EEPE atau EEPROM

Program Enable

) adalah sinyal mulai

penulisan EEPROM. Ketika EEPE ditulis, EEPROM akan diprogram tergantung

seting bit EEPMn, selain ini tidak ada tempat penulisan EEPROM. Ketika waktu

akses penulisan telah dilewati, bit EEPE di-

clear

oleh

hardware

. Ketika EEPE

telah diset, CPU berhenti selama dua siklus sebelum instruksi berikutnya

dieksekusi.

Bit 0 (EERE atau EEPROM

Read Enable

) meupakan sinyal mulai

pembacaan EEPROM. Ketika alamat EEPROM telah dituliskan ke

register

EEAR, EERE harus ditulis ke “1” untuk men-

triger

pembacaan EEPROM. Akses

pembacaan EEPROM mengambil satu instruksi, dan permintaan data yang

langsung tersedia segera. Ketika EEPROM dibaca CPU berhenti selama empat

siklus

clock

sebelum instruksi berikutnya dieksekusi. Pengguna harus

mem-pooling

bit EEPE sebelum memulai operasi pembacaan.

2.6.3

USART

Universal Synchronous and Asynchronous Serial Receiver and

(36)

Terdapat beberapa

register

yang berhubungan dengan komunikasi serial yang

akan dijelaskan pada bagian ini.

a.

USART I/O Data Register (UDR)

Register

UDR sebenarnya secara fisik mempunyai dua bagian terpisah

yang berbagi alamat yang sama. Register ini dapat dilihat pada gambar 2.13.

Ketika menulis ke

register

maka, USART

Transmit Data Register

yang

ditulis. Ketika membaca register UDR, USART

Receive Data Register

yang

dibaca. Untuk 5, 6, atau 7 bit karakter maka bit atas sisanya tidak digunakan

dan akan diabaikan oleh

transmiter

dan diseting ke “0” oleh

receiver.

Transmit buffer

hanya dapat ditulis ketika

flag

UDRE dalam

register

UCSRA

set

jika tidak maka akan diabaikan oleh USART

transmiter

. Ketika

data ditulis ke

transmiter buffer

dan

transmiter

di-

enable

, maka

transmiter

akan dikirim ke

transmit shift register

ketika

shift register kosong

. Kemudian

data akan dikirim secara serial pada pin TXD

Gambar 2.13 UDR (USART I/O Data Register) [5]

b.

USART Control and Status Register A (UCSRA)

Register

ditunjukkan oleh gambar 2.14.

Register

ini berisi beberapa

(37)

tersebut antara lain USART

Receive complete

, USART

Transmit Complete

,

USART

Data Register Empty

,

Framing Error

, dan

Data Over Run.

Gambar 2.14 UCSRA (USART Control and Status Register A) [5]

c.

USART Control and Status Register B (UCSRB)

Gambar 2.15 adalah gambar UCSRB.

Register

ini berisi beberapa bit

untuk mengaktifkan atau menonaktifkan

transmiter

dan

receiver

. Selain itu,

bersama UCSRC juga melakukan pengaturan jumlah karakter.

Gambar 2.15 UCSRB (USART Control and Status Register B) [5]

d.

USART Control and Status Register C (UCSRC)

Register

ini digunakan untuk pengaturan mode operasi sinkron atau

(38)

Gambar 2.16 UCSRC (USART Control and Status Register C) [5]

e.

USART Baud Rate Register (UBRRH,UBRRL)

Gambar 2.17 menunjukkan

USART

Baud Rate Register.

Pada register

ini

bit 15-12 tidak digunakan. Bit yang lain disebut dengan

baud rate

register

yang merupakan

register

12 bit. UBRRH mengandung empat bit

(MSB) dan UBRRL mengandung delapan bit (LSB).

Gambar 2.17 USART Baud Rate Register (UBRRH,UBRRL) [5]

Pengisian

register

tersebut akan menentukan besarnya

baud rate

yang

digunakan. Pada tabel 2.1 ditunjukkan contoh pengaturan

baud rate

pada

(39)

Tabel 2.3. Pengaturan Baud Rate [5]

f.

Format frame

Serial frame

didefinisikan menjadi sebuah karakter data bit dengan bit

sinkronisasi (

start

dan

stop bit

), dan bit opsional

parity bit

atau

error

checking

. USART menerima kombinasi

format frame

berupa 1

start bit

,

5,6,7,8,atau 9 data, tidak ada,

parity

genap atau ganjil, 1 atau 2

stop bit

.

Format dari sebuah

frame

data tampak pada gambar 2.18.

Frame

dimulai dengan

start

bit

diikuti LSB bit data. Kemudian bit

data berikutnya sampai semua bit diakhiri dengan bit

MSB. Jika

parity bit

diaktifkan maka

parity

bit

disisipkan setelah data sebelum

stop bit

. Ketika

frame

yang telah dikirim lengkap, akan diikuti dengan

frame

berikutnya

(40)

Gambar 2.18 Format

Frame

[5]

2.7 Visual Basic 6.0 Enterprise Edition

Beberapa poin yang perlu diperhatikan dalam penggunaan

software

Visual

Basic 6.0 akan dijelaskan pada bagian ini.

2.7.1 Window Property

Window

ini digunakan untuk menampilkan pengaturan

property control

atau

form

yang dipilih. Sebuah

property

merupakan karakteristik obyek seperti

size

,

caption

, atau

color

[7]

.

2.7.2 Form Designer

Form designer

merupakan sebuah

window

yang digunakan untuk mengatur

(41)

2.7.3 Form Window Layout

Form Window layout

ini digunakan untuk mengontrol posisi

form

pada

aplikasi dengan menggunakan sistem grafik dalam sebuah layar.

2.7.4 Komunikasi Serial Dengan Visual Basic 6.0 Enterprises

Dikenal dua cara komunikasi data secara serial, yaitu komunikasi data

secara sinkron dan asinkron. Pada komunikasi data serial sinkron,

clock

dikirim

bersama-sama dengan data serial, sedangkan komunikasi data secara asinkron,

clock

tidak dikirim bersama data serial, tetapi dibangkitkan sendiri-sendiri baik

pada sisi pengirim (

transmiter

) maupun penerima (

receiver

). Komunikasi data

secara serial ini dikerjakan oleh UART (

Universal Asinchronous

Receiver/Transmiter

).

Pada UART, kecepatan pengiriman data (

baud rate

) dan fase

clock

pada

sisi

transmiter

dan

receiver

harus sinkron. Untuk itu diperlukan sinkronisasi

antara

transmiter

dan

receiver

. Hal ini dilakukan oleh bit ‘

start

’ dan bit ‘

stop

’.

Ketika saluran transmisi dalam keadaan

idle

, output UART adalah dalam

keadaan logika ‘1’. Ketika

transmiter

ingin mengirimkan data,

output

UART

akan diset lebih dahulu ke logika ‘0’ untuk waktu 1 bit. Sinyal pada

receiver

akan

dikenali sebagai sinyal ‘

start’

yang digunakan untuk mensinkronkan fase

(42)

a.

Konfigurasi Port Serial

Gambar 2.19 menunjukkan gambar konektor port serial DB-9. Pada

komputer IBM PC kompatibel biasanya kita dapat menemukan dua konektor

yang dinamai COM1 dan COM2

Gambar 2.19 Konfigurasi Port Serial [12]

b.

Pengaksesan Port Serial

Untuk mengakses port serial terdapat dua cara yaitu dengan

mengakses secara langsung

register

UART dan dengan menggunakan

MSComm.

1.

Pengaksesan secara langsung melalui register UART

Saluran yang digunakan UART untuk komunikasi baik untuk

pengiriman maupun penerimaan data adalah saluran RxD dan TxD serta

saluran-saluran kontrol seperti DCD, DSR, RTS, CTS, DTR, dan RI.

Saluran-saluran ini ada yang sebagai

output

dan ada yang sebagai

input

.

(43)

melalui

register

UART. Tabel 2.4 berisi alamat dan lokasi bit saluran

tersebut pada

register

UART.

Tabel 2.4. Alamat dan lokasi bit register UART [7]

Nama

Pin

Nomor Pin

Pada DB-9

COM1 COM2

Bit Arah

TxD 3 2FBh

2FBh

6

Output

DTR 4 2FCh

2FCh

0

Output

RTS 7 2FCh

2FCh

1

Output

CTS 8 2FEh

2FEh

4

Input

DSR 6 2FEh

2FEh

5

Input

RI 9

2FEh

2FEh

6

Input

DCD 1 2FEh

2FEh

7

Input

Untuk dapat mengaksesnya kita dapat menggunakan fungsi

Port_Out dan Port_In yang terdapat pada Port_IO.DLL dan untuk men-

set

atau meng-

clear-

kan bit-bit tertentu kita dapat menggunakan prosedur

Set_Bit atau Clear_Bit.

2.

Pengaksesan dengan menggunakan MSComm

Kontrol MSComm menyediakan fasilitas komunikasi antara

program aplikasi yang kita buat dengan port serial untuk mengirim atau

menerima data melalui port serial. Beberapa

property

yang sering dipakai

adalah sebagai berikut :

a)

CommPort

: Digunakan untuk menentukan nomor

port

serial yang

akan dipakai

b)

Setting

: Digunakan untuk mengatur nilai

baud rate

,

parity,

jumlah

(44)

c)

PortOpen

: Digunakan untuk membuka ataupun menutup port

serial yang dihubungkan dengan MSComm ini.

d)

Input

: Digunakan untuk mengambil data

string

yang ada pada

buffer

penerima.

e)

Output

: Digunakan untuk menulis data

string

pada

buffer

pengirim.

2.8 RS 232

Standar sinyal komunikasi serial yang banyak digunakan adalah standar

RS232 yang dikembangkan oleh

Electronic Industry Association and the

Telecomunications Industry Association

(EIA/TIA) yang pertama kali dipublikasikan

pada tahun 1962. Ini terjadi jauh sebelum IC TTL populer sehingga sinyal ini tidak

ada hubungan sama sekali dengan level tegangan IC TTL. Standar ini hanya

menyangkut komunikasi data antara komputer (

Data Terminal Equipment

-DTE)

dengan alat-alat pelengkap komputer (

Data Circuit-Terminating Equipment

-DCE).

Standar RS232 inilah yang biasa digunakan pada port serial IBM PC kompatibel

Standar sinyal RS232 memiliki ketentuan level tegangan sebagai berikut :

1.

Logika “1” disebut “

mark

” terletak antara -3V hingga -25V.

2.

Logika “0” disebut “

space

” terletak antara +3V hingga +25V.

3.

Daerah level tegangan antara -3V hingga +3V adalah

invalid level

, yaitu

daerah tegangan yang tidak memiliki level logika pasti sehingga perlu

(45)

positif dari +25V juga harus dihindari karena tegangan tersebut dapat

merusak

line driver

saluran RS232.

Gambar 2.20 berikut adalah contoh level tegangan RS232 pada pengiriman

huruf “A” dalam format ASCII tanpa bit paritas.

Gambar 2.20 Level tegangan RS232 pada pengiriman huruf “A” tanpa bit paritas

2.9 Database

Database

dapat diartikan sebagai sekumpulan data yang terdiri atas satu atau

lebih tabel yang terintegrasi satu sama lain, di mana setiap pemakai (

user

) diberi

wewenang (otoriasasi) untuk dapat mengakses (mengubah, menghapus,

menganalisis, menambah, memperbaiki) data dalam tabel-tabel tersebut [6].

Tabel itu berfungsi untuk menyimpan data dan merupakan suatu data yang

berhubungan dengan topik tertentu. Tabel terdiri atas baris yang disebut

record

dan

kolom yang disebut

field

sehingga apabila dibayangkan dengan sebuah gambar,

(46)

Gambar 2.21 Struktur Database [9]

Ada beberapa istilah yang harus diketahui pada saat bekerja dengan sebuah

tabel

database

, yaitu:

1.

Field,

merupakan tempat dimana data atau informasi dalam kelompok yang

sama atau sejenis dimasukkan.

Field

pada umumnya tersimpan dalam bentuk

kolom vertikal pada tabel.

2.

Record,

merupakan data lengkap dalam jumlah tunggal yang biasanya

(47)

3.1

Diagram Blok Sistem

Telah dipaparkan sebelumnya tentang seluk beluk

smart card

dan beberapa

komponen pendukungnya. Untuk membuat suatu sistem informasi akademik

menggunakan media

smart card

, beberapa komponen tersebut digabungkan dalam

suatu blok sistem yang tampak pada gambar 3.1 berikut.

PROGRAM

UTAMA

ANTARMUKA

SERIAL

SMART

CARD

DATABASE

Gambar 3.1 Diagram Blok Sistem

Sistem dibuat dalam dua bagian utama yaitu PC (

Personal Computer

)

terminal atau sering disebut

card reader

dan

smart card

. Di dalam PC terminal

terbagi dalam beberapa bagian yaitu bagian program utama, bagian

database

, dan

bagian antarmuka serial.

Bagian program utama merupakan bagian pengendali pembacaan dan

penulisan kartu. Seluruh aktivitas sistem diatur pada bagian ini. Bagian

database

digunakan sebagai sumber data yang akan disimpan ke dalam

smart card

.

Database

(48)

berisi berbagai informasi akademik dari setiap mahasiswa. Bagian terakhir adalah

antarmuka serial yang diperlukan untuk mengatasi perbedaan level tegangan ketika

komunikasi terjadi antara PC dan mikrokontroler.

Smart card

dibuat modelnya dengan menggunakan mikrokontroler sebagai

pengganti

chip

.

Smart card

akan diisi dengan data-data historis mahasiswa yang

berasal dari

database

. Selain bisa diisi data yang telah disimpan di dalam

smart card

juga dapat dibaca kembali.

Aturan main dalam sistem yang akan dibuat adalah setiap mahasiswa

memiliki satu kartu. Setiap mahasiswa dapat membaca kartu namun tidak diijinkan

mengisi atau mengganti data pada kartu kecuali

password

baca. Hal ini untuk

menjaga validitas informasi didalam kartu. Pengisian kartu hanya bisa dilakukan oleh

pihak

administrator

. Dengan demikian pihak yang memiliki akses pada

database

mahasiswa hanyalah

administrator.

3.2

Perancangan perangkat keras

Perangkat keras dari sistem ada dua bagian yaitu model

smart card

berbasis

mikrokontroler ATTiny2313 dan antarmuka serial yang menjadi jalur penghubung

antara terminal dan

smart card

. Berikut ini akan dipaparkan mengenai perancangan

perangkat keras

smart card

dan antarmuka serial.

3.2.1 Smart Card

Desain

smart card

didasarkan pada standar ISO 7816 dengan sedikit

(49)

memiliki 8 port namun hanya akan digunakan 7 port. Gambar 3.2 adalah

konektor

smart card

yang telah dimodifikasi

Gambar 3.2 Kontak

smart card

Dengan menggunakan kontak tersebut maka

smart card

dibuat dengan

desain seperti pada gambar 3.3.

Smart card

dibuat dengan menggunakan PCB

(

Printed Circuit Board

) yang telah dicetak kontak dan jalur penghubung ke

mikrokontroler.

U1 ATTINNY2313 1 4 5 10 20 12 13 14 15 16 17 18 19 2 3 6 7 8 9 11 RESET XTAL2 XTAL1 GN D VC C PB0/AIN0 PB1/AIN1 PB2 PB3/OC1 PB4 PB5/MOSI PB6/MISO PB7/SCK PD0/RXD PD1/TXD PD2/INTO PD3/INT1 PD4/TO PD5/T1 PD6/ICP U2

kontak smart card

3 2 4 7 8 1 5 6 N/A RST XTAL1 TX GND VCC XTAL2 RX

(50)

3.2.2 Antarmuka Serial

Bagian antarmuka serial pada sistem ini merupakan suatu rangkaian

elektronis yang mampu menyediakan setiap kebutuhan

smart card

untuk dapat

berkomunikasi dengan terminal. Kebutuhan tersebut menyangkut penyediaan

sumber listrik dan

clock

bagi

smart card

serta kemampuan untuk mengatasi

perbedaan level tegangan ketika terjadi komunikasi antara PC dan

smart card

.

a.

Catu Daya

Kebutuhan sumber tegangan tidak disediakan dari luar tetapi akan

memanfaatkan pin kontrol pada port serial yaitu DTR (

Data Terminal

Ready

). Pin DTR akan digunakan sebagai catu daya bagi

card reader

dan

smart card

. Perlu diketahui bahwa saluran DTR yang berlogika

low

dalam

port serial IBM PC kompatibel bertegangan +12 V ketika di-

set

sehingga

diperlukan komponen untuk menurunkan tegangan tersebut sampai +5 V [6].

Hal ini disebabkan

smart card

dioperasikan dengan catu daya sebesar +5 V.

Pembatasan tegangan pada level 5V dilakukan dengan menggunakan dioda

zener 5V1. Dioda ini jika dilewati oleh tegangan diatas 5,1V maka output

yang dihasilkan akan sebesar Vz.

b.

Sistem

Clock

Ada beberapa pilihan sumber

clock

yang dapat dipilih melalui bit

fuse

yang berada dalam

software downloader

atau

programer

. Pada perancangan

kali ini digunakan sumber

clock

oscilator kristal. Konfigurasi oscilator kristal

tampak pada gambar 3.4. XTAL1 dan XTAL2 adalah

input

dan

output

(51)

Gambar 3.4 Oscilator kristal [11]

Kapasitor keramik C1 dan C2 harus selalu diberi nilai yang sama.

Dari datasheet untuk kristal 4MHz (frekuensi sistem yang dipilih) nilai C1

dan C2 sebesar 12-22 pF.

c.

Konverter logika RS232 ke TTL

Telah dipaparkan sebelumnya bahwa ada perbedaan level tegangan

yang terjadi antara PC dan mikrokontroler ketika berkomunikasi. Perbedaan

level tegangan ini harus diatasi agar kedua perangkat bisa berkomunikasi.

Oleh karena konfigurasi komunikasi yang digunakan adalah RS232 maka

digunakan IC MAX 232 karena mampu mengkonversi level tegangan RS232

ke level TTL yang dimiliki oleh mikrokontroler. Gambar 3.5 menunjukkan

(52)

Gambar 3.5 Konfigurasi IC MAX 232

Pada gambar 3.7 berikut ini akan ditampilkan rangkaian antarmuka serial

secara keseluruhan.

(53)

3.2.3 Desain card reader

Rancangan

card reader

tampak pada gambar 3.8 berikut ini.

Gambar 3.7 Desain

card reader

3.3 Perancangan perangkat lunak

Perangkat lunak dari sistem yang dirancang dibagi menjadi dua yaitu

program sistem operasi

smart card

dan program PC terminal. Perancangan kedua

program tersebut akan dipaparkan pada bagian ini.

Algoritma yang dipakai dalam perancangan sistem adalah sebagai berikut

1.

Pengguna mengaktifkan program PC terminal.

2.

Pengguna diminta untuk memilih mode program “admin” atau “user”.

3.

Mode “admin” ditujukan untuk administrator yang memiliki akses untuk

(54)

4.

Mode “user” ditujukan untuk mahasiswa. Pada mode ini mahasiswa dapat

membaca

smart card

dan meng-

upgrade

smart card

apabila ada data baru.

5.

Program PC terminal akan meminta pengguna untuk memasukkan kartu.

6.

Pengguna mengaktifkan tombol untuk menginisialisasi kartu dengan

mengirim sinyal reset.

7.

Smart card

menerima reset dan mengirim ATR ke terminal.

8.

Terminal terima ATR dan melakukan verifikasi terhadap kompatibilitas

kartu.

9.

Setelah ATR dipenuhi maka komunikasi antara terminal dan

smart card

bisa

dijalankan. Jika tidak maka

user

harus mengganti kartu atau meresetnya.

10.

Komunikasi antara terminal dan

smart card

dilakukan dengan command yang

telah ditentukan.

Algoritma diatas dapat diimplementasikan ke dalam

flowchart

sistem yang

tampak pada gambar 3.8. Sedangkan hubungan komunikasi antara PC terminal

dengan

smart card

yang menyangkut masalah protokol komunikasi ditunjukkan oleh

(55)

Gambar 3.8

Flowchart

sistem

(56)

3.3.1 Perangkat lunak smart card

Untuk merancang sistem operasi

smart card

ada beberapa hal yang perlu

didefinisikan terlebih dahulu. Hal tersebut adalah data dan lokasi memori serta

protokol komunikasi yang digunakan.

a.

Data dan lokasi memori

Data-data yang akan disimpan dalam

smart card

merupakan data

historis mahasiswa. Karena mikrokontroler yang dipakai memiliki ruang

memori yang terbatas sebesar 128 byte maka ada data yang akan disimpan

dalam bentuk kode. Pada tabel 3.1 akan ditampilkan data-data yang disimpan

beserta ruang memorinya.

Tabel 3.1. Data dan lokasi memori

KETERANGAN DATA

(CONTOH)

PANJANG DATA (BYTE)

ALAMAT DATA

PIN 1234 4 00H-03H

Nama Suryo Indrianto 20 04H-18H

NIM 035114014 9 19H-21H

Pemb. akademik PYM 3 22H-24H

IPK 3,6 4 25H-28H

Persentase Nilai D (%) 0 3 29H-2BH

Persentase Nilai E (%) 0 3 2CH-2EH

Semester ditempuh 8 2 2FH-30H

Total SKS 140 3 31H-33H

Lunas UKD ? Sudah

Lunas SKS ? Sudah

1* 34H

Sudah KKL ? Sudah

Sudah KP ? Sudah

Sudah Pra TA ? Sudah

Sudah kolokium ? Sudah

Sudah TA ? Sudah

Sudah pendadaran ? Sudah

Sudah yudisium Sudah

Judul sudah disetujui ? Sudah

1** 35H

Batas akhir kolokium 10/10/07 8 36H-3DH

Batas akhir pendadaran 10/10/07 8 3EH-45H

Batas akhir yudisium 10/10/07 8 46H-4DH

Validity expired 30/08/08 8 4EH-55H

(57)

Jumlah data seluruhnya adalah sebesar 85 byte. Pada beberapa data

dilakukan pengkodean dengan 2 bit (*) dan 8 bit (**) sehingga kebutuhan

memori tidak terlalu banyak..

b.

Protokol komunikasi

Berdasarkan standarisasi ISO 7816 maka format ATR dibuat mengacu

pada gambar 3.10 dan protokol komunikasi

smart card

dirancang dengan

TPDU

Header

pada tabel 3.2.

Gambar 3.10 Format ATR

Tabel 3.2. Tabel protokol komunikasi

BYTE DEFINISI NILAI

BYTE

CLA

Header byte

01H

Terminal kirim data

02H

Terminal terima data

03H

INS

Status 04H

P1

Alamat data

Maks.7FH

P2

Panjang Data

Maks.20byte

Terminal kirim data (Lc)

02H

Terminal terima data (Le)

03H

P3

Status 04H

CLA merupakan

class instructon

yang dimiliki oleh

smart card

yang

(58)

atau mengirim data. INS akan bernilai 04H jika tidak ada pertukaran data. P3

adalah parameter yang akan memperkuat INS. Apabila INS dan P3 tidak

sama artinya terjadi suatu kesalahan. P1 digunakan sebagai indikator alamat

data yang harus dibaca atau disimpan. Alamat data maksimum adalah 7FH

yang merupakan ruang memori terakhir pada EEPROM ATTiny2313. P2

digunakan untuk mengetahui panjang data. Panjang data akan digunakan oleh

suatu pencacah untuk mengendalikan pertukaran data serta mencegah

digunakannya ruang memori yang tidak tepat.

Suatu

command

akan diakhiri oleh status yang merupakan bagian dari

APDU

response

. Kode status yang digunakan pada perancangan ini mengacu

pada tabel 2.1.

c.

Sistem operasi

smart card

Pada saat

smart card

mengalami kondisi reset atau pertama kali

beroperasi

smart card

akan mengirimkan ATR sebagai inisialisasi terminal

terhadap

smart card

. ATR tersimpan pada memori program dan dikirim

dengan menggunakan

subroutine

serial kirim.

Subroutine

tersebut tampak

pada gambar 3.11.

(59)

Sistem operasi pada

smart card

dirancang agar mampu menangani

perintah atau

command

yang diberikan terminal.

Command

terdiri dari lima

byte diikuti dengan data jika diperlukan. Oleh karena itu program dibuat

untuk melakukan pengecekan setiap byte

command

, jika sudah sesuai maka

sistem akan mengeksekusi instruksi yang terdapat pada

command

. Instruksi

tersebut bisa berupa penyimpanan data, pengiriman data, atau hanya akan

mengetahui status kartu. Apabila terjadi kesalahan

smart card

akan langsung

mengirimkan status kesalahan.

Flowchart

dari sistem operasi

smart card

dapat dilihat pada gambar 3.12.

Gambar 3.12

Flowchart

sistem operasi

smart card

Langkah selanjutnya program akan melakukan pengecekan setiap byte

(60)

command

sudah benar maka program akan menerjemahkan instruksi apakah

akan menerima data, mengirim data, atau pengecekan status.

Flowchart

cek

command

mengacu pada gambar 3.13.

Program dimulai dengan mengecek CLA, INS, P1, P2, dan terakhir

P3. Setiap selesai mengecek 1 byte

command,

program akan mengisi

register

status.

Register

status ini akan langsung dikirim ke terminal apabila terjadi

kesalahan. Setelah

register

status dikirim ke terminal program akan

berputar-putar pada satu instruksi. Caranya dengan membuat syarat percabangan yang

akan lompat jika SW1=00h. Kejadian ini tidak akan pernah terjadi karena

SW1 tidak pernah sama dengan 00h. Kondisi ini diperlukan untuk membuat

program tidak menjalankan instruksi berikutnya sampai

user

mereset kartu.

(61)

Instruksi pengiriman dan penerimaan data selalu diikuti dengan

pengambilan parameter alamat dan panjang data yang terdapat pada

command

.

Flowchart

simpan data mengacu pada gambar 3.14. Pada

flowchart

tampak bahwa setelah mengambil parameter alamat awal data,

panjang data, dan data kemudian program akan menunggu sampai penulisan

EEPROM sebelumnya selesai yang ditandai dengan bit EEPE pada EECR

di-clear

oleh

hardware.

Selesai menyimpan satu byte data lalu alamat EEPROM

dan

register

data sementara ditambah satu. Sedangkan panjang data dikurangi

dengan satu. Kondisi ini berlangsung terus menerus sampai semua data

selesai disimpan pada EEPROM.

(62)

Proses instruksi baca data dapat dilihat pada gambar 3.15. Setelah

menunggu sampai pembacaan EEPROM sebelumnya selesai dilaksanakan,

program akan memasukkan alamat data pada EEPROM yang akan dibaca.

Kemudian data akan diambil dan disimpan pada register sementara sebelum

akhirnya dikirim ke terminal.

Subroutine

serial_kirim digunakan untuk

pengiriman data ke terminal mengacu pada gambar 3.11. Proses ini

berlangsung sampai semua data yang dikehendaki dibaca.

(63)

Selesai mengeksekusi instruksi,

smart card

akan mengakhiri suatu

command

dengan mengirimkan status.

Flowchart subroutine

serial_status

mengacu pada gambar 3.16. Untuk mencegah adanya kesalahan pembacaan

command

dan data maka seluruh

register

sementara yang sebelumnya

digunakan untuk lokasi penyimpanan sementara akan dikosongkan.

Gambar 3.16

Flowchart subroutine

serial_status

Ketika program selesai melakukan pengosongan

register

sementara

artinya satu siklus komunikasi telah dilakukan oleh

smart card

dan terminal.

(64)

3.3.2 Perangkat lunak PC terminal

Perangkat lunak PC terminal dirancang untuk memberikan kemudahan

bagi

user

ketika menggunakan.

Ada 2 program utama yang hendak dirancang. Pertama, program “SIA”

atau Sistem Informasi Akademik , program ini memiliki dua mode yaitu “admin”

dan “user”. Mode “admin” ditujukan untuk pihak yang diberi otoritas terhadap

sistem informasi akademik sedangkan mode user ditujukan kepada mahasiswa.

Kedua, program “READER”, program ini ditujukan kepada pemilik

smart card

agar dapat melakukan pembacaan kartu ditempat lain selain di kampus. Program

kedua ini sebenarnya sama dengan program pertama pada mode “user” namun

pada program ini fasilitas yang disediakan hanya pembacaan kartu. Dengan

demikian perancangan program akan mengacu pada program pertama.

Sebelum merancang aliran program, terlebih dahulu dirancang

layout

form

sebagai

user interface

. Terminal memiliki 3 form utama yaitu menu, admin,

dan user. Gambar 3.17 menunjukkan form

menu, gambar 3.8 menunjukkan form

administrator, dan gambar 3.19 meunjukkan form user.

Selain itu ada form lain yaitu form help, pswadmin (

password

untuk

administrator

), dan pswuser (

password

untuk

user

) sebagai form pelengkap.

Form help ditunjukkan oleh gambar 3.20, form pswadmin ditunjukkan oleh

(65)

Gambar 3.17 Form menu

Gambar 3.18 Form admin

(66)

Gambar 3.20 Form pswadmin

Gambar 3.21 Form pswuser

(67)

a.

Form Menu

Pada form ini terdapat 4 tombol yaitu “help”, “admin”, “user”, dan

“quit”. Tombol help untuk menampilkan menu bantu, tombol admin untuk

mengaktifkan mode “admin”, tombol “user” untuk mengaktifkan mode

“user”, dan tombol “quit” untuk keluar dari program.

Aliran program pada form menu dapat dlihat pada gambar 3.23.

Program akan melakukan proses inisialisasi saluran serial dan beberapa

konstanta serta vareabel yang diperlukan. Selanjutnya program akan

menampilkan form menu dan menonaktifkan form lain. Program akan

menunggu perintah pada masing-masing tombol.

Gambar 3.23

Flowchart

form menu

b.

Form Admin

Form

administrator

fungsi utamanya adalah untuk pengaksesan

data

(68)

digunakan untuk menyimpan data baru pada

database

. “Edit” dipakai untuk

mengubah data yang telah tersimpan pada

database

. “Delete” untuk

menghapus data pada

database

. “Search” digunakan untuk mencari data pada

database

. “Write” untuk menulis data ke

smart card

. “Config” digunakan

untuk menginisialisasi

smart card

. “Menu” digunakan untuk kembali ke form

menu dan “quit” untuk keluar dari program.

Flowchart

form admin mengacu

pada gambar 3.24.

Gambar 3.24

Flowchart

form

admin

Tombol

new

memiliki aliran program seperti tampak pada gambar

3.25. Setelah NIM diketik, program akan mencari data berdasarkan NIM

(69)

Gambar 3.25

Flowchart

Simpan data baru

Flowchart

proses edit data tampak pada gambar 3.26. Program akan

mencari data berdasarkan NIM dan kemudian menampilkannya. Jika data

tidak ditemukan program akan menampilkan pesan bahwa data tidak ada.

Gambar 3.26

Flowchart

edit data

(70)

Gambar 3.27

Flowchart

hapus data

Untuk

mengisi

smart card

terlebih dahulu

smart card

harus

diinisialisasi. Proses ini dilakukan dengan menekan tombol “config”.

Flowchart

“config” mengacu pada gambar 3.28. Jika kartu valid maka

tombol “write” akan aktif namun jika tidak akan sebaliknya.

(71)

Flowchart

penulisan data ke

smart card

tampak pada gambar 3.29.

Proses dimulai dengan melakukan pengecekan terhadap data yang hendak

dikirim apakah sudah lengkap atau belum. Jika belum lengkap maka program

akan memberi tahu bagian mana yang belum lengkap. Jika sudah lengkap

maka data akan dikirim satu per satu ke

smart card

. Setelah satu data terkirim

program akan melakukan pengecekan terhadap

response

yang diterima.

Setelah

response

dari kartu OK proses pengiriman data selanjutnya dapat

dijalankan sampai semua data selesai dikirim.

(72)

c.

Form user

Fungsi program pada form ini adalah untuk pembacaan

smart card

dan untuk

upgrade

data

smart card

. Aliran program pada form user tampak

pada gambar 3.30. Aliran program pembacaan kartu mengacu pada gambar

3.31. Program dimulai dengan melakukan pengecekan status kartu. Apabila

status kartu OK maka proses baca data bisa dimulai namun jika tidak akan

ditampilkan pesan kartu error. Setelah membaca data,

response

yang

mengikuti data akan dicek.

Response

menandai satu siklus pembacaan selesai

dilakuan. Program akan terus melakukan pembacaan sampai semua data

selesai dibaca.

(73)

Gambar 3.31

Flowchart

baca data

smart card

(

read

)

Fungsi kedua pada form ini adalah untuk meng-

upgrade

data

smart

card

. Proses upgrade didahului dengan membandingkan data pada database

dengan data

smart card

untuk mencari data baru. Apabila ada data yang

berubah maka pemilik

smart card

dapat langsung memperbarui data

smart

(74)

Gambar 3.32

Flowchart

upgrade

data

Pada form

user

juga tersedia fasilitas untuk mengganti

password

baca.

(75)

Gambar 3.33

Flowchart

ubah

password

d.

Form pelengkap

Form ini terdiri dari form help, form pswadmin, dan form pswuser.

Form help merupakan form bantuan yang tugasnya menampilkan teks yang

berisi informasi penggunaan program. Program pada form ini memanfaatkan

fasilitas OLE yang mampu memanggil aplikasi lain dari

visual basic

.

Form pswadmin berguna untuk memproteksi form admin agar tidak

sembarang orang bisa menggunakannya.

Password

yang diketik akan

dibandingkan dengan konstanta yang telah didefinisikan program.

Flowchart

(76)

Pswuser berfungsi untuk memproteksi form user.

Flowchart

form ini

tampak pada gambar 3.35. Data yang dibandingkan dengan

smart card

adalah

NIM dan password.

Gambar 3.34

Flowchart

password

untuk admin

(77)

Gambar

Gambar 2.9 Arsitektur ATTiny2313 [5]
Gambar 3.4 Oscilator kristal [11]
Gambar 3.5 Konfigurasi IC MAX 232
Gambar 3.8 Flowchart  sistem
+7

Referensi

Dokumen terkait

Pengembangan PKW melalui peningkatan fungsi industri pengolahan dan industri jasa hasil hutan yang bernilai tambah tinggi dan ramah lingkungan dilakukan di PKW Tegal dan

Penilaian unjuk kerja merupakan penilaian yang dilakukan dengan mengamati kegiatan peserta didik dalam melakukan sesuatu. Penilaian ini cocok digunakan untuk

Oleh karena itu, pantai- pantai yang rawan gempa bumi dan tsunami adalah pantai-pantai yang berhadapan dengan daerah penunjangan (subduksi) antara dua lempengan taktonik

Penerbitan buku Standar Operasional Prosedur Kegiatan Kemahasiswaan ini diharapkan dapat memudahkan mahasiswa atau unit kegiatan mahasiswa Politeknik Negeri

PUSAT KAJIAN SUMBERDAYA PESISIR DAN LAUTAN INSTITUT PERTANIAN BOGOR.. PENGANTAR EKONOMI

Pengetahuan tentang Tuhan dan kesetiaan terhadap aturan-aturan-Nya merupakan dasar bagi tiap agama, baik agama langit atau pun bumi. Namun kesadaran manusia akan

memberikan percobaan gratis secara cuma – cuma kepada konsumen yang tujuannya untuk memberikan gambaran baik dalam manfaat, rupa, ataupun bau dari produk yang dipromosikan,

Penelitian ini bertujuan untuk mengetahui apakah terdapat pengaruh signifikan pada penerapan penerapan e-SPT PPN, e-Faktur, dan Sanksi Administrasi terhadap tingkat kepatuhan