Skip to content

Merkleize/matt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MATT (Merkleize All The Things)

MATT is a simple yet powerful 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 draft
    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