Hàm băm trong Ethereum được sử dụng để
(1) Tạo băm trạng thái
(2) Tạo địa chỉ tài khoản
(3) Mã hóa thông điệp người gửi
(4) Tạo khối băm
Hàm băm trong Ethereum được sử dụng để
(1) Tạo băm trạng thái
(2) Tạo địa chỉ tài khoản
(3) Mã hóa thông điệp người gửi
(4) Tạo khối băm
Trả lời:
Đáp án đúng: D
Hàm băm (hash function) trong Ethereum được sử dụng rộng rãi cho nhiều mục đích khác nhau:
* **(1) Tạo băm trạng thái (State Hash):** Băm trạng thái là một phần quan trọng của Merkle Patricia Trie, cấu trúc dữ liệu được Ethereum sử dụng để lưu trữ trạng thái của các tài khoản và hợp đồng. Hàm băm được sử dụng để tạo ra các nút băm trong trie, cho phép xác minh hiệu quả tính toàn vẹn của trạng thái.
* **(2) Tạo địa chỉ tài khoản:** Địa chỉ tài khoản Ethereum được tạo ra bằng cách băm khóa công khai của tài khoản, sau đó lấy 20 byte cuối cùng. Điều này đảm bảo rằng địa chỉ là duy nhất và khó đoán.
* **(3) Mã hóa thông điệp người gửi:** Trong Ethereum, hàm băm không được sử dụng trực tiếp để mã hóa thông điệp của người gửi. Thay vào đó, chữ ký số được sử dụng để xác thực danh tính của người gửi và đảm bảo tính toàn vẹn của thông điệp.
* **(4) Tạo khối băm:** Mỗi khối trong blockchain Ethereum chứa một băm của khối trước đó, cũng như băm của dữ liệu giao dịch trong khối đó. Băm này đóng vai trò quan trọng trong việc liên kết các khối lại với nhau và đảm bảo tính bất biến của blockchain.
Vậy, đáp án đúng là C. 1, 2, 3, 4.