PROTOKOL KEAMANAN BARU

DESAIN PROTOKOL KEAMANAN BARU MENGGUNAKAN ALGORITMA KRIPTOGRAFI HYBRID
S. Subasree dan N. K. Sakthivel
School of Computing, Sastra University, Thanjavur – 613401, Tamil Nadu, INDIA.

Diterjemahkan dari: S. Subasree, N. K. Sakthivel. 2010. Desing of a New Security Protocol Using Hybrid Cryptography Algorithms. IJJRAS

ABSTRAK
Jaringan komputer adalah sekumpulan komputer yang saling terkoneksi, saling mengenal rule/ketentuan yang dikenal sebagai protokol, yang saling berinteraksi dengan penuh makna dan memungkin berbagi sumber daya yang diinginkan dengan cara yang dapat diprediksi dan terkontrol. Komunikasi memiliki dampak utama pada bisnis saat ini. Diharapkan dapat mengkomunikasikan data dengan keamanan tinggi. Serangan-serangan keamanan membahayakan keamanan sehingga algoritma-algoritma kriptografi Simetris dan Asimetris telah diusulkan untuk memperoleh layanan keamanan seperti Autentikasi, Kerahasiaan, Integritas, Non-Repudiation dan Ketersediaan. Saat ini, berbagai jenis algoritma kriptografi menghasilkan keamanan yang tinggi untuk informasi pada jaringan terkontrol. Algoritma-algoritma ini dibutuhkan untuk menghasilkan keamanan data dan autentikasi pengguna. Untuk meningkatkan kehandalan algoritma-algoritma keamanan ini, sebuah protokol keamanan baru untuk transaksi online dapat didesain menggunakan kombinasi teknik-teknik kriptografi simetris dan asimetris. Protokol ini menghasilkan tiga cryptographic primitives seperti integritas, kerahasiaan dan autentikasi. Tiga primitives ini dapat dicapai dengan bantuan Elliptic Curve Cryptography, algoritma Dual-RSA dan Message Digest MD5. Yaitu menggunakan Elliptic Curve Cryptography untuk enkripsi, algoritma Dual-RSA untuk autentikasi dan MD-5 untuk integritas. Protokol keamanan baru ini telah didesain untuk keamanan yang lebih baik dengan integritas yang menggunakan kombinasi teknik kriptografi simetris dan asimetris.
Keyword: Network Security, Elliptic Curve Cryptography, Dual-RSA, Message Digest-5.
1. PENGANTAR
Keingin-tahuan merupakan salah sifat manusia yang sangat umum, disandingkan dengan keinginan untuk menyembunyikan informasi pribadi. Mata-mata dan militer semua terpaksa menyembunyikan informasi untuk mengirimkan pesan dengan aman, kadang-kadang dengan bebas mencakup informasi yang menyesatkan [12]. Stenografi, sebuah mekanisme untuk menyembunyikan informasi dalam gambar-gambar yang cukup singkat, dapat digunakan pada metode yang dimilikinya atau metode lain.
Enkripsi secara mendasar terdiri atas berebut pesan sehingga kontennya tidak dapat diakses sedangkabn dekripsi merupakan kebalikan dari prose situ [14]. Proses-proses ini tergantung pada algoritma-algoritma tertentu, yang dikenal sebagai ciphers (sandi rahasia). Teks yang tercampur dengan pola tertentu dikenal sebagai teks cipher sedangkan yang aslinya, bukan yang aneh-aneh, adalah plain text (teks biasa). Dapat dibaca merupakan syarat cukup atau syarat penting untuk membuat sesuatu menjadi plain text.
Yang asli tidak akan jelas ketika dibaca, inilah kasusnya, contoh, jika sesuatu sudah dienkripsi maka seterusnya terenkripsi. Juga sangat mungkin untuk membangun mekanisme yang outputnya merupakan teks yang dapat dibaca tapi sebenarnya melahirkan ketidak-adaan hubungan dengan teks asli yang tidak dienkripsi (dapat dibaca, tapi bacaannya hanya pengecoh).
Kunci digunakan bersamaan dengan cipher untuk mengenkripsi atau mendekripsi teks. Kunci itu tampak penuh arti, sebagaimana kasus string karakter yang digunakan sebagai password, transformasi ini tidak relevan, kegunaan kunci ini terletak pada string of bits-nya yang menetapkan pemetaan plain text ke cipher text.
1.1 Mengapa kita membutuhkan kriptografi?
Memproteksi akses informasi untuk alasan keamanan masih merupakan alasan utama untuk menggunakan kriptografi. Bagaimanapun, ia juga terus digunakan untuk identifikasi individu, autentikasi dan non-repudiasi. Ini penting terutama dengan adanya pertumbuhan Internet, perdagangan global dan aktivitas-aktivitas lain [12]. Identitas para pengguna e-mail dan web dapat disembunyikan atau dipalsukan dengan mudah, mengamankan autentikasi dapat member kepercayaan yang berinteraksi dari jarak jauh yakni dengan orang yang benar dan pesannya tidak dipalsukan atau diubah.
Dalam hal komersial, non-repudiasi [12] adalah konsep penting yang menjamin bahwa jika, berkata, kontrak telah disetujui pada satu partai maka tidak dapat diingkari dengan mengklaim bahwa mereka tidak benar-benar setuju atau berbuat demikian pada waktu yang berbeda ketika, barangkali, harga lebih mahal atau lebih murah. Digital signature dan digital timestamps digunakan dalam situasi seperti itu, seringkali berkaitan dengan mekanisme lain seperti inti pesan dan sertifikat digital.
Range penggunaan kriptografi dan teknik-teknik terkait berkembang pesat dan mantap. Password itu biasa tapi proteksi sering kali tidak jelas, mungkin karena kebijakan keamanan di banyak organisasi tidak dipertimbangkan dengan baik dan penggunaannya menyebabkan banyak masalah dan kesulitan daripada memberikan manfaat [14, 15].
Dalam banyak kasus ketika password digunakan, contohnya dalam memproteksi kata yang memproses dokumen-dokumen, cipher yang digunakan itu sangat kecil dan dapat diserang tanpa kesulitan menggunakan salah satu range program cracking yang tersedia secara bebas.

2. Jenis-Jenis Algoritma Kriptografi
2.1 Enkripsi Kurva Eliptik
Ketika menggunakan kurva eliptik dalam kriptografi [11], kami menggunakan berbagai properties titik-titik pada kurva, dan fungsi-fungsinya dengan baik. Dengan demikian, satu tugas umum untuk dilengkapi ketika menggunakan kurva-kurva eliptik sebagai tool enkripsi adalah menemukan cara untuk memindahkan informasi m ke titik P pada kurva E. kami berasumsi informasi m sudah ditulis sebagai angka. Terdapat banyak cara untuk melakukan ini, sesimpel setting huruf-huruf a=0, b=1, c=2,… atau ada juga metode lain, seperti ASCII, yang menyelesaikan tugas yang sama. Sekarang, jika kita memiliki E = y2 = x3 + AX + B (mod p), sebuah kurva dalam bentuk Weierstrass, kita ingin memisalkan m=x. Tapi, ini hanya akan berjalan jika m3 + Am + B adalah square modulo p. Apabila setengah jumlah modulo p adalah square, kita hanya memiliki sekitar 50% peluang kejadian ini. Dengan demikian, kita akan mencoba menyimpan informasi m ke dalam sebuah nilai yaitu square.
Memilih suatu K seperti 1/2k merupakan rate gagal yang dapat diterima untuk menyimpan informasi ke dalam sebuah titik pada kurva. Juga, meyakinkan bahwa (m + 1)K<p. Misalkan xj = mK + j utuk j = 0, 1, 2, …, K-1 Hitung x3j + Axj + B. Hitunglah akar dua yj (mod p), jika mungkin. Jika ada akar dua, kita misalkan titik kita pada E merepresentasikan m menjadi Pm = (xj, yj) Jika tidak ada akar dua, coba nilai selanjutnya j[4,5].
Dengan demikian, untuk tiap nilai j kita memiliki kemungkinan sekitar ½ bahwa xj adalah square modulo p. Maka, kemungkinan xj bukan kuadrat sekiat 1/2K, yang merupakan rate gagal yang dapat diterima [6]. Dalam kebanyakan aplikasi, terdapat banyak masalah nyata bahwa mungkin terjadi perusakan pada usaha pengiriman pesan, seperti gangguan komputer atau listrik. Sejak orang-orang menerima 16 kegagalan yang berkaitan dengan fenomena yang tidak dapat dikontrol, memberikan pengertian bahwa mereka dapat sepakat dalam rate gagal yang dapat diterima untuk fitur proses yang dapat dikontrol. Walaupun kita tidak akan menggunakan proses khusus ini dalam algoritma-algoritma kita[10].
2.2 Dual RSA
Dalam praktek, komputasi dekripsi RSA dilakukan dalam p dan q kemudian dikombinasikan melalui Chinese Remainder Theorem (CRT) untuk memperoleh solusi yang diinginkan dalam ZN, walaupun secara langsung mengkomputasi eksponensiasi dalam ZN. Ini mengurangi biaya komputasi dekripsi dalam dua cara. Pertama, komputasi dalam Zp dan Zq lebih efisien daripada komputasi yang sama dalam ZN karena itu elemen-elemen jauh lebih kecil. Kedua, dari Teorema Lagrange, kita dapat mengganti eksponen privat d dengan dp = d mod (p-1) untuk komputasi dalam Zp dan dengan dq = d mod (q-1) untuk komputasi dalam Zp, yang mereduksi biaya untuk tiap eksponensiasi ketika d lebih besar dari yang terbaik (prime). Ini biasanya berkaitan dengan dp dan dq sebagai eksponen CRT. Metode pertama menggunakan CRT untuk dekripsi diusulkan oleh Quisquater dan Couvreur [7,8].
Setelah metode itu membutuhkan pengetahuan p dan q, algoritma penghasil kunci itu harus dimodifikasi untuk menghasilkan output kunci privat (d, p, q) bahkan (d, N). Diberikan kunci privat (d, p, q) dan valid ciphertext C  ZN, algoritma dekripsi CRT-nya sebagai berikut:
1) menghitung Cp = Cdp mod p.
2) menghitung Cq = Cdq mod q.
3) menghitung M0 = (Cq – Cp) . p-1 mod q.
4) menghitung plaintext M = Cp + M0 . p.
Versi dekripsi CRT ini secara sederhana merupakan Algoritma Garner untuk Chinese Remainder Theorem yang diaplikasikan untuk RSA. Jika algoritma penghasil kunci ini lebih lanjut dimodifikasi untuk menghasilkan output kunci privat (dp, dq, p, q, p-1 mod q), biaya komputasi dekripsi CRT didominasi oleh eksponensiasi modular dalam langkah 1) dan 2) dari algoritma tersebut. Ketika prime p dan q secara kasar berukuran sama (yakni setengah ukuran modulus), biaya komputasi untuk dekripsi menggunakan dekripsi CRT (tanpa paralelisme) secara teoritis ¼ biaya untuk dekripsi menggunakan metode asli [7].
Menggunakan RSA-Small-e bersamaan dengan dekripsi CRT memungkinkan untuk enkripsi dan dekripsi yang sangat cepat yakni empat kali lebih cepat dari RSA standar.
2.3 Algoritma MD5
MD5[2] terdiri atas 64 operasi ini, dikelompokkan dalam empat round 16 operasi. F adalah fungsi nonlinear; satu fungsi digunakan dalam tiap round. Mi menunjukkan 32-bit blok input pesan, dan Ki menunjukkan 32-bit konstan, berbeda untuk tiap operasi s merupakan nilai shift, yang juga berbeda untuk tiap operasi[1].
MD5 memproses pesan panjang variabel ke dalam fixed-length output 128 bit. Pesan input dipecah ke dalam chunck 512-bit blok; pesan itu diisi sehingga panjangnya dapat dibagi dengan 512. Pekerjaan pengisian sebagai berikut: pertama bit tunggal, 1, dicatat ke akhir pesan. Ini diikuti dengan banyak nol yang dibutuhkan untuk membawa panjang pesan ke 64 bit lebih sedikit daripada bit banyak 512. Bit yang tersisa diisi dengan integer 64 bit yang merepresentasikan panjang pesan asli[9].
Algoritma MD5 utama beroperasi pada keadaan 128-bit, dibagi ke dalam empat 32-bit kata, ditunjukkan dengan A, B, C dan D. Ini diinisiasi untuk menentukan konstanta tetap. Algoritma utama ini kemudian beroperasi pada tiap 512-bit blok pesan secara bergiliran, tiap blok memodifikasi keadaan itu. Pemrosesan blok pesan terdiri atas empat tahapan yang mirip, diistilah dengan round; tiap round tersusun dari 16 operasi mirip berdasarkan fungsi non-linear F, tambahan modular, dan rotasi kiri. Banyak fungsi inti pesan telah diusulkan dan digunakan saat ini. Di sini hanyal sedikit contoh, seperti HMAC, MD2, MD4, MD5, SHA, SHA-1. Di sini, kami fokus pada MD5, salah satu fungsi inti yang sering digunakan.
3. Arsitektur Protokol Keamanan Hybrid
Ini dibutuhkan untuk mengkomunikasikan data dengan keamanan tinggi. Sekarang, berbagai jenis algoritma kriptografi menyediakan kemanan tinggi untuk informasi pada jaringan terkontrol. Algoritma-algoritma ini dibutuhkan untuk menyediakan kemanan data dan autentikasi pengguna. Protokol keamanan baru ini telah didesain untuk kemanan yang lebih baik menggunakan kombinasi teknik kriptografi simetris dan asimetris.

Gambar 1: Arsitektur Protokol Hybrid
Seperti tampak pada gambar di atas, Teknik-Teknik Kriptografi Kunci Simetris seperti Criptografi Kurva Eliptik, dan MD5 digunakan untuk memperoleh Kerahasiaan dan Integritas. Teknik Kriptografi Kunci Asimetris, Dual RSA digunakan untuk Autentikasi.
Di atas dibahas tentang tiga primitives yang dapat diperoleh dengan bantuan Arsitektur Protokol Keamanan ini. Arsitektur tampak pada Gambar 1. Sebagaimana tampak pada gambar tersebut, Teknik-Teknik Kriptografi Keamanan Kunci Simetris seperti Kriptografi Kurva Eliptik, dan MD5 digunakan untuk memperoleh Kerahasiaan dan Integritas. Teknik Kriptografi Kunci Asimetris, Dual RSA digunakan untuk Autentikasi.
Protokol Keamanan baru ini telah didesain untuk keaman yang lebih baik. Ia merupakan kombinasi dari Teknik Kriptografi Simetris dan Asimetris. Ia menyediakan Primitive kriptografi seperti Integritas, Kerahasiaan dan Autentikasi.
Plain text yang diberikan dapat dienkripsi dengan bantuan Kriptografi Kurva Eliptik, ECC dan cipher yang diperoleh dapat dikomunikasikan ke tujuan melalui channel aman apapun. Secara simultan, nilai Hash dihitung melalui MD5 untuk plain text yang sama, yang telah dikonversi ke dalam cipher text dengan ECC. Nilai Hash ini telah dienkripsi denan Dual RSA dan pesan enkripsi nilai Hash ini juga dikirimkan ke tujuan.
Pengacau (intruder) mungkin mencoba melakukan hacking informasi asli dari pesan yang sudah dienkripsi. Dia dapat dijerat oleh pesan enkripsi plain text dan nilai Hash sehingga dia akan mencoba mendekripsi pesan-pesan ini untuk memperoleh pesan aslinya. Dia mungkin memperoleh nilai hash dan tidak mungkin mengekstraksi plain text dari cipher text, karena, nilai hash itu dienkripsi dengan Dual RSA dan plain text itu dienkripsi dengan ECC. Dengan demikian, pesan dapat dikomunikasikan ke tujuan dengan cara yang sangat aman.
Nilai hash baru dikalkulasikan dengan MD5 untuk pesan-pesan asli yang diterima, kemudian dibandingkan dengan pesan hash dekripsi untuk integritasnya. Dengan demikian, kita dapat menjamin bahwa baik teks asli yang diubah maupun tidak, tetap berada dalam media komunikasi. Ini adalah fitur primitive protokol hybrid.

4. Hasil dan Kesimpulan
4.1 Perbandingan RSA dan Dual RSA
1) Algoritma Kunci Publik, RSA dan Dual-RSA telah diimplementasikan dalam VC++ dan kita telah memperoleh hasil berikut ini. Sebagaimana tampak pada Gambar 2, pesan asli untuk komunikasi disimpan dalam MyFile.txt dan ukurannya 547 Bytes, yang mana tampak pada file laporan.

Gambar 2: Input File MyFile.txt
Gambar 3 menunjukkan bahwa menu utama proyek, yang terdiri atas berbagai fitur. Yaitu i. Enkripsi RSA, ii. Dekripsi RSA, iii. Enkripsi Dual RSA, iv. Dekripsi Dual RSA, dan v. Grafik, yang mana digunakan untuk membandingkan biaya komputasi RSA dan Dual-RSA.
Gambar 4 menunjukkan bahwa Enkripsi RSA dan Gambar 5 menunjukkan enkripsi Dual RSA. Dari Gambar 6 jelas bahwa RSA mengambil satu blok pada satu waktu untuk enkripsi dan dekripsi pada satu waktu. Tapi dual RSA membutuhkan lebih banyak waktu untuk enkripsi dua blok pada satu waktu, tapi ia menggunakan sedikit waktu untuk dekripsi dua blok. Dengan demikian, waktu enkripsi dan dekripsi RSA lebih besar daripada Dual RSA karena Dual RSA melakukan operasi enkripsi dan dekripsi untuk dua blok.

Gambar 3: Proses Enkripsi/Dekripsi RSA dan Dual RSA

Gambar 4: Enkripsi RSA

Gambar 5: Enkripsi Dual-RSA
5.2 Analisis Performa RSA dan Dual RSA

Gambar 6: RSA vs Dual RSA

Gambar 7: Biaya komputasi RSA vs Dual RSA

5.3 Hasil Arsitektur Protokol Hybrid
Di sini, kami menggunakan tiga mode operasi yang berbeda. Sender (Pengirim), Receiver (Penerima) dan Intruder (Pengacau). Kami harus memilih mode dan memproses informasi itu. Gambar berikut merepresentasikan tiga mode yang berbeda.

Gambar 7: Seleksi mode
Jika mode ini adalah sender, maka kami harus menyediakan nilai kunci dan pesan dalam lokasi yang telah ditentukan.

Gambar 9: Sender mode
Gambar 10 menunjukkan bahwa Receiver telah menerima pesan sender dengan kunci itu. Dari gambar itu, tercatat bahwa, intruder itu juga menerima kunci dan bukan pesan. Karena, pesan itu dienkripsi dengan ECC dan kunci dienkripsi dengan menggunakan Dual RSA. Dan juga tercatat bahwa, intruder itu telah memperoleh kunci yang berbeda dari dekripsi, yang mana ekuivalen dengan kunci asli. Bahkan walaupun intruder itu telah memperoleh kunci, dia tidak mampu memperoleh pesan asli karena Dual RSA. Karena Dual RSA, kita telah memperoleh dua keuntungan yaitu pesan tidak dapat didekripsi dan waktu yang dibutuhkan untuk melakukan operasi enkripsi dan dekripsi lebih sedikit dibandingkan dengan RSA karena Dual RSA melakukan enkripsi dan dekripsi dengan dua blok pada satu waktu.
Algoritma Kriptografi Kunci Publik baru, Dual-RSA telah dikembangkan untuk ferforma yang lebih baik terkait biaya komputasi dan kebutuhan memory storage. Ia juga disebut RSA-CRT, karena digunakan oleh Chinese Remainder Theorem, CRT untuk dekripsinya. Dari output itu, tercatat bahwa Dual-RSA telah memperbaiki performa RSA terkait biaya komputasi dan kebutuhan memory storage.
Ia mencapai paralelisme. Dekripsi CRT diperoleh secara kasar ¼ kali lebih cepat daripada RSA asli.

Gambar 10: Komunikasi Protokol Hybrid yang aman
REFERENSI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s