Alat Sandi Vigenere
Enkripsi dan dekripsi teks dengan sandi polialfabetik Vigenere menggunakan kata kunci yang disediakan pengguna yang menggeser setiap huruf dengan jumlah yang bervariasi. Aliran penyelarasan kunci langsung, visualisasi tabula recta, varian Autokey dan Beaufort, bukti pulang-pergi, dan petunjuk periode Kasiski.
Ad blocker Anda mencegah kami menampilkan iklan
MiniWebtool gratis karena iklan. Jika alat ini membantu, dukung kami dengan Premium (bebas iklan + lebih cepat) atau whitelist MiniWebtool.com lalu muat ulang halaman.
- Atau upgrade ke Premium (bebas iklan)
- Izinkan iklan untuk MiniWebtool.com, lalu muat ulang
Tentang Alat Sandi Vigenere
Alat Sandi Vigenère ini mengenkripsi dan mendekripsi teks menggunakan sandi polialfabetik yang kebal terhadap kriptanalisis selama hampir 300 tahun. Ketik pesan dan kata kunci apa saja, dan Anda akan langsung mendapatkan teks sandi bersama dengan aliran penyelarasan kunci yang ditumpuk secara vertikal yang menunjukkan huruf teks biasa, kunci, dan sandi secara bersamaan — sehingga Anda dapat melihat mengapa setiap huruf berubah. Alat ini juga menyediakan varian Autokey asli, varian timbal-balik Beaufort yang digunakan dalam Hagelin M-209 pada Perang Dunia II, bukti bolak-balik, dan tabula recta 26×26 untuk verifikasi manual.
Konsep Langkah Demi Langkah
Ambil teks biasa ATTACKATDAWN dan kata kunci LEMON. Ulangi kata kunci di bawahnya hingga menutupi seluruh teks biasa, lalu tambahkan kedua huruf tersebut posisi demi posisi (A=0, B=1, …, Z=25), dikurangi modulo 26.
Membaca baris hijau memberikan teks sandi LXFOPVEFRNHR. Huruf kunci L menggeser A sebanyak 11 posisi (A→L), E menggeser T sebanyak 4 posisi (T→X), dan seterusnya. Huruf teks biasa A yang sama muncul tiga kali tetapi dienkripsi menjadi tiga huruf yang berbeda (L, O, E) — itulah sifat polialfabetik dan alasan mengapa Vigenère mengalahkan analisis frekuensi huruf tunggal.
Matematika dalam Satu Baris
Berikan nomor pada alfabet dari A=0 hingga Z=25. Misalkan \( p_i \) adalah huruf teks biasa ke-i dan \( k_i \) adalah huruf kunci yang sesuai (kata kunci berputar, sehingga \( k_i = K_{i \bmod n} \) di mana \( n \) adalah panjang kunci). Maka:
Enkripsi: \( c_i = (p_i + k_i) \bmod 26 \) · Dekripsi: \( p_i = (c_i - k_i) \bmod 26 \)
Untuk varian Beaufort, rumus satu baris yang sama \( c_i = (k_i - p_i) \bmod 26 \) menangani kedua arah. Untuk varian Autokey, kuncinya menjadi \( k_1, k_2, \dots, k_n, p_1, p_2, \dots \) — teks biasa itu sendiri memperpanjang kunci setelah kata kunci habis.
Penjelasan Tiga Varian
Tabula Recta (Persegi Vigenère)
Cara klasik untuk menerapkan Vigenère adalah dengan mencari setiap huruf dalam tabel 26×26 di mana baris r adalah alfabet yang diputar sebanyak r posisi. Temukan baris huruf kunci, temukan kolom huruf teks biasa — sel pada persimpangan tersebut adalah huruf teks sandi. Untuk mendekripsi, temukan baris kunci, telusuri hingga ke huruf teks sandi, lalu baca tajuk kolomnya.
| · | 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| A | 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 |
| B | 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 |
| C | 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 |
| D | 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 |
| E | 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 | D |
| F | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E |
| G | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F |
| H | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G |
| I | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H |
| J | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I |
| K | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J |
| L | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K |
| M | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L |
| N | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M |
| O | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N |
| P | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
| Q | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P |
| R | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q |
| S | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R |
| T | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S |
| U | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T |
| V | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U |
| W | W | 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 |
| X | 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 |
| Y | 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 |
| Z | 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 |
Label baris = huruf kunci. Tajuk kolom = huruf teks biasa. Isi sel = huruf teks sandi. Contoh: baris L, kolom A → L. Baris E, kolom T → X.
Cara Menggunakan Alat Sandi Vigenère
- Tempel teks biasa Anda (untuk dienkripsi) atau teks sandi (untuk didekripsi) ke dalam kotak input. Aliran penyelarasan kunci langsung di sebelah kanan menunjukkan huruf teks biasa, huruf kunci, dan huruf sandi yang dihasilkan ditumpuk secara vertikal, sehingga pergeseran per huruf terlihat jelas dalam sekali pandang.
- Ketik kata kunci di kolom Kata kunci. Karakter selain huruf akan dihapus secara otomatis. Perhatikan perputaran potongan kata kunci oranye saat huruf digunakan, dan pembesar "pasangan terbaru" memperluas kelompok tiga huruf teks biasa + kunci = teks sandi paling akhir.
- Pilih Mode (Enkripsi atau Dekripsi) dan Varian (Vigenère, Autokey, atau Beaufort). Beaufort bersifat timbal-balik, sehingga modenya tidak mengubah hasil outputnya.
- Klik Terapkan Vigenère. Output lengkap muncul di bawah dengan pelacakan pergeseran per huruf, statistik (panjang kunci, periode, cakupan), bukti bolak-balik, dan laboratorium sandi berdampingan yang membandingkan setiap varian pada input yang sama.
- Gunakan tombol Salin untuk mengambil teks sandi, teks asli, atau kata kunci. Untuk mendekripsi, tempel teks sandi, ubah Mode menjadi Dekripsi dengan kata kunci yang sama, lalu klik lagi.
Vigenère vs Caesar vs Atbash vs ROT13 — Referensi Cepat
| Sandi | Jenis | Kunci | Timbal-balik | "HELLO" dengan kunci LEMON |
|---|---|---|---|---|
| Vigenère | Substitusi polialfabetik | Kata kunci (1+ huruf) | Tidak (gunakan Dekripsi) | SIXZB |
| Caesar (geser 3) | Rotasi monoalfabetik | Pergeseran tunggal | Tidak | KHOOR |
| ROT13 | Rotasi (tetap 13) | Tidak ada (tetap) | Ya | URYYB |
| Atbash | Refleksi | Tidak ada (tetap) | Ya | SVOOL |
| Beaufort | Timbal-balik polialfabetik | Kata kunci | Ya | EABDZ |
Mengapa Vigenère Disebut "Le Chiffre Indéchiffrable"
Selama hampir tiga abad setelah Bellaso pertama kali menerbitkannya pada tahun 1553, Vigenère dianggap tidak dapat dipecahkan. Sebuah huruf teks biasa yang sama bisa dienkripsi menjadi hingga 26 huruf sandi yang berbeda tergantung pada posisinya, sehingga asumsi frekuensi datar yang biasanya memecahkan Caesar (huruf E dalam bahasa Inggris adalah huruf yang paling umum) tidak lagi berfungsi. Charles Babbage memecahkannya pada tahun 1850-an tetapi tidak menerbitkannya; Friedrich Kasiski secara independen menerbitkan serangan tersebut pada tahun 1863. Wawasan utamanya: kata kunci berulang, sehingga substring teks biasa yang sama pada posisi yang berbeda dengan kelipatan panjang kunci menghasilkan teks sandi yang sama. Temukan jarak pengulangan trigram, ambil pembagi persekutuan terbesar, dan Anda akan memiliki kandidat kuat untuk panjang kunci. Setelah panjang kunci diketahui, Vigenère terurai menjadi n sandi Caesar paralel, yang masing-masing dapat ditaklukkan dengan analisis frekuensi.
Pemeriksaan Kasiski — Bagaimana Vigenère Runtuh
- Pindai teks sandi untuk mencari urutan 3 huruf atau 4 huruf yang berulang.
- Catat jarak antara setiap pasangan pengulangan tersebut.
- Ambil pembagi persekutuan terbesar (GCD) dari jarak-jarak tersebut — panjang kunci hampir selalu membagi GCD ini.
- Bagi teks sandi menjadi n kolom (setiap huruf ke-n). Setiap kolom adalah sandi Caesar.
- Untuk setiap kolom, temukan pergeseran huruf yang memaksimalkan indeks koinsidensi atau cocok dengan frekuensi huruf bahasa Inggris. Pergeseran tersebut adalah salah satu huruf kunci.
Coba contoh cepat "Rentan-Kasiski" untuk melihat ini: input mengulang kalimat "The quick brown fox", dan kuncinya hanya 3 huruf, sehingga kata-kata yang sama dienkripsi dengan cara yang sama di kedua waktu — sebuah tanda yang sangat jelas bagi seorang analis Kasiski.
Keluarga Serangan Babbage / Kasiski / Friedman
- Babbage (1850-an, tidak diterbitkan). Menemukan bahwa pola yang berulang membocorkan panjang kunci.
- Kasiski (1863). Menerbitkan ide yang sama: jarak antara pengulangan adalah kelipatan dari panjang kunci.
- Friedman (1922). Memperkenalkan Indeks Koinsidensi — ukuran statistik yang, untuk pembagian kolom yang tepat, memuncak di sekitar ~0.067 (bahasa Inggris) alih-alih angka acak ~0.038.
- Komputer modern. Menjalankan semua panjang kunci dari 1 hingga 30, menghitung IC untuk setiap pembagian kolom, memilih panjang yang pembagiannya memiliki rata-rata IC tertinggi. Kemudian melakukan serangan frekuensi pada setiap kolom. Total waktu: milidetik.
Pemberitahuan Keamanan
Vigenère bukanlah enkripsi modern. Kata kunci 5 huruf dipecahkan dalam hitungan milidetik oleh Kasiski, dan kata kunci 20 huruf runtuh dalam beberapa detik melalui analisis otomatis. Bahkan Autokey, yang menghilangkan kelemahan periodisitas, tetap rentan terhadap serangan known-plaintext dan serangan probable-word pada prefiks kata kunci. Jangan pernah menggunakan Vigenère untuk melindungi kata sandi, data pribadi, informasi keuangan, atau apa pun yang harus tetap rahasia. Untuk perlindungan nyata gunakan AES-256, ChaCha20, RSA, atau libsodium. Perlakukan Vigenère sebagai cara untuk menyamarkan teks — untuk teka-teki, CTF, pengajaran, dan demonstrasi sejarah — bukan untuk mengamankannya.
Tips untuk Hasil Terbaik
- Untuk mendekripsi, tempel teks sandi, ketik kata kunci yang sama, dan ubah Mode menjadi Dekripsi. Alat yang sama dapat mengenkripsi sekaligus mendekripsi.
- Untuk varian Beaufort, mode tidak menjadi masalah — menerapkan Beaufort dua kali dengan kunci yang sama akan mengembalikan teks asli.
- Jika Anda hanya mementingkan huruf (tidak ada spasi atau tanda baca pada output), hapus centang "Pertahankan huruf besar/kecil asli" — input akan dinormalisasi menjadi huruf KAPITAL sebelum disandikan dan hasil outputnya hanya berupa huruf besar.
- Spasi dan tanda baca pada input dilewati tanpa diubah. Untuk menyembunyikan batas kata dari pembaca biasa, hapus spasi tersebut sendiri sebelum menempelkannya.
- Gunakan Laboratorium sandi untuk melihat bagaimana kunci yang sama berperilaku di ketiga varian — Autokey biasanya menghasilkan output yang sangat berbeda dari Vigenère klasik setelah n huruf pertama, karena aliran kuncinya berubah.
FAQ
Apa itu sandi Vigenère?
Sandi Vigenère adalah sandi substitusi polialfabetik yang menggeser setiap huruf teks biasa dengan jumlah berbeda yang ditentukan oleh kata kunci yang berulang. Jika huruf kuncinya adalah K (huruf ke-11), huruf teks biasa digeser maju sebanyak 10 posisi. Sandi ini dijelaskan oleh Giovan Battista Bellaso pada tahun 1553 dan kemudian salah diatribusikan kepada Blaise de Vigenère, yang namanya telanjur melekat.
Bagaimana perbedaan Vigenère dengan Caesar atau Atbash?
Caesar menggunakan satu pergeseran tetap untuk setiap huruf — kunci Vigenère satu huruf adalah tepat sandi Caesar. Vigenère menggunakan pergeseran yang berbeda untuk setiap posisi, yang diambil dari kata kunci yang berulang — itulah sebabnya huruf teks biasa yang sama dapat dienkripsi menjadi beberapa huruf sandi yang berbeda. Atbash adalah refleksi tetap (A↔Z, B↔Y) tanpa kunci. Vigenère jauh lebih sulit dipecahkan dengan analisis frekuensi huruf tunggal karena kunci meratakan frekuensi huruf tersebut.
Apakah Vigenère aman untuk enkripsi nyata?
Tidak. Friedrich Kasiski memecahkan Vigenère pada tahun 1863 dengan memanfaatkan periodisitas kata kunci yang berulang. Komputer modern memecahkan Vigenère secara instan menggunakan uji Friedman (indeks koinsidensi) dan pemeriksaan Kasiski. Gunakan AES-256, ChaCha20, atau libsodium untuk perlindungan nyata; Vigenère hanya untuk teka-teki, CTF, dan pengajaran.
What is the Autokey variant?
Autokey memperpanjang kata kunci dengan menambahkan teks biasa itu sendiri, sehingga aliran kunci tidak pernah berulang. Vigenère mengusulkan hal ini pada tahun 1586 untuk mengatasi kelemahan yang nantinya dieksploitasi oleh Kasiski. Autokey jauh lebih sulit dipecahkan daripada Vigenère klasik tetapi masih rentan terhadap serangan known-plaintext dan serangan probable-word pada prefiks kata kunci.
Apa itu varian Beaufort?
Sandi Beaufort menggunakan operasi teks sandi = (kunci − teks biasa) mod 26, yang membuatnya menjadi kebalikannya sendiri — mengenkripsi dua kali dengan kunci yang sama akan mengembalikan teks asli. Sandi ini dinamai menurut Sir Francis Beaufort dan merupakan sandi di balik Hagelin M-209, sebuah mesin sandi mekanis portabel yang digunakan oleh Angkatan Darat AS pada Perang Dunia II.
Berapa panjang seharusnya kata kunci saya?
Lebih panjang jauh lebih baik. Kunci satu huruf mengurangi Vigenère menjadi sandi Caesar. Kunci pendek (3–5 huruf) dapat dipecahkan dalam hitungan detik oleh Kasiski. Kunci yang panjangnya sama dengan pesan dan hanya digunakan sekali adalah one-time pad — terbukti tidak dapat dipecahkan. Untuk teka-teki dan pengajaran, kata kunci sepanjang 6–12 huruf adalah pilihan yang biasa.
Kutip konten, halaman, atau alat ini sebagai:
"Alat Sandi Vigenere" di https://MiniWebtool.com/id// dari MiniWebtool, https://MiniWebtool.com/
oleh tim miniwebtool. Diperbarui: 2026-05-26