Skip to content

Merkleize/matt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MATT (Merkleize All The Things)

MATT is an approach for bitcoin smart contracts that is designed to be extremely simple, yet powerful.
It could be enabled as a soft fork with various combinations of opcodes. The most direct way is based on an opcode called OP_CHECKCONTRACTVERIFY (CCV).

Key applications include:

  • Scaling and privacy with more powerful layer 2 constructions.
  • Trustless bridges for optimistic rollups or other sidechains.
  • Vaults for better self custody.

By enabling scalable fraud proof protocols for arbitrary computations, it would bring permissionless innovation in the bitcoin's layer 2 space, while keeping Bitcoin's layer 1 simple and minimalistic.

Start here
    Gentle introduction on StackExchange: A beginner-friendly explanation of MATT and its core concepts.
    FAQ Answers to common questions about MATT, its implementation, and use cases.

Specs and implementation
    BIP-443
    bitcoin-core implementation
    Discussion on the amount logic of OP_CHECKCONTRACTVERIFY

Presentations
▶️ Merkleize All The Things. Advancing Bitcoin Conference − London, March 2nd, 2023. Slides
An introduction to MATT and how it enables scalable fraud proofs on Bitcoin.

▶️ sMATT Contracts Zero to Hero. btc++ − Austin, May 3rd, 2024. Slides
A deep dive into MATT and the pymatt Python framework, with a re-implementation of James O’Beirne's vaults using CCV.
Timestamps:
    Intro to MATT
    Vaults
    Vault demo
    Code in pymatt

Programming with MATT

  • Docker image of bitcoin-inquisition + OP_CHECKCONTRACTVERIFY + OP_CAT + OP_CTV for regtest.
  • pymatt Python framework for MATT smart contracts, and examples.

Research

bitcoin-dev

About

The revolution will be merkleized

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published