PEMBANGUNAN ADD-ON KRIPTOGRAFI
UNTUK BROWSER MOZILLA FIREFOX DENGAN MEMANFAATKAN ALGORITMA CAESAR-CIPHER,
XOR-CIPHER, DAN ADVANCED ENCRYPTION STANDARD
Pendahuluan
Pada jurnal ini
dibahas mengenai ilmu kriptografi yang biasa digunakan untuk menyembunyikan
pesan rahasia di dalam teks. Pada umumnya tehnik kriptografi digunakan untuk
mengubah susunan karakter pada database agar tidak dapat diakses oleh pihak
yang tidak berwenang. Pada jurnal ini tehknik kriptografi tersebut hendak
disisipkan pada firefox web browser sebagai add-ons. Tujuan dari disisipkannya
kriptografi ke dalam mozilla firefox adalah untuk mencegah tercurinya data
logging dari web browser kita ke pada pihak lain. data logging disni biasanya
berisi alamat situs yang pernah kita akses,catatan password atau variable lain
yang pernah kita input pada webrowser. Tentu hal kecil ini bisa menjadi masalah
bila sampai tercuri, seperti pengambil alihan akun email atau jejaring sosial.
Mozilla
Firefox Web Browser Dan Ekstensinya
Mozilla
firefox adalah web browser open source dan merupakan web browser cross platform
artinya web browser ini berhak digunakan dan dikembangkan oleh publik juga
dapat digunakan pada platform atau sistem operasi yang berbeda-beda. Yang
membuat fire fox dapat dikembangkan publik ialah ketersediaan fire fox extension. Fire fox extension adalah kumpulan
dari file yang berisi perintah yang dituliskan menggunakan bahasa pemrograman
java script diatas mark up language berupa XML. Extension dari firefox ini
dapat dibuat dan disisipkan siapa kedalam firefox yang ia gunakan selama mampu
menggunakan bahasa pemrograman java script dan XML.
Kriptografi
Kriptografi adalah suatu ilmu yang mempelajari
bagaimana cara menjaga agar data atau pesan tetap aman saat dikirimkan, dari
pengirim ke penerima tanpa mengalami gangguan dari pihak ketiga. Ada
banyak tehnik kriptografi yang biasa digunakan namun yang dibahas pada jurnal
ini adalah :
·
Caesar Chiper
·
XOR Chiper
·
Advanced Encrypt Standart
Caesar Chiper
Caesar chiper adalah tehnik kriptografi
yang dilakukan dengan mensubtitusi setiap abjad dari pesan yang akan dienkripsi
melalui pergeseran susunan sebagai kuncinya. Misalnya, tiap huruf disubstitusikan dengan huruf ketiga berikutnya dari
susunan abjad. Dalam hal ini kuncinya adalah jumlah pergeseran huruf tersebut, yaitu k = 3. Maka dapat digambarkan sebagai
berikut:
Secara umum, untuk pergeseran huruf sejauh k, dalam hal ini k adalah kunci enkripsi dan dekripsi, dimana ci adalah ciphertext dan pi adalah plaintext, maka fungsi enkripsi dan dekripsinya adalah sebagai
berikut:
Enkripsi: E(pi) = (pi + k)
mod 26
Dekripsi: D(ci) = (ci – k)
mod 26
Sedangkan pergeseran huruf untuk 256 karakter ASCII adalah:
Enkripsi: E(pi) = (pi + k)
mod 256
Dekripsi: D(ci) = (ci – k)
mod 256
XOR Chiper
Algoritma enkripsi XOR Cipher ini
memanfaatkan operasi XOR untuk
melakukan proses enkripsinya. Pada prinsipnya, algoritma ini menggunakan kunci
yang berulang secara periodik, dan setiap bit plaintext di-XOR-kan
dengan setiap bit kunci. Operasi XOR tersebut
dinotasikan dengan simbol “Å” , dimana operasi-operasi yang berlaku di
dalam XOR adalah sebagai berikut:
0
Å 0 = 0 0
Å 1 = 1
1
Å 0 = 1 1
Å 1 = 0
Sehingga algoritma XOR Cipher bila dinotasikan secara matematis adalah sebagai
berikut:
Enkripsi = C = P Å K
Dekripsi = P = C Å K
Advanced Encrypt Standart
AES
adalah sebuah tehnik kriptografi yang memanfaatkan algoritma Rijndael, terdaoat beberapa langkah yang harus dilakukan untuk
menerapkan algoritma ini yaitu :
·
Add round
key
·
Sub-bytes
·
Shit-row
·
Mix-column
Ke-empat proses ini akan terus
berulang hingga masuk pada add-round key ke 10 (final round key)
Berikut ilustrasi melalui gambar
:

Transformasi add round key
Transformasi ini melakukan
operasi XOR terhadap sebuah round key dengan array state, dan hasilnya disimpan di array state. Contoh proses transformasi AddRoundKey dapata dilihat pada gambar berikut:

Transformasi Sub-Bytes

Tabel
1. S-box Pada Transformasi SubByte
Cara pensubstitusiannya
adalah untuk setiap byte pada array state, misalkan S[r, c] = xy yang dalam hal ini xy adalah digit hexadecimal dari nilai S[r,
c], maka nilai substitusinya dinyatakan dengan S’[r, c], adalah elemen di dalam S-box yang merupakan perpotongan baris x dengan kolom y, bila
diilustrasikan dapat dilihatpada gambar berikut:

Transformasi ShiftRows
Transformasi ini melakukan wrapping pada 3 baris terakhir dari array state. Jumlah pergeseran
bergantung pada nilai baris (r).
Baris r = 1 digeser sejauh 1 byte, baris r = 2 digeser sejauh 2 byte,
dan baris r = 3 digeser sejauh 3 byte, sedangkan baris r = 0, tidak digeser.

Transformasi MixColumns
Transformasi MixColumns mengalikan setiap kolom dari array state dengan polinom a(x) mod (x4 + 1). Setiap kolom diperlakukan
sebagai polinom 4-suku pada GF(28). a(x) yang ditetapkan adalah:
a(x) = {03}x3+{01}x2+{01}x+{02}
Transformasi ini dinyatakan
sebagai perkalian matriks:
s’(x) = a(x) Ä
s(x)
Contoh proses hasil
transformasi MixColumns seluruhnya
dari hasil transformasi ShiftRows
adalah sebagai berikut:

Implementasi
Kriptografi Pada Perangkat Lunak
Algoritma kriptografi
yang telah dibahas sebelumnya kemudian diintegrasikan kedalam perangkat
lunak terdapat 3 jenis modul yang perlu dibuat yaitu :
·
Registrasi modul
·
Interface(tatap muka) modul
·
Controller modul
Registrasi modul merupakan modul yang berperan dalam proses
registrasi dan installasi add-ons kedalam mozilla firefox.
Modul modul tersebut adalah :
No
|
File
|
Fungsi
|
1
|
chrome.manifest
|
Meregistrasikan
add-on yang dibuat terhadap browser Firefox.
|
2
|
install.rdf
|
Melakukan
proses instalasi terhadap browser Firefox.
|
Interface modul adalah modul yang mengurusi antarmuka dengan
pengguna dalam jendela browser modul-modul tersebut ialah :
No
|
File
|
Fungsi
|
1
|
roket_overlay.xul
|
Antarmuka pengguna (user interface) untuk
menjalankan add-on melalui menu tools (alat) atau klik kanan di browser Firefox
|
2
|
roket.xul
|
Antarmuka pengguna (user interface) yang
merupakan jendela utama dari add-on.
|
3
|
roket.css
|
Memperindah tampilan jendela utama add-on.
|
Controller Modul adalah modul yang berperan melakukan fungsi
enskripsi yang telah ditulis, modul modul tersebut ialah :
No
|
File
|
Fungsi
|
1
|
roket_overlay.js
|
Menjalankan fungsi pemanggilan add-on
melalui menu klik kanan atau menu tools (alat) di browser Firefox.
|
2
|
roket.js
|
Menjalankan fungsi jenis pemilihan
algoritma dan menampilkan hasil proses di jendela utama add-on.
|
3
|
caesar.js
|
Menjalankan fungsi proses enkripsi
dan dekripsi dengan algoritma Caesar-Cipher.
|
4
|
xor.js
|
Menjalankan fungsi proses enkripsi
dan dekripsi dengan algoritma XOR-Cipher.
|
5
|
aes.js
|
Menjalankan fungsi proses enkripsi
dan dekripsi dengan algoritma AES (Advanced Encryption Standard).
|
Kesimpulan
Kesimpulan dari jurnal ini adalah algoritma kriptografi
berhasil di implementasikan kedalam mozilla firefox, sehingga dengan
menggunakan add- ons ini pengguna dapat mengamankan pesan yang terkandung
didalam mozilla firefox dengan begitu mereka dapat terhindar dari pencurian
data oleh pihak ke-3.
Sekian ulasan ini dapat saya sampaikan, mohon maaf apabila
terdapat kesalahan dalam mengulas jurnal yang bermanfaat ini, terutama
kepada Eka Okuma Jati selaku pembuat jurnal.
No comments:
Post a Comment