Practical overview
When it fits
Use it when a Go application needs to verify Ethereum signatures as part of accepting signed messages or other input.
Who it is for
- Go developers adding Ethereum signature checks to an application.
- Teams that need to validate typed-data or smart-contract wallet signatures.
Documented uses
- Check a standard Ethereum signature against an address and message.
- Validate a signature over EIP-712 typed data.
- Verify an ERC-1271 signature using an Ethereum-compatible RPC client.
- Check signatures from some supported hardware wallets, including Ledger.
Requirements & limits
The repository is public and lists an Apache-2.0 license.
- The library is written in Go and its examples use go-ethereum packages and types.
- ERC-1271 verification requires an Ethereum-compatible RPC client.
- Hardware-wallet coverage is described as support for some wallets, with Ledger given as an example.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Verify a standard Ethereum elliptic-curve signature in Go
Call SigVerify’s standard signature verifier with an Ethereum address, message bytes, and a hexadecimal signature.
Before you start
- A Go application
- The SigVerify library and go-ethereum common package, as used in the example
Steps
Import
github.com/storyicon/sigverifyandgithub.com/ethereum/go-ethereum/common.Call
sigverify.VerifyEllipticCurveHexSignatureExwith the expected address, the signed message as bytes, and the hexadecimal signature.Handle the returned
validanderrvalues; the README example prints both.
Expected outcome
The call returns a validity result and an error for the standard elliptic-curve signature check.
Guide limitations
- The documented example covers standard elliptic-curve signatures; it does not establish behavior for other signature formats.
- The example’s specific inputs are illustrative and its printed
trueresult is not a verification of other inputs.
Verify an ERC-1271 smart-contract wallet signature in Go
Check an ERC-1271 signature by calling SigVerify with an Ethereum-compatible RPC client.
Before you start
- A Go application
- The SigVerify library and go-ethereum
ethclientpackage - An Ethereum-compatible RPC endpoint
Steps
Import
context, go-ethereumcommonandethclient, andgithub.com/storyicon/sigverify.Create an RPC client with
ethclient.Dialusing the RPC URL, and handle its error as shown in the README.Call
sigverify.VerifyERC1271HexSignaturewith a context, the client, contract-wallet address, message bytes, and hexadecimal signature.Handle the returned validity result and error.
Expected outcome
The call returns a validity result and an error for an ERC-1271 smart-contract wallet signature check.
Guide limitations
- Verification requires an RPC client; the README’s example uses a Polygon RPC URL.
- The documented example’s inputs and printed result do not establish success for other networks, wallets, or signatures.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 16 October 2026
- Original website title
- storyicon/sigverify · Official homepage title · retained in its source language

