Implementasi Kombinasi Algoritma Beaufort Dan Algoritma Spritz Dalam Skema Super Enkripsi Untuk Pengamanan Teks Chapter III V

BAB 3
ANALISIS DAN PERANCANGAN

3.1

Analisis Sistem

Analisis sistem (systems analysis) adalah tahapan penelitian terhadap sistem untuk
pemecahan masalah dimana sistem diuraikan kedalam bagian-bagian komponennya
dengan tujuan untuk mempelajari kinerja masing-masing komponen tersebut dalam
mencapai tujuan sistem (Whitten & Bentley, 2007). Analisis sistem juga mempelajari
baik atau tidaknya bagian-bagian komponen tersebut bekerja dan saling berinteraksi
untuk mencapai tujuan sistem (Fatta, 2007).

3.1.1 Analisis Masalah
Pada tahap analisis masalah akan diidentifikasi penyebab dari masalah yang akan
diselesaikan oleh sistem. Masalah-masalah yang diperoleh tersebut kemudian
digambarkan dalam sebuah diagram yang dikenal dengan sebutan Diagram Ishikawa
atau disebut juga Fishbone Diagram. Diagram ini merupakan diagram yang banyak
digunakan oleh para analis sistem untuk mengidentifikasi, menganalisa dan
memecahkan masalah (Whitten & Bentley, 2007).

Diagram Ishikawa berbentuk seperti ikan yang strukturnya terdiri dari kepala
ikan (fish’s head) dan tulang-tulang ikan (fish’s bones). Kepala ikan berisi nama atau
judul dari masalah yang diidentifikasi. Sedangkan tulang-tulang ikan menunjukkan
dampak dari permasalahan dengan berbagai penyebabanya

(Whitten & Bentley,

2007). Diagram Ishikawa untuk masalah ini dapat dilihat pada gambar 3.1.

Universitas Sumatera Utara

Pengguna

kurang amannya media
pertukaran
informasi
antara pengirim dan
penerima

Material


Pesan dan kunci dapat
disadap oleh pihak ketiga
pada saat pengiriman
pesan

Mengamankan pesan dan
kunci yang

akan dikirim

dengan penyandian isi pesan
Belum adanya aplikasi desktop
yangmengkombinasikan
algoritma kriptografi klasik dan
kriptografi modern yang dipilih

Algoritma kriptografi
klasik yang mudah di
kriptanalis.


Metode

secara rahasia dan aman.

Mesin

Gambar 3.1 Diagram Ishikawa Masalah Penelitian
Pada gambar 3.1 dapat dilihat bahwa masalah utama yang muncul pada segi
empat paling kanan (kepala ikan) berkaitan dengan pengiriman dan penerimaan pesan
yang bersifat aman dan rahasia.
Pada gambar 3.1 juga dapat dilihat bahwa terdapat empat kategori penyebab
masalah pada penelitian Implementasi Kombinasi Algoritma Kriptografi Klasik dan
Algoritma Kriptografi Modern dalam Skema Super Enkripsi yang digambarkan
dengan tanda panah yang mengarah ke tulang utama, yaitu berkaitan dengan
pengguna, media/alat yang terlibat atau material, metode dan mesin. Setiap detail
penyebab masalah tersebut digambarkan dengan tanda panah yang mengarah ke
masing-masing kategori.
Oleh karena itu dibutuhkan algoritma kriptografi yang dapat mengamankan
pesan selama proses pengiriman berlangsung. Algoritma kriptografi merupakan

langkah-langkah logis bagaimana menyembunyikan pesan agar aman sehingga
terhindar dari orang-orang yang tidak berhak atas pesan yang dikirim tersebut (Ariyus,
2008).

Universitas Sumatera Utara

Algoritma kriptografi terdiri dari tiga fungsi dasar yaitu (Ariyus, 2008) :
1.

Enkripsi merupakan proses pengamanan data yang dikirimkan oleh pengirim
pesan agar pesan tersebut terjaga kerahasiannya. Pesan asli disebut plaintext
kemudian pesan tersebut diubah menjadi kode-kode yang tidak dimengerti atau
yang sering disebut dengan ciphertext. Untuk mengubah plaintext menjadi
ciphertext maka diperlukan algoritma yang dapat mengubah plaintext menjadi
ciphertext.

2.

Dekripsimerupakan kebalikan dari proses enkripsidimana pesan yang telah di
enkripsi kemudian dikembalikan kebentuk aslinya.


3.

Kunci merupakan suatu informasi yang mengendalikan jalannya sebuah algoritma
kriptografi yang mentransformasikan plaintext menjadi ciphertext ataupun
sebaliknya.

3.1.2 Analisis Kebutuhan
Tahap analisis kebutuhan dilakukan setelah tahap analisis masalah. Tahap ini
bertujuan untuk mengumpulkan informasi,model,dan spesifikasi tentang perangkat
lunak yang diinginkan oleh pengguna(Simarmata, 2010). Analisis kebutuhan terbagi
menjadi dua yaitu kebutuhan fungsional dan kebutuhan nonfungsional. Kebutuhan
fungsional menjelaskan tentang aktivitas yang disediakan oleh sistem. Sedangkan
kebutuhan nonfungsional menjelaskan tentang fitur, karakteristik, dan batasan lainnya
(Whitten, 2004).
a. Kebutuhan Fungsional
Kebutuhan fungsional merupakan jenis kebutuhan yang berkaitan dengan proses yang
akan dikerjakan oleh sistem dan juga berisi informasi tentang apa saja yang harus ada
dan dihasilkan oleh sistem(Al Fatta, 2007). Kebutuhan fungsionaldari sistem yang
mengimplementasikan kombinasi algoritma Beaufort dan Spritz dalam skema Super

Enkripsiadalah sebagai berikut:
1. Menerima input plaintext
Sistem mencari dan membaca file yang berekstensi .docdan .pdfyang
tersimpan pada perangkat yang digunakan. atau sistem menerima input
plaintext dari pengguna secara manual. Sistem hanya membaca file berupa
teks, tidak membaca gambar maupun tabel.

Universitas Sumatera Utara

2. Menerima input kunci
Sistem menerima input kunci yang berasal dari pengguna atau sistem
membangkitkan kunci secara acak untuk digunakan sebagai kunci Algoritma
Beaufortdan Algoritma Spritz.
3. Mengenkripsi pesan
Sistem mengenkripsi pesan dengan menggunakan kunci Algoritma Beaufort
kemudian menghasilkan ciphertext 1untuk pengguna pertama kemudian
ciphertext yang didapat sebelumnya dienkripsi lagi dengan menggunakan
kunci Algoritma Spritz dan menghasilkan ciphertext 2 untuk pengguna kedua.
4. Menyimpan hasil enkripsi pesan
Sistem akan menyimpan pesan yang telah dienkripsi sebelumnya. Setelah itu

sistem akan membaca pesan yang disimpan tersebut untuk melakukan proses
dekripsi.
5. Mendekripsi pesan
Sistem mendekripsi pesan dengan menggunakan kunci Algoritma Spritz
kemudian menghasilkan ciphertext 1untuk pengguna pertama kemudian
ciphertext yang didapat sebelumnya didekripsi lagi dengan menggunakan
kunci Algoritma Beaufort dan menghasilkan plaintext untuk pengguna kedua.

b. Kebutuhan Nonfungsional
Kebutuhan nonfungsional berisi tentang perilaku yang dimiliki oleh sistem seperti
operasional, kinerja, platform sistem, hukum, termasuk juga politik dan budaya (Al
Fatta, 2007). Kebutuhan nonfungsionaldari sistem yang mengimplementasikan
kombinasi algoritma Beaufort dan Spritz dalam skema Super Enkripsi adalah sebagai
berikut:
1. Dokumentasi
Sistem yang akan dibangun memiliki panduan penggunaan sehingga pengguna
dapat menggunakan sesuai panduan.
2. Cost Reduction
Sistem dibangun bersifat open sourceyang dapat digunakan dan disebarluaskan
dengan bebas.


Universitas Sumatera Utara

3. Pengendalian
Sistem yang akan dibangun akan menampilkan pesan error untuk setiap
masukkan yang tidak sesuai.
4. Kinerja
Sistem melakukan proses enkripsi dan dekripsi pesan dengan waktu yang
relatif singkat.
5. User Friendly
Sistem menggunakan tampilan yang mudah digunakan dan dipelajari.

3.1.3 Arsitektur Umum Sistem
Arsitektur umum sistem merupakan skema perancangan sistem yang mendekripsikan
alur sistem secara keseluruhan. Arsitektur umum sistem juga dapat menjadi pedoman
untuk pembuatan pemodelan sistem. Arsitektur umum sistem dapat dilihat pada
gambar 3.2.

Gambar 3.2 Arsitekur Umum Sistem
Dapat dilihat pada gambar 3.2 menjelaskan bahwa proses enkripsi antara

plaintext dan kunci algoritma Beaufort yang dilakukan oleh pengirim pesan akan
menghasilkan ciphertext 1.Selanjutnya pengirim pesan akan melakukan proses
enkripsi antara ciphertext 1 yang dihasilkan dengan kunci algoritmaSpritz yang
kemudian menghasilkan ciphertext 2. Proses selanjutnya adalah proses dekripsi oleh
penerima pesan antara ciphertext 2 dengan kunci algoritma Spritz yang menghasilkan
kembali ciphertext 1. Proses yang terakhir adalah proses dekripsi yang dilakukan oleh

Universitas Sumatera Utara

penerima pesan antara ciphertext 1 dengankunci algoritma Beaufort yang
menghasilkan plaintextsemula yang dikirimkan oleh pengirim pesan.

3.1.4 Pemodelan Sistem
Pemodelan sistem ini menggunakan diagram UML (Unified Modelling Language)
untuk menggambarkan bagaimana sistem akan bekerja khususnya sistem yang
berorientasi objek. Diagram UML yang digunakan adalah Use Case Diagram, Activity
Diagram dan Sequence Diagram.
a. Use Case Diagram
Diagram use case mendekripsikan sebuah interaksi antara satu atau lebih pengguna
dengan sistem yang akan dibuat. Diagram ini menggambarkan kebutuhan fungsional

yang telah dirincikan sebelumnya. Diagram use case untuk kebutuhan fungsional
dapat dilihat pada gambar 3.3.

Gambar 3.3 Diagram Use Case
Gambar 3.3 menggambarkan diagram use case. Sistem digunakan oleh dua
orang aktor yaitu pengirim dan penerima. Pengirim dapat melakukan proses enkripsi
yang di dalam nya meliputi proses input file, input kunci, enkripsi algoritma Beaufort,
enkripsi algoritma Spritz serta menyimpan file yang telah di enkripsi sedangkan

Universitas Sumatera Utara

penerima dapat melakukan proses dekripsi yang didalam nya meliputi proses input file
yang telah di enkripsi dan disimpan sebelumnya, input kunci, dekripsi algoritma Spritz
serta dekripsi algoritma Beaufort.
b. Activity Diagram
Activity Diagram menggambarkan alir aktivitas antara pengguna dan sistem yang
dibuat secara detail dan berurut sesuai dengan interaksi antara pengguna dan sistem
yang akan dibangun.

Universitas Sumatera Utara


Gambar 3.4 Activity Diagram untuk Proses Enkripsi
Pada gambar 3.4 terdapat 2 kotak dimana kotak paling kiri pada gambar
menunjukkan aktivitas yang dilakukan oleh pengirim pesan, sedangkan kotak sebelah

Universitas Sumatera Utara

kanan adalah respon yang diberikan sistem terhadap aktivitas yang dilakukan
pengirim pesan terhadap sistem.

Gambar 3.5 Activity Diagram untuk Proses Dekripsi
Pada gambar 3.5 terdapat 2 kotak dimana kotak paling kiri pada gambar
menunjukkan aktivitas yang dilakukan oleh penerima pesan, sedangkan kotak sebelah
kanan adalah respon yang diberikan sistem terhadap aktivitas yang dilakukan
penerima pesan terhadap sistem.

c. Sequence Diagram
Sequencediagram merupakan diagram yang memperlihatkan atau menampilkan
interaksi-interaksi antar objek di dalam sistem yang disusun pada sebuah urutan atau
rangkaian waktu.

Universitas Sumatera Utara

Gambar 3.6 Sequence Diagram untuk Proses Enkripsi
Pada gambar 3.6 dapat dilihat interaksi antara sistem dengan pengirim pesan
secara berurutan. Aksi pengirim pesan terhadap sistem ditunjukkan dengan tanda
panah garis penuh, sedangkan respon sistem terhadap pengirim pesan ditunjukkan
dengan tanda panah garis putus-putus.

Gambar 3.7 Sequence Diagram Proses Dekripsi

Universitas Sumatera Utara

Pada gambar 3.7 dapat dilihat interaksi antara sistem dengan penerima pesan
secara berurutan. Aksi penerima pesan terhadap sistem ditunjukkan dengan tanda
panah garis penuh, sedangkan respon sistem terhadap penerima pesan ditunjukkan
dengan tanda panah garis putus-putus.
3.1.5 Flowchart
a. Flowchart Sistem

Gambar 3.8 Flowchart Sistem

Universitas Sumatera Utara

Flowchart

sistem

menunjukkan alur

kerja

sistem secara sistematis

digambarkan pada gambar 3.8. Secara umum, sistem memiliki empat halaman utama
yang dapat dipilih oleh pengguna, yaitu halaman tentang yang menjelaskan tentang
algoritma yang digunakan serta metode super enkripsi, halaman enkripsi digunakan
untuk proses enkripsi kedua algoritma, halaman dekripsi digunakan untuk proses
dekripsi kedua algoritma dan halaman petunjuk menjelaskan bagaimana cara
menggunakan aplikasi.
b. Flowchart Algoritma Beaufort

Gambar 3.9 Flowchart Algoritma Beaufort
Pada gambar 3.9 menunjukkan diagram alir algoritma Beaufort. Gambar
tersebut menunjukkan bahwa proses enkripsi dimulai dengan input plaintext dan kunci
Beaufort kemudian plaintext dan kunci tersebut diproses dengan fungsi enkripsi
Beaufort, dimana dari hasil enkripsi tersebut diperoleh ciphertext. Proses selanjutnya
pendekripsian ciphertext dengan fungsi dekripsi untuk mendapatkan plaintext awal.

Universitas Sumatera Utara

c. Flowchart Algoritma Spritz

Gambar 3.10 Flowchart Algoritma Spritz
Pada gambar 3.10 dapat dilihat bagaimana algoritma spritz akan bekerja. Pada
bagian flowchart sebelah kiri terdapat dua kali perulangan dimana kedua perulangan
ini merupakan proses Key SchedulingAlgorithm(KSA) sedang bagian kanan
merupakan bagian dari Pseudo-Random Generation Algorithm(PRGA). Pada
algoritma spritz, flowchart yang digunakan untuk enkripsi maupun dekripsi adalah
sama.

3.2

Perancangan Antarmuka

Proses perancangan antarmuka sistem merupakan hal yang sangat penting karena
berpengaruh pada saat pengguna menggunakan sistem atau berkomunikasi dengan
sistem. Apabila suatu sistem menggunakan perancangan antarmuka yang sulit untuk
dimengerti pengguna, maka pengguna akan melakukan kesalahan pada saat
menjalankan sistem tersebut. Sehingga diperlukan perancangan yang sederhana dan
efisien sehingga pengguna tidak sulit pada saat menjalanka sistem. Sistem dirancang
memiliki lima bagian utama, yaitu halaman awal, tentang, enkripsi, dekripsi dan
petunjuk.

Universitas Sumatera Utara

a. Halaman Awal
Halaman awal adalah halaman yang pertama kali muncul saat sistem dijalankan.
Halaman ini berisi nama sistem, nama dan nim pembuat sistem, logo universitas,
nama fakultas dan sebuah tombol untuk masuk ke dalam sistem. Halaman awal ini
dapat dilihat pada gambar 3.11.

1

2
3

4
5

Gambar 3.11 Perancangan Antarmuka Halaman Awal
Keterangan gambar:
1. Label digunakan untuk judul sistem.
2. Label digunakan untuk identitas nama dan nim
3. Picturebox digunakan untuk logo universitas.
4. Label digunakan untuk nama fakultas dan program studi
5. Button digunakan untuk masuk ke dalam sistem.

Universitas Sumatera Utara

b. Halaman Tentang
Halaman tentang berisi penjelasan mengenai algoritma Beaufort dan Spritz serta
mekanisme Super Enkripsi. Halaman teori singkat dapat dilihat pada gambar 3.12.
1
Tentan

Enkrips

Dekrips

Tentang Aplikasi 2

Petunju

Tentang Algoritma

Tentang Metode

4

3

5

6
7

Gambar 3.12 Perancangan Antarmuka Halaman Tentang
Keterangan gambar:
1. TabControl berfungsi untuk menunjukkan halaman-halaman yang tersedia
pada sistem.
2. Label digunakan untuk judul Tentang Aplikasi.
3. Rich Text Box digunakan untuk menjelaskan tentang kegunaan aplikasi.
4. Label digunakan untuk judul Tentang Algoritma.
5. Rich Text Box digunakan untuk menjelaskan tentang algoritma yang
digunakan.
6. Label digunakan untuk judul TentangMetode.
7. Rich Text Box digunakan untuk menjelaskan tentang metode yang digunakan.

Universitas Sumatera Utara

c. Halaman Enkripsi
Halaman enkripsi merupakan halaman yang digunakan untuk melakukan proses
enkripsi pesan dengan menggunakan algoritma Beaufort dan Spritz yang
diimplementasikan pada mekanismeSuper Enkripsi. Gambar 3.13 merupakan
rancangan antarmuka halaman enkripsi.
Tentang

Dekrips

Enkripsi

1
Petunju

3

2 Masukkan File :

4

Car
5

6
ms

7

Buka

8

Hitung

Enkripsi Spritz

9 Enkripsi Beaufort
Acak

14

1

Kunci

10

21

Enkripsi 12

Acak

16

Kunci

15

Enkripsi

13

18

17

22
ms

20
19

Simpan

Reset

Gambar 3.13 Perancangan Antarmuka Halaman Enkripsi
Keterangan gambar:
1. TabControl berfungsi untuk menunjukkan halaman-halaman yang tersedia
pada sistem.
2. Label digunakan untuk tulisan masukkan file.
3. Textbox digunakan untuk menampilkan nama file yang digunakan untuk proses
enkripsi.
4. Button digunakan untuk mencari file yang akan digunakan.

Universitas Sumatera Utara

5. Rich Text Box digunakan untuk menampilkan isi file yang digunakan atau
input plaintext secara manual.
6. Text Box digunakan untuk menampilkan jumlah karakter(plaintext) pada file.
7. Button digunakna untuk membuka file yang akan digunakan.
8. Buttondigunakan untuk menghitung jumlah karakter yang digunakan.
9. Label digunakan untuk menunjukkan proses enkripsi Beaufort.
10. Rich Text Box untuk menampung kunci Beaufort.
11. Button digunakan untuk mengacak kunci Beaufort.
12. Button digunakan untuk memulai proses enkripsi dengan algoritma Beaufort.
13. Rich Text Box untuk menampung karakter hasil enkripsi algoritma Beaufort.
14. Label digunakan untuk menunjukkan proses enkripsi Spritz.
15. Rich Text Box untuk menampung kunci Spritz.
16. Button digunakan untuk mengacak kunci Spritz.
17. Button digunakan untuk memulai proses enkripsi algoritmaSpritz.
18. Rich

Text

Box

untuk

menampung

karakter

hasil

enkripsi dengan

algoritmaSpritz.
19. Button digunakan untuk menyimpan hasil enkripsi.
20. Button digunakan untuk mereset kembali halaman enkripsi.
21. Textbox digunakan untuk menampilkan waktu proses ketikamembaca isi file
yang digunakan.
22. Textbox digunakan untuk menampilkan waktu proses enkripsi.

d. Halaman Dekripsi
Halaman dekripsi merupakan halaman yang digunakan untuk melakukan proses
dekripsi pesan dengan menggunakan algoritma Beaufort dan Spritz yang
diimplementasikan pada mekanismeSuper Enkripsi. Gambar 3.14 merupakan
rancangan antarmuka halaman dekripsi

Universitas Sumatera Utara

Tentang

Enkripsi

Dekrips

Petunju

1
3

2 Masukkan File :

Car

4

5
6
7
9 Dekripsi Spritz

Buka

Hitung

8

13 Dekripsi Beaufort
10

14

11
Dekripsi

15
Dekripsi

16
12
17

Reset

Gambar 3.14 Perancangan Antarmuka Halaman Dekripsi
Keterangan gambar:
1. TabControl berfungsi untuk menunjukkan halaman-halaman yang tersedia
pada sistem.
2. Label digunakan untuk tulisan masukkan file.
3. Textbox digunakan untuk menampilkan nama file yang digunakan untuk proses
enkripsi.
4. Button digunakan untuk mencari file yang akan digunakan.
5. Rich Text Box digunakan untuk menampilkan isi file yang digunakan atau
input plaintext secara manual.
6. Text Box digunakan untuk menampilkan jumlah karakter(plaintext) pada file.
7. Button digunakna untuk membuka file yang akan digunakan.
8. Buttondigunakan untuk menghitung jumlah karakter yang digunakan.
9. Label digunakan untuk menunjukkan proses dekripsi Spritz.

Universitas Sumatera Utara

10. Rich Text Box untuk menampung kunci Spritz.
11. Button digunakan untuk memulai proses dekripsi dengan algoritma Spritz.
12. Rich Text Box untuk menampung karakter hasil dekripsi algoritma Spritz.
13. Label digunakan untuk menunjukkan proses dekripsi Beaufort.
14. Rich Text Box untuk menampung kunci Beaufort.
15. Button digunakan untuk memulai proses dekripsi algoritmaBeaufort.
16. Rich

Text

Box

untuk

menampung

karakter

hasil

dekripsi dengan

algoritmaBeaufort.
17. Button digunakan untuk mereset kembali halaman dekripsi.

e. Halaman Petunjuk
Halaman petunjuk memberikan petunjuk bagaimana menggunakan sistem ini. Gambar
3.12 merupakan rancangan antarmuka halaman tentang sistem.

Gambar 3.15 Perancangan Antarmuka Halaman Petunjuk

Universitas Sumatera Utara

Keterangan gambar:
1. TabControl berfungsi untuk menunjukkan halaman-halaman yang tersedia
pada sistem.
2. Label berfungsi untuk tulisan petunjuk aplikasi.
3. Rich Text Box berfungsi untuk menampilkan informasi petunjuk bagimana
menjalankan proses enkripsi.
4. Rich Text Box berfungsi untuk menampilkan informasi petunjuk bagimana
menjalankan proses dekripsi.

Universitas Sumatera Utara

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1

Implementasi Sistem

Implementasi sistem merupakan tahapan yang dilakukan setelah melewati tahapan
analisis dan perancangan.Setelah melewati proses analisis dan perancangan maka
selanjutnya sistem dapat di implementasikan sesuai dengan apa yang telah dianalisis
dan dirancang sebelumnya. Sistem ini berbasis desktop dan dirancang menggunakan
bahasa C#. Pada sistem ini terdapat lima halaman, yaitu: halaman awal, halaman
tentang, halaman enkripsi, halaman dekripsi, halaman petunjuk.

4.1.1 Tampilan Halaman Awal
Tampilan halaman awal merupakan halaman yang pertama kali muncul saat sistem
dijalankan. Halaman ini berisi nama sistem, nama dan nim pembuat sistem, logo
universitas, nama fakultas. Tampilan halaman awal dapat dilihat pada gambar 4.1.

Universitas Sumatera Utara

Gambar 4.1 Tampilan Halaman Awal
Pada gambar 4.1 dapat dilihat tampilan halaman awal dimana untuk masuk ke
halaman selanjutnya harus menekan tombol masuk.

4.1.2 Tampilan Halaman Tentang

Gambar 4.2 Tampilan Halaman Tentang

Universitas Sumatera Utara

Dapat dilihat pada gambar 4.2 berisi penjelasan teori singkat mengenai
algoritma Beaufort, algoritma Spritz serta metode yang digunakan untuk
pengkombinasian kedua algoritma tersebut yaitu metode Super Enkripsi.

4.1.3 Tampilan Halaman Enkripsi

Gambar 4.3 Tampilan Halaman Enkripsi
Pada Gambar 4.3 menunjukkan form untuk proses enkripsi dimana terdapat
proses untuk menginputkan file kemudian buka file untuk membaca isi dari file yang
telah diinputkan dan terdapat textbox untuk menampilkan waktu proses membaca isi
file kemudian terdapat textbox untuk memasukkan kunci, baik kunci algoritma
beaufort maupun algoritma spritz selanjutnya terdapat tombol enkripsi dimana jika
menekan tombol enkripsi maka terjadi proses pengenkripsian antara plaintext atau
ciphertext dengan kunci dan terdapat textbox untuk menghitung waktu proses enkripsi
kedua algoritma serta terdapat tombol simpan untuk menyimpan hasil enkripsi.

Universitas Sumatera Utara

4.1.4 Tampilan Halaman Dekripsi

Gambar 4.4 Tampilan Halaman Dekripsi
Pada Gambar 4.4 menunjukkan form untuk proses dekripsi dimana terdapat
tombol cari, yaitu untuk menginputkan file yang telah dienkripsi dan disimpan
sebelumnya. Kemudian ketika menekan tombol buka file maka otomatis hasil enkripsi
sebelumnya dan kunci yang sama pada kedua algoritma yang telah digunakan dan
disimpan sebelumnya akan muncul di textbox. Kemudian jika menekan tombol
dekripsi maka akan terjadi proses dekripsi antara ciphertext dengan kunci kemudian
akan menghasilkan plaintext seperti semula.

4.1.5 Tampilan Halaman Petunjuk
Halaman Petunjuk berisikan panduan singkat dalam melakukan proses enkripsi dan
dekripsi menggunakan algoritma Beaufort dan algoritma Spritz dalam skema super
enkripsi. Tampilan halaman Petunjuk dapat dilihat pada gambar 4.5.

Universitas Sumatera Utara

Gambar 4.5 Tampilan Halaman Petunjuk
4.2

Pengujian

Pengujian sistem dilakukan untuk membuktikan bahwa sistem yang dibangun berjalan
dengan baik serta sesuai dengan analisis dan perancangan sistem yang telah dibuat
sebelumnya. Sistem ini dibangun menggunakan bahasa C#. Pada tahap ini, penulis
melakukan pengujian dengan cara membandingkan hasil dari proses enkripsi dan
dekripsi yang dilakukan oleh sistem dengan perhitungan manual yang dilakukan
penulis.

4.2.1 Pengujian Hasil Enkripsi
4.2.1.1 Pengujian Hasil Enkripsi Pada Sistem
Pengujian enkripsi antara plaintext dan kunci algoritma Beaufort akan
menghasilkan ciphertext 1 dan ciphertext 1 dienkripsi dengan kunci dari algoritma
Spritz akan menghasilkan ciphertext2. Pengujian dimulai dengan melakukan input
karakter melalui file berekstensi .doc atau .pdf dan dapat juga melakukan input
langsung melalui textbox yang tersedia. Selanjutnya pengguna menginputkan kunci
untuk algoritma Beaufort atau menekan tombol acak kunci . Setelah itu tekan tombol
enkripsi maka sistem akan melakukan proses enkripsi untuk algoritma Beaufort.

Universitas Sumatera Utara

Proses yang sama juga berlaku untuk enkripsi algoritma Spritz. Penulis akan
melakukan pengujian dengan contoh sebagai berikut :
1.

Plaintext yang akan dienkripsi yaitu “tia”.

2.

Kunci yang digunakan pada algoritma Beaufort yaitu “ini”.

3.

Kunci yang digunakan pada algoritma Spritz “itu”.

Gambar 4.6 Hasil Enkripsi
Pada gambar 4.6 menunjukkan bahwa enkripsi antara plaintext dan kunci
algoritma Beaufort menghasilkan ciphertext 1 yaitu “_FI” dan hasil enkripsi antara
ciphertext 1 dengan kunci algoritma Spritz menghasilkan ciphertext 2 yaitu “m@>”.

4.2.1.2 Pengujian Hasil Enkripsi dengan Perhitungan Manual
1. Enkripsi Algoritma Beaufort
Proses enkripsi yang pertama dilakukan dengan menggunakan algoritma
Beaufort. Plaintext yang diinputkan dienkripsi dengan menggunakan kunci algoritma
Beaufort. Proses ini menghasilkan ciphertext 1.

Universitas Sumatera Utara

Tabel 4.1 Hasil Enkripsi Algoritma Beaufort
Kunci (Ki)

Plaintext (Pi)

Karakter

Indeks

Karakter

t

45

i

i

34

a

26

Ciphertext (Ci)

Indeks

Karakter

34

�� ≡ �� − �� (��� 100)

89

_

n

39

5

F

i

34

8

I

Pada tabel 4.1 menunjukkan bahwa hasil pengujian perhitungan manual
dengan pengujian oleh sistem menghasilkan enkripsi yang sama yaitu “_FI” dengan
cara melakukan operasi pengurangan indeks kunci dengan indeks plaintext sehingga
menghasilkan indeks ciphertext 1. Untuk melihat urutan indeks karakter dapat dilihat
pada tabel 2.2.
2. Enkripsi Algoritma Spritz
2.1 Tahap Key Scheduling Algorithm (KSA)
Langkah key scheduling dimulai dengan menginisialisasikan state awal berupa
larik yang terdiri dari 256 elemen. larik state awal berbentuk seperti tabel 4.2.
Tabel 4.2 Larik S awal
0
14
28
42
56
70
84
98
112
126
140
154
168
182
196
210
224
238
252

1
15
29
43
57
71
85
99
113
127
141
155
169
183
197
211
225
239
253

2
16
30
44
58
72
86
100
114
128
142
156
170
184
198
212
226
240
254

3
17
31
45
59
73
87
101
115
129
143
157
171
185
199
213
227
241
255

4
18
32
46
60
74
88
102
116
130
144
158
172
186
200
214
228
242

5
19
33
47
61
75
89
103
117
131
145
159
173
187
201
215
229
243

6
20
34
48
62
76
90
104
118
132
146
160
174
188
202
216
230
244

7
21
35
49
63
77
91
105
119
133
147
161
175
189
203
217
231
245

8
22
36
50
64
78
92
106
120
134
148
162
176
190
204
218
232
246

9
23
37
51
65
79
93
107
121
135
149
163
177
191
205
219
233
247

10
24
38
52
66
80
94
108
122
136
150
164
178
192
206
220
234
248

11
25
39
53
67
81
95
109
123
137
151
165
179
193
207
221
235
249

12
26
40
54
68
82
96
110
124
138
152
166
180
194
208
222
236
250

13
27
41
55
69
83
97
111
125
139
153
167
181
195
209
223
237
251

Universitas Sumatera Utara

Selanjutnya akan dilakukan perhitungan untuk nilai j. Untuk melakukan perhitungan
nilai j maka kunci yang digunakan harus diubah ke dalam kode ASCII. Dimana kode
ASCII ditunjukkan oleh tabel 4.3.
Tabel 4.3 Kode ASCII

Dec
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37

Char
Ā
ā
Ă
ă
Ą
ą
Ć
ć
Ĉ
ĉ
Ċ
ċ
Č
į
İ
ı
IJ
ij
Ĵ
Ķ
ķ
ĸ
Ĺ
ĺ
Ļ
ļ
Ľ
ľ
Ŀ
ŀ
Ł
ł
SPACE
!
"
#
$
%

Dec
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81

Char
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q

Dec
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125

Char
X
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
y
z
{
|
}

Dec
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169

Char
Ē
ē
Ĕ
ĕ
Ė
ė
Ę
ę
Ě
ě
Ĝ
ĝ
Ğ
ğ
Ġ
ġ
Ģ
ģ
Ĥ
ĥ
Ħ
ħ
Ĩ
ĩ
Ī
ī
Ĭ
ĭ
Į
¡
¢
£
¤
¥
¦
§
¨
©

Dec
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213

Char
°
±
²
³
´
µ

·
¸
¹
º
»
¼
½
¾
¿
À
Á
Â
Ã
Ä
Å
Æ
Ç
È
É
Ê
Ë
Ì
Í
Î
Ï
Ð
Ñ
Ò
Ó
Ô
Õ

Dec
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255

Char
Ü
Ý
Þ
ß
à
á
â
ã
ä
å
æ
ç
è
é
ê
ë
ì
í
î
ï
ð
ñ
ò
ó
ô
õ
ö
÷
ø
ù
ú
û
ü
ý
þ
ÿ

Universitas Sumatera Utara

38
39
40
41
42
43

&
'
(
)
*
+

82
83
84
85
86
87

R
S
T
U
V
W

126
127
128
129
130
131

~
Ɗ
Ď
ď
Đ
đ

170
171
172
173
174
175

ª
«
¬
®
¯

214
215
216
217
218
219

Ö
×
Ø
Ù
Ú
Û

Nilai ASCII untuk kunci “itu” yaitu :
i = 105
t = 116
u = 117
Kemudian dilakukan perhitungan nilai j yang pertama dengan nilai awal i = 0 dan j = 0
sebagai berikut :
j = (j + S[i] + key[i mod keylength]) mod 256
j = (0 + 0 + 105) mod 256 = 105
Tukarkan nilai S[0] dengan S[105]. Kemudian dilakukan perhitungan kembali untuk
nilai j yang kedua dengan nilai i = 1 dan j = 105 sebagai berikut :
j = (j + S[i] + key[i mod keylength]) mod 256
j = (105 + 1 + 116) mod 256 = 222
Tukarkan nilai S[1] dengan S[222]. Langkah ini diulangi hingga i mencapai nilai 255
dan hasil dari tahap key scheduling dapat dilihat pada tabel 4.4 dimana nilai i berada
pada baris yang berwarna biru.
Tabel 4.4 Hasil Key Scheduling Algorithm(KSA)
0
1
2
3
4
5
6
7
18 86 155 14 202 122 50 157
14 15 16 17 18 19 20 21
223 7
83 22 166 169 12 142
28 29 30 31 32 33 34 35
198 11 59 175 227 42 194 56
42 43 44 45 46 47 48 49
119 206 6 224 32 255 186 27
56 57 58 59 60 61 62 63
217 70 249 23 73 250 91 46
70 71 72 73 74 75 76 77
171 148 150 52 36 137 105 136

8
125
22
197
36
117
50
170
64
140
78
97

9
10 11 12 13
64 215 138 33 100
23 24 25 26 27
243 35 62 88 177
37 38 39 40 41
159 207 98 234 156
51 52 53 54 55
162 74 99 147 141
65 66 67 68 69
75 69 252 203 107
79 80 81 82 83
104 112 19
9 151

Universitas Sumatera Utara

84
20
98
153
112
48
126
239
140
154
154
242
168
126
182
219
196
209
210
31
224
87
238
76
252
143

85
195
99
244
113
160
127
226
141
111
155
85
169
80
183
187
197
58
211
251
225
37
239
246
253
60

86
21
100
13
114
218
128
101
142
5
156
3
170
34
184
149
198
201
212
188
226
41
240
71
254
63

87
199
101
161
115
213
129
102
143
109
157
190
171
116
185
241
199
178
213
233
227
130
241
47
255
120

88
45
102
172
116
216
130
240
144
39
158
184
172
182
186
135
200
127
214
92
228
222
242
247

89
232
103
145
117
158
131
89
145
1
159
192
173
25
187
28
201
65
215
10
229
152
243
164

90
17
104
110
118
253
132
54
146
229
160
165
174
67
188
72
202
57
216
113
230
51
244
16

91
173
105
40
119
131
133
44
147
93
161
183
175
237
189
77
203
181
217
133
231
128
245
179

92
123
106
208
120
38
134
132
148
106
162
79
176
176
190
30
204
191
218
118
232
236
246
235

93
115
107
189
121
204
135
168
149
245
163
139
177
95
191
211
205
129
219
78
233
225
247
108

94
167
108
103
122
174
136
49
150
96
164
90
178
221
192
55
206
180
220
200
234
254
248
185

95
212
109
114
123
144
137
82
151
84
165
66
179
196
193
2
207
15
221
230
235
61
249
53

96
94
110
163
124
24
138
121
152
248
166
68
180
238
194
29
208
220
222
231
236
4
250
205

97
81
111
214
125
26
139
8
153
0
167
146
181
43
195
210
209
228
223
193
237
124
251
134

2.2 Tahap Pseudo-Random Generation Algorithm(PRGA) untuk Enkripsi
Setelah melakukan tahap key scheduling maka akan dilakukan proses enkripsi pesan
“_FI” dengan proses per karakter. Pada tahap awal inisialisasikan nilai i = 0 , j = 0, k=
0, z = 0, dan w adalah bilangan acak yang merupakan bilangan GCD atau relatif prima
dengan panjang S yaitu 256. Selanjutnya lakukan prosesseperti berikut:
• Karakter “_”
Tahap awal dilakukan inisialisasi i = 0 , j = 0, k= 0 dan z = 0 dan setiap baris di
modulo dengan 256. Kemudian dilakukan perhitungan dengan cara sebagai berikut :
i=i+w

= 0+221 mod 256 = 221

j = k + S[j + S[i]]

= 0 + S[0 + S[221]] mod 256
= 0 + S[0 + 230] mod 256

Universitas Sumatera Utara

= S[ 230] = 51
k = i + k + S[j]

= 221 + 0 + S[51] mod 256
= 221 + 162 mod 256
= 127

S[i] , S[j]

= S[i] = S[221] = 230, S[j] = S[ 51] = 162

SwapS[i] withS[j]

= S[i] = S[221] = 162, S[j] = S[51] = 230

z = S[j + S[i + S[z + k]]]

= S[51 + S[221 + S[0 + 127]]] mod 256
= S[51 + S[221 + 226]] mod 256
= S[51 + S[191] mod 256
= S[51 + 211] mod 256
= S[6] = 50

Kemudian lakukan operasi XOR pada karakter pertama ciphertext 1 yang dihasilkan
sebelumya yaitu karakter “ _” yang bernilai 95 dengan output z yang dihasilkan
adalah 50. Dengan cara sebagai berikut :
95 = 01011111
50 = 00110010 ⊕
= 01101101

= 109 10 dalam tabel ASCII merupakan karakter “m”.

• Karakter “F”
Pada tahap ini nilai i = 221 , j = 51, k= 127 dan z = 50. Kemudian dilakukan
perhitungan nilai i dan j baru dengan cara :
i=i+w

= 221+221 mod 256 = 186

j = k + S[j + S[i]]

= 127+ S[51 + S[186]] mod 256
= 127 + S[51 + 135] mod 256
= 127 + S[186] mod 256
= 127 + 135 mod 256
= 262 mod 256
=6

k = i + k + S[j]

= 186 + 127 + S[6] mod 256
= 57 + 50 mod 256
= 107

S[i],S[j]

= S[i] = S[186] = 135, S[j] = S[6] = 50

SwapS[i] with S[j]

= S[i] = S[186] = 50, S[j] = S[6] = 135

Universitas Sumatera Utara

z = S[j + S[i + S[z + k]]]

= S[6 + S[186 + S[50 + 107]]] mod 256
= S[6 + S[186 + S[157]]] mod 256
= S[6 + S[186+190]] mod 256
= S[6 +S[120]] mod 256
=S[6+38]
= S[44] = 6

Kemudian lakukan operasi XOR pada karakter kedua ciphertext 1 yang dihasilkan
sebelumya yaitu karakter “F” yang bernilai 70 dengan output z yang dihasilkan adalah
6. Dengan cara sebagai berikut :
70 = 01000110
6 = 00000110 ⊕
= 01000000

= 64 10 dalam tabel ASCII merupakan karakter “@”.

• Karakter “I”
Pada tahap ini nilai i = 186 , j = 6, k= 107 dan z = 6. Kemudian dilakukan perhitungan
nilai i dan j baru dengan cara :
i=i+w

= 186+221 mod 256 = 151

j = k + S[j + S[i]]

= 107+ S[6 + S[151]] mod 256
= 107 + S[6 + 84] mod 256
= 107 + S[90] mod 256
= 107 + 17 mod 256
= 124

k = i + k + S[j]

= 151 + 107 + S[124] mod 256
= 2 + 24 mod 256
= 26

S[i] ,S[j]

= S[i] = S[151] = 84, S[j] = S[124] = 24

Swap S[i] with S[j]

= S[i] = S[151] = 24, S[j] = S[124] = 84

z = S[j + S[i + S[z + k]]]

= S[124 + S[151 + S[6 + 26]]] mod 256
= S[124 + S[151 + S[32]]] mod 256
= S[124 + S[151+227]] mod 256
= S[124 +S[122]] mod 256
= S[124 +174] mod 256

Universitas Sumatera Utara

=S[42]
= 119
Kemudian lakukan operasi XOR pada karakter ketiga ciphertext 1 yang dihasilkan
sebelumya yaitu karakter “I” yang bernilai 73 dengan output z yang dihasilkan adalah
119. Dengan cara sebagai berikut :
73 = 01001001
119= 01110111 ⊕
= 00111110

= 62 10 dalam tabel ASCII merupakan karakter “>”.

Setelah dilakukan perhitungan secara manual diperoleh ciphertext 2 yaitu “m@>”.
Ciphertext tersebut memiliki nilai yang sama dengan pengujian hasil enkripsi dengan
sisitem . Sehingga dapat disimpulkan untuk proses enkripsi, pada program sudah
berhasil diterapkan dan berjalan baik dan benar. Larik S pada akhir perhitungan
ditunjukkan oleh tabel 4.5.
Tabel 4.5 Nilai Larik S akhir
0
18
14
223
28
198
42
119
56
217
70
171
84
20
98
153
112
48
126

1
86
15
7
29
11
43
206
57
70
71
148
85
195
99
244
113
160
127

2
155
16
83
30
59
44
6
58
249
72
150
86
21
100
13
114
218
128

3
14
17
22
31
175
45
224
59
23
73
52
87
199
101
161
115
213
129

4
202
18
166
32
227
46
32
60
73
74
36
88
45
102
172
116
216
130

5
122
19
169
33
42
47
255
61
250
75
137
89
232
103
145
117
158
131

6
135
20
12
34
194
48
186
62
91
76
105
90
17
104
110
118
253
132

7
157
21
142
35
56
49
27
63
46
77
136
91
173
105
40
119
131
133

8
125
22
197
36
117
50
170
64
140
78
97
92
123
106
208
120
38
134

9
64
23
243
37
159
51
230
65
75
79
104
93
115
107
189
121
204
135

10
215
24
35
38
207
52
74
66
69
80
112
94
167
108
103
122
174
136

11
138
25
62
39
98
53
99
67
252
81
19
95
212
109
114
123
144
137

12
33
26
88
40
234
54
147
68
203
82
9
96
94
110
163
124
84
138

13
100
27
177
41
156
55
141
69
107
83
151
97
81
111
214
125
26
139

Universitas Sumatera Utara

239
140
154
154
242
168
126
182
219
196
209
210
31
224
87
238
76
252
143

226
141
111
155
85
169
80
183
187
197
58
211
251
225
37
239
246
253
60

101
142
5
156
3
170
34
184
149
198
201
212
188
226
41
240
71
254
63

102
143
109
157
190
171
116
185
241
199
178
213
233
227
130
241
47
255
120

240
144
39
158
184
172
182
186
50
200
127
214
92
228
222
242
247

89
145
1
159
192
173
25
187
28
201
65
215
10
229
152
243
164

54
146
229
160
165
174
67
188
72
202
57
216
113
230
51
244
16

44
147
93
161
183
175
237
189
77
203
181
217
133
231
128
245
179

132
148
106
162
79
176
176
190
30
204
191
218
118
232
236
246
235

168
149
245
163
139
177
95
191
211
205
129
219
78
233
225
247
108

49
150
96
164
90
178
221
192
55
206
180
220
200
234
254
248
185

82
151
24
165
66
179
196
193
2
207
15
221
162
235
61
249
53

121
152
248
166
68
180
238
194
29
208
220
222
231
236
4
250
205

8
153
0
167
146
181
43
195
210
209
228
223
193
237
124
251
134

Selanjutnya simpan hasil enkripsi tersebut yang terdiri dari kunci algoritma
Beaufort dan algoritma Spritz, ciphertext 2, Key Scheduling Algorithm(KSA), dan nilai
w.

Gambar 4.7 Penyimpanan Hasil Enkripsi

Universitas Sumatera Utara

Pada gambar 4.7 dapat dilihat hasil pada saat tombol simpan di tekan maka
akan ada kotak dialog penyimpanan untuk menyimpan file yg menghasilkan file
berekstensi .tia. Pada saat menyimpan file tersebut maka akan otomatis ada dua file
yang tersimpan yaitu file yang berekstensi .tia dan .key.
4.2.2 Pengujian Hasil Dekripsi
4.2.2.1 Pengujian Hasil Dekripsi Pada Sistem
Pengujian dekripsi antara ciphertext 2 dengan kunci algoritma Spritz akan
menghasilkan kembali ciphertext 1 dan ciphertext 1 didekripsi dengan kunci dari
algoritma Beaufort akan menghasilkan plaintext semula. Proses dekripsi dimulai
dengan melakukan input file yangberekstensi .tia. Selanjutnya tekan tombol buka file
maka hasil dari enkripsi sebelumnya atau ciphertext 2 beserta kunci dari algoritma
Beaufort dan algoritma Spritz akan muncul dan sesuai dengan kunci pada saat proses
enkripsi. Setelah itu tekan tombol dekripsi maka sistem akan melakukan proses
dekripsi untuk algoritma Spritz. Proses yang sama juga berlaku untuk dekrispi
algoritma Beaufort. Penulis akan melakukan pengujian dekripsi dengan contoh
sebagai berikut:
1.

Ciphertext yang akan didekripsi yaitu “m@>”.

2.

Kunci yang digunakan pada algoritma Spritz “itu”.

3.

Kunci yang digunakan pada algoritma Beaufort yaitu “ini”.

Universitas Sumatera Utara

Gambar 4.8 Hasil Dekripsi
Pada gambar 4.8 menunjukkan bahwa dekripsi antara ciphertext 2 dan kunci
algoritma Spritz menghasilkan ciphertext 1 yaitu “_FI” dan hasil dekripsi antara
ciphertext 1 dengan kunci algoritma Beaufort menghasilkan plaintext yaitu “tia”.

4.2.2.2 Pengujian Hasil Dekripsi dengan Perhitungan Manual
1.

Dekripsi Algoritma Spritz
Pada proses dekripsi, algoritma Spritz mempunyai proses yang sama pada saat

proses enkripsi. Perbedaan antara kedua proses ini terdapat pada tahap PseudoRandom Generation Algorithm(PRGA) dimana pada tahap ini terdapat perbedaan pada
nilai yang akan dilakukan operasi XOR. Pada proses dekripsi, ciphertext 2 akan di
XOR-kan dengan perhitungan yang sama pada tahap Pseudo-Random Generation
Algorithm(PRGA) sebelumya dan menggunakan tabel yang sama pada tahap Key
Scheduling Algorithm(KSA) yang ditunjukkan pada tabel 4.4 di halaman 44.
Ciphertext yang akan didekripsi adalah “m@>” dimana akan dilakukan operasi
XOR pada setiap karakter dengan cara sebagai berikut:
• Karakter “m”
Tahap awal dilakukan inisialisasi i = 0 , j = 0, k= 0, z = 0 dan w adalah bilangan acak
yang merupakan bilangan GCD atau relatif prima dengan 256 dan setiap baris di
modulo dengan 256. Kemudian dilakukan perhitungan dengan cara sebagai berikut :

Universitas Sumatera Utara

i=i+w

= 0+221 mod 256 = 221

j = k + S[j + S[i]]

= 0 + S[0 + S[221]] mod 256
= 0 + S[0 + 230] mod 256
= S[ 230] = 51

k = i + k + S[j]

= 221 + 0 + S[51] mod 256
= 221 + 162 mod 256
= 127

S[i] , S[j]

= S[i] = S[221] = 230, S[j] = S[ 51] = 162

SwapS[i] withS[j]

= S[i] = S[221] = 162, S[j] = S[51] = 230

z = S[j + S[i + S[z + k]]]

= S[51 + S[221 + S[0 + 127]]] mod 256
= S[51 + S[221 + 226]] mod 256
= S[51 + S[191] mod 256
= S[51 + 211] mod 256
= S[6] = 50

Kemudian lakukan operasi XOR pada karakter pertama ciphertext 2 yang dihasilkan
sebelumya yaitu karakter “m” yang bernilai 109 dengan output z yang dihasilkan
adalah 50. Dengan cara sebagai berikut :
109 = 01101101
50 = 00110010 ⊕
= 01011111

= 95 10 dalam tabel ASCII merupakan karakter “_”.

• Karakter “@”
Pada tahap ini nilai i = 221 , j = 51, k= 127 dan z = 50. Kemudian dilakukan
perhitungan nilai i dan j baru dengan cara :
i=i+w

= 221+221 mod 256 = 186

j = k + S[j + S[i]]

= 127+ S[51 + S[186]] mod 256
= 127 + S[51 + 135] mod 256
= 127 + S[186] mod 256
= 127 + 135 mod 256
= 262 mod 256
=6

k = i + k + S[j]

= 186 + 127 + S[6] mod 256

Universitas Sumatera Utara

= 57 + 50 mod 256
= 107
S[i],S[j]

= S[i] = S[186] = 135, S[j] = S[6] = 50

SwapS[i] with S[j]

= S[i] = S[186] = 50, S[j] = S[6] = 135

z = S[j + S[i + S[z + k]]]

= S[6 + S[186 + S[50 + 107]]] mod 256
= S[6 + S[186 + S[157]]] mod 256
= S[6 + S[186+190]] mod 256
= S[6 +S[120]] mod 256
=S[6+38]
= S[44] = 6

Kemudian lakukan operasi XOR pada karakter kedua ciphertext 2 yang dihasilkan
sebelumya yaitu karakter “@” yang bernilai 64 dengan output z yang dihasilkan
adalah 6. Dengan cara sebagai berikut :
64 = 01000000
6 = 00000110 ⊕
= 01000110

= 70 10 dalam tabel ASCII merupakan karakter “F”.

• Karakter “>”
Pada tahap ini nilai i = 186 , j = 6, k= 107 dan z = 6. Kemudian dilakukan perhitungan
nilai i dan j baru dengan cara :
i=i+w

= 186+221 mod 256 = 151

j = k + S[j + S[i]]

= 107+ S[6 + S[151]] mod 256
= 107 + S[6 + 84] mod 256
= 107 + S[90] mod 256
= 107 + 17 mod 256
= 124

k = i + k + S[j]

= 151 + 107 + S[124] mod 256
= 2 + 24 mod 256
= 26

S[i] ,S[j]

= S[i] = S[151] = 84, S[j] = S[124] = 24

Swap S[i] with S[j]

= S[i] = S[151] = 24, S[j] = S[124] = 84

Universitas Sumatera Utara

z = S[j + S[i + S[z + k]]]

= S[124 + S[151 + S[6 + 26]]] mod 256
= S[124 + S[151 + S[32]]] mod 256
= S[124 + S[151+227]] mod 256
= S[124 +S[122]] mod 256
= S[124 +174] mod 256
=S[42]
= 119

Kemudian lakukan operasi XOR pada karakter ketiga ciphertext 2 yang dihasilkan
sebelumya yaitu karakter “>” yang bernilai 62 dengan output z yang dihasilkan adalah
119. Dengan cara sebagai berikut :
62 = 00111110
119= 01110111 ⊕
= 01001001 = 73 10 dalam tabel ASCII merupakan karakter “I”.
Setelah dilakukan perhitungan secara manual diperoleh kembali ciphertext 1 yaitu
“_FI”. Ciphertext tersebut memiliki nilai yang sama dengan pengujian hasil dekripsi
dengan sistem . Sehingga dapat disimpulkan untuk proses dekripsi, pada program
sudah berhasil diterapkan dan berjalan baik dan benar.
2.

Dekripsi Algoritma Beaufort
Proses dekripsi yang kedua dilakukan dengan menggunakan algoritma

Beaufort. Ciphertext 1 yang diperoleh pada saat proses dekripsi sebelumnya didekripsi
dengan menggunakan kunci yang sama pada saat enkripsi algoritma Beaufort. Proses
ini menghasilkan plaintext semula.
Tabel 4.6 Hasil Dekripsi Algoritma Beaufort
Kunci (Ki)

Ciphertext(Ci)

Karakter

Indeks

Karakter

_

89

i

F

5

I

8

Ciphertext (Ci)

Indeks

Karakter

34

�� ≡ �� − �� (��� 100)

45

t

n

39

34

i

i

34

26

a

Pada tabel 4.6 menunjukkan bahwa hasil pengujian perhitungan manual dengan
pengujian oleh sistem menghasilkan dekripsi yang sama yaitu “tia” dengan cara

Universitas Sumatera Utara

melakukan operasi pengurangan indeks kunci dengan indeks ciphertext sehingga
menghasilkan indeks plaintext seperti semula . Untuk melihat urutan indeks karakter
dapat dilihat pada tabel 2.2.
Hasil perhitungan keseluruhan proses enkripsi dan dekripsi baik pengujian
oleh sistem maupun pengujian secara manual dengan karakter plaintext “tia” dalam
skema Super Enkripsi menggunakan kombinasi algoritma Beaufort dan algoritma
Spritz menunjukkan hasil yang sesuai .

4.2.3 Kompleksitas Algoritma
Kompleksitas algoritma dapat dihitung dari kode program yang digunakan.
Kompleksitas prosess enkripsi pada algoritma Beaufort dapat dilihat pada tabel 4.7.
Tabel 4.7 Kompleksitas Proses Enkripsi Algoritma Beaufort
No.
1.

Kode Program
void Btn_EnkBeauClick(object sender, EventArgs e)



#

��#

{
2.

string cipher = "";

C1

1

C1

3.

int k,p;

C2

1

C2

4.

for(int i=0; i