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] Dẫn xuất khóa phiên bằng xoay băm

    Xoay khóa phiên (Session Key Rotation)

    Để hạn chế thiệt hại khi lộ khóa, khóa phiên được xoay liên tục bằng chuỗi băm một chiều:

    k_0 = SHA256(master)
    k_i = SHA256(k_{i-1})   (i = 1..n)
    

    In khóa phiên thứ n dưới dạng hex. Vì băm một chiều, biết k_n không suy ngược ra khóa trước đó.

    Input:
    master
    1
    Output:
    (hex 64 ký tự = SHA256(SHA256("master")))
    
    • Định dạng đầu vào:

      Dòng 1: master. Dòng 2: n (số lần xoay).

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

      0 <= n <= 100000; master dài 1..128 ký tự.

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

      Một dòng: khóa phiên thứ n dạng hex (64 ký tự).

    Ví dụ:

    Đầu vào:

    master
    1
    

    Đầu ra:

    ed6dc3428087a7d306813a79b8b04c17c9fd257ec20308e0cbd17221fc5fb399

    Giải thích:

    k0=SHA256('master'); xoay 1 lần = SHA256(k0).

    Đang tải editor...