Cointelegraph Research đã công bố phần năm của loạt bài về covenant Bitcoin, giới thiệu khung mới gọi là MATT (Merkleize All The Things) và opcode OP_CHECKCONTRACTVERIFY (OP_CCV). Đề xuất này nhằm cung cấp cho Bitcoin khả năng mang trạng thái hợp đồng có thể thay đổi qua nhiều giao dịch, một tính năng mà các script Bitcoin tiêu chuẩn không có vì mỗi giao dịch được đánh giá độc lập.

BTC / USD
Nguồn: CoinGecko. Giá chỉ mang tính tham khảo.

Cách MATT nhúng trạng thái vào khóa Taproot

MATT dựa trên cơ chế tweak hiện có của Taproot, trong đó khóa công khai Q của một output Taproot được tính bằng Q = P + t·G, với P là khóa nội bộ và t là hàm băm có thẻ của dữ liệu cần cam kết. Thay vì chỉ cam kết một Merkle root của cây script, MATT đề xuất nhúng trạng thái hợp đồng vào tweak. Trạng thái được băm và đưa vào tweak, cho phép output tiếp theo mang trạng thái mới được tính lại khi chi tiêu.

OP_CHECKCONTRACTVERIFY thực thi chuyển đổi trạng thái

Primitive cốt lõi của MATT là OP_CHECKCONTRACTVERIFY. Theo báo cáo, OP_CCV cho phép một script xác minh rằng khóa input hoặc output Taproot đã được tweak với một đoạn dữ liệu trạng thái nhất định. Định dạng ngăn xếp của opcode là <data> <index> <pk> <taptree> <mode> OP_CHECKCONTRACTVERIFY, với ba chế độ hoạt động: default (giá trị đầu vào đầy đủ chuyển sang output chỉ định), deduct (chỉ chuyển số tiền output, phần còn lại dành cho các output khác) và ignore (xác minh mà không ràng buộc số tiền). Các chế độ này bảo toàn giá trị đồng thời cho phép nhập phí riêng biệt, tránh các vấn đề đốt vốn đã xuất hiện trong các thiết kế covenant trước như OP_CTV hay SIGHASH_ANYPREVOUT.

Mở rộng khả năng biểu đạt với OP_CAT

Khi OP_CHECKCONTRACTVERIFY được kết hợp với OP_CAT, khung có thể xây dựng và xác minh bằng chứng Merkle trên chuỗi. Hai cây Merkle được liên kết với một output Taproot: cây script tiêu chuẩn và một cây trạng thái riêng lưu các bước tính toán trung gian. OP_CAT nối các chuỗi byte, cho phép script tái tạo bằng chứng Merkle cho trạng thái hiện tại, tính root mới sau một chuyển đổi, và sau đó dùng OP_CCV buộc output tiếp theo cam kết root mới này. Thiết kế này hỗ trợ hệ thống chống gian lận tương tự như optimistic rollups, nơi phần lớn tính toán diễn ra ngoài chuỗi và chỉ các bước tranh chấp được đưa lên chuỗi để xác minh.

Những gì cần theo dõi tiếp theo

Các bước tiếp theo cho MATT sẽ bao gồm đề xuất BIP chính thức và thử nghiệm cộng đồng các triển khai OP_CHECKCONTRACTVERIFY trong Bitcoin Core. Hãy chú ý các cập nhật từ danh sách thư điện tử nhà phát triển Bitcoin và bất kỳ triển khai test‑net nào chứng minh hợp đồng trạng thái, vault chống gian lận hoặc các trường hợp sử dụng khác được nêu trong loạt bài.

FAQ

OP_CHECKCONTRACTVERIFY là gì?

OP_CHECKCONTRACTVERIFY là một opcode Bitcoin đề xuất, dùng để xác minh rằng khóa output Taproot đã được tweak để cam kết dữ liệu trạng thái hợp đồng cụ thể, cho phép UTXO có trạng thái.

MATT khác gì so với các đề xuất covenant trước đây?

MATT cho phép tính toán động trạng thái mới tại thời điểm chi tiêu và hỗ trợ nhập phí linh hoạt, trong khi các đề xuất trước như OP_CTV yêu cầu số tiền cố định và không có cập nhật trạng thái động.