Công cụ giải mã thay thế
Dán một mật mã thay thế đơn bảng hoặc mật mã chữ lồng và khôi phục thông điệp gốc mà không cần biết khóa. Công cụ khớp tần suất các chữ cái để đưa ra phỏng đoán khởi đầu, rồi dùng simulated annealing được chấm điểm dựa trên trigram tiếng Anh để tìm trong bảng 26 chữ cái cách đọc giống tiếng Anh nhất. Mọi thứ chạy ngay trong trình duyệt của bạn.
Thử một mẫu:
Dán một mật mã thay thế ở trên, nhấn Giải, và thông điệp khôi phục cùng bảng chữ cái thay thế sẽ hiện ra ở đây. Bạn càng cung cấp nhiều văn bản, kết quả càng đáng tin cậy.
Cách sử dụng Trình giải mã thay thế
- 1
Dán văn bản mã hóa
Sao chép mật mã thay thế hoặc mật mã chữ lồng của bạn và dán vào ô. Càng nhiều văn bản thì càng giải đáng tin cậy hơn; các chữ cái được đọc không phân biệt hoa thường, còn dấu cách, chữ số và dấu câu được bỏ qua khi giải rồi khôi phục lại trong đáp án.
- 2
Nhấn Giải
Nhấp Giải mật mã. Quá trình tìm kiếm chạy trong chốc lát — nó thử hàng trăm nghìn bảng chữ cái ứng viên — rồi hiển thị cách đọc giống tiếng Anh nhất mà nó tìm được.
- 3
Đọc thông điệp đã khôi phục
Văn bản đã giải hiện ra với cách viết hoa, khoảng cách và dấu câu gốc được khôi phục. Sao chép nó chỉ với một cú nhấp để giữ lại kết quả.
- 4
Kiểm tra bảng chữ cái đã khôi phục
Bên dưới thông điệp, bảng chữ cái thay thế cho thấy mỗi chữ cái trong văn bản mã hóa được giải thành gì. Những chữ cái bị làm mờ không bao giờ xuất hiện trong văn bản của bạn, nên công cụ không thể xác định chúng. Sao chép bảng chữ cái để tái sử dụng hoặc kiểm chứng khóa.
- 5
Chia sẻ hoặc xóa
Sao chép một liên kết có thể chia sẻ để mở lại công cụ với đúng văn bản mã hóa của bạn — văn bản nằm trong phần URL sau dấu thăng, vốn không bao giờ tới được máy chủ. Xóa sẽ đặt lại mọi thứ.
Giải thích cách phá mật mã thay thế
Công cụ này làm gì
Một mật mã thay thế đơn bảng thay mỗi chữ cái của bảng chữ cái bằng một chữ cái khác — A có thể trở thành Q, B có thể trở thành W — và dùng đúng bảng chữ cái bị xáo trộn đó cho toàn bộ thông điệp. Đó là mật mã đứng sau các mật mã chữ lồng trên báo, các câu đố phòng thoát hiểm và các Aristocrat của Hiệp hội Mật mã chữ lồng Hoa Kỳ. Có hơn bốn trăm septillion bảng chữ cái khả dĩ, quá nhiều để thử từng cái một, vậy mà mật mã thay thế lại là một trong những loại mật mã dễ phá nhất. Công cụ này phá nó giúp bạn, tự động, mà không cần khóa.
Dán văn bản mã hóa và công cụ sẽ trả về thông điệp gốc khả dĩ nhất cùng toàn bộ bảng chữ cái thay thế mà nó khôi phục được. Nó hoạt động theo cách một người giải đố lành nghề vẫn làm — bắt đầu từ tần suất chữ cái, rồi liên tục hoán đổi các chữ cái và giữ lại những thay đổi khiến văn bản đọc giống tiếng Anh hơn — chỉ có điều nó làm vậy hàng trăm nghìn lần mỗi giây. Không có gì rời khỏi trình duyệt của bạn; toàn bộ quá trình tìm kiếm chạy ngay trên máy của bạn.
Vì sao một mật mã thay thế có thể bị phá
Một mật mã thay thế giấu đi chữ cái nào là chữ cái nào, nhưng nó không thể giấu được mỗi chữ cái được dùng thường xuyên đến mức nào. Trong tiếng Anh, E phổ biến hơn nhiều so với bất kỳ chữ cái nào khác, tiếp theo là T, A, O, I và N, trong khi J, Q, X và Z thì hiếm. Việc mã hóa chỉ đơn giản đổi nhãn cho các tần suất đó: chữ cái nào đại diện cho E sẽ là chữ cái phổ biến nhất trong văn bản mã hóa. Chính sự thật duy nhất đó — tần suất chữ cái sống sót qua phép thay thế — là vết nứt trong lớp giáp mà toàn bộ ngành phân tích mật mã được xây dựng dựa trên.
Chỉ riêng tần suất thôi thì chưa hẳn đủ, vì nhiều chữ cái có số đếm tương tự nhau và có thể bị hoán đổi nhầm. Tín hiệu sâu hơn nằm ở cách các chữ cái kết hợp với nhau. Tiếng Anh ưa chuộng những kiểu nhất định — TH, HE, ING, THE, AND — và gần như hoàn toàn tránh những kiểu khác. Một bản giải đúng đầy ắp những kiểu tự nhiên đó; một bản sai thì lốm đốm những tổ hợp mà tiếng Anh thực thụ không bao giờ dùng. Đo lường sự khác biệt đó chính là điều cho phép máy tính nhận ra đáp án đúng giữa vô số đáp án sai trông có vẻ hợp lý.
Bước một: phỏng đoán khởi đầu khớp tần suất
Công cụ bắt đầu bằng việc đếm mỗi chữ cái xuất hiện bao nhiêu lần trong văn bản mã hóa và xếp các số đếm đó so với thứ tự tần suất đã biết của tiếng Anh. Chữ cái phổ biến nhất trong văn bản mã hóa được đoán là E, kế đến là T, rồi A, O, I, N và cứ thế đi xuống danh sách. Đây là nước đi đầu tiên kinh điển mà mọi người giải mật mã chữ lồng đều học để làm bằng tay.
Phỏng đoán đó hiếm khi hoàn hảo — những chữ cái hiếm hơn đặc biệt dễ bị xếp sai chỗ — nhưng nó không cần phải hoàn hảo. Nó chỉ cần đủ gần để cho quá trình tìm kiếm một điểm xuất phát hợp lý. Từ đó, công cụ tinh chỉnh bảng chữ cái từng chữ một cho đến khi thông điệp hiện rõ.
Bước hai: simulated annealing tìm ra khóa
Từ phỏng đoán khởi đầu, công cụ liên tục hoán đổi ý nghĩa bản rõ của hai chữ cái và xét xem thông điệp giờ có đọc giống tiếng Anh hơn không. Nếu một lần hoán đổi giúp ích, nó được giữ lại. Vấn đề là việc luôn khăng khăng đòi cải thiện ngay lập tức khiến quá trình tìm kiếm mắc kẹt ở một bản gần đúng — một điểm tối ưu cục bộ — mà không một lần hoán đổi đơn lẻ nào thoát ra được. Giải mật mã thay thế là trường hợp điển hình trong sách giáo khoa cho một kỹ thuật gọi là simulated annealing, vốn xử lý đúng vấn đề này.
Simulated annealing đôi khi chấp nhận một lần hoán đổi khiến mọi thứ tạm thời tệ hơn, với một xác suất bắt đầu ở mức cao rồi đều đặn được hạ thấp — như thể quá trình tìm kiếm lúc đầu nóng rồi nguội dần. Ở giai đoạn đầu nó rong ruổi tự do và trèo ra khỏi những ngõ cụt; về sau nó ổn định lại và đánh bóng bảng chữ cái tốt nhất mà nó đã tìm được. Công cụ chạy quy trình này vài lần từ những điểm xuất phát khác nhau, kết thúc mỗi lần bằng một lượt chỉ-cải-thiện nghiêm ngặt, và giữ lại kết quả tốt nhất duy nhất — đó là lý do nó tìm được đáng tin cậy những đáp án mà một phép leo-đồi đơn thuần sẽ bỏ sót.
Cách công cụ đánh giá tiếng Anh: độ phù hợp trigram
Mỗi bảng chữ cái ứng viên được chấm bằng một con số duy nhất: độ phù hợp trigram của nó. Công cụ xem xét mọi chuỗi ba chữ cái liên tiếp trong văn bản đã giải và cộng dồn xác suất mỗi bộ ba xuất hiện trong tiếng Anh thực thụ, dựa trên một bảng tần suất bộ ba chữ cái được dựng từ một khối lượng lớn văn bản tiếng Anh. Những bộ ba phổ biến như THE, AND và ING ghi điểm cao; những bộ ba mà tiếng Anh không bao giờ dùng thì ghi điểm cực thấp.
Trigram quan trọng vì tần suất chữ cái đơn quá dễ bị đánh lừa — một khóa sai vẫn có thể khớp với các số đếm chữ cái mà vẫn là chữ nghĩa vô nghĩa. Việc giả mạo cả một trang đầy các tổ hợp ba chữ cái đáng tin thì khó hơn nhiều. Bằng cách lái mỗi lần hoán đổi về phía độ phù hợp trigram cao hơn, quá trình tìm kiếm được kéo, từng lần hoán đổi một, về phía tiếng Anh thực thụ. Bảng tần suất được tạo từ chính các bài viết của trang web này, nên không có gì được lấy từ bên ngoài và công cụ vẫn nhanh và riêng tư.
Bạn cần bao nhiêu văn bản, và khi nào công cụ gặp khó
Phá một mật mã thay thế là công việc thống kê, nên nó sống còn dựa vào lượng văn bản bạn cung cấp. Với khoảng một trăm năm mươi chữ cái tiếng Anh thông thường trở lên, việc khôi phục thường gần như hoàn hảo. Quanh mức tám mươi đến một trăm chữ cái thì nó vẫn hoạt động nhưng một hai chữ cái hiếm — như J, Q, X và Z vốn hầu như không xuất hiện — có thể bị đọc sai, vì đơn giản là không có đủ bằng chứng để xác định chúng. Dưới khoảng năm mươi chữ cái thì bất kỳ công cụ giải nào, dù là người hay máy, phần lớn đều đang đoán mò.
Một vài điều khác khiến một thông điệp khó hơn: văn bản cố tình tránh các chữ cái phổ biến (như một câu pangram), văn bản không phải tiếng Anh, hoặc một loại mật mã còn xáo trộn vị trí các chữ cái chứ không chỉ đổi nhãn cho chúng. Khi cách đọc ra gần như đúng, lời giải gần như luôn là thêm văn bản mã hóa, hoặc tự sửa bằng mắt một hai chữ cái cứng đầu. Nếu văn bản hoàn toàn không phải là một phép thay thế đơn giản, Công cụ nhận diện mật mã có thể cho bạn biết bạn thực sự đang đối mặt với cái gì.
Mật mã thay thế và những họ hàng của chúng
Một phép thay thế đơn giản giữ nguyên các khoảng ngắt từ là cái mà những người ra mật mã chữ lồng gọi là Aristocrat; cũng mật mã đó nhưng đã bỏ hết dấu cách là một Patristocrat. Cả hai đều là đơn bảng — một bảng chữ cái cố định cho toàn bộ thông điệp — và cả hai đều thất thủ trước phương pháp ở đây. Caesar và Atbash chỉ là những phép thay thế đặc biệt, thậm chí còn đơn giản hơn, nên công cụ này cũng phá chúng, dù những trang chuyên dụng của chúng giải tức thì.
Bước nhảy lớn về độ khó là mật mã đa bảng, vốn thay đổi bảng chữ cái khi chạy nên cùng một chữ cái có thể đại diện cho nhiều chữ cái khác nhau. Mật mã Vigenère là ví dụ nổi tiếng, và phân tích tần suất trên toàn bộ thông điệp không còn hiệu quả chống lại nó. Nếu thông điệp của bạn kháng cự công cụ này và tần suất chữ cái trông phẳng một cách đáng ngờ, có thể nó là đa bảng — hãy dùng Công cụ giải mã Vigenère thay vào đó.
Câu hỏi thường gặp
Liệu bạn thực sự có thể giải một mật mã thay thế mà không cần khóa không?
Công cụ này giải loại mật mã nào?
Công cụ hoạt động như thế nào?
Vì sao lại dùng chấm điểm trigram thay vì tần suất chữ cái?
Tôi cần bao nhiêu văn bản để phá một mật mã chữ lồng?
Kết quả gần như đúng nhưng vài chữ cái bị sai. Vì sao vậy?
Liệu nó có giải được một mật mã chữ lồng giữ nguyên các dấu cách (một Aristocrat) không?
Công cụ có mang tính tất định không?
Nó chỉ hoạt động với tiếng Anh thôi à?
Văn bản mã hóa của tôi có được gửi tới máy chủ không?
Nếu hoàn toàn không phải là mật mã thay thế thì sao?
Công cụ liên quan
Tiếp tục với những công cụ hữu ích này