Your protocol, drawn from what the text actually says
Paste the material behind one protocol — an RFC excerpt, a paper's pseudocode, plain prose,
a handshake implementation, or an existing .pv / .spthy model. A
reader in this page classifies it, profiles the parties and the cryptographic operations, and
draws any Mermaid diagram it finds as SVG. Then the model extracts the message flow, annotates
every cryptographic step on the party that computes it, and tells you where the input is silent.
Both examples ship with a saved model run for both lanes, so you can see all four complete outputs without signing in and without spending a credit.
What this does, and what it does not
The prescan is a real reader, not a word count. It classifies the paste with the same signal
table the source skill uses to choose its workflow — RFC keywords and section numbers,
process and reduc forall for ProVerif, rule and
--[ ]-> for Tamarin — and tells you which signals it matched. If the paste is
a Mermaid sequenceDiagram it is tokenised into participants, all eight arrow forms,
notes and grouping blocks, then drawn in this page as SVG. There is no Mermaid library
in this bundle and no request to a CDN: the layout is computed here and painted with
createElementNS, because a content security policy that allows a third-party script
is a policy that allows exfiltrating your session.
If the paste is a ProVerif model, the reader walks its eleven canonical sections with
nesting-aware comment handling and checks the things that quietly invalidate a verification: a
destructor such as verify or adec declared without an inline
reduc, so it never aborts and the party accepts a forged signature; an event
declared but never fired, so every query mentioning it holds trivially; a query naming an
event that does not exist; a channel written but never read; a main process with no
! replication, so replay across sessions is out of scope. The same reader then runs
over the model this app produces, which is why the model lane can tell you its own
output is weak.
It reads and it writes. It does not run ProVerif or Tamarin, it does not execute your code, and it never claims a protocol is secure — it says what each query would establish if it came back true. Everything the prescan finds is handed to the model as facts with stable ids that must each be reconciled, and the reconciliation is checked here afterwards.
Nothing to hand? Load the , a prose specification with an unstated message ordering, an unnamed encryption scheme and no described abort path, or the , a two-party authenticated key exchange with ephemeral DH, signatures and a phase structure. Both replay a saved run for both lanes, for free.