BitVM

SNARK Verifier in Bitcoin Script

A plan to implement a SNARK verifier in Bitcoin Script to run it in BitVM2.

Bitcoin Script Constraints

Fundamental Constraints

Practical Constraints

Possible Proof Systems

All three can operate over the bn254 curve.

Example implementations:

Code Modules

Complexity Analysis

General Ideas for Optimizations