PENGAMANAN FILE TYPE TEXT DENGAN CRIPTOGRAPHY CAESAR CHIPER

PENGAMANAN FILE TYPE TEXT
DENGAN CRIPTOGRAPHY CAESAR CHIPER
Yuli Praptomo PHS
Jurusan Teknik Informatika
STMIK El Rahma
Jl. Sisingamangaraja No. 76 Yogyakarta

Abstract
Criptography is the art and science to maintain information security. The opposite
of criptography is cryptanalysis, the art and science to solve the ciphertext into plaintext
without going through the way it should be.
Criptography using encryption Caesar Chiper has a pretty good pace. This is due to
the encryption process is quite simple and only involves only a few operations per
bytenya.
Keyword : kriptografi, enkripsi, dekripsi, chipertext, dechiper.

A. Pendahuluan
Masalah keamanan dan kerahasiaan data merupakan salah satu aspek penting
dari suatu informasi. Terkait dengan pentingnya informasi tersebut, pihak yang
terkait mempertanyakan apakah informasi tersebut masih asli atau sudah merupakan
informasi bajakan. Karena informasi tersebut tidak akan berguna lagi apabila sudah

diakses oleh orang yang tidak berkepentingan.
Dalam menjaga kerahasiaan data, kriptography mentransformasikan data
jelas/asli (plaintext) ke dalam bentuk sandi (ciphertext) yang tidak dapat dikenali
oleh orang lain. Ciphertext inilah yang akan dikirim oleh pengirim kepada penerima.
Setelah informasi sampai kepada penerima, ciphertext itu kan ditramsformasikan
kembali ke dalam bentuk plaintext agar dapat dikenali kembali.
Pengamanan informasi tersebut selain bertujuan untuk meningkatkan keamanan,
juga berfungsi untuk melindungi pesan atau informasi agar tidak dapat di akses,
menyisipkan dan atau menghapus pesan oleh orang yang tidak berhak.
Kriptography merupakan seni dan ilmu pengetahuan untuk menjaga keamanan
informasi. Kebalikan dari kriptography adalah kryptanalysis, yaitu seni dan ilmu untuk
memecahkan ciphertext menjadi plaintext tanpa melalui cara yang seharusnya.
Kriptography menggunakan metode Caesar Chiper memiliki kecepatan enkripsi
yang cukup baik. Hal ini disebbkan proses enkripsinya cukup sederhana dan hanya
melibatkan beberapa operasi saja per bytenya.
B. Gambaran Umum Kriptografi.
Kriptografi merupakan sebuah ilmu yang digunakan untuk penyandian data.
Kriptografi telah dikenal dan dipakai cukup lama sejak kurang lebih tahun 1900
sebelum masehi pada prasasti-prasasti kuburan.
Ilmu Kriptografi sebenarnya sudah mulai dipelajari manusia sejak tahun 400 SM,

yaitu pada zaman Yunani kuno. Dari catatan bahwa “penyandian transposisi”
merupakan kriptografi pertama yang digunakan atau dimanfaatkan. Bidang ilmu ini
terus berkembang seiring dengan kemajuan peradaban manusia, dan memegang
peranan penting dalam strategi peperangan yang terjadi dalam sejarah manusia,
mulai sistem kriptografi “Caesar Chiper” yang terkenal pada zaman romawi kuno, dan
“Playfair” yang digunakan oleh inggris hingga algoritma-algoritma kriptografi rotor

yang populer pada Perang Dunia II , seperti Sigaba / M-134 (Amerika Serikat), Typex
( Inggris ), Purple (Jepang), dan mesin kriptografi legendaris Enigma (Jerman).
Sejarah telah dipenuhi oleh contoh-contoh orang yang berusaha merahasiakan
informasi rahasia mereka dari orang lain (Raharjo, B., 1998).
Seiring dengan perkembangan zaman, kebutuhan akan metode yang lebih
canggih tidak dapat dihindari. Sekarang, dengan adanya era informasi, kebutuhan itu
menjadi lebih penting lagi. Dengan adanya fasilitas internet, maka permintaan akan
pelayanan informasi semakin meningkat dengan seiringnya perkembangan teknologi.
Pertukaran data yang sensitif seperti nomor account kartu kredit, sudah sering
dilakukan dan menjadi hal yang biasa di dalam dunia internet. Karena itu, melindungi
data sudah menjadi hal penting yang sangat kruisal di dalam hidup.
Ada tiga istilah yang berkaitan dengan proteksi data yaitu kriptografi, kriptologi,
dan kriptanalisis. Arti ketiganya kurang lebih sama. Secara teknis, kriptologi adalah

ilmu yang mempelajari tentang komunikasi pada jalur yang tidak aman beserta
masalah-masalah yang berhubungan dengan itu.
Kriptografi (cryptography) merupakan ilmu dan seni untuk menjaga pesan agar
aman. (Cryptography is the art and science of keeping messages secure ). “Crypto”
berarti “secret” (rahasia) dan “graphy” berarti “writing” (tulisan).
Jadi, dapat
dikatakan bahwa kriptografi adalah tulisan yang tersembunyi. Dengan adanya
tulisan yang tersembunyi orang-orang tidak mengetahui bagaimana tulisan tersebut
disembunyikan dan tidak mengetahui bagaimana cara membaca maupun
menerjemahkan tulisan tersebut. William Stallings (2006) mendefinisikan kriptografi
sebagai “The art and science of keeping messages secures”.
Kriptografi berbasis pada algoritma pengkodean data informasi yang mendukung
kebutuhan dari dua aspek keamanan informasi, yaitu secrecy (perlindungan terhadap
kerahasiaan data informasi) dan authenticity (perlindungan terhadap pemalsuan dan
pengubahan informasi yang tidak diinginkan.
Kriptografi menjadi dasar bagi keamanan komputer dan jaringan karena
merupakan sarana bagi distribusi data dan informasi. Sehingga data dan informasi
tersebut harus diamankan agar hanya orang-orang yang berhak mengaksesnya yang
dapat mengetahui maupun menggunakan data tersebut. Salah satu cara yang paling
banyak digunakan dalam mengamankan data adalah dengan kriptografi. Data-data

tersebut diamankan dengan sedemikian rupa oleh pengirim sehingga orang lain tidak
dapat mengenali data tersebut.
Pembakuan penulisan pada kriptografi dapat ditulis dalam bahasa matematika.
Fungsi-fungsi yang mendasar dalam kriptografi adalah enkripsi dan dekripsi. Enkripsi
adalah proses mengubah suatu pesan asli (plaintext) menjadi suatu pesan dalam
bahasa sandi (ciphertext).
(1)
C = E (M),
dimana : M = pesan asli
E = proses enkripsi
C = pesan dalam bahasa sandi (untuk ringkasnya disebut sandi)
Sedangkan dekripsi adalah proses mengubah pesan dalam suatu bahasa sandi
menjadi pesan asli kembali.
M = D (C)
(2)
Dimana : D = proses dekripsi
Umumnya, selain menggunakan fungsi tertentu dalam melakukan enkripsi dan
dekripsi, seringkali fungsi itu diberi parameter tambahan yang disebut dengan istilah
kunci.


C.

Tujuan Kriptografi
Dalam teknologi informasi, telah dan sedang dikembangkan cara untuk
menangkal berbagai bentuk serangan semacam penyadapan dan pengubahan data
yang dikirimkan. Salah satu cara yang ditempuh mengatasi masalah ini ialah dengan
menggunakan kriptografi yang menggunakan transformasi data sehingga data yang
dihasilkan tidak dapat dimengerti oleh pihak yang tidak berhak mengakses.
Transformasi ini memberikan solusi pada dua macam masalah keamanan data,
yaitu masalah privasi (privacy) dan keotentikan (authenticatioan). Privaci
mengandung arti bahwa data yang dikirimkan hanya dapat dimengerti informasinya
oleh penerima yang sah atau berhak. Sedangkan keotentikan mencegah pihak ketiga
untuk mengirimkan data yang salah atau mengubah data yang dikirimkan.
Kriptografi yang baik tidak ditentukan oleh kerumitan dalam mengolah data atau
pesan yang akan disampaikan. Ada 4 syarat yang perlu dipenuhi, yaitu:
a. Kerahasiaan. Pesan (plaintext) hanya dapat dibaca oleh pihak yang memliki
kewenangan.
b. Autentikasi. Pengirim pesan harus dapat diidentifikasi dengan pasti, penyusup
harus dipastikan tidak bisa berpura-pura menjadi orang lain.
c. Integritas. Penerima pesan harus dapat memastikan bahwa pesan yang dia

terima tidak dimodifikasi saat dalam proses transmisi data.
d. Non-Repudiation. Pengirim pesan harus tidak bisa menyangkal pesan yang
dia kirimkan.

D.

Enkripsi dan Dekripsi
Proses menyandikan plainteks menjadi chiperteks disebut enkripsi ( encryption)
atau enciphering (standard nama menurut ISO 7498-2) sedangkan proses
mengembalikan chiperteks mejadi plainteks disebut dekripsi ( decryption) atau
dechiphering (standard ISO 7498-2).
Enkripsi adalah transformasi data dalam bentuk yang tidak dapat terbaca dengan
sebuah kunci tertentu. Tujuannya adalah untuk meyakinkan privasi dengan
menyembunyikan informasi dari orang-orang yang tidak ditujukan, bahkan mereka
yang memiliki akses ke data terenkripsi. Sedangkan dekripsi merupakan kebalikan
dari enkripsi, yaitu transformasi data terenkripsi kembali ke bentuknya semula.
Enkripsi dilakukan pada saat pengiriman dengan cara mengubah data asli
menjadi data rahasia, sedangkan dekripsi dilakukan pada saat penerimaan dengan
cara mengubah data rahasia menjadi data asli. Jadi data yang dikirimkan selama
proses pengiriman adalah data rahasia, sehingga data asli tidak dapat diketahui oleh

pihak yang tidak berkepentingan. Data asli hanya dapat diketahui oleh penerima
dengan menggunakan kunci rahasia.
Enkripsi dan dekripsi pada umumnya membutuhkan penggunaan sejumlah
informasi rahasia, disebut sebagai kunci. Untuk beberapa mekanisme enkripsi, kunci
yang sama digunakan baik untuk enkripsi dan dekripsi berbeda.

Gambar 1. Skenario Komunikasi Dasar Kriptografi
Di dalam skenario komunikasi dasar, seperti yang diperlihatkan pada Gambar 1,
terdapat dua belah pihak, sebut saja A dan B, yang ingin berkomunikasi satu sama
lain.
Kemudian pihak ketiga, C, adalah seorang eavesdropper (orang yang mengakses
informasi rahasia tanpa izin). Ketika A ingin mengirimkan informasi, yang disebut
plaintext, kepada B, dia mengenkripsi plaintext tersebut dengan menggunakan
metode yang telah dirancang oleh B. Biasanya, metode enkripsi diketahui oleh si
eavesdropper, dalam hal ini adalah C. Yang membuat pesan tersebut tetap bersifat
rahasia adalah key-nya. Ketika B menerima pesan yang telah dienkripsi, yang disebut
dengan ciphertext, dia mengubahnya kembali menjadi plaintext dengan
menggunakan key dekripsi.

E.


Algoritma Kriptografi

Cryptographic system atau cryptosystem adalah suatu fasilitas untuk
mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini,
seperangkat parameter yang menentukan transformasi pencipheran tertentu disebut
suatu set kunci. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci
kriptografi. Secara umum, kunci-kunci yang digunakan untuk proses pengenkripsian
dan pendekripsian tidak perlu identik, tergantung pada sistem yang digunakan.
Kriptosistem terdiri dari sebuah algoritma, plaintext, chipertext dan kunci-kunci.
Secara umum, kriptosistem digolongkan menjadi 2 buah, yaitu:
1. Kriptosistem simetri
2. Kriptosistem asimetri
Dalam kriptosystem simetri, algoritma yang digunakan hanya membutuhkan satu
kunci untuk proses enkripsi dan dekripsi. Sedang dalam kriptografi asimetri,
algoritma yang digunakan membutuhkan dua kunci yang berbeda dalam proses
enkripsi dan dekripsi pesan. Kriptosistem dengan menggunakan symmetric
cryptography kadang disebut sebagai Secret-key cryptography merupakan bentuk
kryptografi yang lebih tradisional, dimana sebuah kunci tunggal dapat digunakan
untuk mengenkrip dan mendekrip pesan. Secret-key cryptography tidak hanya

berkaitan dengan enkripsi tetapi juga berkaitan dengan otentikasi, disebut juga
message authentication codes.
Masalah utama yang dihadapi secret-key cryptography adalah membuat pengirim
dan penerima menyetujui kunci rahasia tanpa ada orang lain yang mengetahuinya.
Ini membutuhkan metode dimana dua pihak dapat berkomunikasi tanpa takut akan
disadap. Kelebihan secret-key cryptography dari public-key cryptography adalah lebih
cepat. Teknik yang paling umum dalam secret-key cryptography adalah block

ciphers, stream ciphers, dan message authentication codes. Berdasarkan jenis kunci
yang digunakannya, algoritma kriptografi dikelompokan menjadi dua bagian, yaitu :
a. Symmetric Algorithm
Symmetric algorithm atau disebut juga secret key algorithm adalah algoritma
yang kunci enkripsinya dapat dihitung dari kunci dekripsi dan begitu pula sebaliknya,
kunci dekripsi dapat dihitung dari kunci enkripsi.
Pada sebagian besar symmetric algorithm kunci enkripsi dan kunci dekripsi
adalah sama. Symmetric algorithm memerlukan kesepakatan antara pengirim dan
penerima pesan pada suatu kunci sebelum dapat berkomunikasi secara aman.
Keamanan symmetric algorithm tergantung pada rahasia kunci. Pemecahan kunci
berarti memungkinkan setiap orang dapat mengenkripsi dan mendekripsi pesan
dengan mudah. Symmetric algorithm dapat dikelompokkan menjadi dua jenis, yaitu

stream cipher dan block cipher. Stream cipher beroperasi bit per bit (atau byte per
byte) pada satu waktu. Sedangkan block cipher beroperasi per kelompok-kelompok
bit yang disebut blok (block) pada satu waktu.
b. Asymmetric Algorithm
Asymmetric algorithm atau disebut juga public key algorithm didesain agar
memudahkan dalam distribusi kunci yang digunakan untuk enkripsi dan dekripsi.
Kunci dekripsi pada public key algorithm secara praktis tidak dapat dihitung dari
kunci enkripsi. Algoritma ini disebut “public key” karena kunci dapat dibuat menjadi
publik. Setiap orang dapat menggunakan kunci enkripsi untuk mengenkripsi pesan,
tetapi hanya orang yang memiliki kunci dekripsi yang dapat mendekripsi pesan
tersebut. Pada sistem ini kunci enkripsi sering disebut kunci publik ( public key), dan
kunci dekripsi disebut kunci rahasia (private key).
Metode kriptosystem simetri disebut juga dengan enkripsi simetri atau enkripsi
konvensional. Gambar di bawah ini mengilustrasikan kinerja dari proses enkripsi
konvensional.

Gambar 2 : Ilutrasi Kinerja Proses Enkripsi Konvensional
Proses enkripsi terdiri dari sebuah algoritma dan sebuah kunci. Kunci adalah
sebuah nilai yang terlepas dari pesan asli (plaintext) dan mengontrol algoritma yang
dipakai. Penerapan algoritma akan menghasilkan output yang berbeda sesuai dengan

kunci yang digunakan. Mengubah kunci berarti mengubah output dari algoritma yang
dipakai.
Setelah chipertext dihasilkan, chipertext tersebut dapat diubah kembali menjad
pesan asli dengan algoritma dekripsi dan dengan kunci yang sama seperti yang
digunakan pada saat enkripsi.
Keamanan dari enkripsi konvensional ini terdiri dari beberapa faktor. Pertama,
algoritma enkripsi harus benar-benar teruji, sehingga tidak dimungkinkan untuk
mendekripsi sebuah pesan hanya dalam bentuk ciphertext. Kedua, keamanan
enkripsi konvensional juga ditentukan oleh kerahasiaan kunci yang digunakan, bukan
kerahasiaan algoritma yang digunakan. Jadi, kita juga harus yakin bahwa dekripsi
tidak dimungkinkan hanya dengan mengetaui ciphertext dan algoritma yang
digunakan tanpa mengetahui kunci yang digunakan.

Bentuk umum enkripsi konvensional dapat dilihat dari contoh berikut : user
A akan mengenkripsi plaintext X = [x1, x2, .. ,xm] , (m elemen dari X merupakan
huruf dari alphabet pesan) dengan kunci K = [K1, k2, .. , kj], dengan pesan X
dan kunci K tersebut akan dihasilkan cipertext Y = [Y1, Y2, .. , yn], maka kita dapat
menuliskan rumus :

Y=Ek(X)

(3)

Selanjutnya, chipertext tersebut dikirimkan ke user B. User B akan mendekripsi
chipertext tersebut agar menjadi pesan asli dengan algoritma dekripsi dan kunci yang
sama seperti yang digunakan pada saat enkripsi. Hal ini dapat dirumuskan sebagai
berikut:

X=Dk(Y)
F.

(4)

Algoritma Sandi Kaisar (Caesar Cipher)
Substitusi kode yang pertama dalam dunia penyandian dikenal dengan Kode
Kaisar, karena penyandian ini terjadi pada saat pemerintahan Yulius Caesar. Dengan
mengganti posisi huruf awal dengan alphabet atau disebut dengan algoritma ROT3.
Caesar Cipher merupakan salah satu algoritma cipher tertua dan paling diketahui
dalam perkembangan ilmu kriptografi. Caesar cipher merupakan salah satu jenis
cipher substitusi yang membentuk cipher dengan cara melakukan penukaran karakter
pada plainteks menjadi tepat satu karakter pada chiperteks. Teknik seperti ini disebut
juga sebagai chiper abjad tunggal. Algoritma kriptografi.
Caesar Cipher sangat mudah untuk digunakan. Inti dari algoritma kriptografi ini
adalah melakukan pergeseran terhadap semua karakter pada plainteks dengan nilai
pergeseran yang sama. Adapun langkah-langkah yang dilakukan untuk membentuk
chiperteks dengan Caesar Cipher adalah :
a. Menentukan besarnya pergeseran karakter yang digunakan dalam membentuk
cipherteks ke plainteks.
b. Menukarkan karakter pada plainteks menjadi cipherteks dengan berdasarkan
pada pergeseran yang telah ditentukan sebelumnya.
Misalnya diketahui bahwa pergeseran = 3, maka huruf A akan digantikan oleh
huruf D, huruf B menjadi huruf E, dan seterusnya.

Gambar 3 : Proses penggantian huruf
Teknik penyandian ini termasuk sandi tersubtitusi pada setiap huruf pada
plaintext digantikan oleh huruf lain yang dimiliki selisih posisi tertentu dalam
alphabet. Secara detail table dibawah ini menjelaskan pergeseran yang terjadi pada
huruf alphabet.

Tabel 1. Posisi abjad awal
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

Menjadi :
Tabel 2. Posisi abjad setelah pergeseran
D

E

F

G

H

I

J

K

L

M

N

O

P

0

1

2

3

4

5

6

7

8

9

10

11

12

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

13

14

15

16

17

18

19

20

21

22

23

24

25

Jika pergeseran yang dilakukan sebanyak tiga kali, maka kunci untuk dekripsinya
adalah 3. Pergeseran kunci yang dilakukan tergantung keinginan pengiriman pesan.
Bisa saja kunci yang dipakai a = 7, b = 9, dan seterusnya. Cara kerja sandi ini dapat
diilustrasikan dengan membariskan dua set alfabet; alfabet sandi disusun dengan
cara menggeser alfabet biasa ke kanan atau ke kiri dengan angka tertentu (angka ini
disebut kunci). Misalnya sandi Caesar dengan kunci 3, adalah sebagai berikut:

Tabel 3. Pergerseran dengan kunci 3
Alfabet Biasa: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Alfabet Sandi: DEFGHIJKLMNOPQRSTUVWXYZABC
Untuk menyandikan sebuah pesan, cukup mencari setiap huruf yang hendak
disandikan di alfabet biasa, lalu tuliskan huruf yang sesuai pada alfabet sandi. Untuk
memecahkan sandi tersebut gunakan cara sebaliknya. Contoh penyandian sebuah
pesan adalah sebagai berikut.

Tabel 4. Contoh plaintext dan cipertext pergerseran dengan kunci 3
teks terang : kirim pasukan ke sayap kiri
teks tersandi : NLULP SDVXNDQ NH VDBDS NLUL
Proses penyandian (enkripsi) dapat secara matematis menggunakan operasi
modulus dengan mengubah huruf-huruf menjadi angka, A = 0, B = 1,…, Z = 25.
Sandi (En) dari “huruf” x dengan geseran n secara matematis dituliskan dengan,
Sedangkan pada proses pemecahan kode (dekripsi), hasil dekripsi (Dn) adalah
Setiap huruf yang sama digantikan oleh huruf yang sama di sepanjang pesan,
sehingga sandi Caesar digolongkan kepada, substitusi monoalfabetik, yang
berlawanan dengan substitusi polialfabetik.
G. Pembahasan
1. Permasalahan
Masalah yang akan dibahas pada makalah ini adalah :
a. Bagaimana mekanisme kerja enkripsi dan dekripsi data dengan
menggunakan algoritma Caesar Chiper ?
b. Bagaimana mengimplementasikan algoritma Caesar Chiper dalam enkripsi
dan dekripsi data ?
c. Bagaimana menganalisis dan membandingkan algoritma Caesar Chiper
dalam enkripsi dan dekripsi data ?

2. Desain Menu
a. Menu Utama
Menu utama terdiri dari menu file dan about. Menu file terdiri dari 3 sub
menu yaitu Enkripsi, Dekripsi,dan Exit. Sub menu Enkripsi digunakan untuk
mengakses form Enkripsi. Sub menu Dekripsi digunakan untuk mengakses
form Dekripsi. Sub menu Exit digunakan untuk keluar dari sistem secara
keseluruhan. Sedangkan Menu About digunakan untuk mengakses form
About.
Tampilan awal ini adalah tampilan pertama kali ketika program
dijalankan. Seperti yang digambarkan diatas, pada tampilan awal ini
terdapat dua menu yaitu menu file dan about didalam menu file terdapat
submenu yang langsung memanggil form-form dalam program seperti sub
menu Enkripsi yang memanggil form Enkripsi, menu Dekripsi yang
memanggil form Dekripsi, sum menu About yang memanggil form About
dan yang terakhir sub menu keluar yang memerintahkan program untuk
keluar.
File

About

Gambar 4. Desain Menu Utama

b.

Sub Menu File
Sub Menu File terdiri dari tiga buah sub menu, yaitu Enkripsi (Untuk
Memanggil form Enkripsi) untuk melakukan enkripsi dari file text, Dekripsi
(Untuk Memanggil form Dekripsi), untuk melakukan dekripsi dari file text,
Keluar untuk keluar dari program.
File

About

Enkripsi
Dekripsi
Keluar

Pengamanan File Type Text
Dengan Cryptography Caesar Chyper

Gambar 5. Desain Sub Menu Data

3. Struktur Navigasi
Struktur Navigasi di gunakan untuk mengetahui urut-urutan dari sebuah
program dari pengamanan data ini. Dalam program ini struktur navigasi yang di
gunakan hierarcical model, adapun susunannya adalah sebagai berikut :
Pengamanan File Text

FILE

About
Enkripsi
Dekripsi
Keluar

Gambar 6. Struktur Navigasi
4. Flowchar Caesar Chiper
START

MENU
TIDAK
PLIH

ULAN

PROSES
YA

YA

TIDAK
PILIH

ULAN

PROSES
YA

TIDAK

YA

TIDAK

PILIH
TIDAK
YA
END

Gambar 7. Flowchart Caesar Chiper
5. Use Case Caesar Chiper
Use case diagram diperlukan untuk menggambarkan fungsionalitas yang
diharapkan dari prespektif pengguna. Yang ditekankan adalah “apa” yang
diperbuat sistem, dan bukan “bagaimana”. Use case mempresentasikan sebuah
interaksi antara aktor dengan sistem. Dalam aplikasi ini Use case Diagram
digambarkan seperti pada gambar 8.

Sy stem

Enkripsi

FILE

De kripsi

Ke luar
USER

A bout

Gambar 8. Use Case Caesar Chiper
6. Sequence Diagram Caesar Chiper
Sequence Diagram menggambarkan interaksi antar objek di dalam dan di
sekitar sistem berupa message yang digambarkan terhadap waktu. Sequence
Diagram digunakan untuk menggambarkan rangkaian langkah-langkah yang
dilakukan sebagai respons dari sebuah event untuk menghasilkan output
tertentu. Rancangan Sequence Diagram yang dibuat seperti pada gambar 9.
User

Menu

Enkripsi

Dekripsi

About

1 : Buka Form Utama()

2 : Tampil Form()
3 : Pilih Enkripsi()

4 : Tampil Form Enkripi()
5 : Pilih Dekripsi()

6 : Tampil Form Dekripsi()
7 : Pilih About()

8 : Tampil Form ABout()

Gambar 9. Use Case Caesar Chiper
7. Rancangan Tampilan
Dalam pembuatan program perlu dibuat sebuah rancangan tampilan agar
program lebih terencana dengan baik, untuk itu media pembelajaran ini pun
dilengkapi dengan desain tampilan yang diharapkan dapat mewakili dari program
yang akan dibuat dalam hal tampilannya, dan program ini sengaja dibuat
sesederhana mungkin dengan tujuan untuk memudahkan seorang user dalam
penggunaannya, sebab program ini didesain untuk semua kalangan yang
walaupun belum terbiasa memakai program.
a. Tampilan awal
File

About
Pengamanan File Type Text
Dengan Cryptography Caesar Chyper

Gambar 10. Rancangan Tampilan Awal
Tampilan awal ini adalah tampilan pertama kali ketika program dijalankan.
Seperti yang digambarkan diatas, pada tampilan awal ini terdapat dua menu
yaitu menu file dan Help didalam menu file terdapat submenu yang langsung

memanggil form-form dalam program seperti sub menu Enkripsi yang
memanggil form enkrpsi, menu Dekripsi yang memanggil form dekripsi, dan
yang terakhir sub menu keluar yang memerintahkan program untuk keluar.
b. Tampilan Form Enkripsi

PROGRAM ENKRIPSI
Catatan : Spasi akan dihilangkan pada saat proses enkripsi dan dekripsi

Masukkan Kalimat :
Jumlah Putaran

:

Ju mlah Putaran 1-25
Kalimat Awal

Hasil
ENKRIPSI

ULANGI

BACK

Gambar 11. Rancangan Tampilan Form Enkripsi
Tampilan form Enkripsi ini adalah tampilan yang muncul ketika menjalan
kan submenu enkripsi yang ada di menu file, form ini didalamnya terdapat
empat kotak dialog text file dan tiga tombol untuk mengeksekusi form ini.
Didalam form Enkripsi terdapat kotak dialog text file untuk memasukkan
kalimat/text yang akan dienkripsi, kotak dialog text file untuk memasukkan
jumlah putaran enkripsi, kotak dialog text file untuk kalimat awal sebelum
dienkripsi dan kotak dialog text file untuk hasil text yang sudah dilakukan
proses enkripsi, dimana dialog text kalimat awal dan hasil akan terisi secara
otomatis. Sedangan tombol enkripsi digunakan untuk mengeksekusi proses
enkripsi setelah kita memasukkan kalimat dan jumlah putaran, tombol Ulangi
untuk mengulangi proes enkripsi dari awal, dan yang terakhir adalah tombol
back yang digunakan kembali ke menu utama.

c. Tampilan Form Dekripsi

PROGRAM DEKRIPSI
Catatan : Spasi akan dihilangkan pada saat proses enkripsi dan dekripsi

Masukkan Kalimat :
Jumlah Putaran

:

Jumlah Putaran 1-25
Kalimat Awal

Hasil
DEKRIPSI

ULANGI

BACK

Gambar 12. Rancangan Tampilan Form Dekripsi

Tampilan form Dekripsi ini adalah tampilan yang muncul ketika menjalan
kan submenu dekripsi yang ada di menu file, form ini didalamnya terdapat
empat kotak dialog text file dan tiga tombol untuk mengeksekusi form ini.
Didalam form dekripsi terdapat kotak dialog text file untuk memasukkan
kalimat/text yang akan didekripsi, kotak dialog text file untuk memasukkan
jumlah putaran dekripsi, kotak dialog text file untuk kalimat awal sebelum
didekripsi dan kotak dialog text file untuk hasil text yang sudah dilakukan
proses dekripsi, dimana dialog text kalimat awal dan hasil akan terisi secara
otomatis. Sedangan tombol enkripsi digunakan untuk mengeksekusi proses
dekripsi setelah kita memasukkan kalimat dan jumlah putaran, tombol Ulangi
untuk mengulangi proes dekripsi dari awal, dan yang terakhir adalah tombol
back yang digunakan kembali ke menu utama.
H.

HASIL
Program ini di buat dengan harapan dapat memudahkan dalam mengamankan
file atau untuk melindungi data-data kita dari orang yang tidak berhak, dan tidak
bertanggung jawab. pada saat menjalankan program tampilan pertama yang akan
muncul adalah tampilan form Menu.
a. Menu Utama

Gambar 13. Tampilan Menu Utama
Tampilan awal ini adalah tampilan pertama kali ketika program
dijalankan. Seperti yang digambarkan diatas, pada tampilan awal ini
terdapat dua menu yaitu menu File dan About, didalam menu file terdapat
submenu yang langsung memanggil form-form dalam program seperti sub
menu Enkripsi yang memanggil form enkripsi, menu Dekripsi yang
memanggil form dekripsi, dan yang terakhir sub menu keluar yang
memerintahkan program untuk keluar.
b. Menu File
Menu file terdiri dari 3 sub menu yaitu enkripsi, dekripsi, dan Keluar.
Menu enkripsi digunakan untuk mengakses form enkripsi. Menu dekripsi
digunakan untuk mengakses form dekripsi. Menu Keluar digunakan untuk
keluar dari sistem secara keseluruhan.

1)

Sub Menu Enkripsi

Gambar 14. Tampilan Sub Menu Enkripsi
Ini adalah tampilan Enkripsi, didesain dengan sederhana yang
bertujuan agar semua kalangan dapat dengan mudah dalam
penggunaannya dan diharapkan dengan secepatnya merasa
familiar sehingga tidak memerlukan waktu banyak untuk
memahami cara penggunaanya.
Program ini di buat untuk mengetahui cara merubah text asli
yang di enkripsi menjadi symbol-simbol dengan cara mengetikan
atau memasukan text pada text area yang ada di sebelah text
masukkan kalimat, mengetikan atau memasukan jumlah putaran
pada text area yang ada di sebelah text jumlah putaran kemudian
di klik tombol enkripsinya maka secara otomatis akan muncul
kalimat awal yang akan dienkripsi pada text area kalimat awal, dan
hasil dari enkripsinya akan muncul tepat di text area hasil. Untuk
mengulangi proses enkripsi dengan cara klik tombol ulangi, maka
proses akan diulangi dari awal seperti langkah-langkah diatas.
Sedangkan untuk kembali ke menu utama di klik tombol back.
Pada saat proses enkripsi berjalan, langkah awal dalam
melakukan enkripsi adalah membuat aray untuk membuat indeks
dari semua abjad yang digunakan, seperti terlihat dalam Gambar
5.15.

Gambar 15. Pembuatan indeks abjad
Proses akan melanjutkan dengan membaca input kalimat
yang akan diproses dan jumlah putaran yang akan digunakan
untuk enkripsi, kemudian merubah kalimat yang ada dengan hruf
kapital untuk menyamakan dengan indeks yang sudah dibuat,
seperti terlihat dalam gambar 5.16.

Gambar 16. Pembacaan karakter dan jumlah putaran
Perintah untuk membandingkan karakter yang dimasukkan
dengan array abjad yang sudah dibuat adalah :

if(namaChar.get(j).toString().equals(abjad.get(i)
))
Untuk memastikan, bahwa hasil proses indeks tidak lebih
besar dari 25 sehingga akan tetap sesuai dengan indeks, dapat
digunakan perintah :

if(indeksEnkripsi > 24)
indeksEnkripsi = indeksEnkripsi % 25;
Proses enkripsi selengkapnya dapat dilihat dalam gambar17.

Gambar 17. Sintax proses enkripsi
2)

Sub Menu Dekripsi

Gambar 18. Tampilan Sub Menu Dekripsi

Ini adalah tampilan Dekripsi, sama dengan tampilan enkripsi,
tampilan dekripsi juga didesain dengan sederhana yang bertujuan
agar semua kalangan dapat dengan mudah dalam penggunaannya
dan diharapkan dengan secepatnya merasa familiar sehingga tidak
memerlukan waktu banyak untuk memahami cara penggunaanya.
Program ini di buat untuk mengetahui cara merubah symbolsimbol / text terenkripsi yang di deskripsi menjadi text asli dengan
cara mengetikan atau memasukan symbol-simbol / text terenkripsi
pada text area yang ada di sebelah text masukkan kalimat,
mengetikan atau memasukan jumlah putaran pada text area yang
ada di sebelah text jumlah putaran kemudian di klik tombol
dekripsinya maka secara otomatis akan muncul kalimat symbolsimbol / text terenkripsi yang akan didekripsi pada text area
kalimat awal, dan hasil dari dekripsinya akan muncul tepat di text
area hasil. Untuk mengulangi proses dekripsi dengan cara klik
tombol ulangi, maka proses akan diulangi dari awal seperti
langkah-langkah diatas. Sedangkan untuk kembali ke menu utama
di klik tombol back.
Proses Enkripsi pada dasarnya tidak jauh berbeda dengan
proses enkripsi, langkah awal dalam melakukan dekripsi adalah
membuat aray untuk membuat indeks dari semua abjad yang
digunakan, seperti terlihat dalam Gambar 5.15.
Proses akan melanjutkan dengan membaca input kalimat
yang akan diproses dan jumlah putaran yang akan digunakan
untuk dekripsi, kemudian merubah kalimat yang ada dengan hruf
kapital untuk menyamakan dengan indeks yang sudah dibuat,
seperti terlihat dalam gambar 5.16.
Perintah untuk membandingkan karakter yang dimasukkan
dengan array abjad yang sudah dibuat adalah :

if(namaChar.get(j).toString().equals(abjad.get(i)
))
Untuk memastikan, bahwa hasil proses indeks tidak lebih
besar dari 25 sehingga akan tetap sesuai dengan indeks, dapat
digunakan perintah :

if(indeksEnkripsi > 24)
indeksEnkripsi = indeksEnkripsi % 25;
Proses dekripsi seperti terlihat dalam gambar 20.

Gambar 5.19. Sintax proses dekripsi
Dari proses enkripsi dan dekripsi secara umum sintax yang
digunakan adalah sama. Perbedaan dalam kedua proses tersebut
dapat terlihat pada perbandingan sintak berikut ini :
Enkripsi :

if(indeksEnkripsi > 24)
indeksEnkripsi = indeksEnkripsi % 25;
Dekripsi

if(indeksEnkripsi < 0)
indeksEnkripsi = indeksEnkripsi + 25;
Dapat terlihat bahwa penggantian abjad input dengan indeks
array
adalah jika indeks sudah pada titik maksimal maka
digunakan sisa hasil bagi ( modulo ) untuk mendapatkan hasil
enkripsi , dan jika indeks sudah pada titik minimal maka digunakan
penambahan dengan 25 ( jumlah karakter yang digunakan ) untuk
mendapatkan hasil dekripsi.
I.

Kesimpulan
Dari apa yang sudah dilakukan, dapat diambil kesimpulan sebagai berikut.
1. Algoritma cipher dapat digunakan sebagai salah satu teknik pengamanan data
terhadap penyerangan dari pihak-pihak yang tidak bertanggung jawab
2. Caesar cipher yang merupakan salah satu jenis teknik kriptografi yang dapat
dijalankan dengan panjang kunci yang variabel, yaitu sebanyak 26 kunci.
3. Teknik pemecahan kata kunci tersebut dapat dilakukan dengan cara melakukan
pengecekan terhadap semua kunci yang ada yang berjumlah 26 tersebut.

J. Daftar Pustaka
Raharjo, B., 1998, Keamanan Sistem Informasi Berbasis Internet , PT Insan,
Bandung.
Darius, D., 2006, Kriptografi Keamanan Data dan Komunikasi, Graha Ilmu,
Yogyakarta.
Darius, D., 2008, Pengantar Ilmu Kriptografi Teori Analisis dan Implementasi , Andi
Offset, Yogyakarta.
Martin, (2005), UML Distilled Panduan Singkat Bahasa Pemodelan Objek Standard ,
Gramedia, Jakarta.

Munir, M., 2004, Algoritma Kriptografi Klasik, Departemen Teknik Informatika Institut
Teknologi Bandung, Bandung.
Munir, M., 2006, Kriptografi, Informatika, Bandung.
Sadikin, R., 2012, Kriptografi untuk Keamanan Jaringan, Andi Offset, Yogyakarta.
Hartati, S., 2006, Pemrograman GUI Swing dengan NetBeans 5 , Andi Offset,
Yogyakarta.
Stallings, Williams, 1995, Cryptography and Network Security : Principles and
Practices, 2nd edition, Upper Saddle River : Prentice Hall Inc.
Stallings, Williams, 2006, Cryptography and Network Security : Principles and
Practices, 4th edition, Upper Saddle River : Prentice Hall Inc.
Utami, Ema dan Sukrisno. 2007, Implementasi Steganografi EoF dengan Gabungan
Ekripsi Rijndael, Shift Chiper dan Fungsi Hash. Yogyakarta.
Kurniawan, Y., 2014, KRIPTOGRAFI Keamanan Internet dan Jaringan Komunikasi ,
Informatika, Bandung.

Biodata Penulis
Yuli Praptomo PHS, S.Kom adalah dosen tetap STMIK El Rahma Yogyakarta, lahir di
Kulon Progo, 7 Juli 1972. Memperoleh gelar Sarjana Komputer, jurusan Teknik
Informatika STMIK AKAKOM Yogyakarta pada tahun 1999, jabatan akademik terakhir
Lektor, Teknik Informatika.