Studi dan Implementasi Keamanan User Privacy menggunakan CP-ABE
Samsul Huda (1), Amang Sudarsono (2), Tri Harsono (3)
Politeknik Elektronika Negeri Surabaya, Jalan Raya ITS Sukolilo 60111, Surabaya.
Email : [email protected], [email protected], [email protected].
Data privacy merupakan salah satu problem security utama dalam pertukaran data melalui jaringan
publik. Telah banyak berkembang algoritma kriptografi untuk mengatasi segala aspek keamanan yang mungkin
memiliki celah. Namun bila keamanan algoritma bergantung pada kerahasian algoritma yang bekerja, maka
algoritma tersebut dikatakan sebagai algoritma yang memiliki kemampuan terbatas. Kerahasian algoritmanya
menjadi suatu kelemahan karena tidak mengijinkan adanya kontrol kualitas atau standarisasi. Attribute based
encryption (ABE) merupakan jenis algoritma enkripsi yang relatif baru dengan kerahasiaan berdasarkan konrol
hak aksesChipertext Policy-Attribute based encryption(CP-ABE) hadir sebagai varian dari ABE yang
mengkorespondenkan kunci privat dengan sekumpulan attribut yang melekat pada setiap user yang berhubungan
dengan aturan policy untuk proses enkripsi dan dekripsisehingga mendukung aspek user privacy. Dari hasil
eksperimen, CP-ABE dapat diimplementasikan dalam mengamankan pertukaran data dengan tetap menjaga
kerahasisaan informasi user yang bersifat pribadi. Proses enkripsi dan dekripsi dalam CP-ABE dengan spesifikasi
peralatan yang digunakan membutuhkan waktu komputasi sekitar 100 ms.
1. Pendahuluan
Pertukaran data baik berupa gambar, suara
dan video semakin mudah dilakukan dengan adanya
jaringan dengan kecepatan tinggi. Akan tetapi karena
penggunaan dari jaringan publik yang bersifat global
dan terbuka, dimana setiap pengguna dapat saling
berkomunikasi dan bertukar informasi, hal ini
menimbulkan permasalahan di sisi keamanan
khususnya data privacy [3][5]. Data-data pribadi yang
dikirimkan melalui internet, tidak seharusnya dapat
dibaca dan dimiliki oleh orang lain yang tidak
berkepentingan. Agar kerahasiaan data tetap terjamin
saat dipertukarkan dibutuhkan suatu mekanisme untuk
menjaga keamanan data tersebut. Kriptografi
merupakan solusi untuk membatasi hak akses akan
layanan atau data yang bersifat pribadi [2][3]. Telah
banyak berkembang algoritma kriptografi untuk
mengatasi segala aspek keamanan yang mungkin
memiliki celah. Namun bila keamanan algoritma
bergantung pada kerahasian algoritma yang bekerja,
maka algoritma tersebut dikatakan sebagai algoritma
yang memiliki kemampuan terbatas[2].
Algoritma terbatas biasanya digunakan oleh
sekelompok orang untuk bertukar pesan satu sama
lain. Mereka membuat suatu algoritma enkripsi dan
algoritma enkripsi tersebut hanya diketahui oleh
anggota kelompok itu saja. Tetapi, algoritma terbatas
tidak cocok lagi jika digunakaan saat ini, disebabkan
karena setiap kali ada anggota kelompok yang keluar,
maka algoritma kriptografi harus diganti lagi.
Kerahasian algoritmanya menjadi suatu kelemahan
karena tidak mengijinkan adanya kontrol kualitas atau
standarisasi. Attribute based encryption (ABE)[4]
merupakan jenis algoritma enkripsi yang relatif baru
dengan berbasis attribut yang memiliki tingkat
keamanan tinggi dengan tingkat komputasi rendah
berdasarkan kontrol hak akses.
ABE dapat diimplementasikan sebagai
sistem keamanan pada perangkat mobile dengan
karakteristik kecepatan processor rendah [4].
Chipertext Policy-Attribute based encryption (CP-
ABE) [1] merupakan varian dari ABE yang
mengkorespondenkan kunci privat dengan
sekumpulan attribut yang melekat pada setiap user
yang berhubungan dengan aturan policy untuk proses
enkripsi dan dekripsi. Hal ini memungkinkan setiap
user memiliki private key yang unik, yang
didefinisikan oleh propertis atribut mereka. Seorang
pengguna akan dapat mendekripsi ciphertext, jika dan
hanya jika atributnya memenuhi aturan policy yang
didefinisikan pada ciphertext.
Pada penelitian ini, kami
mengimplementasikan algoritma CP-ABE dalam
proses pertukaran data (data exchange) yang
melibatkan 3 entitas, 2 user dan 1 server sebagai
Trusted Third Party (TTP) melalui jaringan wireless.
2. Dasar Teori
2.1 Kriptografi Kunci Publik
Kriptografi kunci public (public key
cryptography) atau lebih dikenal dengan kriptografi
asimetris didesain sebaik mungkin sehingga kunci
yang digunakan untuk enkripsi berbeda dengan kunci
dekripsinya. Dimana kunci untuk enkripsi bersifat
publik, sementara kunci dekripsinya bersifat rahasia
(hanya diketahui oleh penerima pesan) [2]. Pada
kriptografi asimetris, setiap orang yang akan
berkomunikasi harus mempunyai sepasang kunci,
yaitu kunci privat dan kunci publik. Pengirim pesan
akan mengenkripsi pesan menggunakan kunci publik
si penerima pesan dan hanya penerima pesan yang
dapat mendekripsi pesan tersebut karena hanya dia
yang mengetahui kunci privatnya sendiri [2].
Kriptografi kunci-publik dapat dianalogikan
seperti kotak surat yang terkunci dan memiliki lubang
untuk memasukkan surat. Setiap orang dapat
memasukkan surat ke dalam kotak surat tersebut,
tetapi hanya pemilik kotak yang dapat membuka kotak
dan membaca surat di dalamnya karena ia yang
memiliki kunci. Sistem ini memiliki dua keuntungan.
Yang pertama yaitu, tidak ada kebutuhan untuk
mendistribusikan kunci privat sebagaimana pada
sistem kriptografi simetri. Kunci publik dapat dikirim
ke penerima pesan melalui saluran yang sama dengan
saluran yang digunakan untuk mengirim pesan.
Saluran untuk mengirim pesan umumnya tidak aman.
Kedua, jumlah kunci yang digunakan untuk
berkomunikasi secara rahasia dengan banyak orang
tidak perlu sebanyak jumlah orang tersebut, cukup
membuat dua buah kunci, yaitu kunci publik bagi para
koresponden untuk mengenkripsi pesan, dan kunci
privat untuk mendekripsi pesan. Berbeda dengan
kriptografi kunci-simetris yang membuat kunci
sebanyak jumlah pihak yang diajak berkorespondensi
[2].
2.2 Elliptic Curve Cryptography
Elliptic Curve Cryptography (ECC) adalah
salah satu pendekatan algoritma kriptografi kunci
publik dengan tingkat keamanannya berdasarkan pada
permasalahan matematis kurva eliptik pada struktur
aljabar dari kurva ellips pada daerah finite [2]. ECC
menggunakan masalah logaritma diskrit pada titik-titk
kurva elips yang disebut dengan ECDLP (Elliptic
Curves Discrete Logarithm Problem). Oleh
karenanya, ecc mempunyai keuntungan jika
dibandingkan dengan algoritma kriptografi kunci
publik lainnya yaitu dalam hal ukuran panjang kunci
yang lebih pendek tetapi memiliki tingkat keamanan
yang sama. Kriptosistem kurva ellips ini dapat
digunakan pada beberepa keperluan seperti:
a. Skeme enkripsi (ElGamal ECC)
b. Tanda tangan digital (ECDSA – Elliptic
Curves Digital Signature)
c. Protokol pertukaran kunci (Diffie Hellman
ECC)
2.3 CP-ABE
Chipertext Policy-Attribute based encryption
(CP-ABE) menambahkan fitur baru yang menjadi
kelebihan utama dalam sis tem keamanan jaringan
komputer, yaitu user privacy [1]. Dalam
implementasinya, CP-ABE menggunakan attribut dari
masing-masing user sebagai faktor penentu yang
dapat mendekripsi pesan berdasarkan policy yang
dibuat. Dalam CP-ABE chipertext berasosiasi dengan
policy yang dibuat. Terdapat 5 tahapan fundamental
yang terdapat dalam algoritma CP-ABE. Tahapan-
tahapan tersebut dapat digambarkan dalam gambar 1.
Gambar 1. Tahapan CP-ABE[1]
a. Setup
Tahapan yang dilakukan pertama dalam
algoritma CP-ABE adalah proses setup. Dalam
tahapan ini, dilakukan inisialisasi awal yang
sesuai dengan bilinear group yang direncanakan.
Dibutuhkan initial security parameter sehingga
dalam setup ini dihasilkan komponen PK(Public
Key) dan MK(Master Key).
b. Encrypt
Pada tahapan ini, dilakukan proses enkripsi
terhadap pesan M. Diperlukan komponen PK
serta auran access policy τ yang telah ditetapkan
atau disepakati antara encryptor dan decryptor.
Setelah melalui proses enkripsi pesan M dirubah
formatnya menjadi chipertext CT. Komponen
CT ini yang akan dikirim ke user tujuan.
c. Keygen
Tahapan selanjutnya adalah pembangkitan kunci
privat SK(Secret Key). Dibutuhkan parameter
input berupa MK dan serangkaian atribut S yang
akan didaftarkan ke setiap user.
d. Decrypt
Setelah CT diterima, user belum mengerti
maksud dari pesan tersebut. Penerima harus
mendekripsi pesan CT dengan masukan
parameter SK, access policy τ dan attribute S.
Pesan hanya dapat di dekripsi bila SK yang
berasosiasi dengan atribut S memenuhi aturan
policy τ .
e. Delegate
Dengan adanya delegasi ini memungkinkan user
untuk menghasilkan kunci privat SK baru dari
kumpulan atribut S.
3. Perancangan dan Implementasi Sistem
Dalam implementasinya, kami mengadopsi
dari algoritma CP-ABE dengan menerapkan 4 aspek:
a. Setup
b. Keygen
c. Encrypt
d. Decrypt
Pada penelitian ini di desain eksperimen
menggunakan Trusted Third Party sebagai key
generator dan key distributor. Terdapat 2 user, andi
dan budi yang saling mempertukarkan data melalui
jaringan publik yang rawan akan intercept dari pihak
Setup
Decrypt
Encrypt
Delegate
keygen
CP-ABE Process
yang tidak memiliki otoritas. User dan server dalam
bentuk perangkat laptop dengan spesifikasi seperti
tabel 1. Dilakukan pertukaran data tekt dengan ukuran
20 byte.
Tabel 1. Spesifikasi perangkat
Spesifikasi Keterangan
Software Gcc-4.7, gmp-5.1.1,
pbc-lib-0.5.14, glib2.34,
openssl-1.0.1c
O/S Debian Linux kernel-
3.5.0-17
CPU Intel core i3-370M 2.4
GHz
RAM 4GB DDR3
Enkripsi dilakukan dengan menentukan
aturan policy yang akan diterapkan dan melekat pada
pesan yang telah menjadi chipertext. Aturan ini yang
akan menentukan siapa saja yang memiliki otoritas
untuk mendekripsi chipertext.
Gambar 2. Prosedur enkripsi
Aturan policy yang diterapkan adalah bahwa
pesan tersebut hanya dapat di dekripsi oleh seorang
yang berada pada IT department atau seorang yang
berada di bagian marketing dan menjabat sebagai
manager. Selengkapanya seperti gambar 3.
Gambar 3. Aturan policy
Aturan policy tersebut akan berlaku ketika
proses enkripsi terjadi dengan meng-asosiasikan
aturan tersebuat dengan atribut user yang berwenang
mendekrip pesan. Attribut yang dirancang adalah user
andi memiliki proserti : manager, IT department dan
user budi : manager, sales seperti pada tabel 2.
Tabel 2. Attribut User
Andi Budi
Manager Manager
IT Department Sales
Desain sistem dalam eksperimen ini
menggunakan 3 perangkat dengan tahapan :
[1] User adi dan budi melakukan registrasi ke
TTP dengan mendaftarkan atribut-atribut
yang melekat pada diri user . TTP akan
mengirimkan balasan berupa kunci privat
sebagai tanda bahwa registrasi berhasil.
[2] User andi dan user budi melakukan
komunikasi dengan cara melakuakn
pertukaran data secara aman.
Gambar 4. Desain sistem
4. Hasil
Dalam penelitian ini dilakukan pengukuran
performa dari algoritma CP-ABE. Performa
implementasi algoritma enkripsi dalam sistem data
dinilai berdasarkan perhitungan waktu eksekusi dan
kemampuan privacy dari data yang dipertukarkan.
a. Perhitungan waktu eksekusi
Setup Keygen Enkripsi Dekripsi
32.34 ms 26.02 ms 80,04 ms 100.12 ms
b. Kekuatan Enkripsi
Dari hasil eksperimen diketahui bahwa
berdasarkan aturan policy yang telah dibuat,
hanya user dengan atribut yang memenuhi atau
sesuai dengan aturan policy lah yang bisa
mendekripsi chipertext menjadi pesan asli. Dari
pesan original berukuran 20 byte dihasilkan
ciphertext dengan ukuran 822 byte.
5. Kesimpulan
Chipertext Policy-Attribute based encryption
(CP-ABE) dapat diimplementasikan dalam
mengamankan pertukaran data dengan tetap menjaga
kerahasisaan informasi user yang bersifat pribadi.
Proses enkripsi dan dekripsi dalam CP-ABE dengan
spesifikasi peralatan yang digunakan membutuhkan
waktu komputasi sekitar 100 ms.
Message M
CP-ABEEncryption
CT CTCP-ABE
Decryption
Message M
AccessPolicy
Pk
Sk
Pk
Encryption Decryption
AccessPolicy
IT Dept.
OR
MarketingManager
AND
Andi Budi
TTP
1 1
2
Referensi
[1] J.Bethencourt, A.Sahai, dan B.Waters,
“Ciperthext-policy Attribute-Based Encryption”,
IEEE Symposium on Security and
Privacy,pp.321-334, 2007.
[2] W. Stalling. Network Security Essentials:
Applications and Standards, Fourth edition,
Prentice-Hall, Inc., 2011.
[3] Shailender Gupta dan Chander Kumar, “Shared
Information Based Security Solution for Mobile
Ad Hoc Networks”, international Journal of
wireless & mobile networks(IJWMN),
Vol.2, No.1, February 2010, pp.176-187, 2010.
[4] T. Nishide, K. Yoneyama, and K. Ohta. Attribute-
based encryption with partially hidden encryptor-
specified access structures. In S. M. Bellovin, R.
Gennaro, A. D. Keromytis, and M. Yung, editors,
ACNS, volume 5037 of Lecture Notes in
Computer Science, pages 111– 129, 2008.
[5] Amang Sudarsono, Toru Nakanishi, and Nobuo
Funabiki, “An Implementation of a Pairing-
Based Anonymous Credential System with
Constant Complexity”, Proceeding of The
International Multi Conference of Engineers and
Computer Scientists 2011 (IMECS2011), pp.
630-635, March 16-18, Hong Kong, 2011.
[6] J.Benthencourt, A.Sahai, and B.Waters, cpabe
toolkit in advanced Crypto Software Collection,
http://hms.isi.jhu.edu/acsc/cpabe/.
[7] BenLynn, PBC (Pairing-Based Cryptography)
library, http://crypto.stanford.edu/pbc/.