{"uid":"cap_AgMzZOPaBdIFIbgomvkwA","slug":"ethereum-eip-191-signature-verifier-20d38928","name":"Ethereum EIP-191 Signature Verifier","description":"Verifies crypto transactions and returns validation results.","url":"https://payai.agentstools.dev/crypto/verify","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"scheme":{"enum":["eip191","eip712"],"type":"string","description":"eip191 personal_sign or eip712 typed-data"},"message":{"description":"Plain text / 0x-hex (eip191) OR a full typed-data object with types/domain/primaryType/message (eip712)"},"signature":{"type":"string","description":"0x 65-byte signature"},"expected_signer":{"type":"string","description":"Optional address to compare the recovered signer against"}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.003","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.003/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.003","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.003","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_Jp-BGKZERSG4rzaqnVZDR","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.003","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Verifies an Ethereum EIP-191 personal signature, recovers the signer address, and checks it against an expected signer address.","exampleAgentPrompt":"Can you verify that this Ethereum signature was actually created by wallet 0xAbC...123? The original message was 'Login to MyApp at 1700000000' and the signature is 0x4a7b...f3e2 — tell me if the recovered signer matches and what address signed it.","exampleUseCases":[{"title":"Wallet ownership verification for login","prompt":"A user just signed the message 'Authenticate to my dapp nonce:99283' with their MetaMask and gave me signature 0x3fa8...b21c — please verify it was signed by 0xDead...Beef and confirm whether the signer matches."},{"title":"Smart contract call authorization check","prompt":"Before I process this transaction request, verify that the authorization message 'Approve transfer #42 for 500 USDC' was signed by the expected treasury wallet 0x1234...5678 — the signature they provided is 0xa1b2...c3d4."},{"title":"Off-chain governance vote authentication","prompt":"We received a governance vote submission with message 'Vote YES on proposal 7' and signature 0xdeadbeef...cafe — can you recover the signer address and check if it matches delegate wallet 0x9999...0000?"}],"resultDescription":"Returns the recovered Ethereum address derived from the EIP-191 signature, plus a boolean or explicit match result indicating whether the recovered address equals the expected signer address provided in the request.","failureModes":["Invalid or malformed signature hex returns an error or null recovered address","Mismatched message content causes a valid but unexpected signer address to be returned (match=false)","Incorrect expected signer address format (non-checksummed or invalid hex) may cause validation errors","Signature produced with a different signing standard (e.g. EIP-712 typed data instead of EIP-191) will return wrong recovered address","Empty or missing required fields (message, signature) result in a 400-level error"],"whenToPreferThis":"Choose this endpoint when you need to cryptographically verify an EIP-191 personal_sign Ethereum signature in a lightweight API call without running a local Ethereum node or web3 library. Ideal for agents handling wallet-based authentication, off-chain authorization checks, or governance vote validation where recovering the signer address and confirming it matches an expected wallet is the primary goal.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T06:50:22.413Z","isFirstParty":false}