Sandi VIC
Buat dan pecahkan kode dengan sandi VIC, sandi manual Soviet yang tangguh dan dibawa oleh mata-mata Reino Häyhänen. Dari sebuah tanggal, frasa yang dihafal, nomor pribadi, dan keygroup lima digit, sandi ini menurunkan sebuah straddling checkerboard dan dua transposisi kolom, yang kedua terganggu. Semuanya berjalan di peramban Anda.
Sandi VIC adalah sandi manual paling rumit pada masa Perang Dingin. Dari empat rahasia kecil, yaitu sebuah tanggal, frasa yang dihafal, nomor pribadi, dan keygroup lima digit, sebuah rantai pengunci yang panjang membangun straddling checkerboard dan dua transposisi kolom, yang kedua terganggu. Atur empat bagian kunci di bawah ini, lalu buat atau pecahkan kode. Hanya huruf, angka, dan titik yang diproses; selain itu diabaikan. Gunakan empat bagian kunci yang sama untuk memecahkan kode.
Mode
Tanggal (6+ digit)
Sebuah tanggal yang ditulis sebagai digit, misalnya 139195. Lima digit pertama memulai rantai pengunci; digit keenam menentukan letak keygroup disembunyikan di dalam pesan.
Frasa kunci (20+ huruf)
Sebuah baris teks yang mudah diingat, seperti lirik lagu. Dua puluh huruf pertama yang dipakai; spasi dan tanda baca diabaikan.
Nomor pribadi
Sebuah angka kecil dari 1 hingga 99 yang dihafal oleh kedua koresponden.
Keygroup (5 digit)
Sebuah kelompok acak lima digit, berbeda untuk setiap pesan. Kelompok ini dikirim secara terbuka, disembunyikan di dalam ciphertext.
Masukkan teks di atas untuk melihat hasil VIC di sini.
Bagaimana kunci diturunkan
Rantai pengunci
Setiap baris dibangun dari baris-baris di atasnya: A adalah keygroup, B adalah tanggal, dan C adalah A dikurangi B. E.1 dan E.2 berasal dari frasa kunci. Rantai ini kemudian menjumlahkan, mengurutkan, dan menggabungkan digit ke bawah hingga ke S, yaitu header checkerboard, dan dua kunci transposisi.
A
72401
B
13919
C
69592
E.1
8017942653
E.2
6013589427
F.1
6959254417
G
4966196060
H
3288628787
J
3178429506
Blok (K–P)
K
5064805552
L
5602850077
M
1620350748
N
7823857125
P
5051328370
S
5961328470
Header checkerboard (S)
5961328470
Lebar transposisi 1
13
Lebar transposisi 2
6
Kunci transposisi 1
0668005552551
Kunci transposisi 2
758838
Slot indikator
5
Straddling checkerboard
Baris teratas memuat delapan huruf umum di bawah mnemonik AT ONE SIR; digit header dari dua kolom kosong menjadi awalan baris-baris di bawahnya. Sebuah huruf umum memakai satu digit, setiap huruf lainnya memakai dua digit.
Cara menggunakan Sandi VIC
- 1
Pilih buat kode atau pecahkan kode
Pilih Buat kode untuk mengubah pesan menjadi ciphertext VIC, atau Pecahkan kode untuk memulihkan pesan. Pemecahan kode memerlukan tanggal, frasa kunci, nomor pribadi, dan keygroup yang persis sama dengan yang dipakai untuk membuat kode.
- 2
Atur tanggal
Masukkan tanggal sebagai digit, misalnya 139195. Lima digit pertama memulai rantai pengunci, dan digit keenam menentukan letak keygroup disembunyikan di dalam pesan yang sudah jadi.
- 3
Atur frasa kunci dan nomor pribadi
Masukkan frasa yang mudah diingat dengan setidaknya dua puluh huruf dan nomor pribadi kecil dari 1 hingga 99. Inilah rahasia tetap yang disepakati kedua koresponden di muka.
- 4
Atur keygroup
Masukkan keygroup acak lima digit, atau tekan Acak untuk menghasilkannya. Keygroup adalah indikator: kelompok ini berubah untuk setiap pesan dan dikirim tersembunyi di dalam ciphertext.
- 5
Ketik pesan Anda dan baca hasilnya
Ketik atau tempel teks Anda. Hanya huruf, angka, dan titik yang dienkripsi; selain itu diabaikan. Salin atau unduh hasilnya, atau bagikan tautan yang membuka kembali alat dengan kunci dan teks Anda yang persis.
Memahami Sandi VIC
Apa itu sandi VIC?
Sandi VIC adalah sandi pena-dan-kertas yang dipakai oleh intelijen Soviet pada tahun 1950-an dan secara luas dianggap sebagai sandi manual paling rumit yang pernah diterjunkan. Sandi ini dinamai menurut Reino Häyhänen, seorang agen KGB yang nama sandinya adalah VICTOR. Meski hanya menggunakan pena, kertas, dan beberapa rahasia yang dihafal, sistem ini memadukan substitusi dan transposisi begitu menyeluruh sehingga para kriptanalis Amerika tidak dapat memecahkan satu pun pesan yang berhasil disadap hingga Häyhänen sendiri membelot dan menjelaskan cara kerjanya.
Yang membuat VIC luar biasa adalah ia mengemas kekuatan sebuah sandi mesin ke dalam prosedur yang dapat dibawa seorang agen sepenuhnya di dalam kepalanya. Sebuah rutinitas pengunci singkat mengubah sebuah tanggal, frasa yang dihafal, nomor pribadi, dan kelompok acak lima digit menjadi seluruh bahan yang dibutuhkan sandi: sebuah straddling checkerboard untuk mengubah huruf menjadi digit, dan dua transposisi kolom, yang kedua terganggu, untuk mengacak hasilnya. Alat ini mereproduksi seluruh proses tersebut dan menampilkan setiap langkah saat berlangsung.
Cara kerja sandi VIC
Mengenkripsi sebuah pesan dengan VIC memiliki tiga tahap. Pertama adalah rantai pengunci: sebuah urutan operasi digit sederhana, penjumlahan tanpa menyimpan, pengurangan tanpa meminjam, dan pemeringkatan, yang memperluas empat bagian kunci menjadi sebuah baris header checkerboard dan dua kunci transposisi beserta lebarnya. Kemudian pesan diubah menjadi digit menggunakan straddling checkerboard, sebuah tabel ringkas di mana huruf-huruf yang paling umum memakai satu digit dan sisanya memakai dua. Akhirnya digit-digit itu diacak oleh dua transposisi kolom.
Bagian yang cerdik adalah transposisi kedua, yang terganggu: area segitiga pada kisi dicadangkan dan diisi hanya setelah sisanya, memecah keteraturan kolom yang membuat sandi transposisi biasa lebih mudah diserang. Pada akhirnya keygroup acak diselipkan kembali ke dalam ciphertext pada posisi yang ditentukan oleh tanggal, sehingga penerima dapat memulihkan indikator dan mengulang rantai pengunci. Hasilnya adalah serangkaian kelompok digit yang tidak mengkhianati pola apa pun dari bahasa aslinya.
Rantai pengunci
Segala sesuatu dalam VIC mengalir dari rantai pengunci. Keygroup lima digit menjadi baris A dan lima digit pertama dari tanggal menjadi baris B; mengurangi B dari A tanpa meminjam menghasilkan baris C. Frasa kunci menyediakan dua baris lagi: sepuluh huruf pertamanya dan sepuluh huruf berikutnya masing-masing diberi nomor dalam urutan alfabet untuk membuat baris E.1 dan E.2. Baris C kemudian diperpanjang dengan penjumlahan rantai, sebuah proses bertenggang di mana setiap digit baru adalah jumlah dua digit sebelumnya, dan digabungkan dengan baris-baris frasa untuk menghasilkan lebih banyak digit.
Dari sini rantai menumbuhkan sebuah blok berisi lima puluh digit, lagi-lagi dengan penjumlahan rantai. Memberi nomor pada baris terakhir blok itu menghasilkan baris S, yang menjadi header dari straddling checkerboard. Dua digit yang diambil dari blok, ditambahkan ke nomor pribadi, menetapkan lebar kedua transposisi, dan membaca blok kolom demi kolom dalam urutan berkunci menghasilkan kedua kunci transposisi itu sendiri. Diagram langsung dalam alat ini menata setiap baris ini sehingga Anda dapat mengikuti penurunannya dari empat rahasia hingga ke kunci yang sudah jadi.
Straddling checkerboard
Straddling checkerboard adalah sebuah tabel kecil yang mengubah huruf dan angka menjadi aliran angka. Sepuluh kolomnya diberi label oleh baris header S. Baris teratas memuat delapan huruf berfrekuensi tinggi, ditempatkan di bawah mnemonik yang telah disepakati, di sini mnemonik klasik AT ONE SIR, yang dua spasinya menandai kolom-kolom yang dikosongkan. Digit header dari dua kolom kosong itu menjadi awalan bagi dua baris di bawahnya, yang memuat sisa alfabet, sebuah titik, dan sebuah simbol pengalih-angka.
Karena huruf-huruf umum berada di baris teratas, masing-masing terenkripsi menjadi hanya satu digit, sementara huruf yang kurang umum memakai dua, yaitu awalan baris diikuti label kolom. Kode yang tidak merata dan menyinkron-sendiri ini menjaga ciphertext tetap pendek dan menghilangkan frekuensi huruf yang menonjol yang akan dibocorkan oleh substitusi sederhana. Angka dalam pesan dikirim dalam mode angka, ditandai oleh simbol pengalih-angka, dengan setiap digit ditulis tiga kali agar tidak tertukar dengan kode huruf.
Dua transposisi
Setelah pesan menjadi aliran digit, VIC mengacaknya dua kali. Transposisi pertama adalah transposisi kolom biasa: digit ditulis ke dalam baris-baris dengan lebar tetap, lalu kolom dibaca keluar dalam urutan yang ditetapkan oleh kunci transposisi pertama. Ini saja sudah mengaduk digit dengan baik, tetapi tersendiri sebuah transposisi kolom meninggalkan keteraturan yang dapat dimanfaatkan pemecah kode berpengalaman, terutama ketika beberapa pesan berbagi satu kunci.
Transposisi kedua menutup celah itu dengan menjadi terganggu. Area segitiga pada kisi dicadangkan dalam pola tangga yang dikunci oleh kunci transposisi kedua; pesan mula-mula mengisi hanya sel-sel di luar segitiga itu, lalu kembali untuk mengisi segitiga itu sendiri. Membaca kolom keluar dalam urutan berkunci menjalin kedua pengisian itu, sehingga digit akhir teraduk dengan menyeluruh. Gangguan inilah, yang berlapis di atas checkerboard dan transposisi pertama, yang memberi VIC reputasinya yang tangguh.
Reino Häyhänen dan kasus nikel berongga
Sandi VIC terungkap melalui salah satu episode paling terkenal dalam spionase Perang Dingin. Pada tahun 1953 seorang loper koran di Brooklyn menjatuhkan sekeping nikel yang terbelah, menampakkan sebuah foto kecil berisi kolom angka. FBI tidak dapat membaca pesan itu, dan nikel berongga itu tersimpan sebagai keingintahuan yang tak terpecahkan selama empat tahun. Terobosan datang pada tahun 1957 ketika Reino Häyhänen, seorang agen Soviet yang ditempatkan di New York dengan nama sandi VICTOR, membelot ke Amerika Serikat dan menjelaskan sandi itu secara terperinci.
Informasi Häyhänen juga membantu membongkar atasannya, perwira ilegal senior yang dikenal sebagai Rudolf Abel, yang kemudian dipertukarkan dengan pilot U-2 Amerika Francis Gary Powers. Sandi yang diungkapkan Häyhänen begitu rumit sehingga para analis menamainya menurut dirinya, dan National Security Agency lama mengangkatnya sebagai contoh betapa kuatnya sebuah sandi manual. Rahasianya aman bukan karena pesannya terpecahkan, melainkan hanya karena seseorang datang dan menyerahkannya.
Seberapa aman sandi VIC?
Menurut standar sandi manual, VIC luar biasa. Melapisi sebuah straddling checkerboard di atas dua transposisi, salah satunya terganggu, menghilangkan frekuensi huruf dan menghancurkan struktur kolom yang memungkinkan para analis menyerang sistem yang lebih sederhana. Dengan keygroup acak baru untuk setiap pesan dan kunci yang dibangun dari rahasia yang cukup diingat seorang agen, sandi ini sepenuhnya menahan kriptanalisis pada zamannya; sistemnya terkompromi oleh seorang pembelot, bukan oleh pemecahan kode.
Namun, terhadap komputer modern, VIC tidak menawarkan perlindungan nyata. Ruang kuncinya, meski besar bagi seseorang yang bekerja dengan tangan, sepele untuk ditelusuri sebuah mesin, dan operasi yang mendasarinya sudah dipahami dengan baik. Seperti mesin Enigma atau sistem klasik mana pun, sandi ini paling baik dinikmati saat ini sebagai sejarah dan sebagai demonstrasi indah tentang bagaimana substitusi, transposisi, dan pengelolaan kunci yang cermat menyatu. Untuk melindungi informasi nyata, Anda harus selalu menggunakan algoritma modern yang teruji baik seperti AES.
Pertanyaan yang sering diajukan
Apa itu sandi VIC?
Mengapa disebut sandi VIC?
Bagaimana cara kerja sandi VIC?
Apa itu rantai pengunci?
Apa itu straddling checkerboard?
Apa itu transposisi terganggu?
Apa itu kasus nikel berongga?
Bagaimana cara memecahkan kode pesan VIC?
Apa itu keygroup atau indikator?
Seberapa aman sandi VIC?
Apakah teks saya diunggah ke server?
Alat terkait
Lanjutkan dengan alat praktis ini