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] Xác thực challenge-response

    Xác thực challenge-response

    Server và client chia sẻ secret. Server gửi challenge, mong nhận expected = HMAC-SHA256(secret, challenge). Client gửi response.

    Cho secret, challenge, response, hãy kiểm tra response có đúng bằng HMAC mong đợi không. Dùng so sánh an toàn (hmac.compare_digest).

    In AUTH_OK nếu hợp lệ, ngược lại AUTH_FAIL.

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

      Dòng 1: secret. Dòng 2: challenge. Dòng 3: response (chuỗi hex client gửi).

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

      1 ≤ độ dài secret, challenge ≤ 200.

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

      In AUTH_OK hoặc AUTH_FAIL.

    Ví dụ:

    Đầu vào:

    secretkey
    challenge1
    39970bf243f82e0829b300bd73a956c32c52db062f5870c6e846f77e20715707

    Đầu ra:

    AUTH_OK

    Giải thích:

    Response bằng đúng HMAC mong đợi nên xác thực thành công.

    Đang tải editor...