AI smart-contract & ZK security

Audit the contract—and the proof underneath it

Two audit engines, one pipeline. A state-of-the-art Solidity / EVM auditor, plus the first AI system that audits zero-knowledge circuits, provers, and verifiers end-to-end—deeper than a scanner, at a fraction of the cost of a manual audit.

Confidential Reports · Privacy focused · zero data retention

YieldVault.sol
analyzing
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.20;
 
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import "./interfaces/IUniswapV2Pair.sol";
 
contract YieldVault {
using SafeERC20 for IERC20;
 
IERC20 public immutable asset;
IUniswapV2Pair public immutable pricingPair;
uint256 public totalAssets;
 
mapping(address => uint256) public balanceOf;
 
constructor(address asset_, address pricingPair_) {
asset = IERC20(asset_);
pricingPair = IUniswapV2Pair(pricingPair_);
}
 
/// @notice Exchange rate used for share minting and redemption.
function exchangeRate() public view returns (uint256) {
(uint112 reserve0, uint112 reserve1,) = pricingPair.getReserves();
return (uint256(reserve1) * 1e18) / uint256(reserve0);
}
 
function deposit(uint256 assets) external returns (uint256 shares) {
uint256 rate = exchangeRate();
shares = (assets * 1e18) / rate;
balanceOf[msg.sender] += shares;
totalAssets += assets;
asset.safeTransferFrom(msg.sender, address(this), assets);
}
 
function redeem(uint256 shares) external returns (uint256 assets) {
require(balanceOf[msg.sender] >= shares, "ERC4626: insufficient shares");
uint256 rate = exchangeRate();
assets = (shares * rate) / 1e18;
balanceOf[msg.sender] -= shares;
totalAssets -= assets;
asset.safeTransfer(msg.sender, assets);
}
 
}
solidity 0.8.20
main
0 findings
2.1s

The EVM / Solidity engine

Benchmarked on EVMbench

EVMbench is the OpenAI × Paradigm benchmark for AI smart-contract auditors—117 curated, real-world vulnerabilities. Here is how AuditAid's detection recall compares to the published field.

88%Detection recallEVMbench detect mode
0.0025False positives / nLoC~1 noise flag per 400 lines
+9.4 ptsvs. top published resultAzimuth · 78.6%

AuditAid's figures are self-reported: we ran the public EVMbench dataset and graded it locally with the same prompt and model as the official harness, without a leaderboard submission. All other results are taken from the public EVMbench leaderboard (testmachine.ai/evmbench) as of June 2026. EVMbench scores detection by recall; the false-positive rate is AuditAid's own measurement and is not reported by other entrants.

Read the full benchmark methodology →

The zero-knowledge engine

Built for the ZK frontier

Most AI auditors stop at your Solidity. AuditAid keeps going—into the circuits, provers, and verifiers the rest of the market leaves to humans.

Audits the proof, not just the contract

Models the malicious prover end-to-end—the threat Solidity-only tools structurally can't see.

Finds under-constrained signals

Pairs every witness assignment against its constraint and flags any a prover can set freely—confirmed by non-uniqueness, not guesswork.

Closes the off-chain gap

Maps every off-chain check that isn't enforced in-circuit—the most common ZK bug class, and invisible to contract-only review.

Proof systems
Groth16PLONKUltraHonkFFLONKHalo2Plonky2STARK / FRISP1RISC0
Languages
CircomNoirHalo2 (Rust)Cairo

Read the full zero-knowledge audit deep-dive →

  1. 1Scan project
  2. 2Select scope
  3. 3Get quote

Start your audit

Scanning is free—you only pay after you approve the quote.

From the Showcase

Explore the Showcase →

Published AuditAid reports — real findings with proof-of-concept exploits, opted in by their owners.

How AuditAid works

Deeper than a scanner. Structured like a firm engagement—without the calendar.

1

Scan & scope

Point us at a repo or upload an archive, review every .sol file, and pick exactly what's in scope.

2

Transparent quote

Your price comes straight from in-scope lines of code on a public formula—no hidden tiers, no model surcharges.

3

Full-depth audit

Server-side agents run the complete methodology while you watch progress live, then download the report and PoCs.

Frequently asked questions

What developers, audit firms, and protocol teams ask before their first audit.

What is AuditAid?

AuditAid is an AI smart-contract security auditor that audits both Solidity/EVM contracts and zero-knowledge circuits end-to-end, delivering structured, reproducible findings with proof-of-concept exploits at a fraction of the cost of a manual audit.

How accurate is AuditAid?

In our run of the public EVMbench benchmark, AuditAid reached 88% detection recall (103 of 117) at 0.0025 false positives per line of code—higher recall than every published result on the EVMbench leaderboard.

How much does an AI smart contract audit cost?

Pricing is a transparent public formula based on effective in-scope lines of code (a flat $0.10 per line, $10 minimum). Blank lines and comments are excluded, documentation is free context, and you see the quote before you pay.

See all frequently asked questions →