Aspek keamanan data sebenarya meliputi banyak hal yang saling berkaitan, tetapi khusus dalam tulisan ini min Ribrick akan membahas tentang metoda enkripsi dan keamanan proteksi data pada beberapa program-program aplikasi umum. Hampir semua program aplikasi seperti MS Word, WordPerfect, Excel, PKZip menyediakan fasilitas proteksi data dengan pem-password-an, tapi sebenarnya fasilitas ini mudah untuk dibongkar. Bahkan program khusus proteksi data seperti Norton Diskreet (mungkin sekarang sudah jarang digunakan) yang memproteksi data dengan metoda DES ataupun metoda “proprietary” yang lebih cepat, sebenarnya sangat tidak aman. Metoda DES yang digunakan mempunyai kesalahan dalam implementasinya yang sangat mengurangi keefektipan dari metoda tersebut. Walaupun dapat menerima password sampai 40 karakter, karakter ini kemudian diubah menjadi huruf besar semua dan kemudian di-reduce menjadi 8 karakter. Hal ini menyebabkan pengurangan yang sangat besar terhadap kemungkinan jumlah kunci enkripsi, sehingga tidak hanya terbatasnya jumlah password yang mungkin, tetapi juga ada sejumlah besar kunci yang equivalen yang dapat digunakan untuk mendekrip file. Sebagai contoh file yang dienkrip dengan kunci ‘xxxxxxx’ dapat didekrip dengan ‘xxxxxx’, ‘xxxxyy’, ‘yyyyxx’. PC Tools (mungkin ini juga sudah sulit ditemukan) adalah contoh lain paket software yang menyediakan fasilitas proteksi data yang sangat tidak aman. Implementasi DES pada program ini mengurangi ‘round’ pada DES yang seharusnya 16 menjadi 2, yang membuatnya sangat mudah untuk dibongkar.
Beberapa program akan secara otomatis membongkar proteksi program aplikasi seperti MS Word, Excel, Word Perfect, PKZip 2.x, Quattro Pro, dll dengan sangat mudah, bahkan ada program yang menambahkan ‘delay loop’ sehingga seolah-olah program tersebut sedang bekerja keras membongkar password. Salah satu perusahaan tersebut adalah Access Data ( http://www.accessdata.com), mereka membuat software yang dapat membongkar WordPerfect (versi 4.2–6.1, enkripsi ‘regular’ atau ‘enhanced’, Microsoft Word (versi 2.0–6.1), Microsoft Excel (semua versi termasuk versi Macintosh), Lotus 1–2–3 (semua versi), Quattro Pro, Paradox, Pkzip, Norton’s Diskreet (baik metoda DES maupun ‘proprietary’), Novell NetWare (versions 3.x-4.x), dll. Access Data menyediakan program demo yang dapat memecahkan password sampai 10 karakter. Untuk mendapatkannya coba ftp site-nya di ftp.accessdata.com pada directory /pub/demo. min Ribrick sendiri telah mencoba program demo pembongkar passwordnya (untuk WordPerfect) yang jalan pada Windows 95, tetapi sayang hanya dapat menampilkan jumlah karakter yang digunakan pada password kita. min Ribrick juga telah melihat ada program lokal berbasis DOS yang dapat membongkar password Word 6.0/7.0. Alasan utama kurang baiknya proteksi dari program-program diatas adalah mungkin untuk mendapatkan izin ekspor dari pemerintah Amerika Serikat dengan mudah, karena di sana untuk mengekspor program enkripsi yang kuat memerlukan izin yang ketat dari pemerintah. Dan mengekspor program enkripsi sama dengan mengekspor amunisi sehingga sangat dibatasi bahkan dikenai hukuman bagi yang melanggarnya. Contoh klasik adalah apa yang menimpa Philip Zimmermann yang diadili karena program PGP yang ia buat dan menyebar ke seluruh dunia.
Untuk proteksi data yang cukup penting tidak ada jalan lain selain menggunakan program khusus proteksi/enkripsi data. Saat ini telah banyak beredar program khusus proteksi data baik freeware, shareware, maupun komersial yang sangat baik. Pada umumnya program tersebut tidak hanya menyediakan satu metoda saja, tetapi beberapa jenis sehingga kita dapat memilih yang menurut kita paling aman. Contoh program tesebut yang min Ribrick ketahui seperti :
- BFA 97 (Blowfish Advanced 97) yang menyediakan metoda ekripsi : Blowfish, Idea, Triple DES, GOST, Cobra128, PC-1 (RC4 compatible), dan Twofish. Program demo dari paket ini menyediakan pem-password-an hanya sampai 5 huruf. Selain itu paket ini menyediakan fasilitas ‘disk key’ yaitu kunci pada disket, sehingga kita tidak perlu mengingat-ingat password. Tetapi dengan cara ‘disk key’ ini ada masalah yaitu bila disketnya rusak atau hilang maka kita akan kehilangan semua data kita
- Kremlin yang menyediakan proteksi data Blowfish, Idea, DES/Triple DES, dll.
- F-Secure yang menyedikan metoda proteksi Blowfish, RSA, DES/Triple DES dan RC4. Produk ini dirancang untuk sistem jaringan.
- Cryptext merupakan freeware, extension Windows 95/NT shell yang yang menggunakan RC4 untuk mengenkripsi file yang menggunakan kunci 160 bit yang dihasilkan dari digest SHA terhadap password yang kita masukkan.
- PGP, merupakan program enkripsi sistem kunci publik (asimetrik) dan biasanya digunakan untuk untuk enkripsi e-mail, tetapi dapat juga digunakan untuk enkripsi konvensional (simetrik). PGP menggunakan RSA sebagai sistem kunci publik dan Idea sebagai metoda enkripsi simetrik dan MD5 untuk message digest. PGP merupakan freeware tersedia untuk DOS (versi 2.6.x, tersedia beserta source programnya) dan Windows 95/NT (versi 5.x).
- Pegwit, seperti PGP merupakan program ekripsi sistem kunci publik, walaupun masih sangat sederhana (versi 8.71). Pegwit menggunakan Elliptic Curve untuk sistem kunci public dan Square untuk enkripsi simetrik dan SHA-1 untuk message digest. Pegwit tersedia untuk DOS (16 dan 32 bit) dan menyertakan juga source programnya.
- Selain itu juga terdapat program untuk enkripsi ‘on the fly’/’real time’ yang dapat mengenkripsi harddisk, partisi, atau suatu direktori tertentu secara transparan. Dengan cara ini kita tidak perlu memilih satu persatu file yang akan kita enkrip, tetapi program yang akan melaksanakannya. Salah satu contoh jenis ini adalah Norton Your Eyes Only, yang menggunakan metoda enkripsi Blowfish. Contoh lain adalah ScramDisk (versi 2.02) yang dapat digunakan untuk Windows 95/98, program ini merupakan program bebas dan tersedia beserta source programnya (http://www.hertreg.ac.uk/ss/). Scramdisk menyediakan beberapa metoda enkripsi seperti Blowfish, Tea, Idea, DES, SquareWindows NT bahkan sudah menyediakan fasilitas mengenkrip , Misty dan Triple DES 168 bit. Microsoft 5.0 yang akan datang direktori dengan menggunakan metoda DES.
Lalu bagaimana dengan program enkripsi produk lokal? Sampai saat ini min Ribrick memperhatikan telah banyak program proteksi data yang telah diterbitkan pada majalah Mikrodata ataupun Antivirus, tetapi jarang sekali yang cukup baik sehingga dapat dipercaya untuk melindungi data yang cukup penting. Sebagai contoh min Ribrick akan membahas program Multilevel Random Encryption versi 1.4 (pada Antivirus no. 5) yang menurut min Ribricknya menggunakan proteksi ganda dengan triple covery (?) dengan langkah-langkah overdosis (?), mempunyai kelebihan dan sekuritas tinggi (?), kunci covery dapat diganti sesuka anda, sehingga pembuat MRE sendiri tidak dapat memecahkanya (?). Lalu coba kita analisa bersama-sama, program ini mempunyai satu kunci yang di-hard coded di tubuh program kemudian satu kunci lagi yang dipilih secara random dari random generator standar, yang fatalnya kunci ini juga disimpan didalam hasil enkripsi. Plaintext dioperasikan (XOR) dengan kedua kunci ini dan data dibolak balik dalam 6 byte blok menghasilkan ciphertext. Dengan mengengkrip data dengan kunci yang sama saja sudah jelas akan dihasilkan data yang sama, contohnya karakter ASCII 52 akan menjadi karakter ASCII 235, maka dibagian manapun pada data karakter ASCII 52 akan tetap menjadi karakter ASCII 235, ini merupakan suatu cara untuk membongkar file hasil enkripsi. Kesalahan fatal lain adalah menyertakan password pada data hasil enkripsi sehingga dengan mudah dapat dicari passwordnya. Sehingga dengan logika sangat sederhana saja sudah dapat membongkar program ini. min Ribrick juga telah membuat program yang sangat sederhana untuk mencari password dari data yang telah diproteksi dengan program ini, seperti dapat dilihat pada listing (MREBR.PAS) dalam mrebr.zip.
Terlepas dari aman atau tidak, min Ribrick sangat menghargai kreatifitas programmer-programmer di negara kita, sehingga min Ribrick selalu tertarik jika ada artikel tentang program proteksi data di majalah ini, meskipun (sekali lagi) sangat jarang metoda-metoda tersebut dapat memberikan proteksi yang baik terhadap data kita. Meskipun hanya sebagai kegiatan sampingan, saat ini min Ribrick telah mengumpulkan beberapa metoda enkripsi yang sudah diakui keampuhannya (kebanyakan sumbernya dalam bahasa C) dan mem ‘port’ nya ke dalam bahasa Pascal/Delphi dan bila redaksi Antivirus berkenan maka min Ribrick akan membahasnya pada beberapa tulisan yang akan datang. Alasan min Ribrick mem-port ke Delphi karena kebanyakan rutin-rutin tersebut ditulis dengan bahasa C dan sedikit sekali dari rutin-rutin yang tersedia bagi programmer Delphi. Walaupun paling tidak ada satu site (TSM Inc, http://crypto-central.com/index.html) yang menyediakan komponen cryptography (Blowfish, DES, RC6, Twofish, RSA, Eliptic Curve, SHA) untuk Delphi/C++ Builder, tetapi komponen tersebut tidak disertai source dan bila ingin disertai source harus membelinya dengan harga kurang lebih US $100 per komponen. Metoda-metoda yang telah berhasil di-port diantaranya yang klasik seperti DES dan modifikasinya Triple DES, metoda-metoda yang lebih modern seperti GOST (Russian DES), Blowfish, RC2, RC4, RC5, Idea, Safer, MDS-SHS, Square. Juga min Ribrick masih dalam proses mem-port metoda mutakhir yang ikut kontes AES (Advances Encryption Standard) yang akan digunakan sebagai standar pada dekade mendatang, seperti Twofish, RC6, Safer+ dan Mars. (Sebagai informasi sampai tanggal 20 Agustus 1998 ada 15 kandidat, yaitu : Cast-256, Crypton, Deal, DFC, E2, Frog, HPC, Loki97, Magenta, Mars, RC6, Rijndael, Safer+, Serpent dan Twofish). Selain itu ada metoda ‘secure hash’ seperti MD5 dan SHA, ‘secure pseudo random number generator’ seperti pada PGP (ANSI X9.17), peggunaan SHA-1 untuk random number generator dan George Marsaglia’s the mother of all random number generators . Juga mungkin suatu saat metoda public key cryptosystem, tetapi min Ribrick tidak terlalu yakin akan hal ini sebab metoda ini cukup rumit dan memerlukan kode program yang cukup panjang, karena melibatkan perhitungan dengan bilangan integer yang sangat besar. Meskipun demikian paling tidak min Ribrick telah mem-port salah satu metoda publik key ini yaitu Elliptic Curve (Elliptic Curve Crypto version 2.1 dari Mike Rosing), meskipun belum sempat di-debug dan dites, karena kemudian min Ribrick menemukan sistem yang lebih lengkap yaitu pada Pegwit 8.71 oleh George Barwood.