Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [An toàn thông tin] Autokey - Giải mã

    Mật mã tự khóa (Autokey) - Giải mã

    Khi giải mã Autokey, mỗi chữ rõ vừa giải được lại trở thành ký tự khóa cho các vị trí sau. Vì thế phải giải tuần tự, không thể tính trước toàn bộ dòng khóa.

    Thuật toán

    1. Khởi tạo keystream = primer.
    2. Với từng ký tự mã C[i]: P[i] = (C[i] - keystream[i]) mod 26, rồi thêm P[i] vào keystream.

    Ví dụ

    Primer QUEEN, bản mã QNXEPKTMDCGN → ATTACKATDAWN.

    • Định dạng đầu vào:

      Dòng 1: mồi khóa (primer). Dòng 2: bản mã (chữ HOA).

    • Ràng buộc đầu vào:

      1 ≤ độ dài primer ≤ 100; 1 ≤ độ dài bản mã ≤ 1000.

    • Định dạng đầu ra:

      Một dòng: bản rõ.

    Ví dụ:

    Đầu vào:

    QUEEN
    QNXEPKTMDCGN

    Đầu ra:

    ATTACKATDAWN

    Giải thích:

    Giải QN... bằng primer, mỗi chữ rõ giải ra lại nối vào dòng khóa.

    Đang tải editor...