Block Hash là gì?
Block Hash là dấu vân tay của một block trong blockchain. Nó là một chuỗi có độ dài cố định đại diện duy nhất cho dữ liệu của block tại một thời điểm cụ thể. Hãy nghĩ nó như mã biên lai mà cũng sẽ báo động nếu ai đó chỉnh sửa dù chỉ một ký tự của biên lai.
Mọi người nghĩ Block Hash chỉ là một ID ngẫu nhiên. Không phải vậy. Nó là kết quả trực tiếp từ dữ liệu của block, vì vậy thay đổi một bit thì Block Hash sẽ khác hoàn toàn.
Cách Block Hash hoạt động
Hãy tưởng tượng một block mới được tạo và gửi tới mạng lưới. Đây là lược đồ nhanh về cách Block Hash xuất hiện.
- Bước 1: Block gom các giao dịch cùng siêu dữ liệu vào header của block.
- Bước 2: Header đó được đưa qua một hàm băm mật mã học, biến nó thành một chuỗi ngắn có độ dài cố định.
- Bước 3: Các thợ đào tinh chỉnh nonce và băm lại cho đến khi kết quả nhỏ hơn giá trị mục tiêu. Tưởng tượng như máy xèng kết hợp với lớp toán.
- Bước 4: Khi Block Hash đạt tiêu chuẩn, block được chấp nhận và giá trị băm của nó trở thành tham chiếu cho block kế tiếp, nối chuỗi.
- Bước 5: Các nút lan truyền kết quả trên toàn mạng, và Block Hash giờ là khuôn mặt công khai của block.
Nó nhanh, mang tính xác định và không khoan nhượng với việc can thiệp dữ liệu.
Tại sao Block Hash quan trọng
Dưới đây là lý do bạn nên quan tâm đến Block Hash trong thực tế:
- Lợi ích: Nó cho phép kiểm tra tính toàn vẹn ngay lập tức. Nhìn qua là biết block có hợp lệ hay không.
- Góc nhìn: Mạng thưởng cho khối lượng nỗ lực tính toán lớn cần để tìm các băm hợp lệ, và đó là nhân tố giữ cho các chuỗi bằng chứng công việc an toàn.
- Ứng dụng: Bạn sẽ thấy Block Hash trên các block explorer khi theo dõi xác nhận, gỡ lỗi ứng dụng hoặc đọc cập nhật giao thức.
Khi so sánh một Block Hash từ block explorer, hãy sao chép nó dưới dạng văn bản thuần và chú ý khoảng trắng thừa. Thêm một ký tự là làm hỏng kết quả so khớp chính xác.
Đặc điểm chính của Block Hash
Những đặc tính khiến nó đáng tin cậy:
- Tính xác định: Cùng đầu vào cho cùng kết quả mọi lần.
- Cố định: Chiều dài đầu ra không đổi, dù block lớn đến đâu.
- Nhạy cảm: Thay đổi một bit trong block và Block Hash hoàn toàn khác trước.
- Liên kết chuỗi: Mỗi block trỏ đến Block Hash trước đó, khóa chặt lịch sử.
- Không thể đảo ngược: Không thể suy ngược từ Block Hash để lộ nội dung của block.
Block Hash được tính như thế nào?
Hầu hết các chuỗi bằng chứng công việc tính Block Hash từ header bằng phương pháp băm hai bước. Trong Bitcoin, đó là sha kép.
Dạng đơn giản:
block_hash = sha256( sha256( block_header_bytes ) ) Header bao gồm các trường như version, previous hash, merkle root, timestamp, difficulty target và nonce. Thay đổi nonce, băm lại, lặp lại và ăn mừng khi nó nhỏ hơn mục tiêu.
Block Hash không phải là transaction hash. Block Hash tóm tắt header của block, trong khi transaction hash xác định một giao dịch cụ thể nằm trong block đó.
Ví dụ
Bạn mở một block explorer, tìm một block gần đây, sao chép Block Hash của nó và dán vào nhật ký node để xác nhận bạn đồng bộ cùng quan sát với mạng lưới.
Thông tin thú vị
Block Hash khởi thủy của Bitcoin bắt đầu bằng một dải dài các số không, biểu thị mức mục tiêu khai thác rất nghiêm ngặt từ đầu.
Tổng kết
Block Hash trong một câu: nó là báo động chống sửa đổi và nhãn công khai cho mỗi block, dễ chia sẻ, khó làm giả và là lý do chuỗi giữ được tính toàn vẹn.
