Tôi có một thói quen mà tôi nghĩ nhiều người cũng có: trước khi tương tác với một smart contract, tôi kiểm tra địa chỉ trước. Trước đây tôi từng nghĩ rằng như vậy là đủ, nhưng khi đọc Dusk, tôi nhận ra một điều đơn giản: địa chỉ cho tôi biết tôi đang gọi contract nào, trong khi thứ thực sự thực thi là mã nằm phía sau nó. Trước khi triển khai, Dusk sử dụng BLAKE3 để băm toàn bộ bytecode và so sánh với mã băm đã lưu, giúp bảo vệ chống lại việc bytecode bị biến dạng (malleability). Nói một cách đơn giản, Dusk không chỉ hỏi “Đây có phải là đúng contract không?” Nó còn kiểm tra xem mã đứng sau danh tính đó có đúng là mã đã được xác định thực sự hay không. Tôi thấy điều này đặc biệt có giá trị đối với hạ tầng tài chính, bởi vì một khi smart contracts bắt đầu kiểm soát tài sản và logic tài chính, tính toàn vẹn của mã sẽ trở thành một phần của mô hình niềm tin. Địa chỉ xác định contract; mã băm bytecode bảo vệ tính toàn vẹn của mã nằm phía sau nó. Và từ đó tôi có một câu hỏi: nếu nhiều quy tắc tài chính hơn được chuyển vào smart contracts, thì liệu cuối cùng chính mã đó có cần một “danh tính” mà chúng ta có thể tin tưởng, tương xứng với cả những con người và tài sản mà nó kiểm soát hay không?
#dusk $BTW $RICE $DUSK @Dusk