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] HKDF: dẫn xuất khóa qua HMAC (RFC 5869)

    HKDF (HMAC-based Key Derivation Function) gồm 2 bước với HMAC-SHA256 (HashLen = 32 byte):

    • Extract: PRK = HMAC(salt, IKM). Nếu salt rỗng, dùng salt = 32 byte 0.
    • Expand: sinh OKM độ dài L byte bằng T(i) = HMAC(PRK, T(i-1) || info || byte(i)), T(0)="", OKM = T(1)||T(2)||... cắt còn L byte.

    In OKM dạng hex. (Test mẫu là test-case 1 của RFC 5869.)

    Ví dụ: IKM=0b×22, salt=000102...0c, info=f0f1...f9, L=42.

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

      4 dòng: IKM (hex), salt (hex, có thể rỗng), info (hex, có thể rỗng), L (số byte).

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

      0 ≤ L ≤ 255·32. Chuỗi hex hợp lệ (độ dài chẵn).

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

      1 dòng: OKM dạng hex (2·L ký tự).

    Ví dụ:

    Đầu vào:

    0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b
    000102030405060708090a0b0c
    f0f1f2f3f4f5f6f7f8f9
    42

    Đầu ra:

    3cb25f25faacd57a90434f64d0362f2a2d2d0a90cf1a5a4c5db02d56ecc4c5bf34007208d5b887185865

    Giải thích:

    Test-case 1 RFC 5869: Extract cho PRK rồi Expand 2 khối, cắt 42 byte → OKM chuẩn.

    Đang tải editor...