Cryptographic/ecdsa library

🔐 ECDSA (Elliptic Curve Digital Signature Algorithm) Implementation

A production-ready implementation of the ECDSA digital signature algorithm used in Bitcoin and many other blockchain systems. This implementation provides secure digital signatures using elliptic curve cryptography with configurable curves.

Features:

  • RFC 6979 compliant ECDSA implementation
  • Support for secp256k1 curve (Bitcoin standard)
  • Deterministic signature generation (RFC 6979)
  • Optimized for performance with minimal memory allocation
  • Comprehensive error handling and validation
  • Thread-safe implementation suitable for concurrent environments
  • Produces standard ECDSA signatures (r, s) values

Time complexity: O(log n) for signature generation and verification Space complexity: O(1) constant space usage

Example:

final signature = ECDSA.sign('Hello, World!', privateKey);
final isValid = ECDSA.verify('Hello, World!', signature, publicKey);
print('Signature valid: $isValid');

Classes

ECDSA
ECDSA digital signature algorithm implementation
ECDSACurve
ECDSA curve parameters (secp256k1)
ECDSAKeyPair
ECDSA key pair
ECDSASignature
ECDSA signature structure
ECPoint
Elliptic curve point