BAB I
PENDAHULUAN
1.1 Latar Belakang
Masalah keamanan merupakan suatu aspek penting dalam
pengiriman data maupun informasi melalui jaringan. Hal ini disebabkan
karenakemajuan di bidang jaringan komputer dengan konsep open system-nya
sehingga memudahkan seseorang untuk masuk ke dalam jaringan tersebut. Hal
tersebut dapat mengakibatkan proses pengiriman data menjadi tidak aman dan
dapat saja dimanfaatkan oleh orang maupun pihak lain yang tidak bertanggung
jawab, untuk mengambil data ataupun informasi ditengah jalan. Oleh karena itu,
dibutuhkan suatu sistem keamanan yang dapat menjaga kerahasiaan suatu data
maupun informasi, sehingga data tersebut dapat dikirimkan dengan aman. Salah
satu cara untuk menjaga keamanan dan kerahasiaan suatu data maupun informasi
adalah dengan teknik enkripsi dan dekripsi dengan memanfaatkan algoritma WAKE guna
membuat data, maupun informasi agar tidak dapat di baca atau di mengerti oleh
sembarang orang, kecuali untuk penerima yang berhak.
1.2 Perumusan masalah.
Permasalahan yang diangkat pada penelitian ini adalah :
1.
Bagaimana
merancang
aplikasi enkripsi dan diskripsi dalam iplementasikan ke sebuah text
2.
Bagaimana
mengimplementasikan pendekatan rumus algoritma WAKE dalam enkripsi simentri
untuk melindungi teks berupa kode yang telah dibuat dengan algoritma wake
3. Membuat
data text, maupun informasi agar tidak dapat di baca atau di mengerti oleh
sembarang orang, kecuali untuk penerima yang berhak.
1.3 Batasan masalah.
Untuk
menyelesaikan permasalahan di atas diberikan batasan-batasan sebagai berikut:
1. Desain
sistem aplikasi ini dibatasi dengan menggunakan metode algoritma WAKE
2.
Implementasi dilakukan pada proses pembentukan kunci berupa
banyaknya putaran yang telah ditentukan
3.
Hanya mengacu pada pemrosesan sebuah text
4.
Menggunakan Operating system windows 7 ultimate
1.4. Tujuan Penelitian
Tujuan
dari pembuatan proposal ini adalah:
1.
Untuk menjaga keamanan file yang dirahasiakan.
2.
Untuk menyembunyikan keberadaan file rahasia sehingga tidak
dapat dideteksi.
3.
Untuk memberikan pandangan bahwa kriptografi juga
memiliki tingkat keamanan yang cukup tinggi dibandingkan dengan steganografi
1.5
Manfaat Penelitian
Manfaat
dari pembuatan proposal ini adalah :
1. Agar keamanan data bisa
terlinddungi dari akses luar yang tidak di inginkan
2. Agar bisa menjadi aplikasi yang
mampu menjaga kerahasiaan dan keamanan sebuah file.
3. Agar bisa mengerti tentang rumus
algoritma WAKE dalam penyembuyian sebuah text
BAB 2
TINJAUAN PUSTAKA
2.1
Data
Data
merupakan bentuk jamak dari datum, berasal dari bahasa Latin yang berarti
"sesuatu yang diberikan". Dalam penggunaan sehari-hari data berarti
suatu pernyataan yang diterima secara apa adanya. Pernyataan ini adalah hasil
pengukuran atau pengamatan suatu variabel yang bentuknya dapat berupa angka,
kata-kata, atau citra.
2.1.1
Jenis-jenis data
a. Data
nominal
Data
nominal adalah ukuran yang paling sederhana, dimana angka yang diberikan kepada
objek mempunyai arti sebagai label saja, dan tidak menunjukkan tingkatan
apapun. Ciri-ciri data nominal adalah hanya memiliki atribut, atau nama, atau
diskrit
b.
Data ordinal
Bagian
lain dari data kontinum adalah data ordinal. Data ini, selain memiliki nama
(atribut), juga memiliki peringkat atau urutan. Angka yang diberikan mengandung
tingkatan. Ia digunakan untuk mengurutkan objek dari yang paling rendah sampai
yang paling tinggi, atau sebaliknya.
c.
Data interval
Pemberian
angka kepada set dari objek yang mempunyai sifat-sifat ukuran ordinal dan
ditambah satu sifat lain, yakni jarak yang sama pada pengukuran dinamakan data
interval. Data ini memperlihatkan jarak yang sama dari ciri atau sifat objek
yang diukur. Akan tetapi ukuran interval tidak memberikan jumlah absolut dari
objek yang diukur
d.
Data ratio
Ukuran
yang meliputi semua ukuran di atas ditambah dengan satu sifat yang lain, yakni
ukuran yang memberikan keterangan tentang nilai absolut dari objek yang diukur
dinamakan ukuran ratio (data rasio). Data ratio, yang diperoleh melalui
mengukuran dengan skala rasio memiliki titik nol.
2.2 Kriptografi
Kriptografi, secara umum adalah ilmu
dan seni
untuk menjaga kerahasiaan berita.
Selain pengertian tersebut terdapat pula pengertian ilmu yang mempelajari
teknik-teknik matematika yang berhubungan dengan
aspek keamanan informasi
seperti kerahasiaan data,
keabsahan data,
integritas data,
serta autentikasi data.
Tidak semua aspek keamanan informasi
ditangani oleh kriptografi.
Ada empat tujuan mendasar dari ilmu kriptografi ini yang
juga merupakan aspek keamanan informasi yaitu :
Ø Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari
informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka/mengupas informasi
yang telah disandi.
Ø Integritas data, adalah berhubungan dengan
penjagaan dari perubahan data secara tidak sah. Untuk menjaga integritas data,
sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh
pihak-pihak yang tidak berhak, antara lain penyisipan, penghapusan, dan
pensubsitusian data lain kedalam data yang sebenarnya.
Ø Autentikasi, adalah berhubungan dengan
identifikasi/pengenalan, baik secara kesatuan sistem maupun informasi itu
sendiri. Dua pihak yang saling berkomunikasi harus saling memperkenalkan diri.
Informasi yang dikirimkan melalui kanal harus diautentikasi keaslian, isi
datanya, waktu pengiriman, dan lain-lain.
Ø Non-repudiasi., atau nirpenyangkalan adalah usaha
untuk mencegah terjadinya penyangkalan terhadap pengiriman/terciptanya suatu
informasi oleh yang mengirimkan/membuat.
2.2.1
Algoritma
Sandi
Algoritma
sandi adalah algoritma yang berfungsi untuk melakukan tujuan kriptografis. Algoritma tersebut harus memiliki kekuatan untuk melakukan
(dikemukakan oleh Shannon):
·
konfusi/pembingungan
(confusion), dari teks terang sehingga sulit untuk direkonstruksikan secara
langsung tanpa menggunakan algoritma dekripsinya
·
difusi/peleburan
(difusion), dari teks terang sehingga karakteristik dari teks terang tersebut
hilang.
Sehingga
dapat digunakan untuk mengamankan informasi. Pada implementasinya sebuah
algoritmas sandi harus memperhatikan kualitas
layanan/Quality of Service atau QoS dari keseluruhan sistem dimana dia
diimplementasikan. Algoritma sandi yang handal adalah algoritma sandi yang
kekuatannya terletak pada kunci, bukan pada kerahasiaan algoritma itu sendiri. Teknik
dan metode untuk menguji kehandalan algoritma sandi adalah kriptanalisa.
Dasar
matematis yang mendasari proses enkripsi dan dekripsi adalah relasi antara dua himpunan
yaitu yang berisi elemen teks terang /plaintext dan yang berisi elemen teks sandi/ciphertext. Enkripsi dan dekripsi merupakan fungsi transformasi antara himpunan-himpunan tersebut.
Apabila elemen-elemen teks terang dinotasikan dengan P, elemen-elemen teks
sandi dinotasikan dengan C, sedang untuk proses enkripsi dinotasikan dengan E,
dekripsi dengan notasi D.
Enkripsi :
Dekripsi :
atau
Secara
umum berdasarkan kesamaan kuncinya, algoritma sandi dibedakan menjadi :
·
kunci-simetris/symetric-key, sering disebut juga algoritma
sandi konvensional karena umumnya diterapkan pada algoritma sandi klasik
·
kunci-asimetris/asymetric-key
Berdasarkan
arah implementasi dan pembabakan jamannya dibedakan menjadi :
·
algoritma
sandi klasik classic
cryptography
·
algoritma
sandi modern modern
cryptography
Berdasarkan
kerahasiaan kuncinya dibedakan menjadi :
·
algoritma
sandi kunci rahasia secret-key
·
algoritma
sandi kunci publik publik-key
Pada skema
kunci-simetris, digunakan sebuah kunci rahasia yang sama untuk melakukan proses
enkripsi dan dekripsinya. Sedangkan pada sistem kunci-asimentris digunakan
sepasang kunci yang berbeda, umumnya disebut kunci publik(public key) dan kunci pribadi (private
key), digunakan untuk proses enkripsi
dan proses dekripsinya. Bila elemen teks terang dienkripsi dengan menggunakan
kunci pribadi maka elemen teks sandi yang dihasilkannya hanya bisa
didekripsikan dengan menggunakan pasangan kunci pribadinya. Begitu juga
sebaliknya, jika kunci pribadi digunakan untuk proses enkripsi maka proses
dekripsi harus menggunakan kunci publik pasangannya.
2.2.1.1
Algoritma
Sandi Kunci-Simetris
Skema
algoritma sandi akan disebut kunci-simetris apabila untuk setiap proses
enkripsi maupun dekripsi data secara keseluruhan digunakan kunci yang sama.
Skema ini berdasarkan jumlah data per proses dan alur pengolahan data
didalamnya dibedakan menjadi dua kelas, yaitu block-cipher dan stream-cipher.
1.
Block-Cipher
Block-cipher
adalah skema algoritma sandi yang akan membagi-bagi teks terang yang akan
dikirimkan dengan ukuran tertentu (disebut blok) dengan panjang t, dan setiap
blok dienkripsi dengan menggunakan kunci yang sama. Pada umumnya, block-cipher
memproses teks terang dengan blok yang relatif panjang lebih dari 64 bit, untuk mempersulit penggunaan
pola-pola serangan yang ada untuk membongkar kunci. Untuk menambah kehandalan
model algoritma sandi ini, dikembangkan pula beberapa tipe proses enkripsi,
yaitu :
·
ECB, Electronic Code Book
·
CBC, Cipher Block Chaining
·
OFB,
Output Feed Back
·
CFB,
Cipher Feed Back
2.
Stream-Cipher
Stream-cipher
adalah algoritma sandi yang mengenkripsi data persatuan data, seperti bit,
byte, nible atau per lima bit(saat data yang di enkripsi berupa data Boudout).
Setiap mengenkripsi satu satuan data digunakan kunci yang merupakan hasil
pembangkitan dari kunci sebelum.
3 Algoritma Sandi Kunci-Asimetris
Skema
ini adalah algoritma yang menggunakan kunci yang berbeda untuk proses enkripsi
dan dekripsinya. Skema ini disebut juga sebagai sistem kriptografi kunci publik
karena kunci untuk enkripsi dibuat untuk diketahui oleh umum (public-key) atau
dapat diketahui siapa saja, tapi untuk proses dekripsinya hanya dapat dilakukan
oleh yang berwenang yang memiliki kunci rahasia untuk mendekripsinya, disebut
private-key. Dapat dianalogikan seperti kotak pos yang hanya dapat dibuka oleh
tukang pos yang memiliki kunci tapi setiap orang dapat memasukkan surat ke
dalam kotak tersebut. Keuntungan algoritma model ini, untuk berkorespondensi
secara rahasia dengan banyak pihak tidak diperlukan kunci rahasia sebanyak
jumlah pihak tersebut, cukup membuat dua buah kunci, yaitu kunci publik bagi
para korensponden untuk mengenkripsi pesan, dan kunci privat untuk mendekripsi
pesan. Berbeda dengan skema kunci-simetris, jumlah kunci yang dibuat adalah
sebanyak jumlah pihak yang diajak berkorespondensi[4].
Ø Fungsi Enkripsi dan Dekripsi Algoritma
Sandi Kunci-Asimetris
Apabila
Ahmad dan Bejo hendak bertukar berkomunikasi, maka:
1. Ahmad dan Bejo masing-masing membuat
2 buah kunci
1. Ahmad membuat dua buah kunci,
kunci-publik
dan kunci-privat
2. Bejo membuat dua buah kunci,
kunci-publik
dan kunci-privat
2. Mereka berkomunikasi dengan cara:
1. Ahmad dan Bejo saling bertukar
kunci-publik. Bejo mendapatkan
dari Ahmad, dan Ahmad mendapatkan
dari Bejo.
2. Ahmad mengenkripsi teks-terang
ke Bejo dengan fungsi
3. Ahmad mengirim teks-sandi
ke Bejo
4. Bejo menerima
dari Ahmad dan membuka teks-terang dengan fungsi
Hal yang
sama terjadi apabila Bejo hendak mengirimkan pesan ke Ahmad
1. Bejo mengenkripsi teks-terang
ke Ahmad dengan fungsi
2. Ahmad menerima
dari Bejo dan membuka teks-terang dengan fungsi
2.1 Algoritma WAKE
WAKE
merupakan singkatan dari Word Auto Key Encryption ditemukan pertama kali oleh
David J. Wheeler pada tahun 1993. Tujuannya adalah untuk mendesain sebuah
system enkripsi yang berkecepatan sedang dan berkeamanan tinggi. Inti dari
mtode WAKE adalah di dalam proses pembentukan S-box dan pembangkitan kunci[1].
Secara
keseluruhan proses dalam algoritma wake adalah sebagai berikut:
1. Proses
pembentukan table S-box
2. Pembentukan
kunci
3. Proses
enkripsi
4. Proses
dekripsi
2.2.1.
Proses
Pembentukan S-box
Langkah-langkah
di dalam proses pembentukan table S-box
:
1. Inisialisasi
nilai TT[0] … TT[7] :
TT[0]
: 726a8f3b (dalam heksadesimal)
TT[1]
: e69a3b5c (dalam heksadesimal)
TT[2]
: d3c71fe5 (dalam heksadesimal)
TT[3]
: ab3c73d2 (dalam heksadesimal)
TT[4]
: 4d3a8eb3 (dalam heksadesimal)
TT[5]
: 0396d6e8 (dalam heksadesimal)
TT[6]
: 3d4c2f7a (dalam heksadesimal)
TT[7]
: 9ee27cf3 (dalam heksadesimal)
2.
Inisialisasi untuk nilai awal T[0]…T[3]
:
T[0] = K[0]
T[1] = K[1]
T[2] = K[2]
T[3] = K[3]
K[0]…K[3] merupakan inputan kunci
yang dipecah menjadi empat bagian.
3.
Untuk
T[4] sampai T[255], lakukan proses berikut :
X = T[n-4] + T[n-1]
T[n] = X >> 3 XOR TT(X AND 7)
4.
Untuk
T[0] sampai T[22], lakukan proses berikut :
T[n] = T[n] + T[n+89]
5.
Set
nilai untuk beberapa variabel di bawah ini :
X = T[33]
Z = T[59] OR (01000001h)
Z = Z AND (FF7FFFFFh)
X = (X AND FF7FFFFFh) + Z
6.
Untuk
T[0] … T[255], lakukan proses berikut :
X = (X AND FF7FFFFFh) + Z
T[n] = T[n] AND 00FFFFFFh XOR X
7.
Inisialisasi
nilai untuk beberapa variabel berikut ini :
T[256] = T[0]
X = X AND 255
8.
Untuk
T[0] … T[255], lakukan proses berikut :
Temp = (T[n XOR X] XOR X) AND 255
T[n] = T[Temp]
T[X] = T[n+1]
2.2.2.
Proses
Pembentukan Kunci
Di dalam WAKE
proses pembentukan kunci ditentukan dalam banyaknya n putaran. Jadi semakin
banyak putaran dalam pembentukan kunci maka keamanan akan semakin meningkat.
fungsi dalam pembentukan kunci adalah M(X,Y)=(X+Y)>>8 XOR t[(X+Y) &
255].
Proses yang
pertama dilakukan adalah memecah inputan kunci menjadi 4 bagian yang dijadikan
inputan nilai awal pada variable A0,
B0,
C0,
D0
yang selanjutnya diproses melalui langkah berikut :
Ai+1 = M(Ai, Di)
Bi+1 = M(Bi, Ai+1)
Ci+1 = M(Ci, Bi+1)
Di+1 = M(Di, Ci+1)
Nilai dari Di merupakan
nilai dari kunci Ki.
2.2.3.
Proses
Enkripsi
Proses enkripsi
dari metode wake adalah dengan melakukan operasi perhitungan XOR pada plainteks
dengan kunci untuk menghasilkan chiperteks.
P Å K = C
Keterangan
:
P
= plainteks
K
= kunci
C
= chiperteks
2.2.4.
Proses
Dekripsi
Proses dekripsi dalam metode WAKE
adalah melakukan operasi perhitungan XOR
pada chiperteks dengan kunci untuk mendapatkan plainteks.
C
Å
K = P
Tidak ada komentar:
Posting Komentar