WalletShield
Built at Meta Global AI Developer Hackathon · Oct 26, 2026 · Remote

Project name: WalletShield Tagline: More context before you sign: an AI technology-control copilot that decodes wallet requests, collects evidence, and lets Muse assess the risk — while the decision stays in your wallet. Live app: https://walletshield.yollin.me WalletShield is an EVM wallet security prototype for pre-sign risk advice. A wallet confirmation can contain a contract address, encoded calldata, or a typed signature whose practical meaning is difficult to judge — an approval may authorize later spending without an immediate transfer, and a message that looks like a login can instead contain asset authority. WalletShield translates a supported unsigned transaction or message into understandable permissions, asset exposure, execution observations, and unresolved checks, for a user deciding whether to approve a request in MetaMask. How it works: the MetaMask Snap (@firexiyi/walletshield-snap) receives the transaction and message insight hooks MetaMask delivers and forwards the request to the backend. The backend validates and decodes it, plans and collects evidence — chain reads via Infura/trusted RPC, isolated Anvil fork execution, GoPlus intelligence, Sourcify source matches — and forms qualitative signals with local rules. Only then does it send a bounded evidence packet to Meta Muse Wonder (muse-wonder-1.0). Muse returns a risk indicator (an integer 0–100, or null) across six qualitative dimensions — Authority, Exposure, Execution, Identity, Protocol, Deception — each citing evidence IDs. The backend validates the output before the report is shown in the Snap and companion website; the user confirms or cancels in MetaMask. Coverage: 30 analysis profiles and 67 representative lab cases (51 transactions, 16 signatures) across 25 profiles — transfers and asset permissions, signatures and login messages (Permit, Permit2, ERC-3009, SIWE-like), swaps, vaults/lending, staking, bridges, batch calls, EIP-7702 and more. A hosted Test lab (chain 31338) and public-network workflows let anyone run the comparison trio: unlimited approval scored 78, limited approval 32, revocation 8 in recorded live runs. Why it matters (Impact) Blind signing is where wallet users lose assets: the confirmation screen shows data, not meaning. WalletShield adds an evidence-based explanation at exactly that decision point — and is honest about its role: it is advisory. It enforces no block, holds no private keys, and cannot recover funds; it makes the user's own decision an informed one, with a reviewable history. The project prototypes team lead Yukui McDonald's PhD research at the University of Delaware on AI-driven cybersecurity risk assessment and governance for digital wallets. How we used Meta AI (Tooling) muse-wonder-1.0 (Meta Model Responses API) is the only source of numeric risk scores. It receives a structured, evidence-bounded packet — never raw keywords — and has no browsing, wallet, or RPC tools of its own. The backend checks its citations, subjects, units, and claims before accepting a result; it never sums fixed weights or fabricates a number when the model fails or abstains. Abstention is a valid outcome: no number is sometimes the correct result. Technical notes (Depth) React + Vite + TypeScript companion; Fastify + Zod backend; viem decoding with exact-integer handling; SQLite persistence; Node.js 24 behind an HTTPS reverse proxy. Hosted identity uses one-use login challenges with EOA or deployed ERC-1271 verification (bounded read-only STATICCALL); reports are scoped to the verified identity; Snap credentials are stored as hashes. Validation record (Oct 28, 2026): 624 unit/regression tests passed, 0 failed; the offline AI validator accepted 12 valid abstentions and rejected 120 adversarial variants with zero model calls; a live Muse harness ran 15 runs across 13 cases (19 API calls). Resource budgets are persistent: 100 model attempts per backend per day, 20 per verified identity per day. Honest boundaries (from the guide) The Snap analyzes only hooks MetaMask actually delivers; permission, session, and UserOperation summaries can require explicit dApp integration. Scores are uncalibrated advisory indicators, not probabilities. Counts describe implementation and examples, not a protection rate. Team — listed here because the picker cannot find them A note on the team picker: the submission form's team picker cannot find our other team members — it returns "No approved attendees found" for each of them — so we list the full team here instead: • Yukui McDonald — Team Lead and Architect — ukeimcd@udel.edu • Patrick McDonald — digital currency and trading regulatory analyst — studyfrog123@yahoo.com • Shun Zhang — developer — xiyihuo@gmail.com • Xiaoyue He — web designer — yollinhe1013@gmail.com Contact: applebearscabinet26@gmail.com