Kamis, 30 Mei 2013


BAB 1
PENDAHULUAN

1.1 Latar Belakang
Internet merupakan tempat yang paling tidak aman , banyak sekali kejahatan yang terjadi didunia maya. Kejahatan yang internet mulai dari melihat data suatu perusahaan yang sangat rahasia sampai merubah data tersebuh atau bahkan menghapus. Bila kita bicara metode pengamanan yang benar-benar ampuh (secure) maka kita akan kesulitan menemukannya atau bahkan tidak ada. Namun sebagai seorang administrator, kita dapat meminimalisir (memperkecil) terjadinya kejahatan tadi.

Firewall adalah “senjata” yang paling ampuh untuk mengamankan data-data (informasi) yang berada diserver kita. Banyak sekali kejadian-kejadian dimana hacker dapat menjebol firewall suatu perusahaan. Dan pada akhirnya melihat data-data kita. Karena si-hacker hanya melihat data kita maka hal ini akan sulit dideteksi, hal ini sering disebut dengan “passive attack”. Maka antisipasi yang paling tepat adalah dengan cara membuat data-data tersebut menjadi tidak berguna untuk orang lain dengan kata lain data-data tersebut harus di-encript dengan suatu metode kriptografy. Penulis mencoba membahas salah satu metode fungsi hash yaitu MD5 (Message-Digest algortihm 5) untuk mengamankan database suatu aplikasi web.

1.2 Tujuan Penelitian
Adapula tujuan dari penelitian mengenai fungsi hash MD5 adalah sebagai berikut:
1.      Agar dapat merancang pengamanan database dengan baik pada aplikasi web.
2.      Memahami lebih dalam mengenai metode kriptografy.

1.3 Metodologi Penelitian
Penelitian dilakukan dengan mempelajari berbagai toturial dalam bentuk buku teks maupun dokumen – dokumen yang didapat dati internet. Penelitian ini diawali dengan mempelajari teori-teori mengenai kriptografy.





BAB 2
LANDASAN TEORI

Sejarah kriptografi
Dalam The CodeBreaker yang ditulis oleh Kahn, terlihat bahwa kriptografi mempunyai sejarah yang panjang. Kriptografi sudah digunakan oleh bangsa Mesir Kuno sekitar 4000 tahun sampai abad 20 dimana kriptografi berperanan penting di dalam perang dunia pertama dan kedua. Juga diungkap bahwa latar belakang sejarah yang panjang itu sangat menentukan perkembangan ilmu kriptografi itu sendiri baik dari segi teoretik maupun aplikasinya.

Awalnya kriptografi sangat dominan digunakan dalam bidang-bidang yang berhubungan dengan militer, layanan diplomatik, dan pemerintahan secara umum. Dalam hal ini kriptografi digunakan sebagai suatu alat untuk melindungi strategi dan rahasia negara. Perkembangan sistem komunikasi dan komputer pada tahun 1960 an membawa kriptografi memasuki sektor swasta sebagai alat untuk melindungi informasi dalam bentuk dijitel dan untuk memberikan layanan keamanan.

Hasil kerja Feistel di IBM pada awal tahun 1970 an dan puncaknya ada tahun 1977, DES (Data Ecryption Standart) merupakan karya kriptografi yang paling terkenal di dalam sejarah. Karya ini menjadi alat keamanan komersial elektronik di banyak institusi keuangan di seluruh dunia hingga pertengahan tahun 1990-an. DES secara definitif terbukti tak-aman sejak Juli 1998. Walaupun demikian DES telah melandasi prinsip-prinsip sandi simetrik modern yang dewasa ini muncul produk-produk penggantinya seperti: AES (Advanced Ecryption Standart), Blowfish, 3DES, RC5, dan lain sebagainya.

Yang cukup signifikan selanjutnya adalah pada tahun 1976 ketika Diffie dan Hellman mempublikasikan suatu artikel dengan judul New Directions in Cryptography. Artikel ini memperkenalkan konsep revolusioner tentang kriptograpy kunci-publik (public-key cryptography) dan juga memberikan suatu metode baru untuk perubahan kunci dimana keamanan didasarkan pada pemecahan problem logaritme diskret. Walaupun penulis pada saat itu mengungkapkan hanya segi teoretiknya tanpa bentuk praktisnya, namun karya ini telah memberikan cakrawala baru bagi para ilmuwan kriptografi. Ini terbukti pada tahun 1978, Rivest, Shamir, dan Adleman menemukan bentuk praktis yang pertama untuk skema enkripsi dan penandaan kunci publik yang sekarang dikenal dengan skema RSA. Skema ini didasarkan pada problem matematika yang sulit lainnya, yaitu pemecahan masalah faktorisasi intejer besar. Bentuk praktis skema kunci-publik lainya ditemukan oleh ElGamal pada tahun 1985. Sebagaimana karya Di¢ e dan Hellman, skema ini juga didasarkan pada pemecahan problem logaritme diskret.

Sumbangan yang paling signifikan yang diberikan olen kriptografi kunci-publik adalah penandaan dijitel (digital signature). Pada tahun1991 standar internasional pertama untuk penandaan dijitel diadopsi dari ISO/IEC 9796. Standar internasional penandaan dijitel ini didasarkan ada skema kunci-publik RSA. Pada tahun 1994 pemerintah Amerika Serikat mengadopsi standar penandaan dijitel yang mekanismenya didasarkan pada skema kunci-publik ElGamal.

Keamanan informasi dan kriptografi
Informasi dalam kriptografi harus dipahami sebagai kuantitas bukan kualitas. Kriptografi sendiri dipahami sebagai hal-hal yang terkait dengan keamanan informasi. Keamanan informasi menjelma di dalam banyak cara sesuai dengan situasi dan kebutuhan. Tanpa memandang siapa yang terlibat di dalam suatu transakasi informasi, mereka haruslah mempunyai tujuan yang sama tentang keamanan informasi. Beberapa tujuan keamanan informasi diantaranya adalah sebagai berikut:
·        Kerahasiaan (privacy/confidentiality), maksudnya menjaga rahasia informasi dari siapapun kecuali yang berwenang untuk mengetahuinya.
·        Integritas data (data integrity), maksudnya menjamin bahwa informasi tidak diganti oleh siapapun yang tidak berwenang.
·        Identifikasi atau autentikasi entitas (entity authentication or identification), maksudnya pembuktian yang kuat tentang identitas suatu entitas. Entitas adalah unsur-unsur yang menjadi komponen dalam suatu transaksi informasi, ini bisa berupa orang, terminal komputer, artu kredit, dll.
·        Autentikasi pesan (message authentication), maksudnya pembuktian yang kuat bahwa pesan benar-benar berasal dari sumber informasi. istilah lainnya adalah autentikasi asal data.
·        Penandaan (signature), maksudnya suatu alat yang digunakan untuk memberikan ciri tertentu pada informasi yang ditujukan ke suatu entitas.
·        Kewenangan (authorization), maksudnya kesepakatan resmi yang diberikan kepada entitas lain untuk melakukan sesuatu atau menjadi sesuatu.
·        Validasi (validation), maksudnya suatu alat yang digunakan memberi tanda masa berlakunya kewenangan di dalam pemakaian atau manipulasi informasi.
·        Sertifikasi (certification), maksudnya penguasaan informasi oleh suatu entitas yang dipercaya.
·        Non-repudiasi (non-repudiation), maksudnya pencegahan dari pelanggaran kesepakatan-kesepakatan yang telah dibuat sebelumnya.
·        Tanda terima (receipt), maksudnya suatu bukti bahwa informasi telah diterima.
·        Konfirmasi (confirmation), maksudnya suatu bukti bahwa informasi telah diberikan.
Tujuan dapat dicapai tidak semata-mata bergantung kepada algoritme matematik dan mekanismenya, tetapi juga pada faktor-faktor lainya seperti prosedur penyampaian yang digunakan atau perlindungan hukum. Misalnya, surat rahasia dikemas dalam amplop bersegel dikirimkan melalui kantor pos resmi. Keamanan surat itu secara fisik berada di dalam amplop bersegel, dikirimkan melalui kantor pos resmi akan mendapatkan perlindungan hukum bahwa barang siapa yang membuka amplop bersegel akan mendapatkan sanksi hukum. Kadangkala keamanan informasi juga dapat dicapai dari unsur fisik yang melekat pada dokumen informasi. Misalnya, pencetakan uang kertas menggunakan tinta khusus akan mencegah dari pemalsuan.

Cara informasi dicatat atau disimpan belum berubah secara drastik dari waktu ke waktu. Hal ini dapat dilihat bahwa media enyimpanan biasanya berupa kertas atau media magnetik dan pengirimanya melalui sistem telekomunikasi baik yang dengan kabel atau tanpa kabel. Yang berubah secara drastik justru kemampuan untuk menyalin, mengubah dan memanipulasi informasi. Dalam hitungan menit kita dapat membuat ratusan salinan informasi yang disimpan dalam media magnetik, bahkan mungkin kita dapat mengubah atau mengganti informasi itu dalam hitungan detik. Kenyataan ini menunjukkan bahwa keamanan informasi yang optimal akan sulit dicapai jika semata-mata hanya bertumpu kepada keamanan fisik. Untuk itu keamanan informasi perlu ditunjang dengan teknik-teknik keamanan yang bersifat non-fisik yang nantinya kita kenal dengan teknik keamanan kriptografi.




BAB 3
PEMBAHASAN

3.1   Pengertian Fungsi Hash
Hash adalah suatu teknik "klasik" dalam Ilmu Komputer yang banyak digunakan dalam praktek
secara mendalam. Hash merupakan suatu metode yang secara langsung mengakses record-record dalam suatu tabel dengan melakukan transformasi aritmatik pada key yang menjadi alamat dalam tabel tersebut. Key merupakan suatu input dari pemakai di mana pada umumnya berupa nilai atau string karakter.
Pelacakan dengan menggunakan Hash terdiri dari dua langkah utama, yaitu:
·        Menghitung Fungsi Hash. Fungsi Hash adalah suatu fungsi yang mengubah key menjadi alamat dalam tabel. Fungsi Hash memetakan sebuah key ke suatu alamat dalam tabel. Idealnya, key-key yang berbeda seharusnya dipetakan ke alamat-alamat yang berbeda juga. Pada kenyataannya, tidak ada fungsi Hash yang sempurna. Kemungkinan besar yang terjadi adalah dua atau lebih key yang berbeda dipetakan ke alamat yang sama dalam tabel. Peristiwa ini disebut dengan collision (tabrakan). Karena itulah diperlukan langkah berikutnya, yaitu collision resolution (pemecahan tabrakan).
·        Collision Resolution. Collision resolution merupakan proses untuk menangani kejadian dua atau lebih key di-hash ke alamat yang sama. Cara yang dilakukan jika terjadi collision adalah mencari lokasi yang kosong dalam tabel Hash secara terurut. Cara lainnya adalah dengan menggunakan fungsi Hash yang lain untuk mencari lokasi kosong tersebut.

3.2   Sejarah MD5
MD5 adalah salah satu dari serangkaian algortima(merupakan salah satu fungsi Hash) message digest yang didesain oleh Profesor Ronald Rivest dari MIT (Rivest, 1994). Saat kerja analitik menunjukkan bahwa pendahulu MD5, yaitu MD4 mulai tidak aman, MD5 kemudian didesain pada tahun 1991 sebagai pengganti dari MD4 (kelemahan MD4 ditemukan oleh Hans Dobbertin).

Pada tahun 1993, den Boer dan Bosselaers memberikan awal, bahkan terbatas, hasil dari penemuan pseudo-collision dari fungsi kompresi MD5. Dua vektor inisialisasi berbeda I dan J dengan beda 4-bit diantara keduanya.
                        MD5compress(I,X) = MD5compress(J,X)
Pada tahun 1996 Dobbertin mengumumkan sebuah kerusakan pada fungsi kompresi MD5. Dikarenakan hal ini bukanlah serangan terhadap fungsi hash MD5 sepenuhnya, hal ini menyebabkan para pengguna kriptografi menganjurkan pengganti seperti WHIRLPOOL, SHA-1 atau RIPEMD-160.

Ukuran dari hash — 128-bit — cukup kecil untuk terjadinya serangan brute force.. MD5CRK adalah proyek distribusi mulai Maret 2004 dengan tujuan untuk menunjukkan kelemahan dari MD5 dengan menemukan kerusakan kompresi menggunakan brute force attack. Bagaimanapun juga, MD5CRK berhenti pada tanggal 17 Agustus 2004, saat [[kerusakan hash]] pada MD5 diumumkan oleh Xiaoyun Wang, Dengguo Feng, Xuejia Lai dan Hongbo Yu. Serangan analitik mereka dikabarkan hanya memerlukan satu jam dengan menggunakan IBM P690 cluster.

Pada tanggal 1 Maret 2005, Arjen Lenstra, Xiaoyun Wang, and Benne de Weger mendemontrasikan kunstruksi dari dua buah sertifikat X.509 dengan public key yang berbeda dan hash MD5 yang sama, hasil dari demontrasi menunjukkan adanya kerusakan. Konstruksi tersebut melibatkan private key untuk kedua public key tersebut. Dan beberapa hari setelahnya, Vlastimil Klima menjabarkan dan mengembangkan algortima, mampu membuat kerusakan Md5 dalam beberapa jam dengan menggunakan sebuah komputer notebook. Hal ini menyebabkan MD5 tidak bebas dari kerusakan.

Dikarenakan MD5 hanya menggunakan satu langkah pada data, jika dua buah awalan dengan hash yang sama dapat dibangun, sebuah akhiran yang umum dapat ditambahkan pada keduanya untuk membuat kerusakan lebih masuk akal. Dan dikarenakan teknik penemuan kerusakan mengijinkan pendahuluan kondisi hash menjadi arbitari tertentu, sebuah kerusakan dapat ditemukan dengan awalan apapun. Proses tersebut memerlukan pembangkitan dua buah file perusak sebagai file template, dengan menggunakan blok 128-byte dari tatanan data pada 64-byte batasan, file-file tersebut dapat mengubah dengan bebas dengan menggunakan algoritma penemuan kerusakan.

Saat ini dapat diketahui, dengan beberapa jam kerja, bagaimana proses pembangkitan kerusakan MD5. Yaitu dengan membangkitkan dua byte string dengan hash yang sama. Dikarenakan terdapat bilangan yang terbatas pada keluaran MD5 (2128), tetapi terdapat bilangan yang tak terbatas sebagai masukannya, hal ini harus dipahami sebelum kerusakan dapat ditimbulkan, tapi hal ini telah diyakini benar bahwa menemukannya adalah hal yang sulit.
Sebagai hasilnya bahwa hash MD5 dari informasi tertentu tidak dapat lagi mengenalinya secara berbeda. Jika ditunjukkan informasi dari sebuah public key, hash MD5 tidak mengenalinya secara berbeda jika terdapat public key selanjutnya yang mempunyai hash MD5 yang sama.

Bagaimanapun juga, penyerangan tersebut memerlukan kemampuan untuk memilih kedua pesan kerusakan. Kedua pesan tersebut tidak dengan mudah untuk memberikan serangan preimage, menemukan pesan dengan hash MD5 yang sudah ditentukan, ataupun serangan preimage kedua, menemukan pesan dengan hash MD5 yang sama sebagai pesan yang diinginkan.

Hash MD5 lama, yang dibuat sebelum serangan-serangan tersebut diungkap, masih dinilai aman untuk saat ini. Khususnya pada digital signature lama masih dianggap layak pakai. Seorang user boleh saja tidak ingin membangkitkan atau mempercayai signature baru menggunakan MD5 jika masih ada kemungkinan kecil pada teks (kerusakan dilakukan dengan melibatkan pelompatan beberapa bit pada bagian 128-byte pada masukan hash) akan memberikan perubahan yang berarti. Penjaminan ini berdasar pada posisi saat ini dari kriptoanalisis. Situasi bisa saja berubah secara tiba-tiba, tetapi menemukan kerusakan dengan beberapa data yang belum-ada adalah permasalahan yang lebih susah lagi, dan akan selalu butuh waktu untuk terjadinya sebuah transisi.

0 komentar:

Posting Komentar