Skip to main content

Automated smart contract security analysis powered by formal verification

Project description

Certora AI Security Starter Kit

Automated smart contract security analysis powered by formal verification.

The AI Security Starter Kit is run with a command line tool called proverlite.

What it does

  1. Builds your project and sets up verification infrastructure.
  2. Generates formal verification rules (generic and AI-inferred) and dispatches them to the Certora Prover.
  3. Analyzes results from the Certora Prover with AI and generates an HTML report of all findings, ranked by their estimated likelihood of being real issues.

Once complete, the tool prints the path to the generated HTML report in the current working directory.

Prerequisites

  • Python 3.12+
  • Java 21+ (required by the Certora Prover)
  • Foundry (forge build must succeed on your project)
  • CERTORAKEY — Sign up at certora.com and store the API key from your signup email as an environment variable
  • ANTHROPIC_API_KEY — Beta testers will receive a Claude API key from Certora to cover LLM-related costs. Set it as an environment variable

If you are a beta tester, make sure ANTHROPIC_API_KEY is set to the key provided by Certora, not your personal key.

The tool will first open your browser to authenticate with prover.certora.com.

Installation

With uv:

uv venv proverlite-env && source proverlite-env/bin/activate
uv pip install certora-proverlite

Or with pip:

python -m venv proverlite-env && source proverlite-env/bin/activate
pip install certora-proverlite

Usage

cd /path/to/your/contracts
proverlite src/Token.sol

With an explicit contract name (when the contract name differs from the file name):

proverlite src/Vault.sol:MyVault

Both CERTORAKEY and ANTHROPIC_API_KEY must be set in your environment before running the tool.

You can also pass them inline: ANTHROPIC_API_KEY=sk-... CERTORAKEY=... proverlite src/Token.sol.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

certora_proverlite-0.2.2-py3-none-any.whl (1.0 MB view details)

Uploaded Python 3

File details

Details for the file certora_proverlite-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for certora_proverlite-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bb2b0451238bac93d9496a20a7bd7c31754df701876522a6a02d77ce57d3bb2c
MD5 c572f9b6893b980bcaeb094dbff630fd
BLAKE2b-256 fabc078183824d8137450efab4cb287b56cd3007f99c12a9c6ec962cfc9bb953

See more details on using hashes here.

Provenance

The following attestation bundles were made for certora_proverlite-0.2.2-py3-none-any.whl:

Publisher: publish.yml on Certora/proverlite-release

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page