Formal verification for Solidity

Solidity2CPN

Verify Solidity smart contracts with Coloured Petri Nets

Turn smart contracts into analysable Coloured Petri Nets and expose unsafe behaviour before deployment.

Open source No CPN expertise needed

A clearer view of contract behaviour

From source code to formal confidence.

Solidity2CPN is a web application that automatically translates Solidity contracts into equivalent Coloured Petri Net models, then uses model checking to explore every reachable behaviour.

It helps teams find vulnerabilities such as reentrancy before deployment — without requiring prior knowledge of Petri nets or formal methods.

01

Formal depth,
practical interface.

Exhaustive model checking runs behind a web interface designed for developers, not formal-methods specialists.

Launch the verifier
02

Trace every state

Explore contract behaviour beyond the paths reached by conventional tests.

03

Open by design

GPL-3 licensed and built from peer-reviewed research.

View source

The workflow

Three steps. One safer contract.

01

Submit

Paste or upload the Solidity source code you want to analyse.

02

Translate

The contract becomes a CPN model that captures its execution semantics.

03

Verify

Model checking explores reachable states and reports unsafe behaviour.

Grounded in research

Peer-reviewed methods.
Developer-ready tooling.

Developed at LIPN, Paris 13 University, Solidity2CPN builds on a series of publications covering smart-contract translation, business-process context, and vulnerability detection.

Browse the publications

Ready when you are

Give your contract a deeper check.

Try Solidity2CPN