MESSAGE DIGEST 5 YANG MENGGUNAKAN APLIKASI KRIPTOGRAFI DAN FUNGSI HASH

dokumen-dokumen yang mirip
IMPLEMENTASI HASH FUNCTION DALAM MESSAGE DIGEST 5 (MD5)

ALGORITMA MESSAGE DIGEST 5 (MD5) DALAM APLIKASI KRIPTOGRAFI

APLIKASI FUNGSI HASH KRIPTOGRAFI PADA MESSAGE DIGEST 5

BAB I PENDAHULUAN 1.1 Latar Belakang

APLIKASI TEORI BILANGAN UNTUK AUTENTIKASI DOKUMEN

Rancangan Aplikasi Pemilihan Soal Ujian Acak Menggunakan Algoritma Mersenne Twister Pada Bahasa Pemrograman Java

Analisis Penerapan Algoritma MD5 Untuk Pengamanan Password

MODEL KEAMANAN INFORMASI BERBASIS DIGITAL SIGNATURE DENGAN ALGORITMA RSA

PENGGUNAAN POLINOMIAL UNTUK STREAM KEY GENERATOR PADA ALGORITMA STREAM CIPHERS BERBASIS FEEDBACK SHIFT REGISTER

MODEL KEAMANAN INFORMASI BERBASIS DIGITAL SIGNATURE DENGAN ALGORITMA RSA

PENGAMANAN DATA DENGAN MENGGUNAKAN ALGORITMA STREAM CIPHER SEAL

TUGAS KRIPTOGRAFI Membuat Algortima Sendiri Algoritma Ter-Puter Oleh : Aris Pamungkas STMIK AMIKOM Yogyakarta emali:

BAB III ANALISA DAN PERANCANGAN

K i r p i t p o t g o ra r f a i

Implementasi Tandatangan Digital Kunci-Publik pada Berkas Gambar dengan Format JPEG

PERANCANGAN PEMBANGKIT TANDA TANGAN DIGITAL MENGGUNAKAN DIGITAL SIGNATURE STANDARD (DSS) Sudimanto

Aplikasi Pengamanan Data dengan Teknik Algoritma Kriptografi AES dan Fungsi Hash SHA-1 Berbasis Desktop

Kriptografi. A. Kriptografi. B. Enkripsi

ANALISIS KRIPTOGRAFI MENGGUNAKAN ALGORITMA VIGENERE CIPHER DENGAN MODE OPERASI CIPHER BLOCK CHAINING (CBC)

Vol. 3, No. 2, Juli 2007 ISSN PERANAN KRIPTOGRAFI DALAM KEAMANAN DATA PADA JARINGAN KOMPUTER

APLIKASI JAVA KRIPTOGRAFI MENGGUNAKAN ALGORITMA VIGENERE. Abstract

BAB 2 LANDASAN TEORI

IMPLEMENTASI ALGORITMA TEA DAN FUNGSI HASH MD4 UNTUK ENKRIPSI DAN DEKRIPSI DATA

Aplikasi Laporan Keuangan Akuntansi Bulog-Jakarta Menggunakan Algoritma MD5 dan RSA

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB II LANDASAN TEORI

IMPLEMENTASI ALGORITMA SEAL PADA KEAMANAN DATA

DESAIN DAN IMPLEMENTASI PROTOKOL KRIPTOGRAFI UNTUK APLIKASI SECURE CHAT PADA MULTIPLATFORM SISTEM OPERASI

Kriptografi, Enkripsi dan Dekripsi. Ana Kurniawati Kemal Ade Sekarwati

IMPLEMENTASI METODE KRIPTOGRAFI IDEA DENGAN FUNGSI HASH DALAM PENGAMANAN INFORMASI

+ Basic Cryptography

Implementasi Sistem Keamanan File Menggunakan Algoritma Blowfish pada Jaringan LAN

BAB 2 LANDASAN TEORI. 2.1 Kriptografi

Pemanfaatan Keunikan Digit Desimal Bilangan Euler pada Kriptografi. Kuswari Hernawati Bambang Sumarno HM

ANALISA KRIPTOGRAFI KUNCI PUBLIK RSA DAN SIMULASI PENCEGAHAN MAN-IN-THE-MIDDLE ATTACK DENGAN MENGGUNAKAN INTERLOCK PROTOCOL

APLIKASI ENKRIPSI CITRA DIGITAL MENGGUNAKAN ALGORITMA GINGERBREADMAN MAP. Suryadi MT 1 Tony Gunawan 2. Abstrak

BAB 2 LANDASAN TEORI. 2.1 Kriptografi Definisi Kriptografi

Kriptografi Kunci Rahasia & Kunci Publik

BAB 1 PENDAHULUAN Latar Belakang

APLIKASI KRIPTOGRAFI ENKRIPSI DEKRIPSI FILE TEKS MENGGUNAKAN METODE MCRYPT BLOWFISH

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. Seiring perkembangan teknologi, berbagai macam dokumen kini tidak lagi dalam

BAB II TINJAUAN PUSTAKA

Digital Signature Standard (DSS)

PENYANDIAN DATA DENGAN KRIPTOGRAFI PASSWORD BASED ENCRYPTION MENGGUNAKAN MESSAGE DIGEST 5 DAN DATA ENCRYPTION STANDART

Perancangan dan Implementasi Aplikasi Bluetooth Payment untuk Telepon Seluler Menggunakan Protokol Station-to-Station

PENGAMANAN DATA MENGGUNAKAN METODA ENKRIPSI SIMETRI DENGAN ALGORITMA FEAL

RC4 Stream Cipher. Endang, Vantonny, dan Reza. Departemen Teknik Informatika Institut Teknologi Bandung Jalan Ganesha 10 Bandung 40132

KEAMANAN DATA DENGAN MENGGUNAKAN ALGORITMA RIVEST CODE 4 (RC4) DAN STEGANOGRAFI PADA CITRA DIGITAL

BAB I PENDAHULUAN. Kriptografi dapat pula diartikan sebagai ilmu atau seni untuk menjaga

BAB 1 PENDAHULUAN. khususnya internet sangatlah cepat dan telah menjadi salah satu kebutuhan dari

BAB II LANDASAN TEORI

PERANCANGAN APLIKASI ENKRIPSI MENGGUNAKAN ALGORITMA IDEA (INTERNATIONAL DATA ENCRYPTION ALGORITHM)

Modifikasi Cipher Block Chaining (CBC) MAC dengan Penggunaan Vigenere Cipher, Pengubahan Mode Blok, dan Pembangkitan Kunci Berbeda untuk tiap Blok

BAB I PENDAHULUAN. 1.1 Latar Belakang. Seiring dengan perkembangan peradaban manusia dan kemajuan pesat di

BAB 2 LANDASAN TEORI

IMPLEMENTASI ENKRIPSI DEKRIPSI ALGORITMA AFFINE CIPHER BERBASIS ANDROID

IMPLEMENTASI UJI KORELASI UNTUK PENGUJIAN SUB KUNCI PADA ALGORITMA KRIPTOGRAFI BLOCK CIPHER PRESENT MENGGUNAKAN BAHASA PEMROGRAMAN C++

Bab 2 Tinjauan Pustaka 2.1 Penelitian Terdahulu

Keamanan Sistem Komputer. Authentication, Hash Function, Digital Signatures, Quantum Cryptography

DASAR-DASAR KEAMANAN SISTEM INFORMASI Kriptografi, Steganografi. Gentisya Tri Mardiani, S.Kom.,M.Kom

FUNGSI HASH PADA KRIPTOGRAFI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

STUDI PERBANDINGAN ENKRIPSI MENGGUNAKAN ALGORITMA IDEA DAN MMB

MODEL DAN IMPLEMENTASI METODE ENKRIPSI KOMBINASI MD5 DAN SKRIP PENGOLAH STRING PADA FITUR LAYANAN PMB ONLINE

Sedangkan berdasarkan besar data yang diolah dalam satu kali proses, maka algoritma kriptografi dapat dibedakan menjadi dua jenis yaitu :

STUDI PERBANDINGAN ENKRIPSI MENGGUNAKAN ALGORITMA IDEA DAN MMB

Oleh: Benfano Soewito Faculty member Graduate Program Universitas Bina Nusantara

BAB III ANALISIS DAN PERANCANGAN

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Penelitian sebelumnya yang ditulis oleh Alen Dwi Priyanto

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

I. PENDAHULUAN. Key Words Tanda Tangan Digital, , Steganografi, SHA1, RSA

KRIPTOGRAFI HILL CIPHER DENGAN MENGGUNAKAN OPERASI MATRIKS

BAB 2 LANDASAN TEORI

Bab 2 Tinjauan Pustaka 2.1 Penelitian Terdahulu

PERANCANGAN PROGRAM APLIKASI KRIPTOGRAFI MENGGUNAKAN ALGORITMA MARS DENGAN MODUS ECB

BAB III ANALISIS DAN DESAIN SISTEM

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

RANCANGAN,IMPLEMENTASI DAN PENGUJIAN ZENARC SUPER CIPHER SEBAGAI IMPLEMENTASI ALGORITMA KUNCI SIMETRI

ANALISA PROSES ENKRIPSI DAN DESKRIPSI DENGAN METODE DES

BAB I PENDAHULUAN 1.1 Latar Belakang

APLIKASI KRIPTOGRAFI SEDERHANA MENGGUNAKAN FUNGSI HASHING (MD5) PADA MODUL PHP

BAB II LANDASAN TEORI

Tanda Tangan Digital Dengan Menggunakan SHA-256 Dan Algoritma Knapsack Kunci-Publik

Kompleksitas Waktu Algoritma Kriptografi RC4 Stream Cipher

BAB II DASAR TEORI. membahas tentang penerapan skema tanda tangan Schnorr pada pembuatan tanda

BAB II LANDASAN TEORI

IMPLEMENTASI KRIPTOGRAFI DAN STEGANOGRAFI DENGAN MENGGUNAKAN ALGORITMA RSA DAN MEMAKAI METODE LSB

BAB I PENDAHULUAN. 1.1 Latar Belakang

Analisis Performansi Algoritma AES dan Blowfish Pada Aplikasi Kriptografi

BAB 2 LANDASAN TEORI

Perancangan dan Implementasi Aplikasi Bluetooth Payment untuk Telepon Seluler Menggunakan Protokol Station-to-Station

Penggunaan Digital Signature Standard (DSS) dalam Pengamanan Informasi

RUANG LINGKUP KRIPTOGRAFI UNTUK MENGAMANKAN DATA Oleh: Budi Hartono

BAB III ANALISIS DAN DESAIN SISTEM

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Blox: Algoritma Block Cipher

PERBANDINGAN METODE VIGENERE DAN AFFINE UNTUK PESAN RAHASIA

Pengamanan Sistem Login Aplikasi Menggunakan Protokol ID Based Diffie-Hellman Key Agreement

A-2 Sistem Kriptografi Stream Cipher Berbasis Fungsi Chaos Circle Map dengan Pertukaran Kunci Stickel

BAB I PENDAHULUAN. dengan munculnya berbagai sistem operasi yang lengkap layaknya komputer,

Transkripsi:

MESSAGE DIGEST 5 YANG MENGGUNAKAN APLIKASI KRIPTOGRAFI DAN FUNGSI HASH Febri Ardiansyah NIM : 135050099 Program Studi Teknik Informatika Institut Teknologi Bandung Abstrak Dalam dunia sekarang ini pesan banyak dikirim melalui jaringan untuk memudahkan kita. Pengiriman pesan melalui jaringan memungkin pesan yang dikirim cepat sampai pada tujuan dan dapat mengirimkan pesan dalam jumlah data yang sangat besar.sewaktu kita menerima atau mengirim pesan pada jaringan, terdapat tiga buah persoalan yang sangat penting, kerahasian, autentikasi, keutuhan dan tak berbantahkan (non-repudiation). Message Digest 5 (MD5) adalah salah satu alat untuk memberi garansi bahwa pesan yang dikirim akan sama dengan pesan yang diterima, hal ini dengan membandingkan sidik jari atau intisari pesan kedua pesan tersebut. MD5 merupakan pengembangan dari MD4 dimana terjadi penambahan satu ronde. MD5 memproses teks masukan ke dalam blokblok bit sebanyak 512 bit, kemudian dibagi ke dalam 32 bit sub blok sebanyak 16 buah. Keluaran dari MD5 berupa 4 buah blok yang masing-masing 32 bit yang mana akan menjadi 128 bit yang biasa disebut nilai hash. Makalah ini mempunyai tujuan untuk merencanakan dan merancang suatu aplikasi untuk menganalisa proses keutuhan atau perubahan pesan dengan menggunakan MD5 dan juga dapat menganalisa hasil keluaran dari MD-5 yang berupa kecepatan dari proses aplikasi yang dibuat. Kata Kunci : MD5, Kriptografi, hash 1.Pendahuluan 1.1 Latar Belakang Sewaktu seseorang menerima atau mengirim pesan pada jaringan, terdapat empat buah persoalan yang sangat penting, yaitu kerahasian, autentikasi, [1,2,3] keutuhan dan non repudiation. Kerahasian adalah bahwa data kita tidak dapat dibaca oleh orang yang tidak berkepentingan. Autentikasi memberi garansi tentang keaslian data serta dengan siapa kita berhubungan. Keutuhan memberi garansi bahwa data tidak mengalami perubahan sewaktu perjalanan, dengan kata lain data yang dikirim adalah data yang [1,2,3] diterima. Dan non repudiation yang berarti si pengirim tidak dapat menyangkal bahwa pesan yang [2,3] dikirim bukan darinya. Salah satu dari bagian kriptografi adalah fungsi hash satu arah. Fungsi hash satu arah adalah dimana kita dengan mudah melakukan enkripsi untuk mendapatkan cipher-nya tetapi sangat sulit [1,3,12] untuk mendapatkan plaintext-nya.

Salah satu fungsi hash yang paling banyak digunakan adalah Message Digest 5 (MD-5). MD-5 merupakan fungsi hash satu arah yang diciptakan oleh Ron Rivest. MD-5 adalah salah satu aplikasi yang digunakan untuk mengetahui bahwa pesan yang dikirim tidak ada perubahan sewaktu berada di jaringan. Algoritma MD-5 secara garis besar adalah mengambil pesan yang mempunyai panjang variabel diubah menjadi sidik jari atau intisari pesan yang mempunyai panjang tetap yaitu 128 bit. Sidik jari ini tidak dapat dibalik untuk mendapatkan pesan, dengan kata lain tidak ada orang yang dapat melihat [10] pesan dari sidik jari MD-5. Message digest atau intisari pesan harus [3,4] mempunyai tiga sifat penting, yaitu : 1. Bila P diketahui, maka MD(P) akan dengan mudah dapat dihitung. 2. Bila MD(P) diketahui, maka tidak mungkin menghitung P. 3. Tidak seorang pun dapat memberi dua pesan yang mempunyai intisari pesan yang sama. H(M) == H(M ). 1.2 Tujuan dan Manfaat Tujuan yang hendak dicapai adalah merencanakan dan merancang suatu aplikasi untuk menganalisa proses keutuhan atau pun perubahan pesan dengan menggunakan Message Digest 5 (MD5) dan juga dapat menganalisa hasil keluaran dari MD5 yang berupa kecepatan dari proses aplikasi yang dibuat.sehingga pesan yang dikirim dapat tersampaikan pada tujuan dengan aman dan tanpa adanya kerusakan dalam perjalanan pengirimannya. Disamping itu dengan adanya MD5 diharapkan pengguna pengiriman pesan menggunakan jaringan tidak perlu kawatir bahwa pesan yang dikirimkan dari segi kerahasian, autentikasi, keutuhan dapat dijamin. 1.3 Batasan Masalah Untuk tidak memperluas area pembahasan yang terdapat pada proses autentikasi, perlu adanya batasan-batasan untuk menye derhanakan permasalahan, yaitu: 1. Aplikasi hanya memakai MD5, tidak menggunakan enkripsi data. 2. Aplikasi dilakukan pada semua file u 3. diubah menjadi intisari pesan de 4. panjang 128 bit. 5. 3. Contoh Aplikasi hanya simulasi 6. fungsi MD5 dalam perubahan pesan 2. Kriptografi dan Fungsi Hash Satu Arah Secara Umum Bagian ini menerangkan tentang kriptografi secara umum yaitu tentang enkripsi dan dekripsi, penggunaan kunci simetrik dan asimetrik, juga tujuan dari kriptografi. Dengan demikian kita dapat dengan mudah memahami MD5 yang memakai metode kriptografi dalam proses yang dilakukannya. 2.1 Prinsip Dasar Kriptografi Ilmu kriptografi adalah ilmu yang mempelajari tentang penyembunyian huruf atau tulisan sehingga membuat tulisan tersebut tidak dapat dibaca oleh [2] orang yang tidak berkepentingan. Kriptografi sudah dipakai sejak jaman Julius Caesar dimana akan mengirimkan pesan kepada panglimanya tetapi tidak mempercayai kurir pembawa

pesan tersebut. Kriptografi mempunyai 2 (dua) bagian yang penting, yaitu enkripsi dan dekripsi. Enkripsi adalah proses dari penyandian pesan asli menjadi pesan yang tidak dapat diartikan seperti aslinya. Dekripsi sendiri berarti merubah pesan yang sudah disandikan menjadi pesan aslinya. Pesan asli biasanya disebut plaintext, sedangkan pesan yang sudah disandikan [3] disebut ciphertext. Pada Gambar 2.1 dapat dilihat bahwa masukanberupa plaintext akan masuk ke dalam blok enkripsi dan keluarannya akan berupa ciphertext, kemudian ciphertext akan masuk ke dalam blok dekripsi dan keluarannya akan kembali menjadi plaintext semula. Gambar 2.1 Proses Enkripsi dan Dekripsi Ada 2 (dua) model algoritma enkripsi yang menggunakan kunci, yaitu kunci simetrik dan kunci [2, 3, 12] asimetrik. Enkripsi kunci simetrik yang biasanya disebut enkripsi konvensional adalah enkripsi yang menggunakan kunci yang sama untuk enkripsi maupun dekripsi, Dari Gambar 2.2 terlihat bahwa untuk mengenkripsi maupun mendekripsi pesan hanya menggunakan satu buah kunci (K) saja. Penggunaan metode ini membutuhkan persetujuan antara pengirim dan penerima tentang kunci sebelum mereka saling mengirim pesan Keamanan dari kunci simetrik tergantung pada kerahasiaan kunci, apabila seorang penyusup dapat menemukan kunci maka dengan mudah dapat membaca pesan yang sudah dienkripsi. Enkripsi kunci simetrik dapat dibagi kedalam 2 (dua) kelompok yaitu metode stream cipher dan [3,12] metode block cipher. Enkripsi kunci asimetrik (biasa disebut enkripsikunci publik) dibuat sedemikian rupa sehingga kunciyang dipakai untuk enkripsi berbeda dengan kunciyang dipakai untuk dekripsi. Enkripsi kunci publik disebut demikian karena kunci untuk enkripsi boleh disebarluaskan kepada umum sedangkan kunci untuk mendekripsi hanya disimpan oleh orang yang [2,3,12] bersangkutan. Enkripsi asimetrik dapat ditulisseperti berikut: Ek (P) = C Dk (C) = P Contohnya seperti pada Gambar 2.3 bila seseorang ingin mengirim pesan kepada orang lain maka orang tersebut menggunakan kunci publik orang tersebut untuk mengenkripsi pesan yang kita kirim kepadanya lalu orang tersebut akan mendekripsi pesan tersebut dengan kunci privat miliknya.

yang sama walaupun terdapat kehadiran musuh. 2.3 Prinsip Dasar Fungsi Hash Satu Arah 2.2 Tujuan Dari Kriptografi Seperti juga perkembangan ilmu kriptografi, tujuan-tujuan dari kriptografi teruslah berkembang. Bila pertama kali dibuat hanya untuk keamanan data saja, tetapi sekarang semakin banyak tujuantujuan [12] yang ingin dicapai, yaitu: 1. Privasi, Musuh tidak dapat membongkartulisan yang kita kirim. 2. Autentikasi, Penerima pesan dapat meyakinkan dirinya bahwa pesan yang diterima tidak terjadi perubahan dan berasal dari orang yang diinginkan. 3. Tanda tangan, penerima pesan dapat meyakinkan pihak ketiga bahwa pesan yang diterima berasal dari orang yang diinginkan. 4. Minimal, Tidak ada yang dapat berkomunikasi dengan pihak lain kecuali berkomunikasi dengan pihak yang diinginkan. 5. Pertukaran bersama, suatu nilai (misalnya tanda tangan sebuah kontrak) tidak akan dikeluarkan sebelum nilai lainnya (misalnya tanda tangan pihak lain) diterima. 6. Koordinasi, di dalam komunikasi denganbanyak pihak, setiap pihak dapat berkoordinasi untuk tujuan Fungsi hash satu arah memiliki banyak nama: fungsi pembanding, fungsi penyusutan, intisari pesan, sidik jari, message integrity check (MIC) atau pemeriksa keutuhan pesan dan manipulation detection code (MDC) atau pendektesi [3] penyelewengan kode. Fungsi hash satu arah dibuat berdasarkan ide tentang fungsi pemampatan. Fungsi hash adalah sebuah fungsi atau persamaan matematika yang mengambil input dengan panjang variabel (pre-image) dan merubahnya menjadi panjang yang tetap (biasanya lebih pendek), keluarannya biasa disebut [3,10] nilai hash. Fungsi hash satu arah adalah sebuah fungsihash yang berjalan hanya satu arah. Adalah mudah untuk menghitung nilai hash dari pre-image, tetapi sangat sulit untuk membangkitkan pre-image dari [3] nilai hash-nya. Metode fungsi hash satu arah adalah berfungsi melindungi data dari modifikasi. Apabila ingin melindungi data dari modifikasi yang tidak terdeteksi, dapat dihitung hasil fungsi hash dari data tersebut, selanjutnya dapat menghitung hasil fungsi hash lagi dan membandingkannya dengan hasil yang pertama apabila berbeda maka terjadi perubahan selama pengiriman. Sebagai contohnya adalah bila si pengirim (A) akan mengirim pesan kepada temannya (B). Sebelum mengirim, A melakukan hash dari pesannya untuk mendapatkan nilai hash kemudian dia mengirim pesan itu beserta nilai hashnya, Lalu B melakukan hash untuk mencari nilai hash dari pesan itu bila terjadi perbedaan maka sewaktu pengiriman telah terjadi perubahan dari pesan tersebut. Masukan dari fungsi hash satu arah adalah blok pesan dan keluaran dari blok text atau nilai hash sebelumnya ini dapat dilihat pada Gambar 2.4

sehingga secara garis besar, hash dari blok Mi adalah: hi = f(mi,hi - 1) Nilai hash ini bersama blok pesan berikutnya menjadi masukan berikutnya bagi fungsi pemampatan. Nilai hash keseluruhan adalah nilai hash dari blok paling akhir. Pre-image sedapatnya mengandung beberapa binari yang menggambarkan panjang dari masukan pesan. Teknik ini digunakan untuk mengatasi masalah yang dapat terjadi bila pesan yang mempunyai pesan yang tidak sama mempunyai nilai hash yang sama. Metode ini [3] biasa disebut MD-strengthening atau penguatan MD. 2.4.1 Prinsip Dasar MD5 Message Digest 5 (MD-5) adalah salah satu penggunaan fungsi hash satu arah yang paling banyak digunakan. MD-5 merupakan fungsi hash kelima yang dirancang oleh Ron Rivest dan didefinisikan pada RFC 1321[10]. MD-5 merupakan pengembangan dari MD-4 dimana terjadi [1,3,10] penambahan satu ronde MD-5 memproses teks masukan ke dalam blok-blok bit sebanyak 512 bit, kemudian dibagi ke dalam 32 bit sub blok sebanyak 16 buah. Keluaran dari MD-5 berupa 4 buah blok yang masing-masing 32 bit yang mana akan menjadi [3,10] 128 bit yang biasa disebut nilai hash. 2.4. Sistem Kriptografi MD5 Pada bagian ini dijelaskan mengenai sistem kriptografi MD-5 secara spesifik, yaitu sistem kriptografi algoritma MD5 yang menjelaskan dari awal masukan hingga keluarannya. Penjelasan yang akan disampaikan menjelaskan dengan rinci tahap demi tahap dalam proses yang dilakukan oleh MD5.Tahap-tahap ini sangat perlu diperhatikan agar kita memahami bagaimana mekanisme kerja MD5. Dalam aplikasinya tahap-tahap harus dipastikan bekerja dengan sempurna. Pada Gambar 3.1 terlihat simpul utama dari MD-5. Simpul utama MD5 mempunyai blok pesan dengan panjang 512 bit yang masuk ke dalam 4 buah ronde. Hasil keluaran dari MD-5 adalah berupa 128 bit dari byte terendah A dan tertinggi byte D.

2.4.2 Penjelasan Algoritma MD-5 Setiap pesan yang akan dienkripsi, terlebih dahulu dicari berapa banyak bit yang terdapat pada pesan. Kita anggap sebanyak b bit. Di sini b adalah bit non negatif integer, b bisa saja nol dan tidak [10] harus selalu kelipatan delapan. Pesan dengan panjang b bit dapat digambarkan seperti berikut : m_0 m_1..m_(b-1) Terdapat 5 langkah yang dibutuhkan untuk untuk menghitung intisari pesan. Adapun langkah langkah tersebut dijelaskan pada subbab-subbab berikut. 2.4.2.1 Menambahkan bit Pesan akan ditambahkan bit-bit tambahan sehingga panjang bit akan kongruen dengan 448, mod 512. Hal ini berarti pesan akan mempunyai panjang yang hanya kurang 64 bit dari kelipatan 512 bit. Penambahan bit selalu dilakukan walaupun panjang dari pesan sudah kongruen dengan 448, mod [3,10] 512 bit.. Penambahan bit dilakukan dengan menambahkan 1 di awal dan diikuti 0 sebanyak yang diperlukan sehingga panjang pesan akan kongruen dengan 448, mod 512. menginisialisasi message digest pertama kali. Register-register ini di inisialisasikan dengan bilangan hexadesimal. word A: 01 23 45 67 word B: 89 AB CD EF word C: FE DC BA 98 word D: 76 54 32 10 Register-register ini biasa disebut dengan nama Chain variabel atau variabel rantai. 2.4.2.4 Proses Pesan di dalam Blok 16 Word Pada MD-5 juga terdapat 4 (empat) buah fungsi nonlinear yang masingmasing digunakan pada tiap operasinya (satu fungsi untuk satu blok), yaitu: 2.4.2.2 Penambahan Panjang Pesan Setelah penambahan bit, pesan masih membutuhkan 64 bit agar kongruen dengan kelipatan 512 bit. 64 bit tersebut merupakan perwakilan dari b (panjang pesan sebelum penambahan bit dilakukan). Bit-bit ini ditambahkan ke dalam dua word (32 bit) dan ditambahkan dengan low-order terlebih dahulu. Penambahan pesan ini biasa disebut juga MD [3] Strengthening atau Penguatan MD. 2.4.2.3 Inisialisasi MD-5 Pada MD-5 terdapat empat buah word 32 bit register yang berguna untuk Pada Gambar 3.2 dapat dilihat satu buah operasi dari MD-5 dengan operasi yang dipakai sebagai contoh adalah FF(a,b,c,d,Mj,s,ti) menunjukan a = b + ((a + F(b,c,d) + Mj + ti) <<< s) Bila Mj menggambarkan pesan ke-j dari sub blok (dari 0 sampai 15) dan <<<s menggambarkan bit akan digeser ke kiri sebanyak s bit, maka keempat operasi dari masing-masing ronde adalah:

FF(a,b,c,d,Mj,s,ti) menunjukan a = b + ((a + F(b,c,d) + Mj + ti) <<< s) GG (a,b,c,d,mj,s,ti) menunjukan a=b +((a +G(b,c,d)+M+ ti) <<< s) HH(a,b,c,d,Mj,s,ti) menunjukan a=b+((a +H(b,c,d)+Mj ti) <<< s) II(a,b,c,d,Mj,s,ti) menunjukan a=b+((a +I(b,c,d) + Mj + ti) <<< s) 3. Perancangan Aplikasi Spesifikasi Aplikasi yang digunakan adalah aplikasi 32-bit yang berjalan pada sistem operasi Windows 98 ke atas.aplikasi berbentuk sebuah file executable dengan nama md5_test.exe Aplikasi md5_string mencari nilai hash dari masukan berupa karakter-karakter yang dimasukkan oleh pemakai melalui keyboard. Aplikasi md5_file mencari nilai hash dari masukan berupa file yang dipilih oleh pemakai. Aplikasi test suite untuk memeriksa bahwa program yang sudah dibuat sudah sesuai RFC 1321. Aplikasi ini juga terdapat contoh penggunaan dari MD5. 3.1 Proses MD-5 Dengan Masukan Berupa String Proses MD5 dengan masukan berupa string adalah proses yang masukan nya berupa karakter-karakter yang dimasukan melalui keyboard. Karakter-karakter tersebut lalu diproses lebih lanjut. Untuk lebih jelasnya proses masukan yang berupa string dapat dilihat pada gambar 3.1 Konstanta ti didapat dari integer 2. abs(sin(i)), dimana i dalam radian. 2.4.2.5 Keluaran MD-5 Keluaran dari MD-5 adalah 128 bit dari word terendah A dan tertinggi word D masing-masing 32 bit.

3.2 Proses MD5 Dengan Masukan Berupa File Proses MD5 dengan masukan berupa file adalah proses MD5 yang masukannya memanggil file yang kemudian dihitung berapa panjang bitnya, dalam keadaan ini file diperlakukan sebagai bit memori sehingga masukannya tidak terpengaruh pada ekstensinya. Kemudian dilakukan proses MD5. Hal ini dapat dilihat dengan jelas pada Gambar 3.2. 3.4 Contoh Aplikasi Pada Contoh Aplikasi ini terdapat dua buah aplikasi yang dipakai yaitu Simpan dan Tampil. Simpan akan menyimpan data yaitu berupa Nama, nilai ujian dan nilai hash-nya. Pada ahirnya akan melakukan perhitungan MD5 dari data yang disimpan untuk membandingkan nilai hash-nya dengan nilai hash dari data semula, apabila nilai hash yang di dapat sama maka data akan ditampilkan. Tetapi bila nilai hash yang di dapat berbeda maka pada form Akhir akan ditampilkan pesan bahwa data terdapat kesalahan atau perubahan dalam proses pengirmannya 3.5 Pengukuran Kecepatan Aplikasi 3.3 Proses MD5 Sebagai Test Suite Test suite dilakukan untuk mengetahui apakah program yang dibuat ini sudah benar atau tidak. Sebagai perbandingannya digunakan hasil yang sudah dibuat oleh Ron Rivest yang sudah didefinisikan pada RFC 1321. Pada Gambar 3.3 dapat dilihat bahwa masukan dari MD5 sudah ditentukan sehingga hanya membandingkan hasil pada layar dengan yang tercantum pada RFC 1321. Pengukuran kecepatan aplikasi merupakan sebuah analisa yang akan dipakai untuk mengukur tingkat kecepatan dari proses mencari nilai hash dari file dengan menggunakan aplikasi MD5 Adapun rumus yang dipakai dalam aplikasi untuk menghitung kecepatan mencari nilai hash tersebut adalah: Besar Ukuran File Kecepatan = Lama waktu proses Satuan dari kecepatan enkripsi ini adalah Mbytes/detik Dalam analisa kecepatan ini, akan dilakukan sebanyak 5 (lima) kali pengambilan waktu terbaik yang diperlukan untuk enkripsi untuk setiap filenya kemudian dicari waktu rata-ratanya.besar file dan tabel perbandingan kecepatan maksimum dengan kecepatan rerata terhadap besar file itu sendiri.

4. Analisis Kecepatan MD5 5 Kesimpulan Analisis kecepatan disini adalah analisis tentang kecepatan aplikasi dalam mengenkrip file untuk mencari nilai hash. Dalam proses ini perlu analisis unutk dilakukan untuk mencari kecepatan aplikasi dengan masukan file yang mempunyai besar berbeda-beda Pengujian dilakukan dengan cara mengenkrip file sebanyak 31 (tigapuluh satu) buah file dengan besar file yang berbedabeda. Setiap file dilakukan pengambilan waktu eksekusi sebanyak 5 kali kemudian mencari waktu reratanya dari ke lima kali eksekusi yang dilakukan.dan kemudian waktu rerata ini yang menjadi kecepatan MD5 nya. 4.1 Hasil Pengujian Setelah dilakukan serangkaian proses pengujian dalam mekanisme MD5 maka kita perlu menampilkan hasil pengujian tersebut Hasil pengujian digambarkan dengan tabel hasil pengujian, yang kemudian dijabarkan dengan grafik hasil uji coba terhadap file yaitu Grafik kecepatan aplikasi terhadap besar file, Grafik rerata waktu eksekusi terhadap besar file dan Tabel perbandingan kecepatan maksimum dengan kecepatan rerata terhadap besar file. Hasil pengujian ini menjelaskan dengan rinci hasi pengujian yang telah dilakukan terhapat file yang dikirimkan Apakah data yang tersimpan didalamnya masih utuh dan tidak terdapat kesalahan atau datanya tidak valid lagi. Dan pada akhirnya kita dapat diambil kesimpulan apakah data perlu ditampilkan atau tidak. Berdasarkan penjabaran yang telah dilakukan dalam makalah ini penting bagi kita untuk mengetahuinya.dari kesimpulan yang akan di sampaikan diharapkan dapat menambah kejelasan dari penyampaian makalah yang telah dilakukan di atas.dan diambil mamfaatnya bagi kita yang memerlukannya. Secara umum dari penjelasan yang telah disampaikan dalam makalah ini. Terdapat beberapa kesimpulan yang dapat diperoleh tampa mengecilkan hal yang lain dalam makalah ini adalah: 1. Message Digest 5 (MD5) adalah sebuah fungsi hash satu arah yang mengubah masukan dengan panjang variabel menjadi keluaran dengan panjang tetap yaitu 128 bit. 2. Rerata kecepatan dari program aplikasi MD-5 adalah 7,1633 Mbytes/detik 3. Aplikasi yang dibuat hanya efektif digunakan untuk ukuran file kurang dari 40 Mbytes. 4. Sumber daya komputer berpengaruh terhadap kecepatan enkripsi.

6. DAFTAR PUSTAKA 1. A.Menezes, P. Van Oorschot, S. Vanstone. Handbook of applied Cryptography. RCPress 1996. 2. Pfleeger, Charles P, Security in Computing Second Edition. Prentice-Hall International, Inc, New Jersey, 1997 3. B. Schneier, Applied Cryptography, John Wiley & Sons, New York, 1994 4. Tanenbaum, Andrew S, Jaringan Komputer Edisi Indonesia Dari Computer Network Edisi III, Prenhallindo, Jakarta, 1997 5. ---, http:// www.counterpane.com/ 6. ---, http:// www.cryptography.com. 7. ---, http:// www.cryptography.org 8. ---,http://www.eskino.com/~weidai /benchrarks.html. 9. ---, http:// www.cwi.nl/~kik/persb- UK.html. 10. ---, http://www.faqs.org/ftp/rfc/ rfc1321.txt 11. ---, http://www.spitzner.net/pubs.html 12. ---, http://www.secure-hash- algorithm-md5-sha- 1.co.uk/index.htm