ขณะนี้ฉันกำลังพยายามแก้ Caesar Cipher โดยไม่รู้กุญแจ ฉันจะแก้ไขปัญหาโดยใช้ดัชนีความบังเอิญร่วมกันเพื่อพิจารณาว่าอะไรคือกุญแจสำคัญ ฉันได้แก้ไขปัญหาด้วยวิธีอื่นโดยใช้คุณสมบัติทางสถิติของภาษาอังกฤษแล้ว แต่ฉันก็อยากลองใช้วิธีนี้เช่นกัน
ฉันเพิ่งพบว่าดัชนีของความบังเอิญและดัชนีของความบังเอิญร่วมกันนั้นเป็นสองสิ่งที่แตกต่างกัน เมื่อใช้การเข้ารหัสแบบตัวอักษรเดียว ดัชนีความบังเอิญจะส่งกลับ ~0.067 เสมอ (สำหรับภาษาอังกฤษ) อย่างไรก็ตาม ดูเหมือนจะไม่เป็นเช่นนั้นจากสิ่งที่ฉันได้รับ
ฉันต้องการความช่วยเหลือในการทำความเข้าใจวิธีสร้างอัลกอริทึมเพื่อระบุดัชนีร่วมของความบังเอิญตามสูตร
เนื่องจาก โดยที่
คือการเกิดขึ้นของตัวอักษรที่ ith ในตัวอักษรและ N คือความยาวของข้อความและ
จากสิ่งที่ฉันเข้าใจ (ฉันวิชาคณิตศาสตร์แย่มาก) ฉันต้องวนซ้ำ i 0-25 และรับดัชนีของดัชนีความบังเอิญร่วมกันสูงสุดในกลุ่ม 25 และนั่นจะทำให้ฉันมีกุญแจสำหรับการเข้ารหัส ในการทำเช่นนั้น ฉันต้องคูณ pi ด้วย qi+k อย่างไรก็ตาม หาก pi มีค่าประมาณเท่ากับ qi+k สำหรับ i ทั้งหมด ไม่ได้หมายความว่า ? ถ้าอย่างนั้น สมการก็เป็นผลบวกของพายกำลังสองไม่ใช่หรือ?
sum(p[i] * q[(i+k)%26] for i in range(26))
ในหลาม - person Paul Hankin   schedule 11.07.2020