T

Text Machine

Alat teks andal, di browser Anda

Kalkulator Index of Coincidence

Ukur seberapa timpang sebaran huruf sebuah teks, lalu baca panjang kuncinya langsung dari tabel per kolom.

Coba:

Teks

Tempel teks untuk mengukurnya. Contoh Caesar dan Vigenère memakai bagian yang sama dengan contoh Inggris, jadi Anda bisa melihat apa yang dilakukan tiap jenis sandi terhadap angkanya.

Cara menggunakan Kalkulator Index of Coincidence

  1. 1

    Tempel teksnya

    Masukkan teks polos atau teks tersandi ke kotak. Hanya huruf A sampai Z yang ikut; huruf besar-kecil, spasi, angka, dan tanda baca diabaikan, jadi format tidak bisa menggeser angkanya.

  2. 2

    Baca indeksnya

    IC mentah adalah peluang dua huruf yang diambil acak ternyata huruf yang sama. Angka yang dinormalkan adalah nilai itu terhadap alfabet seragam, dengan 1,00 berarti acak dan sekitar 1,73 berarti Inggris.

  3. 3

    Tentukan jenis sandinya

    Sekitar 0,066 berarti sebaran huruf masih utuh, jadi ini teks polos atau substitusi sederhana. Sekitar 0,038 berarti sebarannya sudah diratakan, yang menunjuk ke sandi berkunci berulang.

  4. 4

    Temukan panjangnya di tabel per kolom

    Jika teksnya tampak polialfabetik, cari panjang terpendek yang IC per kolomnya naik kembali ke arah 0,066. Itulah panjang kuncinya, dan itu angka yang dibutuhkan pemecah Vigenère.

Index of coincidence, dijelaskan

Satu angka, satu pertanyaan

Index of coincidence menjawab satu pertanyaan sempit: kalau Anda merogoh sebuah teks dua kali dan tiap kali menarik satu huruf, seberapa sering Anda mendapat huruf yang sama dua kali? Untuk kantong berisi 26 huruf yang sama seringnya, jawabannya 1 banding 26, sekitar 0,0385. Untuk bahasa Inggris hampir dua kali lipatnya, sekitar 0,066, karena Inggris bukan kantong yang merata. E, T, A, dan O mengerjakan porsi yang sangat besar, sedangkan J, Q, X, dan Z nyaris tak muncul.

Selisih itulah seluruh kegunaan statistik ini. Ia bertahan terhadap penggantian label: kalau setiap A ditukar dengan Q dan setiap Q dengan A, cacahnya berpindah tetapi ketimpangannya tidak, jadi indeksnya tetap. Ia tidak bertahan terhadap penyebaran ke beberapa alfabet, dan itulah persis yang dilakukan sandi berkunci berulang.

Yang bisa dan tidak bisa ia katakan

IC di dekat 0,066 mengatakan sebaran hurufnya masih utuh. Itu mencakup teks polos biasa, geseran Caesar, cermin Atbash, dan sandi substitusi sederhana apa pun, dan itulah sebabnya sandi monoalfabetik dibongkar dengan analisis frekuensi, bukan dengan angka ini.

IC di dekat 0,038 mengatakan sebarannya sudah diratakan. Ada sesuatu yang memetakan satu huruf teks polos ke beberapa huruf tersandi, dan itu tanda tangan Vigenère beserta kerabatnya, atau memang untaian yang benar-benar acak.

Bacaan di antara keduanya biasanya berarti teksnya terlalu pendek, bukan bahwa sandinya tidak lazim. Di bawah sekitar seratus huruf, indeksnya berayun cukup jauh untuk menyesatkan, dan di bawah sekitar tiga ratus sebaiknya diperlakukan sebagai petunjuk, bukan putusan.

Tabel per kolom adalah bagian yang bekerja

Satu angka untuk seluruh teks memberi tahu Anda jenis sandinya. Menemukan panjang kunci butuh langkah kedua, dan langkah itulah yang dilewatkan kebanyakan kalkulator.

Ambil huruf-hurufnya dan bagikan ke L tumpukan: posisi 1, L+1, dan 2L+1 ke tumpukan pertama; posisi 2 dan L+2 ke tumpukan kedua, dan seterusnya. Kalau L adalah panjang kunci yang sebenarnya, setiap huruf dalam satu tumpukan digeser oleh huruf kunci yang sama, jadi tumpukan itu adalah Caesar dari bahasa Inggris dan mempertahankan ketimpangannya. Kalau L salah, tiap tumpukan mencampur huruf yang digeser sejauh berbeda-beda dan keluar rata.

Maka IC per kolom, dirata-ratakan antartumpukan, naik pada panjang kunci yang sebenarnya dan pada setiap kelipatannya. Menyusuri tabel mencari panjang pertama yang melonjak adalah cara klasik menemukan panjang kunci Vigenère, dan pada teks nyata ia lebih dapat diandalkan daripada rumus Friedman.

Ke mana selanjutnya

Kalau tabel per kolom menunjuk sebuah panjang, pemeriksaan Kasiski adalah pendapat kedua yang wajar: ia bekerja dari jarak antarurutan yang berulang, bukan dari statistik huruf, sehingga gagal di tempat yang berbeda. Dua metode bebas yang sepakat pada angka yang sama jauh lebih kuat daripada salah satunya sendirian.

Begitu Anda yakin dengan panjangnya, pemecah Vigenère akan mengambil teks tersandi, membaginya ke sejumlah kolom itu, membongkar tiap kolom sebagai sandi Caesar, dan mengembalikan kata kunci beserta teks polosnya.

Pertanyaan yang sering diajukan

Apa itu index of coincidence?
Ia adalah peluang bahwa dua huruf yang diambil acak dari sebuah teks ternyata huruf yang sama. Ditulis lengkap, ia adalah jumlah n(n-1) atas cacah tiap huruf, dibagi N(N-1) untuk seluruh teks. Bahasa Inggris keluar di sekitar 0,066 karena beberapa huruf mengerjakan hampir semuanya; alfabet acak seragam keluar di 1/26, sekitar 0,0385.
Kenapa angka saya berbeda dari kalkulator lain?
Hampir selalu karena normalisasi. Sebagian alat melaporkan peluang mentahnya dan sebagian mengalikannya dengan 26, sehingga teks yang sama terbaca 0,0667 atau 1,73. Keduanya ditampilkan di sini. Penyebab umum lainnya adalah alat yang ikut menghitung spasi atau angka; yang ini hanya menghitung huruf A sampai Z.
Bagaimana index of coincidence menemukan panjang kunci?
Sendirian, ia tidak menemukannya. Yang menemukan panjangnya adalah membagi teks tersandi ke dalam L kolom dan mengukur tiap kolom terpisah. Pada L yang benar, setiap kolom disandikan dengan satu geseran berulang, jadi ia adalah Caesar dari bahasa Inggris dan mempertahankan ICnya. Pada L yang salah, kolomnya campuran dan tetap rata. Tabel per kolom menampilkan semua kandidat berdampingan.
Apa itu perkiraan Friedman dan haruskah saya memercayainya?
Ia rumus tahun 1922 yang mengubah satu IC menjadi panjang kunci perkiraan. Berguna sebagai pemeriksaan di samping tabel per kolom, dan cukup sering meleset sehingga tidak boleh dipakai sendirian, apalagi pada teks pendek. Tanda hubung muncul bila teks Anda sudah setimpang teks biasa, atau terlalu pendek untuk punya IC sama sekali. Rumusnya mengandaikan sebuah kunci berulang telah meratakan teks, jadi di luar rentang itu tidak ada yang bisa diperkirakan dan angka apa pun akan jadi karangan.
Kenapa 5, 10, dan 15 sama-sama bernilai bagus?
Karena membagi ke 10 kolom sama dengan membelah 5 kolom yang sebenarnya, dan tiap belahan masih mempertahankan geserannya yang tunggal. Setiap kelipatan dari panjang yang sebenarnya mewarisi nilainya. Jawabannya adalah anggota terpendek dari keluarga itu, itulah sebabnya daftar saran membuang kelipatannya.
Bisakah ia memberi tahu bahasa sebuah teks?
Hanya secara sangat kasar. Tabel perbandingan menunjukkan posisi teks Anda terhadap angka terbitan, tetapi beberapa bahasa punya nilai yang mirip dan sampel pendek bergeser lebih besar daripada jarak antarnilai itu. Pakailah untuk memisahkan bahasa alami dari teks yang tampak acak, bukan untuk memilih antara Prancis dan Spanyol.
Apakah teks saya keluar dari peramban?
Tidak. Seluruh perhitungan berjalan di halaman ini. Tidak ada yang diunggah, dicatat, atau disimpan di mana pun.

Alat terkait

Lanjutkan dengan alat praktis ini

Pemeriksaan Kasiski

Pemecah Sandi Vigenère

Analisis Frekuensi

Pengidentifikasi Sandi

Pemecah Sandi Substitusi

Konverter Unix Timestamp