UTILS.
100% trong trình duyệt
🔡

Máy tính Index of Coincidence

Tính Index of Coincidence của văn bản để phát hiện loại mật mã và ước lượng độ dài khóa Vigenère, với các tham chiếu tiếng-Anh-với-ngẫu-nhiên và quét cột.

đầu ra

Về công cụ này

Máy tính Index of Coincidence (IoC) tính một thống kê phân tích mật mã cổ điển: xác suất mà hai chữ cái được rút ngẫu nhiên từ văn bản là giống nhau. Nó lọc đầu vào chỉ còn chữ cái, chuyển thành chữ hoa, đếm từng chữ trong 26 chữ cái n_i trên tổng số N chữ cái, và đánh giá IC = Σ n_i·(n_i − 1) / (N·(N − 1)). Nó cũng báo cáo IC chuẩn hóa = IC × 26, được co giãn sao cho văn bản ngẫu nhiên đều nằm gần 1.0 và văn bản rõ tiếng Anh gần 1.73.

Các giá trị tham chiếu này chính là điều làm cho IoC hữu ích. Văn bản rõ tiếng Anh có IC khoảng 0.0667 (chuẩn hóa ≈ 1.73) vì phân phối chữ cái của nó khác xa với phẳng, trong khi văn bản mã ngẫu nhiên đều hoặc đa bảng được trộn kỹ giảm xuống khoảng 0.0385 (chuẩn hóa ≈ 1.00). Một phép thay thế đơn bảng giữ nguyên IC của văn bản rõ, nên IC cao báo hiệu một mật mã đơn giản; IC thấp báo hiệu một mật mã đa bảng như Vigenère.

Để khôi phục độ dài khóa Vigenère, hãy nhập độ dài khóa tối đa để chạy quét cột. Công cụ chia văn bản thành k cột cho mỗi ứng viên k, tính IC trung bình trên các cột đó, và đánh dấu k có trung bình gần nhất với giá trị tiếng Anh — độ dài khóa nhiều khả năng, vì chia theo chu kỳ thật sẽ ghép lại các cột đơn bảng. Mọi thứ là xác định và được tính ngoại tuyến trong trình duyệt của bạn; không có gì được tải lên.

Câu hỏi thường gặp

Index of Coincidence cho tôi biết điều gì?
Nó đo mức độ không đồng đều của phân phối chữ cái. Văn bản rõ tiếng Anh có IC khoảng 0.0667 (chuẩn hóa ≈ 1.73); văn bản mã ngẫu nhiên hoặc đa bảng giảm xuống khoảng 0.0385 (chuẩn hóa ≈ 1.00). IC cao gợi ý văn bản rõ hoặc mật mã đơn bảng; IC thấp gợi ý mật mã đa bảng như Vigenère.
Tại sao IC chuẩn hóa lại hữu ích?
Nhân IC thô với 26 co giãn lại nó sao cho văn bản ngẫu nhiên đều nằm ở khoảng 1.0 và tiếng Anh ở khoảng 1.73, cho một tham chiếu trực quan. Nó giúp so sánh 'gần tiếng Anh đến đâu' dễ đọc mà không phải nhớ các số thập phân thô nhỏ bé.
Quét cột ước lượng độ dài khóa như thế nào?
Với mỗi ứng viên độ dài khóa k, nó chia văn bản thành k cột (mỗi chữ cái thứ k), tính IC trung bình của các cột, và đánh dấu k có trung bình gần tiếng Anh nhất (~0.0667). Tại chu kỳ Vigenère thật, mỗi cột là một dịch chuyển Caesar duy nhất — đơn bảng — nên IC của nó tăng dần về giá trị tiếng Anh.
Dấu câu hoặc chữ hoa/thường có ảnh hưởng đến kết quả không?
Không. Công cụ loại bỏ mọi thứ trừ chữ cái và chuyển phần còn lại thành chữ hoa trước khi đếm, nên khoảng trắng, chữ số và dấu câu bị bỏ qua. Chỉ 26 chữ cái A–Z đóng góp vào N và các số đếm chữ cái.

Công cụ khác