siwx-evm 0.2.0

Sign In with X
Documentation
  • Coverage
  • 100%
    11 out of 11 items documented1 out of 6 items with examples
  • Size
  • Source code size: 122.37 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.2 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 1m 49s Average build duration of successful builds.
  • all releases: 1m 39s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • qntx/siwx
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • gitctrlx

siwx-evm — Ethereum verification for Sign-In with X

Implements CAIP-122 namespace profile for EIP-155 chains:

  • EIP-191 (personal_sign) — ECDSA recovery-based verification
  • EIP-1271 — smart-contract isValidSignature verification (requires RPC)

Quick start

use siwx::SiwxMessage;
use siwx_evm::{Eip191Verifier, CHAIN_NAME};
use siwx::Verifier;

# async fn run() -> Result<(), Box<dyn std::error::Error>> {
let message = SiwxMessage::new(
    "example.com",
    "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
    "https://example.com/login",
    "1",
    "1",
)?;
let text = siwx_evm::format_message(&message);
// let signature_bytes: [u8; 65] = ...; // from wallet
// Eip191Verifier.verify(&message, &signature_bytes).await?;
# Ok(())
# }