tugas jaringan komputer

Upload: artana-mank

Post on 29-Oct-2015

49 views

Category:

Documents


0 download

TRANSCRIPT

T ia persyaratan keamanan informasi dalam sebuah organisasi telah mengalamidua perubahan besar dalam beberapa dekade terakhir. Sebelum meluaspenggunaan peralatan pengolahan data, keamanan informasi dirasakanberharga bagi organisasi diberikan terutama oleh fisik dan administrasiberarti, sebuah contoh dari mantan adalah penggunaan lemari arsip kasar dengan kombinasilock untuk menyimpan dokumen sensitif, sebuah contoh yang terakhir adalah personilprosedur pemeriksaan yang digunakan selama proses perekrutan.Dengan diperkenalkannya komputer, kebutuhan alat otomatis untuk melindungifile dan informasi lain yang tersimpan pada komputer menjadi jelas, ini adalahterutama kasus untuk sistem bersama, seperti sistem time-sharing, dan kebutuhanbahkan lebih akut untuk sistem yang dapat diakses melalui telepon umum atau datajaringan. Nama generik untuk pengumpulan alat yang dirancang untuk melindungi data danuntuk menggagalkan hacker adalah keamanan komputer. Meskipun ini adalah topik penting,di luar cakupan buku ini dan akan ditangani hanya sebentar.Kedua perubahan besar bahwa keamanan yang terkena adalah pengenalan didistribusikansistem dan penggunaan jaringan dan fasilitas komunikasi untuk membawadata antara pengguna terminal dan komputer dan antara komputer dan komputer.Langkah-langkah keamanan jaringan yang diperlukan untuk melindungi data selama transmisi mereka,dan untuk menjamin bahwa transmisi data otentik.Teknologi penting yang mendasari hampir semua jaringan komputer otomatis danaplikasi keamanan enkripsi. Dua pendekatan dasar yang di gunakan:enkripsi konvensional, juga dikenal sebagai enkripsi simetris, dan kunci publikenkripsi, juga dikenal sebagai enkripsi asimetris. Seperti kita melihat berbagaipendekatan untuk keamanan jaringan, kedua jenis enkripsi akan dieksplorasi.Bab ini dimulai dengan gambaran dari persyaratan untuk keamanan jaringan.Selanjutnya, kita melihat enkripsi konvensional dan penggunaannya dalam memberikan privasi, hal ini diikutidengan diskusi dari otentikasi pesan. Kami kemudian melihat penggunaan publickeyenkripsi dan tanda tangan digital. Bab ini ditutup dengan pemeriksaanfitur keamanan di IPv4 dan IPv6

8.1persyaratan keamanan dan seranganUntuk dapat memahami jenis-jenis ancaman yang ada untuk keamanan, kita perlumemiliki definisi persyaratan keamanan. Keamanan komputer dan jaringanmengatasi tiga persyaratan:* Kerahasiaan. Mensyaratkan bahwa informasi dalam sistem komputer hanya dapat diaksesuntuk membaca oleh pihak berwenang. Jenis akses meliputi pencetakan, menampilkan,dan bentuk lain dari pengungkapan, termasuk hanya mengungkapkan keberadaansuatu objek.Integritas. Mengharuskan aset sistem komputer hanya dapat dimodifikasi olehresmi pihak. Modifikasi termasuk menulis, mengubah, mengubah status,menghapus, dan menciptakan.Ketersediaan. Mengharuskan aset sistem komputer yang tersedia untuk resmipihak.

Jenis-jenis serangan terhadap keamanan sistem komputer atau jaringan yang paling dicirikandengan melihat fungsi dari sistem komputer memberikan informasi.Secara umum, ada aliran informasi dari sumber, seperti file atau wilayahmemori utama, ke tujuan, seperti file lain atau pengguna. Ini adalah aliran normaldigambarkan pada Gambar 18.la. Sisa bagian gambar menunjukkan empat berikutkategori umum serangan:c Gangguan. Aset sistem ini hancur atau menjadi tidak tersedia atautidak dapat digunakan. Ini adalah serangan terhadap ketersediaan. Contohnya termasuk penghancuranbagian dari perangkat keras, seperti hard disk, pemotongan jalur komunikasi, ataupenghentian sistem manajemen file.e Interception. Sebuah keuntungan pihak yang tidak berwenang akses ke aset. Ini adalah seranganpada kerahasiaan. Para pihak yang tidak berwenang bisa menjadi orang, program, ataukomputer. Contohnya termasuk penyadapan untuk menangkap data dalam jaringan, danmenyalin sah file atau program.c Modifikasi. Yang tidak berhak tidak hanya keuntungan akses tapi tampersdengan aset. Ini adalah serangan terhadap integritas. Contohnya termasuk mengubah nilaidalam file data, mengubah program sehingga melakukan berbeda, dan memodifikasiisi pesan yang ditransmisikan dalam jaringan.Fabrikasi. Sebuah sisipan pihak yang tidak berwenang benda palsu ke dalam sistem.Ini adalah serangan terhadap keaslian. Contohnya termasuk penyisipan palsupesan dalam jaringan atau penambahan catatan ke file.Sebuah kategorisasi yang berguna serangan ini adalah dalam hal serangan pasif danserangan aktif

Serangan PasifSerangan pasif berarti menguping, atau pemantauan, transmisi. ItuTujuan dari lawan adalah untuk mendapatkan informasi yang sedang dikirim. Dua jenisserangan yang terlibat di sini: isi rilis-of-pesan dan analisis lalu lintas.Isi rilis-of-pesan mudah dipahami. Sebuah percakapan telepon,pesan surat elektronik, file ditransfer mungkin berisi sensitif atau rahasiainformasi. Kami ingin mencegah lawan dari belajarisi transmisi ini.Kedua serangan pasif, analisis tralffic, lebih halus. Misalkan kita punyacara menutupi isi pesan atau informasi lalu lintas lain sehingga lawan,bahkan jika mereka menangkap pesan, tidak bisa mengekstrak informasi daripesan. Teknik umum untuk isi masking adalah enkripsi. Jika kita memilikiperlindungan enkripsi di tempat, lawan mungkin masih dapat mengamati polapesan-pesan ini. Lawan bisa menentukan lokasi dan identitasberkomunikasi host dan bisa mengamati frekuensi dan panjang pesan yangdipertukarkan. Informasi ini mungkin berguna dalam menebak sifat cornrnunication yangyang mengambil tempat.Serangan pasif sangat sulit dideteksi karena mereka tidak melibatkanperubahan data. Namun, layak untuk mencegah keberhasilan serangan ini.18,2 / PRIVASI DENGAN KONVENSIONAL ENCRYPTION 627Jadi, penekanan dalam berurusan dengan serangan pasif pada pencegahan daripadadeteksi.Serangan AktifKategori utama kedua adalah serangan aktif. Serangan-serangan ini melibatkan beberapamodifikasi aliran data atau penciptaan aliran palsu dan dapat dibagimenjadi empat kategori: masquerade, replay, modifikasi pesan, danpenolakan layanan.Sebuah masquerade terjadi ketika satu entitas berpura-pura menjadi entitas yang berbeda. Amenyamar serangan biasanya mencakup salah satu bentuk lain dari serangan aktif. UntukMisalnya, urutan otentikasi dapat ditangkap dan diputar setelah validurutan otentikasi telah terjadi, sehingga memungkinkan suatu entitas berwenang denganbeberapa hak untuk mendapatkan hak tambahan dengan menyamar sebagai entitas yang memiliki merekahak istimewa.Replay melibatkan penangkapan pasif unit data dan retransmission selanjutnyauntuk menghasilkan efek yang tidak sah.Modifikasi pesan berarti bahwa beberapa bagian dari pesan yang sahdiubah, atau bahwa pesan yang ditunda atau mengatur kembali, untuk menghasilkan yang tidak sahefek. Misalnya, makna pesan "Biarkan John Smith untuk membaca rahasiarekening file "dimodifikasi berarti" Biarkan Fred Brown untuk membaca file rahasiarekening. "Penolakan layanan mencegah atau menghambat penggunaan normal atau pengelolaanfasilitas komunikasi. Serangan ini mungkin memiliki target tertentu, misalnya,entitas dapat menekan semua pesan diarahkan ke tujuan tertentu (misalnya, keamananjasa audit). Bentuk lain dari layanan penolakan adalah gangguan seluruh jaringan,baik dengan menonaktifkan jaringan atau dengan overloading dengan pesan agarmenurunkan kinerja.Serangan aktif menyajikan karakteristik kebalikan dari serangan pasif. SedangkanSerangan pasif sulit untuk mendeteksi, langkah-langkah yang tersedia untuk mencegah keberhasilan mereka.Di sisi lain, sangat sulit untuk mencegah serangan aktif benar-benar, sepertiuntuk melakukannya akan membutuhkan perlindungan fisik dari semua fasilitas komunikasi dan jalursetiap saat. Sebaliknya, tujuannya adalah untuk mendeteksi mereka dan untuk pulih dari gangguan apapunatau keterlambatan yang disebabkan oleh mereka. Karena deteksi memiliki efek jera, itu mungkin jugakontribusi untuk pencegahan.8.12PRIVASI DENGAN ENKRIPSI KONVENSIONALUniversal teknik untuk memberikan privasi untuk data yang dikirimkan konvensionalenkripsi. Bagian ini terlihat pertama di konsep dasar enkripsi konvensional,diikuti dengan diskusi dari dua paling populer teknik enkripsi konvensional:DES dan tiga DES. Kami kemudian memeriksa penerapan teknik iniuntuk mencapai privasi.Enkripsi KonvensionalGambar 18.3 mengilustrasikan proses enkripsi konvensional. Asli dimengertipesan, disebut sebagai plaintext, diubah menjadi omong kosong tampaknya acak,disebut sebagai ciphertext. Proses enkripsi terdiri dari sebuah algoritma dan kunci.Kuncinya adalah nilai independen dari plaintext yang mengontrol algoritma. Itualgoritma akan menghasilkan output yang berbeda tergantung pada kunci tertentu yang digunakanpada saat itu. Mengubah kunci perubahan output dari algoritma.Setelah ciphertext yang dihasilkan, itu ditularkan. Setelah penerimaan, ciphertextdapat diubah kembali ke plaintext asli dengan menggunakan algoritma dekripsidan tombol yang sama yang digunakan untuk enkripsi.Keamanan enkripsi konvensional tergantung pada beberapa faktor. Pertama,algoritma enkripsi harus cukup kuat sehingga tidak praktis untuk mendekripsipesan atas dasar ciphertext saja. Selain itu, keamanan konvensionalenkripsi tergantung pada kerahasiaan kunci, bukan pada kerahasiaan algoritma.Artinya, diasumsikan bahwa tidak praktis untuk mendekripsi pesan atas dasardari ciphertext pl ~ rs pengetahuan tentang algoritma encryptionldecryption. Di lainkata-kata, kita tidak perlu untuk menjaga rahasia algoritma, kita hanya perlu menjaga kuncirahasia.Fitur ini enkripsi konvensional adalah apa yang membuatnya layak untuk luasgunakan. Fakta bahwa algoritma tidak perlu disimpan berarti rahasia bahwa produsendapat dan telah mengembangkan chip murah implementasi enkripsi dataalgoritma. Chip ini tersedia secara luas dan dimasukkan ke dalam beberapaproduk. Dengan menggunakan enkripsi konvensional, masalah keamanan utama adalahmenjaga kerahasiaan kunci.Mari kita lihat lebih dekat pada unsur-unsur penting dari enkripsi konvensionalskema, sekali lagi menggunakan Gambar 18.3. Ada beberapa sumber untuk pesan, yangCryptanalyst I &SumberX:SumberGAMBAR 18.3 Model kriptografi konvensional.Tujuan18,2 / PRIVASI DENGAN KONVENSIONAL ENCRYPTION 629menghasilkan pesan berikut di plaintext: X = [XI, X2,. . ., XM]. Unsur-unsur MX adalah huruf alfabet dalam beberapa terbatas. Secara tradisional, alfabet biasanya terdiridari huruf kapital 26. Saat ini, abjad biner (0, 1) biasanya digunakan. Untukenkripsi, kunci dari bentuk K = [K1, K2,. . ., KJ] dihasilkan. Jika kunci dibuatpada sumber pesan, maka harus juga diberikan ke tujuan denganmenggunakan beberapa saluran aman. Atau, pihak ketiga bisa menghasilkan kuncidan aman mengirimkannya ke kedua sumber dan tujuan.Dengan X pesan dan kunci enkripsi K sebagai input, algoritma enkripsi,atau encrypter, membentuk ciphertext Y = [Yl, Y2,. . ., YN] W. e dapat menulis ini sebagaiNotasi ini menunjukkan bahwa Y diproduksi dengan menggunakan algoritma enkripsi E sebagaifungsi plaintext X, dengan fungsi tertentu ditentukan oleh nilaikunci K.Penerima yang dituju, dalam kepemilikan kunci, mampu membalikkan transformasi:Lawan, mengamati Y tetapi tidak memiliki akses ke K atau X, harus berusahamemulihkan X atau K atau X dan K. Hal ini diasumsikan bahwa lawan memang memiliki pengetahuandari enkripsi (E) dan dekripsi (D) algoritma. Jika lawan yang tertarikhanya kekacauan ini khusus $ ge, maka fokus dari upaya tersebut adalah untuk memulihkan Xdengan menghasilkan plaintext perkiraan X. Seringkali, bagaimanapun, lawan yang tertarik dalammampu membaca pesan masa depan juga, i ~ hal ini merupakan usaha untukmemulihkan K dengan menghasilkan plaintext perkiraan K.Algoritma EnkripsiYang paling umum digunakan algoritma enkripsi konvensional cipher blok. Ablock cipher memproses masukan plaintext dalam blok berukuran tetap, dan menghasilkan blokciphertext dengan ukuran yang sama untuk setiap blok plaintext. Dua yang paling penting konvensionalalgoritma, yang keduanya cipher blok, adalah DES dan Triple DES.Data Encryption Standard (DES)Skema enkripsi yang paling banyak digunakan adalah didefinisikan dalam standar enkripsi data(DES) yang diadopsi pada tahun 1977 oleh National Bureau of Standards, sekarang NasionalInstitut Standar dan Teknologi (NIST), sebagai Federal Information ProcessingStandard 46 (FIPS PUB 46). Pada tahun 1994, NIST "menegaskan" DES untuk digunakan federal untuklima tahun [NIST94]; NIST merekomendasikan penggunaan DES untuk aplikasiselain perlindungan informasi rahasia.Keseluruhan skema enkripsi DES diilustrasikan pada Gambar 18.4. Sepertiskema enkripsi, ada dua input ke fungsi enkripsi: plaintextakan dienkripsi dan kuncinya. Dalam kasus ini, plaintext harus 64 bit panjang,dan kuncinya adalah 56 bit panjangnyaPengolahan plaintext berlangsung dalam tiga tahap. Pertama, 64-bitplaintext melewati sebuah permutasi awal (IP) yang mengatur ulang bit untuk menghasilkaninput permuted. IP ini diikuti oleh fase yang terdiri dari 16 iterasidari fungsi yang sama. Output dari (16) iterasi terakhir terdiri dari 64 bit yangadalah fungsi dari input plaintext dan kunci. Kiri dan kanan bagian dari outputtertukar untuk menghasilkan preoutput tersebut. Akhirnya, preoutput dilewatkan melaluipermutasi (IP-l) yang merupakan kebalikan dari fungsi permutasi awal, dalam rangkauntuk menghasilkan ciphertext 64-bit.Sebelah kanan bagian Gambar 18.4 menunjukkan cara di mana kunci 56-bitdigunakan. Awalnya, kuncinya adalah melewati fungsi permutasi. Kemudian, untuk masing-masing16 iterasi, subkunci (K;) diproduksi oleh kombinasi dari pergeseran melingkar kiridan permutasi. Fungsi permutasi adalah sama untuk setiap iterasi, tetapisubkey yang berbeda diproduksi karena berulang pergeseran bit-bit kunci.

Gambar 18.5 meneliti lebih dekat algoritma untuk iterasi tunggal. Itu64-bit permutasi masukan melewati 16 iterasi, menghasilkan perantaraNilai 64-bit pada akhir setiap iterasi. Kiri dan kanan setengah dari masing-masing 64-bitnilai tengah diperlakukan sebagai jumlah 32-bit yang terpisah, berlabel L (kiri) dan R(Kanan). Keseluruhan pengolahan di setiap iterasi dapat diringkas sebagai berikutrumus:Kmana CI3 menunjukkan fungsi XOR bitwise.Dengan demikian, output kiri iterasi (L,) hanya sama dengan kananinput ke iterasi yang (Rip,). Hak-tangan keluaran (R ;) adalah eksklusif-atau L,,dan fungsi f kompleks Ri_l dan Ki. Fungsi ini kompleks melibatkan kedua permutasidan operasi substitusi. Operasi substitusi, direpresentasikan sebagaitabel yang disebut "S-box," hanya memetakan setiap kombinasi dari 48 bit masukan ke tertentuPola 32-bit.Kembali ke Gambar 18.4, kita melihat bahwa kunci 56-bit yang digunakan sebagai input untuk algoritmapertama kali mengalami permutasi. The dihasilkan kunci 56-bit ini kemudian diperlakukan sebagaidua kuantitas 28-bit, berlabel C, dan Do. Pada setiap iterasi, C dan D secara terpisahmengalami pergeseran melingkar kiri, atau rotasi, 1 atau 2 bit. Nilai-nilai bergeser melayaniSayaPerrnutation / kontraksi(Pilihan permuted 2)632 BAB 18 / NETWORK SECURITYsebagai masukan untuk iterasi berikutnya. Mereka juga melayani sebagai masukan untuk fungsi permutasi lain,yang menghasilkan output 48-bit yang berfungsi sebagai masukan untuk fungsi (RCL, Ki).Proses dekripsi dengan DES pada dasarnya sama dengan enkripsiproses. Aturannya adalah sebagai berikut: Gunakan ciphertext sebagai masukan untuk algoritma DES,tetapi gunakan tombol Ki dalam urutan terbalik. Artinya, gunakan K16 pada iterasi pertama, K15 padaiterasi kedua, dan seterusnya sampai K1 digunakan pada iterasi ke-16 dan terakhir.Kekuatan DESSejak adopsi sebagai standar federal, ada kekhawatiran tentangtingkat keamanan yang diberikan oleh DES. Keprihatinan ini, oleh dan besar, terbagi dalam duadaerah: sifat dari algoritma dan ukuran kunci.Selama bertahun-tahun, perhatian lebih penting adalah kemungkinan pemanfaatankarakteristik dari algoritma DES untuk melakukan kriptanalisis. Fokus perhatiantelah di delapan meja substitusi, atau S-box, yang digunakan dalam setiap iterasi.Karena kriteria desain kotak-kotak ini, dan memang untuk seluruh algoritma,belum pernah dipublikasikan, ada kecurigaan bahwa kotak yangdibangun sedemikian rupa sehingga cryptanalysis adalah mungkin bagi lawan yang tahukelemahan dalam S-box. Penegasan ini menggiurkan, dan selama bertahun-tahunjumlah keteraturan dan perilaku tak terduga dari S-box telah ditemukan.Meskipun masalah ini, tidak ada yang sejauh ini berhasil menemukan seharusnyakelemahan fatal dalam S-box. Memang, karena kemajuan dalam teknik cryptanalytictelah terjadi, kekuatan yang mendasari algoritma DES telah menjadi lebihjelas. Pada tulisan ini, tidak ada metode serangan praktis untuk DES telah diterbitkan.Mengingat bahwa algoritma telah bertahan bertahun-tahun pengawasan intensif tanpa cedera,itu mungkin aman untuk mengatakan bahwa DES adalah salah satu algoritma enkripsi terkuat yang pernahdirancang.Perhatian yang lebih serius, hari ini, adalah ukuran kunci. Dengan panjang kunci 56 bit,ada 2J6 kemungkinan kunci, yaitu sekitar 7,6 X 1016 kunci. Dengan demikian, padawajah itu, serangan brute-force muncul praktis. Dengan asumsi bahwa rata-rata setengahruang utama harus dicari, sebuah mesin tunggal melakukan satu enkripsi DESper mikrodetik akan mengambil lebih dari seribu tahun untuk memecahkan sandi itu.Namun, asumsi satu enkripsi per mikrodetik adalah terlalu konservatif.Sejauh tahun 1977, Diffie dan Hellman, penemu kunci publikenkripsi, mendalilkan bahwa teknologi ada untuk membangun sebuah mesin paralel dengan1 juta perangkat enkripsi, masing-masing bisa melakukan satu enkripsi permikrodetik. Para penulis memperkirakan bahwa biaya akan menjadi sekitar $ 20 juta1977 dolar.Yang paling ketat analisis terbaru dari masalah itu dilakukan oleh Wiener[WIEN93] dan didasarkan pada serangan plaintext dikenal. Artinya, diasumsikan bahwapenyerang memiliki setidaknya (plaintext, ciphertext) satu pasangan. Wiener membutuhkan perawatan untuk memberikanrincian desain. Mengutip makalahnya,Ada banyak klaim diverifikasi tentang seberapa cepat kunci DESruang dapat dicari. Untuk menghindari menambahkan ke daftar ini klaim dipertanyakan, besarkesepakatan detail dalam desain mesin pencarian kunci termasuk dalam lampiran.Karya rinci dilakukan untuk mendapatkan penilaian yang akurat tentang biayamesin dan waktu yang dibutuhkan untuk menemukan kunci DES. Tidak ada rencana untuk benar-benarmembangun mesin tersebut.18,2 / PRIVASI DENGAN KONVENSIONAL ENCRYPTION 633Wiener melaporkan pada desain chip yang menggunakan teknik pipelined untukmencapai tingkat kunci pencarian dari 50 juta kunci per detik. llsing biaya tahun 1993, iamerancang sebuah modul yang biaya $ 100.000 dan berisi 5.760 chip kunci pencarian. DenganSelain itu, Wiener memperkirakan biaya pembangunan satu kali sekitar $ 500.000.Desain Wiener merupakan puncak dari tahun kekhawatiran tentangkeamanan DES dan mungkin dalam retrospeksi telah titik balik. Pada saattulisan ini, masih tampak masuk akal untuk mengandalkan DES untuk pribadi dan komersialaplikasi. Tapi waktunya telah datang untuk menyelidiki alternatif untuk konvensionalenkripsi. Salah satu kandidat yang paling menjanjikan dan banyak digunakan untuk menggantikanDES adalah tiga DES.desain, hasil sebagai berikut diperoleh:Triple DESKunci Pencarian Mesin Satuan Biaya$ 100.000$ 1.000.000$ IO, OOO, OOOTriple DES pertama kali diusulkan oleh Tuchman [TUCH79], dan pertama kali standar untukdigunakan dalam aplikasi keuangan [ANSI85]. Triple DES menggunakan dua kunci dan tiga eksekusidari algoritma DES (Gambar 18.6). Fungsi mengikuti mengenkripsi-decryptencrypt(EDE) urutan:Diharapkan Cari Waktu35 jam3,5 jam21 menitTidak ada signifikansi kriptografi untuk penggunaan dekripsi untuk keduapanggung. Satu-satunya keuntungan adalah bahwa hal itu memungkinkan pengguna tiga DES untuk mendekripsi data yangdienkripsi oleh pengguna yang lebih tua, tunggal DES:Meskipun hanya dua tombol yang digunakan, tiga contoh dari algoritma DESdiperlukan. Ternyata ada teknik sederhana, dikenal sebagai memenuhi-in-the-EnkripsiPlaintext-DekripsiGAMBAR 18.6 Triple DES.634 BAB 18 / NETWORK SECURITYserangan tengah, yang akan mengurangi sistem DES ganda dengan dua kunci untuk relatifkekuatan biasa tunggal DES. Dengan tiga iterasi dari fungsi DES, yangpanjang kunci efektif adalah 112 bit.Lokasi Enkripsi PerangkatYang paling kuat, dan paling umum, pendekatan untuk melawan ancaman terhadap jaringankeamanan enkripsi. Dalam menggunakan enkripsi kita perlu memutuskan apa untuk mengenkripsidan di mana gigi enkripsi harus ditempatkan. Seperti Gambar 18.7 menunjukkan, adadua alternatif mendasar: link enkripsi dan enkripsi end-to-end.Dengan enkripsi link, setiap link komunikasi rentan dilengkapi padakedua ujungnya dengan perangkat enkripsi. Jadi, semua lalu lintas selama semua link komunikasidijamin. Meskipun ini membutuhkan banyak perangkat enkripsi dalam jaringan besar,nilai dari pendekatan ini adalah jelas. Namun, salah satu kelemahan dari pendekatan ini adalah bahwapesan harus didekripsi setiap kali memasuki packet switch, ini diperlukankarena switch harus membaca alamat (nomor virtual circuit) dalam paketsundulan untuk rute paket. Jadi. pesan rentan pada setiap switch.Jika ini adalah jaringan packet-switching publik, pengguna tidak memiliki kontrol atas keamanandari node.Dengan enkripsi end-to-end, proses enkripsi dilakukan pada duasistem akhir. Sumber host, atau terminal, mengenkripsi data, yang, terenkripsibentuk, kemudian ditransmisikan tidak berubah di seluruh jaringan ke terminal tujuanatau host. Tujuannya berbagi kunci dengan sumber dan sehingga dapat mendekripsiLEGEND0 = End-to-end perangkat enkripsi0 = Tautan perangkat enkripsiPSN = Tautan perangkat enkripsiGAMBAR 18.7 Enkripsi di jaringan packet-switching.18,2 / PRIVASI DENGAN KONVENSIONAL ENCRYPTION 635data. Pendekatan ini tampaknya akan mengamankan transmisi terhadap serangan padaLink jaringan atau switch. Ada, bagaimanapun, masih titik lemah.Pertimbangkan situasi berikut. Sebuah host terhubung ke sebuah X.25 packet-switchingjaringan, membuat sebuah sirkuit virtual ke host lain, dan siap untuk mentransfer data kebahwa host lain menggunakan enkripsi end-to-end. Data yang ditransmisikan melalui jaringan tersebutdalam bentuk paket, terdiri dari sebuah header dan beberapa data pengguna. Bagian apasetiap paket akan host mengenkripsi? Misalkan host mengenkripsi seluruhpaket, termasuk header. Ini tidak akan bekerja karena, ingat, hanya yang lainhost dapat melakukan dekripsi. Paket-switching node akan menerimapaket dienkripsi dan tidak dapat membaca header. Oleh karena itu, tidak akan mampurute paket! Oleh karena itu, tuan rumah hanya dapat mengenkripsi bagian data penggunapaket dan harus meninggalkan header di jelas, sehingga dapat dibaca olehjaringan.Jadi, dengan enkripsi end-to-end, data pengguna yang aman, namun lalu lintasPola ini tidak, karena header paket yang ditransmisikan dalam jelas. Untuk mencapai yang lebih besarkeamanan, baik hubungan dan enkripsi end-to-end yang diperlukan, seperti yang ditunjukkan pada Gambar 18.7.Untuk meringkas, ketika kedua bentuk dipekerjakan, tuan rumah mengenkripsi data penggunaBagian dari paket menggunakan kunci enkripsi end-to-end. Seluruh paket kemudiandienkripsi menggunakan kunci link-enkripsi. Sebagai paket melintasi jaringan, masing-masingsaklar mendekripsi paket menggunakan kunci link-enkripsi untuk membaca headerdan kemudian mengenkripsi seluruh paket lagi sehingga untuk mengirimkannya pada link berikutnya. Sekarangseluruh paket aman, kecuali untuk waktu yang paket sebenarnya dimemori dari packet switch, pada saat header paket di jelas.Distribusi kunciUntuk enkripsi konvensional untuk bekerja, kedua belah pihak dalam pertukaran harus memilikitombol yang sama, dan kunci yang harus dilindungi dari akses oleh orang lain. Selanjutnya, seringperubahan penting biasanya diinginkan untuk membatasi jumlah data yang dikompromikan jikapenyerang belajar kuncinya. Oleh karena itu, kekuatan dari setiap sistem kriptografi terletakdengan teknik distribusi kunci, sebuah istilah yang mengacu pada cara memberikankunci untuk dua pihak yang ingin bertukar data tanpa membiarkan orang lain untuk melihat kunci.Distribusi kunci dapat dicapai dalam beberapa cara. Untuk dua partai A dan B1. Sebuah kunci dapat dipilih oleh A dan fisik dikirim ke B.2. Pihak ketiga bisa pilih tombol fisik dan mengirimkannya ke A dan B.3. Jika A dan B sebelumnya dan baru-baru ini menggunakan kunci, salah satu pihak bisa mengirimkankunci baru ke yang lain, dienkripsi menggunakan kunci tua.4. Jika A dan B masing-masing memiliki koneksi terenkripsi ke pihak ketiga C, C bisamemberikan kunci pada link terenkripsi ke A dan B.Opsi 1 dan 2 panggilan untuk pengiriman manual kunci, untuk enkripsi link, ini adalahpersyaratan yang masuk akal, karena setiap perangkat enkripsi link hanya akan bertukarData dengan mitranya di ujung lain dari link. Namun, untuk end-to-endenkripsi, pengiriman manual canggung. Dalam sistem terdistribusi, setiap host yang diberikan atauterminal mungkin perlu untuk terlibat dalam pertukaran dengan penghuni lainnya dan terminaldari waktu ke waktu. Dengan demikian, setiap perangkat membutuhkan jumlah kunci, disediakan secara dinamis. ItuMasalahnya sangat sulit dilakukan di sistem terdistribusi wide-area.636 BAB 18 / NETWORK SECURITYOpsi 3 kemungkinan baik untuk hubungan enkripsi atau enkripsi end-to-end,tetapi jika seorang penyerang pernah berhasil memperoleh akses ke salah satu kunci, maka semua berikutnyakunci yang terungkap. Bahkan jika perubahan sering dibuat ke tombol link-enkripsi,ini harus dilakukan secara manual. Untuk memberikan kunci untuk end-to-end enkripsi, pilihan4 adalah lebih baik.Gambar 18.8 menggambarkan sebuah implementasi yang memenuhi opsi 4 untuk end-to-endenkripsi. Dalam gambar, enkripsi link diabaikan. Hal ini dapat ditambahkan, atau tidak, sepertidiperlukan. Untuk skema ini, dua jenis kunci diidentifikasi:Kunci sesi. Ketika dua sistem akhir (host, terminal, dll) ingin berkomunikasi,mereka membuat sambungan logis (misalnya, sirkuit virtual). Untuk durasidari koneksi logis, semua data pengguna akan dienkripsi dengan sesi satu kalikunci. Pada akhir sesi, atau koneksi, kunci sesihancur.Kunci permanen. Kunci permanen yang digunakan antara entitas untuk tujuanmendistribusikan kunci sesi.Konfigurasi ini terdiri dari unsur-unsur berikut:Pusat distribusi kunci. Pusat distribusi kunci menentukan sistemdiperbolehkan untuk berkomunikasi satu sama lain. Ketika memperoleh izindua sistem untuk membuat sambungan, pusat distribusi kunci menyediakankunci sesi satu kali untuk hubungan itu.Front-end processor. The front-end processor melakukan enkripsi end-to-enddan memperoleh kunci sesi atas nama host atau terminal.1. Host mengirimkan paket koneksi meminta.3. KDC mendistribusikan kunci sesi ke kedua ujung depan.4. Buffered paket ditransmisikan.LegendaFEP = Front-end prosesorKDC = Key pusat distribusiuNetwork GAMBAR 18.8 distribusi kunci otomatis untuk protokol berorientasi koneksi.18,2 / PRIVASI DENGAN KONVENSIONAL ENCRYPTION 637Langkah-langkah yang terlibat dalam membangun koneksi yang ditunjukkan pada gambar. Ketikasatu host ingin mengatur koneksi ke host lain, itu mengirimkan sebuah ConnectionRequestpaket (langkah 1). The front-end processor menyimpan paket itu dan berlaku untukKDC izin untuk membuat sambungan (langkah 2). Komunikasiantara FEP dan KDC dienkripsi menggunakan kunci master bersama hanya olehFEP dan KDC. Jika KDC menyetujui permintaan sambungan, itu menghasilkankunci sesi dan memberikan ke dua prosesor front-end yang sesuai, menggunakankunci permanen unik untuk setiap front end (langkah 3). Yang meminta front-end processorsekarang dapat melepaskan paket koneksi-permintaan, dan sambungan sudah diaturantara dua sistem akhir (langkah 4). Semua data pengguna dipertukarkan antara dua ujungsistem yang dienkripsi oleh front-end prosesor masing-masing menggunakan satu kalikunci sesi.Pendekatan distribusi kunci otomatis memberikan fleksibilitas dan dinamiskarakteristik diperlukan baik untuk memungkinkan sejumlah pengguna terminal untuk mengakses nomorhost dan untuk host untuk bertukar data satu sama lain.Tentu saja, pendekatan lain untuk distribusi kunci menggunakan enkripsi kunci publik,yang dibahas dalam Bagian 18.4.Lalu Lintas PaddingKami menyebutkan bahwa, dalam beberapa kasus, pengguna khawatir tentang keamanan dari lalu lintasanalisis. Dengan menggunakan enkripsi link, header paket yang dienkripsi, mengurangikesempatan untuk analisis lalu lintas. Namun, masih mungkin dalam situasi seperti itubagi penyerang untuk menilai jumlah lalu lintas pada jaringan dan untuk mengamatijumlah lalu lintas masuk dan keluar tiap akhir sistem. Yang efektif penanggulanganserangan ini adalah bantalan lalu lintas, diilustrasikan pada Gambar 18.9.Lalu Lintas padding fungsi yang menghasilkan output ciphertext terus menerus,bahkan dalam ketiadaan plaintext. Sebuah terus menerus aliran data acak yang dihasilkan.Terputus-putus KontinyuOutput ciphertextacak-DataGAMBAR 18,9 Lalu Lintas-bantalan perangkat enkripsi.638 BAB 18 / NETWORK SECURITYKetika plaintext tersedia, dienkripsi dan ditransmisikan. Ketika masukan plaintext adalahtidak hadir, data acak dienkripsi dan ditransmisikan. Hal ini tidak mungkinbagi penyerang untuk membedakan antara benar aliran data dan suara, dan oleh karena itumungkin bagi penyusup untuk menyimpulkan jumlah lalu lintas.8.3 otentikasi pijat dan fungsi hashEnkripsi melindungi terhadap serangan pasif (menguping). Suatu persyaratan yang berbedaadalah untuk melindungi terhadap serangan aktif (pemalsuan data dan transaksi). Perlindunganterhadap serangan tersebut dikenal sebagai otentikasi pesan.Pendekatan Pesan OtentikasiSebuah pesan, file dokumen, atau kumpulan data lain dikatakan otentik ketikaitu adalah asli dan benar-benar berasal dari sumber dugaan. Otentikasi pesanprosedur yang memungkinkan pihak yang berkomunikasi untuk memverifikasi bahwa pesan yang diterima adalahotentik. Dua aspek penting adalah untuk memastikan bahwa isi pesanbelum diubah dan bahwa sumber adalah otentik. Kami juga mungkin ingin memverifikasiketepatan waktu sebuah pesan (belum artifisial tertunda dan diputar) danurutan, relatif terhadap pesan lain yang mengalir di antara dua pihak.Otentikasi Menggunakan Enkripsi KonvensionalHal ini dimungkinkan untuk melakukan otentikasi hanya dengan menggunakan enkripsi konvensional.Jika kita mengasumsikan bahwa hanya pengirim dan penerima berbagi kunci (yang sebagaimanaharus), maka hanya pengirim asli akan dapat berhasil mengenkripsipesan bagi peserta lainnya. Selanjutnya, jika pesan mencakup errordetectionkode dan nomor urut, penerima yakin bahwa tidak ada perubahantelah dibuat dan sequencing yang tepat. Jika pesan juga termasuk timestamp,penerima yakin bahwa pesan belum tertunda di luar ituwaktu biasanya diharapkan untuk transit jaringan.Pesan Otentikasi Enkripsi Tanpa PesanPada bagian ini, kita memeriksa beberapa pendekatan untuk otentikasi pesan yang melakukantidak bergantung pada enkripsi tetapi pada keluarga terkait fungsi. Dalam semua inipendekatan, tag otentikasi dihasilkan dan ditambahkan ke setiap pesan untuktransmisi. Pesan itu sendiri tidak dienkripsi dan dapat dibaca di tempat tujuanindependen dari fungsi otentikasi di tempat tujuan.Karena pendekatan dibahas dalam bagian ini tidak mengenkripsi pesan,Pesan kerahasiaan tidak disediakan. Karena enkripsi konvensional akan memberikanotentikasi, dan karena itu secara luas digunakan dengan produk yang tersedia, mengapatidak hanya menggunakan pendekatan tersebut, yang menyediakan kerahasiaan dan otentikasi?[DAVI90] menunjukkan tiga situasi di mana otentikasi pesan tanpakerahasiaan adalah lebih baik:Otentikasi 18,3 / PESAN DAN FUNGSI Hash 6391. Ada sejumlah aplikasi di mana pesan yang sama disiarkan kesejumlah tujuan-misalnya, pemberitahuan kepada pengguna bahwa jaringankini tersedia atau sinyal alarm di pusat kontrol. Hal ini lebih murah danlebih dapat diandalkan untuk hanya memiliki satu tujuan yang bertanggung jawab untuk memantau keaslian.Dengan demikian, pesan harus disiarkan di plaintext dengan terkaitPesan tag otentikasi. Sistem yang bertanggung jawab melakukan otentikasi.Jika pelanggaran terjadi, sistem tujuan lainnya diperingatkan oleh seorang jenderalalarm.2. Skenario lain yang mungkin adalah pertukaran di mana satu sisi memiliki beban beratdan tidak mampu waktu untuk mendekripsi semua pesan masuk. Otentikasidilakukan secara selektif, dengan pesan-pesan yang dipilih secara acakuntuk memeriksa.3. Otentikasi dari program komputer dalam plaintext adalah layanan menarik. Ituprogram komputer dapat dijalankan tanpa harus mendekripsi itu setiap kali,yang akan boros sumber daya prosesor. Namun, jika otentikasi pesantag yang melekat pada program, itu bisa diperiksa setiap kalijaminan diperlukan integritas program.Dengan demikian, ada tempat untuk otentikasi maupun enkripsi dalam memenuhi keamananpersyaratan.Message Authentication CodeTeknik satu otentikasi melibatkan penggunaan kunci rahasia untuk menghasilkan kecilblok data, yang dikenal sebagai kode otentikasi pesan, yang ditambahkan ke pesan.Teknik ini mengasumsikan bahwa dua pihak yang berkomunikasi, katakanlah A dan B, berbagiumum KAB kunci rahasia. Ketika A memiliki pesan untuk mengirim ke B, menghitung pesankode otentikasi sebagai fungsi dari pesan dan kunci: MACM =F (KAB, M). Pesan plus kode ditransmisikan ke penerima yang dimaksud. Itupenerima melakukan perhitungan yang sama pada pesan yang diterima, dengan menggunakan yang samakunci rahasia, untuk menghasilkan kode otentikasi pesan baru. Kode yang diterimadibandingkan dengan kode dihitung (Gambar 18.10). Jika kita mengasumsikan bahwa hanya penerimadan pengirim mengetahui identitas kunci rahasia, dan jika kode yang diterima cocokkode dihitung, kemudian,1. Penerima yakin bahwa pesan belum diubah. Jika penyerangmengubah pesan namun tidak mengubah kode, maka perhitungannya penerimakode akan berbeda dari kode yang diterima. Karena penyerang diasumsikantidak mengetahui kunci rahasia, penyerang tidak dapat mengubah kode untuk sesuaidengan perubahan dalam pesan.2. Penerima yakin bahwa pesan tersebut dari dugaan pengirim. Karenatidak ada orang lain yang tahu kunci rahasia, tidak ada orang lain bisa mempersiapkan pesan dengankode yang tepat.3. Jika pesan berisi nomor urut (seperti yang digunakan dengan X.25, HDLC,TCP, dan IS0 protokol transport), maka penerima dapat yakinurutan yang tepat, sebagai penyerang tidak berhasil mengubah urutannomor.640 BAB 18 / NETWORK SECURITYPesanvc o m p a r eGAMBAR 18,10 otentikasi pesan menggunakan kode otentikasi pesan (MAC).Sejumlah algoritma dapat digunakan untuk menghasilkan kode. NasionalBiro Standar, dalam publikasinya DES Mode Operasi, merekomendasikanpenggunaan algoritma DES. Algoritma DES digunakan untuk menghasilkan versi terenkripsipesan, dan jumlah terakhir dari bit ciphertext digunakan sebagai kode.A 16 - atau kode 32-bit khas.Proses yang baru saja dijelaskan mirip dengan enkripsi. Salah satu perbedaan adalah bahwaalgoritma otentikasi tidak perlu reversibel, karena harus untuk dekripsi. Ternyatabahwa karena sifat matematika dari fungsi otentikasi, adalahkurang rentan untuk rusak daripada enkripsi.Satu arah Fungsi Hash.Sebuah variasi pada kode otentikasi pesan yang telah menerima banyak perhatianbaru-baru ini adalah fungsi hash satu arah. Seperti dengan kode otentikasi pesan, sebuahfungsi hash menerima pesan M variable-size sebagai masukan dan menghasilkan fixed-sizetag H (M), kadang-kadang disebut message digest, sebagai output. Untuk mengotentikasi pesan,mencerna pesan dikirim dengan pesan sedemikian rupa sehingga pesan mencerna adalahotentik.Gambar 18.11 mengilustrasikan tiga cara di mana message digest dapat dikonfirmasi.The message digest dapat dienkripsi menggunakan enkripsi konvensional (bagian(A)), jika diasumsikan bahwa hanya pengirim dan penerima berbagi kunci enkripsi, makakeasliannya terjamin. Pesan tersebut juga dapat dienkripsi menggunakan enkripsi kunci publik(Bagian (b)). Pendekatan kunci publik memiliki dua manfaat: Ini menyediakan digital18,3 / PESAN Otentikasi DAN FUNGSI Hash 641KHash Saya(A) Menggunakan enkripsi konvensional(B) Menggunakan enkripsi kunci publik- K membandingkanSayaKpubilc membandingkansaya membandingkan(C) Menggunakan nilai rahasiaGAMBAR 18.11 otentikasi pesan menggunakan fungsi hash satu arah.tanda tangan serta otentikasi pesan, dan tidak memerlukan distribusikunci untuk pihak yang berkomunikasi.Kedua pendekatan memiliki keuntungan lebih dari pendekatan yang mengenkripsiseluruh pesan, dalam perhitungan kurang dibutuhkan. Namun demikian, telah adaminat dalam mengembangkan teknik yang menghindari enkripsi sama sekali. Beberapa alasanuntuk kepentingan ini ditunjukkan dalam [TSUD92]:Perangkat lunak enkripsi yang cukup lambat. Meskipun jumlah data yang akandienkripsi per pesan kecil, mungkin ada aliran pesan kedan keluar dari sistem.Biaya hardware enkripsi non-diabaikan. Rendah biaya implementasi ChipDES yang tersedia, tetapi biaya bertambah jika semua node dalam jaringan suatu keharusanmemiliki kemampuan ini.Enkripsi hardware dioptimalkan menuju ukuran data yang besar. Untuk blok kecildata, proporsi yang tinggi dari waktu yang dihabiskan di inisialisasi / doa overhead.Algoritma enkripsi dapat dilindungi oleh hak paten. Beberapa algoritma enkripsi,seperti algoritma kunci publik RSA, yang dipatenkan dan harus berlisensi,menambahkan biaya.algoritma enkripsi dapat dikenakan kontrol ekspor. Hal ini berlaku dari DES.Gambar 1 8. 1 1s ~ h ows teknik yang menggunakan fungsi hash tapi tidak ada enkripsiuntuk otentikasi pesan. Teknik ini mengasumsikan bahwa dua pihak yang berkomunikasi,mengatakan A dan B, berbagi rahasia umum nilai SAB. Ketika A memiliki pesan untuk mengirimke B, menghitung fungsi hash atas gabungan dari nilai rahasia danpesan:. MDM = H (s ~ ~ I IMI) th t 'en Mengirim [MIIMDM] ke B. Karena B memilikiSAB, dapat recompute H (SABIIM) dan memverifikasi MDM, dan, karena rahasianilai itu sendiri tidak dikirim, tidak mungkin bagi penyerang untuk memodifikasi dicegatpesan. Selama nilai rahasia tetap rahasia, juga tidak mungkin untukpenyerang untuk menghasilkan pesan palsu.Teknik ketiga, menggunakan nilai rahasia bersama, adalah salah satu yang diadopsi untuk IPkeamanan (dijelaskan pada Bab 19), melainkan juga telah tentatif ditentukan untukSNMPV ~. ~Amankan Fungsi HashFungsi hash fungsi hash aman satu arah, atau, penting tidak hanya dalam pesanotentikasi tetapi dalam tanda tangan digital. Pada bagian ini, kita mulai dengan diskusipersyaratan untuk fungsi hash yang aman. Kemudian kita melihat dua sangat sederhanafungsi hash yang tidak aman, untuk mendapatkan penghargaan dari struktur tersebutfungsi. Akhirnya, kita memeriksa salah satu fungsi hash yang paling penting, MD5.Persyaratan Fungsi HashTujuan dari fungsi hash adalah untuk menghasilkan sebuah "sidik jari" dari sebuah file, pesan, ataublok data lainnya. Untuk menjadi berguna untuk otentikasi pesan, fungsi hash Hharus memiliki sifat berikut, diadaptasi dari daftar di [NECH91]:1. H dapat diterapkan pada blok data dari berbagai ukuran.2. H menghasilkan output tetap-panjang.3. H (x) adalah relatif mudah untuk menghitung untuk setiap x yang diberikan, membuat kedua perangkat keras danimplementasi perangkat lunak praktis.'Ll menunjukkan Rangkaian.Ketika SNMPv2 pertama kali dikeluarkan pada tahun 1993 sebagai satu set standar Internet yang diusulkan, itu termasuk keamananfungsi yang menggunakan teknik yang baru saja dibahas. SNMPv2 diterbitkan kembali sebagai konsep standar Internet pada tahun 1996tanpa fungsi keamanan karena kurangnya kesepakatan tentang semua rincian. Namun, keamanan akhirstandar untuk SNMP kemungkinan akan mencakup teknik baru saja dibahas.18,3 / PESAN Otentikasi DAN FUNGSI Hash 6434. Untuk setiap kode yang diberikan m, itu adalah komputasi tidak layak untuk menemukan x sedemikian sehinggaH (x) = m.5. Untuk setiap blok tertentu x, itu adalah komputasi tidak layak untuk menemukan yrx denganH (Y) = H (x).6. Hal ini komputasi tidak layak untuk menemukan setiap pasangan (x, y) sehingga H (x) = H (y).Tiga pertama sifat persyaratan untuk aplikasi praktis darifungsi hash untuk otentikasi pesan.Properti keempat adalah milik satu arah: Sangat mudah untuk menghasilkan kodediberikan pesan. tapi hampir mustahil untuk menghasilkan pesan diberi kode. IniProperti penting jika teknik otentikasi melibatkan penggunaan rahasiaNilai (Gambar 18.11c), yang tidak dikirim sendiri, namun jika fungsi hashtidak satu arah, penyerang dapat dengan mudah menemukan nilai rahasia: Jika penyerang dapatmengamati atau mencegat transmisi, ia memperoleh M pesan dan hashkode MDM = H (SABIIM). Penyerang kemudian membalikkan fungsi hash untuk mendapatkanSABllM = H-'(MD ~). Karena penyerang sekarang memiliki kedua M dan SABIIM, itu adalah sepelepenting untuk memulihkan SAWJaminan properti kelima bahwa hashing pesan alternatif untuk samanilai sebagai pesan yang diberikan tidak dapat ditemukan, hal ini mencegah pemalsuan ketika dienkripsikode hash digunakan (Gambar 18.11b dan c). Jika properti ini tidak benar, penyerangakan mampu urutan sebagai berikut: Pertama, amati atau mencegat pesanplus kode dienkripsi hash-nya, kedua, menghasilkan kode hash terenkripsi daripesan, ketiga, menghasilkan pesan alternatif dengan kode hash yang sama.Sebuah fungsi hash yang memenuhi lima sifat pertama dalam daftar sebelumnya adalahdisebut sebagai fungsi hash lemah. Jika properti keenam juga puas, makadisebut sebagai fungsi hash yang kuat. Properti keenam melindungi terhadap canggihkelas serangan yang dikenal sebagai ulang tahun atta ~ k. ~Selain menyediakan otentikasi, message digest juga menyediakan dataintegritas. Ini melakukan fungsi yang sama sebagai frame check sequence: Jika ada bit dalampesan yang sengaja diubah dalam perjalanan, mencerna pesan akan berada dalam kesalahan.Fungsi Hash SederhanaSemua fungsi hash beroperasi menggunakan prinsip-prinsip umum berikut. Input (pesan,File, dll) dipandang sebagai urutan n-bit blok. Input diproses satublok pada suatu waktu dalam mode berulang untuk menghasilkan fungsi hash n-bit.Salah satu fungsi hash yang paling sederhana adalah untuk mengambil bit-by-bit-eksklusif-atau(XOR) dari setiap blok, hal ini dapat dinyatakan sebagai berikut:dimanaCi = engan sedikit kode hash, 1 5 i 5 nm = jumlah n-bit blok inputbij = engan sedikit di j blok@ = XOR operasiLihat [STAL95b] untuk pembahasan serangan ulang.BAB 18 / JARINGAN SECURlTYbit 1 bit 2 bit nblok 1 Saya bll I b21 Iblok 2GAMBAR 18.12 fungsi hash sederhana menggunakan bitwise XOR.blok mkode hashmain (int argc, char * argv []) (unsigned hash panjang [4] = (0,0, 0, O), data [4];FILE * fp;int i;if ((fp == fopen (argv [I], "rb"))! = NULL) (while ((fread (data, 4,, 4, fp)! = NULL)untuk (i = O; i