Timestamping

Posted by Ae89 on Sabtu, 08 Mei 2010 | 0 komentar

Pengklasifikasian  pada skema digital time stamping dikelompokkan kedalam 3 tipe dasar yaitu: skema sederhana (simple scheme), skema terangkai (linking scheme), dan skema terdistribusi (distributed scheme). Kemudian time stamping berdasarkan tekniknya dengan membagi kedalam 2 konsep yaitu konsep skema dengan menunggakan pihak ketiga terpercaya (trusted third party/TTP) dan berdasarkan konsep terdistribusi (distributed trust).
Timestamp dengan Arbitrated Solution
Time-Stamping authority (Trent) bertindak sebagai pihak yang dipercaya oleh pihak yang ingin memberikan time stamp pada sebuah dokumen. Pihak ini berperan dalam membuktikan keberadaan sebuah dokumen tanpa ada kemungkinan pihak pemilik dokumen dapat mengubah waktu penunjuk pada time stamp sehingga penerima dokumen dapat yakin dengan time stamp yang ada dalam dokumen tersebut.
Pemberian time stamp dengan menggunakan jasa Trent biasanya dinamakan dengan Trusted Digital Timestamping karena biasanya pihak Trent telah dipercaya oleh orang yang ingin memberikan time stamp pada dokumennya.
(1). Alice mengirimkan copy dokumen P (atau sebuah nilai hash dari dokumen) yang akan diberi time stamp kepada Trent
(2.) Trent mencatat tanggal dan waktu penerimaan kemudian Trent membubuhkan waktu t dan IDclient dan digabungkan dengan dokumen seperti sebagai berikut (IDclient, t, P).
(3). TSA mengembalikan dua nilai yaitu t dan      signature s = sigTSA(ID, t, P) ke client.
Setelah itu jika seseorang meminta pada Alice untuk mengklaim waktu pembuatan dokumen, maka ia akan menghubungi Trent. Trent akan membuat copy dokumen dan memverifikasi dokumen yang ia terima dengan waktu dan timestampnya.
Keterbatasan :
  1. Tidak ada privasi. Alice memberikan dokumennya kepada Trent. Jika ada seseorang yang mendengarkan pada saluran komunikasi maka ia bisa mengetahuinya. Oleh karena itu Alice harus mengenkripsinya meskipun dokumen tersebut nantinya tetap diletakkan di database Trent.
  2. Ukuran database terlalu besar sehingga kebutuhan bandwidth untuk mengirim dokumen ke Trent menjadi berat.
  3. Adanya potential error. Sebuah kesalahan transmisi atau terjadi electromagnetic bomb detonating pada sentral computer Trent dapat membuat klaim Alice tentang timestamp tidak berlaku.
  4. Kemungkinan adanya pihak yang tidak sejujur Trent untuk menjalankan timestamping service.
Timestamp dengan Improved Arbitrated Solution.
One way hash function dan digital signature dapat mengatasi masalah-masalah sebelumnya yakni dengan :
(1). Alice membuat hasil hash dari dokumennya.
(2). Alice mentransmisikan hasil hash pada Trent
(3). Trent menambahkan tanggal dan waktu ia menerima hash di atasnya dan kemudian menandatanganinya.
(4). Trent mengirim hash dengan timestamp yang telah ditandatangani ke Alice.
Keterbatasan :
Trent tidak lama menyimpan copy dari dokumen (atau hash), maka masalah keamanan dan kebutuhan storage yang besar bisa terjadi (perlu diingat bahwa fungsi hash tidak menggunakan kunci). Alice dapat dengan segera memeriksa signed timestamped hash yang ia terima pada step ke 4 sehingga ia bisa dengan segera mengetahui adanya error dalam transmisi.
Timestamp dengan Skema Terangkai (Linking Scheme)
Untuk menjamin bahwa Trent akan memberikan time stamp dengan tanggal dan waktu yang berbeda untuk setiap dokumen, Time-Stamping Service dapat menghubungkan semua nilai hash dari dokumen yang telah diajukan dalam sebuah rantai menggunakan sebuah hash function H. Dalam kasus ini, time stamp s untuk dokumen ke-n Hn akan menjadi:
Tn = SK(n,A,Hn,tn,In – 1,Hn – 1,Tn – 1,Ln)
dimana SK adalah digital signature dari Time-Stamping Service, tn adalah tanggal dari dokumen, dan Ln adalah link information:
Ln = H(In – 1,Hn – 1,Tn – 1,Ln – 1)
dimana tn-1 adalah tanggal dari dokumen sebelumnya Hn-1 adalah nilai hash dari dokumen sebelumnya,
(1)   Alice mengirim Trent Hn dan A
(2)   Trent mengirim balik ke Alice Tn
(3)   Setelah Trent men-stamp dokumen selanjutnya, ia mengirimi Alice identifier dokumen In + 1
Dengan cara ini, Time-Stamping Service menghubungkan time stamp sekarang dengan yang sebelumnya untuk mendapatkan sebuah rangkaian time stamp dengan urutan yang masih dalam batas. Untuk memecahkan masalah perselisihan yang mungkin timbul, Time-Stamping Service dapat mengenali jika sebuah dokumen yang telah diberi time stamp sebelum yang lainnya.
Akan tetapi, terdapat beberapa masalah dengan implementasi dari cara ini. Salah satunya mungkin menghabiskan waktu dalam memeriksa hubungan antara dua time stamp, ini secara langsung sebanding dengan jumlah dari time stamp yang terhubung dalam rantai. Masalah lain yang mungkin adalah pertanyaan mengenai ketahanan dari Time-Stamping Service, misalkan ada dua dokumen yang datang pada waktu t1 dan t2, Time-Stamping Service tidak boleh membuat time stamp untuk dokumen yang datang pada t2 sebelum membuat time stamp untuk dokumen yang datang pada t1.
Time Stamp dengan Distributed Trust
Diasumsikan bahwa terdapat sebuah skema tanda tangan yang aman sehingga setiap user dapat menandatangani pesan, dan tersedia sebuah standar pseudorandom generator G yang aman untuk semua user. Sebuah pseudorandom generator adalah sebuah algoritma yang menerima masukkan berupa nilai awalan (seed) yang pendek dan menghasilkan rangkaian nilai keluaran yang tidak dapat dibedakan oleh algoritma dari rangkaian yang acak, dengan kata lain, rangkaian keluaran tidak dapat diperkirakan.
(1). Dengan menggunakan Hn sebagai input, Alice menggenerate nilai random dari string menggunakan PRNG secara kriptografis:
V1, V2,…..Vk
(2) Alice menafsirkan setiap nilai identifier, I, pada orang lain. Alice mengirim nilai identifier Hn pada setiap orang tersebut.
(3). Setiap orang tersebut melampirkan tanggal dan waktu pada hash, menandatanganinya dan mengirim balik ke Alice.
(4) Alice menerima dan menyimpan semua signature dan timestamp.
Penggunaan Time Stamp
Time stamp telah banyak digunakan dalam dokumentasi suatu data yang memerlukan keabsahan dari waktu untuk menunjukkan bahwa data tersebut adalah sah. Keabsahan ini menjamin bahwa isi dari data tidak pernah diubah sejak diberi time stamp dan waktu yang terdapat pada time stamp menunjukkan waktu sesungguhnya.
Banyak data yang menggunakan time stamp dalam menjaga keamaannya. Salah satunya adalah dokumen mengenai suatu penelitan yang memerlukan pengakuan atas waktu dari penelitiannya. Hal ini untuk menjaga agar tidak ada peneliti lain yang mengaku melakukan penelitian yang sama dan waktunya lebih dulu dari dokumen penelitian yang sebenarnya. Salah satu aplikasi yang dapat digunakan dalam pemberian time stamp adalah Adobe Acrobat versi 7 dimana time stamp server harus dikonfigurasi terlebih dahulu sebelum menggunakannya.
Pada bidang lain, misalnya lembaga keuangan, laporan keuangan yang dikeluarkan setiap tahunnya harus dijamin bahwa waktu yang tertera pada laporan tersebut adalah yang sebenarnya. Selain itu, dapat diterapkan pula pada transaksi keuangan yang terdapat dalam lembaga keuangan dengan tujuan waktu dari transaksi menyatakan waktu sesungguhnya dan menjamin tidak terjadi manipulasi.
Penggunaan time stamp yang lain adalah IP telephony. Sebagai contoh, Real-time Transport Protocol (RTP) memberikan rangkaian (sequential) time stamp pada paket-paket suara sehingga mereka dapat ditampung dalam sebuah buffer oleh penerima, dirakit ulang, dan terkirim tanpa adanya kesalahan karena waktu dari setiap paket suara yang dikirimkan tidak mungkin berubah selama pengiriman.
Dalam melakukan transaksi keuangan yang berbasis e-commerce, time stamp dapat pula digunakan dengan tujuan untuk menghindari adanya pesanan palsu atau tidak sah. Tujuan lain adalah untuk menghindari terjadinya perselisihan antara customer dengan perusahaan e-commerce itu sendiri.
Masih terdapat penggunaan time stamp lainnya, yang sangat berguna untuk menghindari kesalahpahaman antara dua atau beberapa pihak mengenai keabsahan suatu dokumen. Suatu dokumen digital diberi time stamp agar suatu dokumen diakui keabsahannya baik waktu maupun isi dari dokumennya.
Masalah yang muncul dalam Time Stamp
Semua tahapan implementasi dari Digital Time-Stamping perlu mendapat perhatian, dari pembuatan nilai hash dari dokumen sampai pada penerimaan time stamp oleh customer. Diantara tahapan-tahapan ini, terdapat banyak kemungkinan yang dapat mengakibatkan persoalan atau kesalahan. Beberapa kemungkinan tersebut dijelaskan sebagai berikut:
1. Spoofing: merupakan sebuah serangan yang terjadi ketika sebuah host memalsukan diri menjadi yang lain dengan tujuan untuk menangkap pesan yang diperuntukan untuk mesin yang asli. Pada Digital Time-Stamping, serangan ini dapat terjadi dimana sebuah mesin berpura-pura menjadi entitas Time-Stamping dan menghasilkan time stamp yang salah. Permasalahan ini dapat diselesaikan dengan memperkenalkan sebuah sistem yang dapat mendeteksi serangan tersebut, biasanya dinamakan Intruders Detection System (IDS).
2. Denial of Service: adalah sebuah kemampuan satu atau beberapa host untuk mengirimkan beberapa nilai hash ke sistem yang terbuka dari korban, dalam kasus ini, entitas Time-Stamping. Dengan cara ini, penyerang (attacker) memenuhi koneksi dari Time-Stamping Service untuk memaksanya menolak permintaan time stamp yang baru. Penyelesaian akan masalah ini sama dengan Spoofing.
3. Cheat the stamp’s chain: seseorang yang mempunyai akses terhadap entitas Time-Stamping dan mengetahui bagaimana linking dari time stamp, dapat membuat sebuah cabang rantai yang salah dari rantai tersebut untuk mendapatkan hasil yang salah. Hal ini dapat diselesaikan dengan menjalankan pencarian secara periodik di dalam rantai atau tree untuk memeriksa jika terdapat cabang yang salah.
4. Compromised function F: ketika hal ini terjadi, entitas Time-Stamping sebaiknya melakukan prosedur perbaikan, jika tidak dilakukan maka tidak terdapat kepercayaan time stamp yang dibuat oleh entitas tersebut. Tapi entitas Time-Stamping tidak membutuhkan semua dokumen untuk melakukan proses linking lagi. Salah satu solusinya adalah memakai dua tipe function F, sebagai contoh, nilai hash dihasilkan dengan MD5 dan juga dengan SHA-1, sehingga membuatnya semakin susah bagi penyerang untuk memalsukan sebuah time stamp. Solusi yang lain adalah secara periodik menandatangani kembali semua node-node dari rantai dengan metode tanda tangan yang lebih baru.
Source : Applied Cryptography, Bruce Schneier