Caesar Cipher, Teknik Menyembunyikan Pesan Taktik Perang era Kekaisaran Romawi

Pernahkan kita berpikir, sebelum adanya komputer bagaimana pesan terlebih sebuah konsep taktik perang dapat dijaga kerahasiaannya dari musuh? alah satu metode awal dan paling terkenal dalam menjaga kerahasiaan suatu pesan disebut dengan Caesar Cipher.

caesar cipher

Pernahkan kita berpikir, sebelum adanya komputer bagaimana pesan terlebih sebuah konsep taktik perang dapat dijaga kerahasiaannya dari musuh? Atau bahkan ketika sudah ditemukan komputer, namun kita belum menyadari bahwa pesan di era saat ini seperti pesan instan, riwayat kesehatan, data akun rekening nasabah bank, hingga suara dan gambar yang kita kirim melalui transmisi jaringan internet apakah dapat dipercaya akan diterima oleh pihak yang berhak membukanya? Salah satu metode awal dan paling terkenal dalam menjaga kerahasiaan suatu pesan disebut dengan Caesar Cipher.


Sejarah Caesar Cipher

Oke kita sekarang terbang ke masa lalu sekitar abad pertama Masehi, dimana kaisar Romawi pada saat itu adalah Julius Caesar. Pada abad pertama Masehi orang-orang Romawi sudah menggunakan matematika yang dikembangkan di Yunani [1]. Julius Caesar ingin berkomunikasi mengenai hal penting dan aman pada ekspedisi militernya melalui jenderal perangnya yakni Mark Anthony.

blank

Gambar 1. Vercingetorix throws down his arms at the feet of Julius Caesar [2]

Diciptakanlah sebuah algoritma atau metode efektif untuk menyandikan sebuah pesan. Cipher atau sandi itu dinamai Caesar Cipher, dinamakan seperti itu untuk menghormati pembuat algoritma ini yakni Julius Caesar. Dalam konteks keamanan dan kriptografi, “cipher” merujuk pada suatu metode atau algoritma untuk mengenkripsi atau menyandikan pesan sehingga tidak dapat dibaca tanpa kunci dekripsi yang tepat.

Menurut Suetonius yang merupakan penulis sejarah Romawi, Caesar Cipher digunakan untuk mengenkripsi atau menyandikan pesan militer dan resmi lainnya. Dikarenakanm mayoritas musuh Roma buta huruf pada era tersebut, sandi tetap aman untuk sementara waktu. Pada abad ke 9 Masehi, setelah jatuhnya Roma, terdapat catatan rekaman metode untuk memecahkan Caesar Cipher dengan menggunakan analisis frekuensi dari Al-Kindi [3].

Caesar Cipher bukanlah metode cipher tertua. Metode enkripsi atau sandi telah digunakan selama ribuan tahun untuk melindungi komunikasi atau menyembunyikan informasi. Caesar Cipher hanya salah satu contoh yang paling terkenal. Salah satu metode cipher tertua yang tercatat adalah Scytale, sebuah metode yang digunakan oleh bangsa Sparta di Yunani Kuno. Scytale melibatkan memotong sehelai pita kertas atau kulit hewan yang sudah terdapat huruf-huruf penyusun pesan. Untuk membacanya, penerima pesan harus melilitkannya di sekitar tabung tertentu misal balok pohon dan harus menggunakan diameter tabung yang tepat. Metode lainnya yang cukup tua adalah Substitusi Abjad, yang melibatkan penggantian setiap huruf dengan huruf lain dalam abjad. Sebagai contoh, Atbash Cipher adalah salah satu bentuk Substitusi Abjad yang digunakan dalam budaya Ibrani pada zaman kuno.

blank
Contoh cipher tertua yakni Scytale

Kriptografi

Sebelum kita bahas sederhana cara kerja algoritma Caesar Cipher, kita akan berkenalan dengan seni yang masih relevan hingga saat ini, yaitu seni kriptografi. Kriptografi adalah sebuah seni dan sains untuk menjaga keamanan sebuah pesan [4]. Setelah kita mengetahui definisi dari kriptografi, kita akan menjabarkan beberapa terminologi dasar dalam dunia kriptografi.

Terminologi atau istilah dasar pertama adalah message/plaintext  yang merupakan pesan yang akan dikirim dan pesan ini harus dipercaya keamanannya sehingga penerima pesan ini adalah orang yang berhak menerimanya. Terminologi kedua adalah enkripsi, enkripsi merupakan teknik untuk menyandikan pesan (message/plaintext) sehingga pesan yang berada dalam perjalanan, bukan merupakan pesan yang sama dengan awal ditulis (message/plaintext). Lalu pesan apakah yang berada dalam perjalanan? Pesan itu bernama ciphertext, ciphertext adalah hasil dari sebuah enkripsi dan pesan rahasia inilah yang tidak sama dengan pesan awal si pengirim pesan.

Kalau pesan yang berada dalam perjalanan (ciphertext) adalah pesan yang tidak sama dengan pesan awal pengirim (message/plaintext), bagaimana penerima dapat membaca pesan utuh si pengirim? Dibutuhkanlah sebuah kunci atau key untuk mengungkap pesan rahasia (ciphertext) tersebut. Proses mengembalikan pesan rahasia (ciphertext) menjadi pesan utuh (message/plaintext) dinamakan proses dekripsi. Kembali pada istilah kunci/key, kunci digunakan dalam Caesar Cipher harus sama (simetris) antara pengirim pesan dengan penerima pesan yang digunakan dalam enkripsi dan dekripsi pesan. Disini penulis tidak akan membahas lebih lanjut tentang jenis-jenis kuncinya, algoritma kriptografi lainnya, dan sebagainya tentang kriptografi lebih luas.

blank
Gambar 2. Model Enkripsi Simetris yang Sederhana [5]

Kunci untuk enkripsi dan dekripsi dalam Caesar Cipher harus dipastikan bahwa hanya pada yang berhak untuk memiliki kunci tersebut. Agar pesan (message/plaintext) dapat dipercaya keamanannya dan tidak diungkap atau dibongkar oleh “musuh” a.k.a pihak yang tidak memiliki hak membacanya. Sekarang kita berangkat ke langkah-langkah penyandian pesan dengan algoritma Caesar Cipher!

Cara Menyandi Pesan Caesar Cipher

Penggunaan sandi substitusi yang paling awal diketahui dan paling sederhana adalah oleh Julius Caesar. Caesar Cipher melibatkan mengganti (subtitusi) setiap huruf alfabet dengan huruf berdiri tiga tempat lebih jauh ke bawah alphabet [5]. Dalam kriptografi, tidak mengenal cara menyandikan huruf dan angka desimal. Solusinya adalah mengubah huruf tersebut menjadi deretan bilangan bulat (integer). Misal huruf A menjadi angka 1, huruf B menjadi angka 2, dan seterusnya hingga huruf Z menjadi angka 26.

ABCDEFGHIJKLMNOPQRSTUVWXYZ
1234567891011121314151617181920212223242526

Lanjut ke Caesar Cipher, sekarang kita akan mengenkripsi sebuah pesan. Bahan yang kita butuhkan adalah pesan (message/plaintext) dan kunci (key) untuk enkripsi. Huruf-huruf pada pesan akan digeser sebanyak nilai kunci (key). Penjelasannya sebagai berikut :

PESAN: 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
KUNCI: 1
CIPHERTEXT: 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 A
PESAN: 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
KUNCI: 2
CIPHERTEXT: C D E F G H I J K L M N O P Q R S T U V W X Y Z A B
PESAN: 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
KUNCI: 3
CIPHERTEXT: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

Misal jika pesan adalah “WARSTEK” dan kuncinya adalah 1 kemudian dienkripsi, maka akan menghasilkan ciphertext “XBSTUFL” yang artinya W digeser 1 kali menjadi X, A digeser 1 kali menjadi B, dan seterusnya. Jika kita ubah dari huruf menjadi bilangan bulat, maka penjelasannya sebagai berikut :

PESANWARSTEK
PESAN (INTEGER)231181920511
KUNCI1
PESAN (INTEGER)242192021612
CIPHERTEXTXBSTUFL

Dalam perjalanan pesannya, maka ciphertext “XBSTUFL” inilah yang dilihat oleh “musuh” bukan pesan “WARSTEK”. Ketika pesan sudah sampai pada penerima pesan yang berhak, maka penerima pesan sudah memiliki kunci untuk mengembalikan ciphertext menjadi pesan yang semula. Jika pengirim memiliki kunci bernilai 1, maka pengirim akan menggeser kedepan urutan huruf pesan. Atau jika dalam bilangan bulat, maka ditambah sebesar 1 satuan. Untuk dekripsi melakukan sebaliknya, jika penerima memiliki kunci bernilai 1, maka penerima akan menggeser kebelakang urutan huruf pesan. Atau jika dalam bilangan bulat, maka dikurang sebesar 1 satuan.

CIPHERTEXTXBSTUFL
PESAN (INTEGER)242192021612
KUNCI1
PESAN (INTEGER)231181920511
PESANWARSTEK

Memecahkan Caesar Cipher

Dapat dilihat bahwa terdapat kemungkinan atau probabilitas satu huruf pada pesan dapat dipecahkan dengan mencoba 25 kunci yang mungkin secara bergantian. Istilah terakhir adalah Cryptanalysis, Cryptanalyst dan Brute-force. Cryptanalysis adalah ilmu untuk memecahkan ciphertext menjadi plaintext dengan tidak melalui cara yang semestinya, sedangkan orang yang menguasai ilmu ini disebut Cryptanalyst. Cryptanalyst dapat mengungkap pesan pengirim tanpa memerlukan kunci sama sekali, dengan metode Brute-force. Brute-force dalam konteks Caesar Cipher adalah metode penyerangan dengan mencoba kunci secara bergantian hingga ditemukan pesan yang di duga merupakan pesan utuh (message/plaintext) pengirim. Berikut adalah Brute-Force Cryptanalysis pada Caesar Cipher:

KEYXBSTUFL
1WARSTEK
2VZQRSDJ
3UYPQRCI
4TXOPQBH
5SWNOPAG
6RVMNOZF
7QULMNYE
8PTKLMXD
9OSJKLWC
10NRIJKVB
11MQHIJUA
12LPGHITZ
13KOFGHSY
14JNEFGRX
15IMDEFQW
16HLCDEPV
17GKBCDOU
18FJABCNT
19EIZABMS
20DHYZALR
21CGXYZKQ
22BFWXYJP
23AEVWXIO
24ZDUVWHN
25YCTUVGM

Dapat dilihat bahwa dari 25 kunci yang diuji, kunci bernilai 1 yang diduga merupakan kunci antara pengirim dan penerima karena plaintext yang dihasilkan berhubungan dengan latar belakang pengirim/penerima, merupakan kata yang mainstream dalam suatu Bahasa, dan sebagainya. Algoritma ini tetap digunakan oleh beberapa pihak hingga saat ini, dengan pertimbangan lebih mengutamakan kecepatan di enkripsi-dekripsi dibanding keamanan pesan tersebut.

Kelebihan dan Kekurangan

Caesar Cipher adalah sebuah teknik enkripsi sederhana yang melibatkan pergeseran karakter dalam abjad. Meskipun Caesar Cipher mudah dipahami dan diterapkan, teknik ini memiliki kelebihan dan kelemahan tertentu.

Kelebihan Caesar Cipher:

  1. Sederhana dan Mudah Dimengerti: Caesar Cipher adalah salah satu metode enkripsi paling sederhana dan mudah dimengerti. Ini membuatnya cocok untuk penggunaan yang sederhana dan pendidikan dasar.
  2. Mudah Diterapkan: Algoritma Caesar Cipher dapat diterapkan dengan mudah tanpa perlu perangkat lunak khusus. Ini hanya memerlukan pergeseran karakter, yang dapat dilakukan dengan pena dan kertas atau secara otomatis dengan komputer.
  3. Kecepatan: Proses enkripsi dan dekripsi Caesar Cipher sangat cepat karena hanya melibatkan pergeseran karakter.

Kemelahan Caesar Cipher:

  1. Mudah Ditembus dengan Metode Brute Force: Caesar Cipher rentan terhadap serangan brute force, di mana penyerang mencoba semua kemungkinan pergeseran karakter hingga menemukan pesan yang benar. Karena hanya ada 25 kemungkinan pergeseran (pada abjad Inggris), metode ini dapat dilakukan dengan cepat.
  2. Frekuensi Kemunculan Karakter Tetap Sama: Struktur Caesar Cipher mempertahankan frekuensi kemunculan karakter yang sama pada teks terenkripsi seperti pada teks asli. Oleh karena itu, analisis frekuensi kemunculan karakter dapat membantu penyerang untuk menebak kunci pergeseran.
  3. Tidak Cocok untuk Data yang Panjang atau Sensitif: Caesar Cipher kurang cocok untuk melindungi data yang sangat sensitif atau teks yang panjang. Dengan serangan brute force atau analisis frekuensi, pesan dapat dengan relatif mudah dipecahkan.
  4. Rentan terhadap Metode Cryptanalysis Modern: Caesar Cipher tidak tahan terhadap metode cryptanalysis modern seperti analisis frekuensi kemunculan bigram, trigram, dan teknik-teknik lain yang lebih canggih.
  5. Tidak Menyediakan Keamanan yang Tinggi: Karena sederhana, Caesar Cipher tidak menyediakan tingkat keamanan yang tinggi. Dalam kebanyakan kasus, ini tidak cukup untuk melindungi informasi yang sangat bernilai atau rahasia.

Secara keseluruhan, Caesar Cipher sesuai untuk kebutuhan keamanan yang sangat dasar dan pemahaman yang sederhana, tetapi tidak dianjurkan untuk melindungi data yang penting atau rahasia di dunia modern yang serba terhubung dan canggih.

Referensi

[1]G. O’Regan, A Brief History of Computing, Mallow: Springer, 2008.
[2]“Caesar Cipher,” 101computing.net, 21 Januari 2017. [Online]. Available: https://www.101computing.net/caesar-cipher/. [Diakses Pada Tanggal 14 Oktober 2019].
[3]C. McFadden, “11 Cryptographic Methods That Marked History: From the Caesar Cipher to Enigma Code and Beyond,” Interesting Engineering, 3 Juli 2018. [Online]. Available: https://interestingengineering.com/11-cryptographic-methods-that-marked-history-from-the-caesar-cipher-to-enigma-code-and-beyond. [Diakses pada tanggal 14 Oktober 2019].
[4]M. I. Dwi R., “Perbandingan Kriptografi Klasik (Caesar Cipher) dan Kriptografi Modern (MD5),” Research Gate, 2016.
[5]W. Stallings, Cryptography and Network Security Principles and Practice, London: Pearson Education Limited, 2017.

 

2 komentar untuk “Caesar Cipher, Teknik Menyembunyikan Pesan Taktik Perang era Kekaisaran Romawi”

  1. Ternyata bener ya kalau jenderal perang itu juga harus jenius, contohnya si Julius Caesar ini sampai menciptakan kriptografinya sendiri, mantapp

Tinggalkan Komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *