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] Kiểm tra một block hợp lệ

    Block có hợp lệ không?

    Một block được coi là hợp lệ khi băm tính lại của nó đạt độ khó yêu cầu. Băm được tính:

    h = SHA256(index + "|" + prev_hash + "|" + data + "|" + nonce)
    

    Block hợp lệ nếu h bắt đầu bằng k chữ số hex '0'. In VALID hoặc INVALID.

    Ví dụ

    Input:
    3
    aaaa...aaaa
    payload
    <nonce đã đào>
    1
    
    Output:
    VALID
    
    • Định dạng đầu vào:

      Năm dòng: index, prev_hash, data, nonce, k.

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

      prev_hash là 64 hex; 0 <= nonce <= 10^9; 0 <= k <= 4.

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

      Một dòng: VALID hoặc INVALID.

    Ví dụ:

    Đầu vào:

    3
    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
    payload
    15
    1
    

    Đầu ra:

    VALID

    Giải thích:

    Nonce đã đào khiến băm bắt đầu bằng '0' với k=1 → VALID.

    Đang tải editor...