# MAKALAH KEAMANAN KOMPUTER

SEMESTER VI

Oleh :

P I L I P U S

UNIVERSITAS AKI NGABANG

DAFTAR ISI DAFTAR ISI............................................................................................................. i BAB I PENDAHULUAN..................................................................................... 1 A. Latar Belakang..................................................................................... 1 B. Rumusan Masalah................................................................................ 2 C. Tujuan Penulisan................................................................................. 3 BAB II PEMBAHASAN........................................................................................ 4 A. Pengertian Kriptografi......................................................................... 4 B. Konsep Penggunaan Kriptografi......................................................... 4 1. Kerahasiaan (Confidentiality)....................................................... 4 2. Integritas (Integrity)....................................................................... 4 3. Penghindaran Penolakan (Non-repuditation)................................ 4 4. Autentikasi (Authentication)......................................................... 4 5. Tanda Tangan Data (Data Signature)............................................ 4 6. Kontrol Akses (Access Control)................................................... 4 C. Pengertian Fungsi Hash....................................................................... 4 D. Metode yang Digunakan Dalam Fungsi Hash.................................... 6 1. Metode Pembagian........................................................................ 6 2. Metode Perkalian........................................................................... 6 E. Macam-Macam Fungsi Hash............................................................... 6 1. Metode Pembagian Bersisa (division-remainder method)........... 6 2. Melipat (folding)............................................................................ 6 3. Transformasi Radiks (radix transformation)................................. 7 4. Pengaturan Ulang Digit Radiks (radix transformation)................ 7 F. Bentrokan Pada Fungsi Hash............................................................... 7 1. Kebijakan Resolusi Bentrokan di Luar Table............................... 7 2. Kebijakan Resolusi Bentrokan di Dalam Table............................ 8 a. Linear Probing......................................................................... 9 b. Quadratic probing / squared probing...................................... 9 c. Double hashing........................................................................ 9 3. Perbandingan antara metode chaining dan open addressing........ 9 4. Metode-Metode Lain..................................................................... 10 a. Coalesced hashing................................................................... 10 b. Perfect hashing........................................................................ 10 c. Probabilistic hashing............................................................... 10 d. Robin Hood hashing................................................................ 11 G. Pengertian MD5................................................................................... 11 H. Langkah-Langkah Pembuatan MD..................................................... 11 1. Penambahan Bit-bit Pengganjal.................................................... 11 2. Penambahan Nilai Panjang Pesan................................................. 11 3. Inisialisai Penyangga MD............................................................. 11 4. Pengolahan Pesan dalam Blok Berukuran 512 bit........................ 12 I. Cara Kerja MD5................................................................................... 13 J. Proses MD5 dengan Berbagai Macam Masukan................................ 14 1. Proses MD5 Dengan Masukan Berupa String.............................. 14 2. Proses MD5 Dengan Masukan Berupa File.................................. 15 3. Proses MD5 Sebagai Test Suite.................................................... 15 K. Analisis Kecepatan MD5..................................................................... 15 L. Pemanfaatan Komputer Di masyarakat............................................ BAB III PENUTUP.................................................................................................. 16 A. Kesimpulan.......................................................................................... 16 B. Saran..................................................................................................... 16 DAFTAR PUSTAKA................................................................................................ 17

Sementara itu kebutuhan keamanan sistem komputer dapat dikategorikan menjadi aspek-aspek sebagai berikut : 1. Privacy / Confidentiality Inti utama aspek privacy atau confidentiality adalah usaha untuk menjaga informasi dari orang yang tidak berhak mengakses. Privacy lebih kearah data-data yang sifatnya privat sedangkan confidentiality biasanya berhubungan dengan data yang diberikan ke pihak lain untuk keperluantertentu (misalnya sebagai bagian dari pendaftaran sebuah servis) dan hanya diperbolehkan untuk keperluan tertentu tersebut. 2. Integrity Aspek ini menekankan bahwa informasi tidak boleh diubah tanpa seijin pemilik informasi. Adanya virus, trojan horse, atau pemakai lain yang mengubah informasi tanpa ijin merupakan contoh masalah yang harus dihadapi. Sebuah e-mail dapat saja “ditangkap” (intercept) di tengah jalan, diubah isinya (altered, tampered, modified), kemudian diteruskan ke alamat yang dituju. Dengan kata lain, integritas dari informasi sudah tidak terjaga. Penggunaan encryption dan digital signature, misalnya, dapat mengatasi masalah ini. 3. Authentication Aspek ini berhubungan dengan metoda untuk menyatakan bahwa informasi betulbetul asli, orang yang mengakses atau memberikan informasi adalah betul-betul orang yang dimaksud, atau server yang kita hubungi adalah betul-betul server yang asli. 4. Availability Aspek availability atau ketersediaan berhubungan dengan ketersediaan informasi ketika dibutuhkan. Sistem informasi yang diserang atau dijebol dapat menghambat atau meniadakan akses ke informasi. B. Rumusan Masalah Pada makalah ini penulis akan membahas tentang masalah keamanan file yang dikirim melalui jaringan komputer agar orang yang tidak berhak tidak dapat membuka ataupun membaca file yang telah dikirim. Beberapa pembahasan tersebut meliputi : 1. Pengertian kriptografi. 2. Konsep Penggunaan Kriptografi. 3. Pengertian Fungsi Hash. 4. Metode yang Digunakan Dalam Fungsi Hash. 5. Macam-Macam Fungsi Hash. 6. Bentrokan pada Fungsi Hash. 7. Pengertian MD5. 8. Langkah-Langkah Pembuatan MD. 9. Cara Kerja MD5. 10. Proses MD5 dengan Berbagai Macam Masukan. 11. Analisis Kecepatan MD5. C. Tujuan Penulisan Dengan adanya makalah ini, maka dapat diketahui bagaimana cara mengamankan file dari para pelaku yang tidak bertanggung jawab, yang tidak mempunyai hak untuk mengakses apalagi untuk mengambil data yang bukan haknya. Dalam makalah ini lebih rinci lagi akan membahas tentang cara mengamankan file dengan menggunakan MD5, karena MD5 merupakan salah satu jenis dari fungsi hash yang paling banyak digunakan.

BAB II PEMBAHASAN A. Pengertian Kriptografi Kriptografi berasal dari bahasa yunani yang terdiri dari kata kryptos yang berarti tersembunyi dan grafo yang berarti tulis. Kriptografi secara umum adalah ilmu dan seni untuk menjaga kerahasiaan berita. Selain pengertian tersebut kriptografi juga merupakan ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan data, keabsahan data, integri tas data, serta autentikasi data. Kriptografi memungkinkan beberapa operasi atau proses terhadap data. Dua buah operasi dasar adalah enkripsi (dengan dekripsi sebagai proses balikannya) dan signing (dengan verifikasi dari signature sebagai proses balikannya). Enkripsi analog dengan memasukkan surat kedalam sebuah amplop sedangkan dekripsi analog dengan membuang amplop dan mengambil data. Signature analog dengan pemberian tandatangan terhadap sebuah dokumen dan penanda bahwa dokumen tersebut tidak berubah dari aslinya. B. Konsep Penggunaan Kriptografi Konsep penggunaan kriptografi antara lain: 1. Kerahasiaan (Confidentiality). Sederhananya, kerahasiaan adalah proses penyembunyian data dari orangorang yang tidak punya otoritas. 2. Integritas (Integrity) Proses untuk menjaga agar sebuah data tidak dirubah-rubah sewaktu ditransfer atau disimpan. 3. Penghindaran Penolakan (Non-repuditation) Proses untuk menjaga bukti-bukti bahwa suatu data berasal dari seseorang. Seseorang yang ingin menyangkal bahwa data tersebut bukan berasal darinya, dapat saja melenyapkan bukti-bukti yang ada. Karenanya diperlukan teknik untuk melindungi data-data tersebut. 4. Autentikasi (Authentication) Proses untuk menjamin keaslian suatu data. 5. Tanda Tangan Data (Data Signature) Dapat disebut juga sebagai tanda tangan digital. Berguna untuk menandatangi data digital. Contohnya adalah Digital Signature Algorithm (DSA) 6. Kontrol Akses (Access Control) Untuk mengontrol akses terhadap suatu entity. Contoh penggunaan kriptografi di dunia internet antara lain: Secure Shell (SSH), SSL (Secure Socket Layer), Secure Hypertext Transfer Protocol (HTTP), dan lain lain.

C. Pengertian Fungsi Hash Hash function atau fungsi hash adalah suatu cara menciptakan “fingerprint” dari berbagai data masukan. Hash function akan mengganti atau mentranspose-kan data tersebut untuk menciptakan fingerprint, yang biasa disebut hash value. Hash value biasanya digambarkan sebagai suatu string pendek yang terdiri atas huruf dan angka yang terlihat random (data biner yang ditulis dalam notasi heksadesimal). Suatu hash function adalah sebuah fungsi matematika, yang mengambil sebuah panjang variabel string input, yang disebut pre-image dan mengkonversikannya ke sebuah string output dengan panjang yang tetap dan biasanya lebih kecil, yang disebut message digest5. Hash function digunakan untuk melakukan fingerprint pada pre-image, yaitu

berkait dari recordrecord yang menghasilkan nilai hash yang sama. Penambahan record dapat dilakukan dengan menambah senarai berisi record tersebut. Untuk pencarian pada tabel, pertama-tama dicari nilai hash terlebih dahulu, kemudian dilakukan pencarian dalam senarai berkait yang bersangkutan. Untuk menghapus suatu record, hanya menghapus senarainya saja.

Perbandingan waktu yang diperlukan untuk melakukan pencarian. Saat tabel mencapai 80% terisi, kinerja pada linear probing(open addressing)menurun drastis.

1. Penambahan Bit-bit Pengganjal a. Pesan ditambah dengan sejumlah bit pengganjal sedemikian sehingga panjang pesan (dalam satuan bit) kongruen dengan 448 modulo 512. b. Jika panjang pesan 448 bit, maka pesan tersebut ditambah dengan 512 bit menjadi 960 bit. Jadi, panjang bit-bit pengganjal adalah antara 1 sampai 512. c. Bit-bit pengganjal terdiri dari sebuah bit 1 diikuti dengan sisanya bit 0. 2. Penambahan Nilai Panjang Pesan a. Pesan yang telah diberi bit-bit pengganjal selanjutnya ditambah lagi dengan 64 bit yang menyatakan panjang pesan semula. b. Jika panjang pesan > 264 maka yang diambil adalah panjangnya dalam modulo 264. Dengan kata lain, jika panjang pesan semula adalah K bit, maka 64 bit yang ditambahkan menyatakan K modulo 264. c. Setelah ditambah dengan 64 bit, panjang pesan sekarang menjadi kelipatan 512 bit. 3. Inisialisai Penyangga MD a. MD5 membutuhkan 4 buah penyangga (buffer) yang masing-masing panjangnya 32 bit. Total panjang penyangga adalah 4 × 32 = 128 bit. Keempat penyangga ini menampung hasil antara dan hasil akhir. b. Keempat penyangga ini diberi nama A, B, C, dan D. Setiap penyangga diinisialisasi dengan nilai-nilai (dalam notasi HEX) sebagai berikut: A = 01234567 B = 89ABCDEF C = FEDCBA98 D = 76543210 4. Pengolahan Pesan dalam Blok Berukuran 512 bit a. Pesan dibagi menjadi L buah blok yang masing-masing panjangnya 512 bit (Y0 sampai YL – 1). b. Setiap blok 512-bit diproses bersama dengan penyangga MD menjadi keluaran 128-bit, dan ini disebut proses HMD5. Gambaran proses HMD5 diperlihatkan pada Gambar 13.3.

Y

q

M
5 1 2

q

D

ABCD ← f F ( ABCD, Yq , T [1..16])

A

B

C

D

ABCD ← f G ( ABCD, Yq , T [17..32])

A

B

C

D

ABCD ← f H ( ABCD, Yq , T [33..48])

A

B

C

D

ABCD ← f I ( ABCD, Yq , T [49..64])

+

+

+

+

1

2

8

M

q

D

1+

c. Pada Gambar 13.3, Yq menyatakan blok 512-bit ke-q dari pesan yang telah ditambah bit-bit pengganjal dan tambahan 64 bit nilai panjang pesan semula. d. MDq adalah nilai message digest 128-bit dari proses HMD5 ke-q. Pada awal proses, MDq berisi nilai inisialisasi penyangga MD. e. Proses HMD5 terdiri dari 4 buah putaran, dan masing-masing putaran melakukan operasi dasar MD5 sebanyak 16 kali dan setiap operasi dasar memakai sebuah elemen T. Jadi setiap putaran memakai 16 elemen Tabel T. f. Fungsi-fungsi fF, fG, fH, dan fI masing-masing berisi 16 kali operasi dasar terhadap masukan, setiap operasi dasar menggunakan elemen Tabel T. g. Operasi dasar MD5 diperlihatkan pada Gambar 13.4.
a b c d

g

+

+

X [k ]

+

T [i]

C

Ls

S

+

h. Karena ada 16 kali operasi dasar, maka setiap kali selesai satu operasi dasar, penyangga-penyangga itu digeser ke kanan secara sirkuler dengan cara pertukaran sebagai berikut: temp ← d d ←c c ←b b ←a a ← temp
a b c d

+

g

X[k]

+

T[i]

+

CLSs

+

I. Cara Kerja MD5

a

b

c

d

MD5 mengolah blok 512 bit, dibagi kedalam 16 subblok berukuran 32 bit. Keluaran algoritma diset menjadi 4 blok yang masing-masing berukuran 32 bit yang setelah digabungkan akan membentuk nilai hash 128 bit.

Algoritma MD5 Pesan diberi tambahan sedemikian sehingga panjang menjadi k-bit, dimana k = 512n – 64 bit. n merupakan blok masukan. Tambahan ini diperlukan hingga pesan menjadi k bit. Kemudian 64 bit yang masing kosong, dibagian akhir, diisi panjang pesan. Inisiasi 4 variabel dengan panjang 32 bit yaitu a,b,c,d. Variabel a,b,c,d dikopikan ke variabel a,b,c,d yang kemudian diolah melalui 4 tahapan yang sangat serupa. Setiap tahapan menggunakan 16 kali operasi berbeda, menjalankan fungsi nonlinear pada tiga variabel a,b,c, atau d. Hasilnya ditambahkan ke variabel keempat, subblok pesan dan suatu konstanta. Kemudian dirotasi kekiri beberapa bit yang kemudian ditambahkan ke salah satu dari a,b,c, atau d. Kemudian nilai a,b,c, dan d menggantikan nilai a,b,c, dan d. Kemudian dikeluarkan output yang merupakan gabungan dari a,b,c, dan d. Fungsi kompresi yang digunakan oleh algoritma md5 adalah sebagai berikut : a ← b + (( a + g ( b,c,d) + X[k] + T[i] <<< s ), dimana g adalah salah fungsi primitif F,G,H,I seperti dibawah ini :

dan operasi XOR, AND, OR, dan NOT adalah sebagai berikut : J. Proses MD5 dengan Berbagai Macam Masukan 1. Proses MD5 Dengan Masukan Berupa String Proses MD5 dengan masukan berupa string adalah proses yang masukannya berupa karakter yang dimasukan melalui keyboard. 2. Proses MD5 Dengan Masukan Berupa File Proses MD5 dengan masukan berupa file adalah proses MD5 yang masukannya memanggil file yang kenmudian dihitung berapa panjang bitnya,

• • • • •

Beberapa contoh diatas merupakan sedikit contoh pemanfaatan komputer di berbagai bidang pekerjaan. Masih banyak bidang lain yang belum disebutkan. Apresiasi terhadap dampak dari suatu produk baru tidak selalu harus dimilikinya pengetahuan

yang mendalam tentang produk tersebut. Pengamatan terhadap dampak dari komputer dimasyarakat dapat dilakukan dengan memanfaatkan tekhnologi disekitar masyarakat.