Pengembangan Mekanisme One Time Password

advertisement
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
1
Pengembangan Mekanisme One Time Password
dengan Menggunakan Strategi Dual Channel
pada Aplikasi Web
Dian Rahma L.H., Waskitho Wibisono, dan Baskoro Adi Pratomo
Teknik Informatika, Teknologi Informasi, Institut Teknologi Sepuluh Nopember (ITS)
Jl. Arief Rahman Hakim, Surabaya 60111 Indonesia
e-mail: [email protected]
Abstrak—Salah satu gangguan yang terjadi pada pertukaran
data di dunia maya adalah adanya serangan phishing terhadap
kata sandi pengguna sebuah sistem web. Pada dasarnya
penyerang mengelabui pengguna untuk memberi tahu data
rahasia mereka dengan mengirimkan sebuah pesan palsu.
Pengguna yang tidak mencurigai hal tersebut akan secara
sukarela akan memberikan informasi rahasia mereka kepada
penyerang. Atas dasar inilah diperlukan sebuah mekanisme One
Time Password (OTP) yang bertujuan untuk mencegah terjadinya
serangan phishing pada kata sandi pengguna. Mekanisme OTP
ini menggunakan kata sandi sekali pakai untuk masuk ke dalam
sebuah sistem web. Kata sandi tersebut dikirimkan oleh sebuah
service OTP kepada pengguna melalui dua saluran komunikasi
sekunder yakni aplikasi instant messaging yang tidak diketahui
oleh penyerang dan email pengguna. Setelah diujikan, aplikasi ini
dapat meningkatkan pengamanan penggunaan kata sandi
pengguna dari serangan phishing karena kata sandi selalu
berubah-ubah. Dan kata sandi dikirimkan melalui 2 secondary
channel.
ditujukan untuk meningkatkan pengamanan penggunaan kata
sandi dari serangan phishing. Mekanisme OTP ini
membutuhkan saluran komunikasi sekunder yang terpercaya.
Ketika pengguna mencoba masuk ke dalam sistem, service
OTP akan mengirimkan OTP melalui saluran komunikasi
sekunder ini. Sehingga penyerang hanya akan mampu
mendapatkan nama pengguna saja tanpa kata sandi untuk
mengakses sistem.
Adapun saluran komunikasi sekunder yang digunakan
pada aplikasi ini adalah aplikasi instant messaging. Karena
kebutuhan sistem untuk pengiriman OTP ini dilakukan secara
real-time. Disamping itu layanan ini tersedia secara murah dan
mudah didapatkan oleh pengguna. Sudah banyak dari penyedia
layanan ini yang mengamankan saluran komunikasi mereka.
Sehingga layanan pesan instan ini adalah solusi terbaik untuk
mengirimkan OTP [3]. Disamping itu, pengiriman OTP juga
dilakukan melalui email, agar pengguna memiliki secondary
channel kedua untuk dimanfaatkan.
Kata kunci—Phishing, One Time Password, Sekuritas Data
I. PENDAHULUAN
D
EWASA ini phishing merupakan ancaman serius
terhadap keamanan informasi rahasia pengguna internet.
Menurut Dhamija [1] phishing adalah sebuah aktifitas
berbahaya dan jahat dimana seorang penyerang mencoba
untuk menipu pengguna internet agar memasukkan informasi
rahasia mereka.
Pada umumnya, penyerang mengelabui pengguna
internet dengan mengarahkan mereka ke sebuah situs palsu
yang menyerupai situs aslinya. Penyerang kemudian
mengirimkan sebuah pesan palsu untuk meminta pengguna
mengikuti sejumlah instruksi. Bagi para pengguna yang tidak
menyadarinya, maka akan secara otomatis mengikuti instruksi
yang diberikan. Dan tanpa sadar, mereka memberikan
informasi rahasia mereka kepada penyerang. Terlebih lagi
serangan ini semakin dipermudah dengan hadirnya phishing
kits yang tersedia secara bebas [1]. Berdasarkan data yang
ada[2], sebanyak 70% situs phishing yang ada bertujuan untuk
mencuri username dan kata sandi pengguna.
Atas dasar inilah dibangun sebuah mekanisme One
Time Password (OTP), yakni kata sandi yang hanya bisa
digunakan untuk sekali pakai oleh pengguna. Aplikasi ini
II. TINJAUAN PUSTAKA
A. Serangan Phishing
Seperti yang ditulis dalam Webopedia, phishing merupakan
sebuah serangan dalam jaringan internet yang dilakukan
dengan mengirimkan sebuah pesan palsu, bisa dengan
menggunakan email atau cara yang lain. Pesan yang
dikirimkan tersebut mengarahkan asumsi pengguna internet
bahwa pesan tersebut berasal dari pihak yang sah. Pesan yang
dikirimkan pada umumnya berisi sebuah instruksi untuk
mengunjungi suatu situs tertentu yang menyerupai situs yang
asli. Ketika mengunjungi situs tersebut pengguna diminta
untuk memberikan informasi rahasia mereka seperti kata sandi,
akun bank dan lain sebagainya. Kemudian situs tersebut
mencuri informasi yang telah dimasukkan pengguna dan
menggunakannnya untuk tujuan yang tak dapat diprediksi [4].
B. Layanan Instant Messaging
Instant messaging (IM) merupakan aplikasi pada internet
yang mengijinkan terjadinya komunikasi one-to-one antar
pengguna. Dewasa ini, layanan IM ini telah banyak ditemui.
Dengan layanan IM ini pengguna dengan cepat mendapatkan
respon setelah mereka mengirimkan sebuah pesan. Layanan
IM ini menyediakan sebuah komunikasi real-time dan
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
chatting. Contoh dari aplikasi layanan IM ini adalah Yahoo
Messenger, Gtalk, ICQ, AOL,dan MSN[5].
2
akan digunakan pada saat terjadinya pertukaran data antara
klien web service dengan web service.
Gambar 1. Arsitektur Web Service
C. Web Service
Alonso dan Gustavo [6] mendefinisikan web service sebagai
sebuah aplikasi yang dapat diakses oleh aplikasi lain melalui
suatu web. Definisi lain menurut UDDI adalah sebuah
aplikasi bisnis modular yang mandiri yang bisa diakses melalui
koneksi internet dan memiliki antarmuka. Dengan kata lain
web service merupakan web yang memberikan layanan
aplikasi yang dapat digunakan bersama dan memiliki
antarmuka publik yang dapat diakses melalui internet [6].
Suatu web service dapat berinteraksi secara langsung
dengan aplikasi lain dengan menggunakan bahasa XML, untuk
saling bertukar pesan melalui protokol untuk internet. Adapun
arsitektur web service dapat dilihat pada Gambar 1.
Adapun penjelasan dari ketiga peran seperti yang
terlihat pada Gambar 1 adalah sebagai berikut.
a. Service provider, yaitu entitas yang menyediakan interface
terhadap sistem yang menjalankan suatu kumpulan tugas
tertentu.
b. Service requestor, yaitu entitas yang meminta atau
mendapatkan layanan, serta yang menggunakan layanan
tersebut.
c. Service registry, yaitu entitas yang bertindak sebagai
penyimpan suatu layanan yang dipublikasikan oleh service
provider.
D. Algoritma RC4
Algoritma RC4 merupakan salah satu algoritma yang sering
digunakan dalam pemenuhan kebutuhan pengamanan data.
Algoritma ini merupakan salah satu algoritma enkripsi
simetris yang berbentuk stream chipper [7]. Algoritma ini
ditemukan pada tahun 1987 oleh Ronald Rivest. RC4
menggunakan panjang kunci dari 1 sampai 256 bit yang
digunakan untuk menginisialisasikan tabel sepanjang 256 bit.
Secara garis besar algoritma dari metode RC4 Stream
Cipher ini terbagi menjadi dua bagian, yaitu: key setup dan
Stream Cipher generation. Pada key setup terdapat tiga
tahapan proses di dalamnya, yaitu inisialisasi S-Box,
menyimpan key dalam key byte array, permutasi pada S-Box.
Pada stream generation akan menghasilkan nilai
pseudorandom yang akan dikenakan operasi XOR untuk
menghasilkan ciphertext ataupun sebaliknya yaitu untuk
menghasilkan plaintext [7]. Pada aplikasi ini, enkripsi RC4
Gambar 2. Arsitektur Sistem
E. Algoritma RSA
RSA merupakan salah satu algoritma enkripsi asimetrik.
RSA menggunakan sepasang kunci untuk proses dekripsi dan
enkripsinya [8]. Kunci-kunci yang ada pada pasangan kunci
mempunyai hubungan secara matematis. Kunci tersebut diberi
nama dengan istilah private key dan public key. Adapun
pembuatan pasangan kunci private key dan public key
didapatkan dari penghitungan pangkat eksponen dan modulus
dari variabel-variabel yang dibutuhkan. Pada aplikasi ini,
enkripsi RSA akan digunakan pada saat pengiriman OTP dari
web service OTP ke aplikasi instant messaging dan email
pengguna.
III. ANALISIS DAN PERANCANGAN SISTEM
A. Deskripsi Umum Sistem
Aplikasi ini merupakan aplikasi yang bertujuan untuk
membentuk sistem keamanan pada suatu situs web yang
bertujuan untuk mencegah terjadinya serangan phishing pada
kata sandi pengguna. Pencegahan ini dilakukan dengan cara
mengirimkan One Time Password yang hanya dapat digunakan
untuk sekali login melalui dua secondary channel yang tidak
diketahui oleh penyerang. Jalannya aplikasi ini dimulai dengan
proses autentikasi pengguna yang akan masuk ke dalam suatu
sistem situs web, baik berupa pemakaian data maupun
penggunaan layanannya. Oleh karena itu, aplikasi berbasis web
dan desktop ini merupakan terobosan untuk mencegah
serangan dengan menggunakan mekanisme One Time
Password (OTP). Adapun arsitektur sistem ini dapat dilihat
pada Gambar 2.
Pada rancangan arsitektur umum ini, menjelaskan
proses perancangan secara umum dari kinerja sistem. Di mana
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
Gambar 3. Diagram Alir Data Level 0 Aplikasi
proses yang dilakukan pertama kali oleh sistem ini adalah
poses autentikasi pengguna yang akan masuk ke dalam sistem
situs web. Kemudian situs web yang dituju mengakses sebuah
web service yang menyediakan layanan OTP untuk melakukan
pembacaan pada database. Selanjutnya web service layanan
OTP tersebut melakukan koneksi kepada server instant
messaging dan mail server. Kemudian mengirimkan OTP
kepada pengguna melalui layanan instant messaging dan
email.
B. Perancangan Fungsionalitas Sistem
Pada aplikasi OTP ini digunakan diagram konteks untuk
mendefinisikan kebutuhan perangkat lunak. Aplikasi ini akan
bekerja pada dua proses, yakni proses registrasi dan proses
login. Pada proses login, aplikasi ini bertujuan untuk
mengeliminasi penggunaan kata sandi yang bersifat statis.
Pengguna diminta untuk memasukkan nama pengguna tanpa
kata sandi. Selanjutnya pengguna memasukkan akun Instant
Messaging(IM) dan informasi autentikasi. Pengguna harus
memasukkan akun IM yang didukung oleh situs web yang
bersangkutan. Informasi autentikasi merupakan jawaban dari
security question. Kemudian sistem melakukan validasi,
dengan terlebih dahulu memunculkan tes CAPTCHA untuk
memastikan bahwa yang melakukan proses registrasi adalah
manusia bukan robot.
Berikut ini adalah penjelasan tiap proses yang terdapat pada
aplikasi.
1. Melakukan Registrasi
Registrasi adalah proses di mana pengguna dapat
mendaftarkan diri pada layanan OTP ini. Data yang
dibutuhkan saat registrasi adalah username, email, dan
informasi personal. Informasi personal merupakan jawaban
dari pertanyaan autentikasi yang diberikan oleh sistem.
Apabila pengguna memasukkan username yang telah ada
atau memasukkan data kurang lengkap, maka akan muncul
peringatan dari sistem bahwa proses registrasi tidak
berhasil.
3
2. Melakukan Login pada Aplikasi Web
Proses login adalah proses di mana pengguna
memasukkan username dan kata sandi untuk dapat
mengakses sebuah sistem. Proses login pada aplikasi ini
akan dilakukan dalam dua langkah. Langkah yang pertama
adalah login dengan username. Langkah yang kedua adalah
login dengan memasukkan OTP. Alur kasus penggunaan
fungsi ini adalah pengguna terlebih dahulu melakukan
proses registrasi agar username terdaftar pada sistem.
Kemudian pengguna memasuki halaman login yang
pertama. Selanjutnya pengguna memasukkan username.
Apabila username yang dimasukkan salah, pengguna
telah gagal melakukan login tahap 1. Akan tetapi jika
username yang dimasukkan benar, maka sistem akan
mengarahkan pengguna ke halaman CAPTCHA. Apabila
pengguna lolos dalam tes CAPTCHA maka sistem akan
mengirimkan OTP ke aplikasi instant messaging.
Selanjutnya pengguna harus memasukkan OTP yang telah
dikirimkan di halaman login OTP yang telah disediakan.
Apabila OTP yang dimasukkan benar, maka pengguna akan
bisa memasuki sistem. Akan tetapi jika salah atau melebihi
waktu yang diberikan, maka pengguna harus melakukan
proses login dari awal.
3. Melakukan Login pada Aplikasi Instant Messaging
Aplikasi instant messaging ini digunakan sebagai saluran
komunikasi kedua untuk pengiriman OTP dari layana OTP
kepada pengguna. Pengguna harus terlebih dahulu
melakukan login pada aplikasi instant messaging sebelum
login pada aplikasi web. Karena pada proses login di
aplikasi instant messaging ini, aplikasi akan mengirimkan
public key pengguna ke layanan OTP.
Data yang dibutuhkan pada saat login ini adalah
username, email, dan kata sandi email. Apabila pengguna
kurang lengkap dalam memasukkan data atau username
yang dimasukkan tidak terdapat pada database, maka proses
login ini tidak dapat dilakukan.
IV. IMPLEMENTASI
Sistem ini terdiri dari aplikasi berbasis web dan aplikasi
berbasis desktop. Pada aplikasi berbasis web dan web service,
dibangun dengan menggunakan bahasa pemrograman PHP.
Sedangkan pada aplikasi berbasis desktop dibangun
menggunakan bahasa pemrograman Java.
Berikut deskripsi dari implementasi masing-masing fungsional
pada aplikasi ini.
1. Proses Registrasi
Pada proses registrasi, implementasi terdapat pada
halaman web sebagai klien web service OTP dan pada web
service itu sendiri. Untuk impementasi pada halaman
register dapat dilihat pada Gambar 4. Pada Gambar 4
tersebut terlihat bahwa data yang dibutuhkan adalah
username, email, dan informasi personal pengguna. Apabila
pengguna berhasil melakukan proses registrasi maka sistem
akan mengarahkan
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
4
Gambar 4. Implementasi Fungsi Register pada Aplikasi Web
pengguna ke halaman tes CAPTCHA. Pada saat melakukan
proses registrasi, aplikasi web sebagai klien web service
OTP akan memanggil fungsi register() yang ada pada web
service. Pada fungsi itu dilakukan pengecekan apakah
username yang dimasukkan telah terdaftar atau belum. Jika
sudah terdaftar, maka proses registrasi gagal dan service
OTP mengembalika respon “undone”. Sedangkan jika
register berhasil service OTP mengembalikan respon
“done”.
2. Proses Login
Pada saat proses login aplikasi web akan memanggil
fungsi login() yang terdapat pada web service OTP. Aplikasi
web OTP mengirimkan data username yang dimasukkan
oleh pengguna kepada web service OTP. Selanjutnya web
service menjalankan query. Jika username terdapat pada
database, maka proses login berhasil. Apabila login
berhasil, maka pengguna akan diarahkan untuk melakukan
tes CAPCTHA. Jika berhasil, maka web service akan
membangkitkan OTP dan mengirimkannya ke aplikasi
instant messaging dan email
pengguna. Adapun
pseudocode fungsi login terdapat pada Gambar 5.
 Input
Username: Masukkan username dari pengguna
 Output
Hasil validasi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Web Service Client call function
login(username)
Get username
Web Service do function login(username)
if user.exists() return true
else return false
Web Service Client call function
captchaTest(username, usersession)
Web Service Client call function
generateOTP(heksaUsername, userSession)
Web Service do generateOTP(heksaUsername,
userSession)
Return Otp
encryptData(Otp)
sendOTP()
Gambar 5. Pseudocode Proses Login
Gambar 6. Implementasi Proses Pengiriman OTP dari Web Service ke
Aplikasi Instant Messaging
3. Proses Pembangkitan OTP
Proses Pembangkitan OTP dilakukan ketika pengguna
telah berhasil hingga tahap tes CAPTCHA. OTP yang
dibangkitkan kemudian akan dikirimkan ke aplikasi instant
messaging. OTP tersebut akan dienkripsi terlebih dahulu
sebelum dikirimkan dengan menggunakan algoritma RSA.
Adapun hasil implementasi proses ini dapat dilihat pada
Gambar 6. Implementasi fungsi ini dapat dilihat pada
pseudocode di Gambar 7.
 Input
Username : Data masukan username yang diperoleh dari cookie
pada browser pengguna
userSession : Data masukkan session pengguna yang diambil dari
database
 Output
theOtp : OTP yang dibangkitkan oleh web service
1
2
3
4
5
6
7
8
9
10
11
Web Service Client call function
generateOTP(username, usersession)
Web Service do generateOTP(username,
usersession)
Initialize theOtp
for i = 0 to 7
do
theOtp = heksaUsername[i]
for i = 0 to 7
do
theOtp += usersession[i]
write theOtp to database
return theOtp
Gambar 7. Pseudocode Pembangkitan OTP
4. Proses Dekripsi OTP yang Dikirim Melalui Email
OTP yang dikirimkan melalui email pengguna masih
berupa chiper text yang harus didekripsi terlebih dahulu
sebelum pengguna menggunakannya.
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
5
Gambar 9. Uji Coba Proses Login
Gambar 11.Menu Dekripsi OTP
Gambar 10. Uji Coba Proses Tes CAPTCHA
Dekripsi OTP yang dikirim melalui email tersebut daat
dilakukan dengan memasukkan chiper text ke dalam menu
dekrip yang telah disediakan pada aplikasi desktop sistem
ini. Setelah melalui proses dekripsi pengguna dapat
menggunakan OTP tersebut, sekaligus membandingkan
apakah OTP yang dikirimkan melalui aplikasi instant
messaging sama dengan yang dikirimkan melalui email.
Implementasi proses ini dapat dilihat pada Gambar 11.
V. PENGUJIAN DAN EVALUASI
Pengujian dilakukan untuk menguji apakah fungsionalitas
sistem sudah berjalan dengan benar. Pengujian juga dilakukan
untuk menguji performa aplikasi. Rincian pengujian adalah
sebagai berikut.
1. Pengujian Fungsi Login
Pengujian ini dilakukan dengan memasukkan username,
kemudian jawaban tes CAPTCHA, selanjutnya memasukkan
OTP yang dikirimkan oleh web service OTP.
Gambar 9 menunjukkan uji coba pada proses login. Jika
berhasil, maka pengguna akan diarahkan ke halaman
CAPTCHA seperti yang terdapat pada Gambar 10. Apabila
pengguna berhasil dalam tes CAPTCHA, maka sistem akan
mengirimkan OTP kepaa aplikasi instant
Gambar 12. Uji Coba Pengiriman OTP
messaging. Uji coba ini dapat dilihat pada Gambar 12. OTP
yang dikirimkan kemudian dimasukkan di halaman login
dengan OTP agar pengguna bisa mengakses sistem.
2. Pengujian Fungsi Register
Pengujian ini dilakukan dengan memasukkan data
username, email dan jawaban pertanyaan autentikasi. Pada
Gambar 13 menunjukkan uji coba proses register. Pengguna
memasukkan data-data yang dibutuhkan. Apabila username
belum terdaftar dan data yang dimasukkan lengkap, maka
proses registrasi berhasil.
3. Pengujian Performa Penggunaan Bandwidth
Pengujian performa penggunaan bandwidth ini dilakukan
dengan membandingkan penggunaan pemakaian bandwidth
ketika menggunakan enkripsi dan tanpa menggunakan
enkripsi. Maka didapatkan bahwa selisih penggunaan
bandwidth adalah sebesar 0,0072 KB/s. Grafik hasil
pengujian performa ini dapat dilihat pada Gambar 14.
4. Pengujian Performa Kecepatan Waktu Respon Tiap Proses
dengan 20 request simultan.
Uji coba dilakukan dengan menjalankan aplikasi Apache
Jmeter. Kemudian mengatur jumlah Thread User yang akan
mengakses service pada waktu yang sama.
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
6
Gambar 15. Uji Coba Waktu Respon Tiap Proses dengan 20 Request
Simultan
Gambar 13. Uji Coba Proses Register
2. Web Service Layanan OTP dapat melayani klien web service
dengan cukup cepat meskipun menggunakan proses enkripsi.
Hal ini dibuktikan dengan selisih rata-rata waktu yang
dibutuhkan untuk menjalankan fungsional dengan
menggunakan enkripsi hanya 62,8 ms dengan proses tanpa
enkripsi.
3. Aplikasi memiliki waktu rata-rata 1233,4 ms untuk
menjalankan keseluruhan fungsi. Ujicoba dilakukan dengan
mensimulasikan 5 hingga 30 request secara simultan yang
mengakses web service layanan OTP dalam waktu yang
sama.
4. Penggunaan bandwidth pada aplikasi ini tidak terdapat
perubahan signifikan meskipun menggunakan algoritma
enkripsi. Hal ini dibuktikan dengan selisih rata-rata
penggunaan bandwidth tiap proses tidak ada perbedaan yang
signifikan. Selisih pada proses 1 adalah sebesar 0,017 KB/s.
Selisih pada proses 2 adalah sebesar 0,007 KB/s, sedangkan
pada proses 3 sebesar 0,013 KB/s.
Gambar 14. Uji Coba Perbandingan Pemakaian Bandwidth
Selanjutnya Membuat HTTP requests yang menggambarkan
klien web service mengirim request ke web service. Uji coba
dilakukan dengan mengirimkan request langsung dari 20
pengguna. Adapun hasil dari pengujian ini dapat dilihat pada
Gambar 15.
Dari hasil pengujian dapat dilihat bahwa proses yang
membutuhkan waktu paling lama dalam eksekusi adalah
proses login dengan OTP. Hal ini dikarenakan web service
layanan OTP harus terlebih dahulu mengirim OTP ke
aplikasi chat baru kemudian memberi respon balik ke klien
web service. Adapun rata-rata waktu yang dibutuhkan proses
1 adalah 804,5 ms. Pada proses 2 membutuhkan rata-rata
waktu 347,5 ms. Sedangkan pada proses 3 membutuhkan
waktu rata-rata 642,25 ms.
UCAPAN TERIMA KASIH
Penulis D.R. mengucapkan terima kasih kepada Allah SWT,
kedua orangtua dan keluarga penulis, dosen pembimbing,
seluruh dosen Teknik Informatika ITS, kerabat dekat, serta
berbagai pihak yang telah membantu penulis dalam
menyelesaikan penelitian ini.
DAFTAR PUSTAKA
[1]
[2]
[3]
[4]
VI. KESIMPULAN/RINGKASAN
Dari hasil pengamatan selama perancangan,
pengimplementasian, dan proses uji coba sistem didapatkan
kesimpulan sebagai berikut.
1. Mekanisme One Time Password ini dapat menjadi salah satu
solusi pengamanan kata sandi karena satu kata sandi hanya
dapat digunakan untuk satu kali proses login.
[5]
[6]
[7]
[8]
McMillan R, 2006 “Rock Phish Blamed for Surged in Phishing,”<URL:
/http://www.infoworld.com/article/06/12/12/HNrockphish_1.htmlS.>
diakses pada 4 April 2013
PhishTank, 2009, "Joint The Fight Against Phishing,"<URL:
/http://www.phishtank.com/> diakses pada 15 April 2013.
Chun-Ying Huang, Shang-Pin Ma, and Kuan-Ta Chen,"Using One
Time Password to Prevent Password Phishing Attack,". 2011.
Webopedia,
"Term
of
Phisshing,"
<URL:
http://webopedia.com/TERM/Phishing> diakses pada 13 Mei 2013.
Linan Zheng, "Instant Messaging: Architecture and Concepts, " Institute
of Communication Networks and Computer Engineering System and
Media, University of Stuttgart. 2005.
Gustavo Alonso, "Web Service: Concepts, Architecture, and
Application," Swiss Federal Institute of Technology.2006.
AM Husein and M Harahap, “Pengamanan data dengan Menggunakan
Setganografydan Algoritma RC4,"Sekolah Tinggi Teknik Harapan
Medan.2013.
Kessler, Gary C, "An Overview of Cryptography", Aurebach.1998.
Download