• Tidak ada hasil yang ditemukan

ANALISIS KEAMANAN KRIPTOSISTEM KUNCI PUBLIK BERDASARKAN MATRIKS INVERS TERGENERALISASI

N/A
N/A
Protected

Academic year: 2021

Membagikan "ANALISIS KEAMANAN KRIPTOSISTEM KUNCI PUBLIK BERDASARKAN MATRIKS INVERS TERGENERALISASI"

Copied!
10
0
0

Teks penuh

(1)

ANALISIS KEAMANAN KRIPTOSISTEM KUNCI PUBLIK

BERDASARKAN MATRIKS INVERS TERGENERALISASI Oleh Budi Murtiyasa

FKIP Universitas Muhammadiyah Surakarta

Abstract

The paper addresses a security analysis of the public key cryptosystem based on generalized inverses of matrices. The development idea of this cryptosystem is based on the error-correcting code by technique of generalized inverses. The design of public key can described as follow. For the message m, the method of the encryption is c = m G E or c = m G e(H-)T, where G is generator matrix, H- is generalized

re-inverses of parity matrix H, and e is vector binary random. Matrix G and H- are

public key. The method of the decryption is m G = c (I RT), where R = H-H is

private key. From a cryptanalysis, the matrix G is a critical point for the design of the cryptosystem. If G is chosen inaccurate, then the cryptosystem become insecure and inefficient. In generally, the intruder will attack to the cryptosystem by (1) find out matrix H to get error form E, (2) find out binary vector e to get error form E, and (3) try some error form E. From those method, the method by find out binary vector e have greatest probability to success.

Key words : matrix, encryption, decryption, security of cryptosystem.

A. Pendahuluan

Teori matriks invers tergeneralisasi (generalized invers of matrices) telah berkembang sejak awal tahun 1970-an. Tetapi pembahasan matriks invers tergeneralisasi (MIT) ini umumnya terbatas pada lapangan (field) bilangan real (Israel dan Greville, 1974). Tulisan ini mengkaji MIT pada lapangan terhingga Z2. Dapat

ditunjukkan bahwa MIT pada Z2 memberikan alternatif baru bidang kriptografi pada

kriptosistem kunci publik.

Kriptosistem kunci publik, yang menggunakan pendekatan matematis dalam pengembangannya, telah menjadi alternatif baru dalam bidang enkripsi dan dekripsi

(2)

sejauh ini, belum banyak pengkajian yang dilakukan untuk mengetahui tingkat keamanan dari kriptosistem tersebut. Padahal layak tidaknya suatu kriptosistem dipakai untuk melakukan penyandian data sangat tergantung dari tingkat keamanan yang diberikannya. Tulisan ini akan mengkaji tingkat keamanan atau resiko-resiko yang disebabkan oleh enkripsi data menggunakan kriptosistem kunci publik tersebut.

B. Matriks Invers Tergeneralisasi

Pembahasan MIT berada dalam himpunan terhingga Z2 = {0,1}. Diketahui

matriks umum A yang berdimensi kxn. Suatu matriks B yang berdimensi nxk adalah MIT dari matiks A yang berdimensi kxn, jika berlaku ABA = A. Jika A+ menyatakan MIT dari A, maka :

AA+A = A [1]

(Israel dan Greville, 1974).

Sebaliknya, untuk matriks A tersebut di atas, matriks re-invers

tergeneralisasi (generalized re-inverses) dari matriks A adalah suatu matriks X

berdimensi nxk sedemikian hingga A adalah generalized inverses dari X, jadi berlaku

XAX = X. Jika A- menyatakan matriks re-invers tergeneralisasi (MRIT) dari A, maka

A- A A- = A- [2]

(Wu dan Dawson, 1998).

Matriks A berdimensi mxn yang mempunyai rank r dapat dibawa ke bentuk :

PAQ = ⎦ ⎤ ⎢ ⎣ ⎡ O O O Ir , atau A = P-1 ⎦ ⎤ ⎢ ⎣ ⎡ O O O Ir Q-1 [3]

dengan P adalah matriks nonsingular hasil penggandaan matriks baris elementer dan

(3)

Q-1 berturut-turut adalah matriks invers dari P dan Q. MIT dari A dalam bentuk [3] adalah : A+ = Q ⎦ ⎤ ⎢ ⎣ ⎡ W V U Ir P [4]

dengan sembarang matriks-matriks U berdimensi rx(m-r), V berdimensi (n-r)xr dan

W berdimensi (n-r)x(m-r). Pada Z2 = {0,1), banyaknya MIT tergantung dari

banyaknya cara untuk memilih U, V, dan W yang berbeda; dalam hal ini banyaknya adalah 2r(n-r)+n(m-r).

Secara umum untuk matriks A(m,n) yang mempunyai rank m, bawa matriks A sedemikian hingga A = [Im 0] Q, dengan 0 matriks nol berdimensi mx(n-m) dan Q

matriks nonsingular berdimensi nxn. MRIT dari A adalah :

A- = Q-1 ⎦ ⎤ ⎢ ⎣ ⎡ Y X [5]

dengan X dan Y memenuhi hubungan :

X2 = X dan YX = Y [6]

Dapat ditunjukkan bahwa matriks Y(n-m,m) sedemikian hingga kolom ke-i semuanya nol jika elemen diagonal ke-i dari matriks X(m,m) adalah 0, pasangan matriks X dan

Y ini memenuhi persamaan [6] tersebut [Wu dan Dawson, 1998 : 322].

C. Disain Kriptosistem

Diketahui kode linear C–(n,k), matriks generator G = [Ik A] berdimensi kxn;

dan matriks paritas H berdimensi (n-k)xn dari kode linear C tersebut. Matriks H -berdimensi nx(n-k) adalah MRIT dari matriks H. Diketahui juga plaintext m adalah vektor biner dengan panjang k; maka mG adalah katakode (code word). Dengan

(4)

di mana e adalah vektor biner random dengan panjang n-k; diperoleh chipertext :

c = mG ⊕ e(H-)T [8]

Jadi dalam hal ini G dan H- bersifat publik (public key) untuk proses enkripsi pesan m yang menghasilkan chipertext c.

Selanjutnya proses dekripsi untuk memperoleh kembali plaintext m dari chipertext c, dapat dilakukan sebagai berikut :

(i) hitung mG = c ⊕ E

(ii) dapatkan m dari mG dengan menyelesaikan sistem persamaan linear menurut sembarang k vektor kolom G yang bebas linear. Sedangkan bentuk kesalahan E dapat dicari dengan cara sebagai berikut :

c(H- H)T = mGHT(H-)T ⊕ e(H-)T (H)T (H-)T = e(H-)T = E.

Jadi di sini H- H bersifat rahasia (privat key) untuk proses dekripsi dari chipertext c.

Sedangkan prosedur untuk membentuk kunci publik G dan H-, serta kunci rahasia R = H- H dapat dijelaskan sebagai berikut :

(1) Pilih matriks generator G = [Ik A]; dengan sembarang A(k, n-k).

(2) Bentuk H1 = [AT In-k].

(3) Pilih sembarang S(n-k, n-k) yang nonsingular. (4) Bentuk matriks paritas H = SH1.

(5) Bawa H ke bentuk H = [In-k 0]Q, dengan 0(n-k, k) matriks nol dan Q(n, n) matriks

nonsingular.

(6) Pilih matriks X(n-k, n-k) dan Y(k, n-k) yang memenuhi [6]

(7) MRIT dari H adalah H- = Q-1 ⎦ ⎤ ⎢ ⎣ ⎡ Y X .

(8) Kunci rahasia (privat key) R = H- H

(5)

D. Analisis Serangan

Analisis resiko terhadap sistem ini didasarkan pada kemungkinan serangan (attack) terhadap sistem kunci publik ini [Murtiyasa dkk, 2002]. Kemungkinan serangan dari kriptosistem kunci publik ini adalah pencarian bentuk kesalahan E, sehingga penyusup dapat memperoleh mG = c E, di mana E adalah vektor biner random berdimensi 1xn. Sementera itu, menurut metode enkripsi, E = e(H-)T . Tetapi menurut metode dekripsi, bentuk kesalahan E dapat diperoleh dengan melakukan komputasi E = c(H-H)T atau mendapatkan kunci rahasia R = H- H. Karena matriks G dan H- bersifat publik, maka metode serangan terhadap kriptosistem untuk

mendapatkan pesan m dari chipertext c kemungkinannya mendapatakan bentuk kesalahan E dengan cara :

(1) Mencari matriks paritas H, untuk mendapatkan kunci rahasia R = H- H, yang digunakan untuk prosedur standard dekripsi. Dalam hal ini mG = c(In R)T,

yang akhirnya pesan m dapat ditemukan. Matriks H pada dasarnya adalah MIT dari matriks H-.

Jika rank dari H- adalah r dan H- berdimensi nx(n-k), banyaknya MIT dari H -adalah 2r(n-k-r)+(n-k)(n-r) = 2r(n-r)+n(n-k-r). Suatu jumlah yang sangat besar untuk mendapatkan sebuah matriks kunci.

(2) Mencari sembarang vektor biner e berdimensi 1x(n-k) untuk menemukan bentuk kesalahan E = e(H-)T yang dipakai pada proses enkripsi. Selanjutnya mG = c

E dapat diperoleh, yang pada gilirannya pesan m dapat ditemukan.

Vektor biner e mempunyai panjang n-k. Jadi banyaknya pilihan yang berbeda untuk menemukan vektor biner e ini adalah 2n-k. Jika n cukup besar dan k cukup

(6)

dilakukan. Tetapi dibandingkan dengan metode untuk menemukan H, metode mencari vektor biner e mempunyai peluang keberhasilan yang lebih besar.

(3) Mencoba sembarang vektor kesalahan E berdimensi 1xn yang digunakan untuk melakukan koreksi kesalahan kode yang menghasilkan chipertext c = mG E; sehingga mG = c E dapat diperoleh, yang pada gilirannya pesan m dapat ditemukan.

Banyaknya cara untuk menemukan E adalah 2n. Ini berarti bahwa peluang menemukan bentuk E ini cukup besar, yang berarti peluang mendapatkan pesan m pun cukup besar.

E. Beberapa Kelemahan Kunci Kriptosistem

Dari metode serangan menunjukkan adanya beberapa kelemahan yang memungkinkan menyebabkan ketidakamanan dari enkripsi data yang dihasilkan oleh kriptosistem kunci publik berdasarkan MIT. Keberhasilan terbesar untuk menemukan pesan m diperoleh dari metode serangan yang kedua, yaitu mencari vektor biner e berdimensi 1x(n-k). Disusul kemudian metode serangan yang ketiga, yaitu mencari bentuk kesalahan E yang berdimensi 1xn. Sedangkan metode serangan yang pertama, yaitu mencari matriks paritas H dapat dikatakan sulit untuk dipakai menemukan pesan

m. Untuk menemukan vektor biner e dan bentuk kesalahan E, pemilihan nilai k dan n

pada proses pembentukan kunci sangat berperan penting dalam kaitannya dengan tingkat keamanan kriptosistem. Karenanya, nilai k dan n ini menjadi titik kritis pada tahap awal proses enkripsi data. Sebab di samping mempengaruhi pembentukan kunci, baik kunci publik maupun kunci rahasia, nilai k dan n juga sangat mempengaruhi tingkat keamanan kriptosistem serta tingkat efisiensi kriptosistem. Ini berarti bahwa di samping pemilihan unsur-unsur matriks generator G menentukan

(7)

unsur-unsur matriks kunci lainnya, yaitu matriks paritas H dan matriks re-invers H-, pemilihan nilai k dan n juga memegang peranan penting dalam menjamin keamanan kriptosistem. Ini berarti pemilihan matriks generator G (di samping penentuan dimensinya), menjadi titik kritis dari kriptosistem ini.

Tabel 1

Tipe serangan terhadap sistem kunci publik untuk k = 32, n = 64 dan rank r = n-k No Tipe serangan Banyaknya

kemungkinan

Waktu yang diperlukan prosesor Intel PIII 1000 Mhz 1 Mencari H dari H- 1.7977e+308 2.1406e+291 tahun 2 Mencari vektor biner e 4.2950e+009 1.5907 detik

3 Mencoba sembarang E 1.8447e+19 6832127434.707detik, atau 79075.54901282 hari

[Budi Murtiyasa, 2001]

Dari uraian tersebut dapat disimpulkan bahwa dalam upaya mendapatkan kunci rahasia untuk memperoleh plaintext dari pesan yang dikirimkan, penyusup kemungkinannya mencoba mencari matriks paritas H, mencari bentuk kesalahan E dengan mencoba sembarang vektor biner e, serta mencoba mencari bentuk kesalahan

E secara acak. Tabel 1 di atas memberikan ilustrasi banyaknya kemungkinan

pencarian matriks paritas H dan vektor biner e, serta bentuk kesalahan E untuk nilai k = 32 dan n = 64. Dalam ilustrasi tersebut diasumsikan bahwa rank dari matriks H- adalah n-k = 32. Pada Tabel 1 tersebut, waktu untuk mendapatkan berbagai kemungkinan matriks paritas H dan vektor biner e serta bentuk kesalahan E diasumsikan menggunakan prosesor Intel PIII 1000MHz yang mampu mengeksekusi 2700000000 intruksi per detik. Setiap pencarian satu alternatif H, e, atau E diasumsikan memerlukan satu kali instruksi (walaupun dalam kenyataannya mungkin

(8)

Memperhatikan kemungkinan serangan para penyusup, dengan jalan mencari berbagai kemungkinan matriks paritas H dan vektor biner e, serta mencoba sembarang bentuk kesalahan E, dari Tabel 1 tersebut tampak bahwa kemungkinan keberhasilan terbesar dengan mencari vektor biner e. Sebaiknya untuk menjaga keamanan dari sistem kunci publik, nilai k dan n ini dibuat atau dipilih cukup besar. Tetapi yang harus diingat walaupun n dan k cukup besar, jika n dan k terlalu dekat, yang berarti n-k menjadi kecil, maka sistem menjadi kurang aman. Sebaliknya nilai n jangan sampai terlalu besar jika dibandingkan nilai k, sebab jika hal ini terjadi akan muncul ekspansi pesan yang sangat besar. Hal ini berakibat sistem menjadi kurang efisien. Sebaiknya nilai n ini sekitar dua kali nilai k supaya sistem tetap efisien dan aman (Wu and Dawson, 1998 : 325). Tabel 2 di bawah memberikan ilustrasi untuk beberapa nilai k dan n dalam pencarian vektor biner e.

Tabel 2. Banyaknya kemungkinan pencarian vektor biner e No Nilai k dan n Banyaknya vektor

biner e yang mungkin

Waktu yang diperlukan prosesor Intel PIII 1000 Mhz 1 k = 64, n = 127 9.2234e+018 109.8275 tahun

2 k = 128, n = 256 3.4028e+038 4.0519e+021 tahun 3 k = 256, n = 512 1.1579e+077 1.3788e+060 tahun

[Budi Murtiyasa, 2001]

Dari tabel 2 tersebut, tampak bahwa untuk n-k = 63, sistem boleh dikatakan cukup aman dari serangan penyusup, sebab dengan banyaknya kemungkinan vektor biner e adalah 9.2234e+018, diperlukan waktu 109.8275 tahun untuk menemukan semua permutasi dari vektor biner e tersebut. Di antara 9.2234e+018 vektor biner e ini memang ada vektor biner e0 = (000…0) dan vektor biner e1 = (111…1), yang

mungkin saja tidak pernah dipilih oleh pengirim pesan untuk proses enkripsi. Tetapi berkurangnya pilihan ini tidak signifikan, artinya jumlah ini tetap masih sangat besar

(9)

untuk segera ditemukan semua permutasinya oleh penyusup. Ini berarti bahwa dengan mengambil nilai k dan n sedemikian hingga n-k > 63, sistem sudah bisa dikatakan cukup aman dari serangan para penyusup. Tentu saja seiring dengan kemajuan teknologi komputasi, yang memungkinkan ditemukannya prosesor yang mampu bekerja lebih cepat, batasan nilai k dan n ini menjadi sangat relatif sifatnya. Ini berarti metode serangan dengan mencoba sembarang E secara acak suatu saat juga menjadi sangat mungkin dilakukan oleh para penyusup. Dengan demikian pencarian vektor biner e dan bentuk kesalahan E menjadi titik kritis dari kriptosistem ini.

F. Simpulan dan saran

Memperhatikan kemungkinan serangan para penyusup, dengan jalan mencari berbagai kemungkinan matriks paritas H, mencoba sembarang vektor biner e, dan mencari sembarang bentuk kesalahan E, kemungkinan keberhasilan terbesar dengan mencari vektor biner e. Sebaiknya untuk menjaga keamanan dari kriptosistem kunci publik, nilai k dan n ini dibuat atau dipilih cukup besar. Tetapi yang harus diingat walaupun n dan k cukup besar, jika n dan k terlalu dekat, yang berarti n-k menjadi kecil, maka kriptosistem menjadi kurang aman. Sebaliknya nilai n jangan sampai terlalu besar jika dibandingkan nilai k, sebab jika hal ini terjadi akan muncul ekspansi pesan yang sangat besar. Hal ini berakibat kriptosistem menjadi kurang efisien. Sebaiknya nilai n ini sekitar dua kali nilai k supaya kriptosistem tetap efisien dan aman.

Dapat ditunjukkan juga bahwa matriks generator G, yang berfungsi sebagai salah satu kunci publik, merupakan titik kritis bagi pembentukan kunci lainnya. Artinya, jika pemilihan matriks G tidak tepat, maka dipastikan bahwa kriptosistem

(10)

Di samping itu, kriptosistem kunci publik yang dibangun berdasarkan matriks invers tergeneralisasi ini juga masih memerlukan penelitian lebih lanjut, misalnya dalam hal autentikasi (authentication) dan pertukaran kunci (key exchange). Penelitian lanjutan di bidang keamanan kriptosistem ini juga masih terbuka lebar, khususnya untuk menyakinkan para pengguna, apakah disain kriptosistem ini cukup aman atau tidak untuk melakukan penyandian data.

G. Daftar Pustaka

Israel, A.B., dan Greville, T.N.E., 1974, Generalized Inverses : Theory and

Applications, New York : John Wiley & Sons.

Murtiyasa, 2001, “Kriptanalisis kriptosistem Kunci Publik Berdasarkan Matriks Invers Tergenaralisasi”, Laporan Penelitian. Surakarta : Lembaga Penelitian UMS Surakarta.

Murtiyasa, B., Wardoyo, R., dan Palupi, D.J.E., 2002, “Beberapa Karakteristik Kriptosistem Kunci Publik Berdasarkan Matriks Invers Tergenaralisasi” dalam

Natural Jurnal, Vol. 6 (Edisi Khusus), Januari 2002, hal. 297-302. Malang :

FMIPA Universitas Brawijaya.

Wu, C.K., dan Dawson, E., 1998, “Generalised Inverses in Public Key Cryptosystem Design” dalam IEE Proceedings Computer Digit. Tech. Vol. 145 No. 5,

Gambar

Tabel 2. Banyaknya kemungkinan pencarian vektor biner e  No Nilai  k dan n Banyaknya  vektor

Referensi

Dokumen terkait

Hasil penelitian menunjukkan tidak terdapat perbedaan yang bermakna antara nilai pengetahuan kelompok kontrol dan kelompok WPSLangsung dengan modul role play ( p =0,089) dan

Selain itu, Goleman (2016) menjelaskan bahwa kecerdasan emosional adalah kemampuan individu yang dapat membantu untuk mengenali dan mengelola emosi diri dan

Alternatif strategi yang dapat dikembangkan terdiri atas : peningkatan produksi karet alam, penyerapan karet alam untuk bahan baku industri hilir dalam negeri

Ketentuan UUPM Pasal 5 ayat (2) “Penanaman modal asing wajib dalam bentuk perseroan terbatas berdasarkan hukum Indonesia dan berkedudukan di wilayah negara

Teknik referensial digunakan untuk mendeskripsikan dialog tindak tutur pada program tv sentilan sentilun edisi 16 Januari 2015 dengan judul “ Ada Gula Ada Mafia”, sedangkan

Hasil simulasi menunjukkan ketidakseimbangan tegangan untuk masing-masing fasa tidak begitu signifikan yaitu untuk kondisi beban rendah rata-rata 0,95 %, untuk kondisi beban

Bulk Grains Bulk Soft Meals Bulk Animal Protein Meals Liquids – Fats, Oils, Molasses Bagged Animal Protein Meals Bagged Macro Ingredients Bulk Minerals Bagged Macro

Hasil pada penelitian ini adalah (1) variabel keluarga (K) berpengaruh negatif signifikan terhadap intensi berwirausaha (IB), (2) variabel pendidikan kewirausahaan