Skip to content

This is a curated list of all resources for learning and developing for the CTV+CSFS upgrade to Bitcoin

Notifications You must be signed in to change notification settings

arshbot/awesome-ctv-csfs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 

Repository files navigation

Awesome CTV+CSFS

A curated list of resources, tools, and projects related to OP_CHECKTEMPLATEVERIFY (CTV) and OP_CHECKSIGFROMSTACK (CSFS) in Bitcoin.

Quick Start: Run CTV+CSFS Signet

Want to experiment with CTV and CSFS right away? Run your own signet node with both opcodes enabled:

git clone https://github.com/arshbot/ctv-csfs-signet-docker
cd ctv-csfs-signet-docker
cp .env.example .env
docker-compose up -d

This will start a Bitcoin signet node with both CTV and CSFS enabled, perfect for development and testing. See the CTV+CSFS Signet Node tool below for more details.

Table of Contents

Projects

A collection of interesting projects utilizing covenants, particularly focusing on CTV+CSFS implementations.

Name Links Description Phase CTV CSFS TXHASH CAT CCV
Pool Slides,
Code,
Sapio,
Article,
Intro,
IRC,
Coinpools
Scalable payment pool with CTV - supports up to 21 users, P2A fee management, and automatic coinjoin-like privacy Prototype
Vault CTV Vault,
Demo,
Sandwich
Vault without pre-signed transactions Prototype
Vault Simple Covenant Vault Vault without pre-signed transactions Prototype
Matt Vault Code Vault implementation using CTV and contract verification opcodes Prototype
Android CTV Demo Code,
Release
Native Android implementation demonstrating CTV Vault and payment pools with interactive UI Prototype
DLCs Specs,
Cases,
DLCAT
30x more performant DLCs Prototype / Spec
Ark Site,
Thread,
Layer 2 protocol Prototype
BitVM Thread Trust-minimized Bitcoin interoperability Prototype
Simple CTV Code,
Optech
CTV + Pay To Anchor example Prototype

Tools

A collection of development and experimentation tools for CTV+CSFS.

Name Links Description Phase CTV CSFS Use Case
CTV+CSFS Signet Node Repo Docker-based Bitcoin node with CTV and CSFS enabled on MutinyNet signet Production Development, testing, prototyping, smart contract experimentation
Voltage Cloud Site Free hosted CTV+CSFS enabled Bitcoin nodes Production Node hosting, development, production deployment, API access
MutinyNet Explorer API Full-featured mempool fork with open REST API for CTV+CSFS enabled signet Production Transaction monitoring, API integration, product development, smart contract analysis
Inquisition Observer Site Block explorer tracking all CTV transactions on Bitcoin signet, with real-time statistics and transaction monitoring Production Transaction monitoring, CTV adoption tracking, signet activity analysis
CTV Playground Site,
Web-based tool for experimenting with CTV scripts and transaction templates Prototype Learning CTV concepts, testing script constructions, visualizing transaction templates
ctvlib Repo,
Rust utility library extracted from CTV Playground for CTV script development Prototype CTV script development, transaction template generation, library integration
Minsc Site,
v0.3,
High-level scripting language for Bitcoin contracts with CTV support Production Policy development, script compilation, address generation, contract testing
Sapio Miniscript Docs,
Crate,
Production-ready Rust library for CTV+CSFS script development with Miniscript Production Production script development, protocol implementation, transaction analysis, PSBT integration
Sapio Repo,
Framework for creating composable multi-transaction Bitcoin Smart Contracts using CTV Production Smart contract development, CTV emulation, plugin integration
CTV Hash Generator Gist JavaScript tool for generating CTV hashes using transaction data. Prototype CTV hash generation, transaction analysis. Passes all CTV test vectors.

Learning Resources

Educational materials about CTV+CSFS.

Name Author Links Description
OP_CSFS Wiki Bitcoin Optech Topic,
Overview of OP_CHECKSIGFROMSTACK (OP_CSFS) opcode, its features, and potential applications in Bitcoin, including paying for signatures, delegation, oracles, and transaction introspection
Covenants 101 Owen Kemeys Thread,
Beginner-friendly explanation of CTV concepts, covering address construction, transaction templates, and practical applications
Templates, Eltoo, and Covenants Jeremy Rubin Article,
Comprehensive analysis of CTV, CSFS, CAT, and APO upgrades, including safety considerations, design tradeoffs, and implementation recommendations
CSFS Re-Keying and Lightning Symmetry Jeremy Rubin & Rearden Article,
Advanced technical exploration of CSFS re-keying techniques, key laddering, and applications to Lightning Network symmetry without extra signing round-trips
Credit Ecash + CTV Ursus Camp Article,
Exploration of combining CTV with non-custodial ecash for improved Lightning Network liquidity and privacy
Newbie Guide to OP_CTV Katsu Article,
Learn the basics of CTV by building a locking address using CTV and executing a spend transaction that unlocks those funds

Community Discussions

Important technical discussions about OP_CTV and its applications.

Topic Date Author Links Key Points
CSFS Implementation Apr 10, 2025 James O'Beirne PR,
BIP,
Docs,
Regtest-only deployment, Complements CTV, OP_SUCCESS behavior, Bundled deployment possible, Technical focus
CTV+CSFS as First Step Mar 10, 2025 Steven Roose Thread,
Minimal package for covenants, Enables Lightning Symmetry, Simplifies DLCs and BitVM, Upgrade path to TXHASH, Focus on security and expressiveness
CTV Implementation Mar 4, 2025 James O'Beirne PR,
BIP,
Docs,
Regtest-only deployment, Composable with CSFS/CAT, Well-tested implementation, No consensus changes, Focused on technical review
DLC Performance Jan 24, 2022 Lloyd Fournier Thread,
Paper,
BIP,
Spec,
30x faster DLCs, No multiplications, Constant comms, Efficient oracles, Secure attestations
Eltoo Channel Comparison Dec 29, 2021 Jeremy Rubin & Michael Folkson Thread,
Fee payment challenges, CPFP vs RBF tradeoffs, Transaction size efficiency, Implementation complexity, Protocol equivalence
LN-Symmetry Jan 6, 2020 Jeremy Rubin BIP,
Thread,
Floating transaction variant, Ephemeral anchors for fees, Self-reproducing automata, State transition restrictions, Fee payment alternatives

More discussions will be added as they are identified and analyzed.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request. When adding new entries, please ensure they are relevant to CTV+CSFS specifically.

Guidelines for Adding Projects

  • Focus on projects that specifically use CTV+CSFS
  • Include relevant links to documentation, code, and articles
  • Clearly indicate the project phase (Implemented, Spec, Prototype, or Idea)
  • List the primitives used in the implementation

License

No license, no restriction

About

This is a curated list of all resources for learning and developing for the CTV+CSFS upgrade to Bitcoin

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •