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.
Dòng 1: secret. Dòng 2: challenge. Dòng 3: response (chuỗi hex client gửi).
1 ≤ độ dài secret, challenge ≤ 200.
In AUTH_OK hoặc AUTH_FAIL.
Ví dụ:
Đầu vào:
secretkey
challenge1
39970bf243f82e0829b300bd73a956c32c52db062f5870c6e846f77e20715707
Đầu ra:
AUTH_OK
Giải thích:
Đang tải editor...