Disusun untuk Memenuhi Tugas Matakuliah Keamanan Jaringan dan Kriptografi yang
dibimbing oleh Agusta Rakhmat Taufani, S.T., M.T.
Oleh:
Nama: Elfonda Daffa Risqullah NIM: 210535614866
S1 TEKNIK INFORMATIKA
UNIVERSITAS NEGERI MALANG
FAKULTAS TEKNIK
JURUSAN TEKNIK ELEKTRO
JANUARI 2022
A. Pendahuluan
Program ini adalah web yang dibuat menggunakan bahasa pemrograman PHP dan
CSS. Program ini menggunakan teknik kriptografi Caesar Cipher untuk pengkodean
pesan dan decoding. Pengguna dapat memasukkan teks yang ingin mereka enkripsi
bersama kunci yang akan mereka gunakan untuk tujuan itu. Setelah menekan tombol
"Encrypt", teks akan dienkripsi, dan hasilnya akan ditampilkan di layar. Selain itu,
ada tombol "Decrypt" yang dapat digunakan untuk mendekripsi ulang teks yang telah
ditulis sebelumnya. Tampilan antarmuka program ini ramah pengguna dan memiliki
masa pakai yang panjang.
System requirement untuk membuat program Kriptografi Caesar Chiper dengan PHP
dan CSS sebagai berikut:
PHP versi 5.4
Menggunakan web server seperti XAMPP
Menggunakan text editor atau Integrated Development Environment (IDE), Visual
Studio Code contoh nya
Browser web (untuk menjalankan program nya serta mengakses nya)
<!DOCTYPE html>
<html>
<head>
<title>Caesar Cipher</title>
<link rel="stylesheet" type="text/css" href="hhoo.css">
</head>
<body>
<div class="container">
<h1>Caesar Cipher</h1>
<h1>by Elfonda Daffa Risqullah</h1>
<form method="post">
<label for="message">Message:</label><br>
<textarea id="message" name="message"></textarea><br>
<label for="key">Key:</label><br>
<input type="number" id="key" name="key"><br><br>
<input type="submit" name="encrypt" value="Encrypt">
<br>
<input type="submit" name="decrypt" value="Decrypt">
</form>
Kode ini mendefinisikan tata letak halaman web yang akan digunakan untuk
melakukan enkripsi pesan menggunakan Cesar Cipher. Ini memiliki bentuk HTML
yang mengharuskan pengguna untuk memasukkan teks dan mengkodekan informasi.
Ketika pengguna mengirimkan formulir dengan mengklik tombol "Enkripsi" atau
"Deskripsi", formulir akan mengirimkan permintaan POST ke server.
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$message = $_POST["message"];
$key = $_POST["key"];
if (isset($_POST["encrypt"])) {
$encryptedMessage = encrypt($message, $key);
echo "<p>Encrypted message: " . $encryptedMessage .
"</p>";
} elseif (isset($_POST["decrypt"])) {
$decryptedMessage = decrypt($message, $key);
echo "<p>Decrypted message: " . $decryptedMessage .
"</p>";
}
}
if (ctype_upper($ch)) {
$ch = chr((ord($ch) + $offset - 65) % 26 + 65);
} else {
$ch = chr((ord($ch) + $offset - 97) % 26 + 97);
}
}
$result .= $ch;
}
return $result;
}
</body>
</html>
Code CSS
body {
background-image: linear-gradient(to right, #23a6d5, #23d5ab);
font-family: 'Open Sans', sans-serif;
font-weight: 300;
font-size: 16px;
}
/* Container */
.container {
max-width: 800px;
margin: 0 auto;
padding: 20px;
background-color: #fff;
border-radius: 10px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
/* Heading */
h1 {
text-align: center;
font-size: 36px;
font-weight: 600;
margin-bottom: 30px;
color: #3f3f3f;
}
/* Form */
form {
display: flex;
flex-direction: column;
align-items: center;
}
label {
font-weight: 600;
margin-bottom: 10px;
color: #3f3f3f;
}
textarea,
input[type="number"] {
width: 100%;
padding: 15px;
margin-bottom: 20px;
border: none;
border-radius: 5px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
input[type="submit"] {
width: 100%;
background-color: #23a6d5;
color: #fff;
border: none;
border-radius: 5px;
padding: 15px;
cursor: pointer;
transition: all 0.3s ease;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
input[type="submit"]:hover {
background-color: #1a8cbf;
}
Kode di atas adalah CSS styling untuk sebuah halaman web. Ini termasuk
pengaturan latar belakang, font, ukuran font, bayangan box, dan tata letak
untuk elemen halaman web tertentu seperti kontainer, heading, form, label,
textarea, input, dan tombol submit. Semua elemen ini diberi tampilan yang
menarik dengan warna biru dan bayangan box yang disesuaikan. Saat tombol
submit di-hover, warna latar belakang berubah untuk meningkatkan interaksi
pengguna dengan halaman web tersebut.
C. Analisa Aplikasi
Fungsi "encrypt()" melakukan huruf penggeseran pada data dan menghasilkan
terrainkripse data. Untuk menentukan penggeseran yang diperlukan untuk setiap huruf,
fungsi ini menggunakan modul 26. Ia kemudian menggunakan huruf tersebut untuk
menghasilkan huruf baru yang akan menggantikannya. Kode ini adalah implementasi
dari algoritma Caesar Cipher untuk melakukan pengkodean pesan dan decoding.
Algoritma ini menggunakan teknik yang disebut cipher penggantian, di mana setiap
karakter pada baris akan dibandingkan dengan karakter yang berbeda yang memiliki
nilai alfanumerik yang lebih tinggi (Jarak) daripada karakter di tangan. Dalam kode ini,
"keyword" digunakan untuk merujuk pada karakter yang dikodekan atau didekodkan
dan dikirim dari formulir input HTML.
Pada gambar 1 user memasukkan pesan yang ingin di enkripsi dan menentukan kunci
pada program diatas.
Gambar 2. Menampilkan proses enkripsi
Pada gambar 2 setelah mengisi form user memilih proses enkripsi dengan cara di klik
lalu muncul hasil dari pesan yang di enkripsi.
Pada gambar 3 user menguji untuk mendeskripsikan kembali pesan yang ter enkripsi
dengan kunci enkripsi yang berbeda, dengan hasil proses deskripsi tidak berhasil karena
tidak sesuai dengan kunci yang ditentukan di awal mengisi form.
Gambar 4. Deskripsi berhasil
Pada gambar 4 user mencoba mengisi kembali form dengan mendeskripsikan pesan dan
menggunakan kunci yang sesuai di awal, didapatkan pesan kembali pada awal nya
setelah di proses deskripsi.
D. Kesimpulan
Program yang tersedia adalah program khusus untuk encoding dan decoding pesan
berbasis Caesar Cipher. Program saat ini menggunakan formulir input dan output
yang identik dalam satu operasi HTTP POST. Pengguna dapat memasukkan teks
untuk encrypsi, dekripsi, dan kunci enkripsi. Program ini juga memiliki kemampuan
untuk melakukan enkripsi dan decoding berdasarkan kunci yang disediakan. Dalam
hal ini, fungsi enkripsi menggunakan cipher Caesar untuk menganalisis masing-
masing karakter dalam teks dan menghasilkan draft, sementara fungsi enkrypsi
dekripsi melanjutkan proses encrypsi menggunakan kunci dimodifikasi untuk
menghasilkan pesan yang awalnya dimaksudkan. Antarmuka program yang tersedia
cukup ramah pengguna dan sederhana, dengan gradient latar belakang yang menarik
secara visual dan input formulir. Namun, satu-satunya kelemahan dari program ini
adalah bahwa itu hanya menggunakan algoritma Caesar Cipher, yang dapat dengan
mudah dipahami oleh pengguna dan memiliki hambatan rendah untuk masuk atau
yang paham akan kriptografi khususnya metode Caesar Chiper.
E. Lampiran
https://drive.google.com/drive/folders/19hjNgJqfYq5EEVwNmyviwNg9heuvpRBu?usp=shari
ng