Makalah 023

Unduh sebagai pdf atau txt
Unduh sebagai pdf atau txt
Anda di halaman 1dari 10

Metode Autentikasi melalui Saluran Komunikasi yang Tidak Aman

Arie Karhendana
NIM 13503092

Program Studi Teknik Informatika, Institut Teknologi Bandung


Jalan Ganesha 10, Bandung
[email protected]

Abstrak. Saat ini, autentikasi dengan menggunakan password adalah teknik yang
paling umum digunakan pada berbagai layanan untuk membuktikan atau
mengkonfirmasi bahwa identitas seseorang adalah benar-benar milik orang yang sah.
Namun, jika metode ini digunakan pada saluran komunikasi yang tidak aman, metode
ini rentan terhadap berbagai serangan, misalnya penyadapan password oleh pihak yang
tidak berhak.

Oleh karena itu, diperlukan metode untuk mengatasi kerentanan tersebut. Pada makalah
ini, dikaji beberapa metode untuk mengatasi masalah tersebut, dengan menggunakan
teknik kriptografi yang sudah ada, yaitu fungsi hash. Kemudian akan dipaparkan pula
serangan yang mungkin terhadap metode-metode tersebut.

Kemudian diusulkan pula suatu skema autentikasi berbasis password yang tidak rentan
terhadap penyadapan maupunpencurian password. Skema ini memanfaatkan proses
fungsi hash sebanyak dua kali.

Kata kunci: autentikasi, password, challenge-response, fungsi hash

1 Pendahuluan Dikenal pula istilah otorisasi, yaitu proses


untuk memverifikasi bahwa seseorang atau
Keamanan data merupakan bagian yang tak sesuatu memiliki wewenang untuk melakukan
terhindarkan pada kehidupan sehari-hari saat suatu aksi atau kegiatan. Otorisasi biasanya
ini. Untuk itu, setiap orang berupaya untuk didahului dengan autentikasi.
melindungi datanya dengan berbagai cara.
Contoh yang paling nyata dari autentikasi
Salah satu teknik perlindungan data adalah adalah untuk keperluan kontrol akses (access
dengan menggunakan autentikasi terhadap control). Sebuah sistem komputer biasanya
pengguna. Dengan menggunakan autentikasi, hanya diizinkan untuk diakses oleh pihak yang
maka identitas pengguna dapat diketahui, berwenang, namun tidak diizinkan kepada
sehingga sistem dapat menentukan hak akses pihak lain. Sehingga, akses kepada sistem
yang sesuai bagi pengguna tersebut. biasanya diawali dengan prosedur autentikasi
untuk menentukan identitas seorang pengguna.
Autentikasi adalah suatu langkah untuk Kemudian baru dapat dilakukan pemberian
menentukan atau mengonfirmasi bahwa hak akses kepada pengguna yang telah
seseorang (atau sesuatu) adalah autentik atau terotorisasi.
asli. Melakukan autentikasi terhadap sebuah
objek adalah melakukan konfirmasi terhadap Contoh yang sering ditemukan pada kehidupan
kebenarannya. Sedangkan melakukan sehari-hari adalah sebagai berikut:
autentikasi terhadap seseorang biasanya adalah a. Login ke komputer lain melewati jaringan
untuk memverifikasi identitasnya. internet
b. Mengambil uang dari ATM
Pada suatu sistem komputer, autentikasi c. Menggunakan internet banking
biasanya terjadi pada saat login atau
permintaan akses.

1
Autentikasi yang dianggap kuat (strong membatasi login root hanya dari terminal
authentication) didefinisikan sebagai tertentu.
pendekatan autentikasi yang berlapis-lapis dan d. Berbasis waktu
tergantung kepada dua atau lebih faktor Contoh: Membatasi penggunaan sebuah
autentikasi untuk menentukan identitas account hanya pada waktu tertentu,
penerima atau pengirim informasi. misalnya jam kerja.
e. Berbasis ukuran
Salah satu metode autentikasi yang paling Contoh: Membatasi terjadinya transaksi
sering digunakan adalah autentikasi berbasis hanya pada sejumlah tertentu saja.
password. Pada makalah ini akan dipaparkan
proses pengiriman password pada media yang 3 Autentikasi berbasis Challenge-Response
tidak aman dengan berbagai serangannya.
Autentikasi berbasis challenge-response
2 Faktor Autentikasi (challenge-response authentication) adalah
salah satu jenis protokol autentikasi. Pada
Faktor autentikasi adalah sebuah informasi autentikasi berbasis challenge-response, salah
yang digunakan untuk memverifikasi identitas satu pihak memberikan challenge (tantangan),
seseorang untuk kepentingan keamanan. dapat berupa pertanyaan atau nilai acak.
Kemudian pihak lain harus memberikan
Tiga jenis faktor autentikasi yang umum
response (jawaban) agar dapat diautentikasi.
digunakan adalah:
a. Sesuatu yang diketahui oleh pengguna Bentuk paling sederhana dari protokol
Contoh: password, passphrase, dan PIN challenge-response adalah autentikasi dengan
(Personal Identification Number) password. Pada jenis ini, salah satu pihak
b. Sesuatu yang dimiliki oleh pengguna memberikan pertanyaan untuk meminta
Contoh: ID card, kartu kredit, telepon password, sedangkan pihak lain menjawab
seluler, dan perangkat token dengan memberikan password yang valid.
c. Sesuatu yang ‘ada’ pada pengguna
Contoh: sidik jari, DNA, suara, pola retina, 4 Pengiriman Password melalui Media
atau aspek biometrik lain. Komunikasi dan Permasalahannya
Sedangkan, beberapa faktor autentikasi lain Pada mekanisme autentikasi yang
yang lebih jarang digunakan adalah: menggunakan password sebagai alat
a. Berbasis pengenalan (recognition) atau identifikasi, maka pada saat proses autentikasi,
autentikasi cognometric, yaitu sesuatu yang password harus dikirimkan dari pengguna ke
dikenal oleh pengguna sistem. Setelah itu, sistem baru dapat
Contoh: Pengguna harus mengenali dari memverifikasi apakah password yang
beberapa wajah yang dirahasiakan. dikirimkan valid atau tidak, berdasarkan
b. Berbasis cybermetric, yaitu sesuai yang informasi yang dimiliki oleh sistem.
ada pada komputer
Contoh: Membatasi akses hanya dari Dalam skema yang paling sederhana,
komputer yang memiliki kombinasi unik password dikirimkan dari pengguna ke sistem
hardware dan software tertentu. dalam bentuk plainteks. Proses ini dapat
c. Berbasis lokasi dilihat pada Gambar 1. Pada gambar tersebut,
Contoh: Membatasi penggunaan ATM atau Alice sebagai pengguna yang akan
kartu kredit hanya pada cabang tertentu, diautentikasi dan Bob sebagai server
pengautentikasi.

2
Gambar 1: Pengiriman password (p) dalam bentuk plainteks

Skema seperti ini sangat rentan terhadap panjang yang bervariasi dan kemudian
berbagai serangan, misalnya penyadapan. mengembalikan string dengan panjang yang
Karena password dikirim dalam bentuk tetap. Hasil keluaran fungsi hash kriptografis
plainteks, maka penyadap dapat langsung sering disebut message digest atau digital
mengetahui password Alice. fingerprint.

Serangan ini dapat menjadi lebih berbahaya Karakteristik fungsi hash kriptografis adalah:
jika ternyata password Alice pada sistem yang a. Diberikan x, maka mudah untuk
lain sama dengan password-nya pada sistem menghitung H(x)
ini. Kasus ini umum terjadi karena biasanya b. Diberikan H(x), maka sulit secara
pengguna menggunakan satu password yang komputasi untuk menentukan x
sama untuk mengakses berbagai sistem, c. Diberikan x, maka sulit secara komputasi
dengan alasan kemudahan untuk diingat dan untuk mencari y, dengan H(x) = H(y)
kenyamanan. d. Perubahan pada x menjadi x’ walaupun
sedikit akan menyebabkan H(x) tidak
Dengan berhasil dicurinya password pada sama / berbeda jauh dengan H(x’)
sistem ini, maka penyadap dapat menggunakan
password tersebut untuk mengakses sistem
lain atas nama pengguna. Kejadian ini dapat Saat ini, fungsi hash kriptografis yang paling
berujung pada berbagai kasus, misalnya umum dipakai adalah MD5 dan SHA-1. MD5
transaksi tidak sah, pencurian identitas, (Message Digest 5) adalah fungsi hash
maupun kejahatan kriminal dalam dunia cyber kriptografis yang menghasilkan keluaran
(cybercrime). dengan panjang yang tetap sepanjang 128 bit.
Sedangkan SHA-1 (Secure Hash Algorithm 1)
Untuk mengatasi pencurian password seperti adalah fungsi hash kriptografis yang
yang terjadi pada skema ini, maka menghasilkan keluaran dengan panjang yang
diusahakanlah sebuah skema pengembangan tetap sepanjang 160 bit.
dengan sedikit perbaikan pada data yang
dikirim. Skema ini dikembangkan dengan Pada skema ini, data yang dikirim adalah hasil
memanfaatkan fungsi hash kriptografis yang keluaran dari fungsi hash / message digest
sudah ada. terhadap password. Proses yang terjadi seperti
pada Gambar 2.
Fungsi hash kriptografis adalah fungsi yang
mnerima sebuah string atau pesan dengan

3
Gambar 2: Pengiriman password (p) dalam bentuk keluaran fungsi hash

Tujuan dari skema ini adalah untuk untuk memverifikasinya, Bob harus
menyamarkan password yang dikirim ke melakukan hash terhadap password yang
sistem, sehingga jika terjadi penyadapan, tidak terdapat pada daftar password validnya. Jika
akan mudah untuk mendapatkan password hasil keluaran dari fungsi hash ini sama
aslinya. Dengan demikian, secara efektif dengan digest yang dikirim oleh Alice, maka
mengurangi kemungkinan terjadinya dapat disimpulkan bahwa password-nya benar
pencurian password. dan autentikasinya berhasil.

Karena Bob hanya menerima message digest Proses verifikasi password pada skema ini
dari Alice dan bukan password aslinya, maka dapat dilihat pada Gambar 3.

Gambar 3: Verifikasi password yang dikirim dalam bentuk digest

4
Namun, pada skema ini, Bob harus memiliki Oleh karena itu, skema ini dapat diperbaiki
daftar password asli dari pengguna. dengan cara Bob hanya menyimpan password
Kelemahannya adalah, jika seseorang berhasil dalam bentuk message digest dan tidak
menyusup atau mengambil alih Bob, maka menyimpan dalam bentuk asal.
penyusup tersebut kemungkinan dapat
mengakses daftar password milik semua Proses verifikasi password pada skema
orang. perbaikan ini dapat dilihat pada Gambar 4.

Gambar 4: Verifikasi password yang dikirim dalam bentuk digest; Bob hanya menyimpan digest dari
password

Dengan menggunakan skema ini, jika terjadi valid disadap oleh pihak yang tidak sah,
penyadapan, maka penyadap hanya akan kemudian data tersebut dikirimkan ulang atau
mendapatkan message digest dari password ditunda pengirimannya.
dan tidak akan mendapat password aslinya.
Ilustrasi replay attack pada skema ini adalah
Namun skema ini masih rentan terhadap jenis seperti pada Gambar 5.
serangan replay attack. Replay attack adalah
suatu bentuk serangan pada jaringan
komunikasi di mana pengiriman data yang

5
Gambar 5: Replay attack pada pengiriman password dalam bentuk plainteks

Pada Gambar 5, dapat dilihat bahwa walaupun nonce, pihak yang ingin diautentikasi harus
Eve hanya berhasil mendapatkan message mengirim jawaban sesuai nonce yang diterima.
digest dari password Alice, ia masih dapat Dengan demikian, jawaban dari Alice akan
mendapatkan akses dari Bob dengan berbeda-beda tergantung nonce yang
mengirimkan kembali message digest tersebut. diterimanya. Sehingga, penggunaan nonce
Bob akan mengira Eve adalah Alice dan akan menghilangkan kerentanan terhadap
verifikasi password dianggap berhasil. replay attack.

Oleh karena itu, dikembangkanlah sebuah Untuk memastikan agar nonce hanya
skema perbaikan dari skema sebelumnya. digunakan sekali, maka harus terdapat suatu
Skema ini memanfaatkan nonce (number used mekanisme untuk menghasilkan bilangan yang
once). Nonce adalah bilangan yang hanya acak. Sehingga, probabilitas untuk
digunakan sekali, biasanya berupa bilangan menghasilkan bilangan yang sudah pernah
acak (random) atau acak-semu (pseudo- dihasilkan sebelumnya sangat rendah. Ini
random) yang dikirimkan sebagai challenge dapat dicapai misalnya dengan memanfaatkan
oleh pihak yang akan mengautentikasi. waktu pada sistem.

Nonce yang digunakan setiap kali akan Skema perbaikan ini dapat dilihat seperti pada
berbeda dengan sebelumnya. Ketika menerima Gambar 6.

6
Gambar 6: Skema autentikasi dengan memanfaatkan nonce

Pada skema ini, Bob mengirimkan nonce memiliki kelemahan, yaitu Bob harus
sebagai challenge. Alice kemudian menjawab menyimpan daftar password dalam bentuk asli
dengan mengirimkan hasil hash dari password atau plainteks.
Alice yang sudah disambung atau
dikonkatenasi dengan nonce yang dikirim oleh Seperti telah dijelaskan sebelumnya bahwa
Bob. menyimpan password dalam bentuk plainteks
sangat beresiko jika terjadi penyusupan ke
Karena sifat fungsi hash kriptografis yang dalam sistem. Jika seseorang berhasil
keluarannya akan berubah drastis begitu menyusup atau mengambil alih Bob, maka
masukannya berubah, maka setiap nonce yang penyusup tersebut kemungkinan dapat
berbeda akan menghasilkan keluaran yang mengakses daftar password milik semua
berbeda pula ketika disambung dengan orang.
password asli.
Namun, di sisi lain, jika Bob menyimpan
Proses verifikasi password pada skema ini daftar password dalam bentuk message digest,
dapat dilihat pada Gambar 7. maka skema ini tidak dapat digunakan, karena
Bob harus mengetahui password dalam bentuk
Jika terjadi penyadapan, maka penyadap hanya plainteks untuk disambungkan dengan nonce.
akan mendapatkan digest yang khusus untuk
sebuah nonce saja dan tidak dapat digunakan Untuk itu, penulis mengusulkan perbaikan
untuk nilai nonce yang lain. terhadap skema ini dengan skema pada bagian
berikutnya.
Skema ini dapat menghilangkan kerentanan
terhadap replay attack. Namun, skema ini

7
Gambar 7: Verifikasi password dengan memanfaatkan nonce

5 Usulan Perbaikan pada Skema Proses pengiriman yang terjadi dapat dilihat
Pengiriman Password dengan Nonce pada Gambar 8.

Pada skema perbaikan ini, proses dilakukan


dengan memanfaatkan dua kali proses hash.

Gambar 8: Skema pengiriman password dengan dua kali proses hash

8
Pada skema ini, sebelum Alice password jika penyusup berhasil memasuki
menyambungkan password dengan nonce, Bob.
password tersebut dilewatkan terhadap fungsi
hash terlebih dahulu. Proses verifikasi password pada skema ini
dapat dilihat pada Gambar 9.
Dengan demikian, Bob dapat menyimpan
daftar password dalam bentuk message digest.
Ini dapat mengurangi resiko pencurian

Gambar 9: Verifikasi password pada skema dengan dua kali hash

Pada skema ini, Bob dapat menyimpan daftar a. Alice menerima nonce dari Bob.
password dalam bentuk message digest. b. Password Alice dalam bentuk plainteks
Sehingga mengurangi resiko pencurian diproses dengan menggunakan fungsi
password apabila Bob disusupi. hash H, sehingga diperoleh H(p).
c. Hasil keluaran fungsi hash tersebut
Skema ini juga tidak rentan terhadap replay disambungkan atau dikonkatenasi dengan
attack, karena memanfaatkan nonce. nonce dari Bob, sehingga diperoleh
H(p)+n.
Secara garis besar, proses yang terjadi pada
sisi Alice (pengguna) adalah sebagai berikut:

9
d. Hasil penyambungan tersebut diproses [4] Evans, Arthur Jr. A User Authentication
dengan menggunakan fungsi hash, Scheme Not Requiring Secrecy in the
sehingga diperoleh H(H(p)+n). Computer. Communications of the ACM:
e. Alice kemudian mengirimkan H(H(p)+n) 1974
kepada Bob.

Sedangkan proses verifikasi yang terjadi pada


Bob adalah sebagai berikut:
a. Bob melakukan pencarian pada daftar
password yang tersimpan dalam bentuk
digest, kemudian diperoleh H(p).
b. Digest dari password ini kemudian
disambungkan dengan nonce yang sudah
dikirim pada Alice, sehingga diperoleh
H(p)+n.
c. Hasil penyambungan tersebut diproses
dengan menggunakan fungsi hash,
sehingga diperoleh H(H(p)+n).
d. Bob membandingkan hasil
perhitungannya dengan H(H(p)+n) yang
diperoleh dari Alice. Jika keduanya cocok,
berarti password yang dikirimkan oleh
Alice benar

6 Kesimpulan

Autentikasi berbasis password adalah salah


satu jenis autentikasi yang paling banyak
digunakan.

Pengiriman password pada saluran komunikasi


yang tidak aman membutuhkan penanganan
tersendiri. Ini karena password tersebut dapat
disadap atau dicuri oleh pihak yang tidak sah.

Oleh karena itu, diusulkanlah suatu skema


pengiriman password yang aman terhadap
serangan penyadapan dan pencurian password.
Skema ini didesain dengan menggunakan
fungsi hash kriptografis yang sudah ada
sebelumnya. Proses hashing dilakukan
sebanyak dua kali terhadap password
pengguna.

Daftar Pustaka

[1] Schneier, Bruce. The Failure of Two-


Factor Authentication.
http://www.schenier.com. 2005 (diakses
pada Desember 2006)

[2] Lamport, Leslie. Password authentication


with insecure communication.
Communications of the ACM: 1981

[3] Wikipedia. http://en.wikipedia.org.


(diakses pada Desember 2006)

10

Anda mungkin juga menyukai