AI Crypto Fraud Arms Race: The Pre-Signature Packet That Matters A developer has proposed a "pre-signature packet" design to counter AI-enabled crypto fraud, creating a structured data object that wallets can inspect before a user signs a transaction. The packet would expose critical fields like origin, chain, spender, allowance scope, and warning reasons, preventing AI models from directly approving malicious transactions while keeping their threat assessments in a separate evidence lane. This engineering approach addresses the gap between AI-generated phishing lures and deterministic wallet safety rules, building on existing standards like EIP-712, ERC-2612, and Permit2 to classify requested authority before signature confirmation. Disclosure: AI tools were used for source collection and editorial review. The article was written by a human author, who checked the facts, code, and conclusions. Crypto risk disclosure: This article is a technical explanation, not investment advice. It is not a recommendation to buy, sell or hold any cryptoasset. A boring failure starts the design: a user reaches a wallet prompt before the product has connected the request path, the spender, the chain, and the approval scope. Research on LLM spear phishing https://arxiv.org/abs/2305.06972 , lateral phishing with LLMs https://arxiv.org/abs/2401.09727 , and phishing content generation https://arxiv.org/abs/2310.19181 supports only a narrow claim: language models can make lures cheaper and more plausible. The wallet-safety packet keeps that model signal in the evidence lane; the model does not get to release the signature. This is a response to proximity, not panic. A risky off-wallet path can sit near a typed-data signature, token approval, Permit2 allowance, or WalletConnect session request in the same user journey. Google Cloud's Cybersecurity Forecast 2026 https://cloud.google.com/blog/topics/threat-intelligence/cybersecurity-forecast-2026/ treats AI-enabled social engineering as threat context, and Chainalysis' 2026 scams report https://www.chainalysis.com/blog/crypto-scams-2026/ treats impersonation and AI-enabled scams as material context in its own methodology. The engineering object sits between that context and the wallet action. One failed prompt should be easy to debug. The bad prompt is not "the user saw a scary message." The bad prompt is "the wallet could not say which origin, chain, spender, allowance, deadline, and warning reason were present before confirmation." Web3 blind-message attack research https://arxiv.org/abs/2406.00523 supports the concern that users may not be able to inspect what a message authorizes. The packet turns that concern into fields a product can inspect. The model gets a limited job. A model may mark a suspicious origin, lookalike domain, copied brand pattern, or unusual urgency. A model score may explain why a wallet slowed the flow. The model score should not approve a recipient, suppress a warning, or weaken a spending cap; deterministic wallet rules decide whether the signature flow continues. Start with fields wallets already expose or can decode. EIP-712 https://eips.ethereum.org/EIPS/eip-712 gives typed structured data and domain separation fields, while also saying that replay protection is not provided by EIP-712 alone. Sign-In with Ethereum https://eips.ethereum.org/EIPS/eip-4361 shows why domain, URI, chain-id, nonce, issued-at, and origin checks matter. These fields are product safety inputs, not decoration around a generic confirmation. Allowance fields deserve their own read. ERC-20 https://eips.ethereum.org/EIPS/eip-20 defines approve , allowance , spender , and transferFrom ; ERC-2612 https://eips.ethereum.org/EIPS/eip-2612 adds signed permits with owner , spender , value , nonce , and deadline ; Permit2 https://docs.uniswap.org/contracts/permit2/overview separates one-time signature transfers from allowance transfers, and the AllowanceTransfer reference https://docs.uniswap.org/contracts/permit2/reference/allowance-transfer documents maximum allowance behavior. Before the user signs, the product should classify requested authority as one-time, bounded, time-limited, or effectively unlimited. This is a product-layer log, not a universal cross-wallet standard. MetaMask Snaps transaction insights https://docs.metamask.io/snaps/features/transaction-insights/ and signature insights https://docs.metamask.io/snaps/features/signature-insights/ show that wallet tooling can inspect origin and transaction/signature data before confirmation. CAIP-2 https://chainagnostic.org/CAIPs/caip-2 gives machine-readable chain labels, and WalletConnect namespaces https://specs.walletconnect.com/2.0/specs/clients/sign/namespaces keep session scope explicit. The record assembles those signals without pretending that every wallet already implements the same hold behavior. { "event type": "pre signature risk packet.v1", "message risk": { "origin": "signatureOrigin | transactionOrigin", "risk class": "impersonation | lookalike domain | unknown", "model score": 0.86, "model authority": "evidence only" }, "wallet action": { "chain label": "eip155:1", "signing method": "eth signTypedData v4", "recipient or spender": "decoded from calldata or typed data", "counterparty status": "new for user", "approval scope": "unlimited | bounded | one time", "deadline or expiration": "timestamp | none" }, "hold review": { "rule id": "new spender unlimited scope unverified origin", "decision": "hold before signature release", "user visible reason": "New spender requests broad token access from an unverified request path.", "lower risk next step": "Reopen from a user-verified entry point or reduce the approval limit." } } The record stays narrow. It says the wallet captured origin, counterparty, approval scope, chain label, and rule before signature release. It does not prove the user's real-world intent, the legal identity behind an address, or the future safety of the spender. A misuse diff is more useful than a slogan. TRM Labs' 2026 crypto crime report https://www.trmlabs.com/reports-and-whitepapers/2026-crypto-crime-report is useful context for evolving illicit-flow behavior, but a chain label remains a data-pipeline claim. External labels should sit next to deterministic wallet facts such as new spender, approval scope, chain label, method, and origin. - model score: 0.86 means refuse the transaction + model score: 0.86 explains why review was raised - chain label: reported cluster means the user is a criminal + chain label: reported cluster is context with source and confidence - approval scope: unlimited is always fraud + approval scope: unlimited is a concrete authority class to display - warning: "be careful" + warning: "new spender, broad token access, unverified request path" Bad product copy should become harder to ship. "This looks risky" gives the user nothing to verify. A stronger warning says: "This approval lets a new spender move this token without another confirmation; the request path is unverified; reopen from a user-verified entry point or reduce the approval limit." The warning names the action, the reason, and a user-verifiable next step. After the user action, the same fields can feed a small review ticket. The ticket should capture origin, wallet event, approval scope, deterministic rule, model score, user-visible reason, user action, support outcome, and final fraud label when known. The ticket does not need the user's full chat history, private keys, seed phrases, or unnecessary message contents. Reviewers need something concrete when a normal flow is interrupted. If the spender is new and the approval is unlimited, a lower-risk retry might use a bounded allowance or a user-verified entry point. A model score without the deterministic rule cannot explain that review path. Before the wallet lets a risky flow continue, run one release check: one source-path fact, one decoded wallet-action fact, one authority-scope fact, and one user-visible hold reason. Without those fields, the product cannot explain this pre-signature hold. The product has a polished guess.