P. 1
Prosiding Seminar Semiloka

Prosiding Seminar Semiloka

|Views: 925|Likes:
Published by sprayudani

More info:

Published by: sprayudani on Dec 05, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

06/12/2013

pdf

text

original

Sections

  • Amer Sharif#1
  • Sriwinar
  • Stephanus Priyowidodo#1
  • Eko Hariyanto
  • Imelda Sri Duma Yanti
  • Asrizal
  • Raheliya Br Ginting
  • Zulkifli#1
  • Auliana Nasution#1
  • Fardian1
  • Zefri Paulanda
  • Henra Verywati P
  • Andysah Putera Utama Siahaan
  • Irene Sri Morina
  • Rasudin Abubakar#1
  • Zuhri Ramadhan
  • Mawardi#1
  • Sany Rossadhi S

1

PROOCEEDING

SEMINAR NASIONAL DAN LOKAKARYA KURIKULUM
BIDANG KOMPUTER 2011

Medan, 20-21 September 2011











2
USU Press
Art Design, Publishing & Printing
Gedung F, Pusat Sistem Informasi (PSI) Kampus USU
Jl. Universitas No. 9
Medan 20155, Indonesia

Telp. 061-8213737; Fax 061-8213737


usupress.usu.ac.id


© USU Press 2011

Hak cipta dilindungi oleh undang-undang; dilarang memperbanyak menyalin, merekam sebagian atau
seluruh bagian buku ini dalam bahasa atau bentuk apapun tanpa izin tertulis dari penerbit.


ISBN 979 458 562 9


Perpustakaan Nasional: Katalog Dalam Terbitan (KDT)

Proceeding seminar nasional dan lokakarya kurikulum bidang komputer 2011 /
Diselenggarakan oleh Universitas Sumatera Utara, APTIKOM, Program Studi Teknologi
Informasi -- Medan: USU Press, 2011.

viii, 281 p. : ilus. ; 28 cm.
Bibliografi

ISBN: 979-458-562-9

1. Computer Programming I. Judul
005 ddc21







iii
KATA PENGANTAR



Assalamu‟alaikum wr.wb

Puji syukur dihaturkan kepada ALLAH SWT sehingga Proceeding SEMILOKAKBK (Seminar Nasional
dan Lokakarya Kurikulum Bidang Komputer) 2011 ini dapat terselesaikan. Proceeding ini memuat
makalah-makalah seminar nasional yang diselenggarakan oleh Program Studi Ilmu Komputer dan Program
Studi Teknologi Informasi Universitas Sumatera Utara bekerjasama dengan APTIKOM (Asosiasi
Perguruan Tinggi Komputer) Wilayah Sumatera Utara – Aceh.

Seminar Nasional ini direview oleh staff pengajar dari USU dan UGM dengan melakukan cross review
untuk menjaga sisi rasional akademik. Ribuan terima kasih diucapkan kepada Reviewers yang sudah
melakukan kegiatannya dengan baik.

Seminar Nasional mengambil tema Peranan Cloud Computing dalam Menghadapi Persaingan Global
sedangkan Lokakarya Kurikulum mengambil sub tema Pemutakhiran Kurikulum untuk menjawab
kebutuhan Stakeholders. Parallel session untuk seminar akan dilaksanakan sesuai kelompok kajian selama
satu hari. Meski isi dari makalah belum begitu banyak yang sinergi dengan tema yang diangkat, namun
diharapkan untuk masa akan datang proceeding ini dapat memacu kajian yang lebih dalam.

Persiapan yang cukup lama tidak menutup kemungkinan adanya kekurangan dalam proceeding ini, untuk
itu kami mohon maaf. Kritik dan saran dapat dikirimkan melalui email semilokakbk2011@gmail.com.
Kami juga mengucapkan terima kasih kepada semua pihak yang terlibat sehingga Proceeding
SEMILOKAKBK 2011 ini dapat diterbitkan.

Wassalamu‟alaikum wr.wb


Medan, 21 September 2011
a.n Panitia SEMILOKAKBK 2011
Ketua Pelaksana,


Dian Rachmawati, S.Si, M.Kom


iv

v
DAFTAR ISI



CLOUD COMPUTING .............................................................................................................................. 1

Keamanan di Awan: Meninjau Faktor Keamanan dalam Implementasi Cloud Computing
Amer Sharif ................................................................................................................................................... 3

Kemajuan Cloud Komputing
Sriwinar ........................................................................................................................................................ 7

Pengamanan Data Tersimpan pada Media Cloud Drive
Stephanus Priyowidodo ............................................................................................................................... 11

Pemanfaatan Cloud Computing pada Daerah Rawan Bencana Alam
Eko Hariyanto ............................................................................................................................................. 15

Pemilihan Cloud Computing sebagai Teknologi di Masa Depan
Imelda Sri Duma Yanti ................................................................................................................................ 20

Privacy by Design sebagai Upaya Peningkatan Keamanan Cloud Computing
Asrizal ......................................................................................................................................................... 24

Peran Komputasi Awan (Cloud Computing) dalam Kelancaran Bisnis dengan Penerapan
―Google Apps‖
Raheliya Br Ginting .................................................................................................................................... 30

Disaster Recovery Planning Menggunakan Teknologi Cloud Computing
Raheliya Br.Ginting, Irene Sri Morina ........................................................................................................ 36

Virtualisasi dan Cloud Computing pada Sistem Linux
Zulkifli ......................................................................................................................................................... 40


COMPUTATION ...................................................................................................................................... 43

Analisis Syntak Tata Bahasa Alami dengan Menggunakan Metode Left Corner Parsing
Boni Oktaviana ........................................................................................................................................... 45

Aplikasi Penyembunyian Pesan pada Berkas Digital
Jaidup Banjarnahor, Jamaluddin, Riken Pakapahan .................................................................................. 49

Perancangan Pengiriman Pesan Suara Dengan Kriptografi Metode Government Standard
(GOST)
Auliana Nasution ......................................................................................................................................... 55

Analisis Digital Audio Watermarking dengan Menggunakan Metode Discrete
Wavelet Transform (DWT)
Alexandro Nababan, Maya Silvi Lydia, B.Sc, M. Sc, Dian Rahmawaty, S. Si, M. Kom ............................... 64

vi
Aplikasi Pencari Rute Optimum Menggunakan Algoritma Semut di Kampus Universitas
Sumatera Utara dengan Dukungan Sistem Informasi Geografis
Friendly Purba1, Syahril Efendi, M. Andri Budiman .................................................................................. 68

Penerapan Digital Signature pada Dunia Perbankan
Faisal Agus Nugraha, Arie Yanda Ibrahim ................................................................................................. 74

Penggunaan Algoritma Cipher Rijndael dan Algoritma Hash Md5 untuk Keamanan File
Lampiran (Attachment) Email dengan Kriptografi
Fardian ....................................................................................................................................................... 78

Digital Watermarking File Audio
Sumi Khairani, Neni Muliani ...................................................................................................................... 88

Perancangan Aplikasi Paillier Cryptosystem untuk Mengamankan Text File
Novy, Opim Sitompul, M.Andri Budiman .................................................................................................... 92

Analisis Data Mining untuk Market Basket Analysis Penerimaan Mahasiswa Baru
Menggunakan Algoritma Fuzzy c-Covering (Studi Kasus: Perguruan Tinggi XYZ)
Yohana Dewi Lulu W, Ika Rumi ................................................................................................................ 106

Pemanfaatan Pararel Processing dan Single Processing pada Perancangan Robot KRCI Divisi
Beroda
Ranap Katili Parulian S, Dedy Arisandi ................................................................................................... 115

Penerapan Algoritma Floyd dalam Penentuan Rute Terpendek dari Fasilkomti ke Landmarks
USU
Indra Aulia, Mohammad Andri Budiman .................................................................................................. 119

Perancangan Kompiler Mikrokontroler yang Kompatibel untuk Variannya
Seniman, M. Partaonan Hrp, Muhammad Iqbal ....................................................................................... 122

Penggunaan Faktor Hsinchun Chen Dalam Algoritma Genetika Untuk Menemukan Dokumen
yang Mirip
Poltak Sihombing, Vera Wijaya................................................................................................................. 127

Rancang Bangun Sistem Prediksi Penyakit Skizofrenia dengan Menggunakan Jaringan Saraf
Tiruan Backpropagatin dengan Adaptive Learning
Ilmiati, Muhammad Ainul Yaqin, Eko Djunaidi ........................................................................................ 132

Analisis Teknik Watermaking Metode end of File dan Enkripsi Rot 13 untuk Meningkatkan
Keamanan
Yuyun Yusnida Lase .................................................................................................................................. 138

Meningkatkan Kualitas Informasi pada Data Warehouse Menggunakan Teknik Data Mining
Zefri Paulanda .......................................................................................................................................... 143

Enkripsi untuk Keamanan Data Menggunakan Algoritma RSA
Henra Verywati P ...................................................................................................................................... 148

Shortest Way Huffman Text Compression
Andysah Putera Utama Siahaan ................................................................................................................ 153
vii
Sistem Pengaturan Lampu Lalu Lintas dengan Menggunakan PLC
Desinta Purba, Erlanie Sufarnap, Armaini Rahman.................................................................................. 159

Implementasi Penggabungan Kompresi Huffman dan Enkripsi Serpent pada File Suara
Irene Sri Morina ........................................................................................................................................ 165


INFORMATION SYSTEM AND APPLICATION .............................................................................. 171

Sistem Informasi Perpustakaan Berbasis SMS Gateway di Perpustakaan D-III FMIPA Unsyiah
Rasudin Abubakar ..................................................................................................................................... 173

Enhancing Programming Skill Based on Competitive Syllabus of Online Judges
Franheit Sangapta Manullang, Felix Halim .............................................................................................. 178

SIG dan AHP untuk Sistem Pendukung Keputusan Perencanaan Wilayah Industri dan
Pemukiman Kota Medan
Muhammad Hanafi, Poltak Sihombing, Ade Candra................................................................................. 182

Kombinasi Protokol XMPP dengan HTTP Untuk Meningkatkan Real Time Aplikasi Web
Rizqi Mulki , Dedy Arisandi ...................................................................................................................... 191

Pengembangan Aplikasi Database Koperasi dan UMKM Berbasis Website untuk Pengumpulan
dan Penganalisaan Data Koperasi dan UMKM, Contoh Kasus di Dinas Koperasi UMKM
Pemerintah Kota Medan
Muhammad Safri Lubis, Muhammad Fadhly Sani .................................................................................... 197

Peran ICT untuk Terselenggaranya Pelayanan Prima
Muhammad Irwan Padli Nasution, Murlan Naida .................................................................................... 204

Strategi Green ICT untuk Sustainable Organisasi
Muhammad Irwan Padli Nasution, Dedy Irwan ........................................................................................ 208

Teknologi Informasi dan Elektronika Aspek Sumber Daya Manusia (SDM)
Nurul Hamdi, ST. ...................................................................................................................................... 212

Digital Forensik dan Penanganan Pasca Insiden
Zuhri Ramadhan........................................................................................................................................ 217


NETWORKING AND DISTRIBUTED SYSTEM ............................................................................... 223

Implemetasi Manajemen Bandwidth Menggunakan Simple Queue dan Queue Tree pada
MikroTik RouterOS
Anwar ........................................................................................................................................................ 225

Failover Nama Domain dengan Memanfaatkan Fasilitas Dyndns pada ZoneEdit
Hendra ...................................................................................................................................................... 231

Penggunaan Jaringan Computer untuk Perusahaan/Organisasi, Umum dan Social Jaringan
Mawardi .................................................................................................................................................... 236

viii
Perbandingan Quality of Services VoIP Pada Transport TCP dan UDP
Fernando Sebayang, Allwin Simarmata, Markiano Tambunan ................................................................. 240

Implementasi Ispconfig sebagai Hosting Control Panel Study Kasus AMIK MBP Medan
Misdem Sembiring, Hendrik Siagian ......................................................................................................... 243

Pencegahan Flooding Data pada Jaringan Komputer
Sany Rossadhi S ........................................................................................................................................ 262

Penggunaan PC Cloning sebagai Solusi Penghematan Biaya pada
Local Area Network (Studi Kasus : Rental Komputer XYZ)
Jehezkiel Wowiling, Muhammad Taufik Batubara, Leo Agus Fernando ................................................... 273



1












2
3
Keamanan di Awan: Meninjau Faktor Keamanan
dalam Implementasi Cloud Computing
Amer Sharif
#1

Program Studi S1 Ilmu Komputer dan S2 Teknik Informatika,Universitas Sumatera Utara
Jl. Universitas No.24A Kampus USU Medan – 20155
Indonesia
1
amer.sharif@usu.ac.id

Abstrak— Cloud computing dewasa ini memiliki daya tarik
yang besar pada banyak perusahaan karena
memungkinkan penghematan yang signifikan pada
pengguna dari segi investasi perangkat keras, pengelolaan
berbagai perangkat TI, dan biaya komputasi yang dapat
disesuaikan dengan cepat dan mudah sesuai perubahan
kebutuhan sewaktu-waktu. Implementasi cloud computing
dapat dilihat dari bentuk model implementasi yaitu awan
swasta, awan komunitas, awan publik, ataupun awan
hibrid ataupun dari model layanan yang disediakannya
yaitu Software as a Service, Platform as a Service, dan
Infrastructure as a Service. Faktor keamanan mutlak
menjadi pertimbangan utama dalam implementasi cloud
computing. Pengguna harus memiliki pemahaman yang
menyeluruh mengenai kebijakan dan arsitektur keamanan
penyedia layanan awan. Penyedia dapat mengambil
pendekatan-pendekatan seperti manajemen identitas,
deteksi dan forensik data, serta enkripsi data untuk
membangun suatu keamanan yang terpadu pada layanan
awan yang disediakannya.

Kata Kunci— cloud computing, cloud security, arsitektur
keamanan, kebijakan keamanan.
I. PENDAHULUAN
Cloud Computing (komputasi awan) saat ini menjadi
paradigma yang banyak diperbincangkan dalam dunia
Teknologi Informasi (TI). Meskipun berbagai pihak telah
membuat definisinya masing-masing tentang cloud
computing ini, secara ringkas cloud computing dapat
dipahami sebagai kemampuan komputasi yang
disediakan oleh perangkat-perangkat seperti perangkat
keras, perangkat lunak, jaringan, penyimpanan, dan
antarmuka sebagai layanan. Layanan ini tersedia bagi
penggunanya melalui internet dan disediakan
berdasarkan permintaan dan kebutuhan si pengguna di
mana saja dan kapan saja serta bersifat dinamis:
kemampuan komputasi yang dipakai pengguna dapat
ditambah atau dikurangi sewaktu-waktu dengan interaksi
yang minimal dengan penyedia layanan dan biaya
penggunaan sebayak pemakaian. Dua hal ini menjadi
daya tarik utama cloud computing: pengguna
terhindarkan dari biaya investasi dan pengelolaan rutin
perangkat komputasi, serta elastisitas (kemudahan
menambah atau mengurangi dengan cepat) pemakaian
daya komputasi. Sebagaimana dilaporkan dalam studi
[12] pada 13 negara diperoleh hasil mengenai trend
cloud computing antara lain: rata-rata 18% responden
yang sudah menggunakan cloud computing saat ini,
sedang 34% sudah berencana untuk menggunakan awan;
mayoritas responden (88%) memperkirakan akan
mengimplementasikan cloud computing dalam tiga tahun
ke depan.
II. IMPLEMENTASI CLOUD COMPUTING
Model implementasi Cloud Computing adalah sebagai
berikut [13]:
A. Awan swasta (Private cloud). Infrastruktur awan
dioperasikan secara khusus untuk suatu organisasi.
Dapat dikelola oleh organisasi bersangkutan atau
pihak ketiga dan dapat berada pada lokasi atau di
luar lokasi.
B. Awan komunitas (Community cloud). Infrastruktur
awan digunakan bersama oleh beberapa organisasi
dan mendukung suatu komunitas yang memiliki
perhatian/minat yang sama (misalnya misi,
persyaratan keamanan, kebijakan, dan pertimbangan
kepatuhan/ compliance). Dapat dikelola oleh
organisasi bersangkutan atau pihak ketiga dan dapat
berada pada lokasi atau di luar lokasi.
C. Awan publik (Public cloud). Infrastruktur awan yang
disediakan buat masyarakat umum ataupun
kelompok industri besar dan dimiliki oleh organisasi
yang menawarkan layanan awan.
D. Awan hibrid (Hybrid cloud). Infrastruktur awan
yang merupakan gabungan dari dua atau lebih awan
(swasta, komunitas, ataupun publik) yang tetap
berupa entitas unik tetapi disatukan oleh teknologi
yang sudah distandarisasi yang memungkinkan
portabilitas data dan aplikasi.
Cloud Computing juga dapat dikategorikan
berdasarkan model layanan yaitu:
A. Software as a Service (SaaS). Kemampuan yang
ditawarkan kepada pengguna adalah menggunakan
aplikasi penyedia yang berjalan pada infrastruktur
awan. Aplikasi tersebut dapat diakses melalui
berbagai perangkat client melalui antarmuka seperti
web browser (misalnya aplikasi email berbasis web).
4
Gbr 1 Model Layanan Cloud Computing

Software as a Service (SaaS)

Platform as a Service (PaaS)

Infrastructure as a Service (IaaS)
Pengguna tidak mengelola atau mengendalikan
infrastruktur awan di bawahnya termasuk jaringan,
server, sistem operasi, penyimpanan, atau bahkan
kemampuan masing-masing aplikasi, dengan
pengecualian beberapa pengaturan pada aplikasi
yang sifatnya terbatas, oleh pengguna.
B. Platform as a Service (PaaS). Kemampuan yang
ditawarkan kepada pengguna adalah memanfaatkan
infrastruktur awan untuk menjalankan aplikasi yang
dibangun atau dimiliki oleh pengguna menggunakan
bahasa pemrograman dan alat-alat bantu (tools) yang
didukung oleh penyedia layanan. Pengguna tidak
mengelola atau mengendalikan infrastruktur awan di
bawahnya termasuk jaringan, server, sistem operasi,
penyimpanan, tetapi dapat mengatur aplikasi yang
dijalankan dan juga sebagian konfigurasi lingkungan
hosting aplikasi tersebut.
C. Infrastructure as a Service (IaaS). Kemampuan yang
ditawarkan kepada pengguna adalah penyediaan
sumberdaya-sumberdaya komputasi mendasar
seperti pengolahan, penyimpanan, jaringan, di mana
pengguna dapat menjalankan sembarang perangkat
lunak seperti sistem operasi dan aplikasi-aplikasinya.
Pengguna tidak mengelola atau mengendalikan
infrastruktur awan di bawahnya tetapi dapat
mengendalikan sistem operasi, penyimpanan,
aplikasi yang dijalankan, dan mungkin sebagian
komponen jaringan tertentu (misalnya firewall).
III. KARAKTERISTIK CLOUD COMPUTING
Ada lima karakteristik yang harus dimiliki Cloud
Computing [13] yaitu: layanan berdasarkan permintaan
(on-demand), akses jaringan luas, pengumpulan (pooling)
sumber daya, elastisitas yang cepat, dan layanan yang
terukur.
A. Swalayan Berdasarkan Permintaan: Aspek
swalayan dan berdasarkan permintaan berarti
pengguna dapat menggunakan layanan awan
sebanyak yang dibutuhkannya tanpa interaksi
operator dengan penyedia awan.
B. Akses Jaringan Universal: Akses jaringan universal
berarti kemampuan penyedia awan tersedia melalui
jaringan dan dapat diakses melalui mekanisme
standar oleh client.
C. Pengumpulan (Pooling) Sumber Daya: Pooling
sumber daya memungkinkan penyedia awan
melayani penggunanya melalui model manca-
penyewa (multi-tenant). Sumber daya fisik dan
virtual dipakai dan dipakai-ulang sesuai permintaan
pengguna. Ada kesan kemandirian lokasi karena
pengguna umumnya tidak mengatur atau tidak
mengetahui lokasi persis sumberdaya yang
disediakan kecuali menyatakannya pada level
abstraksi yang lebih tinggi (misalnya wilayah,
provinsi atau pusat data tertentu).
D. Elastisitas Yang Cepat: Elastisitas didefinisikan
sebagi kemampuan mengurangi ataupun
menambahkan sumber daya sesuai kebutuhan. Bagi
pengguna, awan tampak tak terbatas dan pengguna
dapat membeli daya komputasi sesedikit atau
sebanyak yang diperlukannya.
E. Layanan Yang Terukur: Aspek-aspek pelayanan
awan dapat terkendali dan diukur oleh penyedia
awan
menggunakan layanan yang terukur. Hal ini penting
untuk penagihan, kontrol akses, optimisasi sumber
daya, perencanaan kapasitas, dan tugas lainnya.
IV. KEAMANAN PADA CLOUD COMPUTING
Keamanan adalah faktor yang sangat penting dalam
implementasi teknologi informasi manapun. Terlebih lagi
pada implementasi cloud computing, di mana pengguna
―menyerahkan‖ pengelolaan perangkat, infrastruktur,
aplikasi yang digunakan ataupun data yang dimilikinya
kepada penyedia jasa awan. Ada tiga alasan mengapa
faktor keamanan menjadi lebih rumit dalam
implementasi cloud computing [2]:
A. Pengguna akan mempercayakan pengelolaan
keamanannya kepada penyedia. Jika si penyedia
kurang mampu mengamankan lingkungannya
sendiri, maka hal ini tentu akan sangat beresiko bagi
si pengguna.
B. Keamanan biasanya sulit untuk dimonitor dan
masalah umumnya baru diketahui ketika sudah
terjadi.
C. Mengukur kualitas keamanan penyedia sulit
dilakukan karena umumnya penyedia tidak
memaparkan infrastrukturnya kepada pengguna.
Untuk menentukan tingkat keamanan yang dapat
diterima pengguna, pengguna dapat mengajukan
sejumlah pertanyaan berikut kepada penyedia:
5
- Seperti apa arsitektur dan kebijakan keamanan si
penyedia awan?
- Apakah penyedia awan menggunakan pihak ketiga
untuk mengukur tingkat keamanannya?
- Seberapa jauh cakupan service level agreement
(SLA) antara pengguna dan penyedia awan?
- Apakah penyedia awan sudah memahami kebutuhan
pemeliharaan dan perlindungan data dari pengguna?
- Di manakah data pengguna akan disimpan secara
fisik? Dapatkah penyedia memberikan jaminannya
bahwa data tersebut akan tetap bersifat rahasia?
- Apakah penyedia awan memisahkan (mempartisi)
data, aplikasi, atau alat-alat bantu manajemen antara
seorang pengguna dengan pengguna layanan awan
lainnya?
- Adakah hukuman yang jelas jika terjadi pembobolan
data atau sistem?
- Apakah portabilitas (kemudahan pemindahan) data
merupakan bagian dari layanan penyedia awan?
- Apakah penyedia awan memiliki aturan-aturan
keamanan yang harus dipatuhinya?
- Dapatkah pengguna meninjau fasilitas awan yang
digunakan?
- Apakah penyedia menggunakan perangkat
keamanan seperti firewall untuk mengamankan
aplikasi atau data pengguna?
- Dapatkah penyedia awan merahasiakan informasi
keamanan seperti kunci private?
- Apakah penyedia awan menyediakan enkripsi dan
manajemen kunci?
- Apakah penyedia awan memiliki arsitektur
manajemen identitas dan akses yang baik dan sudah
berjalan?
- Apakah single sign on sudah diterapkan bagi
pengguna layanan awan si penyedia?
Melihat pentingnya faktor keamanan ini, pengguna
kadangkala berasumsi bahwa penyedia layanan awan
yang besar sudah tentu memiliki seperangkat service
level agreement (SLA) yang menyeluruh untuk
pengguna-penggunanya. Pada kenyataannya, kebanyakan
perangkat perjanjian yang baku dimaksudkan untuk
melindungi si penyedia dan bukannya si pengguna.
Sangatlah penting bagi pengguna untuk benar-benar
memahami kontrak yang akan disetujui bersama dengan
si penyedia.
Faktor keamanan ini bertambah rumit dengan mulai
kurang efektifnya pendekatan keamanan yang biasa. Hal
ini disebabkan oleh sekitar 70% pelanggaran keamanan
disebabkan oleh orang dalam (atau oleh orang yang
dibantu dari dalam) [2]. Orang dalam ini sulit ditangkap.
Keadaan ini juga dihadapai dalam lingkungan awan yang
pada dasarnya dikelola oleh orang-orang yang mungkin
saja tergoda untuk membobol keamanannya. Pengguna
harus memiliki rencana untuk mengantisipasi ancaman
yang berasal dari dalam maupun dari luar.
Untuk menekan resiko pelanggaran keamanan,
pendekatan-pendekatan berikut dapat ditempuh [2]:
A. Manajemen identitas
Sasaran utama manajemen identitas adalah mengelola
informasi identitas pribadi sehingga akses kepada sumber
daya, aplikasi, data, dan layanan komputer dapat diatur
dengan baik. Beberapa manfaatnya:
- Meningkatkan produktifitas pengguna, dengan
menyederhanakan antarmuka single sign on dan
kemudahan untuk mengubah hak akses dengan
cepat.
- Meningkatkan tingkat layanan kepada pelanggan
dan mitra, dengan menyederhanakan dan
mengamankan proses akses kepada aplikasi dan
data.
- Mengurang biaya TI (teknologi informasi), karena
manajemen identitas memungkinkan provisioning
(pemberian atau pembatalan akses) yang otomatis.
Provisioning yang manual umumnya melibatkan
staf bagian TI, sehingga jika diotomatisasi akan
dapat memberikan penghematan waktu dan biaya
operasional.
B. Deteksi dan Forensik Data
Alat-alat bantu yang dapat digunakan dalam
pendekatan ini mencakup:
1) Catatan kegiatan (activity logs)
Kebanyakan sistem operasi, aplikasi, database, dan
perangkat seperti firewall dan monitor jaringan memiliki
kemampuan pencatatan (logging). Mengaktifkan
pencatatan memang mengharuskan sistem untuk terus-
menerus menulis log file, dan log file yang dihasilkan
juga harus dikelola. Tetapi log file sering kali dapat
menyediakan bukti bagaimana suatu kejahatan dilakukan.
2) HIPS DAN NIPS
Host-based intrusion protection systems (HIPS) dan
network-based intrusion protection systems (NIPS) pada
dasarnya adalah sejumlah kemampuan untuk
mempersulit upaya penetrasi ke dalam suatu jaringan.
Kedua hal ini dapat terdiri dari:
- Pemonitor log file dan sistem, yang memonitor
perubahan-perubahan yang dapat meng-indikasikan
suatu serangan seperti adanya perubahan hak akses
dan memberikan peringatan yang dibutuhkan.
- Network intrusion-detection systems (NIDS) seperti
firewall dan sejenisnya.
- White-listing software: software ini mendata semua
program executable yang diizinkan untuk berjalan
pada sebuah komputer dan mencegah program lain
yang tidak terdata supaya tidak dapat berjalan,
sehingga hacker tidak dapat menjalankan program
mereka di komputer. Software ini juga melaporkan
upaya-upaya untuk menjalankan software yang tidak
sah.
6
- Manajemen ancaman terpadu, yang mengumpulkan
informasi dari komponen-komponen di atas dan
mengidentifikasi ancaman dengan menganalisa
informasi gabungan tersebut.

3) Data Audit
Fasilitas ini merekam nama pengguna yang membaca
data, bukan hanya sekedar merekam pengguna yang
mengubah data, dengan pertimbangan data yang sudah
dibaca juga mudah untuk dicuri. Kebutuhan akan
software semacam ini di AS didorong oleh UU Sarbanes-
Oxley yang mewajibkan perlindungan terhadap data
keuangan dari pihak yang tidak berwenang.
C. Enkripsi Data
Enkripsi data mempersulit upaya-upaya mengambil
data secara tidak sah, dan saat ini sudah tersedia
banyak fasilitas enkripsi yang dianggap cukup aman.
Tetapi proses enkripsi juga membutuhkan sumber
daya komputasi, sehingga perlu diperhatikan data
apa saja yang harus dienkripsi. Perlu juga
diperhatikan pada saat mana enkripsi dan dekrpsi
data dilakukan, untuk mengantisipasi pencurian
yang terjadi justru ketika data sudah didekripsi.
V. PENUTUP
Cloud computing dewasa ini memiliki daya tarik yang
besar pada banyak perusahaan karena memungkinkan
penghematan yang signifikan dari segi investasi
perangkat keras, pengelolaan berbagai perangkat TI, dan
biaya komputasi yang dapat disesuaikan dengan cepat
dan mudah sesuai perubahan kebutuhan sewaktu-waktu.
Tetapi karena berbagai perangkat dan data yang sangat
penting bagi kelangsungan perusahaan pengguna dalam
cloud computing kini dikelola oleh penyedia layanan
awan, maka faktor keamanan mutlak menjadi
pertimbangan utama. Pengguna harus memiliki
pemahaman yang menyeluruh mengenai kebijakan dan
arsitektur keamanan penyedia layanan awan, dan
membuat service level agreement yang secara
menyeluruh melindungi kepentingan baik pengguna
maupun penyedia layanan awan. Penyedia sendiri dapat
mengambil pendekatan-pendekatan seperti manajemen
identitas, deteksi dan forensik data, serta enkripsi data
untuk mengurangi resiko keamanan pada layanan awan
yang disediakannya.

REFERENSI
[1] Zarlis, M. Sharif, A. Menelaah Janji-janji Cloud Computing
dalam Bidang Teknologi Informasi: Manfaat dan Pertimbangan
dalam Implementasi Cloud Computing. Proceeding Pekan Ilmiah
XII Fakultas Teknik Universitas Islam Sumatera Utara. 2011.
[2] Hurwitz, J. Et al. Cloud Computing for Dummies. Indiana, AS:
Wiley Publishing, Inc., 2010.
[3] Armbrust, M. et al. Above the Clouds: A Berkeley View of Cloud
Computing. Electrical Engineering and Computer Sciences
(EECS) University of California at Berkeley. Februari 2009.
[4] Boss, G. et al. Cloud Computing. IBM Corp. Oktober 2007.
[5] Gregg, M. 10 Security Concerns for Cloud Computing. Global
Knowledge Training LLC. 2010
[6] Jadhwani, P. et al. Cloud Computing Building a Framework for
Successful Transition. GTSI Corp. Oktober 2009.
[7] Kelley, D. Rethinking Privacy and Cloud Computing. [Online].
Tersedia di:
www.esecurityplanet.com/features/article.php/3910876.
November 2010. Diakses 26/3/2011
[8] Kundra, V. Federal Cloud Computing Strategy. The White
House, Washington DC. Februari 2011
[9] Rayport, J. et al. Envisioning the Cloud: The Next Computing
Paradigm. 2009.
[10] _________. Cloud Computing: Resiliency is the Key to Success.
SunGard Availability Services. Oktober 2009
[11] ________. IBM Point if View: Security and Cloud Computing.
IBM Corp. November 2009.
[12] ________. The Cisco Connected World Report. Cisco Systems.
Oktober 2010.
[13] ________. Working Definition of Cloud Computing. National
Institute for Standards and Technology (NIST). Agustus 2009









7
Kemajuan Cloud Komputing

Sriwinar

Program Studi Ilmu Komputer
Fakultas Matematika & Ilmu Pengetahuan Alam
Universitas Sumatera Utara
sriwinar_skom@yahoo.com


Abstrak—Cloud Computing adalah teknologi komputer
yang menggunakan internet sebagai medianya, dengan
penggunaan Cloud Computing maka komputer tidak perlu
menggunakan suatu sistem operasi tertentu (Linux, Mac
OS, Windows, dan lainnya), tidak membutuhkan hardisk
dan tidak perlu instalasi software pada komputernya
karena penggunaan semua hal ini telah ada pada layanan
Cloud Computing. Penyimpanan data dilakukan di server
“hardisk” dari penyedia layanan Cloud Computing, yang
diperlukan untuk menggunakan Cloud Computing ini
adalah sebuah komputer dan koneksi internet.Teknologi
Cloud Computing menggunakan internet dan central
remote server untuk mengatur data dan aplikasi. Cloud
Computing memungkinkan konsumen dan pebisnis untuk
menggunakan aplikasi tanpa melalui proses instalasi dan
dapat mengakses file personal di computer melalui akses
internet. Dengan menerapkan Cloud Computing, kita
serasa memilikikomputer pribadi di dunia maya dan
personal komputer kita berpindah ke dunia maya.Karena
Cloud Computing berbasis internet maka komputer
tersebut dapat diakases darimanapun asalkan ada koneksi
internet (mobile), misalkan kita sedang berlibur ke luar
kota, maka tidak perlu membawa komputer atau notebook,
cukup ke warnet yang ada koneksiinternet dan web
browser maka komputer tersebut akan menjadi komputer
kita atau bias saja kita meminjam komputer teman untuk
membuka komputer kita yang berbasis Cloud
Computing.

Keywords—Cloud Computing
I. PENDAHULUAN

Penggunaan komputer saat ini sudah semakin
canggih, jika dulu pada tahun 80an kita masih
menggunakan komputer berbasis DOS yang layarnya
hitam putih (tanpa tampilan GUI), menggunakan disket
yang berukuran besar untuk instalasi software ataumedia
penyimpanan dan pertengahan 90an mulai muncul OS
yang sudah bisa menampilkan GUI dan terus mengalami
perkembangannya dan saat ini telah ada istilah Cloud
Computing yang menggambarkan penggunaan komputer
melalui akses internet dan dapat digunakan secara mobile
karena dapat diakses dimanapun.

II. DASAR TEORI

Istilah Cloud Computing ini mengacu pada internet
yang dianggap sebagai awanbesar yang berisi komputer
yang saling terhubung.Penggambaran dari Cloud
Computing dapat dilihat pada gambar dibawah ini.










































Gambar 1. Ilustrasi Cloud Computing







8
Dengan adanya Cloud Computing ini kita tidak perlu
lagi harus menginstall OS, Software pada komputer, dan
yang paling penting adalah tidak perlu melakukan
upgrade terhadap komputer. Hal ini mengguntungkan
bagi perusahaan yang mengharuskan melakukan upgrade
terhadap komputernya setiap tahunnya, ini membutuhkan
dana yang sangat besar untuk mengupgrade komputer
beserta hardwarenya serta membeli software beserta OS
nya dan mempekerjakan admin IT yang bertugas untuk
melakukan monitoring terhadap server, komputer,
hardware, jaringan, aplikasi, dan storage. Perusahaan
yang menyediakan layanan semacam ini adalah Google,
Microsoft, Zoho, Amazon, dan SalesForce.

III. PEMBAHASAN

Keuntungan dari penggunaan Cloud Computing :
1. Pengurangan Biaya Investasi Hardware
Karena dengan menggunakan Cloud Computing, kita
tidak perlu membeli hardware komputer, media
penyimpanan (hardisk), komputer server, dan membeli
software karena semua hal ini telah ada dan terinstall
secara online pada saat menggunakan Cloud
Computing. Menurut studi yang dilakukan Centre for
Economics and Business Research (Cebr) yang
disponsori oleh EMC yang dilakukan di Perancis,
Jerman, Italia, Spanyol dan Inggris. Penerapan Cloud
Computing menghasilkan penghematan untuk layanan
TI lebih dari 763 miliar Euro dalam kurun waktu
antara 2010 sampai 2015, sama dengan sekitar 1.57%
dari total GDP lima negara bersangkutan secara
akumulatif.

2. Back up dan Recovery data
Data yang ada akan disimpan pada server penyedia
layanan Cloud Computing secara online dan penyedia
layanan Cloud Computing memiliki banyak server
untuk menghandle usernya sehingga dimungkinkan
untuk melakukan back up pada server yang lain.

3. Dapat Diakses Dimana Saja
Hal ini yang menurut penulis kelebihan dari Cloud
Computing, karena Cloud Computing berbasis internet
maka personal komputer kita dapat diakses
diamanapun denganmenggunakan komputer atau
notebook orang lain. Jadi tidak perlu pusing membawa
notebook kemana – mana.

4. Tidak Terbatasnya Penyimpanan
Selain telah menyediakan ―hardisk‖ secara online
yang dapat kita gunakan untuk menyimpan data,
―hardisk‖ ini juga dapat diatur kapasitasnya (ditambah
atau dikurangi) sesuai dengan kebutuhan kita.Tentu
saja untuk dapat menikmati layanan ini harus
membayar harga sewa yang lebih tinggi.


5. Tidak Perlu Khawatir Terhadap Software
Sistem Operasi yang berbasis Cloud Computing
secara default telah memberikan beberapa software
yang telah memenuhi kebutuhan kita terhadap
penggunaan komputer seperti word prosessor,
presentation, video, image, PDF, RSS Reader, musik,
dan lainnya. Selain itu kita juga tidak dipusingkan lagi
terhadap masalah lisensi software karena pastinya
software yang akan kita gunakan asli. Untuk masalah
update software sendiri telah dilakukan oleh pihak
penyedia layanan Cloud Computing sehingga kita
hanya menggunakan software tersebut.

Cloud Computing memiliki 3 layanan yang ditawarkan
kepada usernya, diantaranya:
1. Software as a Service (SaaS).
SaaS ini merupakan layanan Cloud Computing yang
paling dahulu populer.
Software as a Service ini merupakan evolusi lebih lanjut
dari konsep ASP (Application Service Provider). Sesuai
namanya, SaaS memberikan kemudahan bagi pengguna
untuk bisa memanfaatkan sumberdaya perangkat lunak
dengan cara berlangganan. Sehingga tidak perlu
mengeluarkan investasi baik untuk in house development
ataupun pembelian lisensi.Dengan cara berlangganan via
web, pengguna dapat langsung menggunakan berbagai
fitur yang disediakan oleh penyedia layanan. Hanya saja
dengan konsep SaaS ini, pelanggan tidak memiliki
kendali penuh atas aplikasi yang mereka sewa.Hanya
fitur-fitur aplikasi yang telah disediakan oleh penyedia
saja yang dapat disewa oleh pelanggan.
Dan karena arsitektur aplikasi SaaS yang bersifat
multi tenant, memaksa penyedia untuk hanya
menyediakan fitur yang bersifat umum, tidak spesifik
terhadap kebutuhan pengguna tertentu. Meskipun
demikian, kustomisasi tidak serta-merta diharamkan,
meskipun hanya untuk skala dan fungsi yang terbatas.
Tapi dengan berkembangnya pasar dan kemajuan
teknologi pemrograman,keterbatasan-keterbatasan itu
pasti akan berkurang dalam waktu tidak terlalu lama.
Untuk contoh layanan SaaS, tentu saja kita harus
menyebut layanan CRM online Salesforce.com– yang
dikomandai Marc Benioff dan telah menjadi ikon SaaS
ini.
Selain itu Zoho.com, dengan harga yang sangat
terjangkau, menyediakan layanan SaaS yang cukup
beragam, dari mulai layanan word processor seperti
Google Docs, project management, hingga invoicing
online. Layanan akunting online pun tersedia, seperti
yang diberikan oleh Xero.com dan masih banyak
lagi.IBM dengan Lotuslive.com nya dapat dijadikan
contoh untuk layanan SaaS di area kolaborasi/unified
communication.
Perusahaan-Perusahaan di bawah ini merupakan
perusahaan yang sudah ditetapkan sebagai perusahaan
yang menyediakan SaaS sebagai bisnis
mereka.Perusahaan dikenakan biaya pelanggan dan biaya
9
berlangganan.

2. Platform as a Service (PaaS)
Seperti namanya, PaaS adalah layanan yang
menyediakan modul-modul siap pakai yang dapat
digunakan untuk mengembangkan sebuah aplikasi, yang
tentu saja hanya bisa
berjalan diatas platform tersebut. PaaS memfokuskan
aplikasi dimana developer tidak usah memikirkan
tentang hardware dan tetap fokus pada application
development-nya tanpa harus mengkhawatirkan
operating system, infrastructure scaling, load balancing
dan lainnya. Pengembang membuat aplikasi pada
platform penyedia melalui Internet.Penyedia PaaS dapat
menggunakan API, portal situs web atau perangkat lunak
gateway diinstal pada komputer pelanggan. Seperti juga
layanan SaaS, pengguna PaaS tidak memiliki kendali
terhadap sumber daya komputasi dasar seperti memory,
media penyimpanan, processing power dan lain-lain,
yang semuanya diatur oleh provider layanan ini. Pionir di
area ini adalah Google AppEngine, yang menyediakan
berbagai tools untuk mengembangkan aplikasi di atas
platform Google, dengan menggunakan bahasa
pemrograman Phyton dan Django.
Kemudian Salesforce juga menyediakan layanan
PaaS melalui Force.com, menyediakan modul-modul
untuk mengembangkan aplikasi diatas platform
Salesforce yang menggunakan bahasa Apex.
Dan mungkin yang jarang sekali kita ketahui, bahwa
Facebook juga bisa dianggap menyediakan layanan PaaS,
yang memungkinkan kita untuk membuat aplikasi
diatasnya.Salah satu yang berhasil menangguk untung
besar dari layanan PaaS Facebook adalah perusahaan
bernama Zynga, yang tahun lalu saja berhasil meraup
keuntungan bersih lebih dari US$ 100 juta, lebih besar
dari keuntungan yang didapat oleh Facebook
sendiri.Aplikasi ini adalah Farmville yang cukup popular
di Facebook.

3. Infrastructure as a Service (IaaS).
IaaS terletak satu level lebih rendah dibanding PaaS.
Ini adalah sebuah layanan yang ―menyewakan‖
sumberdaya teknologi informasi dasar, yang meliputi
media penyimpanan, processing power, memory, sistem
operasi, kapasitas jaringan dan lain-lain, yang dapat
digunakan oleh penyewa untuk menjalankan aplikasi
yang dimilikinya.
Model bisnisnya mirip dengan penyedia data center
yang menyewakan ruangan untuk co-location, tapi ini
lebih ke level mikronya. Penyewa tidak perlu tahu,
dengan mesin apa dan bagaimana caranya penyedia
layanan menyediakan layanan IaaS. Yang
penting,permintaan mereka atas sumberdaya dasar
teknologi informasi itu dapat dipenuhi.
Perbedaan mendasar dengan layanan data center saat
ini adalah IaaS memungkinkan Pelanggan melakukan
penambahan /pengurangan kapasitas secara fleksibel dan
otomatis. Salah satu pionir dalam penyediaan IaaS ini
adalah Amazon.com yang meluncurkan Amazon EC2
(Elastic Computing Cloud).
Layanan Amazon EC2 ini menyediakan berbagai
pilihan persewaan mulai CPU,
media penyimpanan, dilengkapi dengan sistem operasi
dan juga platform pengembangan aplikasi yang bisa
disewa dengan perhitungan jam-jaman. Untuk di dalam
negeri sendiri, rencananya ada beberapa provider yang
akan menyediakan layanan sejenis mulai pertengahan
tahun ini.

Tipe-tipe penerapan (deployment) dari layanan
Cloud Computing, yang terbagi menjadi empat jenis
penerapan, yaitu:
1. Private cloud
Di mana sebuah infrastruktur layanan cloud,
dioperasikan hanya untuk sebuah organisasi tertentu.
Infrastruktur cloud itu bisa saja dikelola oleh si
organisasi itu atau oleh pihak ketiga. Lokasinya pun bisa
on-site ataupun off-site.Bisaanya organisasi dengan skala
besar saja yang mampu memiliki/mengelola private
cloud ini.

2. Community cloud
Dalam model ini, sebuah infrastruktur cloud
digunakan bersama-sama oleh beberapa organisasi yang
memiliki kesamaan kepentingan, misalnya dari sisi
misinya, atau tingkat keamanan yang dibutuhkan, dan
lainnya.
Jadi, community cloud ini merupakan ―pengembangan
terbatas‖ dari private cloud. Dan sama juga dengan
private cloud, infrastruktur cloud yang ada bisa di-
manage oleh salah
satu dari organisasi itu, ataupun juga oleh pihak ketiga.

3. Public cloud
Sesederhana namanya, jenis cloud ini diperuntukkan
untuk umum oleh penyedia layanannya. Layanan-
layanan yang sudah saya sebutkan sebelumnya dapat
dijadikan contoh dari public cloud ini.

4. Hybrid cloud
Untuk jenis ini, infrastruktur cloud yang tersedia
merupakan komposisi dari dua atau lebih infrastruktur
cloud (private, community, atau public).Di mana
meskipun secara entitas mereka tetap berdiri sendiri-
sendiri, tapi dihubungkan oleh suatu
teknologi/mekanisme yang memungkinkan portabilitas
data dan aplikasi antar cloud itu.Misalnya, mekanisme
load balancing yang antarcloud, sehingga alokasi
sumberdaya bisa dipertahankan pada level yang optimal.

IV. KESIMPULAN DAN SARAN

Walaupun demikian masih ada kekhawatiran bagi
administrator IT dan perusahaan/organisasi untuk
menerapkan Cloud Computing pada perusahaan mereka,
10
hal ini dikarenakan karena takutnya akan kehilangan
kontrol atas data perusahaan mereka. Ini terjadi karena
jika telah menerapkan Cloud Computing maka hardisk
komputer/server local yang bisaanya digunakan untuk
penyimpanan data perusahaan akan beralih ke
penyimpanan hardisk penyedia layanan Cloud
Computing. Selain itu untuk menggunkan Cloud
Computing dibutuhkan bandwith internet yang cepat dan
stabil, hal ini masih sulit ditemukan di Indonesia.
Masalah interoperabilitas (kemampuan komunikasi
antar sistem) perlu diperhatikan juga dalam penerapan
Cloud Computing seperti jika misalnya
menggunakanMicrosoft Azure (Cloud Computing milik
Miscrosoft), bagaimana format penyimpanan data yang
digunakan dan apakah format data ini bisa dibuka jika
menggunakan Cloud Computing lainnya (misal
Chromium OS) dan apakah semua aplikasi yang ada
sudah mewakili penggunaan komputer user? Masalah
lain adalah dalam hal penanganan kegagalan dalam segi
jaringan internet, misalnya internet yang kita gunakan
sedang down atau internet server Cloud Computing yang
down maka kita tidak bisa menggunakan komputer sama
sekali karena Cloud Computing ini berbasis internet,
mungkin bagi perusahaan besar hal ini bisa ditangani
dengan menggunakan internet service provider lain
sehingga jika terjadi error pada internet service provider
yang digunakan dapat dialihkan ke internet service
provider lain tapi bagaimana dengan masyarakat personal
yang hanya menggunakan satu internet service provider??
Pada dunia maya kerap kali terjadi tindak kejahatan
(cyber crime) seperti misalnya pencurian data. Pada saat
menggunakan Cloud Computing maka data pengguna
akan tersimpan di ―hardisk‖ Cloud Computing secara
online, ini memungkinkan terjadinya pencurian data
sehingga perlu dipertanyakan bagaimana tingkat
kemanan dari system jaringan Cloud Computing??
Bagi perusahaan besar mungkin saja penerapan
Cloud Computing cocok diterapkan karena dapat
menghemat dana perusahaan di bidang IT untuk
penggadaan komputer, server, OS, software, staff IT, dan
lainnya karena dengan Cloud Computing kita hanya
membayar apa yang telah kita gunakan (software dan
penyimpanan yang digunakan) dan hal ini sesuai dengan
kebutuhan perusahaan tersebut jadi dimungkinkan
perusahan untuk membayar lebih murah jika
menggunakan Cloud Computing. Hal ini berbeda jika
Cloud Computing digunakan secara personal pada
masyarakat kebanyakan karena penerapan mahal
dibandingkan dengan membeli dan menggunakan OS,
software, dan membeli hardware komputer, selain itu
saat ini sudah mulai banyak OS dan software yang
bersifat opensource yang dapat menjadi alternative

DAFTAR PUSTAKA
[1] Seminar Andy Bechtolscheim, Chairman & Co-Founder
Arista Network, 12
November2008:http://netseminar.stanford.edu/seminars/Clo
ud.pdf
[2] http://avocadojuice.wordpress.com/2010/11/10/cloud-
computing/
[3] http://ervamadiyudhistira.wordpress.com/2010/12/11/cloud-
computing/
[4] http://www.gudanglinux.info/info/business/50-market/700-
menghitung-keuntungan-ekonomi-cloud-computing.html




















11
Pengamanan Data Tersimpan
pada Media Cloud Drive
Stephanus Priyowidodo
#1

Mahasiswa S2 Teknik Informatika Universitas Sumatera Utara Medan
Jl. Universitas No.24 Medan Indonesia
Analyst PT. Aplikanusa Lintasarta
1
stefano.albiruni@gmail.com


Abstrak— Cloud computing menawarkan media
penyimpanan yang besar yang disebut cloud drive. Google,
Amazon, Box.net, AT&T, Nirvanix, OpenStack merupakan
sebagian kecil dari penyedia layanan internet cloud drive.
Dari layanan cloud drive yang tersedia, GoogleDocs dan
Amazon Cloud Drive merupakan layanan yang disukai
banyak pengguna karena menyediakan layanan tidak
berbayar. Google Docs dari Google menawarkan cloud drive
tidak berbayar dengan kapasitas 1 Gigabytes dan Amazon
Cloud Drive 5 Gigabytes. Layanan cloud drive tidak
berbayar ini memikat banyak pengguna internet untuk
menggunakan media penyimpanan tersebut sebagai media
penyimpanan berjalan, yang relatif bebas dari kerusakan
dan dapat diakses kapan dan di mana saja. Pengguna tidak
perlu memikirkan perihal rusaknya perangkat drive karena
penyedia layanan memiliki server-server cadangan untuk
mengantisipasi rusaknya perangkat dan media
penyimpanan.
Namun dibalik kemudahan dan keamanan perangkat ini,
masih ada hal yang harus diperhatikan oleh pengguna
layanan cloud drive yakni keamanan data tersimpan.
Kebanyakan layanan cloud drive tidak berbayar, tidak
memberikan garansi keamanan data kecuali dengan biaya
tambahan. Makalah ini membahas ide dan teknik
implementasi keamanan data pada cloud drive.

Kata Kunci— cloud, computing, drive, security
I. PENDAHULUAN
Layanan cloud drive dikelompokkan dalam layanan
IaaS (Infrastructure as a Service) pada cloud computing.
IaaS pada umumnya memiliki layanan dasar
penyimpanan dan kemampuan komputasi. Penyedia
layanan menyediakan server, sistem penyimpanan,
switch, router dan sistem pendukung lainnya yang
mampu menangani beban kerja tinggi
[1]
. Infrastruktur
teknologi informasi yang handal tersebut selanjutnya
disewakan ke pelanggan. Metoda ini sangat
menguntungkan perorangan maupun perusahaan karena
pemakai tidak harus terlibat dalam urusan penyediaan
dan perawatan perangkat teknologi informasi.
Keamanan jaringan yang handal pada jaringan cloud
computing menjadi isu yang selalu dipertanyakan. Hal ini
terjadi karena jaringan cloud computing tidak dapat
dikendalikan secara langsung oleh pengguna. Informasi
yang penting dapat sewaktu-waktu diambil oleh orang
yang tidak bertanggung jawab. Guna menghindari
pencurian data yang penting, pengguna harus
memperhatikan kebijakan penyedia layanan cloud drive.
Seberapa kuat enkripsi data yang mereka pergunakan
sehingga saat perangkat keras akan didaur ulang,
pengguna tidak perlu khawatir datanya akan terlihat oleh
orang yang tidak berkepentingan.
Organisasi Data and Analysis Center for Software
(DACS) menekankan bahwa ada tiga kriteria yang
diharuskan agar suatu jaringan dinyatakan aman
[2]
:
1. Dependability : Perangkat lunak harus tetap
bekerja baik dalam keadaan apapun, termasuk saat
terjadi serangan terhadap jaringan.
2. Trustworthiness – Perangkat lunak harus memiliki
tingkat serangan yang minimal dan dapat
menghindari diri dari serangan.
3. Survivability – Perangkat lunak harus memiliki
mekanisme pertahanan terhadap serangan dan
memiliki kemampuan mengembalikan data
dengan tingkat kerusakan yang rendah.
II. CLOUD DRIVE TIDAK BERBAYAR
Kebutuhan akan media penyimpanan yang dapat
diakses setiap waktu dan relatif bebas dari gangguan
seperti kerusakan hardware dan gangguan virus sudah
sangat mendesak. Media penyimpanan seperti flash-disk
memenuhi kriteria dapat diakses setiap saat, namun tidak
dapat terhindar dari gangguan hardware flash serta
gangguan software seperti virus. Google dan Amazon
menawarkan media penyimpanan cloud drive yang bebas
dari kerusakan baik hardware maupun software.
A. Google Docs
Google Docs merupakan layanan cloud computing
dari Google. Google Docs menyediakan layanan aplikasi
umum perkantoran tidak berbayar seperti aplikasi
dokumen, presentasi, spreadsheet, formulir, gambar dan
koleksi. Semua aplikasi ini dapat saling berbagi dan
berkolaborasi file dengan pengguna Google lainnya.
Selain berfungsi sebagai layanan aplikasi perkantoran
yang mobile, Google Docs juga menyediakan media
penyimpanan file atau cloud drive, disediakan 1
Gigabytes tidak berbayar untuk setiap pemilik account
Google.
12


Gambar 1 Cloud Drive Google Docs
B. Amazon Cloud Drive
Amazon, situs yang terkenal sebagai situs layanan jual
beli buku, saat ini mengembangkan layanannya ke cloud
computing, diantaranya layanan media penyimpanan
cloud drive seperti yang terlihat pada gambar 2.


Gambar 2 Amazon cloud drive
Layanan cloud drive dari Amazon menyediakan 5
Gigabytes tidak berbayar untuk setiap pemilik account
Amazon yang dapat di-create dengan mudah hanya
dalam waktu 2 sampai 3 menit. Meski slogan Amazon
cloud drive diantaranya ‗securely stored‘ namun layanan
ini juga tidak menyediakan mekanisme enkripsi
tambahan untuk file-file yang telah tersimpan.
III. ANTARA AMAN DAN TIDAK AMAN
Aspek keamanan penyedia layanan cloud drive
seperti Google dan Amazon seharusnya tidak perlu
diragukan. Kedua penyedia layanan ini sangat
berpengalaman dalam melayani jutaan pengguna layanan
mereka sebelumnya. Google sangat berpengalaman
melayani pengguna Gmail, GTalk, Blogger, sedangkan
Amazon berpengalaman pada layanan jual-beli perangkat
dan buku pada situs http://www.amazon.com.
Layanan cloud drive seharusnya memiliki mekanisme
enkripsi tambahan selain mekanisme username dan
password. Hal ini penting karena cloud drive tidak hanya
berisi pesan singkat seperti e-mail atau tulisan seperti
blog, namun berisi file-file yang bisa jadi sangat penting
bagi kepentingan perorangan maupun perusahaan.
Mekanisme pengamanan dengan username dan password
tidak cukup aman, terutama bagi pengguna yang sering
menggunakan layanan internet publik seperti warnet.
Dengan aplikasi kecil keylogger semua username dan
password pengguna publik internet dapat diketahui
dengan sangat mudah.
Gambar 3 memperlihatkan mekanisme upload dan
download file ke dan dari cloud drive tanpa mekanisme
enkripsi tambahan. Dengan hanya mengetahui username
dan password pengguna saja, semua file yang tersimpan
pada cloud drive dapat dilihat dan diubah isinya.

Gambar 3 Cloud Drive tanpa mekanisme enkripsi

IV. METODA PENGAMANAN DATA CLOUD DRIVE
Mekanisme enkripsi tambahan sebenarnya memiliki
cara kerja yang sederhana. File-file yang akan disimpan
pada cloud-drive sebelumnya dienkripsi. File-file hasil
enkripsi ini selanjutnya dapat disimpan pada cloud-drive.
Dengan teknik ini, pengguna tidak perlu khawatir apabila
sewaktu waktu username dan password-nya dimiliki oleh
orang lain, meskipun file-file dapat di-copy namun isinya
tidak akan bisa diketahui dengan mudah.
A. Aman dengan Tools Sederhana
Untuk mengamankan file-file yang akan disimpan
pada cloud drive, dapat digunakan tools sederhana
seperti aplikasi bantu kompresi seperti WinZip dan
WinRAR. Selain membuat file yang disimpan lebih kecil
yang akan menghemat kapasitas cloud drive, file juga
aman karena pada WinZIP dan WinRAR tersedia
mekanisme password tambahan. Gambar 5 menunjukkan
keamanan tambahan pada file yang akan dikompresi
dengan WinRAR.
WinZIP dan WinRAR merupakan aplikasi bantu yang
umum, dikhawatirkan algoritma enkripsi yang digunakan
lambat laun dapat dipecahkan. Menghindari hal yang
demikian, pengguna yang memiliki pengetahuan
pemrograman dapat membuat aplikasi enkripsi dan
kompresi khusus untuk semua file yang tersimpan pada
cloud drive.

Internet Cloud
Cloud Drive 1
Cloud Drive 2
Pengguna
Cloud Drive
13
Internet Cloud
Cloud Drive 1
Cloud Drive 2
Pengguna
Cloud Drive dengan
sistem enkripsi
tambahan

Gambar 4 Cloud Drive tanpa mekanisme enkripsi

Gambar 5 WinRAR dengan password
Dengan demikian file-file yang tersimpan pada cloud
drive akan aman meskipun berada pada tangan orang
yang tidak berkepentingan.
B. Cloud Drive Aman On-The-Fly
Umumnya teknik upload dan download file-file cloud
drive masih menggunakan web-browser sebagai sarana
bantunya. Pengguna harus login pada penyedia cloud
drive seperti Google dan Amazon apabila ingin membaca
atau menulis ke cloud drive. Akses seperti ini tentu
sangat tidak efisien untuk pengguna yang memiliki lebih
dari satu account cloud drive.
Agar efisien penulis menggunakan aplikasi dari
Gladinet yang disebut Gladinet Cloud Desktop untuk
mempermudah akses ke cloud drive. Dengan modul
Gladinet Cloud Explorer, pemilik cloud drive dapat
mendaftarkan (mount) semua cloud drive account-nya
dan dapat mengakses semua cloud drive dengan cara
yang mudah, sama sekali tidak diperlukan web-browser.
Upload dan download file dapat dilakukan dengan cara
click, drag file lalu drop pada cloud drive dan
sebaliknya.
Pada gambar 6 terlihat penulis telah mendaftarkan 2
account cloud drive yakni Google Docs dan Amazon
Cloud Drive. Gladinet juga mendukung pendaftaran
lebih dari 1 cloud drive dengan penyedia yang sama.
Gambar 6 Gladinet Cloud Explorer
Teknik ini digunakan untuk mendapatkan kapasitas
penyimpanan cloud drive yang besar, misalnya 3 account
cloud drive tidak berbayar dari Amazon, masing-masing
memiliki kapasitas 5 Gigabytes, untuk mendapatkan
kapasitas penyimpanan cloud drive sebesar 15
Gigabytes.
Gladinet Cloud Explorer hanya sebagai alat bantu
pengganti web-browser agar akses ke cloud drive lebih
mudah dan efisien, namun belum memiliki fasilitas
enkripsi tambahan.

Internet Cloud
Cloud Drive 1
Cloud Drive 2
Enkripsi dan Dekripsi
dengan meng-Hook
Layanan Sistem Operasi
SISTEM OPERASI
Enkripsi/Dekripsi
Hook Baca Tulis File
FILE-FILE
LOCAL DRIVE

Gambar 7 Enkripsi dan Dekripsi On-The-Fly
Mengembangkan aplikasi enkripsi dan dekripsi on-
the-fly tentu tidak mudah, dibutuhkan pengetahuan
tambahan untuk meng-hook layanan-layanan file pada
sistem operasi. Gambaran teknik enkripsi dan dekripsi
file on-the fly ini seperti terlihat pada gambar 7.
V. KESIMPULAN
Perkembangan yang pesat pada media penyimpanan
cloud drive harus didukung dengan pengaman file yang
tersimpan di dalamnya. Dengan memanfaatkan aplikasi
bantu sederhana, keamanan data yang tersimpan pada
cloud drive dapat menjadi lebih baik. Optimasi
keamanan data pada cloud drive dapat dilakukan dengan
cara menambahkan teknik enkripsi dan dekripsi dengan
algoritma tersendiri. Dengan menggunakan teknik hook
pada sistem operasi, proses enkripsi dan dekripsi data
atau file dapat dilakukan secara otomatis atau on-the-fly.
14

DAFTAR PUSTAKA
[1] Rittinghouse W. John and Ransome F. James, 2010, Cloud
Computing Implementation, Management, and Security.
[2] Sun Microsystems, 2009, Intoduction to Cloud Computing
Architecture White Paper
[3] Velte T. Anthony, Velte J. Toby and Elsenpeter Robert, 2010,
Cloud Computing: A Practical Approach
[4] http://www.gladinet.com, diakses Juni 2011

15
Pemanfaatan Cloud Computing Pada Daerah
Rawan Bencana Alam

Eko Hariyanto
Program Studi PascaSarjana Teknik Informatika
Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Sumatera Utara
Jl. Dr. Mansur No. 9 Medan, Sumatera Utara, Indonesia
eko_hariyanto_mdn@yahoo.co.id


Abstrak-- Bencana alam merupakan suatu musibah yang
tidak diinginkan oleh siapapun. Walaupun kemajuan
teknologi telah memungkinkan manusia untuk mendeteksi
secara dini bencana yang akan terjadi, seperti mesin
seismograf untuk mencatat adanya getaran gempa atau
letusan gunung merapi dan alat pendeteksi tsunami, namun
hal tersebut tidak sepenuhnya dapat membuat manusia
siap dalam menyelamatkan harta benda mereka yang
berharga. Proses terjadinya bencana yang unpredictable
dan cepat menjadi faktor utamanya. Salah satu contohnya
adalah kehilangan ataupun kerusakan data yang dimiliki
oleh perusahaan yang berada pada daerah rawan bencana
alam. Untuk mengatasi hal ini, kita dapat memanfaatkan
fasilitas dari komputasi awan (cloud computing) agar data
kita tetap aman.

Kata kunci-- komputasi awan (cloud computing), bencana
alam.

I. PENDAHULUAN
Indonesia merupakan daerah pertemuan tiga lempeng
tektonik besar dunia yang masih aktif yaitu Lempeng
Samudra Pasifik yang bergerak ke arah barat-baratlaut
dengan kecepatan sekitar 10 cm per tahun, Lempeng
Samudra India-Benua Australia (Indo-Australia) yang
bergerak ke utara-timurlaut dengan kecepatan sekitar 7
cm per tahun, serta Lempeng Benua Eurasia yang relatif
diam, namun resultante sistem kinematiknya
menunjukkan gerakan ke arah baratdaya dengan
kecepatan mencapai 13 cm per tahun.
Selain itu, Indonesia juga merupakan jalur The
Pasicif Ring of Fire (Cincin Api Pasifik), yang
merupakan jalur rangkaian gunung api aktif di dunia.
Cincin api Pasifik membentang diantara subduksi
maupun pemisahan lempeng Pasifik dengan lempeng
Indo-Australia, lempeng Eurasia, lempeng Amerika
Utara dan lempeng Nazca yang bertabrakan dengan
lempeng Amerika Selatan.
Hal ini sangat memungkinkan negara kita sering
terjadi bencana alam seperti letusan gunung api, gempa
bumi, tsunami dan lain-lain. Dengan kemajuan teknologi
saat ini yang dimanfaatkan untuk mendeteksi
kemungkinan terjadinya bencana alam, seperti mesin
seismograf atau alat pendeteksi tsunami merupakan
upaya-upaya yang dilakukan oleh manusia dalam
menghadapi ancaman bencana alam. Namun secanggih
dan sehebat apapun perkembangan teknologi tersebut,
belum dapat mencegah terjadinya bencana alam.
Ditambah proses terjadinya yang cepat dan
unpredictable, tidak sepenuhnya membuat manusia siap
dalam menghadapi bencana alam, terutama dalam
menyelamatkan harta benda mereka. Selain dapat
menelan korban jiwa, dampak lain yang diakibatkan oleh
bencana alam adalah rusaknya infrastruktur seperti jalan
raya, aliran listrik dan lainnya.
Bangunan-bangunan yang ada pada daerah tersebut
juga tidak luput dari kerusakan bahkan hancur total
termasuk perkantoran, baik swasta maupun pemerintahan
yang memiliki banyak data-data penting. Salah satu
contoh adalah data kependudukan pada instansi
pemerintah terkait sehingga menyulitkan pencarian
korban yang hilang, menyulitkan pemberian bantuan-
bantuan, menyulitkan administrasi, serta hal-hal yang
lainnya, dalam jangka panjang juga dapat menimbulkan
dampak dalam bentuk biaya yang sangat besar untuk
melakukan pendataan ulang akan data yang rusak atau
hilang tersebut.


Gambar 1. Lempeng pada indonesia

Tulisan ini dibuat untuk mencoba mengatasi
permasalahan di atas menggunakan sudut pandang
teknologi informasi (khususnya teknologi yang relatif
baru saat ini yaitu komputasi awan atau yang dalam
istilah aslinya disebut sebagai Cloud Computing. Ide
yang termuat dalam tulisan ini memang belum
diimplementasikan dilapangan. Meski demikian, dimasa
yang akan datang, pemerintah disarankan untuk
mengimplementasikannya, karena teknologi ini, dari
sudut pandang biaya dan dari sudut pandang teknis, saat
ini sudah cukup layak untuk diterapkan (terutama dengan
16
hadirnya teknologi internet yang saat ini sudah relatif
murah dan relatif mudah diperoleh).

II. DEFINISI CLOUD COMPUTING
Cloud computing pada dasarnya adalah menggunakan
Internet based service untuk mensupport business
process. Kata ―Cloud‖ sendiri merujuk kepada simbol
awan yang di dunia TI digunakan untuk menggambarkan
jaringan internet (internet cloud). Cloud computing
adalah gabungan pemanfaatan teknologi komputer
(‗komputasi‗) dan pengembangan berbasis Internet
(‗awan‘). Cloud /awan merupakan metafora dari internet,
sebagaimana awan yang sering digambarkan di diagram
jaringan komputer, awan (cloud) dalam Cloud
Computing juga merupakan abstraksi dari infrastruktur
kompleks yang disembunyikannya adalah suatu metoda
komputasi dimana kapabilitas terkait teknologi informasi
disajikan sebagai suatu layanan (as a service), sehingga
pengguna dapat mengaksesnya lewat Internet (―didalam
awan‖) tanpa pengetahuan tentangnya, ahli dengannya,
atau memiliki kendali terhadap infrastruktur teknologi
yang membantunya.
Menurut jurnal yang dipublikasikan IEEE, Internet
Computing/Cloud Computing adalah suatu paradigma
dimana informasi secara permanen tersimpan di server di
internet dan tersimpan secara sementara di komputer
pengguna (client) termasuk didalamnya adalah desktop,
komputer tablet, notebook, handheld, sensor-sensor,
monitor dan lain-lain. ―Cloud Computing‖ secara
sederhana adalah ―layanan teknologi informasi yang bisa
dimanfaatkan atau diakses oleh pelanggannya melalui
jaringan internet‖. Komputasi awan adalah suatu konsep
umum yang mencakup SaaS, Web 2.0, dan tren teknologi
terbaru lain yang dikenal luas, dengan tema umum
berupa ketergantungan terhadap Internet untuk
memberikan kebutuhan komputasi pengguna. Sebagai
contoh, Google Apps menyediakan aplikasi bisnis umum
secara sharing yang diakses melalui suatu penjelajah web
dengan perangkat lunak dan data yang tersimpan di
server.

III. SEJARAH CLOUD COMPUTING
Ide awal dari cloud computing bisa ditarik ke tahun
1960-an, saat John McCarthy, pakar komputasi MIT
yang dikenal juga sebagai salah satu pionir intelejensia
buatan, menyampaikan visi bahwa ―suatu hari nanti
komputasi akan menjadi infrastruktur publik, seperti
halnya listrik dan telepon‖. Namun baru di tahun 1995
lah, Larry Ellison, pendiri Oracle, memunculkan ide
―Network Computing‖ sebagai kampanye untuk
menggugat dominasi Microsoft yang saat itu merajai
desktop computing dengan Windows 95-nya. Larry
Ellison menawarkan ide bahwa sebetulnya user tidak
memerlukan berbagai software, mulai dari Sistem
Operasi dan berbagai software lain, dijejalkan ke dalam
PC Desktop mereka. PC Desktop bisa digantikan oleh
sebuah terminal yang langsung terhubung dengan sebuah
server yang menyediakan environment yang berisi
berbagai kebutuhan software yang siap diakses oleh
pengguna. Ide ―Network Computing‖ ini sempat
menghangat dengan munculnya beberapa pabrikan
seperti Sun Microsystem dan Novell Netware yang
menawarkan Network Computing client sebagai
pengganti desktop. Namun akhirnya, gaung Network
Computing ini lenyap dengan sendirinya, terutama
disebabkan kualitas jaringan komputer yang saat itu
masih belum memadai, sehingga akses Network
Computing ini menjadi sangat lambat, sehingga orang-
orang akhirnya kembali memilih kenyamanan PC
Desktop, seiring dengan semakin murahnya harga PC.
Tonggak selanjutnya adalah kehadiran konsep ASP
(Application Service Provider) di akhir era 90-an. Seiring
dengan semakin meningkatnya kualitas jaringan
komputer, memungkinkan akses aplikasi menjadi lebih
cepat. Hal ini ditangkap sebagai peluang oleh sejumlah
pemilik data center untuk menawarkan fasilitasnya
sebagai tempat ‗hosting‘ aplikasi yang dapat diakses oleh
pelanggan melalui jaringan komputer. Dengan demikian
pelanggan tidak perlu investasi di perangkat data center.
Hanya saja ASP ini masih bersifat ―privat‖, di mana
layanan hanya dikastemisasi khusus untuk satu
pelanggan tertentu, sementara aplikasi yang di sediakan
waktu itu umumnya masih bersifat client-server.
Kehadiran berbagai teknik baru dalam pengembangan
perangkat lunak di awal abad 21, terutama di area
pemrograman berbasis web disertai peningkatan
kapasitas jaringan internet, telah menjadikan situs-situs
internet bukan lagi berisi sekedar informasi statik, tapi
sudah mulai mengarah ke aplikasi bisnis yang lebih
kompleks. Seperti sudah sedikit disinggung sebelumnya,
popularitas Cloud Computing semakin menjulang saat di
awal 2000-an, Marc Benioff ex VP di Oracle,
meluncurkan layanan aplikasi CRM dalam bentuk
Software as a Service, Salesforce.com, yang
mendapatkan sambutan gegap gempita.Dengan misinya
yang terkenal yaitu ―The End of Software‖, Benioff bisa
dikatakan berhasil mewujudkan visi bos-nya di Oracle,
Larry Elisson, tentang Network Computing menjadi
kenyataan satu dekade kemudian. Selanjutnya jargon
Cloud Computing bergulir seperti bola salju menyapu
dunia teknologi informasi. Dimulai di tahun 2005, mulai
muncul inisiatif yang didorong oleh nama-nama besar
seperti Amazon.com yang meluncurkan Amazon EC2
(Elastic Compute Cloud), Google dengan Google App
Engine-nya, tak ketinggalan raksasa biru IBM
meluncurkan Blue Cloud Initiative dan lain sebagainya.
Semua inisiatif ini masih terus bergerak, dan bentuk
Cloud Computing pun masih terus mencari bentuk
terbaiknya, baik dari sisi praktis maupun dari sisi
akademis. Bahkan dari sisi akademis, jurnal-jurnal yang
membahas tentang ini hal ini baru bermunculan di tiga
tahun belakangan. Akhirnya seperti yang kita saksikan
sekarang, seluruh nama-nama besar terlibat dalam
pertarungan menguasai awan ini. Bahkan pabrikan Dell,
17
pernah mencoba mempatenkan istilah ―Cloud
Computing‖, namun ditolak oleh otoritas paten Amerika.
Walaupun di luar negeri perebutan kapling awan ini
begitu ingar-bingar, tidak demikian dengan di tanah air
Indonesia. Pemain yang benar-benar mencoba masuk di
area ini masih sangat sedikit. Salah satu yang cukup
serius bermain di area ini adalah PT. Telkom, yang
setidaknya saat ini sudah menawarkan dua layanan
aplikasi berbasis Software as a Service. Salah satunya
melalui anak usahanya, Sigma Cipta Caraka, yang
menawarkan layanan aplikasi core banking bagi bank
kecil-menengah. Kemudian bekerjasama dengan IBM
Indonesia dan mitra bisnisnya, PT Codephile, Telkom
menawarkan layanan e-Office on Demand untuk
kebutuhan kolaborasi/korespondensi di dalam suatu
perusahaan atau organisasi.

IV. CLOUD COMPUTING
Salah satu konsep teknologi komputasi awan adalah
penyajian informasi sebagai suatu layanan (as a service).
Penyedia layanan komputasi ini diistilahkan sebagai
provider atau vendor, seperti Microsoft, Amazon,
Google, IBM, Yahoo, Cisco, dan lain-lain, sedangkan
pengguna layanan disebut user. Pengguna layanan
komputasi ini mencakup berbagai kalangan, mulai dari
inidividu, organisasi, dan yang paling utama adalah
kalangan korporat. Oleh karena itu, berdasarkan sifat
pengguna layanan, layanan komputasi awan dibedakan
menjadi dua jenis, yaitu Public Cloud yang menjual
layanan komputasi awan secara bebas kepada siapapun
di internet dan Private Cloud yang berwujud data center
yang mensuplai layanan-layanan komputasi awan kepada
orang-orang dalam jumlah terbatas.
Dalam pengaplikasiannya, dikenal tiga model
layanan komputasi awan, yaitu Infrastructure as a
Service (IaaS), Platform as a Service (PaaS), dan
Software as a Service (SaaS).

A. Infrastructure as a Service (IaaS)
Dalam konsep komputasi awan, pada peringkat yang
paling rendah dikenal bahwa komputasi awan
menawarkan konsep IaaS (Infrastructure as a Service)
yang berarti suatu komponen infrastruktur fisik (atau
infrastruktur fisik yang bersifat maya) mampu digunakan
oleh sistem-sistem lain di luar sistem yang terdefinisi di
dalam komputasi awan untuk mendapatkan kemampuan
komputasinya (baik kemampuan itu ditawarkan secara
cuma-cuma atau dengan imbalan biaya sejumlah
tertentu). Alih-alih harus membeli komputer-komputer
server, perangkat lunak, serta lokasi fisik tertentu, para
pengguna komputasi awan yang memiliki konsep IaaS
dapat menyewa komponen-komponen yang
diperlukannya sebesar yang memang diperlukannya. Para
penyedia IaaS yang terkemuka seperti (hanya
menyebutkan suatu contoh) Amazon.com menawarkan
biaya ―penggunaan waktu kerja CPU perjam‖ untuk para
pengguna yang memiliki platform Windows serta Linux.
Sasaran model layanan ini ialah di tingkatan korporasi
karena adanya efisiensi biaya dalam penggunaan
infrastruktur berbasis virtual server.

B. Platform as a Service (PaaS)
Platform as a service (PaaS) mengacu pada
application development. Sasaran model ini ialah para
programmer dan application developer karena dalam
model ini, provider menyediakan layanan yang berupa
serangkaian perangkat lunak dan alat-alat pengembangan
produk yang tersedia pada infrastruktur provider
sehingga developer dapat menciptakan aplikasi pada
platform provider melalui internet. Salah satu contoh
untuk PaaS ini adalah Google Apps Engine yang
menawarkan platform untuk aplikasi-aplikasi Web yang
dikembangkan menggunakan bahasa pemrograman Java
dan/atau Phyton.

C. Software as a Service (SaaS)
Pada dasarnya, software as a service berarti aplikasi
tersedia bagi user dalam bentuk layanan berbasis
subscribtion sesuai kebutuhan user (on-demand). Jadi,
dengan pengaplikasian model ini, user tidak perlu lagi
membeli lisensi dan melakukan instalasi untuk sebuah
aplikasi, tetapi cukup membayar biaya sesuai
pemakainnya saja. Secara teknis, model aplikasi ini
memanfaatkan web-based interface yang diakses melalui
web browser dan berbasis teknologi Web 2.0. Contoh
SaaS ini ialah Google Docs dari Google yang merupakan
aplikasi perangkat office serupa Microsoft Word. Dengan
menggunakan Goggle Docs, kita dapat mengolah
dokumen tanpa harus menginstal software office seperti
Microsoft Word. SaaS ini merupakan model aplikasi
cloud computing yang sasarannya difokuskan pada user
individual.

V. IMPLEMENTASI CLOUD COMPUTING
Penggunaan cloud computing pada daerah-daerah di
wilayah Indonesia yang rawan terjadi bencana alam
merupakan solusi yang tepat, terutama bagi perusahaan
swasta maupun instansi pemerintah dalam upaya untuk
menyelamatkan data-data penting yang mereka miliki.
Data merupakan catatan-catatan fakta yang sangat
dibutuhkan untuk mendapatkan informasi, sehingga
perusahaan atau instansi tersebut mudah dalam membuat
keputusan.

A. Data Kependudukan
Negara Indonesia memiliki jumlah penduduk
terbesar ke-4 di dunia (setelah Cina, India, dan Amerika
Serikat), oleh sebab itu, dibutuhkan satu sistem
administrasi kependudukan yang terorganisasi dengan
baik dari tingkat pusat hingga daerah. Dengan cara
seperti ini, administrasi kependudukan yang menyangkut
seluruh masalah yang berkaitan dengan kependudukan,
pencatatan sipil, dan pengelolaan data dan informasi
kependudukan, dapat dilakukan dengan cara yang cepat
18
serta akurat. Administrasi kependudukan saat ini menjadi
semakin penting karena selalu bersentuhan dengan setiap
aktivitas kehidupan di Indonesia, yaitu saat terjadi
pemilu, pemberian KTP (Kartu Tanda Penduduk) yang
merupakan tanda domisili penduduk di wilayah tertentu,
pengurusan surat-surat kendaraan, pengurusan surat
tanah, dan (dalam konteks tulisan ini) administrasi
lainnya serta administrasi yang berkaitan dengan kondisi
pasca bencana (pencarian orang hilang, pemberian
bantuan, kordinasi pemerintah dengan tim relawan, dan
sebagainya).
Lebih jauh, Surat Keputusan Menteri Dalam Negri
Nomor 54 Tahun 1999 tentang Pedoman
Penyelenggaraan Pendaftaran Penduduk menyebutkan
bahwa pendaftaran penduduk adalah kegiatan
pendaftaran dan atau pencatatan data penduduk beserta
perubahannya, perkawinan, perceraian, kematian, dan
mutasi penduduk, penerbitan nomor induk kependudukan,
nomor induk kependudukan sementara, kartu keluarga,
kartu tanda penduduk dan akta pencatatan penduduk
serta pengelolaan data penduduk dan penyuluhan. SK
yang sama juga mengatakan bahwa penyelenggara
administrasi kependudukan di tingkat dasar adalah camat
dengan bantuan RW dan RT binaannya.
Dalam hal diatas, seringkali juga pemerintah
membutuhkan data yang berhubungan dengan situasi dan
kondisi geografis. Dengan demikian, data kependudukan
yang kita maksudkan dalam tulisan ini termasuk juga
didalamnya data yang bersifat keruangan/spasial, yang
dapat digunakan untuk menggambarkan (seperti) jumlah
penduduk yang ada disuatu kecamatan tertentu, berapa
dan apa sumber daya alam yang dimiliki suatu
kecamatan tertentu (misalnya sebaran air tanah, sebaran
batu andesit yang diperlukan sebagai sarana
pembangunan fisik suatu wilayah, akses ke masing-
masing sumberdaya, dan sebagainya). Data
kependudukan yang telah diperluas ini pada saatnya akan
sangat bermanfaat bagi perencanaan dan pengelolaan
suatu wilayah tertentu.

B. Permasalahan yang dihadapi
Petugas administrasi data pada instansi pemerintahan
dengan tingkat paling bawah adalah camat dengan
bantuan RW dan RT binaannya. Saat ini, sebagian besar
data kependudukan di Indonesia masih dicatat secara
manual, baik dengan pena maupun dengan bantuan
mesin tik konvensional, dan baru sebagian kecil yang
dicatat dan diolah dengan bantuan komputer. Surat kabar
online TribunNews.com mengatakan bahwa tingkat
penetrasi komputer di Indonesia masih sangat rendah
(sekitar 4%) dan tingkat penetrasi Internet juga masih
sangat rendah (sekitar 10%) (data tahun 2008). Meski
demikian, Wakil Ketua Umum Kadin Bidang Telematika
Anindya Bakrie dalam artikel yang sama juga
mengatakan bahwa dalam waktu 10 tahun kedepan akan
terjadi revolusi dibidang komputer dan Internet sehingga
tingkat penetrasi itu akan menjadi jauh semakin tinggi.
Saat terjadi bencana-bencana alam, banyak data
kependudukan rusak dan hilang.
Hal ini tentu saja menimbulkan banyak dampak
negatif terutama karena umumnya bencana alam lebih
sering terjadi pada daerah-daerah terpencil (tingkat
paling bawah). Ditambah lagi dengan belum meratanya
fasilitas baik sarana dan prasarana pada daerah tersebut
dan sumber daya manusia yang terbatas akan teknologi
informasi sehingga pengimplementasian cloud
computing akan menjadi terkendala.

C. Pembahasan
Permasalahan hilang atau rusaknya data baik data
pada perusahaan swasta maupun data pada instansi
pemerintahan seperti data kependudukan, sesungguhnya
dapat teratasi jika data tersebut tidak hanya disimpan
pada komputer lokal, tetapi disimpan juga pada beberapa
media penyimpanan lainnya. Salah satu media yang
dapat dimanfaatkan adalah teknologi komputasi awan
(cloud computing). Dengan kelebihan-kelebihan yang
ditawarkan oleh teknologi ini, pengguna hanya
menyediakan layanan internet dan tidak perlu lagi
mempersiapkan infrastruktur yang mahal, melainkan
cukup menyewa fasilitas-fasilitas yang diperlukan untuk
mengembangkan aplikasi dari vendor-vendor yang
menyediakan layanan-layanan komputasi awan itu,
seperti Microsoft, Amazon, Salesforce, Google, dan
sebagainya.
Untuk fasilitas sarana dan prasarana yang belum
memadai pada suatu derah, terutama daerah
pegununungan yang masih sulit untuk dijangkau jaringan
komunikasi yang menggunakan kabel maupun teknologi
microwave, dapat menggunakan teknologi VSAT (Very
Small Aperture Terminal) sebagai terminal penghubung
ke internet. VSAT merupakan terminal
penerima/pengirim sinyal berupa stasiun bumi satelit
kecil berdiameter 0,9 sampai dengan 3,8 meter, yang
digunakan untuk melakukan pengiriman data, gambar,
maupun suara via satelit. Dengan teknologi VSAT,
komunikasi data akan menjadi semakin mudah karena
tidak terpengaruh oleh topografi maupun keadaan alam
daerah tersebut, murah dan efisien.


Gambar 2. Gambaran umum cara kerja VSAT
19
Masalah sumber daya manusia, terutama pada
daerah-daerah terpencil yang belum tersentuh oleh
teknologi komputerisasi, dapat melakukan pelatihan-
pelatihan atau pendidikan dan latihan (diklat) kepada
para pengguna tentang teknologi komputer terutama
penggunaan teknologi cloud computing. Selain itu, dapat
juga dilakukan pertukaran pegawai/karyawan yang
potensial atau yang memahami teknologi ini sehingga
dapat terus membimbing dan membina tenaga-tenaga
administrasi yang belum memahami teknologi cloud
computing ini. Dengan beberapa hal penanganan masalah
diatas, diharapkan pemanfaatan teknologi cloud
computing menjadi lebih optimal, khususnya pada
daerah-daerah rawan bencana alam.

VI. KESIMPULAN
1. Cloud computing merupakan arsitektur masa depan
dunia komputer yang memberikan banyak
keuntungan.
2. Indonesia merupakan negara yang cukup rawan
terjadinya berbagai bencana alam karena posisi
geografis negara ini yang berada pada pertemuan
tiga lempeng tektonik besar dunia yang masih aktif
dan The Pasicif Ring of Fire (Cincin Api Pasifik).
3. Bencana alam yang terjadi dapat mengakibatkan
kerusakan infrastruktur didaerah tersebut terutama
data-data bagi perusahaan swasta maupun instansi
pemerintah karena proses terjadinya bencana yang
cepat, sehingga data-data tersebut tidak dapat
diselamatkan.
4. Dengan memanfaatkan teknologi cloud computing,
data-data tersebut tetap aman walaupun dampak
bencana tersebut dapat merusak atau
menghancurkan infrastruktur karena data juga telah
tersimpan pada data center yang disediakan oleh
provider cloud computing.
5. Penerapan aplikasi komputasi awan (cloud
computing) sesungguhnya tidak terlalu sulit. Dengan
kemajuan teknologi sekarang ini, fasilitas internet
yang menjadi syarat utama untuk penerapan cloud
computing tetap dapat dihadirkan, sedangkan
sumber daya manusianya dapat dilakukan
pendidikan dan pelatihan.

REFERENSI

[1] Babcock, Charles, 2010. Management Strategies
for The Cloud Revolutions. McGraw-Hill, New
York.
[2] Rees, George, 2009. Cloud Application
Architectures. O‘Reilly Media Inc., Sebastopol.
[3] Data kependudukan.
http://adminduk.depdagri.go.id. Diakses 13 Juni
2011.
[4] Tingkat Penetrasi Internet.
http://www.tribunnews.com. Diakses 12 Juni
2011.
[5] Gempa di Indonesia Akibat Interaksi Lempeng
Utama dunia. http://www.esdm.go.id. Diakses
22 Agustus 2011
[6] Indonesia Rawan Bencana.
http://www.pdat.co.id. Diakses 22 Agustus 2011
[7] VSAT. http://www.satkomindo.com. Diakses
22 Agustus 2011



20
Pemilihan Cloud Computing sebagai
Teknologi di Masa Depan
Imelda Sri Duma Yanti
Dosen Universitas Methodist Indonesia, Mahasiswa S2 Teknik Informatika USU
imensinaga@yahoo.co.id


Abstrak— Cloud Computing telah mengubah secara
dramatis bagaimana aplikasi bisnis dibangun dan
dijalankan. Pada intinya, Cloud Computing menghilangkan
biaya dan kompleksitas mengevaluasi, membeli,
mengkonfigurasi, dan mengelola semua hardware dan
software yang dibutuhkan untuk aplikasi enterprise.
Sebaliknya, aplikasi ini disampaikan sebagai layanan
melalui Internet.

Cloud Computing telah berevolusi, mencakup platform
membangun dan menjalankan aplikasi, yaitu sebuah
konsep yang dikenal sebagai "platform sebagai layanan"
(platform as service atau PaaS). Aplikasi PaaS juga disebut
sebagai on-demand berbasis Web, atau perangkat lunak
sebagai solusi layanan (atau SaaS).

Cloud Computing juga akan memaksa para peminat
teknologi informasi profesional untuk cepat mengadaptasi
teknologi ini, dimana teknologi ini dibutuhkan untuk
kecepatan dan realibilitas yang lebih dari teknologi yang
sebelumnya.

Keyword— CloudComputing, AwanKomputasi, Internet


I. PENDAHULUAN
Cloud Computing tidak lama lagi akan menjadi
kebutuhan, dan akan memaksa para peminat teknologi
informasi profesional untuk cepat mengadaptasi
teknologi ini. Akibat dari keadaan sosial ekonomi yang
terus mengalami revolusi yang sangat cepat sehingga
melahirkan Cloud Computing untuk kecepatan dan
realibilitas yang lebih dari teknologi yang sebelumnya.
Sehingga teknologi ini nantinya akan mencapai pada
tingkat investasi dalam Cloud service yang cepat dan
mudah.

Namun demikian sebaiknya perlu diketahui sebenarnya
apa itu Cloud Computing?, kemana tujuanya?, apa
resikonya?, dan bagaimana organisasi teknologi
informasi mempersiapkan ini?, itulah pertanyaan yang
setidaknya akan hadir oleh beberapa praktisi ataupun
peminat teknologi informasi.

II. PENGERTIAN CLOUD COMPUTING
Untuk orang awam ―Cloud Computing‖ akan diartikan
sebagai komputasi awan. Namun arti yang sebenarnya
Cloud Computing adalah teknologi yang menggunakan
internet dan server pusat, untuk menjaga/mengelola data
dan aplikasi. Cloud Computing membantu konsumen dan
pebisnis untuk menggunakan aplikasi tanpa melakukan
instalasi (Support Business Process), mengakses file
pribadi di komputer manapun dengan akses internet.
Sehingga teknologi ini memungkinkan efisiensi lebih
dengan memusatkan penyimpanan, memory, pemrosesan,
dan bandwith.

Cloud Computing juga merupakan abstraksi dari
infrastruktur kompleks yang disembunyikan. Yang juga
merupakan suatu metoda komputasi dimana kapabilitas
terkait teknologi informasi disajikan sebagai suatu
layanan (as a servise), sehingga pengguna dapat
mengaksesnya lewat internet atau diistilahkan sebagai
―di dalam awan‖, tanpa mengetahui apa yang ada
didalamnya, ahlinya, atau yang memiliki kendali
terhadap infrastruktur teknologi yang membantunya.
Cloud Computing mengubah suatu paradigma dimana
informasi secara permanen tersimpan di server di internet
dan tersimpan secara sementara di komputer pengguna
(client) termasuk di dalamnya adalah desktop, komputer
tablet, notebook, komputer tembok, handheld, sensor-
sensor, monitor dan lain-lain.

Gambar 2.1. cloud Computing
(sumber: http://www.wikipedia)

Secara harfiah Internet (Interconnected-Networking)
ialah sistem global dari seluruh jaringan komputer yang
saling terhubung menggunakan standar Internet Protocol
Suite (TCP/IP) untuk melayani milyaran pengguna di
seluruh dunia. Internet ialah sistem komputer umum,
yang berhubung secara global dan menggunakan TCP/IP
21
sebagai protokol pertukaran paket (PacketSwitching
Communication Protocol). Cara menghubungkan
rangkaian dengan kaedah ini dinamakan internetworking.

III. KARAKTERISTIK DAN KEUNTUNGAN CLOUD
COMPUTING
Ada beberapa karakteristik dari Cloud Computing
diantaranya:
1. On-Demand Self-Services
Sebuah layanan cloud computing harus dapat
dimanfaatkan oleh pengguna melalui mekanisme
swalayan dan langsung tersedia pada saat dibutuhkan.
Campur tangan penyedia layanan adalah sangat minim.
Jadi, apabila saat ini membutuhkan layanan aplikasi,
maka dapat mendaftar secara swalayan dan layanan
tersebut langsung tersedia saat itu juga.

2. Broad Network Access
Sebuah layanan cloud computing harus dapat diakses
dari mana saja, kapan saja, dengan alat apa pun, asalkan
terhubung ke jaringan layanan. Selama terhubung ke
jaringan Internet, maka harus dapat mengakses layanan
tersebut, baik itu melalui laptop, desktop, warnet,
handphone, tablet, dan perangkat lain.

3. Resource Pooling
Sebuah layanan cloud computing harus tersedia secara
terpusat dan dapat membagi sumber daya secara efisien.
Karena cloud computing digunakan bersama-sama oleh
berbagai pelanggan, penyedia layanan harus dapat
membagi beban secara efisien, sehingga sistem dapat
dimanfaatkan secara maksimal.

4. Rapid Elasticity
Sebuah layanan cloud computing harus dapat menaikkan
(atau menurunkan) kapasitas sesuai kebutuhan. Misalnya,
apabila pegawai di kantor bertambah, maka harus juga
dapat menambah user untuk aplikasi tersebut dengan
mudah. Begitu juga jika pegawai berkurang. Atau,
apabila menempatkan sebuah website berita dalam
jaringan cloud computing, maka apabila terjadi
peningkatkan traffic karena ada berita penting, maka
kapasitas harus dapat dinaikkan dengan cepat.

5. Measured Service
Sebuah layanan cloud computing harus disediakan secara
terukur, karena nantinya akan digunakan dalam proses
pembayaran. Harap diingat bahwa layanan cloud
computing dibayar sesuai penggunaan, sehingga harus
terukur dengan baik.

Dari karaktistik tersebut, maka ada beberapa keuntungan
yang bisa didapat diantaranya:
1. Biaya start-up teknologi ini akan sangat murah
atau bahkan tidak ada, dan juga bahkan tidak
ada biaya investasi (investasi kapital).
2. Biaya dari service dan pemakaian akan
berdasarkan komitmen. (yang juga tidak fix).
3. Service ini dapat dengan mudah di upgrade atau
downgrade dengan cepat tanpa adanya Penalty.
4. Service ini akan menggunakan metode multi-
tenant (banyak customer dalam 1 platform).
5. Kemampuan untuk penyesuaian layanan akan
menjadi tak terbatas.
6. Membuat lebih eglity, dengan mudah dapat
berorientasi pada profit dan perkembangan yang
cepat.
7. Membuat operasional dan manajemen lebih
mudah, dimungkinkan karena sistem pribadi
atau perusahaan yang terkoneksi dalam satu
cloud dapat dimonitor dan diatur dengan mudah



Gambar 3.1. Contoh Koneksitas pada cloud computing
(sumber: Deris Setiawan)

Teknologi Cloud akan memberikan kontrak kepada user
untuk service pada 3 tingkatan:
1. Infrastructure as Service, hal ini meliputi Grid
untuk virtualized server, storage & network.
Contohnya seperti Amazon Elastic Compute Cloud
dan Simple Storage Service.
2. Platform-as-a-service: hal ini memfokuskan pada
aplikasi, dimana hal ini memungkinkan developer
untuk tidak memikirkan hardware dan tetap fokus
pada application developmentnya tanpa harus
mengkhawatirkan operating system, infrastructure
scaling, load balancing dan lainya. Contohnya yang
telah mengimplementasikan ini adalah Force.com
dan Microsoft Azure investment.
3. Software-as-a-service: Hal ini memfokuskan pada
aplikasi dengan Web-based interface yang diakses
melalui Web Service dan Web 2.0. contohnya
adalah Google Apps, SalesForce.Com dan social
network application seperti Facebook

Beberapa investor saat ini masih mencoba untuk
mengekplorasi adopsi teknologi Cloud ini untuk
22
dijadikan bisnis, sebagaimana Amazon dan Google telah
memiliki penawaran khusus pada teknologi Cloud ,
Microsoft dan IBM juga telah melakukan investasi
jutaan dollar untuk ini.

Melihat tren ini dapat diprediksi di masa depan, standard
teknologi akan menjadi lebih sederhana karena
ketersediaan dari banyak Cloud service.

IV. RESIKO YANG MUNGKIN TERJADI
Sebagai bisnis service, dengan teknologi Cloud
sebaiknya diketahui dan dipastikan apa resiko yang
mungkin terjadi, bahkan yang harus dibayar dan apa
yang diinvestasikan sepenuhnya untuk kebutuhan yang
menggunakan service ini. Ada beberapa bagian yang
harus diperhatikan yaitu:

1. Service level
Cloud provider mungkin tidak akan konsisten
dengan performance dari applikasi atau transaksi.
Hal ini mengharuskan untuk memahami service
level yang didapatkan mengenai transaction
response time, data protection dan kecepatan data
recovery.
2. Privacy
Karena orang/perusahaan lain juga melakukan
hosting, kemungkinan data dapat keluar atau
dibaca tanpa sepengetahuan user atau approve
dari user.
3. Compliance
Perhatikan regulasi dari bisnis yang dimiliki,
dalam hal ini secara teoritis Cloud service
provider, diharapkan dapat menyamakan level
compliance untuk penyimpanan data didalam
Cloud, namun karena service ini masih sangat
mudah diharapkan untuk berhati hati dalam hal
penyimpanan data.
4. Data ownership
Apakah data anda masih menjadi milik anda
begitu data tersebut tersimpan didalam Cloud ?
mungkin pertanyaan ini sedikit aneh, namun perlu
diketahui seperti hal nya yang terjadi pada
Facebook yang mencoba untuk merubah terms of
use aggrement nya juga mempertanyakan hal ini.
5. Data Mobility
Apakah dapat melakukan share data diantara
Cloud service? dan jika anda terminate Cloud
relationship bagaimana mendapatkan data
kembali? Format apa yang akan digunakan? atau
dapatkah memastikan kopi dari datanya telah
terhapus?. Untuk sebuah service yang masih
tergolong kritis untuk sebuah perusahaan, saran
terbaik adalah menanyakan hal ini sedetail-
detailnya dan mendapatkan semua komitmen
dalam keadaan tertulis.
Bagaimana meningkatkan kecepatan dan uptime? dan
bagaimana dapat men support business operation dengan
sedikit dan pengeluaran yang fix?

Langkah awal yang harus dilakukan adalah mempelajari
sistem kontrak dari Cloud service. Pastikan setiap proses
menjadi sederhana, dan dapat berulang dan menjadi nilai
tambah untuk pengguna. Kedua, harus mengidentifikasi
service apa yang dapat dimanfaatkan didalam Cloud dan
mana yang seharusnya bersifat internal. Hal ini sangat
penting untuk diketahui mengenai sistem dan service
core yang dapat dimanfaatkan oleh pengguna, dan
sebaiknya mengkategorikan beberapa elemen bisnis
berdasarkan resiko dari penggunaan Cloud service.
Terakhir, melakukan strategi sourcing untuk
mendapatkan biaya yang sangat murah, namun memiliki
scalability dan flexibility untuk kebutuhan bisnis. Hal ini
termasuk pertimbangan akan proteksi data ownership dan
mobility, compliance dan beberapa element seperti
halnya kontrak IT tradisional.

V. KESIMPULAN
Ada banyak kesempatan pada organisasi teknologi
informasi untuk mensosialisasikan layanan Cloud.
Banyak organisasi yang mencoba untuk menambahkan
fitur ini kepada infrastruktur yang dimiliki sebelumnya
untuk mengambil keuntungan dari ―Cloud bursting―,
khususnya jika ingin membutuhkan kapasitas ekstra atau
aktifitas ekstra, Cloud dapat dimanfaatkan ketimbang
melakukan investasi resource secara inhouse.

Development test dan beberapa aktifitas yang mirip juga
menjadi tempat yang bagus untuk Cloud, memungkinkan
untuk mengurangi pengeluaran perkapita dan biaya data
center yang terus meningkat dari sisi kecepatan dan
uptime.
Sedangkan perusahaan yang mengimplementasi
teknologi Cloud untuk data dan menyimpannya sebagai
fasilitas sendiri untuk memastikan kebijakan perusahaan
tersimpan dengan baik tentunya akan lebih baik,
sehingga memastikan proses komputerasisasi pada Cloud
sebagai sistem proses yang dibutuhkan akan lebih
independen.

Jika pengguna yang baru saja mengeksplorasi teknologi
Cloud, dapat mempertimbangkan misalnya sebagai e-
mail service. Namun untuk masalah sekuriti, dengan
mengembangkan internal infrastruktur akan menjadi
model Cloud akan lebih baik.

Dengan demikian teknologi informasi kini ikut berperan
dalam hal business model yang dibutuhkan untuk
perekonomian saat ini.




23
REFERENSI
[1] Dan Farber, Matt Mullenweg, Jay Cross, Brian
Solis, Kevin Marks, Steve Gillmor, Jeremy Tanner,
―Cloud Computing Web 2.0‖ , 2008
[2] H. Vincent Poor, Ed. Feldet, ―Information
Technology Policy brings together experts from
computer science, law, politics and industry to
explore the social and policy implications of
`computing in the cloud`, Princeton University`s,
2008
[3] David Robbins, ―Cloud Computing‖, Explaining
Computers‖, 2009
[4] Deris Stiawan, ―Cloud Computing; Sebuah
Pemikiran, Sharing, Ide Pengetahuan, Penelitian‖,
2010

24
Privacy by Design sebagai Upaya Peningkatan
Keamanan Cloud Computing

Asrizal
Staf Akademik dan Kemahasiswaan Fakultas Tarbiyah Institut Agama Islam Negeri Sumatera Utara dan
Mahasiswa Magister Teknik Informatika Universitas Sumatera Utara
Medan, Indonesia
asrizal@students.usu.ac.id

Abstract—Cloud Computing merupakan teknologi
komputasi terkini yang memungkinkan berbagai pihak
saling berbagi sumber daya terdistridusi (distributed
resources) dan layanan dari berbagai organisasi yang
berbeda. Aspek utama yang patut menjadi perhatian pada
penerapan Cloud Computing adalah tentang keamanan
(security). Keamanan (security) erat kaitannya dengan
kerahasiaan (privacy). Privacy by Design merujuk kepada
filosofi dan pendekatan menanamkan aspek kerahasiaan
(privacy) pada siklus hidup (lifecycle) sebuah teknologi
dimulai dari tahap desain/perancangan, penerapan,
penggunaan hingga pembuangan akhir.

Keywords— Cloud Computing, kerahasiaan (privacy),
Privacy by Design.
I. PENDAHULUAN

Cloud Computing mulai dikenal luas sebagai
teknologi terkini yang mendukung peningkatan efisiensi
dan efektivitas kerja melalui perangkat komputer.
Berdasarkan definisi yang diberikan oleh National
Institute of Standard and Technology (NIST) Cloud
Computing adalah sebuah model untuk menyediakan
akses network yang cocok dan sesuai kebutuhan pada
sebuah kumpulan (pool) dari sumber daya komputasi
yang dapat dikonfigurasi dengan cepat (contoh: jaringan,
server, tempat penyimpanan data, aplikasi, dan service),
dibuat dan dilepas dengan pengaturan dan interaksi
yang sangat minim dengan penyedia jasa [1].
Cloud Computing memanfaatkan generasi terkini
dari teknologi internet, sistem komputerisasi terdistribusi
skala besar dimana sumberdaya komputerisasinya
ditawarkan sebagai ‗layanan‘ [5].
Model layanan pada Cloud Computing terbagi 3
(tiga) yaitu: Software as a Service (SaaS), Platform as a
Service (PaaS) dan Infrastructure as a Service (IaaS)
[2].
1) Software as a Service (SaaS)
Sebagai pengguna komputer, kita sebenarnya sudah
cukup akrab dengan layanan cloud computing
seperti Yahoo Mail, Hotmail, Gmail, Google Search,
Bing, atau MSN Messenger, Google Application
ataupun Microsoft Office Web Applications dan lain
sebagainya. Semua layanan ini, dimana suatu
aplikasi software tersedia dan bisa langsung dipakai
oleh seorang pengguna, termasuk ke dalam kategori
Software as a Services (SaaS).
2) Platform as a Service (PaaS)
Pada PaaS, pengguna membuat sendiri aplikasi
software yang diinginkan, termasuk skema database
yang diperlukan. Skema itu kemudian dipasang
(deploy) di server-server milik penyedia jasa PaaS.
Penyedia jasa PaaS menyediakan layanan berupa
platform, mulai dari mengatur server-server mereka
secara virtualisasi sehingga menjadi cluster sampai
menyediakan sistem operasi di atasnya. Contoh
vendor penyedia layanan Paas adalah Microsoft
Azure dan Amazon Web Services.
3) Infrastructure as a Service (IaaS)
Ketika konfigurasi yang disediakan oleh penyedia
PaaS tidak sesuai dengan keinginan dan kebutuhan
pelanggan, pelanggan dapat memilih layanan
berupa Infrastructure as a Service (IaaS) dimana
penyedia layanan hanya menyediakan sumber daya
komputasi seperti prosesor, memori, dan storage
yang sudah tervirtualisasi. Pemilihan dan
pemasangan sistem operasi, aplikasi, maupun
konfigurasi lainnya sepenuhnya berada pada kendali
pelanggan.
Dari segi jangkauan layanan Cloud Computing
terbagi 3 (tiga) jenis yaitu: Public Cloud, Private Cloud,
dan Hybrid Cloud [2].
1. Public Cloud
Ini adalah cloud sesungguhnya, dimana vendor
menyediakan jasanya secara umum dan perusahaan
memakai bersama dengan perusahaan lain. Pemakai
cloud tidak akan tahu siapa saja yang berbagi
resource dengan mereka.
2. Private Cloud
Model ini banyak diperdebatkan karena pada
dasarnya perusahaan masih harus melakukan
maintain sendiri pada infrastrukturnya, sehingga
benefit cloud menjadi berkurang. Pada private cloud,
resource di-pool dan dibagi-bagikan sesuai
kebutuhan.
3. Hybrid Cloud
Model ini menggabungkan public cloud dengan
private atau model tradisional. Disini perusahaan
berupaya untuk memanfaatkan keuntungan cloud
25
tetapi tetap menyimpan data yang sangat penting
dalam server internal mereka karena pertimbangan
keamanan dan compliance.

II. ASPEK KEAMANAN PADA CLOUD COMPUTING
Pada model data tradisional, sebuah lingkaran
keamanan (security perimeter) diciptakan untuk
memisahkan transaksi yang terpercaya (trusted) dan yang
tidak terpercaya (untrusted). Dalam lingkaran ini
terdapat kendali otomatis terhadap sumber daya
komputer yang bersifat lokal dimana informasi berada
dan diproses. Seperti itulah asalnya hubungan yang
terjadi di internet yang terhubung dengan end host.
Penyimpanan data dan proses yang terjadi antara sumber
daya end host dan jaringan melalui proses transit.
Karenanya perlindungan data yang layak mencakup
evaluasi kerahasiaan (privacy) dan keamanan (security)
pada end point dari transaksi, yang sesuai dengan ukuran
keamanan yang diterapkan untuk melindungi data yang
bergerak [2].
Hal ini berbeda dengan Cloud Computing,
khususnya manakala menggunakan arsitektur public
cloud atau hybrid cloud. Lingkungan komputasi yang
baru ini sering memiliki batas yang kurang jelas dimana
proses atau penyimpanan data secara fisik terjadi/berada
[2]. Berikut ilustrasi lingkaran keamanan (perimeter)
pada transaksi yang terpercaya (trusted) dan yang tidak
terpercaya (untrusted).


















Gambar. 1 Kiri: Lingkaran keamanan yang jelas dan trusted;
Kanan: Lingkaran keamanan yang samar (Fuzzy Security
Perimeter)

Adalah menjadi suatu keniscayaan, bahwa untuk
dapat menikmati secara maksimal manfaat dari Cloud
Computing harus didukung oleh sistem keamanan
(security) dan kerahasiaan (privacy) yang benar dalam
penyimpanan informasi pribadi pada database maupun
software yang tersebar di internet [4].
Beberapak aspek yang patut diperhatikan pada
Cloud Computing antara lain:
1. Keamanan dan Kerahasiaan (Security and Privacy)
Untuk memastikan bahwa data benar-benar aman
(tidak dapat diakses oleh pengguna yang tidak sah
dan tidak hilang) dan bahwa privasi data dapat
dipertahankan, penyedia Cloud Computing harus
menjamin hal-hal berikut [7]:
- Perlindungan Data (Data Protection)
Data dari satu pelanggan harus benar-benar
dipisahkan dari yang lain dan disimpan secara
aman. Penyedia layanan harus memiliki sistem
untuk mencegah kebocoran data atau akses oleh
pihak ketiga dan memastikan bahwa audit
dan/atau pemantauan tidak dapat dijebol,
bahkan oleh pengguna istimewa pada penyedia
layanan Cloud Computing.
- Manajemen Identitas (Identity Management)
Penyedia layanan mengintegrasikan sistem
manajemen identitas pelanggan ke dalam
infrastruktur mereka, dan memberikan solusi
manajemen identitas mereka sendiri.
- Keamanan Fisik dan Personel (Physical and
Personnel Security)
Penyedia layanan memastikan bahwa mesin
fisik cukup aman dan akses ke mesin serta
semua data pelanggan yang relevan tidak
dibatasi.
- Ketersediaan (Availability)
Penyedia layanan harus dapat meyakinkan
pelanggan bahwa mereka memiliki akses
reguler dan dapat diprediksi untuk data dan
aplikasi.
- Aplikasi Keamanan (Application Security)
Penyedia layanan memastikan bahwa aplikasi
yang tersedia sebagai layanan melalui Cloud
Computing aman dengan menerapkan prosedur
pengujian untuk kode aplikasi. Hal ini
membutuhkan langkah-langkah keamanan
aplikasi (application-level firewall) dalam
lingkungan produksi.
- Privasi (Privacy)
Akhirnya, penyedia layanan memastikan bahwa
semua data penting dilindungi dan bahwa hanya
pengguna berwenang yang memiliki akses ke
data secara keseluruhan.

2. Kepatuhan tindakan sesuai aturan (Compliance).
Kepatuhan tindakan sesuai aturan berkaitan dengan
penyimpanan dan penggunaan data. Aturan ini juga
mengharuskan pelaporan rutin dan jejak audit.
- Kontinuitas Bisnis dan Pemulihan Data
(Business Contiunity and Data Recovery)
Penyedia layanan memiliki kesinambungan
bisnis dan rencana pemulihan data untuk
memastikan layanan dapat dipertahankan dalam
kasus bencana atau keadaan darurat dan bahwa
setiap data yang hilang akan pulih.
- Log dan Audit Jejak (Logs and Audit Trails)
26
Selain memproduksi log dan jejak audit,
penyedia layanan memastikan bahwa jejak log
dan audit yang benar diamankan, dipertahankan
selama pelanggan membutuhkan, dan dapat
diakses untuk tujuan penyelidikan forensik.


3. Aspek hukum dan Perjanjian (Legal and Contractual
Issues)
Penyedia layanan dan pelanggan menegosiasikan
syarat seputar kewajiban, kekayaan intelektual, dan
masa berakhir layanan.

III. PRIVACY BY DESIGN
A. Apa itu Privacy by Design?
Secara singkat, Privacy by Design merujuk kepada
filosofi dan pendekatan menanamkan aspek kerahasiaan
(privacy) pada siklus hidup (lifecycle) sebuah teknologi
dimulai dari tahap desain/perancangan, penerapan hingga
penggunaan [3].
Gagasan Privacy by Design muncul dari ide
menambahkan aspek kerahasiaan (privacy) pada
perancangan teknologi. Menggabungkan aspek
kerahasiaan (privacy) secara menyeluruh dan selaras
dimulai dari proses awal pembuatan dan perancangan
arsitektur teknologi adalah cara yang paling tepat untuk
mengamankan kerahasiaan (privacy) dalam menghadapi
perubahan teknologi yang begitu pesat [9].
Pada implementasinya Privacy by Design
mencakup 3 (tiga) hal: (1) teknologi (technology); (2)
praktek bisnis (business practices); dan (3) desain fisik
(physical design).
Sebagai konsep yang luas dan terus berkembang
Privacy by Design mencakup berbagai hal, antara lain:
1. Pemahaman bahwa kerahasiaan (privacy) itu penting
dan harus diperhatikan.
2. Penerapan prinsip-prinsip dasar yang mengekspresikan
perlindungan terhadap kerahasiaan (privacy) secara
umum.
3. Mitigasi secara dini menyangkut kerahasiaan (privacy)
manakala mengembangkan sistem dan teknologi
informasi melalui keseluruhan siklus hidup
(lifecycle) informasi.
4. Perlu pimpinan yang layak dan memahami aspek
kerahasiaan (privacy) serta masukan dari
professional.
5. Adopsi dan integrasi teknologi peningkatan
kerahasiaan privacy-enhancing technologies (PETs)
[8].
B. Prinsip Dasar Privacy by Design
Prinsip dasar Privacy by Design
berhubungan dengan unsur-unsur utama dari
akuntabilitas yaitu:
1. Proaktif tidak Reaktif; Pencegahan tidak Perbaikan
(Proactive not Reactive; Preventive not Remedial):
Proaktif tidak Reaktif membicarakan tentang konsep
akuntabilitas dari semua kebijakan tentang
kerahasiaan (privacy) sebagai mekanisme yang harus
dijalankan sehingga praktisi yang sudah terlatih dapat
memantau dan memecahkan masalah yang
berhubungan dengan kerahasiaan (privacy) sebelum
itu terjadi.
2. Kerahasiaan (privacy) sebagai pilihan otomatis
(Privacy as the Default): Akuntabilitas membutuhkan
aturan organisasi yang jelas dengan komitmen yang
tegas terhadap kebijakan yang menjadi dasar dari
aturan tersebut. Aturan ini akan memperjelas bahwa
informasi hanya dapat dikumpulkan dan digunakan
dengan cara yang layak dan dalam lingkungan
informasi yang aman.
3. Menanamkan Aspek Kerahasiaan (privacy) pada
Perancangan (Privacy Embedded into Design):
Proses bisnis yang akuntabel dapat diraih manakala
aspek kerahasiaan (privacy) ditanamkan sejak tahap
perancangan (design). Hal ini bisa menjadi bagian
dari mekanisme dalam penerapan kebijakan.
4. Berfungsi secara penuh (Full Functionality):
Organisasi yang memahami aspek kerahasiaan
(privacy) dan mewujudkannya memiliki pemahaman
yang lebih baik akan ancaman terhadap organisasi
maupun individu.
5. Perlindungan yang berkesinambungan. (End-to-End
Lifecycle Protection): Perlindungan yang
berkesinambungan dimaksudkan bahwa organisasi
yang akuntabel harus membangun aspek kerahasiaan
(privacy) pada setiap proses dimulai dari penilaian
sebelum data dikumpulkan sampai pada pengawasan
ketika data tidak lagi digunakan.
6. Visibilitas dan Transparansi (Visibility and
Transparency): Prinsip ini menghendaki organisasi
harus terbuka dan jujur pada individu-individu.
Organisasi yang akuntabel siap untuk membuktikan
bahwa organisasi tersebut terbuka tentang apa yang
dilakukan, bertahan terhadap berbagai macam
tuduhan, dan mampu memberikan jawaban manakala
muncul pertanyaan.
7. Menjunjung Tinggi Rahasia (privacy) Pengguna
(Respect for User Privacy): Organisasi yang
akuntabel harus mengumpulkan, menggunakan,
menyimpan, membagi data dengan tujuan yang sesuai
dengan kerahasiaan (privacy) individu [3].









Gambar. 2 Ruang lingkup dan unsur Privacy by Design


27
C. Privacy by Desain pada Cloud Computing
Ada 2 (dua) masalah utama dalam lingkup
keamanan Cloud Computing:
- Melindungi kerahasiaan (privacy) dan
mempertahankan akses yang layak.
- Menjamin integritas data yang dilindungi, tanpa
kehilangan kerahasiaannya [2].

1. Melindungi kerahasiaan (privacy) dan
mempertahankan akses yang layak: Menjamin
kerahasiaan data tanpa mengurangi fungsi
kegunaannya (seperti memastikan akses yang layak)
pada Cloud Computing memerlukan perlindungan
data secara menyeluruh pada siklus hidupnya
(lifecycle). Sifat alami Cloud Computing yang secara
umum menitikberatkan perhatian pada subjek data
atau pengelola tidak pada pengendalian back-end
computing (seperti hardware, firmware, atau
software) menyiratkan bahwa semua komunikasi
dan data yang disimpan boleh jadi bisa terbuka
kepada siapa saja. Oleh karenanya, untuk mencapai
tingkat keamanan dan/atau kerahasiaan (level of
security and/or privacy) yang layak subjek data
dan/atau pengelola harus mengenkripsi semua
rahasia. Gambar dibawah ini menunjukkan
arsitektur minimal Cloud Computing yang
melindungi kerahasiaan (privacy) dan penggunaan
data manakala data dienkripsi dan disebarkan pada
cloud. Arsitektur ini didesain untuk menjawab satu
masalah yaitu menjamin bahwa organisasi yang
membuat permintaan layanan yang sah diberi akses
untuk mengenkripsi data. Sehingga tercapai maksud
mendapatkan kerahasiaan (privacy) tanpa kehilangan
fungsi-fungsi yang dibutuhkan [2].



Gambar 3. Arsitektur minimal Cloud Computing yang
menerapkan kerahasiaan (privacy) dan dapat dipercaya.

Arsitektur ini membutuhkan kerjasama diantara dua
agent: consumer‘s agent dan auditor‘s agent, dan Data
Service Provider (DSP). Consumer‘s agent, meminta
data yang sudah dienkripsi ke DSP cloud, sembari
menyewa auditor untuk menangani audit integritas.
Auditor bisa jadi berasal dari kalangan internal maupun
eksternal bagi pelanggan. Setelah dikontrak, auditor
diberikan kapasitas untuk mengirimkan permintaan-
permintaan audit (audit requests) ke Data Service
Provider (DSP) cloud. Kemudian Data Service Provider
(DSP) memberikan balasan hasil audit (audit result).
Kemudian setelah memproses hasil audit, auditor
mengeluarkan laporan audit (audit report) untuk
integritas data.
Hal yang penting pada desain arsitektur ini adalah
bahwa pelanggan tidak perlu mengumumkan kunci
enkripsinya. Auditor harus dirancang untuk mengisi
kewajibannya dengan menggunakan public-key
pelanggan. Oleh sebab itu, walaupun terjadi auditor dan
Data Service Provider (DSP) cloud bekerjasama, data
pelanggan dan kerahasiaannya tetap aman.
Untuk mendapatkan perlindungan kerahasiaan
(privacy) yang lebih jauh seperti mencegah diskriminasi
layanan, arsitektur sebagaimana ditunjukkan pada
gambar berikut patut untuk dipertimbangkan. Pada
rancangan ini, Cloud Identity Service Provider (CISP)
akan membantu pelanggan dalam manajemen identitas,
mengizinkan pelanggan untuk berinteraksi dengan Cloud
Service Provider (CSP) dalam perlindungan terhadap
manajemen identitas yang aman.














Gambar 4. Arsitektur Cloud Computing yang lebih baik
dalam penerapan kerahasiaan (privacy) dan penggunaan
data outsourcing.

2. Menjamin integritas data yang dilindungi, tanpa
kehilangan kerahasiaannya: Menjaga integritas data
memainkan peran yang penting dalam membangun
kepercayaan antara subjek data dan service provider.
Sebagaimana penyimpanan data dan media proses,
rentannya integritas data muncul bersama paradigma
Cloud Computing. Pada layanan cloud, ancaman
integritas data yang muncul bisa diklasifikasikan
pada 3 (tiga) hal:
- Kerusakan yang tidak terlihat (latent faults),
contoh disebabkan adanya bit error pada
media penyimpanan;
- Kerusakan yang saling terkait (correlated
faults), contoh disebabkan adanya
kelemahan pada keragaman lokasi
geografis; dan
28
- Kerusakan pemulihan (recovery faults),
contoh disebabkan prosedur perbaikan
system yang salah[2].
Oleh karena itu, dibutuhkan komponen tambahan
pada arsitektur Cloud Computing yaitu auditor dimana
pelanggan bisa mendelegasikan tugas untuk melakukan
pengecekan integritas data. Auditor ini secara periodic
memeriksa integritas semua data yang tersimpan pada
Cloud Service Provider (CSP) dan mengeluarkan laporan
audit (audit reports) setiap bulan misalnya. Berdasarkan
laporan ini pelanggan cloud bisa mengevaluasi resiko-
resiko yang terkait dengan layanan cloud secara khusus
sebelum mengandalkan layanan tersebut.
Pelanggan dan Cloud Service Providers (CSP)
memiliki kepentingan yang sama akan jaminan integritas
data. Syarat utama yang harus dipenuhi adalah manakala
pelanggan ingin mendapatkan data dari service provider,
data tersebut harus tersedia dan dalam kondisi yang sama
sebagaimana diterima pada awalnya, dengan tidak ada
satupun kesalahan bit bit error). Gambar dibawah ini
menggambarkan arsitektur yang mampu menyediakan
kemampuan audit pada cloud, memastikan kepada
pelanggan bahwa data belum berubah karena kerusakan,
kelalaian, niat jahat, dan memberikan kesempatan kepada
Cloud Service Provider untuk membuktikan bahwa data
yang tersimpan didalamnya adalah benar-benar data yang
sama dengan yang ditempatkan terlebih dahulu oleh
pelanggan pada layanan cloud tersebut.
















Gambar 5. Arsitektur Cloud Computing untuk
penyediaan layanan dengan kerahasiaan (privacy), dapat
diandalkan (trustworthy), dan ketersediaan data
oursourcing.

D. Penerapan Private by Design pada berbagai
perusahaan
- Contoh Private by Design yang paling ramai
dibicarakan adalah layanan jejaring sosial baru
dari Google, yaitu Google+. Setelah gagal
dengan Buzz, yang secara otomatis
membangun jejaring sosial public menggunakan
contact list pribadi dari user Gmail, Google
telah merancang sebuah jejaring sosial yang
didasarkan pada kerahasiaan (privacy). Semua
contact list ditempatkan pada ―lingkaran‖
nonpublic (contoh, ―Friends,‖ ―Colleagues‖ atau
―Family‖) dan user diminta untuk mendesain
lingkaran untuk berbagi pada setiap posisi yang
mereka buat.
- Apple memiliki symbol panah ungu pada
iPhone yang tampil pada layar untuk
memberitahu user setiap kali informasi lokasi
mereka telah dikirimkan ke sebuah aplikasi.
Prinsip perancangannya adalah untuk
memastikan bahwa user menyadari manakala
informasi rahasia mereka di-share.
- Sebuah rancangan fitur baru pada iPhone
memungkinkan remote listening (contoh, jika
handphone dicuri). Perancang menyatakan, hal
ini akan menyertakan warning system untuk
memperingatkan siapa saja yang melihat
handphone tersebut bahwa mereka akan
direkam dan diperdengarkan suaranya.
- Intel sedang mengembangkan billboard digital
yang menggunakan teknologi deteksi wajah
(facial detection technology) untuk menargetkan
iklan pada orang berdasarkan jenis kelamin,
umur dan ras [10].
Akhirnya, penting untuk menyertakan prinsip Privacy
by Design diantara prinsip-prinsip perlindungan data, dan
untuk memperluas lingkupnya pada pihak lain, seperti
pembuat dan pengembang produk-produk dan layanan
ICT. Hal ini bisa menjadi inovasi dan memerlukan
pemikiran yang lebih mendalam, dan merupakan konsep
yang layak untuk dipertimbangkan [6].
IV. KESIMPULAN
Sebagai teknologi terkini dan terus berkembang
Cloud Computing masih menyisakan keraguan dan
kekhawatiran sebagian kalangan tentang aspek
keamanannya. Berdasarkan ide bahwa pencegahan lebih
baik dari pemulihan, konsep Privacy by Design
menanamkan aspek kerahasiaan (privacy) sejak dini dari
awal desain/perancangan teknologi, penerapan, dan
penggunaan hingga pada tahap pembuangan akhir.
Dengan penerapan aspek kerahasiaan (privacy) dari hulu
ke hilir tersebut, diharapkan Privacy by Design dapat
menjadi jawaban akan keraguan dan kekhawatiran
seputar keamanan pada Cloud Computing.
DAFTAR PUSTAKA
[1] NIST Publication of Cloud Computing – Computer Security
Division, 2009.
[8] Modelling Cloud Computing Architecture Without
Compromising Privacy: A Privacy by Design Approach, NEC
Company Ltd, 2010.
[9] A. Cavoukian, S. Taylor, M. E. Abrams, ―Privacy by Design:
essential for organizational accountability and strong business
practices,‖ Springer, vol. 3, hal. 405-413, Juni 2010.
[10] A. Cavoukian. ―Privacy in the Clouds,‖ Springer, vol. I, hal. 89-
108, Desember 2008.
29
[11] G. Singh, A. Sharma, dan M. S. Lehal, ―Security Apprehensions
in Different Regions of Cloud Captious Grounds,‖ International
Journal of Network Security & Its Applications (IJNSA), Vol.3,
No. 4, hal. 48-57, Juli 2011.
[12] P. Hustinx. ―Privacy by Design: delivering the promises,‖
Springer, vol. III, hal. 253-255, Mei 2010.
[13] (2011) Wikipedia. [Online]
http://en.wikipedia.org/wiki/Cloud_computing_security (diakses
10 September 2011).
[14] A. Cavoukian. (2009) Privacy by Design ....Take the Challenge.
[Online].
http://www.privacybydesign.ca/content/uploads/2010/03/Privacy
byDesignBook.pdf (diakses 9 September 2011).
[15] A. Cavoukian. (2011) Privacy by Design Curriculum [Online].
http://privacybydesign.ca/publications/ (diakses 10 September
2011).
[16] (2011) Forbes. [Online]
http://www.forbes.com/sites/kashmirhill/2011/07/28/why-
privacy-by-design-is-the-new-corporate-hotness/ (diakses 10
September 2011).







30
Peran Komputasi Awan (Cloud Computing)
dalam Kelancaran Bisnis dengan Penerapan
―Google Apps‖

Raheliya Br Ginting

Fakultas Matematika dan Ilmu Pengetahuan Alam USU (FMIPA-USU)
Itink_ribu@yahoo.com


Abstrak — Komputasi awan (cloud computing)
merupakan teknologi yang relatif baru saat ini. Komputasi
awan membebaskan pengembang aplikasi untuk secara
eksplisit mengetahui dimana sesungguhnya aplikasi yang
dikembangkan dieksekusi sehingga lebih mampu berfokus
pada logika bisnis aplikasi. Selain itu, pengembang aplikasi
juga mendapatkan keuntungan secara finansial karena
tidak perlu mempersiapkan infrastruktur fisik tempat
aplikasi yang dikembangkan akan dieksekusi; pengembang
aplikasi yang bersangkutan cukup menyewanya saja dari
beberapa layanan komputasi awan salah satunya adalah
google apps.

Kata kunci — Cloud Computing, Google Apps

I. PENDAHULUAN
Seiring dengan perkembangan jaman, teknologi
juga mengalami perkembangan kearah pencapaian
kemudahan dan kenyamanan luar biasa dalam melakukan
kegiatan sehari-hari yang dianggap tidak mungkin dapat
dikerjakan dalam waktu singkat. Baik berupa interaksi
sosial, marketing, dan kegiatan yang dapat menarik
minat pengguna lainya. oleh karena itu, pengguna
internet meningkat cepat dan merambah kesemua
kalangan.

Pengembangan teknologi computasi berbasis
internet sekarang ini lebih diarahkan kepada proses
pengaplikasian sistem yang mudah dan tidak
memerlukan banyak waktu atau tenaga. Permasalahan
diperoleh dalam pengolahan system jaringan. Apabila
ada suatu perubahan pada program aplikasi internet pada
server dalam jaringan lokal, datanya harus diinstal ulang
atau disesuaikan kembali. termasuk pada pemakaian
komputer biasa, diperlukan sistem operasi dan program
aplikasi. Sistem operasi sangat menentukan program
aplikasi. Kalau pemakai memilih sistem operasi MS
Windows misalnya, maka aplikasinya pun harus berbasis
Windows. Demikian juga kalau sistemnya berbasis DOS,
Linux, Mac, dan sebagainya. Padahal memilih sistem
operasi sendiri sering membuat user pusing.
Sekarang konsep teknologi informasi Cloud
Computing sedang hangat dibicarakan. Istilah Cloud
Computing mungkin belum banyak didengar, karena
memang masih baru. Namun, perkembangannya sangat
luar biasa. Disebut-sebut teknologi Could Computing
dapat menghilangkan permasalahan yang dijelaskan
diatas. Perusahaan-perusahaan besar di bidang IT pun
sekarang mencurahkan perhatiannya ke sana. Apa
sebenarnya cloud computing itu? Komputasi awan
merupakan istilah bagi dunia TI yang sistemnya hanya
disewa. Maksudnya, dalam menerapkan teknologi ini,
pelanggan diharuskan untuk menyewa beberapa
komponen kerja di TI, seperti server penyimpanan data
hingga data center. Melihat dari tren ini kita dapat
memprediksi masa depan, standard teknologi akan
menjadi lebih sederhana karena ketersediaan dari banyak
cloud service. Seluruh nama besar seperti IBM,
Microsoft, Google, dan Apple, saat ini sedang terlibat
dalam peperangan untuk menjadi penguasa terbesar
terhadap awan ini. Tentu saja masing-masing
mengeluarkan jurusnya sendiri-sendiri.

31
Internet -dan penggunaan komputer- dalam
waktu dekat mengingatkan kita akan situasi distribusi
radio pada jaman dulu. Microsoft, industri piranti lunak
raksasa, mengembangkan ―komputasi awan‖ versinya
sendiri. (Terjemahan Wikipedia- komputasi awan,
bahasa dari Bahasa Inggris: cloud computing, adalah
penggunaan teknologi komputer untuk pengembangan
berbasis Internet.) Keuntungan konsumen jelas: memakai
komputer makin murah dan hemat energi.
Internet bukan lagi cuma memberi informasi
kepada para pengguna. Piranti lunak lengkap dan sistem
operasional juga tersedia secara online. Dengan kata lain,
internet dan semua yang terkait dengannya, menjadi
terminal pusat pengaturan peralatan rumah tangga
termasuk gas dan listrik.
―Yang dilakukan, tidak lain, mengirim semua yang
dibutuhkan ke terminal yang ada di rumah Anda. Untuk
itu dibutuhkan sambungan cepat. Karena itu di masa kini,
semuanya berjalan lewat internet,‖ kata pakar teknologi
informasi, Stevan Greve
Sambungan internet cepat menghubungkan antara
peralatan rumah tangga sederhana dan sejumlah kecil
super komputer yang bisa saja berada di berbagai penjuru
dunia. Pelanggan tanpa perlu membeli atau menginstalasi
program, tetap dapat menggunakannya.
Syarat utama, pengguna harus memiliki sambungan serat
optik. Sebab hanya kabel tersebut yang secara sempurna
menerima dan mengirim data, supaya komputer tidak
berjalan pelan.
Tujuan utama dari cloud computing
sesungguhnya dari komputansi awan justru terjadi pada
perusahaan. Perusahaan biasanya setiap tahun
dipusingkan pengeluaran besar untuk membeli piranti
keras dan lunak. Bila cukup membeli satu terminal,
bukan saja lebih murah, tapi juga perlengkapan yang
simpel lebih tahan lama.
Mengapa konsep ini bernama komputasi awan
atau cloud computing? ―Internet bisa dianggap awan
besar. Awan berisi komputer yang semuanya saling
tersambung. Dari situlah berasal istilah ‗cloud‘. Jadi
semuanya disambungkan ke ‗cloud‘, atau awan itu,‖ kata
Greve.
Dengan demikian konsumen kian untung karena
hanya membutuhkan ruang kecil di bawah meja.
Sementara komputer induk memerlukan perawatan
berkala saja dan pengamanan jauh lebih ringan serta
murah. Tak perlu repot melakukan update pemindai virus
dan lain sebagainya. Semuanya sudah termasuk
abonemen. Juga tidak ketinggalan, komputasi awan
ramah lingkungan.
Cloud computing tidak lama lagi akan menjadi
realita, dan ini untuk cepat mengadaptasi yang dimaksud
dengan teknologi ini. Akibat dari keadaan sosial ekonomi
yang terus mengalami revolusi yang sangat cepat
sehingga melahirkan cloud computing, dimana teknologi
ini dibutuhkan untuk kecepatan dan realibilitas yang
lebih dari teknologi yang sebelumnya sehingga teknologi
ini nantinya akan mencapai pada tingkat investasi dalam
term cloud service yang cepat dan mudah.

II. DEFINISI CLOUD COMPUTING
Cloud computing pada dasarnya adalah
menggunakan Internet-based service untuk mensupport
business process, Kata-kata ―Cloud‖ sendiri merujuk
kepada simbol awan yang di dunia TI digunakan untuk
menggambarkan jaringan internet (internet cloud). Cloud
computing adalah gabungan pemanfaatan teknologi
komputer (‗komputasi‗) dan pengembangan berbasis
Internet (‗awan‘). Cloud /awan merupakan metafora dari
internet, sebagaimana awan yang sering digambarkan di
diagram jaringan computer, awan (cloud) dalam Cloud
Computing juga merupakan abstraksi dari infrastruktur
kompleks yang disembunyikannya adalah suatu moda
komputasi dimana kapabilitas terkait teknologi informasi
disajikan sebagai suatu layanan (as a service), sehingga
pengguna dapat mengaksesnya lewat Internet (―di dalam
awan‖) tanpa pengetahuan tentangnya, ahli dengannya,
atau memiliki kendali terhadap infrastruktur teknologi
yang membantunya. Menurut jurnal yang dipublikasikan
IEEE, Internet Computing/Cloud Computing adalah
suatu paradigma dimana informasi secara permanen
tersimpan di server di internet dan tersimpan secara
sementara di komputer pengguna (client) termasuk di
dalamnya adalah desktop, komputer tablet, notebook,
handheld, sensor-sensor, monitor dan lain-lain.



―Cloud Computing‖ secara sederhana adalah
―layanan teknologi informasi yang bisa dimanfaatkan
atau diakses oleh pelanggannya melalui jaringan
internet‖. Komputasi awan adalah suatu konsep umum
yang mencakup SaaS, Web 2.0, dan tren teknologi
terbaru lain yang dikenal luas, dengan tema umum
berupa ketergantungan terhadap Internet untuk
memberikan kebutuhan komputasi pengguna. Sebagai
contoh, Google Apps menyediakan aplikasi bisnis umum
secara sharing yang diakses melalui suatu penjelajah web
dengan perangkat lunak dan data yang tersimpan di
server.

III. PENGERTIAN GOOGLE APPS
Apakah Google Apps itu? Google Apps adalah
layanan dari Google untuk menggunakan nama domain
kustom dengan beberapa produk Google. Fitur ini
memiliki beberapa aplikasi web dengan fungsionalitas
32
mirip sebuah paket kantor, yang terdiri dari: Gmail,
Kalender Google, Gtalk, Dokumen dan Situs.
Edisi Standar Google Apps ini adalah gratis dan
menyediakan jumlah yang sama dengan kapasitas akun
Gmail Reguler. Edisi Premier yang menyediakan 25 Gb
untuk kapasitas email dengan harga $50 USD, 40 EUR,
atau 33GBP, per tahun per akun. Edisi Education ini juga
Gratis, dengan fitur kombinasi dari edisi Standard dan
Edisi Premium.
Penggunaan Google Apps Edisi Standard dalam
Kustom domain, salah satunya adalah dengan
menggunakan layanan ini maka pemakai bisa membuat
akun email dengan nama email sendiri @nama domain
sendiri juga dan sudah bukan @gmail.com lagi. Berapa
banyak pemakai bisa membuat akun email ini? Google
Apps standard edition mengijinkan pemakai untuk
membuat akun email hingga 50 user berbeda dengan
masing-masing kapasitas pada saat ini disediakan sekitar
7,5 Gb dan akan terus bertambah seiring dengan waktu
berjalan. Jadi kalau dihitung-hitung secara matematis,
total keseluruhan kapasitas yang disediakan adalah 50 x
7,5Gb sama dengan 375Gb secara Gratis!!?
Selanjutnya bagaimana cara biar calon pemakai
bisa mendapatkan akun Google Apps Standard Edition
ini? Ya, sesuai dengan fungsinya secara umum adalah
untuk pemakaian kustom domain, otomatis syarat
minimalnya adalah calon pemakai harus punya
namadomain.com sendiri. Untuk extension selain dot
com yaitu domain TLD lainnya.

Cara Registrasi Google Apps Standard Edition


Selanjutnya akan masuk ke halaman berikutnya dan
langsung aja klik button “Get Started”

Selanjutnya pilih radio button sebagai
“Administrator” serta masukkan namadomain.com
tanpa menggunakan www dan klik button “Get
started”.
Ok, berikutnya mengisi data-data ―Account
Administrator‖ dan ―Organization Information‖

Nah, jika sudah lengkap dan isian data sudah
benar, langsung klik “Continue”
Dan selanjutnya bikin akun admin dengan mengisi
username dan password. Catat dan SIMPAN baik-baik
username dan password untuk Administrator ini!
33

Klik “I accept. Continue with setup”


Berikutnya bagi yang memiliki akun hosting
(seperti cPanel atau yang lainnya) maka pilih dan cek
radio button ―Upload an HTML file to‖ Sementara yang
tidak memiliki akun hosting dan hanya memiliki manage
DNS domain saja, bisa pilih dan cek radio button
?Change ? CNAME record? yang selanjutnya dibahas
melalui link ini.
Setelah klik button “Continue” di atas berikutnya adalah
upload sebuah file HTML ke hosting dan ditaruh di root
atau folder ?public_html?.

1. Buka program NotePad dari windows,
kemudian ketikan (copy & paste yang di sorot
merah pada gambar di atas) ke dalam notepade
tersebut kode unik sesuai dengan yang diberikan
oleh Google khusus untuk akun yang sedang
dibuat ini.
2. Kemudian save file NotePad ini dan rename
menjadi ?googlehostedservice.html?

3. Upload file ―googlehostedservice.html‖ ini ke
hosting di root folder atau folder public_html.
Upload file bisa menggunakan dengan FTP atau
melalui cPanel.
4. Setelah selesai upload file tersebut, berikutnya
untuk memastikan adalah dengan klik link yang
ada
(http://hostingterbaik.com/googlehostedservice.
html) untuk verifikasi domain tersebut adalah
benar milik kita sendiri. Jika muncul halaman
browser dengan kode yang tadi di copy paste
tersebut maka upload file sudah sukses, silahkan
klik ―Back‖ browser dan ke langkah berikutnya.
5. Klik button ―I‘ve completed the steps above‖

IV. GOOGLE APPS DALAM
BISNIS(PERUSAHAAN)
Penghematan biaya yang telah terbukti.
Aplikasi perpesanan dan kolaborasi berbasis
web Google tidak memerlukan perangkat keras maupun
perangkat lunak dan kebutuhan administrasinya pun
minimal, sehingga menciptakan penghematan waktu dan
biaya yang sangat besar bagi bisnis.

Pengguna akhir dapat menggunakan antarmuka
Microsoft Outlook (dalam bahasa Inggris) yang familiar
bagi mereka, untuk email, kenalan, dan kalender saat
beralih ke Gmail dan Google Kalender.
Sebuah perusahaan penelitian terkemuka
menemukan bahwa biaya Google Apps hanya sepertiga
dari yang dikeluarkan untuk solusi yang ditawarkan
kompetitor.
Ingin melihat seberapa besar yang dapat
pengguna hemat dengan Google Apps dibandingkan
dengan Microsoft Exchange 2007?
Email, kalender, dan akses IM di medium seluler
Dengan berbagai opsi untuk mengakses
informasi mereka saat dalam perjalanan, karyawan bisa
34
tetap produktif dengan Google Apps walaupun mereka
sedang tidak berada di meja.
Tanpa perlu biaya tambahan, Google Apps
mendukung akses seluler lewat transmisi udara (OTA)
pada perangkat BlackBerry, iPhone, Windows Mobile,
Android, dan banyak telepon lain yang lebih sederhana.
jaminan waktu operasional 99.9%
Google Apps akan tersedia sekurang-kurangnya
99,9% dari waktu yang ada, sehingga karyawan akan
lebih produktif dan kekhawatiran tentang penghentian
operasional sistem akan berkurang.**
Grup Radicati menemukan bahwa pemakai
Microsoft Exchange biasanya mengalami masa nonaktif
tak terencana selama 60 menit tiap bulan. Pelanggan
Google Apps biasanya kurang dari 15 menit tiap bulan.
Kapasitas penyimpanan 50 kali lebih besar daripada rata-
rata industri
Setiap karyawan memperoleh penyimpanan
email sebesar 25 GB, sehingga mereka dapat menyimpan
pesan-pesan penting dan mencarinya dengan cepat
dengan penelusuran Google bawaan.
Gmail dirancang sedemikian rupa hingga
karyawan tak perlu lama-lama mengelola kotak masuk
mereka, dan akan punya lebih banyak waktu untuk
produktif. Fitur hemat waktu seperti penguntaian pesan,
label pesan, penelusuran pesan cepat, dan penyaringan
spam yang efektif akan membantu karyawan untuk
bekerja efisien walaupun volume email tinggi.
Keamanan informasi dan kepatuhan
Jika Anda memercayakan informasi perusahaan
ke Google, yakinlah bahwa informasi penting perusahaan
akan aman dan terlindungi.
Tim keamanan informasi Google, termasuk sebagian
pakar terkemuka dalam bidang informasi, aplikasi, dan
keamanan jaringan, memusatkan perhatian mereka untuk
menjaga keamanan informasi pengguna. Google dan
banyak pelanggan lainnya memercayai sistem ini dengan
menggunakan data perusahaan yang sensitif.
Bisnis memperoleh fitur keamanan yang dapat
diubahsuaikan ini pada Google Apps :
- Alat penyaringan spam dan pesan masuk
ubahsuaian, yang didukung oleh Postini, untuk
melengkapi filter spam kuat yang otomatis
bekerja tanpa perlu konfigurasi pendahuluan.
- Alat penyaringan email keluar untuk mencegah
penyebaran informasi sensitif, diberdayakan
oleh Postini.
- Aturan berbagi informasi ubahsuaian untuk
menentukan sejauh mana karyawan diizinkan
berbagi pada Google Documents, Google
Kalender, dan Google Sites.
- Pengubahsuaian persyaratan panjang sandi dan
indikator kerumitan visual untuk membantu
karyawan dalam memilih sandi aman.
- Sambungan SSL yang diperkuat dengan Google
Apps untuk menjamin keamanan akses HTTPS.
- Opsional pengarsipan email, data ditahan
hingga 10 tahun.
Kontrol administratif dan data sepenuhnya
Administrator dapat mengubahsuaikan Google
Apps sedetail mungkin untuk memenuhi persyaratan
teknis, merek, dan bisnis.
Opsi integrasi memungkinkan Anda menghubungkan
Google Apps ke infrastruktur TI saat ini.
- API sistem masuk tunggal menghubungkan
Google Apps ke sistem autentikasi pengguna
saat ini.
- Utilitas dan API persiapan pengguna
menghubungkan Google Apps ke sistem
direktori pengguna saat ini.
- Perutean email dan dukungan gerbang email
memungkinkan pengguna menjalankan Google
Apps bersama-sama dengan solusi email saat ini.
- Utilitas migrasi email dan API membuat Anda
mampu mengirim surat dari solusi email yang
telah ada ke Google Apps.
Penciptaan citra sistem dan kepemilikan data
memberikan tampilan dan nuansa tersendiri bagi Google
Apps pengguna, serta memastikan kepemilikan
pelanggan data karyawan.
- Akun pengguna yang dapat diubahsuaikan di
domain internet perusahaan Anda.
- Logo dan warna yang dapat Anda sesuaikan
pada aplikasi.
- Kepemilikan data karyawan berdasarkan
kontrak pelanggan.
Dukungan pelanggan 24/7 jam sehari yang bermanfaat
Google Apps sangat dapat diandalkan dan
mudah dioperasikan, namun dukungan hanya tersedia
bagi administrator sekiranya diperlukan.
Opsi dukungan meliputi:
- Dukungan telepon untuk masalah-masalah
genting
- Dukungan email
- Dukungan daring swalayan
Google Apps juga memiliki jaringan kemitraan
yang luas dan siap membantu bisnis dengan penggunaan,
migrasi data, pelatihan bagi pengguna, integrasi sistem,
dan pengembangan aplikasi ubahsuaian.

V. KESIMPULAN
Komputasi awan memiliki peran yang sangat
penting untuk keamanan penyimpanan data dan dengan
penerapan komputasi awan maka pengguna bisa
menjalankan bisnisnya dimana saja asal internet jalan.
Aplikasi perpesanan dan kolaborasi berbasis web Google
tidak memerlukan perangkat keras maupun perangkat
lunak dan kebutuhan administrasinya pun minimal,
sehingga menciptakan penghematan waktu dan biaya
yang sangat besar bagi bisnis. Dengan penerapan cloud
computing maka perusahaan akan terhindar dari
pengeluaran besar untuk membeli piranti keras dan
lunak. Tetapi cukup hanya membeli satu terminal, bukan
35
saja lebih murah, tapi juga perlengkapan yang simpel
lebih tahan lama.

DAFTAR PUSTAKA
[1] Yayan Sopyan, 2009, Mengenal dan mengoptimalkan Google
[2] Madcoms, 2009, 1
st
Published, Yogyakarta
[3] Nakihimovsky, Alexander, Tom Myers, 2004. Google, Amazon,
and Beyond Creating and Consuming Web
Services. Springer-Verlag, Inc.,New York
[4] Babcock, Charles, 2010. Management
Strategies for The Cloud
Revolutions. McGraw-Hill, New York..
[5] Roche, Kyle, Jeff Douglas, 2009. Beginning Google Apps
Engine. Springer-Verlag Inc., New York.
[6] http://sigmabisnis.com/cara-registrasi-google apps-standard-
edition
[7] http://id.wikipedia.org/wiki/Komputasi Awan



36
Disaster Recovery Planning Menggunakan
Teknologi Cloud Computing

Raheliya Br.Ginting
1
, Irene Sri Morina
2

1
Pasca Sarjana Teknik Informatika Universitas Sumatera Utara
2
Pasca Sarjana Teknik Informatika Universitas Sumatera Utara
1
itink_ribu@yahoo.com,
2
morina_ginting@yahoo.com



Abstrak—Trend saat ini adalah dapat memberikan
berbagai macam layanan secara teristribusi dan pararel
secara remote dan dapat berjalan di berbagai device, dan
teknologinya dapat dilihat dari berbagai macam teknologi
yang digunakan dari proses informasu yang dilakukan
secara otsourching sampai dengan penggunaan eksternal
data center. Cloud Computing merupakan model yang
memungkinkan dapat mendukung layanan yang
disebut ”Everything-as-a-service” (XaaS). Pemanfaatan
teknologi cloud computing di beberapa perusahaan bisnis
besar dalam penggunaanya sebagai disaster recovery
planning menjadi salah satu hal yang sangat krusial dalam
kelangsungan bisnis yang dilakukan oleh perusahaan
tersebut, terlebih apabila perusahaan tersebut
menggunakan platform web dimana tingkat privacy dan
security dari data perusahaan menjadi pertimbangan yang
utama.
Key Word — Cloud Computing, Disaster Recovery Planning

I. PENDAHULUAN
Perkembangan IT saat ini menuju konsep social
networking, openess, share, colaborations, mobile, easy
maintenance, one click, terdistribusi / tersebar,
scalability, concurency dan transparan [6]. Saat ini
terdapat trend teknologi yang masih terus digali dalam
penelitian-penelitian para pakar IT di dunia, yaitu cloud
computing. Akses data dari mana saja dan menggunakan
perangkat fixed atau mobile device menggunakan internet
cloud sebagai tempat menyimpan data, aplikasi dan
lainnya yang dapat dengan mudah mengambil data,
download applikasi dan berpindah ke cloud lainnya, hal
ini memungkinkan kita dapat memberikan layanan
aplikasi secara mobile di masa depan. Trend ini akan
memberikan banyak keuntungan baik dari sisi pemberi
layanan (provider) atau dari sisi user.
Trend saat ini adalah dapat memberikan
berbagai macam layanan secara teristribusi dan pararel
secara remote dan dapat berjalan di berbagai device, dan
teknologinya dapat dilihat dari berbagai macam
teknologi yang digunakan dari proses informasu yang
dilakukan secara otsourching sampai dengan penggunaan
eksternal data center. Cloud computing merupakan
model yang memungkinkan dapat mendukung layanan
yang disebut ‖Everything-as-a-service‖ (XaaS) [1].
Dengan demikian dapat mengintegrasikan virtualized
physical sources, virtualized infrastructure, seperti juga
sebaik virtualized middleware platform dan aplikasi
bisnis yang dibuat untuk pelanggan didalam cloud
tersebut.

II. CLOUD COMPUTING
Cloud Computing merupakan model yang
memungkinkan dapat mendukung layanan yang
disebut ‖Everything-as-a-service‖ (XaaS) [1]. Dengan
demikian dapat mengintegrasikan virtualized physical
sources, virtualized infrastructure, seperti juga sebaik
virtualized middleware platform dan aplikasi bisnis yang
dibuat untuk pelanggan didalam cloud tersebut.
Ada beberapa keuntungan yang dapat dilihat
dari perkembangan Cloud Computing ini, seperti :
1. Lebih efisien karena menggunakan anggaran yang
rendah untuk sumber daya .
2. Membuat lebih eglity, dengan mudah dapat
berorientasi pada profit dan perkembangan yang
cepat.
3. Membuat operasional dan manajemen lebih mudah,
dimungkinkan karena system pribadi atau
perusahaan yang terkoneksi dalam satu cloud dapat
dimonitor dan diatur dengan mudah.
4. Menjadikan koloborasi yang terpecaya dan lebih
ramping
5. Membantu dalam menekan biaya operasi biaya
modal pada saat kita meningkatkan reliability dan
kritikal sistem informasi yang kita bangun.
Terdapat tiga komponen platform pada
teknologi cloud computing yaitu computer desktop,
mobile devices dan cloud, dengan memperhatikan
masalah kemudahan dan keamanan, dimungkinkan dapat
dengan mudah para user untuk pindah dari satu aplikasi
ke aplikasi lain dimana saja.
Software as a services (SaaS) diawali dengan
perkembangan dari web 2.0, perpaduan dengan online
application SaaS, dapat memungkinkan kolaborasi dan
integrasi manajemen tools semua devices. Grid
computing muncul untuk menyatukan banyak CPU yang
bekerja secara pararel untuk menyelesaikan suatu
pekerjaan tertentu. Integrasi CPU ini bisa saja dilakukan
dalam sebuah network lokal atau internetworking yang
tersebar di seluruh dunia. Interkoneksi ini membentuk
sel-sel yang saling terintegrasi secara private atau public
atau kedua-duanya [2].

37

Gambar 1. Struktur Cloud Computing

III. DISASTER RECOVERY PLANNING
Disaster recovery planning (DRP) adalah
perencanaan untuk pengelolaan secara rasional dan cost-
effective bencana terhadap sistem informasi yang akan
dan telah terjadi [3]. Di dalamnya terdapat aspek
catastrophe in information systems1. Seperti halnya polis
asuransi, suatu perencanaan preventif terhadap bencana
pada sistem informasi dan pemulihan pasca bencana
yang efektif harus dirasakan manfaatnya walaupun
bencana tak pernah akan terjadi justru karena efektivitas
sistem informasi tersebut. Namun runtuhnya system
informasi itu sendiri merupakan bencana, terhentinya
kegiatan sehari-hari karena kehilangan informasi.
Tujuan disaster recovery planning (DRP)
adalah meminimumkan risiko dan optimalisasi
kesinambungan entitas dalam menghadapi risiko bencana.
Apabila manajemen tak mampu merumuskan manfaat
DRP, atau menyimpulkan bahwa manfaat DRP lebih
kecil dari biaya DRP, maka program DRP tak akan
dilaksanakan [3].
Perlindungan terhadap data dan aset perusahaan
dinilai sangat penting dalam mengantisipasi resiko.
Untuk itu, diperlukan suatu fasilitas pengganti yang
handal pada saat pusat data perusahaan mengalami
gangguan atau tidak berfungsi yang dapat mengganggu
jalannya usaha.
Fasilitas pengganti atau back-up dari pusat
data dikenal dengan istilah Disaster Recovery Center
(DRC). Disaster Recovery Planning merupakan
serangkaian kegiatan yang bertujuan untuk mengurangi
kemungkinan dan membatasi kerugian akibat bencana
pada proses bisnis yang penting. Bencana yang dimaksud
bisa berupa banjir, kebakaran, gempa bumi, ataupun
virus, kegagalan harddisk, serangan dari cracker, dan lain
sebagainya. Tentunya bencana seperti ini sangat
mengancam data atau informasi perusahaan atau
perorangan.
Rencana pencegahan dan pemulihan dapat
dengan mudah dimanfaatkan oleh pihak-pihak tertentu
dengan menambahkan biaya-biaya yang tidak perlu yang
akan membuat rencana tersebut menjadi tidak masuk
akal bagi level manajemen. Rencana yang dibuat harus
mencakup definisi yang jelas dari data-data atau record
organisasi yang harus dilindungi. Hal-hal yang harus
dihindari selama pembuatan rencana pemulihan adalah
rekonstruksi material back-up, kopi, dan file-file yang
tidak penting.
Disaster recovery plan merupakan program
yang tertulis dan telah disetujui, diimplementasikan, serta
dievaluasi secara periodik, yang menfokuskan pada
semua aksi yang perlu dilakukan sebelum, ketika, dan
setelah bencana. Rencana ini disusun berdasarkan review
secara menyeluruh terhadap bencana-bencana yang
potensial, yang mencakup lingkup fasilitas, lokasi
geografis, atau industri. Rencana ini juga merupakan
pernyataan dari tanggapan yang tepat untuk proses
pemulihan yang bersifat efektif terhadap biaya dan cepat.
Oleh karena itu, rencana yang dibuat haruslah
mengidentifikasi di mana, yang mana, dan bagaimana
record-record dapat diperoleh.

IV. CLOUD COMPUTING PADA DISASTER
RECOVERY PLANNING
Jika mengacu kepada Bussines Contuinity
Plan (BCP) [5], bisnis akan bergantung kepada informasi
yang tersebar dan yang memproses informasi tersebut,
sehingga aplikasi penopang utama yang spesifik menjadi
sangat kritikal ketika terjadi gangguan seperti tersebut
diatas. Sehingga dibutuhkan sokongan atau model
backup. Unit usaha yang berhubungan dengan data dan
informasu sepatutnya sudah mulai mengarah ke aplikasi
ini untuk meningkatkan dalam hal layanan ke pelanggan.
Indonesia yang termasuk ke dalam negara berkembang
sangat tepat bila penggunaan internet bisa maksimal
diterapkan.
Pemanfaatan teknologi cloud computing di
beberapa perusahaan bisnis besar dalam penggunaanya
sebagai disaster recovery planning menjadi salah satu
hal yang sangat krusial dalam kelangsungan bisnis yang
dilakukan oleh perusahaan tersebut, terlebih apabila
perusahaan tersebut menggunakan platform web dimana
tingkat privacy dan security dari data perusahaan
menjadi pertimbangan yang utama. Terlebih lagi apabila
terjadi suatu bencana di perusahaan tersebut, perusahaan
harus tetap menjalankan roda bisnisnya meskipun telah
tertimpa atau sedang tertimpa suatu bencana.
Bencana dapat berupa beberapa hal
diantaranya kerusakan pada jaringan listrik disebabkan
oleh sistem elektrik, serangan teroris disebabkan oleh
lemahnya keamanan fisik dan non fisik data center,
sistem atau perangkat yang rusak terkait dengan
kesalahan manajemen pengawasan perangkat, kesalahan
38
operasional akibat ulah manusia, virus misalkan
disebabkan oleh kesalahan pemilihan anti virus yang
digunakan. Secara garis besar, berikut merupakan cara
kerja penyimpanan data dan replikasi data pada
pemanfaatan teknologi cloud computing dalam disaster
recovery planning.


Gambar 2. Cara Kerja Penyimpanan Data Dengan Teknologi Cloud
Computing

Manfaat utama implementasi Cloud Computing
sebagai disaster recovery planning di bidang e-Business
dapat diformulasikan sebagai berikut :
A. Reduced Costs
Penggunaan infrastruktur cloud yang
diselenggarakan oleh perusahaan, tidak diperlukan
pembangunan baru terhadap perangkat dan
teknologi. Perusahaan cukup mempercayakan
kepada perusahaan pihak ketiga (third party vendor)
yang memang benar-benar dipercaya sebagai
tempat penyimpanan basis data keseluruhan pada
perusahaan. Hal ini akan mengurangi biaya yang
dianggarkan oleh perusahaan dalam pembangunan
infrastruktur IT. Sesuai dengan layanan cloud
computing ―pay as you use‖, maka layanan ini
hanya akan dianggarkan oleh perusahaan jika hanya
perusahaan benar-benar akan
mengimplementasikan dan mengotomatisasikan
proses-proses bisnis internal perusahaan
bersangkutan menggunakan teknologi cloud
computing ini.
B. Scalability
Dari sisi skalabilitas, maka teknologi ini mudah
untuk meningkatkan kapasitas, sebagai kebutuhan
komputasi yang setiap waktu terus berubah, tanpa
membeli peralatan tambahan. Jangkauan akses dari
teknologi cloud computing ini juga tidak terbatas.
Bahkan bagian personal mampu mengakses data
dimanapun dan kapanpun berada asalkan terkoneksi
internet.
C. Competitive Differentiation
Bagi perusahaan, layanan cloud computing ini
sebagai bukti bahwa perusahaan
mengimplementasikan proses bisnis menggunakan
teknologi informasi (ICT). Hal ini berdampak pada
brand image perusahaan, efektifitas dan efisiensi
dalam proses bisnis internal, adanya value creation
yang diberikan pelanggan menjadi lebih mudah dan
berdampak positif, serta memungkinkan terjadinya
disintermediation sehingga pelanggan akan
merasakan dampak langsung terhadap implementasi
teknologi cloud computing.
D. Accessibilty
Teknologi ini memungkinkan akses jamak oleh
seluruh staff, karyawan, maupun bagian top
management perusahaan dalam melakukan akses
data internal perusahaan. Tingkat jangkauan akses
dimana saja dan kapan saja menggunakan koneksi
internet.
E. Document Recovery
Salah satu keunggulan tersendiri implementasi
teknologi cloud computing adalah adanya document
recovery apabila terjadi suatu bencana alam yang
menyebabkan perangkat-perangkat pada perusahaan
rusak. Tentunya kekuatan infrastruktur penyedia
layanan serta adanya kehandalan dan backup data
secara berkala menjadikan keunggulan tersendiri
dalam proses Disaster Recovery Planning maupun
Business Continuity Plan. Selain itu adanya tingkat
keamanan perlindungan data dan privacy terhadap
data internal perusahaan merupakan bahasan
tersendiri terlepas dari lingkup pemanfaatan
teknologi cloud computing sebagai penunjang e-
business dalam kaitannya dengan disaster recovery
planning.


Gambar 3. Framework Model Bisnis dan
Value Chain dari Pemanfaatan Teknologi Cloud.

39
Dengan menggunakan pemanfaatan teknologi
cloud computing, perusahaan pelaku bisnis baik yang
melakukannya secara offline maupun online dapat sedikit
bernafas lega. Karena, dengan teknologi tersebut dapat
dengan mudah untuk melakukan replikasi data
perusahaan yang penting akibat terjadinya suatu bencana
yang diakibatkan oleh banyak hal karena secara rasional
Disaster Recovery Planning merupakan salah satu
metode perencanaan preventif untuk pengelolaan secara
rasional dan cost effctive terhadap bencana yang telah
dan akan terjadi.
Dalam dunia bisnis pemanfaatan teknologi
cloud computing mempunyai peranan besar dalam
reducing cost bagi perusahaan pelaku bisnis.
Kedepannya cakupan dari bahasan teknologi cloud
computing ini mencakup keseluruhan aspek yang ada
pada suatu perusahaan entrprise skala besar maupun
SME (Small Medium Enterprise).

V. KESIMPULAN
A. Disaster recovery planning merupakan serangkaian
kegiatan yang bertujuan untuk mengurangi
kemungkinan dan membatasi kerugian akibat
bencana pada proses bisnis yang penting.
B. Dengan adanya disaster recovery plan sebagai
pedoman untuk menghadapi bencana, maka
perusahaan dapat menghadapi situasi krisis akibat
bencana dengan percaya diri dan terarah.
C. Dalam dunia bisnis pemanfaatan teknologi cloud
computing mempunyai peranan besar dalam
reducing cost bagi perusahaan pelaku bisnis.
Kedepannya cakupan dari bahasan teknologi cloud
computing ini mencakup keseluruhan aspek yang
ada pada suatu perusahaan entrprise skala besar
maupun SME (Small Medium Enterprise).

DAFTAR PUSTAKA
[1] Bechtolsheim., Andy., 2008., Cloud Computing.
[2] Cloude Computing Use Case Discussion Group., October 2009.
[3] Hoesada, Jan., 2006., Disaster Recovery Planning : Manajemen
Bencana Administrasi dan Keuangan., Jakarta.
[4] Tiogo, J. W.,2003.,Disaster Recovery Planning 3
rd
., USA:
Prentice Hall.
[5] Thomas and John., 2009., Cloud Computing A Collection of
Working Pappers.
[6] Yahya., 2005., Faktor-Faktor Utama Pada Disaster Recovery
Planning.
40
Virtualisasi Dan Cloud Computing
pada Sistem Linux
Zulkifli
#1
Program Studi Ilmu Komputer, Fakultas Matematika & Ilmu Pengetahuan Alam
Universitas Sumatra Utara
Zul.unimus@yahoo.co.id










Abstrak— Dalam sebuah sistem sangat diperlukan sebuah
kenerja yang sangat baik dan optimal sesuai dengan
sasaran yang diinginkan, sebagaimana Cloud Computing
dan virtualisasi yang akan dikembangkan untuk suatu
sistem yang besifat fisik seperti sistem operasi, perangkat
storage dan sumber daya jaringan yang baik, virtualisai
dan Cloud Computing dapat dilakukan suatu perpaduan
dalam kinerja sebuah sistem komputer yang saling
berhubungan sehingga virtualisasi sistem operai dan
sumber daya jaringan dimana suatu sumber daya, software,
informasi dan aplikasi disediakan untuk digunakan oleh
komputer lain yang membutuhkan. Cloud Computing bisa
dianggap sebagai perluasan dari virtualisasi sebagai suatu
sistem yang digunakan dalam jaringan internet yang tidak
mengelolanya secara internal. Sebagaimana layanan
layanan yang ada pada Google Docs dan Google
Spreadsheet yang kedua layanan tersebut membutuhkan
sebuah sistem operasi sebagai dasar tempat untuk kedua
layanan tersebut aktif hingga meniadakan kebutuhan suatu
aplikasi office untuk penolahan kata dan aplikasi
Spreadsheet di inernal yang akan dikembangkan.

Kata Kunci— Virtualisasi, Cloud Computing dan linux
I. PENDAHULUAN
Penggunaan komputer sejak awal komputer di buat
berdasarkan generasi ke generasi terus di evaluasi untuk
mempermudah dalam segala yang ada dalam komputer
tersebut sehingga perubahan baru muncul secara
langsung tanpa disadari oleh setiap user dalam
mengaplikasikasikan setiap kebutuhan untuk
mempermudah kinenja yang dibantu oleh sistem
komputer untuk mencapai hasil yang maksimal pada
masalah yang ingin dicapai, disesuaikan juga
berdasarkan jenis sistem operasi yang dugunakan.
Diantara sistem operasi linux sebagai salah satu sistem
operasi diatara sistem operasi lainnya yang mempunyai
keunggulan sendiri yang cendrung digunakan di berbagai
macam kalangan. Berkaitan dengan virtualisasi dan
cloud computing yasng diterapkan pada sistem linux
yang lebih mudah untuk meningkatkan kinerja
komputerisasi dalam jaringan yang luas
II. DASAR TEORI
Untuk mencapai suatu hasil yang terarah perlu adanya
suatu penerapan yang sesuai dengan virtualisai dan cloud
computing yang akan buat dan dikembangkan pada
sistem operasi linux untuk membentuk sebuah jaringan
melalui server tertentu yang terarah pada sistem jaringan
yang akan dikembangkan melalui implementasi
virtualsisasi pada Linux menggunakan xen hypervisor.
Sebagaimana gambar dibawah.






Gambar 1 virtualsisasi pada Linux menggunakan xen hypervisor.
Setelah kita berhasil melakukan instalasi Xen
Hypervisor, kita bisa langsung membuat guest OS. Perlu
dipahami bahwa Xen memiliki keistimewaan dalam
melakukan emulasi penggunaan hardware antara Guest
OS dengan hostnya dalam
bentuk paravirtualization, yaitu pemanfaatan modul pada
kernel yang dioptimasi secara khusus. Paravirtualization
bisa dilakukan untuk sistem operasi yang sama, misalnya
SLES sebagai host terhadap openSUSE sebagai guest,
namun hal ini tidak bisa dilakukan pada sistem Windows
khusu pada sistem linux.
III. PEMBAHASAN
A. Virtualisasi dan Cloud Computing
Virtualisasi bisa diartikan sebagai pembuatan suatu
bentuk atau versi virtual dari suatu pross yang
mempunyai sifat fisik seperti sistem operasi, perangkat
storage/pemyimpanan data atau sumber daya jaringan.
Sedangkan cloud computing sistem komputerisasi
berbasis jaringan/internet, dimana suatu sumber daya,
software, informasi dan aplikasi disediakan untuk
digunakan oleh komputer lain yang membutuhkan.
B. Keuntungan Virtualisasi dan Cloud Computing
1. Pengurangan Biaya Investasi pada Hardware :
Investasi hardware dapat ditekan lebih rendah karena
virtualisasi hanya mendayagunakan kapasitas yang
sudah ada. Tak perlu ada penambahan perangkat
komputer, server dan pheriperal secara fisik.

41
2. Kemudahan Backup & Recovery : Server-server
yang dijalankan didalamsebuah mesin virtual dapat
disimpan dalam 1 buah image yang berisiseluruh
konfigurasi sistem. Jika satu saat server tersebut
crash, kita tidak perlu melakukan instalasi dan
konfigurasi ulang.
3. Mengurangi Panas : Berkurangnya jumlah
perangkat otomatis engurangi panasnya ruang
server/data center. ini akan berimbas pada
pengurangan iaya pendinginan/AC dan pada
akhirnya mengurangi biaya penggunaan listrik.

4. Kemudahan Maintenance & Pengelolaan : Jumlah
server yang lebih sedikit otomatis akan mengurangi
waktu dan biaya untuk mengelola. Jumlah server
yang lebih sedikit juga berarti lebih sedikit jumlah
server yang harus ditangani.

5. Standarisasi Hardware : Virtualisasi melakukan
emulasi dan enkapsulasi hardware sehingga proses
pengenalan dan pemindahan suatu spesifikasi
hardware tertentu tidak menjadi masalah.

C. Kebutuhan Sistem untuk Virtualisasi dan Cloud
Computing
Pada dasarnya, kebutuhan spesifikasi server
tergantung pada virtual server yang akan digunakan.
Semakin tinggi spesifikasi yang akan dijalankan,
semakin tinggi pula spesifikasi server yang akan
digunakan sebagai server induk. Meski demikian, asumsi
ini tidak 100% benar karena ada beberapa teknologi
virtualisasi seperti OpenVZ yang mampu melakukan
load balancing sehingga jika mesin virtual ada 5 yang
masing-masing membutuhkan memory 1 GB tidak
berarti bahwa server harus memiliki spesifikasi diatas 5
X 1GB. Berikut adalah spesifikasi minimal server induk
yang akan digunakan untuk menjadikan sebuah distro
Linux sebagai virtual server :
1. Processor Pentium 4. Jika akan menggunakan
arsitektur 64 bit, server harus memiliki
kemampuan 64 bit
2. jika akan enggunakan model full virtualization
pada Xen Hypervisor, prosessor memiliki model
Intel VT (Virtualization Technology) atau AMDV
3. Memory minimal 1 GB, Kapasitas Harddisk
minimal 20 GB dan Memiliki network card untuk
keperluan networking.

D. Penggunaan Xen Hypervisior pada Virtualisasi dan
Cloud Computing
Perlu dipahami bahwa Xen memiliki keistimewaan
dalam melakukan emulasi penggunaan hardware antara
Guest OS dengan hostnya dalam bentuk
paravirtualization, yaitu pemanfaatan modul pada kernel
yang dioptimasi secara khusus. Paravirtualization bisa
dilakukan untuk sistem operasi yang sama,misalnya
SLES sebagai host terhadap openSUSE sebagai guest,
namun hal ini tidak bisa dilakukan pada sistem Windows.
Sistem Windows sebagai guest pada Xen
menggunakan model full virtualization, dan ini
memerlukan dukungan processor yang memiliki fasilitas
VT atau Virtualization Technology.
IV. KESIMPULAN DAN SARAN
Dari berbagai hasil penerapan yang dilakukan melalui
Virtualisasi dan Cloud Computing pada sistem linux
memberikan suatu cakupan yang luas dan sangat baik
untuk diterapkan pada sistem linux untuk
mengembangkan sebuah server jaringan yang saling
terhubung. Virtualisasi dan Cloud Computing
mempunyai peran besar untuk memudahkan
mengembangkan suatu jaringan yang terkomputerisasi
berbasis sekumpulan komputer yang saling berhubungan
membentuk sebuah jaringan yang mempunyai
jangkawaktu yang tidak terbatas pada jaringan yang
dikembangkan seperti internet. Dan untuk memberi efek
positif dan lebih baik sehingga dapat di gunakan untuk
perusahan – prusahaan harus murah dan tidak mudah
mengalami perubahan di setiap ada kesalahan sehingga
memberikan kenyamanan tersendiri bagi setiap peruhaan
yang ingin menggunakannya.
REFERENSI
[17] http://www.vavai.com
[18] http://www.vavai.biz
[19] http://www.openoffice.org
[20] http:/www.gudanglinux.info
[21] http://www.java.com/en/download/help/testvm.xml










42

43




















44









45
Analisis Syntak Tata Bahasa Alami dengan
Menggunakan Metode Left Corner Parsing

Boni Oktaviana
1
1
Program Studi PascaSarjana (S2) Teknik Informatika USU Medan
1
bonioktaviana@yahoo.co.id


Abstrak— Bahasa merupakan salah satu sarana
komunikasi dalam kehidupan sehari-hari dan dalam
bidang ilmu apapun. Komunikasi yang dilakukan
dapat berupa tulisan maupun lisan. Dalam bentuk
tulisan bahasa sering sekali mengalami kesalahan,
penyebab dari kesalahan tersebut dikarenakan
karena ketidaksesuaian dengan pola yang sebenarnya.
Adapun cara untuk mengetahuai kesalahan pola
tersebut dapat dilakukan dengan parsing. Teknik
parsing yang dilakukan adalah dengan teknik left-
corner. Teknik ini merupakan gabungan dari top-
down parsing dan bottom-up parsing yang masing-
masing teknik mempunyai kelebihan dan
kekurangannya. Untuk melakukan proses
penganalisaan terhadap tata bahasa tersebut hanya
dilakukan pada tahapan analisa sintaksis.

Kata kunci— left-corner, parsing, tata bahasa

I. PENDAHULUAN

Kehidupan kita sehari-hari dan didalam bidang ilmu
apapun penggunaan dari suatu tata bahasa saat
diperlukan, ini dikarenakan bahasa merupakan alat
menghubungkan diantara kedua belah pihak dalam
menyampaikan suatu informasi dengan kata lain bahasa
merupakan suatu alat komunikasi. Biasanya komunikasi
yang dilakukan tidak hanya dalam bentuk lisan tetapi
bisa juga dilakukan dalam bentuk tulisan. Untuk
melakukan komunikasi dengan baik dan dimengerti oleh
kedua pihak diperlukanlah suatu grammar atau pola
tertentu yang telah disepakati. Dalam bentuk tulisan
sering sekali kita melihat tata bahasa tersebut mengalami
kesalahan, kesalahan tersebut disebabkan karena
ketidaksesuaian dengan pola yang ada. Oleh sebab itulah
kita memerlukan suatu perangkat lunak yang dapat
melakukan pengecekan terhadap tata bahasa yang
digunakan. Proses pengolahan tata bahasa alami
merupakan salah satu bidang ilmu yang berkaitan dengan
kecerdasan buatan, yang mempelajari konsep komunikasi
antar keduanya. Proses pengolahan bahasa alami ini
bertujuan untuk memahami arti dari ucapan yang
diberikan dalam bahasa alami dan memberikan respon
sesuai dengan yang diperintahkan.
Untuk melakukan hal tersebut diperlukan tiga
tahapan. Tahapan pertama adalah analisa sintaksis.
Analisa sintaksis merupakan suatu tahapan yang
memeriksa kebenaran dari struktur kalimat berdasarkan
suatu tata bahasa dan kosa kata tertentu. Tahapan kedua
interprestasi semantik bertujuan untuk merepsentasikan
arti dan menentukan maksud dari penggunaan kalimat.
Kedua tahapan tersebut nantinya dapat memberikan
suatu solusi dalam proses penganalisaan tata bahasa yang
kita miliki sudah benar atau tidak. Tahap ketiga adalah
interprestasi kontekstual yang bertujuan untuk
merepresentasikan arti secara context-dependent dan
menentukan maksud dari penggunaan kalimat. Pada
penulisan ini kami hanya membahas tahap analisa
sintaksis dan teknik parsing yang digunakan adalah
teknik left-corner yang merupakan teknik penggabungan
top-down parsing dan bottom-up parsing. Teknik ini
digunakan karena left-corner memungkinkan untuk
melakukan proses analisa kemungkinan terhadap kalimat
yang pertama didapat kemudian pencarian langsung
untuk menghindari masalah kata yang sering bukan
merupakan akhir dari suatu kalimat. Sehingga dengan
teknik yang digunakan kita dapat mendekati dari pola
kalimat yang sebenarnya.

II. LANDASAN TEORI

2.1. Grammar dan Lexicon
Seiring dengan perkembangan zaman Natural
Language Processing mengalami kemajuan yang luar
biasa sesuai dengan perkembangan dari grammar dan
lecixon. Grammar disebut juga dengan tata bahasa. Biasa
suatu tata bahasa berisikan aturan-aturan pembentuk dari
suatu kalimat dalam suatu bahasa. Dengan adanya tata
bahasa parsing akan mudah melakukan suatu pencarian
terhadap suatu aturan. Tata bahasa yang digunakan
adalah dalam bentuk bahasa Inggris

sentence noun phrase + verb phrase
noun phrase determiner + noun
verb phrase verb + noun phrase
determiner the, a
noun fish, cat, dog
verb see, chased

Dari grammar tersebut akan dapat menghasilkan suatu
kalimat yang sederhana misalnya saja
1. The cat chased a fish
2. The cat sees a fish
3. The cats sees a fish (non valid)
46
4. a cats chased a fish (non valid)
Kalau dibuatkan tree parser untuk kalimat ‖ The dog
chased the cat‖ adalah sebagai berikut
sentence
verb phrase
noun phrase determiner noun
the
cat
noun
the
noun phrase
determiner dog chased
verb

Gambar 1. Tree parsing

Sedangkan lexicon itu sendiri berisikan suatu kosa
kata, semakin lengkap kosa kata yang kita miliki
semakin baik sistem tersebut melakukan komunikasi.
Lexicon ini sangat tergantung sekali pada media
penyimpanan. Semakin besar media penyimpanannya
semakin banyak kosakata yang tersimpan.

2.2. Parsing
Parsing merupakan proses pengenalan sebuah string
masukan yang terdiri dari simbol-simbol apakah string
tersebut sesuai dengan tata bahasa yang berlaku atau
tidak. Parsing adalah proses menentukan apakah
skumpulan string yang dibuat dari token dapat dibuat
oleh sebuah grammar. Parser ini diharapkan dapat
melaporkan kesalahan sintak yang ada dalam bahasa
tersebut.

2.3. Left corner parsing
Ada tiga jenis parser yang biasa digunakan untuk
sebuah grammar. Universal parsing, seperti algoritma top
down parsing dan algoritma bottom up parsing dan lain-
lain. Left corner parsing merupakan salah satu
pendekatan dari bottom up parsing. Dasar teori pertama
kali ditemukan oleh Rosenkrantz and Lewis II pada
tahun 1970. Algoritma ini merupakan strategi parsing
menggunakan data secara bottom-up dan prediksinya
dilakukan secara top-down parsing. Metode ini mencoba
mengubah context free grammar menjadi grammar yang
apabila digunakan oleh top down parser mengikuti jalur
yang sama dengan left-corner parser. Parser ini
diharapkan dapat melaporkan kesalahan sintak yang ada
dalam bahasa tersebut.

2.4. Komponen left corner
Dalam penggunaan left-corner parsing akan
digunakan context free grammar sebagai bahasa yang
akan diolah oleh paser. Untuk left-corner parser ini
digunakan beberapa istilah dalam mengolah masukan
sehingga didapatkan hasil pola kalimat :
1. Grammar atau aturan bahasa yang berisi pola
kalimat bahasa Inggris yang berbentuk Context Free
Grammar. Pada grammar terdapat aturan produksi
yang akan diproses untuk dicari left cornernya.
Contoh aturan produksi :
S NP, VP…(1)
NP det N…….(2)
Dengan NP Noun Phrase atau Frasa kata benda
dan
VP Verb Phrase atau Frasa kata kerja
2. Stack yang berfungsi sebagai tempat penyimpanan
aturan produksi yang sedang dan akan diproses.
3. Right Hand Side (RHS) adalah sisi bagian kanan
dari aturan produksi. Maka right hand side dari
contoh aturan produksi di atas (1) NP, VP dan (2)
det N.
4. Left Hand Side (LHS) adalah sisi bagian kiri dari
aturan produksi. Maka left hand side dari contoh
aturan produksi di atas adalah (1) dan (2) NP.
Left corner item adalah item paling kiri yang berada
pada sisi bagian kanan dari sebuah aturan produksi.
Maka left corner item dari contoh aturan produksi di atas
(1) NP dan (2) det.
Contoh left corner


S1
A2 S3
b4 A5 B6 B7 B8
b9 A10 A11 a12 e13 b14
a15 a16
Left – Corner parsing : Basics
An example :
grammar rules : 1 : S AS
sentences : bbaaab
Order of nodes :
4 2 9 5 15 10 16 11 12
6 1 13 7 3 14 8
TD parse : 1 3 3 4 4 4 2 6 5
BU parse : 4 4 3 4 3 6 5 2 1
LC parse : 3 3 4 4 4 1 6 2 5
5 : B b 6 : B e
4 : A a 3 : A bAA
2 : S BB

Gambar 2. Left-corner parsing

III. PEMBAHASAN
Top-down parsing maupun bottom-up parsing
memiliki kekurangan dan kelebihan masing-masing.
Metode top-down parsing menangani grammar dengan
metode empty dan tidak dapat menangani grammar
dengan left recursion, sedangkan metode bottom-up
dapat menangani empty production.
Dengan demikian metode parsing yang terbaik adalah
menggabungkan kedua metode ini, diantaranya adalah
metode left-corner parsing serta earley‘s parsing. Cara
kerja left-corner parsing adalah mula-mula menerima
sebuah kata, menentukan jenis constituent apa yang
dimulai dengan jenis kata tersebut, kemudian melakukan
proses parsing terhadap sisa dari constituent secara top-
down parsing. Dengan demikian proses parsing dimulai
47
secara bottom-up parsing dan diakhiri dengan teknik top-
down parsing.
Cara kerja metode left-cornar dapat dilihat pada
gambar di bawah ini

START
N
D V N
S
NP VP
NP
D
The
cat the dog chased


Gambar 3. Cara kerja left-corner parsing

Untuk melakukan penelusuran terhadap kalimat di
atas kita dapat lihat dari implementasi di bawah ini yang
di implementasikan dalam bahasa turbo prolog.

DOMAINS
List = symbol*
PREDICATES
rule(symbol,list)
word(symbol,symbol)
link(symbol,symbol)
parse(symbol,list,list)
parse_list(list,list,list)
complete(symbol,symbol,list,list)

CLAUSES
% rules
rule (s, [np,vp]).
rule (np, [d,n]).
rule (vp, [v]).
rule (vp, [v,vp]).
rule (d, []).

% lexicon
word (d,the).
word (d,a).
word (n,dog).
word (n,dogs).
word (n,cat).
word (n,cats).
word (v,chases).
word (v,chased).
word (v,barked).

%links
link (np,s).
link (d,np).
link (d,s).
link (v,vp).
link (x,x).

% parse(C,S1,S)
% parse constituent dengan kategori c yg
dimulai dengan
% input string S1 dan berakhir dengan input
string S

parse(C,[Word|S2],S) :- word(W,Word),
link(W,C), complete(W,C,S2,S).

% parse(C1,S1,S)
% parsing list C1 dan hasilnya di S

parse_list ([C|C2],S1,S) :- parse(C,S1,S2),
parse_list (Cs,S2,S).
parse_list([],S,S).

% complete(W,C,S1,S)
% memastikan bahwa W ialah subconstituent
pertama dari C,

% kemudian melakukan left_corner parsing
terhadap sisa dari C

complete(C,C,S,S).

% jika c=w jangan lakukan apa-apa

complete(W,C,S1,S) :- rule(P,[W| Reset]),
parse_list(Rest,S1,S2), complete(P,C,S2,S).

Kalau program tersebut dijalankan akan keluar
? – parse ($,[the,dog,chased,cat], [])

Apabila kalimat tersebut sesuai dengan grammar maka
akan keluar YES.

IV. KESIMPULAN
Adapun kesimpulan yang penulis dapat dari penulisan
ini adalah :
a. Metode Left corner ini sangat dipengaruhi
oleh kata pertama yang muncul dan kata-kata
lainnya menjadi awal suatu frasa.
b. Pembagian kalimat yang digunakan
menggunakan tanda titik, apabila batasannya
ditambahkan menggunakan tanda koma maka
akan dapat dikenali banyak lagi.
c. Metode ini dipengaruhi oleh pemilihan jenis
kata yang benar untuk dapat mengnenali
aturan yang benar, bila jenis kata yang dipilih
sudah salah maka aturan yang dipilih juga
akan salah.
d. Banyaknya aturan produksi yang dibuat
sangat mempengaruhi banyaknya jenis pola
yang dapat dikenali. Untuk mengenali
kalimat-kalimat lain yang bukan merupakan
48
kalimat dasar diperlukan aturan-aturan
produksi yang lebih banyak lagi mencakup
semua pola kalimat yang mencakup kalimat
dasar dan pengembangannya.

Saran
1. Untuk lebih lanjutnya, sebaiknya proses
penganalisaan tata bahasa alami ini tidak hanya pada
tahapan penganalisaan saja tetapi dapat
dikembangkan ke tahapan-tahapan selanjutkan untuk
mendapatkan hasil yang lebih optimal.
2. Diharapkan untuk proses penganalisaan syntak ini
dapat dikembangkan untuk tata bahasa yang lainnya,
sehingga kita dapat melakukan proses penganalisaan
tidak hanya pada tata bahasa Inggris saja tetapi pada
semua tata bahasa yang ada.

REFERENSI
[1] Aho, AV, Jeffrey D. 1972,―The Theory Of
Parsing, Translation And Compiling, Printice Hall
Inc.
[2] D, J , Rosenkrantz and P, M , Lewis
II, ‖Deterministic Left Corner Parsing‖, In
conference Record Of 1970 eleventh Annual
Symposium on Switching and Automata Theory,
pages 139-152, Santa Monica, California, 28-30
Oktober 1970.
[3] Suciadi, James. Studi Analisis Metode-Metode
Parsing dan Interpretasi Semantik Pada Natural
Language Processing. Journal of Artificial
Intelligence Research.
[4] Surjadi, John H, Drs S Koentjoro, Drs Manaf
Asmoro Saputor ,1979 ―Accurate Brief And clear
English Grammar‖, Penerbit Indah.
[5] http://inggris.upi.edu/research/kesalahan-
sintaksis-dalam-tulisan-bahasa-inggris-
mahasiswa-dan-upaya-perbaikannya/ didownload
tanggal 12 Mei 2011
[6] www.sfs.uni-tuebingen.de/~fr/teaching/ws06.../
LeftCorner-laura.pdf didownload tanggal 14
Juni 2011
[7] www.cs.union.edu/~striegnk/courses/nlp-
with.../node53.html didownload tanggal 15 Juni
2011



49
Aplikasi Penyembunyian Pesan
Pada Berkas Digital
Jaidup Banjarnahor
#1
, Jamaluddin
*2
, Riken Pakapahan
#3
#
Mahasiswa Magister Teknik Informatika, Universitas Sumatera Utara
1
marbun2005@gmail.com
3
riken.pakpahan@yahoo.com
1
Staf Pengajar AMIK MBP Medan
2
Staf Pengajar Universitas Methodist Indonesia Medan
3
Staf Pengajar STMIK Kaputama Binjai

2
james_coleps@yahoo.com

Abstrak— Steganografi merupakan ilmu an seni yang
mempelajari teknik dan cara penyembunyian pesan rahasia
ke dalam suatu media sedemikian rupa sehingga pihak
ketiga tidak dapat melihat dan menyadari keberadaan
pesan rahasia tersebut.
Steganografi digital menggunakan media digital sebagai
wadah penampung, misalnya citra, suara, teks, dan video.
Sedangkan data rahasia yang disembunyikan dapat berupa
berkas apapun. Media yang telah disisipi data disebut
stegomessage. Proses penyembunyian data ke dalam media
disebut penyisipan (embedding), sedangkan proses
sebaliknya disebut ekstraksi.

Kata Kunci— Steganografi, embedded.
I. PENDAHULUAN
Steganografi atau stego biasanya berhubungan
dengan komunitas IT (Information Technology), Kata
steganografi (steganography) berasal dari bahasa Yunani
steganos, yang artinya 'tersembunyi/terselubung', dan
graphein, 'menulis' sehingga kurang lebih artinya
"menulis (tulisan) terselubung". Teknik ini meliputi
banyak sekali metoda komunikasi untuk
menyembunyikan pesan rahasia. Steganografi
didefinisikan oleh Markus Khan sebagai berikut,
―Steganografi adalah seni dan ilmu pengetahuan dalam
berkomunikasi dengan cara menyembunyikan
keberadaan dari komunikasi itu sendiri. Berbeda dengan
kriptografi, dimana musuh bisa mendeteksi, menangkap
dan memodifikasi pesan tanpa mampu mengganggu
keamanan dari kriptosistemnya, tujuan dari steganografi
adalah untuk menyembunyikan pesan didalam pesan
―yang tidak membahayakan‖ dengan cara tertentu untuk
menghindari musuh agar tidak dapat mendeteksi bahwa
adanya pesan tersebunyi.

II. APLIKASI STEGANOGRAPHY
A. Data Text
Text merupakan sekumpulan karakter terdiri dari
huruf-huruf, angka-angka (A-Z, a-z, 0-9 ), dan simbol-
simbol lainnya seperti %, &, ^, =, @, £, $, !,*, dan lain-
lain, dengan menggunakan kode ASCII setiap karakter
dari text berjumlah 8 bit atau 1 byte.
Teknik steganografi yang menggunakan teks sebagai
cover adalah hal yang menantang. Ini dikarenakan
berkas teks memiliki ukuran data yang kecil untuk bisa
digantikan dengan berkas rahasia. Dan kekurangan
lainnya adalah teks yang mengandung teknik
steganografi ini dengan mudah dapat diubah oleh pihak
yang tidak diinginkan dengan cara mengubah teks itu
sendiri maupun mengubah format dari teksnya
(misal .TXT menjadi .PDF). Ada beberapa metode yang
digunakan pada media teks ini yaitu, Line-Shift
Encoding, Word-shift Encoding dan Feature Coding.
Ketiganya merupakan metode encoding yang
membutuhkan berkas asli dan juga format aslinya untuk
dapat didecode atau diekstrak kembali.
B. Data Image
Citra / images adalah gambar digital dua dimensi
yang dihasilkan dari gambar analog, dibagi kedalam N
baris dan M kolom sehingga menjadi gambar diskrit
melalui proses sampling ( proses pengambilan sample
warna sebelum melakukan proses digitalisasi citra ), dan
persilangan antara baris dan kolom disebut dengan pixel.
Images diklasifikasikan ke dalam dua jenis yaitu :

1) Images Tetap
Images / gambar mati ( grafik statis ) yang tidak
mengalami proses animasi biasanya berupa format BMP,
JPG, JPEG, ICO dan lain-lain.
2) Images Bergerak/Animasi
Image bergerak adalah image tetap yang
diberikan efek seolah-olah seperti bergerak, atau sering
disebut animasi. Animasi adalah proses kejadian dalam
pembuatan film (movie), saat ini banyak film animasi
tiga dimensi daripada dua dimensi.
Steganografi pada gambar adalah metode yang paling
banyak digunakan secara luas didunia digital saat ini.
50
Hal ini dikarenakan keterbatasan kemampuan dari visual
atau Human Visual System (HVS). Format gambar
yang biasanya digunakan adalah format bitmap (bmp),
gif, pcx, jpeg dan format gambar lainnya.
Hampir semua plain teks, cipher teks, gambar dan
media lainnya dapat diencode kedalam aliran bit untuk
disembunyikan didalam gambar digital. Perkembangan
dari metoda ini sangat pesat, didukung dengan semakin
canggihnya komputer grafik yang powerful, dan
software steganografi yang sekarang sudah banyak
tersebar luas di internet. Pendekatan yang paling sering
dilakukan pada media jenis ini adalah : Least Significant
Bit Insertion, Masking and Filtering dan Algorithm and
Transformation. Sebagai catatan, masih ada banyak lagi
teknik-teknik yang digunakan untuk encoding pada
media gambar ini.
C. Citra Digital
Citra merupakan fungsi intensitas dalam bidang
dua dimensi. Intensitas yang dimaksud berasal dari
sumber cahaya. Pada hakekatnya citra yang dilihat oleh
mata manusia terdiri atas berkas-berkas cahaya yang
dipantulkan oleh benda-benda di sekitar kita.
Suatu citra digital adalah suatu gambar kontinu
yang diubah dalam bentuk diskrit, baik koordinat
maupun intensitas cahayanya. Kita dapat menganggap
suatu citra digital sebagai suatu matriks dimana indeks
baris dan kolomnya menyatakan koordinat sebuah titik
pada citra tersebut dan masing-masing elemennya
menyatakan intensitas cahaya pada titik tersebut. Suatu
titik pada sebuah citra digital sering disebut sebagai
―image-element‖ (elemen citra) ―picture-element‖
(elemen gambar) ataupun ―pixel‖.
Untuk mengubah suatu citra kontinu ke dalam
suatu representasi numerik dilakukan dengan proses
digitalisasi oleh suatu digitizer, misalnya scanner,
sehingga citra ini dapat diproses oleh sebuah komputer.
Digitalisasi sebuah citra dilakukan baik
terhadap ruang (koordinat (x,y)), maupun terhadap skala
keabuannya (f(x,y)). Proses digitalisasi koordinat (x,y)
dikenal sebagai ―pencuplikan citra‖ (image sampling),
sedangkan proses digitalisasi skala keabuan f(x,y)
disebut sebagai ―kuantisasi derajat keabuan‖ (grey-level
quantization).
Sebuah citra kontinu f(x,y) akan didekati oleh
cuplikan-cuplikan yang seragam jaraknya dalam bentuk
matriks MxN, M adalah baris dan N adalah kolom. Nilai
elemen-elemen matriks menyatakan derajat keabuan citra,
sebangkan posisi elemen tersebut (dalam baris dan
kolom) menyatakan koordinat titik-titik (x,y) dari citra.
Bentuk matriks di bawah ini dikenal sebagai suatu
citra digital.


Matriks di atas dapat disajikan dalam bentuk 2 dimensi
dalam sistem koordinat Cartesius dengan memutar posisi
matriks di atas sejauh 90° derajat searah jarum jam.


Sedangkan derajat keabuan [0,L] dibagi kedalam G
selang dengan panjang selang yang sama, yaitu: G =
2m dimana m adalah kedalaman bit dan m bilangan
bulat positif, bila hal ini diterapkan pada penyimpanan
maka sebuah citra digital membutuhkan sejumlah b bit,
dengan :


Dalam suatu proses pencuplikan dan kuantisasi sering
terjadi permasalahan, yaitu jumlah cuplikan dan derajat
keabuan yang diperlukan untuk memperoleh suatu citra
yang ―baik‖, makin tinggi nilai MxN dan m, maka citra
kontinu f(x,y) akan makin didekati oleh citra digital yang
dihasilkan. Tapi hal ini seringkali dibatasi oleh
kemampuan hardware dari suatu komputer.

D. Bitmap (BMP)
BMP atau DIB (device independent bitmap), adalah
sebuah format grafik yang digunakan secara internal oleh
microsoft windows dan subsistem OS/2, dan sering
digunakan sebagai format file grafik sederhana pada
flatform-flatform tersebut.
Gambar secara umum disajikan dalam ketajaman
warna 2 (1-bit), 16 (4-bit), 256 (8-bit), 65.536 (16-bit),
16.7 juta (24-bit) warna (bit-bit ini mempresentasi bit-bit
per-pixel). Sebuah gambar 8-bit juga dapat dirubah ke
warna grayscale disamping warna indeks. Sebuah
channel alpha (untuk warna transparan) boleh disajikan
dalam file terpisah, dimana sama dengan gambar
grayscale. Versi 32-bit dengan channel alpha terintegrasi
telah diperkenalkan oleh Windows XP dan digunakan
untuk sistem login dan theme.
Umumnya file BMP menggunakan model warna
RGB. Pada model ini sebuah warna terbentuk dari
campuran intensitas yang berbeda (bervariasi dari 0
51
sampai 255), warna merah (R), hijau (G), dan biru (B).
Dengan kata lain sebuah warna akan didefinisikan
menggunakan 3 nilai, yaitu R, G dan B. Blok dari bit
mendeskripsikan gambar secara pixel per pixel. Pixel
disajikan mulai dari sudut kiri bawah berjalan ke kekiri
ke kanan dan kemudian baris per baris dari bawah ke atas.
Setiap Pixel dideskripsikan menggunakan satu atau lebih
bit.
E. Data Suara
Suara (Audio) atau bunyi merupakan sebuah sinyal
analog yang dihasilkan oleh getaran yang membentuk
sebuah gelombang longitudinal dengan frekuensi 20 hz
sampai 20.00 hz.


Gambar 1 Suara dalam bentuk sinyal analog
Gelombang suara yang masih berbentuk sinyal
analog dapat diubah kedalam bit-bit digital menjadi
sinyal digital, melalui proses sampling dan digitalisasi.
1) WAV
File audio ini diciptakan oleh Microsoft. File ini
menjadi standar file audio dalam Personal Computer(PC)
baik untuk sistem operasi, game, maupun file suara lain
yang kualitas suaranya setara dengan CD. File ini
memiliki ukuran yang cukup besar, karena suara yang
disimpan dalam format ini tidak mengalami proses
kompresi (raw data). Meski buatan Microsoft, bukan
berarti file ini tidak dapat dijalankan oleh sistem operasi
selain Windows. Setidaknya, Linux dan Macintosh juga
dapat menjalankan file ini.
2) AIFF
Merupakan audio digital tidak terkompresi buatan
Macintosh. CD audio komersial umumnya menggunakan
format Audio Interchange File (AIFF), salah satu format
audio digital dengan kualitas terbaik. Wajar kalau ukuran
file dalam format ini rata-rata cukup besar. Untuk lagu
berdurasi tiga menit saja, file .AIFF dapat menggunakan
ruang hard disk sebesar 30 sampai 50 MB.
3) MP3
Ditemukan tahun 1992, MP3 merupakan file audio
terkompresi pertama yang memiliki kualitas bagus dan
berukuran kecil, dimana pemadatan file MP3 dilakukan
dengan cara membuang bagian-bagian suara yang tidak
dapat didengar telinga manusia. Hasilnya, file MP3 jauh
lebih kecil hingga skala 12:1. Misalnya, suara berdurasi 3
menit yang tadinya berukuran 30 MB, jika di-MP3-kan
bisa susut jadi 2,5 MB saja. Kecilnya ukuran MP3
membuatnya menjadi file audio favorit yang digunakan
dalam internet.
4) WMA
Windows Media Audio (WMA) sebetulnya
sudah diperkenalkan sejak akhir 1990. Namun, pamornya
masih kalah dibanding MP3. Akhir-akhir ini, WMA
mulai merebak di kalangan pengguna Windows,
terutama dihubungkan dengan hak cipta. WMA
memiliki keunggulan dalam melindungi file audio.
WMA tidak bisa dimainkan atau disalin dengan
sembarangan. Sama seperti MP3, WMA juga
menggunakan bit rate 128 Kbps.
III. PENYISIPAN PESAN PADA CITRA
Metode yang digunakan untuk penyembunyian pesan
rahasia pada aplikasi ini adalah dengan cara menyisipkan
pesan ke dalam bit rendah ( least significant bit ) pada
data pixel yang menyusun file gambar BMP 24 bit
tersebut.
Pada file gambar BMP 24 bit setiap pixel pada gambar
terdiri dari susunan tiga warna yaitu merah,hijau, biru
( RGB ) yang masing-masing disusun oleh bilangan 8 bit
( 1 byte ) dari 0 sampai 255 atau dengan format biner
00000000 sampai 11111111.
Informasi dari warna biru berada pada bit pertama
sampai bit delapan, dan informasi warna hijau berada
pada bit sembilan sampai dengan bit 16, sedangkan
informasi warna merah berada pada bit 17 sampai
dengan bit 24.
Metode penyisipan LSB (least significant bit) ini
adalah menyisipi pesan dengan cara mengganti bit ke 8,
16 dan 24 pada representasi biner file gambar dengan
representasi biner pesan rahasia yang akan
disembunyikan. Dengan demikian pada setiap pixel file
gambar BMP 24 bit dapat disisipkan 3 bit pesan
misalnya terdapat data raster original file gambar adalah
sebagai berikut:
00100111 11101001 11001000
00100111 11001000 11101001
11001000 00100111 11101001
Sedangkan representasi biner huruf A adala 01000001,
dengan menyisipkannya kedalam pixel atas maka akan
dihasilkan
00100110 11101001 11001000
00100110 11001000 11101000
11001000 00100111 11101001
Terlihat pada bit ke-8, 16 dan 24 diganti dengan
representasi biner huruf A, dan hanya tiga bit rendah
yang berubah (cetak tebal), untuk penglihatan mata
manusia sangatlah mustahil untuk dapat membedakan
warna pada file gambar yang sudah diisi pesan rahasia
jika dibandingkan dengan file gambar asli sebelum
disisipi dengan pesan rahasia.
52
Sebelum melakukan penggantian bit LSB, semua data
citra yang bukan tipe 24-bit diubah menjadi format 24-
bit. Jadi, setiap dua pixel sudah mengandung komponen
RGB. Setiap byte di dalam data bitmap diganti satu bit
LSB-nya dengan bit data yang disembunyikan. Jika byte
tersebut merupakan komponen hijau (G), maka
penggantian 1 bit LSB-nya hanya mengubah sedikit
kadar warna hijau, dan perubahan ini tidak terdeteksi
oleh mata manusia.
Pada citra 24-bit, karena data bitmap pada citra 24-bit
sudah tersusun atas komponen RGB, maka tidak perlu
dilakukan perubahan format. Setiap byte di dalam data
bitmap diganti satu bit LSB-nya dengan bit data yang
akan disembunyikan.


Gambar 2. Embedded pesan

A. Ekstraksi Pesan
Tahapan untuk mengambil kembali pesan yang
disisipkan pada proses embedding sebelumnya dalam
keadaan utuh yaitu mengubah setiap pixel stego citra
mejadi raster data agar memperoleh bit rendah.
Kemudian bit rendah setiap pixel dikumpulkan lagi
hingga terbentuk bit stream. Arah pembacaan adalah atas
ke bawah da kiri ke kanan, dengan 8 bit stream
merepresentasikan sebuah karakter. Setelah semua bit
stream di ubah menjadi karakter, maka akan diperoleh
pesan tersembunyi di antara kumpulan karakter.
Proses ekstraksi pesan, yang skema kerjanya dapat
dilihat pada Gambar 2, diawali dengan pembangkitan
bilangan semu acak menggunakan algoritma LCG dan
kunci yang sama dengan kunci pada proses penyisipan.
Setelah itu dilakukan dekompresi citra GIF.
Setelah citra didekompresi, dilakukan pembacaan
informasi pada comment extension yang merupakan
fitur pada citra GIF yang memperbolehkan penggunanya
menambahkan informasi dalam bentuk ASCII ke dalam
berkas. Setelah informasi dibaca, dilakukan penelusuran
piksel sesuai dengan bilangan semu acak yang
dibangkitkan. Terakhir dilakukan pencarian nilai paritas
dari piksel tersebut dan pengambilan pesan dengan cara
menggabungkan nilai paritas dari piksel yang disisipkan
pesan.


Gambar 3 Ekstrasi pesan
IV. PENYISIPAN PESAN PADA AUDIO
Penyembunyian data pada audio merupakan teknik
yang paling menantang pada steganografi ini. Hal ini
disebabkan Human Auditory System (HAS) memiliki
jangkauan yang dinamis. HAS memiliki kemampuan
mendengar lebih dari satu sampai 1 miliar. Dan
jangkauan frequensi lebih dari satu hingga seribu.
Auditory System ini juga sangat peka pada gangguan
suara (noise) yang halus sekalipun. Sedikit saja terdapat
gangguan pada sebuah berkas audio maka dengan mudah
akan terdeteksi. Satu-satunya kelemahan yang dimiliki
HAS dalam membedakan suara adalah kenyataan bahwa
suara keras bisa menenggelamkan suara pelan. Terdapat
dua konsep yang harus dipertimbangkan sebelum
memilih metoda mana yang akan dipakai. Yaitu format
digital audio dan media transmisi dari audio.
Ada 3 format audio digital yang paling sering
digunakan yaitu Sample Quantization, Temporal
Sampling Rate dan Perceptual Sampling. Sample
Quantization merupakan 16-bit linear sampling
architecture yang digunakan pada audio format seperti
(.WAV dan .AIFF). Temporal Sampling Rate digunakan
pada frequensi tertentu (dalam KHz) sebagai sampel dari
audionya. Umumnya, semakin tinggi sampling rate
maka semakin besar pula ukuran data yang
digunakannya. Audio format yang terakhir adalah
Perceptual Sampling. Format ini mengubah statistik dari
audio secara drastis dengan melakukan encoding hanya
pada bagian yang didengar saja. Artinya mengubah
sinyal namun tetap menjaga suara. Format ini digunakan
oleh digital audio yang paling terkenal pada saat ini yaitu
MP3.
A. Formula LSB
Dari keempat teknik tersebut, penulis ingin
memfokuskan penyembunyian informasi pada audio
dengan metode LSB. Mengubah nilai LSB tidak akan
menghasilkan perubahan yang signifikan pada media
53
digital. Tanpa perbandingan langsung antara file wav
original dan file wav terlabel, sulit untuk mengatakan
bahwa ada sesuatu yang berubah.
Menyembunyikan data biasanya dilakukan dengan
mengubah beberapa informasi yang kurang esensial di
dalam cover audio. Salah satu pendekatan adalah dengan
menggunakan LSB dari setiap sample di dalam cover
audio dalam tujuannya untuk menyembunyikan satu bit
dari informasi rahasia, dan hal ini tidak memberikan efek
yang sangat besar terhadap cover audio.
Misalkan sebuah cover ( C ) dan informasi rahasia
( M ), sebuah skema steganography harus mengandung
fungsi FE, dan untuk mendapatkan kembali informasi
menggunakan fungsi FE
-1
, seperti di bawah ini :

Dimana K adalah sebuah kunci rahasia. Dari persamaan
dapat dilihat FE
-1
mengekstrak informasi yang di-
embedding pada cover audio C yang sebelumnya
disembunyikan oleh FE.
Untuk menyembunyikan sebuah informasi M di dalam
cover audio C menggunakan algoritma LSB, embedding
prosesnya terdiri atas pemilihan sebuah subset
( j1 ,....,j
1(m)
) dari elemen cover dan operasi substitusi
dengan menukar LSB tiap sample C
ji
dengan m
i
,
dimana m
i
bisa 0 atau 1. Operasi substitusi merubah
lebih dari satu bit dari cover audio. Pada proses ekstrak,
LSB elemen cover yang telah dipilih akan di ekstrak dan
disusun untuk mendapatkan kembali informasi rahasia.
B. LSB (Least Significant Bit)
LSB (Least Significant Bit) Coding. Metoda ini
merupakan metoda yang sederhana. Metoda ini akan
mengubah nilai LSB (Least Significant Bit) komponen
luminansi atau warna menjadi bit yang bersesuai dengan
bit label yang akan disembunyikan. Memang metoda ini
akan menghasilkan video rekontruksi yang sangat mirip
dengan aslinya, karena hanya mengubah nilai bit terakhir
dari data. Metoda ini paling mudah diserang, karena bila
orang lain tahu maka tinggal membalikkan nilai dari
LSB-nya maka data label akan hilang seluruhnya.
1. Penyembunyian data dilakukan dengan mengganti
bit-bit data di dalam segmen teks dengan bit-bit data
rahasia. Metode yang paling sederhana adalah metode
LSB (Least Significant Bit Modification).
2. Pada susunan bit di dalam sebuah byte (1 byte = 8
bit), ada bit yang paling berarti (most significant bit
atau MSB) dan bit yang paling kurang berarti (least
significant bit atau LSB).
3. Perhatikan contoh sebuah susunan bit pada sebuah
byte:



Bit yang cocok untuk diganti adalah bit LSB, sebab
perubahan tersebut hanya mengubah nilai byte satu
lebih tinggi atau satu lebih rendah dari nilai
sebelumnya. Misalkan 6 byte tersebut menyatakan
warna merah, maka perubahan satu bit LSB tidak
mengubah warna merah tersebut secara berarti. Lagi
pula, mata manusia tidak dapat membedakan
perubahan yang kecil.
4. Misalkan segmen data citra sebelum perubahan:



5. Untuk memperkuat teknik penyembunyian data, bit-
bit data rahasia tidak digunakan mengganti byte-byte
yang berurutan, namun dipilih susunan byte secara
acak. Misalnya jika terdapat 50 byte dan 6 bit data
yang akan disembunyikan, maka maka byte yang
diganti bit LSB-nya dipilih secara acak, misalkan
byte nomor 36, 5, 21, 10, 18, 9.
6. Bilangan acak dapat dibangkitkan dengan program
pseudorandom- number-generator (PRNG). PRNG
menggunakan kunci rahasia untuk membangkitkan
posisi pixel yang akan digunakan untuk
menyembunyikan bit-bit.
7. PRNG dibangun dalam sejumlah cara, salah satunya
dengan menggunakan algoritma kriptografi berbasis
blok (block cipher). Tujuan dari enkripsi adalah
menghasilkan sekumpulan bilangan acak yang sama
untuk setiap kunci enkripsi yang sama. Bilangan acak
dihasilkan dengan cara memilih bit-bit dari sebuah
blok data hasil enkripsi.

V. KESIMPULAN
Untuk penyembunyian pesan supaya lebih baik adalah
memadukan cryptografi dan steganografi dengan
demikian data/informasi yang disipkan dalam media
digital adalah data yang sudah di enkripsi.



54
DAFTAR PUSTAKA
[1] Johnson, Neil F. 1998. Exploring Steganography:
Seeing the Unseen. IEEE.
[2] Graphics Interchange Format™. 1989. Ohio:
CompuServe Incorporated.
[3] Fridrich, Jiri. 1998. A New Steganographic Method
for Palette-Based Images. Center for Intelligent
Systems, SUNY Binghamton.
55
Perancangan Pengiriman Pesan Suara Dengan
Kriptografi Metode Government Standard (GOST)
Auliana Nasution
#1
Program Studi PascaSarjana Teknik Informatika, Universitas Sumatera Utara
Jl. Universitas No. 24 A Kampus USU Medan
tary_im03t@yahoo.co.id

Abstrak— Salah satu masalah yang terus berkembang
sejalan dengan berkembangnya teknologi komputer adalah
keamanan suara yang ditransmisikan melalui suatu
jaringan komunikasi. Ada beberapa cara melakukaan
pengamanan suara yang melalui suatu saluran, salah satu
diantaranya adalah kriptografi. Dalam kriptografi banyak
ditemukan metode-metode kriptografi yang salah satunya
adalah metode GOST. Metode GOST adalah salah satu
metode rahasia dalam pengiriman pesan, yang merupakan
algoritma blok cipher. Proses dalam metode ini terdiri diri
pembentukan kunci yang sama untuk enkripsi dan
deskripsi untuk pengamanan data suara. Dalam metode ini
pembuatan kunci dilakukan dengan sangat sederhana
sedangkan untuk enkripsi dan deskripsinya sangat panjang
sehingga mempunyai kecepatan yang cukup baik.

Kata Kunci— Kriptografi, GOST.
II. PENDAHULUAN
Kemajuan teknologi selalu diikuti dengan sisi buruk
dari teknologi itu sendiri. Salah satunya adalah rawannya
keamanan data sehingga menimbulkan tantangan dan
tuntutan akan tersedianya suatu sistem pengamanan data
yang sama canggihnya dengan kemajuan teknologi
komputer itu sendiri. Ini adalah latar belakang
berkembangnya sistem keamanan suara untuk
melindungi suara yang ditransmisikan melalui suatu
jaringan komunikasi.
Sekarang ini keamanan yang efektif dari suatu sistem
sangat diperlukan untuk kegiatan bisnis sehari-hari.
Sistem yang aman bisa memberikan tingkat kepercayaan
yang tinggi kepada pengguna sehingga bisa memberi
nilai tambah dan daya guna bagi sistem itu sendiri.
Pengguna akan merasa nyaman dan aman ketika
berhubungan dengan sistem yang bisa mengamankan
data pengguna dari penyerang.
Ada beberapa cara melakukan pengamanan suara
yang melalui suatu saluran, salah satu diantaranya adalah
kriptografi. Dalam kriptografi banyak ditemukan
metode-metode kriptografi salah satunya adalah metode
GOST, GOST merupakan singkatan dari
―Gosudarstvennyi Standart‖ atau ―Governnment
Standart‖. Algoritma GOST, Algoritma GOST
merupakan salah satu dari algoritma kunci. Sampai saat
ini, algoritma GOST masih dipercaya sebagai metode
penyandian, kriptografi GOST menggunakan kunci yang
sama untuk enkripsi dan dekripsi.
Suara yang akan dikirimkan dan belum mengalami
penyandian dikenal dengan isitilah plaintext, dan setelah
disamarkan dengan suatu cara penyandian, maka
plaintext ini akan berubah menjadi ciphertext.
III. DEFINISI KRIPTOGRAFI
Secara etimologi (ilmu asal usul kata), kata
kriptografi berasal dari gabungan dua kata dalam bahasa
Yunani yaitu ―kriptos‖ dan ―graphia‖. Kata kriptos
digunakan untuk mendeskripsikan sesuatu yang
disembunyikan, rahasia atau misterius. Sedangkan kata
graphia berarti tulisan. Kriptografi didefinisikan sebagai
ilmu dan pelajaran untuk tulisan rahasia dengan
pertimbangan bahwa komunikasi dan data dapat
dikodekan untuk mencegah dari mata-mata atau orang
lain yang ingin mengetahui isinya, dengan menggunakan
kode-kode dan aturan-aturan tertentu dan metode lainnya
sehingga hanya orang yang berhak yang dapat
mengetahui isi pesan sebenarnya.
Dalam menjaga kerahasiaan data, kriptografi
mentransformasikan data jelas (plaintext) ke dalam
bentuk data sandi (ciphertext) yang tidak dapat dikenali.
Ciphertext inilah yang kemudian dikirimkan oleh
pengirim (sender) kepada penerima (receiver). Setelah
sampai di penerima, ciphertext tersebut ditranformasikan
kembali ke dalam bentuk plaintext agar dapat dikenali.
Dalam arti lain, cryptography adalah seni dan ilmu
dalam mengamankan pesan. Dalam dunia kriptografi,
pesan disebut plaintext atau cleartext. Proses untuk
menyamarkan pesan dengan cara sedemikian rupa untuk
menyembunyikan
isi aslinya disebut enkripsi. Pesan yang telah dienkripsi
disebut ciphertext. Proses pengembalian sebuah
ciphertext ke plaintext disebut dekripsi.


Gambar 1 Konsep Dasar dari Enkripsi dan Dekripsi
Cryptographer adalah orang yang mempraktekkan
ilmu kriptografi, sedangkan cryptoanalysts adalah orang
yang mempraktekkan kriptanalisis, seni dan ilmu dalam
memecahkan ciphertext.
56
Plaintext adalah pesan yang dirahasiakan yang dapat
berupa bit stream, file text, digital video emage atau lebih
singkatnya Plaintetx adalah data binary (Aquirre
Jorge,2005).
Ciphertext adalah hasil dari poses enkripsi juga
berupa data binary yang kadang-kadang memiliki ukuran
yang sama dengan plaintext, lebih kecil atau lebih besar
dari plaintext (Aquirre Jorge, 2005).
Aturan fundamental kriptografi yaitu seseorang harus
mengasumsikan bahwa seorang kriptoanalis menguasai
algoritma umum enkripsi yang digunakan. untuk
menjaga kerahasiaan. Sistem kriptografi atau Algoritma
Kriptografi adalah sebuah algoritma kriptografi ditambah
semua kemungkinan plaintext, ciphertext dan kunci.
IV. SEJARAH KRIPTOGRAFI
Kriptografi adalah ilmu yang mempelajari bagaimana
suatu pesan atau dokumen kita aman, tidak bisa dibaca
oleh pihak yang tidak berhak. Dalam perkembangannya,
kriptografi juga digunakan untuk identifikasi pengirim
pesan dengan tanda tangan digital dan keaslian pesan
dengan sidik jari digital (fingerprint). Kriptografi
mempunyai sejarah yang sangat panjang.
Kriptografi mulai digunakan dan disumbangkan
pemikirannya pertama kali oleh empat kelompok, yakni
militer, korps diplomatik, diarist, dan orang yang sedang
jatuh cinta. Dari keempat kelompok orang tersebut,
militer telah memainkan peranan yang paling penting
dan telah mengembangkan bidang ini. Di dalam
organisasi militer, pesan-pesan yang telah di-encode
secara tradisional diberikan kepada pekerja kode berupah
rendah untuk selanjutnya dienkrip dan di transmisikan.
Tugas ini diusahakan agar tidak dilakukan oleh spesialis
yang elit. Kendala tambahan telah menjadi kesulitan
dalam peralihan yang cepat dari satu algoritma
kriptografi ke algoritma lainnya, karena hal ini
memerlukan pelatihan orang dalam jumlah banyak.
Keadaan yang bertolak belakang ini telah membentuk
model enkripsi.
Secara singkat, sejarah perkembangan kriptografi
dapat dijabarkan seperti berikut,
1. Tahun 1900 SM, pertama kali digunakannya teknik
transformasi cyptography di ―tomb inscription‖,
merupakan penggunaan kriptografi yang pertama
kali diketahui.
2. Tahun 475 SM, Sparta menggunakan kriptografi
untuk komunikasi dan juga merancang alat untuk
mengenkripsi (skytale) yang menghasilkan
transposition cipher.
3. Tahun 350 SM, ―Aenas The Tactician‖
mengeluarkan tulisan pertama mengenai keamanan
komunikasi dan kriptografi.
4. Tahun 60 SM, Julius Caesar menjadi orang yang
pertama kali yang diketahui menggunakan
substitution cipher.
5. Tahun 1412, ―Treatise‖ tertua yang diketahui dalam
kriptanalis yang diterbitkan oleh Alkalkas Handi
(Mesir).
6. Tahun 1917, Edward Hugh Hibern mengembangkan
mesin motor yang pertama.
7. Tahun 1971, IBM mengembangkan teknik enkripsi
Lucifer.
8. Tahun 1975, DES diumumkan (disetujui tahun
1977).
9. Tahun 1976, presentasi terbuka pertama tentang
konsep public key oleh Diffie dan Helman.
10. Tahun 1977, Merkle mengembangkan algoritma
knapsack dan memberikan hadiah $100 bagi yang
dapat memecahkan kuncinya (algoritma dengan satu
kali pengulangan). Algoritma Rivest-Shamir-
Aldeman (RSA) diumumkan kepada umum.
IV. ALGORITMA KRIPTOGRAFI
Kriptografi merupakan bentuk algoritma untuk
mengacak pesan dan mengembalikan acakan pesan
tersebut, Algoritma kriptografi adalah fungsi matematika
yang digunakan untuk enkripsi dan dekripsi. Untuk
mengenkrip sebuah pesan plaintext, terapkan algoritma
enkripsi ke pesan plaintext tersebut. Untuk mendekrip
sebuah pesan ciphertext, terapkan algoritma dekripsi ke
pesan ciphertext tersebut.
Algoritma tidak dapat diandalkan kerahasiaannya.
Dengan menggunakan algoritma yang dipublikasikan,
cryptographer bebas melakukan konsultasi dengan
sejumlah cryptologis akademis yang berkeinginan untuk
menembus sistem sehingga mereka dapat
mempublikasikan tulisan yang menunjukkan bagaimana
cerdiknya mereka. Bila setelah algoritma itu
dipublikasikan selama 5 tahun dan tidak ada seorang
ahlipun yang berhasil memecahkannya, maka mungkin
algoritma tersebut cukup solid.
Kerahasiaan sebenarnya terletak pada kunci dan
panjang kunci itu merupakan masalah penting dalam
rancangan. Ambil suatu kunci kombinasi yang sederhana.
Prinsip umumnya adalah di mana seseorang
memasukkan digit secara berurutan. Setiap orang
mengetahui hal ini, namun kunci merupakan rahasia.
Dengan panjang kunci yang dua digit berarti bahwa
terdapat seratus kemungkinan. Panjang kunci tiga digit
mempunyai seribu kemungkinan, dan panjang kunci
enam digit mempunyai sejuta kemungkinan. Semakin
panjang kunci, semakin tinggi faktor kerja yang harus
dilakukan cryptanalyst. Faktor kerja untuk menembus
sistem dengan pencarian kunci yang melelahkan
merupakan eksponensial terhadap panjang kuncinya.
Kerahasiaan berasal dari adanya algoritma yang kuat dan
dipublikasikan dengan kunci yang panjang.
Syarat-syarat algoritma kriptografi yang baik antara
lain :
1. Keamanan sistem terletak pada kerahasiaan kunci
dan bukan pada kerahasiaan algoritma yang
digunakan.
57
2. Algoritmanya memiliki ruang kunci (keyspace) yang
besar.
3. Menghasilkan ciphertext yang terlihat acak dalam
seluruh tes statistik yang dilakukan terhadapnya.
4. Mampu menahan seluruh serangan yang telah
dikenal sebelumnya.
Namun demikian perlu diperhatikan bahwa bila suatu
algoritma kriptografi berhasil memenuhi seluruh
karakteristik di atas belum tentu merupakan sistem yang
baik. Banyak algoritma kriptografi lemah yang terlihat
baik pada awalnya. Kadang kala untuk menunjukkan
bahwa suatu algoritma kriptografi kuat atau baik dapat
dilakukan dengan menggunakan pembuktian matematika.
Hingga saat ini masih banyak yang menggunakan
algoritma Kriptografi yang relatif mudah dibuka,
alasannya adalah mereka tidak mengetahui sistem lain
yang lebih baik serta kadang kala terdapat motivasi yang
kurang untuk menginvestasikan seluruh usaha yang
diperlukan untuk membuka suatu sistem.
V. METODE GOST
GOST merupakan singkatan dari ―Gosudarstvennyi
Standard‖ atau ―Government Standard‖. Metoda GOST
merupakan suatu algoritma block cipher yang
dikembangkan oleh seorang berkebangsaan Uni Soviet.
Metoda ini dikembangkan oleh pemerintah Uni Soviet
pada masa perang dingin untuk menyembunyikan data
atau informasi yang bersifat rahasia pada saat
komunikasi. Algoritma ini merupakan suatu algoritma
enkripsi sederhana yang memiliki jumlah proses
sebanyak 32 round (putaran) dan menggunakan 64 bit
block cipher dengan 256 bit key. Metoda GOST juga
menggunakan 8 buah S-Box yang berbeda-beda dan
operasi XOR serta Left Circular Shift.
Kelemahan GOST yang diketahui sampai saat ini
adalah karena key schedule-nya yang sederhana sehingga
pada keadaan tertentu menjadi titik lemahnya terhadap
metoda kriptanalisis seperti Related-key Cryptanalysis.
Tetapi hal ini dapat diatasi dengan melewatkan kunci
kepada fungsi hash yang kuat secara kriptografi seperti
SHA-1, kemudian menggunakan hasil hash untuk input
inisialisasi kunci. Kelebihan dari metoda GOST ini
adalah kecepatannya yang cukup baik, walaupun tidak
secepat Blowfish tetapi lebih cepat dari IDEA.
Komponen dari metoda GOST antara lain,
a. Key Store Unit (KSU) menyimpan 256 bit string
dengan menggunakan 32 bit register (K0, K1, …,
K7).
b. Dua buah 32 bit register (R1, R2).
c. 32 bit adder modulo 2
32
(CM1).
d. Bitwise Adder XOR (CM2).
e. Substitusion block (S) yaitu berupa 8 buah 64 bit
S-Box.
f. Rotasi Left shift register (R) sebanyak 11 bit.



A. Proses Pembentukan Kunci
Proses pembentukan kunci dapat dilihat pada
penjabaran berikut ini,
a. Input key berupa 256 bit key dengan perincian k1,
k2, k3, k4, …, k256.
b. Input key tersebut dikelompokkan dan dimasukkan
ke dalam 8 buah KSU dengan aturan seperti
berikut,
K0 = (k32, …, k1)
K1 = (k64, …, k33)
K2 = (k96, …, k65)
K3 = (k128, …, k97)
K4 = (k160, …, k129)
K5 = (k192, …, k161)
K6 = (k224, …, k193)
K7 = (k256, …, k225)
B. Proses Enkripsi
Proses enkripsi dari metoda GOST untuk satu putaran
(iterasi) dapat dapat dilihat pada penjabaran berikut ini,
1. 64 bit plaintext dibagi menjadi 2 buah bagian 32
bit, yaitu L
i
dan R
i
.
Caranya : Input a1(0), a2(0), …, a32(0), b1(0), …,
b32(0)
R0 = a32(0), a31(0), …, a1(0)
L0 = b32(0), b31(0), …, b1(0)
2. (R
i
+ K
i
) mod 2
32
. Hasil dari penjumlahan modulo
2
32
berupa 32 bit.
3. Hasil dari penjumlahan modulo 2
32
dibagi menjadi
8 bagian, dimanan masing-masing bagian terdiri
dari 4 bit. Setiap bagian dimasukkan ke dalam
tabel S-Box yang berbeda, 4 bit pertama menjadi
input dari S-Box pertama, 4 bit kedua menjadi S-
Box kedua, dan seterusnya.
S-Box yang digunakan pada metoda GOST adalah
seperti berikut :

TABEL 1
S-BOX DARI METODA GOST
Tabel
S-Box
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
S-Box 0 4 10 9 2 13 8 0 14 6 11 1 12 7 15 5 3
S-Box 1 14 11 4 12 6 13 15 10 2 3 8 1 0 7 5 9
S-Box 2 5 8 1 13 10 3 4 2 14 15 12 7 6 0 9 11
S-Box 3 7 13 10 1 0 8 9 15 14 4 6 12 11 2 5 3
S-Box 4 6 12 7 1 5 15 13 8 4 10 9 14 0 3 11 2
S-Box 5 4 11 10 0 7 2 1 13 3 6 8 5 9 12 15 14
S-Box 6 13 11 4 1 3 15 5 9 0 10 14 7 6 8 2 12
S-Box 7 1 15 13 0 5 7 10 4 9 2 3 14 6 11 8 12

Cara melihat dari S-Box yaitu input biner diubah
menjadi bilangan desimal dan hasilnya menjadi
urutan bilangan dalam S-Box.


58
TABEL 2
PENJELASAN CARA KERJA S-BOX DARI METODA GOST
Posisi 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
S-Box 1 4 10 9 2 13 8 0 14 6 11 1 12 7 15 5 3

Contoh, jika data input ke S-Box adalah 5 maka
dicari data pada posisi ke-5. Output yang
dihasilkan adalah 8.
4. Hasil yang didapat dari substitusi ke S-Box dan
digabungkan kembali menjadi 32 bit dan
kemudian dilakukan rotasi left shift sebanyak 11
bit.
5. R
i+1
= R
i
(hasil dari rotate left shift) XOR L
i
.
6. L
i+1
= R
i
sebelum dilakukan proses.
Proses penjumlahan modulo 2
32
, S-Box, Rotate Left Shift
dilakukan sebanyak 32 kali (putaran) dengan penggunaan
kunci pada masing-masing putaran berbeda-beda sesuai
dengan aturan berikut ini,
Putaran 0 – 7 : K0, K1, K2, …, K7
Putaran 8 – 15 : K0, K1, K2, …, K7
Putaran 16 – 23 : K0, K1, K2, …, K7
Putaran 24 – 31 : K7, K6, K5, …, K0
Untuk putaran ke-31, langkah 5 dan 6 agak sedikit
berbeda. Langkah 5 dan 6 untuk putaran 31 adalah
sebagai berikut :
R32 = R31 sebelum dilakukan proses
L32 = L31 XOR R31
Sehingga, ciphertext yang dihasilkan adalah
L32 : b(32), b(31), …, b(1)
R32 : a(32), a(31), …, a(1)
T = a(1), …, a(32), b(1), …, b(32)
Proses enkripsi dari metoda GOST dapat digambarkan
dalam bentuk skema seperti berikut ini,

o
o
o
Satu putaran
(iterasi)
Tiga puluh
putaran
(iterasi)
lainnya
Putaran
(iterasi)
terakhir
Plaintext
Ciphertext
0 7
0 7

Gambar 2 Skema Proses Enkripsi Metoda GOST
C. Proses Dekripsi
Proses dekripsi merupakan proses kebalikan dari
proses enkripsi. Penggunaan kunci pada masing-masing
putaran pada proses dekripsi adalah sebagai berikut,
Putaran 0 – 7 : K0, K1, K2, …, K7
Putaran 8 – 15 : K7, K6, K5, …, K0
Putaran 16 – 23 : K7, K6, K5, …, K0
Putaran 24 – 31 : K7, K6, K5, …, K0
Algoritma yang digunakan untuk proses dekripsi sama
dengan proses enkripsi dengan aturan untuk langkah 5
dan 6 pada putaran ke-31 adalah sebagai berikut :
R32 = R31 sebelum dilakukan proses.
L32 = R31 XOR L31.
Plaintext yang dihasilkan pada proses dekripsi adalah ;
L32 = b(32), b(31), …, b(1)
R32 = a(32), a(31), …, a(1)
P = a(1), …, a(32), b(1), …, b(32)
Proses dekripsi dari metoda GOST dapat digambarkan
dalam bentuk skema seperti berikut ini,

o
o
o
Satu putaran
(iterasi)
Tiga puluh
putaran
(iterasi)
lainnya
Putaran
(iterasi)
terakhir
Ciphertext
Plaintext
0 7
0 7

Gambar 3 Skema Proses Dekripsi Metoda GOST
59
VI. AUDIO
Audio adalah kompresi mekanikal atau gelombang
longitudinal yang merambat melalui medium. Medium
atau zat perantara ini dapat berupa zat cair, padat, gas.
Jadi, gelombang bunyi dapat merambat misalnya di
dalam air, batu bara, atau udara.
Kebanyakan audio adalah merupakan gabungan
berbagai sinyal, tetapi suara murni secara teoritis dapat
dijelaskan dengan kecepatan osilasi atau frekuensi yang
diukur dalam Hertz (Hz) dan amplitudo atau kenyaringan
bunyi dengan pengukuran dalam desibel.
Manusia mendengar bunyi saat gelombang bunyi,
yaitu getaran di udara atau medium lain, sampai ke
gendang telinga manusia. Batas frekuensi bunyi yang
dapat didengar oleh telinga manusia kira-kira dari 20 Hz
sampai 20 kHz pada amplitudo umum dengan berbagai
variasi dalam kurva responsnya. Suara di atas 20 kHz
disebut ultrasonik dan di bawah 20 Hz disebut infrasonik.
VII. ANALISA DAN HASIL UJI COBA
A. Algoritma
Algoritma perancangan perangkat lunak pembelajaran
kriptografi metoda GOST dibagi menjadi 4 bagian yaitu,
1. Algoritma Proses Pembentukan Kunci.
2. Algoritma Proses Enkripsi.
3. Algoritma Proses Dekripsi.
1) Algoritma Proses Pembentukan Kunci
Algoritma ini digunakan dalam proses enkripsi dan
dekripsi, maka penulis merancang algoritma ini di dalam
fungsi proses enkripsi dan dekripsi. Berikut merupakan
algoritma proses pembentukan kunci :
'----------------------------
' PEMBENTUKAN KUNCI
'----------------------------
Private K(1 To 8) As Long
Private k87(0 To 255) As Byte
Private k65(0 To 255) As Byte
Private k43(0 To 255) As Byte
Private k21(0 To 255) As Byte
Private sBox(0 To 7, 0 To 255)
As Byte

Private Static Function F(R As Long, K
As Long) As Long
Dim x As Long
Dim xb(0 To 3) As Byte
Dim xx(0 To 3) As Byte
Dim a As Byte, b As Byte, C As Byte,
D As Byte

If (m_RunningCompiled) Then
x = R + K
Else
x = UnsignedAdd(R, K)
End If

'Extract byte sequence
D = x And &HFF
x = x \ 256
C = x And &HFF
x = x \ 256
b = x And &HFF
x = x \ 256
a = x And &HFF

'Key-dependant substutions
xb(0) = k21(a)
xb(1) = k43(b)
xb(2) = k65(C)
xb(3) = k87(D)

'LeftShift 11 bits
xx(0) = ((xb(3) And 31) * 8) Or
((xb(2) And 224) \ 32)
xx(1) = ((xb(0) And 31) * 8) Or
((xb(3) And 224) \ 32)
xx(2) = ((xb(1) And 31) * 8) Or
((xb(0) And 224) \ 32)
xx(3) = ((xb(2) And 31) * 8) Or
((xb(1) And 224) \ 32)
Call CopyMem(F, xx(0), 4)

End Function
2) Algoritma Proses Enkripsi
Algoritma ini dirancang dalam bentuk fungsi yang
memiliki dua parameter, yaitu file yang akan dienkripsi
dan kunci yang digunakan dalam proses enkripsi. Fungsi
ini mengembalikan file yang telah dienkripsi dengan
metoda GOST. Algoritma ini menggabungkan
pembentukan kunci di dalam algoritma enkripsi.
Berikut merupakan algoritma proses enkripsi,

Public Function
EncryptByte(ByteArray() As Byte,
Optional Key As String) As String

Dim Offset As Long
Dim OrigLen As Long
Dim LeftWord As Long
Dim RightWord As Long
Dim CipherLen As Long
Dim CipherLeft As Long
Dim CipherRight As Long
Dim CurrPercent As Long
Dim NextPercent As Long
'Set the key if one was passed to
the function
If (Len(Key) > 0) Then Me.Key = Key

'Get the length of the plaintext
OrigLen = UBound(ByteArray) + 1


60
'First we add 12 bytes (4 bytes for
the
'length and 8 bytes for the seed
values
'for the CBC routine), and the
ciphertext
'must be a multiple of 8 bytes
CipherLen = OrigLen + 12
If (CipherLen Mod 8 <> 0) Then
CipherLen = CipherLen + 8 -
(CipherLen Mod 8)
End If
ReDim Preserve ByteArray(CipherLen -
1)
Call CopyMem(ByteArray(12),
ByteArray(0), OrigLen)

'Store the length descriptor in
bytes [9-12]
Call CopyMem(ByteArray(8), OrigLen,
4)

'Store a block of random data in
bytes [1-8],
'these work as seed values for the
CBC routine
'and is used to produce different
ciphertext
'even when encrypting the same data
with the
'same key)
Call Randomize
Call CopyMem(ByteArray(0),
CLng(2147483647 * Rnd), 4)
Call CopyMem(ByteArray(4),
CLng(2147483647 * Rnd), 4)

'Encrypt the data
For Offset = 0 To (CipherLen - 1)
Step 8
'Get the next block of plaintext
Call GetWord(LeftWord, ByteArray(),
Offset)
Call GetWord(RightWord,
ByteArray(), Offset + 4)

'XOR the plaintext with the
previous
'ciphertext (CBC, Cipher-Block
Chaining)
LeftWord = LeftWord Xor CipherLeft
RightWord = RightWord Xor
CipherRight
'Encrypt the block
Call EncryptBlock(LeftWord,
RightWord)

'Store the block
Call PutWord(LeftWord, ByteArray(),
Offset)
Call PutWord(RightWord,
ByteArray(), Offset + 4)

'Store the cipherblocks (for CBC)
CipherLeft = LeftWord
CipherRight = RightWord

'Update the progress if neccessary
If (Offset >= NextPercent) Then
CurrPercent = Int((Offset /
CipherLen) * 100)
NextPercent = (CipherLen *
((CurrPercent + 1) / 100)) + 1
RaiseEvent Progress(CurrPercent)
End If
Next

'Make sure we return a 100% progress
If (CurrPercent <> 100) Then
RaiseEvent Progress(100)

End Function
3) Algoritma Proses Dekripsi
Algoritma ini dirancang dalam bentuk fungsi yang
memiliki dua parameter, yaitu File audio dan kunci yang
digunakan dalam proses dekripsi. Fungsi ini
mengembalikan file audio yang telah didekripsi dengan
metoda GOST.
Berikut merupakan algoritma proses dekripsi,

Public Function
DecryptByte(ByteArray() As Byte,
Optional Key As String) As String

Dim Offset As Long
Dim OrigLen As Long
Dim LeftWord As Long
Dim RightWord As Long
Dim CipherLen As Long
Dim CipherLeft As Long
Dim CipherRight As Long
Dim CurrPercent As Long
Dim NextPercent As Long

'Set the key if one was passed to
the function
If (Len(Key) > 0) Then Me.Key = Key

'Get the size of the ciphertext
CipherLen = UBound(ByteArray) + 1

'Decrypt the data in 64-bit blocks
For Offset = 0 To (CipherLen - 1)
Step 8
'Get the next block
61
Call GetWord(LeftWord, ByteArray(),
Offset)
Call GetWord(RightWord,
ByteArray(), Offset + 4)

'Decrypt the block
Call DecryptBlock(RightWord,
LeftWord)

'XOR with the previous cipherblock
LeftWord = LeftWord Xor CipherLeft
RightWord = RightWord Xor
CipherRight

'Store the current ciphertext to
use
'XOR with the next block plaintext
Call GetWord(CipherLeft,
ByteArray(), Offset)
Call GetWord(CipherRight,
ByteArray(), Offset + 4)

'Store the encrypted block
Call PutWord(LeftWord, ByteArray(),
Offset)
Call PutWord(RightWord,
ByteArray(), Offset + 4)

'Update the progress if neccessary
If (Offset >= NextPercent) Then
CurrPercent = Int((Offset /
CipherLen) * 100)
NextPercent = (CipherLen *
((CurrPercent + 1) / 100)) + 1
RaiseEvent Progress(CurrPercent)
End If
Next

'Get the size of the original array
Call CopyMem(OrigLen, ByteArray(8),
4)

'Make sure OrigLen is a reasonable
value,
'if we used the wrong key the next
couple
'of statements could be dangerous
(GPF)
If (CipherLen - OrigLen > 19) Or
(CipherLen - OrigLen < 12) Then
Call Err.Raise(vbObjectError, ,
"Incorrect size descriptor in Gost
decryption")
End If

'Resize the bytearray to hold only
the plaintext
'and not the extra information added
by the
'encryption routine
Call CopyMem(ByteArray(0),
ByteArray(12), OrigLen)
ReDim Preserve ByteArray(OrigLen - 1)

'Make sure we return a 100% progress
If (CurrPercent <> 100) Then
RaiseEvent Progress(100)

End Function
4) Algoritma Koneksi Ke Server dan Client
If cmdConnect.Caption = "Connect"
Then
If Len(txtHost.Text) = 0 Then
MsgBox "Enter a host to
connect to", vbCritical, "Remote
Host Required"
txtHost.SetFocus
Exit Sub
ElseIf Len(txtPort.Text) = 0
Then
MsgBox "Enter a port to
connect on", vbCritical, "Remote
Port Required"
txtPort.SetFocus
Exit Sub
ElseIf Not
IsNumeric(txtPort.Text) Then
MsgBox "Enter a numeric
value for the port", vbCritical,
"Invalid Port Value"
txtPort.SetFocus
txtPort.SelStart = 0
txtPort.SelLength =
Len(txtPort.Text)
Exit Sub
End If
Call SaveCon
sckMain.Close
bCon = False
Call GoDiscon
sckMain.Connect txtHost.Text,
txtPort.Text
StatusBar.SimpleText = "Status:
Connecting..."
ElseIf cmdConnect.Caption =
"Disconnect" Then
sckMain.Close
bCon = False
Call GoDiscon
StatusBar.SimpleText = "Status:
Disconnected."
cmdConnect.Caption = "Connect"
End If

5) Algoritma Pengiriman File
sckMain.GetData sData, vbString,
BytesTotal
sBuff() = Split(sData, EOP)
62
For iLoop = 0 To UBound(sBuff)
sTmpCMD = sBuff(iLoop)
If Len(sTmpCMD) > 0 Then
If Left(sTmpCMD, 3) =
"GET" Then
Call
ParseGetDrives(sTmpCMD)
StatusBar.SimpleText =
"Status: Information gathered."
ElseIf Left(sTmpCMD, 3) =
"CHG" Then
Call
ParseChangeDirectory(sTmpCMD)
StatusBar.SimpleText =
"Status: Information gathered."
ElseIf Left(sTmpCMD, 3) =
"DOW" Then
Call
ParseDownloadFile(sTmpCMD)
ElseIf Left(sTmpCMD, 3) =
"EXE" Then
Call
ParseExeFile(sTmpCMD)
ElseIf Left(sTmpCMD, 3) =
"FIN" Then
Call
ParseGetFileInfo(sTmpCMD)
ElseIf Left(sTmpCMD, 3) =
"DEL" Then
Call
ParseDeleteFile(sTmpCMD)
ElseIf Left(sTmpCMD, 3) =
"RMD" Then
Call
ParseRemoveDirectory(sTmpCMD)
End If
End If
Next iLoop
B. Form Aplikasi Client
Untuk menjalankan perangkat lunak pengolahan
gambar ini cukup dengan menjalankan file
SENDFILE.exe, setelah dijalankan maka akan muncul
tampilan flash sebagai berikut :


Gambar 4 Tampilan Menu Utama
C. Form Server
Gambar dibawah ini adalah gambar dari program
server, setelah dijalankan maka akan muncul tampilan
flash sebagai berikut :


Gambar 5 Form Server

D. Proses Koneksi
Form ini digunakan untuk melakukan proses koneksi
ke server, seperti terlihat pada gambar dibawah ini :


Gambar 6 Proses Koneksi
E. Setelah Koneksi Berhasil
Gambar dibawah ini adalah gambar setelah koneksi
berhasil dilakukan ke server seperti terlihat pada gambar
dibawah ini :


Gambar 7 Setelah Koneksi Berhasil
F. Proses Download File
Gambar dibawah ini adalah gambar untuk melakukan
download file dari server, seperti terlihat pada gambar
dibawah ini :

63

Gambar 8 Proses Download
G. Proses Upload File
Gambar dibawah ini adalah gambar untuk
melakukan proses upload file dari keserver, seperti
terlihat pada gambar dibawah ini :


Gambar 9 Proses Upload
VIII. KESIMPULAN
1. Kelemahan GOST yang diketahui sampai saat ini
adalah karena key schedule-nya yang sederhana,
sehingga pada keadaan tertentu menjadi titik
lemahnya terhadap metoda kriptanalisis seperti
Related-key Cryptanalysis.
2. Proses pembentukan kunci pada metoda GOST sangat
sederhana sedangkan proses enkripsi dan dekripsi
cukup panjang.
3. Kelebihan dari metoda GOST ini adalah
kecepatannya yang cukup baik, walaupun tidak
secepat Blowfish tetapi lebih cepat dari IDEA.
DAFTAR PUSTAKA
[22] Dony Ariyus, 2006. Kriptografi Keamanan Data dan
Komunikasi.Graha Ilmu : Yogyakarya.
[23] Dony Ariyus, 2009. Keamanan Multimedia. Andi : Yogyakarta
[24] H.M. Jogiyanto, 2003. Analisis dan Desain Sistem Informasi.
Edisi Kedua. Andi : Yogyakarta
[25] Madcoms – Madiun, 2001. Microsoft Visual Basic 6.0. Andi :
Yogyakarta
[26] Madcoms – Madiun, 2005. Aplikasi Program Database dengan
Visual Basic 6.0 dan Crystal Report. Andi : Yogyakarya
[27] www.sumutweb.com/GOST.pdf. Diakses 11 September 2011
[28] Mc. Leod Raymond, 1999. Sistem Informasi dan Manajemen.
PT. prenhalindo
[29] Rinaldi Munir, 2006. Kriptografi. Informatika : Bandung




64
Analisis Digital Audio Watermarking dengan
Menggunakan Metode Discrete
Wavelet Transform ( DWT )

Alexandro Nababan
#1
, Maya Silvi Lydia, B.Sc, M. Sc
*2
, Dian Rahmawaty, S. Si, M. Kom
#3

1,2,3
Departemen Ilmu Komputer, Program Studi S1 Ilmu Komputer USU
Jln. Universitas No. 24A Kampus USU, Medan, Indonesia.
1
alexandro.nababan@gmail.com,
2
maya.silvi@gmail.com,
3
d1an_23@yahoo.com

Abstrak -- Dalam perkembangan pengolahan sinyal ( signal
processing ) akhir- akhir ini sudah mengalami
pertumbuhan yang cukup pesat. Ini ditandakan dengan
adanya berbagai metode watermarking yang mencoba
dikembangkan terhadap suatu file dengan host filenya.
Salah satunya ialah pengembangan wavelet yang bisa
diimplementasikan terhadap suatu file audio, contohny wav
( wave ). Bentuk pengembangan wavelet salah satunya ialah
Discrete Wavelet Transform ( DWT ) yakni bentuk
penyisipan suatu file multimedia terhadap file multimedia
lainnya. Pada hal audio, DWT akan melihat bagian audio
mana yang akan didekomposisi ( decompotition ) dengan
menggunakan fungsi SVD ( Singular Value Decomposition )
dan dibagian matrix mana yang akan dilakukan penyisipan.
agar file yang akan disisipi ( embedd ) bisa masuk serta
dikeluarkan kembali ( recover ) dari file induknya. Pada
penelitian ini tentunya dilakukan analisis audio dan file text
yang akan coba disembunyikan. Akan diketahui bagaimana
hasil audio yang sudah di-watermarking apakah mengalami
perubahan ukuran ( size ) dan apakah terdapat noise.

Kata Kunci -- signal processing, wavelet, DWT, SVD, matrix,
embed, recover, noise, watermarking.

I. PENDAHULUAN
Penyembunyian sesuatu ke dalam file dapat
dilakukan pada
media apapun. File audio, adalah salah satu
jenis file yang rentan terhadap pembajakan.
Oleh karena itu, digital wtermarking pada file
audio, yang dalam hal ini berformat wav, akan
sangat berguna untuk pelindungan hak cipta.
Perlindungan akan hak cipta sekarang ini
semakin perlu ditingkatkan karena makin
makarnya pembajakan, baik itu perangkat
lunak, film, gambar, maupun music. Namun,
untuk mencapai tujuan itu dibutuhkan suatu
teknik yang cukup baik untuk dapat membuat
semacam penanda terhadap suatu karya
tertentu (watermarking). Teknik yang terkenal
digunakan untuk tujuan watermarking tersebut
adalah steganography. Pada steganography
gambar, kita dapat dengan mudah
menggantikan LSB bit dengan kode biner dari
penanda yang ingin kita sisipkan. Namun
berbeda halnya pada watermarkin pada file
audio. File audio akan menghasilkan
watermarking yang baik jika penggatian bit-bit
code yang merepresentasikan frekuensi suara
berada pada range frekuensi < 20Hz dan diatas
20KHz, yakni frekuensi suara yang tidak
terdengar oleh manusia Suara merupakan
sesuatu yang berbeda dengan gambar. Jika
pada gambar, teknik steganografi
memanfaatkan kelemahan mata manusia, maka
pada suara, memanfaatkan pendengaran
manusia. Watermark dengan cara ini
menyembunyikan pesan watermark pada
frekuensi rendah, frekuensi yang berada
dibawah batas toleransi frekuensi yang dapat
didengar manusia.
Watermarking audio adalah suatu proses
penyisipan suatu pesan file kedalam suatu host
file yakni file audio. Sinyal audio tersebut
dikeluarkan oleh suatu mekanisme dan di-
decode. Audio ini nantinya apakah ada
pengaruh terhadap sistem pendengaran manusia.
Watermarking audio yang paling kompleks
sangat susah dibuat. Meskipun jauh dari
sempurna, tetapi akan ada penyempurnaan dari
setiap metode dalam watermarking audio yang
akan dikembangkan terus. Nantinya hasil dari
audio ini akan dianalaisi apakah proses
watermaking tersebut sudah terpenuhi
persyaratan yang sesuai dengan kriteria
watermarking yaitu

65
a. Imperceptibility.
Keberadaan data penyisip pada file host tidak
dapat dipersepsi oleh indra pendengaran
manusia yaitu tidak ditemukan gangguan atau
noise.

b. Fidelity.
Mutu file host tidak berubah banyak akibat
penyisipan dimana suara wave watermark tidak
berbeda dari file wave yang asli.
c. Recovery.
Pesan yang disembunyikan dapat diekstraksi
(diambil) kembali.

II. ANALISIS
1. Watermarking
Proses-proses yang secara umum dilakukan pada
penyisipan label pada file data asli (data original) dengan
pemasukan sebuah kunci (key) adalah seperti Gambar 1.







Gambar 1. Proses Watermarking

Sistem watermarking terdapat 3 sub-bagian yang
membentuknya yaitu:
a. Penghasil Label Watermark
b. Proses penyembunyian Label
c. Menghasilkan kembali Label Watermark dari
data
yang ter-watermark.








Gambar 2. Proses Ekstrak dengan data asli




Gambar 2.6 Proses Ekstrak tanpa data asli

Label watermark adalah sesuatu data/informasi
yang akan kita masukkan ke dalam data digital yang
ingin di-watermark. Ada 2 jenis label yang dapat
digunakan:
1. Label Text yaitu label watermark dari teks biasanya
menggunakan nilai-nilai ASCII dari masing-masing
karakter dalam text yang kemudian dipecahkan atas
bit-per-bit, kelemahan dari label ini adalah, kesalah
pada satu bit saja akan menghasilkan hasil yang
berbeda dengan text sebenarnya.
Label non teks berupa logo atau citra atau
suara; Berbeda dengan label text, kesalahan
pada beberapa bit masih dapat memberikan
persepsi yang sama dengan aslinya oleh
pendengaran maupun penglihatan kita, tetapi
kelemahannya adalah ukuran data yang cukup
besar.
2. Wavelet
Teori wavelet adalah suatu konsep yang relatif baru
dikembangkan. Kata ―Wavelet‖ sendiri diberikan oleh
Jean Morlet dan Alex Grossmann diawal tahun 1980-an,
dan berasal dari bahasa Prancis, ―ondelette‖ yang berarti
gelombang kecil. Kata ―onde‖ yang berarti gelombang
kemudian diterjemahkan ke bahasa Inggris menjadi
―wave‖, lalu digabung dengan kata aslinya sehingga
terbentuk kata baru ―wavelet‖.

2.1 Transformasi Wavelet
Transformasi wavelet dibagi menjadi dua bagian
besar, yaitu continue wavelet transform (CWT) dan
Discret Wavelet Transform (DWT). Sampai sekarang
transformasi Fourier mungkin masih menjadi
transformasi yang paling populer untuk pemrosesan
sinyal digital. Transformasi Fourier memberi informasi
frekuensi dari sebuah sinyal, tapi tidak informasi waktu
yaitu tidak dapat diketahui di mana frekuensi itu terjadi.
Karena itulah transformasi Fourier hanya cocok untuk
sinyal stationari yaitu sinyal yang informasi frekuensinya
tidak berubah menurut waktu. Untuk menganalisa sinyal
yang frekuensinya bervariasi di dalam waktu, diperlukan
suatu transformasi yang dapat memberikan resolusi
frekuensi dan waktu disaat yang bersamaan yang biasa
disebut Analisys Multi Resolusion (AMR). AMR
dirancang untuk memberika resolusi waktu yang baik
dan resolusi frekuensi yang buruk pada frekuensi tinggi
suatu sinyal, serta resolusi frekuensi yang baik dan
resolusi waktu yang buruk pada frekuensi rendah suatu
sinyal. Pendekatan ini sangat berguna untuk menganalisa
sinyal dalam aplikasi-aplikasi praktis yang memang
memiliki lebih banyak frekuensi rendah.



66
2.2 Transformasi Wavelet Diskrit (Discrete Wavelet
Transform)
Transformasi wavelet diskrit (DWT) dianggap relatif
lebih mudah diimplementasikan. Prinsip dasar dari DWT
adalah bagaimana cara mendapatkan representasi waktu
dan skala dari sebuah sinyal menggunakan teknik
pemfilteran digital dan operasi sub-sampling. Sinyal
pertama-tama dilewatkan pada rangkaian filter high-pass
dan low-pass, kemudian setengah dari masing-masing
keluaran diambil sebagai sample melalui operasi sub-
sampling. Proses ini disebut sebagai proses dekomposisi
satu tingkat.
Keluaran dari filter low-pass digunakan sebagai
masukkan di proses dekomposisi tingkat berikutnya.
Proses ini diulang sampai tingkat proses dekomposisi
yang diinginkan. Gabungan dari keluaran-keluaran filter
high-pass dan satu keluaran filter low-pass yang terakhir,
disebut sebagai koefisien wavelet, yang berisi informasi
sinyal hasil transformasi yang telah terkompresi. Berkat
operasi sub-sampling yang menghilangkan informasi
sinyal yang berlebihan, transformasi wavelet telah
menjadi salah satu metode kompresi data yang paling
handal.
Transformasi wavelet diskrit merupakan
pentransformasian sinyal diskrit menjadi koefisien-
koefisien wavelet yang diperoleh dengan cara menapis
sinyal menggunakan dua buah tapis yang berlawanan.
Kedua tapis yang dimaksud adalah:
1. Tapis penyekala atau disebut tapis lolos rendah (low
pass filter, LPF).
2. Tapis detil atau tapis lolos tinggi (high pass filter,
HPF).
Filterisasi sendiri merupakan sebuah fungsi yang
digunakan dalam pemrosesan sinyal. Wavelet dapat
direalisasikan menggunakan iterasi filter dengan
penskalaan. Resolusi dari sinyal, yang merupakan rata-
rata dari jumlah detil informasi
dalam sinyal, ditentukan melalui filterasi ini dan
skalanya didapatkan dengan upsampling dan
downsampling (subsampling).
Sebuah sinyal harus dilewatkan dalam dua
filterisasi DWT yaitu highpass filter dan lowpass filter
agar frekuensi dari sinyal tersebut dapat dianalisis.
Analisis sinyal dilakukan terhadap hasil filterisasi
highpass filter dan lowpass filter di mana highpass filter
digunakan untuk menganalisis frekuensi tinggi dan
lowpass filter digunakan untuk menganalisis frekuensi
rendah.
Analisis terhadap frekuensi dilakukan dengan cara
menggunakan resolusi yang dihasilkan setelah sinyal
melewati filterisasi. Analisis frekuensi yang berbeda
dengan menggunakan resolusi yang berbeda inilah yang
disebut dengan multi-resolution analysis. Pembagian
sinyal menjadi frekuensi tinggi dan frekuensi rendah
dalam proses filterisasi highpass filter dan lowpass filter
disebut sebagai dekomposisi. Proses dekomposisi
dimulai dengan melewatkan sinyal asal melewati
highpass filter dan lowpass filter. Misalkan sinyal asal
rad/s. Dalam melewati highpass filter dan lowpass filter
ini, rentang frekuensi di-subsample menjadi dua,
sehingga rentang frekuensi tertinggi pada masing-masing
lah filterisasi,
setengah dari sample atau salah satu subsample dapat
dieliminasi berdasarkan aturan Nyquist
Proses dekomposisi ini dapat melalui satu atau lebih
tingkatan. Dekomposisi satu tingkat ditulis dengan
ekspresi matematika pada persamaan 1 dan 2.


----------- 2----- 1

----- 2


Dimana ;
Y
tinggi
[k] dan Y
rendah
[k] adalah hasil dari
highpass filter dan low pass filter. x[n]
merupakan sinyal asal, h[n] adalah highpass
filter, dan g[n] adalah lowpass filter.
Ekstraksi watermark dilakukan tanpa
menggunakan citra asal atau citra host.
Pendeteksian ada tidaknya watermark dalam
citra dilakukan dengan menggunakan
pembandingan koefisien yang bersesuaian pada citra ber-
watermark dengan nilai ambang. Jika koefisien dari
rentang frekuensi yang berkorelasi lebih besar daripada
nilai ambang maka watermark terdeteksi di dalam citra.
Langkah – langkah ekstraksi watermark adalah sbb:
1. Audio ber-watermark didekomposisi dalam dua
tingkatan DWT.
2. Memilih koefisien audio ber -watermark dari
rentang frekuensi LH dan HL yaitu LH f dan
HL f .
3. Merubah isi pesan kedalam bentuk biner
4. Menyisipkan isi konversi biner kedalam
frekuensi audio yang memiliki frekuensi rendah.
5. Menjalankan Inverse Discrete Wavelet
Transform (IDWT) untuk membentuk audio
ber- watermark.
6. Secara umum proses ekstraksi watermark ini
merupakan kebalikan dari proses
penyisipan watermark .

III. KESIMPULAN
Pada hasil penyisipan nantinya file host
yang akan disisipin file pesan tidak mengalami
perubahan kualitas suara maupun size. Pada
saat dibandingkan dengan hasil audio asli tidak
67
ditemukannya noise dari audio hasil
watermarking. Dan tidak ada perubahan ukuran
file dengan ukuran file aslinya. Maka terbukti
pada watermarking dengan menggunakan
metode Discrete Wavelet Transform memenuhi
2 kriteria watermarking yakni : imperceptibility,
fidelity, dan recovery
Pada saat penyisipan ( embed ) file pesan
akan dirubah ( convert ) kedalam bentuk biner
dan akan disisip ke frekuensi yang memiliki
frekuensi rendah. Pada saat penyisipan bit – bit
dari pesan akan disisip kedalam frekuensi audio.
Untuk mendapatkan pesan kembali bit- bit
biner akan diektraksi terlebih dahulu untuk
mendapatkan binernya, dari hasil ekstraksi
tersebut akan dirubah kembali ke dalam bentuk
decimal.

DAFTAR PUSTAKA
[1] Andreas Mauthe, Peter Thomas. 2004. Professional Content
Management Systems : Handling Digital Media Assets.UK :
John Wiley & Sonds, Ltd.
[2] Arne Jensen,Anders La Cour-Harbo. .2001. Ripples in
Mathematics:The Discrete Wavelet Transform. Jerman :
Springer- Verlag Berlin Heidelberg.
[3] Binanto. 2010. Multimedia Digital, Dasar dan Teori, Penerbit
PT Elex Media Komputindo: Jakarta.
[4] Colby Leider . 2004. Digital Audio Workstation.USA : The
McGraw Hill Companies, Inc Publishing.
[5] David Salomon. 2007. Data compression: The Complete
Reference Volume 10. UK : Springer - Verlag London Limited
[6] Francis Rumsey,Tim McCormick. 2006. Sound and recording:
an Introduction. UK : Focal Press.
[7] Gonzalez, Rafael. 1987. Digital Image Processing. USA:
Addison-Wesley Publishing Co, University of Tennessee
[8] Juanda, 1999, Proteksi pada Citra Digital dengan Informasi Hak
Cipta, Laporan Tugas Akhir S1, ITB.
[9] Kendall-Kendall. 2005. Analisa Dan Perancangan Sistem.
Jakarta: Elexmedia Komputindo.
[10] K.P. Soman, K.I. Ramachandran, and N.G. Resmi. 2010. Insight
Into Wavelets - From Theory to Practise, 3rd Edition. India :
PHI Learning Private Limited.
[11] Lim, Resmana., Reinders, Marcel J.T. dan Thiang. 2007.
Pengenalan Citra Wajah dengan Pemrosesan Awal
Transformasi Wavelet. Penerbit Erlangga: Jakarta.
[12] Lokenath Debnath. 2002. Wavelet Transforms and Their
Applications.USA : Birkauser Boston.
[13] Munir. 2004. Kriptografi. Jakarta: Elexmedia Komputindo.
[14] Putra, Darma. 2009. Pengolahan Citra Digital.Yogyakarta.
Penerbit: ANDI.
[15] Rodiah, 2004. Watermarking sebagai teknik penyembunyian
label hak cipta pada data digital menggunakan algoritma DCT
(discrete cosinus transform).Skripsi Universitas Gunadarma,
Jakarta.
[16] Supangkat, H. Suhono, Kuspriyanto, Juanda, 2000.
Watermarking sebagai Teknik Penyembunyian Label Hak Cipta
pada Data Digital. Departemen Teknik Elektro, Institut
Teknologi Bandung. Bandung.
[17] Setiadikarunia, Daniel. Danandy, Yohanes. Teknik adaptive
watermarking pada domain spasial Untuk penyisipan label
pada citra digital. Seminar Nasional Sains dan Teknologi-II
2008 Universitas Lampung, 17-18 November 2008.
[18] Sutoyo, 2009. Teknik Pengolahan Citra Digital. Yogyakarta.
Penerbit: ANDI.


68
Aplikasi Pencari Rute Optimum Menggunakan
Algoritma Semut di Kampus Universitas
Sumatera Utara dengan Dukungan
Sistem Informasi Geografis

Friendly Purba
1
, Syahril Efendi
2
, M. Andri Budiman
3
123
Program Studi S-1 Ilmu Komputer, Universitas Sumatera Utara
Jl. Universitas N0. 24-A, Kampus USU, Medan, Indonesia
friendlypurba@student.usu.ac.id
mandrib@gmail.com
syahrilkom1@yahoo.com

Abstrak −− Pencarian rute terpendek secara umum dapat
dibagi menjadi dua metode yaitu metode konvensional dan
metode heuristik. Metode heuristik lebih cocok digunakan
daripada metode konvensional dalam mencari rute
terpendek dengan data yang besar. Metode heuristik yang
sering digunakan dalam penentuan rute terpendek adalah
algoritma semut. Algoritma Semut ini diadopsi dari
perilaku alami semut dimana dengan Algoritma Semut ini
pencarian rute terpendek menjadi lebih singkat walaupun
menggunakan data yang banyak. Setelah dilakukan
pengujian kepada setiap parameter algoritma semut,
diperoleh bahwa parameter banyak semut dan siklus
mempengaruhi probalitas dalam pencarian titik tujuan dan
waktu eksekusi pencarian, parameter τ
ij
, q
0
dan α
mempengaruhi probabilitas dalam pencarian titik tujuan,
sedangkan parameter β dan ρ berpengaruh dalam waktu
eksekusi pencarian rute optimum. Aplikasi pencari rute
optimum yang mengimplementasikan Algoritma Semut ini
dibangun dengan menggunakan perangkat lunak Sistem
Informasi Geografis MapWindow dan Delphi 2009,
diharapkan mampu memberikan informasi yang cukup
berguna bagi pengguna jalan di Universitas Sumatera
Utara.

Keyword −− Graph, Shortest Path, Ant Algorithm,
Optimization, Geographic Information System.

I.PENDAHULUAN
Kampus Universitas Sumatera Utara berlokasi di
tengah kota Medan tepatnya di Kelurahan Padang Bulan,
Kecamatan Medan Baru. Dengan luas 122 ha dan
mahasiswa yang berjumlah 33.000 orang, pencarian rute
terpendek akan sangat diperlukan bagi pengguna jalan
yang tidak tahu jalan mana yang akan dilalui agar sampai
ke tempat tujuannya di areal kampus Universitas
Sumatera Utara, apalagi bagi pengguna jalan yang baru
pertama kali mengunjungi kampus Universitas Sumatera
Utara.
Pencarian rute terpendek terbagi menjadi dua metode
yaitu metode konvensional dan metode heuristik. Metode
konvensional cenderung lebih mudah dipahami daripada
metode heuristik, tetapi jika dibandingkan, hasil yang
diperoleh dari metode heuristik lebih variatif dan waktu
perhitungan yang diperlukan lebih singkat. Salah satu
metode heuristik yang sering digunakan adalah
Algoritma Semut (Ant Algorithm).
II.ALGORITMA SEMUT
Algoritma Semut merupakan teknik probabilistik
untuk menyelesaikan masalah komputasi dengan
menemukan rute terpendek dari suatu graf. Dalam
mencari rute terpendek dalam algoritma semut, ‗semut-
semut tiruan‘ akan bertindak seperti agen, dimana setiap
semut memiliki rute masing-masing dari titik awal
menuju titik tujuan dengan tidak mengunjungi suatu titik
lebih dari satu kali untuk mendapatkan hasil terbaik.
Proses mencari rute optimal tersebut tidak semudah yang
kita bayangkan dan tentu saja memerlukan rumus yang
pada intinya menerapkan suatu fungsi heuristik yang
cukup rumit. [1].
Parameter-parameter algoritma semut adalah sebagai
berikut:
a. Intensitas feromon (τ
ij
).
b. Tetapan siklus semut (q
0
).
c. Tetapan pengendali intensitas visibilitas (β), nilai β ≥
0.
d. Tetapan pengendali feromon (α), nilai α ≥ 0.
e. Jumlah semut (m).
f. Tetapan penguapan feromon (ρ), nilai ρ harus > 0 dan
< 1.
g. Jumlah siklus maksimum (NC
max
).

A. Karakteristik Algoritma Semut
1) Aturan Transisi Status
Aturan transisi status adalah aturan yang digunakan
dalam memilih titik tujuan berikutnya dengan melakukan
perhitungan probabilitas masing-masing titik tujuan yang
69
mungkin. Aturan transisi status yang berlaku pada
Algoritma Semut adalah sebagai berikut:
Seekor semut yang ditempatkan pada titik t memilih
untuk menuju ke titik v, kemudian dibangkitkan bilangan
acak dimana 0≤q≤1, q sebuah parameter yaitu
probabilitas semut melakukan eksplorasi pada setiap
tahapan, dimana (0≤q
0
≤1) dan p
k
(t,v) adalah probabilitas
dimana semut k memilih untuk bergerak dari titik t ke
titik v.
Jika q ≤ q
0
maka pemilihan titik yang akan dituju
menerapkan aturan yang ditunjukkan oleh persamaan (1)
dibawah ini:
| | | | n i u t u t u t temporary
i i
,..., 3 , 2 , 1 ) , ( . ) , ( ) , ( , = =
|
q t
| | | | { }
|
q t ) , ( . ) , ( max
i i
u t u t v =

dengan v = titik yang akan dituju.
Sedangkan jika q>q
0
digunakan persamaan (2) berikut
ini,
| | | |
| | | |
¿
=
= =
n
i
i i
i i
k
u t u t
v t v t
v t p v
1
) , ( . ) , (
) , ( . ) , (
) , (
|
|
q t
q t

Setelah hasil perhitungan probabilitas semut yang
akan dipilih berikutnya selesai, kemudian dicari
probabilitas kumulatifnya (q
k
) dimana q
1
= p
i1
sedangkan
q
k
= q
k-1
+ p
ij
untuk k = 2,3,4, ..., n. Kemudian
dibangkitkan bilangan random (r) antara 0 sampai 1.
Titik ke-k akan terpilih jika q
k-1
< r ≤ q
k
.
2) Aturan Pembaruan Feromon Lokal
Selagi melakukan perjalanan untuk mencari solusi
pencarian rute terpendek, semut mengunjungi sisi-sisi
dan mengubah tingkat feromon pada sisi-sisi tersebut
dengan menerapkan aturan pembaruan feromon lokal
yang ditunjukkan oleh persamaan (3) dibawah ini.
( ) ) , ( ) , ( . 1 ) , ( v t v t v t t t µ t A + ÷ ÷

c L
v t
nn
.
1
) , ( = At

dimana:
L
nn
: panjang rute yang diperoleh..
c : jumlah titik yang sudah dijalani.
ρ : tetapan penguapan feromon.
Δτ : perubahan intensitas feromon.

3) Aturan Pembaruan Feromon Global
Pembaruan feromon secara global hanya dilakukan
oleh semut yang membuat rute terpendek sejak
permulaan percobaan. Pada akhir sebuah siklus, setelah
semua semut menyelesaikan perjalanan mereka,
intensitas feromon diperbaharui pada sisi-sisi yang
dilewati oleh seekor semut yang telah menemukan rute
optimum. Tingkat feromon itu diperbarui dengan
menerapkan aturan pembaruan feromon global yang
ditunjukkan oleh persamaan (4).
( ) ) , ( . ) , ( . 1 ) , ( v t v t v t t o t o t A + ÷ ÷
¦
¹
¦
´
¦
e
= A
÷
0
) , (
) , (
1
terbaik rute v t jika L
v t
gb
t

dimana:
τ(t,v) : nilai feromon akhir setelah mengalami
pembaruan
lokal.
L
gb
: panjang rute terpendek pada akhir siklus.
α : tetapan pengendali feromon.
∆τ : perubahan intensitas feromon. [2]
B. Pseudocode Algoritma Semut
Dari analisis diatas, dapat dibuat pseudocode
algoritma semut yaitu:

Dari analisa terhadap Algoritma Semut ini, beberapa
hal yang penting adalah:
1. Dalam pemilihan titik berdasarkan persamaan
probabilitas diperlukan nilai parameter q dan r yang
merupakan sebuah bilangan acak dimana 0 ≤ q ≤ 1
dan 0 ≤ r ≤ 1.
2. Setiap semut harus memiliki daftar_kota untuk
menyimpan hasil perjalanannya masing-masing.
Daftar_kota berisi kumpulan sisi yang merupakan
bagian dari rute perjalanan setiap semut. Nilai dari
masing-masing daftar_kota akan dikosongkan
kembali setiap kali semut akan memulai rutenya
(siklus baru).
3. Proses pembaruan intensitas feromon dipengaruhi
oleh dua parameter yaitu ρ dan α ( keduanya bernilai
antara 0 sampai 1) dan ∆τ (didapat dari satu per hasil
perkalian
panjang rute yang ditempuh dengan jumlah verteks
yang ada pada graf tersebut). [2].
70
1. SISTEM INFORMASI GEOGRAFIS
Sistem Informasi Geografis (SIG) merupakan sistem
infomasi berbasis komputer yang menggabungkan
antara unsur peta (geografis) dan informasi tentang peta
tersebut (data atribut) yang dirancang untuk
mendapatkan, mengolah, memanipulasi, analisa,
memperagakan dan menampilkan data spatial untuk
menyelesaikan perencanaan, mengolah dan meneliti
permasalahan.
Salah satu alasan mengapa konsep-konsep SIG
beserta sistem aplikasinya menjadi menarik untuk
digunakan di berbagai disiplin ilmu karena SIG dapat
menurunkan informasi secara otomatis tanpa keharusan
untuk selalu melakukan interpretasi secara manual.

1) MapWindow GIS
MapWindow adalah Programmable Geographic
Information System yang mendukung manipulasi,
analisis, dan melihat data geospasial dan data atribut
terkait dalam beberapa standar data format SIG.
MapWindow dikembangkan oleh Prof. Daniel P Ames,
dan Jeff Horsbaugh dari Utah State University (USU).
MapWindow merupakan alat pemetaan, sistem
pemodelan SIG, dan aplikasi SIG programming interface
(API) yang semuanya dikemas dalam satu paket.
MapWindow dikembangkan untuk mengatasi kebutuhan
pemrograman SIG yang dapat digunakan dalam rekayasa
penelitian dan proyek perangkat lunak tanpa membeli
sistem SIG yang lengkap atau tanpa menjadi ahli SIG
sebelumnya.
MapWindow GIS merupakan sofware aplikasi
berlabel free, salah satu perangkat lunak untuk Sistem
Informasi Geografis (SIG) yang berbasis open source.
MapWindow bersifat free baik dalam hal lisensi
pemakaian maupun pengembangannya. MapWindow
dapat digunakan untuk berbagai keperluan, misalnya:
1. Sebagai alternatif desktop SIG yang open source.
2. Untuk mengkonversi data ke bentuk lain.
3. Untuk mengembangkan dan mendistribusikan alat
yang berkaitan dengan analisis data spasial.
4. Melakukan task sebagaimana perangkat lunak SIG
lainnya.[3].
II.PEMBAHASAN
Persoalan pencarian terpendek merupakan salah satu
permasalahan optimasi. Graf yang digunakan dalam
pencarian rute terpendek ini adalah graf berbobot. Bobot
pada sisi graf menyatakan jarak antar verteks. Dalam hal
ini bobot harus bernilai positif. Rute terpendek dengan
verteks awal t dan verteks tujuan v didefenisikan sebagai
rute terpendek dari t ke v dengan bobot minimum dan
berupa rute sederhana (simple path).
Supaya dapat melakukan pencarian rute terpendek,
peta kampus Universitas Sumatera Utara
direpresentasikan menjadi sebuah graf dimana gedung
atau persimpangan jalan sebagai verteks (node) dan jalan
dengan panjang tertentu sebagai sisi (edge) pada graf.
Peta Universitas Sumatera Utara yang berformat
*.jpg terlebih dahulu digitasi menggunakan Aplikasi
Sistem Informasi Geografis berbasis dekstop yaitu
MapWindow GIS. Peta Kampus Universitas Sumatera
Utara yang sudah di digitasi terdiri dari enam layer
dalam format *.shp yaitu area.shp, verteks.shp,
office.shp, road.shp, road_name.shp, dan
edge_and_distance.shp. Keenam layer inilah nantinya
akan membentuk peta Kampus Universitas Sumatera
Utara dalam aplikasi yang akan dibangun.
Meskipun demikian, layer-layer dalam format *.shp
ini belum langsung dapat ditampilkan pada Delphi 2009
karena Delphi 2009 belum mendukung data dalam
format *.shp. Oleh karena itu diperlukan komponen
tambahan yaitu MapWinGIS ActiveX. Komponen
MapWinGIS ActiveX ini adalah objek pemrograman
untuk membentuk dan menyediakan built-in data peta
*.shp dalam Delphi 2009.
Adapun database yang digunakan dalam sistem ini
adalah mysql yang sebelumnya diubah dari format *.dbf
menggunakan aplikasi Kettle yang dibuat oleh Pentaho.
Database ini berisi id_jalan, verteks1, verteks2,
panjang_jalan, dan koordinat_verteks.
Kode yang digunakan untuk menampilkan peta dalam
Delphi 2009 adalah sebagai berikut:

Barisan kode ini hanya kode untuk menampilkan
layer road.shp pada peta kampus Universitas Sumatera
Utara yang diperoleh dari direktori yang telah ditentukan
(D:\\MAPWINDOW). Jika direktori yang dimaksud
ternyata tidak ditemukan, maka peta road.shp tidak dapat
ditampilkan. Kode ini juga dapat digunakan untuk
menampilkan kelima layer yang lainnya dengan
mengganti masing-masing nama layer sehingga akan
diperoleh peta Universitas Sumatera Utara yang lengkap.
2. PENGUJIAN
Nilai dari setiap parameter semut yang digunakan
dalam pembahasan ini adalah:
titik awal = t35
titk tujuan = t15
τ
ij
= 0,01
q
0
= 0
α = 0,5
β = 1.
m = 10
ρ = 0,01
NC
max
= 5
71

Gambar 1. Hasil Pencarian Rute Optimum Menggunakan Algoritma Semut Pada Peta Kampus Universitas Sumatera Utara

Pada gambar diatas terlihat bahwa rute optimum ditampilkan berupa garis merah dari titik awal ke titik tujuan
yang dalam hal ini dari t35 (Persimpangan Jl. Alumni dengan Jl. Perpustakaan) menuju t15 (Persimpangan Jl. Prof.
Dr. Sofian dengan Jl. TM Hanafiah).
Hasil Pengujian berdasarkan banyak semut dan siklus akan ditampilkan ddalam tabel dibawah ini:
TABEL I
HASIL PENGUJIAN BERDASARKAN BANYAK SEMUT DAN SIKLUS
A. Banyak
Siklus
Banyak
Semut
Panjang
Rute Optimum (m)
Waktu
Rata-rata
Keberhasilan
5 2 900 00:09 3
5 20 900 01:01 10
10 10 900 01:26 9
10 50 900 04:10 10
20 10 900 03:01 10
5 100 900 09:59 10
100 50 900 10:30 10

Hasil pengujian berdasarkan parameter τ
ij
akan ditampilkan dalam tabel dibawah ini:
TABEL II
HASIL PENGUJIAN BERDASARKAN PARAMETER τ
ij

No
Parameter Panjang
Rute Optimum (m)
Waktu
(detik)
Keberhasilan
τ
ij
q
0
α β ρ
1 0.001 0 0.5 1 0.01 900 01:04 10
2 0.01 0 0.5 1 0.01 900 01:02 10
3 0.1 0 0.5 1 0.01 900 01:05 10
4 0.5 0 0.5 1 0.01 900 01:05 8
5 1 0 0.5 1 0.01 900 01:05 6

72
Hasil pengujian berdasarkan parameter q
0
akan ditampilkan dalam tabel dibawah ini:
TABEL III
HASIL PENGUJIAN BERDASARKAN PARAMETER q
0

No
Parameter Panjang
Rute Optimum (m)
Waktu
(detik)
Keberhasilan
τ
ij
q
0
α β ρ
1 0.1 0 0.5 1 0.01 900 01:17 10
2 0.1 0.5 0.5 1 0.01 900 01:01 8
3 0.1 0.7 0.5 1 0.01 1350 00:51 0
4 0.1 1 0.5 1 0.01 - 00:36 0
5 0.1 5 0.5 1 0.01 - 00:36 0

Hasil pengujian berdasarkan parameter α

akan ditampilkan dalam tabel dibawah ini:
TABEL IV
HASIL PENGUJIAN BERDASARKAN PARAMETER α
No
Parameter Panjang
Rute Optimum (m)
Waktu
(detik)
Keberhasilan
τ
ij
q
0
α β ρ
1 0.1 0 0 1 0.01 900 01:01 5
2 0.1 0 0.1 1 0.01 900 01:01 6
3 0.1 0 0.5 1 0.01 900 01:00 8
4 0.1 0 0.7 1 0.01 900 01:02 8
5 0.1 0 1 1 0.01 900 01:00 8

Hasil pengujian berdasarkan parameter β

akan ditampilkan dalam tabel dibawah ini:
TABEL V
HASIL PENGUJIAN BERDASARKAN PARAMETER β
No
Parameter Panjang
Rute Optimum (m)
Waktu
(detik)
Keberhasilan
τ
ij
q
0
α β ρ
1 0.1 0 0.5 0.01 0.01 900 00:56 9
2 0.1 0 0.5 0.1 0.01 900 01:58 9
3 0.1 0 0.5 0.5 0.01 900 01:01 9
4 0.1 0 0.5 1 0.01 900 01:03 9
5 0.1 0 0.5 5 0.01 900 01:05 5

Hasil pengujian berdasarkan parameter ρ akan ditampilkan dalam tabel dibawah ini:
TABEL V
HASIL PENGUJIAN BERDASARKAN PARAMETER ρ
No
Parameter Panjang
Rute Optimum (m)
Waktu
(detik)
Keberhasilan
τ
ij
q
0
α β ρ
1 0.1 0 0.5 1 0.05 900 01:04 8
2 0.1 0 0.5 1 0.01 900 01:01 8
3 0.1 0 0.5 1 0.1 900 00:59 8
4 0.1 0 0.5 1 0.5 900 00:56 5
5 0.1 0 0.5 1 0.9 900 00:54 7

IV. KESIMPULAN
1. Aplikasi Pencari Rute Optimum dengan dukungan
Sistem Informasi Geografis ini dapat menunjukkan
rute terpendek antara dua titik yang diinginkan
namun masih memiliki kelemahan yaitu
ketergantungan pada nilai parameter dan sistem
random yang belum maksimal.
2. Parameter banyak semut dan banyak siklus
mempengaruhi peluang dalam pencarian rute optimal
dan waktu eksekusi dalam pencarian rute optimal.
Semakin banyak semut dan siklus yang digunakan,
maka peluang pencarian rute optimal akan semakin
tinggi namun waktu ekseskusinya akan semakin
lama.
3. Parameter τ
ij
,

q
0
dan α mempengaruhi peluang dalam
pencarian rute optimal. Semakin kecil nilai parameter
73
τ
ij
dan q
0
, dan semakin besar nilai parameter α maka
peluang pencarian rute optimal akan semakin tinggi.
4. Parameter ß dan ρ mempengaruhi waktu eksekusi
dalam pencarian rute optimal. Semakin kecil nilai ß
dan semakin besar nilai ρ maka waktu eksekusi
pencarian rute optimal akan semakin cepat.

REFERENSI
[1] Wardi, Ibnu Sina, 2007. Penggunaan graf dalam algoritma semut
untuk melakukan optimisasi. Jurnal Program Studi Teknik
Informatika: hal. 1-10. Institut Teknologi Bandung.
[2] Mindaputra, Eka. 2009. Penggunaan Algoritma Ant Colony
System Dalam Traveling Salesman Problem (TSP) Pada PT. Eka
Jaya Motor. Skripsi. Semarang: Departemen Matematika,
Universitas Dipenogoro.
[3] Usman, Ferdinan, dkk. 2008. Teori dan Aplikasi Opensource GIS
menggunakan MapWindows. Yogyakarta: Andi.

74
Penerapan Digital Signature
Pada Dunia Perbankan
Faisal Agus Nugraha
#1
, Arie Yanda Ibrahim
*2
Pasca Sarjana Teknik Informatika, Universitas Sumatera Utara
1
faisal.gowsal@gmail.com
2
ariegatox @yahoo.com

Abstrak— Salah satu keuntungan berbisnis di dunia
internet adalah dapat dilakukannya transaksi perdagangan
dimana dan kapan saja tanpa harus adanya tatap muka
atau fisik secara langsung. Dari segi keuntungan tersebut
muncul permasalahan tersendiri, terutama yang
berhubungan dengan autentikasi. Bagaimana penjual dapat
yakin bahwa yang membeli produknya adalah orang yang
benar atau bagaimana si penjual tau bahwa kartu kredit
yang digunakan si pembeli merupakan kartu kredit sah
miliknya.
Contoh diatas merupakan salah satu permasalahan di
dunia internet yang dapat diselesaikan dengan digital
signature. Masih ada banyak lagi permasalahan di dunia
internet yang dapat diselesaikan dengan digital signature
atau penggunaan digital signature misalnya di bidang
ecommerce, internet banking dan lainnya.

Kata Kunci : Digital Signature, internet, e-commerce

I. PENDAHULUAN
Internet sebagai jalan raya informasi (the information
highway) telah dirasakan benar-benar membawa
perubahan pada banyak aspek dalam kehidupan manusia.
Teknologi baru ini menawarkan banyak sekali
keuntungan dan pada saat yang sama juga dapat menjadi
ancaman.
Kita tentunya sudah banyak memanfaatkan fasilitas
yang ada dalam internet dan mungkin salah satunya
fasiltas transaksi online. Tentu saja, sering kali kita
melakukan belanja online pada situs-situs yang
menyediakan fasilitas belanja online. Tapi mungkin kita
lupa bahwa internet adalah suatu jaringan publik yang
tidak aman. Saat melakukan transaksi bisa saja seseorang
dengan illegal mengubah isi dalam transaksi tersebut.
Tanpa fasilitas keamanan yang baik, sang penerima order
pesanan transaksi akan menerima pesanan tersebt tanpa
mencurigai adanya perubahan. Oleh sebab itu dibutuhkan
suatu fasilitas keamanan untuk menjamin transaksi yang
dilakuka si pengirim dan si penerima adalah vald. Dalam
bahasan kali ini kami akan memaparkan penggunaan
Digital Signature dalam transaksi keuangan online.






II. PENGENALAN DIGITAL SIGNATURE
A. Tentang Digital Signature
Digital Signature adalah salah satu teknologi yang
digunakan untuk meningkatkan keamanan jaringan.
Digital Signature memiliki fungsi sebagai penanda pada
data yang memastikan bahwa data tersebut adalah data
yang sebenarnya (tidak ada yang berubah). Dengan
begitu, Digital Signature dapat memenuhi setidaknya dua
syarat keamanan jaringan, yaitu Authenticity dan
Nonrepudiation.
Cara kerja Digital Signature adalah dengan
memanfaatkan dua buah kunci, yaitu kunci publik dan
kunci privat. Kunci publik digunakan untuk
mengenkripsi data, sedangkan kunci privat digunakan
untuk mendekripsi data. Pertama, dokumen di-hash dan
menghasilkan Message Digest. Kemudian, Message
Digest dienkripsi oleh kunci publik menjadi Digital
Signature.
Untuk membuka Digital Signature tersebut
diperlukan kunci privat. Bila data telah diubah oleh pihak
luar, maka Digital Signature juga ikut berubah sehingga
kunci privat yang ada tidak akan bisa membukanya. Ini
merupakan salah satu syarat keaman jaringan, yaitu
Authenticity. Artinya adalah, keaslian data dapat
terjamin dari perubahan-perubahan yang dilakukan pihak
luar.
Seperti yang telah dijelaskan sebelumnya skema dari
digital signature terdiri dari 3 (tiga) proses :
1) Proses pembangkitan kunci. Proses ini memilih
kunci privat secara acak dari kumpulan kunci
privat yang mungkin. Hasil dari proses ini adalah
kunci privat dan kunci publik yang sesuai.
2) Proses pemberian tanda tangan. Proses ini
menerima isi pesan dan kunci privat, sehingga
menghasilkan tanda tangan.











75

Gambar 1 Pemberian tanda tangan
3) Proses memverifikasi tanda tangan. Proses ini
memverifikasi pesan yang telah terbubuhi tanda
tangan. Proses memverifikasi ini membutuhkan
kunci publik.

Gambar 2. Verifikasi Tanda Tangan
III. E-BANKING DAN TANTANGANNYA
Berbicara tentang e-banking, tak akan lepas dari
membicarakan internet banking. Setelah ATM dan phone
banking, dunia perbankan kini dilengkapi juga dengan
internet banking. Teknologi ini merupakan jawaban atas
tantangan masyarakat dunia modern yang menginginkan
gaya hidup yang semakin mudah, cepat, andal, nyaman,
dan murah.
Layanan internet banking memungkinkan nasabah
untuk melakukan hampir semua jenis transaksi
perbankan melalui internet, khususnya melalui situs web.
Lewat sarana ini, setiap orang dapat melakukan
pengecekan rekening, transfer dana, pembelian voucher
telefon seluler, hingga pembayaran tagihan rekening
listrik, telefon, dan air.
Internet banking telah ada di dunia sejak tahun 1994.
Stanford Federal Credit Union merupakan lembaga
keuangan pertama di dunia yang menggunakan internet
banking melalui situsnya yang dirilis pada Oktober 1994.
Saat ini, hampir sebagian bank besar di Indonesia telah
menyediakan layanan internet banking.
Seiring perkembangan internet, internet banking mulai
menjadi primadona di kalangan nasabah bank setelah
ATM dan phone banking. Kemudahan bertransaksi
dengan fitur yang lengkap tanpa harus keluar dari rumah,
merupakan kelebihan internet banking yang tidak dapat
ditandingi oleh teknologi e-banking lainnya.
A. Ancaman keamanan
Meskipun menawarkan kemudahan, tetap saja ada
ancaman keamanan yang mengintai. Biasanya, ancaman
ini ditujukan kepada pihak pengguna yang notabene
lemah dari sisi kesadaran berteknologi. Beberapa
ancaman yang sering muncul, antara lain:
B. Typo-site atau website forging
merupakan teknik membuat situs yang memiliki
domain dan tampilan yang mirip dengan situs aslinya.
Tujuannya, mendapatkan username dan password
pengguna. Misalnya saja, situs dengan nama
netbank.com. Kembaran situs ini biasanya memiliki
nama-nama yang mirip, seperti: net-bank.com,
net_bank.com, atau netibank.com.
C. Key-logger
adalah virus atau trojan yang tersembunyi dan
bertugas merekam setiap input ketikan tombol user
keyboard. Aplikasi ini tertanam di komputer tanpa
diketahui pengguna dan bertugas mendapatkan username
dan password akses pengguna ke suatu situs.
D. Man in the middle attack
aktivitas seorang cracker (sebutan untuk hacker jahat)
yang menyadap informasi dari pengguna. Informasi yang
disadap bisa berupa password, username, dan pesan
elektronik. Kejadian ini biasanya menimpa pengguna
yang menggunakan komputer di lingkungan umum
seperti warnet dan free hotspot.
E. Mengutamakan keamanan
Di dunia ini memang tidak ada yang seratus persen
aman. Meskipun begitu, pihak bank selalu
mengusahakan yang terbaik dalam hal keamanan situs
dan transaksi online nasabahnya. Beberapa teknik
pengamanan yang biasanya digunakan oleh bank antara
lain:
1) Penerapan teknologi secure socket layer (SSL) 128
bit dan secure HTTP (HTTPS), yang berfungsi
mengenskripsi informasi yang dikirimkan pengguna.
76
Sehingga, ketika terjadi man in the middle attack,
informasi tetap aman dan tidak bisa dibaca oleh
penyadap.
2) Melengkapi nasabah dengan alamat pengamanan
tambahan berupa token PIN. Alat ini berfungsi
menghasilkan PIN yang selalu berganti ketika
nasabah melakukan transaksi.
3) Memasang sertifikat di situsnya sebagai proteksi
tambahan. Sehingga, nasabah bisa membedakan
antara situs asli dan situs gadungan dengan melihat
peringatan di browser.
4) Penggunaan firewall dan antivirus untuk mencegah
akses ilegal di jaringan perbankan.
5) Penerapan Digital Signature pada pengisian
idenitas, misalkan dibuat suatu web portal identitass
yang mana penggunanya dapat memasukkan
informasi tentang dirinya. Dari informasi yang
dikirimkan tersebut ditambahkan tanda-tangan. Dan
pengguna portal tersebut diberikan sebuah kunci,
lebih tepatnya kunci privat dari pembangkitan kunci.
Pengguna itu harus benar-benar mengingat kunci
privat tersebut, karena dengan menggunakan kunci
privat tersebut pengguna dapat melakukan register
pada beberapa website.
Tetapi meskipun pihak bank selaku penyedia layanan
internet banking telah meningkatkan pengamanan
layanannya, tetap saja sasaran yang paling empuk adalah
pengguna layanan. Titik kelemahannya ada pada
minimnya kesadaran berteknologi pengguna. Misalnya,
pengguna berbagi kode PIN, selalu mengklik ―Yes‖
ketika muncul notifikasi di komputer, dan lupa logout.
IV. PENERAPAN DIGITAL SIGNATURE DI DUNIA
PERBANKAN
Masa depan semakin menunjuk ke penggunaan
dokumen digital dan digital signature. Kecepatan bank
dalam mengadopsi teknologi baru tidak sepenting
kualitas solusi yang diaodopsi bank. Bank harus berpikir
untuk mempertimbangkan sebuah atribut sistem
informasi baru untuk memastikan dapat beroperasi
dengan sistem yang ada.
Teknologi digital signature adalah setara dengan tanda
tangan tertulis pada dokumen tertulis. Pasar e-commerce
umumnya berfokus pada digital signatures sebagai
komponen penting. Hal ini, sebagian besar, karena digital
signature mengatasi masalah otentikasi, penolakan non-
dan integritas pesan.
Pertumbuhan nilai transaksi online menunjukkan
menunjukkan bahwa e-commerce dan digital signature
merupakan daerah yang dapat di eksplore lebih luas oleh
bank. Namun, karena kompleksitas teknologi digital
signature, maka sangat penting bahwa bank harus
melakukan penelitian yang cermat dalam perencanaan
sebelum implementasinya.
Kami akan menguraikan empat masalah yang paling
kritis bagi lembaga keuangan untuk dipertimbangkan
ketika akan mengimplementasikan teknologi digital
signature .
A. Bank yang akan mengembangkan teknologi digital
signature harus berhati-hati dalam memilih vendor dan
mengadopsi solusi nya.
Karena biaya awal yang besar dan berkelanjutan,
maka sangat jarang bank akan memilih untuk
mengembangkan teknologi digital signature mereka
sendiri. Dengan demikian pilihan paling tepat adalah
bank akan melakukan sewa outsourcing fungsi digital
signature tersebut atau membeli fungsinya dengan
memadukan dengan infrastruktur yang sudah ada.
Sejumlah vendor baru telah muncul sebagai akibat
dari meningkatnya permintaan untuk teknologi digital
signature. Sayangnya, solusi dari vendor mungkin tidak
kompatibel dengan sistem bank yang telah ada dan
berjalan. Interoperabilitas, sekarang dan di masa depan,
harus menjadi pertimbangan utama.
Kurangnya interoperabilitas dan standar terlalu sedikit
dapat menyebabkan kegagalan akhir dari sistem yang
dibeli. Menurut perusahaan konsultasi GartnerGroup, "...
30% sampai 40% dari masyarakat penyebaran
infrastruktur utama akan gagal dalam dua tahun
peluncuran karena mereka gagal untuk menunjukkan
nilai. Ini berarti bank-bank yang melibatkan otoritas
sertifikat (CA) mungkin menemukan diri mereka
menggunakan digital signature yang unverifiable atau
sistem informasi yang tidak memiliki dukungan teknis.
bank harus melakukan due diligence menyeluruh pada
setiap solusi pemasaran digital signature milik vendor.
B. Menerapkan penggunaan digital signature
membutuhkan pembaruan pada seperangkat
teknologi, layanan dan kebijakan bank.
Ketika bank memutuskan untuk menerapkan digital
signature, bank juga harus menerapkan digital documents
dan persyaratan terkait untuk antara lain, pengelolaan
dokumen, penyimpanan, keamanan akses, upgrade
perangkat keras periodik, dan fasilitas pemulihan
bencana. Selanjutnya, bank pelaksana bisa dikenakan
biaya tambahan sebagai hasil dari kebutuhan untuk lebih
banyak staf dalam bentuk teknologi baru-posisi
manajemen.
Setelah bank memutuskan untuk menerapkan digital
signature, bank telah membuat keputusan strategis untuk
mempertahankan catatan digital dan dokumen layanan
digital. Mempertahankan dokumen digital akan
membutuhkan kebijakan baru dan prosedur, dan
memperkenalkan kompleksitas baru yang berkaitan
dengan upgrade sistem dan konversi informasi.
Jika dokumen digital yang digunakan, pelanggan akan
memerlukan akses yang wajar untuk dokumen-dokumen.
Selain itu, jika bank memilih untuk menerapkan akses
remote untuk dokumen digital, bank mungkin perlu
77
untuk mendirikan sebuah area informasi aman yang
memungkinkan akses pelanggan.
C. Sebuah bank dapat mengoperasikan layanan CA
(Certificate Authority) untuk pelanggan. Namun,
menjadi CA mungkin memerlukan keterampilan
teknis yang berbeda
Sementara bank-bank secara rutin memverifikasi
identifikasi pelanggan yang sudah ada dan baru, proses
otentikasi elektronik lebih kompleks, dan keputusan
untuk mengoperasikan CA adalah lebih berat. Peran
utama dari CA adalah untuk mengeluarkan dan
memverifikasi sertifikat digital. masalah sertifikat CA
yang digunakan, sebagian, untuk memverifikasi keaslian
dari pengguna menandatangani atau mengenkripsi.
Ada keuntungan dan kerugian yang terkait dengan
bank menjadi CA (lihat bawah). Sebuah tinjauan
mendalam atas hal-hal ini harus dimasukkan dalam
pengambilan keputusan usaha suatu bank.
Menjadi Certificate Authority:
1) Keuntungan
 Menetapkan identitas nasabah bank.
 Teknologi yang relatif murah.
 Menambahkan potensi untuk retensi pelanggan.
 Menyediakan untuk penjangkauan masyarakat.
2) Kekurangan
 Standar masih berubah.
 Membutuhkan biaya tambahan untuk
mengoperasikan layanan.
 Membutuhkan keahlian teknis lebih.
 Membuat kewajiban baru yang potensial bagi
bank.
Operasi CA membutuhkan fasilitas tambahan untuk
hardware, kebijakan operasional dan prosedur tertentu,
sistem pemulihan bencana, dan perhatian keamanan
untuk mengelola daftar pencabutan dan pemantauan atas
akses tidak sah.

D. Hardware dan software dalam mendukung digital
signature dan dokumen digital akan menjadi usang
dan memerlukan penggantian.
Hardware dan software pasti akan menjadi usang.
Masa pakai perangkat keras komputer adalah sekitar tiga
sampai lima tahun. Kehidupan fungsional dari perangkat
lunak yang lebih pendek, sering hanya enam bulan
sampai satu tahun. Jika bank tidak meng-upgrade dan
mengganti peralatan yang lebih tua, bank bisa beroperasi
pada posisi yang kurang menguntungkan.
V. KESIMPULAN
Adapun kesimpulan yang dapat diambil adalah :
Teknologi digital signature merupakan salah satu solusi
untuk kemanan transaksi di dunia perbankan namun
dalam penerapannya untuk dunia perbankan tersebut
harus mengingat beberapa faktor penting yaitu :
1. Bank yang akan mengembangkan teknologi digital
signature harus berhati-hati dalam memilih vendor
dan mengadopsi solusi nya
2. Menerapkan penggunaan digital signature
membutuhkan pembaruan pada seperangkat
teknologi, layanan dan kebijakan bank
3. Sebuah bank dapat mengoperasikan layanan CA
(Certificate Authority) untuk pelanggan. Namun,
menjadi CA mungkin memerlukan keterampilan
teknis yang berbeda
4. Hardware dan software dalam mendukung digital
signature dan dokumen digital akan menjadi usang
dan memerlukan penggantian.
DAFTAR PUSTAKA
[1] www.fdic.gov/regulations/information/fils/banktechbulletin.html
[2] Andi, Memahami Model Enkripsi & Security Data, 2003
[3] Ahmad Redi, Electronic Signature dalam e-commerce di sektor
perbankan, FHU UI, 2009
[4] William Foe, Digital Signature and e-commerce.2008


78
Penggunaan Algoritma Cipher Rijndael dan
Algoritma Hash Md5 untuk Keamanan File
Lampiran (Attachment) Email dengan
Kriptografi

Fardian
1

Mahasiswa Program Magister (S2) Teknik Informatika, Universitas Sumatera Utara (USU)
Jl. Universitas N0. 24-A, Kampus USU, Medan, Indonesia

Abstrak— Dewasa ini kerap terjadi berbagai kasus cyber
crime yang terjadi pada proses pengiriman email seperti
penyadapan email, pemalsuan email, spam, mailbom, dan
tidak menutup kemungkinan email mengandung virus dan
sejenisnya. Akibat dari berbagai tindakan ini bisa
membahayakan pesan atau lampiran email yang di kirim
atau di terima, yang bisa jadi berisi data kritis atau penting
tentang pribadi seseorang atau organisasi tempat bekerja.
Kasus yang paling meresahkan dari berbagai bentuk
kejahatan terhadap email adalah penyadapan email. Salah
satu strategi untuk menghadapi penyadapan email adalah
dengan kriptografi. File lampiran email di enkripsi dengan
algoritma tertentu sehingga jika penyadapan email terjadi,
maka setidaknya seorang penyadap akan kesulitan dalam
memahami data karena dibutuhkan keahlian untuk
mendekripsi file lampiran dengan algoritma dan kunci
yang sesuai. Dengan memakai enkripsi berganda dalam
melindungi keamanan file lampiran email, yaitu dengan
algoritma cipher Rijndael dan algoritma hash MD5 maka
diharapkan kekhawatiran bocornya rahasia file lampiran
email dapat berkurang.

Kata Kunci— Email, Cipher, Hash, Rijndael, MD5,
Kriptografi.

I. PENDAHULUAN
Email atau surat elektronik adalah media
penyampaian pesan, berita, atau pemberitahuan yang lain
secara digital elektronik dari satu tempat (sender) ke
tempat lain (receiver), dari satu akun email ke akun
email lain melalui jaringan internet. Banyak penyedia
jasa layanan email gratis seperti Gmail, Yahoo! Mail,
Hotmail, BolehMail, LoveMail, Plasa.com dan lain – lain.
Produk dari teknologi informasi ini bagaikan pisau
bermata dua, di satu sisi memiliki manfaat di sisi lain
memiliki bahaya. Kelebihan email dibanding surat biasa
adalah lebih murah, cepat sampai ke tujuan, dan dalam
kondisi normal resiko pesan tidak sampai ke tujuan lebih
kecil.
Akan tetapi dewasa ini, banyak terjadi berbagai kasus
tindak kriminal atau kejahatan yang mengancam
keamanan pesan ataupun file lampiran (attachment)
email. Diantara tindak kriminal dalam dunia internet
(cyber crime) berkaitan email yaitu penyadapan email,
pemalsuan email, spam (mengirim email ke banyak
orang, biasanya berisi promosi produk), mailbom
(mengirim banyak email ke satu orang secara sepihak
tanpa persetujuan penerima), dan tidak menutup
kemungkinan email mengandung aplikasi-aplikasi jahat
(virus, spyware, worm, trojan horse, dan lain – lain).
Akibatnya hal ini bisa membahayakan file lampiran
(attachment) email yang di kirim atau di terima oleh kita,
yang bisa jadi berisi data kritis atau penting tentang
pribadi kita atau organisasi tempat kita bekerja.
Kasus yang paling meresahkan dari berbagai bentuk
kejahatan terhadap email adalah penyadapan email.
Salah satu strategi untuk menghadapi penyadapan email
adalah dengan teknik kriptografi. File lampiran atau
attachment email kita enkripsi dengan algoritma tertentu
sehingga jika penyadapan email terjadi, maka setidaknya
orang yang menyadap akan kesulitan dalam membaca
data karena dibutuhkan keahlian untuk mendekripsi file
lampiran tersebut dengan algoritma yang sesuai.
Penulis memakai enkripsi berganda dalam
melindungi keamanan file lampiran email, yaitu dengan
algoritma cipher Rijndael dan algoritma hash MD5.
Algoritma Rijndael sering disebut algoritma AES
(Advanced Encryption Standard). Dipilihnya kedua
algoritma ini didasarkan pada kenyataan bahwa kedua
algoritma ini relatif lebih aman dan relatif tergolong baru
dibandingkan dengan algoritma yang lain, algoritma
Rijndael dipublikasikan tahun 2001 dan algoritma MD5
diciptakan tahun 1991. Sehingga seorang kriptanalis (ahli
kriptografi) akan berusaha ekstra keras untuk
membongkar kedua algoritma ini, Rijndael dan MD5.
Proses dari enkripsi file lampiran email adalah sebagi
berikut, file lampiran mula-mula dikonversi ke bentuk
biner, kemudian dicari message diggest (pesan singkat)-
nya dengan algoritma hash MD5 menghasilkan sebuah
string (S), string yang dihasilkan oleh algoritma hash
MD5 kemudian di-update dengan password dari pemakai
program menjadi string baru (S1), kemudian file biner
tadi dienkripsi dengan cipher Rijndael dengan memakai
79
^
^
~
+
, , ,
kunci (key) dari string baru (S1). Akhirnya file menjadi
chiper yang susah untuk diinterpretasikan oleh manusia.
Dengan file attachment email yang terenkripsi oleh
algoritma chiper Rijndael dan algoritma hash MD5,
maka diharapkan kekhawatiran kita akan penyadapan
email akan berkurang, karena ketika email kita disadap
maka untuk mengetahui isi file lampiran, penyadap akan
bersusah payah untuk membuka kriptografi pada file
terlebih dahulu, tentunya dengan membongkar enkripsi
Rijndael dan MD5. Sehingga data penting milik kita
akan aman dari akses ilegal pihak-pihak yang tidak
bertanggung jawab. Jika file attachment email yang kita
kirim sudah sampai ke tujuan maka akan dengan mudah
didekripsi oleh pihak yang menerima dengan aplikasi
yang sama dan password yang sama.

II. METODE PENELITIAN
Adapun metode penelitian yang digunakan adalah
untuk menjaga keamanan file lampiran (attachment)
email dengan menggunak algoritma cipher rijndael dan
algoritma hash md5 dalam kroptografi.

2.1 Algoritma Hash MD5
Algoritma hash MD5 salah satu fungsi hash satu-arah.
MD5 merupakan perbaikan dari MD4 setelah MD4
berhasil diserang oleh kriptanalis. MD5 adalah salah satu
dari serangkaian algortima message digest yang didesain
oleh Profesor Ronald Rivest dari MIT (Rivest, 1994).
Saat kerja analitik menunjukkan bahwa pendahulu MD5
(MD4) mulai tidak aman, MD5 kemudian didesain pada
tahun 1991 sebagai pengganti dari MD4 (kelemahan
MD4 ditemukan oleh Hans Dobbertin).
Algoritma Hash MD5 masukan berupa pesan dengan
ukuran sembarang dan menghasilkan message digest
yang panjangnya 128 bit. Berikut gambaran pembuatan
message digest dengan algoritma MD diperlihatkan pada
gambar 1.
K mod 2
64
Padding bits
L x 512 bit
(1-512 bit)
K bit
Pesan 1000...000 Panjang Pesan
Y
0
Y
1
Y
q
Y
L-1
512 512 512 512
ABCD HMD5 HMD5 HMD5 HMD5
128 128 128
512 512 512 512
128 128 128
128
Message Digest

Gambar 1. Proses Pembuatan Message Digest dengan
Algoritma MD5 )

Langkah-langkah pembuatan message digest secara garis
besar adalah sebagai berikut:
a. Penambahan bit-bit pengganjal (padding bits).
b. Penambahan nilai panjang pesan semula.
c. Inisialisasi penyangga (buffer) MD.
d. Pengolahan pesan dalam blok berukuran 512 bit.

Operasi dasar MD5 dapat ditulis dengan sebuah
persamaan 1.

a b + CLSs(a + g(b, c, d) + X[k] + T[i])....(1)
Dimana:
a, b, c, d = empat buah peubah penyangga 32-bit
(berisi nilai penyangga A, B, C, D)
g = salah satu fungsi F, G, H, I
CLSs = circular left shift sebanyak s bit
X[k] = kelompok 32-bit ke-k dari blok 512 bit
message ke-q. Nilai k = 0 sampai 15.
T[i] = elemen Tabel T ke-i (32 bit)
+ = operasi penjumlahan modulo 2
32

Fungsi fF, fG, fH, dan fI adalah fungsi untuk
memanipulasi masukan a, b, c, dan d dengan ukuran 32-
bit. Masing-masing fungsi dapat dilihat pada tabel 1.

Tabel 1 Tabel Fungsi Manipulasi MD5
Nama Notasi g(b,c,d)
f F
f I
f G
f H
F(b,c,d)
G(b,c,d)
H(b,c,d)
I(b,c,d)
(b c) ( b d)
^
~
^
^
(b d) (c d)
^
~
^
^
b c d
c (b d)
^
~ +
+ +

Operator logika AND, OR, NOT, XOR masing-
masing dilambangkan dengan :


Dari persamaan diatas dapat dilihat bahwa masing-
masing fungsi fF, fG, fH, dan fI melakukan 16 kali
operasi dasar. Misalkan notasi :
[abcd k s i]
menyatakan operasi :
a b + ((a + g(b, c, d) + X[k] + T[i])<<<s)

yang dalam hal ini <<<s melambangkan operasi
circular left shift 32-bit.
dan

MD
q+1
= MD
q
+ f
I
(Y
q
+ f
H
(Y
q
+ f
G
(Y
Q
+ f
F
(Y
q
+
MD
q
)))) (3)
Bila
D = MD
L – 1
...................................... ....(4)

Dimana:
IV = initial vector dari penyangga ABCD,
yangdilakukan pada proses inisialisasi
penyangga.
Yq = blok pesan berukuran 512-bit ke-q
L = jumlah blok pesan
MD = nilai akhir message digest

Misalkan M adalah isi sebuah arsip
teks identitas.txt sebagai berikut:

Hisyam Basri adalah mahasiswa STMIK
Bina Bangsa Lhokseumawe
80
Message digest dari arsip identitas.txt
yang dihasilkan oleh algoritma MD5 adalah 128-bit:
1001 0110 1010 0011 1111 0010 0100 0101
0110 0000 0111 1010 1111 1001 0001 0101
1011 1100 1010 0101 1011 1100 1100 1000
0110 0001 0111 1101 0110 1000 1000 0001

atau, dalam notasi HEX adalah:
96A3F245607AF915BCA5BCC8617D6881
2.2. Aplikasi Fungsi Hash MD5 Untuk
Integritas Data
Fungsi hash MD5 dapat digunakan untuk menjaga
keutuhan (integritas) data. Caranya dengan
membangkitkan message digest dari isi arsip. Message
digest dapat digabung ke dalam arsip atau disimpan di
dalam arsip. Verifikasi isi arsip dapat dilakukan secara
berkala dengan membandingkan message digest dari isi
arsip sekarang dengan message digest dari arsip asli. Jika
terjadi perbedaan, maka disimpulkan ada modifikasi
terhadap isi arsip (atau terhadap message digest yang
disimpan). Aplikasi ini didasarkan pada kenyataan
bahwa perubahan 1 bit pada pesan akan mengubah,
secara rata-rata, setengah dari bit-bit messsage digest.
Dengan kata lain, fungsi hash sangat peka terhadap
perubahan sekecil apa pun pada data masukan. Misalkan
message digest dari arsip identitas.txt disertakan
di dalam arsip bersangkutan sebagai baris pertama:

Misalkan kata ―mahasiswa‖ diubah menjadi
―mahasiswi‖ dengan kata lain kita hanya mengganti
huruf a pada kata ―mahasiswa‖ dengan huruf ―i‖
sehingga

menjadi kata ―mahasiswi‖. Message digest dari isi
arsip (tidak termasuk baris message digest) adalah :

Sebelum diubah : MD1 =
96A3F245607AF915BCA5BCC8617D6881

Sesudah diubah : MD2 =
278446AAE02A4D548155BFAB52B679D9

Verifikasi: MD1 ≠ MD2 (file
identitas.txt sudah diubah)

2.3. Penjelasan Algoritma Cipher Rijndael
Seluruh byte dalam algoritma Rijndael
diinterpretasikan sebagai elemen finite field. Elemen
finite field ini dapat dikalikan dan dijumlahkan, tetapi
hasil dari penjumlahan dan perkalian elemen finite field
sangat berbeda dengan hasil dari penjumlahan dan
perkalian bilangan biasa.
a. Operasi Penjumlahan
Operasi penjumlahan dari dua elemen dalam suatu
finite field dilakukan dengan menjumlahkan koefisien
dari pangkat polinom yang bersesuaian dari dua elemen
tersebut. Penjumlahan dilakukan dengan operasi XOR
dan dinotasikan dengan
©
. Dengan operasi ini, maka 1
© 1 = 0, 1 © 0 = 1, 0 © 1 = 1, dan 0 © 0 = 1.
Pengurangan dari polinomial identik dengan
penjumlahan polinomial. Sebagai alternatif, penjumlahan
elemen-elemen pada finite field dapat dijelaskan sebagai
penjumlahan modulo 2 dari bit yang bersesuaian dalam
byte. Untuk 2 byte {a7a6a5a4a3a2a1a0} dan
{b7b6b5b4b3b2b1b0), hasil penjumlahannya adalah
{c7c6c5c4c3c2c1c0} dimana setiap ci = ai
©
bi. Contoh
dari operasi penjumlahan adalah sebagai berikut :
(x
6
+x
4
+x
2
+x+1) © (x
7
+x+1) = x
7
+x
6
+x
4
+x
2
(notasi polinomial)
{01010111} © {10000011} = {11010100}
(notasi biner)
{57} ©{83} = {d4}
(notasi hexadesimal)
b. Operasi Perkalian
Dalam representasi polinomial, perkalian dalam
GF(2
8
) yang dinotasikan dengan mengacu pada perkalian
modulo polinomial sebuah irreducible polynomial yang
berderajat 8. Sebuah polinom bersifat irreducible jika
satu-satunya pembagi adalah dirinya sendiri dan 1. Untuk
algoritma AES, irreducible polynomial ini adalah
diperlihatkan pada persa,maa 5:
m(x) = x
8
+ x
4
+ x
3
+ x + 1 ........................(5)

atau dalam notasi hexadesimal adalah {01}{1b}.
Sebagai contoh, {57}•{83} = {c1}, karena
(x
6
+ x
4
+ x
2
+ x + 1) • (x
7
+ x + 1) = x
13
+ x
11
+
x
9
+ x
8
+ x
7
+
x
7
+ x
5
+ x
3
+ x
2
+ x +
x
6
+ x
4
+ x
2
+ 1
= x
13
+ x
11
+ x
9
+ x
8
+ x
6
+ x
5
+
x
4
+ x
3
+ 1
dan
x
13
+ x
11
+ x
9
+ x
8
+ x
6
+ x
5
+ x
4
+ x
3
+ x
+ 1 modulo (x
8
+ x
4
+ x
3
+ x + 1)= x
7
+ x
6
+ 1

Pengurangan modular oleh m(x) memastikan bahwa
hasilnya akan berupa polinomial biner dengan derajat
kurang dari 8, sehingga dapat dipresentasikan dengan 1
byte saja.Urutan bit diberi nomor urut dari 0 sampai
dengan n-1 dimana n adalah nomor urutan. Urutan data 8
bit secara berurutan disebut sebagai byte dimana byte ini
adalah unit dasar dari operasi yang akan dilakukan pada
blok data. Dalam algoritma Rijndael, data sepanjang 128
bit akan dibagi-bagi menjadi array byte dimana setiap
array byte ini terdiri dari 8 bit data input yang saling
berurutan seperti diperlihatkan pada gambar 2.
96A3F245607AF915BCA5BCC8617D6881
Hisyam Basri adalah mahasiswa
STMIK Bina Bangsa Lhokseumawe

81
Urutan Bit Input
Nomor Byte
Nomor Bit Pada Byte
0 1
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
...
...
...

Gambar 2. Array Byte

Array byte ini direpresentasikan dalam bentuk.
:a
0
a
1
a
2
...a
15

Dimana:
a
0
= { input
0
,

input
1
,...,

input
7
}
a
1
= { input
8
,

input
9
,...,

input
15
}
a
15
= { input
120
,

input
121
,...,

input
127
}
a
n
= { input
8n
,

input
8n+1
,...,

input
8n+7
}

Operasi algoritma Rijndael dilakukan pada sebuah
state dimana state sendiri adalah sebuah array byte dua
dimensi. Setiap state pasti mempunyai jumlah baris yang
tetap, yaitu 4 baris, sedangkan jumlah kolom tergantung
dari besarnya blok data. Baris pada state mempunyai
indeks nomor row (r) dimana 0 ≤ r < 4, sedangkan kolom
mempunyai indeks nomor column (c) dimana 0 ≤ c < Nb.
Nb sendiri adalah besarnya blok data dibagi 32.
Pada saat permulaan, input bit pertama kali akan
disusun menjadi suatu array byte dimana panjang dari
array byte yang digunakan pada Rijndael adalah
sepanjang 8 bit data. Array byte inilah yang nantinya
akan dimasukkan atau di-copy ke dalam state dengan
urutan seperti pada persamaan 6 :
s[r,c] = in[r+4c] untuk 0 ≤ r < 4 dan 0 ≤ c < Nb (6)
sedangkan dari state akan di-copy ke output dengan
urutan persamaan 7:
out[r+4c] = s[r,c] untuk 0 ≤ r < 4 dan 0 ≤ c < Nb.. (7)

2.4 Algoritma Rijndael
Algoritma Rijndael adalah pemenang sayembara
terbuka yang diadakan oleh NIST (National Institute of
Standards and Technology) untuk membuat standard
algoritma kriptografi yang baru sebagai pengganti Data
Encryption Standard (DES). DES sudah dianggap tidak
aman terutama karena panjang kunci yang relatif pendek
sehingga mudah dipecahkan menggunakan teknologi saat
ini.
Algoritma Rijndael menggunakan substitusi,
permutasi, dan sejumlah putaran yang dikenakan pada
tiap blok yang akan dienkripsi/dekripsi. Untuk setiap
putarannya, Rijndael menggunakan kunci yang berbeda.
Kunci setiap putaran disebut round key. Tetapi tidak
seperti algoritma yang lebih tua, DES yang berorientasi
bit, Rijndael beroperasi dalam orientasi byte sehingga
memungkinkan untuk implementasi algoritma yang
efisien ke dalam software dan hardware. Ukuran blok
untuk algoritma Rijndael adalah 128 bit (16 byte).
Algoritma Rijndael dapat mendukung panjang kunci
128 bit sampai 256 bit dengan step 32 bit. Panjang kunci
berpengaruh pada jumlah putaran yang dikenakan pada
tiap blok. Misalnya, untuk ukuran blok dan panjang
kunci sebesar 128 bit ditentukan 10 putaran, sedangkan
untuk ukuran blok 128 bit dan panjang kunci 256 bit
jumlah putaran yang ditentukan adalah 14 putaran.
Algoritma Rijndael mempunyai 3 parameter sebagai
berikut:
1. plainteks: array yang berukuran 16 byte, yang berisi
data masukan.
2. cipherteks: array yang berukuran 16 byte, yang
berisi hasil enkripsi.
3. key: array yang berukuran 16 byte (untuk panjang
kunci 128 bit), yang berisi kunci ciphering (disebut
juga cipher key).
Dengan 16 byte, maka baik blok data dan kunci yang
berukuran 128-bit dapat disimpan di dalam ketiga array
tersebut (128 = 16 x 8). Selama kalkulasi plainteks
menjadi cipherteks, status sekarang dari data disimpan di
dalam array of byte dua dimensi, state, yang berukuran
NROWS x NCOLS. Elemen array state diacu sebagai
S[r,c], dengan 0 ≤ r < 4 dan 0 ≤ c < Nc (Nc adalah
panjang blok dibagi 32). Pada AES, Nc = 128/32 = 4.
Tiap elemen dari array state diisi dengan 8 bit teks (1
byte) dalam notasi HEX.
Pada algoritma Rijndael, jumlah blok input, blok
output, dan state adalah 128 bit. Dengan besar data 128
bit, berarti Nb = 4 yang menunjukkan panjang data tiap
baris adalah 4 byte. Dengan panjang kunci 128-bit, maka
terdapat sebanyak 3,4 × 1038 = 2128 kemungkinan
kunci. Andai komputer tercepat saat ini dapat mencoba 1
juta kunci setiap detik, maka akan dibutuhkan waktu 5,4
× 1024 tahun untuk mencoba seluruh kunci. Andai
komputer tercepat saat ini dapat mencoba 1 juta kunci
setiap milidetik (1/1000 detik), maka dibutuhkan waktu
5,4 × 1018 tahun untuk mencoba seluruh kunci pada
algoritma Rijndael.
Plainteks 128-bit
state

in
8
in
7
in
3
in
4
in
6
in
5
in
0
in
1
in
2
in
9
in
10
in
11
in
12
in
13
in
14
in
15
S
0,2
S
3,1
S
3,0
S
0,1
S
2,1
S
1,1
S
0,0
S
1,0
S
2,0
S
1,2
S
2,2
S
3,2
S
0,3
S
1,3
S
2,3
S
3,3
out
8
out
7
out
3
out
4
out
6
out
5
out
0
out
1
out
2
out
9
out
10
out
11
out
12
out
13
out
14
out
15
input bytes
state array output bytes

Gambar 3. Input Bytes, State Array, dan Output Bytes
Algoritma Rijndael
82
Dengan blok input atau blok data sebesar 128 bit, key
yang digunakan pada algoritma Rijndael tidak harus
mempunyai besar yang sama dengan blok input. Cipher
key pada algoritma Rijndael bisa menggunakan kunci
dengan panjang 128 bit, 192 bit, atau 256 bit. Perbedaan
panjang kunci akan mempengaruhi jumlah round yang
akan diimplementasikan pada algoritma Rijndael ini. Di
bawah ini adalah tabel yang memperlihatkan jumlah
round (Nr) yang harus diimplementasikan pada masing-
masing panjang kunci (128,192, 256 bit).

Tabel 2. Perbandingan Kunci, Ukuran Blok, dan
Jumlah Putaran
AES-128
AES-192
AES-256
Panjang Kunci
(Nk Words)
Ukuran Blok
(Nb Words)
Jumlah Putaran
(Nr)
4
6
8
4
4
4
10
12
14
Tipe AES
Catatan: 1 word = 32 bit

2.5. Ekspansi Kunci Algoritma Rijndael
Algoritma Rijndael mengambil kunci cipher, K, dan
melakukan rutin ekspansi kunci (key expansion) untuk
membentuk key schedule. Ekspansi kunci menghasilkan
total Nb(Nr+1) word.
Algoritma ini membutuhkan set awal key yang terdiri
dari Nb word, dan setiap round Nr membutuhkan data
kunci sebanyak Nb word. Hasil key schedule terdiri dari
array 4 byte word linear yang dinotasikan dengan [w
i
].
SubWord adalah fungsi yang mengambil 4 byte word
input dan mengaplikasikan S-Box ke tiap-tiap data 4 byte
untuk menghasilkan word output.
Fungsi RotWord mengambil word [a
0
, a
1
, a
2
, a
3
]
sebagai input, melakukan permutasi siklik, dan
mengembalikan word [a
1
, a
2
, a
3
, a
0
]. Rcon[i] terdiri dari
nilai-nilai yang diberikan oleh [x
i-1
, {00}, {00}, {00}],
dengan x
i-1
sebagai pangkat dari x (x dinotasikan sebagai
{02} dalam field GF(2
8
). Word ke Nk pertama pada
ekspansi kunci berisi kunci cipher. Setiap word
berikutnya, w[i], sama dengan XOR dari word
sebelumnya, w[i-1] dan word Nk yang ada pada posisi
sebelumnya, w[i-Nk].
Untuk word pada posisi yang merupakan kelipatan
Nk, sebuah transformasi diaplikasikan pada w[i-1]
sebelum XOR, lalu dilanjutkan oleh XOR dengan
konstanta round, Rcon[i]. Transformasi ini terdiri dari
pergeseran siklik dari byte data dalam suatu word
RotWord, lalu diikuti aplikasi dari lookup Tabel untuk
semua 4 byte data dari word SubWord.

2.6 Proses Enkripsi Rijndael
Proses enkripsi pada algoritma Rijndael terdiri dari 4
jenis transformasi bytes, yaitu SubBytes, ShiftRows,
Mixcolumns, dan AddRoundKey. Pada awal proses
enkripsi, input yang telah di-copy-kan ke dalam state
akan mengalami transformasi byte AddRoundKey.
Setelah itu, state akan mengalami transformasi SubBytes,
ShiftRows, MixColumns, dan AddRoundKey secara
berulang-ulang sebanyak Nr. Proses ini dalam algoritma
Rijndael disebut sebagai round function. Round yang
terakhir agak berbeda dengan round-round sebelumnya
dimana pada round terakhir, state tidak mengalami
transformasi MixColumns.

a. Transformasi SubBytes
SubBytes merupakan transformasi byte dimana setiap
elemen pada state akan dipetakan dengan menggunakan
sebuah tabel substitusi (S-Box).

AddRoundKey
SubBytes
ShiftRows
MixColumns
AddRoundKey
SubBytes
ShiftRows
AddRoundKey
Cipher Text
Plain Text
Nr - 1
Round

Gambar 4. Diagram Proses Enkripsi Algoritma Rijndael

Hasil yang didapat dari pemetaan dengan
menggunakan tabel S-Box ini sebenarnya adalah hasil
dari dua proses transformasi bytes, yaitu :
1. Invers perkalian dalam GF(2
8
) adalah fungsi yang
memetakan 8 bit ke 8 bit yang merupakan invers
dari elemen finite field tersebut. Suatu byte a
merupakan invers perkalian dari byte b bila a•b = 1,
kecuali {00} dipetakan ke dirinya sendiri. Setiap
elemen pada state akan dipetakan pada tabel invers.
Sebagai contoh, elemen ―01010011‖ atau {53} akan
dipetakan ke {CA} atau ―11001010‖.
2. Transformasi affine pada state yang telah dipetakan.
Transformasi affine ini apabila dipetakan dalam
bentuk matriks dibawah
3. b
7
b
6
b
5
b
4
b
3
b
2
b
1
b
0
adalah urutan bit dalam elemen
state atau array byte dimana b
7
adalah most
significant bit atau bit dengan posisi paling kiri.
(
(
(
(
(
(
(
(
(
(
(
¸
(

¸

+
(
(
(
(
(
(
(
(
(
(
(
¸
(

¸

×
(
(
(
(
(
(
(
(
(
(
(
¸
(

¸

=
(
(
(
(
(
(
(
(
(
(
(
¸
(

¸

0
1
1
0
0
0
1
1
1 1 1 1 1 0 0 0
0 1 1 1 1 1 0 0
0 0 1 1 1 1 1 0
0 0 0 1 1 1 1 1
1 0 0 0 1 1 1 1
1 1 0 0 0 1 1 1
1 1 1 0 0 0 1 1
1 1 1 1 0 0 0 1
7
6
5
4
3
2
1
0
'
7
'
6
'
5
'
4
'
3
'
2
'
1
'
0
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b

83

Gambar 5. Transformasi SubBytes

b. Transformasi ShiftRows
Transformasi Shiftrows ini pada dasarnya adalah
proses pergeseran bit dimana bit paling kiri akan
dipindahkan menjadi bit paling kanan (rotasi bit).
Transformasi ini diterapkan pada baris 2, baris 3, dan
baris 4. Baris 2 akan mengalami pergeseran bit sebanyak
satu kali, sedangkan baris 3 dan baris 4 masing-masing
mengalami pergeseran bit sebanyak dua kali dan tiga kali.

Gambar 6. Transformasi ShiftRows

c. Transformasi MixColumns
MixColumns mengoperasikan setiap elemen yang
berada dalam satu kolom pada state.

Gambar 7. Transformasi MixColumns

Elemen pada kolom dikalikan dengan suatu
polinomial tetap a(x) = {03}x
3
+ {01}x
2
+ {01}x + {02}.
Secara lebih jelas, transformasi mixcolumns dapat dilihat
pada perkalian matriks berikut ini :
(
(
(
(
(
¸
(

¸

(
(
(
(
¸
(

¸

=
(
(
(
(
(
¸
(

¸

c
c
c
c
c
c
c
c
s
s
s
s
s
s
s
s
, 3
, 2
, 1
, 0
'
, 3
'
, 2
'
, 1
'
, 0
02 01 01 03
03 02 01 01
01 03 02 01
01 01 03 02

Melakukan proses penambahan pada operasi ini
berarti melakukan operasi bitwise XOR. Maka hasil dari
perkalian matriks diatas dapat dianggap seperti perkalian
di bawah ini :
) } 02 ({ ) } 03 ({
) } 03 ({ ) } 02 ({
) } 03 ({ ) } 02 ({
) } 03 ({ ) } 02 ({
, 3 , 2 , 1 , 0
'
, 3
, 3 , 2 , 1 , 0
'
, 2
, 3 , 2 , 1 , 0
'
, 1
, 3 , 2 , 1 ,
'
, 0
c c c c c
c c c c c
c c c c c
c c c c o c
s s s s s
s s s s s
s s s s s
s s s s s
- © © © - =
- © - © © =
© - © - © =
© © - © - =

d. Transformasi AddRoundKey
Pada proses AddRoundKey, sebuah round key
ditambahkan pada state dengan operasi bitwise XOR.
Setiap round key terdiri dari Nb word dimana tiap word
tersebut akan dijumlahkan dengan word atau kolom yang
bersesuaian dari state sehingga :

[w
i
] adalah word dari key yang bersesuaian dimana i =
round*Nb+c. Transformasi AddRoundKey
diimplementasikan pertama kali pada round = 0, dimana
key yang digunakan adalah initial key (key yang
dimasukkan oleh kriptografer dan belum mengalami
proses key expansion).

Gambar 8. Transformasi AddRoundKey

2.7. Proses Dekripsi Rijndael
Transformasi cipher dapat dibalikkan dan
diimplementasikan dalam arah yang berlawanan untuk
menghasilkan inverse cipher yang mudah dipahami
untuk algoritma Rijndael. Transformasi byte yang
digunakan pada inverse cipher adalah InvShiftRows,
InvSubBytes, InvMixColumns, dan AddRoundKey. Proses
dekripsi pada algoritma Rijndael dapat dilihat pada
skema berikut :
AddRoundKey
InvShiftRows
InvSubBytes
AddRoundKey
InvMixColumns
InvShiftRows
InvSubBytes
AddRoundKey
Plain Text
Cipher Text
Nr - 1
Round

Gambar 9. Diagram Proses Dekripsi Algoritma
Rijndael

| | | | | | Nb c w s s s s s s s s
c Nb round c c c c c c c c
0 untuk s s © =
+ * , 3 , 2 , 1 , 0
'
, 3
'
, 2
'
, 1
'
, 0
, , , , , ,
84
a. Transformasi InvShiftRows
(InverseShiftRows)
InvShiftRows adalah transformasi byte yang
berkebalikan dengan transformasi ShiftRows. Pada
transformasi InvShiftRows, dilakukan pergeseran bit ke
kanan sedangkan pada ShiftRows dilakukan pergeseran
bit ke kiri. Pada baris kedua, pergeseran bit dilakukan
sebanyak 3 kali, sedangkan pada baris ketiga dan baris
keempat, dilakukan pergeseran bit sebanyak dua kali dan
satu kali

Gambar 10. Transformasi InvShiftRows

b. Transformasi InvSubBytes
(InverseSubBytes)
InvSubBytes juga merupakan transformasi bytes
yang berkebalikan dengan transformasi SubBytes. Pada
InvSubBytes, tiap elemen pada state dipetakan dengan
menggunakan Tabel inverse S-Box.
Tabel ini berbeda dengan Tabel S-Box, dimana
hasil yang didapat dari tabel ini adalah hasil dari dua
proses yang berbeda urutannya, yaitu transformasi affine
terlebih dahulu, baru kemudian perkalian inverse dalam
GF(2
8
).
(
(
(
(
(
(
(
(
(
(
(
¸
(

¸

+
(
(
(
(
(
(
(
(
(
(
(
¸
(

¸

×
(
(
(
(
(
(
(
(
(
(
(
¸
(

¸

=
(
(
(
(
(
(
(
(
(
(
(
¸
(

¸

1
0
1
0
0
0
0
0
0 0 1 0 0 1 0 1
1 0 0 1 0 0 1 0
0 1 0 0 1 0 0 1
1 0 1 0 0 1 0 0
0 1 0 1 0 0 1 0
0 0 1 0 1 0 0 1
1 0 0 1 0 1 0 0
0 1 0 0 1 0 1 0
0
1
2
3
4
5
6
7
'
0
'
1
'
2
'
3
'
4
'
5
'
6
'
7
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b

Perkalian inverse yang dilakukan pada
transformasi InvSubBytes ini sama dengan perkalian
inverse yang dilakukan pada transformasi SubBytes.

c. Transformasi InvMixColumns
(InverseMixColumns)
Pada InvMixColumns, kolom-kolom pada tiap
state (word) akan dipandang sebagai polinom atas GF(28)
dan mengalikan modulo x
4
+ 1 dengan polinom tetap a
-
1
(x) yang diperoleh dari :
a
-1
(x)= {0B}x
3
+ {0D}x
2
+ {09}x + {0E}..(8)



Atau dalam matriks :
) ( ) ( ) (
'
x s x a x s © =
......................... (9)
(
(
(
(
(
¸
(

¸

(
(
(
(
¸
(

¸

=
(
(
(
(
(
¸
(

¸

c
c
c
c
c
c
c
c
s
s
s
s
E D B
B E D
D B E
D B E
s
s
s
s
, 3
, 2
, 1
, 0
'
, 3
'
, 2
'
, 1
'
, 0
0 09 0 0
0 0 09 0
0 0 0 09
09 0 0 0


Hasil dari perkalian diatas adalah :
) } 0 ({ ) } 09 ({ ) } 0 ({ ) } 0 ({
) } 0 ({ ) } 0 ({ ) } 09 ({ ) } 0 ({
) } 0 ({ ) } 0 ({ ) } 0 ({ ) } 09 ({
) } 09 ({ ) } 0 ({ ) } 0 ({ ) } 0 ({
, 3 , 2 , 1 ,
'
, 3
, 3 , 2 , 1 ,
'
, 2
, 3 , 2 , 1 ,
'
, 1
, 3 , 2 , 1 ,
'
, 0
c c c c o c
c c c c o c
c c c c o c
c c c c o c
s E s s D s B s
s B s E s s D s
s D s B s E s s
s s D s B s E s
- © - © - © - =
- © - © - © - =
- © - © - © - =
- © - © - © - =


d. Transformasi Inverse AddRoundKey
Transformasi Inverse AddRoundKey tidak
mempunyai perbedaan dengan transformasi
AddRoundKey karena pada transformasi ini hanya
dilakukan operasi penambahan sederhana dengan
menggunakan operasi bitwise XOR.

III. HASIL DAN PEMBAHASAN
3.1. Terapan Algoritma Rijndael
Berikut ini adalah contoh penerapan proses enkripsi
pada algoritma Rijndael .Pada rounds pertama plaintext
dan key yang bernotasi hexadecimal di XOR.

Gambar 11. Elemen State dan Kunci dalam Notasi HEX
a. Transformasi SubBytes
SubBytes memetakan setiap byte dari array state
dengan menggunakan S-box.
85

Gambar 12. Input S-Box
Gambar 13. Pemetaan Input dengan S-Box

Gambar 14. Hasil Input Yang Telah Dipetakan Oleh S-
Box
b. Transformasi ShiftRows
© Transformasi ShiftRows melakukan pergeseran
secara wrapping (siklik) pada 3 baris terakhir
dari array state.
© Jumlah pergeseran bergantung pada nilai baris
(r). Baris r = 1 digeser sejauh 1 byte, baris r = 2
digeser sejauh 2 byte, dan baris r = 3 digeser
sejauh 3 byte. Baris r = 0 tidak digeser.


Gambar 15. State Awal, Rotasi 1, Rotasi 2, dan Rotasi 3
c. Transformasi MixColumns
© Transformasi MixColumns mengalikan setiap
kolom dari array state dengan polinom a(x)
mod (x4 + 1).
© Setiap kolom diperlakukan sebagai polinom 4-
suku pada GF(28).
© a(x) yang ditetapkan adalah:
a(x) = {03}x3 + {01}x2 + {01}x + {02}
Input = D4 BF 5D 30
Output(0) = (D4 * 2) XOR (BF*3) XOR
(5D*1) XOR (30*1)
= E(L(D4) + L(02)) XOR E(L(BF)
+ L(03)) XOR 5D XOR 30
= E(41 + 19) XOR E(9D + 01) XOR
5D XOR 30
= E(5A) XOR E(9E) XOR 5D XOR
30
= B3 XOR DA XOR 5D XOR 30
= 04
Output(1) = (D4 * 1) XOR (BF*2) XOR
(5D*3) XOR (30*1)
= D4 XOR E(L(BF)+L(02))
XOR E(L(5D)+L(03)) XOR 30
= D4 XOR E(9D+19) XOR (88+01)
XOR 30
= D4 XOR E(B6) XOR E(89) XOR
= D4 XOR 65 XOR E7 XOR 30
= 66
Output(2) = (D4 * 1) XOR (BF*1) XOR *2)
XOR (30*3)
= D4 XOR BF XOR (L(5D)+L(02))
XOR E(L(30)+L(03))
= D4 XOR BF XOR E(88+19) XOR
E(65+01)
= D4 XOR BF XOR E(A1) XOR
E(66)
= D4 XOR BF XOR BA XOR 50
= 81

Output(3) = (D4 * 3) XOR (BF*1) XOR
(5D*1) XOR (30*2)
= E(L(D4)+L(3)) XOR BF XOR 5D
XOR E(L(30)+L(02))
= E(41+01) XOR BF XOR 5D XOR
E(65+19)
= E(42) XOR BF XOR 5D XOR
E(7E)
= 67 XOR BF XOR 5D XOR 60
= E5








s‘(x) = a(x) © s(x)

(
(
(
(
¸
(

¸

=
(
(
(
(
¸
(

¸

02 01 01 03
03 02 01 01
01 03 02 01
01 01 03 02
'
'
'
'
, 3
, 2
, 1
, 0
c
c
c
c
s
s
s
s

(
(
(
(
¸
(

¸

c
c
c
c
s
s
s
s
, 3
, 2
, 1
, 0

86







Gambar 16. Proses MixColumn

d. Transformasi AddRoundKey
Transformasi ini melakukan operasi XOR terhadap
sebuah round key dengan array state, dan hasilnya
disimpan di array state

Gambar 17. Proses AddRoundKeys

Berikut ini adalah tampilan rounds selanjutnya
setelah penjelasan dari round pertama, dimulai dari
round ke dua sampai kesepuluh. Round terakhir tidak
melibatkan pengubahan dengan cara mix columns.


Gambar 18. Proses Round Kedua Sampai Kesepuluh
Algoritma Rijndael memiliki sistem penjadwalan
kunci sehingga pada setiap perputaran atau rounds, kunci
selalu berubah- ubah.

IV. KESIMPULAN
Dari hasil penelitian mengenai sistem keamanan
email dengan kriptografi algoritma cipher Rijndael dan
algoritma hash MD5, maka penulis dapat menarik
kesimpulan sebagai berikut :
a. Untuk menjaga keamanan file attachment email,
maka file tersebut harus dienkripsi dengan
menggunakan algoritma kriptografi tertentu. Penulis
memilih algoritma cipher Rijndael dan algoritma
hash MD5 (message digest 5) karena kedua
algoritma ini tergolong relatif baru dan
sepengetahuan penulis belum dapat dibobol oleh
kriptanalis.
b. Pengiriman email dengan aplikasi desktop dapat
dilakukan dengan mudah asal kita memiliki account
pada jasa penyedia email seperti Yahoo!Mail atau
Gmail. Pengiriman email dapat dilakukan kepada
banyak alamat tujuan dalam satu waktu, akan tetapi
file attachment yang dilampirkan dalam email hanya
satu file sekali kirim.
c. Algoritma cipher Rijndael berfungsi untuk
menyandikan isi dari dokumen, sedangkan algoritma
hash MD5 berfungsi menjaga otentisitas data, di
mana jika isi dokumen berubah maka nilai fungsi
hash MD5 juga berubah dan menyebabkan data
sudah tidak valid lagi. Selain berfungsi menjaga
otentisitas data, algoritma hash MD5 menghasilkan
sebuah nilai yang digunakan sebagai key/kunci pada
algoritma cipher Rijndael.

REFERENSI
[1] Alam, M. Agus J.. 2005. Belajar Sendiri
Pemrograman Database Lokal dan Server
Mengunakan Borland Delphi 2005. Jakarta : PT.
Elex Media Komputindo.
[2] Ariyus, Doni. 2006. Computer Security. Yogyakarta :
CV. Andi OFFSET (Penerbit Andi)
. 2009. Keamanan Multimedia. Yogyakarta : CV.
Andi OFFSET (Penerbit Andi)
[3] Bahri, K.S. dan Sjachriyanto, W. 2005.
Pemrograman Delphi. Bandung : Penerbit
Informatika
[4] Chandraleka, Happy. 2004. Keylogger dan
Pemrogramannya. Yogyakarta :
CV. Andi OFFSET (Penerbit Andi)
[5] Komputer, W. 2003. Panduan Praktis
Pemrograman Borland Delphi 7.0. Yogyakarta :
CV. Andi OFFSET (Penerbit Andi)
[6] Martina, Ir. Inge. 2002. 36 Jam Belajar Komputer
Pemrograman Internet dengan Delphi. Jakarta :
PT. Elex Media Komputindo.
[7] Munir, Ir. Rinaldi. 2005. Matematika Diskrit.
Bandung : Informatika.
c c c c c
s s s s s
, 3 , 2 , 1 , 0 , 0
) } 03 ({ ) } 02 ({ ' © © - © - =
c c c c c
s s s s s
, 3 , 2 , 1 , 0 , 1
) } 03 ({ ) } 02 ({ ' © - © - © =
) } 03 ({ ) } 02 ({ '
, 3 , 1 , 1 , 0 , 2 c c c c c
s s s s s - © - © © =
) } 02 ({ ) } 03 ({ '
, 3 , 1 , 0 , 0 , 3 c c c c c
s s s s s - © © © - =
87
[8] Stuart, McClure, dkk. 2003. Web Hacking :
Serangan dan Pertahanannya. Yogyakarta : CV.
Andi OFFSET (Penerbit Andi)
[9] Sunarto, R. B. . 2004. Membangun Sistem Akuisisi
Data Berbasis Database dengan Delphi. Jakarta :
PT. Elex Media Komputindo
[10]Hartono. 2007. Perancangan Aplikasi Kriptography
Advanced Encryption Standard. Jurusan Teknik
Informatika STMIK Dharma Putra : Tugas Akhir
Tidak Diterbitkan.
[11] Barton, David. 2009. Komponen Kriptografi Open
Source DCPCrypt v2.0
http://www.cityinthesky.co.uk/cryptography.html. [3
Februari 2010]
[12] Mujadid, Sibghatullah. 2008. Kriptoanalisis Pada
Fungsi Hash Kriptografi MD5. [Online] Tersedia
[13] Munir, Ir. Rinaldi. 2004. Fungsi Hash Satu-Arah
dan Algoritma MD5. [Online] Tersedia:
http://www.informatika.org/~rinaldi/Kriptografi/Fun
gsi%20Hash%20dan%20Algoritma%20MD5.pdf.
[12 April 2010]


88
Digital Watermarking File Audio
Sumi Khairani
#1
, Neni Muliani
*2
Fakultas Teknik, Prodi Informatika, Universitas Asahan
Kampus UNA-Jl. Jend. Ahmad Yani No. 1 Kisaran
1
sumi_khairani@gmail.com

Abstrak— Audio Watermarking dapat digunakan dengan
berbagai cara. Pertama bisa digunakan untuk
pembuktikan dari kepemilikan, informasi selama produksi,
informasi hak cipta dalam suatu bentuk watermark, dan
dapat diarahkan secara langsung di dalam perekaman.
Kepemilikan spesifik mempunyai informasi penyisipan
yang berbeda. Dapat juga digunakan untuk kendali akses,
watermark menjadi suatu pemicu untuk untuk memainkan
musik. Melacak salinan tidak sah merupakan suatu aplikasi
yang sangat penting. Informasi pribadi disisipkan kedalam
musik. Informasi pribadi bisa dijadikan nomor bagi
pelanggan untuk menelusuri musik.

Kata Kunci— Audio watermark, Copyright
I. PENDAHULUAN
Prinsip dasar watermarking bekerja dengan
menyisipkan sedikit informasi yang menunjukkan
kepemilikan, tujuan, atau data lain, pada materi
multimedia tanpa mempengaruhi kualitasnya. Jadi pada
citra (image) digital, mata kita tidak bisa membedakan
apakah citra tersebut disisipi watermarking atau tidak.
Demikian pula jika kita terapkan pada audio atau musik,
telinga kita tidak bisa mendengar sisipan informasi
tadi. Sehingga pada teknologi ini dikenal suatu
persyaratan bahwa watermarking haruslah imperceptible
atau tidak terdeteksi oleh indera penglihatan (Human
Visual System / HVS) atau indera pendengaran (Human
Auditory System / HAS). Sementara dokumen asli dan
watermarking kita simpan dan rahasiakan, dokumen
yang sudah disisipi watermarking bisa dipublikasikan.
Teknologi watermarking merupakan suatu solusi
didalam melindungi hak cipta kepemilikan terhadap data-
data digital.
Dengan perkembangan komputer digital dan
perangkat- perangkat lainnya yang serba digital, telah
membuat data digital banyak digunakan. Ada beberapa
faktor yang membuat data digital (seperti audio, citra,
video, dan text) banyak digunakan, antara lain:
1. Mudah diduplikasi dan hasilnya sama dengan
aslinya.
2. Murah untuk penduplikasian dan penyimpanan.
3. Mudah disimpan untuk kemudian diolah atau
diproses lebih lanjut.
4. Mudah didistribusikan, baik dengan media disk
maupun melalui jaringan seperti Internet.
Watermarking merupakan suatu bentuk aplikasi dari
Steganography yang merupakan ilmu yang mempelajari
bagaimana menyembunyikan suatu data pada data yang
lain. Watermarking ini agak berbeda dengan tanda air
pada uang kertas. Tanda air pada uang kertas masih dapat
dilihat oleh mata telanjang manusia (pada posisi kertas
tertentu) tetapi watermarking pada media digital disini
dimaksudkan agar tidak akan dirasakan kehadirannya
oleh manusia tanpa alat bantu mesin pengolah digital
seperti komputer dan sejenisnya.
Watermarking ini memanfaatkan kekurangan-
kekurangan sistem indera manusia seperti mata dan
telinga. Dengan adanya kekurangan inilah, metoda
watermarking ini dapat diterapkan pada berbagai media
digital. Jadi watermarking merupakan suatu cara untuk
penyembunyian atau penanaman data/informasi tertentu
(baik hanya berupa catatan umum maupun rahasia) ke
dalam suatu data digital lainnya, tetapi tidak diketahui
kehadirannya oleh indera manusia (indera penglihatan
atau indera pendengaran), dan mampu menghadapi
proses-proses pengolahan sinyal digital sampai pada
tahap tertentu.
Sebenarnya, kata watermark berasal dari industri
kertas. Suatu watermark adalah suatu desain timbul ke
dalam secarik kertas selama produksi dan digunakan
untuk identifikasi kertas dan pembuatan kertas.
Watermark itu dapat dilihat ketika kertas diarahkan pada
cahaya. Desain itu bisa beberapa pola atau gambaran-
gambaran yang menandai adanya mutu merek dagang
dari kertas. Lalu diperkenalkan kata watermark di dalam
field digital. Watermark adalah suatu kode identifikasi
yang membawa informasi tentang pemilik hak cipta,
pencipta suatu pekerjaan dan konsumen-konsumen yang
diberi hak juga.
Watemark adalah suatu tanda yang tidak kelihatan dan
secara permanen menempel ke dalam data digital untuk
perlindungan hak cipta dan sebagai tanda apabila data
sudah dirusak. Dokumen elektronik yang diberi
watermark dapat berupa gambar digital, audio atau
bahkan video. Tetapi penulis hanya berkonsentrasi pada
audio watermark berarti suatu watermark yang
menempel dalam suatu arus audio untuk
mengidentifikasi asal-muasalnya. Suatu sistim
pendeteksi watermark pada file audio dapat dilihat pada
gambar dibawah ini.




89











Gambar 1 Penyisipan Watermark Pada File Audio

Di dalam teknologi penyisipan watermark,
seorang pemilik hak cipta menggunakan suatu kunci
pribadi untuk membuat satu watermark yang tidak dapat
didengar di file audio. Sehingga kunci pribadi digunakan
untuk menyandi watermark digital ke dalam musik.
Kemudian, pemilik itu dapat menguji apakah suatu file
audio diberi watermark yang dicurigai untuk menjadi
copy yang tidak sah, berisi watermark miliknya dan
sebagai bukti yang legal dalam hukum. Di dalam blok
deteksi watermark, suatu kunci publik digunakan untuk
dekode watermark dari musik. Rencana dasar berisi
berbagai kemungkinan kedua-duanya untuk file
termampatkan dan untuk file-file yang tidak
dimampatkan. Di bawah ini sebuah gambar bagaimana
watermark audio ditempelkan ke dalam file
termampatkan seperti MP3. Mekanisme itu disebut
bitstream pemberian watermark.











Gambar 2 Bitstream Pemberian Watermark
Beberapa persyaratan dasar yang harus dimiliki oleh
suatu watermark audio yaitu
A. Bersifat biaya komputasional rendah
Biaya komputasional rendah berarti tidak memerlukan
waktu bagi watermark untuk ditempelkan dan dideteksi.
Ini merupakan suatu faktor yang penting di dalam sistim
watermark.
B. Tanpa Distorsi dari Sinyal Asli dan Perubahan
Bentuk
Watermark disisipkan di dalam file audio itu sama
sekali tidak mengurangi mutu file audio dan mengubah
bentuk. Jika suatu watermark ditempelkan dalam satu
file MP3, pelanggan itu dapat juga memainkannya di
beberapa player yang mendukung file MP3, mereka tidak
perlu membeli player yang baru kembali.
C. Serta Ketahanan dari Hal yang Tak Dapat Diketahui
Ketahanan mengacu pada kemampuan untuk
mendeteksi watermark setelah operasi pengolahan sinyal
yang umum dan serangan-serangan lainnya yang
mungkin bisa terjadi. Contoh dari operasi yang umum di
file audio yakni memasukkan didalamnya suara gaduh
(noise), pengurangan (kompressi), penyesuaian volume
atau normalisasi, konversi digital ke analog dan
sebagainya.
Sejauh ini terjadi penyerangan yang berbeda pada
watermark audio. Serangan yang terjadi adalah
penyerangan gabungan, penyerangan sinyal dan
penyerangan yang tidak terdeteksi. Suatu serangan
gabungan mempunyai salinan dari file audio dengan
watermark yang sama, penyerang merata-ratakan nilai
watermark dari sinyal audio. Sebagai suatu nilai
perhitungan pada jenis serangan, dan menjadi lebih baik
untuk menyisipkan watermark lebih dari satu kali dalam
satu file audio atau menyisipkan watermark yang
berbeda untuk file-file yang berbeda. Sinyal penghancur
penyerang mengacu pada operasi sinyal yang berbeda
seperti lossy kompressi, modulasi, konversi, dll.
Sekarang dimungkinkan untuk menyisipkan watermark
lebih dari satu pada suatu file audio.
Jika seseorang mencuri file yang diberi watermark dan
file watermark tersebut telah diberi kunci pribadi. Bisa
dipastikan bahwa file yang dicuri tersebut dapat
ditemukan pemiliknya karena telah diberikan watermark.
Bagaimanapun, satu serangan pada file akan memeriksa
prosedur penciptaan. Dengan demikian sulit untuk
memutuskan siapa sebagai pemilik riil dari file audio.
Properti yang lain dari audio watermark adalah hal tak
dapat diketahui (imperceptibility). Harus hampir tidak
ada perbedaan antara yang diberi watermark dan yang
tidak diberi watermark. Pada gambar ada suatu grafik
gelombang suara dari musik yang sama dengan
watermark dan yang tidak diberi watermark. Seperti
yang terlihat, hanya ada sedikit perbedaan yang tidak
diperhatikan karena hanya terjadi di sepintas lalu dan
dapat juga diabaikan.






Gambar 3 Gelombang Suara Dari File Audio Yang Sama
Audio Watermarking dapat digunakan dengan banyak
cara. Pertama bisa digunakan untuk pembuktikan dari
kepemilikan, informasi selama produksi, informasi hak
cipta dalam suatu bentuk watermark, dapat diarahkan
secara langsung di dalam perekaman. Kepemilikan
spesifik mempunyai informasi penyisipan yang berbeda.
90
Dapat juga digunakan untuk kendali akses, watermark
menjadi suatu pemicu untuk untuk memainkan musik.
Melacak salinan tidak sah adalah suatu aplikasi yang
sangat penting. Informasi pribadi disisipkan kedalam
musik. Informasi pribadi bisa dijadikan nomor bagi
pelanggan untuk menelusuri musik. Jika musik seperti itu
ditemukan di dalam internet, watermark akan dikacaukan
dan nomor pelanggan bisa dikenaal untuk tindakan-
tindakan hukum selanjutnya.
II. METODOLOGI
Penelitian dan pengujian yang dilakukan pada sebuah
file MP3 adalah untuk mempraktekkan hasil dari analisa
yang bertujuan untuk menguji keberhasilan dari metode
penyisipan file watermarking yang telah dipilih,
penganalisaan di lakukan dengan cara membandingkan
teori dan praktek sehingga diperoleh gambaran yang
jelas tentang persamaan dan perbedaan diantara
keduanya.
Gambar dibawah ini memperlihatkan prosedur awal
dari file MP3 yang akan disisipkan dokumen text yang
sebelumnya dibuatkan password agar akses text yang
dimasukkan hanya diketahui oleh pemegang hak cipta.
Selanjutnya merupakan konsep dasar penyisipan teks
yang di encrypt dengan RC4 lalu menjadi file yang
terwatermark yang diuji coba untuk mengetahui
robustness pada file MP3 dengan berbagai noise yang
dilakukan penulis

Gambar 4 Konsep Dasar Aplikasi Penyisipan Text pada File MP3
III. UJI COBA
Secara logika, jika text yang dijadikan file watermark
berukuran 1000 bit maka, kapasitas file juga akan
mengalami perubahan ukuran, tetapi dengan dilakukan
enkripsi pada text, maka ukuran file hanya mengalami
perubahan yang tidak berarti, bahkan tidak
mempengaruhi kualitas suara sedikitpun. Berikut ini ini
merupakan isi dari file MP3 yang digunakan pada uji
coba thesis ini. Pada file MP3 yang terwatermark terlihat
pada bit terakhir ada penyisipan text dan terlihat acak,
hal ini terjadi karena enkripsi pada text.
File MP3 yang disebelah kiri merupakan file MP3
yang diberi watermark, sedangkan file MP3 yang
disebelah kanan merupakan file MP3 yang asli. File MP3
ini dibuka dengan notepad yang dapat melihat text yang
terlihat acak pada file MP3 yang diuji coba oleh penulis.


Gambar 5 Penyisipan Text Pada Bit Terakhir (kiri)
Pengujian tingkat keberhasilan dengan analisis
robustness akan terlihat pada pengujian ini. File MP3
akan dikompressi dengan tool kompressi yang penulis
anggap cocok dengan penelitian yang dilakukan. Awal
mula program dijalankan terlihat tampilan sebagai
berikut:

Gambar 6 Pembukaan Program Uji Coba
Masuk ke proses selanjutnya adalah membuka file
audio dan memasukkan password, ,kemudian melakukan
pengetikan pesan secara manual tanpa batasan pada
interface yang telah dibangun terakhir melakukan
penyimpanan file mp3.
Berikut ini merupakan ukuran file yang ada sebelum
terjadinya penyisipan program watermark berupa
dokumen text.

91

Gambar 7 Ukuran File MP3 Sebelum Penyisipan
Selanjutnya merupakan tampilan file ketika sudah
terjadinya penyisipan.

Gambar 8 Ukuran File MP3 Setelah Penyisipan
Kalau diperhatikan secara sekilas tidak terlihat adanya
perubahan pada kapasitas file, tetapi jika dilihat lebih
teliti maka akan tampak perubahan yang tidak terlalu
mencolok pada file MP3 itu.
Proses berikutnya adalah melakukan kompressi pada
file MP3 yang telah disisipkan label watermark yang
ukuran awalnya 5.12 MB menjadi 3.84 MB. Hasil
tersebut dapat terlihat pada gambar dibawah.




Gambar 8 MP3 Watermark dan MP3 Asli Setelah Proses Kompressi
IV. KESIMPULAN
Setelah dilakukan penerapan teori,
perancangan program, dan berbagai percobaan
serta memperoleh hasil, maka Teknologi Audio
Watermarking merupakan perlindungan yang
sangat baik dan sebagai tanda kepemilikan hak
cipta dari suatu kekayaan intelektual.

DAFTAR PUSTAKA
[1] Munir, Rinaldi, Pengolahan Citra Digital, Informatika, Bandung,
2004.
[2] Munir, Rinaldi, Kriptografi, Informatika, Bandung, 2004.
[3] Angel, Edward, Interactive Computer Graphics - A Top Down
Approach Using Open GL, Pearson, Addison Wesley, 2005.
[4] Ir. I. Wiseto P. Agung MSc. Digital Watermarking : Teknologi
Pelindung HAKI Multimedia Elektro Indonesia, Nomor 35,
Tahun VI, Februari 2001.
[5] Audio Watermark, Jiamian Yang
[6] Fragile Watermarking And Unkeyed Hash Function
Implementation For Image Authentication On Cnn-Um,
M•Us_Tak E. Yalc_ In And Joos Vandewalle, Katholieke
Universiteit Leuven Department of Electrical Engineering
(ESAT), SCD-SISTA Kasteelpark Arenberg 10, B-3001,
Heverlee (Leuven), BELGIUM
[7] EC-5010 Keamanan Sistem Informasi, Teknik dan
Implementasinya pada Citra di World Wide Web menggunakan
Java Script, Disusun oleh: Elsiawaty / 13201142 Institut
Teknologi Bandung Departemen Teknik Elektro Fakultas
Teknik Industri
[8] Steganography And Digital Watermarking, Copyright © 2004,
Jonathan Cummins, Patrick Diskin, Samuel Lau and Robert
Parlett, School of Computer Science, The University of
Birmingham.
[9] Tekonologi watermarking Pada Citra Digital, Rummi Sirait, ST .
MT
[10] Watermarking sebagai Teknik Penyembunyian Label Hak Cipta
pada Data Digital, Suhono H. Supangkat, Kuspriyanto, Juanda,
Departemen Teknik Elektro, Institut Teknologi Bandung
[11] http://citeseerx.ist.psu.edu
[12] www.wikepedia.org

92
Perancangan Aplikasi Paillier Cryptosystem
untuk Mengamankan Text File
Novy
#1
, Opim Sitompul
*2
, M.Andri Budiman
#3

Universitas Sumatera Utara
Jln.Sindoro no 11 AA
1
Novy_1307@yahoo.com
2
opim@usu.ac.id
3
mandrib@gmail.com

Abstrak— Bagi kebanyakan orang, kriptografi
berhubungan dengan aktivitas menjaga komunikasi tetap
rahasia dan khusus. Encryption (Enkripsi) adalah
transformasi data ke dalam bentuk yang hampir tidak
dapat dibaca tanpa pengetahuan yang cukup dan sesuai
(misalnya kunci). Decryption (dekripsi) adalah kebalikan
dari enkripsi, yakni transformasi dari data yang telah
dienkripsi (ciphertext) kembali ke bentuk semula (plaintext).
Paillier cryptosystem merupakan sebuah algoritma
asimetris probabilistic untuk kriptografi kunci publik.
Sekuritas dari algoritma Paillier ini bergantung pada
problema perhitungan n-residue class yang dipercaya
sangat sulit untuk dikomputasi. Algoritma Paillier ini juga
membutuhkan algoritma Extended Euclidean untuk
menghitung nilai invers modular dan algoritma Fast
Exponentiation untuk menghitung nilai perpangkatan
modulo bilangan besar serta algoritma Rabin Miller untuk
menentukan apakah nilai tersebut prima atau bukan.
Perangkat lunak ini menjelaskan prosedur kerja
dari Paillier cryptosystem secara tahapan demi tahapan
yang mencakup proses pembentukan kunci, proses enkripsi
dan proses dekripsi. Selain itu, perangkat lunak ini juga
disertai fasilitas untuk menyimpan laporan hasil
perhitungan dalam sebuah file teks. Perangkat lunak juga
menyediakan aplikasi untuk melakukan pengamanan data
file teks.

Keywords— Kriptografi, Encryption, Description, Paillier
Cryptosystem, Extended Euclidean, Fast Exponentiation,
Rabin Miller.
I. PENDAHULUAN
Kriptografi memungkinkan orang meninggalkan pesan
rahasia yang dijumpai dalam dunia fisik ke dalam dunia
elektronik, sehingga memungkinkan orang melakukan
bisnis secara elektronik tanpa keraguan atas pemalsuan,
pencurian dan penipuan. Setiap hari ratusan ribu orang
yang berinteraksi secara elektronik, apakah melalui e-
mail, e-commerce, mesin ATM atau telepon seluler.
Peningkatan penyebaran informasi secara elektronik
telah mengakibatkan ketergantungan yang meningkat
terhadap kriptografi. Salah satu peranan dari kriptografi
adalah untuk melakukan pengamanan data yaitu dengan
menggunakan algoritma kriptografi.
Paillier Cryptosystem yang ditemukan oleh Pascal
Paillier pada tahun 1999 merupakan sebuah algoritma
asimetris probabilistic untuk kriptografi kunci publik.
Sekuritas dari algoritma Paillier ini bergantung pada
problema perhitungan n-residue class yang dipercaya
sangat sulit untuk dikomputasi. Problema ini dikenal
dengan asumsi Composite Residuosity (CR) dan
merupakan dasar dari kriptosistem Paillier ini. Skema ini
merupakan additive homomorphic cryptosystem, yang
berarti bahwa diberikan kunci publik dan enkripsi dari
m
1
dan m
2
, seseorang akan mampu menghitung enkripsi
dari m
1
yang digabungkan dengan m
2
. Dengan enkripsi
probabilistic, seorang crypanalyst tidak dapat lagi
mengenkripsi plaintext acak untuk mencari ciphertext
yang benar. Sebagai ilustrasi, misalkan cryptanalyst
memiliki ciphertext C = E
K
(M). Sekalipun dia menebak
M dengan benar, ketika dia mengenkripsi E
K
(M), hasil
yang diperoleh (C
j
) akan berbeda dengan ciphertext C
i
.
Dia tidak dapat membandingkan C
i
dan C
j
sehingga dia
tidak dapat mengetahui bahwa dia telah menebak pesan
dengan benar. Sekalipun, cryptanalyst memiliki kunci
publik, plaintext dan ciphertext, dia tidak dapat
membuktikan bahwa ciphertext tersebut merupakan hasil
enkripsi dari plaintext yang bersangkutan, tanpa
menggunakan kunci dekripsi. Selain itu, algoritma ini
merupakan suatu algoritma enkripsi probabilistic yang
lebih efisien karena proses enkripsi per karakter dan
bukan per Bit. Proses enkripsi dan deskripsi Paillier
Cryptosystem yang tergolong sulit dikarenakan dalam
prosesnya memerlukan banyak proses ataupun algoritma.
Prosedur kerja dari Paillier Cryptosystem terdiri dari
proses pembangkitan kunci, proses enkripsi dan proses
dekripsi. Ketiga proses dari Paillier Cryptosystem
menggunakan komputasi matematika yang cukup
rumit.Agar dapat lebih memahami mengenai prosedur
kerja dari Paillier Cryptosystem, maka diperlukan sebuah
perangkat lunak yang dapat menjelaskan prosedur kerja
dari Paillier Cryptosystem sehingga dapat membantu
pemahaman mengenai Paillier Cryptosystem tersebut dan
agar dapat menerapkan Paillier Cryptosystem ini untuk
melakukan pengamanan data file, maka diperlukan suatu
aplikasi Paillier Cryptosystem.
Adapun tujuan penulisan Tugas Akhir ini adalah:
1. Untuk menjelaskan proses kerja dari Paillier
cryptosystem.
2. Untuk merancang aplikasi yang dapat membantu
pemahaman mengenai Paillier Crytosystem
93
sekaligus cara penerapan Paillier cryptosystem
dalam melakukan pengamanan data.
Sedangkan, manfaat penulisan Tugas Akhir adalah:
1. Dapat menambah pemahaman pengguna mengenai
Paillier cryptosystem.
2. Dapat menggunakan aplikasi untuk melakukan
pengamanan data file.
Ruang lingkup permasalahan dalam merancang
perangkat lunak aplikasi dan tutorial ini dibatasi sebagai
berikut:
1. Untuk bagian pemahaman, semua bilangan yang
digunakan bertipe data bilangan bulat positif yang
memiliki batasan minimal 2 digit dan maksimal 6
digit agar perhitungan tidak memerlukan waktu
yang lama dan lebih mudah dipahami, sedangkan
untuk bagian aplikasi, memiliki batasan minimal 4
digit dan maksimal 8 digit.
2. Perangkat lunak akan menampilkan laporan hasil
proses perhitungan yang dapat disimpan dalam
bentuk text file.
3. Input pesan untuk bagian pemahaman dibatasi
maksimal 20 karakter yaitu berupa input data
langsung dan sedangkan untuk bagian aplikasi
dibatasi file yang dapat dibuka bertipe *.txt.
4. Hasil enkripsi file yang dihasilkan oleh perangkat
lunak berekstensi *.pai.
5. Metode pembangkitan bilangan prima yang
digunakan adalah metode Fermat.
6. Perancangan aplikasi ini menggunakan Visual
Basic.NET
Agar pembahasan lebih sistematika, maka tulisan ini
dibuat dalam lima bab, yaitu :
Bab I Pendahuluan
Berisi latar belakang, identifikasi
masalah, tujuan dan manfaat, batasan
masalah dan sistematika penulisan.
Bab II Landasan Teori
Berisi tentang penjelasan singkat
mengenai sejarah dan definisi
kriptografi, metode kriptografi, dan
penjelasan mengenai metode Paillier.
Bab III Pembahasan dan Perancangan
Berisi tentang pembahasan mengenai
proses kerja dari metode Paillier dan
perancangan tampilan form dari
aplikasi.
Bab IV Algoritma dan Implementasi
Berisi tentang algoritma dan
implementasi dari aplikasi.
Bab V Kesimpulan dan Saran
Berisi tentang kesimpulan yang dapat
ditarik setelah menyelesaikan tugas
akhir ini dan saran-saran yang dapat
diberikan untuk pengembangan
perangkat lunak lebih lanjut.
II. LANDASAN TEORI
Kriptografi berasal dari bahasa Yunani yakni kriptos
yang artinya tersembunyi dan graphia
(Menezes,Oorschot and Vanstone,1996) yang artinya
sesuatu yang tertulis, sehingga kriptografi dapat disebut
sebagai sesuatu yang tertulis secara rahasia.
Kriptografi merupakan suatu bidang ilmu yang
mempelajari tentang bagai-mana merahasiakan suatu
informasi penting ke dalam suatu bentuk yang tidak
dapat dibaca oleh siapapun serta mengembalikannya
kembali menjadi informasi semula dengan menggunakan
berbagai macam teknik yang telah ada sehingga
informasi tersebut tidak dapat diketahui oleh pihak
manapun yang bukan pemilik atau yang tidak
berkepentingan. Sisi lain dari kriptografi ialah
kriptanalisis (Cryptanalysis) yang merupakan studi
tentang bagaimana memecahkan mekanisme kriptografi.
Bagi kebanyakan orang, kriptografi lebih diutamakan
dalam menjaga komunikasi tetap rahasia dan khusus.
Seperti yang telah diketahui dan disetujui bahwa
perlindungan atau proteksi terhadap komunikasi yang
sensitif telah menjadi penekanan kriptografi selama ini.
Akan tetapi hal tersebut hanyalah sebagian dari
penerapan kriptografi selama ini.
Kriptografi sesungguhnya merupakan studi terhadap
teknik matematika yang terkait dengan 4 aspek
keamanan dari suatu informasi yaitu kerahasiaan
(confidentiality), integritas data (data integrity),
otentifikasi (authentication), dan ketiadaan penyangkalan
(non-repudiation). Keempat aspek tersebut merupakan
tujuan utama dari suatu sistem kriptografi yang dapat
dijelaskan sebagai berikut :
A. Kerahasiaan (confidentiality)
Kerahasiaan bertujuan untuk melindungi suatu
informasi dari semua pihak yang tidak berhak atas
informasi tersebut. Terdapat beberapa cara yang
dapat digunakan untuk menjaga kerahasiaan suatu
informasi, mulai dari penjagaan secara fisik,
misalnya menyimpan data pada suatu tempat khusus,
sampai dengan penggunaan algoritma matematika
untuk mengubah bentuk informasi menjadi tidak
terbaca.
B. Integritas data (data integrity)
Integritas data bertujuan untuk mencegah terjadinya
pengubahan informasi oleh pihak-pihak yang tidak
berhak atas informasi tersebut. Untuk menjamin
integritas data ini kita harus mempunyai kemampuan
untuk mendeteksi terjadinya manipulasi data oleh
pihak-pihak yang tidak berkepentingan. Manipulasi
data yang dimaksud disini meliputi penyisipan,
penghapusan, maupun penggantian data.

94
C. Otentifikasi (authentication)
Otentifikasi merupakan identifikasi yang dilakukan
oleh masing-masing pihak yang saling
berkomunikasi harus mengindetifikasi satu sama
lainnya. Informasi yang didapat oleh suatu pihak
dari pihak lain yang harus diidentifikasi untuk
memastikan keaslian dari informasi yang diterima.
Identifikasi terhadap suatu informasi dapat berupa
tanggal pembuatan informasi, isi informasi, waktu
kirim, dan hal-hal lainnya yang berhubungan dengan
informasi tersebut.
D. Ketiadaan penyangkalan (non-repudiation)
Non-repudiation berfungsi untuk mencegah
terjadinya penyangkalan terhadap suatu aksi yang
telah dilakukan oleh pelaku aksi itu sendiri. Jika
terjadi penyangkalan maka diperlukan suatu
prosedur yang melibatkan pihak ketiga untuk
menyelesaikan masalah tersebut. (Menezes,Oorschot
and Vanstone,1996).
Berdasarkan pemakaian kunci maka sistem kriptografi
(cryptosystems) dapat digolongkan atas dua jenis sistem,
yaitu: sistem kriptografi kunci publik (public key
cryptography) dan sistem kriptografi kunci rahasia
(secret key cryptography). Dalam sistem kriptografi
kunci rahasia yang dikenal juga dengan symmetric
cryptosystems, pihak pengirim dan penerima bersama-
sama menyepakati sebuah kunci rahasia yang akan
digunakan dalam proses enkripsi dan deskripsi tanpa
diketahui oleh pihak lain. Sedangkan dalam sistem
kriptografi kunci publik atau dikenal dengan asymmetric
cryptosystem, pihak pengirim maupun pihak penerima
mendapatkan sepasang kunci, yakni kunci publik (public
key) dan kunci rahasia (private key) dimana kunci publik
dipublikasikan dan kunci rahasia tetap dirahasiakan.
Enkripsi dilakukan dengan menggunakan kunci publik
sedangkan deskripsi dilakukan dengan menggunakan
kunci rahasia.
Masalah utama dengan sistem kriptografi simetris ini
adalah bagaimana membuat pengirim dan penerima
pesan setuju atas kunci rahasia yang digunakan tanpa
orang lain mampu mendapatkan dan mengetahuinya.
Atau dengan kata lain bagaimana memilih kunci rahasia
yang benar-benar aman. Hal ini membutuhkan suatu
metode dimana kedua pihak dapat berkomunikasi tanpa
kekhawatiran akan tercecernya kunci tersebut. Akan
tetapi, keuntungan dari kriptografi kunci rahasia adalah
biasanya lebih cepat dibandingkan dengan kriptografi
kunci publik.
Ilustrasi dari sistem kriptografi simetris dapat dilihat
pada gambar 1 berikut:


Gambar 1 Ilustrasi Sistem Kriptografi Simetris
Sistem kriptografi asimetris biasanya lebih dikenal
dengan kriptografi kunci-publik (public-key
cryptography). Kriptografi kunci publik diperkenalkan
oleh Whitfield Diffie dan Martin Hellman pada tahun
1976. Kriptografi kunci publik memiliki dua penggunaan
utama, yakni enkripsi dan tanda tangan digital
(encryption and digital signatures). Dalam sistem
kriptografi kunci publik, masing-masing pihak mendapat
sepasang kunci, satu disebut kunci publik (public key)
dan satu lagi disebut kunci rahasia (private key). Kunci
publik dipublikasikan, sementara kunci rahasia tetap
dirahasiakan. Keharusan penggunaan kunci secara
bersama antara pengirim dan penerima pesan rahasia
dihilangkan, semua komunikasi hanya melibatkan kunci
publik, dan tidak ada kunci rahasia yang ditransmisikan
atau digunakan bersama. Dalam sistem ini, tidak ada lagi
kecurigaan terhadap keamanan dari sistem komunikasi.
Satu-satunya kebutuhan bahwa kunci publik dikaitkan
dengan penggunanya dalam lingkup yang saling
mempercayai (contoh dalam suatu trusted directory).
Seseorang dapat mengirimkan pesan rahasia dengan
hanya menggunakan informasi yang umum (kunci
publik), tetapi pesan tersebut hanya mungkin didekripsi
dengan menggunakan kunci rahasia, dimana satu-satunya
yang memiliki kunci rahasia tersebut hanyalah orang
yang diharapkan menerima pesan tersebut. Kriptografi
kunci publik tidak hanya digunakan untuk merahasiakan
pesan, tetapi juga untuk otentifikasi (tanda tangan digital)
dan teknik lainnya.
Dalam kriptografi kunci publik, kunci rahasia selalu
berhubungan secara matematis terhadap kunci publik.
Oleh karena itu, selalu dimungkinkan untuk menembus
(menyerang) sistem kunci publik dengan menurunkan
kunci rahasia dari kunci publik. Biasanya, cara untuk
menangkal kemungkinan tersebut adalah membuat
sesulit mungkin untuk menghasilkan kunci privat dari
kunci publik. Sebagai contoh, beberapa kriptosistem
kunci publik dibuat sedemikian hingga penurunan kunci
rahasia (privat) dari kunci publik mengharuskan
penyerang melakukan faktorisasi terhadap bilangan yang
sangat besar, dalam hal ini sangat sulit untuk melakukan
penurunan. Inilah ide di belakang RSA public-key
cryptosystem. Ilustrasi dari sistem kriptografi asimetris
dapat dilihat pada gambar 2 berikut:


Gambar 2 Ilustrasi Sistem Kriptografi Asimetris
Privacy (kerahasiaan) mungkin merupakan aplikasi
paling nyata dari kriptografi. Kriptografi dapat digunakan
untuk mengimplementasikan privacy hanya dengan
mengenkrip informasi yang diinginkan untuk tetap
private. Agar seseorang dapat membaca data private ini
dia harus mendekrip terlebih dahulu. Kadang-kadang
95
informasi tertentu bukan untuk diakses oleh siapapun
juga, dan dalam hal ini informasi dapat disimpan
sedemikian rupa sehingga membalik proses merupakan
sesuatu yang secara virtual tidak mungkin. Misalnya,
dalam sistem multi-user, tidak ada satu orangpun
dimungkinkan untuk mengetahui daftar password dari
masing-masing user dalam sistem.
Authentication adalah suatu proses untuk
membuktikan dan memverifikasi informasi tertentu.
Kadang seseorang ingin memverifikasi asal dokumen,
indentitas pengirim, waktu dan tanggal penandatanganan
atau pengiriman, identitas komputer atau user dan lain-
lain. Suatu digital signature adalah cara cryptography
dimana dengan cara tersebut beberapa hal di atas dapat
diverifikasi. Tanda tangan digital dari suatu dokumen
adalah potongan informasi yang didasarkan kepada
dokumen dan kunci rahasia penanda-tangan. Tanda
tangan digital memanfaatkan fungsi hash satu arah untuk
menjamin bahwa tanda tangan itu hanya berlaku untuk
dokumen yang bersangkutan saja. Bukan secara
keseluruhan yang ditandatangani, namun biasanya yang
ditandatangani adalah sidik jari dari dokumen itu beserta
timestamp-nya dengan menggunakan kunci privat.
Timestamp berguna untuk menentukan waktu
pengesahan dokumen.
Setiap hari orang menandatangani nama mereka dalam
surat, bukti penggunaan kartu kredit, dan dokumen
lainnya, yang menunjukkan bahwa mereka setuju dengan
isi dokumen tersebut. Dalam hal ini, mereka melakukan
otentikasi bahwa mereka dalam kenyataannya adalah
pemilik atau pengirim atau sumber dari dokumen. Hal ini
memungkinkan orang lain untuk melakukan verifikasi
bahwa pesan khusus benar-benar berasal dari si penanda-
tangan dokumen. Akan tetapi, cara ini bukanlah bebas
dari kemungkinan pencurian atau pemalsuan dari pihak
ketiga, karena orang dapat ―mengangkat‖ tanda-tangan
dari dalam dokumen dan menempatkannya ke dokumen
lain, dengan demikian menghasilkan dokumen asli tapi
palsu (aspal). Tanda tangan konvensional (dengan tinta)
juga tidak aman dari pemalsuan karena dimungkinkan
untuk mereproduksi sebuah tanda tangan pada dokumen
lain atau mengubah dokumen setelah dokumen ditanda-
tangani. Tanda tangan digital dan tulisan tangan
tergantung pada fakta bahwa sulit untuk mendapatkan
dua orang dengan tanda tangan sama.
Suatu key agreement protocol, juga dikenal dengan key
exchange protocol, adalah sebarisan langkah yang
dilakukan bila dua atau lebih pihak perlu sepakat atas
suatu kunci yang digunakan untuk suatu secret-key
cryptosystem. Protokol ini memungkinkan orang
menggunakan kunci secara bersama dengan bebas dan
aman melalui suatu medium yang tidak aman, tanpa perlu
terlebih dahulu ada pembentukan kunci rahasia bersama.
Misalkan Ali dan Bob ingin menggunakan satu secret-
key cryptosystem untuk berkomunikasi secara aman.
Mereka terlebih dahulu harus memutuskan apa kunci
yang mereka gunakan. Bob bukannya menelepon Ali dan
mendiskusikan apa kunci yang mereka gunakan, yang
bisa saja didengar oleh pihak ketiga, mereka memutuskan
menggunakan satu protokol kesepakatan kunci (key
agreement protocol). Dengan menggunakan key
agreement protocol, Ali dan Bob dapat saling
mempertukarkan kunci dalam lingkungan yang tidak
aman. Salah satu contoh protokol ini adalah Diffie-
Hellman key agreement. Dalam beberapa kasus, public-
key cryptography digunakan dalam suatu key agreement
protocol. Contoh lainnya adalah penggunaan amplop
dijital (digital envelopes) untuk key agreement.
Identification (identifikasi) adalah suatu proses melalui
mana seseorang yakin tentang identitas orang lain atau
entitas tertentu. Dalam kehidupan kita sehari-hari kita
mengidentifikasikan anggota keluarga kita, kawan, dan
teman sejawat dengan karakteristik fisik mereka, seperti
suara, muka atau karakteristik lainnya. Karakteristik ini
disebut biometrics, yang hanya dapat digunakan pada
jaringan dengan perangkat khusus. Entitas dalam sebuah
jaringan dapat juga mengidentifikasikan entitas lain
dengan menggunakan metode kriptografi.
Otentikasi dan identifikasi adalah dua hal yang
berbeda. Identifikasi mengharuskan verifier (pelaku
verifikasi) membandingkan informasi yang diberikan
terhadap semua entitas yang diketahuinya, sedangkan
otentikasi membutuhkan pengecekan informasi tentang
entitas tunggal yang diberikan dan diidentifikasikan
sebelumnya. Selanjutnya, identifikasi harus
mengidentifikasikan entitas secara unik, sementara
autentikasi tidak mengharuskan keunikan. Sebagai
contoh, seseorang yang sedang log into rekening bersama
tidak diidentifikasikan secara unik, tetapi dengan
mengetahui password bersama, mereka diotentikasikan
sebagai salah satu pemilik/pengguna rekening tersebut.
Kemudian, identifikasi tidak perlu mengotentikasikan
pengguna dalam maksud tertentu.
Di antara sistem bilangan, yang paling sederhana
adalah bilangan-bilangan asli yaitu 1, 2, 3, 4, 5, …. ,dan
biasanya bilangan asli dinotasikan dengan .Dengan
bilangan ini kita dapat menghitung buku-buku kita,
teman-teman kita, uang kita, dan juga menhitung
ranking. Jika menggandengkan negatifnya dan nol,
diperoleh bilangan-bilangan bulat yaitu …, -3, -2, -1, 0,
1, 2, 3, ….,dan bilangan bulat dinotasikan dengan ℤ .
Himpunan bilangan bulat dibagi tiga, yaitu bilangan
bulat positif,yaitu bilangan bulat yang lebih besar dari
nol yang dituliskan dengan ℤ
+
, nol , dan bilangan bulat
negatif , yaitu bilangan bulat yang lebih kecil dari nol
yang dituliskan dengan ℤ
-
(Abdussakir. 2009: 102)
Dalam pengukuran panjang, berat atau tegangan listrik,
bilangan-bilangan bulat tidak memadai. Bilangan ini
terlalu kurang untuk memberikan ketelitian yang cukup.
Oleh karena itu dituntun juga untuk mempertimbangkan
hasil bagi (rasio) dari bilangan-bilangan bulat yaitu ¾, ½,
dan sebagainya. Bilangan-bilangan yang dapat dituliskan
dalam bentuk m/n dimana m dan n adalah bilangan-
96
bilangan bulat dengan n ≠ 0, disebut bilangan-bilangan
rasional.
Bilangan-bilangan rasional tidak berfungsi untuk
mengukur semua panjang. Fakta yang mengejutkan ini
ditemukan oleh orang Yunani kuno beberapa abad
sebelum Masehi. Mereka memperlihatkan bahwa
meskipun √2 merupakan panjang sisi miring sebuah
segitiga siku-siku dengan sisi-sisi 1, bilangan ini tidak
dapat dituliskan sebagai suatu hasil bagi dari dua
bilangan bulat. Jadi √2 adalah suatu bilangan tak rasional.
Demikian juga bentuk-bentuk akar lainnya.
Sekumpulan bilangan (rasional dan tak rasional) yang
dapat mengukur panjang, bersama-sama dengan
negatifnya dan nol dinamakan bilangan-bilangan real.
Bilangan-bilangan real dapat dipandang sebagai
pengenal (label) untuk titik-titik sepanjang sebuah garis
mendatar. Di sana bilangan-bilangan ini mengukur jarak
ke kanan atau ke kiri (jarak berarah) dari suatu titik tetap
yang disebut titik asal dan diberi label 0. Walaupun tidak
mungkin memperlihatkan semua label itu, tiap titik
memang mempunyai sebuah label tunggal bilangan real.
Bilangan ini disebut koordinat titik tersebut. Dan garis
koordinat yang dihasilkan diacu sebagai garis real.

Gambar 3 Sistem Bilangan
Greatest Common Divisor (GCD), dalam bahasa
Indonesia adalah FPB (Faktor Persekutuan Terbesar).
Salah satu metode yang dapat digunakan untuk
menghitung GCD dari dua buah bilangan adalah dengan
menggunakan algoritma Euclidean yang ditulis dalam
bukunya ‗Elements‘ sekitar 300 tahun sebelum masehi.
Algoritma ini bukan hasil rancangannya. Para ahli
sejarah menyatakan bahwa algoritma mungkin 200 tahun
lebih tua.Knuth mendeskripsikannya dengan beberapa
modifikasi modern dan dirancang dalam ilustrasi bahasa
Pascal seperti berikut :
Begin
P := A; Q := B;
While Q ≠ 0 Do Begin
R := P Mod Q;
P := Q;
Q := R;
End
GCD(A,B) := P
End
Least Common Multiplication (LCM), dalam bahasa
Indonesia adalah KPK (Kelipatan Persekutusan Terkecil),
yaitu sebuah nilai terkecil yang merupakan kelipatan dari
dua buah bilangan. Cara untuk mencari LCM ini adalah
dengan memanfaatkan nilai GCD dari dua buah bilangan.
Rumusan yang dihasilkan oleh penulis untuk menghitung
nilai LCM adalah sebagai berikut:
Input : Bilangan A dan B.
Output : Nilai LCM
Proses : nGCD = GCD(A, B)
LCM = nGCD * (A / nGCD) * (B / nGCD)
Bilangan prima adalah bilangan integer yang lebih
besar dari satu yang memiliki faktor bilangan satu dan
bilangan itu sendiri.
Terdapat beberapa metode tes peluang prima, tes
menentukan apakah suatu bilangan termasuk bilangan
prima atau bukan dengan tingkat keyakinan tertentu. Jadi
kita tidak yakin seratus persen bahwa bilangan yang kita
tes adalah betul-betul bilangan prima.
Metode untuk tes peluang prima yang paling sering
digunakan adalah metode Rabin-Miller. Algoritma ini
dirancang oleh Michael Rabin dengan berdasarkan
beberapa ide dari Gary Miller. Algoritma pengetesan ini
adalah seperti berikut :
1. Pilih bilangan acak p untuk dites.
2. Hitung b, dimana b adalah banyaknya (p – 1)
dibagi 2 (yaitu, b adalah pangkat terbesar dari 2,
sedemikian sehingga 2b merupakan faktor dari p –
1).
3. Kemudian hitung m, sedemikian sehingga p = 1 +
2
b
.m
4. Pilih bilangan acak a sedemikian sehingga a lebih
kecil daripada p.
5. Set j = 0 dan set z = a
m
mod p.
6. Jika z = 1 atau jika z = p – 1, maka p lolos tes dan
mungkin bilangan prima.
7. Jika j > 0 dan z = 1, maka p bukan bilangan prima.
8. Set j = j + 1. Bila j < b dan z ≠ p – 1, set z = z
2
mod
p dan kembali ke tahap 4. Jika z = p – 1, maka p
lolos tes dan mungkin prima.
9. Jika j = b dan z ≠ p – 1, maka p bukan bilangan
prima.
Contoh:
- Pilih bilangan p, misalkan p = 37, maka p – 1 = 37
– 1 = 36.
- b = 2, karena 2
2
= 4 merupakan bilangan 2
n
terbesar
yang dapat membagi 36.
- 37 = 1 + 2
2
.m atau 36 = 4m sehingga m = 9.
- Pilih bilangan a, misalkan a = 3.
- j = 0, z = 3
9
mod 37 = 36.
- Jika z = 1, maka p lolos tes dan merupakan
bilangan prima.
Aritmatika modular merupakan operasi matematika
yang banyak diimplementasikan pada metode kriptografi.
Pada metode kriptografi simetris, operasi aritmetika
modular yang sering dipakai adalah operasi penjumlahan
modulo dua. Operasi modulo dua ini melibatkan bilangan
97
0 dan 1 saja sehingga identik dengan bit pada komputer.
Sebagai contoh :
23 mod 12 = 11
Cara lain untuk menuliskan bentuk ini adalah dengan
menyatakan bahwa 23 dan 11 adalah ekivalen, modulo
12, seperti berikut :
23 ≡ 11 (mod 12)
Secara mendasar, a ≡ b (mod n) jika a = b + kn untuk
beberapa bilangan integer k. Jika a merupakan non-
negatif dan b di antara 0 sampai n, dimana b merupakan
sisa hasil bagi dari a ketika dibagi dengan n. Dengan kata
lain, b adalah hasil dari a modulo n. Kadang-kadang a
juga disebut kongruen dengan b modulo n.
Operasi a mod n menghasilkan sisa bagi dari a,
dimana sisa bagi merupakan beberapa bilangan integer
dari 0 sampai n – 1. Operasi ini merupakan reduksi
modular. Sebagai contoh, 5 mod 3 = 2.
Aritmatika modular mirip dengan aritmatika biasa,
terdapat fungsi komutatif, assosiatif dan distributif.
Fungsi-fungsi tersebut dapat dideklarasikan seperti
berikut :
(a + b) mod n = ((a mod n) + (b mod n)) mod n
(a – b) mod n = ((a mod n) – (b mod n)) mod n
(a * b) mod n = ((a mod n) * (b mod n)) mod n
(a * (b + c)) mod n = (((a * b) mod n) + ((a * c) mod
n)) mod n
Kriptografi banyak menggunakan perhitungan mod n,
karena perhitungan logaritma diskrit dan akar kuadrat
mod n merupakan persoalan sulit. Aritmatika modular
lebih mudah dikerjakan pada komputer, karena operasi
ini membatasi hasil yang didapatkan sehingga hasil
operasi dari k-bit modulo n tidak akan lebih dari n.
Selain itu, untuk menghitung pangkat dari suatu bilangan
modulo bilangan lainnya, dapat dikerjakan secara
terpisah seperti contoh berikut ini :
Misalkan ingin dicari nilai dari a
8
mod n, maka proses
perhitungannya dapat dikerjakan seperti berikut :
= (a * a * a * a * a * a * a * a) mod n = ((a
2
mod n)
2

mod n)
2
mod n
Dengan cara yang sama dapat dicari
a
16
mod n = (((a
2
mod n)
2
mod n)
2
mod n)
2
mod n
Metoda untuk menghitung a
m
mod n adalah dengan
menggunakan algoritma fast exponentiation.
Metode ini digunakan untuk menghitung operasi
pemangkatan besar bilangan bulat modulo dengan cepat.
Operasi a
m
mod n dapat dihitung dengan algoritma
sebagai berikut :
1. Konversikan m ke biner : b
k
b
k-1
… b
1
b
0

2. {Initialisasi} I := k; Product := a
3. While I >= 0 Do
a. If b
I
= 0 Then Product := Product^2
Else Product := Product * a;
b. Product := Product mod n; I := I – 1;
Notasi a ÷ b (mod n) dibaca a adalah kongruen ke
b modulo n. Dimana untuk integer a, b dan n = 0 jika
dan hanya jika
A = b + k n k adalah bilangan bulat
Jika a ÷ b (mod n), b disebut sisa dari a modulo n .
Sebagai contoh 17 ÷ 5 (mod 12) dan 5 adalah sisa dari
17 modulo 12
Contoh kekongruenan :
1. 17 ÷ 2 ( mod 3) ( 3 habis membagi 17 – 2 = 15)
atau
17 ÷ 2 ( mod 3) dapat ditulis sebagai 17 = 2 +
5 . 3
2. - 7 ÷ 15 (mod 11) ( 11 habis membagi -7 – 15 = -22)
atau
- 7 ÷ 15 (mod 11) dapat ditulis sebagai - 7 = 15
+ (-2) . 11
Inverse merupakan operasi kebalikan. Inverse
perkalian dari 4 adalah ¼ karena 4 * ¼ = 1. Dalam
modulo, persoalan ini agak rumit. Misalkan
4 * x ≡ 1 (mod 7)
Atau bentuk penulisan ekivalen lainnya dapat dinyatakan
dengan :
4x = 7k + 1
Dengan x dan k adalah bilangan integer.
Persoalannya adalah untuk mencari x sehingga,
1 = (a * x) mod n
Atau dapat ditulis seperti berikut :
a
-1
≡ x (mod n)
Persoalan inverse modular agak sulit untuk
diselesaikan. Kadang-kadang dapat memiliki
penyelesaian, dan kadang-kadang tidak. Sebagai contoh,
inverse modular dari 5 modulo 14 adalah 3, sedangkan 2
mod 14 tidak memiliki inverse modular.
Secara umum, a
-1
≡ x (mod n) memiliki sebuah solusi
unik jika a dan n adalah relatif prima. Jika a dan n bukan
relatif prima, maka a
-1
≡ x (mod n) tidak memiliki solusi.
Jika n adalah bilangan prima maka setiap bilangan dari 1
sampai (n – 1) adalah relatif prima dengan n dan
memiliki tepat satu inverse modulo n dalam range
tersebut.
Cara untuk menyelesaikan a
-1
≡ x (mod n) adalah
dengan menggunakan algoritma Extended Euclidean
yang memiliki proses kerja sebagai berikut:
1. Bentuk Array A[3x2] dimana A[1,1] = n dan
A[1,2] = a
2. Isikan A[2,1] .. A[3,2] dengan matriks Identitas.
3. Hitung bilangan bulat m dengan kondisi m *
A[1,2] s A[1,1]; usahakan m maksimum.
4. Hitung X = A[1,1] - m * A[1,2].
5. Ubah nilai A[1,1] = A[1,2] dan A[1,2] = X.
6. Lakukan langkah 4 dan 5 untuk baris kedua dan
ketiga dari array A.
7. Ulang langkah 3 sampai 5 hingga elemen terakhir
dari baris 1 = 0.
8. Jika A[3,1] > 0 maka x = A[3,1] sebaliknya x =
A[3,1] + n.

98
III. PEMBAHASAN DAN PERANCANGAN
Paillier Cryptosystem yang ditemukan oleh Pascal
Paillier pada tahun 1999 merupakan sebuah algoritma
asimetris probabilistic untuk kriptografi kunci publik.
Problema dari perhitungan n-residue class dipercaya
sangat sulit untuk dikomputasi. Problema ini dikenal
dengan asumsi Composite Residuosity (CR) dan
merupakan dasar dari kriptosistem Paillier ini. Skema ini
merupakan additive homomorphic cryptosystem, yang
berarti bahwa diberikan kunci publik dan enkripsi dari
m
1
dan m
2
, seseorang akan mampu menghitung enkripsi
dari m
1
+ m
2
.
Seperti pada algoritma RSA, diperlukan nilai n = pq
dimana p dan q adalah bilangan prima besar. Selain itu,
juga perlu dideklarasikan fungsi Totient dari Euler, |(n)
= (p – 1)(q – 1) dan fungsi Carmichael, λ(n) = LCM(p –
1, q – 1).
Asumsikan | | = |(n
2
) = n|(n) maka untuk semua
w e berlaku :
w
λ
= 1 mod n
w

= 1 mod n
2

Teorema ini dinamakan teorema Carmichael.
Sedangkan, sebuah bilangan z dikatakan sebagai
residu modulo ke-n dari n
2
jika terdapat sebuah bilangan
y e sedemikian sehingga :
z = y
n
mod n
2

Teorema ini dikenal dengan teorema Composite
Residuosity (CR) yang menjadi dasar dari algoritma
Paillier.
Sementara itu, jika diambil sebuah set S
n
= { u <
n
2
| u = 1 mod n} yang merupakan sebuah subgrup
perkalian dari integer modulo n
2
melalui sebuah fungsi L,
maka persamaan berikut:
¬u e S
n
L(u) = (u – 1) / n


ℤ - Sekumpulan Bilangan Integer n
ℤ* - Sekumpulan Bilangan Integer yang relatif
prima terhadap n
ℤ*
2
- Sekumpulan Bilangan Integer yang relatif
prima terhadap
2
Algoritma dari skema ini dapat dirincikan sebagai
berikut:
A. Proses Pembentukan Kunci
a. Pilihlah dua buah bilangan prima besar p dan q
secara acak dan unik.
b. Hitung nilai n = pq dan λ = LCM(p − 1, q − 1).
c. Pilih bilangan integer acak g dimana
d. Hitung nilai μ

Fungsi L didefinisikan sebagai:
L(u) = (u – 1) / n
e. Kunci publik adalah (n, g).
f. Kunci privat adalah (λ, μ).
Flowchart dari proses pembentukan kunci dapat
dilihat pada gambar berikut:


Gambar 4 Flowchart Proses Pembentukan Kunci Paillier
cryptosystem
Agar dapat lebih memahami mengenai proses
pembentukan kunci dari kriptosistem Paillier ini,
maka diberikan sebuah contoh sederhana berikut ini:
a. Pilih dua buah bilangan prima besar, misalkan
dipilih p = 19 dan q = 149.
b. Hitung nilai :
- n = p * q
= 19 * 149 = 2831
- λ = LCM(p – 1, q – 1)
= LCM(18, 148)
= 1332.
- LCM (18,148)
18 = 2 x 3
2

148 = 2
2
x 37
LCM = 2
2
x 3
2
x 37 = 1332.
c. Pilih sebuah integer acak g, dimana g berada dalam
range nilai antara 0 sampai n
2
. Agar memiliki nilai
invers, maka nilai dari hasil fungsi L harus relatif
prima dengan nilai n. Selain itu, nilai dari operasi
(g
λ
mod n
2
) mod n harus sama dengan 1. Agar
memenuhi semua ketentuan di atas, pilihlah nilai g
berupa bilangan prima. Misalkan dipilih g = 79.
d. Hitung nilai u, fungsi L dan μ :
- u = g
λ
mod n
2

= 79
1332
mod 2831
2
= 3790710
- 79
1332
mod 2831
2

1332 = 1024 + 256 + 32 + 16 + 4
X1 = 79 mod 2831
2
= 79
X2 = 79
2
mod 2831
2
= 6241
X4 = 6241
2
mod 2831
2
= 6891837
X8 = 6891837
2
mod 2831
2
= 3069779
X16 = 3069779
2
mod 2831
2
= 6255919
99
X32 = 6255919
2
mod 2831
2
= 2594264
X64 = 6255919
2
mod 2831
2
= 2145629
X128 = 2145629
2
mod 2831
2
= 7690582
X256 = 7690582
2
mod 2831
2
= 3701585
X512 = 3701585
2
mod 2831
2
= 5968381
X1024 = 5968381
2
mod 2831
2
= 5853195
= (X1024 * X256 * X32 * X16 * X4) mod 2831
2
= (5853195 * 3701585 * 2594264 * 6255919 *
6891837) mod 2831
2

= 3790710
- L(u) = (u – 1) / n
= (3790710 – 1) / 2831
= 1339
- μ = 1339
-1
mod 2831
= 74
- 1339
-1
mod 2831
2831 div 1339 = 2
X1 = 2831 – (1339 x 2) = 153
Hsl = 0 – 1(2) = -2
1339 div 153 = 8
X2 = 1339 – (153 x 8) = 115
Hsl = 1 – (-2 x 8) = 17
153 div 115 = 1
X3 = 153 – (115 x 1) = 38
Hsl = -2 – (17 x 1) = -19
115 div 38 = 3
X4 = 115 – (38 x 3) = 1
Hsl = 17 – (-19 x 3) = 74
38 div 1 = 38
X5 = 38 – (1 x 38) = 0
Karena nilai X sudah nol maka
perhitungan dihentikan dan hasil yang
diperoleh adalah 74
e. Kunci privat : (λ, μ) = (1332, 74).
f. Kunci publik : (n, g) = (2831, 79).

B. Proses Enkripsi
a. Misalkan m adalah pesan yang akan
dienkripsikan dimana
b. Pilih nilai r dimana
c. Hitung ciphertext dengan rumusan berikut:

Flowchart dari proses enkripsi dapat dilihat pada gambar
berikut:

Gambar 5 Flowchart Proses Enkripsi Paillier cryptosystem
IV. ALGORITMA DAN IMPLEMENTASI
Agar dapat lebih memahami mengenai proses
enkripsi dari kriptosistem Paillier ini, maka diberikan
sebuah contoh sederhana berikut ini dimana kunci publik
yang diperlukan diambil dari contoh perhitungan proses
pembentukan kunci di atas:
a. Misalkan pesan m = ‗A‘, dengan nilai ASCII
Code = 65.
b. Pilih nilai r, dengan ketentuan nilai r harus
lebih kecil daripada n dan tidak boleh sama
dengan nilai p dan q. Selain itu nilai r harus
relatif prima terhadap n. Pilih nilai r berupa
bilangan prima. Misalkan r = 31.
c. Hitung ciphertext dengan rumusan berikut:
c = g
m
. r
n
mod n
2

c = 79
65
. 31
2831
mod 2831
2

c = 686094
79
65
. 31
2831
mod 2831
2
2831 = 2048 + 512 + 256 + 8 + 4 + 2 + 1
Y1 = 31 mod 2831
2
= 31
Y2 = 31
2
mod 2831
2
= 961
Y4 = 961
2
mod 2831
2
= 923521
Y8 = 923521
2
mod 2831
2
= 5499504
Y16 = 5499504
2
mod 2831
2
= 3414877
Y32 = 3414877
2
mod 2831
2
= 6320665
Y64 = 6320665
2
mod 2831
2
= 6704328
Y128 = 6704328
2
mod 2831
2
= 7577211
Y256 = 7577211
2
mod 2831
2
= 7524235
Y512 = 7524235
2
mod 2831
2
= 6799959
Y1024 = 6799959
2
mod 2831
2
= 1746012
Y2048 = 1746012
2
mod 2831
2
= 3234647
=(X64 * X1) * (Y2048 * Y512 * Y256 * Y8 * Y4 *
Y2 * Y1) mod 2831
2
= (2145629 * 79) * (3234647 * 6799959 * 7524235
* 5499504 * 923521 * 961 * 31 ) mod 2831
2

= 686094

C. Proses Dekripsi
a. Misalkan c adalah ciphertext dimana
b. Hitung pesan dengan rumusan berikut:

Flowchart dari proses dekripsi dapat dilihat pada gambar
berikut:


Gambar 6 Flowchart Proses Dekripsi Paillier cryptosystem
100
Agar dapat lebih memahami mengenai proses
dekripsi dari kriptosistem Paillier ini, maka diberikan
sebuah contoh sederhana berikut ini dimana kunci privat
yang diperlukan diambil dari contoh perhitungan proses
pembentukan kunci di atas dan nilai ciphertext diambil
dari proses enkripsi di atas :
a. Nilai cipher = 686094.
b. Hitunglah nilai u dan m :
- u = c
λ
mod n
2
= 686094
1332
mod 2831
2
=
5959256
1332 = 1024 + 256 + 32 + 16 + 4
X1 = 686094 mod 2831
2
= 686094
X2 = 686094
2
mod 2831
2
= 5765623
X4 = 5765623
2
mod 2831
2
= 5175818
X8 = 5175818
2
mod 2831
2
= 5069452
X16 = 5069452
2
mod 2831
2
=
4554363
X32 = 4554363
2
mod 2831
2
=
1492182
X64 = 1492182
2
mod 2831
2
=
1784104
X128 = 1784104
2
mod 2831
2
=
4108861
X256 = 4108861
2
mod 2831
2
=
1854333
X512 = 1854333
2
mod 2831
2
=
7667132
X1024 = 7667132
2
mod 2831
2
=
7621381
= (X1024 * X256 * X32 * X16 * X4) mod
2831
2
= (7621381 * 1854333 * 1492182 * 4554363 *
5175818) mod 2831
2

= 5959256
- L(u) = (5959256 – 1) / 2831 = 2105
- m = 2105 * 74 mod 2831 = 65  karakter ‘A‘
Hasil Eksekusi
Tampilan output dari perangkat lunak ini adalah
sebagai berikut:
1. Tampilan form ‗Main‘, yang dapat dilihat pada


Gambar 7 Tampilan Form Main



2. Tampilan form ‗Teori‘


Gambar 8 Tampilan Form Teori
Keterangan Form teori:
a. Mencakup teori pembahasan mengenai Paillier
Cryptosystem.
b. Menampilkan algoritma-algoritma yang akan
digunakan dalam proses pengamanan data yang
mencakup algoritma proses pembentukan kunci,
algoritma proses enkripsi dan algoritma proses
dekripsi.
c. Menampilkan Flowchat untuk masing-masing
proses pembentukan kunci, proses enkripsi dan
proses dekripsi.

3. Tampilan form ‗Pemahaman Proses Pembentukan
Kunci‘ yang terbagi menjadi beberapa tampilan,
yaitu:
a. Tampilan pengisian nilai p dan q


Gambar 9 Tampilan Form Pemahaman Proses Pembentukan Kunci
Slide Pengisian Nilai p dan q




101
Keterangan Form pemahaman proses pembentukan
kunci:
a. Input nilai p dan q.
b. Penginputan nilai bisa dilakukan dengan isi secara
langsung di text box atau bisa mengklik di tombol
‗Ambil Bilangan Prima Acak‘.
b. Tampilan proses perhitungan nilai n dan h


Gambar 10 Tampilan Form Pemahaman Proses Pembentukan Kunci
Slide Proses Perhitungan Nilai n dan h

c. Tampilan pengisian nilai g


Gambar 11 Tampilan Form Pemahaman Proses Pembentukan Kunci
Slide Pengisian Nilai g
Keterangan Form pengisian nilai g:
a. Input nilai g.
b. Penginputan nilai bisa dilakukan dengan isi
secara langsung di text box atau bisa mengklik
di tombol ‗Ambil Nilai Acak‘.
c. Untuk memastikan nilai g valid maka dapat
diklik ‗Validasi Nilai Input‘
d. Tampilan proses perhitungan nilai u dan L(u),


Gambar 12 Tampilan Form Pemahaman Proses Pembentukan Kunci
Slide Proses Perhitungan Nilai u dan L(u)

e. Tampilan proses perhitungan nilai m


Gambar 13 Tampilan Form Pemahaman Proses Pembentukan Kunci
Slide
Proses Perhitungan Nilai m
Keterangan Form proses perhitungan nilai m:
a. Program akan menampilkan tahapan demi
tahapan proses perhitungan nilai m.
b. User bisa memberhentikan sementara proses
perhitungan nilai m dengan mengklik tombol
pause.
c. User bisa mempercepat proses perhitungan nilai
m dengan mengklik tombol skip.

4. Tampilan form ‗Pemahaman Proses Enkripsi‘ yang
terbagi menjadi beberapa tampilan, yaitu:
a. Tampilan pengisian pesan

102

Gambar 14 Tampilan Form Pemahaman Proses Enkripsi Slide
Pengisian Pesan
Keterangan Form proses enkripsi pengisian pesan :
a. Input pesan satu atau lebih karakter.
b. Maksimum jumlah karakter yang diperbolehkan
adalah 20 karakter.
c. Menampilkan ASCII Code dari setiap karakter
pesan.

b. Tampilan proses pengelompokan pesan


Gambar 15 Tampilan Form Pemahaman Proses Enkripsi Slide Proses
Pengelompokan Pesan
c. Tampilan pengisian nilai r


Gambar 16 Tampilan Form Pemahaman Proses Enkripsi Slide
Pengisian Nilai r
Keterangan Form pengisian nilai r :
a. Input nilai r
b. Penginputan nilai bisa dilakukan dengan isi
secara langsung di text box atau bisa mengklik
di tombol ‗Ambil Nilai Acak‘
c. Tampilan proses perhitungan nilai Ci


Gambar 17 Tampilan Form Pemahaman Proses Enkripsi Slide Proses
Perhitungan Nilai Ci
d. Tampilan penggabungan semua nilai Ci


Gambar 18 Tampilan Form Pemahaman Proses Enkripsi Slide
Penggabungan Semua Nilai Ci

5. Tampilan form ‗Pemahaman Proses Dekripsi‘ yang
terbagi menjadi beberapa tampilan, yaitu:
a. Tampilan pengisian nilai cipher

103

Gambar 19 Tampilan Form Pemahaman Proses Dekripsi Slide
Pengisian Nilai Cipher
b. Tampilan proses pengelompokan cipher value


Gambar 20 Tampilan Form Pemahaman Proses Dekripsi Slide Proses
Pengelompokan Cipher Value

c. Tampilan proses perhitungan nilai Ui dan L(Ui),
yang dapat dilihat pada gambar 21:


Gambar 21 Tampilan Form Pemahaman Proses Dekripsi Slide Proses
Perhitungan Nilai Ui dan L(Ui)
d. Tampilan proses perhitungan nilai Mi


Gambar 22 Tampilan Form Pemahaman Proses Dekripsi Slide Proses
Perhitungan Nilai Mi

e. Tampilan penggabungan semua nilai Mi


Gambar 23 Tampilan Form Pemahaman Proses Dekripsi Slide
Penggabungan Semua Nilai Mi
2. Tampilan form ‗Aplikasi Proses Pembuatan
Kunci‘,


Gambar 24 Tampilan Form Aplikasi Proses Pembuatan Kunci
104
Keterangan Form aplikasi proses pembentukan kunci:
a. Penginputan nilai bisa dilakukan dengan isi
secara langsung di text box atau bisa mengklik
tombol pada masing-masing group box.
b. Penginputan nilai juga bisa di-generate secara
langsung pada link proses.

3. Tampilan form ‗Aplikasi Enkripsi‘


Gambar 25 Tampilan Form Aplikasi Enkripsi
Keterangan Form aplikasi proses pembentukan kunci:
a. Pilih sebuah file *.txt yang akan dienkrip
dengan mengklik tombol pada bagian grup input
file.
b. Penginputan nilai n dan g dilakukan dengan isi
secara langsung di textbox berdasarkan nilai
kunci yang telah didapat sebelumnya.
c. Pilih lokasi penyimpanan file enkrip (*.pai)
dengan mengklik tombol pada bagian grup
output file.

4. Tampilan form ‗Aplikasi Dekripsi‘


Gambar 26 Tampilan Form Aplikasi Dekripsi
Keterangan Form aplikasi proses pembentukan kunci:
a. Pilih sebuah file enkrip (*.pai) dengan mengklik
tombol pada bagian grup input file.
b. Penginputan nilai h,m dan n dilakukan dengan
isi secara langsung di text box berdasarkan nilai
kunci yang telah didapat sebelumnya.
c. Pilih lokasi penyimpanan file hasil dekrip (*.txt)
dengan mengklik tombol pada bagian grup
output file.


Gambar 27 Tampilan Form Laporan
V. KESIMPULAN DAN SARAN
A. Kesimpulan
Setelah menyelesaikan tugas akhir ini, penulis
menarik beberapa kesimpulan sebagai berikut :
1. Perangkat lunak mampu mendukung proses
pemahaman untuk setiap prosedur kerja dari metode
Paillier yaitu proses pembentukan kunci, enkripsi
dan dekripsi secara tahapan demi tahapan dimana
pemakai dapat melihat kembali hasil proses
perhitungan yang telah dilakukan sebelumnya.
2. Perangkat lunak memiliki aplikasi enkripsi yang
akan mengamankan isi dari sebuah file teks
berekstensi *.txt menjadi sebuah file enkripsi
berekstensi *.pai dan aplikasi dekripsi yang akan
mendapatkan kembali isi dari sebuah file teks dari
sebuah file enkripsi berekstensi *.pai yang dipilih.
B. Saran
Penulis ingin memberikan beberapa saran yang
mungkin berguna untuk pengembangan perangkat lunak
lebih lanjut, yaitu :
1. Perangkat lunak dapat ditambahkan suatu tipe data
buatan sendiri sehingga dapat dilakukan perhitungan
untuk bilangan yang sangat besar yang lebih besar
dari 20 digit bilangan desimal.
2. Perangkat lunak dapat dikembangkan lagi dengan
membuat sebuah class sehingga metode Paillier ini
dapat digunakan pada perangkat lunak lain dengan
mudah.
3. Perangkat ini dapat digunakan dalam pendidikan
kriptografi karena perhitungan yang ditampilkan
secara mendetail.
105
DAFTAR PUSTAKA
[30] Bruce Schneier, 1996, Applied Crytography : Protocols,
Algorithm, and Source Code in C, Second Edition, John Willey
and Sons Inc
[31] Jusuf Kurniawan, 2004, Kriptografi, Keamanan Internet dan
Jaringan Komunikasi, Penerbit Informatika Bandung.
[32] Rinaldi Munir, 2006, Kriptografi, Informatika Bandung.
[33] William Stallings, 1999, Cryptography and Network Security :
Principle and Practice, Second Edition, Prentice Hall.
[34] http://www.gemplus.com/smart/rd/publications/pdf/Pai99pai.pdf,
tanggal akses 10 February 2011.

106
Analisis Data Mining untuk Market Basket
Analysis Penerimaan Mahasiswa Baru
Menggunakan Algoritma Fuzzy c-Covering
(Studi Kasus: Perguruan Tinggi XYZ)

Yohana Dewi Lulu W
1
, Ika Rumi
2


1,2
Sistem Informasi, Politeknik Caltex Riau

Jl. Umbansari No. 1 Rumbai Pekanbaru
1
ydewilulu@gmail.com

2
karumi_keyenz@yahoo.com

Abstrak— Kebutuhan informasi yang tinggi terkadang
tidak diimbangi dengan penyajian informasi yang
memadai, karena informasi tersebut masih harus digali
ulang secara manual dari data yang jumlahnya sangat
besar. Hal ini yang menyebabkan suatu informasi tidak
terkelola dengan baik. Perguruan Tinggi XYZ adalah salah
satu institusi pendidikan yang memanfaatkan teknologi
informasi pada proses bisnisnya. Salah satu data yang bisa
diambil informasinya adalah data penerimaan mahasiswa
baru. Informasi tentang perkembangan dan besarnya
keterkaitan minat dan pola masyarakat dalam memilih
program studi yang diinginkan. Salah satu metode data
mining yang digunakan untuk mencari hubungan
pemilihan setiap program studi adalah market basket
analysis dengan menggunakan algoritma fuzzy c-Covering.
Analisa data mining pada data penerimaan mahasiswa baru
ini memudahkan pihak XYZ dalam mengetahui minat dan
pola masyarakat yang berkembang dalam memilih
program studi yang diinginkan, berdasarkan nilai support
dan confidence yang dihasilkannya, sehingga dapat
menentukan alternatif solusi dan perbaikan dalam proses
penerimaan.
Kata Kunci— Data Mining, market basket analysis, Fuzzy
c-Covering, Perguruan Tinggi XYZ

I. PENDAHULUAN
Kebutuhan akan informasi yang lebih banyak dari
sekumpulan data menjadi suatu kebutuhan yang cukup
mendasar. Hal ini dibutuhkan agar langkah-langkah
ekonomi dan teknologi yang akan diambil memang
selaras dengan kelemahan- kelemahan yang ada dan
perlu di perbaiki. Kebutuhan informasi yang tinggi
terkadang tidak diimbangi dengan penyajian informasi
yang memadai, karena informasi tersebut masih berupa
data-data yang jumlahnya sangat besar.
Perguruan Tinggi XYZ merupakan sebuah perguruan
tinggi yang memanfaatkan teknologi informasi dalam
menjalankan proses bisnisnya. Dengan adanya
pemanfaatan teknologi informasi di perguruan tinggi
XYZ maka akan terjadi akumulasi data dalam jumlah
besar setiap tahunnya. Salah satu data yang mengalami
peningkatan setiap tahunnya adalah data calon
mahasiswa.
Oleh karena itu, diperlukan suatu teknik dan sebuah
perangkat lunak yang dapat membantu dalam
mentransformasikan data dalam jumlah besar tersebut
menjadi suatu informasi yang berguna. Salah satunya
dengan melakukan penerapan Data Mining yang
diaplikasikan dengan pembuatan perangkat lunak. Proses
Data Mining merupakan proses penemuan informasi
baru dengan mencari pola atau aturan tertentu dari
sejumlah data dalam sekumpulan database yang
diharapkan dapat memberikan informasi mengenai
keterkaitan data yang ada. Salah satu contoh adalah
keterkaitan hubungan pemilihan program studi yang
dipilih oleh calon mahasiswa yang diterima di Perguruan
Tinggi XYZ.
Berdasarkan informasi mengenai keterkaitan hubungan
pemilihan program studi tersebut, dapat diketahui suatu
pola dan minat yang berkembang di masyarakat dalam
memilih program studi. Proses pencarian hubungan
pemilihan setiap program studi yang dipilih oleh calon
mahasiswa menggunakan sebuah metode market basket
analysis dan algoritma Fuzzy c-Covering. Kedua metoda
ini merupakan salah satu teknik analisis data dalam Data
Mining.

II. PERUMUSAN MASALAH
Data mining mengunakan metode market basket
analysis dengan algoritma fuzzy c-Covering diharapkan
dapat membantu menyajikan informasi mengenai
keterkaitan hubungan antara program studi yang dipilih
oleh calon mahasiswa berdasarkan data mahasiswa
yang diterima di Perguruan Tinggi XYZ.
Adapun perumusan masalah yang diangkat dalam tulisan
ini antara lain:
1. Bagaimana membangun suatu aplikasi data mining
mengunakan metode market basket analysis dengan
107
algoritma fuzzy c-Covering yang dapat
menghasilkan nilai support dan confidence.
2. Bagaimana menghasilkan informasi mengenai
keterkaitan hubungan antara program studi yang
dipilih oleh mahasiswa berdasarkan nilai support
dan confidence yang dihasilkan oleh aplikasi data
mining.
3. Bagaimana solusi yang tepat untuk perbaikan
proses penerimaan mahasiswa baru.

III. TINJAUAN PUSTAKA
A. Data Mining
Data mining adalah suatu proses menemukan hubungan
yang berarti, pola, dan kecendrungan dengan memeriksa
dalam sekumpulan besar data yang tersimpan dalam
penyimpanan dengan mengunakan teknik pengenalan
pola seperti teknik statistik dan matematika [3]. Data
mining juga disebut sebagai serangkaian proses untuk
menggali nilai tambah berupa pengetahuan yang selama
ini tidak diketahui secara manual [4].
Istilah data mining dan knowledge discovery in database
(KDD) sering kali digunakan secara bergantian untuk
menjelaskan proses penggalian informasi tersembunyi
dalam suatu basis data yang besar. Sebenarnya kedua
istilah tersebut memiliki konsep yang berbeda, tetapi
berkaitan satu sama lain. Jadi, salah satu tahapan dalam
keseluruhan proses KDD adalah data mining. Sebagai
suatu rangkaian proses, data mining dapat dibagi
menjadi beberapa tahap yang diilustrasikan di Gambar
1.
Tahap-tahap tersebut bersifat interaktif, pemakai
terlibat langsung atau dengan perantaraan knowledge
base.

Gambar 1 Tahap-tahap Data Mining[2]

Tahap-tahap data mining ada 6 yaitu :
1. Pembersihan data (data cleaning)
Pembersihan data merupakan proses menghilangkan
noise dan data yang tidak konsisten atau data tidak
relevan. Pembersihan data juga akan mempengaruhi
performasi dari teknik data mining karena data
yang ditangani akan berkurang jumlah dan
kompleksitasnya.

2. Integrasi data (data integration)
Integrasi data merupakan penggabungan data dari
berbagai database ke dalam satu database baru.
3. Seleksi Data (Data Selection)
Data yang ada pada database sering kali tidak
semuanya dipakai, oleh karena itu hanya data yang
sesuai untuk dianalisis yang akan diambil dari
database .
4. Transformasi data (Data Transformation)
Data diubah atau digabung ke dalam format yang
sesuai untuk diproses dalam data mining. Beberapa
metode data mining membutuhkan format data
yang khusus sebelum bisa diaplikasikan.
5. Data mining
Merupakan suatu proses utama saat metode
diterapkan untuk menemukan pengetahuan
berharga dan tersembunyi dari data.
6. Evaluasi pola (pattern evaluation)
Untuk mengidentifikasi pola-pola menarik ke
dalam knowledge based yang ditemukan. Dalam
tahap ini hasil dari teknik data mining berupa pola-
pola yang khas maupun model prediksi dievaluasi
untuk menilai apakah hipotesa yang ada memang
tercapai.
7. Presentasi pengetahuan (knowledge presentation).
Merupakan visualisasi dan penyajian pengetahuan
mengenai metode yang digunakan untuk
memperoleh pengetahuan yang diperoleh pengguna.

Dari tahapan data mining dapat diketahui bahwa data
mining hanya merupakan satu bagian langkah dari
keseluruhan proses KDD.

B. Metode Data Mining
Dengan definisi data mining yang luas, ada banyak jenis
metode analisis yang dapat digolongkan dalam data
mining, yaitu :
1. Association rules
Association Rules seringkali disebut dengan market
basket analysis, yang digunakan untuk menemukan
relasi atau korelasi diantara himpunan item - item.
Market Basket Analysis adalah Analisis dari
kebiasaan membeli customer, dengan mencari relasi
dan korelasi antara item-item berbeda yang
diletakkan customer di dalam keranjang belanjaannya.
Association rule mining adalah suatu prosedur untuk
mencari hubungan antara item dalam suatu data set yang
ditentukan, menyimpulkan Association rule meliputi dua
tahap, yaitu[2][5]:
a. Mencari kombinasi yang paling sering terjadi dari
suatu item set.
b. Mendefinisikan Condition dan Result (untuk
conditional association rule).
Dalam menentukan suatu association rule, terdapat
suatu interestingness measure (ukuran kepercayaan)
108
yang didapatkan dari hasil pengolahan data dengan
perhitungan tertentu. Umumnya ada dua ukuran, yaitu:
i. Support (nilai penunjang) : suatu ukuran yang
menunjukkan seberapa besar tingkat dominasi suatu
item/itemset dari keseluruhan transaksi. Ukuran ini
menentukan apakah suatu item/itemset layak untuk
dicari confidencenya (misal, dari keseluruhan
transaksi yang ada, seberapa besar tingkat dominasi
yang menunjukkan bahwa item A dan B dibeli
bersamaan).
ii. Confidence (nilai kepastian): suatu ukuran yang
menunjukkan hubungan antara dua item secara
conditional (misal, seberapa sering item B dibeli jika
orang membeli item A).

Kedua ukuran ini digunakan dalam menentukan
interesting association rules, yaitu untuk dibandingkan
dengan batasan (treshold) yang ditentukan oleh user.
Batasan tersebut umumnya terdiri dari min_support dan
min_confidence. Association rule dikenal juga sebagai
salah satu metode data mining yang menjadi dasar
dari berbagai metode data mining lainnya.
Khususnya salah satu tahap dari analisis asosiasi
yang disebut analisis pola frekuensi tinggi (frequent
pattern mining) menarik perhatian banyak peneliti
untuk menghasilkan algoritma yang efisien, salah
satunya adalah algoritma Fuzzy c-Covering.

2. Market basket analysis
Market basket analysis adalah proses yang menganalisa
kebiasaan pembeli dengan menemukan hubungan antara
barang yang berbeda pada keranjang belanja (market
basket) mereka. Penemuan hubungan tersebut dapat
membantu penjual untuk mengembangkan strategi
penjualan dengan mempertimbangkan barang yang dibeli
secara bersamaan oleh pelanggan. Sebagai contoh, bila
pembeli membeli susu, seberapa besar kemungkinan
mereka juga akan membeli roti pada transaksi yang sama.
Informasi seperti ini akan membantu penjual untuk
meningkatkan angka penjualan. Pola – pola hubungan ini
direpresentasikan dengan association rule.

3. Fuzzy c-Covering
Fuzzy c-covering merupakan salah satu metode yang
dipakai untuk mengklasifikasikan elemen-elemen dari
suatu himpunan universal menjadi partisi-partisi berupa
fuzzy sets. Fuzzy c-covering sendiri merupakan
generalisasi dari metode fuzzy c-partition yang telah
dikenal sebelumnya. (Klir, Yuan, 2001 dari jurnal
Pengunaan Metode Fuzzy c-Covering untuk Analisa
Market Basket pada Supermarket) menyimpulkan Fuzzy
c-partition dapat didefinisikan sebagai berikut :

Definisi
Misalkan I = {i
1
, i
2
, …, i
n
} adalah domain dari data.
Fuzzy c-partition dari I adalah fuzzy subset atau fuzzy
classes dari T, ditunjukkan oleh T = {t
1
, t
2
, …, t
c
}, yang
memenuhi:
1 = ) i ( t μ ∑
c
1 = m
k m ,untuk semua k e N
n …………..
(1)
0 < ∑
n
1 = k
k) i ( μtm < n, untuk semua m e N
c …………
(2)
Dimana: c adalah positive integer (0 < c <= n) dan
µt
m
(i
k
) e [0,1].
Keterangan:
c = jumlah partisi
n = jumlah elemen yg terlibat
N = Bilangan Asli
e = Keanggotaan himpunan dari
µt
m
(i
k
) = anggota fuzzy classes
µt
m
= anggota fuzzy c-partition dari suatu domain (i
k
)

Berikut ini contoh untuk memperjelas rumus (1) dan (2)
Contoh 1 : Dimisalkan ada suatu fuzzy classes sebagai
berikut:
}. 1/i , 1/i , {0.6/i = μ
}, 0.4/i , 0.8/i , {0.2/i = μ
}, 0.2/i , 0.8/i , {1/i = μ
6 5 4 t
4 3 2 t
3 2 1 t
3
2
1

Dari contoh 1 di atas dapat diketahui jumlah elemen
yang terlibat (n = 6) dan jumlah partisinya (c = 3).
Fuzzy class di atas dapat dikatakan sebagai fuzzy c-
partition dari suatu domain I={i
1
, i
2
, i
3
, i
4
, i
5
, i
6
} karena
memenuhi rumus (1) dan (2).
Di dalam Fuzzy c-Covering[1][6], rumus (1) dari teori
fuzzy c-partition tersebut digeneralisasi menjadi:
1 >= ) i ( μt ∑
c
1 = m
k m , untuk semua k e N
n ………….
(3)
dimana:
c = jumlah partisi
n = jumlah elemen yg terlibat
N = Bilangan Asli
e = Keanggotaan himpunan dari
µt
m
(i
k
) = anggota fuzzy classes
µt
m
= anggota fuzzy c-covering dari suatu domain (i
k
)

Untuk memperjelasnya, diberikan contoh sebagai berikut:
Contoh 2 : Dimisalkan ada suatu fuzzy classes sebagai
berikut:
}. 1/i , 1/i , {1/i = μ
}, 0.2/i 0.6/i , 0.8/i , {1/i = μ
}, 0.4/i , 0.8/i , {1/i = μ
6 5 4 t
6 4, 3 2 t
3 2 1 t
3
2
1

Dari contoh 2 di atas dapat diketahui n = 6 dan c = 3.
Fuzzy class di atas dapat dikatakan sebagai fuzzy c-
covering dari suatu domain I = {i
1
, i
2
, i
3
, i
4
, i
5
, i
6
} karena
memenuhi rumus (2) dan (3).

Derajat Kesamaan di Fuzzy c-Covering
Pada contoh 1 dan 2 di atas merepresentasikan fuzzy
classes (T) sebagai fuzzy set terhadap crisp element dari
data pada domain I. Setiap crisp element dari data pada I
109
juga dapat direpresentasikan sebagai fuzzy set dari fuzzy
classes (T) dengan rumus[1][6]:

I ∈ i
t
m t
j i
) i ( μ
) i ( μ
= ) t ( μ
j
j
m ……..(4)
Contoh 3: Berdasarkan contoh 1, elemen i
1
dari fuzzy c-
partition dapat direpresentasikan sebagai fuzzy set dari
fuzzy classes (T):
0.5 =
0.2 + 0.8 + 1
1
=
) i ( μ + ) i ( μ + ) i ( μ
) i ( μ
= ) t ( μ
3 t 2 t 1 t
1 t
1 i
1 1 1
1
1
Bisa dikatakan bahwa ) t ( μ 1 i1 adalah true value dari
preposisi ―if t
1
then i
1
‖ atau true value dari i
1
given t
1
.
Dengan cara yang sama, bisa didapatkan:
}. {0.385/t = μ
}, {0.385/t = μ
}, 0.23/t , {0.29/t = μ
}, 0.57/t , {0.1/t = μ
}, 0.14/t , {0.4/t = μ
}, {0.5/t = μ
3 i
3 i
3 2 i
2 1 i
2 1 i
1 i
6
5
4
3
2
1

Seperti dapat dilihat, hasil perhitungan di atas memenuhi
rumus (1) dan (2).
Cara yang sama juga bisa diterapkan pada setiap crisp
element dari fuzzy c-covering dari contoh 2. Berikut
adalah hasil perhitungannya:
Contoh 4:
}. 0.333/t , {0.077/t = μ
}, {0.333/t = μ
}, 0.333/t , {0.231/t = μ
}, 0.308/t , {0.182/t = μ
}, 0.385/t , {0.364/t = μ
}, {0.455/t = μ
3 2 i
3 i
3 2 i
2 1 i
2 1 i
1 i
6
5
4
3
2
1

Seperti dapat dilihat, hasil perhitungan di atas juga
memenuhi rumus (1) dan (2).

Fuzzy Conditional Probability Relation
Umumnya, dalam mengukur derajat kesamaan antara dua
fuzzy set digunakan fuzzy conditional probability relation
dengan rumusan sebagai berikut (Intan, Mukaidono,
2003 dari jurnal Pengunaan Metode Fuzzy c-Covering
untuk Analisa Market Basket pada Supermarket):
Y
| Y ∩ X |
= Y) | P(X = Y) R(X,


I ∈ i
I ∈ i
) i ( μ
)} i ( μ ), i ( μ min{
=
Y
Y X
…………(5)
Dimana: µx dan µy adalah fungsi anggota dari domain I
untuk masing-masing X dan Y dari himpunan universal
U. R= Bilangan real P= Peluang

Dalam prakteknya, fuzzy conditional probability relation
dapat digunakan sebagai dasar untuk merepresentasikan
degree of similarity relationship antara dua fuzzy set
dalam universe U. Dalam definisi fuzzy conditional
probability relation, nilai probabilitas bisa diperkirakan
berdasarkan hubungan semantik antara fuzzy set dengan
menggunakan pandangan subjektif dari teori probabilitas.
Berikut ini adalah contoh penggunaan rumus (5):
Dari contoh 4 dapat dicari similarity R(X,Y) dari tiap
elemen dalam fuzzy c-covering sebagai berikut:
0.486 =
0.749
0.364
=
) t ( μ
)} t ( μ ), t ( μ min{
= ) i , R(i


I ∈ t
d
I ∈ t
i i
2 1
2
2 1

Dengan cara yang sama, dapat ditentukan juga hubungan
tiap elemen lainnya. Hasilnya dapat dilihat pada tabel
berikut ini:
Tabel 1 Similarity R(X,Y) dari tiap elemen
X\Y i
1
i
2
i
3
i
4
i
5
i
6

i
1

1 0.486 0.371 0 0 0
i
2

0.8 1 1 0.41 0 0.188
i
3

0.4 0.654 1 0.41 0 0.188
i
4

0 0.308 0.471 1 1 1
i
5

0 0 0 0.59 1 0.812
i
6

0 0.103 0.157 0.727 1 1

Tabel 1 menunjukkan suatu konsep yang menarik, yaitu
bahwa suatu elemen memiliki hubungan (similarity)
dengan yang elemen lainnya jika terlibat dalam
kelompok (class) yang sama. Elemen-elemen tersebut
akan memiliki hubungan yang lebih kuat jika sering
terlibat dalam kelompok yang sama. Di sisi lain, dengan
semakin meningkatnya jumlah elemen pada suatu
kelompok akan mengurangi degree of similarity antara
tiap elemen dalam kelompok tersebut. Berdasarkan
konsep-konsep yang telah dijelaskan dapat dibuat suatu
algoritma yang diterapkan dalam proses pembuatan
aplikasi data mining untuk market basket analysis.

Langkah – Langkah Algoritma Fuzzy c-Covering
Berikut adalah langkah-langkah dalam algoritma fuzzy c-
Covering[1][6]:
Langkah 1:
Menentukan max_item_threshold yang dibutuhkan.
Max_item_threshold adalah suatu pembatas yang dipakai
untuk menyaring transaksi berdasarkan jumlah item
dalam transaksi tersebut. Hal ini didasarkan atas
pemahaman bahwa semakin banyak item yang dibeli
dalam suatu transaksi, hubungan antara item dalam
transaksi tersebut semakin lemah.
Langkah 2:
Mencari record-record dalam tabel transaksi yang
memenuhi max_item_threshold dan menyimpannya ke
dalam QT, dimana:
QT = {t | |t| <= ith, nteger positive i ∈ ith }
dimana:
QT (Qualified Transaction): himpunan transaksi yang
memenuhi max_item_threshold; t : transaksi; |t| : jumlah
item dalam suatu transaksi; ith: max_item_ threshold.

110
Langkah 3:
Set k=1 (k adalah variabel untuk menentukan jumlah
kombinasi).
Langkah 4:
Menentukan min_support ke-k sebagai threshold bagi
kombinasi k item terhadap tingkat dominasinya dari
keseluruhan transaksi.
Langkah 5:
Mencari support dari setiap kombinasi k-item yang
memungkinkan yang ada di dalam transaksi tersebut
dengan rumus:

............(5)
Dimana: u: kombinasi k item yang dicari support-nya.
Jika I adalah universal set of items, maka I ⊆ u ;
|u| = k: jumlah item dalam u;
T
t
: transaksi ke-t ( I ⊆ Tt );
|T
t
|: jumlah item dalam T
t
.
C
k
| T | t
: kombinasi k item terhadap |T
t
|;
n: jumlah record/tuple dalam QT;
} 1 , 0 { ∈ ) T s(u, t adalah suatu function, dimana: jika
t T ⊆ u , maka ) T s(u, t = 1, selain itu ) T s(u, t = 0.
Langkah 6:
Melakukan penyaringan terhadap kombinasi item yang
ada di dalam transaksi tersebut yang tidak memenuhi:
support (u)>=min_support ke-k.
Langkah 7:
Set k=k+1, dimana jika k > ith, maka ke langkah 9.
Langkah 8:
Mencari kombinasi k item yang memungkinkan dari tiap
kombinasi(k-1) item yang memenuhi minimum support
yang telah ditentukan, dengan cara: untuk mendapatkan
kombinasi k item, u, harus ada semua kombinasi (k-1)
item, u‘, dimana u ⊂ u' , misalnya untuk mendapatkan u =
{I1,I2,I3,I4}, maka harus ada u‘ = {I1,I2,I3}, {I1,I2,I4},
{I1,I3,I4} dan {I2,I3,I4}. Jika tidak ada lagi kombinasi k
item yang memungkinkan yang memenuhi min. support
yang telah ditentukan maka ke langkah 9, selain itu
ulangi langkah 4 sampai dengan 7.
Langkah 9:
Mendefinisikan tiap item yang telah didapat dari
langkah-langkah di atas sebagai fuzzy set (disebut item
fuzzy set) terhadap transaksi QT (menggunakan rumus
(4)).
Langkah 10:
Mencari candidate rules dengan cara menghitung
confidence dari setiap kombinasi k item yang memenuhi
min_support ke-k (k>=2) dari item fuzzy set yang telah
didapat pada langkah 9 dengan rumus:
X) → (Y = Y) R(X, confidence =



i
∈ i

i
∪ ∈ i
) (t) μ ( inf
) (t) μ ( inf
T t
Y
T t
Y X
……….(2)
Dimana:
I ⊆ Y X, ; T: himpunan darikode-kode transaksi yang ada
dalam QT; [0,1] ∈ (t) μi : fungsi anggota terhadap T.

IV.PERANCANGAN DAN IMPLEMENTASI
Perancangan flow chart bagi penguna aplikasi data
mining ini dapat dilihat pada gambar 2.

Gambar 2 Flow Chart User
Sedangkan flow chart proses data mining berdasarkan
langkah-langkah algoritma fuzzy c-covering dapat dilihat
dari pada gambar 3. Proses yang pertama kali dilakukan
oleh sistem adalah penyeleksian data kedalam database,
dimana pada tahap ini akan diambil field – field yang
dibutuhkan saja yaitu Nim dan Prodi.

Kemudian, langkah selanjutnya adalah sistem akan
membaca ith, ith disini adalah batas banyaknya jumlah
item program studi didalam tabel. Dimana pada studi
kasus kali ini ith tidak perlu ditetapkan karena maximal
hanya ada tiga item program studi didalam tabel. Jadi
sistem akan membaca program studi – program studi
yang dipilih. Setelah itu ada proses i = 1, i adalah
record-record dalam tabel database mahasiswa
berdasarkan field Nim dan Prodi, dan proses i dimulai
dari record pertama. Dimana untuk alur proses data
mining selanjutnya sampai selesai adalah langkah –
langkah yang dilakukan oleh algoritma fuzzy c-covering.
Setelah itu hasil terakhir akan didapatkan berupa nilai
support dan confidence.
n

n
1 = t
)
Tt) s(u,
! -k) | Tt (| ! k
! Tt
1
(
=
n
) ∑
n
1 = t
Tt) s(u,
k
Tt
1
(
= (u) support


| |

C | |
111
Start
Membaca
ith
i=1
i<=Jumlah
record pada
tabel
Hitung item
pada record ke
i <=ith
Menampung
QT
i = i+1
Y
Y
T
T
QT=0
T
k=1
membaca
min_support
ke k
Hitung support
item ke k
Support >=
min_support ke
k
Write Q
k itemset
k = k+1
Y
Y End
T
k >ith
T
Cari k itemset dari
kombinasi Q (k-1)
itemset
k itemset ada
Definisikan Q
1item sebagai
fuzzy set
T
Cari kombinasi
tiap Q k itemset
Hitung Confidence
tiap kombinasi
Y
Y
Data
Mahasiswa
Hasil support
dan
confidence
Seleksi Data: Nim
dan Prodi
Gambar 3 Flow Chart Algoritma c-Covering

Perancangan ERD untuk mendapatkan gambaran
hubungan data yang digunakan dan juga suatu model
untuk menjelaskan hubungan antar data dalam basis data
berdasarkan objek-objek dasar data yang mempunyai
hubungan antar relasi.

Gambar 4 ERD Data

V.HASIL DAN PEMBAHASAN
Hasil dan pembahasan yang dilakukan diawali dengan
langkah-langkah berikut:
Langkah – langkah fuzzy c-covering dalam pengerjaan
paper ini adalah sebagai berikut :
Langkah 1:
Menentukan ith (max_item_threshold).
max item treshold adalah banyaknya program studi yang
boleh dipilih pada waktu mendaftar di PCR, karena
maximal hanya ada tiga program studi, jadi semua
program studi akan masuk kedalam perhitungan langkah
selanjutnya.

Langkah 2:
Mencari record-record dalam tabel transaksi yang
memenuhi max_item_threshold dan menyimpannya ke
dalam QT.
Pada penelitian ini record – record yang ada didalam
database akan dihitung semuanya, karena semua record
tidak ada yang melebihi batas maximum dari ith pada
langkah satu.

Berikut ini adalah listing program yang digunakan untuk
mendapatkan semua program studi berdasarkan program
studi yang dipilih pada program studi satu, program studi
dua, dan program studi tiga.


Gambar 5 Listing program mengambil program studi
yang dipilih
Langkah 3:
Set k=1 (Jumlah kombinasi terhadap setiap program
studi yang ada)
Langkah 4:
Menentukan min_support ke-k sebagai threshold bagi
kombinasi k-item terhadap tingkat dominasinya dari
keseluruhan transaksi.
Langkah 5:
Mencari support dari setiap kombinasi k-item yang
memungkinkan yang ada di dalam Transaksi.
Berdasarkan seluruh record yang ada, maka dapat
ditentukan item-item yang dicari support nya, berdarkan
rumus mencari support yang terdapat pada rumus 1
halaman 20:
112
Langkah 3, 4, dan 5 pada aplikasi data mining ini
digabungkan, bisa dilihat dari listing program di bawah
ini.


Gambar 6 Listing program menentukan support
kombinasi 1 terhadap program studi
Berdasarkan rumus mencari support pada rumus 1
halaman 20, maka pada sistem diimplementasikan
sebagai berikut:
j ml_data
j urusan Total_per_
j ml_data
n j lh_piliha / r_row j lh_j ur_pe
) ( = = u Support
Langkah 6:
Melakukan penyaringan terhadap kombinasi item yang
ada di dalam transaksi tersebut yang tidak memenuhi:
support (u)>=min_support ke-k.
Langkah 7:
Set k=k+1, dimana jika k > ith, maka ke langkah 9.
Langkah 8:
Mencari kombinasi k-item yang memungkinkan dari tiap
kombinasi (k-1)-item yang memenuhi minimum support
yang telah ditentukan. Jika tidak ada lagi kombinasi k-
item yang memungkinkan yang memenuhi min. support
yang telah ditentukan maka ke langkah 9, selain itu
ulangi langkah 4 s/d 7.

Pada proyek akhir ini lagkah 6, 7, dan 8 digabungkan,
untuk minimum support pada listing program yaitu pada
support kombinasi 1, kombinasi 2, dan 3 adalah > 0 . hal
ini dilakukan agar semua program studi bisa tersaring
dan bisa dilihat berapa besar keterkaitannya antara satu
dan yang lainnya. berikut ini programnya.

Langkah 9 :
Mendefinisikan tiap item yang telah didapat dari
langkah-langkah di atas sebagai fuzzy set (disebut item
fuzzy set) terhadap transaksi QT.

Langkah 10:Mencari candidate rules dengan cara
menghitung confidence dari setiap kombinasi k-item
yang memenuhi min_support ke-k (k>=2) dari item fuzzy
set yang telah didapat pada langkah 9.
Dari item-item tersebut kemudian dicari confidence dari
setiap kombinasi k-item yang memungkinkan, dimulai
dari kombinasi 2, dengan rumus:
X) → (Y = Y) R(X, confidence =


) (t) μi (
∈ i
inf


) i(t) μ (
∪ ∈ i
inf
T t
Y
T t
Y X
....................(2)
Dimana: I ⊆ Y X, ; T: himpunan dari kode-kode transaksi
yang ada dalam QT; [0,1] ∈ (t) μi : fungsi anggota terhadap
T.

Adapun tampilan awal Aplikasi sebagai berikut

Gambar 7 Halaman awal aplikasi

Analisa kasus program studi perguruan tinggi XYZ yang
diminati berdasarkan pendaftaran jalur masuk untuk data
3 tahun (2008, 2009,2010) [7].
Berdasarkan data penerimaan mahasiswa baru yang ada
pada perguruan tinggi XYZ, terdapat tiga jenis proses
pendaftaran jalur masuk yaitu PSUD, UMPCR 1, dan
UMPCR 2.
1. PSUD
a. Pemilihan 2 program studi yang paling diminati 3
tahun terkahir oleh mahasiswa pada waktu mendaftar
PSUD adalah TS dan TI (Sistem Informasi dan T.
Informatika) yaitu sebesar 7,95 % mahasiswa yang
mendaftar pada PSUD memilh program studi TS dan
TI didalam daftar pemilihanya. Pola keterkaitan
pemilihan program studi yang bisa diketahui dari 2
prodi yang pemilihan 2 prodi oleh mahasiswa adalah :
i. TS -> TI = 55,24%, yaitu 55,24 % dari
mahasiswa yang memilih SI lalu Ia juga
memilih TI.
ii. TI -> TS = 35,14%, yaitu 35,14 % dari
mahasiswa yang memilih TI lalu Ia juga
memilih SI.
113

b. Pemilihan 3 program studi yang paling diminati oleh
mahasiswa pada waktu mendaftar PSUD adalah K, TI
dan T (T. Komputer, T. Informatika, dan Telkom)
yaitu sebesar 1,55 % mahasiswa yang mendaftar pada
PSUD memilh program studi K, TI dan T didalam
daftar pemilihanya. Pola keterkaitan pemilihan 3
prodi yang paling tinggi adalah sebagai berikut :

Pola pemilihan 1 program studi lalu memilih 2
program studi bersamaan :
i. K->TI^T = 14,07%, artinya 14,07% mahasiswa
memilih Komputer lalu memilih TI dan T didalam
daftar pemilihanya.
ii. TI->K^T = 6,85%, artinya 6,85% mahasiswa
memilih TI lalu memilih K dan T didalam daftar
pemilihanya.
iii. T->K^TI = 16,24%, artinya 16,24% mahasiswa
memilih T lalu memilih K dan TI didalam daftar
pemilihanya.

Pola pemilihan 2 program studi bersamaan lalu memilih
1 program studi berikutnya :
i. K^TS->TI = 58,06%, artinya 58,06% mahasiswa
memilih Komputer dan SI lalu Ia memilih TI
didalam daftar pemilihanya.
ii. T^TI->TS = 66,67%, artinya 66,67% mahasiswa
memilih T dan TI lalu Ia memilih SI didalam
daftar pemilihanya.
iii. T^K->TE = 51,52%, artinya 51,52% mahasiswa
memilih T dan K lalu Ia memilih TE didalam
daftar pemilihanya.

2. UMPCR 1
a. Pemilihan 2 program studi yang paling diminati 3
tahun terkahir oleh mahasiswa pada waktu mendaftar
adalah TS dan TI (Sistem Informasi dan T.
Informatika) yaitu sebesar 8,41 % mahasiswa yang
mendaftar pada UMPCR 1 memilh program studi TS
dan TI didalam daftar pemilihanya. Pola keterkaitan
pemilihan program studi yang bisa diketahui dari
prodi yang diminati di atas adalah :
i. TS -> TI=69,16%, yaitu 69,16% dari mahasiswa
yang memilih SI lalu Ia juga memilih TI.
ii. TI -> TS=46,59%, yaitu 46,59 % dari mahasiswa
yang memilih TI lalu Ia juga memilih SI.

b. Pemilihan 3 program studi yang paling diminati oleh
mahasiswa pada waktu mendaftar UMPCR 1 adalah
K, TS dan TI (T. Komputer, SI, dan T. Informatika)
yaitu sebesar 3,11 % mahasiswa yang mendaftar pada
UMPCR 1 memilih program studi K, TS dan TI
didalam daftar pemilihanya. Pola keterkaitan
pemilihan 3 prodi yang paling tinggi adalah sebagai
berikut :
Pola pemilihan 1 program studi lalu memilih 2
program studi berikutnya:
i. K->TS^T1 = 16,81%, artinya 16,81% mahasiswa
memilih Komputer lalu memilih SI dan TI didalam
daftar pemilihanya.
ii. TS->K^TI = 25,55%, artinya 25,55% mahasiswa
memilih SI lalu memilih K dan TI didalam daftar
pemilihanya.
iii. TI->K^TS = 17,23% artinya 17,23%mahasiswa
memilih TI lalu memilih K dan SI didalam daftar
pemilihanya.

Pola pemilihan 2 program studi lalu memilih 1 program
studi berikutnya:
i. K^TS->TI = 68,24%, artinya 68,24% mahasiswa
memilih Komputer dan SI lalu Ia memilih TI didalam
daftar pemilihanya.
ii. TI^TS->K = 47,15%, artinya 47,15% mahasiswa
memilih TI dan SI lalu Ia memilih K didalam daftar
pemilihanya.
iii. TI^K->TS = 36,94%, artinya 36,94% mahasiswa
memilih TI dan K lalu Ia memilih SI didalam daftar
pemilihanya.

3. UMPCR 2
Pemilihan 2 program studi yang paling diminati 3 tahun
terkahir oleh mahasiswa pada waktu mendaftar adalah
TE dan M (T. ELektro dan Mekatronika) yaitu sebesar
7,81 % mahasiswa yang mendaftar pada UMPCR 2
memilh program studi TE dan M didalam daftar
pemilihanya.
Pola keterkaitan pemilihan program studi yang bisa
diketahui dari prodi yang diminati di atas adalah :
i. TE -> M = 56,7%, yaitu 56,7% dari mahasiswa yang
memilih TE lalu Ia juga memilih M.
ii. M -> TE = 66,67%, yaitu 66,67% dari mahasiswa
yang memilih TI lalu Ia juga memilih SI.
Pemilihan 3 program studi yang paling diminati oleh
mahasiswa pada waktu mendaftar UMPCR 2 adalah TE,
T dan M (T. Elektronika, Telkom, dan Mekatronika)
yaitu sebesar 2,86 % mahasiswa yang mendaftar pada
UMPCR 2 memilh program studi TE, T dan M didalam
daftar pemilihanya.

Pola keterkaitan pemilihan 3 prodi yang paling tinggi
adalah sebagai berikut :

Pola pemilihan 1 program studi lalu memilih 2 program
studi berikutnya:
i. TE->T^M = 20,56%, artinya 20,56% mahasiswa
memilih TE lalu memilih T dan M didalam daftar
pemilihanya.
ii. T->TE^M = 19,82%, artinya 19,82% mahasiswa
memilih T lalu memilih TE dan M didalam daftar
pemilihanya.
iii. M->TE^T = 24,44% artinya 24,44% mahasiswa
memilih M lalu memilih TE dan M didalam daftar
pemilihanya.

114
Pola pemilihan 2 program studi lalu memilih 1 program
studi berikutnya:
i. TE^T->M = 51,16%, artinya 51,16% mahasiswa
memilih TE dan T lalu Ia memilih M didalam daftar
pemilihanya.
ii. M^T->TE = 36,67%, artinya 36,67% mahasiswa
memilih M dan T lalu Ia memilih TE didalam daftar
pemilihanya.
iii. M^TE->T = 52,38%, artinya 52,38% mahasiswa
memilih M dan TE lalu Ia memilih T didalam daftar
pemilihanya.

Dalam memberikan gambaran yang lebih jelas antara
keterkaitan tiap program studi yang dipilih, disajikan
dalam bentuk histogram, seperti berikut:

Gambar 8 Hasil perhitungan aplikasi

VI.KESIMPULAN
Hasil analisa program studi yang diminati pada
Politeknik Caltex Riau untuk data 3 tahun (2008, 2009,
2010) bisa disimpulkan sebagai berikut:

PSUD :
Tabel 1 Analisa prodi yang diminati untuk pendaftaran
PSUD
2 Program Studi yang paling
diminati
3 Program Studi yang paling
diminati
T. Informatika dan Sistem Informasi

Dengan Pola, mahasiswa yang
memilih TS lebih cendrung untuk
memilih TI dari pada mahasiswa
yang memilih TI lalu Ia memilih TS.

Komputer, TI dan Telkom


Dengan Pola, keterkaitan paling
tinggi adalah mahasiswa yang
memilih T lebih cendrung untuk
memilih K dan TI

UMPCR 1 :
Tabel 2 Analisa prodi yang diminati untuk pendaftaran
UMPCR 1
2 Program Studi yang paling
diminati
3 Program Studi yang paling
diminati
T.Informatika dan Sistem Informasi

Dengan Pola, mahasiswa yang
memilih TS lebih cendrung untuk
memilih TI dari pada mahasiswa
yang memilih TI lalu Ia memilih TS.


Komputer, Sistem Informasi dan TI

Dengan Pola, keterkaitan paling
tinggi adalah mahasiswa yang
memilih TS lebih cendrung untuk
memilih K dan TI , dan mahasiswa
yang memilih K dan TS lebih
cendrung untuk memilih TI

UMPCR 2 :
Tabel 3 Analisa prodi yang diminati untuk pendaftaran
UMPCR 2
2 Program Studi yang paling
diminati
3 Program Studi yang paling
diminati
T.Elektro dan Mekatronika


Dengan Pola mahasiswa yang
memilih M lebih cendrung
untuk memilih TE dari pada
mahasiswa yang memilih TE
lalu Ia memilih M.
T.Elektro, Telkom dan
Mekatronika

Dengan Pola keterkaitan paling
tinggi adalah mahasiswa yang
memilih M lebih cendrung
untuk memilih TE dan T , dan
mahasiswa yang memilih M dan
TE lebih cendrung untuk
memilih T

Berdasarkan hasil analisa ketiga tabel dan melalui data
wawancara proses penerimaan mahasiswa baru dalam 3
jalur PSUD, UMPCR1 dan UMPCR2 terlihat bahwa
minat program studi yang dipilih sangat berbeda pada
jalur UMPCR2. Salah satu faktor yang mempengaruhi
seperti, kapasitas program studi untuk tiap jalur tidaklah
sama.

Berdasarkan hasil tabel 1-3 dapat direkomendasikan
perbaikan proses penerimaan mahasiwa baru dengan
melakukan peningkatan dan perbaikan promosi serta
pemberian informasi untuk program sudi lain yang nilai
keterkaitannya rendah.

DAFTAR PUSTAKA
[35] Budhi, DS, 2005, Penggunaan Metode Fuzzy c-Covering untuk
Analisa Market Basket pada Supermaket, Jurnal Informatika
halaman 51-58,
puslit.petra.ac.id/journals/pdf.php?PublisedID=INFO5060108
[36] Han, J. And Kamber,M,‖Data Mining Concept and Tecnigues
Second Edition‖.San Francisco, Morgan Kauffman, 2006
[37] Larose, Daniel, ―Discovering Knowledge in Data Mining:An
Introdustion on Data Mining‖, John Wiley & Son,2005
[38] Pramudiono, I, ―Pengantara Data Mining:Menambang Permata
Pengetahuan di Gunung Data‖,www.ilmu
komputer.org/wpcontect/uploads/2006/08/iko-datamining.zip
[39] Ulmer, David; ―Mining an Online Auctions Data Warehouse.‖
The Mid-Atlantic Student Workshop on Programming
Languages and Systems. 19 April 2002. Pace University.
<http://csis.pace.edu/csis/masplas/p8.pdf>.
[40] Intan, Rolly; Mukaidono, Masao, A Proposal of Fuzzy
Thesaurus Generated by Fuzzy Covering. IEEE. 2003, pp. 167-
172.
[41] Data Penerimaan Mahasiswa Baru tahun 2008, 2009, 2010






115
Pemanfaatan Pararel Processing dan Single
Processing pada Perancangan Robot KRCI
Divisi Beroda

Ranap Katili Parulian S.
1
, Dedy Arisandi
2

1
Mahasiswa Program Studi Teknologi Informasi (S1),
2
Dosen Program Studi Teknologi Informasi (S1)
Universitas Sumatera Utara (USU)
1
ranap.sidabutar@students.usu.ac.id
2
dedyarisandi@usu.ac.id

Abstrak— KRCI (Kontes Robot Cerdas Indonesia) adalah
lomba tahunan yang diadakan oleh DIKTI yang diikuti
oleh universitas-universitas di Indonesia dan diadakan
setiap tahun. Salah satu yang dilombakan adalah divisi
beroda dimana robot akan dihadapkan dalam labirin dan
harus mencari api di dalam ruangan, memadamkannya,
kemudian kembali ke posisi awal dimana robot
ditempatkan saat start. Semua proses berjalan secara
otomatis, robot tidak digerakkan dari jarak jauh
melainkan didalam robot ditanamkan kecerdasan buatan.
Perancangan robot sangatlah kompleks dan terdapat
banyak sekali bagian yang dimanfaatkan dalam
perancangannya. Adapun arsitektur perancangan yang
digunakan adalah dengan metode single atau parallel
processing. Setiap tim memiliki arsitektur struktur robot
yang berbeda-beda dilihat dari sisi mana mereka lebih
andalkan, sebab dalam perlombaan di lapangan kedua
jenis struktur arsitektur di atas memiliki kelebihan dan
kekurangan masing-masing sesuai dari bagian mana yang
ingin lebih ditonjolkan tim peserta.

Keywords— Microcontroller, Parallel Processing, Single
Processing, KRCI, Microcontroller Slave, Microcontroller
Main

I.PENDAHULUAN
KRCI (Kontes Robot Cerdas Indonesia) merupakan
ajang perlombaan tahunan yang memperlombakan robot-
robot tim yang berasal dari seluruh Perguruan Tinggi di
Indonesia. Salah satu divisi yang diperlombakan adalah
bidang beroda, dimana dalam divisi beroda, robot harus
bisa menemukan api di dalam labirin kecil buatan panitia
dan mencari api yang terletak di dalam salah satu
ruangan, memadamkannya, dan kembali lagi ke posisi
awal. Dalam pembuatannya, robot harus memenuhi
kriteria yang ditentukan panitia mulai dari berat, ukuran,
dimensi, dan lain-lain. Proses pertandingan dilakukan
dengan mempertandingkan dua robot dari tim yang
berbeda dengan sistem turnamen, dimana tim yang
menang akan maju terus ke babak final. Banyak faktor
yang menyebabkan tim menang, seperti arsitektur
robotnya, keunggulan di mesin robot, strategi tim, waktu
tanding, juga dalam sisi algoritma pemrogramannya.
Pembahasan dalam paper ini adalah dalam hal arsitektur
robot terutama dalam hal arsitektur mikrokontrolernya,
yaitu single dan parallel processing. Berdasarkan kedua
arsitektur tersebut terdapat berbagai macam pengaruh
yang mempengaruhi stabilitas dan kehandalan robot.
Adapun tujuan dibuatnya paper ini adalah untuk
memberi pemahaman serta gambaran umum tentang
single dan parallel processing dalam perancangan
arsitektur robot.
1. Arsitektur Robot
Sesuai dengan namanya, Dalam divisi beroda, robot
harus memiliki roda, extuingisher baik berupa kipas
ataupun semprotan air.

Gambar 1. Contoh Robot beserta Sensor-sensornya.
Gambar 1 di atas adalah contoh robot yang dilihat dalam
bentuk fisik. Adapun robot dalam bentuk bagan gambar
dapat dilihat pada gambar 2.

Gambar 2. Contoh Struktur Umum Inti Bagan
Arsitektur Robot
116
Jenis Mikrokontroler yang digunakan adalah ATMEL
dengan nama ATMEGA32, memiliki cukup banyak PIN
untuk dimasukkan ke bagian-bagian robot. Pin-pin dari
ATMEGA dihubungkan ke bagian-bagian robot seperti
kipas, sensor kompas, driver motor, dan lain-lain.
ATMEGA terhubung dengan Power Supply berikut
dengan bagian robot lainnya seperti sensor-sensor serta
driver untuk menjaga agar asupan suplai tegangan yang
masuk dari dalam baterai ke dalam bagian robot (sensor-
sensor dan driver) masuk sesuai dengan kebutuhan yang
diperlukan dan menghindari short circuit.

Gambar 3. Bagan koneksi ATMEGA beserta sensor-
sensor dan driver ke power supply
2.1 Jenis Perancangan Arsitektur Robot
Dari Arsitektur robot tersebut di atas, bisa kita simpulkan
bahwa mikrokontroler yang merupakan pusat sekaligus
otak dari robot dimana semua perintah, fungsi kerja, dan
algoritma tertanam di dalamnya melalui program. Dilihat
dari susunan arsitekturnya, perancangan susunan
mikrokontroler terbagi dua yaitu Single Processing dan
Parallel Processing.
a. Single Processing
Single Processing adalah perancangan arsitektur
robot dengan memanfaatkan satu mikrokontroler saja
sebagai otak untuk mengeksekusi kerja dan perintah
yang diberikan program. Bentuk dari arsitektur ini sama
seperti yang terdapat di dalam gambar 2 dan 3. Prinsip
kerja dari Single Processing ini adalah dengan
menanamkan sebuah program pada mikrokontroler yang
di dalamnya terdapat fungsi-fungsi serta algoritma
pemrograman. Semua perintah eksekusi dijalankan
secara antrian sesuai dengan urutan yang sesuai dengan
algoritma yang ditanamkan di dalam mikrokontroler.
Seperti Contohnya jika kita ingin berbelok ke kiri,
pertama-tama sensor jarak di sebelah kiri harus
mendeteksi adanya perbedaan jarak di sebelah kiri yang
melebihi jarak minimum yang ditentukan program, hal
ini dilakukan oleh sensor jarak ultrasonik (sensor Ping)
dengan menembakkan gelombang ultrasonik. Apabila
gelombang telah mengenai dinding terdekat gelombang
akan dipantulkan kembali dan ditangkap oleh receiver
sensor Ping. Nilai waktu gelombang dihitung dan
dikonversi ke nilai jarak lalu nilai jarak yang diterima
diteruskan ke mikrokontroler. Mikrokontroler memberi
perintah langsung ke driver motor kanan untuk
menaikkan kecepatan dank dan driver motor kiri untuk
menurunkan kecepatan. Proses di atas terjadi secara
antrian. Jadi data yang diterima oleh mikrokontroler saat
menerima gelombang tidak aktual. Secara bagan dapat
dijelaskan sebagai berikut :

Gambar 4. Skema alur kerja Single Processing
Gambar 4 menjelaskan skema alur kerja single
processing dalam robot dengan penjelasan:
1. Proses pengiriman data oleh sensor.
2. Data diterima sensor.
3. Data diproses, dikalkulasi, dan dikonversi ke
satuan yang bisa diterima mikrokontroler
4. Data diterima mikrokontroler dan dicek apakah ada
kondisi tertentu yang memenuhi untuk melakukan
eksekusi perintah selanjutnya.
5. Jika ada kondisi tertentu yang memenuhi, maka
mikrokontroler akan memberi perintah eksekusi
kepada bagian robot yang diinginkan.

b. Parallel Processing
Dari namanya, jenis perancangan arsitektur robot
ini memerlukan lebih dari satu mikrokontroler. Parallel
Processing adalah perancangan arsitektur robot dengan
memanfaatkan satu mikrokontroler utama
(microcontroller master) sebagai pusat pengatur
mikrokontroler lainnya dan beberapa mikrokontroler
bagian (microcontroller slave) yang secara langsung
mengatur bagian-bagian robot seperti sensor jarak,
kompas, driver motor, dan lain-lain.

117

Gambar 5. Contoh bagan arsitektur robot dengan parallel
processing

Dari gambar 5 kita bisa lihat bahwasanya robot
tersusun atas satu mikrokontroler utama dan dua
mikrokontroler bagian (ATtiny). Mikrokontroler utama
berisi algoritma utama pemrograman dan perintah untuk
member output ataupun menerima input dari
mikrokontroler bagian jika dibutuhkan. Sedangkan
mikrokontroler bagian berisikan perintah yang secara
simultan dan kontinyu dijalankan lalu dikalkulasi
menjadi skala yang bisa diterima mikrokontroler utama
tanpa memenuhi kondisi tertentu. Jika mikrokontroler
utama memerlukan data dari bagian robot, maka dia akan
memberikan perintah agar mikrokontroler bagian
memberikan input yang terbaru dan aktual dari hasil
kalkulasi. Tentunya hal ini akan sangat menguntungkan
karena setelah menerima masukan data, mikrokontroler
utama bisa segera langsung memberi perintah eksekusi
kepada bagian robot lainnya apabila kondisi tertentu
yang mempengaruhi ditemukan. Tidak semua sensor
dipasangi mikrokontroler bagian karena ada beberapa
kondisi tertentu yang tidak memerlukan data aktual.
Sebagai contoh jika di dalam algoritma ditemukan
kondisi bahwa robot akan berbelok 90 drajat ke kanan
apabila jarak di sebelah kanan melebihi jarak minimum
15cm. Sebelum kondisi di atas terjadi, kita sudah tahu
bahwa sebelumnya di sensor jarak dan sensor kompas
terjadi perintah perhitungan yang kontinyu oleh
mikrokontroler bagian. Hasil aktual tersebut secara
bersamaan diterima oleh Mikrokontroler utama. Apabila
kondisi sudah sesuai dengan di atas, maka robot akan
memberi perintah ke driver motor kiri untuk menaikkan
kecepatan ke depan dan driver motor kanan untuk
membalikkan arah putaran ban ke belakang. Tentunya
apabila kompas telah mendeteksi bahwa posisi robot
telah berotasi 90 derajat, robot akan berhenti untuk
mencocokkan dirinya ke kondisi berikutnya.
Parallel processing memberikan hasil yang berbeda
dari single processing karena parallel processing bisa
menerima hasil input secara tepat dan aktual lalu bisa
segera mengeksekusi perintah berikutnya tanpa melalui
proses antrian terlebih dahulu. Secara Gambar bisa
dilihat sebagai berikut:


Gambar 6. Skema Alur Kerja Parallel Processing

Gambar 6 menjelaskan alur kerja parallel processing
sebagai berikut:
1. Masing-masing sensor yang dipasangi
mikrokontroler bagian dan menjalankan
perintah fungsinya secara kontinyu dan
menerima masukan atau output dari luar.
2. Sensor menerima masuka dari luar
3. ATtiny bertuas menerima dan mengkonversi
hasil dari sensor dan mengirim hasilnya
langsung kepada mikrokontroler utama.
Peristiwa ini terjadi secara simultan dan terus
menerus sehingga data hasil proses yang terjadi
aktual.
4. Mikrokontroler ATMEGA menerima kondisi
dari ATtiny dan mencocokkannya ke dalam
algoritma apakah perlu dijalankan perintah
tertentu yang cocok dengan kondisi yang
diterima.
5. Jika ada maka Mikrokontroler utama akan
mengeksekusikan perintah langsung ke sensor
ataupun driver sesuai dengan kondisi yang harus
dipenuhi.
II.PEMBAHASAN
Dari hasil pengamatan dan teori di atas didapatkan
bahwa single processing :
1. Merupakan jenis arsitektur yang memanfaatkan
hanya satu mikrokontroler saja sebagai otak
robot.
2. mengeksekusi perintah-perintah yang masuk
secara antrian
3. menghubungkan semua bagian-bagian robot
seperti sensor-sensor dan driver langsung ke
mikrokontroler utama.


118
Dan juga bahwa dalam parallel processing:
1. Merupakan jenis arsitektur yang memanfaatkan
satu mikrokontroler sebagai mikrokontroler
utama dan beberapa mikrokontroler bagian
2. Tidak semua sensor dan driver terhubung
dengan mikrokontroler bagian, melainkan hanya
sensor atau driver yang perlu memberikan data
aktual saja.
3. Mikrokontroler bagian menjalankan perintah
secara kontinyu terus menerus
4. Mikrokontroler utama hanya tinggal menerima
input dari mikrokontroler bagian saja dan
mengeksekusi perintah yang sesuai dengan
kondisi yang diperlukan.
5. Tidak semua proses yang ada bisa terjadi secara
bersamaan, melainkan ada beberapa proses yang
berjalan tetap melaui proses antrian

IV.KESIMPULAN
Kesimpulan dari teori dan pengamatan ini antara lain:
1. Pararel processing tidak bisa benar-benar disebut
menjalankan perintah secara bersamaan, melainkan
semi bersamaan, karena tidak semua proses yang
berjalan bersamaan.
2. Pararel memperpendek waktu antrian sehingga proses
eksekusi perintah di mikrokontroler utama menjadi
lebih cepat
3. Dengan banyaknya proses, pararel processing
memakan lebih banyak daya baterai lebih banyak
dibandingkan single processing
4. Dalam parallel processing, Data yang diperoleh dari
mikrokontroler bagian bisa diperoleh secara aktual

DAFTAR PUSTAKA
[1] El-Rewini, Hesham, Advanced Computer
Architecture and Parallel Processing. New Jersey:
Wiley, 2005.
[2] Gebali, Fayez, Algorithms and Parallel Computing.
Canada: Wiley, 2011.
[3] Hennessy, J.L. &Patterson, D.A. Computer
Architecture: A Quantitative Approach, 4
th
Edition:
San Francisco, 2007.
[4] Stallings, William, Computer Organization and
Architecture 6
th
Edition, Prentice-Hall, 2003.



119
Penerapan Algoritma Floyd
dalam Penentuan Rute Terpendek
dari Fasilkomti ke Landmarks USU
Indra Aulia
#1
, Mohammad Andri Budiman
*2

Program Studi Teknologi Informasi, Program Studi Ilmu Komputer Universitas Sumatera Utara
Jalan Universitas No. 9 Medan, Indonesia
1
indra.usutpl@gmail.com
2
mandrib@gmail.com

Abstrak— Pencarian rute terpendek dari satu tempat ke
tempat lain adalah masalah yang sering dijumpai dalam
kehidupan sehari-hari. Orang melakukan pencarian rute
terpendek untuk mengoptimasikan jarak, waktu atau biaya
tempuh. Penerapan algoritma pencarian sangat dibutuhkan
dalam menemukan solusi rute terpendek. Algoritma Floyd
yang merupakan cabang dari dynamic programming dapat
memberikan solusi rute-rute dengan jarak yang teroptimasi.
Algoritma ini digunakan dalam mencari rute terpendek
karena memiliki waktu komputasi cepat dan dapat
menjamin didapatnya solusi terbaik yang diharapkan
mampu menunjukkan rute-rute yang optimum dari segi
jarak, waktu ataupun biaya.

Keyword— Floyd algorithm, shortest path problem,
optimization

I.PENDAHULUAN
Universitas Sumatera Utara berlokasikan di padang
bulan, sebuah area hijau dan rindang seluas 122 Ha yang
terletak di tengah kota medan. Sedangkan zona area
akademik memiliki luas 90 Ha yang mampu menampung
33.000 mahasiswa. Sehingga Rute-rute yang ada di
Universitas Sumatera Utara memiliki banyak rute yang
dapat dilalui oleh pengguna jalan.
Pengguna jalan membutuhkan rute-rute terpendek
untuk menuju suatu tempat yang ada dilingkungan
kampus. Dengan kebutuhan tersebut pencarian rute
terpendek dibutuhkan oleh setiap pengguna jalan. Selain
itu pencarian rute terpendek juga dibutuhkan oleh
mahasiswa TI untuk menuju ke suatu tempat-tempat
penting di dalam kampus.
Pencarian rute terpendek tersebut menggunakan
algoritma Floyd sebagai salah satu strategi dari dynamic
programming. Penjabaran algoritma ini lebih mudah
dipahami dibandingkan dengan algoritma heuristik,
karena algoritma ini tergolong dalam metode
konvensional.
II.ALGORITMA FLOYD
Dynamic programming didefinisikan sebagai suatu
metode penyelesaian permasalahan yang memiliki sifat
overlapping subproblems dan optimal substructure.
Dynamic programming biasanya jauh lebih cepat dan
lebih hemat memori. Istilah dynamic programming
pertama kali dipakai pada era 1940-an oleh Richard
Bellman[4].
Dalam hal ini, kita menggunakan formulasi dynamic
programming yang berbeda untuk menyelesaikan
masalah all-pairs shortest-path pada graf yang terhubung.
Algoritma itu dikenal dengan algoritma Floyd yang
dirancang untuk menemukan rute antara semua tempat
pada graf berarah dan memiliki bobot. Algoritma ini
direpresentasikan ke dalam bentuk matriks. Algoritma
Floyd membandingkan semua lintasan yang mungkin
dalam graf setiap pasang vertex. Waktu eksekusi
algoritma ini adalah O(V
3
).

2.1 Pseudocode Algoritma Genetik

Algoritma genetika memiliki psedocode sebagai
berikut :
Procedure Floyd(C(n,n))
Array D(n,n), P(n,n), C(n,n)
for i = 1 to n do
for j = 1 to n do
D(i,j) = C(i,j)
P(i,j) = null;
Endfor
Endfor
For k = 1 to n do
For i = 1 to n do
For j = 1 to n do
if D(i,k) + D(k,j) < D(i,j)
then
D(i,j) = D(i,k) + D(k,j);
P(i,j) = k;
endif
Endfor
Endfor
Endfor
Return(D,P);
End Floyd


120
III.PERSOALAN RUTE UNIVERSITAS SUMATERA
UTARA
Persoalan rute yang diangkat adalah rute-rute ke
tempat-tempat penting dari jurusan TI. Disajikan sebuah
rute di Universitas Sumatera Utara dengan asumsi
sebagai berikut :
1. Subjek adalah kendaraan bukan pejalan kaki.
2. Jalan dianggap satu arah
3. Satu tempat ke tempat lain tidak ada vorbodden,
jalan rusak, dsb.
4. Hanya jarak yang menjadi faktor perhitungan.



Gambar 1. Skema rute kampus USU

3.1. Langkah-langkah Implementasi
Langkah yang harus dilakukan untuk
mengimplementasikan algoritma Floyd ini adalah
sebagai berikut :
1. Terdapat 6 tempat maka n=6
2. Data landmark dengan inisial yakni :
- Fasilkom A
- Gelanggang B
- Poliklinik C
- Birek D
- Auditorium E
- Perpustakaan F
3. Bentuk matriks n x n sehingga pada kasus ini
terbentuk matriks 6 x 6
4. Isikan diagonal dengan 0
5. Isi yang lain dengan nilai hubungan edge-nya
6. Isi sisanya dengan ∞
7. Kemudian bangkitkan algoritma Floyd kemudian
lakukan penaikan hingga mencapai nilai optimal.[2]

A B C D E F
A 0 250 ∞ ∞ 320 540
B ∞ 0 200 ∞ ∞ ∞
C ∞ ∞ 0 770 ∞ ∞
D 620 ∞ ∞ 0 ∞ ∞
E ∞ ∞ ∞ 100 0 820
F ∞ ∞ ∞ ∞ ∞ 0
Gambar 2: Matriks Floyd Inisial

A B C D E F
A 0 250 ∞ ∞ 320 540
B ∞ 0 200 ∞ ∞ ∞
C ∞ ∞ 0 770 ∞ ∞
D 620 870 ∞ 0 940 1160
E ∞ ∞ ∞ 100 0 820
F ∞ ∞ ∞ ∞ ∞ 0
Gambar 3: Matriks Floyd Langkah I


A B C D E F
A 0 250 450 ∞ 320 540
B ∞ 0 200 ∞ ∞ ∞
C ∞ ∞ 0 770 ∞ ∞
D 620 870 1070 0 940 1160
E ∞ ∞ ∞ 100 0 820
F ∞ ∞ ∞ ∞ ∞ 0
Gambar 4: Matriks Floyd Langkah II

A B C D E F
A 0 250 450 1220 320 540
B ∞ 0 200 970 ∞ ∞
C ∞ ∞ 0 770 ∞ ∞
D 620 870 1070 0 940 1160
E ∞ ∞ ∞ 100 0 820
F ∞ ∞ ∞ ∞ ∞ 0
Gambar 5: Matriks Floyd Langkah III

A B C D E F
A 0 250 450 1220 320 540
B 1590 0 200 970 1910 2130
C 1390 1640 0 770 1710 1930
D 620 870 1070 0 940 1160
E 720 870 1170 100 0 820
F ∞ ∞ ∞ ∞ ∞ 0
Gambar 6: Matriks Floyd Langkah IV

A B C D E F
A 0 250 450 420 320 540
B 1590 0 200 970 1910 2130
C 1390 1640 0 770 1710 1930
D 620 870 1070 0 940 1160
E 720 870 1170 100 0 820
F ∞ ∞ ∞ ∞ ∞ 0
Gambar 7: Matriks Floyd Langkah V

A B C D E F
A 0 250 450 420 320 540
B 1590 0 200 970 1910 2130
C 1390 1640 0 770 1710 1930
D 620 870 1070 1040 940 1160
E 720 870 1170 100 0 820
F ∞ ∞ ∞ ∞ ∞ 0
Gambar 8: Matriks Floyd Langkah VI

121
A B C D E F
A 0 250 450 420 320 540
B 1590 0 200 970 1910 2130
C 1390 1640 0 770 1710 1930
D 620 870 1070 0 940 1160
E 720 870 1170 100 0 820
F ∞ ∞ ∞ ∞ ∞ 0
Gambar 9: Matriks Floyd Langkah VII

Setelah itu hapus nilai tak berhingga dan nilai 0 pada
matriks tersebut.

A B C D E F
A 250 450 420 320 540
B 1590 200 970 1910 2130
C 1390 1640 770 1710 1930
D 620 870 1070 940 1160
E 720 870 1170 100 820
F
Gambar 10: Matriks Floyd Akhir

3.2. Analisis

1. AB = 250
2. AC = 450
3. AD = 420 = AE + ED
4. AE = 320
5. AF = 540
6. BA = 1590 = BC + CD + CA
7. BC = 200 = BC + CD
8. BD = 970
9. BE = 1910 = BC + CD + CA + AE
10. BF = 2130 = BC + CD + CA + AF
11. CA = 1390 = CD + DA
12. CB = 1640 = CD + DA + AB
13. CD = 770
14. CE = 1710 = CD + DA + AE
15. CF = 1930 = CD + DA + AF
16. DA = 620
17. DB = 870 = DA + AB
18. DC = 1070 = DA + AB + BC
19. DE = 940 = DA + AE
20. DF = 1160 = DA + AF
21. EA = 720 = ED + DA
22. EB = 870 = ED + DA + AB
23. EC = 1170 = ED + DA + AB + BC
24. ED = 100
25. EF = 820

IV.KESIMPULAN
Kesimpulan yang didapat dari algoritma Floyd adalah
sebagai berikut :
a. Algoritma Floyd sebagai salah satu strategi dari
dynamic programming dapat menjamin ditemukannya
solusi optimum.
b. Waktu komputasi yang dibutuhkan rata-rata cepat
dengan kompleksitas waktu O(n
3
)

DAFTAR PUSTAKA
[1] Cormen,Thomas H, dkk. 2009. Introduction to
Algorithms, 3
rd
edition. London, England: The MIT
Press
[2] Budiman, M.Andri.2010.Catatan Kuliah Struktur
Data dan Algoritma. Medan
[3] Handaka, M. Setyawati. TT. Perbandingan
Algoritma Dijkstra (Greedy), Bellman-Ford (BFS-
DFS), dan Floyd-Warshall (Dynamic Programming)
dalam Pengaplikasian Lintasan Terpendek pada
Link-State Routing Protocol. Bandung
[4] Suyanto.2010. Algoritma Optimasi Deterministik
atau Probabilistik. Yogyakarta




122
Perancangan Kompiler Mikrokontroler yang
Kompatibel untuk Variannya
Seniman
1
, M. Partaonan Hrp
2
, Muhammad Iqbal
3

(107038047) (107038046) (107038032)
1,2,3
Magister Teknik Informatika, Universitas Sumatera Utara, Jl. Universitas Kampus USU Medan 20155
1
Staf Programmer Sekretariat Eksekutif USU, KPA USU Lt. III, Jl. Dr. T. Mansur No. 9 Kampus USU
2
Staf Pengajar SMK Prayatna Medan
3
Dosen Fakultas Teknik Universitas Pembangunan Panca Budi Medan
1
artniman@gmail.com, www.niman.web.id
2
mhd.parta@yahoo.com
3
wakbalpb@yahoo.co.id

Abstrak— Pembahasan ini menyangkut tentang
mikrokontroler dan kompiler serta perancangan kompiler
untuk mikrokontroler yang kompatibel dengan varian
mikrokontoler tersebut. Kompatibel dalam hal ini yaitu
hasil kompilasi yang dilakukan dapat diterapkan pada
beberapa mikrokontroler dengan seri yang berbeda namun
masih dalam satu jenis/varian dari mikrokontroler
tersebut. Hal ini perlu dilakukan mengingat keterbatasan
dalam hal ketersediaan mikrokontoler yang diperlukan.
Perancangan kompiler ini menggunakan prinsip queue
processor untuk kompiler mikrokontroler.

Kata kunci— Mikrokontroler, Kompiler, Queue Processor.
I. PENDAHULUAN
Perkembangan dunia komputer terutama pada bidang
perangkat keras telah membuahkan berbagai evolusi
dalam perancangan dan produksi mikroprosesor dan
mikrokontroler. Hingga sampai saat ini telah diproduksi
mikroprosesor dengan banyak inti dalam satu kemasan
yang mendukung berbagai aplikasi multitasking dan
berjalan secara paralel. Namun, fitur ini harus dibayar
dengan harga yang relatif mahal dan jika perangkat
komputer ini hanya digunakan untuk tugas yang
sederhana hal ini tentu akan sia-sia. Dengan adanya
mikrokontroler sebagai suatu solusi praktis untuk
perancangan sistem komputer sederhana yang dapat
melakukan berbagai perkerjaan yang umum dilakukan
komputer biasa. Fitur yang ditawarkan mikrokontoler
tidak kalah dibandingkan komputer biasa dan juga
mikrokontoler dapat diprogram berulang-ulang sesuai
keinginan kita. Mikrokontroler dapat diperoleh dengan
harga yang jauh lebih murah dibandingkan dengan
mikroprosesor komputer modern.
II. MIKROKONTROLER DAN KOMPILERNYA
Mikrokontroler adalah sebuah komputer mikro yang
dikemas dalam satu chip (Deshmukh, 2005). Dalam
mikrokontroler ini sudah terdapat komponen-komponen
dasar untuk membangun sebuah sistem komputer seperti
CPU, RAM, flash memory, dan piranti input output.
Mikrokontroller terdahulu memiliki fitur dan
kemampuan yang terbatas seperti kapasitas RAM dan
flash memory yang kecil dan keterbatasan dalam hal
koneksi dan komunikasi data. Fitur yang paling menonjol
dari segi komunikasi data adalah koneksi jaringan serial
seperti RS232, RS485 atau CAN dan koneksi paralel
menggunakan Port.
Mikrokontroler banyak digunakan untuk
pengendalian dan automatisasi suatu alat atau perangkat
yang terpisah dari sistem komputer. Seperti sistem traffic
light, robotik, digital clock dan termometer,
Programmable Logic Control (PLC), dll. Dalam
perancangan sistem mikrokontroler yang terintegrasi,
biaya produksi dan konsumsi daya mikrokontroler adalah
faktor utama, tidak seperti komputer pada umumnya
yang lebih mementingkan tampilan. Namun, sebuah
mikrokontroler harus dapat menangani tugas yang
dibebankan padanya.
Program untuk mikrokontoler ini dapat dibuat
menggunakan berbagai bahasa pemrograman tingkat
tinggi seperi Pascal dan C. Dari bahasa tingkat tinggi
ini,kompiler akan menerjemahkan ke dalam bahasa
tingkat menengah atau bahasa assembly. Dan pada akhir
proses kompilasi dari bahasa assembly kompiler akan
menterjemahkan ke dalam bentuk bahasa mesin dalam
bilangan heksadesimal ataupun biner.
Berikut ini diberikan contoh hasil kompilasi dari
bahasa C untuk mikrokontoler dari keluarga AVR (Alf
and Vegard RISC) dengan nomor seri Atmega32 yang
berisi fungsi untuk menulis dan membaca EEPROM
(Electrically Eraseable Programmable Read Only
Memory) pada mikrokontroler ini.
123

Fig. 1 Contoh bahasa C yang akan dikompilasi.
Kompilasi dilakukan menggunakan kompiler khusus
untuk mikrokontoler AVR yaitu avrdude yang dibuat
oleh pihak Atmel yang memproduksi mikrokontoler
AVR. Hasil kompilasi dari kode program C di atas
adalah sebagai berikut.

Fig. 2 Hasil kompilasi menggunakan avrdude.
Kompiler ini dapat bekerja dengan baik untuk
mikrokontoler jenis AVR dan umum digunakan oleh
para teknisi mikrokontroler. Selain itu juga terdapat
berbagai kompiler lainnya misalnya dari keluarga
mikrokontroler MCS-51 menggunakan kompiler Keil,
M-IDE 51, ASEM-51, SDCC (Small Device C Compiler)
dan lain-lain. Kompiler-kompiler ini memiliki antar
muka yang interaktif dan memudahkan dalam
penggunaannya. Akan tetapi, kompiler ini hanya
digunakan untuk implementasi ke target mikrokontroler
satu nomor seri saja. Hasil kompilasi dari kompiler ini
hanya dapat digunakan untuk
diimplementasikan/ditanamkan pada satu nomor seri
mikrokontroler saja yang merupakan target dalam
memprogram mikrokontroler, dan tidak dapat
diimplementasikan/ditanamkan pada mikrokontroler
dengan nomor seri yang berbeda yang bukan merupakan
target dalam memprogram mikrokontroler.

Fig. 3 Contoh kompiler SDCC yang berbasis command line interface.
Karena alasan inilah diperlukan suatu perancangan
kompiler untuk mikrokontroler yang kompatibel dan
dapat diimplementasikan/ditanamkan pada
mikrokontroler dengan nomor seri yang berbeda namun
masih dalam satu varian/jenis dan memiliki banyak
persamaan dalam hal koneksi kaki/pin dan register yang
dimiliki. Alhasil, implementasi pada mikrokontroler
dapat dilakukan pada nomor seri yang berbeda dengan
hanya mengganti parameter tertentu yang dijadikan
indikasi untuk mikrokontroler yang sedang digunakan,
baik parameter yang mencakup alamat register, jumlah
memory yang dimiliki dan juga jumlah pin kaki-kaki
pada mikrokontroler. Dan jika pada pasar penyedia tidak
terdapat mikrokontroler yang dijadikan target dalam
pemrograman, maka dapat diganti dengan
mikrokontroler dengan nomor seri yang berbeda yang
dimungkinkan/diizinkan oleh kompiler. Sehingga proyek
pengerjaan mikrokontroler tetap dapat dilanjutkan.
III. PERANCANGAN QUEUE KOMPILER
Dalam perancangan kompiler ini digunakan prinsip
queue processor untuk mendapatkan hasil kompilasi
yang optimal. Queue prosesor adalah solusi yang cocok
untuk komputasi pada sistem tertanam dan pemrosesan
secara paralel seperti mikrokontroler yang membutuhkan
performansi yang tinggi. Desain dan implementasi dari
kompiler ini berdasarkan pemrosesan sistem antrian.
Instruksi-instruksi dari sebuah queue prosesor yang
secara implisit mengacu pada operand-operandnya
membuat program bebas dari ketergantungan akan
adanya eror. Kompilasi dari sebuah mesin antrian ini
menawarkan dari metode kompilasi tradisional untuk
register mesin, penjadwalan program dalam urutan level
tertentu untuk memperlihatkan dasar proses antrian
paralel dan mengkalkulasikan nilai relatif dari instuksi
yang diproses untuk mengakses operand-operand yang
digunakan.
Sebuah komputer yang berbasiskan sistem antrian
menggunakan prinsip antrian FIFO (First In First Out)
124
untuk mengevaluasi ekspresi. Sebagai perbandingannya,
komputer yang menggunakan prinsip stack/tumpukan
menggunakan prinsip LIFO (Last In First Out), dan
register komputer menggunakan register yang acak untuk
komputasi ekspresi. Queue Computation Model (QCM)
atau model komputasi queue/antrian adalah suatu sut
aturan dan operasi yang mengizinkan sembarang
program untuk dieksekusi dalam sebuah antrian. Data
ditulis kedalam antrian, diantrikan pada bagian belakang
atau ekor dari antrian. Kemudian data dibaca, diantrikan
kembali pada bagian depan/kepala dari antrian. Dua buah
pointer dibentuk oleh perangkat keras untuk menjaga
posisi dari lokasi ponter ekor dan pointer kepala ini.
Pointer ini disebut QH (Queue Head) dan QT (Queue
Tail). Sejak pembacaan dan penulisan lokasi antrian telah
ditentukan, format instruksi dari queue komputer hanya
terdiri dari operasi-operasi. Operand-operand diakses
secara implisit oleh operasi. Karakteristik ini membuat
program antrian bebas dari ketergantungan adanya eror
dan menyederhanakan desain perangkat keras dengan
tidak digunakannya mekanisme penamaan ulang register
pada perangkat keras yang digunakan.
Sebuah parse tree traversal dalam bentuk urutan
level dari sembarang ekspresi memberikan instruksi
secara urut melakukan komputasi hasil. Gambar 4(a)
berikut memberikan parse tree dari ekspresi
―x=(a
2
+b
2
)/a‖. Penjelajahan tree ini dilakukan dengan
mengunjungi semua node/titik dalam setiap level dari
kiri ke kanan berawal dari level terdalam menuju ke
root/akar.

(a) Parse tree (b) Queue
program
Fig. 4 Penjelajahan tree berdasarkan urutan level dari ekspresi parse
tree dan queue kode yang dibentuk dari parse tree ini.
Hasil urutan dari instruksi yaitu program
queue/antrian diberikan pada gambar 4(b) di atas.
Setelah empat instruksi pertama pada level L
0
dieksekusi,
isi dari antrian adalah {a,a,b,b} dengan QH menunjuk ke
elemen pertama (paling kiri), dan QT menunjuk pada
lokasi kosong setelah eleman yang terakhir dimuat
(paling kanan). Instruksi ―mul‖ adalah operasi biner yang
membaca operand-nya dari QH yang melakukan
komputasi perkalian, dan menuliskan hasilnya pada QT.
Setelah mengeksekusi semua instruksi pada level L
1
, isi
dari antrian berubah menjadi {T
1
,T
2
}, dimana T
1
=a*a
dan T
2
=b*b. Sisa dari program dieksekusi dengan cara
yang sama sampai hasil akhir ―x‖ dikomputasi dan
disimpan ke memori oleh instruksi terakhir yang
meninggalkan antrian kosong.
Saat mengevaluasi ekspresi, sebuah graph asiklik
berarah/directed acyclic graph (DAG) sering lebih
disukai pada sebuah parse tree karena dapat mereduksi
jumlah node/titik dengan mengeliminasi sub-ekspresi
yang umum dan sering dipakai. Dengan diberikannya
DAG, sebuah program antrian juga didapatkan dengan
penjelajahan berdasarkan urutan level. Untuk
mengilustrasikan masalah ini, perhatikan ekspresi DAG
―x=(a
2
+b
2
)/a‖ pada gambar 5(a) dibawah ini. Bandingkan
dengan representasi tree-nya pada gambar 4 sebelumnya.
Operand ―a‖ mempunyai tiga node parent bukan satu
node parent, operand ―b‖ mempunyai dua node parent,
dan jumlah node telah direduksi sebanyak tiga node. Jika
program pada gambar 5(b) di bawah ini dieksekusi,
masalah muncul ketika eksekusi operasi ―mul‖ yang
pertama. Pada tahap ini, antrian terdiri dari dua elemen
{a,b}, diantrikan oleh dua instruksi yang pertama kali
dimuat. Proses perkalian kemudian mengantrikan
kembali operand pertamanya , tetapi gagal mendapatkan
operand kedua yaitu mendapatkan operand ―b‖ dari pada
operand ―a‖.

(a) Parse tree (b) Queue program
Fig. 5 Program antrian, evaluasi yang salah dihasilkan dari sebuah
graph asiklik berarah/directed acyclic graph.
Instruksi queue core diklasifikasikan menjadi tiga
kategori yaitu instruksi 0-offset, 1-offset dan 2-offset.
Gambar berikut menunjukkan contoh instruksi binary
dan unary dari prosesor queue core. Queue menentukan
lokasi dalam antrian dari mana membaca operand-
operand dengan nilai referensi offset yang ditentukan
dalam instruksi dari lokasi QH, misalnya QH + N.
Instruksi 0-offset membaca operand-operand secara
langsung dari QH. Sebagai contoh instruksi ―mul 0,1‖
membaca operand pertama dari QH + 0. Setelah operand
pertama diantrikan kembali, prosesor queue meng-update
posisi QH dan mengizinkan operand kedua dibaca dari
QH.
125
Fig. 6 Klasifikasi instruksi queue core.
Berikut diberikan pseudo program untuk
mengevaluasi ekspresi ―x=(a
2
+b
2
)/a‖. Dua instruksi
pertama memuat operand {a,b} ke dalam antrian.
Instruksi ketiga adalah instruksi 1-offset yang mengantri
kembali pada dua waktu, pertama dari QH dan kedua
dari QH-1 meninggalkan status antrianmenjadi {b,T
1
},
dimana T
1
=a*a. Dengan cara yang sama, instruksi
keempat menghitung b*b meninggalkan antrian manjadi
{T
1
,T
2
}.Penambahan instruksi adalah instruksi 0-offset
yang menghitung sementara T
3
=(a
2
+b
2
). Sebelum
eksekusi dari instruksi pembagian, antrian terdiri atas
sebuah elemen tunggal {T
3
}. Proses pembagian
membutuhkan agar operand pertamanya diantrikan
kembali dari QH dan operand keduanya, a, agar
diantrikan kembali pada 4 byte data dari QH.

Fig. 7 (a) Queue program (b) Isi antrian selama proses eksekusi
program.

Proses kompilasi untuk model komputasi antrian
berbeda dengan teknik kompilasi konvensional untuk
register pada mesin sejak instruksi antrian membutuhkan
nilai referensi offset ketimbang nama lokasi register.
Struktur kompilier queue/antrian dibagi menjadi lima
fase, termasuk tampilan antar muka denga pengguna.
Diagram blok dari kompiler queue/antrian ini
ditunjukkan pada gambar 8.
Dalam penterjemahan bahasa tingkat tinggi seperti
bahasa C, dihasilkan sekumpulan type sintak dalam
representasi pada tingkat yang lebih rendah. Representasi
ini adalah turunan instruksi queue/antrian dalam level
yang lebih rendah. Berikut ini didefinisikan beberapa
turunan instruksi queue yang dibagi menjadi tujuh kelas
pada gambar 9. Fase seleksi instruksi pada blok diagram
struktur kompiler queue adalah fase yang menangani
penterjemahan sembarang bahasa tingkat tinggi menjadi
turunan instruksi queue.

Fig. 8 Blok diagram kompiler queue/antrian.

Fig. 9 Turunan instruksi queue.

IV. KESIMPULAN
Pada paper ini memberikan penjelasan mengenai
perancangan kompiler untuk mikrokontroler, dan hasil
kompilasinya dapat juga diterapkan pada mikrokontroler
yang berbeda nomor serinya namum masih dalam satu
jenis/varian. Prinsip kompilasi yang digunakan adalah
126
model kompiler queue/antrian. Kompiler queue/antrian
sangat efektif untuk menyelesaikan masalah dalam hal
menghasilkan kode assembly pada model komputasi
antrian seperti yang juga diterapkan pada mikrokontroler.
Struktur data yang dipilih mengizinkan pengguna untuk
mengkalkulasikan nilai referensi offset yang digunakan
pada proses kompilasi antrian yaitu posisi relatif QH
untuk sembarang instruksi, dan jarak antara dua
node/titik. Kompiler queue memungkinkan proses
eksekusi paralel secara maksimum dengan penjadwalan
program dalam urutan level-level tertentu. Hasilnya,
program antrian menunjukkan rata-rata peningkatan yang
lebih efektif dan cocok diterapkan untuk pemrogramman
mikrokontroler dalam satu varian/jenis.


V. DAFTAR PUSTAKA
[1] Deshmukh, Ajay V. Microcontroller [Theory and Applications].
New Delhi: Tata McGraw-Hill Publishing Company Limited,
2005.
[2] Kai Qian, David den Haring, and Li Cao. Embedded Software
Development With C. London New York: Springer Dordrecht
Heidelberg, 2009.
[3] Canedo, Arquimedes, et.all. Design and implementation of
a queue compiler. Elsevier B.V., 2009.
[4] A.V. Aho, R. Sethi, J.D. Ullman. Compilers Principles.
Addison-Wesley, 1986.
[5] S.S. Muchnick. Advanced Compiler Design and Implementation.
Morgan Kaufman, 1997.
[6] B. Preiss, C. Hamacher. Data flow on queue machines. In: 12th
International IEEE Symposium on Computer Architecture, 1985,
pp. 342–351.
[7] M. Sowa, B. Abderazek, T. Yoshinaga. Parallel queue processor
architecture based on produced order computation model.
Journal of Supercomputing 32 (3) (2005) 217–229.


127
Penggunaan Faktor Hsinchun Chen Dalam Algoritma
Genetika Untuk Menemukan Dokumen yang Mirip
Poltak Sihombing
1
, Vera Wijaya
2
Universitas Sumatera Utara
1
poltakhombing

@yahoo.com,
2
vera_liyen@yahoo.com

Abstrak – Kami telah menggunakan faktor Hsinchun Chen
dalam Algoritma Genetika untuk menemukan nilai kemiripan
terbesar dari database melalui pendekatan sejumlah keyword
yang berkompetisi. Sebagai data testing, diguunakan koleksi
jurnal dan prosiding dari BATAN (Badan Tenaga Atom
Nasional) sebagai benchmark data-set. Koleksi ini telah
dibuat oleh Fakultas Ilmu Komputer, Universitas Indonesia
(UI) Jakarta. Kami memodifikasi keyword dalam bentuk
kromosom dengan maksud untuk optimisasi melalui sejumlah
keyword yang berkompetisi berdasarkan nilai fitness yang
dimiliki keyword-keyword tersebut. Fitness adalah nilai yang
digunakan untuk menyeleksi kromosom setiap kueri pada
generasi berikutnya. GA memulainya dengan sekumpulan
keyword yang disebut sebagai kromosom. Melalui pendekatan
kompetisi keyword ini dapat dihasilkan nilai kemiripan
dokumen yang lebih besar yang dihasilkan GA.

Keyword- hsinchun chen, hopfield, algoritma genetika,
nilai kemiripan, penemuan kembali

I. PENDAHULUAN
Perkembangan penggunaan informasi yang cukup
tinggi khususnya informasi dalam bentuk teks dokumen
menyebabkan kesulitan dalam proses menemukan
kembali informasi, sehingga diperlukan aktivitas
pendeteksian kemiripan dokumen untuk mendapatkan
dokumen yang relevan dan sesuai dengan permintaan
pengguna.
Terdapat sejumlah metode untuk menghitung
kesamaan antar dokumen, salah satunya dengan
menggunakan ukuran kemiripan (similarity measure)
yang diperkenalkan oleh Chen et al [2]. Hsinchun Chen
adalah seorang peneliti di bidang IT, pada tahun 1994
Chen dan teman-temannya melakukan penelitian sistem
temu kembali dokumen dan menghasikan suatu
formulasi pengukuran kemiripan dokumen, rumus ini
dikenal dengan ukuran kemiripan (similarity measure)
Hsinchun Chen.
Penelitian ini mencoba menyelidiki alternatif lain
pencarian dokumen, yaitu menggunakan algoritma
genetika dengan memanfaatkan ukuran kemiripan
(similarity measure) Hsinchun Chen untuk mendapatkan
nilai kemiripan pada pendeteksian dokumen.
Tujuan yang akan dicapai dari penelitian ini
adalah mendapatkan nilai kemiripan dokumen
diharapkan relevan dengan kueri dari database.

II. LANDASAN TEORI
2.1 INFORMATION RETRIEVAL
Menurut Rahman [6], ISO 2382/1 mendefinisikan
Information Retrieval (IR) sebagai tindakan, metode dan
prosedur untuk menemukan kembali data yang
tersimpan, dan selanjutnya menyediakan informasi
mengenai subyek yang dibutuhkan. Tindakan tersebut
mencakup text indexing, inquiry analysis, dan relevance
analysis. Data mencakup teks, tabel, gambar, ucapan,
dan video. Informasi yang ditemukan adalah merupakan
pengetahuan terkait yang dibutuhkan untuk mendukung
penyelesaian masalah dan akusisi pengetahuan [3].
Menurut Frakes and Baeza-Yates [3], ada dua
pekerjaan yang ditangani oleh sistem ini, yaitu
melakukan pre-processing terhadap database dan
kemudian menerapkan metode tertentu untuk
menghitung kedekatan (relevansi atau similarity) antara
dokumen di dalam database yang telah dipreprocess
dengan query pengguna. Pada tahapan preprocessing,
sistem yang berurusan dengan dokumen semi-structured
biasanya memberikan tag tertentu pada term-term atau
bagian dari dokumen; sedangkan pada dokumen tidak
terstruktur proses ini dilewati dan membiarkan term
tanpa imbuhan tag.
Query yang dimasukkan oleh pengguna dikonversi sesuai
aturan tertentu untuk mengekstrak term-term penting
yang sejalan dengan term-term yang sebelumnya telah
diekstrak dari dokumen dan menghitung relevansi antara
query dan dokumen berdasarkan pada term-term tersebut
[5].

2.2 SIMILARITY MEASURE (UKURAN KEMIRIPAN)
Ada beberapa faktor pengukuran kemiripan
seperti cosine, dice, hsinchun chen, jaccard dan lain-lain.
Salah satu ukuran kemiripan dokumen yang akan
digunakan dalam penelitian ini adalah faktor Hsinchun
Chen [10]. Menurut Chen et al [2] ukuran kemiripan
dengan faktor Hsinchun Chen adalah bahwa setiap
istilah dapat diwakili oleh satu simpul (node), dimana
hubungan antar istilah ini dapat dihitung dengan
menggunakan rumusan yang diajukannya seperti pada
persamaan berikut:
(1)
Dengan dijk bernilai 1 (satu) apabila dokumen ke-i
memuat istilah j dan istilah k bersama-sama, dan bernilai
0 (nol) pada kasus lainnya. Nilai dij bernilai 1 apabila
dokumen ke-i memuat istilah j, dan 0 apabila dokumen
ke-i tidak memuat istilah j.
Rumus di atas menyatakan kemiripan antara istilah j
dan istilah k yaitu perbandingan antara jumlah dokumen
128
yang memuat istilah j dan istilah k bersama-sama,
dengan jumlah dokumen yang memuat istilah j saja.
Nilai n adalah jumlah keseluruhan dokumen yang ada
dalam koleksi.
Nilai kemiripan (Tj, Tk) mungkin berbeda dengan
nilai kemiripan (Tk, Tj), karena nilai pembagi dalam
rumus di atas untuk kemiripan (Tk, Tj) adalah jumlah
dokumen yang memuat istilah k saja (dik). Ini berarti ada
perbedaan nilai keterhubungan dari istilah k ke istilah j
dengan nilai keterhubungan dari istilah j ke istilah k.

2.3 ALGORITMA GENETIKA
Menurut Kusumadewi [4] menyatakan bahwa Algoritma
Genetika (AG) adalah suatu algoritma pencarian yang
berbasis pada mekanisme seleksi alam dan genetika.
Algoritma genetika merupakan salah satu algoritma yang
sangat tepat digunakan dalam menyelesaikan masalah
optimasi kompleks, yang sulit dilakukan oleh metode
konvensional.
Ciri-ciri permasalahan yang dapat dikerjakan dengan
menggunakan algoritma genetika adalah [1]:
- Mempunyai fungsi tujuan optimalisasi non linear
dengan banyak kendala yang juga non linear.
- Mempunyai kemungkinan solusi yang jumlahnya
tak berhingga.
- Membutuhkan solusi ―real-time‖ dalam arti solusi
bisa didapatkan dengan cepat sehingga dapat
diimplementasikan untuk permasalahan yang
mempunyai perubahan yang cepat seperti optimasi
pada pembebanan kanal pada komunikasi seluller.
- Mempunyai multi-objective dan multi-criteria,
sehingga diperlukan solusi yang dapat secara bijak
diterima oleh semua pihak.
Secara umum, Thiang et al. [9] mengemukakan
bahwa struktur dari suatu algoritma genetika dapat
didefenisikan dengan langkah-langkah sebagai berikut :
1. Membangkitkan populasi awal
Populasi awal ini dibangkitkan secara random
sehingga didapatkan solusi awal. Populasi ini
sendiri terdiri atas sejumlah kromosom untuk
merepresentasikan solusi yang diinginkan.
2. Membentuk generasi baru
Untuk membentuk generasi baru, digunakan
operator reproduksi/seleksi, crossover dan
mutasi. Proses ini dilakukan berulang-ulang
sehingga didapatkan sejumlah kromosom yang
cukup untuk membentuk generasi baru di mana
generasi baru ini merupakan representasi dari
solusi baru. Generasi baru in dikenal dengan
istilah anak (offspring).
3. Evaluasi solusi
Pada tiap generasi, kromosom akan melalui
proses evaluasi dengan menggunakan alat ukur
yang dinamakan fitness. Nilai fitness suatu
kromosom menggambarkan kualitas kromosom
dalam populasi tersebut. Proses ini
mengevaluasi setiap populasi dengan
menghitung nilai fitness setiap kromosom dan
mengevaluasinya dampai terpenuhi kriteria
berhenti. Bila kriteria berhenti belum terpenuhi
maka akan dibentuk lagi generasi baru dengan
mengulang langkah 2.

III. METODE PENELITIAN
3.1. DATA PENELITIAN
Data penelitian dalam pencarian nilai kemiripan
dokumen berbentuk teks koleksi dokumen dan
bersumber dari penelitian Sihombing [7,8]. Koleksi
dokumen yang digunakan adalah kumpulan dokumen
abstrak penelitian dan karya ilmiah dalam bidang sains
dan teknologi nuklir yang dihasilkan oleh Badan Tenaga
Atom Nasional (BATAN), dan data penelitian yang
digunakan merupakan data standard penelitian di
Universitas Indonesia. Naskah lengkap dokumen tersebut
dimuat dalam Majalah BATAN volume XIV tahun 1981
sampai dengan XXVII tahun 1995 dan Prosiding
Pertemuan dan Presentasi Ilmiah Bahan Murni dan
Instrumentasi Nuklir tahun 1985, 1986, 1988, 1989, dan
1991. Pangkalan data ini terdiri dari 600 dokumen yang
terdiri dari Nomor dokumen (DOC), Judul (TIT).

3.2. TEKNIK PENELITIAN
Teknik penelitian dalam sistem pencarian kembali
dokumen adalah pemanfaatan nilai kemiripan Hsinchun
Chen dalam algoritma genetika, dengan tujuan untuk
menghasilkan dokumen yang relevan dengan kueri,
seperti pada gambar 1.


Gambar 1. Teknik Pencarian yang dilakukan
129
Text Preprocessing
Sebelum GA dijalankan terlebih dahulu dilakukan
tahapan text preprocessing, kemudian dilanjutkan dengan
teknik algoritma genetika dengan input sistem adalah
kueri dokumen yang dapat diwakili oleh keyword dari
dokumen.
Pada gambar diagram alir tersebut
menunjukkan bahwa secara garis besar sistem pencarian
kembali dokumen terdiri dari 2 tahapan besar yaitu : text
preprocessing dan tahap mengukur kemiripan dokumen
menggunakan ukuran kemiripan Hsinchun Chen dan
algoritma genetika.

IV HASIL DAN PEMBAHASAN

Hasil Tahapan Text Preprocessing
Berikut adalah contoh pada tahapan text preprocessing¸
dokumen yang diambil adalah Nodoc 10 :
Tahapan Judul dokumen
Case Folding pengaruh penempatan pupuk fosfat dan
pengapuran dalam tumpangsari jagung kedelai
Stop Word pengaruh penempatan pupuk fosfat pengapuran
tumpangsari jagung kedelai

Stemming pengaruh tempat pupuk fosfat kapur tumpangsari
jagung kedelai
Update Istilah pengaruh tempat pupuk fosfat kapur tumpangsari
jagung kedelai
Remove angka pengaruh tempat pupuk fosfat kapur tumpangsari
jagung kedelai
Tokenisasi pengaruh tempat pupuk
fosfat kapur tumpangsari
jagung kedelai

Hasil dari tokenisasi diatas, terdapat 8 kata dimana kata
tersebut yang akan menjadi keyword dokumen yang
digunakan untuk pencarian kemiripan dokumen dengan
menggunakan algortima genetika.

Penemuan Dokumen Yang Mirip Menggunakan
Algoritma Genetika
Setelah mendapatkan keyword-keyword dari judul kueri,
selanjutnya sistem akan mengimplementasikan algoritma
genetika dengan ukuran kemiripan Hsinchun Chen.
Berikut adalah ilustrasi contoh penerapan algoritma
genetika dengan kueri yang sama pada tahapan text
processing diatas :

Pengkodean kromosom solusi
Dalam pemodelan solusi kromosom, keyword – keyword
dari dokumen kueri direpresentasikan dengan bit dengan
jumlah gen 8 karena terdiri dari 8 keyword, sehingga
terbentuklah kromosom solusi 11111111.

Generasi Pertama
(i) Membangkitkan populasi awal
Secara acak sistem akan memilih 10 dokumen sebagai
populasi awal kemudian dilakukan text processing untuk
mendapatkan keyword.

NoDoc Judul
46 Karakteristika Kit Irma-TSH (Netria-Batan)
73 Pengujian Ketahanan Beberapa Galur Mutan
Kacang Hijau Phaseolus radiatus Linn.
Terhadap Serangan Lalat Bibit Ophiomyia
phaseoli Tryon
1 Pengaruh Pemupukan P Dan Pengapuran Pada
Tumpangsari Jagung Kedelai Terhadap Hasil
dan Fiksasi N Simbiotik
58 Toleransi Beberapa Strain/isolat Rhizobium
Dan Interaksinya Dengan Beberapa Galur
Mutan Kedelai
145 Pengaruh Penempatan Pupuk Pada
Pertumbuhan Akar Dan Tanaman Kedelai
208 Perancangan Pesawat Pengering Putar
Kontinyu Thorium Oxalat
291 Pengukuran Fluks Neutron Cepat Generator
Neutron dengan Keping Aluminium Standard
312 Ekstraksi Uranil Nitrat Menggunakan Kolom
Pulsa dengan TBP-Kerosin sebagai Fasa
Kontinyu
480 Programmable Controller Simatic S-5
356 Uji Coba Alat Pemisahan Air Berat dengan
Proses Distilasi

(ii) Pengkodean kromosom
Setelah mendapatkan keyword-keyword dari setiap
dokumen populasi awal, maka langkah selanjutnya
adalah melakukan perbandingan antara keyword populasi
awal den keyword kueri. Apabila keyword kueri terdapat
pada keyword populasi awal maka akan
direpresentasikan dengan memberikan angka 1 pada
setiap gen.
46 00000000
73 00000000
1 10101111
58 00000001
145 11100001
208 00000000
291 00000000
312 00000000
480 00000000
356 00000000

(iii) Evaluasi nilai fitness pada setiap kromosom.
Selanjutnya akan dilakukan perhitungan nilai fitness
pada setiap kromosom pada populasi awal. Fungsi
objektif yang digunakan untuk menghitung nilai fitness
adalah similarity measure Hsinchun Chen. Implemantasi
similarity measure Hsinchun Chen adalah Dijk
merupakan total jumlah nilai gen yang bit nya bernilai 1,
sedangkan Dij merupakan total jumlah gen pada
kromosom.
NoDoc Kromosom dijk dij Nilai
Fitness
46 00000000 0 8 0
73 00000000 0 8 0
1 10101111 6 8 0,75
58 00000001 1 8 0,125
145 11100001 4 8 0,5
130
NoDoc Kromosom dijk dij Nilai
Fitness
208 00000000 0 8 0
291 00000000 0 8 0
312 00000000 0 8 0
480 00000000 0 8 0
356 00000000 0 8 0

(iv) Seleksi
Melakukan pemilihan 2 kromosom dari populasi, dimana
pemilihan kedua kromosom ini berdasarkan pada
besarnya nilai fitness.
(1) 10101111 Nilai Fitness = 0,75
(145) 11100001 Nilai Fitness = 0,5

(v) Crossover
Pada tahapan crossover, metode crossover yang
digunakan
adalah crossover satu titik dengan posisi ditentukan
dengan
pertengahan jumlah gen dari kromosom ( jumlah gen /2)
dilanjutkan dengan perhitungan nilai fitness.
Sebelum crossover :
(1) 10101111
(145) 11100001
Sesudah crossover (posis : 8/2 =4) :
10100001 Nilai Fitness = 0.375
11101111 Nilai Fitness = 0.875
Kromosom dengan nilai fitness terbesar yang terpilih
untuk dilakukan tahapan mutasi (11101111).

(vi) Mutasi
Sebelum Mutasi :
11101111 Nilai Fitness = 0,875
Posisi Mutasi : jumlah gen /2 ( 8/2) = 4
Sesudah Mutasi : 1111111
Kromosom mutasi tidak terdapat pada judul dokumen
penelitian sehingga kromosom hasil seleksi dengan nilai
fitness terbesar yang akan ke dalam list kemiripan,
NoDoc 1dengan nilai fitness 0.75.

Generasi Terakhir
Setelah melakukan tahapan algoritma genetika untuk
proses pencarian kemiripan dokumen sampai generasi
terakhir (yaitu generasi ke 56), didapatkan hasil bahwa
ada 96 dokumen yang memiliki kemiripan dengan
dokumen kueri, dengan nilai fitness paling besar adalah
0.75 dan nilai fitness paling kecil 0,125. Kemudian
sistem pencarian kembali dokumen penelitian ini akan
menampilkan 5 dokumen yang mempunyai nilai
kemiripan tertinggi.
No NoFitness NoDoc Kemiripan (%)
1 1 1 75
2 31 145 50
3 73 405 25
4 38 186 25
5 39 190 25

Berikut adalah hasil dari pencarian kembali dokumen
dengan algoritma genetika yang menggunakan nilai
pengukuran kemiripan Hsinchun Chen, sehingga daftar
judul 5 dokumen yang memiliki nilai kemiripan tertinggi
dengan dokumen kueri.
Dokumen kueri :
NoDoc : 10
Judul :Pengaruh Penempatan Pupuk Fosfat Dan
Pengapuran Dalam Tumpangsari Jagung-
Kedelai
Kemiripan
(%)
NoDoc Judul
75 1 Pengaruh Pemupukan P Dan
Pengapuran Pada Tumpangsari Jagung
Kedelai Terhadap Hasil dan Fiksasi N
Simbiotik
50 145 Pengaruh Penempatan Pupuk Pada
Pertumbuhan Akar Dan Tanaman
Kedelai
25 405 Pengaruh Tekanan Kekeringan
Terhadap Persentase Akar Aktif Dan
Pertumbuhan Tanaman Kedelai
25 186 Pengaruh Pemupukan Zn Terhadap
Produksi Berat Kering Pucuk Daun
Tanaman The
25 190 Perhitungan Ukuran Settler untuk
Pengambilan Uranium dari Asam
Fosfat Berdasarkan Pengaruh
Pembentukan Emulsi
Prototipe sistem yang dikembangkan dapat dilihat pada
gambar2.


Gambar 2: Prototipe system yang dibangun


131
V. KESIMPULAN
Dari hasil implementasi sistem pencarian kembali
dokumen menggunakan algoritma genetika yang
dilakukan, dan setelah melakukan pengujian beberapa
kueri terhadap kumpulan dokumen BATAN, maka
diperoleh beberapa kesimpulan sebagai berikut :
1. Faktor Hscinchun chen dapat dimplementasikan
pada pencarian kembali dokumen dari database
dengan pendekatan kompetisi keyword dalam
AG. Pada pencarian ini terlebih dahulu
dilakukan tahapan text processing pada
dokumen tersebut.
2. Implementasi penentuan kromosom pada
algoritma genetika pada penelitian ini
diformulasikan dari kumpulan keyword-keyword
dari setiap dokumen. Ha ini dilakukan untuk
mencari keyword yang diharapkan paling
relevan dengan dokumen pada database,
sehingga memudahkan sistem untuk meretrieve
dokumen yang lebih relevan.
3. Sistem ini memberikan kemudahan dan
keleluasaan bagi pengguna untuk memilih
dokumen mana yang diprediksi mungkin
relevan dengan kueri mereka, karena system
memberikan nilai kemiripan untuk setiap
dokumen secara terurut berdasarkan besarnya
nilai kemiripan tersebut.

DAFTAR PUSTAKA
[1] Basuki, A. 2003. Algoritma Genetika, Suatu Alternatif
Penyelesaian Permasalahan Searching, Optimasi dan
Machine Learning. Surabaya: PENS-ITS.

[2] Chen, H., Basu. T., and Ng, T. 1994. An Algorithmic
Approach to Concept Exploration in a Large Knowledge
Network (Automatic Thesaurus Consultation): Symbolic
Branch-and-bound Search vs Connectionist Hopfield Net
Activation, MIS Departement, University of Arizona.

[3] Frakes, W.B., and Baeza-Yates, R. 1992.
InformationRetrieval,Data Structure and Algorithm. New
Jersey : Prentice Hall, Englewood Clifs.

[4] Kusumadewi, S. 2003. Artificial Intelligence (Teknik dan
Aplikasinya). Yogyakarta: Graha Ilmu.

[5] Polettini, N. 2004. The Vector Space Model in Information
Retrieval – Term Weighting Problem. Greece : Master
Thesis, Department of Computer Science, University of
Greece.

[6] Rahman, E. S. 2010. Peningkatan Kinerja Algoritma
Smith-Waterman untuk Pendeteksian Plagiarisme pada
Dokumen Teks, http://digilib.itb.ac.id, 3 Juli 2010.

[7] Sihombing, Poltak. 1999. Sistem Temu Kembali Informasi
Menggunakan Jaringan Syaraf Tiruan dengan Beberapa
Teknik Kemiripan. Tesis. Fasilkom Universitas Indonesia.

[8] Sihombing, Poltak., Embong, A., and Sumari, P., 2005. A
Techique of Probability in Document Similarity
Comparisn in Information Retrieval System. Paper.
Penang: Paper Universitas Sains Malaysia, Malaysia.

[9] Thiang, R. K., and Hany, F. 2001. Implementasi Algoritma
Genetika pada Mikrokontroler MCS51 untuk Mencari
Rute Terpendek. Surabaya: Proceeding, Seminar of
Intelligent Technology and Its Applications (SITIA 2001),
Institut Teknologi Sepuluh November, pp: 65-73.

[10] Tombros, A. 2002. The Effectiveness of Query-Based
Hierarchic Clustering of Documents for Information
Retrieval. PhD Thesis. University of Glasgow.

132
Rancang Bangun Sistem Prediksi Penyakit
Skizofrenia dengan Menggunakan Jaringan Saraf
Tiruan Backpropagatin dengan
Adaptive Learning

Ilmiati
1
, Muhammad Ainul Yaqin
2
, Eko Djunaidi
3

1
Mahasiswa Pasca Sarjana Teknik Informatika, Teknik Informatika, Universitas Sumatera Utara
2
Teknik Informatika, Sains dan Teknologi, Universitas Islam Negeri (UIN) Maulana Malik Ibrahim Malang
3
Rumah Sakit Jiwa Dr. Radjiman Wediodiningrat Lawang
1ilmia_ti@yahoo.co.id

Abstrak — Manusia bukan saja mahluk berakal dan
mahluk social, tetapi juga mahluk produktif. Untuk hidup,
ia harus berproduksi. Dengan mengeksplorasi akal dan
daya imajinasi, manusia dapat mengubah bahan mentah
menjadi hasil produksi yaitu kemampuan manusia untuk
mendayagunakan potensi rasio, perasaan, indera yang ada
dalam dirinya. Serta mengupayakan kelayakan hidup
dengan prinsip kesimbangan, yakni tanpa depresi dan
stress. Untuk itu perlu dirumuskan sebuah masalah
bagaimana memprediksi penyakit skizofrenia sehingga
dapat ditangani sejak dini. Sistem prediksi penyakit
skizofrenia ini merujuk pada PANSS(Positive and negative
symptom scale) menggunakan metode Jaringan Saraf
Tiruan Backpropogation. Bahasa pemrograman yang
digunakan adalah Java Server Page (JSP), Java dan Mysql
sebagai databasenya. Dengan mengambil objek penelitian
pada Rumah Sakit Jiwa Dr. Radjiman Wediodiningrat
Lawang.Hasil analisis penelitian menunjukan bahwa: Nilai
rata-rata akurasi pengujian 97.7% dengan nilai
pertambahan hidden 1, 2 dan 3 menggunakan nilai alpa 0.2
sampai 0.5 dan nilai alpa momentum 0.5 sampai 0.7
sehingga prediksi penyakit skizofrenia dapat dilakukan
dengan menggunakan metode jaringan saraf tiruan
backpropagation dengan adaptive learning.

Kata Kunci—Penyakit Skizofrenia, PANSS(Positive and
negative symptom scale) Jaringan Saraf Tiruan
Backpropogation, Adaptive Learning, Momentum, Java
Server Page (JSP), Java, Mysql.

I. PENDAHULUAN

1.1 LATAR BELAKANG
Manusia bukan saja mahluk berakal dan mahluk
social, tetapi juga mahluk produktif. Untuk hidup, ia
harus berproduksi. Dengan mengeksplorasi akal dan
daya imajinasi, manusia dapat mengubah bahan mentah
menjadi hasil produksi yaitu kemampuan manusia untuk
mendayagunakan potensi rasio, perasaan, indera yang
ada dalam dirinya. Serta mengupayakan kelayakan hidup
dengan prinsip kesimbangan, yakni tanpa depresi dan
stress.
Salah satu bentuk gangguan jiwa yang terdapat
di seluruh dunia adalah gangguan jiwa skizofrenia.
Skizofrenia berasal dari dua kata‖skizo‖ yang artinya
retak atau pecah(split), dan ―frenia‖ yang artinya jiwa.
Dengan demikian orang yang mengalami gangguan jiwa
skizofrenia adalah orang yang mengalami keretakan jiwa
atau keretakan kepribadian. Gangguan ini ditandai
dengan gejala-gejala positif seperti pembicaraan yang
kacau, delusi, halusinasi, gangguan kognitif dan persepsi;
gejala-gejala negatif seperti avolition (menurunnya minat
dan dorongan), berkurangnya keinginan bicara dan
miskinnya isi pembicaraan, afek yang
datar;terganggunya relasi personal(Strauss et al, dalam
Gabbard, 1994, dalam arif, 2006 ).
Hingga sekarang penanganan penderita
Skizofrenia belum memuaskan, hal ini terutama terjadi di
negara-negara yang sedang berkembang, disebabkan
ketidaktahuan(ignorancy) keluarga maupun masyarakat
terhadap jenis gangguan jiwa ini. Di antaranya adalah
masih terdapatnya pandangan yang negatif (stigma) dan
bahwa skizofrenia bukanlah suatu penyakit yang dapat
diobati dan disembuhkan. Kedua hal tersebut diatas
menyebabkan penderita skizofrenia mengalami perilaku
disriminatif dan tidak mendapatkan pertolongan yang
memadai(Hawari, 2006). Sehingga skizofrenia cenderung
menjadi penyakit yang menahun (kronis) maka angka
insidensi penyakit ini dianggap lebih rendah dari angka
prevelensi dan diperkirakan mendekati 1 per 10.000
pertahun(DSM-IV, APA 2004, dalam Hawari, 2006). Di
indonesia sendiri angka penderita skizofrenia 25 tahun
yang lalu (PJPT I) diperkirakan 1/1000 penduduk, dan
proyeksi 25 tahun mendatang mencapai 3/1000
penduduk (Hawari, 1993 dalam Hawari, 2006).
Data statistik yang dikemukakan oleh WHO
(1990)menyebutkan bahwa setiap 1% dari penduduk di
dunia berada dalam keadaan membutuhkan pertolongan
serta pengobatan untuk suatu gangguan jiwa. Sementara
itu 10% dari penduduk memerlukan pertolongan
kedokteran jiwa pada suatu waktu dalam hidupnya.
133
1.2 TUJUAN
Tujuan penelitian ini adalah untuk membuat suatu sistem
yang dapat membantu psikiater, dokter muda, perawat
dalam menentukan penyakit skizofrenia.

II. DASAR TEORI

2.1 JARINGAN SARAF TIRUAN BACKPROPAGATION
Backpropagation merupakan algoritma
pembelajaran yang terawasi dan biasanya digunakan oleh
perceptron dengan banyak lapisan untuk mengubah
bobot-bobot yang terhubung dengan neuron-neuron yang
ada pada lapisan tersembunyinya [4].
Algoritma pelatihan backpropagation pada dasarnya
terdiri dari tiga tahapan [Fausett, 1994], yaitu:
1. Input nilai data pelatihan sehingga diperoleh nilai
output
2. Propagasi balik dari nilai error yang diperoleh
3. Penyesuaian bobot koneksi untuk meminimalkan nilai
error

Ketiga tahapan tersebut diulangi terus-menerus sampai
mendapatkan nilai error yang diinginkan. Setelah
training selesai dilakukan, hanya tahap pertama yang
diperlukan untuk memanfaatkan jaringan syaraf tiruan
tersebut. Kemudian, dilakukan pengujian terhadap
jaringan yang telah dilatih. Pembelajaran algoritma
jaringan syaraf membutuhkan perambatan maju dan
diikuti dengan perambatan mundur. Keduanya dilakukan
untuk semua pola pelatihan.




Gambar 2.1 Arsitektur Jaringan Backpropagation

Dari arsitektur diatas dapat dijelaskan:
 Inisialisasi bobot (gunakan bobot awal dengan nilai
random cukup kecil)
 Lakukan langkah berikut ini, selama kondisi
berhenti bernilai FALSE
1. Untuk tiap-tiap pasangan elemen yang akan
dilakukan pembelajaran, lakukan:

Feedforword:
a. Tiap-tiap unit input (Xi, i= 1,2,3,…,n)
menerima sinyal dari xi dan meneruskan sinyal
tersebut ke setiap unit pada lapisan yang ada
diatasnya (lapisan tersembunyi)
b. Tiap-tiap unit tersembunyi (Zj, j= 1,2,3,…,p)
menjumlahkan sinyal-sinyal input terbobot:
z_inj = menggunakan fungsi
aktivasi untuk menghitung sinyal outputnya : zj
= f (z_inj) dan kirimkan sinyal tersebut ke
semua unit di lapisan atasnya (unit-unit output).
c. Tiap-tiap unit output (Yk, k= 1,2,3,…,m)
menjumlahkan sinyal-sinyal input terbobot,
y_ink = w0k + xjpi=1 wjk gunakan fungsi
aktivasi untuk menghitung sinyal outputnya : yk
= f (y_ink) dan kirimkan sinyal tersebut ke
semua unit di lapisan atasnya (unit-unit output)
Backpropagation.
d. Tiap-tiap unit output (Yk, k= 1,2,3,…,m)
menerima target pola yang berhubungan dengan
pola input pembelajaran, hitung informasi
errornya: k = tk - yk f‘ (y_ink) kemudian
hitung koreksi bobot (yang nantinya digunakan
untuk memperbaiki nilai wjk) : Δ wjk = k j
hitung juga koreksi bias (yang nantinya
digunakan untuk memperbaiki nilai w0k) : Δ
w0k = 筽k kirimkan k ke unit-unit yang ada
di lapisan bawahnya.
e. Tiap-tiap unit tersembunyi (Zj, j= 1,2,3,…,p)
menjumlahkan delta inputnya (dari unit-unit
yang berada pada lapisan di atasnya) : _inj =
k mk=1 wjk kalikan nilai ini dengan turunan
dari fungsi aktivasinya untuk menghitung
informasi error: j = ( _inj f‘ (z_inj) kemudian
hitung koreksi bobot (yang nantinya digunakan
untuk memperbaiki nilai vij): Δ vjk = j i
hitung juga koreksi bias (yang nantinya
digunakan untuk memperbaiki nilai v0j) : Δ v0j
= .
f. Tiap-tiap unit output (Yk, k= 1,2,3,…,m)
memperbaiki bias dan bobotnya (i= 0,1,2,…,p) :
wjk (baru) = wjk (lama) - Δwjk tiap-tiap unit
tersembunyi (Zj, j= 1,2,3,…,p) memperbaiki
bias dan bobotnya (i= 0,1,2,…,n) : vij (baru) =
vij (lama) - Δvij
2. Tes kondisi berhenti [4].

2.2 JARINGAN SARAF TIRUAN CONSTRUKTIVE
BACKPROPAGATION(CBP)

Dari data yang ada, kemudian diolah menggunakan
backpropagation dengan adaptive learning. Adapun
prosesnya adalah sebagai berikut:
1. Inisialisasi, yaitu pembentukan jaringan awal
berupa jaringan tanpa unit terembunyi.
Penimbang dari konfigurasi awal dihitung
dengan meminimalkan kuadrat (sum of squared
galat = SSE) Pembentukan JST awal tanpa unit
tersembunyi yaitu menentukan input, target,
bias untuk Y(W0), fungsi aktivasi, lapisan input
dan lapisan output

134

Dimana
d lk = keluaran yang dikehendaki untuk sampel ke-l dan
unit keluaran ke-k
o lk = keluaran jaringan untuk sampel ke-l dan unit
keluaran ke-k
n = jumlah sampel data
r = jumlah unit keluaran
Penimbang yang telah ditemukan dibuat tetap.
2. Pelatihan unit tersembunyi baru, yaitu
menghubungkan masukan ke unit baru dan
sambungkan keluarannya ke unit keluaran.
Seluruh penimbang yang terhubung keuni baru
diatur dengan meminimalkan kriteria mSSE
(modified SSE):


Dimana:
d ik = keluaran yang dikehendaki pada unit keluaran ke-k
untuk pola training ke-l v jk = hubungan dari unit
tersembunyi ke-j ke unit keluaran ke-k e i k l= sisa
kesalahan dalam unit keluaran ke-k untuk pola training
ke-l.
Pembekuan unit tersembunyi baru, yaitu
menerapkan secara permanen penimbang yang
berhubungan dengan unit baru (tidakseperti pada
pelatihan CC, disinipenimbang masukan dan keluaran
dari unit yang diselipkan, dibekukan) Uji konvergensi,
yaitu jika jumlah unit tersembunyi seakrang
menghasilkan solusi yang layak, pelatihan dihentikan.
Jika tidak, kembali ke langkah 2.



Gambar 2.2 Pelatihan sebuah unit baru dengan metode
CBP

Penambahan Beberapa Unit tersembunyi Sekaligus
Pelatihan beberapa unit tersembunyi secara
bersamaan dapat lebih mempercepat pembentukan
jaringan yang besar, daripada bila menambahnya datu
persatu. Juga akan dapat lebih cepat mengurangi
kesalahan keluaran, daripada pelatihan beberapa unit
tersembunyi secara mandiri. Penambahan beberapa unit
tersembunyi secara serempak ini sulit dilakukan pada
CC, tetapi dapat dilakukan dengan mudah dalam
algoritma pelatihan CBP. Hanya diperlukan sedikit
modifikasi pada langkah 2 dan langkah 3 dari algoritma
CBP dasar:
1. Pelatihan sekumpulan unit tersembunyi baru,
yaitu dnegan menyambungkan masukan ke
sekumpulan unit tersembunyi baru, dan
menyambungkan ke unit keluaran sebagaimana
terlihat pada gambar 2.11. Ubah seluruh
penimbang yang terhubung dengan sekumpulan
unit tersembunyi baru dengan meminimalkan
kriteria mSSE. Yang perlu dicatat adalah bahwa
indeks j pada persamaan 2.2 berarti kumpulan
unit sebelumnya (terdiri dari beberapa unit) dan
indeks i berarti kumpulan unit baru (juga terdiri
dari beberapa unit), lihat gambar 2.2. Untuk
melakukan fungsi implikasi, dilakukan dengan
cara:
2. Bekukan kumpulan unit tersembunyi baru, yaitu
membuat tetap seluruh penimbang yang
terhubung ke kumpulan unit tersembunyi baru.

Gambar 2.3 Pelatihan sekumpulan unit tersembunyi baru
pada CBP

2.3 Pengupdatean Bobot dengan Momentum
Penambahan parameter momentum dalam
mengupdate bobot sering kalai bisa mempercepat proses
pelatihan. Ini disebabkan karena momentum memaksa
proses perubahan bobot terus bergerak sehingga tidak
terperangkap dalam minimum-minimum local. Untuk
membuktikan hal ini dapat dilihat kembali persamaan:
Δ wjk = k j
Δ vij = j i
Jika eror terjadi (output actual telah sama
dengan output target) maka k menjadi nol dan hal ini
akan menyebabkan koreksi bobot Δ wjk= 0, atau dengan
kata lain pengup-date-an bobot berlanjut dalam arah
yang sama sebelumnya.
Jika parameter momentum digunakan maka
persamaan-persamaan pengup-date-an bobot dengan
langkah pelatihan t, dan t+1 untuklangkah pelatihan
selanjutnya, mengalami modifikasi seperti berikut:
Δ wjk (t+1) = k j + Δ wjk(t)
Δ vij (t+1) = j i + Δ vij (t)

135
Dengan adalah parameter momentum dalam
range antara 0 sampai 1. Dalam buku adaptive learning
of polynomial networks, momentum merupakan bagian
dari adaptive learning yaitu control of learning step.

2.4 SKIZOFRENIA
1. Emil Kraepelin
Emil Kraepelin melainkan istilah morel menjadi
demensia prekoks(dementia precox), suatu istilah yang
menekankan suatu proses kognitif yang jelas(demensia)
dan onset yang awal prekoks) yang karakteristik untuk
gangguan. Kraepelin lebih lanjut membedakan pasien
dengan demensia prekoks dari pasien yang
diklasifikasikannya sebagai terkena psikosis manic
depresif atau paranoia. Pasien dengan prekoks ditandai
sebagai mengalami perjalanan jangka panjang yang
memburuk dan gejala klinis berupa halusinasi dan
waham.
Pandangan kraepelin tentang perjalanan skizofrenia
kadang-kadang keliru diinterpretasikan dalam istilah
kepastian suatu perjalanan yang memburuk, karena ia
mengetahui bahwa kira-kira mengalami pemulihan yang
lengkap dan 13 persen mengalami remisi yang
signifikan.

2. Eugen Bleuler
Eugen Bleuler mengajukan istilah ―skizofrenia‖
dan istilah tersebut menggantikan istilah ―demensia
prekoks‖ didalam literature. Bleuler berpendapat bahwa
istilah untuk menandakan adanya perpecahan (schism)
antara pikiran, emosi, perilaku pada pasien yang terkena.
Tetapi pengertian itu keliru dimengerti secara luas,
khususnya oleh masyarakat awam, sebagai menandakan
kepribadian yang terbelah(sekarang dinamakan gangguan
identitas disosiatif) adalah gangguan yang berbeda sama
sekali yang dikategorikan dalam diagnostic dan statistical
of mental disorder edisi keempat(DSM IV) dengan
gangguan disosiatif lainnya.
Perbedaan utama yang ditarik bleurer antara
konsepnya tentang skizofrenia dan konsep kraepelin
tentang dimensia prekoks adalah bahwa perjalanan yang
memburuk tidak diperlukan dalam konsep skizofrenia,
seperti dalam dimensia prekoks. Satu efek dalam
pandangan bleuree adalah meningkatnya jumlah pasien
yang memenuhi criteria konseptula untuk diagnosis
skizofrenia. Perluasan diagnosis tersebut dapat
menyebabkan perbedaan dua kali lipat dalam insendensi
skizofrenia sebelum diperkenalkannya DSM edisi ke III
jika dibandingkan dengna negara eropa(yang cenderung
mengikuti kraepelin) dengan amerika serikat(yang
cenderung mengikuti bleurer). Sejak diperkenalkannya
DSM III, system diagnostic amerika serikat jelas telah
bergeser pada gagasan kraepelin, walaupun istilah
bleuler ―skizofrenia ‖ telah diterima secar internasional
gangguan tersebut.


III. METODOLOGI

Metode yang digunakan untuk memprediksi skizofrenia
adalah metode Jaringan Syaraf Tiruan backpropagation
dengan adaptive learning. Adapun data yang digunakan
dalam pembahasan ini adalah berdasarkan data gejala-
gejala skizofrenia yang ada dalam PANSS (positive and
negative symptom scale), yang dibuat oleh grup psikiatri
dari Amerika).
Data gejala yang diperlukan adalah gangguan waham,
gangguan halusinasi, gangguan inkoherensi, gangguan
psikomotor, gangguan sosialisasi. Dari data yang ada,
kemudian diolah menggunakan backpropagation dengan
adaptive learning. Adapun prosesnya adalah sebagai
berikut:

Gambar 2.4 Flowchart CB

3. UJI COBA SISTEM
Untuk mengetahui seseorang menderita
skizofrenia atau tidak, diagnosa skizofrenia memiliki
ketentuan sebagai berikut: Total nilai 0 dari gejala dari
gangguan waham, gangguan halusinasi, gangguan
inkoherensi, gangguan psikomotor, gangguan sosialisasi
maka orang tersebut diprediksi normal .
Total nilai 1 sampai dengan 5 dari gejala dari
gangguan waham, gangguan halusinasi, gangguan
inkoherensi, gangguan psikomotor, gangguan sosialisasi
maka orang tersebut diprediksi ―sehat social‖(boleh
keluar rumah sakit).
Total nilai 6 sampai dengan 10 dari gejala dari
gangguan waham, gangguan halusinasi, gangguan
inkoherensi, gangguan psikomotor, gangguan sosialisasi
maka orang tersebut diprediksi psikotik dan skizofrenia
136
sub akut.
Total nilai 11 sampai dengan 20 dari gejala dari
gangguan waham, gangguan halusinasi, gangguan
inkoherensi, gangguan psikomotor, gangguan sosialisasi
maka orang tersebut diprediksi psikotik dan skizofrenia
akut.

3.1 HASIL

Gambar 3.1 Hasil Pelatihan Dan Pengujian
Keterangan:
A: Data kombinasi (3125 data)
B: waktu iterasi berhenti
C: maksimal iterasi
D: nilai Alpa
E: Nilai alpa momentum
F:nilai pertambahan hidden
G: maksimal hidden
H: nomor uji coba

Dari Gambar 3.1 di atas, dapat diperoleh
kesimpulan sebagai berikut:
Nilai pertambahan hidden 1, 2 dan 3 yang terbaik dari
hasil uji coba adalah dengan menggunakan nilai alpa
momentum 0,5 sampai dengan 0,7 dan nilai alpa yang
berkisar antara 0,2 sampai 0,5 dimana nilai rata-rata
akurasi pengujian 97,7 %. Sedangkan nilai pertambahan
hidden 1, 2 dan 3 dengan menggunakan nilaialpa
momentum 0,8 sampai 0,9 dan nilai alpa 0,2 sampai 0.5
memiliki nilai rata-rata akurasi pengujian lebih rendah
yaitu 70,7%.

IV. KESIMPULAN
Dari hasil pembahasan yang ada pada bab IV, maka
dapat diambil kesimpulan:
Nilai rata-rata akurasi pengujian 97.7% dengan nilai
pertambahan hidden 1, 2 dan 3 menggunakan nilai alpa
0.2 sampai 0.5 dan nilai alpa momentum 0.5 sampai 0.7
sehingga prediksi penyakit skizofrenia dapat dilakukan
dengan menggunakan metode jaringan saraf tiruan
backpropagation dengan adaptive learning.




V. SARAN
Ada beberapa hal yang perlu dikembangkan dari
penelitian ini, antara lain, yaitu Untuk teknik JST CBP
sebaiknya input datanya dapat diubah-ubah. Dengan
demikian maka JST CBP dapat digunakan dengan data
yang inputnya dinamik.

DAFTAR PUSTAKA
[1] Arif, Imam setiadi.maret 2006. Skizofrenia.
Bandung: Reflika adi
[2] Tomo, David. Buku Saku psikiatri edisi ke 6.Buku
Kedokteran
[3] Hawari, Dadang.2006. Pendekatan holstik pada
gangguan jiwa skizofrenia. Jakarta: Fakultas
kedokteran universitas Indonesia.
[4] Hermawan, Arief. 2006. Jaringan Saraf
[5] Tiruan Teori Dan Aplikasi. Yogyakarta: Penerbit
ANDI
[6] Ingram, I.M, Timbury, G.C, Mowbray, R.M.
Catatan Kuliah Psikiatri edisi ke 6. Buku
Kedokteran.
[7] Kusumadewi, Sri. 2003. Artificial Intelligence
(Teknik dan Aplikasinya). Jogjakarta: Graha Ilmu
[8] Maslim, Rusdi. Juni 2003. Buku Saku Diagnosis
Gangguan Jiwa: Rujukan Rigkas dari PPDGJ-III.
Jakarta: Bagian Ilmu Kedokteran Jiwa FK UNIKA
Atma Jaya
[9] Maramis, A. Albert dan maramis, F willy.
2009.Catatan Ilmu Kedokteran Jiwa Jilid 2.
Jakarta: Erlangga University Press
[10] Mardalis. 1989. Metode penelitian(suatu
pendekatan proposal). Jakarta: Bumi aksara
[11] Martaniah, sri mulyania. 2001. Hand Out
Piskologi abnormal dan psikopatologi.. jogyakarta
[12] Muis, Saludin. 2006. Teknik Jaringan Saraf
Tiruan. Jakarta: Graha Ilmu
[13] Nugroho, adi. 2005. Rasional Rose untuk
pemodelan Berorientasi Objek. Bndung:
Informatika Bandung.
[14] Pedoman diagnosis dan terapi Lab/UPF Ilmu
kedokteran Jiwa.1994. Rumah sakit Daerah Dr.
Soetomo. Surabaya
[15] Purnomo, Mauridhi Hery dan Kurniawan, Agus.
2006. Supervised Neural Networks dan
Aplikasinya. Jakarta: Graha Ilmu
[16] Riduwan. 2002. Skala pengukuran Variabel-
varibel penelitian. Bandung: Alfabeta
[17] Sano, Dian. 2005. 24 Jam Menguasai HTML, JSP
dan MYSQL. Yogyakarta:Andi Offset.
[18] Shing Roger Jang, Jyh, tsai Sun, chuen, Mizutani,
Eiji. 1997. Neuro-fuzzy and Soft Computing A
Computational Approach toLearning and
Machine Intelligence. United states of
America.prentice-Hall.Inc

137
[19] Suyanto. 2007. Artificial Intelegence Searching,
Reasoning, Planning dan Learning. Bandung:
Informatika
[20] Sulistyaningsih. Direvisi dari buku ajar
―Psikologia abnormal dan psipatologi‖
[21] Sugiyono. 2008. Metode peneltian kuantitatif,
kualitatif, R&D. Bandung: Alfabeta
[22] Y. Nikolaev, Nikolay dan Iba Hitoshi.2006.
Adaptive Learning of Polynomial Networks
Genetic Programming, Backpropagation and
Bayesian Methods United States of America:
Springer Science+Business Media, Inc.
[23] Http://www.Fernonline.org/content/downloads/39/
PANSS Scoring Criteria.pdf diakses tanggal 7
april 2011 jam 14.30
138
Analisis Teknik Watermaking Metode end of
File dan Enkripsi Rot 13 untuk Meningkatkan
Keamanan

Yuyun Yusnida Lase – NIM 107038021

Program Studi PascaSarjana(S2) – Teknik Informatika
Fakultas Matematika dan Ilmu Pengetahuan Alam
Universitas Sumatera Utara
Jl. Universitas No. 24-A Kampus USU Medan
E-mail yylase@yahoo.com

Abstrak Media digital telah menggantikan peran
media dalam bebagai aplikasi hal ini karena kelebihan yang
dimiliki media digital seperti transmisi yang bebas derau,
penyimpanan yang padat, penyalinan yang sempurna, dan
kemudahan untuk melakukan pengeditan. Di samping
kelebihan yang dimiliki oleh media digital, terdapat
kelemahan dari penggunaan media digital. Masalah
terbesar adalah mengenai hak intelektual (hak cipta) dan
kebenaran konten dari suatu media digital.
Digital watermarking dikembangkan sebagai salah satu
untuk menentukan hak cipta pada citra digital. Teknik
watermarking bekerja dengan menyisipkan pesan yang
menunjukkan hak cipta pada media citra digital tanpa
pengaruhi kualitasnya. Jadi pada citra digital, mata tidak
bisa membedakan apakah citra tersebut disisipi watermark
atau tidak disisipi watermark. Teknik watermarking dengan
menggunakan End Of File dapat digunakan untuk
pelindungan hak cipta citra digital.

Kata kunci Watermark, Citra Digital, EOF, ROT 13


I. PENDAHULUAN
1.1. Latar Belakang
Saat ini media digital seperti video, audio, dan
gambar telah menggantikan peran media analog dalam
berbagai aplikasi. Hal ini disebabkan karena beberapa
kelebihan yang dimiliki media digital seperti transmisi
yang bebas derau, penyimpanan yang padat, penyalinan
yang sempurna, dan kemudahan untuk melakukan
pengeditan. Di samping kelebihan yang dimiliki oleh
media digital, terdapat kelemahan dari penggunaan
media digital. Masalah terbesar adalah mengenai hak
intelektual (hak cipta) dan kebenaran konten dari suatu
media digital.
Dalam penulisan ini, citra yang akan diberi label
adalah citra dengan format bitmap (bmp) dan JPEG/JPG
(Joint Photographic Expert Group), dimana aplikasi ini
akan dapat dipergunakan untuk melindungi citra bitmap
seperti logo-logo perusahaan, lukisan digital, ataupun
citra seni fotografi karya photographer professional yang
akan dikirim melalui internet untuk mengikuti suatu
pelombaan. Namun dalam implementasinya, penulis
hanya menerapkan watermarking pada logo-logo
perusahaan.
Perkembangan watermarking menjadi salah satu
alternatif dalam perlindungan hak cipta suatu media
digital. Berbeda dengan teknik kriptografi, dimana
kecurigaan terhadap pesan yang disamarkan mudah
dikenali, karena pesan yang disamarkan dengan cara
mengubah pesan yang asli menjadi seolah-olah tidak
terbaca. Sedangkan watermarking adalah menyisipkan
informasi ke dalam data media digital tersebut.
Salah satu metode watermarking yang dapat
digunakan adalah metode End Of File (EOF). Metode
End Of File (EOF) merupakan salah satu teknik yang
menyisipkan data pada akhir file. Teknik ini dapat
digunakan untuk menyisipkan data yang ukurannya sama
dengan ukuran file sebelum di sisipkan data ditambah
dengan ukuran data yang disisipkan kedalam file
tersebut. Dalam teknik EOF, data yang disisipkan pada
akhir file diberi tanda khusus sebagai pengenal start dari
data tersebut dan pengenal akhir dari data tersebut.
End Of File menggunakan redundant bits sebagai
tempat menyembunyikan pesan pada saat dilakukan
kompresi data, dan kemudian menggunakan kelemahan
indera manusia yang tidak sensitif sehingga seakan-akan
tidak ada perbedaan yang terlihat antara sebelum atau
sesudah pesan disisipkan. Untuk itu penulis
menggabungkan teknik tersebut ke dalam penulisan ini.

1.2 Perumusan Masalah
Berdasarkan latar belakang masalah di atas dapat
diambil rumusan masalah sebagai berikut :
1. Bagaimana perlindungan hak cipta pada citra
digital yang dihasilkan dengan watermarking
metode EOF ?
2. Bagaimana tingkat keamanan watermark yang di
kripto dengan metode enkripsi ROT 13 ?

1.3 Batasan Masalah
Batasan masalah dalam penulisan ini adalah :
139
1. Penulis hanya membahas tentang cara pengamanan
hak cipta sebuah citra digital memanfaatkan
watermarking metode EOF.
2. Citra yang digunakan merupakan citra diam dengan
format bitmap (bmp) dan JPEG/JPG (Joint
Photographic Expert Group) dengan
kedalaman/intensitas warna 24 bit.

1.4 Tujuan
Tujuan yang hendak dicapai dalam penulisan ini adalah:
1. Untuk memahami konsep watermarking tehadap citra
digital.
2. Untuk mengetahui proses kerja gabungan teknik
watermarking metode EOF dan enkripsi ROT13 pada
citra digital.

1.5 Manfaat
Adapun manfaat yang dapat diambil dari
penulisan penulisan ini adalah untuk mendapatkan
tingkat keamanan dan menjaga legalitas kepemilikikan
suatu objek agar tidak terjadi pemalsuan dan pembajakan
terhadap objek tersebut.

1.6 Metode Penelitian
Adapun metode yang penulis lakukan di dalam
penulisan ini adalah Metode perpustakaan, Metode
lapangan, Metode analisa.

II. LANDASAN TEORI
2.1 Digital Watermarking
Digital watermarking didasarkan pada ilmu
steganografi, yaitu ilmu yang mengkaji tentang
penyembunyian data. Teknik ini mengambil mengambil
keuntungan dari keterbatasan indera manusia, khususnya
indera penglihatan dan indera pendengaran, sehingga
watermark yang dibubuhkan pada dokumen tidak
disadari kehadirannya oleh manusia. Digital
watermarking dikembangkan sebagai salah satu jawaban
untuk menentukan keabsahan pencipta atau pendistribusi
suatu data digital dan integritas suatu data digital. Teknik
watermarking bekerja dengan menyisipkan sedikit
informasi yang menunjukkan kepemilikan, tujuan, atau
data lain pada media digital tanpa mempengaruhi
kualitasnya. [1]

2.2 Sejarah Watermarking
Watermarking sudah ada sejak 700 tahun yang
lalu. Pada akhir abad 13, pabrik kertas di Fabriano, Italia,
membuat kertas yang diberi watermark atau tanda-air
dengan cara menekan bentuk cetakan gambar atau tulisan
pada kertas yang baru setengah jadi. Ketika kertas
dikeringkan terbentuklah suatu kertas yang
berwatermark. Kertas ini bisanya digunakan oleh
seniman atau sastrawan untuk menulis karya mereka.
Kertas yang sudah dibubuhi tanda-air tersebut sekalius
dijadikan identifikasi bahwa karya seni di atasnya adalah
milik mereka .[1]
Ide watermarking pada data digital (sehingga
disebut digital watermarking) dikembangkan di Jepang
tahun 1990 dan di Swiss tahun 1993. Digital
watermarking semakin berkembang seiring dengan
semakin meluasnya penggunaan internet, objek digital
seperti video, citra, dan suara yang dapat dengan mudah
digandakan.

2.3 Klasifikasi Watermark
Klasifikasi watermark pada umunya terdiri dari
dua , yaitu :
1. Fragile watermarking
Salah satu metode watermarking untuk autentikasi
yang memiiki ketahanan rendah terhadap modifikasi
dimana perubahan yang kecil akan merusak semua
informasi yang disembunyikan.
2. Robust watemarking
Robust watermark bertolak belakang dengan fragile
watermark .robust watermark bisa visible (dapat
dilihat) dan invisible (tidak dapat dilihat) robust
watermark adalah sebuah sistem watermark yang
tangguh dari serangan- serangan yang bisa dilakukan
untuk menggagalkan pengungkapan dari
watermark.sebuah sistem yang robust adalah ketika
sebuah pesan yang didisisipkan tidak bisa dihapus
atau diubah isinya kecuali dengan merrusak isi data
aslinya juga. [1]

Metode End Of File (EOF)
Teknik yang digunakan pada digital
watermarking beragam tetapi secara umum teknik ini
menggunakan redundant bits sebagai tempat
menyembunyikan pesan pada saat dilakukan kompresi
data, dan kemudian menggunakan kelemahan indera
manusia yang tidak sensitive sehingga pesan tersebut
tidak ada perbedaan yang terlihat atau yang terdengar.
Teknik EOF atau End Of File merupakan salah satu
teknik yang digunakan dalam Steganografi. Teknik ini
menggunakan cara dengan menyisipkan data pada akhir
file.
Teknik ini dapat digunakan untuk menyisipkan
data yang ukurannya sesuai dengan kebutuhan. Ukuran
file yang telah disisipkan data sama dengan ukuran file
sebelum disisipkan data ditambah dengan ukuran data
yang disisipkan ke dalam file tersebut. Dalam teknik ini,
data disisipkan pada akhir file dengan diberi tanda
khusus sebagai pengenal start dari data tersebut dan
pengenal akhir dari data tersebut
Proses kerja Teknik End Of File merupakan salah
satu teknik yang digunakan untuk pelabelan suatu citra
digital, dengan cara menyisipkan watermark mulai dari
akhir file. Misalkan pada citra berukuran 800 x 600 akan
dilakukan penyisipan watermark dimulai dari piksel
terakhir, yaitu ( 800,600) menuju ke koordinat awal
piksel citra ( 0,0 ) atau sesuai dengan panjang watermark.
Tetapi sebelum menyisipkan watermark dilakukan
terlebih dahulu pemberian tanda agar dapat diketahui
bahwa citra tersebut telah disisipi watermark, disini
penulis memilih karakter sebagai tanda awal. [6]
140
Kode Caesar
Subtitusi kode yang pertama dalam dunia
penyandian terjadi pada pemerintahan Yulius Caesar
yang dikenal dengan kode Caesar, dengan mengganti
posisi huruf awal dari alphabet atau disebut juga
algoritma ROT3.
Pada sistem operasi unix , ROT 13 adalah fungsi
yang menggunakan kode caesar dengan pergeseran k =
13, sistem enkripsinya dengan membagi alphabet n = 26
menjadi 13, sehingga satu huruf saling berhadapan
dengan huruf lainnya. Jika teks aslinya adalah ―A‖ maka
teks kodenya adalah ―N‖. Begitu seterusnya, notasi
matematikanya dapat ditulis sebagai berikut:
C = ROT 13 (M)
Untuk melakukan dekripsi dengan proses enkripsi
ROT13 sebanyak dua kali:
M = ROT 13(ROT 13(M))
ROT13 berasal dari net.jokes (http :
groups.google.com/group/net.jokes) pada awal tahun
1980. ROT13 bisanya digunakan didalam forum online
untuk menyandikan jawaban teka-teki, kuis,
menyandikan canda, dan lain-lain. huruf – huruf
plainteks dengan huruf chipherteks di dalam ROT13.
Pesan HELLO disandikan dengan ROT13 menjadi
URYYB. [2]

III. PEMBAHASAN
3.1 Contoh Kasus
Dalam penulisan ini, penulis mengambil contoh
kasus pada citra di bawah ini:


Gambar 1. Logo yang akan diwatermarking

Gambar di atas yang berukuran 800 x 600 adalah
logo dari suatu perusahaan yang baru dipesan pada
sebuah advertising untuk keperluan pembukaan kantor
cabang yang baru dari perusahaan tersebut. Supaya logo
ini tidak diduplikasi dengan mudah oleh pihak-pihak
yang tidak bertanggung jawab, maka perlu disisipkan
suatu informasi guna melindungi hak cipta dari logo
tersebut.
Dengan demikian, memerlukan suatu cara untuk
mengatasi hal yang berkaitan dengan pelanggaran hak
cipta ini yang memiliki sifat tidak tampak (Invisible),
tidak mudah dihapus (Robustness), dan tidak
menghambat proses penduplikasian (Trackable).
Maka disini penulis mencoba menerapkan
watermarking metode EOF (End Of File) yang memiliki
sifat invisible, dengan mengganti bit terakhir dari piksel
citra, sehingga data watermark yang disisipkan ke dalam
citra akan sulit terdeteksi keberadaannya. Untuk
menambah tingkat keamanan, maka data watermark
yang akan disisipkan kedalam citra terlebih dahulu akan
dikriptografi dengan metode enkripsi ROT13.

3.2 Proses Watermarking dengan Metode EOF
Watermarking EOF diperlihatkan dengan
memperhatikan piksel-piksel citra dibawah ini :

BOF














EOF

Gambar 2. Piksel Citra

Penyisipan data watermark akan dimulai dari
koordinat piksel terakhir (800,600) menuju koordinat
awal piksel citra (0,0), yaitu mengganti bit terakhir dari
piksel 800,600 tersebut dengan bit-bit data watermark.
Dimisalkan dengan representasi matriks ukuran 8x8.





(100,100)(100,200)(100,300)(100,400)(100,500)(100,600)

(200,100)(200,200)(200,300)(200,400)(200,500)(200,600)

(300,100)(300,200)(300,300)(300,400)(300,500)(300,600)

(400,100)(400,200)(400,300)(400,400)(400,500)(400,600)

(500,100)(500,200) (500,300)(500,400)(500,500)(500,600)

(600,100)(600,200)(600,300)(600,400)(600,500)(600,600)

(700,100)(700,200)(700,300)(700,400)(700,500(700,600)

(800,100)(800,200)(800,300)(800,400)(800,500)(800,600)


141
Maka penyisipan pesan ―ABA‖ disandikan
dengan ROT13 menjadi NON. cipherteks NON,
dienkripsi dengan ROT 13, maka akan menghasilkan
kembali plainteks ABA.
A = 01000001
B = 01000010
A = 01000001
Hasil chiperteks dalam bentuk biner. Dalam
ilustrasi yang dibuat, penulis hanya memberikan contoh
penyisipan bit untuk cipherteks , dikarenakan jika
menuliskan semua bit chiperteks yang dihasilkan dalam
proses perhitungan, representasi matriks yang diberikan
tidak akan cukup untuk menampung jumlah bit
chiperteks. Penyisipan bit data dilakukan dengan cara
mengganti nilai bit terakhir dari bit warna dengan nilai-
nilai bit data :


Bit yang digaris bawahi adalah bit data yang
disisipkan kedalam citra digital dengan algoritma LSB,
penyisipan bit data ini tidak akan memberi pengaruh
besar pada perubahan nilai bit warna citra sehingga citra
awal dan citra hasil tidak akan terlihat perubahan yang
mencolok.

Ukuran Data Yang Dapat Disisipkan
Ukuran data yang dapat disisipkan kedalam citra,
tergantung dari citra tempat penampung data. Untuk citra
24-bit setiap pixelnya berukuran 3 byte, masing-masing 1
byte untuk warna Merah (R), Hijau (G), dan Biru (B).
Adapun cara untuk mengetahui jumlah data yang dapat
ditampung dalam citra 24-bit adalah dengan mengalikan
panjang dan lebar citra. Misalkan untuk citra 8-bit
berukuran 800 x 600 :
800 x 600 = 480000 byte
Karena dalam tiap pixel citra 24-bit terdapat 3 byte
maka :
480000 x 3 = 1440000 byte
Karena setiap byte hanya bisa menyembunyikan
satu bit di LSB-nya, maka ukuran data yang akan
disembunyikan di dalam citra maksimum. 1440000/8 =
179.994 byte.Ukuran data ini harus dikurangi dengan
panjang nama berkas, karena penyembunyian data
rahasia tidak hanya menyembunyikan isi data tersebut,
tetapi juga nama berkasnya. Semakin besar data
disembunyikan di dalam citra, semakin besar pula
kemungkinan data tersebut rusak akibat manipulasi pada
citra penampung.



Perubahan Jumlah Warna Pada Citra
Pada citra 8-bit, jumlah warna terbatas, hanya 256
warna. Pengubahan format citra 8-bit, menjadi 24-bit
akan menghasilkan warna baru yang semula tidak
terdapat dalam palet RGB. Setiap elemen RGB pada
table palet berpotensi berubah menjadi 8 warna berbeda
setelah proses penggantian bit LSB. Hal ini Karena
setiap data terdiri atas 3 byte, maka tersedia 3 bit LSB
untuk penggantian. Penggantian 3 bit LSB menghasilkan
2
3
= 8 kombinasi warna. Dengan demikian watermarking
pada citra 256 warna berpotensi menghasilkan 256 x 8 =
2048 warna.

Jaminan Keamanan Yang Dihasilkan Watermarking
EOF

Watermarking metode EOF (End Of File) dapat
memberikan keamanan yang lebih terjamin untuk
melindungi legalitas suatu citra digital. Karena dengan
metode penyisipan yang menyebar bit-bit watermark
mengganti posisi LSB (Least Significant Bit) dari citra
dan dimulai di akhir dari piksel citra tersebut. Maka
dengan metode ini watermark yang disembunyikan
didalam citra akan lebih sulit terdeteksi keberadaannya.

Proses Digital Watermarking

Created by :
Retro Advertising
Enkripsi
ROT13
Prn rq-o†-G-_r |-Nqƒr v€v{t
Watermarking
EOF
Extract
Dekripsi
ROT13
Citra Awal
Created by :
Retro Advertising Prn rq-o†-G-_r |-Nqƒr v€v{t
Plainteks
(Data watermark)
Cipherteks
(Data watermark)
Citra
Berwatermark
Citra Normal


Gambar 3.Proses Digital Watermarking

Gambar di atas merupakan gambaran sistem yang
akan dibangun. Dimana pertama kali user akan
menginputkan data plainteks (pesan asli), untuk
kemudian data plainteks tersebut dienkripsi dengan
ROT13 sehingga didapat cipherteks (pesan yang
disandikan). Kemudian cipherteks akan disisipkan
kedalam citra dengan metode penyisipan LSB (Least
Significant Bit) yang mana penyisipan dimulai pada bit
terakhir dari citra tersebut EOF (End Of File).
Setelah proses penyisipan dilakukan, maka akan
didapat citra berwatermark. Kemudian jika ingin
mengeluarkan kembali bit-bit yang telah disisipkan ke
dalam citra, maka akan dilakukan proses ekstraksi yang
142
mana akan mendapatkan cipherteks kembali, kemudian
cipherteks dideskripsi kembali dengan ROT13 sehingga
didapat plainteks.

IV. KESIMPULAN DAN SARAN

4.1 Kesimpulan
Dari penulisan di atas dapat disimpulkan bahwa :
1. Penerapan kriptografi metode enkripsi ROT13 cukup
memberi keamanan pada data watermark yang akan
disisipkan kedalam citra, karna yang dilindungi disini
adalah citra digitalnya.
2. Watermarking Metode EOF dengan menggunakan
algoritma LSB yang merubah bagian bit terakhir
data, sehingga tidak terlalu banyak mengubah nilai
warna pada citra, dan citra yang disisipi watermark
tidak banyak berubah secara kasat mata.
3. Watermarking metode EOF dapat memberikan
keamanan yang lebih terjamin dalam menjaga
legalitas suatu citra digital karena penyisipan data
watermark dimulai dari akhir piksel data citra, dan
menghasilkan watermarking bersifat (invisible),
sehingga data watermark sulit terdeteksi
keberadaannya.

4.2 Saran
1. Diharapkan untuk mengembangkan aplikasi ini agar
dapat menerapkannya pada data video,mp3, dan citra
digital lainnya dengan metode kriptografi dan metode
watermarking yang lain yang lebih tinggi tingkat
keamanannya.
2. Diharapkan penelitian atau penemuan teknik yang
baru untuk memberikan perlindungan hak cipta pada
citra digital sehingga dapat memberikan jaminan
keamanan bagi seseorang untuk berkarya.

DAFTAR PUSTAKA

[1] Ariyus, Dony. Keamanan Multimedia. 2009. Edisi - 1. Penerbit
Andi Offset. Yogyakarta.
[2] Munir, Rinaldi. Kriptografi. 2006. Edisi- 1. Penerbit Informatika
Bandung.
[3] Munir, Rinaldi. Sekilas Image Watermarking Untuk
Memproteksi Citra Digital Dan Aplikasinya Pada Citra
Medis.Pdf. Institut Teknologi Bandung.
[4] Munir, Rinaldi. M.T. Kuliah IF5054 Steganografi dan
Watermarking.Pdf. Bandung.
[5] Priyoyudo, Adi dkk. Teknik Pembuktian Kepemilikan Citra
Digital Dengan Water Marking Pada Domain Wavelet.Pdf.
Semarang.
[6] Sukrisno dan Emma Utami. Implementasi Steganografi Teknik
EOF Dengan Gabunngan Enkripsi Rinjdael,Shift Cipher, dan
Fungsi Hash MD5.pdf. Yogyakarta.
[7] bilbram.blogspot.com
[8] fnns.wordpress.com
[9] http://id.wikipedia.org/wiki/Enkripsi
[10] http://id.wikipedia.org/wiki/Visual_Basic
[11] http://muliadi-aziz.blog.friendster.com/2007/09/pengertian-citra-
digital/
[12] www.wikipedia.org
[13] http://sinax89.blogspot.com/2010/10/e-commers-security.html
143
Meningkatkan Kualitas Informasi pada Data
Warehouse Menggunakan Teknik Data Mining

Zefri Paulanda

Pasca Sarjana Teknik Informatika Universitas Sumatera Utara
Zefpaulanda@yahoo.com


Abstrak — Knowledge discovery adalah proses penambahan
pengetahuan dari sejumlah besar data. Kualitas
pengatahuan yang dihasilkan dari proses knowledge
discovery sangat mempengaruhi keputusan yang akan
diambil. Untuk menjamin proses knowledge discovery dapat
menghasilkan pengetahuan atau informasi yang berkualitas
dibutuhkan data yang berkualitas. Pada data warehouse,
knowledge discovery berkaitan dengan pengambilan
keputusan strategis untuk organisasi atau perusahaan. Data
warehouse dibangun dengan mengintegrasikan beberapa
basis data operasional organisasi dan data dari sumber
eksternal organisasi, sehingga sangat rentan terhadap data
yang „dirty‟, yaitu data yang incompelete, inconsistent, dan
mengandung noise atau error. Data mining menyediakan
mekanisme untuk membersihkan data „dirty‟ sebelum
disimpan ke dalam warehouse. Makalah ini mengkaji
teknik-teknik data mining yang dapat digunakan untuk
membersihkan data „dirty‟, guna meningkatkan kualitas
data dan informasi pada datawarehouse.
Kata kunci —Kualitas Data dan Informasi, Data Warehouse,
Data Cleaning

I. PENDAHULUAN
Kegiatan operasional harian suatu perusahaan
dapat menghasilkan milyaran byte data, yang selanjutnya
akan digunakan oleh para pengambil keputusan dalam
perusahaan untuk menentukan langkah strategis
perusahaan. Umumnya data dari kegiatan operasional
harian perusahaan disimpan pada basis data operasional,
menggunakan arsitektur basis data relasional. Data yang
disimpan adalah data terbaru dan terperinci, dan
dinormalisasi untuk menghilangkan duplikasi data dan
mempercepat pengaksesan data. Data terbaru, terperinci,
dan telah dinormalisasi menghasilkan informasi yang
tidak akurat dan tidak lengkap. Untuk menghasilkan
pengetahuan yang akurat dan lengkap dibutuhkan data
historis dan ringkas.
Proses ekstraksi atau penambahan pengetahuan
dari sejumlah besar data disebut Knowledge Discovery
in Database (KDD), dinyatakan pada gambar 1. Data
warehouse merupakan teknologi basis data yang
dikembangkan untuk menjawab kebutuhan bisnis
terhadap suatu teknologi yang dapat menyimpan data
dalam jumlah besar, mengolah data, dan menyediakan
data dan informasi, untuk digunakan pada proses analisis
dan pengambilan keputusan.



Gambar 1. Proses KDD

Data warehouse mengintegrasikan data yang
dikumpulkan dari berbagai sumber yang disimpan
menggunakan skema yang sama, dan menyediakan baik
data historis maupun data ringkas. Dengan data historis,
tren dan pola jangka panjang data dapat dideteksi untuk
mendukung kegiatan analisis dan pengambilan keputusan
dalam perusahaan. Sedangkan data yang ringkas
mendukung akses yang efisien terhadap data dalam
jumlah banyak, dan dapat memperkecil ukuran basis data.
Data warehouse mengintegrasikan data dari beberapa
basis data operasional dan data dari luar perusahaan,
sehingga sangat rentan terhadap masalah data incomplete,
noisy, dan inconsistent, yang menghasilkan data dengan
kualitas rendah. Untuk meningkatkan efisiensi proses
knowledge dicovery dibutuhkan data yang berkualitas.
Kualitas data dapat diperbaiki dengan melakukan pra-
pengolahan data sebelum disimpan dalam data
warehouse. Data mining menyediakan mekanisme untuk
meningkatkan kualitas data yang akan disimpan dalam
data warehouse. Makalah ini akan mengkaji proses
pembersihan data menggunakan teknik-teknik data
mining, untuk meningkatkan kualitas data yang akan
disimpan dalam data warehouse.

Kualitas Data dan Informasi
Kualitas data diukur menurut level kontribusi
informasi, yang dihasilkan dari data, dalam proses
pengambilan keputusan. Data harus menghasilkan
informasi yang relevan, benar, akurat, tepat, lengkap,
timely, konsisten, useable, dan memenuhi syarat atau
sesuai dengan kebutuhan proses (conform).
Relevan. Informasi yang relevan bergantung
pada task yang akan dilakukan; dalam konteks data
144
warehouse berkaitan dengan kegiatan pengambilan
keputusan, dimana tingkat relevansi ditentukan oleh
terkait atau tidak terkaitnya informasi yang dihasilkan
dengan domain pengambilan keputusan.
Benar, Akurat, Tepat. Tingkat kebenaran data
ditentukan berdasarkan nilai dari ‗dunia nyata‘. Akurasi
data diukur berdasarkan seberapa dekat nilai suatu data
dengan nilai dari dunia nyata, dimana ukuran akurasi
digunakan pada data yang mengandung kesalahan pada
batas toleransi tertentu. Akurasi data yang disimpan
dalam data warehouse bergantung pada akurasi data dari
sumber asalnya. Data yang tepat adalah data yang
memiliki tingkat akurasi maksimum.
Lengkap. Data yang lengkap memiliki semua
elemen atau atribut yang relevan, yang dibutuhkan untuk
proses pengambilan keputusan.
Timely. Elemen waktu pada informasi berkaitan
dengan waktu saat informasi dibutuhkan, waktu untuk
menyediakan informasi yang dibutuhkan, dan waktu saat
informasi didapatkan. Informasi yang ‗tepat waktu‘
adalah informasi yang tersedia saat dibutuhkan dan
merefleksikan data yang upto-date.
Konsisten. Konsistensi berarti semua elemen
data yang berkaitan, atau merupakan bagian satu kelas
informasi yang sama, didasarkan pada asumsi, definisi,
dan periode waktu yang sama.
Usable, Conform. Tingkat kegunaan informasi
ditentukan oleh seberapa cepat dan mudah pengguna
dapat memahami dan menemukan apa yang dicari atau
dibutuhkan dari informasi yang dilihat. Informasi yang
dihasilkan harus memenuhi syarat atau sesuai dengan
kebutuhan pengguna atau task yang akan memproses
informasi tersebut.

Data Warehouse
Data warehouse adalah kumpulan teknologi
untuk pengambilan keputusan yang bertujuan membantu
knowledge worker (manajer, analis, eksekutif)
perusahaan untuk menyimpan dan mengatur data secara
sistematis, dan menggunakan data tersebut dalam proses
analisis dan pengambilan keputusan strategis bagi
perusahaan.
Data warehouse dibangun dengan
mengintegrasikan data dari berbagai sumber, yang
mengandung duplikasi data, bentuk representasi data
yang berbeda-beda, kesalahan penulisan, serta data
incomplete dan inconsistent. Untuk menghasilkan
pengetahuan yang akurat, konsisten, lengkap, dan
berkualitas, transformasi dan penggabungan representasi
data yang berbeda-beda, serta eliminasi duplikasi data
menjadi proses penting dan dibutuhkan. Pada data
warehouse, proses loading dan refreshing data dalam
jumlah besar, yang berasal dari beragam basis data
operasional, terjadi secara kontinyu. Probabilitas data
yang akan disimpan ke dalam data warehouse
mengandung data yang dirty, tinggi. Data warehouse
digunakan untuk proses pengambilan keputusan,
sehingga akurasi data merupakan faktor penting untuk
menjamin kualitas informasi dan pengetahuan yang
dihasilkan.
Data mining menyediakan mekanisme untuk
meningkatkan kualitas data pada data warehouse. Teknik
pra-pengolahan data dari data mining dapat digunakan
untuk meningkatkan kualitas data dan efisiensi proses
knowledge discovery, pada akhirnya dapat meningkatkan
kualitas pengetahuan yang dihasilkan dari proses
knowledge discovery. Pra-pengolahan data pada proses
knowledge discovery menentukan kualitas data.

Pra-pengolahan Data: Data Mining
Pra-pengolahan data merupakan proses awal
data, sebelum data diekstrak untuk mendapatkan pola
data yang memenuhi syarat interestingness dan dapat
menghasilkan pengetahuan yang berharga. Ada beberapa
teknik pra-pengolahan data, yaitu cleaning, integration,
tranformation, dan reduction. Data cleaning berkaitan
dengan deteksi dan penghilangan data yang salah dan
tidak konsisten. Data integration menggabungkan data
dari beberapa sumber ke dalam media penyimpanan data
yang coherent, misalnya data warehouse. Data
transformation mencakup transformasi atau konsolidasi
data ke dalam bentuk yang tepat. Data reduction adalah
proses untuk mengurangi ukuran data, menggunakan
fungsi agregasi atau meringkas data, memilih fitur-fitur
data yang dapat merepresentasikan data secara
keseluruhan, mengeliminasi duplikasi data, atau
melakukan clustering data.
Data cleaning merupakan langkah yang penting
dalam upaya meningkatkan kualitas data. Data cleaning
adalah proses mengisi nilai data yang kosong atau hilang,
mendeteksi dan menghilangkan kesalahan pada data,
noise, outliers, dan memperbaiki data yang tidak
konsisten, untuk meningkatkan kualitas data.

Data Incomplete
Data incomplete atau tidak lengkap disebabkan
oleh beberapa hal, diantaranya adalah tidak tersedianya
atribut yang dibutuhkan, atribut tidak dicatat saat
pemasukkan data karena dianggap tidak penting,
kesalahan fungsi alat pencatat data, data dihapus karena
tidak cocok dengan data lain, dan kesalahan saat
modifikasi data. Beberapa teknik yang digunakan untuk
mengisi nilai yang kurang/ hilang pada data yang tidak
lengkap adalah sebagai berikut:
1. Mengabaikan data yang tidak lengkap. Teknik ini
sangat tidak efektif, dan hanya dapat digunakan pada
data dengan beberapa nilai atribut yang hilang.
2. Mengisi nilai atribut secara manual. Teknik ini dapat
memperbaiki data yang tidak lengkap dengan baik,
tetapi membutuhkan waktu yang lama untuk mengisi
nilai atribut yang hilang dan tidak tepat untuk basis
data yang besar.


145
3. Mengisi nilai atribut secara otomatis.
a. Menggunakan konstanta global. Nilai atribut
yang hilang diisi dengan konstanta global
seperti ‗unknown‘, atau ‗ ∞ ’ (tidak
berhingga) untuk atribut numerik. Penggunaan
konstanta global dapat mengakibatkan
interpretasi yang salah terhadap konstanta
tersebut; program komputer dapat menganggap
konstanta global adalah atribut yang memiliki
konsep dan makna tersendiri.
b. Menggunakan nilai rata-rata atribut semua data.
c. Menggunakan nilai rata-rata atribut data dalam
kelompok yang sama dengan data yang tidak
lengkap.
d. Menggunakan nilai yang ‗paling mungkin‘.
Nilai yang ‗paling mungkin‘ dapat diperkirakan
menggunakan metode regresi, algoritma Bayes,
atau decision tree.

Data Noisy
Data yang bersifat noisy adalah data yang
memiliki nilai atribut yang salah atau tidak tepat,
umumnya pada atribut yang merupakan hasil pengukuran
variabel. Noise pada data yang umum adalah outlier.
Outlier adalah data dengan sifat yang sangat berbeda
dengan data lain pada kelompok yang sama. Contoh
outlier adalah data harga jenis produk A (dalam ribuan
rupiah): 56, 62, 60, 75, 84, 250; 250 merupakan outlier
untuk data tersebut. Noise pada data disebabkan oleh
kesalahan pada instrumen atau alat pengumpul data,
kesalahan pencatatan data karena faktor manusia atau
kesalahan komputer, kesalahan saat transmisi data, dan
keterbatasan teknologi perangkat keras dan basis data.
Outliers dapat dideteksi dengan teknik statisticalbased,
distance-based, dan deviation-based. Sedangkan noise
dapat diperbaiki dengan teknik smoothing.
Beberapa teknik deteksi outliers dan
penghilangan noise dijelaskan sebagai berikut:
1. Statistical-based.
Deteksi outlier dengan pendekatan statistic
menggunakan model probabilitas distribusi data.
Outliers diidentifikasi menggunakan discordancy
test, berdasarkan distribusi data, parameter distribusi
(rata-rata dan varian), dan jumlah outliers yang ingin
dideteksi. Terdapat dua prosedur deteksi outlier,
yaitu block procedures dan consecutive procedures.
Block procedures menganggap semua data adalah
outlier, atau semua data bukan outlier. Pada
consecitive procedures pengujian pertama dilakukan
pada data yang paling tidak tampak sebagai outlier
(least likely). Jika hasil uji menyatakan bahwa data
tersebut adalah outlier, maka data yang lain juga
dinyatakan sebagai outlier.
2. Distance-based.
Outlier dideteksi berdasarkan jarak antara objek atau
data. Outlier adalah data yang tidak memiliki data
berdekatan (neighbors) yang cukup; neighbor
ditentukan berdasarkan jarak data dengan data
tertentu, yang dihitung menggunakan fungsi jarak
seperti Euclidean distance, Manhattan distance, dan
sebagainya. Algoritma distance-based outliers
detection yang umum digunakan adalah index-based
algorithm, dan cell-based algorithm. Index-based
algorithm menggunakan struktur indeks
multidimensi, seperti struktur pohon, untuk mencari
neighbors setiap data dalam radius d disekitar data
tersebut. Untuk M jumlah maksimum data dalam
dneighborhood, jika ditemukan neighbor dalam
radius M+1 maka data tersebut bukan outlier;
sebaliknya, data tersebut adalah outlier.
Cell-based algorithm membagi space data ke dalam
sel-sel dengan panjang, setiap sel dikelilingi oleh
dua lapisan. Cell-based menghitung jumlah objek
dalam sel (cell_count), jumlah objek dalam sel dan
lapisan 1:
(cell_+_1_layer_count),
dan jumlah objek dalam sel dan lapisan 1 dan 2:
(cell_+_2_layer_count).
Outlier dideteksi pada setiap sel (cellby-cell). Untuk
M, maksimum jumlah outlier, objek o pada sel
adalah outlier hanya jika cell_+_1_layer_count <=
M; jika tidak maka semua objek dalam sel bukan
outlier. Jika cell_+_2_layer_count <= M, maka
semua objek dalam sel adalah outlier.
3. Deviation-based.
Teknik ini mendeteksi outlier dengan menentukan
karakteristik utama objek atau data dalam sebuah
kelompok. Data yang tidak sesuai dengan karakter
kelompok dianggap sebagai outlier. Sequential
exception dan OLAP data cube termasuk pada teknik
deteksi deviationbased.
Sequential exception technique mensimulasi cara
manusia membedakan objek yang ‗tidak biasa‘ dari
antara objek-objek yang serupa. Untuk sekumpulan
n objek, S, dibuat himpunan-himpunan bagian yang
berurutan {S1, S2,..., Sm}. Ketidaksamaan atau
dissimilarity diukur pada setiap himpuanan bagian
secara berurut. Untuk setiap himpunan bagian,
ditentukan perbedaan dissimilarity himpunan bagian
tersebut dengan himpunan bagian sebelumnya.
Fungsi dissimilarity adalah sembarang fungsi, yang
jika diberikan sekumpulan objek sebagai input, akan
mengembalikan sebuah nilai; tinggi atau rendah.
Jika objek-objek dalam satu himpunan bagian
memiliki tingkat kesamaan yang tinggi, maka fungsi
mengembalikan nilai rendah; sebaliknya, fungsi
mengembalikan nilai tinggi. Outlier adalah objek-
objek yang nilai dissimilarity-nya tinggi. Deteksi
outlier dengan pendekatan OLAP menggunakan
hasil komputasi kubus data untuk mengidentifikasi
daerah yang mengandung anomali pada data
multidimensi. Proses pendeteksian outlier dilakukan
bersamaan dengan proses komputasi kubus data.
Kubus data adalah bentuk representasi data
146
multidimensi pada data warehouse, yang terdiri dari
fakta (objek atau data yang ingin di analisis) dan
dimensi (konteks yang menjelaskan fakta).
Komputasi kubus data dilakukan dengan
menggunakan fungsi agregasi, untuk meringkas data
berdasarkan level dimensi. Fungsi agregasi dihitung
pada setiap titik multidimensi, atau sel pada kubus
data, yang berupa pasangan nilai-dimensi.
Pendekatan deteksi outlier yang digunakan adalah
eksplorasi discovery-driven, yaitu sebuah
pendekatan dimana ukuran prakomputasi dapat
mengindikasikan ‗exception‘ atau outlier pada data,
disebut exception indicators. Exception/ outlier
adalah nilai sel kubus data yang berbeda secara
signifikan dengan nilai yang diharapkan.

4. Binning.
Metode binning melakukan smoothing pada data
yang terurut, dengan membagi data ke dalam
sejumlah kelompok dengan jumlah data yang sama,
disebut ‗bin‘, berdasarkan neighborhood atau nilai
yang berdekatan. Smoothing dapat dilakukan dengan
mengganti nilai atribut data dengan nilai rata-rata
(mean), nilai tengah (median), atau nilai batas
(boundaries) data dari setiap bin. Contoh teknik
binning: terdapat data harga yang terurut sebagai
berikut: 11,15, 16, 22, 25,28, 30, 36, 54. Data
tersebut dapat dibagi menjadi 3 bin, dan dilakukan
smoothing seperti pada Tabel 1 :

TABEL 1. Contoh Teknik Binning-Smoothing

Bin 1 Bin 2 Bin 3
Partisi bin 11,15,16 22,25,28 30,36,54
By bin
means
14,14,14

25,25,25

40,40,40

By bin
median
15,15,16 25,25,25

36,36,36

By bin
boundaries
11,11,16 22,22,28

30,30,54


5. Regresi.
Smoothing data dapat dilakukan dengan
mencocokkan data pada fungsi regresi. Fungsi
regresi digunakan untuk mencari sebuah persamaan
matematika yang cocok dengan data dan dapat
memperhalus noise. Fungsi regresi mencakup
regresi linier dan regresi linier ganda. Regresi linier
mencakup pencarian garis lurus yang memisahkan
dua variabel, sehingga satu variabel dapat digunakan
untuk memprediksi variabel lain. Regresi linier
ganda, merupakan pengembangan fungsi regresi
linier, yang memungkinkan variable dimodelkan
sebagai fungsi linier untuk vektor multidimensi.

Data Inconsistent
Pada data warehouse, inconsistency data dapat
terjadi saat proses integrasi beberapa basis data
operasional, dimana sebuah atribut dapat memiliki nama
atau format (skema) yang berbeda pada basis data yang
berbeda, perbedaan struktur tabel, dan sebagainya.
Inconsistency karena integrasi basis data operasional
dapat terjadi pada level data dan level skema.
Inconsistency pada level data dapat diperbaiki
secara manual atau menggunakan knowledge engineering
tools. Secara manual, data diperbaiki menggunakan
sumber-sumber eksternal, misalnya melakukan
penelurusan catatan transaksi. Knowledge engineering
tools digunakan untuk mendeteksi kesalahan pada data
yang constraint-nya diketahui, misalnya functional
dependencies antara atributatribut apat digunakan untuk
mencari nilainail yang constraint fungsinya saling
bertentangan. Inconsistency pada level skema diperbaiki
pada fase data transformation.
Data transformation mencakup proses
smoothing, agregasi, generalisasi, normalisasi, dan
konstruksi atribut.
Smoothing adalah proses untuk menghilangkan noise dari
data; merupakan bagian dari fase data cleaning. Agregasi
adalah proses meringkas data, menggunakan fungsi
agregasi. Contoh agregasi data: data penjualan harian
dapat diringkas untuk menghitung total penjualan
bulanan atau tahunan. Generalisasi data mengganti
representasi data pada level rendah atau level primitif
menjadi representasi level tinggi, menggunakan konsep
hirarki. Contoh generalisasi data: atribut ‗Jalan‘ dapat di-
generalisasi menjadi ‗Kota‘. Pada proses normalisasi,
data diskalakan kedalam range yang kecil, misalnya 0.0
– 1.0. Konstruksi atribut membuat dan menambahkan
atribut baru pada sekumpulan atribut yang telah ada
untuk mempermudah proses penambangan atau
discovery data.

II. KESIMPULAN
Untuk meningkatkan efisiensi proses knowledge
discovery pada data warehouse dan kualitas informasi
yang dihasilkan dari proses knowledge discovery
dibutuhkan data yang berkualitas tinggi. Pada
kenyataannya, data yang akan disimpan dalam data
warehouse cenderung bersifat dirty (incomplete, noisy,
inconsistent). Data mining menyediakan mekanisme
prapengolahan data untuk menghilangkan data dirty dan
meningkatkan kualitas data. Data cleaning merupakan
fase awal proses prapengolahan data, untuk mengisi nilai
data yang kosong atau hilang, mendeteksi dan
menghilangkan kesalahan pada data, noise,
outliers, dan memperbaiki data yang tidak konsisten,
untuk meningkatkan kualitas data.
a. Nilai data yang kosong dapat diisi secara manual
atau otomatis (menggunakan konstanta global, nilai
rata-rata atribut, atau memperkirakan nilai yang
‗paling mungkin‘).
b. Outliers dideteksi dengan teknik statistical-based,
distance-based, dan deviation based. Noise dapat
147
dihilangkan dengan teknik smoothing seperti binning
dan fungsi regresi.
c. Inconsistency dapat terjadi pada level data dan level
skema. Inconsistency pada level data dapat
diperbaiki dengan menelusuri catatan transaksi
secara manual atau menggunakan knowledge
engineering tools, seperti functional dependencies;
sedangkan pada level skema diperbaiki pada fase
data tranformation, mencakup proses agregasi,
generalisasi, normalisasi, dan konstruksi atribut.

Kualitas data tidak hanya mempengaruhi hasil
knowledge discovery, tapi juga mempengaruhi proses
knowledge discovery itu sendiri. Untuk menjamin
pengambilan keputusan yang tepat kualitas data dalam
warehouse harus baik, yaitu lengkap, akurat, dan
konsisten.

DAFTAR PUSTAKA
[1] Chaudhuri, S. & Dayal U. (1997), ―An Overview of Data
Warehousing and OLAP Technology‖, ACM SIGMOD Record
26.
[2] Han, J. & Kamber, M. (2006), ―Data Mining Concepts and
Techniques‖, Morgan Kauffman, California.
[3] Owrang, M. M. (2007), Discovering Quality Knowledge from
Relational Databases, dalam Information Quality Management:
Theory and Applications, Bab 3, Al-Hakim,L., Editor, Idea Group
Inc, 51-70.

[4] Rahm, E. & Do, H. (2000), ―Data Cleaning: Problems and
Current Approaches‖, IEEE Bulletin of the Technical Committee
on Data Engineering, Vol. 23, No. 4, December 2000.
[5] Sondakh, Debby (2007), ―Kajian Komputas Kubus Data Pada
Data Warehouse‖, Prosiding Seminar Nasional Ilmu Komputer
dan Aplikasinya 2007, Vol. 2, No.1, November 2007.
[6] Viktor, H. L. & Motha, W. M. (2002), ―Creating Informative Data
Warehouse: Exploring Data and Information Quality through
Data Mining‖, Informing Science.


148
Enkripsi untuk Keamanan Data Menggunakan
Algoritma RSA

Henra Verywati P
Program Studi S2 Teknik Informatika
Fakultas Matematika & Ilmu Pengetahuan Alam
Universitas Sumatera Utara
Henra_verywati@yahoo.com

Abstrak — Enkripsi dalah sebuah proses yang melakukan
perubahan sebuah kode dari yang dapat dimengerti
menjadi sebuah kode yang tidak dapat dimengerti (tidak
terbaca)oleh si penerima. Enkripsi dapat diartikan sebagai
kode atau chiper. Sebuah sistem pengkodean menggunakan
suatu tabel atau kamus yang telah didefinisikan untuk
mengganti kata dari informasi atau yang merupakan
bagian dari informasi yang dikirim. Sebuah chiper
menggunakan suatu algoritma yang dapat mengkodekan
semua aliran data (stream) bit dari sebuah pesan menjadi
cryptogram yang tidak dimengerti (unitelligible). Karena
teknik cipher merupakan suatu sistem yang telah siap
untuk di automasi, maka teknik ini digunakan dalam
sistem keamanan komputer dan network. Pada makalah ini
penulis akan membahas mengenai cara menjamin
Kerahasian data dengan Teknik Enkripsi Menggunakan
Algoritma RSA. Algoritma RSA (Rivest-Shamir-Adleman)
adalah sebuah algoritma sistem kriptografi dengan kunci
publik yang paling dikenal. Algoritma ini didasarkan pada
pemangkatan modulo dari perkalian dua bilangan prima
yang besar. Aplikasi dari algoritma RSA dapat digunakan
dalam pengamanan data. Makalah ini memberikan aplikasi
algoritma RSA pada sistem pengaman data yang mampu
menjamin kerahasiaan data.
Keywords — Enkripsi, Algoritma RSA, Kerahasian Data,
Kriftografi
I. PENDAHULUAN
Masalah keamanan dan kerahasiaan data
merupakan salah satu aspek penting dari sistem
informasi. Maka karena kerahasiaan dan keamanan data
hal yang sangat penting untuk selalu diperhatikan baik
untuk tujuan keamanan bersama, maupun untuk privasi
individu Dalam hal ini, sangat terkait dengan betapa
pentingnya informasi dan data tersebut dikirim dan
diterima oleh orang yang berkepentingan. Informasi akan
tidak berguna lagi apabila di tengah jalan informasi itu
disadap(dihecker) oleh orang yang tidak
bertanggungjawab atau berhak. Agar data tidak diketahui
oleh pihsk-pihak yang tidak berkepentingan maka setiap
pemilik data selalu berusaha menyiasati cara
mengamankan informasi yang akan dikomunikasikannya
atau disampaikan pada orang lain. Maka untuk
mengamankan data, salah satu cara dapat diterapkan
adalah dengan menggunakan algoritma kriptografi untuk
melakukan enkripsi. Dengan enkripsi data tidak dapat
terbaca karena teks asli atau plaintext telah diubah ke
teks yang tak terbaca atau disebut chipertext. Ada banyak
algoritma kriptografi yang dapat digunakan, berdasarkan
sifat kuncinya dibagi menjadi dua yaitu simetris yang
hanya memakai satu kunci rahasia dan asimetris (public
key algorithm) yang memakai sepasang kunci publik dan
kunci rahasia. Pada makalah ini algoritma kriptografi
yang akan digunakan adalah algoritma kriptografi
asimetris RSA yang ditemukan oleh Ron Rivest, Adi
Shamir, dan Leonard Adleman pada tahun 1978 dan
RSA merupakan singkatan inisial dari nama mereka
bertiga. RSA digunakan karena merupakan algoritma
kriptografi asimetris yang paling sering digunakan pada
saat ini dikarenakan kehandalannya. Panjang kunci
dalam bit dapat diatur, dengan semakin panjang bit maka
semakin sukar untuk dipecahkan karena sulitnya
memfaktorkan dua bilangan yang sangat besar tersebut,
tetapi juga semakin lama pada proses dekripsinya.

II. LANDASAN TEORI
2.1 Kriptografi
Kriptografi adalah suatu ilmu atau seni
mengamankan pesan, dan dilakukan oleh cryptographer.
Sedangkan cryptanalys adalah suatu ilmu dan seni
membuka (breaking) ciphertext dan orang yang
melakukannya disebut cryptanalys. Ditinjau dari
terminologinya, kata kriptografi berasal dari bahasa
Yunani yaitu kryptos, ‗menyembunyikan‘, dan graphein
‗menulis;, sehingga dapat didefinisikan sebagai ilmu
yang mengubah informasi dari keadaan/bentuk normak
(dapat dipahami) menjadi bentuk yang tidak dapat
dipahami. Algoritma Kriptografi selalu terdiri dari dua
bagian, yaitu enkripsi dan dekripsi. Enkripsi (encryption)
merupakan proses yangdilakukan untuk mengubah pesan
yang tidak disanikan (plaintext atau cleartext) ke dalam
bentuk yang tidak dapat dibaca (ciphertext) Sdangkan
dekripsi (decryption) adalah proses kebalikannya. Proses
enkripsi dan dekripsi diatur oleh satu atau beberapa kunci
kriptografi. Dalam suatu sistem dimana terdapat
algoritma kriptografi, ditambah seluruh kemungkinan
plaintext, ciphertext dan kunci-kuncinya disebut
kriptosistem(cryptosystem atau cryptographic system).
Secara sederhana proses kriptografi dapat digambarkan
sebagai berikut:

149


2.2 Teknik Enkripsi
Adapun macam teknik enkripsi yang biasa
digunakan dalam sistem sekuriti dari sistem komputer
dan network adalah sebagai beriikut:.
1) Enkripsi Konvensional.
Algoritma kriptografi konvensional atau disebut
juga algoritma kriptografi simetris. Manfaat dari
konvensional enkripsi algoritma adalah kemudahan
dalam penggunaan secara luas. Dengan kenyataan bahwa
algoritma ini tidak perlu dijaga kerahasiaannya dengan
maksud bahwa pembuat dapat dan mampu membuat
suatu implementasi dalam bentuk chip dengan harga
yang murah. Chips ini dapat tersedia secara luas dan
disediakan pula untuk beberapa jenis produk. Dengan
penggunaan dari enkripsi konvensional, prinsip
keamanan adalah menjadi menjaga keamanan dari kunci.
Model enkripsi yang digunakan secara luas adalah model
yang didasarkan pada data encrytion standard (DES),
yang diambil oleh Biro standart nasional US pada tahun
1977. Untuk DES data di enkripsi dalam 64 bit block
dengan menggunakan 56 bit kunci. Dengan
menggunakan kunci ini, 64 data input diubah dengan
suatu urutan dari metode menjadi 64 bit output. Proses
yang yang sama dengan kunci yang sama digunakan
untuk mengubah kembali enkripsi
Plaintext
Enkripsi
Ciphertext Plaintext
Dekripsi
KUNCI

Gambar 1. Prosedur kerja algoritma simetri

Informasi asal yang dapat di mengerti di
simbolkan oleh Plain teks, yang kemudian oleh algoritma
Enkripsi diterjemahkan menjadi informasi yang tidak
dapat untuk dimengerti yang disimbolkan dengan cipher
teks. Proses enkripsi terdiri dari dua yaitu algoritma dan
kunci. Kunci biasanya merupakan suatu string bit yang
pendek yang mengontrol algoritma. Algoritma enkripsi
akan menghasilkan hasil yang berbeda tergantung pada
kunci yang digunakan. Mengubah kunci dari enkripsi
akan mengubah output dari algortima enkripsi.
Sekali cipher teks telah dihasilkan, kemudian
ditransmisikan. Pada bagian penerima selanjutnya cipher
teks yang diterima diubah kembali ke plain teks dengan
algoritma dan dan kunci yang sama.
Keamanan dari enkripsi konvensional
bergantung pada beberapa faktor. Pertama algoritma
enkripsi harus cukup kuat sehingga menjadikan sangat
sulit untuk mendekripsi cipher teks dengan dasar cipher
teks tersebut. Lebih jauh dari itu keamanan dari
algoritma enkripsi konvensional bergantung pada
kerahasian dari kuncinya bukan algoritmanya. Yaitu
dengan asumsi bahwa adalah sangat tidak praktis untuk
mendekripsikan informasi dengan dasar cipher teks dan
pengetahuan tentang algoritma diskripsi / enkripsi. Atau
dengan kata lain, kita tidak perlu menjaga kerahasiaan
dari algoritma tetapi cukup dengan kerahasiaan kuncinya.
Manfaat dari konvensional enkripsi algoritma
adalah kemudahan dalam penggunaan secara luas.
Dengan kenyataan bahwa algoritma ini tidak perlu dijaga
kerahasiaannya dengan maksud bahwa pembuat dapat
dan mampu membuat suatu implementasi dalam bentuk
chip dengan harga yang murah. Chips ini dapat tersedia
secara luas dan disediakan pula untuk beberapa jenis
produk. Dengan penggunaan dari enkripsi konvensional,
prinsip keamanan adalah menjadi menjaga keamanan
dari kunci.
Model enkripsi yang digunakan secara luas
adalah model yang didasarkan pada data encrytion
standard (DES), yang diambil oleh Biro standart nasional
US pada tahun 1977. Untuk DES data di enkripsi dalam
64 bit block dengan menggunakan 56 bit kunci. Dengan
menggunakan kunci ini, 64 data input diubah dengan
suatu urutan dari metode menjadi 64 bit output. Proses
yang yang sama dengan kunci yang sama digunakan
untuk mengubah kembali enkripsi.
Keamanan pada enkripsi konvensional ini
bergantung pada beberapa faktor. Yang pertama
algoritma enkripsi harus cukup kuat sehingga
menjadikan sangat sulit untuk mendekripsi cipher teks
dengan dasar cipher teks tersebut. Dan juga keamanan
dari algoritma enkripsi konvensional bergantung pada
kerahasian dari kuncinya bukan algoritmanya
Hal yang harus diperhatikan dalam Enkripsi
Konvensional
1. Algoritma yang sama dengan kunci yang sama dapat
digunakan untuk proses dekripsi – enkripsi.
2. Pengirim dan penerima harus membagi algoritma
dan kunci yang sama.
3. Kunci harus dirahasiakan.
4. Adalah tidak mungkin atau sangat tidak praktis
untuk menerjemahkan informasi yang telah
dienkripsi.
5. Pengetahuan tentang algoritma dan sample dari kata
yang terenkripsi tidak mencukupi untu menentukan
kunci.

150
2) Enkripsi Public-Key.
Salah satu yang menjadi kesulitan utama dari
enkripsi konvensional adalah perlunya untuk
mendistribusikan kunci yang digunakan dalam keadaan
aman. Sebuah cara yang tepat telah diketemukan untuk
mengatasi kelemahan ini dengan suatu model enkripsi
yang secara mengejutkan tidak memerlukan sebuah
kunci untuk didistribusikan. Metode ini dikenal dengan
nama enkripsi public-key dan pertama kali diperkenalkan
pada tahun 1976.

Plaintext
Enkripsi
Ciphertext Plaintext
Dekripsi
Kunci Publik
Penerima
Kunci Privat
Penerima

Gambar 2 Prosedur kerja algoritma asimetris
Algoritma tersebut seperti yang digambarkan
pada gambar diatas. Untuk enkripsi konvensional, kunci
yang digunakan pada prosen enkripsi dan dekripsi adalah
sama. Tetapi ini bukanlah kondisi sesungguhnya yang
diperlukan. Namun adalah dimungkinkan untuk
membangun suatu algoritma yang menggunakan satu
kunci untuk enkripsi dan pasangannya, kunci yang
berbeda, untuk dekripsi. Lebih jauh lagi adalah mungkin
untuk menciptakan suatu algoritma yang mana
pengetahuan tentang algoritma enkripsi ditambah kunci
enkripsi tidak cukup untuk menentukan kunci dekrispi.
Sehingga teknik berikut ini akan dapat dilakukan :
1. Masing – masing dari sistem dalam network akan
menciptakan sepasang kunci yang digunakan untuk
enkripsi dan dekripsi dari informasi yang diterima.
2. Masing – masing dari sistem akan menerbitkan
kunci enkripsinya ( public key ) dengan memasang
dalam register umum atau file, sedang pasangannya
tetap dijaga sebagai kunci pribadi ( private key ).
3. Jika A ingin mengisim pesan kepada B, maka A
akan mengenkripsi pesannya dengan kunci publik
dari B.
4. Ketika B menerima pesan dari A maka B akan
menggunakan kunci privatenya untuk mendeskripsi
pesan dari A.
Seperti yang kita lihat, public-key memecahkan
masalah pendistribusian karena tidak diperlukan suatu
kunci untuk didistribusikan. Semua partisipan
mempunyai akses ke kunci publik ( public key ) dan
kunci pribadi dihasilkan secara lokal oleh setiap
partisipan sehingga tidak perlu untuk didistribusikan.
Selama sistem mengontrol masing – masing private key
dengan baik maka komunikasi menjadi komunikasi yang
aman. Setiap sistem mengubah private key pasangannya
public key akan menggantikan public key yang lama.
Yang menjadi kelemahan dari metode enkripsi publik
key adalah jika dibandingkan dengan metode enkripsi
konvensional algoritma enkripsi ini mempunyai
algoritma yang lebih komplek. Sehingga untuk
perbandingan ukuran dan harga dari hardware, metode
publik key akan menghasilkan performance yang lebih
rendah.
Hal yang harus diperhatikan dalam Enkripsi
Public Key.
1. Algoritma yang digunakan untuk enkripsi dan
dekripsi dengan sepasang kunci, satu untuk enkripsi
satu untuk dekripsi.
2. Pengirim dan penerima harus mempunyai sepasang
kunci yang cocok.
3. Salah satu dari kunci harus dirahasiakan.
4. Adalah tidak mungkin atau sangat tidak praktis
untuk menerjemahkan informasi yang telah
dienkripsi.
5. Pengetahuan tentang algoritma dan sample dari kata
yang terenkripsi tidak mencukupi untu menentukan
kunci.

2.3 Algoritma RSA
RSA adalah salah satu contoh kriptografi yang
menerapkan konsep public key. Pada algoritma RSA
terdapat 3 langkah utama yaitu key generation
(pembangkitan kunci), enkripsi, dan dekripsi.Kunci pada
RSA mencakup dua buah kunci, yaitu public key dan
private key. Public key digunakan untuk melakukan
enkripsi, dan dapat diketahui oleh orang lain. Sedangkan
private key tetap dirahasiakan dan digunakan untuk
melakukan dekripsi.
Secara garis besar, algoritma kunci publik RSA dapat
dijabarkan sebagai berikut

Key generation:
1. Hasilkan dua buah integer prima besar, p dan q.
Untuk memperoleh tingkat keamanan yang tinggi
pilih p dan q yang berukuran besar, misalnya
1024 bit.
2. Hitung m = (p-1)*(q-1).
3. Hitung n = p*q
4. Pilih e yg relatif prima terhadap m.
e relatif prima thd m artinya faktor pembagi
terbesar keduanya adalah 1, secara matematis
disebut gcd(e,m) = 1. Untuk mencarinya dapat
digunakan algoritma Euclid.
5. Cari d, sehingga e*d = 1 mod (m), atau
d = e
-1
* mod (m). Untuk mencarinya, dapat
digunakan algoritma extended Euclid.
6. Kunci publik : e, n
Kunci private : d, n


151
Public key encryption & decryption
B mengenkripsi message M untuk A
Yg harus dilakukan B :
1. Ambil kunci publik A yg otentik (n, e)
2. Representasikan message sbg integer M dalam
interval [0,n-1]
3. Hitung C = M ^ e (mod n)
4. Kirim C ke A
Untuk mendekripsi, A melakukan :
Gunakan kunci pribadi d untuk menghasilkan M =
C ^ d (mod n)

3) Pembentukan Kunci
Berikut ini adalah proses pembentukan kunci.
Proses ini dilakukan oleh pihak penerima, dalam hal ini
adalah B.
1. Pilih bilangan prima p dan q.
2. Hitung n = pq .
3. Hitung j (n) = ( p -1)(q -1) .
4. Pilih sebarang bilangan b, 1 < b <j (n) , dengan
gcd(b,j (n)) = 1.
5. Hitung invers dari b, yaitu a = b
-1
mod j (n) .
6. Kunci publik: (n, b) dan kunci rahasia: a.

Agar mempermudah dalam memahami sandi
RSA, khusus pada tulisan ini, plainteks yang digunakan
hanya berupa bilangan 0 s/d 25 yang berkorespondensi
dengan huruf a s/d z. Akan tetapi pada penggunaan yang
sebenarnya, digunakan korespondensi khusus seperti
kode ASCII, serta bilangan-bilangan yang sangat besar.
Perhatikan, dalam pemilihan p dan q harus memenuhi n
= pq lebih dari atau sama dengan nilai plainteks yang
mungkin. Dalam hal ini n = pq ≥25 .

TABEL I
TABEL KORESPONDENSI
a b c d e f g h i j k l m
0 1 2 3 4 5 6 7 8 9 10 11 12

n o p q r s t u v w x y Z
13 14 15 16 17 18 19 20 21 22 23 24 25

4) Proses Enkripsi
Berikut ini adalah proses enkripsi RSA. Dilakukan oleh
pihak pengirim, dalam hal ini adalah A. Seluruh
perhitungan pemangkatan bilangan modulo dilakukan
menggunakan metode fast exponentiation.
1. Ambil kunci publik (n,b).
2. Pilih plainteks m, dengan 0 ≤ m≤n -1 .
3. Hitung c = m
b
mod n .
4. Diperoleh cipherteks c, dan kirimkan kepada B.


5) Dekripsi
Berikut ini adalah proses dekripsi RSA. Dilakukan
olehpihak penerima cipherteks, yaitu B.
1. Ambil kunci publik (n,b) dan kunci rahasia a.
2. Hitung m = c
a
mod n .

III. PEMBAHASAN
Berikut akan dibahas Implementasi Algoritma
RSA untuk proses Enkripsi dan Deskripsi Misalnya si B
mengirim Pesan Kepada si A maka proses yang
dilakukan sebagai berikut yang dimulai dari
pembentukan kunci, enkripsi kemudian hasilnya di
Deskripsi kembali maka langkah-langkanya adalah
sebagai berikut:
1. Pilih dua bilangan prima secara acak :
P = 5 dan q = 11
2. n = p* q
3. n = 5 * 11 = 55
4. j (55) = (5 -1)(11-1) = 4.10 = 40 . Selanjutnya dapat
dipilih b = 13 , sebab gcd (13,40) = 1 .
Menggunakan algoritma Euclide diperluas diperoleh
bahwa a =13
-1
mod 40 = 37 . Jadi, kunci publiknya
adalah (n,b) = (55,13) dan kunci rahasianya adalah a
= 37.Selanjutnya B mengirimkan kunci publik
kepada A.
5. A menerima kunci publik (n,b) = (55,13) dari B.
Misalkan plainteksnya adalah ―kripto‖,
menggunakan Tabel 1 diperoleh: 1 m
1
= 10 , m
2
=
17 , m
3
= 8 , m
4
= 15 , m
5
= 19 , dan m
6
= 14 .
Selanjutnya, dihitung:
c
1
= m
1

b
mod n = 10
13
mod55 = 10
c
2
= m
2

b
mod n = 17
13
mod 55 = 7
c
3
= m
3

b

mod n = 8
13
mod 55 = 28
c
4
= m
4

b

mod n = 15
13
mod55 = 20
c
5
= m
5

b

mod n = 19
13
mod 55 = 39
c
6
= m
6

b
mod n = 14
13
mod 55 = 49

Jadi, cipherteksnya adalah 10-7-28-20-39-49.
Selanjutnya A mengirimkan cipherteks ini kepada B.

6. Setelah B memperoleh cipherteks dari A, yaitu10-7-
28-20-39-49, maka diambilkunci rahasia a = 37 ,
dan dilakukan perhitungan berikut
m
1
= c
1

a
mod n = 10
37
mod 55 = 10

m
2
= c
2

a
mod n = 7
37
mod 55 = 17
m
3
= c
3

a
mod n = 28
37
mod 55 = 8
m
4
= c
4

a

mod n = 20
37
mod 55 = 15
m
5
= c
5

a

mod n = 39
37
mod 55 = 19
m
6
= c
6

a
mod n = 49
37
mod 55 = 14
Diperoleh plainteks 10-17-8-15-1914, jika
dikorespondensikan sesuai Tabel 1, diperoleh
pesan asli yang dikirimkan oleh A, yaitu
―kripto‖.
Maka dari contoh diatas dapat kita lihat bahwa
data sebelum di enkripsi adalah sama dengan data
sesudah dilakukan kembali deskripsi. Dengan teknik
enkripsi menggunakan algoritma RSA akan membuat
152
data kita lebih aman dari orang yang ingin menyadap
data tersebut. Dalam contoh diatas penuis masih
menggunakan bilangan prina yang relative kecil hal ini
berguna untuk memudahkan dalam perhitungan. Untuk
meningkatkan keamanan data sebaiknya gunakan lah
bilangan prima dengan digit besar agar sulit untuk
difaktorkan.

IV. KESIMPULAN
Kerahasian data harus menjadi prioritas agar
data yang ingin kita kirimkan hanya dapat diterima dan
diketahui oleh orang yang berhak. Dengan menggunakan
Algoritma RSA dapat dibuat sistem yang mampu
menjamin kerahasiaan data. Dari segi teknis
penghitungan, sistem RSA mempunyai cara enkripsi
yang mudah, tetapi jika sudah dienkripsi, data yang
terenkripsi sulit untuk dibobol jika hanya mempunyai
kunci publiknya saja Dalam proses pembuatan kunci
publik dan kunci privat, terdapat beberapa faktor yang
menjadi pertimbangan, yaitu ukuran dari kunci,
penentuan nilai p dan q agar sulit untuk dibobol, dan
kemungkinan-kemungkinan kelemahan yang dapat
diketahui saat data selesai dienkripsi. Kamanan algoritma
RSA didasarkan pada sulitnya memfaktorkan bilangan
besar menjadi fakto-faktor primanya

DAFTAR PUSTAKA
[1] Setiawan,Deris (2005),Sistem Keamanan Komputer .Penerbit :
Pt Elex Media Komputindo Kelompok Gramedia, Jakarta
[2] Kurniawan, Yusuf, ―Kriptografi Keamanan Internet dan
Jaringan Komunikasi‖, Edisi Pertama, Penerbit Informatika
Bandung, 2004.
[3] Munir, Rinaldi, ―Kriptografi‖ , Edisi Pertama, Penerbit
Informatika Bandung, 2006.
[4] Setiawan,Deris (2005),Sistem Keamanan Komputer .Penerbit
: Pt Elex Media Komputindo Kelompok Gramedia,Jakarta
[5] Public-key cryptography - Wikipedia, the
freeencyclopedia.(2011).http://en.wikipedia.org/wiki/Publickey
_cryptography.
[6] http://www.adiyansyah.co.cc/artikel jaringan/keamanan-
jaringan-2.php.
[7] http://sistem-keamanankomputer.blogspot.com
[8] Andri Kristanto, Kemanan data pada jaringan computer,
Yogyakarta 2003
[9] Budi Rahardjo. Keamanan Sistem Informasi
Berbasis Internet, http://budi.insan.co.id
[10] http://www.i-programmer.info/babbages- bag/271-
public-key-encryption.html


153
Shortest Way Huffman Text Compression

Andysah Putera Utama Siahaan

Universitas Sumatra Utara
Jl. Dr. Mansur No. 9, Medan, Sumatra Utara, Indonesia
andysahputrautamasiahaan@yahoo.com


Abstract— Huffman is one of the compression algorithms.
Huffman algorithm is the most famous algorithm to
compress text. There are three phases in the Huffman
algorithm to compress texts. The first is the phase
formation of the Huffman tree, the second phase of the
three phases of encoding and decoding. The principle used
by the Huffman algorithm is the character that often
appears on-encoding with a series of short bits and
characters that rarely appeared in bit-encoding with a
longer series. Huffman compression technique can provide
savings of up to 30% memory usage. Huffman algorithm
has complexity O (n log n) for the set with n characters.

Keywords— Huffman, compression, algorithm, text, computer

I. INTRODUCTION
Text is a collection of characters or strings into a
single unit. Text contains many characters in it that
always cause problems in limited storage device and
speed of data transmission at particular time. Although
storage can be replace by another larger one, this in not a
good solution if we can still find another solution. And
this is making everyone try to think to find a way that
can be used to compress text.
Compression is the process of changing the original
data into code form in order to save storage and time
requirements for data transmission.
[2]
By using the
Huffman algorithm, text compression process is done by
using the principle of the encoding, each character is
encoded with a series of several bits to produce a more
optimal result. The purpose of writing this paper is to
investigate the effectiveness and the shortest way of the
Huffman algorithm in the compression of text and
explain the ways of compressing text using Huffman
algorithm in programming.

II. HUFFMAN THEORY
Huffman algorithm was created by an MIT student
named David Huffman in 1952. This is one of the oldest
methods and most famous in text compression.
[3]
The
Huffman code uses the principles similar to Morse code.
Each character is encoded only with a few bits series,
where characters that often appear with a coded series of
short bits and characters who rarely appears is encoded
with a longer series of bits. Based on the type of map, the
code is used to change the initial message (the contents
of the input data) into a set of codewords. Huffman
algorithm uses static methods. Static method is a method
that always uses the same codemap but we can still
change the sequence of character appearance. This
method requires two phases. The first phase to calculate
the probability of occurrence of each symbol and
determine the map code, and the second phase to convert
the message into a collection of code that will be
trasmitted. Meanwhile, based on symbols coding
technique, Huffman uses symbolwise method.
Symbolwise is a method that calculate the probability of
occurrence of each symbol at a time, where the symbol is
more often occur will be given shorter code than the
symbols that rarely appears.

A. Greedy Algorithm.
Greedy algorithms are algorithms which follow the
problem solving meta-heuristic of making the locally
optimum choice at each stage with the hope of finding
the global optimum. For instance, applying the greedy
strategy to the traveling salesman problem yields the
following algorithm: "At each stage visit the nearest
unvisited city to the current city".
[4]

Greedy algorithms rarely find the globally optimal
solution consistently, since they usually don't operate
exhaustively on all the data. Nevertheless they are useful
because they are quick to think up and often give good
approximations to the optimum. If a greedy algorithm
can be proven to yield the global optimum for a given
problem class, it typically becomes the method of choice.
Examples of such greedy algorithms are Kruskal's
algorithm and Prim's algorithm. The theory of matroids
provides a whole class of such algorithms.

B. The Relationship to Huffman Algorithm.
At first David Huffman encoded character by simply
using ordinary binary tree, but after that, David Huffman
found that using greedy algorithm can establish the
optimal prefix code. The use of greedy algorithm
Huffman algorithm is at the election of two trees with
lowest frequency in a Huffman tree. Greedy algorithm is
used to minimize the total cost is required. Cost is used
to merge two trees at the root of frequency equal to the
number two fruit trees that are combined, therefore the
total cost of the establishment of the Huffman tree is the
sum total of the whole merger. Therefore, the Huffman
algorithm is one example of compression algorithm that
uses greedy algorithm. For example there is a text of 120
characters, each character has a cost. Our goal is to
calculate the total cost incurred to establish the text.
154
III. IMPLEMENTION
A. Phase One.
Imagine that we have a sentence ―LIKA-LIKU LAKI-
LAKI TAK LAKU-LAKU‖. In this phase we have the
original text converts to a single character set.

function Character_Set(text : string) :
string;
var
temp : string;
result : string;

begin
temp := text;
result := '';

for i := 1 to length(temp) do
for j := i + 1 to length(temp) do
if temp[i] = temp[j] then temp[j] :=
'#';

j := 1;

for i := 1 to length(temp) do
if temp[i] <> '#' then
begin
result := concat(result, temp[i]);
inc(j);
end;


Character_Set := result;
end;

The first loop which is done by ―for‖ is to replace the
duplicate character into ‗#‘. The second loop removes the
original text that consists of ‗#‘.
Now we can see the illustration below.

Original Text : LIKA-LIKU LAKI-LAKI TAK LAKU-
LAKU
Replaced Text : LIKA-###U
##########T############
Character Set : LIKA-U T

procedure Character_Freq(text : string);
var
temp : string;
freq : byte;

begin
temp := Character_Set(text);
for i := 1 to length(temp) do
begin
freq := 0;
for j := 1 to length(text) do
if temp[i] = text[j] then inc(freq);
AddNode(Head, Tail, temp[i], freq);
end;
end;

The above procedure calculates the frequency of the
character occurence. First, we have to run the character
set function to obtain a series of a single character used,
then we have to compare from the first character until the
last character to the original text to obtain the frequency.
Since we use pointer to represent the value. The result
will be sent to the node after getting incremented.



Fig. 1 – Unsorted Character & Freq Table

The table must be sorted in ascending order and the
primary key is the frequency.

procedure Tree_Sorting;
var
tASCII : char;
tFreq : byte;

begin
for i := length(cs) - 1 downto 1 do
begin
Current := Head;
for j := 1 to i do
begin
if Current^.Freq > Current^.Next^.Freq
then
begin
tASCII := Current^.ASCII;
tFreq := Current^.Freq;
Current^.ASCII :=
Current^.Next^.ASCII;
Current^.Freq := Current^.Next^.Freq;
Current^.Next^.ASCII := tASCII;
Current^.Next^.Freq := tFreq;
end;
Current := Current^.Next;
end;
end;
end;

The procedure above is to sort the unsorted list by
using bubble sort algorithm. The first node will be
compared to the next node, and the larger value will be
swapped and moved to the right. And finally we have the
smallest value on the left.

155

Fig. 2 – Sorted Character & Freq Table

B. Phase Two.
After the table is fully sorted. Now it‘s time to face the
most difficult step, that is to make the Huffman tree. The
Greedy algorithm takes apart at this section. We have to
combine two nodes and make a new node and make it as
a parent of those earlier nodes. Let‘s see the illustration
below:

T - U I L A K
1 3 3 3 4 6 6 7

Draw the first two nodes, and release from the table.
Make a new node which will be their parent.


*

U * I L A K

4

3 3 4 4 6 6 7
T

-

1

3


The parent node will be inserted to the table in
ascending order using insertion algorithm. The first node
is now replaced by the third node before. And we have to
do the same way again until the table consists of one
node.


*

* I * L A K

6

4 4 6 6 6 7
U



3

3



*

* L A K *

8

6 6 6 7 8
*

I

4

4



*

A K * *

12

6 7 8 12
*

L

6

6



*

* * *

13

8 12 13
A

K

6

7



*

* *

20

13 20
*

*

8

12


*

*

33

33
*

*

13

20


T - U * I L A K

1 3 3 3 4 4 6 6 7

T - U * I * L A K

1 3 3 3 4 4 6 6 6 7

T - U * I * L A K *

1 3 3 3 4 4 6 6 6 7 8

T - U * I * L A K * *

1 3 3 3 4 4 6 6 6 7 8 12

T - U * I * L A K * * *

1 3 3 3 4 4 6 6 6 7 8 12 13

T - U * I * L A K * * * *

1 3 3 3 4 4 6 6 6 7 8 12 13 20

T - U * I * L A K * * * * *
1 3 3 3 4 4 6 6 6 7 8 12 13 20 33

Finally, the linked list consists of 15 nodes.

In this step, we have had two model of trees.
- Double Linked List.
- Binary Tree Linked List.


Fig. 3 – Double & Binary Tree Linked List

156


Fig. 4 – Huffman Tree

The aim using two model of linked list is to avoid the
searching procedures. We can use breadth-first or depth-
first search to form the bit code, but it takes time and
advanced programming technique. But here, we can use
a list to replace the backtracking procedure. We have
only to track who the parent is.

procedure Huffman_Tree;
var
tFreq : byte;
tASCII : char;
InsertN : NodeP;
NewNode : NodeP;

begin
tASCII := '*';
Current := Head;

while Current^.Next <> NIL do
begin
InsertN := Head;
tFreq := Current^.Freq +
Current^.Next^.Freq;
Current^.Bit := 0;
Current^.Next^.Bit := 1;

while InsertN <> NIL do
begin
if tFreq <= InsertN^.Freq then
begin
new(NewNode);
NewNode^.Freq := tFreq;
NewNode^.ASCII := tASCII;
NewNode^.Next := InsertN;
NewNode^.Prev := InsertN^.Prev;
InsertN^.Prev^.Next := NewNode;
InsertN^.Prev := NewNode;

NewNode^.Left := Current;
NewNode^.Right := Current^.Next;
Current^.Parent := NewNode;
Current^.Next^.Parent := NewNode;
break;
end
else if tFreq > Tail^.Freq then
begin
new(NewNode);
NewNode^.Freq := tFreq;
NewNode^.ASCII := tASCII;
Tail^.Next := NewNode;
NewNode^.Prev := Tail;
Tail:=NewNode;
Tail^.Next := NIL;

NewNode^.Left := Current;
NewNode^.Right := Current^.Next;
Current^.Parent := NewNode;
Current^.Next^.Parent := NewNode;
break;
end;
InsertN := InsertN^.Next;

end;

Current := Current^.Next;
Current := Current^.Next;
end;

end;

Huffman Tree procedure is used to form the huffman
tree by processing the earlier linear tree. We have to
mark the nodes ―who is on the left‖ and ―who is on the
right‖ by adding a sign 0 or 1 to the node field.

type
NodeP = ^Node;
Node = record
ASCII : char;
Bit : byte;
Code : string;
Dec : byte;
freq : byte;
Prev,
Next : NodeP;
Parent,
Left,
Right : NodeP;
end;

ASCII : where character is memorized.
Bit : node sign. (left or right)
Code : Huffman code.
Dec : decimal code.
Freq : occurence of the character.
Next, Prev,
Parent, Left, Right : represent the connected nodes.

The first two nodes must be combined. The first node
will be marked as ‗0‘ since it‘s on the left and the second
node will be marked as ‗1‘ since it‘s one the right. And
both nodes have the same parent and the parent has two
child, the nodes. After the parent node is created, it must
be inserted to the linked list by combining the value of
the node and the value of the linked list. The node must
be inserted on the left of the larger or same value. But if
the parent node is larger than every node, it has to be
inserted after the last node.

C. Phase Three.
In this step, the tree is already structured. It‘s time to
retrieve the node sign by doing a loop until the parent of
the last node is empty (NIL).

procedure Write_Huffman;
var
result : string;
157
bit : string[1];

begin
Current := Head;

repeat
result := '';
Cursor := Current;
Current^.Dec := 0;
Biner := 1;

if Cursor^.ASCII <> '*' then
begin
repeat
if (Cursor^.Bit = 0) or
(Cursor^.Bit = 1) then


begin
Current^.Dec := Current^.Dec +
(Cursor^.Bit *
Biner);
Biner := Biner * 2;
str(Cursor^.Bit, Bit);
insert(Bit, result, 1);
end;
Cursor := Cursor^.Parent;
until Cursor^.Parent = NIL;
end;

Current^.Code := result;
Current := Current^.Next;
until Current^.Next = NIL;
end;ss

We just retrive the the nodes which are not parents.
And the node sign from the node will be inserted into a
single string.

D. Phase Four.
Now each node has consisted of a code. It‘s time to
form a Huffman table.

Char Freq. Code Bit Len. Code Len.
T 1 1000 4 4
- 3 1001 4 12
U 3 1100 4 12
3 1101 4 12
I 4 101 3 12
L 6 111 3 18
A 6 00 2 12
K 7 01 2 14

96
Tab. 1 – Huffman Table.

Each characted has been represented by a few digit
binary code. It‘s time to combine all code by reading
from the first character of the original text and replace
them with the code.

Original Text : LIKA-LIKU LAKI-LAKI TAK LAKU-
LAKU
Original Code :

111 101 01 00 1001 111 101 01 1100 1101 111
00 01 101 1001 111 00 01 101 1101 1000 00 01
1101 111 00 01 1100 1001 111 00 01 1100

Bit Code :

11110101 00100111 11010111 00110111 10001101
10011110 00110111 01100000 01110111 10001110
01001111 00011100

Decimal Code :

254, 39, 215, 55, 141, 158,
55, 96, 119, 142, 79, 28



Fig. 5 – Running Program (Part. 1).


Fig. 6 – Running Program (Part. 2).


Fig. 7– Running Program (Part. 3)

The original text before compression takes 33
characters length. Sooner after being compressed, the
string only takes 12 characters. So we save 21 characters.


158
The illustration:

Original Text Length : 33
Coded Text Length : 12
Saving Rate : (33 – 12) / 33 *
100 %
63.63636 %

V. CONCLUSION
This article should serve as a basic primer on how to
implementate the compression algorithm. Huffman
algorithm is combined from greedy algorithm which
always find the easiest ways from the nearest node.
There are four phases in the Huffman algorithm to
compress a text, the first is the phase to manage and get
the frequency of the character. The second phase is the
formation of the Huffman tree, the third phase is to form
the code from the node sign. And the last phase is the
encoding process. But in this paper, we only the
encoding methode, the decoding is under a project.
.
VI. REFERENCES
[1] M. Andri Budiman, S.T., M. Comp. Sc., M.E., ―Computer
Algorithm‖, University of North Sumatra, lectured time: Friday,
14:00, January, 28
th
2011
[2] Howe, D., ―Free On-line Dictionary of Computing‖, http://
www.foldoc.org/, 1993, access: Saturday, January, 29
th
2011.
[3] Rinaldi Munir, 2005, Diktat Kuliah IF2251 Strategi Algoritmik,
ITB.
[4] Huffman Coding
http://www.en.wikipedia.org/wiki/Huffman_coding Access time:
Sunday, 18:00, January, 30
th
2011
[5] Practical Huffman Coding
http://www.compressconsult.com/huffman/ Access time: Sunday,
18:30, January, 30
th
2011


159
Sistem Pengaturan Lampu Lalu Lintas
dengan Menggunakan PLC

Desinta Purba
1
, Erlanie Sufarnap
2
, Armaini Rahman
3
1,2,3
Magister Teknik Informatika, Fakultas Matematika dan Ilmu Pengetahuan Alam,
Universitas Sumatera Utara
Jl. Universitas Medan

1
desinta.poerba@yahoo.com
2
airlanee@yahoo.com
3
armairahman@yahoo.co.id

Abstrak—Pada dasarnya sistem kontrol atau sistem
pengaturan adalah suatu alat atau kumpulan alat untuk
mengendalikan, memerintah dan mengatur keadaan dari
suatu sistem. Dalam sistem yang otomatis alat kontrol
sering dipakai untuk mengendalikan sistem sehingga akan
mencapai sasaran yang di inginkan. Dalam menentukan
sistem kontrol yang akan digunakan dibuat suatu keadaan
dengan suatu standard yang ditentukan. Alat kontrol akan
merespon aturan sistem yang sudah dibuat.
Melihat betapa pentingnya sisitem kontrol dalam dunia
industri pada umumnya maka muncul bermacam-macam
alat kontrol yang akan digunakan di dunia industri pada
umumnya. Salah satunya adalah zelio soft yang merupakan
dasar dari PLC (Programmable Logic Control). Dalam
penentuan model sistem kontrol yang akan dibuat adalah
dengan menggunakan lader diagram atau function blok
diagram.
Keywords— Sistem kontrol, PLC dan Zelio Soft

I. PENDAHULUAN
Sejalan dengan berkembangnya ilmu dan
teknologi saat ini maka perangkat-perangkat ataupun
elemen-elemen utama dan pendukung yang digunakan di
dunia industri semakin canggih juga. Salah satu yang
sedang berkembang saat sekarang ini adalah penggunaan
PLC di berbagai aplikasi industri. Sebagian besar
industri-industri di dunia ini menggunakan PLC dalam
pengontrolan sistem yang ada di dunia industri. Mulai
dari industri kecil sampai dengan industri besar akan
menggunakan PLC sebagai alat kontrol. PLC berbagai
macam type dan berbagai macam merk. Namun prinsip
kerja dari semua type hampir sama.
Sejalan dengan berkembangnya ilmu teknologi
maka penggunaan kendaraan pun tak mau ketinggalan
dari bermacam type kendaraan yang ada. Akibat dari
banyaknya kendaraan yang berlalu lalang di jalan raya
maka untuk menghindari kemacetan yang berlebihan
maka diperlukan pengaturan dari lampu-lampu lalu
lintas.
Dalam hal ini penulis akan mencoba membuat
sistem pengaturan lampu merah di persimpanagn jalan
dengan menggunakan PLC khususnya dengan zelio soft.
Zelio soft merupakan perangkat sistem kontrol untuk
tahap pemula dalam menjajaki PLC.
II. RUANG LINGKUP
Dalam penelitian kali ini permasalahan meliputi
hal-hal:
1. Membuat ladder diagram lampu merah pengaturan
waktu ON-OFF dengan permisalan, type komponen
dengan permisalan.
2. Membuat function Blok Diagram lampu merah
Pengaturan waktu ON-OFF dengan permisalan, type
komponen dengan permisalan.
3. Mensimulasikan hasil dari lader diagram dan FBD
yang dibuat.

III. SISTEM KONTROL
Sistem Kontrol adalah suatu sistem yang
bertujuan untuk mengendalikan suatu proses agar output
yang dihasilkan dapat dikontrol sehingga tidak terjadi
kesalahan. Dalam hal ini output yang dikendalikan
adalah kestabilannya, ketelitian, dan kedinamisannya.
Secara umum, sistem kendali dapat dibedakan menjadi
dua jenis yaitu :
1. Sistem kendali loop terbuka.
2. Sistem kendali loop tertutup.

3.1. Sistem Kendali Loop Terbuka
Sistem Kendali loop terbuka, keluaranya tidak
mempengaruhi input. Atau dengan kata lain sistem
kendali loop terbuka keluarannya (output) tidak dapat
digunakan sebagai perbandingan umpan balik dengan
inputnya. Akibatnya ketetapan dari sistem tergantung
dari kalibrasi. Pada umumnya, sistem kendali loop
terbuka tidak tahan terhadap gangguan luar. Dibawah ini
adalah gambar diagram blok sistem kendali loop terbuka.

Fungsi alih sistem kendali loop terbuka adalah : Vo(s) =
G(s) Vi(s)

3.2. Sistem Kendali Loop Tertutup
Sistem kendali loop tertutup seringkali disebut
sistem kendali umpan balik. Pada sistem kendali loop
160
tertutup, sinyal kesalahan yang bekerja, yaitu perbedaan
antara sinyal input dan sinyal umpan balik diinputkan
kekontroller sedemikian rupa untuk mengurangi
kesalahan dan membawa keluaran sistem kenilai yang
dikehendaki. Pada umumnya sistem kendali loop tertutup
tahan terhadap gangguan dari luar. Secara umum sistem
kendali loop tertutup ini dibagi menjadi dua jenis, yaitu :
1. Sistem kendali continue
2. Sistem kendali diskrit
Secara umum gambar Sistem Kendali Loop Tertutup
adalah sebagai berikut :

Fungsi alih sistem kendali loop tertutup adalah :
Vo(s) / Vi(s) = G(s) / (1 + G(s).H(s)) dimana G(s) :
Fungsi alih sistem; H(s) : Fungsi alih tranduser.
Secara garis besar, sistem kendali jika ditinjau
dari ketelitian dan kestabilan sistem dapat dibagi atas dua
bagian, yaitu :
1. Sistem kendali dengan menggunakan PID kontroller
2. Sistem kendali on-off
Pada sistem kendali on-off ada dua keadaan
yang akan dihasilkan output yaitu keadaan on atau
keadaan off. Mikroprosesor dapat digunakan sebagai
pengendali sistem kendali on-off. Secara umum sistem
kendali on-off berbasis mikroprosesor dapat
digambarkan seperti blok sebagai berikut.

randuser digunakan untuk mengkonversi
besaran tertentu menjadi tegangan yang umumnya
berupa sinyal analog. Agar sinyal analog yang dihasilkan
tranduser ini dapat terbaca oleh mikroprosesor, maka ia
harus diubah dahulu menjadi sinyal digital. Rangkaian
elektronika yang dapat mengkonversi sinyal analog
menjadi sinyal digital adalah ADC. Data yang telah
dikonversi oleh ADC akan diolah lebih lanjut oleh
mikroprosesor untuk meng"on"kan atau meng"off"kan
plant kita. Adapun fungsi driver pada sistem kendali
berbasis mikroprosesor adalah sebagai penguat untuk
meng"on"kan atau meng"off"kan sistem yang umumnya
mempunyai tegangan dan catu daya yang besar sehingga
dapat dikendalikan oleh mikroprosesor yang mempunyai
tegangan keluaran yang kecil (5V).

IV. PROGRAMABLE LOGIC CONTROL
Programmable Logic Controllers (PLC) adalah
komputer elektronik yang mudah digunakan (user
friendly) yang memiliki fungsi kendali untuk berbagai
tipe dan tingkat kesulitan yang beraneka ragam.
Definisi Programmable Logic Controller
menurut Capiel (1982) adalah :sistem elektronik yang
beroperasi secara digital dan didisain untuk pemakaian di
lingkungan industri, dimana sistem ini menggunakan
memori yang dapat diprogram untuk penyimpanan secara
internal instruksi-instruksi yang mengimplementasikan
fungsi-fungsi spesifik seperti logika, urutan, perwaktuan,
pencacahan dan operasi aritmatik untuk mengontrol
mesin atau proses melalui modul-modul I/O digital
maupun analog.
PLC ini dirancang untuk menggantikan suatu
rangkaian relay sequensial dalam suatu sistem kontrol.
Selain dapat diprogram, alat ini juga dapat dikendalikan,
dan dioperasikan oleh orang yang tidak memiliki
pengetahuan di bidang pengoperasian komputer secara
khusus. PLC ini memiliki bahasa pemrograman yang
mudah dipahami dan dapat dioperasikan bila program
yang telah dibuat dengan menggunakan software yang
sesuai dengan jenis PLC yang digunakan sudah
dimasukkan.Alat ini bekerja berdasarkan input-input
yang ada dan tergantung dari keadaan pada suatu waktu
tertentu yang kemudian akan meng-ON atau meng-OFF
kan output-output. 1 menunjukkan bahwa keadaan yang
diharapkan terpenuhi sedangkan 0 berarti keadaan yang
diharapkan tidak terpenuhi. PLC juga dapat diterapkan
untuk pengendalian sistem yang memiliki output banyak.
Fungsi dan kegunaan PLC sangat luas. Dalam
prakteknya PLC dapat dibagi secara umum dan secara
khusus.
Secara umum fungsi PLC adalah :
1. Sekuensial Control. PLC memproses input
sinyal biner menjadi output yang digunakan
untuk keperluan pemrosesan teknik secara
berurutan (sekuensial), disini PLC menjaga agar
semua step atau langkah dalam proses
sekuensial berlangsung dalam urutan yang tepat.
2. Monitoring Plant. PLC secara terus menerus
memonitor status suatu sistem (misalnya
temperatur, tekanan, tingkat ketinggian) dan
mengambil tindakan yang diperlukan
sehubungan dengan proses yang dikontrol
(misalnya nilai sudah melebihi batas) atau
menampilkan pesan tersebut pada operator.
Sedangkan fungsi PLC secara khusus adalah
dapat memberikan input ke CNC (Computerized
Numerical Control). Beberapa PLC dapat memberikan
input ke CNC untuk kepentingan pemrosesan lebih
lanjut. CNC bila dibandingkan dengan PLC mempunyai
ketelitian yang lebih tinggi dan lebih mahal harganya.
CNC biasanya dipakai untuk proses finishing,
membentuk benda kerja, moulding dan sebagainya.
Prinsip kerja sebuah PLC adalah menerima
161
sinyal masukan proses yang dikendalikan lalu melakukan
serangkaian instruksi logika terhadap sinyal masukan
tersebut sesuai dengan program yang tersimpan dalam
memori lalu menghasilkan sinyal keluaran untuk
mengendalikan aktuator atau peralatan lainnya.

Keuntungan dan Kerugian PLC
Dalam industri-industri yang ada sekarang ini,
kehadiran PLC sangat dibutuhkan terutama untuk
menggantikan sistem wiring atau pengkabelan yang
sebelumnya masih digunakan dalam mengendalikan
suatu sistem. Dengan menggunakan PLC akan diperoleh
banyak keuntungan diantaranya adalah sebagai berikut:
Fleksibel, pada masa lalu, tiap perangkat
elektronik yang berbeda dikendalikan dengan
pengendalinya masing-masing. Misal sepuluh mesin
membutuhkan sepuluh pengendali, tetapi kini hanya
dengan satu PLC kesepuluh mesin tersebut dapat
dijalankan dengan programnya masing-masing
Perubahan dan pengkoreksian kesalahan sistem
lebih mudah, bila salah satu sistem akan diubah atau
dikoreksi maka pengubahannya hanya dilakukan pada
program yang terdapat di komputer, dalam waktu yang
relatif singkat, setelah itu didownload ke PLC-nya.
Apabila tidak menggunakan PLC, misalnya relay maka
perubahannya dilakukan dengan cara mengubah
pengkabelannya. Cara ini tentunya memakan waktu yang
lama.
Jumlah kontak yang banyak, jumlah kontak
yang dimiliki oleh PLC pada masing-masing coil lebih
banyak daripada kontak yang dimiliki oleh sebuah relay.
Harganya lebih murah, PLC mampu
menyederhanakan banyak pengkabelan dibandingkan
dengan sebuah relay. Maka harga dari sebuah PLC lebih
murah dibandingkan dengan harga beberapa buah relay
yang mampu melakukan pengkabelan dengan jumlah
yang sama dengan sebuah PLC. PLC mencakup relay,
timers, counters, sequencers, dan berbagai fungsi
lainnya.
Pilot running, PLC yang terprogram dapat
dijalankan dan dievaluasi terlebih dahulu di kantor atau
laboratorium. Programnya dapat ditulis, diuji,
diobserbvasi dan dimodifikasi bila memang dibutuhkan
dan hal ini menghemat waktu bila dibandingkan dengan
sistem relay konvensional yang diuji dengan hasil terbaik
di pabrik.
Observasi visual, selama program dijalankan,
operasi pada PLC dapat dilihat pada layar CRT.
Kesalahan dari operasinya pun dapat diamati bila terjadi.
Kecepatan operasi, kecepatan operasi PLC
lebih cepat dibandingkan dengan relay. Kecepatan PLC
ditentukan dengan waktu scannya dalam satuan
millisecond.
Metode Pemrograman Ladder atau Boolean,
pemrograman PLC dapat dinyatakan dengan
pemrograman ladder bagi teknisi, atau aljabar Boolean
bagi programmer yang bekerja di sistem kontrol digital
atau Boolean.
Sifatnya tahan uji. solid state device lebih tahan
uji dibandingkan dengan relay dan timers mekanik atau
elektrik. PLC merupakan solid state device sehingga
bersifat lebih tahan uji.
Menyederhanakan komponen-komponen sistem
kontrol, dalam PLC juga terdapat counter, relay dan
komponen-komponen lainnya, sehingga tidak
membutuhkan komponen-komponen tersebut sebagai
tambahan. Penggunaan relay membutuhkan counter,
timer ataupun komponen-komponen lainnya sebagai
peralatan tambahan.
Keamanan, pengubahan pada PLC tidak dapat
dilakukan kecuali PLC tidak dikunci dan diprogram. Jadi
tidak ada orang yang tidak berkepentingan dapat
mengubah program PLC selama PLC tersebut dikunci.
Dapat melakukan pengubahan dengan pemrograman
ulang, karena PLC dapat diprogram ulang secara cepat,
proses produksi yang bercampur dapat diselesaikan.
Misal bagian B akan dijalankan tetapi bagian A masih
dalam proses, maka proses pada bagian B dapat
diprogram ulang dalam satuan detik. Penambahan
rangkaian lebih cepat, pengguna dapat menambah
rangkaian pengendali sewaktu-waktu dengan cepat, tanpa
memerlukan tenaga dan biaya yang besar seperti pada
pengendali konvensional.

V. ZELIO SOFT
Zelio soft adalah salah satu program aplikasi
sistem kontrol. Adapun langkah-langkah menggunakan
dari zelio soft adalah



162










VI. SISTEM PENGATURAN LAMPU
LALU LINTAS
Dalam penentuan lampu lalu lintas di
persimpangan jalan perlu diperhatikan waktu hidup
lampu merah, lampu kuning begitu juga dengan lampu
hijau. 1 Lampu hanya bisa posisi ON dan lampu yang
lainnya OFF. Yang menjadi standar dalam pemngaturan
lampu ini adalah lamanya lampu hidup dan mati.
Adapun function ladder diagram lampu lalu
lintas adalah sebagai berikut:


163
Ketentuan yang dibuat adalah: lampu hijau akan
hidup selama 60 detik dan lampu kuning selama 10 detik
dan lampu merah selama 60 menit. Pengaturan ini dapat
diatur sesuai dengan kebutuhan.
Hasil simulasi dari ladder diagram diatas adalah:
1. lampu Merah ON saat lampu kuning dan hijau
OFF


2. lampu Kuning ON saat lampu Merah dan Hijau
OFF


3. lampu Hijau ON saat lampu Merah dan Kuning
OFF

Adapun function blok diagram lampu lalu lintas
adalah sebagai berikut:



1. lampu Merah ON saat lampu kuning dan hijau
OFF


2. lampu Kuning ON saat lampu Merah dan Hijau
OFF


164
3. lampu Hijau ON saat lampu Merah dan Kuning
OFF




VII. KESIMPULAN
Sistem pengaturan lampu merah dipersimpangan jalan
yang dibuat ini dapat digunakan sebagai alat dalam
pengaturan lampu merah dipersimpangan jalan. Dan
waktu ON-OFF dari masing-masing lampu dapat diubah
sesuai dengan kebutuhan. .

DAFTAR PUSTAKA
[1] W. Bolton , Sistem Instrumentasi & Sistem Kontrol ,
Erlangga
[2] William Bolton, Programmable Logic Controller,
Erlangga
[3] http://juare97.wordpress.com/2007/10/20/plc-
programmable-logic-controller/
[4] http://beritairfan.blogspot.com/2010/10/plc-adalah.html
165
Implementasi Penggabungan Kompresi Huffman
dan Enkripsi Serpent pada File Suara

Irene Sri Morina
Pasca Sarjana Universitas Sumatera Utara
morina_ginting@yahoo.com


Abstrak —Banyaknya jenis komunikasi suara saat ini
masih belum diikuti dengan adanya suatu standar
keamanan. Tulisan ini memberikan salah satu solusi untuk
keamanan pengiriman pesan suara dengan
mengkombinasikan algoritma kompresi Huffman dan
enkripsi serpent. Algoritma kompresi Huffman digunakan
untuk memperkecil ukuran file tanpa harus kehilangan
informasi atau data sedangkan algoritma serpent
digunakan untuk proses enkrispi data sehingga dapat
menjaga keamanan data.
Key Words : File Suara, Algoritma Huffman, Enkripsi
Serpent.

I. PENDAHULUAN
File WAV adalah file audio standar yang
digunakan oleh windows. Suara dalam bentuk
gelombang disimpan dengan format data digital audio di
dalam file *.WAV [8]. File rekaman suara (*.WAV)
cenderung memiliki ukuran yang besar, sesuai dengan
lamanya waktu perekaman suara. Dalam hal
penyimpanan dan pengiriman data, file-file yang
berukuran besar memiliki kendala yakni membutuhkan
ruang yang besar untuk menyimpan dan membutuhkan
waktu yang cukup lama untuk pengiriman.
Untuk mengatasi hal ini dapat dilakukan
kompresi. Kompresi bertujuan untuk memperkecil
ukuran file tanpa harus kehilangan informasi atau data
yang dikandung oleh file tersebut. File yang dikompresi
dapat dikembalikan ke ukuran semula dengan melakukan
proses dekompresi.
Pengamanan data dapat dilakukan dengan
menggunakan teknik enkripsi. Enkripsi bisa dilakukan
bukan hanya terhadap file teks, gambar, tetapi juga dapat
dilakukan untuk file suara. Enkripsi bertujuan
menyembunyikan informasi yang terdapat di dalam
sebuah file. Untuk mengembalikan file ke bentuk semula
dilakukan proses dekripsi (decript).
Ada berbagai macam algoritma enkripsi dengan
karakteristik masing-masing yang dapat digunakan untuk
proses enkripsi suara. Karena belum ada standar tertentu
yang dapat digunakan, diperlukan usaha untuk
menerapkan algoritma lain untuk mengetahui sebaik apa
algoritma tersebut. Untuk proses enkripsi komunikasi
suara yang bersifat real time biasanya digunakan
algoritma cipher aliran untuk mempercepat prosesnya.
Algoritma serpent merupakan algoritma yang
menempati urutan kedua pada kompetisi Advanced
Encryption Standard (AES). Algoritma serpent
merupakan algoritma kuat yang sampai saat ini belum
ada laporan serangan dari kriptanalis yang berhasil
merusaknya. Algoritma ini juga tidak dipatenkan,
sehingga penggunanya pada alat pengenkripsian tidak
memerlukan biaya. Algoritma ini juga bekerja baik pada
hardware dan smart card [5].
Algorima serpent merupakan algoritma cipher
block, hal ini merupakan hambatan jika diterapkan pada
enkripsi komunikasi suara. Algoritma cipher block
beroperasi dalam bentuk blok bit, yang dalam hal ini
rangkaian bit dibagi menjadi blok-blok bit yang
panjangnya sudah ditentukan sebelumnya [4].

II. FILE SUARA
Salah satu tipe data multimedia adalah audio
yang berupa suara ataupun bunyi, data audio sendiri
telah mengalami perkembangan yang cukup pesat
seiring dengan semakin umumnya orang dengan
perangkat multimedia. Tentunya yang merupakan syarat
utama supaya komputer mampu menjalankan tipe data
tersebut adalah adanya speaker yang merupakan output
untuk suara yang dihasilkan dan untuk menghasilkan
maupun mengolah data suara yang lebih kompleks
seperti *.WAV, *.MIDI tersebut tentunya sudah
diperlukan perangkat yang lebih canggih lagi yaitu sound
card [1].
Tipe dari pelayanan audio memerlukan format
yang berbeda untuk informasi audio dan teknologi yang
berbeda untuk menghasilkan suara. Windows
menawarkan beberapa tipe dari pelayanan audio [8],
antara lain :
a. Pelayanan audio Waveform menyediakan playback
dan recording untuk perangkat keras digital audio.
Waveform digunakan untuk menghasilkan non-
musikal audio seperti efek suara dan suara narasi.
Audio ini mempunyai keperluan penyimpanan yang
sedang dan keperluan untuk tingkat transfer paling
kecil yaitu 11 K/detik.
b. Midi Audio, menyediakan pelayanan file MIDI dan
MIDI playback melalui synthesizer internal maupun
eksternal dan perekaman MIDI. MIDI digunakan
untuk aplikasi yang berhubungan dengan musik
seperti komposisi musik dan program MIDI
sequencer. Karena memerlukan tempat
penyimpanan lebih kecil dan tingkat transfer yang
lebih kecil daripada Waveform audio, maka sering
digunakan untuk keperluan background.
166
c. Compact Disc Audio (CDA) menyediakan
pelayanan untuk playback informasi Red Book
Audio dalam CD dengan drive CD-ROM pada
komputer multimedia. CD menawarkan kualitas
suara tertinggi, namun juga memerlukan daya
penyimpanan yang paling besar pula, sekitar 176
KB/detik.
d. Wave Audio merupakan kreasi perusahaan raksasa
perangkat lunak Microsoft yang berasal dari standar
RIFF (Resource Interchange File Format). Wave
audio ini telah menjadi standar format file audio
komputer dari suara sistem dan games sampai CD
Audio. File Wave diidentifikasikan dengan nama
yang berekstensi *.WAV.

III. ALGORITMA HUFFMAN
Algoritma kompresi Huffman dinamakan sesuai
dengan nama penemunya yaitu David Huffman, seorang
profesor di MIT (Massachusets Instuate of Technology)
[15].
Kompresi Huffman merupakan algoritma
kompresi lossless dan ideal untuk mengkompresi teks
atau file program. Ini yang menyebabkan mengapa
algoritma ini banyak dipakai dalam program kompresi.
Kompresi Huffman termasuk dalam algoritma
keluarga dengan variable codeword length. Ini berarti
simbol individual (karakter dalam sebuah file teks
sebagai contoh) digantikan oleh urutan bit yang
mempunyai suatu panjang yang nyata (distinct length).
Jadi simbol yang muncul cukup banyak dalam file akan
memberikan urutan yang pendek sementara simbol yang
jarang dipakai akan mempunyai urutan bit yang lebih
panjang.
Cara kerja metode Huffman adalah melakukan
pengkodean bit (kombinasi bit 0 dan 1) untuk mewakili
data sebenarnya.
Langkah-langkah kompresi dengan metode
Huffman adalah sebagai berikut [2] :
a. Baca seluruh data (misalnya, karakter) dan hitunglah
frekwensi atau bobot kemunculan dari setiap
karakter dalam sebuah file
b. Catatlah karakter yang ada dan masing-masing
bobotnya
c. Ambil dua karakter dengan frekwensi paling kecil.
d. Bentuk pohon Huffman dari kedua data yang di
ambil. Jumlah bobot kedua karakter ditetapkan
sebagai root sementara dan kedua karakter
ditetapkan sebagai daun.
e. Ubah struktur kode Huffman ke dalam bentuk pohon
biner.
f. Setelah seluruh karakter dimasukkan ke dalam
pohon Huffman, berikanlah bit untuk setiap simpul
cabang dari akar hingga daun dengan ketentuan
simpul cabang kiri diberi 0 dan simpul cabang kanan
diberi bit 1.
g. Pola bit yang akan digunakan sebagai acuan dari
setiap karakter disusun mulai bit dari akar hingga
daun (karakter yang bersangkutan).

IV. ENKRIPSI SERPENT
Serpent dirancang oleh Ross Anderson, Eli
Biham dan Lars Knudsen sebagai calon Advanced
Encryption Standard. Telah terpilih sebagai salah satu
dari lima finalis dalam kompetisi AES. Serpent lebih
cepat dari pada DES dan lebih aman dari Triple DES.
Hal ini memberikan pengguna dengan tingkat yang
sangat tinggi jaminan bahwa tidak ada serangan pintas
akan ditemukan. Untuk mencapai hal ini, perancang
algoritma membatasi diri mereka untuk mekanisme
kriptografi dipahami dengan baik, sehingga mereka bisa
mengandalkan pengalaman yang luas dan teknik yang
telah terbukti kriptanalisis blok cipher [4].
Algoritma ini menggunakan dua kali lebih
banyak babak yang diperlukan untuk memblokir semua
serangan pintas saat ini dikenal. Ini berarti bahwa serpent
harus aman terhadap sebagai serangan belum diketahui
yang mungkin mampu memecahkan 16 putaran standar
yang digunakan dalam berbagai jenis enkripsi saat ini.
Namun, fakta bahwa Serpent menggunakan begitu
banyak putaran berarti bahwa paling lambat dari lima
finalis AES. Tapi ini seharusnya tidak menjadi masalah
karena masih melebihi Triple DES. desainer Algoritma
ini mempertahankan bahwa serpent memiliki masa kerja
minimal satu abad [9].
Serpent merupakan algoritam cipher block yang
memiliki ukuran blok sebesar 128 bit dan mendukung
ukuran kunci sebesar 128, 192, atau 256 bit. Cipher ini
berbentuk Substitiution-Permutation Network (SP-
network) yang merupakan rangkaian operasi-operasi
matemetis yang sling berhubungan. SP-network memiliki
S-boxes yang mengubah blok bit masukan menjadi suatu
bit keluaran [9].
Serpent mendukung masukan kunci sepanjang
128 bit, 192 bit, dan 256 bit. Kenyataannya, dalam
mekanisme penjadwalan kunci dibutuhkan kunci
sepanjang 256 bit. Oleh karena itu, untuk masukan kunci
sepanjang 256 bit. Oleh karena itu, untuk masukan kunci
seapanjang 128 bit dan 192 bit memerlukan mekanisme
tambahan, yaitu padding. Padding menambahkan bit ‖1‖
pada bit terpenting (most significant bit) dan beberapa
bit ‖0‖ sampai ukuran kunci mencapai 256 bit [13].
Untuk proses enkripsi, Serpent membutuhkan
32 upakunci 128 bit yang dinotasikan dengan K0, ... ,
k32. Tahapan untuk mendapatkan ke-33 upakunci yaitu
[13]:
a. Membagi kunci masukan K menjadi delapan bagian,
masing-masing 32 bit yang dinotasikan dengan W
-
8
,... , W
-1

b. Membentuk 132 kunci antara (prekey) yang
dinotasikan dengan W
0
,..., W
131
melalui persamaan:
W
i
=(W
i-8
©W
i-5
©W
i-3
©W
i-1
© C © i) <<< 11
167
pengguna
Aplikasi pengabungan
kompresi huffman dan
enkripsi serpent pada
file suara
File wav, File enkripsi, key
File hasil enkripsi, file wav
End
Begin
Load File
Wave
Get File Wave
Header
RIFF And
WAVE ?
Add To List
Yes
No
c. Membentuk 132 kunci putaran (round key) k
0

sampai k
131
yang dibentuk dari kunci antara yang
dihasilkan dari proses sebelumnya dengan
menggunakan S-boxes, S-boxes digunakan untuk
mengubah kunciantara Wi menjadi Ki.
d. Membentuk upakunci 128 bit Ki (Untuk Ie{0, … ,
32}) dari 32 bit nilai Kj.
e. Menerapkan IP pada upakunci yang dihasilkan
untuk menempatkan bit-bitnya ke dalam urutan
yang sesuai.

Algoritma cipher block serpent adalah
algoritma dengan 32 putaran jaringan SP yang beroperasi
pada empat word 32 bit, yang berarti ukuran bloknya
adalah 128 bit. Untuk komputasi internal, semua nilai
direpresentasikan dalam little-endian, di mana word
pertama adalah least-significant word, dan word terakhir
adalah most-significant word.
Algoritma serpent mengenkripsikan plainteks P
128 bit menjadi cipherteks C 128 bit dalam 32 putaran
dengan control dari 33 sub-kunci 128 bit K0,…,K32.
Panjang kunci masukan user yang digunakan untuk
pembahasan ini adalah 128 bit. Kunci yang lebih pendek
dari 128 bit dipetakan menjadi kunci sepanjang 128 bit
dengan menambahkan satu ―1‖ bit pada akhir MSB, dan
diikuti dengan ―0‖ bit sampai mencapai 128 bit.
Algoritma serpent ini terdiri dari:
a. Initial Permutation (IP)
b. Terdiri dari 32 putaran, masing-masing terdiri dari
sebuah operasi pengacakan kunci, operasi
menggunakan S-Box, dan transformasi ini
digantikan dengan penambahan operasi pengacakan
kunci.
c. Final Permutation (FP)

IP atau Initial Permutation diterapkan pada
plainteks P menghasilkan B0, yang putaran-0
Masing-masing fungsi putaran Ri (i = 0,...,31)
hanya menggunakan sebuah S-Box ter-replikasi.
Misalnya, R0 menggunakan S0, 32 copy yang diterapkan
secara paralel, sehingga copy dari S0 menggunakan bit
0,1,2,dan 3 dari B0 K0 sebagai input dan
mengembalikan empat bit pertama dari vektor
intermediate sebagai output, copy selanjutnya menerima
masukan bit ke 4-7dari B0 K0 dan mengembalikan
empat bit selanjutnya dari vektor intemediate, dan
seterusnya.
Himpunan delapan S-Box digunakan sebanyak
empat kali. Oleh karena itu, setelah menggunakan S7
pada putaran-7, S0 digunakan kembali pada putaran-8,
kemudian S1 pada putaran-9, dan seterusnya. Putaran
terakhir R31 sedikit berbeda dengan lainnya, yaitu
dengan menggunakan S7 pada B31 K31, dan meng-
XOR-kan hasilnya dengan K32, bukan menggunakan
transformasi linear. Hasil B32 kemudian dipermutasikan
dengan FP, menghasilkan cipherteks.
Setiap putaran menggunakan 9 S-Box yang
berbeda yang memetakan empat input bit ke empat
output bit. Masing-masing S-Box digunakan tepat pada
empat putaran, dan masing-masing digunakan 32 kali
secara paralel. Final Permutation (FP) adalah invers dari
permutasi inisial.

V. PENGGABUNGAN KOMPRESI HUFFMAN dan
ENKRIPSI SERPENT
Kombinasi kompresi Huffman dan algoritma
serpent agar dapat digunakan dalam proses pengiriman
pesan suara.
Suara dimasukan melalui dua sumber, yaitu
microphone dan file audio. Untuk masukan dari
microphone dibutuhkan suatu mekanisme digitalisasi.
Kemudian dilakukan proses kompresi untuk
memperkecil ukuran untuk dimasukkan ke dalam proses
enkripsi dan pengiriman. Pengiriman dilakukan dengan
menggunakan paket-paket data. Proses yang ada dalam
penerima merupakan kebalikan proses dari pengirim.

A. Perancangan
Tujuan utama perancangan sistem adalah untuk
memenuhi kebutuhan kepada pemakai atau pengguna
sistem dan untuk memberikan rancangan yang lengkap
kepada pemrograman komputer dan ahli-ahli teknik
lainnya yang terlibat.
Perancangan proses dimulai dengan penyusunan
diagram konteks yaitu diagram arus data yang
menggambarkan hubungan pengguna (user) dengan
sistem secara garis besar.


Gambar 1. Diagram Konteks Sistem



















Gambar 2. Flow hart Baca File Suara
168
begin
Checked ?
Get file wave
chunk data
Get file wave
audio format
Audio format=1
(pcm)?
Compres chunk
data wave
Set audio format=88
calculate ChunkSize
and SubChunk2 Size
Write to output file
save file wave
information
Last file in list ?
end
yes
no
no
yes
yes
no
begin
Checked ?
Get file wave
chunk data
Get file wave
audio format
Audio
format=88?
Decompress
chunk data wave
Set audio format=1
calculate ChunkSize
and SubChunk2 Size
Write to output file
save file wave
information
Last file in list ?
end
yes
no
no
yes
yes
no
XOR
Plainteks
Kunci - 1
32 Copies Of S-Box Sk
k = r mod 8
round = 31
Linear Transformation
XOR
cipherteks
ya
tidak
XOR Kunci - 32
32 Copies Of S-Box Sk
k = r mod 8
round = 31
Linear Transformation
invers
ya
tidak
cipherteks
plainteks
XOR



























Gambar 3. Flow Chart Kompresi File






























Gambar 4. Flow Chart Dekompresi File
























Gambar 5. Flow Chart Proses Enkripsi
























Gambar 6. Flow Chart Proses Dekripsi

B. Implementasi
Hasil yang diperoleh dari perancangan system
adalah berupa form yang digunakan sebagai interface
yang akan digunakan oleh pengguna. Berikut merupakan
interface system.
169
Gambar 7. Interface Kompresi File Wav













Gambar 8. Interface Enkripsi dan Dekripsi

Untuk mengetahui hasil pengujian program
kompresi dan dekompresi file Wave ini dengan algoritma
kompresi Huffman yang telah diimplementasikan maka
dilakukan pengujian pada beberapa jenis file Wave. File
Wave yang diuji mempunyai ukuran besar yang
bervariasi dan pengujian dilakukan terhadap file Wave
yang disertakan pada sistem operasi Windows.

TABEL 1
Hasil Pengujian


VI. KESIMPULAN
Beberapa kesimpulan yang dapat diperoleh dari
tulisan ini adalah :
a. Tingkat kompresi dipengaruhi oleh banyaknya nada
yang sama dalam file Wave.
b. Kecepatan proses tidak bergantung pada data yang
diproses tetapi berbanding lurus dengan ukuran file
Wave, artinya semakin besar ukuran file Wave yang
diproses maka semakin lama waktu prosesnya.
c. Proses dekompresi lebih cepat dilakukan
dibandingkan dengan proses kompresi karena pada
proses dekompresi tidak dilakukan lagi proses
pembentukan pohon Huffman dari data melainkan
hanya langsung membaca dari tabel code pohon
Huffman yang disimpan pada file sewaktu proses
kompresi.
d. File Wave yang telah dikompresi tersebut hanya
dapat dimainkan dari program ini.
e. Hasil file yang sudah dienkripsi, tidak mengalami
perubahan ukuran file.
f. Kualitas suara setelah mengalami kompresi dan
enkripsi tetap memiliki kualitas yang cukup baik.
g. Perangkat lunak dapat mengenkripsikan file
berformat *.wav dan mendekripsikannya seperti
semula.
h. Sistem keamanan data menggunakan algoritma
serpent menjadi relative lebih aman karena
pengenkripsian dalam algoritma serpent
membutuhkan 32 putaran.

DAFTAR PUSTAKA
[1] Basalamah, Affah, Teknologi Multimedia, PT. Elex Media
Komputindo, Jakarta, 2001.
[2] Forouzan, BA. Data Communication And Networking,
Mc.GrawHill, 200
[3] Lipschutz, S., Data Structur, Schaum‘s Outline Series, 1996
[4] Munir, Rinaldi, Kriptografi, Penerbit Informatika, 2006.
[5] Neal R. Wagner, The Laws of Cryptography with Java Code,
The Laws, 2003.
[6] Ranjan, Bose, Information Theory Coding And Cryptography,
The McGraw-HILL companles, 2003.
[7] Shannon, C. E., A Mathematical Theory of Communication,
The Bell System Technical Journal, vol 27, Juli, October, 2002.
[8] Wave Files-The Sonic Spot, Available:
http://www.sonispot.com/guide/wavefiles.html, di akses
tanggal 15 Februari 2011 pukul 13.00.
[9] Serpent Home Page. Official Serpent
Homepage.URL:http://www.cl.cam.ac.uk/~Erja
14/serpent.html, di akses tanggal 04 Februari 2011 pukul
16.00.
[10] WAVE File Format, Available:
http://www/borg.com/~jglatt/tech/wave.htm, di akses tanggal
15 Februari 2011 pukul 14.00.
[11] Wikipedia, http://en.wikipedia.org/wiki/Audio-file-format.htm,
di akses tanggal 17 Februari 2011 pukul 20.00.
[12] Ross Anderson, Eli Biham, Lars Knudsen.‖Serpent: A
Proposal for the Advanced Encryption Standart.‖
Availeble;http://csrc.nist.gov/encryption/aes.htm, di akses
pada tanggal 04 Februari 2011 pukul 16.30.
[13] Huffman Coding,
http://www.en.wikipedia.org/wiki/Huffman_coding , di akses
pada tanggal 11 maret 2011 pukul 18.00.

170





171















172






173
Sistem Informasi Perpustakaan Berbasis SMS
Gateway di Perpustakaan D-III FMIPA Unsyiah
Rasudin Abubakar
#1
Jurusan Matematika FMIPA, Universitas Syiah Kuala
rasudin@gmail.com
rasudin@unsyiah.ac.id

Abstrak— Penelitian ini membahas tentang perancangan
dan implementasi aplikasi Short Message Service (SMS)
gateway untuk melaksanakan pelayanan pada
perpustakaan D-III Fakultas MIPA Universitas Syiah
Kuala (UNSYIAH). Dalam implementasi ini menggunakan
modem GSM sebagai terminal dan server yang telah
diinstal aplikasi SMS Gateway. Aplikasi lain yang harus
diinstal dalam server adalah MySQL sebagai server basis
data dan Apache sebagai web server. Pengguna dapat
menggunkan layanan ini dengan mengirim pesan singkat
(SMS) ke nomor telepon perpustakaan dimaksud. Pesan
yang dikirimkan harus sesuai dengan format yang telah
ditentukan, formatnya adalah sebagai berikut : CARI
BUKU <kata kunci> untuk pencarian buku, PESAN <no
anggota> <No inventaris> untuk pemesanan buku.
Disamping layan tersebut sistem ini juga dapat malukan
kontrol terhadap keterlambatan pengembalian buku.
Anggota pertakan yang telah melewati masa pengembalian
yang ditetapkan akan dikirimkan pesan pengiringatan
keterlambatan pengembalian buku.

Kata Kunci— SMS Gateway, Basis data, Sistem informasi
perpustakaan.
I. PENDAHULUAN
Teknologi informasi dan komunikasi berkembang
sangat pesat, hal ini ditandai dengan pemanfaatannya
dalam mendukung meningkatkan efisiensi dan efektifitas
transaksi dalam segala bidang terutama dalam dunia
bisnis dan pendidikan. Penggunaan teknologi dalam
penyampaian informasi sudah menjadi trend dan
kebutuhan dalam organisasi. Saat ini teknologi web
merupakan favorit terbaru dalam menyampaikan
berbagai pengumuman dari organisasi orgasis yang
terdepan. Kemudian, dengan semakin banyaknya
penggunaan telopon genggam dikalangan masyarakat,
web yang biasanya diakses melalui komputer
berkembang hingga dapat diakses melalui telpopon
genggang dengan teknologi GPRS dan WAP.
Perkembangan terbaru dari teknology penyampaian
informasi adalah dengan ditemukan teknology SMS
gateway. Teknologi ini menggabungkan fitur SMS pada
telpon genggam dengan database server dan web server.
Penggunaannya adalah dengan mengirim pesan singkat
dalam format tertentu ke server dan server akan
membalas informasi yang diminta dalam bentuk SMS
juga
SMS (Short Messaging Service) atau layanan pesan
singkat adalah suatu cerminan dari perkembangan
teknologi informasi. SMS adalah salah satu fitur untuk
mengirim pesan yang tersedia dalam perangkat telepon
genggam. Teknologi SMS ini sudah sangat familiar
digunakan masyarakat, bahkan SMS kini merupakan
peluang bisnis yang sangat bagus, karena informasi yang
disampaikan melalui SMS ini sangat cepat diterima oleh
masyarakat.
Penggunaan perangkat keras nirkabel berupa telepon
seluler setiap tahun meningkat relatif lebih cepat
dibandingkan dengan peningkatan penggunaan perangkat
keras Personal Computer (PC). Penggunaan telepon
seluler telah merambah pada berbagai bidang kehidupan.
Pada era kompetisi global saat ini, SMS merupakan
sebuah revolusi, di mana layanan teks lebih diminati
dibandingkan dengan layanan berbasis suara, karena
biaya yang relatif murah. Contoh layanan yang dapat
diakses melalui SMS antara lain informasi billing, cuaca,
pooling, reminder, alat kontrol aktivasi, kuis, transaksi
perbankan, dan lain-lain. Jumlah server layanan SMS
juga semakin banyak dengan jenis layanan yang semakin
beragam.
Dengan memanfaatkan teknologi web dan SMS,
maka dibuatlah sebuah aplikasi tentang sistem informasi
perpustakaan di perpustakaan D III FMIPA Unsyiah.
Dalam sistem informasi ini memungkinkan pengguna
untuk melakukan pencarian buku dan pemesanan
peminjaman buku. Para pengguna dapat menggunakan
aplikasi ini hanya menangani request SMS yang berupa
kode SMS yang telah ditentukan.
II. METODOLOGI DAN TEORI PENDUKUNG
A. Sistem Informasi
Sistem Informasi adalah proses yang menjalan fungsi
mengumpulkan, memproses, menyimpan, menganalisis
dan menyebarkan informasi untuk tujuan tertentu
(Turban, 2006). Sistem informasi dapat disajikan secara
manual maupun berbasi komputer. Sistem informasi
berbasis komputer dikenal dengan istilah Computer Base
Information System (CBIS).
Dewasa ini banyak organisasi yang ingin membangun
sistem Informasi Manajemennya sendiri, dan telah
menyediakan dana yang cukup, tetapi ternyata usaha
tersebut sering kali gagal. Penyebabnya antara lain
karena struktur organisasi keseluruhan yang kurang
174
wajar, rencana organisasi keseluruhan yang belum
memadai, personil sistem yang tidak memadai, dan yang
terpenting adalah kurangnya partisipasi manajemen
dalam bentuk keikutsertaan para manajer dalam
merancang sistem, mengendalikan upaya pengembangan
sistem dan memotivasi seluruh personil yang terlibat
(Mutia Ismail, 2004).
Sebuah sistem informasi yang baik memiliki unsur
atau kegiatan utama, yaitu :
1) Menerima data sebagai masukan ( input)
2) Memproses data dengan melakukan perhitungan,
penggabungan unsur data, pemutakhiran perkiraan
dan lain-lain.
3) Memperoleh informasi sebagai keluaran (output).
Unsur ini berlaku untuk semua model sistem informasi
baik berbasis komputer maupun manual. Secara garis
besar gambaran unsur-unsurnya di tunjukan pada gambar
2.1 berikut :




Gambar 1 Proses Pengolahan Data
Secara sederhana, sebuah sistem informasi dapat
dikatan sebagai alat untuk memproses data, dan
kemudian mengubahnya menjadi informasi (Mutia
Ismail, 2004).
B. Sistem Informasi Perpustakaan
Perpustakaan merupakan sebuah ruang dimana di
dalamnya terdapat banyak buku yang disusun
berdasarkan sistem tertentu untuk digunakan sebagai
media dalam mencari ilmu dan wawasan bagi semua
orang. Dengan semakin berkembangnya teknologi sistem
pengelolaan buku-buku dan anggota perpustkaan juga
semakin berkembang.
Sistem Perpustakaan dalam suatu lembaga pendidikan
dapat diartikan sebagai pengolahan database kepustakaan
yang disusun langkah demi langkah agar data-data
kepustakaan tersebut dapat disimpan dengan rapi,
diinterkoneksi dan disajikan dengan cepat dan akurat.
Sehingga, dapat mempermudah pembuatan laporan-
laporan kepustakaannya.

C. Database
Basis data (Database) adalah sekumpulan data yang
terintegrasi yang diorganisasi untuk memenuhi
kebutuhan pemakai untukkeperluan organisasi. Struktur
Database terdiri dari :
1) Data adalah satu satuan informasi yang akan
diolah,
2) RECORD adalah data yang isinya merupakan satu
kesatuan.
3) FIELD adalah sub bagian dari Record.

D. Aplikasi Short Messaging Service (SMS)
Short Message Service (SMS) merupakan sebuah
layanan yang banyak diaplikasikan pada sistem
komunikasi nirkabel. Tekhnologi SMS memungkinkan
pengiriman pesan dalam bentuk alphanumeric antara
telepon genggam pengirim dan penerima. SMS pertama
sekali berkembang di benua Eropa sekitar tahun 1991
bersama sebuah teknologi wireles yang saat ini banyak
penggunanya yaitu Global System for Mobile
Communication (GSM). Message pertama yang
dikirimkan menggunakan SMS dilakukan pada bulan
Desember 1992, dikirimkan dari sebuah Personal
Computer (PC) ke telepon genggam dalam jaringan
GSM milik Vodafone Inggris. Perkembangannya
kemudian merambah ke benua Amerika, dipelopori oleh
beberapa operator komunikasi bergerak berbasis digital
seperi BellSouth Mobility, PrimeCo, Nextel dan
beberapa operator lain. Teknologi digital yang digunakan
bervariasi dari yang berbasis GSM, Time Division
Multiple Access (TDMA), hingga Code Division
Multiple Access (CDMA).
Pengiriman SMS dari satu telepon genggam ke
telepon gemnggam lainnya harus melalui SMS Center.
Pada saat SMS dikirimkan SMS centar akan
menampungnya kemudian baru diteruskan kepada
telepon genggam yang dituju atau ke nomor telopon yang
diinginkan. Sistem ini lebih dikenal dengan sebutan
Store and Forward. Gambar 2.2 berikut menunjukan alur
dari SMS center :










Gambar 2 Alur SMS Center
SMS gateway adalah jembatan penghubung untuk lalu
lintas data-data SMS, baik yang dikirimkan maupun yang
diterima. Secara umum SMS gateway adalah sebuah
sistem yang dipergunakan untuk memudahkan
mengirimkan pesan SMS yang sama dalam waktu yang
bersamaan kepada beberapa penerima. Sistem kerja SMS
gateway untuk proses permintaan informasi oleh user ke
terminal SMS Gateway yaitu dengan cara mengirimkan
pesan sesuai format yang sudah ditentukan dan dikirim
ke nomor SIM Card terminal. Gambar 2.3. menunjukkan
permintaan informasi oleh user ke terminal.







SMSC
Pengirim Penerima
Pemrosesan
Data
Input
Outp
ut

Informasi

175












Gambar 3 Sistem Kerja Pengiriman Pesan (Client to SMS Gateway)
Untuk proses pengiriman pesan balasan dari SMS
gateway kepada user yang meminta informasi dilakukan
oleh sebuah aplikasi yang dibuat dengan bahasa
pemrograman Java. Aplikasi akan mengenali setiap
pesan yang masuk dan memeriksa formatnya. Jika format
pesan salah maka SMS Gateway akan mengirim pesan
balasan bahwa format pesan yang diketik salah, namun
jika format benar program akan melakukan permintaan
data ke database sesuai dengan kode yang diminta
(nomor ujian) jika nomor ujian tersebut tidak terdaftar
dalam database maka SMS gateway akan mengirim
pesan bahwa nomor ujian yang dimaksud tidak ada dan
jika nomor ujian terdaftar maka SMS gateway akan
mengirim pesan informasi kelulusan mahasiswa yang
dimaksud oleh user (pengirim pesan). Pesan balasan
yang dikirim oleh SMS gateway juga melewati SMS
center dan kemudian dikirimkan kepada user. Gambar
2.4 menunjukan proses balasan dari gateway.

















Gambar 4 Sistem Kerja Balasan (SMS Gateway to Client)

E. Tahapan Perancangan Sistem
Pembuatan sistem informasi perpustakaan meliputi
dua tahap yaitu tahap persiapan dan pelaksanaan, tahap
persiapannya adalah sebagai berikut :
1. Analisa kebutuhan sistem
2. Instalasi MySQL sebagai database server
3. Instalasi Tomcat sebagai web server
4. Instalasi modem GSM
Sedangkan tahapan pelaksanaannya adalah sebagai
berikut :
1. Create database
2. Pengkodean
3. Pengujian

III. HASIL DAN PEMBAHASAN
A. Perancangan ER Diangam
Untuk memperoleh suatu ERD, perlu dilakukan suatu
analisis terhadap data elemen dasar yang telah diperoleh
survey serta analisa kebutuhan dilapangan. Data-data ini
meliputi Elemen-elemen dasar untuk entitas, atribut yang
bertindak sebagai primary key dan relasi M:N dapat
dengan mudah dibangkitkan dengan mengambil data dan
informasi yang tersimpan dalam masing-masing Vector
penyimpanankelompok elemen tersebut. Penentuan
batasan
partisipasi diperoleh dari informasi mengenai sifat dari
suatu kolom pada suatu tabel. Sifat yang dimaksud disini
ialah sifat dimana suatu kolom harus mengandung suatu
nilai atau tidak, yang ditentukan dengan memberikan
keterangan ―null‖ atau ―not null‖ pada kolom yang
bersangkutan. Jika kolom yang menjadi foreign key
adalah ―not null‖ maka batasan partisipasinya adalah
parsial-total. Namun jika ―null‖ maka batasan
partisipasinya adalah semua parsial.
Sistem informasi perpustakaan yang dirancang
memiliki dua entiti dasar yaitu ANGGOTA dan BUKU.
Untuk kedua entiri tersebut mempunya tiga buah relasai
yaitu PEMINJAMAN, PENGEMBALIAN dan
BOOKING. Kardinalitas dari setiap hubungannya adalag
many to mani (M:N) atau banyak ke banyak. Gambar 3.1
berikut menunjukan ED diagram sistem Informasi
Perpustakan D III FMIPA Unsyiah.

Gambar 5 ER diagram sistem informasi perpustakaan
Setiap entitas atau relasi dari ER diagram meliliki
beberapa atribut, dan atributnya merupakan bahagian
atau ciri yang melekat pada entitas. Berikut ini merupakn
atribut dari masing-masing entitas dan relasi :
Atribut entitas ANGGOTA
No anggota, NIM, nama, tahun masuk, prodi,
alamat tetap,alamat sekarang, no telpon
PC Server SMS
Gateway
Use
r
Terima
SMS
SMSC
Terminal (modem
sebagai pengirim
SMS)
Data
Data diambil
sesuai
permintaan

PC Server SMS
Gateway
Use
r
Kirim
SMS
SMSC
Terminal (modem
sebagai penerima
SMS)
Data
Akses data
jika format
SMS benar
176
Atribut entitas BUKU
No_inventaris, Kode buku, judul buku, pengarang,
penerbit, tahun terbit, bahasa, jenis buku

Atribut relasi PEMINJAMAN
Tanggal pinjam, Tanggal kembali

Atribut relasi PENGEMBALIAN
Tanggal kembali, tangal di kembali

Atribut relasi BOOKING
Tanggal booking

Dari gambar 5 diperoleh hasil mapping tabelnya sebagai
berikut:

Tabel Anggota (No anggota, NIM, nama, tahun
masuk, prodi, alamat tetap,alamat sekarang, no
telpon)

Tabel Buku (No_inventaris, Kode buku, judul
buku, pengarang, penerbit, tahun terbit, bahasa,
jenis buku)

Tabel Pinjam(No anggota, No_inventaris,
Tanggal pinjam, Tanggal kembali)

Tabel Kembali (No anggota, No_inventaris,
Tanggal kembali, tangal di kembali)

Tabel Booking (No anggota, No_inventaris,
Tanggal booking).

Hasil hasil mapping tersebut diperoleh lima buah tabel
yang akan di implementasi dalam sistem informasi
perpustakaan D III FMIPA unsyiah. Tabel tersebut akan
di create dengan menggunakan software MySQL.
B. Implementasi pada Handphone User
Implementasi SMS Gateway sebagai media pelayanan
lperpustakaan D III FMIPA Unsyiah. Salah satu proses
yang sangat penting dalam aplikasi SMS server adalah
mendeteksi dan membaca secara otomatis SMS baru
yang masuk ke SMS server, serta membalas sesuai
dengan format yang telah ditentukan. Pada aplikasi ini,
terdapat dua jenis permintaan yaitu pencarian buku dan
pemesanan buku serta satu pesan alert atas keterlambatan
pengembalian buku yang dipinjam oleh anggota.
1) Pencarian Buku
Client harus mengirimkan SMS permintaan ke SMS
Gateway dengan format yang telah ditentukan untuk
mendapatkan informasi buku perpustakaan. Format SMS
untuk pencarian buku adalah CARI BUKU <kata
kunci>. Kata kunci pengalan kata dari judul sebuah
buku. Untuk mencoba fasilitas ini, maka kirim SMS ke
nomor SMS Server dengan isi pesan CARI BUKU
KOMPUTER. Gambar 6 berikut:

Gambar 6 Pengiriman SMS Permintaan
Setelah SMS tersebut diterima, dibaca, dan diproses oleh
SMS server, selanjutnya hasil dari pencarian dengan kata
kunci komputer akan dikirimkan kembali ke nomor
telepon yang meminta data tersebut. Gambar 3.3
merupakan balasan dari server SMS Gateway.


Gambar 7 balasan SMS Permintaan
Pengiriman hasil pencarian buku hanya dibatasi saju
judul buku saja, hal ini dikarenakan keterbatasan dari
layar telepon seluler. User bisa melihat data buku
selanjutnya dengan mengetik huruf 1, maka SMS server
akan mengirimkan data hasil pencarian buku selanjutnya.
2) Pemesanan Buku
Format SMS untuk memesan buku adalah PESAN
<no anggota> <No inventaris>. Untuk menggunkan
fasilitas ini, maka kirim SMS ke nomor SMS
Serverdengan isi pesan PESAN 503 0000004509-001.
Data pemesanan buku akan di simpan di dalam tabel
Booking dan apabila dalam jangka waktu dua hari tidak
dilakukan transaksi peminjaman maka booking buku
tersebut akan dibatalkan oleh sistem. Gambar 8
menunjukan contoh pesan yang dikirimkan untuk
pemesanan buku.


Gambar 8 Contoh SMS pemesanan buku
177
Setelah SMS tersebut diterima oleh server, proses
berikutnya adah sistem akan membaca dan melakukan
pemrosesan terhadap SMS tersebut. Selanjutnya sistem
akan menggirim
SMS balasan ke nomor yang mengirim pesan dengan isi
buku berhasil dipesan, silahkan ambil buku di
perpustakaan jika stok buku masih ada, tapi jika stok
buku sudah habis maka akan dibalas dengan isi pesan
stok buku sudah habis. Gambar 9 menunjukan contoh
balasan pemesan buku.


Gambar 9 Contoh SMS balasan pemesanan buku
C. Pesan alert karena keterlambatan pengembalian
buku
Jika ada anggota yang terlambat mengembalikan
buku, maka SMS server akan mengirimkan sms yang
memberitahukan agar segera mengembalikan buku yang
sudah dipinjam. Gambar 3.6 berikut merupakan contoh
SMS yang dikirimkan oleh sistem kepada anggota yang
terlambat lebih dari tiga dari batas waktu pengembalian
buku.


Gambar 10 Contoh SMS keterlambatan pengembalian buku

IV. KESIMPULAN
Berdasarkan analisa data dan perancangan
Aplikasi SMS Gateway untuk perpustakaan D-III
Fakultas MIPA Unsyiah dapat disimpulkan bahwa:
1) Aplikasi SMS Gateway ini, meliputi proses
pemesanan buku yang dipinjam, pencarian buku
dan penyampaian pesan keterlambatan
pengembalian buku kepada anggota perpustakaan.
2) Sistem ini memerlukan modem GSM sebagai
pengganti Handphone agar bisa dijalankan 24 jam
pada bagian server SMS Gateway.
3) SMS yang dikirimkan untuk melakukan transaksi
harus sesuai dengan format yang telah ditentukan.

DAFTAR PUSTAKA
[8] Imron Rozidi, Romzi. 2004. Membuat Sendiri SMS Gateway (ESME)
Berbasis Protokol SMPP. Penerbit ANDI. Yogyakarta.
[9] Ismail, Mutia. 2004. Konsep Sitem Informasi. Library.usu.ac.id.
[10] Purnomo, Adi. 2007. AT-Command. javaku.wordpress.com.
[Mei 2009].
[11] Tim Prasimax. 2009. AT-Command Untuk SMS.
http://www.mikron123.com/ index. php /Aplikasi-SMS/AT-
Command-Untuk-SMS.html. [13 Juli 2009].
[12] Tim Prasimax. 2009. Memahami PDU SMS.
http://www.mikron123.com/ index. php /Aplikasi-SMS/AT-
Command-Untuk-SMS.html. [13 Juli 2009].
[13] Turban, E. R. Kelly Rainer JR. Potter, R.E. 2006. Pengantar
Teknologi Informasi, Salemba Jakarta
[14] Tri Wicaksono, Mohamad. 2007. Pemrograman SMS Interaktif
Berbasis Java. Penerbit Elex Media Komputindo. Jakarta.
[15] Wahana Komputer. 2005. Pengembangan Aplikasi Sistem
Informasi Akademik Berbasis SMS dengan Java. Penerbit
Salemba Infotek. Jakarta.













178
Enhancing Programming Skill Based on
Competitive Syllabus of Online Judges
Franheit Sangapta Manullang
#1
, Felix Halim
*2

1
Department Of Information Technology, University Of Sumatera Utara, Indonesia
1
franheit.sangapta@gmail.com
2
School Of Computing, NUS University, Singapore
2
felix.halim@gmail.com

Abstract— Programming skill denotes a main core in all
computer science disciplines. Skill needed is not limited to
write code and to run with no error. Moreover, every coder
should think about the memory and time complexity used
to solve the problems with constraints given. In other side,
there is a classic problem caused lack of problem solving
skill and experience to code. Therefore, needed a
competitive programming environment to be able to create
better source code to solve more complex problems. In fact,
programming is a skill acquired through practice.

Keywords— Programming Competition, Online Judge,
ICPC, Competitive Programming.

I. INTRODUCTION
Problem solving in computer science area requires a
smart thinking and good analysis to solve vary of
problem level. So that, programmer can consider which
problem to solve first according to level of problem,
programmer‘s skill, and mental readiness.
This competitive programming gives us a familiar
programming environment to feel the real competition
atmosphere. Because in fact, the difficulty level and
ability of these competitors have been encountered
during practice, so it grows a mentality to compete.
Being a good coder in programming we should have a
passion to code well. This passion gives us a motivation
while spending much time to study and keeping in
interest when find a overfullness.

II. ONLINE JUDGES

A. Fundamental Online Judges

[2] An Online judge is an online system to test
submitted codes. They are also used to practice for such
contests. The system can compile and execute codes and
test them with pre-constructed data (called test case; test
data; or secret data). Submitted code may be run with
restrictions, including time limit (TLE), memory limit,
security restriction and so on. The output of the code will
be captured by the system, and compared with the
standard output. The system will then return the result.
When mistakes were found in a standard output,
rejudgement using the same method must be made.
Online Judges have ranklists showing users with the
biggest number of accepted solutions.


B. Vary Of Online Judges

Currently, there are enough existing Online Judges,
mostly hosted by a university or professional institute
that aims to educate as well as a means to train the
students themselves before competing. Some of them are
quite prestigious:
- Live Archive UVA Online Judge
(http://livearchive.onlinejudge.org/) : over 2700
problems, C/C++/Pascal/Java supported, archives of
ACM ICPC problem set - all regional contest around
world.

- Sphere Online Judge (http://www.spoj.pl/) : over
100,000 registered users and over 9000 problems,
The solution to problems can be submitted in over
40 languages, SPOJ allows advanced users to
organize contests under their own rules and
problems.

- Peking University Online Judge (http://poj.org/) :
over 2800 problems including more than 200
original problems, supports C/C++/Pascal/Java.

- Codechef (http://www.codechef.com/) : a global
programming community, host contests, trainings
and events for programmers around the world. Over
25.000 registered users.

- Codeforces (http://codeforces.com) : a platform
where contests are held regularly, the participant's
skills are reflected by their rating and the former
contests can be used to prepare, supports 12
languages to code.

III. SYLLABUS AND RESOURCES

Programming skills are not acquired solely because of
individual talent. Moreover, programming skills are the
result of an extremely disciplined and programmed
exercise. In that sense, it takes high effort and long
experience to sharpen programming skills continuously
and learn from the vast resources available in cloud.

A. Types Of Problemsets

To solve the given problem, we certainly should be
able to classify the types of problems. Here is a group of
problem in general [6] [10] [11]:



179
Dynamic programming Greedy
Computational geometry Encryption
Brute Force Combinatorial
problems
Advanced math Data structures
Graph
Number theory Miscellaneous
String processing
(manipulation, parsing,
matching)
Flow networks /
matching
Complex sorting Ad-hoc problems

B. Weapons To Solve
Getting an accepted verdict status of problem we
solved sometimes is not easy. We should have own-
weapons to solve it. Here are some suggestions :
- Have a good code template : in online competition,
code template will help you save more times to type
codes. So, you can focus on how you type your
solution

- Have a bundle of cheatsheet : in fact, we can‘t
remember all types of algorithms and datastructures,
we need a mnemonic model to remember it, so we
write a framework of our algorithms – called it
cheatsheet.

- Master one language : sometimes, that‘s very
confusing to choose which language we used to
compete (though in major use C/C++/Java
languages) , best suggestion is which language you
want to code, just master it.

- Explore the library (STL / JavaDocs) : every
programming language has a plus/minus features.
That is according to how you can manipulate the
deficiencies . Because every problem is guaranteed
can be solved with the languages recommended.

IV. PROGRAMMING TOOLS

A. Programming Environment
The goal of creating a programming environment is to
have a real contest atmosphere and to face real
competitors compete in. Then, we will get the results to
analyze: solving rates, time to solution, problem solved,
trick to save time while coding, etc.
We can code in many styles of online judges, some of
them are ACM ICPC style, TopCoder style, Codeforces
style, Google Code Jam style, and many others.


Fig. 1 Topcoder Style
B. Tracking Your Progress

Recently, coders made easier by great web-based tools to
track the progress.

1) uHunt [8]

uHunt is a tool for UVA[12] that keeps track problem
solved and provides statistics for the next problem to
solve according to difficulty level of problems coder
achieved.


Fig. 2 uHunt : Seanwu‘s Statistics in UVA (+1 ironwood branch)


Fig. 3 Next problem according to coder‘s level

The uHunt features: shows statistics—solved,
submissions, competitive skills, world ranklists, compare
coder‘s name.

2) Method To Solve [9]

This site based on Steven Halim‘s analysis. It gives
more useful features to hunt more accepted verdict on
online judge, especially in UVA.
This Method to solve give a lot of hints to solve
problems. So, coders can classify which topic they
interested in, focus on that topics, and find hint to
problem related.

180


Fig. 4 Method to solve by Steven Halim


3) Ahmed Aly Tools [6]
This is a new web-based tools developed by Ahmed
Aly. This site has a powerfull contents to analyze our
progress in some big online judges : Google Code Jam,
TopCoder, UVA, and SPOJ.

V. REVIEW THE CODER‘S STATISTICS



Fig. 5 Red Coders in ACM ICPC World Final 2011


A. Individual Statistics

[13] Jialin Ouyang (Rejudge), Zhejiang University,
World Champion Of ACM ICPC World Final 2011.



Fig. 6 Rejudge‘s Rating in Topcoder

[14]Mark Gordon (msg555), University of Michigan
Ann Arbor, Runner Up ACM ICPC World Final 2011



Fig. 7 msg555‘s Rating in Topcoder

















Fig. 8 Msg555‘s statistics in TC (left) & Msg555‘s statistics in CF
(right)




181
VI. CONCLUSION

Finally, with a programmed learning online system,
we can attract the students interested in the field of
programming to become a top coder. No students are
stupid, only people have no the opportunity to learn from
the experienced teachers. And the future expectation is to
give birth a new generation who have the programming
capability with a competitive programming environment.

REFERENCES
[1] Halim, Steven., Halim, Felix (2010). Competitive Programming.
Singapore: Lulu Press.
[2] http://en.wikipedia.org/wiki/Online_judge
[3] http://zibada.ru/finals/
[4] Skiena, Steven S (2008). The Algorithm Design Manual, 2
nd

Edition : Springer.
[5] http://code.google.com/codejam/
[6] http://ahmed-aly.com/UVaAndSPOJ/ Categories.jsp
[7] http://community.topcoder.com/tc?module= ProblemArchive
[8] http://uhunt.felix-halim.net/
[9] http://www.comp.nus.edu.sg/~stevenha/
programming/acmoj.html
[10] http://www.comp.nus.edu.sg/~stevenha/
programming/problem_category.html
[11] http://problemclassifier.appspot.com/
[12] http://uva.onlinejudge.org/index.php
[13] http://community.topcoder.com/tc?module=
MemberProfile&cr=22694621
[14] http://community.topcoder.com/tc?module=
MemberProfile&cr=15117368
182
SIG dan AHP untuk Sistem Pendukung
Keputusan Perencanaan Wilayah Industri dan
Pemukiman Kota Medan
Muhammad Hanafi
1
, Poltak Sihombing
2
, Ade Candra
3

1,2,3
Departemen Ilmu Komputer, FMIPA USU
1
hanafi.medan@gmail.com
3
ade_candra@usu.ac.id

Abstrak— Pembangunan pada daerah industri dan
pemukiman yang tidak teratur dan rapi menjadikan
munculnya gagasan tentang sebuah perangkat lunak
aplikasi sistem pendukung keputusan yang bisa membantu
mempermudah perencanaan wilayah industri dan
pemukiman di kota Medan. Dengan menggunakan sistem
pendukung keputusan berbasis Sistem Informasi Geografis
(SIG) maka akan lebih mudah bagi para pengambil
keputusan untuk menganalisa data yang ada. Karena
dengan adanya SIG maka akan digambarkan juga posisi
penyebaran data pada kondisi sesungguhnya. SIG
digunakan untuk memvisualisasikan hasil dari lokasi
alternatif yang bisa digunakan untuk perencanaan
wilayah industri dan pemukiman di kota Medan. Analytic
Hierarchy Process (AHP) adalah suatu metode
pengambilan keputusan dari banyak kriteria dan
banyak pilihan, serta nilai input dari AHP bisa berupa
nilai preferensi maupun nilai riil. AHP diterapkan untuk
menentukan nilai pada masing - masing lokasi alternatif.
Dengan menggunakan AHP berbasis SIG dapat
menghasilkan suatu sistem yang dapat membantu
perencana dalam menentukan wilayah industri dan
pemukiman.

Kata Kunci— Analytic Hierarchy Process (AHP), Sistem
Pendukung Keputusan, Sistem Informasi Geografis
(SIG), Perencanaan Wilayah, Industri, Pemukiman.

I. PENDAHULUAN
A. Latar Belakang
Pembangunan kota yang telah menjamur ke arah
pembangunan fisik yang berlebihan dipastikan akan
berdampak buruk pada kelestarian alam yang menjadi
tidak terjaga, bahkan memiliki kecenderungan
dialihfungsikannya ruang terbuka hijau. Untuk menjaga
kestabilan ekosistem di perkotaan terutama pada daerah
pemukiman dan industri, alam dengan pembangunan
perlu diseimbangkan dengan cara dilestarikannya ruang
terbuka hijau yang memiliki fungsi utama perlindungan
ekosistem. Hal ini juga mempengaruhi investor yang
ingin menentukan lokasi yang ideal untuk membangun
industri di kota Medan.

Pembangunan pada daerah pemukiman dan industri
yang tidak teratur dan rapi menjadikan masalah ini
menjadi semakin kompleks. Kebijaksanaan
pembangunan daerah di kota Medan yang akan ditempuh,
diarahkan untuk meningkatkan kuantitas dan kualitas
pengelolaan sumber daya khususnya dalam menentukan
tempat pemukiman dan industri yang sesuai merupakan
modal dasar dalam pembangunan kota.

Demi mewujudkan hal tersebut, sangat diperlukan
tenaga-tenaga perencana dan pelaksana operasional yang
handal. Teknologi Informasi dalam hal ini merupakan
alat bantu yang paling tepat digunakan untuk
memberikan hasil yang maksimal. Dalam pembangunan
perkotaan, data dan informasi dasar sangat diperlukan
untuk perencanaan, pelaksanaan dan evaluasi
pembangunan. Beberapa alasan yang mendasari hal
tersebut adalah [1]:
1) Kota merupakan suatu wilayah yang kompleks dan
rumit. Kota menyangkut sumberdaya manusia,
sumberdaya alam, ketersediaan prasarana,
manajemen/ organisasi, hukum dan peraturan serta
ekonomi, yang masing-masing dengan aspek dan
sifat dan keterkaitan yang sangat kompleks.
2) Untuk memecahkan kompleksitas tersebut, dalam
membangun dan mengembangkan kota diperlukan
data dan informasi yang lengkap dan terpadu.
3) Dengan cara konvensional, data tekstual dan
spasial dalam format hard copy (cetakan) yang
terpisah dan masih sektoral, keterpaduan dan
pembangunan sulit dicapai.

Untuk memecahkan masalah di atas, instansi yang
terkait membutuhkan suatu sistem yang dapat
menyediakan keterpaduan data dari berbagai sumber
dalam kesatuan proses yang mampu menyajikan data
geografis secara digital sekaligus melakukan analisis dan
perhitungan dalam membantu memberikan keputusan
yang tepat bagi alokasi tata ruang.
Ada beberapa model yang dapat digunakan,
diantaranya adalah dengan menggunakan Analytical
Hierarchy Process (AHP) dan Sistem Informasi
Geografis (SIG). AHP dapat digunakan dalam
183
pengambilan keputusan yang multikriteria. Di dalam
penelitian Saaty [9] disebutkan bahwa metode AHP telah
banyak diterapkan oleh banyak pihak seperti perusahaan-
perusahaan besar dunia, pemerintah, lembaga
pendidikan, dan sebagainya. SIG (Sistem Informasi
Geografis) adalah sebuah sistem komputer yang
memiliki kemampuan untuk mengambil, menyimpan,
menganalisa, dan menampilkan informasi dengan
referensi geografis [13]. Komponen utama SIG adalah
sistem komputer, data geospatial dan pengguna.
Mencermati hal di atas, maka penulis tertarik
mengembangkan sistem pendukung keputusan berbasis
SIG untuk perencanaan wilayah pemukiman dan industri
di kota Medan sebagai salah satu sumber informasi yang
dapat digunakan dibidang planologi.

B. Rumusan Masalah
Berdasarkan latar belakang di atas, maka rumusan
masalahnya adalah bagaimana merancang sistem
pendukung keputusan berbasis SIG yang dapat
membantu perencana dalam menentukan lokasi yang
cocok untuk wilayah industri dan pemukiman.

C. Batasan Masalah
Adapun batasan masalah pada Tugas Akhir ini adalah:
1) Sistem pendukung keputusan ini hanya untuk
wilayah pemukiman dan wilayah industri di kota
Medan.
2) Kriteria yang digunakan untuk wilayah
pemukiman adalah topografi, aksesbilitas,
hidrologi, dan sarana umum. Dan untuk wilayah
industri adalah topografi, aksesbilitas,
penggunaan lahan, geologi, dan hidrologi.
3) Industri yang dimaksud adalah industri skala
besar yang berorientasi pada bahan mentah dan
memiliki tenaga kerja di atas 100 orang.
4) Skala yang digunakan adalah 1 : 50.000.
5) Output dari sistem adalah kecamatan yang sesuai
untuk wilayah industri dan wilayah I atau
wilayah II untuk wilayah pemukiman.
6) Aplikasi yang digunakan adalah ArcView,
Mapserver dan berbasis web.

D. Tujuan Penelitian
Tujuan penelitian ini adalah merancang sistem
pendukung keputusan berbasis SIG yang dapat
membantu perencana dalam menentukan lokasi yang
cocok untuk wilayah industri dan pemukiman di kota
Medan.

E. Manfaat Penelitian
Manfaat yang dapat diperoleh dari penelitian ini
adalah:
1) Membantu pemerintah kota Medan dalam
pengambilan keputusan terutama yang
berhubungan dengan perencanaan wilayah
industri dan pemukiman sehingga tercipta
lingkungan kota yang baik.
2) Memberikan informasi yang berguna bagi
investor yang ingin mencari daerah industri yang
strategis di kota Medan.

F. Metodologi Penelitian
Penelitian ini dilakukan dengan metodologi sebagai
berikut:
1) Studi Literatur
Metode ini dilaksanakan dengan melakukan
studi kepustakaan melalui hasil penelitian
lainnya maupun artikel-artikel yang relevan,
serta mempelajari lebih dalam teori-teori tentang
SIG.
2) Observasi dan Pengumpulan Data
Metode ini dilaksanakan dengan melakukan
pengamatan dan pengujian terhadap lokasi-
lokasi yang berada di kota Medan. Dengan
pengamatan secara langsung akan diperoleh
pengetahuan bagaimana cara kerja aplikasi yang
sudah ada.
3) Analisis dan Perancangan
Metode ini dilaksanakan dengan melakukan
analisis terhadap masalah yang ada, batasan
yang dimiliki dan kebutuhan yang
diperlukan sehingga dapat dilakukan
perancangan dengan baik.
4) Hasil dan Implementasi
Metode ini dilaksanakan dengan
mengimplementasikan rancangan sistem
dengan menggunakan metode AHP yang
berbasis SIG.
5) Pengujian
Metode ini dilaksanakan dengan melakukan
pengujian terhadap fungsi-fungsi dari data yang
dihasilkan. Selanjutnya dilakukan analisis
terhadap hasil dan performa dari sistem.

II. TINJAUAN TEORI

A. Sistem Informasi Geografis (SIG)
SIG (Sistem Informasi Geografis) adalah sebuah
sistem komputer yang memiliki kemampuan untuk
mengambil, menyimpan, menganalisa, dan menampilkan
informasi dengan referensi geografis [13].

Menurut Shunji Murai, Sistem Informasi Geografis
(SIG) diartikan sebagai sistem informasi yang digunakan
untuk memasukkan, menyimpan, memangggil kembali,
mengolah, menganalisis dan menghasilkan data
bereferensi geografis atau data geospatial, untuk
mendukung pengambilan keputusan dalam perencanaan
dan pengelolaan penggunaan lahan, sumber daya alam,
lingkungan transportasi, fasilitas kota, dan pelayanan
umum lainnya.
184
Komponen utama SIG adalah sistem komputer, data
geospatial dan pengguna. Sistem komputer untuk SIG
terdiri dari perangkat keras, perangkat lunak dan
prosedur untuk penyusunan pemasukan data, pengolahan,
analisis, pemodelan, dan penayangan data geospatial.
Setiap data yang merujuk lokasi di permukaan bumi
dapat disebut sebagai data spasial bereferensi geografis.
Misalnya data kepadatan penduduk suatu daerah, data
jaringan jalan suatu kota, data distribusi lokasi
pengambilan sampel, dan sebagainya. Data SIG dapat
dibagi menjadi dua macam, yaitu data grafis dan data
atribut atau tabular. Data grafis adalah data yang
menggambarkan bentuk atau kenampakan objek di
permukaan bumi. Sedangkan data tabular adalah data
deskriptif yang menyatakan nilai dari data grafis tersebut
[6].

SIG adalah suatu sistem untuk mendayagunakan dan
menghasilgunakan; pengolahan dan analisis data spasial
(keruangan) serta data non spasial (tabular), dalam
memperoleh berbagai informasi yang berkaitan dengan
aspek keruangan, baik yang berorientasi ilmiah, komersil,
pengelolaan maupun kebijaksanaan [10]. Berikut adalah
beberapa keuntungan penggunaan SIG :
1) SIG mempunyai kemampuan untuk memilih dan
mencari detail yang diinginkan, menggabungkan
satu kumpulan data dengan kumpulan data
lainnya, melakukan perbaikan data dengan lebih
cepat dan memodelkan data serta menganalisis
suatu keputusan.
2) SIG dengan mudah menghasilkan peta-peta
tematik yang dapat digunakan untuk
menampilan informasi-informasi tertentu. Peta-
peta tematik tersebut dapat dibuat dari peta-peta
yang sudah ada sebelumnya, hanya dengan
memanipulasi atribut-atributnya.
3) SIG memiliki kemampuan untuk menguraikan
unsur-unsur yang terdapat di permukaan bumi
menjadi beberapa layer data spasial. Dengan
layer, permukaan bumi dapat direkonstruksi
kembali .

B. Representasi Grafis Suatu Objek
Informasi grafis suatu objek dapat dimasukan dalam
bentuk: titik, garis, polygon [8].

1) Titik adalah representasi grafis yang paling
sederhana untuk suatu objek. Tidak memiliki
dimensi tetapi dapat diidentifikasikan di atas
peta dan dapat ditampilkan pada layer monitor
dengan menggunakan simbol-simbol. Contoh
representasi objek titik untuk data posisi sumur
bor:


Gambar 2.1 Contoh representasi objek titik
untuk data posisi sumur bor

2) Garis adalah bentuk linier yang akan
menghubungkan paling sedikit dua titik dan
digunakan untuk merepresentasikan objek-objek
satu dimensi. Contoh representasi objek garis
untuk data lokasi jalan:

Gambar 2.2 Contoh representasi objek garis
untuk data lokasi jalan

3) Poligon digunakan untuk merepresentasikan
objek-objek dua dimensi, seperti danau,
bataspropinsi, batas kota, batas persil tanah, dll.
Suatu poligon paling sedikit dibatasi oleh
tigagaris yang saling terhubung diantara ketiga
titik. Di dalam basis data, semua bentuk area
duadimensi direpresentasikan oleh bentuk
poligon.

Gambar 2.3 Contoh representasi objek poligon
untuk data landuse

4) Objek Tiga Dimensi
Setiap fenomena fisik memiliki lokasi di dalam
ruang. Akibatnya, model data yang lengkap
harus mencakup dimensi yang ketiga (ruang 3
dimensi). Hal ini berlaku untuk permukaan
tanah, menara, sumur, bangunan, batas-batas,
dll.

Gambar 2.4 Contoh representasi objek
permukaan 3D

C. Model Data Spasial
Model dunia nyata dapat memudahkan manusia
dalam studi area aplikasi yang dipilih dengan cara
mereduksi sejumlah kompleksitas yang ada. Jika model
dunia nyata ini akan digunakan, model ini harus
diimplementasikan di dalam basis data. Bentuk
representasi entity spasial adalah konsep vekor dan raster.
185
Dengan demikian, data spasial direpresentasikan di
dalam basisdata sebagai vektor atau raster [8].
1) Model Data Raster
Model data raster menampilkan, menempatkan,
dan menyimpan data spasial dengan
menggunakan struktur matriks atau piksel-
piksel yang membentuk grid. Setiap piksel
memiliki atribut tersendiri, termasuk
koordinatnya yang unik. Akurasi model ini
sangat tergantung pada resolusi atau ukuran
pikselnya dipermukaan bumi. Entity spasial
raster di dalam layers yang secara fungsionalitas
direlasikan dengan unsur-unsur petanya. Contoh
unsur spasial raster adalah citra satellite
(Landsat, Ikonos), citra rada, dan sebagainya.

Gambar 2.5 Contoh data spasial model raster

2) Model Data Vektor
Model data vektor menampilkan, menempatkan,
dan menyimpan data spasial dengan
menggunakan titik, garis (kurva atau poligon)
beserta atributnya. Bentuk dasar representasi
data spasial dalam model data vector
didefinisikan oleh sistem koordinat kartesian
dua dimensi (x,y). Garis atau kurva merupakan
sekumpulan titik terurut yang dihubungkan.
Sedangkan luasan atau poligon disimpan
sebagai sekumpulan daftar titik-titik dimana
titik awal dan titik akhir poligon memiliki nilai
koordinat yang sama.

Gambar 2.6 Contoh data spasial model vektor

D. Digitasi
Digitasi merupakan proses pembentukan data yang
berasal dari data raster menjadi data vektor [1]. Dalam
sistem informasi geografis dan pemetaan digital, data
vektor banyak digunakan sebagai dasar analisis dan
berbagai proses. Digitasi pada Arcview dilakukan pada
dokumen view. Dalam pembentukan peta digital, data
grafis harus disimpan di dalam sebuah shapefile
(file .shp). Oleh karena itu, proses digitasi didahului
dengan pembuatan sebuah shapefile kosong. Peta hasil
digitasi selanjutnya dapat dugunakan dalam proses
overlay.

E. Metode Analytical Hierarchy Process (AHP)
AHP dikembangkan oleh Thomas Saaty pada tahun
1970-an. AHP merupakan sistem pembuat keputusan
dengan menggunakan model matematis. AHP membantu
dalam menentukan prioritas dari beberapa kriteria
dengan menggunakan model matematis. AHP membantu
dalam menentukan prioritas dari beberapa kriteria
dengan melakukan analisa perbandingan berpasangan
dari masing-masing kriteria [9]. AHP dikembangkan
pada musim semi 1970 dalam menghadapi masalah
perencanaan militer Amerika Serikat untuk menghadapi
berbagai pilihan (contingencyplanning). Kemudian
diaplikasikan dalam pengembangan rencana transportasi
di Sudan. Kemudian pengunaan AHP semakin meluas ke
pemerintahan dan perusahaan di berbagai negara di
dunia. Metode AHP diimplementasikan di berbagai
instansi pemerintah termasuk Departemen Pertahanan
AS dan Departemen Energi AS.

Pada dasarnya, proses pengambilan keputusan adalah
memilih suatu alternatif. AHP umumnya digunakan
dengan tujuan untuk menyusun prioritas dari berbagai
alternatif pilihan yang ada dan pilihan-pilihan
tersebut bersifat kompleks atau multikriteria. Metode
AHP merupakan suatu teori umum tentang suatu
konsep pengukuran. Metode ini digunakan untuk
menemukan suatu skala rasio baik dari perbandingan
pasangan yang bersifat diskrit maupun kontinu.
Perbandingan- perbandingan ini dapat diambil dari
ukuran aktual atau dari suatu skala dasar yang
mencerminkan kekuatan perasaan dan prefensi relatif.

Peralatan utama AHP adalah sebuah hirarki
fungsional dengan input utamanya
persepsi manusia akan prioritas antara satu elemen
dengan elemen yang lainnya. Keberadaan hirarki
memungkinkan dipecahnya masalah kompleks atau
tidak terstruktur dalam sub-sub masalah, lalu
menyusunnya menjadi suatu bentuk hirarki.

Beberapa kelebihan penggunaan metode AHP adalah
sebagai berikut (Suryadi dan Ramdhani):
1) Struktur yang berbentuk hirarki sebagai
konsekuensi dari kriteria yang dipillih sampai
pada subkriteria yang paling dalam.
2) Memperhatikan validitas sampai dengan batas
toleransi inkonsistensi berbagai kriteria dan
alternatif yang dipilih oleh para pengambil
keputusan.
3) Memperhitungkan daya tahan atau ketahanan
keluaran analisis sensitivitas pembuat
keputusan.
Selain itu metode AHP mempunyai kemampuan
untuk memecahkan masalah yang multi-objektif dan
multikriteria yang berdasar pada perbandingan preferensi
dari setiap elemen dalam hirarki. Jadi metode AHP
186
merupakan suatu bentuk pemodelan pembuatan
keputusan yang sangat komprehensif. Terdapat 4
aksioma-aksioma yang terkandung dalam model AHP:

1) Reciprocal Comparison artinya pengambilan
keputusan harus dapat memuat perbandingan dan
menyatakan preferensinya. Prefesensi tersebut
harus memenuhi syarat resiprokal yaitu apabila
A lebih disukai daripada B dengan skala x, maka
B lebih disukai daripada A dengan skala 1/x.

2) Homogenity artinya preferensi seseorang harus
dapat dinyatakan dalam skala terbatas atau
dengan kata lain elemen- elemennya dapat
dibandingkan satu sama lainnya. Kalau aksioma
ini tidak dipenuhi maka elemen- elemen yang
dibandingkan tersebut tidak homogen dan harus
dibentuk cluster (kelompok elemen) yang baru.

3) Independence artinya preferensi dinyatakan
dengan mengasumsikan bahwa kriteria tidak
dipengaruhi oleh alternatif-alternatif yang ada
melainkan oleh objektif keseluruhan. Ini
menunjukkan bahwa pola ketergantungan dalam
AHP adalah searah, maksudnya perbandingan
antara elemen-elemen dalam satu tingkat
dipengaruhi atau tergantung oleh elemen-elemen
pada tingkat diatasnya.

4) Expectation artinya untuk tujuan pengambil
keputusan. Struktur hirarki diasumsikan lengkap.
Apabila asumsi ini tidak dipenuhi maka
pengambil keputusan tidak memakai seluruh
kriteria atau objectif yang tersedia atau
diperlukan sehingga keputusan yang diambil
dianggap tidak lengkap.

F. Langkah-langkah Penggunaan Metode AHP
Pada dasarnya terdapat beberapa langkah yang
perlu diperhatikan dalam menggunakan metode AHP,
antara lain (Suryadi & Ramdhani 1998):
1) Mendefinisikan masalah dan menentukan solusi
yang diinginkan.
2) Membuat struktur hirarki yang diawali
dengan tujuan umum dilanjutkan dengan
subtujuan-subtujuan, kriteria dan kemungkinan
alternatif-alternatif pada tingkatan kriteria yang
paling bawah.
3) Membuat matriks perbandingan berpasangan
yang menggambarkan kontribusi relatif atau
pengaruh setiap elemen terhadap masing-
masing tujuan atau kriteria yang setingkat
diatasnya. Perbandingan dilakukan berdasarkan
judgment dari pembuat keputusan dengan
menilai tingkat kepentingan suatu elemen
dibandingkan elemen lainnya.
4) Melakukan perbandingan berpasangan
sehingga diperoleh nilai judgment seluruhnya
yaitu sebanyak n x [ (n-1)/2 ] buah dengan
n adalah banyaknya elemen yang dibandingkan.
5) Menghitung nilai lamda max dan menguji
konsistensinya jika tidak konsisten maka
pengambilan data diulangi.
6) Mengulangi langkah 3, 4 dan 5 untuk seluruh
tingkat hirarki.
7) Menghitung vektor eigen dari setiap matriks
perbandingan berpasangan. Nilai vektor eigen
merupakan bobot setiap elemen. Langkah ini
untuk mensintesis judgment dalam penentuan
prioritas elemen-elemen pada tingkat hirarki
terendah sampai pencapaian tujuan.
A1 A2 A3
A1 1
A2 1
A3 1
8) Memeriksa konsistensi hirarki. Jika nilai lebih
dari 10% (persen) atau 0,1 maka penilaian data
harus diperbaiki.

G. Prinsip Dasar AHP
Dalam menyelesaikan permasalahan dengan AHP ada
beberapa prinsip yang harus dipahami, diantaranya
adalah:
1) Membuat Hirarki
Sistem yang kompleks bisa dipahami dengan
memecahnya menjadi elemen - elemen pendukung,
menyusun elemen secara hirarki, dan
menggabungkannya atau mensistesisnya.
Untuk lebih jelasnya dapat dilihat pada gambar 2.8.

Gambar 2.8 Struktur Hirarki AHP

2) Penilaian kriteria dan alternatif
Kriteria dan alternatif dilakukan dengan
perbandingan berpasangan. Menurut Saaty [9],
untuk berbagai persoalan, skala 1 sampai 9
adalah skala terbaik untuk mengekspresikan
pendapat. Nilai dan definisi pendapat
kualitatif dari skala perbandingan Saaty dapat
dilihat pada Tabel di bawah ini:

Tabel 2.1 Skala Penilaian Perbandingan Berpasangan
Intesitas Keterangan
1 Kedua elemen sama pentingnya.
3
Elemen yang satu sedikit lebih penting
daripada elemen yang lainnya.
5
Elemen yang satu lebih penting daripada
elemen yang lainnya




187
Intesitas Keterangan
7
Satu elemen jelas lebih mutlak penting
daripada elemen yang lainnya.
9
Satu elemen mutlak penting daripada
elemen yang lainnya.
2,4,6,8
Nilai-nilai antara dua nilai pertimbangan
yang berdekatan.
Kebalikan
Jika aktivitas i mendapat satu angka
dibandingkan dengan aktivitas j, maka j
memiliki nilai kebalikannya dibandingkan
dengan i.

Pengisian nilai tabel perbandingan berpasangan
dilakukan berdasarkan kebijakan pembuat
keputusan dengan melihat tingkat kepentingan
antar satu elemen dengan elemen yang lainnya.
Proses perbandingan berpasangan, dimulai dari
perbandingan kriteria misalnya A1, A2 dan A3.
Maka susunan elemen-elemen yang dibandingkan
tersebut akan tampak seperti pada tabel di bawah
ini:

Tabel 2.2 Contoh Matriks Perbandingan
Berpasangan

Untuk menentukan nilai kepentingan relatif antar
elemen digunakan skala bilangan dari 1 sampai 9 yang
dapat dilihat pada Tabel 2.2. Apabila suatu elemen
dibandingkan dengan dirinya sendiri maka diberi nilai 1.
Jika elemen i dibandingkan dengan elemen j
mendapatkan nilai tertentu, maka elemen j dibandingkan
dengan elemen i merupakan kebalikannya.
Pengujian konsistensi dilakukan terhadap
perbandingan antar elemen yang didapatkan pada tiap
tingkat hirarki. Konsistensi perbandingan ditinjau dari
per matriks perbandingan dan keseluruhan hirarki untuk
memastikan bahwa urutan prioritas yang dihasilkan
didapatkan dari suatu rangkaian perbandingan yang
masih berada dalam batas-batas preferensi yang logis.
Setelah melakukan perhitungan bobot elemen, langkah
selanjutnya adalah melakukan pengujian konsistensi
matriks. Untuk melakukan perhitungan ini diperlukan
bantuan tabel Random Index (RI) yang nilainya untuk
setiap ordo matriks dapat dilihat pada tabel berikut ini:

Tabel 2.3 Random Index
Urutan
Matriks
1 2 3 4
(RI) 0.00 0.01 0.58 0.90

5 6 7 8 9 10
1.12 1.24 1.32 1.41 1.45 1.49




3) Synthesis of Priority (Penentuan Prioritas)
Untuk setiap kriteria dan alternatif, perlu
dilakukan perbandingan berpasangan (Pairwise
Comparisons). Nilai-nilai perbandingan relatif
dari seluruh alternatif kriteria bisa disesuaikan
dengan judgement yang telah ditentukan
untuk menghasilkan bobot dan prioritas. Bobot
atau prioritas dihitung dengan manipulasi
matriks atau melalui penyelesaian persamaan
matematika.

4) Logical Consistency (Konsistensi Logis)
Konsistensi memiliki dua makna, pertama,
objek-objek yang serupa bisa dikelompokkan
sesuai dengan keseragaman dan relevansi. Kedua,
menyangkut tingkat hubungan antar objek yang
didasarkan pada kriteria tertentu.

H. Sistem Pendukung Keputusan
Sistem pendukung keputusan ( decision support
systems disingkat DSS) adalah bagian dari sistem
informasi berbasis computer termasuk sistem berbasis
pengetahuan (manajemen pengetahuan) yang dipakai
untuk mendukung pengambilan keputusan dalam suatu
organisasi perusahaan,atau lembaga pendidikan. Dapat
juga dikatakan sebagai sistem komputer yang mengolah
data menjadi informasi untuk mengambil keputusan dari
masalah yang spesifik.
Menurut Kusrini [3], Sistem Pendukung keputusan
dapat digambarkan sebagai sistem yang berkemampuan
mendukung analisis data, dan pemodelan keputusan,
berorientasi keputusan, orientasi perencanaan masa
depan, dan digunakan pada saat-saat yang tidak biasa.

I. Karakteristik Sistem Pendukung Keputusan
Dari pengertian Sistem Pendukung Keputusan maka
dapat ditentukan karakteristik antara lain :
1) Mendukung proses pengambilan keputusan,
menitik beratkan pada management by
perception.
2) Adanya tatap muka manusia / mesin dimana
manusia (user) tetap memegang kendali proses
pengambilan keputusan.
3) Mendukung pengambilan keputusan untuk
membahas masalah terstruktur, semi terstruktur
dan tak struktur.
4) Memiliki kapasitas dialog untuk memperoleh
informasi sesuai dengan kebutuhan.
5) Memiliki subsistem – subsistem yang
terintegrasi sedemikian rupa sehingga dapat
berfungsi sebagai kesatuan item.
6) Membutuhkan struktur data komprehensif yang
dapat melayani kebutuhan informasi seluruh
tingkatan manajemen.


188
J. Wilayah Industri dan Pemukiman

1) Wilayah Industri
Wilayah industri merupakan kawasan yang
diperuntukan bagi kegiatan industri berdasarkan
Rencana Tata Ruang Wilayah yang ditetapkan
oleh Pemerintah Kabupaten/Kota yang
bersangkutan [12]. Karakteristik dan kesesuaian
lahan untuk wilayah industri berdasarkan
Peraturan Menteri Pekerjaan Umum Nomor:
41/PRT/M/2007 adalah sebgai berikut:
a. Penggunaan Lahan
Penggunaan lahan digunakan untuk melihat
daya dukung lahan yaitu untuk mengetahui
sejauh mana kemampuan sumber daya lahan
untuk suatu penggunaan tertentu, seperti
lokasi industri. Lahan yang dimaksud adalah
lahan kering yang tidak berada di wilayah yang
sudah eksisting pemukiman atau yang sudah
padat penduduk.
b. Geologi
Geologi yang dimaksud adalah jenis tanah yang
ada di kota Medan. Karakteristik tanah yang
cocok untuk kawasan industri adalah
bertekstur sedang sampai kasar (Marin,
Aluvial).
c. Hidrologi
Hidrologi yang dimaksud adalah ketersediaan
air di kota Medan. Wilayah yang mempunyai
ketersediaan air tinggi memberikan kemudahan
dalam penyediaan air untuk industri, karena air
sangat diperlukan untuk proses rangkaian
kegiatan industri. Ketersediaan air ini dapat
berupa air sungai atau air PAM.
d. Aksesibilitas
Aksesbilitas yang dimaksud adalah jalur
transportasi yang terdapat di kota Medan.
Dalam penelitian ini jalan dibedakan menurut
jenisnya, yaitu jalan tol, jalan arteri, jalan
kolektor, jalan local, dan rel kereta api yang
ditentukan secara manual.
e. Topografi
Topografi juga berpengaruh penting terhadap
kelancaran proses kegiatan industri. Semakin
tinggi lokasi yang akan digunakan
semakin menghambat aktivitas industri.
Ketinggian tempat menggunakan kriteria
yaitu wilayah tersebut mempunyai ketinggian di
bawah 100 meter dpl.

2) Wilayah Pemukiman
Wilayah pemukiman merupakan kawasan yang
diperuntukan untuk tempat tinggal atau lingkungan
hunian dan tempat kegiatan yang mendukung bagi
kehidupan [12]. Karakteristik dan kesesuaian lahan
untuk wilayah pemukiman berdasarkan Peraturan
Menteri Pekerjaan Umum Nomor: 41/PRT/M/2007
adalah sebgai berikut:
a. Hidrologi
Hidrologi yang dimaksud adalah ketersediaan
air di kota Medan. Wilayah yang mempunyai
ketersediaan air tinggi memberikan kemudahan
dalam penyediaan air untuk warga, karena air
sangat diperlukan untuk proses kehidupan
manusia. Ketersediaan air ini dapat berupa air
sungai atau air PDAM.
b. Aksesibilitas
Aksesbilitas yang dimaksud adalah jalur
transportasi yang terdapat di kota Medan.
Dalam penelitian ini jalan dibedakan menurut
jenisnya, yaitu jalan tol, jalan arteri, jalan
kolektor, jalan local, dan rel kereta api yang
ditentukan secara manual.
c. Sarana Umum
Sarana umum untuk wilayah pemukiman
mencakup sarana kesehatan, perniagaan, dan
pendidikan.
d. Topografi
Topografi juga berpengaruh penting terhadap
kelancaran proses kegiatan industri. Ketinggian
tempat menggunakan kriteria yaitu wilayah
tersebut mempunyai ketinggian di bawah 100
meter dpl.

III. ANALISIS DAN PERANCANGAN
A. Metode Analytical Hierarchy Process
1) Menentukan jenis-jenis kriteria wilayah industri.
Dalam penelitian ini, kriteria-kriteria yang
dibutuhkan adalah Penggunaan Lahan, Geologi,
Hidrologi, Aksesbilitas, dan Topografi.
2) Menyusun kriteria-kriteria wilayah industri dalam
matriks berpasangan seperti pada Tabel 3.1.

Tabel 3.1 Matriks Berpasangan Untuk Kriteria Calon
Wilayah Industri
Kriteria
Pengg.
Lahan
Geo
logi
Hidro
logi
Akses
bilitas
Topo
grafi
Penggunaan
Lahan

Geologi

Hidrologi

Aksesbilitas

Topografi

Jumlah





189
Cara pengisian elemen-elemen matriks pada Tabel 3.1,
adalah sebagai berikut:
a. Elemen a[i,j] = 1, dimana i = 1,2,3,.....n.
Untuk penelitian ini, n = 5.
b. Elemen matriks segitiga atas sebagai input.
c. Elemen matriks segitiga bawah mempunyai
rumus | |
| | j i a
i j a
, [
1
, =

Untuk i ≠j.
3) Menjumlah setiap kolom pada Tabel 3.1.
4) Menentukan nilai elemen kolom kriteria dengan
rumus tiap-tiap sel pada Tabel 3.1 dibagi dengan
masing-masing jumlah kolom pada langkah 3.
5) Menentukan prioritas kriteria pada masing-masing
baris pada Tabel 3.1 dengan
rumus jumlah baris dibagi dengan banyak kriteria.
6) Memasukkan data-data nama wilayah dalam bentuk
matriks berpasangan.

Tabel 3.2 Matriks Berpasangan Calon Wilayah Industri
Kriteria Kec. 1 Kec. 2 Kec. 3
Kec. 1
Kec. 2
Kec. 3
Jumlah
7) Menjumlah setiap kolom pada Tabel 3.1.
8) Menentukan nilai elemen kolom wilayah dengan
rumus tiap-tiap sel pada Tabel 3.1 dibagi dengan
jumlah kolom pada langkah 7.
9) Menentukan prioritas wilayah pada masing-masing
baris pada Tabel 3.3 dengan rumus jumlah baris
dibagi dengan banyak calon wilayah.
10) Menguji konsistensi matriks berpasangan.
11) Menghitung lamda maksimum, CI dan CR dengan
rumus :

n
maks
¿
=
ì
ì

1 ÷
÷
=
n
n
CI
maks
ì


RI
CI
CR =

Keterangan:

ì = Bobot Setiap Elemen

maks
ì = Bobot Maksimum Setiap Elemen

n = Banyak Kriteria
CI = Consistency Index
CR = Consistency Ratio
RI = Random Index
Jika CR<0,1, maka nilai perbandingan berpasangan
pada matriks kriteria yang diberikan adalah
konsisten. Jika CR≥ 0,1, maka nilai perbandingan
berpasangan pada matriks kriteria yang diberikan
tidak konsisten. Sehingga jika tidak konsisten, maka
pengisian nilai-nilai pada matriks berpasangan pada
unsur kriteria maupun alternatif harus diulang.
12) Menyusun matriks baris antar alternatif versus
kriteria yang isinya hasil perhitungan proses
langkah 7 , langkah 8, dan langkah 9.
13) Hasil akhir berupa prioritas global sebagai nilai
yang digunakan oleh pengambil keputusan
berdasarkan nilai yang tertinngi.

B. Perancangan Flowchart Sistem
Perancangan flowchart atau diagram alir akan
memudahkan pengembang untuk mengimplementasikan
sistem ke dalam bahasa pemrograman, karena akan
menjelaskan bagaimana cara kerja sistem dari awal
hingga akhir.

Gambar 3.1 Flowchart penentuan nilai prioritas kriteria





190
C. Perancangan Antar Muka

Gambar 3.2 Inputan Nilai AHP


Gambar 3.3 Tampilan Hasil

IV. KESIMPULAN
A. Kesimpulan
Berdasarkan hasil dari penelitian yang penulis lakukan
mengenai implementasi metode AHP berbasis SIG untuk
proses penentuan wilayah industri dan pemukiman kota
Medan yang telah dirancang, penulis dapat menarik
kesimpulan sebagai berikut :
1. Aplikasi ini menentukan wilayah industri dan
wilayah pemukiman di kota Medan.
2. Penentuan prioritas kriteria tergantung pada inputan
matriks yang dimasukkan oleh user.
3. Keadaan nyata banyak yang tidak sesuai dengan
penelitian ini.
4. Metode AHP sangat membantu dalam proses
perencanaan wilayah industri dan pemukiman
terutama dalam hal pemberian poin (penilaian)
untuk masing-masing kriteria dalam AHP yang
digunakan.
5. Sistem ini hanya menjadi alat bantu bagi
pengambil keputusan, keputusan akhir tetap berada
di tangan pengambil keputusan.


B. Daftar Pustaka

[1] Budianto, Eko. 2010. Sistem Informasi Geografis
dengan Arc View GIS. Yogyakarta: Andi Offset.
[2] Karim, Syaeful dan Djauharry Noor. 2006.
Analisis Dan Perancangan Sistem Informasi
Geografis Sebagai Alat Bantu Pembuat Keputusan
Alokasi Industri Di Wilayah Kota Depok.
Yogyakarta, Indonesia: Universitas Bina
Nusantara.
[3] Kusrini. 2007. Konsep dan Aplikasi Sistem
Pendukung Keputusan. Yogyakarta: Andi Offset.
[4] Muhajir, Ahmad, Syamsinar, dan Ilham
Alimuddin. 2005. Aplikasi Sig Dalam Pembuatan
Sistem Informasi Data Kota Makassar. Surabaya,
Indonesia: Institut Teknologi Sepuluh November.
[5] Murai, Shunji. 2006. GIS Workbook Vol I,
University of Tokyo. Diterjemahkan oleh Prayitno.
[6] Nuarsa IW. 2005. Belajar Sendiri Menganalisis
Data Spasial Dengan Software GIS GIS 3.3 untuk
Pemula. Jakarta: PT Alex Media Computindo.
[7] Permanasari, Intan. 2007. Aplikasi Sig Untuk
Penyusunan Basisdata Jaringan Jalan Di Kota
Magelang. Semarang, Indonesia: Universitas
Negeri Semarang.
[8] Prahasta, Eddy. 2005. Konsep-Konsep Dasar
Sistem Informasi Geografis. Bandung: CV.
Informatika.
[9] Saaty, Thomas L.. 1993. Pengambilan Keputusan
Bagi Para Pemimpin. PT Pustaka Binaman
Pressindo.
[10] Yuliadji RW, Suryono GF, Ruben A. 1994.
Aplikasi SIG untuk Pemetaan Informasi
Pembangunan. Di dalam Agus W, R
Djamaludding,G Hendrarto, editor.Remote
Sensing & Geographic information Systems.
Jakarta.
[11] Yousman, Yeyep. 2004. Sistem Informasi
Geografis dengan ArcView3.3 Professional.
Yogyakarta: Andi Offset.
[12] Peraturan Menteri Pekerjaan Umum Nomor :
41/PRT/M/2007 Tentang Pedoman Kriteria
Teknis Kawasan budi daya.
[13] USGS. 2010. Geographic Information Systems.
Http://www.egsc.usgs.gov/isb/pubs/gis_poster.Dia
kses tanggal2Januari, 2011.
191
Kombinasi Protokol XMPP dengan HTTP Untuk
Meningkatkan Real Time Aplikasi Web
Rizqi Mulki
#1
, Dedy Arisandi
#2

1
Mahasiswa Program Studi S1- Teknologi Informasi, Universitas Sumatera Utara
2
Dosen Program Studi S1- Teknologi Informasi, Universitas Sumatera Utara
1
rizqi@students.usu.ac.id

2
dedyarisandi@usu.ac.id

Abstrak— Tujuan utama dari tulisan ini adalah untuk
memberikan informasi tentang teknik terbaru membuat
aplikasi web menjadi lebih real-time. Konsep ini disebut
dengan konsep mengombinasikan protokol XMPP dengan
HTTP untuk meningkatkan real-time aplikasi web. Pada
dasarnya konsep ini lebih efisien dari pendahulunya yang
menggunakan AJAX untuk membuat aplikasi web menjadi
lebih real-time

Kata Kunci— XMPP pada aplikasi web, tingkat real-time
web
I. PENDAHULUAN
Para pengguna web cenderung senang
menggunakan aplikasi yang real-time. Karena
dengan real-time pengguna web bisa
mendapatkan informasi terbaru secara cepat
tanpa harus melakukan request kepada server
untuk mengirimkan infromasi terbaru. Dengan
metode ini pengguna merasa bisa terhargai
dengan penggunaan aplikasi dan dimanjakan
dengan mendapatkan informasi tanpa harus
banyak berinteraksi.
Aplikasi web yang real-time bukanlah
perkara yang susah untuk dibuat bagi seorang
developer web. Karena pada dasarnya hanya
meminta informasi terbaru dari server. Jadi
setiap kali pengguna ingin mendapatkan
informasi terbaru yang ada di database atau
server, harus mengirimkan request ke pada
server untuk mengirimkan kontennya. Hal ini
merupakan satu hal yang kurang baik dalam
pembuatan aplikasi web yang real-time, selain
membosankan pengguna juga harus melakukan
refresh (mengirimkan request kepada server)
setiap kali ingin mendapatkan informasi terbaru.
Masalah di atas bagi sebagian developer web
dapat dipercahkan dengan melakukan request
setiap sedetik sekali atau menanyakan kepada
server setiap detik sekali tentang apakah ada
informasi terbaru atau tidak, jika ada maka
informasi akan dikirim atau jika tidak maka
informasi tidak berubah. Solusi tersebut cukup
berbahaya, karena dapat menyebabkan server
rusak atau hang karena harus melayani
permintaan setiap detik. Dan sebenarnya solusi
ini adalah solusi terburuk karena bisa
mengakibatkan kejadian yang fatal pada server.
Solusi yang terbaik adalah memberikan
kepercayaan penuh kepada server untuk
mendistribusikan informasi setiap kali ada
informasi baru. Jadi setiap ada informasi baru
dari server maka akan dikirimkan kepada
pengguna tanpa harus menunggu permintaan
dari pengguna. Dalam arti lain terjadi
komunikasi dua arah antara server dan
pengguna tanpa mengguna permintaan. Dengan
solusi ini server tidak disibukkan untuk
melayani permintaan yang banyak dalam setiap
detiknya, cukup mendistribusikan informasi
yang baru diterima oleh server tersebut.
Solusi ini tidak mampu di selesaikan dengan
menggunakan protokol layaknya protokol web
biasanya seperti HTTP, karena HTTP tidak bisa
berkomunikasi secara dua arah, jadi protokol
yang harus digunakan untuk
mengimplementasikan solusi ini harus
menggunakan protokol XMPP (Extensible
Message Presence Protocol). Protokol ini
mampu berkomunikasi secara dua arah
(bidereksional).
II. LANDASAN TEORI

A. Penjelasan Singkat Tentang Protokol HTTP
HTTP (Hypertext Transfer Protocol) adalah
adalah sebuah protokol jaringan pada Layer
Application yang digunakan untuk sistem
192
informasi terdistribusi, kolaboratif, dan
menggunakan hipermedia. Penggunaannya
banyak pada pengambilan sumber daya yang
saling terhubung dengan tautan, yang disebut
dengan dokumen hiperteks, yang kemudian
membentuk World Wide Web pada tahun 1990
oleh fisikawan Inggris, Tim Berners-Lee.
Hingga kini, ada dua versi mayor dari protokol
HTTP, yakni HTTP/1.0 yang menggunakan
koneksi terpisah untuk setiap dokumen, dan
HTTP/1.1 yang dapat menggunakan koneksi
yang sama untuk melakukan transaksi. Dengan
demikian, HTTP/1.1 bisa lebih cepat karena
memang tidak usah membuang waktu untuk
pembuatan koneksi berulang-ulang.
HTTP adalah sebuah protokol
meminta/menjawab antara klien dan server.
Sebuah klien HTTP (seperti web browser atau
perangkat lunak lainnya), biasanya memulai
permintaan dengan membuat hubungan ke port
tertentu di sebuah server Webhosting tertentu
(biasanya port 80). Klien yang mengirimkan
permintaan HTTP juga dikenal dengan user
agent. Server yang meresponsnya, yang
menyimpan sumber daya seperti berkas HTML
dan gambar, dikenal juga sebagai origin server.
Di antara user agent dan juga origin server,
bisa saja ada penghubung, seperti halnya proxy,
gateway, dan juga tunnel.
HTTP menetapkan sembilan metode (kadang
disebut "verbs") yang menunjukkan tindakan
yang ingin dilakukan terhadap sumber
teridentifikasi. Hal yang diwakili sumber ini,
berupa data yang sudah ada atau data yang
diciptakan secara dinamis, bergantung pada
implementasi peladen. Biasanya sumber ini
berkaitan dengan berkas atau keluaran dari
berkas pelaksana yang menetap di peladen.

HEAD
Meminta tanggapan yang identik
dengan tanggapan yang sesuai dengan
permintaan GET, namun tanpa badan
tanggapan. Ini berguna untuk
mengakses informasi meta yang tertulis
dalam kepala tanggapan tanpa perlu
mengangkut seluruh konten.

GET
Meminta representasi sumber tertentu.
Permintaan menggunakan GET (dan
beberapa metode HTTP lain) "tidak
boleh memiliki kepentingan melakukan
tindakan selain pengaksesan". W3C
telah menerbitkan prinsip panduan
mengenai perbedaan ini dengan
menyatakan, "desain aplikasi web harus
mematuhi prinsip di atas, serta batasan
sejenis."

POST
Mengirimkan data untuk diproses
(misalnya dari bentuk HTML) ke
sumber teridentifikasi. Data dimasukkan
dalam badan permintaan. Ini dapat
menghasilkan pembentukan sumber
baru atau pemutakhiran sumber yang
sudah ada atau keduanya.

PUT
Mengunggah representasi sumber
tertentu.

DELETE
Menghapus sumber tertentu.

TRACE
Menggaungkan kembali permintaan
yang diterima, sehingga klien dapat
melihat perubahan atau tambahan yang
dilakukan oleh peladen perantara.

OPTIONS
Mengembalikan metode HTTP yang
didukung peladen untuk URL tertentu.
Ini dapat digunakan untuk memeriksa
fungsionalitas peladen web dengan
meminta '*' daripada fungsionalitas
sumber tertentu.

CONNECT
Menukarkan koneksi permintaan
dengan terowongan TCP/IP transparan,
biasanya untuk memfasilitasi
193
komunikasi terenkripsi SSL (HTTPS)
melalui proksi HTTP tak terenkripsi.

PATCH
Menerapkan modifikasi parsial terhadap
sumber.
Peladen HTTP diminta untuk
mengimplementasikan sedikitnya
metode GET dan HEAD dan jika
mungkin, metode OPTIONS






Gambar 1 Cara Berkomunikasi antara Server HTTP dengan Klien
B. Penjelasan Singkat Tentang XMPP
XMPP adalah teknologi yang berbasis XML yang
digunakan aplikasi real-time. Itu awalnya dikembangkan
sebagai framework untuk mendukung pesan instan dan
kehadiran aplikasi dalam ruang lingkup perusahaan. Pada
saat itu, yang ada instant-messaging jaringan yang
eksklusif dan sebagian besar tidak sesuai untuk
perusahaan digunakan. AOL Instant Messenger,
misalnya, tidak bisa digunakan secara aman dalam
komunikasi di dalam perusahaan. Meskipun ada solusi
komersial, mereka mengatur berbagai untuk memenuhi
kebutuhan organisasi/perusahaan. Karena pada dasarnya
tidak ada keleluasaan untuk berkreasi dan juga karena
data untuk berkomunikasi tersimpan semua di server
AOL, sehingga menyebabkan kemungkinan rahasia–
rahasia dalam orgranisasi/perusahaan bisa dibaca oleh
orang lain yang diluar dari organisasi/perusahaan
tersebut. XMPP, atau lebih dikenal dengan Jabber,
memberikan keleluasaan kepada organisasi/perusahaan
untuk membangun server instant-messaging untuk
berkomunikasi secara real-time, serta meberikan hak
penuh kepada organisasi/perusahaan untuk memodifikasi
server tersebut dan pastinya akan mudah untuk
menyesuaikan dengan kebutuhan organisasi /
perusahaan.







Gambar 2 Cara Berkomunikasi antara Server XMPP dengan Klien

XMPP adalah jaringan komunikasi desentralisasi,
yang berarti bahwa setiap pengguna XMPP bisa
mengirim pesan kepada setiap pengguna XMPP lainnya.
XMPP server juga dapat berkomunikasi dengan XMPP
server lain.
Seperti namanya, XMPP dapat digunakan untuk
memenuhi berbagai macam sensitif terhadap waktu fitur.
Memang, Google Wave, sebuah kolaborasi multiuser
besar lingkungan, menggunakan XMPP sebagai dasar
untuk protokol federasi tersebut. Meskipun XMPP
muncul dari sebuah kebutuhan untuk orang-ke –orang
dalam bentuk pesan instan, itu tidak berarti terbatas pada
hanya pada hal itu saja.
Untuk memudahkan pengiriman pesan, setiap
pengguna (klien) XMPP harus memiliki universal
identifier yang unik. Indetifier di dalam XMPP disebut
Jabber IDs, atau JIDs. Karena sifat protokol
didistribusikan, penting dalam sebuah JIDs berisi semua
informasi yang diperlukan untuk menghubungi
pengguna. Struktur JIDs mirip dengan alamat email.
Sebagai contoh dari JIDs adalah seorang karyawan
sebuah perusahaan tertentu, nama karyawan tersebut
yaitu John Doe, kemungkinan JID-nya adalah
John.doe@namaperusahaan.com. Di sini,
namaperushaan.com adalah alamat dari XMPP
server untuk nama perusahaan tersebut, dan john.doe
adalah username untuk John Doe.
Sebuah sistem Messaging real-time yang
menggunakan XMPP terdiri dari tiga jenis komunikasi
secara umum, yaitu :
- Message, data yang ditransfer antara satu dan
lainnya
- Precence, yang memungkinkan pengguna untuk
memberitahukan status online dan ketersediaan
- Info / query permintaan, yang memungkinkan
suatu entitas XMPP untuk membuat permintaan
dan menerima balasan dari entitas lain
Ketiga jenis komunikasi tersebut saling melengkapi.
Misalnya, ketika data atau pesan ingin dikirim ke
pengguna lain, kita butuh informasi apakah orang yang
dituju sedang online atau offline, sehingga data pesannya
bisa diterima secara real-time.
Untuk mengirim pesan dengan menggunakan XMPP
kita akan menggunakan teknologi XML. Penulisannya
kita harus mengikuti sintaks yang telah ditentukan.
Sintaks utamanya terdiri beberapa atribut berikut , yaitu:
- from : JIDs XMPP dari pengirim
- to : JID XMPP dari tujuan pengiriman pesan
- id : Sebuah pengenal opsional untuk percakapan
- type : subtipe Opsional dari bait
- xml: lang : Jika konten adalah Human-
Readable, maka harus dideskripsikan jenis
bahasanya
Proses transfer data melalui XMPP berlangsung selama
stream XML, operasi ini dilakukan pada port 5222 secara
default. Berikut cara yang efektif untuk melengkapi dua
dokumen XML dengan lengkap, masing-masing sesuai
dengan arah komunikasi. Sekali sesi dibuat, maka
elemen stream terbuka supaya komukasi bisa dilakukan.
Client

Server
Request
Response
Client

Server
Komunikasi
194
Jika komunikasi telah terbuka, maka sudah bisa
dilakukan komunikasi dan melakukan proses men-
transfer dokumen. Di dalam dokumen tersebut
dimasukkan informasi yang telah kita tuliskan pada
sintaks utama (telah dijelaskan diatas). Jika, proses
komunikasi sudah selesai digunakan, maka stream
elemen pun tertutup, dan membentuk sebuah dokumen
yang lengkap.
Sebagai contoh, di bawah menunjukkan elemen stream
untuk membuat komunikasi dari klien ke server.








Setelah komunikasi dibuat, klien dapat mengirim
pesan ke pengguna lain dengan menggunakan elemen
message, yang dapat berisi salah satu elemen child
berikut :
- subject : Sebuah kalimat yang terbaca oleh
manusia yang mewakili topik pesan.
- body : berisi kalimat yang terbaca oleh manusia
yang yang digunakan sebagai isi pesan. beberapa
tag body dapat dimasukkan
- thread: pengenal yang unik yang mewakili
thread pesan. klien perangkat lunak kemudian
dapat menggunakan ini untuk string bersama
pesan yang terkait.
Namun, pesan yang akan dikirim dapat disederhanakan
sebagai berikut :








III. METODE PENELITIAN
Konsep penelitian yang dilakuakan adalah
dengan memperhatikan beberapa kelebihan
protokol XMPP dibandingkan dengan protokol
HTTP, yaitu :
- Memungkinkan untuk memasukkan data,
tidak hanya mengambil data
- Bisa berkomunikasi secara bidereksional,
antara klien dan server
- Bisa mengirimkan data kepada klien
tanpa harus menuggu request dari klien
Ketiga kelebihan di atas menjadi
pertimbangan untuk mengimplementasikan
protokol XMPP pada aplikasi web. Dengan
mengombinasikan protokol XMPP dan HTTP
maka akan membuat aplikasi web yang dibuat
akan menjadi lebih real-time, sehingga setiap
ada informasi terbaru yang ada akan langsung
ditampilkan pada klien.
Konsep real-time yang diterapkan melalui
protokol XMPP sangat berbeda dengan konsep
real-time melalui protokol HTTP dengan
menggunakan AJAX (Asyncronous Javascript
and XML) . Letak perbendaannya pada konsep
mengirimkan data terbaru yang diterima oleh
server, HTTP tidak akan mengirimkan data
apapun kepada klien sebelum ada request dari
klien, sedangkan XMPP akan mengirimkan
langsung informasi yang diterima kepada klien
yang akan dituju tanpa harus menunggu request
untuk mengirimkan data terbaru.
Jadi, jika kita ingin menerapkan konsep real-
time melalui protokol HTTP, maka kita harus
membuat request setiap detik kepada server
supaya mengirimkan data terbaru yang
didapatkannya. Hal ini akan membuat server
sibuk melayani pertanyaan atau request dari
klien yang menanyakan tentang informasi
terbaru. Dan jika dilakukan oleh banyak klien
sekaligus, kemungkinan besar server akan
down. Cara yang paling efisien untuk
menerapkan konsep real-time pada website
adalah dengan memanfaatkan protokol XMPP.
Karena protokol ini akan mengirim langsung
informasi ketika ada informasi yang didapatkan.
IV. IMPLEMENTASI DAN PEMBAHASAN
Aplikasi web yang ingin berkomunikasi dengan
XMPP melalui JavaScript harus memenuhi beberapa
persyaratan khusus. Untuk alasan keamanan, JavaScript
tidak diperbolehkan untuk berkomunikasi dengan server
pada domain yang berbeda dari domain halaman web.
Jika Anda antarmuka web aplikasi yang host di
application.mydomain.com, setiap XMPP komunikasi
juga harus berlangsung di application.mydomain.com .
Firewall merupakan komplikasi tambahan. Idealnya,
jika kita menggunakan XMPP sebagai dasar dari real-
time antarmuka aplikasi web, pasti kita juga ingin
bekerja pada server yang dilindungi oleh firewall. Tapi
firewall perusahaan biasanya hanya membuaka beberapa
port untuk sejumlah kecil protokol, untuk
memungkinkan data web, email, dan komunikasi
<stream:stream from="[server]"
id="[unique ID over conversation]"
xmlns="jabber:client"
xmlns:stream="http://etherx.jabber.org/
streams" version="1.0">
<message from="sendinguser@somedomain"
to="recipient@somedomain"
xml:lang='en'>
<body>
Body of message
</body>
</message>
195
lainnya. Secara default, XMPP menggunakan port 5222,
yang biasanya firewall pada perusahaan memblok port
ini.
Misalkan kita tahu bahwa firewall pada suatu
perusahaan membuka port 80 (Port untuk protokol HTTP
secara default untuk mengakses web). Akan sangat
optimal jika kita melewatkan komunikasi XMPP melalui
protokol HTTP. Namun, HTTP tidak dirancang untuk
koneksi terus menerus. Arsitektur web berbeda dari
arsitektur komunikasi yang diperlukan untuk data real-
time.
Karena HTTP tidak dirancang untuk koneksi secara
terus menerus maka kita harus menggunakan standar
untuk dua arah, atau disebut dengan BOSH
(Bidirectional-streams Over Synchronous HTTP).
Standar BOSH menyediakan lapisan emulasi untuk dua
arah (bidereksional) atau data sinkron.
Jika ada data baru yang datang, BOSH akan membuat
request kepada HTTP untuk mengirimkan data kepada
klien, setelah itu koneksi antara XMPP dan HTTP
melalui BOSH diputuskan, supaya tidak terjadi
melakukan permintaan (request) secara terus menerus.
Meskipun konsep dari BOSH melakukan koneksi antara
XMPP dan HTTP pada saat dibutuhkan, konsep ini jauh
lebih efisien dari pada konsep yang diterapkan oleh
AJAX (Asyncrounous Javascript and XML) yang
menerapkan konsep long Polling atau menarik data dari
server secara terus menerus yang bisa mengakibatkan
server sibuk melayani permintaan dari AJAX.
XMPP melalui BOSH mengizinkan aplikasi web
untuk berkomunikasi secara terus menerus dengan Server
XMPP. Klien bisa melakukan koneksi dengan URL
melalui port 80 (HTTP), lalu server web (HTTP) akan
merujuk kepada port yang digunakan server XMPP
untuk mengambil data. Hasilnya, aplikasi web hanya
perlu untuk menggunakan sumber daya ketika ada data
baru yang dikirm/diterima pada server XMPP.
Untuk mengimplementasikan protocol
XMPP ke dalam aplikasi web, kita harus
memiliki atau terinstal di komputer kita akan
beberapa komponen berikut ini :
- Server XMPP : openfire atau ejabberd
- Server HTTP : apache Http Server
- Web programming language : php
- Database : MySQL
- Library XMPP for PHP : XMPPHP
- Client Library XMPP : strophe.js
Kelima komponen utama tersebut saling
mendukung antara satu dan lain dalam
melakukan kuminkasi dengan protocol XMPP.
Implementasi dari konsep mengombinasikan
XMPP dengan HTTP adalah dengan membuat
satu aplikasi kecil yang akan menampilkan
secara otomatis informasi terbaru yang di post
oleh admin. Klien akan menampilkan isi berita
tersebut secara otomatis tanpa harus membuat
permintaan kepada server untuk mengirimkan
informasi tersebut.
Berikut adalah adalah gambar (screenshot)
dari halaman sederhana yang dibuat untuk
mem-post informasi terbaru oleh admin, dan
bisa langsung diterima oleh klien tanpa harus
membuat permintaan terlebih dahulu kepada
server.














Ketika tombol ―kirim‖ ditekan maka di
halaman klien akan menampilkan informasi
yang baru saja di-post kan. Gambar berikut
menunjukkan informasi yang telah diterima,
tanpa harus meminta permintaan dari server.














Konsep dasar dari aplikasi di atas adalah
menjadikan salah satu akun yang akan dipakai
pada halaman web tersebut, supaya bisa
menerima pesan yang dikirim oleh admin.
Admin hanya mengirimkan pesannya kepada
196
akun yang telah diatur tadi, yaitu akun yang
telah dimasukkan pada halaman web receiver.
Pada dasarnya protocol XMPP hanya
dimanfaatkan untuk messager , akan tetapi
karena dilihat teknik protocol tersebut dalam
menyampaikan informasi yang baru sangat
efisien, maka dimanfaatkanlah protocol
tersebut untuk membuat website menjadi real-
time.
V. KESIMPULAN
Pada dasarnya protokol XMPP hanya
dirancang atau didesain untuk chat/messager.
Karena arsitektur dari protokol XMPP sangat
bagus jika diimplementasikan ke dalam konsep
real-time, maka dikembangkanlan teknologi
BOSH yang memungkinkan aplikasi web
berkomunikasi melalui protokol HTTP untuk
menggunakan protokol XMPP. Tujuan
utamanya adalah menciptakan aplikasi web
menjadi real-time. Sehingga ketika ada
informasi baru yang disampaikan oleh admin
langsung tersampaikan kepada klien.
Aplikasi web yang dikembangkan dengan
protokol XMPP akan lebih efisien dalam hal
aplikasi real-time, dari pada menggunakan
teknologi AJAX yang membuat permintaan
secara otomatis setiap detik kepada server.
DAFTAR PUSTAKA
[16] Moffit,, Jack, Professional XMPP Programming With Javascript
and jQuery, hacker and entrepreneur based in Albuquerque,
Wiley Publishing , Mexico 2010.
[17] Werdmuller, Ben, Build a Web-based notification tool with
XMPP, Consultan and Writtern Freelance, USA, 2010.



197
Pengembangan Aplikasi Database Koperasi dan
UMKM Berbasis Website untuk Pengumpulan
dan Penganalisaan Data Koperasi dan UMKM,
Contoh Kasus di Dinas Koperasi UMKM
Pemerintah Kota Medan

Muhammad Safri Lubis
1
, Muhammad Fadhly Sani
2

1
Dosen Jurusan Teknologi Informasi,
2
Mahasiswa Jurusan Teknologi Informasi
Fakultas MIPA USU, Medan, Sumatera Utara, Indonesia
1
safri@usu.ac.id
2
fadhly_sani@yahoo.co.id

Abstract-- Pemerintah Daerah selain memiliki
tanggungjawab menjalankan otonomi daerah juga harus
dapat melaksanakan praktik-praktik transparansi dalam
seluruh aktifitas dan kegiatan yang dilaksanakannya
sehari-hari. Pemerintah Kota Medan membentuk sebuah
Dinas Koperasi UMKM yang bertanggungjawab dalam
aktifitas analisis, rekomendasi, pemantauan,
pengembangkan dan pemberian bimbingan teknis serta
regulasi dalam isu-isu yang berhubungan dengan Koperasi
dan UMKM. Untuk mewujudkan tanggung jawab tersebut,
Dinas Koperasi UMKM mengembangkan aplikasi berbasis
web untuk mengumpulkan data-data yang berhubungan
dengan Koperasi dan UMKM serta memanfaatkannya
untuk pengambilan keputusan-keputusan tertentu bagi
pengembangan Koperasi dan UMKM khususnya di kota
Medan. Database koperasi dan UMKM tersebut dapat
diakses oleh seluruh tingkat manajemen yang ada mulai
dari staf data entry, eksekutif hingga masyarakat sesuai
dengan tingkat akses yang dimiliki dari masing-masing
tingkatan. Data Koperasi dan UMKM meliputi informasi
tentang detail dari Koperasi dan UMKM yang ada di Kota
Medan mulai dari lokasi, jenis, truktur organisasi hingga
pendanaannya. Digitalisasi data Koperasi dan UMKM
sangatlah penting untuk meningkatkan analisis dalam
perencanaan, pengelolaan dan pelaksanaan berbagai
program-program yang ada Pemerintah Daerah khususnya
di bidang Koperasi dan UMKM selain untuk dapat
menyebarluaskan data dan inforamsi tersebut kepada
masyarakat umum dan stakeholder untuk kepentingan-
kepentingan lainnya. Semua data koperasi dan UMKM
secara sistematis direkam dengan cara aplikasi database
berbasis web. Oleh karena itu, pengambilan keputusan
dapat ditarik sistematis, waktu akurat, dan real time.

Keyword-- Data koperasi, data UMKM, Pemerintah Kota,
Aplikasi Berbasis Web

I. PENDAHULUAN
Pengumpulan data dan informasi yang berhubungan
dengan koperasi dan usaha mikro kecil menengah
seperti data nama-nama koperasi dan UMKM, alamat,
dasar hukum, pengurus, jenis kegiatan, permodalan, asset,
volume usaha dan sebagainya dan informasi yang
berhubungan dengan program-program kegiatan serta
alokasi anggaran yang dilaksanakan di Dinas Koperasi
Usaha Mikro Kecil Menengah sangat diperlukan untuk
dapat menjawab seluruh kebutuhan atas usaha untuk
mendapatkan data dan informasi yang akurat tentang
koperasi dan UMKM khususnya di Kota Medan.
Diharapkan nantinya output dari data dan informasi
tersebut dapat menjadi bahan analisa lebih lanjut
terhadap hal-hal yang berhubungan dengan pengelolaan
koperasi dan UMKM di Kota Medan serta meningkatkan
system kerja pemerintahan yang dapat berjalan lebih
efektif dan efisien sesuai dengan prinsip-prinsip good
governance dan e-government yang ada.

II. METODOLOGI
Seperti yang telah diketahui, bahwa Pemerintah
Kota Medan akan mengembangan sistem manajemen
informasi secara keseluruhan melalui program lainnya
sehingga nantinya seluruh SKPD yang ada di Pemerintah
Kota Medan dapat terhubungkan dengan koneksi
jaringan baik dengan menggunakan kabel, wi-fi dan
internet ke server utama yang dimiliki oleh Pemerintah
Kota Medan. Dengan terkoneksinya seluruh SKPD yang
ada, Pemerintah Kota Medan dapat membangun berbagai
sistem informasi yang dibutuhkan untuk mendukung
kinerja dari pemerintah kota Medan sendiri atau untuk
meningkatkan pelayanan kepada masyarakat luas.
Pembangunan aplikasi database Koperasi dan
UMKM Kota Medan ini merupakan salah satu dari
aplikasi yang dapat dikembangkan dengan
memanfaatkan pengembangan jaringan internal yang
menghubungkan seluruh SKPD dengan menggunakan
computer. Dengan dikembangkannya aplikasi ini secara
jaringan, maka pengumpulan data dan infomasi serta
tampilan output dapat berjalan lebih cepat dan efektif,
sehingga pekerjaan pembuatan laporan
pertanggungjawaban dan evaluasi kinerja
198
penyelenggaraan pemerintahan daerah dapat terlaksana
lebih cepat dan efisien serta Dinas Koperasi UMKM
tidak perlu membangun sebuah system jaringan dan
server tersendiri khusus untuk aplikasi ini dengan hanya
memanfaatkan seluruh fasilitas yang telah dibangun oleh
Pemerintah Kota Medan secara menyeluruh. Aplikasi ini
dibangun berbasis web agar seluruh pengguna nantinya
dapat menggunakan aplikasi ini lebih mudah dan efisien
tanpa memikirkan platform dari operation system yang
ada di masing-masing computer pengguna. dengan
adanya koneksi secara jaringan dari kantor Dinas
Koperasi Usaha Mikro Kecil Menengah Pemerintah Kota
Medan ke server utama yang ada, Dinas Koperasi Usaha
Mikro Kecil Menengah dapat membangun lebih dari satu
client yang dapat mengakses aplikasi ini nantinya secara
bersamaan sehingga data dan informasi yang
berhubungan dengan koperasi dan UMKM dapat ter
update setiap saat. Selain itu, para pimpinan dari
Pemerintah Kota Medan juga dapat mengakses aplikasi
ini untuk melihat output yang dibutuhkan untuk analisa
lebih lanjut.
Adapun input dan output yang ada dalam aplikasi
tersebut sesuai dengan tugas pokok dan fungsi dari Dinas
Koperasi Usaha Mikro Kecil Menengah Pemerintah Kota
Medan, seperti yang dijelaskan di bawah ini:
- Aplikasi tersebut berisikan data dan informasi
dalam bentuk input dan output yang dapat
diakses dalam bidang Koperasi. Adapun detail
dari data dan informasi yang ada sebagai berikut
yaitu, Nama Koperasi, Alamat, Badan hukum,
AD/ART, Pengurus, Pengawas, Manajer,
Bentuk koperasi, Jenis Koperasi, Kelompok
Koperasi, Pengelompokan berdasarkan
pergerakan di sektor ekonomi, Pemeringkatan,
Tingkat Kesejahteraan, Indikator Kelembagaan,
Indikator Usaha, Latar belakang dan sejarah
singkat pendirian dan Keterangan umum.
- Aplikasi tersebut berisikan data dan informasi
dalam bentuk input dan output yang dapat
diakses dalam bidang usaha mikro kecil
menengah. Adapun detail dari data dan
informasi yang ada sebagai berikut yaitu, Nama
usaha mikro kecil menengah, Tingkatan usaha,
Jenis usaha, Alamat, Badan hukum usaha,
Susunan kepemilikan usaha dan persentase
(saham), susunan organisasi usaha, Indikator
Kelembagaan/organisasi, Sektor usaha (Mikro
dan kecil serta Menengah), Kemitraan, Sumber
dana, bahan baku, Aset yang dimiliki,
Pemasaran, Peralatan yang ada dan digunakan,
Indikator Usaha, Program pembinaan dan
kegiatan non-bantuan dari pemerintah yang
pernah diikuti, Program pembinaan dan
kegiatan non-bantuan dari non-pemerintah yang
pernah diikuti, Bantuan dari pemerintah yang
pernah diperoleh, Bantuan dari non-pemerintah
yang pernah diperoleh, Bantuan khusus untuk
teknologi tepat guna yang pernah diperoleh dan
Keterangan umum.
- Aplikasi tersebut berisikan data dan informasi
dalam bentuk input dan output yang dapat
diakses dalam bidang keseketariatan terutama
dengan hal yang berhubungan dengan
rancangan program-program serta program-
program yang sedang dan telah dilaksanakan.
Adapun detail dari data dan informasi yang ada
sebagai berikut yaitu, APBD, Program kegiatan,
Foto-foto kegiatan secara umum, Laporan-
laporan secara umum, Berita dan informasi
umum, Database yang berhubungan dengan
promosi, Database yang berhubungan dengan
monitoring dan evaluasi serta Database struktur
organisasi
Secara umum adapun kriteria dan jenis dari aplikasi
database ini adalah sebagai berikut:
- Aplikasi dibangun berbasis web.
- Sesuai dengan blue print pengembangan
teknologi informasi di seluruh wilayah
perkantoran yang ada di Pemerintah Kota
Medan, maka aplikasi ini akan dibangun dengan
menggunakan bahasa PHP dan menggunakan
database MySQL

III. PENGEMBANGAN APLIKASI
Bagan alur merupakan gambaran awal dari
rancangan pembangunan sebuah aplikasi berbasis
database. Dengan adanya bagan alur ini nantinya
digunakan sebagai dasar dari pengembangan aplikasi dan
database yang ada. Untuk melihat bagan alur dari
aplikasi database ini dapat dilihat pada gambar di bawah
ini. Pada gambar di bawah ini dapat dilihat secara detail
sistem kerja dari aplikasi database yang dibangun untuk
mewujudkan seluruh maksud dan tujuan yang telah
ditentukan sebelumnya. Bentuk input yang dibangun
diusahakan dapat seefisien dan seefektif mungkin
sehingga siapapun nantinya operator yang akan
memanfaatkan aplikasi database ini dapat
memanfaatkannya dengan baik. Sedangkan output yang
dikeluarkan berbentuk dua jenis, pertama adalah bentuk
output berbasis web yang hanya dapat dilihat dengan
menggunakan browser dan output berbasis excel yang
dapat digunakan dan diolah lebih lanjut untuk keperluan
analisa dan laporan yang dibutuhkan.

199
ENTRY DATA
KOPERASI
Data-data dan informasi hasil
dari survey, pengisian
quesioner dan sebagainya
yang dilakukan oleh
Dinas Koperasi Usaha Mikro
Kecil Menengah Pemerintah
Kota Medan
ANALISA
USAHA MIKRO
KECIL MENENGAH
SEKRETARIAT
NAMA KOPERASI
NAMA USAHA
TINGKATAN USAHA
ALAMAT
OUTPUT
PRINT
FILE EXCEL
DATABASE BERITA
DAN INFORMASI
UMUM
DATABASE FOTO-
FOTO KEGIATAN
SECARA UMUM
DATABASE LAPORAN-
LAPORAN SECARA
UMUM
PROGRAM KEGIATAN
DATABASE
ANGGARAN
DATABASE
STRUKTUR
ORGANISASI DAN
PEJABAT
DATABASE PROMOSI
DATABASE EVALUASI
DAN MONITORING
BADAN HUKUM
AD/ART
PENGURUS
PENGAWAS
MANAJER
BENTUK KOPERASI
JENIS KOPERASI
KELOMPOK
KOPERASI
PERGERAKAN DI
SEKTOR EKONOMI
PEMERINGKATAN
TINGKAT
KESEJAHTERAAN
INDIKATOR
KELEMBAGAAN
INDIKATOR USAHA
LATAR BELAKANG
DAN SEJARAH
PENDIRIAN
KETERANGAN UMUM
JENIS USAHA
BAHAN BAKU
PEMASARAN
ALAMAT
BADAN HUKUM
USAHA
SUSUNAN
KEPEMILIKAN SAHAM
SUSUNAN
ORGANISASI USAHA
INDIKATOR
KELEMBAGAAN
SEKTOR USAHA
KEMITRAAN
SUMBER DANA
ASET
PERALATAN YANG
DIGUNAKAN
INDIKATOR USAHA
PROGRAM
PEMBINAAN DAN
KEGIATAN NON-
BANTUAN DR
PEMERINTAH
PROGRAM
PEMBINAAN DAN
KEGIATAN NON-
BANTUAN DARI NON-
PEMERINTAH
BANTUAN DARI
PEMERINTAH
BANTUAN DARI NON-
PEMERINTAH
BANTUAN KHUSUS
TTG
KETERANGAN UMUM
Gambar 1. Bagan Alur

Hasil dari bagan alur yang merupakan alur kerja
yang diharapkan dari aplikasi database ini dihasilkan
sebuah sitemap dari aplikasi yang dibangun. Adapun site
map dari aplikasi tersebut dapat dilihat pada gambar 2.
Pada gambar 2 terlihat bahwa ada dua jenis content
akses yang ada dalam aplikasi ini, yaitu content dengan
jenis akses langsung dan content dengan jenis akses tidak
langsung. Adapun yang dimaksud dengan content akses
langsung yaitu dimana para pengguna tidak memerlukan
login untuk masuk ke content-content tersebut.
Sedangkan content dengan jenis akses tidak langsung
yaitu dimana para pengguna harus menggunakan login
tertentu untuk dapat mengakses content-content tersebut.
Adapun content dengan jenis akses langsung yaitu
content ‘berita dan informasi‘, ‘latar belakang‘, ‘output‘
dan ‘file download‘. Adapun jenis dengan akses tidak
langsung yaitu ‘database koperasi dan umkm‘
dan ‘control panel‘. Pada content akses tidak
langsung ‘database Koperasi dan UMKM‘, ada empat
sub content yang memiliki lanjutan halaman yaitu
content ‘profil user‘, ‘bidang koperasi‘, ‘bidang UMKM‘
dan penegakan hukum‘ dan ‘sekretariat‘. Pada masing-
masing keempat sub content tersebut nantinya ada link
ke sub sub content dari masing-masing fungsi yang ada.
Pada content akses tidak langsung ‘control panel‘, ada
empat puluh enam sub content yang memiliki lanjutan
halaman. Pada masing-masing sub content tersebut
nantinya ada link ke sub sub content dari masing-masing
fungsi yang ada.
HALAMAN BERANDA
DATABASE KOPERASI
DAN UMKM
BERITA DAN
INFORMASI
LATAR BELAKANG FILE DOWNLOAD CONTROL PANEL
LOGIN
LOGIN
UMKM
CONTROL PANEL
LEVEL
ADMINISTRATOR
CONTROL PANEL
PROFIL USER
CONTROL PANEL
BENTUK KOPERASI
CONTROL PANEL
STATUS KANTOR DAN
TEMPAT USAHA
CONTROL PANEL
LOGIN USER
SALAH LOGIN
GANTI PASSWORD
KOPERASI
PRINT FILE
CONTROL PANEL
KELOMPOK KOPERASI
CONTROL PANEL
PEMERINGKATAN
KOPERASI
OUTPUT
FILE
FILE
SEKRETARIAT
LIHAT
NAMA USAHA DAN
ALAMAT
TINGKATAN USAHA,
JENIS USAHA DAN
SEKTOR USAHA
BADAN HUKUM USAHA
SUSUNAN
KEPEMILIKAN SAHAM,
ORGANISASI USAHA
DAN INDIKATOR
KELEMBAGAAN
EDIT
ENTRY
LIHAT
DATABASE BERITA
DAN INFORMASI UMUM
DATABASE FOTO-
FOTO KEGIATAN
SECARA UMUM
DATABASE LAPORAN-
LAPORAN SECARA
UMUM
PROGRAM KEGIATAN
EDIT
ENTRY
LIHAT
DATABASE
ANGGARAN
PROFIL USER
EDIT
ENTRY
LIHAT
CONTROL PANEL
TAHUN BUKU
KOPERASI
CONTROL PANEL
KECAMATAN DAN
KELURAHAN
CONTROL PANEL
SUSUNAN PENGURUS
KOPERASI
CONTROL PANEL
SUSUNAN PENGAWAS
KOPERASI
CONTROL PANEL
JENIS KOPERASI
CONTROL PANEL
PERGERAKAN DI
SEKTOR EKONOMI
KOPERASI
CONTROL PANEL
TAHUN RAPAT
ANGGOTA TAHUNAN
CONTROL PANEL
TINGKAT
KESEJAHTERAAN
KOPERASI
CONTROL PANEL
JENIS KELAMIN
CONTROL PANEL
INDIKATOR
PEMODALAN
KOPERASI
CONTROL PANEL
SUSUNAN
ORGANISASI USAHA
CONTROL PANEL
BULAN
CONTROL PANEL
JENIS BELANJA
ANGGARAN
DATABASE STRUKTUR
ORGANISASI DAN
PEJABAT
CONTROL PANEL
STRUKTUR
ORGANISASI
CONTROL PANEL
INDIKATOR
KELEMBAGAAN UMKM
CONTROL PANEL
TINGKATAN USAHA
UMKM
CONTROL PANEL
BADAN HUKUM USAHA
UMKM
CONTROL PANEL
SUSUNAN KEPEMILIKAN
SAHAM
CONTROL PANEL
BERITA DAN
INFORMASI
CONTROL PANEL
GOLONGAN DAN
PANGKAT
DATABASE PROMOSI
DATABASE EVALUASI
DAN MONITORING
PROGRAM
PEMBINAAN DAN
KEGIATAN NON-
BANTUAN DARI
PEMERINTAH DAN
NON-PEMERINTAH
KETERANGAN UMUM
BANTUAN DARI
PEMERINTAH DAN
NON PEMERINTAH
SERTA BANTUAN
KHUSUS TTG
PEMASARAN
KEMITRAAN
ASET, BAHAN BAKU
DAN PERALATAN
YANG DIGUNAKAN
SUMBER DANA DAN
INDIKATOR USAHA
NAMA USAHA DAN
ALAMAT
BENTUK, JENIS,
KELOMPOK DAN
PERGERAKAN DI
SEKTOR EKONOMI
DARI KOPERASI
BADAN HUKUM DAN
AD/ART KOPERASI
SUSUNAN PENGURUS,
PENGAWAS DAN
MANAJER KOPERASI
EDIT
ENTRY
LIHAT
KETERANGAN UMUM
LATAR BELAKANG DAN
SEJARAH PENDIRIAN
PEMERINGKATAN DAN
TINGKAT
KESEJAHTERAAN
INDIKATOR
KELEMBAGAAN DAN
USAHA
PROGRAM
PEMBINAAN DAN
KEGIATAN NON-
BANTUAN DARI
PEMERINTAH DAN
NON-PEMERINTAH
BANTUAN DARI
PEMERINTAH DAN
NON PEMERINTAH
SERTA BANTUAN
KHUSUS TTG
CONTROL PANEL
SEKTOR USAHA UMKM
CONTROL PANEL POLA
KEMITRAAN UMKM
CONTROL PANEL INTI
PEMBINAAN
KEMITRAAN UMKM
CONTROL PANEL
ASPEK PEMBINAAN
KEMITRAAN UMKM
CONTROL PANEL
SUMBER DANA UMKM
ASET, BAHAN BAKU
DAN PERALATAN
YANG DIGUNAKAN
CONTROL PANEL
KONDISI ASET
CONTROL PANEL
KONDISI PERALATAN
CONTROL PANEL
PERMODALAN UMKM
CONTROL PANEL
PELAKSANA PROGRAM
PEMBINAAN DAN
KEGIATAN NON-
BANTUAN
CONTROL PANEL
INDIKATOR USAHA
UMKM
CONTROL PANEL JENIS
ANGGARAN YANG
DIGUNAKAN
CONTROL PANEL
STATUS PEMBERI
BANTUAN NON-
PEMERINTAH
CONTROL PANEL
STATUS PEMBERI
BANTUAN TTG
CONTROL PANEL JENIS
USAHA UMKM
CONTROL PANEL
JENIS-JENIS
PEMASARAN UMKM
CONTROL PANEL
JENIS-JENIS BAHAN
BAKU
CONTROL PANEL
TAHUN KEGIATAN
CONTROL PANEL FILE
DOWNLOAD
PROFIL USER

Gambar 2. Sitemap Aplikasi Database


Adapun cara kerja aplikasi tersebut dapat dilihat pada
bagan di bawah ini:

ENTRY DATA OLEH
OPERATOR
APLIKASI AKAN
MENGOLAH DATA
APLIKASI AKAN
MELAKUKAN PROSES
OUTPUT TABEL
UP DATE TIAP
TAHUN

Gambar 3. Cara Kerja Aplikasi
200
Aplikasi di bangun dalam bentuk form-form tabel
isian sesuai dengan point-point yang diminta. Aplikasi
nantinya akan memberikan output sesuai dengan
tampilan yang diminta. Direncanakan data dan informasi
tersebut akan dapat di up date setiap tahunnya sesuai
dengan bidang-bidang yang ada. Diharapkan dengan
adanya aktifitas up date setiap tahun ini, data-data dan
informasi yang ada dapat dibandingkan untuk
mendapatkan analisa lebih lanjut.

IV. PEMANFAATAN APLIKASI
Ada tiga level pengguna yang dapat mengakses aplikasi
ini secara lebih lengkap. Adapun tiga jenis level akses
tersebut adalah:
- Level administrator yang nantinya
bertanggungjawab secara teknis atas
keseluruhan jalannya program aplikasi database
ini. Level administrator adalah level tertinggi
dari seluruh login yang ada. Para pengguna di
level ini dapat mengakses content ‘database
Koperasi dan UMKM‘ dan seluruh sub content
yang ada di ‘control panel‘.
- Level Eksekutif yang nantinya
bertanggungjawab secara keseluruhan jalannya
penggunaan aplikasi database ini bersama-sama
dengan administrator. level eksekutif adalah
level yang dapat mengakses content yang ada di
content ‘database Koperasi dan UMKM‘ dan
sebagian dari ‘control panel‘.
- Level operator yang nantinya
bertanggungjawab dalam memasukkan data
entry yang diperlukan. Level operator adalah
level paling rendah yang hanya dapat mengkses
sub-sub content yang ada di content ‘database
Koperasi dan UMKM‘.
Dari tiga level pengguna yang dapat mengakses
aplikasi ini secara lengkap secaraa operasionalnya di
bagi menjadi lima login yang ada. Khusus untuk level
administrator dan eksekutif masing-masing akan
memiliki satu login pengguna. Sedangkan untuk level
operator ada tiga login pengguna yang dapat mengakses
aplikasi ini. Adapun direktori dari pengguna dapat dilihat
di bawah ini:
- Login user administrator dan eksekutif.
Login ini digunakan oleh administrator dan
eksekutif untuk mengakses seluruh sub content
yang ada di content ‘database koperasi dan
UMKM‘.
- Login control panel administrator dan
eksekutif. Login ini digunakan oleh
administrator dan eksekutif untuk mengakses
seluruh sub content yang ada di content ‘control
panel‘.
- Login user bidang koperasi. Login ini
digunakan oleh operator untuk mengakses
khusus sub content ‘bidang koperasi‘.
- Login user bidang UMKM. Login ini
digunakan oleh operator untuk mengakses
khusus sub content ‘bidang UMKM.
- Login user bidang sekretariatan. Login ini
digunakan oleh operator untuk mengakses
khusus sub content ‘bidang sekretariat‘.
Secara umum adapun desain akhir dan penjelasan
dari tampilan aplikasi dapat dilihat di bawah ini. Secara
garis besar terdiri dari splash, tampilan pada beranda
utama, tampilan pada halaman user dan tampilan pada
halaman control panel.

 Splash. Splash merupakan tampilan awal ketika
aplikasi database ini diakses pada sebuah browser
yang berisikan informasi dari nama dan pemilik
aplikasi database ini.


Gambar 4. Tampilan Splash dari Aplikasi Database

 Beranda Utama. Beranda utama adalah halaman
awal setelah tampilan splash berganti. Isinya
menggambarkan seluruh content-content yang ada
dalam aplikasi database ini, baik yang bersifat
content langsung ataupun content tidak langsung
yang hanya dapat diakses jika menggunakan login
dan password. Adapun content langsung yang dapat
diakses yaitu content ‗Berita dan Informasi‘, ‗Latar
Belakang‘, ‗File Download‘ dan ‗Output‘.
Sedangkan content yang dapat diakses dengan
menggunakan login dan password adalah content
‗Database Koperasi dan UMKM‘ dan ‗Control
Panel‘.


Gambar 5. Tampilan Halaman Beranda Utama dari Aplikasi Database

 Halaman menu utama dari masing-masing login
ketika masuk ke content „Database Koperasi dan
UMKM‟. Masing-masing login akan memiliki isi
201
sub content yang berbeda ketika masing-masing
menggunakan loginnya untuk masuk ke content
‗Database Koperasi dan UMKM‘. Khusus untuk
login user administrator dan eksekutif akan dapat
mengakses seluruh sub content dari content
‗Databae Koperasi dan UMKM‘ yang ada seperti
tampak pada tampilan di bawah ini. Secara umum
ada 4 (empat) sub content dari content ‗Database
Koperasi dan UMKM‘, yaitu sub content ‗Profil
User‘, ‗Bidang Koperasi‘, ‗Bidang UMKM‘ dan
‗Sekretariat‘. Masing-masing sub content ini akan
menuju inputan dari sub-sub content database yang
ada.


Gambar 6. Tampilan Halaman Menu Utama dengan login user
Administrator dan Eksekutif


Gambar 7. Tampilan Halaman Menu Utama dengan login user Bidang
koperasi


Gambar 8. Tampilan Halaman Halaman Menu Utama dengan login
user Bidang UKMKM


Gambar 9. Tampilan Halaman Menu Utama dengan login user
Sekretariat

 Halaman bidang dari masing-masing bidang.
Halaman bidang dari masing-masing bidang
merupakan halaman yang menampilkan sub-sub
content dari aktifitas yang ada di masing-masing
bidang. Pada halaman ini berisikan berbagai sub
content yang menuju ke berbagai halaman input
pengisian yang berhubungan dengan berbagai
kegiatan yang ada di masing-masing bidang.


Gambar 10. Tampilan Halaman bidang dengan login user Bidang
koperasi


Gambar 11. Tampilan Halaman bidang dengan login user Bidang
UMKM


Gambar 12. Tampilan Halaman bidang dengan login user Bidang
sekretaris

 Halaman sub bidang dari masing-masing bidang.
Halaman sub bidang dari masing-masing bidang
merupakan halaman yang menampilkan sub-sub
content dari sub aktifitas yang ada di masing-masing
bidang. Pada halaman ini berisikan berbagai sub
content yang menuju ke berbagai halaman input
pengisian yang berhubungan dengan berbagai
kegiatan yang ada di masing-masing bidang.

202

Gambar 13. Tampilan Halaman sub bidang dengan login user Bidang
Koperasi di content ‗database koperasi dan UMKM‘


Gambar 14. Tampilan Halaman sub bidang dengan login user Bidang
UMKM di content ‗database koperasi dan UMKM‘

Selain itu, jenis content lainnya yang menggunakan
login adalah content control panel. Adapun fungsi dari
control panel untuk mengatur data-data pendukung agar
aktifitas input data dan informasi di masing-masing data
teknis yang ada dapat berjalan dengan maksimal. Pada
control panel diatur nama-nama kecamatan hingga
kelurahan yang ada di Kota Medan, data jenis koperasi,
bentuk koperasi, kelompok koperasi, tingkat usaha
UMKM, indicator kelembagaan UMKM dan sebagainya.

V. LAPORAN DAN OUTPUT APLIKASI

Hasil dari input data dan informasi yang dilakukan
pada masing-masing login pada content ‗Database
Koperasi dan UMKM‘ dapat dilihat dengan versi yang
lainnya pada content ‗Output‘ yang langsung dapat
diakses tanpa menggunakan login yang ada. Secara
umum output yang ada terbagi menjadi tiga bagian besar
yaitu output untuk Koperasi, output untuk UMKM dan
output untuk Sekretariat. Dari tima bagian tersebut dua
bidang akan menghasilkan output yang bersifat sangat
teknis yaitu output pada Koperasi dan UMKM. Adapun
tampilan dari salah satu output yang ada dapat dilihat
pada gambar di bawah ini.



Gambar 15. Tampilan isi dari output Daftar Alamat Koperasi Pada Tiap
Kecamatan dan Kelurahan

Adapun beberapa kelebihan dari output yang
dihasilkan oleh aplikasi database ini adalah:
- Aplikasi ini menghasilkan data output untuk
ketiga bidang yang ada. Dari ketiga bidang
tersebut ada 63 jenis output atau laporan. Dari
ke 63 jenis output atau laporan tersebut 55
diantaranya merupakan ouput atau laporan yang
bersifat teknis yang berasal dari dua bidang
yang telah dijelaskan diatas.
- Aplikasi ini dapat menghasilkan data dan
informasi yang sangat terperinci dengan adanya
penggunaan filter di masing-masing link output
yang ada seperti tampak pada Gambar 16 diatas.
Sehingga diharapkan dengan adanya filter
tersebut data dan informasi yang dikeluarkan
dapat bersifat umum hingga khusus sesuai
dengan keinginan si pengguna.
- Selain menghasilkan data yang dapat
ditampilkan langsung pada aplikasi, aplikasi
database ini juga dapat menghasilkan output dan
laporan yang bersifat excel. Dengan mengklik
tombol print, data yang ditampilkan baik yang
sudah difilter atau default dapat dipindahkan ke
excel agar dapat diolah lebih lanjut.

203
VI. KESIMPULAN DAN SARAN
Adapun beberapa kesimpulan yang dapat diambil
adalah:
- Program pengembangan aplikasi database
tentang koperasi dan UMKM ini merupakan
bagian dari pengembangan e-government secara
keseluruhan khususnya di Pemerintah Kota
Medan.
- Program pengembangan aplikasi database ini
penerapannnya dalam aktifitas sehari-hari
diharapkan dapat meningkatkan efisiensi dan
efektifitas dari kinerja pemerintah khususnya
pemerintah daerah di tingkat propinsi maupun
kabupaten/kota dalam mengorganisasikan hal-
hal yang berhubungan dengan pengelolaan dan
pengawasan koperasi dan UMKM.
- Pemilihan aplikasi berbasis website dengan
menggunakan bahasa program PHP dan
database MySQL merupakan usaha untuk
mendukung penerapan blue print
pengembangan e-government di pemerintahan
Republik Indonesia selain merupakan pilihan
terbaik untuk dapat mendukung pengembangan
Wireless dan Local Area Networking sebagai
basis utama dalam lalulintas data dan informasi
secara digital. Dengan penggunaan bahas
program PHP diharapkan juga nantinya aplikasi
ini dapat dimanfaatkan disegala platform yang
ada dan jika dibutuhkan dapat langsung
digunakan melalui browser yang
komputer/laptopnya terakses ke jaringan yang
ada. Selain itu dengan menggunakan database
MySQL diharapkan nantinya data tersebut dapat
digunakan atau diolah dengan berbagai aplikasi
output apapun jika dibutuhkan dan
memudahkan aktifitas pengintegrasian antara
aplikasi database ini dengan aplikasi lainnya
yang sejenis jika dibutuhkan.

Dalam pelaksanaannya ada beberapa saran dan
rekomendasi yang harus dipertimbangkan oleh setiap
pemerintah daerah yang akan menerapkan aplikasi ini
dalam aktifitas pemerintahannya yaitu:
- Diharapkan Satuan Kerja Pemerintah Daerah
(SKPD) yang terlibat langsung dalam aktifitas
penggunaan aplikasi ini sesuai dengan
tingkatannya telah mempersiapkan infrastruktur
pendukung seperti minimal satu buah personal
komputer atau laptop dan menyediakan tenaga
operator dan pengolah data yang dapat
berkonsentrasi dan mengerti betul cara kerja
dari aplikasi ini serta memiliki dasar
pengetahuan di bidang teknologi informasi
khususnya di bidang jaringan dan data entry.
- Jika dibutuhkan pengelolaan lebih lanjut
diharapkan aplikasi ini dapat menjadi dasar
pengembangan yang ada. Dengan penggunaan
pengembangan aplikasi berbasis website ini
memberikan ruang gerak yang cukup besar
untuk pengembangan lebih lanjut tanpa
mengganggu content-content yang telah ada
sehingga nantinya tidak ada pembangunan
aplikasi-aplikasi sejenis.

VII. DAFTAR RUJUKAN
[1] Didin Nugraha (2003) Mengenal Sistem Teknologi
Informasi [online], available from:
http://www.ilmukomputer.com [accesed April 2005].
[2] Edi Purwono, 2006, Kebijakan dan Prosedur
Penyelenggaraan Sistem Informasi Manajemen,
Yogyakarta: Penerbit Andi.
[3] Karin Afriani, dkk, 2009, Dampak E-government
Pada Good Governance: Temuan Empiris dari Kota
Jambi [online]. Avalaible from:
http://journal.uii.ac.id/index.php/Snati/article/view/1
212/1014 [Accessed September 2010].
[4] Mas Wigrantoro Roes, 2005, Electronic Government
dan Pencegahan Korupsi, Surat Kabar Harian
Kompas, 16 Mei 2005, halaman 39, Jakarta.
[5] Muhammad Safri Lubis, 2006, E-government,
Sebuah Prespektif, Surat Kabar Harian Analisa, Mei
2006, Medan.
[6] Muhammad Safri Lubis, 2006, Sudah Siapkah Kita
Mengembangkan E-government, Surat Kabar Harian
Analisa, 5-6 Oktober 2006, Medan.
[7] Richardus Eko Indrajit, 2002, Electronic
Government, Strategi Pembangunan dan
Pengembangan Sistem Pelayanan Publik Berbasis
Teknologi Digital, Yogyakarta: Penerbit Andi.
[8] Taufik Hasan (20056) Masyarakat Informasi dan
kemandirian Bangsa, Majalah e-Indonesia, edisi 07,
November-Desember 2005, Jakarta.
[9] Onno W. Purbo, 2000, Visi Bangsa Menghadapi
Abad 21 [online]. Available from:
http://www.ilmukomputer.com [Accesed April
2005].




204
Peran ICT untuk Terselenggaranya
Pelayanan Prima

Muhammad Irwan Padli Nasution
#1
, Murlan Naida
*2

#
Dosen IAIN Sumatera Utara Medan Sumatera Utara
#
Dosen Teknik Informatika Universitas Asahan Sumatera Utara

Abstrak-- Dampak ICT telah membawa perubahan yang
sangat signifikan di dalam budaya dan perilaku
masyarakat. Globalisasi dan perdagangan bebas menuntut
berbagai keunggulan dalam persaingan bisnis yang
semakin ketat. ICT digunakan untuk membantu dalam
kegiatan dan proses bisnis setiap organisasi, sehingga
diharapkan akan dapat dilakukan dengan lebih baik, lebih
murah dan lebih cepat. Merupakan suatu keunggulan bila
organisasi selalu dapat memberikan pelayanan yang prima
kepada pelanggannya.

Kata kunci-- ICT, Pelayanan Prima

I.PENDAHULUAN
Kemajuan Teknologi Informasi di kantor-kantor di
dunia dimulai pada pertengahan abad ke-20, dengan
diperkenalkannya telepon otomatis, alat pencatat
telegram, telex, mesin ketik elektrik, mesin duplikator,
mesin penjumlah, tabulator dan perangkat pengolahan
data. Saat kini sumber daya informasi telah menjadi alat
bagi manajemen untuk secara efisien dan efektif
mencapai tujuannya, sehingga dalam era sekarang ini
peran penting ICT (Information and Communication
Technologies) telah diakui sedemikian diperlukan.
Informasi akurat dan real-time dibutuhkan untuk
mempercepat pengambilan keputusan terhadap
penyelesaian suatu permasalahan yang dihadapi suatu
organisasi. Dengan demikian untuk pengolahan data
menjadi informasi diperlukan suatu teknologi informasi
dan komunikasi sebagai perangkat pengolah data dalam
menjalankan suatu aplikasi sistem informasi yang
menghasilkan suatu informasi tertentu. Perkembangan
ICT yang telah memicu globalisasi adalah merupakan
satu diantara perubahan lingkungan eksternal yang telah
membawa dampak sangat signifikan di dalam bisnis dan
perilaku serta budaya masyarakat saat kini. Globalisasi
informasi telah memaksa setiap insan baik individu
ataupun kelompok, baik swasta maupun pemerintah,
untuk memperhitungkan sistem informasi yang akan
diterapkan supaya tetap kompetitif. Globalisasi dan pasar
bebas telah mewarnai peta industri menjadi lebih
kompetitif.
Fenomena perkembangan dunia bisnis telah
menimbulkan bertambahnya perusahaan yang memasuki
pasar jasa. Hal tersebut ditandai dengan munculnya
perusahaan baru yang menghasilkan produk jasa yang
hampir sejenis, dampaknya adalah semakin banyak
produk jasa yang ditawarkan dalam bentuk pelayanan
yang beragam. Kondisi demikian membuat pelanggan
dihadapkan kepada berbagai alternatif pilihan pembelian
dalam rangka memenuhi kebutuhannya, sementara
dipihak perusahaan menimbulkan iklim persaingan yang
semakin tinggi dalam memelihara, mempertahankan dan
mendapatkan pelanggan baru. Sedemikian besar
perubahan tadi sehingga diperlukan paradigma baru
untuk dapat bersaing dalam lingkungan bisnis yang baru.
Suatu kualitas pelayanan prima perlu terus
dikembangkan perusahaan untuk tetap memuaskan dan
mempertahankan loyalitas pelanggannya.

II.TEKNOLOGI ICT
Teknologi Informasi dan Komunikasi, atau dalam
bahasa Inggris dikenal dengan istilah Information and
Communication Technologies (ICT), adalah payung
besar terminologi yang mencakup seluruh peralatan
teknis untuk memproses dan menyampaikan informasi.
ICT mencakup dua aspek yaitu teknologi informasi dan
teknologi komunikasi. Teknologi informasi meliputi
segala hal yang berkaitan dengan proses, penggunaan
sebagai alat bantu, manipulasi, dan pengelolaan
informasi. Sedangkan teknologi komunikasi adalah
segala sesuatu yang berkaitan dengan penggunaan alat
bantu untuk memproses dan mentransfer data dari
perangkat yang satu ke perangkat lainnya. Oleh karena
itu, teknologi informasi dan teknologi komunikasi adalah
dua buah konsep yang tidak terpisahkan. Jadi Teknologi
Informasi dan Komunikasi mengandung pengertian luas
yaitu segala kegiatan yang terkait dengan pemrosesan,
manipulasi, pengelolaan, pemindahan informasi antar
media. Istilah ICT muncul setelah adanya perpaduan
antara teknologi komputer (baik perangkat keras maupun
perangkat lunak) dengan teknologi komunikasi pada
pertengahan abad ke-20. Perpaduan kedua teknologi
tersebut berkembang sangat pesat melampaui bidang
teknologi lainnya. Hingga awal abad ke-21 ICT masih
terus mengalami berbagai perubahan dan belum terlihat
titik jenuhnya. Pengolahan informasi dan
pendistribusiannya melalui jaringan telekomunikasi
membuka banyak peluang untuk dimanfaatkan di
berbagai bidang kehidupan manusia, termasuk salah
satunya pada bidang bisnis dan pelayanan masyarakat.

III.PENTINGNYA PELAYANAN PRIMA
Persaingan pelayanan terhadap pelanggan semakin
ketat, unit-unit pelayanan perusahaan yang dahulu hanya
205
terkesan memberikan pelayanan dengan seadanya, kini
dituntut mampu memberikan pelayanan yang prima
kepada pelanggan. Unit layanan yang mampu melayani
kebutuhan dan keinginan pelanggan dengan prima yang
memiliki daya saing untuk mampu berbicara dalam
bisnis jasa. Hal tersebut dijadikan tolok ukur untuk
meningkatkan kepercayaan pelanggan kepada
perusahaan dalam hal layanan pelanggan. Suatu kualitas
pelayanan merupakan kualitas yang harus dihubungkan
dengan harapan pelanggan dan memuaskan pelanggan,
dengan kata lain adalah sangat penting mendengarkan
suara pelanggan kemudian membantunya untuk
memformulasikan kebutuhannya.
Dalam perkembangan dunia saat kini dikenal istilah
pelayanan prima (service excellence). Definisi pelayanan
prima mengandung tiga hal pokok, yaitu adanya
pendekatan sikap yang berkaitan dengan kepedulian
kepada pelanggan, upaya melayani dengan tindakan yang
terbaik dan ada tujuan untuk memuaskan pelanggan
dengan berorientasi pada standar layanan tertentu. Untuk
mencapai suatu pelayanan yang prima pihak perusahaan
haruslah memiliki keterampilan tertentu, diantaranya
berpenampilan baik dan rapi, bersikap ramah,
memperlihatkan gairah kerja dan sikap selalu siap untuk
melayani, tenang dalam bekerja, tidak tinggi hati karena
merasa dibutuhkan, menguasai pekerjaannya baik tugas
yang berkaitan pada bagian atau departemennya maupun
bagian lainnya, mampu berkomunikasi dengan baik,
mampu mengerti dan memahami bahasa isyarat (gesture)
pelanggan serta memiliki kemampuan menangani
keluhan pelanggan secara profesional. Dengan demikian
dapat dilihat bahwa untuk memberikan sebuah pelayanan
yang prima kepada pelanggan bukanlah pekerjaan yang
mudah. Tetapi bila beberapa hal yang tersebut di atas
dapat dilakukan, maka perusahaan yang bersangkutan
akan dapat meraih manfaat yang besar, terutama berupa
kepuasan dan loyalitas pelanggan yang besar.
Pelayanan prima adalah layanan yang memberikan
kepuasan pelanggan. Hal in sesuai dengan Keputusan
Menteri Negara Pendayagunaan Aparatur Negara
(MenPAN) Nomor 81/1995. Dalam keputusan ini
dijelaskan sendi-sendi pelayanan prima yaitu:
1. Kesederhanaan, dalam arti bahwa prosedur / tatacara
pelayanan diselenggarakan secara mudah, lancar,
cepat, tidak berbelit-belit, mudah dipahami dan
mudah dilaksanakan
2. Kejelasan dan kepastian, dalam arti adanya kejelasan
dan kepastian mengenai
a. prosedur/ tatacara pelayanan umum
b. persyaratan pelayanan umum, baik teknik maupun
administrative
c. unit kerja dan/ atau pejabat yang berwenang
bertanggung jawab dalam memberikan pelayanan
umum
d. rincian biaya/ tarif pelayanan umum dan tatacara
pembayarannya
e. jadwal waktu penyelesaian pelayanan umum
f. hak dan kewajiban baik dari pemberi maupun
penerima pelayanan umum berdasarkan
berdasarkan bukti-bukti penerimaan dan
permohonan / kelengkapannya sebagai alat untuk
memastikan pemrosesan pelayanan umum
g. pejabat yang menerima keluhan masyarakat
3. Keamanan, dalam arti bahwa proses serta hasil
pelayanan umum dapat memberikan keamanan dan
kenyamanan serta dapat memberikan kepastian
hukum
4. Keterbukaan, dalam arti prosedur/tatacara,
persyaratan, satuan kerja/pejabat penganggung jawab
pemberi pelayanan umum, waktu penyelesaian dan
rincian biaya/tariff dan hal-hal lain yang berkaitan
dengan proses pelayanan umum wajib diinformasikan
secara terbuka agar mudah diketahui dan dipahami
oleh masyarakat, baik diminta maupun tidak diminta
5. Efisiensi, dalam arti:
a. persyaratan pelayanan umum hanya dibatasi pada
hal-hal yang berkaitan langsung dengan
pencapaian sasaran pelayanan dengan tetap
memperhatikan keterpaduan antara persyaratan
dengan produk pelayanan umum yang diberikan
b. dicetak adanya pengulangan pemenuhan
kelengkapan persyaratan dalam hal proses
pelayanannya mempersyaratkan kelengkapan
persyaratan dari satuan kerja atau instansi
pemerintah lain yang terkait
6. Ekonomis, dalam arti pengenaan biaya pelayanan
umum harus ditetapkan secara wajar dengan
memperhatikan:
a. nilai barang dan atau jasa pelayanan umum dan
tidak menuntut biaya yang tinggi diluar kewajaran
b. kondisi dan kemampuan masyarakat untuk
membayar secara umum
c. ketentuan peraturan perundang-undangan yang
berlaku
7. Keadilan yang merata, dalam arti cakupan/jangkauan
pelayanan umum harus diusahakan seluas mungkin
dengan distribusi yang merata dan diperlukan secara
adil
8. Ketepatan waktu, dalam arti pelaksanaan pelayanan
umum dapat diselesaikan dalam kurun waktu yang
telah ditentukan.

IV.PEMILIHAN ICT SESUAI KEBUTUHAN
ORGANISASI
Organisasi harus dapat menentukan solusi ICT yang
tepat untuk proses kerja yang akan diotomasi. Analisis
terhadap kebutuhan ICT perlu dilakukan terlebih dulu
sebelum dilakukan pengadaannya. Hal ini berguna untuk
membantu organisasi meminimalkan harga perolehan
dan implementasinya, dan memastikan bahwa solusi ICT
tersebut dapat membantu proses kerja dalam mencapai
tujuan yang telah ditetapkan sebelumnya. Berikut ini
beberapa tahapan yang seharusnya dilakukan sebelum
melakukan pengadaan solusi ICT,
206
1). Mengumpulkan rincian kebutuhan dan persyaratan
akan otomasi proses kerja
Tahapan ini merupakan tahapan awal yang sangat
menentukan untuk memastikan apakah solusi ICT atas
proses kerja yang akan diotomasi berguna dan apakah
solusi tersebut akan membuat proses kerja tersebut
menjadi lebih efisien. Masalah yang sering dihadapi
adalah manajemen dan staf yang terkait dengan proses
kerja yang akan dikomputerisasi tidak bisa menyatakan
dengan jelas dan cukup detil tentang kebutuhannya
dalam otomasi proses kerjanya. Di sisi lain, tim yang
bertugas mengumpulkan rincian kebutuhan kurang
berpengalaman dalam menggunakan berbagai macam
teknik berkomunikasi yang efektif untuk menggali
kebutuhan apa yang diinginkan dari manajemen dan
pengguna terkait. Selain menggali kebutuhan pengguna,
persyaratan dari peraturan yang berhubungan dengan
proses kerja yang akan dikomputerisasi juga harus
dikumpulkan dan dipelajari. Hal ini berguna untuk
menentukan apakah solusi ICT yang ditawarkan dapat
memenuhi semua persyaratan tersebut. Pada tahap ini,
harus dilakukan juga usaha untuk memahami dan
mengumpulkan apa saja risiko yang berpotensi
mengganggu proses kerja dalam mencapai tujuannya.
Informasi kebutuhan yang cukup jelas dan rinci dapat
digunakan untuk membandingkan dengan fitur dan
fasilitas yang dimiliki oleh berbagai macam pilihan
solusi komputerisasi yang ada dalam proses pemilihan
solusi yang akan diimplementasikan.

2). Mengumpulkan informasi tentang semua solusi
otomasi yang ada
Pada tahap ini organisasi harus berusaha mencari
informasi sebanyak banyaknya semua pilihan solusi
otomasi yang tersedia di pasar. Pencarian informasi bisa
dilakukan melalui internet, media massa, perusahaan
sejenis dan lainnya. Setelah diketahui solusi otomasi apa
saja yang tersedia, organisasi harus mencari informasi
perusahaan mana yang bisa menyediakan solusi otomasi
tersebut. Organisasi harus memahami mekanisme
penjualan solusi otomasi tersebut dengan teliti. Untuk
solusi otomasi berupa komputer, biasanya perusahaan
pembuat komputer tersebut memiliki jaringan distribusi
di mana sudah terdapat perusahaan-perusahaan yang
resmi ditunjuk untuk melakukan penjualan. Untuk solusi
otomasi berupa software aplikasi proses kerja, biasanya
dibutuhkan kastemisasi/modifikasi software aplikasi
tersebut untuk disesuaikan dengan proses kerja yang
akan diotomasi sampai pada tingkat dimana software
tersebut benar-benar dapat menyesuaikan dirinya.
Perusahaan pembuat software aplikasi tersebut biasanya
memiliki jaringan perusahaan yang resmi ditunjuk untuk
melakukan implementasi termasuk melakukan
kastemisasi dan modifikasi. Dalam upaya mencari solusi
yang tepat untuk komputerisasi proses kerja, suatu
organisasi dapat mengirimkan surat kepada perusahaan-
perusahaan penyedia software aplikasi tersebut di atas
untuk melakukan presentasi dan demo serta memberikan
dokumen-dokumen informasi pendukungtentang solusi
otomasi yang dimiliki dan informasi tentang perusahaan
itu sendiri. Organisasi tersebut tidak perlu segan untuk
menggali dan memahami informasi tentang solusi
otomasi tersebut sampai benar-benar dipahami, misalnya
dengan cara meminta waktu untuk berdiskusi, presentasi
dan demo beberapa kali. Organisasi tersebut dapat
meminta kepada perusahaan tersebut agar meminjamkan
solusi otomasi tersebut dalam waktu beberapa hari untuk
digunakan oleh staf dan manajemen terkait sekaligus
sebagai usaha untuk uji coba. Organisasi tersebut dapat
juga meminta daftar perusahaan dan instansi pemerintah
yang sudah menggunakan solusi otomasi tersebut lalu
mencoba untuk berkomunikasi dengan mereka.
Komunikasi tersebut akan lebih menggambarkan situasi
apa adanya jika organisasi tersebut dapat berhubungan
dengan perusahaan yang telah menggunakan solusi
otomasi tersebut tanpa melalui perusahaan
pemilik/penjual solusi otomasi tersebut. Organisasi
tersebut sebaiknya melakukan perencanaan yang matang
dalam melakukan pengumpulan informasi terutama
dalam menentukan jenis informasi apa yang dibutuhkan.
Selama melakukan pengumpulan informasi, organisasi
tersebut dapat menambahkan jenis informasi baru yang
sebelumnya tidak terpikir untuk dikumpulkan

3). Analisis kelayakan solusi
Setelah mendapatkan informasi yang menyeluruh,
organisasi tersebut dapat mulai melakukan usaha untuk
membandingkan kebutuhan dan persyaratan yang
diinginkan dengan apa yang dimiliki oleh setiap solusi
otomasi terkait yang ada di pasar. Agar hasil penilaian
terhadap satu solusi otomasi dapat dibandingkan dengan
solusi otomasi yang lain, organisasi tersebut harus
mengembangkan terlebih dahulu mekanisme penilaian
yang dapat meliputi berbagai hal yang akan dinilai, baik
kriteria penilaiannya maupun bobot penilaiannya. Sangat
disarankan agar mekanisme penilaian tersebut sudah
disepakati sebelum dilakukan penilaian terhadap setiap
solusi otomasi yang ada. Hal ini untuk mencegah
penilaian yang tidak konsisten dan tidak fair yang justru
akan membuat organisasi tersebut salah memilih solusi
otomasi yang paling tepat. Selain kesesuaian dengan
kebutuhan dan persyaratan, organisasi tersebut juga
harus mempertimbangkan aspek biaya, manfaat, dan
resiko pada setiap solusi otomasi yang ada.

4). Mengevaluasi vendor
Setelah menentukan solusi otomasi yang paling tepat,
langkah berikutnya adalah mengevaluasi kualitas setiap
pemasok/vendor penjual solusi otomasi tersebut yang
meliputi berbagai aspek seperti kemampuan
keuangannya, pelanggannya, dan kualitas layanan purna
jualnya.


207
5). Kepemilikan atas source code
Untuk unsur solusi otomasi yang berupa software
aplikasi, organisasi harus memastikan apakah vendor
yang bersangkutan benar-benar pemilik software tersebut
atau hanya penjual saja. Jika vendor tersebut hanya
berstatus penjual, biasanya pemilik sebenarnya adalah
perusahaan yang berlokasi di luar negeri. Jika software
aplikasi tersebut dimiliki oleh perusahaan di luar negeri,
maka organisasi tersebut tidak dapat bernegosiasi untuk
mendapatkan hak kepemilikan atas source code software
aplikasi tersebut. Hal tersebut menimbulkan konsekuensi
ketergantungan yang tinggi yang berujung pada
ketidakberdayaan organisasi tersebut terhadap harga
yang diberlakukan untuk software aplikasi versi barunya.
Jika software aplikasi yang terpilih sebagai bagian dari
solusi otomasi itu dimiliki langsung oleh perusahaan
yang ada di dalam negeri, maka organisasi tersebut
memiliki kesempatan untuk bernegosiasi mendapatkan
hak kepemilikan atas source code software aplikasi
tersebut. Ketergantungan organisasi pada source code
sangat besar. Jika hak kepemilikan source code ada pada
vendor dan ternyata vendor tersebut bubar dikemudian
hari maka organisasi tersebut tidak dapat melakukan
modifikasi software aplikasi apabila suatu ketika
diperlukan untuk mengikuti perkembangan usaha.
Padahal hampir bisa dipastikan bahwa setiap organisasi
selalu mempunyai kebutuhan baru yang mengakibatkan
software aplikasi yang ada harus dimodifikasi. Pada sisi
lain, vendor memiliki kecenderungan untuk tidak mau
menjual hak kepemilikan atas source code software
aplikasi terutama bila software aplikasi tersebut dapat
dijual ke organisasi/perusahaan lain yang sejenis. Jalan
tengah untuk mengatasi situasi ini adalah dengan
membuat klausul di kontrak yang mengatur bahwa jika
vendor bubar maka secara otomatis kepemilikan atas
source code tersebut beralih kepada organisasi yang
membelinya. Selama vendor masih beroperasi, maka
source code terakhir yaitu yang digunakan untuk
diterjemahkan ke bahasa mesin dan akhirnya di-install di
komputer organisasi yang membelinya, harus disimpan
di pihak ketiga. Organisasi harus mensyaratkan
kesediaan vendor untuk mau mengikatkan diri dan
mematuhi aturan tentang hak kepemilikan source code
dan pengalihannya tersebut yang sering disebut dengan
istilah escrow account.
Dengan beberapa pertimbangan indikator di atas,
sehingga suatu organisasi dapat melakukan keputusan
yang tepat terhadap pemilihan menggunakan perangkat
ICT di dalam membantu proses bisnis organisasinya
untuk melaksanakan beberapa indikator pelayanan prima
tersebut. Implementasi ICT harus mampu untuk
mengkoordinasikan aliran informasi antara mesin-mesin,
pengendali-pengendali, sistem persediaan, dan
komponen-komponen lain, dari sistem produksi yang
dapat membuat informasi lebih dapat diakses pada
bagian lain dalam suatu organisasi, dengan cepat dan
akurasi yang semakin meningkat serta diikuti dengan
menurunnya biaya serta mempermudah keseluruhan
proses dari awal hingga akhir.

V. KESIMPULAN
Upaya terus menerus dilaksanakan agar suatu
organisasi mampu memenangkan persaingan atau
mempertahankan keunggulan komparatif maupun
keunggulan kompetititif atas kompetitor-kompetitornya.
Suatu kualitas pelayanan prima perlu terus
dikembangkan perusahaan untuk tetap memuaskan dan
mempertahankan loyalitas pelanggannya. Pemilihan
perangkat ICT yang baik dan tepat akan membawa
dampak positif terhadap tata kelola dan proses bisnis
organisasi sehingga menjadi lebih efisien dan efektif
serta akan dapat memberikan suatu bentuk pelayanan
prima kepada pelanggannya.

REFERENSI
[1] Berman, Mark, et al., ―Commerce Solutions for
Digital Nervous System Enabled Enterprises–
Things to consider when building Commerce
Solutions with Microsoft technologies‖, 1999.
[2] Laudon, C. Kenneth dan Jane P. Laudon,
“Essentials of Management Information Systems
– Transforming Business and Management”, 3
rd

ed.,1999.
[3] Muhammad Irwan Padli Nasution, ―Kebijakan
Green ICT Menambah Keunggulan Kompetitif
Organisasi‖, IQRA‘ Jurnal Perpustakaan dan
Informasi; ISSN:977 1979773141; Vol.04,No.02,;
hal.33 - 39, Oktober 2010.
[4] Retno Prasetyorini, ―Pelayanan Prima‖,
Guruvalah Inc, Temanggung

208
Strategi Green ICT untuk Sustainable Organisasi

Muhammad Irwan Padli Nasution
#1,
Dedy Irwan
#2
#1
Dosen IAIN Sumatera Utara Medan
#2
Dosen Teknik Informatika STT Harapan Medan, Mahasiswa S2 T. Informatika USU

Abstrak — Dalam melangsungkan hidup suatu organisasi
akan selalu dipengaruhi oleh lingkungan eksternal maupun
internal. Untuk tetap dapat unggul dan mendapatkan profit,
suatu organisasi haruslah secara efektif dan efisien dalam
penggunaan sumber daya yang ada. Saat kini pemanfaatan
teknologi informasi dan komunikasi atau biasa disebut
dengan istilah ICT sangat besar perannya untuk
mendukung keberhasilan suatu organisasi. Selanjutnya
sustainability (keberlanjutan) adalah tujuan akhir yang
harus dicapai oleh semua organisasi.
Kata kunci — Green ICT, Sustainability

I. PENDAHULUAN
Perkembangan ICT yang telah memicu
globalisasi adalah merupakan satu faktor diantara
perubahan lingkungan eksternal yang telah membawa
dampak sangat signifikan di dalam bisnis dan perilaku
serta budaya masyarakat saat kini. Sedemikian besar
perubahan tadi sehingga diperlukan paradigma baru
untuk dapat bersaing dalam lingkungan bisnis yang baru.
Dalam kaitan ini penerapan ICT untuk bisnis diharapkan
dapat memberikan kontribusinya secara nyata. Seiring
dengan pertumbuhan dan perkembangan ICT ternyata
telah membawa dampak terhadap lingkungan dan global
warming. Kebutuhan terhadap perangkat ICT telah
membawa dampak pada lingkungan terutama perangkat
ICT tersebut harus mengkonsumsi energi listrik.
Demikian halnya dengan perangkat yang lama dan tidak
dapat digunakan lagi akan menjadi sampah ICT. Masalah
lingkungan harus menjadi kesadaran termasuk dalam
dunia ICT.
Pengaplikasian konsep Green ICT tersebar luas
di berbagai proses bisnis. Intinya, pengusaha atau
siapapun yang terkait dengan bidang ICT diharapkan
dapat melakukan efisiensi untuk mendukung pelestarian
lingkungan di sekitarnya. Namun sebenarnya, lebih dari
itu, efisiensi ICT yang ramah lingkungan ternyata dapat
membantu organisasi dimanapun untuk juga menikmati
efisiensi biaya yang luar biasa. Selama ini sektor ICT
menjadi penyumbang 2-3 persen dari emisi karbon dunia.
Akan tetapi walaupun memiliki kontribusi terhadap emisi
karbon, sebenarnya ICT juga memiliki potensi untuk
mengurangi emisi karbon. ICT dapat mengurangi emisi
karbon dunia hingga mencapai 20 persen.
Menata suatu organisasi sangatlah vital. Dengan
demikian perubahan dalam strategi bisnis biasanya
didahului dengan adaptasi struktural, mengacu kepada
teori-teori utama, dengan strategi akan menyebabkan
penyusunan kembali proses manajemen perusahaan.
Suatu organisasi bisnis untuk mampu berkompetisi dan
bahkan unggul dalam kompetisi, harus mengadakan
suatu perubahan. Perubahan lingkungan bisnis yang
cepat memerlukan fleksibilitas organisasi dalam
menangani perubahan tadi. Akan tetapi perubahan ini
tidak harus dilakukan secara radikal, namun dapat
dilakukan secara bertahap tergantung kebutuhannya
dengan mempertimbangkan segala situasi dan
kondisinya. Penerapan salah satu strategi bisnis baru
akan berpengaruh pada keseluruhan lingkungan bisnis.
Sedangkan muara dari munculnya berbagai strategi
bisnis baru ini adalah berkaitan dengan pertanyaan
―bagaimana perusahaan memenangkan persaingan di era
bisnis global saat ini?‖ Selanjutnya sustainability
(keberlanjutan) adalah tujuan akhir yang harus dicapai
oleh semua organisasi. Tujuan akhir tersebut diantaranya
adalah menyeimbangkan antara kinerja ekonomi,
kesejahteraan sosial (well-being), dan peremajaan serta
pelestarian lingkungan hidup.
Meskipun semakin pentingnya Green ICT, akan
tetapi jelas bahwa
pemimpin organisasi tidak akan mengadopsi strategi ini
untuk keberlanjutan organisasi tanpa alasan yang padat,
adanya pengukuran yang akurat, peraturan dan alasan
kuat untuk melakukannya.


II. GREEN ICT
Pertumbuhan kepadatan penduduk dan tingkat
percepatan bisnis membutuhkan kebutuhan energi yang
cukup banyak. Akan tetapi sumber-sumber energi di
bumi adalah terbatas. Untuk itu sangat diperlukan cara
yang efektif dan efisien dalam penggunaanya.
Saat kini sumber daya informasi telah menjadi
alat bagi manajemen untuk secara efisien dan efektif
mencapai tujuannya, sehingga dalam era sekarang ini
peran penting ICT telah diakui sedemikian diperlukan.
Green ICT adalah sebuah konsep yang
umumnya dikaitkan dengan upaya mengurangi konsumsi
energi dan sumber daya alam lainnya, disamping emisi
dan sampah yang dihasilkan dari kegiatan di bidang
teknologi informasi dan komunikasi. Pengaplikasian
konsep Green ICT tersebar luas di berbagai proses bisnis.
Intinya, pengusaha atau siapapun yang terkait dengan
bidang ICT diharapkan dapat melakukan efisiensi untuk
mendukung pelestarian lingkungan di sekitarnya.
Misalnya, kecanggihan layanan internet yang
mendukung penggunaan electronic mail (e-mail) untuk
berkomunikasi dengan kolega bisnis dan transmisi data
dengan cepat ikut mengampanyekan pengurangan
penggunaan kertas, yang berarti akan semakin sedikit
209
pohon yang akan ditebang. Dengan berkurangnya
penebangan pohon, sekali lagi kita akan menikmati emisi
karbon yang rendah. Efisiensi ramah lingkungan di
sekitar bidang ICT termasuk menerapkan telekonferensi
yang dapat mengurangi biaya perjalanan, dan
berdampak pada penurunan emisi karbon, namun tetap
mampu meningkatkan produktivitas usaha.
Namun sebenarnya, lebih dari itu, efisiensi ICT
yang ramah lingkungan ternyata dapat membantu
organisasi dimanapun untuk juga menikmati efisiensi
biaya yang luar biasa. Selama ini sektor ICT
menyumbang 2-3 persen dari emisi karbon dunia. Akan
tetapi walaupun memiliki kontribusi terhadap emisi
karbon, sebenarnya ICT juga memiliki potensi untuk
mengurangi emisi karbon. ICT bisa mengurangi emisi
karbon dunia hingga mencapai 20 persen.

III. SUSTAINABILITY
Menurut John Elkington, sustainability
(keberlanjutan) adalah keseimbangan antara people-
planet-profit, yang dikenal dengan konsep Triple Bottom
Line (TBL). Sustainability terletak pada pertemuan
antara tiga aspek, people-sosial; planet-environment; dan
profit-economic. Sehingga menurut Elkington, perusahan
harus bertanggung jawab atas dampak positif maupun
negatif yang ditimbulkan terhadap aspek ekonomi, sosial
dan lingkungan hidup. Selanjutnya terdapat dua jenis
keberlanjutan menurut Dunphy et al., yakni ecological
sustainability, human sustainability (keberlanjutan
manusia). Keberlanjutan ekologi mencakup disain
organisasi yang dapat memberikan kontribusi kepada
sustainable economic development (pembangunan
ekonomi yang berkelanjutan), perlindungan terhadap
lingkungan hidup, dan pembaharuan biosphere (biosfir =
permukaan bumi dan atmosfir yang ditinggali mahluk
hidup). Keberlanjutan manusia adalah meningkatkan
kemampuan dan keahlian manusia untuk kinerja
perusahaan yang tinggi dan berkelanjutan serta untuk
kesejahteraan sosial (well-being) dan ekonomi
masyarakat dan keberlanjutan ekologi. Sebuah organisasi
yang berkelanjutan berarti organisasi yang menjalankan
kegiatan dengan memahami kebutuhan dan kepentingan
pihak lain (kelompok masyarakat, lembaga pendidikan
dan agama, pekerja, dan masyarakat umum), serta
meningkatkan jaringan kerjasama yang mempersatukan
mereka semua.
Dari beberapa definisi tersebut dapat diketahui
bahwa aspek yang harus tercapai dalam keberlanjutan
adalah kesejahteraan ekonomi, sosial, dan pelestarian
serta peremajaan lingkungan hidup. Dengan tercapainya
sustainability berarti generasi mendatang minimal akan
mendapat kesempatan yang sama untuk memanfaatkan
sumber daya yang ada seperti saat kini. Akan lebih baik
lagi jika dapat mempunyai kesempatan yang lebih besar
dibandingkan sekarang. Hal ini akan tercapai jika sumber
daya alam masih cukup tersedia atau idealnya bertambah.
Menurut Gregory C. Unruh, sustainability harus
merupakan tujuan akhir perusahaan. Menurutnya melalui
kegiatan daur ulang, perusahaan dapat menyelamatkan
biosfir. Unruh mengusulkan empat langkah yang harus
diambil oleh perusahaan untuk mencapai sustainability,
yaitu:
a. Gunakan bahan baku lebih sedikit
b. Disain kembali produk anda
c. Perhatikan skala ekonomi
d. Pelihara relasi pembeli-pemasok
Dalam hal akan kebutuhan perangkat ICT dan
operasionalnya perangkat ICT yang digunakan organisasi
perlu digunakan secara efektif dan efisien. Di Indonesia,
pemerintah sampai saat ini belum ada menetapkan
bagaimana bentuk atau standar Green ICT tersebut.
Berbeda halnya dengan beberapa negara yang sudah
maju, mereka sudah sangat peduli terhadap pelestarian
lingkungannya. Berikut ini adalah beberapa contoh
kebijakan Green ICT yang dapat diterapkan pada suatu
organisasi bisnis:
1. Untuk PCs dan Laptops:
a. Non aktifkan program screensavers yang
aktif; penggunaan screensavers
memerlukan energi yang sama besar seperti
penggunaan layar penuh. Sehingga
walaupun tidak sedang bekerja, akan tetapi
jika screensavers berjalan, maka konsumsi
sumber daya listrik besarnya adalah sama.
b. Switch monitors ke mode standby after 5
minutes of inactivity (tanpa ada
screensaver yang aktif); ini mencegah
banyak konsumsi daya listrik yang terbuang
karena komputer tidak digunakan.
c. Selalu menggunakan CPUs dengan
menggunakan daya listrik yang lebih
rendah. Jika memungkinkan dikonversikan
dari penggunaan arus AC menjadi arus DC.
d. Recycle Toners dan Paper; semua toner dan
penggunaan kertas diupayakan harus dapat
digunakan kembali.
e. Shut down PCs after office hours; semua
komputer dan peralatannya harus dimatikan
atau dalam keadaan off ketika pulang kerja.
f. Enable active power management on
desktops (standby / hibernate after a
defined period of inactivity); manfaatkan
fasilitas atau fitur dari sistem operasi untuk
pengaturan penggunaan sumber daya listrik.
g. Ensure re-use of equipment that is no
longer required but is still serviceable. If
re-use is not possible recycle or ensure
green disposal; beberapa komponen dari
peralatan ICT ada yang tidak dapat
dipergunakan lagi akan tetapi jika masih
ada di antara beberapa komponen tersebut
masih layak untuk digunakan, maka harus
210
digunakan kembali. Hal ini akan
mengurangi sampah ICT.

2. Peralatan ICT lainnya
a. Apply timer switches to non-networked
technology and printers; ada beberapa
peralatan di jaringan komputer tidak harus
selalu dalam keadaan hidup sehingga dapat
di set dengan menggunakan suatu timer
untuk mengatur aktivitasnya.
b. Set default green printing including duplex
and grey scale by default; hal ini bertujuan
mengurangi jumlah cetakan sehingga
mengurangi banyaknya pemakaian kertas
dan konsumsi listrik.
c. Optimize power-saving sleep mode on
printer to reduce the sleep time in less
busier offices,; pada mesin printer di
aktifkan fasilitas ini. Sehingga jika tidak
ada aktivitas untuk mencetak, maka printer
seolah-olah pada posisi tidak off. Hal ini
diperlukan supaya dapat dihemat konsumsi
listrik dari mesin printer tersebut.
d. Printer consolidation; penggunaan printer
tidak selalu menjadi suatu kebutuhan paling
penting pada satu bagian atau divisi di
perusahaan, oleh sebab itu penggunaan
printer secara bersama-sama dapat
diimplementasikan, sehingga akan terjadi
penghematan hardware printer dan
penggunaan sumber daya listrik.
e. Device consolidation; penggunaan
peralatan komputer lainnya secara sharing
juga akan menurunkan pemakaian tempat
dan ruang serta energi listrik yang lebih
banyak.

3. Data Center
a. Server Optimisation; penggunaan
perangkat server dapat dioptimalkan
dengan cara mengintegrasikan hanya ke
dalam satu server saja semua aplikasi yang
digunakan. Dengan demikian tidak
dibutuhkan banyak server untuk setiap
aplikasi yang berbeda-beda tersebut.
b. Do not over specify system requirements
during procurement; setiap penambahan
perangkat ICT harus benar-benar
disesuaikan dengan kebutuhan organisasi.

Beberapa kebijakan di atas, apabila dilakukan
dengan baik dan benar maka akan membawa dampak
yang sangat signifikan terhadap organisasi. Akan terjadi
penghematan biaya dan energi yang sangat besar.
Dengan demikian pemanfaatan sumber daya terhadap
penggunaan peralatan ICT akan sangat efektif dan efisien.

IV. KESIMPULAN
Dalam menghadapi persaingan bisnis yang
semakin ketat dengan dipicu oleh semakin canggihnya
perkembangan peralatan ICT organisasi, pencarian dan
penerapan konsep dan strategi bisnis baru telah menjadi
sesuatu yang lazim harus dilakukan sehingga setiap
organisasi dapat terus tumbuh dan berkembang dengan
berkelanjutan.

DAFTAR PUSTAKA
[1] Berman, Mark, et al., Commerce Solutions for Digital Nervous
System Enabled Enterprises – Things to consider when building
Commerce Solutions with Microsoft technologies, 1999.
[2] Birkett, W.P. 1995. Management Accounting and Knowledge
Management., Management Accounting, November: 44-48.
[3] Currie, Wendy. 1995. A Comparative Analysis of Management
Accounting in Japan, USA/UK and West Germany; dalam Issues
in Management Accounting, Edited by David Ashton, Trevor
Hopper, and Robert W. Scapens. Second Edition, Prentice Hall
Incorporation: 321-346.
[4] Ferrara, William L., Cost Management Accounting; The 21st
Century Paradigm. Management Accounting, December: 30-31.,
1995.
[5] GESCI, Founded by the UN ICT Task Force. Green ICT Guide,
Global e-Schools and Communities Initiative, November 2010.
[6] Indriantoro, Nur. Sistem Informasi Strategik: Dampak Teknologi
Informasi Terhadap Organisasi dan Keunggulan Kompetitif.
KOMPAK No. 9, Pebruari: 12-27., 1996.
[7] Laudon, C. Kenneth dan Jane P. Laudon, Essentials of
Management Information Systems – Transforming Business and
Management, 3
rd
ed.,1999.
[8] Rosen, M., Krichevsky, T., & Sharma, H. (2009).Architecture
for the Sustainable Enterprise. Arlington, MA: Cutter
Consortium.
[9] Shank, John K., and Vijay Govindarajan. 1992. Strategic Cost
Analysis of Technological Investments. Sloan Management
Review (Fall): 39-51.
[10] Yetton, Philip W., Kim D. Johnston, and Jane F. Craig. 1994.
Computer-Aided Architects: A Case Study of IT and Strategic
Change. Sloan Management Review (Summer): 57-67.

211
Teknologi Informasi dan Elektronika
Aspek Sumber Daya Manusia (SDM )

Nurul Hamdi, ST.
Mahasiswa Magister Teknik Informatika USU Medan

Abstrak--Pada makalah ini dibahas secara garis besar
tentang Informatika sebagai ilmu, profesi serta kualifikasi
SDM untuk bidang Informatika serta pendidikan yang
menunjang ketersediaan SDM yang berkualifikasi di
bidang Informatika.
Kebutuhan akan manusia yang berprofesi dan mempunyai
skill dibidang Informatika semakin bertambah dengan
berkembangnya era industri dan globalisasi informasi.
Dalam era tersebut, Informasi semakin berharga dan
penggunaan komputer untuk mendukung bidang yang lain
semakin banyak. Hal ini mengakibatkan Informasi
(pengolahan informasi dengan komputer) semakin
berkembang pula semakin hari.Jadi, Teknologi Informasi
merupakan ilmu yang relatif baru, dan berkembang sejalan
dengan berkembangnya era industri dan globalisasi
informasi tersebut.
Informatika yang semakin berkembang sebagai ilmu
maupun sebagai cakupan dalam membantu bidang lain,
menyebabkan perkembangan kebutuhan akan spesialisasi
yang akhirnya melahirkan kebutuhan akan tenaga
profesional untuk tingkat tertentu dalam bidang
Informatika. Tenaga profesional tersebut mungkin bekerja
dalam bidang Informatika murni (peneliti, pendidik, system
engineer, software system engineer, database administrator,
software quality assurance, dsb) atau dalam membantu
pemakai bidang lain yang memerlukan penyediaan
perangkat lunak sesuai dengan kebutuhan bidangnya
(operator, dsb).
Penyediaan SDM, yang berkualifikasi sesuai dengan
profesinya, akan didukung dengan adanya pendidikan yang
baik, Pendidikan yang baik didukung kurikulum maupun
pelaksanaan perkuliahan dan latihan yang baik. Pada
makalah ini akan dijelaskan arahan tentang berbagai
strata pendidikan Teknologi Informasi beserta
permasalahan yang mungkin muncul dalam pelaksanaan
pendidikan tersebut di Indonesia pada umumnya.

I.PENDAHULUAN
Dalam beberapa dekade ini telah terjadi pergeseran
dalam masyarakat, dari era pertanian menjadi era industri
dan era informasi.Pada era pertanian, manusia harus
berjuang dan tergantung kepada alam.Pada era industri,
manusia berusaha mengalahkan alam dan mendapatkan
efesiensi sehingga lahirlah mesin-mesin dan kemajuan
yang terfokus pada otomatisasi. Era informasi membawa
angin yang baru : barang yang justru tidak terwujud,
sehingga yang namanya informasi menjadi barang yang
paling berharga. Kemajuan di bidang informasi melaju,
mendukung adanya globalisasi.Informasi dengan cepat
berkembang dan bermakna serta berharga disebarkan ke
segala penjuru seolah "tanpa batas".

Perkembangan teknologi di bidang perangkat keras
komputer mendukung perkembangan globalisasi
informasi tersebut. Dari komputer yang tadinya
merupakan komputer milik segelintir pemakai dengan
kemesteriusannya (besar, sulit dioperasikan, dalam ruang
khusus, perlu operator, dll) menjadi komputer yang
semakin hari semakin kecil bahkan menjadi komputer
pribadi, yang dapat diletakkan bersama barang lain
dengan cara yang nyaman, bahkan bisa "berbicara"
(mengeluarkan suara). Hal ini mengakibatkan komputer
semakin digunakan diberbagai bidang. Bahkan saat ini,
hampir semua tawaran lowongan pekerjaan di bidang
apapun di beberapa tingkatan pekerjaan
memasyarakatkan penguasaan akan komputer (computer
literate).

Perkembangan perangkat keras selanjutnya
membentuk jaringan komputer berkat kemajuan
teknologi komunikasi. Komputer yang tadinya "sendiri-
sendiri" menjadi komputer yang dapat berkomunikasi
dengan "teman-temannya" dalam suatu jaringan
komputer, mulai jaringan lokal yang sering disebut
dengan local area network atau LAN, dan Wide Area
Network atau WAN. Internet makin mendukung
perkembangan tersebut dan rasanya saat ini semua
manusia, asalkan mau memulai membuka komunikasi
akan mempunyai cakrawala yang luas untuk dapat
berkomunikasi dengan siapa saja di segala penjuru dunia
sesuai dengan topik yang diminati bersama, bahkan
untuk saling membagi pengalaman, problem, dan
kegembiraan, dsb.

Perkembangan teknologi perangkat lunak juga tidak
kalah pesatnya.Perangkat lunak yang tadinya hanya
difokuskan untuk memenuhi kebutuhan
fungsional.Berkembang menjadi perangkat lunak yang
selain fungsional juga mudah dan nyaman dipakai
(friendly).Akibatnya, pengguna perangkat lunak semkain
banyak dan ukuran komplektisitas perangkat lunak juga
bertambah.Perangkat lunak yang semakin mudah untuk
digunakan pemakai, sebenarnya makin sulit
dikembangkan.Perangkat lunak yang hanya dituntut
berfungsi secara fungsional dalam skala kecil cukup
dikembangkan oleh pemrogram sekaligus pemakainya.
Perangkat lunak yang besar dan kompleks harus
212
dikembangkan oleh suatu tim dengan berbagai keahlian
serta metodelogi tertentu.

Batasan antara perangkat lunak dan perangkat keras
menjadi semakin kabur.Misalnya jaringan komputer,
yang tidak mungkin berfungsi tanpa adanya perangkat
lunak jaringan komputer.Karena alasan efisiensi,
kepraktisan dan keamanan, perangkat lunak banyak yang
diwujudkan menjadi komponen perangkat keras.

Penggunaan sistem komputer (perangkat keras dan
perangkat lunak) yang semakin berkembang
menunjukkan bahwa kita memang berada pada era
informasi dan sesuai dengan hukum "supply and
demand", dibutuhkan penyedia jasa informatika sebagai
pengelola, pengolah dan pemelihara informasi karena
pengguna informatika yang semakin banyak.

II. INFORMATIKA SEBAGAI ILMU

Menurut kamus Oxford, Ilmu (science)
adalah :organized knowledge obtanied by observation
and testing of facts, about physical world, natural laws
and society.

Menurut kamus Webster adalah branch of knowledge
or study especially one concerned with establishing and
systematizing facts, principles and methods, as by
experiments and hypothesis.

Di Indonesia, beberapa kalangan membedakan antara
ilmu murni dan ilmu terapan, sehingga ada program studi
ilmu murni dan ilmu terapan.

Saat ini dibeberapa perguruan tinggi swasta
memasukkan program ilmu komputer ke dalam jurursan
teknik informatika yang ada dibawah fakultas teknologi
industri.



Yang menarik adalah bahwa Ilmu komputer dapat
ditinjau sebagai ilmu murni dan juga sekaligus ilmu
terapan. Memang di Indonesia satu kurikulum yang sama
untuk program studi ilmu komputer dan program studi
Informatika.

Ilmu Komputer merupakan ilmu murni dan juga ilmu
terapan, karena merupakan irisan dari banyak aspek :
1. Logika karena struktur komputer dan pemrograman
berdasarkan rangkaian logika.
2. Matematika diskrit, karena komputer mampu
menyelesaikan persoalan kombinatorik secara cepat.
3. Elektronika, mikro elektronika dan arsitektur
komputer, karena komputer diwujudkan sebagai
rangkaian elektronika atau gabungan dari chips.
4. Metodelogi Pemrograman, karena yang paling
mendasar dalam suatu sistem komputer adalah
program, mulai dari program skala kecil sampai
dengan skala besar.
5. Engineering (khususnya SW Engineering) karena
perangkat lunak, yang berangkat dari ilmu coba-
coba makin mencari bentuk menjadi engineering.
6. Komunikasi dan telekomunikasi bahkan telematika,
karena akhirnya komputer hanyalah suatu titik
dalam graph jaringan komputer.
7. Aspek kognitif dan komunikasi manusia, karena
penggunaanya tetap manusia dan perangkat keras
maupun perangkat lunak dibuat nyaman untuk
dipakai oleh manusia (aspek multimedia, human
computer interaction).

Saat ini, spesialisasi yang ada dalam bidang Ilmu
Komputer dan Informatika, meliputi Informatika teoritis,
Informatika dasar (pemrograman), Sistem (Sistem
Operasi, kompilator dan perangkat lunak sistem yang
lain), Sistem Informasi (SIM, DSS, EIS), Jaringan
Komputer, Basis Data, Intelejensi Buatan, Robotika,
Grafik dan citra, Perhitungan Numerik.

III. SUMBER DAYA MANUSIA DI BIDANG
INFORMATIKA

Sumber Daya Manusia adalah aset yang paling
penting dalam suatu perusahaan.Pembangunan negara
dan kemajuan IpTek tidak ada gunanya jika tanpa diikuti
dengan pembangunan SDM. Apa yang disebut dengan
pembangunan SDM ?tidak lain adalah penguasaan IpTek
itu sendiri. Tanpa SDM yang dibangun, maka manusia
akan dikuasai oleh IpTek atau manusia lain, yang
menguasai IpTek, dan bukannya manusia menguasai
IpTek serta menggunakannya dengan sebaik-baiknya.

Informatika adalah salah satu bentuk IpTek.
Indonesia saat ini sedang membangun dan kemajuan
IpTek dari negara lain juga sedang mempengarhui secara
deras perkembangan IpTek di Indonesia. Lalu, apakah
Indonesai sudah mulai melakukan pembangunan
terhadap SDM-nya ?apakah manusia Indonesia ingin
menguasai atau dikuasai IpTek ? hal ini harus kita
pikirkan bersama. Yang pasti semua manusia inginnya
dapat menguasai IpTek untuk dapat dimanfaatkan
dengan sebaik-baiknya.

Jika kita membahas mengenai perkembangan dalam
bidang Informatika beserta teknologinya dalam era
informasi saat ini, maka kita juga harus mulai berpikir
tentang pembangunan SDM Informatika yang
professional dibidangnya. Apa yang dimaksud dengan
professional ?

Profession menurut kamus Oxford adalah :paid
occuption, especially one that required education and
213
trainning. Sedangkan professional :person qualified or
employed in one of the profession.

Jadi, profesi adalah sesuatu yang kita lakukan
berdasarkan keahlian dan dari situ kita hidup/mencari
nafkah.Hobby adalah sesuatu yang kita lakukan untuk
mengisi waktu senggang, dan tujuannya adalah untuk
kesenangan. Seseoang yang profesional di bidangnya
akan melakukan pekerjaan itu sendiri dengan
kepakarannya.

Profesi Informatika sangat khas, menuntut logika
tinggi, dan juga etika tinggi (karena jenjang/tingkatan.
Dengan catatan, menurut saya, pengguna komputer pada
profesi yang "lain" seperti sekretaris, pegawai
administrasi, bahkan seorang insinyur sipil yang
menggunakan program komputer tidak dapat disebut
berprofesi di bidang Teknologi Informasi.

Berdasarkan hasil survey informatika dengan pihak
industri sebagai pemakai tenaga lulusan Informatika
manapun, serta hasil survey yang dilakukan oleh
beberapa kelompok, maka diperoleh informasi tentang
kebutuhan SDM oleh industri.

Pihak industri yang menjadi bahasan adalah industri
yang berkaitan dengan kegiatan pengembangan
Rekayasa Perangkat Lunak, yang dapat dikelompokkan
atas jenis sebagai berikut :
1. Industri jasa, yang produk utamanya bersifat "soft"
dalamhal ini dibedakan menjadi industri jasa sebagai
berikut :
a. SW developer, menyediakan jasa berupa
pengembangan perangkat lunak. Biasanya ini
menyangkut perusahaan yang mengembangkan
perangkat lunak mulai dari scracth (sesuai
pesanan) atau yang menyediakan jasa
pengubahan perangkat lunak tertentu supaya
dapat dipakai sesuai dengan kebutuhan
(tailoring, customization). Industri ini
membutuhkan SDM yang berlatar belakang
informatika.
b. Industri jasa yang memanfaatkan perangkat
lunak. Contohnya adalah PT.Telkom yang
produknya berupa jasa telekomunikasi
berbantuan komputer (perangkat lunak menjadi
bagian dari jasa tersebut).

2. Industri manufaktur, yaitu yang lebih
menyangkut"hardware"
a. Industri hardware yang memproduksi perangkat
keras komputer dan periperalnya. Industri ini
harus didukung oleh SDM di bidang perangkat
keras dan elektronika. Contoh nyata dari
industri ini adalah produktor dan perakit
komputer. Contoh lain adalah PT.Inti, industri
manufaktur yang produknya berupa peralatan
telekomunikasi (mencakup perangkat keras dan
perangkat lunak)
b. Industri pemroduksi "barang" yang dalam
proses produksinya membutuhkan perangkat
lunak. Contoh : industri manufaktur yang
memakai robot atau perangkat lunak untuk
optimasi penjadwalan produksi.



Sumber daya Manusia yang bekerja dalam dunia
industri saat ini mempunyai karakteristik sebagai berikut :
1. Latar belakang pendidikan non-
Informatika/Komputer
2. Jenjang Pendidikan Sarjana ke bawah
3. Belum ada pengelompokan untuk : ketrampilan,
keahlian dan spesialisasi yang terdefinisi dengan
jelas.
4. Untuk tingkatan tertentu, dituntut untuk dapat
mengetahui strategi bisnis, agar inovatif dalam
menciptakan produk-produk baru

Sedangkan pihak Industri menghendaki agar Sumber
Daya Manusia yang dihasilkan oleh Perguruan Tinggi
khsusnya dalam bidang Rekayasa Perangkat Lunak -
mempunyai karakteristik sebagai berikut :
1. Perlu mengetahui Standar Proses
Produksi, berikut pemantauan dan pemeliharaan
proses produksi, dan
2. Dalam menganalisis kebutuhan user
(semua perangkat lunak dikembangkan berdasarkan
kebutuhan user), diperlukan suatu pengetahuan dan
keahlian khsusus, karena tingkatan user di
Indonesia yang umumnya masih awam dengan
proses Rekayasa Perangkat Lunak menyebabkan
sulit diajak berkomunikasi tentang kebutuhan yang
perlu didukung oleh komputer.

Berdasarkan hal-hal tersebut, dapat disimpulkan juga
bahwa sudah saatnya dilakukan Sertifikasi Sumber daya
Manusia dalam bidang Rekayasa perangkat Lunak -
sesuai dengan standar Internasional yang berlaku. Untuk
itu, dalam rangka mendukung kebutuhan sertifikasi
Sumber Daya Manusia di Indonesia, disusun suatu
usulan tingkatan keahlian Sumber Daya Manusia
Informatika dalam bidang Rekayasa Perangkat Lunak
sebagai berikut :
1. Programmer
2. Programmer Analyst
3. Software Tester
4. Data Base Engineer
5. Data Communication Engineer
6. Network Engineer
7. Software Configuration Manager
8. System Analyst
9. Software Engineer
10. System Engineer
214
11. Software Project Manager
12. Software Quality Assurance

Tingkatan keahlian tersebut disusun mulai dari
tingkatan paling rendah hingga paling tinggi.Karena
masih berupa usulan, maka tingkatan tersebut masih
meungkin ditambah atau dikurangi tergantung kebutuhan
baru yang muncul.

Menurut saya, kebutuhan akan berbagai tenaga yang
khusus tersebut lahir karena dalam pengembangan
perangkat lunak yang sesuai Software Engineering, pada
setiap tahapan dalam siklus hidup perangkat lunak
(Software Life Cycle) akan dilibatkan banyak tahapan
dan dokumentasi. Untuk perangkat lunak yang berukuran
besar dan komplek akan semakin kompleks pula
pengelolaan proyek dan pemeliharaannya.

Untuk memenuhi kebutuhan akan tenaga dengan
tingkatan keahlian tersebut, harus ada tingkatan
pendidikan yang sesuai..

IV. PENDIDIKAN INFORMATIKA
Dengan mengacu kepada tingkat pengetahuan yang
dibutuhakn dan dengan melakukan analogi terhadap
bidang Engineering yang sudah lebih "tua" seperti
elektro, mesin, arsitektur dan sipil, maka bidang
Informatika pun membutuhkan insinyur serta teknisi
seperti bidang engineering tersebut. Dalam bidang
engineering yang lebih "tua" ini, pendidikan Sumber
Daya Manusia berpola pada Sumber Daya Manusia
Kejuruan, Teknisi (D3) dan Sarjana (S1, S2, S3).

Pada makalah ini saya mencoba untuk mengupas
masing-masing tingkat pendidikan dengan pola tersebut
untuk bidang Informatika.

PENDIDIKAN MENENGAH KEJURUAN
Di bidang elektronika mesin, sejak lama telah dikenal
STM/SMK yang membentuk tenaga praktis.Seharusnya
ini terjadi juga untuk bidang Informatika. Saat ini sudah
saatnya dibutuhkan STM/SMK Informatika yang dapat
diarahkan untuk menghasilkan tenaga terampil dalam
bidang :
1. Perangkat Keras (teknisi kerusakan, operator
komputer mesin besar, dan sebagainya)
2. Perangkat Lunak (operator atau pemakai perangkat
lunak, juru kode, dan sebagainya)
3. Jaringan Komputer (teknisi pemeliharaan jaringan
komputer)

Kurukulum untuk jenjang pendidikan ini tentunya
adalah dalam tingkatan pemakaian.Pemeliharaan dan
penanganan kerusakan, baik untuk Perangkat Lunak
maupun Perangkat Keras yang sederhana. Saat ini,
kebutuhan akan tenaga seperti itu baru dipenuhi oleh
kursus. Karena itu, pemerintah perlu untuk
memperhatikan perkembangan dan kurikulumnya.

PENDIDIKAN TEKNISI
Idealnya satu insinyur membawahi beberapa
teknisi.Yang ada saat ini di Indonesia, untuk tingkatan
pendidikan ini adalah pendidikan D1 yang mendidik
programmer dan D3 yang mencetak analis. Karena
ukuran program bertambah dengan 5 kali setiap tahun.,
maka definisi programmer dan analis perlu dikaji ulang.
Kurikulum Pendidikan Teknisi seharusnya dapat
menghasilkan tenaga terampil dalam bidang :
1. Perangkat Keras (pemeliharaan/pengelolaan
peralatan komunikasi atau data
communication technisian, teknisi peralatan jaringan
komputer, dan sebagainya)
2. Perangkat Lunak (juru kode program atau
programmer, koordinator dari pada pembuat
program atau programmer analyst,
pemeliharaan/pengelolaan basis data atau database
administrator, dan sebagainya)
3. Jaringan Komputer (pemeliharaan/pengelola
jaringan atau network administrator)

PENDIDIKAN TINGGI
Pendidikan tinggi dapat digolongkan menjadi S1, S2
dan S3. Untuk pendidikan S1 di Indonesia saat ini, telah
dikembangkan kurikulum baku bagi Program Pendidikan
Informatika atau Ilmu Komputer, dengan muatan
kurikulum yang sama.

STRATA 1 ( PROGRAM SARJANA )
Kurikulum S1 saat ini di Indonesia untuk Program
Studi Ilmu Komputer atau Informatika dirancang dengan
beban 144 sks dan komposisi sebagai berikut :
 Mata kuliah dasar umum 30 %
 Mata kuliah dasar keahlian 30 %
 Mata kuliah keahlian 34 %
 Kerja Praktek dan Tugas Akhir 6 %

Mata kuliah dasar keahlian dan mata kuliah keahlian
hanya mempu untuk membekali mahasiswa dengan
keahlian Informatika secara umum.Di antara mata kuliah
keahlian termasuk di dalamnya 15 % mata kuliah
pilihan.Mata kuliah pilihan sebenarnya menentukan
bidang spesialisasi mahasiswa yang ditekuninya dengan
mengerjakan Tugas Akhir dan Skripsi (bagi Perguruan
Tinggi yang masih memberlakukan adanya Skripsi).
Melihat kecilnya porsi dari mata kuliah pilihan, dapat
disimpulkan bahwa sebenarnya pendidikan S1
Informatika saat ini adalah hanya membentuk tenaga siap
latih, dan belum siap pakai secara 100 % untuk bidang
tertentu. Selain itu, pendidikan Informatika harus
berkejar-kejaran dengan kemajuan tools (perangkat keras
dan perangkat lunak) yang selalu baru sedangkan
aplikasi nyata banyak yang dikembangkan berdasarkan
tools yang baru. Kurikulum pada hakekatnya hanya
215
boleh berubah setiap lima tahun. Maka kurikulum harus
dibuat umum.

Tujuan pendidikan S1 tersebut untuk dapat
menghasilkan lulusan dengan kemampuan dalam bidang :
1. Perangkat Lunak sesuai dengan peran yang lebih
spesifik misalnya : anggota tim perangcang program
dan pemrograman, penguji perangkat lunak atau
software tester, perancang basis data atau database
engineer, software configuration manager, dan
sebagainya.
2. Perangkat Keras (perancang sistem komunikasi data
atau data communicaton engineer dan sebagainya)
3. Jaringan Komputer (perancang sistem jaringan
komputer atau network engineer dan sebagainya)

Keterbatasan S1 adalah singkatnya waktu (sks) yang
disediakan untuk mendapatkan ijasah Sarjana. Karena itu
tidak mungkin bahwa lulusan S1 akan merupakan tenaga
siap pakai. Solusi yang dipilih oleh Jurusan teknik
Informatika adalah dengan memberikan bekal berupa
pengetahuan dasar yang siap dipraktekkan di tempat
kerja. Inipun hanya sempat untuk Rekayasa Perangkat
Lunak dan tidak akan mampu untuk penguasaan akan
materi ilmu sosial yang akan dikomputerisasi (misalnya
perbankan, industri kimia, industri telekomunikasi dan
sebagainya).

Kendala lain adalah penyiapan Sumber Daya Manusia
sebagai pengajar dan pendidik dibidang Informatika.
Permintaan akan tenaga lulusan Informatika sedemikian
tinggi, sehingga Perguruan Tinggi harus bersaing dengan
industri untuk mendapatkan tenaga pengajar. Sesuai misi
Perguruan Tinggi, Dosen Informatika harus mampu
untuk mengajar, meneliti dan sekaligus melakukan
Pengabdian Masyarakat.Ketiga misi Perguruan Tinggi ini
idealnya harus dilakukan bersamaan karena Informatika
adalah ilmu yang sedang berkembang, dan sekaligus
dipakai.Pengajar yang terlalu teoritis tidak membawa
mahasiswa ke dunia nyata. Dosen yang tidak pernah
membangun aplikasi nyata sulit untuk mencicipi siklus
kehidupan Rekayasa Perangkat Lunak yang unik sebagai
suatu proyek, sekaligus tidak mendapatkan pengalaman
dalam menggunakan tools (Perangkat Lunak Bantu) yang
banyak berkembang dan hanya tersedia di luaran (akibat
pendidikan yang dasar; maka pendalaman pemakaian
tools terpaksa dikesampingkan).

Dalam kegiatan belajar mengajar, karena Informatika
tergolong ilmu yang unik maka seorang "programmer"
yang baik belum tentu mampu menjadi pengajar
pemrograman. Demikian pula seorang pengajar mata
kuliah Compiler akan sangat sulit mengajarkan mata
kuliah (ataupun kalau berhasil sulit dimengerti
mahasiswanya) jika tidak pernah "menulis/membuat"
compiler walau dalam skala kecil.

Dosen juga perlu meneliti dan mengikuti hasil
penelitian di negara maju, supaya kita tidak hanya
sebagai konsumen teknologi, namun juga dapat
memberikan kontribusi yang berarti dalam bidang
Informatika.

Persiapan tenaga pengajar yang handal memakan
waktu yang lama.Sebagai catatan, Jurusan Teknik
Informatika mengirimkan staffnya ke luar negeri untuk
memulai program pendidikan.Mungkin pada saat itu
persiapan lebih lama karena pada saat mulai
mengirimkan stafnya ke luar negeri belum ada program
pendidikan Informatika di dalam negeri. Tersedianya
program pendidikan yang baik di dalam negeri akan
mempercepat pembentukan tenaga pengajar program
Informatika.

STRATA 2 ( PROGRAM NAGISTER )
Menurut saya, S2 bidang Informatika seharusnya
mempunyai tiga arah spesialisasi :
1. Mahasiswa berlatar belakang Informatika, yang
diberi kesempatan memperdalam ilmu Informatika
yang hanya sempat diberikan dasar dan aplikasinya
di S1, atau
2. Mahasiswa bidang ilmu lain atau berprofesi lain
yang akan melengkapi pengetahuannya dengan
rekayasa perangkat lunak supaya dapat kembali ke
bidang ilmunya dan menjadi mitra yang baik dengan
pengembang perangkat lunak
3. Mahasiswa yang setelah lulus akan mampu menjadi
manager yang baik dalam mengelola proyek
pengembangan perangkat lunak karena pengelolaan
pengembangan perangkat lunak mempunyai ciri
khusus yang agak berbeda dibandingkan dengan
pengelolaan bisnis yang lain.

Untuk arah yang pertama, lulusannya diharapkan
mempunyai kemampuan :
1. Menjadi anggota tim pengembangan perangkat
lunak sistem (operating system, compiler, case tools,
perangkat lunak atau jaringan komputer dan
sebagainya)
2. Menjadi anggota tim pengembangan Perangkat
Lunak aplikasi yang lebih berfokus kepada
Software-nya. Misalnya sebagai perancang sistem
perangkat lunak atau software engineer perancang
sistem komputer secara keseluruhan termasuk
perangkat keras dan perangkat lunak atau system
engineer.
3. Menjadi pengontrol kualitas sistem perangkat lunak
atau software quality assurance, ditinjau dari kualitas
perangkat lunak sebagai software product.

Sedangkan untuk arah yang kedua, lulusannya
diharapkan mempunyai kemampuan sebagai penganalisis
kebutuhan user atau system analyst, yang fungsinya
menjembatani antara pihak user sebagai pemakai sistem
216
komputer dengan perancang dan pembuat sistem
komputer secara keseluruhan (termasuk pembuat
perangkat lunak dan pengambil keputusan tentang
perangkat keras yang diperlukan).Dari System Analyst
dapat diketahui kebutuhan user sesuai dengan bidang
ilmunya. Selain itu, lulusan kategori ini akan mampu
melakukan validasi, verifikasi dana quality assurance
dari produk ditinjau dari materi/fungsi yang dilakukan
oleh perangkat lunak.

Untuk kategori ketiga, lulusan harus memahami
manajemen dari proyek pengembangan perangkat lunak
(software project manager).Untuk saat ini, aspek ini
belum dapat diwujudkan karena keterbatasan waktu dan
latar belakang pengetahuan mahasiswa.Selain itu sebagai
manager, diperlukan pengalaman. Sebetulnya akan ideal
jika ada suatu program studi S2 dibidang teknologi
informasi dengan syarat bahwa peserta harus sudah
mempunyai pengalaman dalam suatu proyek
pengembangan perangkat lunak berskala besar.

Program Megister Informatika, Bidang Khusus
Rekayasa Perangkat Lunak, yang dikelola Program Pasca
Sarjana saat ini, mengambil arah yang kedua walaupun
tidak menolak lulusan Informatika.

Program Magister Rekayasa Perangkat Lunak
tersebut dirancang dengan beban 36 sks dan komposisi
sebagai berikut :
 Materi Rekayasa Perangkat Lunak 36 %
 Materi Pendukung Rekayasa Perangkat Lunak 30 %
 Materi Pendukung Keahlian Khusus 17 %
 Tesis 17 %

Saat ini banyak Perguruan Tinggi sudah membuka
berbagai bidang keahlian atau suatu bidang studi yang
lebih tajam arah pendidikannya seperti Rekayasa
Perangkat Lunak, Jaringan Komputer dan System
Analyst yang nyata dibutuhkan oleh industri saat ini.

STRATA 3 ( PROGRAM DOKTOR )
S3 menghasilkan lulusan bergelar doktor dan
ditujukan untuk berfungsi sebagai peneliti dan
pengajar.Sebagian besar lulusan S3 Informatika di
Indonesia saat ini adalah lulusan Luar Negeri, dan masih
sangat terbatas jumlahnya serta kebanyakan bekerja
utamanya sebagai pengajar dengan kegiatan lainnya
meneliti.

Kegiatan penelitian di Indonesia sendiri kurang
banyak dilakukan dan terbatas
perkembangannya.Kesulitan peneltian di bidang
Informatika disebabkan karena permintaan masyarakat
masih sangat tinggi untuk aplikasi, sehingga kebanyakan
tenaga lulusan Informatika harus mencurahkan
perhatiannya pada pembuatan aplikasi, dan bukan pada
penelitian di bidang Informatika "murni".
PENUTUP
Pemakaian komputer yang makin merambah berbagai
bidang mendorong makin berkembangnya informatika.
Informatika telah melahirkan berbagai tingkatan
profesi yang semakin menuntut spesialisasi khususnya
dalam bidang rekayasa perangkat lunak.
Pendidikan di Indonesia telah mencoba untuk
menjawab tuntutan kebutuhan tenaga profesional di
bidang Informatika dengan adanya program studi
Diploma, Strata-1 dan Strata-2.
Kerja sama dengan pihak industri dan yang
membutuhkan lulusan universitas layak untuk digalang,
agar universitas dan industri saling mengisi dalam rangka
menghasilkan lulusan yang sesuai dengan kebutuhan.

DAFTAR PUSTAKA
[1] Inggriani Liem Farid Wazdi, Sri Purwanti :
"Paradigma Pemrograman di masa mendatang",
Seminar Komunikasi Hasi Penelitian ITB.
[2] Informasi singkat tentang Jurusan Teknik
Informatika (Program Studi Sarjana dan Megister),
FTI-ITB.
[3] "Pengembangan Silabus Rekayasa Perangkat
Lunak untuk Program Pasca Sarjana Teknik
Informatika", Laporan Akhir dari Program
Peningkatan Relevansi Pendidikan Teknik, Dikti-
Depdikbud.)
217
Digital Forensik dan Penanganan
Pasca Insiden

Zuhri Ramadhan

Mahasiswa Pascasarjana Teknik Informatika, Universitas Sumatera Utara
Jl. Dr. Mansyur No.9, Medan, Sumatera Utara, Indonesia
ramadhanzoe@students.usu.ac.id

Abstrak – Digital Forensik merupakan bidang ilmu baru
dalam dunia komputer yang berkembang pesat akhir-akhir
ini dengan ditunjukannya berita-berita yang mengulas
tentang kejahatan di bidang komputer serta semakin
banyaknya buku-buku yang mengupas mengenai digital
forensik, sehingga semakin menambah refrensi
pengetahuan bagi peneliti-peneliti muda. Dengan lahirnya
Undang-undang Informasi Transaksi Elektronik nomor 11
Tahun 2008, maka semakin membuat bidang ilmu ini
menjadi perangkat wajib untuk membongkar kejahatan
yang melibatkan dunia komputer, karena pada umumnya
kejahatan komputer ini meninggalkan jejak digital, maka
perlu adanya seorang ahli komputer forensik yang akan
mengamankan barang bukti digital atau biasa disebut
digital evidence. Komputer Forensik tentu memerlukan
suatu standart operational procedure dalam mengambil
bukti-bukti digital agar tidak terkontaminasi pada saat
data di ambil dari digital evidence sehingga sangat
memudahkan para ahli komputer forensik untuk
melakukan pemulihan sistem pasca kerusakan.

Kata Kunci – Digital Forensik, Digital evidence, Forensik
Disk.

I. PENDAHULUAN
Dalam kamus Bahasa Inggris, forensik memiliki arti
berhubungan dengan kehakiman atau peradilan,
sementara dalam Kamus Besar Bahasa Indonesia,
forensik merupakan cabang ilmu kedokteran yang
berhubungan dengan penerapan fakta-fakta medis pada
masalah-masalah hukum. Namun demikian istilah
forensik adalah suatu proses ilmiah dalam
mengumpulkan, menganalisa dan menghadirkan
berbagai bukti dalam sidang pengadilan terkait adanya
suatu kasus hukum.
Bidang forensik sudah berkembang lama dan ini
diawali oleh seorang tabib yang bernama Hi Duan Yu,
yang dapat mengkategorikan bagaimana seseorang
didapati meninggal. Metode forensik pun berkembang
sampai pada akhirnya menggunakan DNA, tidak hanya
sebatas subjek nya saja, akan tetapi bidang forensik
meluas melibatkan teknologi, seiring maraknya kejahatan
dibidang komputer dan kasus-kasus video asusila yang
perlu dibuktikan keaslian video tersebut, untuk
membongkar kasus-kasus kejahatan yang melibatkan
dunia komputer, maka lahirlah istilah Komputer Forensik.


II. KOMPUTER FORENSIK
Defenisi komputer forensik menurut Vincent Liu dan
Francis Brown, 2006, dalam makalah : K2 Bleeding Edge
Anti Forensic, yang penulis sadur dari buku Anti
Forensik, yakni Computer Forensics : Application of the
scientific method to digital media in order to establish
factual information for judicial review.
Istilah lain komputer forensik adalah
pengumpulan dan analisis data dari berbagai sumber
daya komputer yang mencakup sistem komputer, -
jaringan komputer, jalur komu nikasi, dan
berbagai media penyimpanan yang layak untuk diajukan
dalam sidang pengadilan.
Keberadaan ilmu komputer forensik ini sangat
dibutuhkan saat sekarang apalagi dimasa mendatang,
karena banyaknya kejahatan-kejahatan berbasis
komputer/digital yang tidak dapat dibuktikan secara
nyata, sehingga terkadang tidak diakui sebagai alat bukti
di pengadilan untuk kasus-kasus seperti ini. Maka tidak
heran di institusi seperti kepolisian memiliki departemen
khusus untuk komputer forensik ini.
Berbagai prilaku digital dan digitalisasi yang sudah
merambah dalam setiap aktivitas manusia menjadi
prilaku yang harus diamati dengan baik. Komputer
forensik atau digital forensik banyak ditempatkan dalam
berbagai keperluan, bukan hanya kasus-kasus kriminal
yang melibatkan hukum. Secara umum kebutuhan
komputer forensik dapat digolongkan sebagai berikut :
- Keperluan investigasi tindak kriminal dan
perkara pelanggaran hukum.
- Rekonstruksi duduk perkara insiden keamanan
komputer.
- Upaya-upaya pemulihan akan kerusakan
sistem.
- Troubleshooting yang melibatkan hardware
maupun software.
- Keperluan untuk memahami sistem ataupun
berbagai perangkat digital dengan lebih baik.

A. Konsentrasi Komputer Forensik
Semakin kompleksnya tindak kejahatan dalam bidang
komputer membuat bidang ilmu komputer forensik
melebarkan kajian ilmu forensik dari berbagai aspek.
Maka dari itu perlu adanya pembagian konsentrasi ilmu
dalam bidang komputer forensik tersebut, ini
ditujukankan agar dalam melakukan investigasi untuk
218
mengungkap kejahatan bahkan memulihkan sistem pasca
kerusakan dapat dengan mudah dilakukan, karena sudah
dibagi kedalam beberapa konsentrasi yakni :
- Forensik Disk
- Forensik Sistem
- Forensik Jaringan
- Forensik Internet
Forensik Disk, untuk konsentrasi ilmu yang satu ini
sudah mulai berkembang, dimana forensik disk
melibatkan berbagai media penyimpanan. Ilmu forensik
yang satu ini sudah terdokumentasi dengan baik di
berbagai literatur, bahkan profesional IT pun bisa
menangani permasalahan forensik disk ini. Misalkan,
mendapatkan file-file yang sudah terhapus, mengubah
partisi harddisk, mencari jejak bad sector, memulihkan
registry windows yang termodifikasi atau ter-hidden oleh
virus dan lain sebagainya. Akan tetapi masih banyak
profesional IT yang belum mengetahui bahwasanya
prilaku tersebut di atas merupakan salah satu tindakan
komputer forensik.
Forensik Sistem, metode ini tentunya dekat dengan
sistem operasi, dan yang pastinya konsentrasi ilmu ini
masih sulit untuk dikaji lebih dalam, ini dikarenakan
banyaknya sistem operasi yang berkembang saat ini,
dimana sistem operasi memiliki karakteristik dan prilaku
yang berbeda,misalnya saja berbagai file sistem, maka
dari itu metode forensik yang ada sekarang ini masih
sulit untuk disama-ratakan. Kendalanya yakni software
pendukung yang ada sekarang dimana sebagai tool untuk
membedah sistem operasi masih ber-flatform windows.
Inilah yang menyebabkan masih perlunya pengembangan
ilmu tersebut.
Forensik Jaringan, adalah suatu metode menangkap,
menyimpan dan menganalisa data pengguna jaringan
untuk menemukan sumber dari pelanggaran keamanan
sistem atau masalah keamanan sistem informasi. Jika kita
berbicara tentang bagian yang satu ini, pastinya ini
melibatkan OSI (Open System Interconnection) layer,
yang menjelaskan bagaimana komputer dapat
berkomunikasi. Hal ini tidak hanya melibatkan suatu
sistem jaringan LAN akan tetapi dapat mencakup ke
dalam sebuah sistem jaringan yang lebih besar.
Forensik Internet, bidang ini lebih rumit lagi dari
yang lainnya dikarenakan ada banyak komputer yang
terhubung satu dengan yang lain dan penggunaannya
dapat bersamaan tanpa memperhitungkan jarak sehingga
dalam menelisik bagian ini membutuhkan teknik-teknik
yang kompleks. Melalui forensik internet ini kita dapat
melacak siapa yang mengirim e-mail, kapan dikirim dan
sedang berada di mana si pengirim, hal ini dapat
dilakukan mengingat semakin banyaknya e-mail palsu
yang meng-atasnamakan perusahaan tertentu dengan
modus undian berhadiah yang akan merugikan si
penerima e-mail, atau juga banyak e-mail yang bernada
ancaman. Maka dari itu forensik internet menjadi suatu
ilmu yang sangat menjanjikan dalam mengungkap fakta-
fakta dan mengumpulkan bukti.
B. Digital Evidence
Evidence yang dimaksud dalam kasus forensik pada
umumnya tidak lain adalah informasi dan data. Cara
pandangnya sama saja, tetapi dalam kasus komputer
forensik, kita mengenal subjek tersebut sebagai Digital
Evidence. Semakin kompleksnya konteks digital
evidence dikarenakan faktor media yang melekatkan data.
Format pun akan mempengaruhi cara pandang kita
terhadap digital evidence, misalnya digital evidence
berupa dokumen, yang umumnya dikategorikan ke dalam
tiga bagian, antara lain :
- Arsip ( Archieval Files )
- File Aktif ( Active Files )
- Residual Data ( Disebut pula sebagian data sisa,
data sampingan atau data temporer )
File yang tergolong arsip dikarena kebutuhan file
tersebut dalam fungsi pengarsipan, mencakup
penanganan dokumen untuk disimpan dalam format yang
ditentukan, proses mendapatkannya kembali dan
pendistribusian untuk kebutuhan yang lainnya, misalnya
beberapa dokumen yang didigitalisasi untuk disimpan
dalam format TIFF untuk menjaga kualitas dokumen.
File aktif adalah file yang memang digunakan untuk
berbagai kepentingan yang berkaitan erat dengan
kegiatan yang sedang dilakukan, misalnya file-file
gambar, dokumen teks, dan lain-lain.
Sedangkan file yang tergolong residual mencakup
file-file yang diproduksi seiring proses komputer dan
aktivitas pengguna, misalkan catatan penggunan dalam
menggunakan internet, database log, berbagai temporary
file, dan lain sebagainya.
Digital evidence tersebar dalam berbagai media dan
konteksnya, untuk itu diperlukan kejelian yang lebih
daripada sekedar mengklasifikasikan data untuk tujuan
forensik. Perlu diingat pula, semakin banyak peripheral
atau device yang diintegrasikandalam sistem komputer,
tentu akan semakin kompleks dan melibatkan banyak
pertimbangan untuk mengangkat digital evidence. Itu
merupaka salah satu kendala dalam pengaksesan file-file
yang akan dijadikan bukti-bukti.
Berikut adalah kendala lain yang mungkin terjadi di
lapangan pada saat investigasi untuk mengambil data :
- File terkompresi
- Salah menamakan file secara disengaja atau
tidak
- Salah dalam memberikan file format, secara
disengaja atau tidak
- File yang diproteksi password
- Hidden Files
- File terenkripsi
- Steganography

C. Pemodelan Komputer Forensik
Model di dalam ilmu forensik pada umumnya dapat
diterapkan di berbagai bidang, dan model ini melibatkan
219
tiga komponen yang dirangkai, diberdayakan dan
dikelola sedemikian rupa menjadi tujuan akhir dengan
segala kelayakan dan kualitas. Tiga komponen ini
mencakup :
- Manusia ( people )
- Peralatan ( equipment )
- Aturan ( protocol )


Gambar 1. Komponen Jaminan Kualitas

Manusia yang diperlukan dalam komputer forensik
merupakan pelaku yang tentunya diperlukan kulaifikasi
tertentu untuk mencapai kualitas yang diinginkan.
Memang mudah untuk belajar komputer forensik, tetapi
untuk menjadi seorang expert lain ceritanya, dibutuhkan
lebih dari sekedar pengetahuan melainkan experience
yang membuatnya dikatakan sebagai seorang ahli. Ada
tiga kelompok sebagai pelaku komputer forensik,
Collection Specialist, Examiner dan Investigator.
Collection Specialist bertugas untuk mengumpulkan
barang bukti berupa digital evidence. Untuk tingkatan
examiner hanya memiliki kemampuan sebagai pengujian
terhadap media dan mengekstrak data. Sedangkan
investigator sudah kedalam tingkatan ahli atau sebagai
penyidik.
Peralatan pun harus digunakan sedemikiann rupa
untuk mendapatkan bukti-bukti (evidence) yang
berkualitas. Ada banyak yang dibutuhkan melibatkan
perangkat lunak yang spesifik dan berbagai perangkat
keras juga berbagai media penyimpanan dalam
menangani data-data nantinya.
Aturan merupakan komponen yang paling penting
dalam pemodelan komputer forensik, aturan dalam
menggali, mendapatkan, menganalisa dan akhirnya
menyajikan dalam laporan-laporan. Aturan dalam
komputer forensik yang harus dijalankan oleh seorang
ahli mencakup ke dalam empat fase, antara lain :
- Pengumpulan
- Pengujian
- Analisa
- Laporan

Gambar 2. Fase Komputer Forensik

Pengumpulan adalah langkah pertama dalam proses
forensik untuk mengidentifikasi sumber-sumber
potensial dan bagaimana kemudian data dikumpulkan.
Pengumpulan ini melibatkan proses dan metode yang
semakin kompleks karena perkembangan teknologi yang
demikian pesat, ada banyak komputer, ada banyak ragam
media penyimpanan dan ada banyak jaringan komputer
dengan segala teknologi yang dilekatkan terhadapnya.
Tentunya kerumitan ini memerlukan penanganan yang
berbeda-beda.
Setelah melakukan proses pengumpulan data,
langkah lebih lanjut adalah melakukan pengujian,
mencakup dalam menilai dan mengekstrak informasi
yang relevan dari data-data yang dikumpulkan.
Begitu informasi diekstrak, examiner melakukan
analisa untuk merumuskan kesimpulan dalam
menggambarkan data. Analisa yang dimaksud tentunya
mengambil pendekatan metodis dalam menghasilkan
kesimpulan yang berkualitas didasarkan pada
ketersediaan data.
Dokumentasi dan laporan adalah tahap akhir dari
komputer forensik, dalam tahap ini kita me-
representasikan informasi yang merupakan hasil dari
proses analisis.

III. BEDAH KOMPUTER FORENSIK
Dalam melakukan bedah komputer, perlu kita ketahui
bagian apa yang harus kita bedah dalam mengumpulkan
informasi, di bab sebelumnya sudah dibahas prihal empat
konsentrasi dalam komputer forensik dan pada bagian ini,
yang di bedah adalah Forensik Disk.
A. Windows Registry
Ketika kita mengakses registry windows, dalam
proses forensik ini disebut juga dengan pembedahan
komputer, karena registry merupakan konfigurasi sistem
yang substansial dab merupakan single logical dan store.
Pada dasarnya registry dibagi ke dalam tiga basisdata
yang terpisah dan dialokasikan untuk menangani user,
sistem dan pengaturan jaringan, dimana bagian-bagian
ini menyimpan informasi yang sangat penting. Untuk
melakukan pembongkaran registry sebaiknya harus
diketahui terlebih dahulu struktur daripada registry
windows. Registry terdiri dari tujuh root key yakni :

220
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
- HKEY_CURRENT_CONFIG
- HKEY_DYN_DATA
- HKEY_PERFORMANCE_DATA
Pada registry ini akan dilihat apa-apa saja informasi
yang tersimpan di dalam nya, misalkan melihat aktivitas
internet dapat mengakses registry key sebagai berikut :
HKEY_CURRENT_USER\Software\Microsoft\Internet
Explorer\TypedUrl

Gambar 3. HKCU\Software\Microsoft\InternetExplorer\TypedUrl

Untuk melihat beberapa device yang terintegrasi pada
komputer dapat mengakses registry key sebagai berikut :
HKEY_CURRENT_USER\Software\Microsoft\Window
sNT\CurrentVersion\Device

Gambar 4.
HKCU\Software\Microsoft\WindowsNT\CurrentVersion\Device

Hal lain yang dapat dianalisa dari registry windows,
misalnya mengetikkan command pada run command
windows tercatat pada registry. Untuk dapat
mengaksesnya melalui registry key sebagai berikut :
HKEY_CURRENT_USER\Software\Microsoft\Window
s\CurrentVersion\Explorer\RunMRU

Gambar 5. HKCU\Software\Microsoft\Windows\CurrentVersion\
Explorer\RunMRU

B. Penanganan Pasca Kerusakan
Dalam memperbaiki sebuah sistem yang mengalami
kerusakan perlu adanya peralatan berupa software untuk
memulihkan sistem yang rusak. Kerusakan sistem yang
terjadi bisa diakibatkan faktor kecerobohan manusia
maupun virus yang menginfeksi komputer tersebut dan
perlu diketahui juga bagian-bagian dari komputer yang
harus dipulihkan.
Pada bagian ini akan diberikan contoh sederhana
kerusakan pada registry yang telah dimodifikasi, bisa
dikarenakan virus dan bisa juga disengaja dimodifikasi.
Dan untuk penanganan kerusakannya dapat
menggunakan software anti virus Smadav versi 8.6.6.
Kasus yang terjadi adalah icon recycle bin pada desktop
berubah nama menjadi ―Gudang Virus‖














Gambar 6. Contoh kasus

Jika kejadiannya seperti ini, seorang investigator
biasanya sudah dapat menganalisis penyebab dan cara
pemulihannya. Ada dua faktor penyebab, yakni bisa
karena virus dan bisa karena disengaja oleh user. Dan
yang perlu diketahui adalah jika ini disebabkan karena
virus biasanya tujuan utama seorang pembuat virus
adalah registry windows, karena dengan bagian ini virus
dapat melumpuhkan sistem komputer dengan merusak,
memodifikasi atau meng-hidden registry tersebut.
221
Untuk penanganan kasus ini, dapat di gunakan anti
virus Smadav 8.6.6. maka lakukan scanning terhadap
komputer yang terinfeksi.

Gambar 7. Hasil scanning Smadav

Dari hasil scanning di atas dapat dibuktikan bahwa
ada dua registry yang terinfeksi, bisa juga dikatakan
termodifikasi. Untuk lebih membuktikan registry mana
yang terinfeksi dapat dilihat pada gambar berikut.

Gambar 8. Registry yang terinfeksi

Pada gambar di atas terlihat registry yang terinfeksi
adalah file default dan LocalizedString pada key
HKCR\CLSID\HKEY_CLASSES_ROOT\CLSID\{645F
F040-5081-101B-9F08-00AA002F954E}. Kemudian
klik Repair All untuk memulihkan registry yang
terinfeksi tersebut. Maka setelah di refresh, icon recycle
bin akan kembali seperti semula.

IV. KESIMPULAN
Masih banyak lagi bidang ilmu Komputer Forensik
yang harus digali pengetahuannya lebih dalam, karena
bidang ini sudah menjadi bagian yang sangat penting
dalam mengungkap kejahatan-kejahatan komputer. Ini
tidak terlepas akan hal tersebut, dikarenakan ilmu
pengetahuan yang semakin maju pesat ditambah dengan
akhlak manusia yang semakin merosot dan jauh dari
nilai-nilai Agama. Kiranya perlu adanya monitoring dari
setiap aktivitas manusia yang menyangkut kepentingan
masyarakat, apalagi dengan adanya akses internet yang
mudah, bahkan dari telepon selular, orang dapat
mengakses apa saja yang ada di dunia ini.
Komputer Forensik yang dibahas dalam makalah ini
adalah hal yang sangat minor dari keseluruhan aspek
yang ada. Maka dari itu perlu adanya penelitian yang
lebih lanjut demi perkembangan ilmu pengetahuan dan
teknologi masa yang akan datang.
Dengan adanya UU ITE No. 11 Tahun 2008
menjadikan landasan masyarakat untuk melakukan
segala aktivitas yang menyangkut informasi transaksi
elektronik, agar semua berjalan sesuai koridor dan
payung hukum yang sudah ditetapkan. Satu hal lagi yang
sangat penting adalah dengan adanya UU ITE tersebut
tidak serta merta membuat setiap orang menjadikan
dirinya sebagai pelaku dalam Komputer Forensik, sudah
ada aturan-aturan yang ditetapkan untuk menjadi pelaku
Komputer Forensik, hanya aparat yang berwenang dalam
hal ini pihak Kepolisian, Kejaksaan dan KPK lah yang
berhak dalam melakukan investigasi untuk menganmbil
bukti-bukti digital evidence dari orang lain, terkecuali
telah ditunjuk oleh pihak yang berwenang tersebut.
Maka dari itu disarankan untuk tidak sembarangan
melakukan tindakan-tindakan pada bab-bab sebelumnya
di atas untuk kepentingan pribadi terkecuali demi
pembelajaran guna pengembangan ilmu pengetahuan dan
teknologi.

REFERENSI
[18] Arryawan, Eko, Smitdev Community., Anti Forensik., Elex
Media Komputindo., Jakarta., 2010.
[19] Arryawan, Eko, Smitdev Community., Metadata Undercover.,
Elex Media Komputindo., Jakarta., 2010.
[20] Hakim.S,Rachmad., Rahasia Jebol Password., Elex Media
Komputindo., Jakarta., 2010.
[21] Ramadhan, Zuhri., Modul Optimalisasi Registry Chapter 9
th
.,
Universitas Pembangunan Panca Budi., Medan., 2010
[22] Sanusi, Muzamil., Teknik Membobol Data dan Password., Elex
Media Komputindo., Jakarta., 2008.
[23] Sulianta, Feri., Komputer Forensik., Elex Media Komputindo.,
Jakarta., 2008.






222





223















224





225
Implemetasi Manajemen Bandwidth
Menggunakan Simple Queue dan Queue Tree
pada MikroTik RouterOS
Anwar
#1
Jurusan Tata Niaga, Politeknik Negeri Lhokseumawe
Anwar551@yahoo.com
anwarsy@pnl.ac.id

Abstrak— Manajemen bandwidth diperlukan untuk
menjamin para pengguna jaringan mendapatkan
bandwidth yang adil dan memuaskan, menjaga lalu lintas
data dalam jaringan agar tidak terjadi kemacetan akibat
dari permintaan akses yang overload. Salah satu sistem
operasi yang dapat digunakan untuk manajemen bandwidth
adalah MikroTik RouterOS.
Dengan MikroTik RouterOS dapat diterapkan berbagai
teknik manajemen bandwidth. Dua diantara beberapa
teknik manajemen bandwidth yang ditawarkan adalah
bandwidth control jenis simple queue dan queue tree.
Penelitian ini dilakukan dengan cara menerapkan
bandwidth control simple queue dan queue tree pada
router/gateway internet, kemudian mengatur aktifitas
client/user dalam menggunakan bandwidth dan
memberikan informasi bagaimana kualitas koneksi
jaringan dengan menganalisa tingkat QoS (Quality of
Service).
Dari hasil peneletian dapat disimpulkan bahwa simple
queue dapat menjamin bahwa client/user akan
mendapatkan bandwidth minimum yang telah disediakan
walaupun pada saat sumber daya bandwidth dalam
jaringan sedang tinggi trafik pemakaiannya. Dan apabila
bandwidth yang telah disediakan untuk client/user tertentu
tersebut tidak digunakan (bandwidth idle), maka bandwidth
idle tersebut dapat digunakan oleh client/user lainnya.
Sedangkan queue tree dari hasil penelitian diperoleh
kesimpulan bahwa jika hanya satu user yang sedang online
maka bandwidth dapat digunakan seluruhnya oleh user
tersebut, jika ada dua user yang sedang aktif menggunakan
internet maka secara otomatis bandwidth akan dibagi sama
rata untuk masing-masing user tersebut, demikian berlaku
seterusnya.

Kata Kunci— bandwidth control, QoS (Quality of Service),
simple queue, queue tree.
I. PENDAHULUAN
Pemanfaatan teknologi internet sebagai media
informasi dan komunikasi data hingga saat ini semakin
meningkat. Kebutuhan atas penggunaan bersama
resources yang ada dalam jaringan internet telah
mengakibatkan timbulnya berbagai pengembangan
teknologi jaringan internet itu sendiri. Pengembangan itu
sendiri seiring dengan semakin tingginya tingkat
kebutuhan dan semakin banyaknya pengguna internet
yang menginginkan suatu bentuk jaringan yang dapat
memberikan hasil maksimal, baik dari segi efisiensi
maupun peningkatan keamanannya.
Dalam menggunakan jasa internet setiap pengguna
menginginkan kecepatan akses internet yang maksimal.
Kecepatan akses internet tentunya akan berhubungan
dengan besarnya kapasitas bandwidth yang tersedia
dalam suatu jaringan. Untuk mendapatkan kecepatan
akses yang maksimal dan dengan resource bandwidth
yang terbatas, maka bandwidth diperlukan pengaturan
yang baik untuk menjaga lalu lintas data dalam suatu
jaringan komputer agar tidak terjadi kemacetan sebagai
akibat dari adanya permintaan akses yang overload
dalam jaringan. Berlandaskan pada keinginan-keinginan
tersebut, maka upaya -upaya penyempurnaan terus
dilakukan oleh berbagai pihak. Dengan memanfaatkan
berbagai teknik khususnya dalam manajemen bandwidth
pada router/gateway internet. MikroTik RouterOS
merupakan salah satu solusi tepat yang dapat digunakan
untuk keperluan tersebut.
MikroTik RouterOS, merupakan sistem operasi Linux
base yang diperuntukkan sebagai network router. Dengan
sistem operasi ini, dapat dibangun router dari komputer
rumahan (PC). Untuk mengoptimalkan pengaturan
bandwidth pada penelitian ini digunakan bandwidth
control jenis simple queue dengan penerapan antrian
PFIFO (Packets First-In First-Out) dan sebagai metode
pembanding juga diterapkan bandwidth control jenis
queue tree dengan penerapan antrian PCQ (Per
Connection Queue), kedua jenis bandwidth control ini
dijalankan pada PC router/gateway dengan sistem
operasi MikroTik RouterOS
TM
. Jenis simple queue hanya
digunakan untuk membatasi trafik uplink dan downlink
suatu jaringan misalnya mengatur browsing, email serta
sumberdaya internet lainnya. Sedangkan untuk
bandwidth control queue tree penerapannya hanya dilihat
pada sistem pembagian bandwidth dengan sistem
pembagian sama rata setiap client/user yang online, atau
jika hanya satu client/user yang online maka bandwidth
seluruhnya dapat digunakan oleh client/user tersebut.
Untuk analisis hasil (monitoring trafik jaringan) dengan
menggunakan simple queue statistics dan tool graphing
yang running pada router/gateway MikroTik RouterOS
dan juga dengan bantuan tool bandwidth meter.
226
II. METODOLOGI DAN TEORI PENDUKUNG
A. Bandwidth
Bandwidth adalah kisaran frekuensi, dinyatakan
dalam kilobit per detik (kbps), yang bisa melewatkan
channel transmisi data yang diberikan dalam sebuah
jaringan. Bandwidth menentukan kecepatan pengiriman
informasi melalui channel. Semakin besar bandwidth,
semakin banyak informasi yang bisa dikirimkan pada
waktu yang sudah ditentukan. Bandwidth biasanya
diukur dalam bit per detik. Satu halaman penuh teks
berbahasa Inggris berukuran sekitar 16.000 bits. Modem
56-kbps bisa lebih mudah menggerakkan 16.000 bits
dalam waktu kurang dari 1 detik. Istilah tersebut sering
digunakan untuk mengartikan kecepatan data atau
jumlah kapasitas data yang dikirim atau bisa dikirim
melalui sirkuit komunikasi per detik (Hiks, 2004).
1) Manajemen Bandwidth
Manajemen bandwidth (atau ―traffic shaping‖)
menggambarkan kreasi dan pelaksanaan kebijakan
jaringan untuk memastikan performa jaringan yang adil
dan memuaskan. Itu menjadi alat yang digunakan untuk
memastikan bandwidth yang cukup sudah memadai
untuk memenuhi kebutuhan trafik dari misi penting dan
aplikasi yang sensitif terhadap waktu seperti ERP, suara
dan video dan mencegah persaingan antara aplikasi ini
dengan trafik prioritas lebih rendah untuk sumber
jaringan terbatas. Tipikalnya ini akan melibatkan
pengenalan alat hardware baru pada sebuah jaringan
untuk mengukur dan mengontrol jumlah dan prioritas
trafik pada link jaringan (Beer, 2003).
Manajemen bandwidth menjadi hal yang mutlak
diperlukan bagi jaringan multi layanan, semakin banyak
dan bervariasinya aplikasi yang dapat dilayani oleh suatu
jaringan berpengaruh pada penggunaan link dalam
jaringan tersebut. Link-link yang ada harus mampu
menangani kebutuhan user akan aplikasi tesebut bahkan
dalam keadaan kongesti sekalipun, harus ada suatu
jaminan bahwa link tetap dapat berfungsi sebagaimana
mestinya walaupun terjadi ledakan permintaan aplikasi
(Floyd, 1995). Manajemen bandwidth sangat dibutuhkan
untuk mengurangi penurunan performansi jaringan tanpa
menambah biaya (atau bandwidth).
B. Konsep Antrian
Konsep antrian diterapkan dirouter dan akan menahan
paket di dalam router, sampai dengan sumber daya yang
ada mencukupi untuk mengirimkan paket tersebut. Jika
tidak terdapat kongesti pada router, maka paket akan
segera dikirimkan. Antrian di jaringan dapat
dianalogikan dengan sistem pembayaran pada kasir di
super market. Jika tidak ada orang yang mengantri untuk
membayar barang belanja, maka kita dapat langsung ke
depan untuk mebayarnya tanpa harus mengantri, hal ini
berarti tidak terjadi kongesti di jaringan.

C. Quality of Service
Quality of Service (QoS) adalah suatu pengukuran
tentang seberapa baik jaringan dan merupakan suatu
usaha untuk mendefinisikan karakteristik dan sifat dari
suatu servis. QoS biasanya digunakan untuk mengukur
sekumpulan atribut performansi yang telah
dispesifikasikan dan biasanya diasosiasikan dengan suatu
servis. Pada jaringan berbasis IP, IP QoS mengacu pada
performansi dari paket-paket IP yang lewat melalui satu
atau lebih jaringan.
QoS didesain untuk membantu end user menjadi
lebih produktif dengan memastikan bahwa user
mendapatkan performansi yang handal dari aplikasi-
aplikasi berbasis jaringan (Ferguson, 1998).
QoS mengacu pada kemampuan jaringan untuk
menyediakan layanan yang lebih baik pada trafik
jaringan tertentu melalui teknologi yang berbeda-beda.
QoS merupakan suatu tantangan yang cukup besar dalam
jaringan berbasis IP dan internet secara keseluruhan.
Tujuan dari QoS adalah untuk memuaskan kebutuhan-
kebutuhan layanan yang berbeda, yang menggunakan
infrastruktur yang sama. QoS menawarkan kemampuan
untuk mendefinisikan atribut-atribut layanan jaringan
yang disediakan, baik secara kualitatif maupun
kuantitatif (Ferguson, 1998).
D. Bandwidth Control dengan MikroTik RouterOS
1) Gambaran Umum
Bandwidth Control adalah serangkaian mekanisme
yang mengendalikan alokasi jumlah data, variabilitas
penundaan, pengiriman tepat waktu, dan reliabilitas
pengiriman. MikroTik RouterOS mendukung queuing
discipline berikut, yaitu:
- PFIFO – Packets First-In First-Out
- BFIFO – Bytes First-In First-Out
- SFQ – Stochastic Fairness Queueing
- RED – Random Early Detect
- PCQ – Per Connection Queue
- HTB – Hierarchical Token Bucket
Quality of Service (QoS) berarti bahwa router
sebaiknya memprioritaskan dan membentuk lalu-lintas
jaringan. QoS bukanlah pembatasan, ini lebih merupakan
penyediaan kualitas. Di bawah ini terdaftar beberapa ciri
mekanisme Bandwidth Control MikroTik RouterOS
yaitu:
- Membatasi jumlah data untuk alamat IP tertentu,
subnet, protocol, port, dan parameter-parameter lain
- Membatasi lalu-lintas peer-to-peer
- Memprioritaskan beberapa aliran paket pada paket
lain
- Menggunakan queue bursts untuk browsing WEB
yang lebih cepat
- Menggunakan queue pada interval waktu yang tetap
- Berbagi lalu-lintas yang tersedia dengan para
pengguna secara sama, atau bergantung pada muatan
saluran
227
2) Interface Default Queue
Untuk mengirimkan paket-paket pada suatu interface,
paket-paket tersebut harus diantrikan dalam suatu antrian,
bahkan meskipun tidak ingin dibatasi lalu-lintas sama
sekali. Di sini dapat ditentukan jenis queue yang akan
digunakan untuk mentransmisikan data.
3) Simple Queue
Simple queue digunakan untuk membatasi jumlah
data untuk alamat dan/atau subnet tertentu.
Simple queue dapat juga digunakan untuk membangun
aplikasi QoS yang advance. Simple queue memiliki fitur
terintegrasi yang sangat berguna untuk:
- queuing lalu-lintas peer-to-peer
- penerapan aturan queue pada interval waktu yang
dipilih
- prioritas
- penggunaan berbagai tanda paket dari /ip farewall
mangle
- pembentukan lalu-lintas dua arah (satu batas untuk
total upload + download)
4) Queue Tree
Queue trees sebaiknya digunakan saat ingin
menggunakan alokasi jumlah data yang baik berdasarkan
protocol, port, kelompok IP address dan lain-lain.
Pertama-tama, harus diberitanda untuk aliran paket
dengan suatu tanda dalam /ip firewall mangle dan
kemudian menggunakan tanda ini sebagai
pengidentifikasi untuk aliran paket dalam queue trees.
III. TAHAPAN PERANCANGAN SISTEM

Tahapan perancangan sistem terdiri dari:
A. Analisis Dan Perancangan Sistem
Pada tahap ini dilakukan analisa kebutuhan sistem
yang akan dibuat dan menjadi dasar untuk perancangan
sistem, seperti besarnya kapasitas bandwidth yang
tersedia, jumlah user/client serta proporsi alokasi
bandwidth untuk masing-masing user/client, topologi
jaringan, serta sistem operasi yang digunakan.
B. Implementasi
Pada tahap ini dilakukan pembuatan sistem
manajemen bandwidth sesuai dengan analisis dan
perancangan sistem. Pada tahap implementasi ini
langkah-langkah yang dilakukan adalah:
- Instalasi dan konfigurasi router/gateway (sistem
operasi yang digunakan adalah MikroTik
RouterOS).
- Konfigurasi sistem hotspot dan radius server.
- Konfigurasi bandwidth control simple queue.
- Konfigurasi bandwidth control queue tree.
- Konfigurasi tool graphing.
C. Pengujian
Pada tahap ini dilakukan pengujian sistem apakah
berjalan sesuai dengan tujuan penelitian, yaitu:
- Pengaturan bandwidth untuk router/gateway
(server) staff dan router/gateway (server)
mahasiswa dengan menggunakan bandwidth
control simple queue. Dan setelah selesai
pengujian simple queue, selanjutnya dipilih salah
satu router untuk penerapan bandwidth queue tree
sebagai metode pembanding.
- Menganalisa hasilnya yaitu menggunakan tool
monitoring bandwidth MikroTik RouterOS
(simple queue statistics dan graphing) dan tool
optional pengukuran bandwidth yang ada di
internet yaitu bandwidth meter. Monitoring yang
dilakukan disini yaitu: Memantau aktifitas
penggunaan bandwidth tiap-tiap client pada
masing-masing router/gateway tersebut sesuai
dengan rancangan percobaan

IV. RANCANGAN PERCOBAAN
Topologi MikroTik sebagai gateway/skema lengkap
perangkat keras dan perangkat lunak dalam sistem
bandwidth control simple queue dan queue tree serta
sistem monitoring dapat dilihat pada gambar 1.

Radio tower
Acces Point
Satellite dish
Satellite
Modem VSAT
Switchub
Hub
Hub
Hub
Laptop Staff
(client/user)
Laptop Mahasiswa
(client/user)
PC
(client/user)
Router/Gateway Staff
(MikroTik)
Router/Gateway
Mahasiswa dan Kantor
(MikroTik)
Interface Public
202.174.155.162/29
Interface Public
202.174.155.164/29
Interface Local
192.168.1.1/24
(Server Mahasiswa)
Interface LocalB
192.168.0.1/24
(Server Kantor)
Interface Local
172.16.100.1/24
(Server Staff) Gateway 202.174.155.161
DNS1 202.174.129.13
DNS2 202.174.158.10
Gateway 202.174.155.161
DNS1 202.174.129.13
DNS2 202.174.158.10
INTERNET
202.174.155.161/29
Access Point
Radio tower
Acces Point
- Simple Queue
- Graphing
- Queue Tree
- Graphing
Internet
Memberikan layanan HTTP
dan FTP untuk client/user
Server
Mengontrol banwidth
terhadap client/user dan
melakukan utilitas bandwidth
Client/user
Mengakses HTTP dan FTP
dan melakukan monitoring
terhadap bandwidth
- Bandwidth Meter

Gambar 1. Skema lengkap perangkat keras dan perangkat lunak dalam
sistem bandwidth control simple queue dan queue tree serta sistem
monitoring
V. HASIL DAN PEMBAHASAN
A. Analisa Implementasi Bandwidth Control Simple
Queue
Dalam skenario ini bandwidth dialokasikan
berdasarkan pada alamat IP, dipilihnya IP untuk
pengalokasian bandwidth karena IP dikenal dan
digunakan secara luas diseluruh dunia sebagai protokol
pada internet.
Pada skenario ini hanya diambil dua sampel yaitu
client yang terdaftar pada Server Staff. Masing-masing
client dialokasikan bandwidth yaitu : untuk client1 atas
228
nama user darmein2 alokasi bandwidth downliknya
limit-at = 48 kbps max-limit = 64 kbps dan uplinknya
limit-at = 10 kbps max-limit = 16 kbps dengan IP
172.16.100.23, sedangkan untuk client2 atas nama user
bahktiar te alokasi bandwidth downliknya limit-at = 16
kbps max-limit = 64 kbps dan uplinknya limit-at = 6
kbps max limit = 16 kbps dengan IP 172.16.100.65.
Kemudian masing-masing user membangkitkan trafik
maksimal dari kapasitas bandwidth yang telah ditetapkan.
Dan antara client1 dengan client2 tersebut bisa saling
meminjamkan bandwidth idle pada saat salah satu
client/user sedang tidak menerima data (idle).
Analisis:
1) Limit Download
Dari hasil percobaan, pada saat pemakaian
bandwidth sendiri diperoleh rate download untuk user
darmein2 (IP 172.16.100.23) sebesar 64,0 kbps dan
untuk user bahktiar te (IP 172.16.100.65) sebesar 63,5
kbps. Sedangkan pada saat pemakaian bandwidth
bersama diperoleh rate download untuk user darmein2
sebesar 47,9 kbps dan untuk user bahktiar te sebesar 15,9
kbps. Berdasarkan data tersebut dari sisi pembatasan
bandwidth untuk user darmein2 limit-at sebesar 48 kbps
dan untuk user bahktiar te limit-at sebesar 16 kbps,
sedangkan untuk max-limit kedua user tersebut sama
besar yaitu 64 kbps, maka pada penerapan skenario ini
berdasarkan data real time maksimum limit yang dapat
dicapai adalah masih mengikuti rule yang telah
ditetapkan pada simple queue.
Dari hasil yang telah diperoleh dapat dianalisa
bahwa ketika masing-masing user memakai bandwidth
secara sendiri, maka kedua user tersebut dapat
menggunakan bandwidth secara maksimum atau
mendekati batas bandwidth MIR (Maksimum
Information Rate). Namun pada saat kedua user tersebut
sama-sama menggunakan bandwidth maka troughput
masing-masing user turun sesuai dengan setting limit-at
nya, limit-at disini berarti jumlah data yang dijamin atau
client mendapatkan bandwidth CIR (Commited
Information Rate). Bandwidth CIR akan selalu diperoleh
oleh client apabila nilai lalu-lintas datanya tidak melebihi
nilai limit-at nya. Jadi pada saat link penuh masing-
masing user hanya memperoleh bandwidth sesuai dengan
setting limit-at nya.
Terjadi peningkatan respon secara drastis antara server
ke client/user, ini terjadi karena protocol icmp yang
digunakan ikut terfilter. Dan juga ketika kapsitas link
penuh, maka paket icmp akan kesulitan untuk lewat, dan
pada saat keadaan seperti ini collision akan sangat mudah
terjadi. Hal ini akan mengakibatkan munculnya delay
yang signifikan pada jalur antara server dengan user.
2) Limit Upload
Berdasarkan hasil percobaan, pada saat pemakaian
bandwidth sendiri diperoleh rate upload untuk user
darmein2 (IP 172.16.100.23) sebesar 11,9 kbps dan
untuk user bahktiar te (IP 172.16.100.65) sebesar 12,4
kbps. Sedangkan pada saat pemakaian bandwidth
bersama diperoleh rate upload untuk user darmein2
sebesar 8,4 kbps dan untuk user bahktiar te sebesar 3,2
kbps. Berdasarkan data tersebut dari sisi pembatasan
bandwidth upload untuk user darmein2 limit-at sebesar
10 kbps dan untuk user bahktiar te limit-at sebesar 6 kbps,
sedangkan untuk max-limit kedua user tersebut sama
besar yaitu 16 kbps.
Dari data di atas dapat dianalisa bahwa ketika masing-
masing user memakai bandwidth upload secara
individual, maka kedua user tersebut dapat menggunakan
bandwidth secara maksimum atau konsumsi
bandwidthnya mendekati nilai MIR (Maksimum
Information Rate). Namun pada saat kedua user tersebut
sama-sama menggunakan bandwidth maka troughput
masing-masing user turun sesuai dengan jumlah data
yang dijamin atau mendekati nilai CIR (Commited
Inforamtion Rate).
B. Analisa Implementasi Bandwidth Control Queue
Tree
Dalam skenario ini bandwidth dialokasikan
berdasarkan pada alamat IP, besarnya bandwidth untuk
masing-masing user tidak dibatasi. Pembagian bandwidth
untuk masing-masing user ditentukan oleh server
berdasarkan jumlah client yang menggunakan internet.
Jika hanya satu yang aktif maka bandwidth dapat
digunakan seluruhnya oleh user tersebut, dan jika ada
dua user yang menggunakan internet maka bandwidth
akan dibagi dua, demikian berlaku seterusnya.
Pada skenario ini hanya diambil dua sampel yaitu
client yang terdaftar pada Server Staff, yaitu client1 atas
nama user deone1 dan client2 atas nama user deone2.
Kemudian masing-masing user membangkitkan trafik
maksimal dengan cara browsing dan download secara
terus menerus selama beberapa menit. Dan antara client1
dengan client2 tersebut bisa saling meminjamkan
bandwidth idle pada saat salah satu client/user sedang
tidak menerima data (idle). Pada simulasi ini hanya
diamati khusus untuk bandwidth downlinknya saja.

Analisis:
Dari hasil percobaan, pada saat pemakaian bandwidth
sendiri diperoleh hasil pengukuran bandwidth yang
tunjukkan oleh bandwidth meter untuk user deone1
adalah sebesar 404,10 kbps. Sedangkan pada saat
pemakaian bandwidth bersama diperoleh besarnya
bandwidth untuk user deone1 sebesar 232,70 kbps dan
besarnya bandwidth untuk user deone2 sebesar 231,70
kbps. Berdasarkan data tersebut dapat dianalisa bahwa
pada saat user deone1 menggunakan bandwidth sendiri
maka bandwidth yang diperoleh lebih besar
dibandingkan dengan pada saat pemakaian bandwidth
secara bersama-sama. Hal ini terjadi karena pada saat
user deone1 menggunakan bandwidth sendiri maka
server mengalokasikan seluruh bandwidth yang tersedia
untuk user doene1, sehingga bandwidth yang ada dapat
digunakan secara penuh oleh user deone1. Sedangkan
229
pada saat user deone2 aktif menggunakan internet,
bandwidth akan dibagi secara merata oleh server kepada
user deone1 dan user deone2. Hal ini akan
mengakibatkan turunnya throughput dari user deone1.
Jika diamati pada hasil pengukuran bandwidth meter
besarnya bandwidth yang diperoleh oleh user deone1 dan
deone2 hampir sama karena hanya selisih 1 kbps lebih
besar bandwidth yang diperoleh oleh user deone1.
Pengujian sistem pada simulasi ini dilakukan dengan
cara browsing, download dan streaming video. Setelah
diamati, dapat disimpulkan bahwa pembukaan aplikasi
internet yang berbeda antara client1 dengan clinet2 tidak
berpengaruh terhadap besarnya bandiwdth yang
diperoleh oleh kedua client tersebut, besarnya bandwidth
antara client1 dengan client2 tetap sama didstribusikan
oleh server walaupun aplikasi yang dibuka berbeda-beda.
Besarnya bandwidth total yang melewati interface
public, berdasarkan grafik traffic tersebut dapat dilihat
bahwa bandwidth maksimum yang masuk ke server
adalah sebesar 529,50 Kb. Jika dihubungkan dengan
prinsip kerja queue tree dan berdasarkan hasil
pengukuran bandwidth yang telah diuraikan di atas.
Maka hal ini terbukti bahwa jika hanya satu user yang
sedang menggunakan internet maka bandwidth dapat
digunakan secara penuh oleh user tersebut, dan jika ada
dua user yang aktif maka bandwidth akan dibagi sama
rata oleh server. Jika dilhat dari hasil pengukuran yang
ditunjukkan oleh kedua indikator pengukur bandwidth
tersebut terdapat sedikit perbedaan antara pengukuran
yang ditunjukkan oleh bandwidth meter dengan dengan
hasil pengukuran yang ditunjukkan oleh grafik traffic,
yaitu jika bandwidth kedua client tersebut yang
ditunjukkan oleh bandwidth meter dijumlahkan maka
hasil yang diperoleh tidak persis sama dengan maksimum
bandwidth yang ditujukkan oleh grafik traffic. Hal ini
terjadi karena bandwidth yang diperoleh oleh server
asumsinya fluktuatif, jadi pengukuran dengan bandwidth
meter sifatnya real time sedangkan pengukuran dengan
graphing sifatnya akumulasi dari keseluruhan pamakaian
bandwidth pada saat simulasi. Perbedaan ini disebabkan
oleh tidak bersaamaanya waktu pengambilan data yang
dilakukan dengan bandwidth meter dengan dengan trafik
tertinggi yang ditunjukkan oleh grafik traffic.
Pengambilan data dengan bandwidth meter dilakukan
pada pukul 18:32:00 sedangkan garfik traffic tertinggi
terjadi antara pukul 16:00:00 – 17:00:00.
Jadi berdasarkan data-data dan analisis di atas dapat
disimpulkan bahwa skenario implementasi bandwidth
control queue tree secara umum sudah berjalan sesuai
dengan yang ditetapkan.
VI. KESIMPULAN
Kesimpulan dari penelitian ini adalah :
1. Implementasi MikroTik RouterOS bandwidth
control jenis simple queue dapat mengontrol
troughtput/rate dari setiap client/user yang ada di
jaringan. Baik rate upload maupun rate download.
2. Pada implementasi bandwidth control jenis simple
queue, telah diatur bandwidth apabila resource
bandwidth sedang full atau dengan kata lain tidak
ada bandwidth idle maka user hanya mendapat
bandwidth CIR (Commited Information Rate).
Bandwidth CIR akan selalu diperoleh oleh client
apabila nilai lalu-lintas datanya tidak melebihi nilai
limit-at nya. Sedangkan apabila dalam jaringan ada
bandwidth yang tidak terpakai maka user akan
mendapatkan bandwidth masksimum sesuai dengan
yang telah dialokasikan atau mendekati bandwidth
MIR (Maksimum Information Rate). Hal ini
terbukti dari hasil penelitian dimana ketika salah
satu user sedang idle time, maka user yang lainnya
dapat menggunakan bandwidth maksimum sesuai
dengan setting max-limit nya pada simple queue,
tetapi pada saat kedua user sama-sama
menggunakan bandwidth maka masing-masing user
throughputnya akan turun atau hanya mendapat
bandwidth sesuai dengan nilai pada setting limit-at
nya.
3. Implementasi bandwidth control jenis queue tree,
yaitu sistem pembagian bandwidth sama rata untuk
setiap client yang online. Jika hanya satu client
yang sedang aktif menggunakan internet maka
bandwidth seluruhnya dapat digunakan oleh client
tersebut, jika ada dua client yang online maka
bandwidth akan dibagi sama rata untuk masing-
masing client tersebut, demikian akan berlaku
seterusnya. Hal ini terbukti dari hasil penelitian
bahwa pada saat user deone1 hanya sendiri
menggunakan internet besarnya bandwidth yang
diperoleh adalah mencapai 404,10 kbps. Tetapi
pada saat user deone1 dan deone2 sama-sama aktif
menggunakan internet maka besarnya bandwidth
yang diperoleh oleh masing-masing user tersebut
hampir sama yaitu user deone1 sebesar 232,70
kbps dan user deone2 sebesar 231,70 kbps.
Sedangkan pada simple queue alokasi bandwidth
ditetapkan per client, besarnya bandwidth yang
dapat digunakan oleh masing-masing client bisa
jadi akan berbeda antara client yang satu dengan
client lainnya tergantung dari besarnya limit-at dan
max-limit yang ditetapkan untuk masing-masing
client tersebut.
DAFTAR KEPUSTAKAAN
[1] Anonim, 2007, MikroTik RouterOS™ v2.9 Reference Manual,
MikroTik,
http://www.mikrotik.com/testdocs/ros/2.9/refman2.9.pdf.
Diakses pada tanggal 3 Desember 2008.
[2] Beer, B., 2003, Bandwidth Management, OARtech/OhioLINK
White Paper, Ohio Northern University,
http://gozips.uakron.edu/~keller/whitepaper. Diakses pada
tanggal 23 Januari 2009.
[3] Brenton, C., 2003, Network Security versi Indonesia, Elexmedia
Komputindo, Jakarta
[4] Brown, MA., 2006, Traffic Control HOWTO, http://linux-
ip.net/articles/Traffic-Control-HOWTO. Diakses pada tanggal
20 Agustus 2008.
230
[5] Ferguson, P., 1998, Quality of Service, John Wiley & Sons,
Canada.
[6] Floyd, S. dan Jacobson, V., 1995, Link-Sharing And Resource
Management Models For Packet Networks, IEEE/ACM
Transactions On Networking, Vol. 3 No. 4, Hal. 365-386.
[7] Hicks, M., 2004, Optimizing Applications on Cisco Networks,
Cisco Press, http://fengnet.com/book/Optimizing-Applications,
Diakses pada tanggal 10 Januari 2009.

231
Failover Nama Domain dengan Memanfaatkan
Fasilitas Dyndns pada ZoneEdit
Hendra
#1
Teknik Informatika, STMIK IBBI
Jl. Sei Deli No. 18 Medan, Indonesia
hendra.soewarno@gmail.com

Abstrak— Layanan Web perusahaan biasanya diakses
menggunakan nama domain oleh pengunjungnya dari
internet. Untuk meningkatkan ketersediaan dari layanan,
perusahaan biasanya menyediakan koneksi internet
cadangan untuk keperluan failover. Pada masing-masing
koneksi internet memiliki alamat IP yang berbeda,
sehingga failover dengan menyediakan koneksi cadangan
saja tidak cukup, tetapi juga diperlukan failover terhadap
nama domain agar segera menunjuk kepada alamat IP
koneksi cadangan. Makalah ini akan membahas suatu
usaha failover nama domain dengan memanfaatkan fasilitas
dyndns yang disediakan secara free oleh ZoneEdit.

Keywords— Failover nama domain, DNS, dyndns.
I. PENDAHULUAN
Dewasa ini telah banyak perusahaan di Indonesia yang
menyediakan layanan berbasis Web. Sejalan dengan
manfaat yang dirasakan, perusahaan terus
mengembangan berbagai jenis layanan melalui fasilitas
tersebut, sehingga sampai kepada suatu kondisi dimana
gangguan pada sistim tersebut dirasakan menjadi
gangguan pada kelancaran operasi bisnis.
Usaha yang dapat dilakukan perusahaan untuk
meningkatkan availability adalah dengan menggunakan
ISP yang menawarkan avaibility yang tinggi, disamping
itu perusahaan perlu juga mempertimbangkan
penyediaan koneksi internet cadangan untuk keperluan
failover, sehingga gangguan pada satu koneksi dapat
segera dialihkan ke koneksi yang lain.
Pada masing-masing koneksi internet memiliki alamat
IP yang berbeda, dan biasanya pemakai mengakses situs
Web perusahaan dengan menggunakan suatu nama
domain, penyediaan koneksi internet cadangan bukanlah
solusi yang lengkap, karena disaat koneksi utama sedang
mengalami masalah, nama domain yang ada masih
diterjemahkan sebagai alamat IP dari koneksi internet
yang sedang mengalami permasalahan, sehingga
diperlukan upaya supaya bagaimana failover terhadap
nama domain juga dapat dilakukan sehingga dapat
diterjemahkan sebagai alamat IP koneksi internet
cadangan.
Berdasarkan uraian tersebut diatas maka permasalahan
pada penelitian ini adalah bagaimana failover terhadap
nama domain dapat dilakukan secara otomatis jika terjadi
gangguan pada koneksi internet utama.
Secara umum penelitian ini adalah mendapatkan suatu
shell script yang dapat diaktifkan menggunakan fasilitas
penjadwalan aktifitas pada sistim operasi untuk
melakukan pengaturan failover nama domain secara
otomatis ketika terjadi gangguan pada koneksi internet
utama.
Penelitian ini dilakukan pada server Linux berbasis
Ubuntu 9.4 yang memiliki dua koneksi internet yang
terdiri dari satu koneksi internet dedicated, dan satu
koneksi internet DSL. Penelitian akan menggunakan
layanan dyndns yang disediakan secara gratis oleh
ZoneEdit.
Adapun asumsi pada penelitian ini adalah hardware,
software, dan koneksi internet yang dibutuhkan telah
tersedia dengan baik, dan masing-masing koneksi
internet dapat melayani permintaan koneksi dari internet
secara simultan, serta nama domain telah diregister dan
dipelihara di ZoneEdit.
II. PEMBAHASAN
Internet adalah jaringan komunikasi global yang
terbuka dan menghubungkan ribuan jaringan komputer.
Internet merupakan kumpulan komputer yang bekerja
sama secara global mendistribusikan pertukaran
informasi melalui protokol TCP/IP[1].
Cikal bakal dari Internet dikembangkan oleh
Departemen Pertahanan AS (DOD) pada tahun 1970
sebagai upaya pengembangan sarana komunikasi
berbentuk jejaring dalam rangka strategi perang dingin,
dimana serangan terhadap suatu jaringan komunikasi
tidak akan melumpuhkan komunikasi secara keseluruhan,
karena paket komunikasi dapat dialihkan melalui jalur
alternatif lainnya didalam jejaring. Didalam
perkembangannya internet juga diaplikasikan oleh
perguruan tinggi dan kalangan bisnis untuk keperluan
surat elektronik, dan pada perkembangan selanjutnya
adalah layanan Web, dan multimedia.
A. Pengalamatan IP
Agar setiap host yang tergabung didalam internet
dapat saling berkomunikasi, maka diperlukan suatu
pengalamatan yang unik yang dikenal dengan istilah
alamat IP. Pengalamatan IPvV4 terdiri dari bilangan 32
bit yang dibagi atas 4 oktet dengan masing-masing oktet
terdiri dari 8 bit, masing-masing oktet tersebut
dipisahkan oleh tanda titik. Alamat IP dapat berupa
232
private yang digunakan pada LAN, dan public yang
digunakan pada Internet[2].
Alamat IP sering juga disebut sebagai host address,
dan alamat IP diberikan kepada network interface, bukan
kepada sistim komputer. Tidak semua alamat dapat
secara bebas diberikan kepada suatu perangkat didalam
jaringan. Beberapa alamat bersifat cadangan untuk
pemakaian khusus. Pada semua jaringan, nomor host 0
dan 255 adalah bersifat cadangan. Suatu alamat IP
dengan semua bit hostnya diset ke 1 adalah alamat
broadcast. Alamat broadcast untuk jaringan 172.16
adalah 172.16.255.255. Suatu datagram yang dikirim ke
alamat tersebut akan disampaikan kepada semua host
yang berada pada jaringan 172.16. Suatu alamat IP
dengan semua bit host diset ke 0 adalah menunjuk
kepada jaringan itu sendiri, seperti 10.0.0.0. mengacu
kepada jaringan 10, dan 172.16.0.0 mengacu kepada
jaringan 172.16. Alamat dalam bentuk seperti ini
digunakan pada tabel routing untuk mengacu pada
keseluruhan jaringan. Alamat jaringan dengan byte
pertama diatas 223 tidak dapat digunakan pada suatu
jaringan fisik, karena alamat ini dicadangkan untuk
pemakaian khusus. Kemudian juga ada dua alamat untuk
keperluan khusus yaitu 0.0.0.0 yang diberikan kepada
default route dan 127.0.0.1 adalah alamat loopback.
B. Domain Name System
Domain Name System (DNS) membantu pemakai
untuk mencari jalan mereka di internet. Setiap komputer
di internet memiliki alamat IP yang unik dan sulit untuk
mengingat alamat IP dari setiap server, dan DNS
membuat hal tersebut menjadi mudah dengan
memungkinkan nama yang lebih muda untuk
mengantikan alamat IP, misalnya dari pada mengetikkan
192.0.34.65, anda dapat menggunakan www.icann.org
sebagai pengantinya, dan mnemonic ini membuat anda
lebih mudah mengingatnya[1].
Penterjemahan nama kedalam alamat IP disebut
sebagai resolving nama domain. Tujuan dari DNS adalah
agar setiap pemakai internet di manapun di dunia ini
dapat mencapai suatu website dengan alamat IP dengan
menggunakan nama domainnya. Nama domain juga
digunakan untuk mencapai e-mail maupun aplikasi
internet lainnya.
DNS sendirinya adalah suatu sistim penamaan hirarki
yang dibangun pada suatu database terdistribusi untuk
komputer, layanan, ataupun sumber daya yang terkoneksi
ke internet maupun jaringan lokal. DNS
mendistribusikan tanggung jawab untuk menjawab nama
domain menjadi alamat IP dengan mendelegasikan
authoritative name servers untuk masing-masing nama
domain. Authoritative name server diberi tanggung
jawab untuk domain tertentu, dan pada gilirannya juga
mendelegasikan authoritative name server lainnya untuk
sub-domain. Mekanisme ini membuat DNS terdistribusi
dan toleransi terhadap kegagalan dan membantu
menghindari kebutuhan suatu pusat register tunggal yang
secara kontinu dikonsultasi dan diperbaharui.
C. Name server
DNS dipelihara melalui suatu sistim database
terdistribusi yang menggunakan model client-server.
Titik dari database ini adalah name server, dan masing-
masing domain memiliki paling sedikit satu authoritative
DNS server yang mempublikasikan informasi tentang
domain dan name server dari setiap sub-domain
dibawahnya. Puncak dari hirarki adalah melayani sebagai
root nameserver[4].
Ketika nama domain didaftarkan kepada suatu domain
name registar, pada top level domain server perlu
diinstalasi primary name server dan paling sedikit satu
secondary name server yang bertugas memelihara nama
domain tersebut. Kebutuhan terhadap banyak name
server kedua adalah membuat domain tetap dapat di
resolve kalau terjadi gangguan pada name server utama.
D. Dynamic DNS
Dynamic DNS adalah metode/protokol/layanan
jaringan yang menyediakan kemampuan pada suatu
perangkat jaringan, seperti komputer atau sistim router
yang menggunakan protokol internet untuk memberitahu
DNS name server untuk mengubah secara real time
terhadap konfigurasi DNS yang aktif baik terhadap nama
host, alamat IP dan informasi lainnya. Dynamic DNS
memungkinkan anda untuk mengubah DNS setiap terjadi
perubahan alamat IP pada server anda, sehingga nama
domain anda menunjuk kepada alamat IP yang baru
tersebut[4].
E. ZoneEdit
ZoneEdit adalah penyedia jasa DNS secara online
sehingga perubahan terhadap zone record dapat
dilakukan dengan mudah. ZoneEdit menyediakan
pengaturan DNS dengan fitur Primary DNS, Secondary
DNS, dan DynDNS. Untuk layanan dua zona DNS
pertama dengan fasilitas tersebut diatas adalah free.
ZoneEdit melengkapi dirinya dengan kemampuan
failover sehingga kejadian kegagalan query dapat
dihindarkan dengan estimasi layanan standard uptime
99.5%. ZoneEdit juga menyediakan layanan berbayar
untuk Third DNS dengan estimasi standard uptime
adalah 99.998%, dan Fourth DNS dengan estimasi
standard uptime adalah 99.999999%[5].
Layanan DynDNS pada ZoneEdit dapat diupdate
dengan melakukan berbagai client tools seperti, dan pada
linux dapat menggunakan salah satu software bawaan
berikut ini[6]:
a. lynx -source -auth=username:password
'http://dynamic.zoneedit.com/auth/dynamic.html
?host=www.mydomain.com'
b. wget -O - --http-user=username --http-
passwd=password
'http://dynamic.zoneedit.com/auth/dynamic.html
?host=www.mydomain.com'
Setelah salah satu perintah tersebut dijalankan, maka
halaman dynamic.html akan mendeteksi alamat IP yang
233
melakukan request dan memperbaharui ke zona domain
tersebut, kemudian menurunkan Time-to-Live (TTL)
menjadi 5 menit untuk zona tersebut sehingga perubahan
tersebut dipropagandakan dengan cepat.
III. PERANCANGAN
Adapun langkah-langkah yang digunakan pada
penelitian ini adalah sebagai berikut:
II. Melakukan studi pustaka dengan menggambil
referensi dari beberapa situs yang relevan yang
membahas tentang teknologi internet, metode
pengalamatan, DNS, name server, dyndns, dan
layanan dyndns pada ZoneEdit.
III. Mempelajari arsitektur jaringan yang ada, dan
melakukan pengumpulan data jaringan berupa
interface, alamat IP, alamat network, dan gateway
untuk masing-masing koneksi ISP.
IV. Mengembangkan algoritma langkah-langkah setting,
dan melakukan setting manual dan melakukan
pengujian atas hasil setting, serta merangkum setting
konfigurasi menjadi suatu script yang dapat
diaplikasikan.
V. Melakukan pengambilan kesimpulan dan saran.
A. Arsitektur Jaringan
Pada Gambar 1 merupakan gambaran dari konfigurasi
jaringan yang ada diperusahaan, yaitu terdiri dari satu
Web server yang memiliki dua koneksi internet yaitu
koneksi dedicated yang menggunakan provider
LintasArta, dan satu koneksi internet yang menggunakan
provider Telkom speedy fixed IP address. Kemudian
perusahaan menggunakan nama domain www.idnet.co.id
untuk layanan Web.



Gambar 1. Arsitektur jaringan di perusahaan
Koneksi internet DSL dilakukan dengan dialup
langsung dari server ke modem DSL, atau dengan kata
lain DSL modem diset ke modus bridge.
B. Pengalamatan pada server
Berdasarkan arsitektur tersebut diatas, maka Web
server tersebut diatas memiliki konfigurasi banyak
koneksi internet atau dikenal juga dengan istilah
multihomed, dimana terdiri dari interface ke jaringan
internet Lintasarta (eth0), interface jaringan internet
telkom Speedy (eth1 --> ppp0), dan interface ke LAN
(eth2). Pada masing-masing interface memiliki
pengalamatan seperti yang ditunjukan pada Tabel I.
Permasalah tersebut diatas adalah nama domain
www.idnet.co.id adalah diterjemahkan sebagai alamat IP
182.23.35.114, dan jika terjadi gangguan pada koneksi
182.23.35.114, tentu saja segera nama domain
www.idnet.co.id harus diterjemahkan sebagai ke alamat
IP koneksi cadangan yaitu 125.165.41.65.
TABEL I
PENGALAMATAN IP PADA SERVER
Interface Pengalamatan Keterangan
eth0 IP Address: 182.23.35.114
Mask: 255.255.255.248
Network Address: 182.23.35.112
Default GW: 182.23.35.113
Koneksi ke ISP
LintasArta
ppp0 IP Address: 125.165.41.65
Mask: 255.255.255.255
P-t-P: 125.165.40.1
Default GW: 125.165.40.1
Koneksi ke ISP
Telkom Speedy
(eth1-->ppp0)
eth2 IP Address:192.168.0.1
Netmask: 255.255.255.0
Koneksi ke LAN
C. Algoritma
Adapun algoritma yang digunakan untuk melakukan
failover DNS adalah ditunjukan pada Gambar 3.

Gambar 2 Algoritma failover domain name
www.idnet.com
234
Adapun Gambar 2 dapat dijelaskan bahwa secara
berkala akan diperiksa apakah koneksi utama bekerja
dengan baik, jika ya maka akan diperiksa apakah flag
DNS mengacu kepada alamat IP koneksi utama, jika ya
maka tidak ada perubahan yang perlu dilakukan, dan
sebaliknya maka perlu dilakukan perubahan agar DNS
menunjuk ke alamat IP koneksi internet utama. Jika
koneksi internet utama tidak bekerja, maka akan
diperiksa apakah DNS saat ini menunjuk ke alamat IP
koneksi cadangan, jika ya maka tidak ada perubahan
yang perlu dilakukan dan sebaliknya maka dilakukan
perubahan agar DNS menunjuk ke alamat IP koneksi
internet cadangan.
D. Aplikasi pada Linux
Agar aplikasi dapat diimplementasikan, maka ada
beberapa hal yang perlu dilakukan adalah bagaimana
pendeteksian suatu koneksi dilakukan untuk mengetahui
apakah koneksi tersebut bekerja dengan baik atau tidak.
Adapun strategi yang dilakukan adalah menjalankan
perintah ping terhadap alamat gateway yang berada pada
loncatan kedua dari pemberian perintah traceroute, jika
proses ping gagal, maka akan dilakukan sleep selama 30
detik, dan dicoba lagi sekali ping ke alamat gateway
yang dimaksud, dan jika hasil ping gagal juga, maka
dinyatakan bahwa koneksi internet tersebut tidak dapat
berfungsi. Adapun script pengujian koneksi utama adalah
sebagai berikut:

hasil11=$(ping -I eth0 -c 1 -t 10 182.23.35.113 |grep '64
bytes from')
sleep 30
hasil12=$(ping -I eth0 -c 1 -t 10 182.23.35.113 | grep '64
bytes from')
hasil1="$hasil11$hasil12"

Kemudian untuk perubahan setting DNS dapat
menggunakan script sebagai berikut, dimana pertama
dilakukan setting route ke host dynamic.zoneedit.com
(64.85.73.112), sehingga koneksi akan keluar melalui
interface koneksi internet yang diinginkan:

/sbin/route del -host 64.85.73.112
/sbin/route add -host 64.85.73.112 dev ppp0
hasil3=$(/usr/bin/wget -O - --http-user=username --http-
passwd=password
'http://64.85.73.112/auth/dynamic.html?host=www.idnet.
co.id')

Karena proses pemantauan dilakukan setiap satu menit
sekali, maka shell script tersebut akan dibangkitkan
melalui crontab.
E. Pembuatan Shell Script
Secara lengkap shell script yang digunakan untuk
melakukan failover dns yang disimpan pada
failoverdns.sh sebagai berikut:

#!/bin/sh
koneksi=$(cat /var/log/current)

#ping ke gateway loncatan kedua koneksi lintasarta
hasil11=$(ping -I eth0 -c 1 -t 10 182.23.35.113 | grep '64
bytes from')
sleep 30
hasil12=$(ping -I eth0 -c 1 -t 10 182.23.35.113 | grep '64
bytes from')

hasil1="$hasil11$hasil12"

#ping ke gateway loncatan kedua koneksi speedy
hasil2=$(ping -I ppp0 -c 1 -t 10 125.165.15.253 | grep '64
bytes from')
hasil3=""
hasil4=""
waktu=$(date)

if [ "$hasil1" != "" ]
then
if [ "$koneksi" != "lintas" ]
then
echo $waktu >/var/log/failoverdnslog
echo 'set ke speedy' >>/var/log/failoverdnslog
/sbin/route del -host 64.85.73.112
/sbin/route add -host 64.85.73.112 dev eth0
hasil3=$(/usr/bin/wget -O - --http-user=username
--http-passwd=password
'http://64.85.73.112/auth/dynamic.html?
host=www.idnet.co.id')
echo $hasil3 >>/var/log/failoverdnslog
hasil4=$(echo $hasil3 | grep 'Update succeeded')
if [ "$hasil4" != "" ]
then
echo 'lintas' > /var/log/current
/usr/bin/mail -s "Fail over www.idnet.co.id"
"it@idnet.co.id" <
/var/log/failoverdnslog
fi
fi
else
if [ "$koneksi" != "speedy" ]
then
if [ "$hasil2" != "" ]
then
echo $waktu >/var/log/failoverdnslog
echo 'set ke lintas' >>/var/log/failoverdnslog
/sbin/route del -host 64.85.73.112
/sbin/route add -host 64.85.73.112 dev ppp01
hasil3=$(/usr/bin/wget -O - --http-user=username
–http-passwd=password
'http://64.85.73.112/auth/dynamic.html?
host=www.idnet.co.id')
echo $hasil3 >>/var/log/failoverdnslog
hasil4=$(echo $hasil3 | grep 'Update succeeded')
if [ "$hasil4" != "" ]
235
then
echo 'speedy' > /var/log/current
/usr/bin/mail -s "Fail over www.idnet.co.id"
"it@idnet.co.id" <
/var/log/failoverdnslog
fi
fi
fi
fi
IV. IMPLEMENTASI
A. Pengaktifan shell script
Agar script ini dapat dieksekusi setiap satu menit
sekali, maka akan dipasang pada fasilitas penjadwal
kegiatan pada Linux yaitu crontab sebagai berikut:

#m h dom mon dow command
*/1 * * * * /usr/bin/failoverdns.sh

B. Pengujian terhadap hasil setting
Untuk melakukan pengujian, maka setelah shel script
dipasang pada crontab, selanjutkan dilakukan dengan
simulasi memutuskan koneksi internet utama, sehingga
lebih kurang satu menit kemudian diperoleh log sebagai
berikut:

server@idnet:/var/log$ cat failoverdnslog
set ke speedy <SUCCESS CODE="200" TEXT="Update
succeeded." ZONE="idnet.co.id"
HOST="www.idnet.co.id" IP="125.165.41.65">

Kemudian dilakukan ping dari internet dengan
menggunakan koneksi smartfren terhadap
www.idnet.co.id, ternyata dibutuhkan waktu lebih
kurang 5 menit agar DNS smartfren menjadi efektif di
resolve ke alamat www.idnet.co.id menjadi
125.165.41.65.
Selanjutnya pengujian dilanjukan dengan
menghidupkan kembali koneksi internet utama sehingga
lebih kurang satu menit kemudian diperoleh log sebagai
berikut:

server@idnet:/var/log$ cat failoverdnslog
set ke speedy <SUCCESS CODE="200" TEXT="Update
succeeded." ZONE="idnet.co.id"
HOST="www.idnet.co.id" IP="182.23.35.114">

Kemudian dilakukan ping dari internet dengan
menggunakan koneksi smartfren terhadap
www.idnet.co.id, ternyata dibutuhkan waktu lebih
kurang 5 menit agar DNS smartfren menjadi efektif di
resolve kealamat www.idnet.co.id menjadi
182.23.35.114.
Ketika pengujian dilakukan dengan DNS lookup tools
yang disediakan oleh Mxtooblox pada alamat
http://www.mxtoolbox.com/DNSLookup.aspx, maka
dapat terlihat bahwa resolve terhadap nama domain
adalah langsung berubah ke alamat terakhir hasil failover.
V. KESIMPULAN
Fasilitas dyndns pada ZoneEdit dapat digunakan untuk
keperluan failover DNS, tetapi didalam implementasinya
membutuhkan pengembangan algoritma pendeteksian
koneksi internet utama, dan melakukan perubahan
catatan DNS dengan perintah yang disediakan oleh
ZoneEdit.
Hasil failover yang dilakukan membutuhkan waktu
lebih kurang 5 menit (sesuai dengan TTL yang diset oleh
ZoneEdit) agar DNS server pada koneksi internet
melakukan refresh (dalam pengujian ini menggunakan
koneksi internet smartfren) menghasilkan resolve atas
domain name menjadi alamat IP failover.
VI. SARAN
Untuk layanan server yang membutuhkan availability
yang tinggi disarankan untuk menggunakan layanan
failover komersial yang menggunakan pendekatan
memiliki waktu tanggap yang lebih cepat.
DAFTAR PUSTAKA
- Velocity Guide, TCP/IP Protocol Suite,
http://www.velocityguide.com/internet-history/tcp-
ip.html, Web Exordium, 2004-2008.
- Internic, The Domain Name System: A nom-Technical
Explanation – Why Universal Resolvability is Important,
http://www.internic.net/faqs/authoritative-dns.html,
October 2002.
- Craig Hunt, TCP/IP Network Administration Thrid
Edition, O'Reilly Media, Inc., United States of America,
2002.
- Wikipedia, Domain Name System,
http://en.wikipedia.org/wiki/Domain_name_system
- ZoneEdit, Why Zone Edit?,
http://www.zoneedit.com/whyZoneEdit.html, 2008
- ZoneEdit, ZoneEdit FAQ,
http://www.zoneedit.com/faq.html, 2008



236
Penggunaan Jaringan Computer
untuk Perusahaan/Organisasi, Umum
dan Social Jaringan

Mawardi
#1
Program Studi PascaSarjana Teknik Informatika, Universitas Sumatera Utara
1
mawardi_m.yusuf@yahoo.co.id

Abstrak— Jaringan komputer (computer network)
yaitu berkembangnya teknologi komputer dan
komunikasi suatu model komputer tunggal yang
melayani seluruh tugas-tugasnya kini telah diganti
dengan sekumpulan komputer yang terpisah-pisah
akan tetapi saling berhubungan dalam melaksanakan
tugas komputasi suatu Perusahaan / Organisasi,
umum dan social jaringan. Selain itu perangkat
keras dan perangkat lunak jaringan telah benar-
benar berubah, di awal perkembangannya hampir
seluruh jaringan dibangun dari kabel koaxial, kini
banyak diantaranya dibangun dari serat optik (fiber
optics) atau komunikasi tanpa kabel.

Kata Kunci— Jaringan (Network), Local Area
Network (LAN), Metropolitan Area Network (MAN),
Wide Area Network (WAN)

I. PENDAHULUAN
Perkembangan teknologi komputer meningkat
dengan cepat, hal ini terlihat pada era tahun 80-an
jaringan komputer masih merupakan teka-teki yang ingin
dijawab oleh kalangan akademisi, dan pada tahun 1988
jaringan komputer mulai digunakan di universitas-
universitas, perusahaan-perusahaan, sekarang memasuki
era Globalisasi ini terutama world wide internet telah
menjadi realitas sehari-hari jutaan manusia di muka bumi
ini.
Selain itu perangkat keras dan perangkat lunak
jaringan telah benar-benar berubah, di awal
perkembangannya hampir seluruh jaringan dibangun dari
kabel koaxial, kini banyak telah diantaranya dibangun
dari serat optik (fiber optics) atau komunikasi tanpa
kabel.

II. LANDASAN TEORI
A. Definisi Jaringan Komputer
Dengan berkembangnya teknologi komputer dan
komunikasi suatu model komputer tunggal yang
melayani seluruh tugas-tugas komputasi suatu organisasi
kini telah diganti dengan sekumpulan komputer yang
terpisah-pisah akan tetapi saling berhubungan dalam
melaksanakan