15
e. Pengiriman password dengan dua kali hash
Ini adalah perbaikan dari pengiriman password dengan satu kali hash dengan melakukan hashing antara password yang telah di hash dengan challenge. Dalam
metode ini server akan menyimpan password dalam bentuk message digest sehingga akan menyulitkan terjadinya reply attack.
Proses pada sisi klien:
a. Clien menerima challenge dari server b. Password klien dalam bentuk plaintext diproses dengan menggunkan fungsi hash
p, sehingga diperoleh Hp. c. Hasil keluaran fungsi hash tersebut disambung atau di satukan dengan challenge
dari server sehingga diperoleh Hp + n. d. Hasil penyambungan teersebut dip roses dengan menggunakan fungsi hash
sehinga diperoleh HHp + n. e. Klien kemudian mengirimkan HHp + n kepada server.
Gambar 2.7 Pengiriman password dengan duakali hash
16
Proses pada sisi server:
a. Server melakukan pencarian pada daftar password yang tersimpan dalam bentuk digest, kemudian diperoleh Hp
b. Digest dari password ini kemudian disambung dengan challenge yang sudah dikirim kepada klien sehingga diperoleh Hp + n.
c. Hasil tersebut kemudian diproses menggunkan fungsi hash sehingga diperoleh HHp + n.
d. Server membandingan perhitungan HHp + n dari klien, jika keduanya sama berarti klien merupakan orang yang autentiktepat.
2.4 Autentikasi
Autentikasi berhungungan dengan pengenalan identitas seseorang, menyangkut hak akses yang dimiliki pada saat memasuki sistem. Hasil dari protocol autentikasi adalah berupa
penerimaan identitas dari satu pihak yang dikenal, atau penolakan identitas dari pihak yang tidak dikenal. Jadi autentikasi adalah menentukan seseorang atau sesuatu tersebut adalah
benar-benar merupakan orang atau sesuatu yang tepat. Faktor autentikasi merupakan suatu informasi yang digunakan untuk mengidentifikasi identitas seseorang untuk keamanan.
Faktor-faktor autentikasi dapat meliputi : 1. Sesuatu yang dimiliki pengguna
Misalkan : ID cart, kartu kredit, telepon seluler. 2. Sesuatu yang diketahui pengguna
Misalkan : password, PIN Personal Identification Number 3. Sesuatu yang ada pada pengguna
Misalkan : Sidik jari, pola retina, DNA, suara serta aspek biometric lainnya.
17
2.4.1 Sistem autentikasi
Sistem autentikasi ini terdiri dari 2 entitas yaitu klien dan server. Klien akan menerima serial numberuser id dan PIN yang akan digunakan untuk menghasilkan kode
hash. Sedangan server bertugas melakukan pengiriman challenge yang berupa angka random, menghitung nilai dari angka random tersebut, dan melakuan autentikasi terhadap klien.
Keamanan sistem one way hash function yaitu fungsi hash yang dihasilkan tidak bisa dibalikan non-invertability. Oleh sebab itu, baik klien maupun server harus menggunakan
algoritma yang sama untuk dapat saling beroperasi. Berikut ilustrasi gambar yang menjelaskan tentang autentikasi dari sisi klien dan juga
sisi server dengan sistem challenge response yang akan menghasilkan nilai hash yang iterative.
Gambar 2.8 Sistem autentikasi klien server
18
Pertama kali user melakukan “koneksi” yaitu dengan proses login. Setelah user memasukan nama login user, maka server akan mencari user pada basis data dan
mengirimkan challenge 5 digit. Setelah pengiriman challenge maka server akan meminta response dari user atas challenge yang dikirimkan, user menghitung challenge tersebut dan
mengirimkan hasilnya, dengan kata lain user mengirimkan response dan server juga menghitung nilai hash atas angka random tersebut. Setelah di dapat respons user, maka
autentikasi pihak server yaitu memeriksa respon user dan memberikan jawaban kepada klien tentang benar atau tidaknya respons yang dikirimkan. Setelah proses pemeriksaan, maka
terdapat evaluasi tentang akses atau tidaknya user berdasarkan autentikasi server.
2.5 Protokol Chalenge response
Menurut J.C.A. Van Der Lubbe dalam bukunnya yang berjudul “Basic Methods of Cryptography” Terdapat beberapa protokol dalam challenge response ini, yaitu seperti Two
Way Challenge Response, Tree Way Challenge response I, Tree Way Challenge response II. Namun yang akan digunakan pada tugas akhir ini adalah protokol two way challenge
response. Dalam protokol Two Way Challenge Response, misalkan entitas A memverifikasi
keaslian entitas B. A mengirimkan angka random RA challenge kepada B. kemudian B akan mengola nilai RA menjadi oKRA response dengan menggunkan fungsi symmetrical
one way dan kunci rahasia K. pada saat bersamaan, A juga mengelola challenge tersebut dengan menggunakan algoritma dan kunci yang sama. Dalam hal ini A merupakan pusat
komputer server yang menyimpan semua kunci dari klien dimana A dapat diakses oleh semua klien yang ter-autorisasi. Berikut gambar yang menunjukan protokol Two Way
Challenge Response
19
Pada gambar diatas A memverivikasi keaslian B, dan tidak sebaliknya. Dalam protokol Tree Way Challenge Response, A akan memverifikasi keaslian B dan sebaliknya B juga akan
memverifikasi keaslian A. berikut gambaran proses pada protokol Tree Way Challenge Response
Pada gambar diatas A dapat memastikan keaslian B dari hasil okRA, B tidak hanya mengembalikan hasil oKRA saja tetapi B juga mampu memverifikasi keaslian A dengan
nilai oKRB yang dikembalikan oleh A. Kelemahan dari penyusunan protokol seperti di atas yaitu pada adanya reflection attack, berikut gambarannya
Gambar 2.9 Two Way Challenge Response
Gambar 2.10 Tree Way Challenge Response I
20
Jika seorang penggangu C datang dengan mengenerate 2 session secara parallel, maka C akan dapat menyesatkan A dan dan akan meyakin kan A bahwa A sedang berkomunikasi dengan
B, tetapi pada kenyataannya A sedang berkomunikasi dengan C. jika A mengirimkan Chalenge RA maka C akan menerima challenge tersebut, kemudian C akan mengembalikan
nilai RA tersebut pada A sama seperti yang dilakuakan oleh B. A mentransfer oKRA dan challenge baru RA. C merespon dengan nilai oKRA yang sama. Hal ini akan membuktikan
bahwa sesungguhnya A tidak sedang berkomunikasi dengan B, dalam hal ini entitiy autentikasi antara klien dan server tidak dapat dijamin. Masalah ini dapat diatasi dengan
mengirimkan alamat dari A dan B. Gambar berikut ini menunjukan hasil dari tree way challenge response II yang
tergantung dari alamat yang relevan dan sistem yang aman terhadap reflection attack.
Gambar 2.11 Reflection attack
Gambar 2.12 Tree Way Challenge Response II
21
Dalam semua contoh diatas, di asumsikan bahwa sebelum proses autentikasi di inisialisasikan, A dan B telah mempunyai kunci rahasia K. pada gambar dibawah ini A dan B
tidak mempunyai akses terhadap kunci rahasia untuk proses autentikasi. Dalam kasus ini terdapat pihak ke-3 yang disebut dengan Trusted Party TP, dimana ia dapat berkomunikasi
dengan A dan B menggunakan dua kunci rahasia K1 dan K2.
2.5.1 Autentikasi dengen Protokol challenge response
Proses autentikasi dengan Protokol challenge response ini akan melibatkan 2 entitas atau pihak, dimana salah satu pihak sebagai penyedia pertanyaan challenge dan pihak yang
lain sebagai penjawab pertanyaan response. Contoh sederhana dalam challenge-response yaitu password autentikasi. Ketika seorang klien menginginkan hak akses terhadap suatu
sistem, maka sistem akan mengirimkan challenge kepada klien dan kemudian klien mengirimkan hasil kode yang telah diolah, kemudian sistem akan membandingkan kode
tersebut dengan kode yang telah diolah oleh server. Jika hasil perbandingan tersebut sama, maka klien bisa mendapat hak akses yang diinginkan dan sistem akan memberikan hak akses
tersebut kepada klien. Contoh challenge –response autentikasi dengan password yaitu terdapat pada
pengguna PIN sebelum mendapatkan hak akses pada sistem transaksi keuangan web based.
Gambar 2.13 Autentikasi dengan Trusted Party
22
Seorang klien yang akan melakukan koneksi terhadap suatu sistem, maka klien harus memasukan serial numberuser id sebelum sistem tersebut memberian hak akses terhadap
klien tersebut. Proses calenge-response yang terjadi disini yaitu klien menghubungi server, kemudian server akan mengirimkan challenge. Klien member response atas challenge
tersebut dengan menggunakan password yang dimilikinya. Pemilihan konsep challenge-response diatas didasarkan pada efisiensi penggunaan
kunci. Pada challenge-response pihak klien hanya akan menyimpan satu kunci yaitu kunci untuk password.
Gambar dibawah ini menunujukan proses autentikasi menggunakan protokol challenge-response, dimana yang menjadi challenge yaitu berupa angka random.
Pada gambar diatas saat Bob hendak melakukan transaksi kepada Alice, kemudian Alice akan memberikan challenge berupa bilangan random. Bob mengolah respon atas challenge
tersebut dengan password dan bilangan random yang dimilikinnya kemudian Alice akan membandingkan hasil respon yang dikirimkan, jika hasil perbandingan sama maka Alice
akan memberikan akses pada Bob untuk melakukan transaksi.
Gambar 2.14 Autentikasi menggunakan Challenge-Response
23
2.6 Fungsi Hash
Fungsi hash berhubungan dengan keamanan data. Fungsi hash juga dapat digunakan untuk autentikasi dan integritas data. Fungsi hash secara efisien akan mengubah string input
dengan panjang yang tak hingga menjadi string output dengan panjang tetap yang disebut dengan nilai hash. Hash juga termasuk salah satu bentuk teknik kriptografi.
Saat ini penerapan fungsi hash dapat di jumpai pada website-website yang menyediakan layanan untuk download file ataupun program secara resmi. Hash umumnya
digunakan untuk mengecek integritas dari sebuah pesan atau file. File atau pesan yang sudah berubah akan memiliki nilai hash yang berbeda. Sebagai contoh, dengan sebuah algoritma
hash, pesanhello akan memberikan nilai hash 12345 sedangkan pesan hallo memiliki nilai hash 83746. Dengan kata lain output hash dari kata hello tidak akan sama dengan hallo.
Seperti yang kita ketahui bahwa kedua pesan tersebut hanya memiliki perbedaan sedikit saja yaitu satu huruf namun nilai hash yang dimiliki oleh kedua pesan tersebut sangat jauh
berbeda. Fungsi hash dapat digunakan sebagai :
a. Menyimpan password