Latest Post

Cipher Block Chaining Message Authentication Code (CBC-MAC)

| Rabu, 28 November 2018
Baca selengkapnya »
     Message Authentication Code (MAC) adalah potongan informasi berupa kode yang digunakan untuk otentikasi bagian informasi lain berupa pesan. MAC merupakan sebuah fungsi satu arah yang menggunakan kunci privat dalam penghitungan nilai MAC dari pesan tersebut. Sistem MAC ini berbeda dengan fungsi hash semisal SHA ataupun MD5 yang tidak menggunakan kunci privat apapun untuk menghitung nilai hash dari pesan. Nilai hash yang dihasilkan adalah selalu berukuran tetap berapapun panjang dari pesan yang diotentikasi. Selanjutny, MAC dilekatkan pada pesan (atau bisa juga menggunakan file luar) yang nantinya akan digunakan untuk otentikasi keaslian pesan. Perbedaan antara MAC dan algoritma enkripsi adalah MAC digunakan tanpa perlu merahasiakan isi pesan. MAC juga bukan tanda tangan digital, MAC hanya menyediakan otentikasi pengirim dan integritas pesan saja.

     Algoritma MAC adalah algoritma yang melakukan penghitungan nilai hash file dengan menerima masukan pesan beserta kunci privat tertentu. Selanjutnya, MAC akan menghasilkan tag file pada pesan sebagi penanda bahwa bagian itu adalah nilai hash dari pesan tersebut. Apabila dituangkan secara matematis, bentuk umum dari algoritma MAC adalah sebagai berikut :
    
    MAC = CK(M) 

    dengan MAC menunjukkan nilai hash, C adalah fungsi hash yang digunakna dalam penghitungan MAC (atau algoritma MAC), dan K merupakan kunci rahasia atau kunci privat yang digunakan. Fungsi MAC ini tidak hanya menjaga integritas dari data namun juga dapat mendeteksi setiap perubahan yang terjadi pada isi pesan.
     

     Berikut ini merupakan bagan yang menunjukkan contoh proses penggunaan MAC sebagai cara mengotentikasi pesan antara dua pihak yang saling memiliki kunci privat yang telah disepakati sebelumnya.
   
    Pada konsep CBC ini, penghitungan nilai MAC bergantung pada proses enkripsi pada tiap blok. Mekanisme pencarian CBC MAC adalah dengan membagi pesan ke dalam blok-blok pesan dengan panjang tetap. Blok pertama pesan akan di XOR kan dengan IV terdiri atas kumpulan bit 0. Blok pertama pesan kemudian akan dienkripsi dengan fungsi enkripsi tertentu dengan kunci K. Hasil dari enkripsi ini kemudian di XOR lagi dengan blok pesan kedua. Hal ini diulangi berkali-kali sampai blok pesan terakhir. Hasil enkripsi pada blok pesan terakhir merupakan nilai MAC yang diperoleh dengan algoritma ini.
Berikut merupakan gambaran operasi pada CBC MAC :


    dengan m adalah pesan yang akan dicari nilai MAC-nya, E adalah fungsi enkripsi berbasis blok, dan k adalah kunci privat yang digunakan untuk melakukan enkripsi. Pembagian blok pesan pada CBC MAC adalah pesan dibagi ke dalam blok-blok pesan dengan panjang setiap blok adalah panjang yang sudah ditetapkan, dalam hal ini adalah panjang blok bersesuaian dengan spesifikasi fungsi enkripsi yang dipakai. 
     
     Misalnya, DES digunakan sebagai cipher blok, maka ukuran blok adalah 64 bit, dan kunci rahasia MAC adalah kunci DES yang panjangnya 56 bit. Dalam pembuatan MAC dengan konsep CBC ini, kunci yang dilakukan untuk melakukan enkripsi untuk semua blok adalah selalu sama. Begitu pula dengan fungsi enkripsi yang digunakan. Yang berbeda untuk setiap blok hanyalah masukan berupa potongan blok pesan yang sudah di-XOR dengan hasil enkripsi pesan sebelumnya

Cipher Block Chaining Message Authentication Code (CBC-MAC)

Posted by : Unknown on :Rabu, 28 November 2018 With 0komentar
Next Prev

Chat

▲Top▲