siwx-evm 0.3.0

Sign In with X
Documentation

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(())
# }