Algoritma Enkripsi Indonesia BC3

By yusuf

Algoritma Enkripsi Indonesia BC3

Deskripsi BC3

BC3 menggunakan struktur Feistel seperti DES, sehingga dapat menggunakan algoritma enkripsi dan dekripsi yang sama. BC3 memiliki masukan / keluaran 64 bit dan kunci 128 bit. Bagian pengacakan BC3 terdiri atas 11 ronde regular dan 2 ronde khusus.

Gambar 1 Algoritma BC3

Fungsi FA didefinisikan sebagai:

Sedangkan fungsi FA-1 didefinisikan sebagai

Bila masukan fungsi F dinyatakan dengan x sebanyak 32 bit, dan keluaran fungsi F dinyatakan dengan y (32 bit), maka


di mana P adalah operasi perkalian secara polinomial dengan matrik M yang bertujuan untuk mendapatkan difusi yang optimal. S adalah operasi subtitusi terhadap masukan masukan x0,x1,x2,x3. operasi S dilakukan terhadap setiap byte masukan. K merupakan subkey k0,k1,k2,k3.

Kotak subtitusi (dalam hexadesimal) :

Cara penggunaan. Masukan kotak subtitusi 0 akan diganti dengan bbx, masukan 1 diganti dengan 8bx , masukan 16 desimal diganti f1x dan seterusnya.

Matrik M berupa :

Key schedule BC3:

Bagian ini mengandung bagian persiapan subkey. Kunci utama BC3 berupa kunci sepanjang 128 bit K = K1 || K2. K1 dan K2 masing-masing berukuran 64 bit.

Gambar 2. Bagian awal keyschedule BC3

Dari gambar di atas dapat disusun sebagai berikut:

Pembentukan subkey selengkapnya adalah sebagai berikut :

Keamanan

BC3 dirancang agar mampu bertahan dalam menghadapi berbagai analisis sandi seperti analisis sandi linear, diferensial, impossible differential attack, linear hull, interpolation attack, algebraic attack, related-key attack, slide attack, dan square attack.

Analisis sandi adalah metode untuk memecahkan algoritma kriptografi.

Cara lain untuk memeriksa keamanan algoritma kriptografi adalah dengan memeriksa sifat statistik output algoritma. Di antara metodenya adalah memeriksa apakah setiap perubahan 1 bit masukan akan mengubah rata-rata setengah bit keluaran.

Pada umumnya, algoritma yang lolos analisis sandi, otomatis juga akan lolos tes statistik, akan tetapi tidak berlaku hal yang sebaliknya. Oleh karena itu, meskipun analisis sandi seringkali jauh lebih sulit dilakukan daripada tes statistik, analisis sandi tetap harus dilakukan.

Sebagai contoh, DES merupakan algoritma enkripsi standar (de facto) internasional yang memiliki 16 ronde. Hanya dengan 8 ronde saja, DES terbukti sanggup bertahan terhadap berbagai tes statistik. Akan tetapi, DES 16 ronde masih dapat ditembus oleh analisis sandi linear dan diferensial.

Efisiensi

BC3 juga dirancang agar dapat diimplementasikan pada berbagai platform software/hardware secara efisien dan cepat. Dengan kesederhanaannya, BC3 mudah diimplementasikan dengan benar dan mudah diperiksa keamanannya.

Keistimewaan

Mempunyai kecepatan keyschedule lebih dari 200% dibanding AES. Memiliki keyschedule yang bersifat satu arah, sehingga penemuan subkey tidak otomatis mempermudah attacker untuk mendapatkan kunci utama, tidak seperti pada AES dan DES. Dengan demikian, BC3 sangat baik digunakan pada aplikasi yang sering menggunakan kunci yang berubah-ubah. Kotak subtitusinya juga sudah diperbaiki, sehingga kami harap akan lebih kebal terhadap algebraic attack dibanding AES.

Download disini

5 Tanggapan ke “Algoritma Enkripsi Indonesia BC3”

  1. jokondo Berkata:

    snippet codenya pake C ya , sayang belom nyampe … boleh keluarin versi yang java?

  2. yusuf Berkata:

    Wah maaf, saya sdh lama tdk pakai Java (dari dulu juga tdk biasa pakai). Alangkah baiknya bila Mas joko yang membuatkan. Terima kasih

  3. bambangp Berkata:

    mas yusuf, apakah BC3 ini sudah pernah dipublish di jurnal internasional? saya berharap agar algoritma buatan anak bangsa ini juga bisa dikenali oleh dunia luar juga. Atau minimal digunakan oleh aplikasi yg dapat di kembangkan bersama, seperti proyek opensource-nya MCrypt pada Linux. Sehingga akan lebih terasa manfaatnya.

    Terimakasih.

  4. Melindungi file penting menggunakan mcrypt di ubuntu — Bambang Puji Berkata:

    [...] dari semua algoritma tsb, algoritma buatan anak bangsa, BC3, tidak dimasukkan ke dalam pilihan. Padahal saya berharap juga BC3 dikenali oleh MCrypt sebagai [...]

  5. yusuf Berkata:

    BC3 belum dipublikasi ke jurnal internasional. Belum selesai diteliti dan menunggu waktu yang tepat. Terima kasih

Tinggalkan Balasan