Trước tiên, hãy nêu rõ vấn đề cần chứng minh.
Khi kiểm tra một khối, các câu hỏi thường gặp bao gồm liệu một giao dịch có được bao gồm hay không, kết quả thực thi là gì và trạng thái của một tài khoản trong một khối cụ thể là gì. Đây là những câu hỏi khác nhau yêu cầu dữ liệu và bằng chứng khác nhau. Mã băm gốc trong tiêu đề khối cung cấp cam kết cho cấu trúc dữ liệu tương ứng, nhưng bản thân mã băm gốc không phải là một danh sách tài khoản có thể đọc trực tiếp, cũng không giải thích tại sao một giao dịch tạo ra một kết quả kinh doanh nhất định.
Gốc giao dịch tương ứng với tập hợp giao dịch.
Gốc giao dịch liên quan đến các giao dịch được sắp xếp tuần tự trong một khối. Khi xác minh mối quan hệ bao gồm của một giao dịch, cần phải biết đồng thời mạng lưới, tiêu đề khối và cấu trúc bằng chứng tương ứng. Việc một giao dịch được bao gồm không đảm bảo thực thi thành công, cũng không cho thấy nền tảng nhận đã ghi có giao dịch vào tài khoản của khách hàng. Liên kết trình duyệt chỉ cung cấp điểm truy vấn; để xác minh chính thức, điều quan trọng là phải làm rõ liệu bạn tin tưởng vào nút, trình duyệt hay tiêu đề khối đã được xác minh.
Gốc biên nhận tương ứng với kết quả thực thi
Biên nhận thường chứa thông tin như trạng thái thực thi, mức sử dụng gas tích lũy và nhật ký. Gốc biên nhận hứa hẹn những kết quả thực thi này, chứ không phải số dư của khách hàng trên nền tảng. Các ứng dụng có thể xác định hoạt động thông qua nhật ký, nhưng hợp đồng phát hành, giải mã tham số và trạng thái giao dịch trong nhật ký phải được kiểm tra cùng nhau. Việc nhìn thấy một sự kiện có tên "Chuyển khoản" không bỏ qua các kiểm tra về tính xác thực và kết quả thực thi của hợp đồng token.
Gốc trạng thái mô tả trạng thái của một khối cụ thể
Gốc trạng thái tương ứng với ảnh chụp nhanh của một trạng thái và có thể liên quan đến cấu trúc liên quan của số dư tài khoản, nonce, mã và bộ nhớ. Bằng chứng yêu cầu một khối cố định; bằng chứng của ngày hôm qua không thể áp dụng cho ngày hôm nay. Bằng chứng hợp lệ cho một vị trí lưu trữ cụ thể không đảm bảo không có rủi ro đối với nền kinh tế token, cơ quan quản trị hoặc các oracle bên ngoài. Phạm vi của các cam kết kỹ thuật phải chính xác hơn so với tuyên bố "có thể xác minh hoàn toàn trên chuỗi" trong tài liệu tiếp thị.
Một ví dụ về xác minh liên trường
Giả sử người dùng muốn xác nhận một lệnh gọi hợp đồng. Đầu tiên, xác định giao dịch đã được ghi vào khối nào, sau đó kiểm tra xem biên nhận có thành công hay không và các tham số sự kiện, cuối cùng truy vấn trạng thái tài khoản hoặc hợp đồng liên quan dựa trên câu hỏi. Nếu trình duyệt và ứng dụng hiển thị thông tin khác nhau, hãy kiểm tra xem có tham chiếu đến các chiều cao khối khác nhau hoặc các mạng khác nhau hay không, thay vì ngay lập tức cho rằng một bên gian lận. Ví dụ này minh họa các cấp độ bằng chứng và không cấu thành kết luận kiểm toán cho bất kỳ hợp đồng nào.
Bảo toàn ngữ cảnh bằng chứng
Giữ lại mã định danh chuỗi, chiều cao khối và hàm băm, loại hàm băm gốc, phương thức truy vấn, dữ liệu bằng chứng và phiên bản công cụ. Nếu sử dụng dịch vụ giải mã của bên thứ ba, hãy chỉ ra vai trò của nó và độ trễ bộ nhớ đệm tiềm năng. Tính cuối cùng và việc tổ chức lại chuỗi vẫn ảnh hưởng đến trạng thái của khối được chọn; xác minh bằng chứng dữ liệu, chỉ trả lời các câu hỏi kỹ thuật rõ ràng và không chứng minh thực thể dịch vụ, dự trữ tài sản hoặc khả năng chuộc lại trong tương lai.
