Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Coq
  3. ConCert

ConCert

MITRocq Proverv1.0.1

A Coq framework for formal verification, property-based testing, and extraction of smart contracts.

GitHubGitHub
127 stars23 forks0 contributors

What is ConCert?

ConCert is a framework for smart contract verification and development using the Coq proof assistant. It enables formal verification of contract correctness, property-based testing to find vulnerabilities, and extraction to executable blockchain languages. The framework helps prevent real-world attacks and ensures mathematical guarantees for decentralized applications.

Target Audience

Blockchain developers and researchers building high-assurance smart contracts, particularly those working on DeFi protocols or security-critical applications requiring formal verification.

Value Proposition

ConCert provides an integrated toolkit for end-to-end smart contract verification—from formal proofs in Coq to extracted, executable code—offering stronger security guarantees than testing alone. Its property-based testing framework has successfully identified real-world vulnerabilities in major DeFi platforms.

Overview

A framework for smart contract verification in Coq

Use Cases

Best For

  • Formally verifying correctness properties of smart contracts before deployment
  • Property-based testing to automatically discover vulnerabilities in contract interactions
  • Extracting verified smart contracts to languages like Liquidity or CameLIGO
  • Research and education in blockchain security and formal methods
  • Building decentralized exchanges or DeFi protocols with mathematical guarantees
  • Developing high-assurance smart contracts for security-critical applications

Not Ideal For

  • Teams without formal methods expertise or Coq knowledge
  • Projects targeting Ethereum Solidity or other unsupported blockchain languages
  • Developers needing rapid prototyping without formal verification overhead
  • Small projects where security benefits don't justify the verification cost

Pros & Cons

Pros

Verified Embedding in Coq

Formally embeds the λsmart language, enabling mathematical proofs of contract correctness, as demonstrated in peer-reviewed papers like those cited in the README.

Real-World Vulnerability Detection

Property-based testing framework has identified and prevented multi-million dollar attacks on DeFi platforms such as Bzx, showing practical security impact documented in medium articles.

Flexible Extraction Pipeline

Supports extraction to multiple languages including Liquidity for Tezos and Rust for general use, with extraction verified within Coq itself, as detailed in the extraction folder.

Comprehensive Execution Modeling

Models full blockchain execution environments, allowing testing of contract interactions and state transitions, essential for DeFi protocols like decentralized exchanges.

Cons

High Barrier to Entry

Requires deep knowledge of Coq and dependent types, with complex setup involving opam, specific Rocq versions, and dependencies like MetaRocq, as outlined in the build instructions.

Missing Major Blockchain Support

No extraction to Solidity, the most common smart contract language, limiting its use for Ethereum-based projects despite supporting niche languages like CameLIGO.

Research-Heavy Documentation

Documentation is academic-oriented, with heavy reliance on papers and theses rather than practical tutorials, which may hinder adoption by industry developers.

Frequently Asked Questions

Quick Stats

Stars127
Forks23
Contributors0
Open Issues7
Last commit24 days ago
CreatedSince 2019

Tags

#coq#smart-contracts#blockchain-security#verification#rocq#code-extraction#property-based-testing#blockchain#formal-verification#proof-assistant#defi

Built With

O
OPAM
C
Coq
R
Rocq

Included in

Coq380
Auto-fetched 6 hours ago

Related Projects

VerdiVerdi

A framework for formally verifying distributed systems implementations in Coq

Stars627
Forks58
Last commit5 months ago
FiatFiat

Mostly Automated Synthesis of Correct-by-Construction Programs

Stars160
Forks34
Last commit1 month ago
SSProveSSProve

A foundational framework for modular cryptographic proofs in Coq

Stars88
Forks18
Last commit23 hours ago
Hoare Type TheoryHoare Type Theory

Hoare Type Theory

Stars88
Forks6
Last commit4 months ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub