pengenalan mte 3114

24
Pengenalan Semua data dan maklumat yang bergerak dalam rangkaian mesti dipelihara dan dikawal utk memastikan integriti dan keselamatan. Integriti ~ merujuk kepada data yg diterima adalah sama dengan data yang dihantar. Keselamatan ~ merujuk kepada data yang dihantar selamat daripada intipan termasuk juga keselamatan data drp perbuatan yg tidak disengajakan. Keselamatan Data Data dan rangkaian perlu dikawal daripada: Pencapaian yg tidak sah ~ kawalan boleh dilakukan dengan menggunakan pengesahan (authentication) seperti kod pengenalpastian pengguna (user identification code) / password dan penyulitan (encryption) Virus ~ kod yg diperkenalkan secara haram yg boleh memusnahkan sistem.Data& rangkaian perlu diperlihara drp virus dengan menggunakan perkakasan dan perisian yg direkabentuk khusus utk tujuan tersebut.(firewall) Bencana ~ Data & rangkaian perlu dipeliharan drp bencana seperti kecurian, kebakaran, gempa bumi, banjir dll. Pemeliharaan boleh dilakukan dengan melakukan sandaran.

Upload: leslieting

Post on 02-Oct-2015

252 views

Category:

Documents


6 download

TRANSCRIPT

Pengenalan Semua data dan maklumat yang bergerak dalam rangkaian mesti dipelihara dan dikawal utk memastikan integriti dan keselamatan. Integriti ~ merujuk kepada data yg diterima adalah sama dengan data yang dihantar. Keselamatan ~ merujuk kepada data yang dihantar selamat daripada intipan termasuk juga keselamatan data drp perbuatan yg tidak disengajakan.Keselamatan DataData dan rangkaian perlu dikawal daripada: Pencapaian yg tidak sah ~ kawalan boleh dilakukan dengan menggunakan pengesahan (authentication) seperti kod pengenalpastian pengguna (user identification code) / password dan penyulitan (encryption) Virus ~ kod yg diperkenalkan secara haram yg boleh memusnahkansistem.Data& rangkaian perlu diperlihara drp virus dengan menggunakan perkakasan dan perisian yg direkabentuk khusus utk tujuan tersebut.(firewall) Bencana ~ Data & rangkaian perlu dipeliharan drp bencana seperti kecurian, kebakaran, gempa bumi, banjir dll. Pemeliharaan boleh dilakukan dengan melakukan sandaran.Pengesahan (Authentication) Pengesahan pengirim sesuatu mesej. Ia mengesahkan identiti pengguna yang akan mencapai sumber2 yg terdapat dalam komunikasi data. Pengesahan boleh dilakukan dengan menggunakan kata-laluan (password).Kata-laluan (Password) Bentuk keselamatan yg sering digunakan. Ia diperlukan oleh hos komputer atau peranti tertentu utk mengesahkan identity sebelum memasuki sesuatu sistem.Terdapat 3 kaedah utk pengesahan dengan menggunakan password: Sesuatu yg dimiliki (Something possessed) Sesuatu yg wujud (Something embodied) Sesuatu yg diketahui (Something known).Password ~ (something possessed) Sistem komputer memeriksa identiti melalui 2 cara: passwordSesuatu benda yg dipunyai utk skema pengenalpastian. Contoh: password (nombor pin) yg digunakan bersama2 dengan kad ATM atau kad pintar.Password ~ something embodied Melibatkan pemeriksaan ke atas pengguna utk ciri2 yg unik yg terdapat pada seseorang pengguna. Prosedur ini sesuai untuk sistem keselamatan yg ketat dimana ancaman ke atas sistem boleh menyebabkan akibat yg teruk kerana kosnya adalah tinggi. Contoh: pengenalpastian suara (voice recognition), cap jari (finger print), corak anak mata (retinal pattern), dan tandatangan digital (digital signature).Password ~ something known Dalam kaedah ini, dengan bertanyakan password, sistem komputer juga akan bertanyakan soalan yang bersangkutan dengan agen (pengguna). Contoh: soalan seperti tarikh lahir, nama ibu, nombor kad pengenalan dll.Jenis-jenis Password Kata-laluan yg dikeluarkan oleh pengguna (User-generated password) ~ pengguna mencipta password dengan sendiri. Kata-laluan yg dikeluarkan oleh komputer (Password Computer-generated password) ~ komputer mengeluarkan password secara rambang. Tunable password ~ kompromi antara kata-laluan yg dikeluarkan oleh pengguna dan komputer. Komputer memberi sebahagian password dan pengguna menggunakannya utk mencipta password baru.Penyulitan / Penyahsulitan (Encryption / Decryption) Salah satu kaedah yg praktikal utk memelihara data adalah dengan menukarkannya ke dalam bentuk rahsia di mana penerima yg sah sahaja dapat memahaminya. Penyulitan (Encryption) ~ pengirim menukarkan mesej asal ke bentuk rahsia dan menghantarkan ke penerima. Penyahsulitan (Decryption) ~ menterbalikkan kembali proses penyulitan supaya mesej ditukar kedalam bentuk yang asal.Proses Encryption / Decryption Pengirim menggunakan algorithma penyulitan dan kunci utk menukarkan data asal (plaintext) ke dalam bentuk data yg disulitkan (cipher text) Penerima menggunakan algorithma penyahsulitan dan kunci utk menukarkan cipher text kembali ke data asal (plaintext).Kaedah penyulitan dan penyahsulitan boleh dibahagikan kpd 2 kategori: Conventional (secret key / symmetric) Public key (asymmetric)Pengesahan kuasa (Authorization) Pengesahan kuasa (authorization) diperlukan untuk mengawal pencapaian sumber tertentu dalam sistem komputer. Pengesahan kuasa luaran merupakan kawalan pencapaian sistem komputer tersebut, manakala pengesahana kuasa dalaman merupakan kawalan pencapaian sumber yang dibekalkan oleh sistem. Perlaksanaan pengesahan kuasa hanya dapat dijalankan sekiranya terdapat sesuatu mekanisme pembuktian (authentication mechanism) yang berkesan.Pembuktian (Authentication)Pembuktian Luaran (External Authentication) Pembuktian luaran merupakan mekanisme yang menghalang pengguna yang tidak sah daripada log masuk kepada sistem tertentu. Biasanya, nama pengguna dan kata laluan digunakan sebagai mekanisme pengesahan. Namun, penyamaran (masquerading) mudah dilakukan sekiranya nama pengguna dan kata laluan terbocor. Mekanisme terkini termasuk kegunaan kad cerdik (smart card) serta kaedah biometrik seperti analisis suara, cap jari danretina.Namun, data yang dihantar daripada mesin lain melalui rangkaian mungkin diubah supaya menyamar seseorang pengguna yang sah. Virus, aturcara cecacing (worm), ataupun kuda Troy (Trojan horse) mungkin diterima oleh sistem komputer sebagai aturcara yang sah dan menyebabkan kerosakan data ataupun menahaskan (crash) sistem komputer tersebut. Protokol Pembuktian Rangkaian Kerberos dicipta untuk menghalang serangan rangkaian (network-based attacks) tersebut.(Fig. 14.3, pg 431, Nutt)Protokol Kerberos menganggapkan terdapatnya sistem pelayan (server) dan sistem pelanggan (client). Sistem pelanggan mencapai perkhidmatan pelayan melalui rangkaian yang tidak selamat (secure). Sesuatu pelayan pembuktian (authentication server) disediakan untuk tujuan mengesahkan segala pengguna yang ingin mencapai sistem pelayan. Pelayan pembuktian menjanakan tiket (ticket) yang mengandungi ID pelanggan (client ID) serta kekunci sidang (session key) yang disulitkan (encrypted) secara menggunakan kekunci pelayan (server key). Akibatnya hanya pelayan sah sahaja yang dapat menyahsulitkan tiket tersebut.Apabila sesuatu pelanggan ingin mencapai pelayan, ia akan meminta tauliah (credentials) untuk proses pelayan tersebut daripada pelayan pembuktian. Pelayan pembuktian akan menghantar tiket serta kekunci sidang kepada pelanggan selepas kedua-duanya disulitkan secara menggunakan kekunci pelanggan (client key).Pelanggan menyahsulitkan tiket dan kekunci sidang, kemudiannya menghantar tiket kepada pelayan. Pelayan akan menyahsulitkan tiket untuk mencapai ID pelanggan dan kekunci sidang sebenar. Kekunci sidang akan digunakan untuk melaksanakan penyulitan segala urusniaga (transactions) seterusnya.Pelayan pembuktian mesti dipercayai (trusted) oleh semua pihak supaya menjayakan protokol Kerberos tersebut. Seseorang penceroboh tidak dapat mencapai perkhidmatan pelayan tersebut sebab ia tidak mempunyai kekunci sidang. Secara umum, kekunci sidang akan dihapuskan selepas sidang urusniaga tersebut tamat.Pembuktian Dalaman (Internal Authentication) Pembuktian dalaman bertujuan menghalang proses seseorang pengguna sistem supaya tidak menyamar sebagai proses pengguna yang lain, contohnya proses sistem (system process). Proses pengguna tidak dibenarkan menukarkan pemilik (owner) secara sesuka-hati. Hanya proses akar (root process) yang diberikan hak menukarkan pemilik sesuatu sumber ataupun proses.Pengesahan Kuasa (Authorization)Pengesahan Kuasa Capaian Luaran (External Access Authorization) Biasanya setiap pengguna diberikan satu akaun pada sistem maklumat yang digunakan untuk mencapai data yang tersimpan dalam sistem tersebut. Setiap kali akaun itu digunakan, pengguna mestilah membekalkan nama pengguna (username) dan kata laluan supaya dapat mencapai suatu pemproses perintah (command processor). Aktiviti log masuk (login) itu tersimpan dalam log sistem (system log) supaya pentadbir sistem dapat mengetahui sesiapa yang telah mencapai sistem tersebut.Pengesahan Kuasa Capaian Dalaman (Internal Access Authorization) Pengesahan kuasa capaian dalaman (internel access authorization) digunakan untuk menentukan sama ada sesuatu sumber sistem boleh dicapai oleh pengguna tersebut. Terdapat berbagai masalah yang merupakan tumpuan pengesahan kuasa caiapan dalaman: Perkongsian parameter (parameter sharing): sekiranya sesuatu proses dapat mengubah nilai pemboleh ubah dalam proses lain tanpa kebenaran, maka dasar kegunaan sumber (resource use policy) akan terjejas. Pengurungan (confinement): sesuatu proses ingin menghadkan pencapaian sumber kawalannya supaya tidak dapat dicapai oleh proses yang tak berizin. Peruntukan hak (rights allocation): kebenaran pencapaian sesuatu sumber boleh diberi oleh sesuatu proses kepada proses yang lain. Namun, kebenaran yang diberi kepada proses kedua tidak seharusnya disalurkan kepada proses ketiga tanpa kebenaran dari proses asal. Kuda Troy (Trojan horse): sesuatu aturcara yang menggunakan hak yang lebih meluas yang dimiliki oleh proses lain untuk melakukan sesuatu tanpa disedari merupakan masalah kuda Troy.Model Perlindungan Sumber (Resource Protection Model) Umumnya, sistem perlindungan terdiri daripada bahagian aktif dan bahagian pasif. Bahagian aktif (active parts) merupakan proses ataupun untaian (thread) yang melakukan sesuatu untuk pengguna sistem. Bahagian pasif (passive parts) merupakan sumber yang disebut sebagai objek perlindungan (protection objects). Sesuatu proses mencapai objek mengikut hak yang diberi kepada proses tersebut. Hak yang diberi oleh sistem pengoperasian berubah berdasarkan tugas yang dijalankan oleh proses.Domain perlindungan(protection domain) merupakan hak yang dimiliki oleh proses pada masa terkini. Sesuatu subjek (subject) merupakan apa-apa yang sedang dilakukan oleh proses tersebut dalam domain perlindungan tertentu. Namun, objek perlindungan merangkumi bahagian pasif serta subjek-subjek yang terdapat dalam sistem tersebut.Sistem perlindungan (protection system) merupakan satu setobjek,subjek, danperaturan(rules) yang menetapkan polisi perlindungan. Ia mewakili pencapaian (accessibility) objek oleh subjek berdasarkankeadaan perlindungan(protection state) yang ditakrif untuk sistem tersebut. Setiap pencapaian objek X oleh subjek S akan disemak supaya mematuhi keadaan perlindungan. Keadaan perlindungan dalaman hanya dapat diubah melaluiperalihan keadaan(state transition) berdasarkan sesuatupolisi keselamatan luaran(external security policy).(Fig. 14.5, pg. 435, Nutt)Matrix Pencapaian (Access Matrix) Keadaan perlindungan dapat diwakili oleh sebuah matrix pencapaian. Terdapat satu baris (row) untuk setiap subjek dan lajur (column) untuk setiap objek. Tambahannya, setiap subjek S juga merupakan objek X sebab sesuatu proses mungkin dikawal daripada proses yang lain. Setiap unsur matrix A[S,X] merupakan set hak pencapaian (access rights) yang dimiliki oleh S kepada X.(Fig. 14.6, pg. 435, Nutt)Setiap pencapaian memerlukan langkah tersebut: Subjek S memulakan capaian jenis a kepada objek X Sistem perlindungan membuktikan (authenticate) S dan menjana (S, a, X) untuk S. Identiti S tidak boleh disamar sebab ia dijana oleh sistem. Pengawas (monitor) objek X merujuk kepada A[S,X] untuk menentukan sama ada a A[S,X]. Jika ya, pencapaian dibenarkan. Jika tidak, pencapaian ditolak.(Fig. 14.7, pg. 436, Fig. 14.8, pg. 437, Nutt)Model Sistem Perlindungan tersebut boleh digunakan untuk menyelesaikan berbagai masalah yang dikemukakan: Penyamaran (masquerading): Satu tandatangan (signature) yang tidak boleh dipalsukan (forged), (S, a, X) dijana supaya subjek S dapat melakukan capaian a ke atas X. Pengawas akan pastikan bahawa proses lain tidak dapat menyamarkan S sebab proses lain tidak mempunyai tandatangan yang betul. Pengurungan dan Peruntukan hak (confinement and rights allocation): Peruntukan hak boleh dikawal secara menghadkan pemindahan hak capaian (access rights transfer) dari satu proses ke proses yang lain. Namun, pengurungan mungkin gagal sekiranya sesuatu subjek (proses) yang mempunyai hak baca juga mempunyai ingatan (memory), sebab proses tersebut boleh menyalurkan maklumat kepada proses lain. Perkongsian parameter (parameter sharing): Penjaga get (gatekeeper) boleh dicipta oleh sesuatu subjek pemilik untuk menjaga objek yang dilindung. Semua pencapaian ke objek tersebut mesti melalui penjaga get supaya menjamin keselamatannya. Kuda Troy (Trojan horse): masalah ini sukar diselesaikan sebab satu set peraturan berdasarkan polisi tertentu yang menghalang kuda troy daripada mengamalkan hak proses lain tidak semestinya memenuhi keperluan polisi-polisi lain.Perlaksanaan Pengesahan Kuasa Dalaman Perlaksanaan sistem pengesahan kuasa dalaman yang berkesan dan tidak memerlukan pemprosesan yang berlebihan adalah penting. Sekiranya maklumat mesti selamat, maka kos pemprosesan mungkin tidak merupakan masalah, tetapi pencapaian sumber semasa perlaksanaan proses yang biasa harus dilakukan secepat mungkin supaya menjamin prestasi sistem tersebut.Domain PerlindunganSesuatu sistem boleh dibahagikan kepada beberapa domain perlindungan. Yang terasas sekali ialah dua domain, iaitu mod penyelia (supervisor mode) dan mod pengguna (user mode). Dalam sistem yang menggunakan reka bentuk gelang (ring architecture), terdapat berbagai gelang R0ke RNyang mempunyai hak pencapaian (access rights) yang semakin terhad. Proses sistem pengendalian dilakukan dalam gelang R0manakala proses pengguna dilakukan dalam beberapa gelang yang tertinggi sekali.Setiap kali pencapaian proses dalam gelang yang lebih rendah diperlukan, penjaga get digunakan untuk mengawas perlaksanaan panggilan tersebut. Penukaran domain berlaku setiap kali proses melintas gelang perlindungan.Matrix Pencapaian Matrix pencapaian biasanya merupakan matrix jarang (sparse matrix) sebab sesuatu proses hanya mencapai beberapa objek atau subjek sahaja. Oleh sebab itu, senarai (lists) digunakan untuk menyimpan unsur matrix tersebut. Sekiranya terdapat matrix yang padat (dense matrix), senarai tersebut akan menjadi sangat panjang.Senarai Kawalan Pencapaian (access control list) Setiap sumber dibekalkan dengan suatu senarai kawalan pencapaian. Sekiranya subjek serta cara pencapaian tertentu tidak terdapat pada senarai tersebut, maka sumber tidak boleh dicapai oleh subjek.(Fig. 14.12, pg. 445, Nutt)Kebolehan (capabilities) Sesuatu kebolehan merupakan nama sejagat (global name) yang unik untuk hak pencapaian sesuatu objek. Kebolehan itu boleh dilaksanakan sebagai tiket Kerberos, ataupun penjelasan pencapaian yang tetap objek tersebut. Nama sejagat itu membolehkan rujukan sesuatu objek dalam ruang alamat objek yang meluas. Tambahan, pemilikan kebolehan tersebut merupakan pengesahan kuasa pencapaian objek tersebut.Kebolehan mempunyai ciri tertentu: Nilai sesuatu kebolehan mestilah berasal daripada ruang alamat objek yang meluas Kebolehan mestilah unik dan tidak boleh digunakan semula selepas ia digunakan oleh sesuatu subjek Kebolehan mestilah berbeza dengan nama biasa seperti integer atau penundingPenyulitan (Encryption)Penyulitan merupakan cara mengubahkan maklumat daripada format teks nyata (clear text format) menjadi format teks sifer (cipher text) supaya disimpan atau dihantar melalui media yang tidak selamat. Fungsi penyulitan (encrypt) dan penyahsulitan (decrypt) dibekalkan supaya pengguna dapat menjana format yang diperlukan daripada formatasal.Tekssifer = penyulitan (kekunci, teks nyata)Teks nyata = penyahsulitan (kekunci, teks sifer)Penyulitan bersimetri (symmetric encryption) Penyulitan bersimetri menggunakan kekunci yang sama untuk penyulitan dan penyahsulitan. Terdapat masalah penukaran kekunci (key exchange) sebab kekunci penyahsulitan mestilah dihantar kepada penerimanya supaya ia dapat menyahsulitkan data yang diterima. Biasanya penukaran kekunci dilakukan melalui mekanisme yang berlainan daripada mekanisme hantaran data supaya ia selamat.Penyulitan tak bersimetri (asymmetric encryption) Cara penyulitan tak bersimetri menggunakan dua kekunci, satu yang digunakan untuk penyulitan dan yang lain untuk penyahsulitan. Kriptografi kekunci awam (public key cryptography) menggunakan kekunci awam (public key) yang boleh dihantar secara teks nyata kepada sesiapa yang ingin menghantar maklumat kepada penerima. Kekunci peribadi (private key) akan digunakan untuk menyahsulitkan maklumat tersebut. Pemilikan kekunci awam tidak membolehkan seseorang menyahsulitkan maklumat yang diterima, maka ia selamat.Pembuktian maklumat (data authentication) dapat dilakukan sekiranya penghantar menggunakan kekunci peribadinya untuk menyulitkan maklumat tersebut. Disebabkan kekunci awam dapat diperoleh oleh sesiapa, maka penerima boleh menggunakan kekunci awam tersebut untuk membuktikan bahawa maklumat yang diterima itu berasal dari penghantar tertentu. Penghantaran maklumat secara selamat dapat dilakukan apabila penghantar menyulitkan maklumat tersebut secara menggunakan kekunci sulit, dan kemudiannya menyulitkannya sekali lagi secara menggunakan kekunci awam penerima.

Kriptografi modern menggunakan gagasan dasar yang sama seperti kriptografi klasik (permutasi dan transposisi) tetapi penekanannya adalah berbeza. Pada kriptografi klasik, kriptografer menggunakan algoritma yang sederhana, yang memungkinkan cipherteks dapat dipecahkan dangan mudah (melalui penggunaan statistik, terkaan, intuisi, dsb). Algoritma kriptografi modern dibuat sedemikian kompleks sedemikian sehingga kriptanalis sangat sulit memecahkan cipherteks tanpa mengetahui kunci.Algoritma kriptografi modern umumnya beroperasi dalam mode bitdan mode karakter. Operasi dalam mode bit bererti semua data dan informasi (baik kunci, plainteks,atau cipherteks) dinyatakan dalam rangkaian (string) bit binary, 0 dan 1. Algoritma enkripsi dan dekripsi memproses semua data dan informasi dalam bentuk rangkaian bit. Rangkaian bit yang menyatakan plainteks dienkripsi menjadi cipherteks dalam bentuk rangkaian bit, demikian sebaliknya.Kategori Cipher Kunci-SimetriAlgoritma kunci-simetri mengacu pada metode enkripsi yang dalam hal ini pengirim maupun penerima memiliki kunci yang sama. Algoritma kunci-simetri modern beroperasi dalam mode bit dan dapat dikelompokkan menjadi dua kategori:1. Cipher aliran (stream cipher)Algoritma kiptografi beroperasi pada plainteks/cipherteks dalam bentuk bit tunggal, yang dalam hal ini rangkaian bit dienkripsikan/didekripsikan bit per bit. Cipher aliran mengenkripsi satu bit setiap kali.Algoritma-algoritma sandi kunci-simetrisBeberapa contoh algoritma yang menggunakan kunci simetri: Blowfish Twofish MARS IDEA 3DES (DES diaplikasikan 3 kali) AES (Advanced Encryption Standard, yang bernama asli rijndael) DES (Data Encryption Standard)Cipher blok(block cipher)Algoritma kriptografi beroperasi pada plainteks/cipherteks dalam bentuk blok bit, yang dalam hal ini rangkaian bit dibagi menjadi blok-blok bit yang panjangnya sudah ditentukan sebelumnya. Misalnya panjang blok adalah 64 bit, maka itu berarti algoritma enkripsi memerlukan 8 karakter setiap kali enkripsi (1 karakter = 8 bit dalam pengkodean ASCII). Cipher blok mengenkripsi satu blok bit setiap kali. Padacipherblok, rangkaian bit-bit plainteks dibagi menjadi blok-blok bit dengan panjang sama, biasanya 64 bit (tapi adakalanya lebih). Algoritma enkripsi menghasilkan blok cipherteks yang pada kebanyakan sistem kriptografi simetri berukuran sama dengan blok plainteks. Dengan blokcipher, blok plainteks yang sama akan dienkripsi menjadi blok cipherteks yang sama bila digunakan kunci yang sama pula. Ini berbeda dengancipheraliran dimana bit-bit plainteks yang sama akan dienkripsi menjadi bit-bit cipherteks yang berbeda setiap kali dienkripsi. Misalkan blok plainteks (P) yang berukuranmbit dinyatakan sebagai vektorP= (p1,p2, ,pm)yang dalam hal inipiadalah 0 atau 1 untuk i = 1, 2, ,m, dan blok cipherteks (C) adalahC= (c1,c2, ,cm)yang dalam hal iniciadalah 0 atau 1 untuk i = 1, 2, ,m.Bila plainteks dibagi menjadinbuah blok, barisan blok-blok plainteks dinyatakan sebagai(P1,P2, ,Pn)Untuk setiap blok plainteksPi, bit-bit penyusunnya dapat dinyatakan sebagai vektorPi= (pi1,pi2, ,pim) Enkripsi dan dekripsi dengan kunciKdinyatakan berturut-turut dengan persamaanEK(P) =Cuntuk enkripsi, danDK(C) =PFungsiEharuslah fungsi yang berkoresponden satu-ke-satu, sehinggaE-1=DSkema enkripsi dan dekripsi dengancipherblok digambarkan pada Gambar 1.Enkripsi:Dekripsi:Blok PlainteksPBlok CipherteksCAP= (p1,p2, ,pm)C= (c1,c2, ,cm)KunciKEKunciKDBlok CipherteksCBlok PlainteksPC= (c1,c2, ,cm)P= (p1,p2, ,pm)Block-CipherUntuk menambah kehandalan model algoritma sandi ini, dikembangkan pula beberapa tipe proses enkripsi, yaitu : ECB (Eectronic Code Book) CBC (Cipher Block Chaining) OFB (Output Feed Back) CFB (Cipher Feed Back)Fungsi Hash KriptografiFungsi hash Kriptografis adalah fungsi hash yang memiliki beberapa sifat keamanan tambahan sehingga dapat dipakai untuk tujuan keamanan data. Umumnya digunakan untuk keperluan autentikasi dan integritas data. Fungsi hash adalah fungsi yang secara efisien mengubah string input dengan panjang berhingga menjadi string output dengan panjang tetap yang disebut nilai hash.Sifat-Sifat Fungsi Hash Kriptografi Tahan preimej (Preimage resistant): bila diketahui nilai hash h maka sulit (secara komputasi tidak layak) untuk mendapatkan m dimana h = hash(m). Tahan preimej kedua (Second preimage resistant): bila diketahui input m1maka sulit mencari input m2(tidak sama dengan m1) yang menyebabkan hash(m1) = hash(m2). Tahan tumbukan (Collision-resistant): sulit mencari dua input berbeda m1dan m2yang menyebabkan hash(m1) = hash(m2)Algoritma-Algoritma Fungsi Hash KriptografiBeberapa contoh algoritma fungsi hash Kriptografi:1. MD42. MD53. SHA-04. SHA-15. SHA-256Contoh algoritma Penggunaan Kriptografi modernl DES = Data Encryption Standard, adalah standar enkripsi standar. algoritma dikembangkan di IBM di bawah kepemimpinan W.L Tuchman (1972).l AES = Advanced Encyption Standard, menggunakan algoritma kriptografi simetri berbasis chiper blokl RSA dibuat oleh 3 orang peneliti dari MIT pada tahun 1976 yaitu : Ron (R)ivest, Adi (S)hamir, Leonard (A)dleman.Kriptografi dalam kehidupan sehari-haril Smart Cardl ATMl Cell-PhoneSerangan terhadap KriptografiPendahuluan Keseluruhanpointdari kriptografi adalah menjaga kerahasiaan plainteks atau kunci (atau keduanya) dari penyadap (eavesdropper) atau kriptanalis (cryptanalyst). Kriptanalis berusaha memecahkan cipherteks dengan suatu serangan terhadap sistem kriptografi.Serangan (attack) Serangan: setiap usaha (attempt) atau percubaan yang dilakukan oleh kriptanalis untuk menemukan kunci atau menemukan plainteks dari cipherteksnya. Asumsi: kriptanalis mengetahui algoritma kriptografi yang digunakan Prinsip Kerckhoff: Semua algoritma kriptografi harus publik; hanya kunci yang rahsia. Satu-satunya keamanan terletak pada kunci!Jenis-jenis Seranganl Berdasarkan keterlibatan penyerang dalam komunikasi 1. Serangan pasif (passive attack)- penyerang tidak terlibat dalam komunikasi antara pengirim dan penerima- penyerang hanya melakukan penyadapan untuk memperoleh data atau informasi sebanyak-banyaknya2. Serangan Active (active attack)-penyerang mengintervensi komunikasi dan ikut mempengaruhi sistem untuk keuntungan dirinya penyerang mengubah aliran pesan seperti: menghapus sebagian cipherteks, mengubah cipherteks, menyisipkan potongan cipherteks palsu, me-replaypesan lama, mengubah informasi yang tersimpan, dsbJenis-jenis Serangan Berdasarkan teknik yang digunakan untuk menemukan kunci:1. Exhaustive attack/brute force attack Mengungkap plainteks/kunci dengan mencoba semua kemungkinan kunci. Pasti berhasil menemukan kunci jika tersedia waktu yang cukup2. Analytical attack Menganalisis kelemahan algoritma kriptografi untuk mengurangi kemungkinan kunci yang tidak mungkin ada. Caranya: memecahkan persamaan-persamaan matematika (yang diperoleh dari definisi suatu algoritma kriptografi) yang mengandung peubah-peubah yang merepresentasikan plainteks atau kunci. Metodeanalytical attackbiasanya lebih cepat menemukan kunci dibandingkan denganexhaustive attack. Solusi: kriptografer harus membuat algoritma kriptografi yang kompleks