Tóm tắt
Covenant Bitcoin là cơ chế cho phép locking script của một UTXO ràng buộc cách UTXO đó được chi tiêu tiếp theo — không chỉ kiểm tra ai chi tiêu, mà còn kiểm tra chi tiêu vào đâu, với điều kiện gì. Hiện tại Bitcoin Script không có covenant native. Các BIP đề xuất thêm opcode để làm điều này: OP_CAT (BIP 347 — re-enable concatenation), OP_CTV (BIP 119 — commit to future transaction template), OP_VAULT (BIP 345 — time-delayed withdrawal). Covenant là prerequisite cho trustless BTC bridge, ZK Rollup settlement và nhiều DeFi primitive trên Bitcoin.
1Covenant Là Gì? Trực Quan Bằng Ví Dụ
Bitcoin Script hiện tại kiểm tra: "Người này có quyền chi tiêu UTXO không?" (xác thực chữ ký, kiểm tra hash). Covenant thêm một lớp: "UTXO này chỉ được chi tiêu theo những cách nhất định."
Ví dụ không có covenant (hôm nay): Alice lock 1 BTC vào một address. Khi Alice chi tiêu, Alice có thể gửi đến bất kỳ address nào — không có gì ràng buộc output tiếp theo.
Ví dụ có covenant: Alice lock 1 BTC với điều kiện "chỉ được gửi đến địa chỉ X, hoặc phải chờ 144 block." Bitcoin Script với covenant opcode có thể verify rằng output tiếp theo tuân theo điều kiện này — Bitcoin node enforce, không cần trust bất kỳ ai.
Đây là khả năng introspection — script có thể "nhìn vào" spending transaction để kiểm tra output, locktime, amounts — thứ mà Bitcoin Script hiện tại không làm được.
2Tại Sao Covenant Quan Trọng Với Bitcoin L2?
Ba ứng dụng quan trọng nhất của covenant cho Bitcoin ecosystem:
- Trustless BTC Bridge: Covenant có thể enforce rằng BTC chỉ được giải phóng khi sidechain/rollup đã xử lý withdrawal đúng cách — không cần federation. Đây là bước từ federated peg (Liquid) sang trustless peg thực sự.
- ZK Rollup Settlement: OP_CAT + STARK-friendly opcodes cho phép verify ZK proof on-chain trong Bitcoin Script — nền tảng cho Bitcoin ZK Rollup không cần BitVM overhead.
- DeFi Primitive: Covenant cho phép xây dựng các cấu trúc tài chính phức tạp: vaults (bảo mật BTC với time-delay recovery), AMM (automated market maker), conditional escrow — tất cả trustless, enforced by Bitcoin Script.
3OP_CAT – BIP 347: Re-Enable Concatenation
OP_CAT — Concatenate Stack Items
Ghép nối hai top stack items thành một. Bị disable từ 2010 vì lo ngại stack explosion DoS. Với Tapscript (BIP 342), giới hạn stack size giải quyết concern đó — OP_CAT có thể được re-enable an toàn.
OP_CAT mở ra những gì?
- Merkle proof verification: Verify rằng một transaction tồn tại trong một block, hoặc một leaf tồn tại trong commitment tree — nền tảng cho zkVM và fraud proof
- Schnorr trick / covenant: Kết hợp với OP_CHECKSIG, tạo được "CHECKSIGFROMSTACK" — verify signature trên arbitrary message, không phải chỉ spending transaction
- BitVM efficiency: Nhiều operation trong BitVM bisection protocol trở nên rẻ hơn đáng kể với OP_CAT
- STARK verifier: STARK proof verification đòi hỏi hash computation phức tạp — OP_CAT là primitive cần thiết
4OP_CTV – BIP 119: CheckTemplateVerify
OP_CTV — Check Template Verify
Cho phép UTXO commit trước một template của spending transaction — hash của outputs, locktime, số lượng inputs. Khi chi tiêu, Bitcoin Script kiểm tra spending tx có khớp template không.
OP_CTV là proposal cẩn thận và conservative — chỉ cho phép commit output template, không phải full introspection. Ưu điểm: đơn giản, dễ analyze security. Nhược điểm: expressiveness hạn chế hơn OP_CAT — không thể làm Merkle proof hay STARK verification.
5OP_VAULT – BIP 345: Bitcoin Vault Trustless
OP_VAULT — Time-Delayed Withdrawal Vault
Thiết kế đặc biệt cho Bitcoin custody: BTC lock trong vault, withdrawal phải chờ một thời gian (unvault delay). Trong thời gian chờ, nếu phát hiện unauthorized withdrawal, chủ sở hữu có thể "claw back" BTC về recovery address.
Vault Flow
- Deposit: BTC gửi vào vault address (OP_VAULT locking script với unvault_delay + recovery_key)
- Initiate withdrawal: Broadcast trigger transaction — BTC vào "unvaulting" state, đồng hồ bắt đầu đếm
- Wait period: Sau N block (ví dụ: 144 block = ~1 ngày), withdrawal hoàn tất và BTC giải phóng
- Emergency claw back: Nếu bất kỳ lúc nào trong wait period phát hiện unauthorized trigger, broadcast claw back tx về recovery address — BTC an toàn
6TXHASH và CHECKSIGFROMSTACK – Introspection Đầy Đủ
Ngoài OP_CAT, OP_CTV, OP_VAULT, còn hai proposal introspection quan trọng:
OP_TXHASH — Transaction Hash Introspection
Cho phép script lấy hash của các phần cụ thể của spending transaction (inputs, outputs, amounts, locktime) và push lên stack để inspect. Mạnh mẽ hơn OP_CTV nhưng phức tạp hơn để analyze.
CHECKSIGFROMSTACK (CSFS) via OP_CAT
Bằng cách kết hợp OP_CAT với OP_CHECKSIG, có thể tạo hiệu ứng "verify signature trên arbitrary message" — không chỉ spending transaction. Đây là primitive cần thiết cho covenant phức tạp, oracle protocol và cross-chain proof verification.
7Ma Trận Ứng Dụng: Opcode Nào Cho Dùng Gì?
8Tranh Luận, Rủi Ro Và Con Đường Activation
Rủi ro và lo ngại chính
- Recursive covenant: Một số lo ngại rằng covenant mạnh (đặc biệt OP_CAT) có thể tạo UTXO "đóng băng" mãi mãi. CTV+CSFS ít rủi ro hơn vì CTV không recursive, CSFS không tạo loop.
- Fungibility concern: Covenant có thể tạo "tainted" BTC — BTC với điều kiện chi tiêu đặc biệt. Bitcoin purists lo ngại điều này dù practical impact chưa rõ.
- Complexity creep: Mỗi opcode mới tăng complexity — cần review kỹ. CTV+CSFS được xem là minimal footprint so với OP_CAT.
?FAQ Về Covenant Bitcoin
OP_CAT, OP_CTV, OP_VAULT và nhiều BIP khác đang trong quá trình debate và review. SATS.VN cập nhật và phân tích kỹ thuật trung lập về tất cả Bitcoin protocol upgrade proposals quan trọng.
→ Đọc Phân Tích Tổng Thể Tại SATS.VN