1
1. Pendahuluan
Penyadapan semakin marak terjadi belakangan ini. Masalah ini semakin besar apabila konten yang disadap adalah informasi rahasia suatu negara.
Indonesia beberapa kali diberitakan disadap oleh pihak asing, hal ini menjadi pertanda bahwa sistem keamanan informasi di negara ini masih lemah. Untuk
meningkatkan keamanan pertukaran informasi, diperlukan suatu metode yang menjaga akses ke informasi ini. Dengan kriptografi kita dapat menjaga kerahasian
suatu informasi dari pihak yang tidak diinginkan.
Untuk menunjang
kriptografi dapat
menggunakan fungsi-fungsi
matematika. Fungsi matematika tersebut digunakan dalam proses Enkripsi dan Dekripsi suatu pesan untuk menjaga kerahasiaan data, keabsahan data, integritas
data, serta autentikasi data.
Berdasarkan latar belakang masalah, maka akan dilakukan penelitian yang membahas tentang teknik kriptografi simetris dengan beberapa fungsi matematika
yaitu fungsi logaritma kuadrat dan fungsi bernoulli sebagai kunci sedangkan fungsi linear digunakan dalam putaran untuk proses enkripsi-dekripsi. Fungsi
logaritma kuadrat digunakan karena memiliki bentuk non-linear dan juga merupakan fungsi transenden. Sedangkan fungsi bernoulli digunakan karena
merupakan fungsi polinomial dan juga memiliki bentuk non-linear. Penelitian ini, diharapkan dapat menambah ragam teknik kriptografi dengan kunci simetris.
2. Tinjauan Pustaka
Penelitian terdahulu yang berjudul Penggunaan “Fungsi Rasional,
Logaritma Kuadrat, dan Polinomial Orde- dalam Modifikasi Kriptografi Caesar
Cipher ”. Penelitian ini memodifikasi Caesar cipher dengan menggunaan dua buah
kunci yang digunakan dalam setiap putaran. Secara matematis dalam penulisan ini melakukan pergeseran karakter dalam ASCII [1].
Penelitian lain yang berjudul “Public key cryptography using Permutation
P-Polynomials over Finite Fields ”. Penelitian tersebut menggunakan permutasi p-
polinomial untuk mendesain kunci kriptografi yang efisien [2]. Dari dua penelitian di atas penulis memiliki gagasan untuk merancang
kriptografi menggunakan fungsi logaritma kuadrat dan fungsi Bernoulli, yang digunakan sebagai pembangkit kunci. Sedangkan fungsi linear digunakan pada
proses enkripsi dan dekripsi pada setiap putaran. Pembangkit kunci yang pertama menggunakan fungsi logaritma kuadrat. Secara
umum memiliki persamaan seperti berikut [3]:
1 Pembangkit kunci yang lain menggunakan fungsi Bernoulli yang memiliki bentuk
seperti berikut [4]:
∑
Proses enkripsi disetiap putarannya menggunakan fungsi linear yang memiliki bentuk umum seperti berikut :
3
2
Perhitungan matematika banyak digunakan dalam perancangan kriptografi, selain menggunakan Persamaan 1 2 dan 3 juga digunakan proses Convert
Between Base CBB yang secara umum diberikan pada defenisi berikut ini. Definisi 1
[5]. Konversi sembarang bilangan positif berbasis 10 basis β. Secara
umum notasinya,
4 Definisi 2
[5]. Konversi dari urutan bilangan list digit dalam basis α ke basis
β. Secara umum dinotasikan, 5
dengan jumlahan urutan bilangan jumlahan mengikuti aturan,
∑
dimana adalah nilai terakhir dari urutan bilangan .
dan adalah bilangan positif.
Nilai yang diperoleh merupakan kumpulan urutan bilangan dalam basis β.
3.
Perancangan Kriptografi
Dalam perancangan kriptografi simetris menggunakan fungsi logaritma kuadrat dan fungsi bernoulli dibutuhkan beberapa tahapan dalam menyusunan
penelitian.
Gambar 1 Tahapan Penelitian
Tahapan penelitian pada Gambar 1, dapat dijelaskan sebagai berikut. Tahap Pertama : Analisis Kebutuhan perancangan kriptografi kunci simetris
menggunakan fungsi logaritma kuadrat dan fungsi bernoulli, sehingga ditemukan kebutuhan apa saja yang diperlukan; Tahap Kedua : Pengumpulan bahan, yang
meliputi pengumpulan referensi yang berkaitan dengan fungsi logaritma kuadrat dan fungsi bernoulli dan literatur yang berhubungan dengan proses enkripsi dan
dekripsi; Tahap Ketiga : Perancangan Kriptografi Simetris, yaitu meliputi pembuatan flowchart untuk pengambilan keputusan, serta melakukan analisa-
analisa hasil yang dapat diambil dari modifikasi yang telah dilakukan; Tahap
Pengumpulan bahan Perancangan Kriptografi Simetris
Uji Hasil Perancangan Laporan Penelitian
Analisis Kebutuhan
3
Keempat : Uji Hasil Perancangan, apabila perancangan kriptografi simetris sudah selesai dilakukan pengujian dan analisa; Tahap Kelima : Penulisan Laporan Hasil
Penelitian yaitu mendokumentasikan proses penelitian yang sudah dilakukan dari tahap awal hingga akhir ke dalam tulisan, yang menjadi laporan hasil penelitian.
Dalam perancangan kriptografi, terdapat dua proses pokok yaitu, enkripsi dan dekripsi. Proses enkripsi dijelaskan pada Gambar 2.
Gambar 2 Proses Enkripsi
Linear
ASCII Plaintext
FLk
∑ FBer
= Jumlah
Main key ASCII
·2
FLK 1
·3
FBer 1
FBer 2
+7
. .
. .
. .
. .
.
·2
+6
·5
FLk FBer 4
FLK 4
FLK 5
CBB Ciphertext
∑ FBer
4
Proses enkripsi kriptografi kunci simetris pada Gambar 2 merupakan proses dimana plainteks dikonversi ke dalam kode ASCII, kemudian disubtitusi dalam
algoritma linear menggunakan pembangkit kunci logaritma kuadrat dan fungsi bernoulli.
Berikut dijelaskan tahap persiapan dan langkah-langkah secara umum dalam proses enkripsi kriptografi kunci simetris.
a Menyiapkan plainteks
Masukkan plainteks yang akan dienkripsi. n adalah jumlah plainteks. 7
b Menyiapkan kunci
Kunci yang dimasukkan diubah kebentuk bilangan ASCII kemudian setiap bilangannya dijumlahkan lalu dikali 2 dan hasilnya diproses dengan modulo
127 dengan m adalah jumlah inputan kunci sehingga.
8 9
mod 127 10
c Menyiapkan fungsi linear
Hasil dari nilai Persamaan 7 dimasukkan kedalam dengan = 2 dan =
7 kemudian diakhiri dengan proses modulo 127. Konstanta yang digunakan dari angka 1 sampai dengan 25 sehingga.
11 12
d Menyiapkan kunci logaritma kuadrat
Hasil dari Persamaan 10 dimasukkan kedalam dimana b = 1 dan c = 2
dan diakhiri dengan proses modulo 127. Kunci logaritma kuadrat digunakan disetiap putaran dalam proses enkripsi dan dekripsi.
13 e
Menyiapkan fungsi bernoulli sebagai kunci Hasil dari Persamaan 10 dimasukkan kedalam
dimana = 10 · 2 dan diakhiri dengan proses modulo 127. Kunci bernoulli digunakan disetiap
putaran dalam proses enkripsi dan dekripsi.
∑
15 f
Menyiapkan kunci tambahan yang diambil dari hasil kunci logaritma kuadrat dan kunci bernoulli yang digunakan disetiap putaran proses enkripsi
dan dekripsi. Konstanta yang digunakan dari angka 1 sampai dengan 25 sehingga.
16 Putaran pertama mengambil Persamaan 16 sebagai kunci. Dimana
= Ɣ dan p = 2 sehingga 17
Putaran pertama mengambil Persamaan 16 sebagai kunci. Dimana = β dan p = 3 sehingga
5
18 Putaran pertama mengambil Persamaan 16 sebagai kunci. Dimana
= β dan p = 3 sehingga 19
Putaran kedua mengambil Persamaan 16 sebagai kunci. Dimana = Ɣ dan p = 4 sehingga
20 Putaran kedua mengambil Persamaan 16 sebagai kunci. Dimana
= Ɣ dan p = 5 sehingga 21
Putaran kedua mengambil Persamaan 16 sebagai kunci. Dimana =
β dan p = 9 sehingga 22
Putaran ketiga mengambil Persamaan 16 sebagai kunci. Dimana =
β dan p = 2 sehingga 23
Putaran ketiga mengambil Persamaan 16 sebagai kunci. Dimana = Ɣ dan p = 6 sehingga
24 Putaran ketiga mengambil Persamaan 16 sebagai kunci. Dimana
= Ɣ dan p = 5 sehingga 25
g Menyiapkan fungsi linear
Setiap proses enkripsi menggunakan fungsi linear. Konstanta yang digunakan dari angka 1 sampai dengan 25 sehingga.
mod 127 26
Putaran pertama mengambil fungsi linear Persamaan 26 dan Persamaan
sebagai kunci pembangkit yang dimasukkan dengan =
dan = 5 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 27
Putaran pertama mengambil fungsi linear Persamaan 26 dan Persamaan
serta Persamaan sebagai kunci pembangkit yang dimasukkan dengan
= dan
= Ɣ lalu diakhiri dengan proses modulo 127 sehingga
mod 127 28
Putaran pertama mengambil fungsi linear Persamaan 26 dan Persamaan
sebagai kunci pembangkit yang dimasukkan dengan =
dan = 2 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 29
Putaran kedua mengambil fungsi linear Persamaan 26 dan Persamaan
sebagai kunci pembangkit yang dimasukkan dengan =
dan = 5 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 30
6
Putaran kedua mengambil fungsi linear Persamaan 26 dan Persamaan
serta Persamaan sebagai kunci pembangkit yang dimasukkan dengan
= dan
= β lalu diakhiri dengan proses modulo 127 sehingga
mod 127 31 Putaran kedua mengambil fungsi linear Persamaan 26 dan
Persamaan sebagai kunci pembangkit yang dimasukkan dengan
= dan
= 5 lalu diakhiri dengan proses modulo 127 sehingga mod 127 32
Putaran ketiga mengambil fungsi linear Persamaan 26 dan Persamaan
sebagai kunci pembangkit yang dimasukkan dengan =
dan = 4 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 33 Putaran ketiga mengambil fungsi linear Persamaan 26 dan
Persamaan serta Persamaan sebagai kunci pembangkit
yang dimasukkan dengan =
dan = β lalu diakhiri dengan
proses modulo 127 sehingga mod 127 34
Putaran ketiga mengambil fungsi linear Persamaan 26 dan Persamaan
sebagai kunci pembangkit yang dimasukkan dengan =
dan = 17 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 35 h
Menyiapkan Convert Between Base CBB yang diambil dari persamaan 5 bilangan basis yang disiapkan yaitu 416 karena bilangan basis harus lebih
besar dari nilai sehingga
36 Berikut dijelaskan tahap persiapan dan langkah-langkah secara umum dalam
proses dekripsi kriptografi kunci simetris. a
Menyiapkan invers Convert Between Base CBB yang diambil dari persamaan 5 sehingga
37 b
Menyiapkan invers fungsi linear Setiap proses dekripsi menggunakan invers fungsi linear, bentuk secara
umumnya yaitu, mod 127 38
Mengambil invers fungsi linear Persamaan 38 dan Persamaan sebagai kunci pembangkit yang dimasukkan dengan
= dan
= 17 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 39
7
Mengambil invers fungsi linear Persamaan 38 dan Persamaan serta Persamaan
sebagai kunci pembangkit yang dimasukkan dengan
= dan
= β lalu diakhiri dengan proses modulo 127 sehingga
mod 127 40
Mengambil invers fungsi linear Persamaan 38 dan Persamaan sebagai kunci pembangkit yang dimasukkan dengan
= dan
= 4 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 41
Mengambil invers fungsi linear Persamaan 38 dan Persamaan sebagai kunci pembangkit yang dimasukkan dengan
= dan
= 5 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 42
Mengambil invers fungsi linear Persamaan 38 dan Persamaan serta Persamaan
sebagai kunci pembangkit yang dimasukkan dengan
= dan
= β lalu diakhiri dengan proses modulo 127 sehingga
mod 127 43
Mengambil invers fungsi linear Persamaan 38 dan Persamaan sebagai kunci pembangkit yang dimasukkan dengan
= dan
= 5 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 44
Mengambil invers fungsi linear Persamaan 38 dan Persamaan sebagai kunci pembangkit yang dimasukkan dengan
= dan
= 2 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 45
Mengambil invers fungsi linear Persamaan 38 dan Persamaan serta Persamaan
sebagai kunci pembangkit yang dimasukkan dengan
= dan
= Ɣ lalu diakhiri dengan proses modulo 127 sehingga
mod 127 46
Mengambil invers fungsi linear Persamaan 38 dan Persamaan sebagai kunci pembangkit yang dimasukkan dengan
= dan
= 5 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 47
Mengambil invers fungsi linear Persamaan 38 dengan = 2 dan = 7 lalu diakhiri dengan proses modulo 127 sehingga
mod 127 Gambar 2 menjelaskan proses enkripsi, tahap-tahapnya sebagai berikut:
a Baris bilangan dari Persamaan 7 dimasukkan kedalam fungsi linear pada
Persamaan 12, dimana setiap nilai dari Persamaan 7 dikalikan dengan 12 dan ditambah
12 untuk adalah jumlah bilangan plainteks, sehingga menghasilkan
8
49 b
Hasil dari Persamaan 49 dimasukkan kedalam fungsi linear Persamaan 27 dimana memanggil kunci pembangkit dari Persamaan 17 dan nilai
dari Persamaan 27 untuk adalah jumlah bilangan plainteks, sehingga
menghasilkan 50
c Hasil dari Persamaan 50 dimasukkan kedalam fungsi linear Persamaan
28 dimana memanggil kunci pembangkit dari Persamaan 18 dan nilai dari Persamaan 28 untuk
adalah jumlah bilangan plainteks, sehingga menghasilkan
51 d
Hasil dari Persamaan 51 dimasukkan kedalam fungsi linear Persamaan 29 dimana memanggil kunci pembangkit dari Persamaan 19 dan nilai
dari Persamaan 29 untuk adalah jumlah bilangan plainteks, sehingga
menghasilkan 52
e Hasil dari Persamaan 52 dimasukkan kedalam fungsi linear Persamaan
30 dimana memanggil kunci pembangkit dari Persamaan 20 dan nilai dari Persamaan 30 untuk
adalah jumlah bilangan plainteks, sehingga menghasilkan
53 f
Hasil dari Persamaan 53 dimasukkan kedalam fungsi linear Persamaan 31 dimana memanggil kunci pembangkit dari Persamaan 21 dan nilai
dari Persamaan 31 untuk adalah jumlah bilangan plainteks, sehingga
menghasilkan 54
g Hasil dari Persamaan 54 dimasukkan kedalam fungsi linear Persamaan
32 dimana memanggil kunci pembangkit dari Persamaan 22 dan nilai dari Persamaan 32 untuk
adalah jumlah bilangan plainteks, sehingga menghasilkan
55 h
Hasil dari Persamaan 55 dimasukkan kedalam fungsi linear Persamaan 33 dimana memanggil kunci pembangkit dari Persamaan 23 dan nilai
dari Persamaan 33 untuk adalah jumlah bilangan plainteks, sehingga
menghasilkan 56
i Hasil dari Persamaan 56 dimasukkan kedalam fungsi linear Persamaan
34 dimana memanggil kunci pembangkit dari Persamaan 24 dan nilai dari Persamaan 34 untuk
adalah jumlah bilangan plainteks, sehingga menghasilkan
57 j
Hasil dari Persamaan 57 dimasukkan kedalam fungsi linear Persamaan 35 dimana memanggil kunci pembangkit dari Persamaan 25 dan nilai
dari Persamaan 35 untuk adalah jumlah bilangan plainteks, sehingga
menghasilkan 58
9
k Hasil dari Persamaan 58 dimasukkan kedalam Persamaan 36 untuk
adalah jumlah bilangan cipherteks, sehingga menghasilkan 59
Gambar 3 Proses Dekripsi
InvFLK 1 InvLinear
Plaintex ASCII
FLk
. .
. .
. .
InvFBer 2
InvFBer 1
+7
FLk
·2 ·3
Cipher text
InvCBB
FLK 5
InvFBer 4 InvFLK 4
Main key ASCII
= Jumlah
·2 +6
·5
∑ FBer
∑ FBer
. .
.
10
Gambar 3 menjelaskan proses dekripsi, garis besar yang akan dijelaskan sebagai berikut:
a Hasil dari Persamaan 59 dimasukkan kedalam Persamaan 37 untuk
adalah jumlah bilangan plainteks, sehingga menghasilkan 60
b Hasil dari Persamaan 60 dimasukkan kedalam fungsi invers linear
Persamaan 39 dimana memanggil kunci pembangkit dari Persamaan 25 dan nilai
dari Persamaan 39 untuk adalah jumlah bilangan plainteks, sehingga menghasilkan
61 c
Hasil dari Persamaan 61 dimasukkan kedalam fungsi invers linear Persamaan 40 dimana memanggil kunci pembangkit dari Persamaan 25
dan nilai dari Persamaan 40 untuk adalah jumlah bilangan plainteks,
sehingga menghasilkan 62
d Hasil dari Persamaan 62 dimasukkan kedalam fungsi invers linear
Persamaan 41 dimana memanggil kunci pembangkit dari Persamaan 25 dan nilai
dari Persamaan 41 untuk adalah jumlah bilangan plainteks, sehingga menghasilkan
63 e
Hasil dari Persamaan 63 dimasukkan kedalam fungsi invers linear Persamaan 42 dimana memanggil kunci pembangkit dari Persamaan 25
dan nilai dari Persamaan 42 untuk adalah jumlah bilangan plainteks,
sehingga menghasilkan 64
f Hasil dari Persamaan 64 dimasukkan kedalam fungsi invers linear
Persamaan 43 dimana memanggil kunci pembangkit dari Persamaan 25 dan nilai
dari Persamaan 43 untuk adalah jumlah bilangan plainteks, sehingga menghasilkan
65 g
Hasil dari Persamaan 65 dimasukkan kedalam fungsi invers linear Persamaan 44 dimana memanggil kunci pembangkit dari Persamaan 25
dan nilai dari Persamaan 44 untuk adalah jumlah bilangan plainteks,
sehingga menghasilkan 66
h Hasil dari Persamaan 66 dimasukkan kedalam fungsi invers linear
Persamaan 45 dimana memanggil kunci pembangkit dari Persamaan 25 dan nilai
dari Persamaan 45 untuk adalah jumlah bilangan plainteks, sehingga menghasilkan
67 i
Hasil dari Persamaan 67 dimasukkan kedalam fungsi invers linear Persamaan 46 dimana memanggil kunci pembangkit dari Persamaan 25
dan nilai dari Persamaan 46 untuk adalah jumlah bilangan plainteks,
sehingga menghasilkan 68
11
j Hasil dari Persamaan 68 dimasukkan kedalam fungsi invers linear
Persamaan 47 dimana memanggil kunci pembangkit dari Persamaan 25 dan nilai
dari Persamaan 47 untuk adalah jumlah bilangan plainteks, sehingga menghasilkan
69 k
Hasil dari Persamaan 69 dimasukkan kedalam fungsi invers linear Persamaan 48 dan nilai
dari Persamaan 48 untuk adalah jumlah bilangan plainteks, sehingga menghasilkan
70 l
Persamaan diubah kedalam bentuk karakter ASCII sehingga diperoleh
kembali plainteks.
4. Hasil dan Pembahasan