Băm mục tiêu (Target Hash) trong công nghệ chuỗi khối là gì? Nội dung về Băm mục tiêu
Mục Lục
Băm mục tiêu (Target Hash)
Băm mục tiêu trong tiếng Anh là Target Hash.
Băm mục tiêu là một số mà tiêu đề khối băm (hashed block header) phải nhỏ hơn hoặc bằng để một khối mới được trao. Băm mục tiêu được sử dụng để xác định độ khó của đầu vào và có thể được điều chỉnh để đảm bảo các khối được xử lý hiệu quả.
Nội dung về Băm mục tiêu
Các đồng tiền mã hóa dựa trên việc sử dụng các chuỗi khối có chứa lịch sử giao dịch và "được băm" hoặc được mã hóa thành một chuỗi các số và chữ cái. Việc băm bao gồm lấy một chuỗi dữ liệu có độ dài bất kì và chạy nó thông qua thuật toán để tạo ra một đầu ra có độ dài cố định. Đầu ra sẽ luôn có cùng độ dài, bất kể đầu vào lớn hay nhỏ. Bất kì ai giao dịch với chuỗi khối đều phải nhớ hàm băm chứ không phải là đầu vào. Mỗi khối sẽ chứa hàm băm của tiêu đề khối trước đó.
Giải mã và mã hóa chuỗi khối được gọi là khai thác. Khai thác liên quan đến việc sử dụng máy tính để chạy các thuật toán băm để xử lí khối gần nhất, với thông tin cần thiết trong khai thác được tìm thấy trong tiêu đề của khối. Mạng tiền mã hóa đặt một giá trị đích cho hàm băm này (đó gọi là băm mục tiêu) và các thợ đào cố gắng xác định giá trị này là gì bằng cách kiểm tra tất cả các giá trị có khả năng.
Tiêu đề khối (Block Header) chứa số phiên bản khối, dấu thời gian, hàm băm được sử dụng trong khối trước đó, hàm băm của Merkle Root, số chỉ được sử dụng một lần (Nonce) và băm mục tiêu. Khối được tạo bằng cách lấy hàm băm của nội dung khối, thêm một chuỗi số ngẫu nhiên (nonce) và băm lại khối đó.
Nếu hàm băm đáp ứng yêu cầu của mục tiêu, thì khối được thêm vào chuỗi khối. Trải qua các giải pháp để dự đoán số chỉ được sử dụng một lần được gọi là proof of work (POW) và người khai thác có thể tìm thấy giá trị được trao khối và trả bằng tiền mã hóa.
Hàm băm mục tiêu cho Bitcoin là một số 256 bit và có thể được tìm thấy trong tiêu đề khối. Việc khai thác một khối yêu cầu thợ đào tạo ra một giá trị (nonce), sau khi được băm, nhỏ hơn hoặc bằng một khối được sử dụng trong khối gần nhất được mạng Bitcoin chấp nhận.
Con số này nằm trong khoảng 0 (lựa chọn nhỏ nhất) đến 256 bit (lựa chọn lớn nhất), nhưng không chắc là số lượng tối đa. Vì hàm băm mục tiêu có thể là một số lượng lớn, người khai thác có thể phải kiểm tra một số lượng lớn các giá trị trước khi thành công. Thợ đào không thành công sẽ phải chờ khối tiếp theo, điều này dẫn đến việc các thợ đào thích tìm giải pháp băm để chiến thắng trong cuộc đua.
Băm mục tiêu được điều chỉnh định kì. Các hàm băm được sử dụng để tạo mục tiêu mới có các thuộc tính cụ thể được thiết kế để làm cho chuỗi khối (và tiền mã hóa) an toàn. Nó mang tính quyết định, sẽ tạo ra cùng một kết quả mỗi lần sử dụng cùng một đầu vào. Nó đủ nhanh để không mất quá nhiều thời gian trả về hàm băm cho đầu vào. Nó cũng làm cho việc xác định đầu vào rất khó khăn, đặc biệt đối với số lượng lớn và thực hiện các thay đổi nhỏ đối với kết quả đầu vào trong một đầu ra của hàm băm rất khác nhau.
(Tài liệu tham khảo: investopedia.com)