CryptoSky

Platform pembelajaran kriptografi klasik berbasis simulasi interaktif.

Apa itu Kriptografi?

Kriptografi adalah ilmu untuk mengamankan informasi dengan cara mengubah pesan asli menjadi bentuk tersandi sehingga tidak dapat dibaca oleh pihak yang tidak memiliki kunci.

Dalam kriptografi klasik, proses pengamanan pesan dilakukan menggunakan teknik matematis sederhana seperti pergeseran huruf, substitusi, hingga operasi matriks.

Tujuan CryptoSky

CryptoSky dirancang sebagai media pembelajaran interaktif untuk membantu pengguna memahami konsep dasar kriptografi klasik melalui simulasi enkripsi dan dekripsi secara langsung.

Website ini menampilkan berbagai algoritma kriptografi klasik beserta visualisasi prosesnya agar lebih mudah dipahami oleh pelajar maupun mahasiswa.

Caesar Cipher

Teknik kriptografi klasik dengan metode pergeseran huruf.

Algoritma Caesar Cipher adalah salah satu teknik kriptografi paling tua dan paling sederhana dalam sejarah keamanan informasi. Metode ini ditemukan oleh Julius Caesar, seorang jenderal dan pemimpin Romawi, sekitar tahun 50 SM. Caesar menggunakan metode ini untuk mengirim pesan rahasia kepada pasukannya agar isi pesan tidak mudah dipahami musuh apabila surat tersebut jatuh ke tangan lawan. Karena itulah algoritma ini diberi nama Caesar Cipher.

Teknik ini termasuk ke dalam kriptografi klasik dengan metode substitusi, yaitu mengganti setiap huruf asli dengan huruf lain berdasarkan pergeseran tertentu dalam alfabet.

Cara kerja Caesar Cipher cukup sederhana. Setiap huruf pada plainteks atau teks asli digeser beberapa langkah sesuai nilai kunci tertentu. Misalnya jika kunci yang digunakan adalah 3, maka huruf A menjadi D, B menjadi E, C menjadi F, dan seterusnya. Jika pergeseran melewati huruf Z, maka akan kembali lagi ke awal alfabet.

Proses perubahan plainteks menjadi ciphertext disebut enkripsi. Untuk mengembalikan ciphertext menjadi teks asli digunakan proses dekripsi dengan cara menggeser huruf ke arah sebaliknya sesuai jumlah kunci.

Rumus Enkripsi
C = (P + K) mod 26
Keterangan:
  • C = Ciphertext
  • P = Nilai huruf plainteks
  • K = Kunci pergeseran
  • 26 = Jumlah huruf alfabet
Rumus Dekripsi
P = (C - K) mod 26
Contoh Penggunaan

Contoh penggunaan Caesar Cipher dengan plainteks:

ROY BAKTI

Misalnya digunakan kunci pergeseran K = 3.

Perubahan Huruf:
  • R → U
  • O → R
  • Y → B
  • B → E
  • A → D
  • K → N
  • T → W
  • I → L

Maka hasil ciphertext-nya adalah:

ROY BAKTI → URB EDNWL

Jika ingin dikembalikan ke bentuk asli, maka setiap huruf pada ciphertext digeser mundur sebanyak 3 langkah.

Caesar Cipher memang mudah dipahami dan menjadi dasar pembelajaran kriptografi modern, tetapi tingkat keamanannya sangat rendah karena hanya memiliki sedikit kemungkinan kunci. Oleh karena itu, algoritma ini saat ini lebih sering digunakan untuk pembelajaran dasar konsep enkripsi dibandingkan untuk pengamanan data nyata.

Vigenère Cipher

Teknik kriptografi klasik dengan substitusi polialfabetik menggunakan keyword.

Algoritma Vigenère Cipher adalah pengembangan dari Caesar Cipher yang dibuat untuk mengatasi kelemahan pada sistem substitusi sederhana. Algoritma ini pertama kali diperkenalkan oleh Giovan Battista Bellaso pada tahun 1553, tetapi kemudian lebih dikenal dengan nama Blaise de Vigenère, seorang diplomat dan kriptografer asal Prancis yang mengembangkan metode tersebut pada abad ke-16.

Vigenère Cipher termasuk ke dalam kriptografi klasik jenis substitusi polialfabetik, yaitu teknik enkripsi yang menggunakan lebih dari satu alfabet sehingga lebih sulit dipecahkan dibanding Caesar Cipher.

Cara kerja Vigenère Cipher menggunakan dua komponen utama, yaitu plainteks dan kata kunci. Setiap huruf pada plainteks akan dienkripsi menggunakan huruf pada kunci yang dipasangkan secara berulang. Nilai pergeseran tiap huruf tidak selalu sama seperti Caesar Cipher, melainkan mengikuti huruf pada kunci. Karena itu pola enkripsi menjadi lebih kompleks dan lebih aman.

Rumus Enkripsi
Cᵢ = (Pᵢ + Kᵢ) mod 26
Keterangan:
  • Cᵢ = Huruf ciphertext
  • Pᵢ = Huruf plainteks
  • Kᵢ = Huruf kunci
  • 26 = Jumlah huruf alfabet
Rumus Dekripsi
Pᵢ = (Cᵢ - Kᵢ) mod 26
Contoh Penggunaan

Contoh penggunaan Vigenère Cipher dengan plainteks:

ROY BAKTI

Misalnya digunakan kata kunci:

KUNCI

Karena jumlah huruf plainteks lebih panjang daripada kunci, maka kunci diulang:

KUNCIKUNC
Tabel Pasangan Huruf
Plaainteks R O Y B A K T I
Kunci K U N C I K U N
Ciphertext B I L D I U N V

Maka hasil ciphertext-nya adalah:

ROY BAKTI → BIL DIUNV

Proses dekripsi dilakukan dengan mengurangi nilai huruf ciphertext menggunakan nilai huruf pada kunci sehingga menghasilkan kembali plainteks asli.

Dibandingkan Caesar Cipher, Vigenère Cipher memiliki tingkat keamanan yang lebih baik karena menggunakan banyak pola pergeseran. Namun, algoritma ini tetap dapat dipecahkan dengan analisis frekuensi apabila panjang kunci berhasil diketahui. Karena itu, saat ini Vigenère Cipher lebih banyak digunakan sebagai media pembelajaran dasar kriptografi dibandingkan untuk keamanan modern.

Affine Cipher

Teknik kriptografi klasik berbasis fungsi linear dengan dua buah kunci.

Algoritma Affine Cipher adalah salah satu metode kriptografi klasik yang merupakan pengembangan dari Caesar Cipher. Algoritma ini menggunakan operasi matematika berupa perkalian dan penjumlahan untuk mengenkripsi setiap huruf pada plainteks.

Affine Cipher mulai dikenal dalam perkembangan kriptografi modern sebagai metode substitusi monoalfabetik yang lebih kompleks dibanding Caesar Cipher karena menggunakan dua buah kunci. Teknik ini banyak dipelajari dalam matematika diskrit dan keamanan informasi karena melibatkan konsep modulo dan fungsi linear.

Cara kerja Affine Cipher dilakukan dengan mengubah setiap huruf menjadi angka terlebih dahulu berdasarkan posisi alfabet, yaitu A = 0, B = 1, C = 2, sampai Z = 25. Setelah itu, nilai huruf diproses menggunakan rumus matematika dengan dua kunci, yaitu a dan b.

Nilai a harus relatif prima terhadap 26 agar proses dekripsi dapat dilakukan. Hasil perhitungan kemudian diubah kembali menjadi huruf ciphertext.

Rumus Enkripsi
C = (aP + b) mod 26
Keterangan:
  • C = Ciphertext
  • P = Nilai huruf plainteks
  • a = Kunci perkalian
  • b = Kunci penjumlahan
  • 26 = Jumlah huruf alfabet
Rumus Dekripsi
P = a⁻¹(C - b) mod 26
Keterangan:
  • a⁻¹ = Invers modulo dari a
Contoh Penggunaan

Contoh penggunaan Affine Cipher dengan plainteks:

ROY BAKTI

Misalnya digunakan:

  • a = 5
  • b = 8
Konversi Huruf ke Angka
Huruf R O Y B A K T I
Nilai 17 14 24 1 0 10 19 8

Gunakan rumus:

C = (5P + 8) mod 26
Perhitungan
  • R → ((5 × 17 + 8) mod 26 = 15) → P
  • O → ((5 × 14 + 8) mod 26 = 0) → A
  • Y → ((5 × 24 + 8) mod 26 = 24) → Y
  • B → ((5 × 1 + 8) mod 26 = 13) → N
  • A → ((5 × 0 + 8) mod 26 = 8) → I
  • K → ((5 × 10 + 8) mod 26 = 6) → G
  • T → ((5 × 19 + 8) mod 26 = 25) → Z
  • I → ((5 × 8 + 8) mod 26 = 22) → W

Maka hasil ciphertext-nya adalah:

ROY BAKTI → PAY NIGZW

Affine Cipher memiliki tingkat keamanan yang lebih baik dibanding Caesar Cipher karena menggunakan dua kunci sekaligus, sehingga jumlah kemungkinan kombinasi menjadi lebih banyak. Namun, algoritma ini masih termasuk kriptografi klasik sehingga tetap dapat dipecahkan menggunakan analisis frekuensi apabila digunakan pada pesan yang panjang. Saat ini Affine Cipher lebih sering digunakan sebagai bahan pembelajaran dasar konsep matematika dalam kriptografi modern.

Hill Cipher

Teknik kriptografi klasik berbasis matriks dan aljabar linear.

Algoritma Hill Cipher adalah salah satu metode kriptografi klasik yang menggunakan konsep matriks dan aljabar linear dalam proses enkripsi. Algoritma ini ditemukan oleh Lester S. Hill pada tahun 1929.

Berbeda dengan Caesar Cipher, Vigenère Cipher, dan Affine Cipher yang mengenkripsi huruf satu per satu, Hill Cipher mengenkripsi beberapa huruf sekaligus dalam bentuk blok. Karena menggunakan operasi matriks, algoritma ini memiliki tingkat keamanan yang lebih baik dibanding metode substitusi klasik lainnya dan menjadi salah satu dasar penting dalam perkembangan kriptografi modern.

Cara kerja Hill Cipher dimulai dengan mengubah setiap huruf plainteks menjadi angka berdasarkan urutan alfabet, yaitu A = 0, B = 1, C = 2, hingga Z = 25.

Setelah itu, huruf-huruf plainteks dikelompokkan menjadi beberapa blok sesuai ukuran matriks kunci. Matriks kunci kemudian dikalikan dengan matriks plainteks menggunakan operasi modulo 26. Hasil perkalian tersebut akan menghasilkan ciphertext baru dalam bentuk angka yang kemudian diubah kembali menjadi huruf.

Rumus Enkripsi
C = K × P mod 26
Keterangan:
  • C = Matriks ciphertext
  • K = Matriks kunci
  • P = Matriks plainteks
  • 26 = Jumlah huruf alfabet
Rumus Dekripsi
P = K⁻¹ × C mod 26
Keterangan:
  • K⁻¹ = Invers matriks kunci
Contoh Penggunaan

Contoh penggunaan Hill Cipher dengan plainteks:

ROY BAKTI

Misalnya digunakan matriks kunci 2×2:


        K = | 3  3 |
            | 2  5 |
                    
Konversi Huruf ke Angka
Huruf R O Y B A K T I
Nilai 17 14 24 1 0 10 19 8

Kelompokkan menjadi pasangan:

(17,14), (24,1), (0,10), (19,8)
Contoh Proses Enkripsi Pasangan Pertama

        | 3  3 |   | 17 |   =   | 93  |
        | 2  5 | × | 14 |       | 104 |
                    

Lalu dihitung modulo 26:


        93 mod 26  = 15
        104 mod 26 = 0
                    

Hasil:

  • 15 → P
  • 0 → A

Pasangan pertama menghasilkan ciphertext:

RO → PA

Jika seluruh pasangan dihitung dengan proses yang sama, maka hasil ciphertext menjadi:

ROY BAKTI → PAKYKSFI

Hill Cipher memiliki keunggulan karena mampu mengenkripsi banyak huruf sekaligus sehingga pola huruf lebih sulit dianalisis. Algoritma ini juga menggunakan konsep matematika yang lebih kompleks dibanding algoritma klasik lainnya.

Namun, Hill Cipher tetap memiliki kelemahan apabila matriks kunci berhasil diketahui oleh pihak lain. Oleh karena itu, algoritma ini saat ini lebih sering digunakan sebagai media pembelajaran konsep matriks dalam kriptografi daripada sebagai sistem keamanan modern.

Playfair Cipher

Teknik kriptografi klasik yang mengenkripsi pasangan huruf menggunakan matriks 5×5.

Algoritma Playfair Cipher adalah salah satu metode kriptografi klasik yang ditemukan oleh Charles Wheatstone pada tahun 1854 dan kemudian dipopulerkan oleh Lord Playfair sehingga algoritma ini dikenal dengan nama Playfair Cipher.

Berbeda dengan Caesar Cipher atau Vigenère Cipher yang mengenkripsi satu huruf dalam satu waktu, Playfair Cipher mengenkripsi dua huruf sekaligus atau disebut digraf. Pada masanya, algoritma ini dianggap lebih aman karena mampu menyembunyikan pola frekuensi huruf tunggal yang biasanya digunakan untuk memecahkan sandi klasik.

Cara kerja Playfair Cipher dimulai dengan membuat tabel matriks berukuran 5×5 yang berisi huruf alfabet berdasarkan kata kunci tertentu. Karena jumlah kotak hanya 25, maka huruf I dan J biasanya digabung menjadi satu.

Setelah matriks dibuat, plainteks dibagi menjadi pasangan huruf. Jika dalam satu pasangan terdapat huruf yang sama, maka ditambahkan huruf penyisip seperti X. Jika jumlah huruf ganjil, maka ditambahkan huruf tambahan di akhir.

Aturan Enkripsi Playfair Cipher
  • Jika kedua huruf berada pada baris yang sama, maka masing-masing huruf diganti dengan huruf di sebelah kanannya.
  • Jika kedua huruf berada pada kolom yang sama, maka masing-masing huruf diganti dengan huruf di bawahnya.
  • Jika kedua huruf membentuk persegi panjang, maka setiap huruf diganti dengan huruf pada sudut lain di baris yang sama.
Contoh Penggunaan

Contoh penggunaan Playfair Cipher dengan plainteks:

ROY BAKTI

Misalnya digunakan kata kunci:

KUNCI

Maka matriks 5×5 yang terbentuk adalah:

K U N C I
A B D E F
G H L M O
P Q R S T
V W X Y Z

Huruf J digabung dengan I.

Plainteks:

ROYBAKTI

Dibagi menjadi pasangan:

RO   YB   AK   TI
Proses Enkripsi
  • RO → LT
  • YB → WE
  • AK → GA
  • TI → FK

Maka hasil ciphertext-nya adalah:

ROY BAKTI → LTWEGAFK

Playfair Cipher memiliki tingkat keamanan yang lebih baik dibanding Caesar Cipher karena mengenkripsi dua huruf sekaligus sehingga analisis frekuensi menjadi lebih sulit dilakukan. Selain itu, penggunaan matriks membuat pola enkripsi lebih kompleks.

Namun, algoritma ini tetap termasuk kriptografi klasik dan saat ini sudah tidak cukup aman untuk digunakan dalam pengamanan data modern. Meski begitu, Playfair Cipher masih sering dipelajari sebagai dasar pemahaman teknik substitusi dalam dunia kriptografi.

Fitur CryptoSky

Enkripsi Interaktif

Melakukan proses enkripsi dan dekripsi secara langsung.

Visualisasi Cipher

Menampilkan langkah dan proses algoritma secara visual.

Tema Dinamis

Tampilan otomatis berubah antara mode siang dan malam.

Siap Mencoba Kriptografi?

Masuk ke Lab Kripto untuk mencoba berbagai algoritma klasik.

Buka Lab Kripto