bab ii dasar teori - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol...

26
II-1 BAB II DASAR TEORI Dalam bab ini dipaparkan tentang dasar teori yang digunakan dalam rangka pengerjaan Tugas Akhir, yaitu kriptografi dan Bluetooth. Bagian kriptografi meliputi, definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. Sedangkan bagian Bluetooth meliputi arsitektur protokol Bluetooth, jaringan Bluetooth dan aspek keamanannya. 2.1 Kriptografi II.1.1 Definisi Kriptografi Kriptografi (cryptography) berasal dari bahasa Yunani yaitu dari asal kata cryptos + graphien, dimana cryptos berarti rahasia sedangkan graphien berarti gambar atau tulisan. Jadi, secara etimologi atau berdasarkan asal katanya kriptografi berarti tulisan rahasia. Namun, jika dilihat lebih jauh, definisi kriptografi itu adalah ilmu dan seni untuk menjaga kerahasian pesan dengan cara menyandikannya kedalam bentuk yang tidak dapat dimengerti lagi maknanya [SCH94] sehingga pesan menjadi aman dan tidak dapat dibaca oleh orang yang tidak berkepentingan. Pesan adalah data atau informasi yang dapat dibaca dan diketahui maknanya. Nama lain untuk pesan adalah plainteks (plaintext) atau teks jelas (cleartext). Pesan dapat berupa data atau informasi yang dikirim (melalui kurir, saluran komunikasi data, dsb) atau yang disimpan di dalam media perekaman (kertas, storage, dsb). Agar pesan tidak dapat diketahui maknanya oleh pihak lain, maka pesan disandikan ke bentuk lain. Bentuk pesan yang disandikan disebut cipherteks (ciphertext) atau kriptogram (cryptogram) [MUN06]. Disinilah kriptografi memiliki peran yaitu dalam melakukan penyadian pesan dari bentuk plainteks menjadi cipherteks ataupun sebaliknya, yang dilakukan oleh seorang kriptografer.

Upload: lenhu

Post on 28-Aug-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-1

BAB II DASAR TEORI

Dalam bab ini dipaparkan tentang dasar teori yang digunakan dalam rangka

pengerjaan Tugas Akhir, yaitu kriptografi dan Bluetooth. Bagian kriptografi meliputi,

definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. Sedangkan

bagian Bluetooth meliputi arsitektur protokol Bluetooth, jaringan Bluetooth dan aspek

keamanannya.

2.1 Kriptografi

II.1.1 Definisi Kriptografi

Kriptografi (cryptography) berasal dari bahasa Yunani yaitu dari asal kata cryptos +

graphien, dimana cryptos berarti rahasia sedangkan graphien berarti gambar atau

tulisan. Jadi, secara etimologi atau berdasarkan asal katanya kriptografi berarti tulisan

rahasia. Namun, jika dilihat lebih jauh, definisi kriptografi itu adalah ilmu dan seni

untuk menjaga kerahasian pesan dengan cara menyandikannya kedalam bentuk yang

tidak dapat dimengerti lagi maknanya [SCH94] sehingga pesan menjadi aman dan

tidak dapat dibaca oleh orang yang tidak berkepentingan.

Pesan adalah data atau informasi yang dapat dibaca dan diketahui maknanya. Nama

lain untuk pesan adalah plainteks (plaintext) atau teks jelas (cleartext). Pesan dapat

berupa data atau informasi yang dikirim (melalui kurir, saluran komunikasi data, dsb)

atau yang disimpan di dalam media perekaman (kertas, storage, dsb). Agar pesan

tidak dapat diketahui maknanya oleh pihak lain, maka pesan disandikan ke bentuk

lain. Bentuk pesan yang disandikan disebut cipherteks (ciphertext) atau kriptogram

(cryptogram) [MUN06]. Disinilah kriptografi memiliki peran yaitu dalam melakukan

penyadian pesan dari bentuk plainteks menjadi cipherteks ataupun sebaliknya, yang

dilakukan oleh seorang kriptografer.

Page 2: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-2

Di dalam kriptografi maka akan melibatkan dua buah proses utama untuk membentuk

pesan yang diinginkan. Adapun kedua tersebut yaitu enkripsi

(encryption/enciphering) dan dekripsi (decryption/deciphering). Enkripsi adalah

proses menyandikan plainteks menjadi cipherteks sedangkan dekripsi adalah proses

mengembalikan cipherteks menjadi plainteks. Kedua nama tersebut merupakan

standar menurut ISO 7498-2 [MUN06]. Ilustrasi dari proses yang terjadi dalam

kriptografi dapat dilhat pada Gambar II-1 berikut ini:

Gambar II-1 Proses di dalam kriptografi Secara umum operasi enkripsi dan dekripsi dapat diterangkan secara matematis

sebagai berikut:

EK (M) = C ................................................................................................. (II-1)

DK (C) = M ................................................................................................ (II-2)

E adalah fungsi enkripsi sedangkan D adalah fungsi dekripsi. Pada saat proses

enkripsi kita menyandikan pesan M dengan suatu kunci K, kemudian dihasilkan pesan

C. Sedangkan pada proses dekripsi, pesan C tersebut diuraikan dengan menggunakan

kunci K, sehingga dihasilkan pesan M yang sama seperti pesan sebelumnya.

Dari penjelasan diatas terlihat bahwa kunci memegang peranan penting. Kerahasian

suatu pesan akan bergantung pada kunci yang digunakan, dan bukan pada algoritma

kriptografinya. Sehingga algoritma-algoritma yang digunakan tersebut dapat

dipublikasikan dan dianalisis, serta produk-produk yang menggunakan algoritma

tersebut dapat diproduksi massal. Tidaklah menjadi masalah apabila seseorang

mengetahui algoritma yang kita gunakan. Selama ia tidak mengetahui kunci yang

dipakai, ia tetap tidak dapat membaca pesan.

Page 3: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-3

II.1.2 Sistem Kriptografi

Sistem kriptografi (cryptosystem) meliputi sebuah algoritma, semua kemungkinan

plainteks, cipherteks dan kunci-kunci. Secara umum kriptosistem dapat digolongkan

menjadi dua buah, yaitu:

1. Kriptosistem Kunci-Simetri

Dalam kriptosistem simetri ini, kunci yang digunakan untuk proses enkripsi

dan dekripsi pada prinsipnya identik, atau dengan kata lain pengirim dan

penerima pesan menggunakan kunci yang sama.

Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

(DES), Blowfish, IDEA. Proses enkripsi dan dekripsi pesan pada kriptografi

simetri dapat dilihat pada Gambar II-2 berikut:

Gambar II-2 Proses enkripsi dan dekripsi kriptografi simetri

2. Kriptosistem Kunci-Nirsimetri (Kriptografi Kunci-Publik)

Konsep dari kriptografi kunci publik diperkenalkan oleh Diffie dan Hellman

pada tahun 1976 bersamaan dengan diperkenalkannya Protokol Diffie-

Hellman dalam presentasi paper mereka yang berjudul “New Directions in

Cryptography” [DIF76]. Ide dasar dari sistem kriptografi kunci publik adalah

bahwa kunci kriptografi dibuat sepasang, satu kunci untuk enkripsi dan satu

kunci untuk dekripsi [MUN06].

Kunci untuk enkripsi bersifat publik (tidak rahasia) sehingga dinamakan kunci

publik (public key), sedangkan kunci dekripsi bersifat rahasia sehingga

dinamakan kunci rahasia (private key atau secret key). Kunci-kunci ini dipilih

sedemikian sehingga, secara praktik, tidak mungkin menurunkan kunci rahasia

Page 4: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-4

dari kunci publik [MUN06]. Proses enkripsi dan dekripsi dengan algoritma

kriptografi kunci publik dapat dilihat pada Gambar II-3

Gambar II-3 Proses enkripsi dan dekripsi kriptografi kunci-publik

Secara matematis proses enkripsi dan dekripsi pada kirptosistem kunci-

nirsimetri adalah sebagai berikut:

EPriK (M) = C ...................................................................................... (II-3)

DPubK (C) = M ..................................................................................... (II-4)

E adalah fungsi enkripsi dengan PriK adalah private key sedangkan D adalah

fungsi dekripsi dengan PubK adalah publik key. Sebagai gambaran berikut

diberikan contoh penerapan kriptosistem nirsimetri dalam kehidupan sehari-

hari.

Dosen suatu mata kuliah pada sebuah perguruan tinggi memiliki beberapa

orang peserta kuliah (mahasiswa). Dosen tersebut memiliki pasangan kunci

privat dan kunci publik, yang mana kunci publik ini diketahui oleh semua

peserta kuliah. Sebagai protokol pengumpulan tugas maka dosen

memerintahkan kepada peserta kuliahnya untuk meng-upload softcopy tugas

yang telah dikerjakannya kedalam suatu shared folder pada sebuah server.

Namun, sebelumnya tugas tersebut sudah dienkripsi terlebih dahulu dengan

mempergunakan algoritma kriptografi kunci-publik dengan kunci publik milik

dosen. Disini dapat dilihat bahwa walaupun softcopy tugas diletakan pada

suatu shared folder yang bisa diakses oleh siapa saja, namun hanya dosen

yang akan mampu membaca isi dari setiap tugas yang telah di-upload,

Page 5: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-5

sedangkan peserta lain tidak akan mampu membacanya karena tidak

mengetahui kunci privat dari dosen. Ilustrasi contoh diatas dapat dilihat pada

Gambar II-4 berikut:

Gambar II-4 Mekanisme pemanfaatan kriptografi kunci-publik

II.1.3 RC4

RC4 (ARCFOUR) adalah salah satu contoh algoritma kriptografi kunci-simetri.

Algoritma ini adalah cipher aliran yang digunakan secara luas pada sistem keamanan

seperti protokol SSL (Secure Socket Layer) [MUN06]. Agoritma ini sederhana dan

mudah untuk diimplementasikan. RC4 membangkitkan aliran kunci (keystream) yang

kemudian di-XOR-kan dengan plainteks pada waktu enkripsi (atau di-XOR-kan

dengan bit-bit cipherteks pada waktu dekripsi). Tidak seperti cipher aliran yang

memproses data dalam bit, RC4 memproses data dalam ukuran byte (1 byte = 8 bit).

Untuk membangkitan aliran kunci, cipher menggunakan status internal yang terdiri

dari dua bagian:

1. Permutasi angka 0 sampai 255 didalam larik S0,S1,..., S255. Permutasi

merupakan fungsi dari kunci U dengan panjang variabel.

2. Dua buah pencacah indeks, i dan j

Proses enkripsi dan dekripsi dari RC4 dapat dilihat pada Gambar II-5 berikut:

Page 6: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-6

Gambar II-5 Proses dekripsi dan enkripsi RC4 Pesan yang dikirimkan akan di-xor-kan dengan rangkaian kunci yang dibentuk oleh

pembangkit kunci aliran yang mendapat umpan dari user. Sedangkan pada sisi

penerima pembangkitan kunci acak oleh pembangkit kunci aliran juga dilakukan

dengan umpan yang sama yang dikirimkan melalui suatu saluran khusus yang aman.

Kemudian rangkaian kunci acak yang dihasilkan di-xor-kan kembali dengan

cipherteks yang diterima. Untuk diagram pembangkit kunci aliran dapat dilihat pada

Gambar II-6:

Gambar II-6 Diagram pembangkitan kunci aliran RC4

Langkah-langkah dari algoritma RC4 adalah sebagai berikut:

1. Inisialisasi larik S sehingga S0 = 0, S1 = 1, ..., S255 = 255

2. Jika panjang kunci U < 256, lakukan padding yaitu penambahan byte semu

sehingga panjang kunci menjadi 256 byte. Misalnya jika U = “abc” yang

hanya terdiri dari 3 byte maka lakukan padding dengan penambahan byte

semu, misalnya U = “abcabcabc...” sampai panjang U mencapai 256 byte.

Page 7: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-7

3. Lakukan permutasi terhadap nilai didalam larik S.

4. Bangkitkan aliran kunci dan lakukan enkripsi dengan fungsi XOR.

Cipherteks(i) = Plainteks(i) XOR Key(i) ....................................................... (II-5)

II.1.4 SAFER+ SAFER+ juga merupakan salah satu jenis algoritma kriptografi kunci simetri. Berbeda

dengan algoritma RC4 yang merupakan stream cipher, SAFER+ adalah algoritma

block cipher yang merupakan pengembangan dari algoritma SAFER [SHA05].

Seperti yang telah dijelaskan pada bab sebelumnya bahwa algoritma ini adalah dasar

dari algoritma pembangkitan kunci dan otentikasi pada komunikasi Bluetooth.

Algoritma-algoritma yang digunakan pada komunikasi Bluetooth yang didasarkan

pada algoritma SAFER+ ini adalah algoritma E22 untuk pembentukan kunci

inisialisasi, E21 untuk pembentukan kunci penghubung, dan E1 untuk mutual

otentikasi. Semua algoritma diatas didapat dengan melakukan sedikit modifikasi pada

algoritma SAFER+. Untuk menjelaskan algoritma E22, E21, dan E1 terlebih dahulu

akan dijelaskan tentang algoritma SAFER+ itu sendiri.

SAFER+ terdiri atas dua buah subsistem utama yaitu subsistem untuk enkripsi dan

subsistem untuk key scheduling. Subsistem key scheduling inilah yang berperan dalam

proses otentikasi. Key scheduling pada algoritma ini bertujuan untuk membangkitkan

suatu kunci, yang disebut dengan round key, untuk setiap putaran dari tahap subsistem

enkripsi [GEH04]. Key scheduling ini akan menghasilkan 17 subkey yang berbeda,

yaitu K1 sampai K17. Setiap putaran yang dilakukan menggunakan 2 buah subkey dan

satu kunci terakhir digunakan untuk menghasilkan keluaran kunci dari SAFER+. Hal

terpenting dari algoritma key scheduling ini yaitu setiap byte data akan digeser

(wraping) ke kiri sejauh tiga bit dan untuk keluar dihasilkan kunci dengan panjang 16

bit [SHA05]. Proses lengkap dari key scheduling ini dapat dilihat pada Lampiran A.

Untuk perumusan singkat masing-masing algoritma yang didasarkan dari algoritma

SAFER+ adalah sebagai berikut:

1. Rumus pembentukan kunci inisialisasi (E22)

{ }( ) { } { } { }128128'822 1,016,...,2,11,01,0: →××

NE .................(II-6)

2. Rumus pembentukan kunci penghubung (E21)

{ } { } { }1284812821 1,01,01,0: →×E ...................................................(II-7)

Page 8: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-8

3. Rumus untuk mutual authentication (E1)

{ } { } { } { } { }9632481281281 1,01,01,01,01,0: ×→××E .................(II-8)

II.1.5 Blowfish Setelah dibahas kriptografi SAFER+ sebagai algoritma kriptografi berbasis blok,

maka selanjutnya akan dibahas algoritma kriptografi berbasis blok yang lain, yaitu

algoritma kriptografi Blowfish. Blowfish didesain oleh Bruce Schneier, algoritma ini

menggunakan prinsip jaringan Feistel dan cipher berulang sebanyak 16 kali. Besar

blok yang digunakan pada algoritma ini adalah 64 bit sedangkan panjang kunci dapat

bervariasi sampai maksimal berukuran 488 bit [SCH94]. Adapun diagram struktur

jaringan Feistel yang digunakan pada algoritma blowfish dapat dilihat pada Gambar

II-7.

⊕ ⊕

⊕⊕

⊕ ⊕

Gambar II-7 Diagram Jaringan Feistel Blowfish Diagram diatas memperlihatkan cara kerja Blowfish menggunakan jaringan Feistel.

Setap garis pada diagram mewakili 32 bit data. Pada algoritma ini memanfaatkan dua

jenis sub-kunci, yaitu 18 kunci P, S-Box dengan besar 256 dan. S-box ini

memerlukan 8 bit masukan dan menghasilkan 32 bit keluaran. Setiap kunci P akan

digunakan pada setiap putaran jaringan Feistel dan setelah putaran terakhir masing-

masing setengah blok di-xor-kan dengan dua kunci P yang belum digunakan. Proses

tersebut menggambarkan proses enkripsi dari Blowfish, untuk dekripsi proses diatas

dibalik.

Page 9: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-9

II.1.6 RSA

Salah satu algoritma kriptografi kunci-nirsimetri (kunci-publik) yang paling terkenal

adalah RSA (Rivest, Shamir, Adleman). Algoritma ini dibuat oleh Ron Rivest, Adi

Shamir, dan Leonard Adleman. Keamanan algoritma RSA terletak pada sulitnya

memfaktorkan bilangan yang besar menjadi faktor-faktor prima. Pemfaktoran ini

dilakukan untuk memperoleh kunci rahasia. Selama pemfaktoran bilangan besar

menjadi faktor-faktor prima belum ditemukan algoritma maka selama itu pula

keamanan algoritma RSA tetap terjamin [MUN06].

Untuk membangkitkan pasangan kunci (kunci publik dan kunci rahasia), beberapa

langkah yang harus dilakukan antara lain:

1. Pilih dua bilangan prima sembarang p dan q

2. Hitung n = p.q. Sebaiknya p ≠ q maka n = p2 sehingga p dapat diperoleh

dengan menarik akar kuadrat dari n

3. Hitung φ(n) = (p - 1).(q - 1)

4. Pilih kunci publik e yang relatif prima terhadap φ(n)

5. Bangkitkan kunci rahasia d dengan persamaan:

e.d ≡ 1 (mod φ(n)) .................................................................................... (II-

10)

Perhatikan bahwa persamaan diatas ekivalen dengan e.d ≡ 1 + k φ(n), sehingga

d dapat dihitung dengan:

d = (1 + k φ(n))/e ...................................................................................... (II-11)

Disini akan didapat dua hasil perhitungan yaitu pasangan n dan d sebagai kunci

rahasia (private) dan pasangan n dan e sebagai kunci publik yang sifatnya tidak

rahasia [MUN06].

Untuk mengenkripsi pesan (plainteks) menjadi cipherteks, langkah-langkah yang

dilakukan adalah:

1. Ambil kunci penerima pesan e dan modulus n

2. Nyatakan plainteks m menjadi blok-blok m1, m2, ... sedemikian sehingga setiap

blok merepresentasikan nilai dalam selang [0,n-1]

3. Setiap blok mi dienkripsi menjadi blok ci dengan rumus

nmcmE eiiie mod)( ≡= ........................................................................... (II-12)

Page 10: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-10

Sedangkan untuk dekripsi digunakan rumus:

ncmcD diiid mod)( == ........................................................................... (II-13)

Kekuatan algoritma RSA ini terletak pada sulitnya memfaktorkan suatu bilangan yang

besar menjadi faktor primanya. Sehingga semakin panjang pasangan kunci yang

digunakan (dalam artian semakin besar bilangan kuncinya) maka algoritma RSA akan

semakin aman.

II.1.7 Tanda Tangan Digital Sejak beberapa ratus tahun yang lalu, tanda tangan digunakan untuk membuktikan

otentikasi suatu dokumen. Tanda tangan ini memiliki beberapa karakteristik, antara

lain:

1. Tanda tangan adalah bukti yang otentik

2. Tanda tangan tidak dapat dilupakan

3. Tanda tangan tidak dapat dipidah untuk digunakan ulang

4. Dokumen yang telah ditandatangani tidak dapat diubah

5. Tanda tangan tidak dapat disangkal

Fungsi tanda tangan pada dokumen kertas juga diterapkan untuk otentikasi pada data

digital, seperti pesan yang dikirimkan melalui saluran komunikasi dan dokumen

elektronik yang disimpan di dalam memori komputer [RIN06].

Tanda tangan pada data digital disebut tanda tangan digital (digital signature). Yang

dimaksud dengan tanda tangan digital di sini bukanlah tanda tangan yang di-digitasi

dengan alat bantu scanner, tetapi suatu nilai kriptografis yang bergantung pada pesan

dan pengirim pesan. Dengan tanda tangan digital, maka integritas data dapat dijamin,

disamping itu juga digunakan untuk membuktikan asal pesan (keabsahan pengiriman)

dan anti penyangkalan [RIN06].

Menandatangani pesan dapat dilakukan dengan salah satu dari dua cara berikut, yaitu:

1. Enkripsi pesan

Mengenkripsi pesan dengan sendirinya juga menyediakan ukuran otentikasi.

Pesan yang terenkripsi sudah menyatakan bahwa pesan tersebut

ditandatangani.

2. Menghitung nilai hash pesan

Page 11: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-11

Tanda tangan digital dibangkitkan dengan menerapkan fungsi hash terhadap

pesan. Nilai hash adalah kode ringkas dari pesan. Tanda tangan digital berlaku

seperti tanda tangan kode ringkas dari pesan. Tanda tangan digital berlaku

seperti tanda tangan pada dokumen kertas. Tanda tangan digital ditambahkan

kemudian ditambahkan pada pesan.

Salah satu teknik menandatangani pesan dengan enkripsi pesan, yaitu dengan

menggunakan algoritma kunci publik. Pesan yang ditandatangani dienkripsi

menggunakan kunci rahasia pengirim (pemberi tanda tangan). Dengan

menggunakan kunci rahasia ini, tidak hanya kerahasiaan pesan yang dicapai,

tetapi juga otentikasi. Setiap orang yang tahu kunci publik pengirim, akan bisa

mendekripsikan pesan tersebut dan tahu bahwa pesan tersebut benar-benar

dari si pengirim. Beberapa, algoritma kunci publik, seperti RSA bisa

digunakan untuk menandatangani pesan dengan cara mengenkripsinya.

II.1.8 Protokol Diffie-Hellman

Protokol merupakan serangkaian aturan yang terurut yang harus dilakukan untuk

tercapainya tujuan. Seperti yang telah dijelaskan pada bagian sebelumnya bahwa

Protokol Diffie-Hellman diperkenalkan oleh Whitfield Diffie dan Martin E. Hellman.

Protokol Diffie-Hellman ini digunakan untuk mempertukarkan kunci antara pihak

yang saling berkomunikasi. Protokol ini bekerja pada saluran komunikasi publik yang

tidak aman, namun dapat menghasilkan kunci (shared secret key) secara aman.

Secara matematis Protokol Diffie-Hellman digambarkan sebagai berikut [MUN06] :

Parameter Umum

Misalkan Alice dan Bob akan mempertukarkan kunci melalui saluran publik. Maka

untuk dapat menggunakan protokol ini keduanya akan memilih suatu bilangan dasar n

dan g sedemikian sehingga g < n. Nilai n dan g tidak perlu rahasia. Bahkan, Alice

dapat membicarakannya melalui saluran yang tidak aman sekalipun.

Algoritma Diffie-Hellman

1. Alice membangkitkan bilangan bulat acak yang besar x dan mengirim hasil

perhitungan berikut kepada Bob:

X = gx mod n ................................................................................ (II-14)

Page 12: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-12

2. Bob membangkitan bilangan bulat acak besar y dan mengirimkan hasil perhitungan

berikut kepada Alice:

Y = gy mod n ................................................................................ (II-15)

3. Alice menghitung

K = Yx mod n ................................................................................ (II-16)

4. Bob menghitung

K’ = Xy mod n .............................................................................. (II-17)

Jika perhitungan dilakukan dengan benar, maka

K = K’

yang berarti kunci simetri sudah berhasil diterima oleh kedua belah pihak. Baik K dan

K’ sama dengan gxy mod n. Carol yang menyadap pembicaraan antara Alice dan Bob

tidak dapat menghitung K. Ia hanya memiliki informasi n, g, X dan Y, tetapi ia tidak

mempunyai informasi nilai x dan y. Untuk mengetahui nilai x dan y, ia perlu

melakukan perhitungan logaritma diskrit, yang mana sangat sulit dikerjakan.

Gambar II-8 memperlihatkan diagram algoritma pertukaran kunci Diffie-Hellman

(Protokol Diffie-Hellman). Di akhir perhitungan Alice dan Bob telah memiliki kunci

rahasia yang sama, K.

Gambar II-8 Pertukaran kunci Diffie-Hellman

Berikut contoh dari jalannya Protokol Diffie-Hellman :

Page 13: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-13

Alice dan Bob menyepakati n = 97 dan g = 5 (g < n). Alice dan Bob melakukan

pertukaran kunci simetri sebagai berikut:

1. Alice memilih x = 36 dan menghitung

X = gx mod n = 536 mod 97 = 50

Alice mengirimkan X kepada Bob.

2. Bob memilih y = 58 dan menghitung

Y = gy mod n = 558 mod 97 = 44

Bob mengirimkan Y kepada Alice.

3. Alice mengitung kunci simetri K,

K = Yx mod n = 4436 mod 97 = 75

4. Bob mengitung kunci simetri K,

K = Xy mod n = 5058 mod 97 = 75

Jadi, Alice dan Bob sudah mempunyai kunci sesi yang sama, yaitu K = 75. Kunci ini

siap digunakan untuk melakukan komunikasi dengan kriptografi simetri.

II.1.9 Pembangkitan Bilangan Acak Pembangkitan bilangan acak adalah salah satu faktor penting dalam kriptografi, maka

dari itu diperlukan suatu mekanisme untuk membangkitkan bilangan acak yang aman.

Pembangkitan ini harus dapat menghasilkan bilangan yang tidak dapat diprediksi oleh

pihak lawan; pembangkitan seperti ini dinamakan cyptographically secure

pseudorandom number generator (CSPRNG). Persyaratan CSPRNG adalah [RIN06]:

1. Secara statistik ia mempunyai sifat-sifat yang bagus (yaitu lolos uji keacakan

statistik)

2. Tahan terhadap serangan (attack) yang serius. Serangan ini bertujuan untuk

memprediksi serangan bilangan acak yagn dihasilkan.

Untuk persyaratan yang kedua ini maka CSPNRG hendaklah memenuhi persyaratan

sebagai berikut:

1. Setiap CSPNRG seharusnya memenuhi “uji bit-berikutnya” (next bit tes)

sebagai berikut: Diberikan k buah bit barisan acak, maka tidak ada algoritma

dalam waktu polinomial yang dapat memprediksi bit ke-(k+1) dengan peluang

keberhasilan lebih dari ½.

Page 14: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-14

2. Setiap CSPNRG dapat menahan “perluasan status”, yaitu jika sebagian atau

semua statusnya dapat diungkap (atau diterka dengan benar), maka tidak

mungkin merekontruksi aliran bilangan acak.

Salah satu metode perancangan CSPNRG adalah dengan menggunakan primitif

kriptografi yaitu dengan menggunakan fungsi hash, sebagai contoh adalah

SHA1PNRG (Secure Hash Algorithm-1 Pseudo Number Random Generator).

SHA1PNRG ini bekerja sebagai berikut: pertama dilakukan penghitungan suatu nilai

hash yang kemudian di konkatenasi dengan 64-bit counter yang di-increment setiap

kali proses pembangkitan bilangan acak. Dari 160-bit hasil algoritma SHA-1 maka

hanya digunakan 64 bit data saja.

2.2 Bluetooth

II.2.1 Pendahuluan

Teknologi Bluetooth merupakan salah satu teknologi pengiriman data tanpa kabel

dengan mempergunakan gelombang radio sebagai medianya. Tidak seperti teknologi

WiFi, area operasi Bluetooth relatif lebih pendek yaitu berkisar 10 – 100 meter.

Perkembangan Bluetooth didorong oleh keinginan untuk menggantikan kabel sebagai

media komunikasi antara handphone, PDAs, dan perangkat portable lainnya.

Bluetooth dikembangkan pertama kali oleh Ericson Mobile Communications pada

tahun 1994 guna menggantikan kabel sebagai media penghubung antara produk

(handphone) mereka [KLI04]. Bluetooth SIG (Special Interest Group) adalah badan

yang bertanggung jawab terhadap perkembangan teknologi Bluetooth. Badan ini

beranggotakan perusahaan-perusahaan ternama seperti, Sony Ericson, Intel, IBM,

Toshiba, Nokia, Microsoft, 3COM, dan Motorola.

Sampai tugas akhir ini ditulis, telah berhasil diciptakan Bluetooth versi 2.1 dengan

tambahan EDR (Enhanced Data Rate), yang mana mampu mengirim data dengan

kecepatan sampai 3 Mbsp [SIG07]. Versi sebelumnya yaitu Bluetooth versi 1.2 hanya

mampu melakukan pengiriman data dengan kecepatan 1 Mbsp. Dilihat dari sisi biaya,

Bluetooth sangatlah murah karena untuk beroperasi hanya memerlukan 2,5 mW daya,

hal inilah yang menjadi faktor utama kenapa Bluetooth sangat tepat untuk

diimplementasikan pada perangkat mobile yang sumber dayanya sangat terbatas.

Page 15: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-15

II.2.2 Arsitektur Protokol Bluetooth

Protokol Bluetooth merupakan sekumpulan aturan yang harus dipenuhi untuk dapat

berkomunikasi menggunakan media Bluetooth. Protokol Buetooth ini memberikan

kemungkinan kepada perangkat Bluetooth dari perusahaan yang berbeda dapat saling

berkomunikasi satu sama lainnya. Melalui protokol ini, perangkat Bluetooth dapat

saling mengetahui layanan yang ditawarkan satu sama lainnya dan dapat

menggunakan layanan tersebut. Arsitektur protokol yang dipergunakan Bluetooth

ditunjukan pada Gambar II-9.

Arsitektur protokol yang digunakan Bluetooth tersusun atas empat layer utama. HCI

adalah layer yang bertugas sebagai pemisah antara sisi hardware dan software maka

dari itu layer HCI ini diimplementasikan sebagian di sisi hardware dan sebagian disisi

software. Semua layer dibawah layer HCI diimplementasikan di sisi hardware

sedangkan layer di atas HCI diimplementasikan di sisi software.

Gambar II-9 Arsitektur Protokol Bluetooth

Tabel II-1 berikut memberikan penjelasan ringkas mengenai masing-masing layer

dari Bluetooth. Tabel II-1 Deskripsi layer Bluetooth

Layer Deskripsi

Application Adalah Bluetooth profil yang akan mengarahkan

developer aplikasi Bluetooth bagaimana aplikasi yang

Page 16: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-16

Layer Deskripsi

dibuat memanfaatkan protokol-protokol Bluetooth

Telephony Control

System (TCS)

Menyediakan layanan mirip telepon konvensional seperti

layanan transport sinyal suara dan data maupun sinyal

control

Service Discovery

Protocol (SDP)

Bagian ini berfungsi untuk menentukan hal-hal apa saja

yang perlu dilakukan oleh Bluetooth client (slave) untuk

menemukan suatu layanan pada Bluetooth server (master)

berdasarkan karakteristiknya

Wireless Application

Protocol (WAP)

Protokol ini merupakan protokol standar untuk mengakses

internet pada perangkat nirkabel

OBEX Protocol Protokol ini digunakan sebagai mekanisme pertukaran

data antar perangkat Bluetooth

RFCOMM Bagian ini menangani emulasi serial port yang akan

digunakan untuk aplikasi.

L2CAP

Bagian ini menyediakan layanan data bersifat connection-

oriented dan connectionless untuk lapisan-lapisan

protokol diatasnya

Host Controller

Interface (HCI)

Menangani komunikasi antara host dengan Bluetooth

module, juga sebagai antarmuka untuk mengakses

fungsionalitas perangkat Bluetooth

Link Manager Protocol

Bagian ini berfungsi untuk pembangunan koneksi antara

perangkat Bluetooth. Pembangunan koneksi ini meliputi

juga negosiasi ukuran paket yang digunakan untuk

transmisi data dan status dari perangkat Bluetooth di

dalam piconet

Baseband and Link

Controller

Bagian ini berfungsi untuk memungkinkan terbentuknya

koneksi fisik frekuensi radio antar perangkat Bluetooth

untuk membentuk piconet. Baseband ini pula yang

mengatur sinkronisasi dan frekuensi hopping

Radio Melakukan modulasi dan demudolasi data untuk transmisi

atau penerimaan data

Page 17: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-17

II.2.3 Jaringan Bluetooth

Jaringan Bluetooth menggunakan prinsip master-slave. Perangkat yang bertindak

sebagai master adalah perangkat yang menginisiasi terbentuknya koneksi. Sebagai

contoh misalnya terdapat dua buah perangkat Bluetooth (A dan B) yang hendak

berkomunikasi. Perangkat A akan menginisiasi koneksi dengan menghubungi

perangkat B, hal ini berarti perangkat A akan bertindak sebagai master dan perangkat

B bertindak sebagai slave dan komunikasi seperti ini sering dikenal dengan istilah

point-to-point communication, seperti pada Gambar II-10:

Gambar II-10 Master-slave pada jaringan Bluetooth

Pada suatu jaringan Bluetooth dikenal istilah piconet atau scatternet. Piconet adalah

bentuk lazim dari jaringan Bluetooth yang terbentuk dari sebuah master dan satu atau

lebih slave. Sebuah piconet dapat terdiri dari sebuah master dan maksimal tujuh buah

slave yang aktif pada suatu waktu. Perangkat yang bertindak sebagai slave hanya bisa

mentransmisi data ketika waktu transmisi diberikan oleh perangkat yang bertindak

sebagai master, selain itu slave juga tidak dapat berkomunikasi langsung dengan slave

lain karena semua komunikasi haruslah melalui perangkat master. Slave melakukan

sinkronisasi frekuensinya dengan master menggunakan master clock dan alamat dari

perangat Bluetooth. Gambar II-11 berikut menunjukan sebuah piconet. Gambar II-10

juga dapat disebut sebagai sebuah piconet yang terdiri hanya atas sebuah master dan

sebuah slave

Gambar II-11 Piconet

Page 18: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-18

Pada suatu area jangkauan gelombang radio maka dua buah piconet mungkin

terbentuk, untuk piconet-piconet ini maka tidak akan ada sinkronisasi frekuensi.

Sebagai akibatnya adalah kemungkinan terjadi tabrakan penggunaan frekuensi antara

piconet yang berbeda. Di sisi lain dua buah piconet pada suatu area jangkauan

gelombang yang sama dapat dikoneksikan satu sama lain. Ketika dua buah piconet ini

dikoneksikan maka akan terbentuk scatternet. Sebuah scatternet ditunjukan pada

Gambar II-12, dengan sebuah intermediate node sebagai penghubung piconet.

Intermediate node ini haruslah time-share, maksudnya bahwa node ini haruslah

mematuhi frequency hopping pada salah satu piconet pada suatu waktu. Sebagai

akibat, hal ini akan mengurangi slot waktu yang tersedia untuk transfer data antara

intermediate node ini dengan master. Gambar II-12 ini menunjukan bahwa perangkat

B yang bertindak sebagai slave pada piconet Gambar II-11 bergabung dengan piconet

lain dengan terhubung kepada master dari piconet tersebut yang dalam hal ini adalah

perangkat E. Kondisi inilah yang mengakibatkan terbentuknya scatternet.

Gambar II-12 Scatternet

Seperti yang telah dijelaskan sebelumnya bahwa pada sebuah piconet hanya boleh

terdiri dari sebuah master. Pada suatu kondisi tertentu yaitu ketika terdapat suatu

perangkat yang hendak bergabung ke dalam piconet yang telah terbentuk maka

masalah akan menjadi rumit. Hal ini dikarenakan kemungkinan piconet yang sudah

ada akan menjadi sebuah scatternet. Kondisi ini tentu tidak diinginkan, maka dari itu

Page 19: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-19

pada jaringan Bluetooth didefinisikan role-switch. Role-switch memungkinkan dua

buah perangkat untuk bertukar peran dalam sebuah piconet.

Sebagai contoh, kita lihat kembali Gambar II-10, misal pada kondisi ini terdapat

perangkat C yang hendak bergabung ke dalam piconet tersebut. Perangkat C akan

mengubungi perangkat master dalam piconet yaitu A. Oleh karena dalam hal ini

perangkat C yang menginisiasi hubungan dengan perangkat A maka perangkat C akan

bertindak sebagai master untuk koneksi perangkat A dengan C. Pada kondisi ini

terdapat dua buah master, berarti terdapat dua buah piconet untuk jaringan yang telah

terbentuk (scatternet). Perangkat A adalah intermediate node antara dua buah piconet

tersebut, yaitu sebagai master untuk perangkat B dan sebagai slave untuk perangkat

C, seperti terlihat pada Gambar II-13:

Gambar II-13 Scatternet dengan tiga buah node

Kondisi seperti ini tidak diinginkan terjadi karena selain scatternet tidak memberikan

layanan jaringan yang reliable, dalam artian komunikasi yang terjadi tidak berjalan

sempurna karena masalah dalam pengiriman data antara perangkat, juga akan terdapat

masalah dalam rangka sinkronisasi frekuensi, seperti yang telah dijelaskan

sebelumnya. Disinilah role-switching memegang peranan. Role-switch antara

perangkat A dengan C akan memungkinkan hanya terbentuk sebuah piconet saja

untuk kondisi seperti di atas, dimana perangkat A akan menjadi master dan baik B

serta C akan bertindak sebagai slave. Dari kasus di atas terlihat bahwa ketika suatu

perangkat baru hendak bergabung ke dalam sebuah piconet yang sudah terbentuk

sebelumnya maka dibutuhkan role-switch, jika tidak maka akan terbentuk scatternet

dengan intermediate node-nya mempunyai dua peran yaitu sebagai master dan

sekaligus slave.

Page 20: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-20

II.2.4 Aspek Keamanan Bluetooth

Jaringan yang terbentuk pada komunikasi Bluetooth adalah jaringan ad hoc. Disebut

jaringan ad hoc dikarenakan jaringan Bluetooth ini terbentuk hanya ketika terdapat

kesepakatan antara pihak-pihak yang akan berkomunikasi dan jaringan ini tidak

memerlukan suatu infrastruktur terpusat yang bertugas mengatur jalannya

komunikasi, seperti pada jaringan telepon seluler. Atas alasan tersebut maka aspek

keamanan komunikasi menjadi sangat penting karena tidak ada yang dapat menjamin

bahwa pihak-pihak yang berkomunikasi adalah pihak yang benar.

Selain karena alasan di atas, kebutuhan akan sisi keamanan komunikasi menjadi

sangat penting pada jaringan Bluetooth karena jaringan ini adalah jaringan tanpa

kabel. Pada jaringan tanpa kabel jika perangkat komunikasi yang dipergunakan

propertinya diatur agar terdeteksi keberadaannya oleh perangkat lain, maka setiap

pihak di dalam jaringan akan dapat melakukan koneksi ke perangkat kita (Bluetooth)

dan melakukan pencarian layanan yang ditawarkan oleh perangkat kita kemudian

menggunakanya. Dalam rangka untuk mengatasi hal ini maka pada spesifikasi

Bluetooth didefinisikan sebuah model keamanan yang didasarkan pada tiga komponen

yaitu otentikasi, enkripsi dan otorisasi. Sebagai tambahan, tiga mode keamanan juga

telah didefinisikan. Dimana layanan keamanan pada sistem komunikasi Bluetooth

diatur oleh sebuah security manager.

II.2.4.1 Mode Keamanan

Dilihat dari sisi dimana aspek keamanan tersebut diaplikasikan pada jaringan

Bluetooth maka terdapat tiga level keamanan Bluetooth. Adapun level keamanan

tersebut antara lain [KLI04]:

1. No security (security level 1), pada level ini perangkat Bluetooth tidak akan

pernah menginisiasi prosedur keamanan. Dukungan terhadap otentikasi

menjadi layanan tambahan. Level keamanan ini sudah jarang

diimplementasikan pada perangkat Bluetooth dewasa ini.

2. Service level enforced security (security level 2), merupakan level keamanan

yang paling banyak diimplementasikan pada perangkat Bluetooth. Disini,

keamanan diimplementasikan pada level layanan sehingga layanan yang

menentukan apakah keamanan dibutuhkan atau tidak. Sebagai catatan bahwa

pada security level 2 prosedur keamanan diinisiasi oleh layer atas Bluetooth

Page 21: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-21

setelah koneksi perangkat Bluetooth dibentuk oleh layer bawah. Fitur ini

memungkinan pengembang perangkat lunak untuk membuat layanan dan

menentukan apakah layanan tersebut membutuhkan sisi keamanan atau tidak.

Pada level ini terdapat pembagian perangkat menjadi tiga kategori keamanan,

yaitu:

a. Trusted devices, adalah perangkat yang telah diberi tanda sebagai

perangkat yang telah terotentikasi dan terotorisasi pada database dan dapat

diberikan akses tak terbatas terhadap layanan yang disediakan.

b. Known untrusted devices, adalah perangkat yang telah terotentikasi dan

terotorisasi namun akses terhadap layanan dibatasi.

c. Unknown devices, perangkat yang belum terotentikasi dan terotorisasi

sehingga akses terhadap layanan yang ditawarkan sangat terbatas.

Disamping pembagian kategori keamanan berdasarkan perangkat, terdapat

juga pembagian keamanan berdasarkan layanan yang ada. Untuk itu terdapat

tiga mode keamanan, yang mana semakin tinggi modenya semakin aman

komunikasinya. Adapun ketiga mode tersebut adalah:

a. Open services (security mode 1), tanpa kebutuhan keamanan, setiap

perangkat dapat mengaksesnya.

b. Authentication-only services (security mode 2), akses hanya untuk

perangkat terotentikasi.

c. Authentication and Authorization services (security mode 3), akses hanya

untuk perangkat yang sudah terotentikasi dan terotorisasi.

3. Link level enforced security (security level 3), prosedur keamanan diinisiasi

selama pembentukan koneksi perangkat Bluetooth. Jika inisiasi ini gagal

berarti pembentukan koneksi perangkat juga akan gagal. Pada level ini inisiasi

dilakukan oleh layer bawah Bluetooth. Pengembang aplikasi tidak memiliki

wewenang untuk menentukan metode keamanan yang akan diterapkan. Mode

keamanan ini akan sangat cocok untuk perangkat Bluetooth yang tidak

memerlukan konfigurasi dari pengguna karena telah memiliki pengaturan awal

dari perusahaan dan merupakan perangkat yang dikeluarkan sebagai

pelengkap perangkat lainnya, seperti Bluetooth headsets.

Page 22: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-22

II.2.4.2 Otentikasi, Enkripsi, dan Otorisasi Bluetooth

Otentikasi adalah proses untuk memastikan bahwa pihak yang diajak berkomunikasi

adalah pihak yang benar. Otentikasi menjadi penting karena pada jaringan publik

tidak ada jaminan bahwa pihak-pihak yang terlibat pada jaringan tidak akan

melakukan kecurangan ataupun tidak kejahatan, sehingga jika pihak tersebut

terkoneksi pada perangkat kita maka sesuatu yang tidak diinginkan bisa terjadi. Untuk

melakukan otentikasi Bluetooth menggunakan prinsip bonding [KLI04]. Bonding

yaitu suatu prosedur yang dipergunakan oleh suatu perangkat Bluetooth untuk

mengotentikasi perangkat lain memanfaatkan sebuah kunci yang disebut shared

authentication key. Jika perangkat yang akan berkomunikasi belum memiliki kunci ini

maka kunci ini akan dibangkitkan pada awal komunikasi, jika tidak proses bonding

tidak akan selesai. Proses pembangkitan shared authentication key disebut proses

pairing. Ketika proses pairing ini telah selesai maka perangkat akan menyimpan

kunci yang dihasilkan untuk keperluan komunikasi selanjutnya. Selama kunci ini

disimpan oleh masing-masing perangkat maka perangkat tersebut akan tetap

terotentikasi satu sama lain, sehingga setiap akan berkomunikasi pada masa akan

datang tidak diperlukan lagi proses pairing.

Proses pairing melibatkan dua proses utama yaitu: pembentukan kunci inisialisasi

(Kinit) dilanjutkan dengan pembentukan kunci penghubung (Klink) [SHA05]. Pada

pembentukan kunci inisialisasi diperlukan input berupa alamat dari perangkat

Bluetooth (BD_ADDR), kode PIN dan panjangnya serta bilangan random 128 bit

(IN_RAND). Selanjutnya dengan menggunakan algoritma E22 akan dibangkitkan Kinit.

Proses ini digambarkan seperti Gambar II-14. Pihak yang diajak berkomunikasi akan

dikirimi nilai dari IN_RAND dalam bentuk plainteks sehingga dapat membentuk Kinit

yang bersesuaian. Setelah Kinit berhasil terbentuk maka selanjutnya akan dilakukan

pembentukan kunci penghubung Klink. Klink ini berikutnya akan dipergunakan untuk

membentuk kunci enkripsi/dekripsi. Pembentukan Klink memerlukan input berupa

BD_ADDR dan bilangan random 128 bit lain (LK_RAND). Dengan mengaplikasikan

algoritma E21 sebanyak dua kali pada masing-masing perangkat yang berkomunikasi

akan dibentuk Klink. Untuk dapat melakukan hal ini maka masing-masing perangkat

harus mempertukarkan nilai LK_RAND yang di-xor-kan dengan Kinit, seperti yang

ditunjukan pada Gambar II-15. Ketika Klink telah terbentuk ini berarti proses pairing

Page 23: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-23

telah selesai dilakukan. Kemudian proses dilanjutkan ke otentitikasi perangkat yang

dikenal dengan mutual authentication. Proses ini memerlukan masukan berupa nilai

random 128 bit (AU_RAND), Klink, dan BD_ADDR. Nilai AU_RAND akan dikirimkan

ke perangkat lain. Kemudian oleh perangkat tersebut akan dihitung nilai 32 bit word

yang disebut SRES dengan algoritma E1. Selanjutnya nilai SRES ini akan dikirim

kembali ke pada perangkat pasangan. Jika nilai SRES yang diterima dari perangkat

lain sama dengan nilai SRES yang dihitung sendiri bearti proses otentikasi berhasil

dan sebaliknya otentikasi dianggap gagal, proses ini ditunjukan oleh Gambar II-16.

Gambar II-14 Proses pembentukan Kinit dengan E22

Ketika dua buah perangkat telah terotentikasi satu sama lain, maka layanan enkripsi

data dapat diterapkan sepanjang komunikasi dilakukan. Namun sebelumnya, kedua

perangkat harus menegosiasikan mode enkripsi dan panjang kunci yang akan

digunakan. Terdapat tiga jenis mode enkripsi yang dapat dipilih, yaitu [KLI04]:

1. No encryption, tidak ada enkripsi yang diterapkan terhadap paket yang

dikirimkan.

2. Encrypt both point-to-point and broadcast packets, baik paket yang dikirim

pada komunikasi point-to-point ataupun broadcast akan dienkripsi.

3. Only encrypt point-to-point packets, hanya paket untuk komunikasi point-to-

point yang akan dienkripsi sedangkan paket untuk komunikasi broadcast tidak

dienkripsi.

Page 24: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-24

LK_KA

Randomize 128bit

LK_RANDA

Randomize 128bit

LK_RANDB

E21 E21 E21 E21

initA KRANDLK ⊕_

initB KRANDLK ⊕_

Kinit Kinit

BroadcastedMessages

Master(A)

Slave(B)

LK_R

AN

DA

BD

_AD

DR

A

BD

_AD

DR

B

LK_R

AN

DB

LK_R

AN

DA

BD

_AD

DR

A

BD

_AD

DR

B

LK_R

AN

DB

LK_KB

Klink

LK_KA LK_KB

Klink Gambar II-15 Pembentukan Klink dengan E21

Gambar II-16 Mutual Authentication menggunakan E1

Page 25: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-25

Otorisasi adalah proses untuk memberikan ijin kepada perangkat lain untuk

mengakses layanan-layanan tertentu yang ditawarkan pada perangkat Bluetooth.

Untuk dapat terotorisasi pada perangkat kita maka perangkat lain terlebih dahulu

haruslah sudah terotentikasi melalui proses bonding. Jika telah terotorisasi maka suatu

perangkat akan diberi atribut trusted, dengan ini maka perangkat tersebut telah dapat

mengakses layanan pada perangkat kita sesuai grant yang diberikan.

II.2.4.3 Security Manager

Dalam rangka tetap mencatat perangkat-perangkat mana saja yang telah terotorisasi

pada suatu perangkat Bluetooth dan level-level otorisasi suatu layanan, maka

informasi otorisasi ini haruslah disimpan pada suatu database. Dua buah basis data

digunakan untuk melakukan hal ini yaitu untuk perangkat dan untuk layanan. Security

manager bertanggung jawab atas akses terhadap informasi yang terdapat di dalam

basis data, demikian juga terhadap penyimpanan dan ekstraksi data dari basis data.

Oleh karena itu segala pertukaran data dari berbagai layer dan basis data haruslah

melalui security manager.

Fungsi penting lain dari security manager adalah dalam proses pairing yaitu

menangani masukan passkey dan jawaban otorisasi dari pengguna ketika perangkat

lain hendak terkoneksi ke suatu perangkat. Security manager juga menyediakan

antarmuka bagi pengguna untuk konfigurasi security setting pada perangkat

Bluetooth.

II.2.4.4 Cracking Bluetooth Security Proses otentikasi pada perangkat Bluetooth memerlukan dilakukannya pertukaran data

dalam bentuk plainteks ke masing-masing perangkat. Kondisi ini sangat tidak

menguntungkan karena data yang dipertukarkan tersebut dapat dimanfaatkan untuk

melakukan pemecahan kunci enkripsi yang dipergunakan pada komunikasi. Adapun

daftar data yang dipertukarkan pada proses pairing dan otentikasi dapat dilihat pada

Tabel II-2 [SHA05]: Tabel II-2 Daftar data yang dipertukarkan ketika proses pairing dan otentikasi

# Sumber Tujuan Data Pangjang Keterangan

1 Perangkat A Perangkat B IN_RAND 128 bit Plainteks

2 Perangkat A Perangkat B LK_RANDA 128 bit Hasil XOR dengan Kinit

Page 26: BAB II DASAR TEORI - digilib.itb.ac.id · definisi kriptografi, sistem kriptografi dan protokol Diffie-Hellman. ... Contoh dari sistem ini adalah RC4 (ARCFOUR), Data Encryption Standard

II-26

# Sumber Tujuan Data Pangjang Keterangan

3 Perangkat B Perangkat A LK_RANDB 128 bit Hasil XOR dengan Kinit

4 Perangkat A Perangkat B AU_RANDA 128 bit Plainteks

5 Perangkat B Perangkat A SRES’ 32 bit Plainteks

6 Perangkat A Perangkat B SRES 32 bit Plainteks

Jika pihak penyerang berhasil menyadap semua data diatas dan pesan terenkripsi yang

dipertukarkan pada saat komunikasi maka pihak penyerang akan dapat menembak

PIN yang dipergunakan untuk mengenkripsi pesan pada komunikasi tersebut. Hal ini

berarti pihak penyerang akan dapat mengetahui pesan apa yang dipertukarkan.

Metode untuk pemecahan PIN dapat berbagai macam dimana diawali dengan

enumerasi kemungkinan PIN, kemudian dilakukan penerkaan PIN. Dengan

mengetahui nilai IN_RAND dan BD_ADDR maka pihak penyerang dapat menjalankan

algoritma E22 untuk menemukan nilai Kinit. Nilai Kinit ini dapat dipergunakan untuk

men-decode data nomor 2 dan 3 pada Tabel II-2. Hasil decode data ini akan

memberikan informasi yang cukup lengkap untuk menentukan nilai Kab. Ketika nilai

Kab telah berhasil ditemukan maka pihak penyerang dapat menggunakan empat data

terakhir dari Tabel II-2 untuk menemukan PIN dengan cara menghitung SRES dan

membandingkannya dengan data nomor 5 dan 7 pada Tabel II-2. Flow chart dari

keseluruhan proses untuk memecahkan PIN dari suatu perangkat Bluetooth dapat

dilihat pada Lampiran-B.