Skip to main content

Crate siwx_svm

Crate siwx_svm 

Source
Expand description

§siwx-svm — Solana verification for Sign-In with X

Implements CAIP-122 namespace profile for Solana:

  • Ed25519 signature verification (solana:ed25519)

§Quick start

use siwx::SiwxMessage;
use siwx_svm::{Ed25519Verifier, CHAIN_NAME};
use siwx::Verifier;

let message = SiwxMessage::new(
    "example.com",
    "GwAF45zjfyGzUbd3i3hXxzGeuchzEZXwpRYHZM5912F1",
    "https://example.com/login",
    "1",
    "5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d",
)?;
// let pubkey: [u8; 32] = ...; // Ed25519 public key
// let sig_bytes: [u8; 64] = ...; // Ed25519 signature
// Ed25519Verifier::new(pubkey).verify(&message, &sig_bytes).await?;

Structs§

Ed25519Verifier
Ed25519 signature verifier for Solana.

Constants§

CHAIN_NAME
Human-readable chain name for the Solana namespace, used in the CAIP-122 preamble line.
SIG_TYPE
CAIP-122 signature type for Solana Ed25519.

Functions§

format_message
Convenience: format a SiwxMessage into the Solana CAIP-122 signing string.
validate_address
Validate that address is a valid base58-encoded Solana public key (32 bytes decoded).