Bimacipta

Membongkar Enkripsi Visi Diary

Membongkar Enkripsi Visi Diary 3.0

Oleh: Budi Sukmawan


Program Visi Diary adalah gabungan program Diary (buku harian), buku telepon, dan agenda (scheduler) dan dimuat dalam CHIP-CD no 6-99 sebagai sebuah program shareware. Pada majalah CHIP no 9-99 program ini telah dikomplain oleh seorang pembaca karena menggunakan gambar-gambar Sailor Moon dan teman-temanya yang merupakan hak cipta dari Naoko Takeuchi. Pada CHIP no 10-99 pembuat program Visi Diary telah mengakui kesalahnya dan sekaligus menyinggung soal enkripsi yang digunakan pada program Visi Diary juga menyinggung soal program enkripsi Mixer2 yang hanya menggunakan teknik xor. Potongan tulisannya adalah seperti ini

"Pengamanan data Visi Diary jauh lebih aman dan secure daripada Mixer2. jadi, untuk menyimpan data-data pribadi, Visi Diary dapat dikatakan "aman" dari orang-orang yang tidak berhak".

Kemudian saya mengunjungi Web site dari Visi Diary melihat ada beberapa versi yang lebih baru yaitu 3.1 dan 3.2 tetapi hanya versi 3.0 yang dapat di-download dan pembuatnya mempromosikan sebagai berikut:

"Visi Diary is a program to protect your valuable personal diary. You'll be the only one person who can read what you ever write in past. Data that you type will be saved in your disk after it was encrypted. We guarantee that our encrypt algorhythm is very safe and secure. You can trust Visi Diary to take care of your biggest secrets in your life."

Dengan klaim-klaim pembuat Visi Diary tersebut saya jadi ingin mengetahui seberapa kuat sebenarnya enkripsi program tersebut. Saya mulai menyiapkan program SoftICE 4.01, software debuging yang saya install beberapa hari yang lalu dan saya bermaksud mempelajarinya dan sekaligus mempraktekkannya dengan menggunakan Visi Diary sebagai bahan latihan. Kemudian saya mulai meneliti program tersebut dan menjalankannya, untuk me-load program ini butuh waktu beberapa detik (saya pikir komputer saya hang) karena me-load gambar yang cukup besar. Kemudian saya mulai mencoba-coba program tersebut mula-mula Phone book kemudian Scheduler lalu Diary tapi kemudian program error karena tampaknya program tidak bisa meng-handle tanggal untuk regional setting Indonesia (suatu hal yang ironis mengigat program ini buatan orang Indonesia), terpaksa saya men-set regional setting ke English (US) dan me-reboot komputer. Kali ini saya dapat masuk menu Diary dan saya mulai mencoba mengisi diary dan melihat file data yang dihasilkannya yang ada di direktori "C:\My Document\Visi Diary\". Saya mulai melihat keanehan disini karena tampaknya data yang dihasilkan tidak random, karena dapat dipastikan metoda enkripsi yang baik akan menghasilkan ciphertext yang serupa urutan bilangan random. Setelah saya meneliti beberapa menit saya mulai ragu akan kekuatan enkripsi program ini. Setelah beberapa menit lagi saya mulai mengerti metoda apa yang digunakan program ini, ternyata program ini menggunakan modifikasi/variasi metoda enkripsi Caesar Cipher yang digunakan oleh Julius Caesar (100 B.C. - 44 B.C.) lebih dari 2000 tahun yang lalu untuk mengirim pesan secara rahasia pada para jenderalnya di medan perang. Kemudian saya mengambil buku Applied Cryptography dari Bruce Schneier dan dihalaman 11 di definisikan Caesar Cipher sebagai berikut:

"the famous Caesar Cipher, in which each plaintext character is replaced by the character three to the right modulo 26 ("A" is replaced by "D", "B" is replaced by "E"..., "W" is replaced by "Z", "X" is repalced by "A", "Y" is replaced by "B", and "Z" is replaced by "C") is a simple substitusion cipher. It's actualy even simpler, because the ciphertext alphabet is a rotation of the plaintext alphabet and not an arbitrary permuatation".

Enkripsi Visi Diary menggunakan jumlah karakater yang lebih banyak dan pergeseran ditambah dengan posisi karakter jadi misalnya kata "ABC", maka A akan menjadi D (digeser 3), B akan menjadi F (digeser 4), C akan menjadi H (digeser 5). Untuk mendekrip program ini sangat mudah yang diperlukan hanyalah selembar kertas dan pensil maka dengan mudah kita akan mendekrip data Diary yang disimpan dalam file dengan nama "tanggal.vd3", misalnya "19991114.vd3". Adapun urutan karakter yang digunakan dalam metoda enkripsi ini adalah sebagai berikut:

'abcdefghijklmnopqrstuvwxyz'+chr(10)+'0123456789ABCDEFGHIJKLMNOPQRSTUPWXYZ !"#$%&'()*+,-./:;[email protected][\]^_`\{|}'+chr(13)

Bila kita mem-password diary maka password-nya disimpan diregistry pada key "HKEY_LOCAL_MACHINE\Software\Visi Software Inc.\Visi Diary\User", padaValue Name: info2. Password ini dienkrip dengan cara yang sama dengan cara mengenkrip data, maka bila kita berhasil mendekrip password ini kita akan dapat dengan mudah masuk ke Diary dan membaca isinya. Namun cara yang paling mudah adalah dengan menghapus value string info2 dan kita dapat masuk Diary tanpa password, tapi tentunya dengan cara ini akan mencurigakan bagi yang empunya diary. Di bagian key ini juga ada juga Value Name info1, info4, dan info5 yang berisi urutan karakter yang mencurigakan, apakah ketiga value name ini menentukan urutan karakter di atas?, saya tidak tahu tapi kalaupun urutan di atas berbeda tidak sulit mencari urutan karakter yang digunakan, tinggal mencoba memasukkan satu karakter pada Diary kemudian memperhatikan data yang dihasilkan pada file "*.vd3". Pada komputer saya stringValue Name info1, info4 dan info5 adalah sebagai berikut "28DI07313HJKLUQU", "USQOMKIGECd", dan "&(*,.:<>@\SS".

Kesimpulannya: Visi Diary memang tidak mengunakan operasi xor untuk mengenkrip data tetapi menggunakan metoda enkripsi yang telah berusia lebih dari 2000 tahun dan terbukti tingkat keamanannya sama sekali tidak ada, dan tampaknya pembuat program ini sekali lagi telah melakukan kesalahan pada program yang dibuatnya. Dan untuk kali ini saya gagal untuk menggunakan SoftICE karena dengan selembar kertas dan pensil, metoda enkripsi program ini sudah dapat dibongkar.


© 20 November 1999 - Budi Sukmawan


 

kodowanie html5 css, projektowanie stron internetowych , PSD2HTML, PSD HTML, proste strony www, cięcie PSD, tworzenie stron www, webdesign,