Teknik enkripsi konvensional telah digunakan orang sejak berabadabad yang lalu. Dua teknik dasar yang biasa digunkana, yaitu:
Teknik Substitusi
Teknik Transposisi
1. Teknik Substitusi : penggantian setiap karakter plainteks dengan karakter lain sehingga plainteks tersebut menjadi cipherteks. Terdapat beberapa teknik, yaitu:
Monoalfabet: mengganti satu karakter plaineks dengan satu karakter cipherteks tertentu
Polyalfabet: mengganti lebih dari satu karakter plainteks dengan satu karakter cipherteks
Unilateral : satu enkripsi dilakukan terhadap satu karakter plainteks
Multilateral : satu enkripsi dilakukan terhadap lebih dari satu karakter plainteks.
Teknik substitusi yang cukup terkenal dan paling tua ialah caesar cipher. Caesar cipher menggeser setiap karakter plainteks sebanyak n kali sehingga dihasilkanlah cipherteks. Teknik ini dapat dipecahkan dengan membuat tabel dengan variabel sebanyak 26 kemungkinan.
Teknik lain yang cukup dikenal ialah playfair cipher. Teknik ini menggunakan matriks 5×5 dan membutuhkan kata kunci untuk mengacak susunan setiap karakter dalam matrik tersebut. Dalam pengoperasiannya dikenal dua istilah yaitu: ERDL (Encypt Right Decrypt Left) dan EBDA (Encrypt Below Decrypt Above). Dalam teknik ini susunan plainteks dipecah menjadi dua-dua karakter. Bila terdapat dua huruf yang sama, maka disisipkan karakter tambahan, contoh “aa” menjadi “axa”.
Teknik substitusi berikutnya ialah vigenere cipher. Teknik ini menggunakan matriks dan kunci tertentu. Sumbu x pada matriks menyatakan karakter tiap plainteks, sedangkan sumbu y pada matriks menyatakan karakter kunci. Tiap-tiap karakter plainteks dihubungkan dengan tiap-tiap karakter kunci sehingga dihasilkan karakter cipherteks.
Sebenarnya masih banyak lagi teknik substitusi yang lain, selain yang disebut di atas…
2. Teknik Transposisi : Teknik ini menggunakan permutasi karakter. Teknik ini menggunakan matrik dengan jumlah yang terbatas, biasanya 6 kolom. Plainteks disusun ke arah kanan kemudian ke bawah. Kemudian susunan plainteks diubah sesuai dengan urutan kunci yang diberikan. Cipherteks dibaca tiap kolom kemudian digabung dengan kolom-kolom berikutnya.
Kriptografi, secara umum adalah ilmu dan seni untuk menjaga kerahasiaan berita [bruce Schneier - Applied Cryptography]. Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan aspek keamanan informasi yaitu :
1.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.
2.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.
3.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.
4.Non-repudiasi., atau nirpenyangkalan adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman/terciptanya suatu informasi oleh yang mengirimkan/membuat.
Kriptografi merupakan suatu strategi supaya data atau dokumen kita aman dari orang yang tidak berhak.
·Teknik Substitusi Cipher
Substitusi merupakan pergantian setiap karakter dari plaintext dengan karakter lainnya. Ada 4 istilah dari substitusi cipher, yaitu monoalphabet, polyalphabet, monograph dan polygraph.
Substitusi chipper yang pertama dalam dunia persandian pada waktu pemerintahan Julius Caesar dikenal dengan Caesar Cipher, yaitu dengan mengganti posisi huruf awal dari alphabet. Proses enkripsi pada algoritma sederhana tersebut adalah dengan mengganti karakter-karakter pada pesan yang akan dienkripsi dengan huruf ke 3 setelah huruf karakter pada pesan tersebut.
Sebagai contoh karakter A pada pesan diganti dengan huruf ke 3 setelah huruf A yaitu D.
Contoh:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
Plaintext : “Saya sedang belajar keamanan komputer”
Ciphertext : “VDBDVHGDQJEHODMDUNHDPDQDQNRPSXWHU”
Algoritma dari Caesar Cipher adalah jika (a = 1,b = 2,dst). plaintext diberi symbol “P” dan ciphertext adalah “C” dan kunci adalah “K”:
C = E(P) = (P+K) mod (26)
Dari contoh diatas,enkripsi dapat dilakukan dengan rumus :
C = E(P) = (P+3) mod (26)
Rumus untuk melakukan deskripsi dari ciphertext :
P = D(C) = (C-K) mod (26)
Dari contoh diatas , rumus untuk melakukan deskripsi adalah :
P = D(C) = (C-3) mod (26)
Caesar cipher bisa dipecahkan dengan cara Brute Force,suatu bentuk serangan yang mencoba kemungkinan-kemungkinan hingga ditemukan. Banyaknya kunci dari suatu cipher cukup merespons para cryptanalyst,walaupun percobaan dengan cara Brute Force Attack akan membutuhkan waktu sampai ditemukannya kunci dari ciphertext. Akan tetapi, cara tersebut selalu berhasil walaupun membutuhkan waktu yang lama. Ada beberapa cara yang dilakukan oleh ctyptanalyst dengan melihat frekuensi kemunculan huruf seperti tabel frekuensi kemunculan huruf berikut ini:
Tabel 3.1 Frekuensi Kemunculan Huruf dalam Bahasa Inggris
Karakter
Peluang
Karakter
Peluang
A
0.082
N
.067
B
.015
O
.075
C
.028
P
.019
D
.043
Q
.001
E
.127
R
.060
F
.022
S
.063
G
.020
T
.091
H
.061
U
.028
I
.070
V
.010
J
.002
W
.023
K
.008
X
.001
L
.040
Y
.020
M
.024
Z
.001
Dalam teks bahasa indonesia yang paling sering muncul adalah 10 huruf dan bisa dilihat pada tabel dibawah ini:
Letter
Frequency Kemunculan (%)
A
17.50
N
10.30
I
8.70K
E
7.50
K
5.65
T
5.10
R
4.60
D
4.50
S
4.50
M
4.50
Serangan tsb juga digunakan untuk mencari password dari suatu system.Serangan tsb memungkinkan para attacker mencoba beberapa kemungkunan yang ada pada daftar kata-kata dalam kamus.
Pada perkembangannya,Caesar Cipher bisa menggunakan kunci lain atau bisa disebut dengan polyalphabetic.Kunci bisa jadi nama,alamat,atau apa saja yang diinginkan oleh pengirim pesan.
·Shift Cipher
Sandi geser (shift cipher) merupakan generalisasi dari Sandi Caesar, yaitu tidak membatasi pergeseran sebanyak tiga huruf. Jadi ada sebanyak 26 kunci pergeseran yang bisa digunakan.
Untuk K dengan dan .
Khusus untuk K=13 sering disebut dengan Sandi ROT(13). Dinamakan demikian karena fungsi enkripsi dan dekripsinya sama, sebab 13 sama dengan -13 (khusus di dalam mod 26). Jadi jika diberikan plainteks x, maka untuk mendekripsinya bisa dengan mengenkripsinya lagi.Untuk menyerang sandi geser ini sangat mudah sekali, karena hanya diperlukan sebanyak 25 kali percobaan kunci.
Teknik dari substitusi shift Chiperdengan modulus 26 memberikan angka ke setiap alphabet seperti a ßà0, B ßà 1 ……Z ßà 25,untuk melihat teknik shift cipher lebih jelas lagi,kita lihat contoh sbb:
A
B
C
D
E
F
G
H
I
J
K
L
M
0
1
2
3
4
5
6
7
8
9
10
11
12
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
13
14
15
16
17
18
19
20
21
22
23
24
25
Plaintext : “We will meet at midnight”
Dari kalimat diatas kita akan mendapatkan angka dari setiap huruf sbb:
22 4 22 8 11 11 12 4 4 19 0 19 12 8 3 13 8 6 7 19
Untuk mendapatkan ciphertext, kita memiliki kunci 11. Penambahan setiap nilai dari plaintext dengan kunci 11 akan mendapatkan :
Jika lebih dari 20 setelah ditambah dengan kuncimaka akan dikurangi dengan 26 seperti 22+11=33-26=7.Setelah di-convert menjadi huruf kita akan mendapatkan ciphertext: