Sandi Vigenère
Enkode dan dekode sandi Vigenère dengan kata kunci pilihan Anda. Beralih antara varian Vigenère klasik, Autokey, dan Beaufort, ikuti pada tabula recta interaktif, lalu salin, unduh, atau bagikan hasilnya. Semuanya berjalan di browser Anda.
Vigenère klasik: kata kunci berulang di sepanjang pesan, menambahkan geseran berbeda pada setiap huruf.
Masukkan teks di atas untuk melihat hasilnya di sini.
Tabula recta (kotak Vigenère)
Temukan huruf kunci Anda di kolom kiri dan huruf biasa Anda di baris atas; sel tempat keduanya bertemu adalah huruf teks sandi. Baris untuk huruf-huruf dalam kata kunci Anda disorot.
Cara menggunakan Sandi Vigenère
- 1
Pilih enkode atau dekode
Pilih Enkode untuk mengubah teks biasa menjadi teks sandi, atau Dekode untuk mengubah teks sandi kembali menjadi teks biasa menggunakan kata kunci yang sama.
- 2
Pilih varian sandi
Pilih Vigenère klasik, Autokey yang lebih kuat dengan kunci yang tidak pernah berulang, atau varian Beaufort yang resiprokal. Sebuah petunjuk singkat di bawah kata kunci menjelaskan masing-masing.
- 3
Masukkan kata kunci Anda
Ketik sebuah kata kunci seperti LEMON. Hanya huruf A sampai Z pada kata kunci yang digunakan, dan kata kunci itu diulang atau diperpanjang otomatis agar cocok dengan pesan Anda.
- 4
Ketik atau tempel teks Anda
Masukkan pesan Anda dan sandi berjalan saat Anda mengetik. Huruf disandikan sementara spasi, angka, dan tanda baca diteruskan tanpa perubahan.
- 5
Salin, unduh, atau bagikan
Salin hasilnya, unduh sebagai berkas teks, atau bagikan tautan yang membuka kembali alat ini dengan kata kunci, teks, dan pengaturan Anda yang persis sama, siap digunakan.
Memahami Sandi Vigenère
Apa itu sandi Vigenère?
Sandi Vigenère adalah sandi substitusi polialfabetik yang mengenkripsi teks menggunakan sebuah kata kunci. Alih-alih menggeser setiap huruf sebanyak jumlah tetap yang sama, seperti yang dilakukan sandi Caesar, sandi ini memakai setiap huruf kata kunci untuk menerapkan geseran berbeda pada setiap huruf pesan, berputar melalui kata kunci berulang kali. Karena huruf biasa yang sama dapat menjadi beberapa huruf sandi yang berbeda tergantung posisinya, sandi ini menyembunyikan pola frekuensi huruf tunggal yang membuat sandi sederhana begitu mudah dipecahkan.
Selama kira-kira tiga abad sandi ini dianggap tidak terpecahkan, sehingga memperoleh julukan Prancis le chiffre indéchiffrable, yaitu sandi yang tak terpecahkan. Saat ini ia menjadi favorit dalam teka-teki, escape room, dan tantangan capture-the-flag, serta pelajaran klasik tentang bagaimana sebuah kunci memperkuat sandi.
Bagaimana cara kerja enkripsi Vigenère
Pertama Anda memilih sebuah kata kunci, seperti LEMON. Kata kunci diulang di atas pesan sehingga setiap huruf teks biasa dipasangkan dengan sebuah huruf kunci. Setiap huruf kunci mewakili sebuah geseran: A berarti geser sebanyak 0, B sebanyak 1, C sebanyak 2, dan seterusnya hingga Z, yang menggeser sebanyak 25. Untuk mengenkripsi, Anda menambahkan setiap huruf teks biasa ke huruf kuncinya dan berputar mengelilingi alfabet; untuk mendekripsi, Anda menguranginya alih-alih menambahkan.
Hanya huruf A sampai Z yang disandikan, dan masing-masing mempertahankan bentuk huruf besar atau kecilnya. Spasi, angka, dan tanda baca diteruskan apa adanya dan tidak menghabiskan satu huruf kunci pun, sehingga kunci selalu tetap sejajar dengan huruf-huruf sebenarnya dari pesan.
Contoh terselesaikan: kata kunci LEMON
Ambil frasa ATTACK AT DAWN dan kata kunci LEMON. Menyejajarkan kata kunci yang diulang dengan huruf-hurufnya menghasilkan LEMONLEMONLE. Menambahkan setiap huruf teks biasa ke huruf kuncinya, A plus L is L, T plus E is X, T plus M is F, dan seterusnya, menghasilkan teks sandi LXFOPVEFRNHR. Perhatikan bahwa kedua huruf T pada ATTACK menjadi huruf sandi yang berbeda, X dan F, karena keduanya berada di bawah huruf kunci yang berbeda. Itulah persisnya yang menggagalkan analisis frekuensi sederhana.
Untuk mendekode, Anda membalikkan prosesnya dengan kata kunci yang sama, mengurangi setiap huruf kunci, atau Anda membaca tabula recta secara terbalik. Tanpa kata kunci, teks sandi nyaris tidak mengungkapkan apa pun.
Rumus Vigenère dan tabula recta
Jika huruf diberi nomor dari 0 hingga 25, dengan A sebagai 0 dan Z sebagai 25, enkripsi adalah C = (P + K) mod 26 dan dekripsi adalah P = (C - K) mod 26, dengan P adalah huruf teks biasa, K adalah huruf kunci saat ini, dan mod 26 membuat alfabet berputar. Operasi yang sama dapat dilakukan dengan tangan menggunakan tabula recta, sebuah kisi 26 kali 26 berisi alfabet-alfabet yang digeser. Temukan huruf kunci di sebelah kiri dan huruf teks biasa di sepanjang bagian atas, dan sel tempat baris dan kolom bertemu adalah huruf teks sandi.
Varian Autokey dan Beaufort
Varian Autokey memperbaiki kelemahan utama sandi standar, yaitu kunci yang berulang. Setelah kata kunci habis, kunci dilanjutkan dengan teks biasa itu sendiri, sehingga kunci berjalan tidak pernah berulang dan sandi menjadi jauh lebih sulit diserang. Dekripsi memulihkan teks biasa satu huruf demi satu huruf dan mengumpankannya kembali ke aliran kunci.
Varian Beaufort menggunakan rumus C = (K - P) mod 26. Karena mengurangi dari kunci adalah balikan dirinya sendiri, operasi yang sama mengenkripsi sekaligus mendekripsi, yang membuatnya praktis untuk cakram sandi yang dahulu dipakai di laut. Alat ini mendukung ketiganya sehingga Anda dapat membandingkannya pada teks dan kata kunci yang sama.
Cara memecahkan sandi Vigenère
Sandi ini dipecahkan dalam dua tahap. Pertama Anda mencari panjang kata kunci, secara klasik dengan pemeriksaan Kasiski, yang mencari kelompok huruf yang berulang dalam teks sandi dan mengukur jarak di antaranya, atau dengan uji Friedman, yang memakai indeks kebetulan. Setelah panjang kunci diketahui, teks sandi terpecah menjadi sebanyak itu kolom, masing-masing disandikan dengan satu geseran Caesar, dan analisis frekuensi biasa memecahkan setiap kolom secara terpisah.
Ini berarti sandi Vigenère dengan kunci pendek pada pesan panjang cukup mudah dipecahkan, itulah sebabnya kekuatan sandi sangat bergantung pada penggunaan kunci yang panjang dan tidak berulang. Gagasan Autokey dan one-time-pad tumbuh langsung dari upaya menghilangkan pengulangan itu.
Sejarah singkat sandi Vigenère
Gagasan menggunakan kata kunci untuk beralih antar alfabet pertama kali diterbitkan oleh Giovan Battista Bellaso pada 1553, dengan berlandaskan tabel polialfabetik Johannes Trithemius dan Leon Battista Alberti. Metode ini kemudian keliru dikaitkan dengan diplomat Prancis Blaise de Vigenère, yang namanya tetap melekat meski karyanya sendiri menjelaskan versi Autokey yang lebih kuat. Sandi berkunci-berulang ini menahan para kriptanalis selama berabad-abad sampai Charles Babbage memecahkannya secara pribadi pada tahun 1850-an dan Friedrich Kasiski menerbitkan metode umum pada 1863.
Apakah sandi Vigenère aman?
Tidak menurut standar modern. Begitu metode Kasiski dan Friedman diterbitkan, sandi Vigenère mana pun dengan kunci berulang menjadi dapat dipecahkan dengan kesabaran dan, saat ini, secara instan dengan komputer. Nilai sebenarnya kini bersifat edukatif dan rekreatif: ia adalah cara paling jelas untuk melihat bagaimana sebuah kunci mengubah sandi sepele menjadi sandi yang jauh lebih kuat, dan ia tetap menjadi andalan teka-teki serta latihan pemrograman. Untuk keamanan yang sesungguhnya, algoritma modern seperti AES digunakan sebagai gantinya.
Pertanyaan yang sering diajukan
Apa itu sandi Vigenère?
Apa perbedaan sandi Vigenère dengan sandi Caesar?
Apa itu kata kunci, dan bagaimana ia digunakan?
Bisakah Anda menunjukkan contoh Vigenère terselesaikan?
Apa itu tabula recta atau kotak Vigenère?
Apa itu varian Autokey dan Beaufort?
Bagaimana cara memecahkan atau membobol sandi Vigenère?
Mengapa sandi Vigenère disebut tak terpecahkan?
Siapa yang menemukan sandi Vigenère?
Apakah sandi ini mengubah angka, spasi, atau tanda baca?
Apakah sandi Vigenère aman?
Apakah teks saya diunggah ke server?
Bagaimana cara menulis sandi Vigenère dalam kode?
Alat terkait
Lanjutkan dengan alat praktis ini