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] Đồng bộ lại HOTP theo cửa sổ look-ahead

    Đồng bộ lại bộ đếm HOTP (resync window)

    Do client có thể bấm sinh OTP vài lần mà không đăng nhập, bộ đếm server bị lệch. Server dò một cửa sổ look-ahead: thử các counter từ current đến current + w.

    Cho secret, current_counter, window w và otp, tìm counter nhỏ nhất trong [current, current+w] sinh ra đúng otp. In MATCH <counter>; nếu không có, in NO MATCH.

    Input:
    12345678901234567890
    0
    5
    359152
    Output:
    MATCH 2
    

    (HOTP counter=2 của secret chuẩn = 359152)

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

      Dòng 1: secret. Dòng 2: current_counter. Dòng 3: window w. Dòng 4: otp (6 chữ số).

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

      0 <= current_counter <= 2^40; 0 <= w <= 1000.

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

      Một dòng: 'MATCH ' hoặc 'NO MATCH'.

    Ví dụ:

    Đầu vào:

    12345678901234567890
    0
    5
    359152
    

    Đầu ra:

    MATCH 2

    Giải thích:

    counter=2 sinh ra 359152, nằm trong [0,5] → MATCH 2.

    Đang tải editor...