web3_universal_crypto library

Pure Dart cryptographic primitives for Web3 operations.

This library provides cryptographic functions needed for blockchain operations:

  • secp256k1 elliptic curve operations
  • Ed25519 curve (Solana, Polkadot)
  • Schnorr signatures (Bitcoin Taproot, BIP-340)
  • Keccak-256 hashing (Ethereum)
  • SHA-256/512 hashing (Bitcoin/BIP standards)
  • HMAC-SHA256/512 (BIP-32/39)
  • PBKDF2-HMAC-SHA512 (BIP-39 seed derivation)
  • RIPEMD-160 (Bitcoin HASH160)
  • Base58Check encoding (Bitcoin addresses)
  • Bech32/Bech32m encoding (SegWit/Taproot addresses)
  • BIP-39 mnemonic generation and validation
  • BIP-32/44 hierarchical deterministic key derivation

Classes

AES
Pure Dart implementation of AES-128 block cipher and CTR mode.
Base58
Base58Check encoding used by Bitcoin and other UTXO chains.
Bech32
Bech32 encoding (BIP-173) for SegWit addresses.
Bip39
Pure Dart implementation of BIP-39 mnemonic phrase generation and validation.
CurveFactory
Factory class for creating curve instances.
CurveInterface
Abstract interface for elliptic curve operations.
Ed25519
Pure Dart implementation of Ed25519 elliptic curve.
Ed25519HdWallet
Pure Dart implementation of SLIP-0010 Ed25519 HD Wallet.
Ed25519KeyPair
Ed25519 key pair.
HDWallet
Pure Dart implementation of BIP-32/44 Hierarchical Deterministic (HD) wallet.
HmacSha256
HMAC-SHA256 implementation per RFC 2104.
HmacSha512
HMAC-SHA512 implementation per RFC 2104.
Keccak256
Pure Dart implementation of Keccak-256 hash function.
KeystoreV3
Implements the Ethereum Keystore V3 specification.
Pbkdf2
PBKDF2 (Password-Based Key Derivation Function 2) per RFC 2898.
Ripemd160
RIPEMD-160 hash function.
SchnorrKeyPair
Represents a Schnorr key pair (BIP-340).
SchnorrSignature
Pure Dart implementation of Schnorr signatures (BIP-340).
Scrypt
Secp256k1
Pure Dart implementation of secp256k1 elliptic curve operations.
Sha256
SHA-256 hash function (FIPS 180-4).
Sha512
SHA-512 hash function (FIPS 180-4).
Sr25519
Sr25519 elliptic curve implementation for Polkadot.
Sr25519KeyPair
Represents an Sr25519 key pair.