Saat ini saya mencoba memecahkan Caesar Cipher tanpa mengetahui kuncinya. Saya akan mendekati masalah ini dengan menggunakan indeks kebetulan bersama untuk menentukan apa kuncinya. Saya telah memecahkan masalah dengan metode lain menggunakan sifat statistik bahasa Inggris tetapi saya ingin mencoba masalah tersebut menggunakan metode ini juga.
Saya baru mengetahui bahwa indeks kebetulan dan indeks kebetulan timbal balik adalah dua hal yang berbeda. Mengingat sandi mono-abjad, indeks kebetulan akan selalu menghasilkan ~0,067 (untuk bahasa Inggris). Namun, sepertinya tidak demikian halnya dengan apa yang diberikan kepada saya.
Saya memerlukan bantuan untuk memahami cara menyusun algoritme untuk mengidentifikasi indeks kebetulan bersama berdasarkan rumusnya
Mengingat bahwa di mana
adalah kemunculan huruf ke-i dalam alfabet dan N adalah panjang teks dan
Dari apa yang saya pahami (saya buruk dalam Matematika), saya harus mengulangi i dari 0-25 dan mendapatkan indeks indeks kebetulan timbal balik maksimum di antara 25 dan itu akan memberi saya kunci untuk sandi tersebut. Untuk melakukan itu, saya harus mengalikan pi dengan qi+k. Namun, jika pi kira-kira sama dengan qi+k untuk semua i, bukan berarti ? Dengan demikian, bukankah persamaan tersebut merupakan penjumlahan dari pi kuadrat?
sum(p[i] * q[(i+k)%26] for i in range(26))
dengan python. - person Paul Hankin   schedule 11.07.2020