Mỗi người dùng có thể sử dụng Hashed user ID và số dư để xác minh xem tài khoản của mình có được đưa vào nút lá của Merkle hay không. Nếu tài khoản đã xác minh để đưa vào đó và số dư hiển thị là chính xác, điều đó chứng minh dữ liệu không bị giả mạo và nền tảng đã giữ đầy đủ tài sản của người dùng. Xem chi tiết số dư trong ảnh snapshot
Cơ quan kiểm toán | Thời gian Snapshot | Tên coin | Báo cáo | "Trang chủ | Trạng thái |
---|---|---|---|---|---|
04 tháng 5 năm 2020, 00:00 UTC | Bitcoin | Gate.io Báo cáo đánh giá bằng chứng dự trữ [BTC] [25 tháng 5 năm 2020] | Trust Explorer - Proof of Reservers (May-25-2020) | Đã phát hành | |
19 tháng 10 năm 2022, 00:00 UTC | Bitcoin, Ethereum | Gate.io Báo cáo đánh giá bằng chứng dự trữ [BTC & ETH] [28 tháng 10 năm 2022] | Trust Explorer - Proof of Reservers (Oct-28-2022) | Đã phát hành |
Trong mật mã học và khoa học máy tính, hash tree hay Merkle tree là cấu trúc dữ liệu hình cây, trong đó mỗi nút lá được gắn nhãn với hash mật mã của một khối dữ liệu. Mỗi nút không phải lá (non-leaf node) được gắn nhãn bằng hàm băm của nhãn của các nút con (child node) của nó. Hash free có thể xác minh nội dung của cấu trúc dữ liệu lớn một cách an toàn và hiệu quả.
Hashed user id (UID) và số dư người dùng được xuất đầu tiên từ cơ sở dữ liệu của Gate. Mỗi cặp hashed UID và số dư người dùng sẽ được băm riêng biệt và sau đó được nối với nhau để tạo thành khối dữ liệu cơ bản. Đối với mỗi khối dữ liệu, sẽ sử dụng cùng một hàm băm để tạo các nút lá của Merkle tree. Dữ liệu băm thu được sẽ được băm với nhau theo từng cặp để tạo ra các nút cha (parent node) của các nút lá. Quá trình này tiếp tục cho đến khi nó tạo ra một hàm băm duy nhất được gọi là root merkle. Vui lòng tham khảo sơ đồ bên dưới. Sau khi merkle tree được xây dựng thành công, các nút lá sẽ được xuất thành tệp văn bản, tệp này sẽ được xuất bản cùng với hàm băm gốc merkle (merkle root) bởi kiểm toán viên.
K 'khi được băm với hàm băm của tập dữ liệu chưa biết A, tạo ra A'K', là H (A '+ K')
A'K 'được băm với C'D' xuất ra root, H (A'K '+ C'D')
So sánh giá trị của H (A'K '+ C'D') với hàm băm gốc merkle đã xuất bản
Bằng cách này, chúng tôi có thể xác minh đươc dữ liệu do người dùng nhập vào (hashed UID và số dư của người dùng) có tồn tại trong Merkle tree của chúng tôi hay không mà không cần phải tiết lộ ID và số dư của bất kỳ người dùng nào.
Xem thêm