Implementasi Three-Pass Protocol dengan Kombinasi Algoritma Beaufort Cipher dan One Time Pad untuk Pengamanan Data

2

BAB 2
LANDASAN TEORI

2.1. Kriptografi
2.1.1. Definisi Kriptografi

Kriptografi berasal dari bahasa Yunani yang terdiri dari dua kata yaitu cryto dan
graphia . Crypto berarti rahasia dan graphia berarti tulisan. Jadi secara etimologi

kriptografi adalah tulisan rahasia. Secara terminologi kriptografi didefinisikan sebagai
seni dan ilmu dalam menyandikan pesan dan menjaga keamanannya ketika pesan
tersebut dikirim sampai pesan tersebut diterima (Mollin, 2007).
Teknik kriptografi yang diterapkan dalam penyandian pesan dilakukan dengan
menyembunyikan atau mengodekan pesan asli. Pengirim pesan akan melakukan
penyandian pesan awal menjadi kode-kode yang hanya dapat dibaca oleh penerima
pesan. Proses ini disebut dengan Enkripsi (encryption). Penerima pesan kemudian
mengembalikan kode-kode yang telah diterima menjadi pesan asli dengan
menggunakan kunci yang dikirimkan oleh pengirim pesan. Proses ini disebut dengan
Dekripsi (decryption) (Schneier, 1996). Proses enkripsi dan dekripsi dapat

diilustrasikan pada gambar 2.1 berikut:
plaintext

Enkripsi

ciphertext

Dekripsi

plaintext

Gambar 2.1 Enkripsi dan Dekripsi
Pesan awal dalam sistem kriptografi disebut juga sebagai plaintext (disimbolkan
dengan P), yaitu pesan asli yang akan disampaikan pengirim kepada penerima pesan.
Sedangkan pesan setelah dienkripsi disebut dengan Ciphertext (disimbolkan dengan C).
Kunci yang dikirimkan pengirim kepada penerima pesan untuk proses dekripsi disebut
dengan Key (disimbolkan dengan k). Fungsi enkripsi disimbolkan dengan E(p) dan
secara matematis, fungsi enkripsi untuk memperoleh ciphertext dituliskan sebagai
berikut:


Universitas Sumatera Utara

6

� =

-------------------------------(1)

Fungsi yang digunakan untuk memperoleh kembali plaintext yang telah dienkripsi
disebut dengan fungsi dekripsi yang disimbolkan dengan D(C). Secara matematis dapat
dituliskan sebagai berikut:
= � -------------------------------(2) (Schneier, 1996).
2.1.2. Tujuan Kriptografi

Ada beberapa tujuan kriptografi, diantaranya adalah sebagai berikut (Bellare &
Rogaway, 2005):
1.

Kerahasiaan (Secrecy)
Secrecy bermakna kerahasiaan atau privasi. Hal tersebut berarti setiap


informasi yang dikirim atau diterima hanya dapat diakses oleh pihak yang
berkepentingan. Enkripsi pesan bertujuan untuk tetap merahasiakan pesan
sampai kepada penerima dengan aman. Selanjutnya pesan yang telah diterima
akan didekripsi oleh penerima dengan algoritma yang telah disepakati dan
kunci yang telah dikirimkan dengan jalur yang lebih aman.
2.

Integritas (Integrity)
Integritas dalam kriptografi berhubungan dengan menjaga keaslian data,
artinya data yang diterima tidak rusak, berkurang, bertambah atau telah
dimanipulasi oleh pihak lain sebelum diterima oleh penerima data. Oleh karena
itu, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh
pihak-pihak yang tidak bertanggung jawab.

3.

Autentikasi (Authentication)
Autentikasi berkaitan dengan identifikasi dan verifikasi, baik secara sistem
maupun informasi itu sendiri. Salah satu sarana proses autentikasi adalah

melalui password. Apabila proses ini menggunakan password, maka protocol
autentikasi harus aman dalam proses pengirimannya dan tidak digunakan oleh
pihak-pihak yang tidak bertanggung jawab. Teknik kriptografi sangat
diperlukan untuk permasalahan ini

4.

Non-Repudiation
Non-Repudiation adalah usaha untuk memastikan bahwa baik pesan maupun

kunci yang sampai adalah benar-benar pesan atau kunci yang diharapkan.
Selain itu, non-repudiation juga adalah usaha untuk menghindari adanya

Universitas Sumatera Utara

7

penyangkalan terhadap pengiriman/terciptanya suatu informasi oleh pengirim
pesan.


2.1.3. Sistem Kriptografi Klasik

Sistem kriptografi klasik adalah sistem kriptografi yang sudah ada sebelum adanya
komputer. Penyandian pesan dilakukan karakter per karakter. Terdapat dua metode
yang dilakukan untuk menyandikan pesan pada sistem kriptografi klasik, yaitu Cipher
Substitusi (Subtitution Cipher ) dan Cipher Transposisi (Transpotition Cipher ). Cipher
Substitusi diimplementasikan dengan mengganti karakter-karakter pesan dengan
karakter lain. Sedangkan Cipher transposisi diimplementasikan dengan melakukan
pengacakan urutan karakter tanpa mengganti karakter pada pesan tersebut (Sadikin,
2012).

2.1.4. Sistem Kriptografi Modern

Sistem kriptografi modern tidak lagi menggunakan mode karakter untuk proses enkripsi
dan dekripsi, melainkan lebih memanfaatkan mode bit. Pengembangan sistem
kriptografi

modern

didorong


oleh

perkembangan

komputer

digital

yang

merepresentasikan data dalam bentuk bilangan biner. Algoritma kriptografi dengan
mode bit dapat dikelompokkan menjadi dua bagian, yaitu Cipher Aliran (Stream
Cipher ) dan Cipher Block (Block Cipher ). Stream Cipher mengenkripsi atau

mendekripsi pesan bit per bit. Sedangkan Block Cipher mengenkripsi atau
mendekripsikan pesan dalam bentuk blok bit dengan panjang bit yang telah ditentukan
sebelumnya (Sadikin, 2012).

2.1.5. Kriptografi Kunci Simetris


Kriptografi kunci simetris adalah suatu model kriptografi dengan sharing key. Artinya,
kunci yang digunakan untuk enkripsi sama dengan yang digunakan untuk dekripsi
(Kurniawan, 2008). Skema kriptografi kunci simetris dapat dilihat pada gambar 2.2.

Universitas Sumatera Utara

8

Gambar 2.2 Skema Kriptografi Kunci Simetris (Sumber: Kurniawan, 2008)

2.1.6. Kriptografi Kunci Asimetris

Kriptografi kunci asimetris pertama kali diperkenalkan oleh Whitefield Diffie dan
Martin Hellman pada tahun 1976 (Kurniawan, 2008).

Gambar 2.3 Skema Kriptografi Kunci Asimeteris (Sumber: Kurniawan, 2008)
Pada gambar 2.3 dapat dilihat bahwa kriptografi kunci asimetris menggunakan kunci
yang berbeda untuk proses enkripsi dan dekripsi. Kunci yang digunakan pada proses
enkripsi disebut dengan public key, sedangkan kunci untuk proses dekripsi disebut

dengan private key (Kurniawan, 2008).

2.2. Algoritma Beaufort Cipher
Algoritma Beaufort Cipher merupakan varian dari algoritma Vignere Cipher
(Widyastuti, 2014). Algoritma ini ditemukan oleh Laksamana Sir Francis Beaufort,
Royal Navy, yang juga merupakan pencipta skala Beaufort yaitu instrumen ahli
meterorologi yang digunakan untuk menunjukkan kecepatan angin. Beaufort Cipher
termasuk algoritma kriptografi klasik kunci simetris (Mollin, 2007).
Proses enkripsi dan dekripsi pada algoritma Beaufort Cipher menggunakan
sebuah tabel yang disebut dengan tabel Beaufort (Tassel, 1969).

Universitas Sumatera Utara

9

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

Tabel 2.1 Tabel Beaufort
A B C D E F G H I J K L M N O P Q R S T U V W XY Z
A B C D E F G H I J K L M N O P Q R S T U V W XY Z
B C D E F G H I J K L M N O P Q R S T U V W XY Z A
C D E F G H I J K L M N O P Q R S T U V W XY Z A B
D E F G H I J K L M N O P Q R S T U V W XY Z A B C
E F G H I J K L M N O P Q R S T U V W XY Z A B C D
F G H I J K L M N O P Q R S T U V W XY Z A B C D E
G H I J K L M N O P Q R S T U V W XY Z A B C D E F
H I J K L M N O P Q R S T U V W XY Z A B C D E F G
I J K L M N O P Q R S T U V W XY Z A B C D E F G H
J K L M N O P Q R S T U V W XY Z A B C D E F G H I
K L M N O P Q R S T U V W XY Z A B C D E F G H I J
L M N O P Q R S T U V W XY Z A B C D E F G H I J K
M N O P Q R S T U V W XY Z A B C D E F G H I J K L
N O P Q R S T U V W XY Z A B C D E F G H I J K L M
O P Q R S T U V W XY Z A B C D E F G H I J K L M N
P Q R S T U V W XY Z A B C D E F G H I J K L M N O

Q R S T U V W XY Z A B C D E F G H I J K L M N O P
R S T U V W XY Z A B C D E F G H I J K L M N O P Q
S T U V W XY Z A B C D E F G H I J K L M N O P Q R
T U V W XY Z A B C D E F G H I J K L M N O P Q R S
U V W XY Z A B C D E F G H I J K L M N O P Q R S T
V W XY Z A B C D E F G H I J K L M N O P Q R S T U
W XY Z A B C D E F G H I J K L M N O P Q R S T U V
XY Z A B C D E F G H I J K L M N O P Q R S T U V W
Y Z A B C D E F G H I J K L M N O P Q R S T U V W X
Z A B C D E F G H I J K L M N O P Q R S T U V W XY
Baris pertama pada tabel 2.1 menyatakan huruf dari plaintext. Proses enkripsi

dilakukan dengan cara menarik garis vertikal dari plaintext sampai kepada karakter key
yang telah ditentukan, selanjutnya tarik garis horizontal dari karakter key tersebut
sampai kolom pertama. Karakter pada kolom pertama tersebut adalah ciphertext yang
diperoleh. Proses dekripsi dilakukan berlawanan dengan proses enkripsi. Proses ini
dimulai dengan memilih ciphertext dari kolom pertama kemudian tarik garis lurus
sampai menemukan karakter key yang telah ditentukan, selanjutnya ditarik garis vertikal
ke atas dari karakter key tersebut sampai ke baris pertama. Karakter pada baris pertama
merupakan plaintext (Tassel, 1969).
Berikut adalah contoh proses enkripsi dengan menggunakan tabel 2.1:
Plaintext

:SUMATERA

Kunci

:m e i l a d ya

Ciphertext

:UKWLHZHA

Proses enkripsi dan dekripsi algortima Beaufort Cipher dirumuskan sebagai berikut:

Universitas Sumatera Utara

10

�−� ≡

�−

≡�





--------------------- (3)
--------------------- (4)

dimana � adalah rangkaian plaintext, � adalah key,
dan

adalah ciphertext yang diperoleh

adalah jumlah karakter yang digunakan (Mollin, 2007).

2.3. Algoritma One Time Pad
Algoritma One Time Pad ditemukan oleh Gilbert Vernam pada tahun 1917. One Time
Pad juga dikenal dengan algoritma Vernam Cipher sesuai dengan nama penemu

algoritma tersebut (Mollin, 2007). One Time Pad mendapatkan reputasi sebagai
algoritma yang kuat namun sederhana dengan tingkat keamanan yang tinggi. Algoritma
ini juga masih lebih baik dibandingkan dengan algoritma-algoritma kriptografi modern.
(Widiasari, 2012).
Algoritma One Time Pad termasuk algoritma kriptografi kunci simetrik yaitu
algoritma yang menggunakan kunci yang sama untuk proses enkripsi dan dekripsi.
Secara matematis proses enkripsi dan dekripsi One Time Pad dituliskan sebagai berikut:


≡ �� + ��

�� ≡



− ��

� � ------------------ (5)

� � ------------------ (6)

dimana � adalah rangkaian plaintext, � adalah key,

adalah ciphertext yang diperoleh

dan � adalah jumlah karakter yang digunakan. Key yang digunakan pada algoritma One
Time Pad diambil secara acak dan harus memiliki panjang karakter yang sama dengan
plaintext (Mollin, 2007).

2.4. Three-Pass Protocol
Three-Pass Protocol adalah sebuah skema kerja yang memungkinkan dua orang

melakukan pertukaran pesan tanpa melakukan pertukaran kunci enkripsi (Haramaini,
2014).
Haramaini (2014) menjelaskan bahawa terdapat tiga tahap pertukaran pesan
dalam skema Three-Pass Protocol dimana setiap orang yang terlibat memiliki kunci
masing-masing untuk melakukan enkripsi dan dekripsi pesan. Berikut adalah cara kerja
Three-Pass Protocol:

1. Alice sebagai pengirim pesan melakukan enkripsi pesan dengan kunci pribadi
miliknya. Alice kemudian mengirimkan pesan yang telah dienkripsi (

) kepada

penerima pesan, yaitu Bob.

Universitas Sumatera Utara

11

2. Bob menerima

dan kemudian melakukan enkripsi

menggunakan kunci

pribadi miliknya. Bob kemudian mengirimkan pesan

yang telah dienkripsi

( ) kepada Alice.
3. Alice yang menerima

kemudian mendekripsikan pesan

kunci pribadi miliknya. Alice kemudian mengirimkan pesan

menggunakan
yang telah

didekripsi ( ) kepada Bob. Selanjutnya Bob melakukan dekripsi pesan
Hasil dekripsi pesan

.

tersebut merupakan plaintext yang dikirimkan Alice.

Cara kerja Three-Pass Protocol tersebut dapat diilustrasikan seperti pada gambar 2.4:

Gambar 2.4 Skema Kerja Three-Pass Protocol

2.5. Penelitian yang Relevan
Beberapa penelitian terdahulu yang relevan dengan penelitian yang akan dilakukan oleh
penulis antara lain adalah sebagai berikut:
-

Arjana, dkk (2012) mengimplementasikan penggunaan algoritma Vignere
Cipher untuk mengamankan data pelanggan. Penelitian tersebut membuktikan

bahwa algoritma Vignere Cipher berhasil meningkatkan keamanan data dan
keakuratan informasi.
-

Haramaini (2014) telah berhasil mengimplementasikan algoritma One Time Pad
dengan menggunakan Three-Pass Protocol. Pada penelitian tersebut dijelaskan
bahwa algoritma One Time Pad tidak cukup aman jika diimplementasikan
dengan Three-Pass Protocol sehingga diperlukan sedikit pengembangan yang
dilakukan untuk meningkatkan keamanan algoritma ini. Pengembangan yang
dilakukan peneliti adalah dengan menambah panjang range bilangan prima
yang akan diacak, sehingga perulangan kunci yang digunakan akan semakin
sulit untuk ditebak.

-

Implementasi algoritma One Time Pad dapat menjaga keamanan dan
kerahasiaan data yang tersimpan pada sebuah aplikasi berbasis web. Selain itu,

Universitas Sumatera Utara

12

pengimplementasian algoritma ini juga mampu memastikan bahwa user yang
menggunakan aplikasi adalah user yang benar-benar memiliki wewenang untuk
mengakses informasi tersebut (Mulyono & Rodiah, 2013).
-

Sebayang (2014) berhasil mengimplementasikan kombinasi dua algoritma
kriptografi klasik pada Three-Pass Protocol, kedua algoritma tersebut adalah
Beaufort Cipher dan Affine Cipher . Penelitian ini membuktikan bahwa

mekanisme Three-Pass Protocol dapat diimplementasikan menggunakan dua
algoritma sekaligus.
-

Widiasari (2012) mengombinasikan algoritma kriptografi Advanced Encryption
Standard (AES) dan One Time Pad dalam mengamankan data. Kombinasi kedua

algoritma menghasilkan keamanan data yang baik dengan ukuran file yang sama
baik sebelum maupun setelah proses enkripsi.

Universitas Sumatera Utara