Seperti yang diberitakan, Dedy Corbuzier (DC) membuat
ilusi prediksi hasil Euro 2008. DC menuliskan isi prediksinya pada
tanggal 6 juni 2008, lalu menyimpannya di sebuah kotak yang dijaga 24
jam non-stop. Kemudian tanggal 30 juni isi prediksi itu dibuka dan
dibacakan. Dan isinya adalah hasil Euro 2008 yang akurat bahkan sampai
skor akhir dan penjebol gawangnya. Bagaimana seandainya ilusi itu
memakai teknologi security?
Namanya juga ilusi, tentu ada celah
(vulnerability) yang di-exploit oleh DC sehingga menciptakan ilusi,
seolah-olah dia bisa melakukan prediksi dengan tepat.
Mari kita analisa, apa vulnerability
yang diexploit DC dalam ilusinya kali ini.
Vulnerabilities: Authentication
and Integrity
Seandainya ada seseorang yang menunjukkan kepada anda
suatu dokumen, kemudian dia mengklaim bahwa dokumen itu dibuat
oleh si X 1 bulan yang lalu. Apa reaksi anda? Saya yakin beragam
pertanyaan akan muncul, a.l :
oleh si X 1 bulan yang lalu. Apa reaksi anda? Saya yakin beragam
pertanyaan akan muncul, a.l :
- Bagaimana anda bisa yakin bahwa dokumen itu benar-benar dibuat 1 bulan yang lalu, bukan baru kemarin?
- Bagaimana anda bisa yakin bahwa si X lah yang menulis dokumen itu?
- Bagaimana anda bisa yakin bahwa apa yang anda lihat adalah apa yang ditulis X 1 bulan yang lalu? Mungkin saja yang anda lihat sekarang sudah diubah dan berbeda 180 derajat dengan yang ditulis X 1 bulanyang lalu.
Pertanyaan-pertanyaan itu lah yang
menjadi vulnerability yang di-exploit DC sehingga ilusinya bisa
dilakukan. Dengan kata lain vulnerability yang dimaksud adalah:
Authentication (siapa sebenarnya pembuat dokumen) dan Integrity (apakah
dokumen itu masih asli atau sudah diubah).
Digital Signature
Kriptografi kini sudah sangat maju
sehingga pertanyaan-pertanyaan itu bisa dijawab dengan meyakinkan.
Teknologi yang saya maksud adalah digital signature, yang merupakan
gabungan dari kriptografi asimetris dengan fungsi hash.
Proses signing dokumen adalah menghitung fingerprint dokumen dengan
fungsi hash, lalu meng-enkripnya dengan kunci private si pembuat
dokumen.
Penerima dokumen bisa melakukan
verifikasi dengan cara:
- Melakukan dekripsi signature dengan kunci publik pembuat dokumen sehingga kembali menjadi fingerprint.
- Menghitung fingerprint dokumen yang diterima.
- Membandingkan nilai fingerprint dari langkah 1 dan langkah 2, jika tidak sama maka dokumen compromised dan tidak bisa dipercaya lagi.
Dokumen yang memiliki digital signature yang valid
membuktikan bahwa:
- Dokumen itu benar-benar dibuat oleh pembuatnya,
- Dokumen itu tidak pernah berubah sejak ditanda tangani.
Lalu bagaimana dengan umur? Sebenarnya
kita tidak bisa mengukur umur sebuah file. File hanyalah untaian bit
yang tidak lain hanyalah konsep yang mewakili keadaan ada atau tidak
ada.
Maka untuk menyiasatinya, tanggal
pembuatan file harus dimasukkan dalam dokumen (sebagai bagian dari data,
bukan meta-data) yang telah di-sign. Sehingga apabila ada perubahan
pada tanggal pembuatan maka signature akan menjadi tidak valid lagi.
Dengan cara ini sebenarnya umur file
tergantung dari apakah pencantuman tanggal pembuatan dilakukan dengan
benar. Bisa saja dokumen diberi cap waktu pembuatan tanggal 15 padahal
sebenarnya dibuat tanggal 10.
The Scenario
Kembali ke ilusi DC tadi, seandainya
ilusi itu dilakukan dengan digital signature maka skenarionya kurang
lebih begini:
- DC mempublikasikan public keynya ke repository public key di internet.
- Pada tanggal 6 juni, prediksi ditulis dalam sebuah file “prediksi.txt”.
- File prediksi.txt itu di-sign secara digital oleh DC.
- Signature prediksi.txt dipublikasikan lewat internet sehingga orang lain bisa mengkopi dan mencatatnya di komputer masing-masing.
File prediksi.txt sendiri tidak
dipublikasikan, karena memang dirahasiakan hingga dibuka pada tanggal 30
juni. Bila telah tiba waktu pembukaan isi file, maka isi file
prediksi.txt dibacakan dan dipublikasikan (boleh didownload bebas dari
internet).
Kini siapapun bisa melakukan verifikasi dengan cara:- Isi file prediksi.txt yang didownload dari internet dihitung fingerprintnya dengan fungsi hash.
- Signature yang telah dipublikasikan sebelumnya di-dekrip dengan public-key DC, hasilnya adalah fingerprint.
- Fingerprint di langkah 1 dibandingkan dengan fingerprint dari langkah 2. Bila match, berarti file prediksi.txt yang didownload 30 juni sama dengan file prediksi.txt yang dibuat pada tanggal 6 juni, dengan kata lain kita yakin bahwa file yang didownload pada tanggal 30 juni dibuat pada tanggal 6 juni.
Kesimpulan
Dengan digital signature kita bisa yakin
akan integritas dan ke-otentik-an suatu dokumen, dan bila disebutkan
juga tanggal pembuatannya dalam dokumen kita juga bisa (lebih) yakin
akan umur sebuah file.
Jadi bila DC berani melakukan ilusinya
dengan skenario ini dan hasil prediksinya 100% benar, maka secara teknis
saya berani mengatakan dia memang benar-bener berhasil memprediksi,
entah kebetulan atau tidak buat saya itu tidak penting.
Posting Komentar
No Rule's ! but please create your own rule with good rules _.