Book a demo

See a finding proven, not described.

Forty-five minutes with the engineers who built the workbench. We open live state on a contract or Solana program you pick, take a candidate through to a replayed proof-of-concept, and show you the handoff an audit team actually receives.

Opens your email app · or copy directly.

What the walkthrough covers

Your contract, on a real fork, in one sitting

Nothing is pre-recorded and nothing is staged. Bring a contract address or a Solana program ID — yours or a public one — and we work on that, on any of the seven networks the platform supports today: Ethereum, BNB Chain, Polygon, Arbitrum, Optimism and Base, each forked and pinned to a block, and Solana, opened as captured account state.

Product example · Illustrative

One question, one observed result, and why it matters

The question. Before a protocol upgrade goes live — or during an audit of a deployed Ethereum vault — can an external caller drain funds through withdraw() at a pinned block?

Observed result. Replaying the candidate call sequence on an isolated fork pinned at block 22,847,313 shows the vault transferring ETH before updating the caller’s accounting slot, moving 41.2 ETH to the test caller.

Why it matters. Teams do not have to argue over a theoretical warning. Auditing IDE separates an unconfirmed scan lead from a reproduced result on a fork and a reviewed finding, giving developers an exact transaction trace to verify their fix against.

  1. Scan lead recorded external call before state write
  2. Isolated fork pinned Ethereum block 22,847,313
  3. Call sequence replayed fallback re-entry executed
  4. Reproduced result 41.2 ETH balance delta observed
  5. Reviewed finding trace & state diff attached
replay — Vault.withdraw() @ 22,847,313Illustrative
✓ 41.2 ETH balance delta reproduced on fork block 22,847,313
View technical details
// question: can an external caller drain Vault.sol on a pinned fork? PIN  ethereum mainnet · block 22,847,313 (isolated fork) CALL Vault.deposit()  value: 1.0 ETH CALL Vault.withdraw(1.0 ETH)  ├─ CALL caller.fallback()  ← ETH sent before accounting update  │  └─ CALL Vault.withdraw(1.0 ETH)  ← re-entered 41x  └─ SSTORE balances[caller] = 0  ← written after transfer ✓ reproduced result — 41.2 ETH drained on fork → promoted to reviewed finding
Executed on an isolated fork. No transaction is ever broadcast to a live network.
Assess before signing

Understand what you are authorizing before funds move

Protect evaluates unsigned EVM transactions, EIP-712 permits and orders, personal signatures, ERC-4337 user operations, and EIP-7702 delegation authorizations before a signature is produced.

It decodes expected asset transfers and permission or authority grants, explains risk findings with stable reason codes, and evaluates revisioned security policies to return an explicit decision — allow, warn, require_review, or block — for your wallet, signer, or custody workflow to enforce.

  • PayloadsEVM transactions, EIP-2612 & Permit2, ERC-4337, EIP-7702
  • Safe fallbackIncomplete assessments never default to allow
  • BoundaryCaller enforces the decision; assessment does not guarantee safety

Explore Protect →

protect — pre-signing assessmentIllustrative
decision: block — unlimited Permit2 allowance to unverified spender
View technical details
// unsigned EIP-712 Permit2 payload evaluated before signing kind       eip712_permit (Permit2 PermitSingle) signer     0x4f91…9c11 (treasury-ops) token      USDC (0xA0b8…eB48) permission allowance 2^256-1 (UNLIMITED) → 0x7a9f…11d4 finding    HIGH · UNLIMITED_PERMIT_UNVERIFIED_SPENDER policy     treasury-default-v3 (rev 4) decision: block — returned to caller before signature
Evaluated before signing. Your wallet or custody service enforces the returned decision.
Before you book

Two things worth knowing

You do not need us to start

The workbench is available now. If you would rather evaluate it on your own first, launch the app, sign in or create an account, and open a fork — the walkthrough is for when you want a guided session on your own target.

  • Length~45 minutes
  • WithThe engineers
  • BringA contract address or program ID

What we can and cannot show

Janus AI is in development and not yet available, so it is not part of a walkthrough. Everything else on this site is something we can open live. The session is about what the product does on your target, not how it is built internally. Our Trust Center states plainly which enterprise identity capabilities exist today and which do not.

  • LiveAll three surfaces
  • Not yetJanus AI
  • PostureTrust Center

Send us a contract address or a program ID

The button opens your email client with a few questions already filled in — there is no form here and nothing is submitted to us until you send it. Mail reaches the engineering team directly, with no sales queue in front of it.