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

Bộ mã hóa / giải mã Rail Fence Cipher

Mật mã hoán vị zig-zag: viết văn bản theo đường chéo qua N hàng rồi đọc từng hàng một. Mã hóa hoặc giải mã với số hàng và độ lệch khởi đầu tùy chỉnh.

— kết quả hiển thị ở đây —

Về công cụ này

Bộ mã hóa / giải mã Rail Fence Cipher là công cụ miễn phí chạy ngay trong trình duyệt cho mật mã hoán vị nổi tiếng nhất. Thay vì thay thế chữ cái, nó sắp xếp lại chúng: bản rõ được viết theo hình zig-zag xuống rồi lên qua một số hàng ngang chọn trước, sau đó đọc từng hàng đầy đủ một lần từ trên xuống dưới. Với 3 hàng, các vị trí chữ cái theo mẫu 0,1,2,1,0,1,2,… nên các ký tự liên tiếp rơi vào các hàng khác nhau trước khi được gom lại.

Để giải mã, công cụ dựng lại chính xác đường zig-zag cho độ dài bản mã, tính ra bao nhiêu ký tự thuộc mỗi hàng, cắt bản mã thành các hàng đó, rồi đi lại đường zig-zag để nâng các chữ cái về đúng thứ tự gốc. Nó hỗ trợ 2 hàng trở lên, một độ lệch khởi đầu tùy chọn để dịch nơi chữ cái đầu tiên nằm trong zig-zag, và coi một hàng duy nhất là phép đồng nhất (không thay đổi). Mọi thứ chạy cục bộ trong trình duyệt của bạn với không có gì được tải lên.

Mặc định, dấu cách và dấu câu được mang theo như các ký tự thông thường để phép hoán vị hoàn toàn đảo ngược được; một công tắc cho phép bạn loại bỏ ký tự không phải chữ cái trước khi mã hóa khi bạn muốn bản mã chỉ gồm chữ cái. Rail fence là đối tác cổ điển của mật mã Caesar trong các bài học mật mã và thường thấy trong các thử thách CTF và escape room, minh họa cách các mật mã hoán vị giấu thông điệp bằng cách xáo trộn vị trí thay vì danh tính.

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

Mật mã rail fence hoạt động như thế nào?
Các ký tự được viết theo đường chéo qua N hàng theo hình zig-zag — xuống hàng đáy, lên lại hàng đỉnh, và cứ thế — rồi đọc từng hàng một từ trên xuống dưới. Đây là mật mã hoán vị: nó sắp xếp lại chữ cái thay vì thay thế chúng.
Việc giải mã khôi phục văn bản thế nào?
Công cụ tái tạo mẫu zig-zag cho độ dài bản mã để đếm mỗi hàng chứa bao nhiêu chữ cái, cắt bản mã thành các hàng đó, rồi đi lại đường zig-zag để đọc các chữ cái về đúng thứ tự gốc.
Độ lệch (offset) làm gì?
Độ lệch dịch nơi ký tự đầu tiên bắt đầu trong chu trình zig-zag, thực chất là bắt đầu ở giữa chừng một hàng. Phải dùng cùng độ lệch khi mã hóa và giải mã để có kết quả khớp nhau.
Tại sao nên giữ dấu cách và dấu câu?
Giữ mọi ký tự khiến phép hoán vị đảo ngược chính xác, nên giải mã trả về văn bản gốc của bạn kể cả khoảng cách. Dùng tùy chọn loại bỏ để xóa ký tự không phải chữ cái trước khi bạn muốn bản mã gọn, chỉ gồm chữ cái.

Công cụ khác