The BitcoinSigner class encapsulates functionality for signing Bitcoin messages, transactions,
and Schnorr-based transactions using ECDSA (Elliptic Curve Digital Signature Algorithm) and
related cryptographic operations.
The BitcoinVerifier class encapsulates functionality for verifying Bitcoin transactions,
Schnorr-based transactions, and messages using ECDSA (Elliptic Curve Digital Signature Algorithm)
and related cryptographic operations.
The EcdsaSigningKey class represents a key pair for ECDSA (Elliptic Curve Digital Signature Algorithm) signing.
It encapsulates the private key and provides methods for signing digests and generating deterministic signatures.
The ECDSAVerifyKey class represents a key for ECDSA (Elliptic Curve Digital Signature Algorithm) verification.
It encapsulates the public key and provides a method for verifying ECDSA signatures against a given digest.