Skip to content

v0.1.0

Choose a tag to compare

@sgbett sgbett released this 14 Feb 04:34
· 975 commits to master since this release

Initial release of the BSV Ruby SDK.

Added

Primitives

  • secp256k1 elliptic curve operations (point arithmetic, scalar multiplication)
  • ECDSA signing and verification with RFC 6979 deterministic nonces
  • Public and private key handling (WIF import/export, compressed/uncompressed formats)
  • Base58Check encoding and decoding
  • Hash functions: SHA-256, RIPEMD-160, Hash160, SHA-512, HMAC
  • BIP-32 hierarchical deterministic key derivation
  • BIP-39 mnemonic phrase generation and seed derivation
  • ECIES encryption and decryption (BIE1 format)
  • Bitcoin Signed Message (BSM) signing and verification

Script

  • Opcode constants (full set)
  • Script chunk representation, parsing, serialisation
  • Script templates: P2PKH, P2PK, P2MS (multisig), OP_RETURN data
  • Script type detection (including read-only recognition of legacy types)
  • Script builder API for programmatic construction
  • Script interpreter with stack ops, arithmetic, crypto, flow control, splice, and bitwise ops

Transaction

  • Transaction construction and serialisation (raw format)
  • BIP-143 sighash computation (all hash types with FORKID)
  • Transaction signing with configurable sighash flags
  • BEEF serialisation (BRC-95/BRC-96)
  • Merkle path representation and verification
  • Fee estimation, script verification, unlocking script templates

Network

  • ARC broadcaster for transaction submission
  • WhatsOnChain chain data provider
  • Basic wallet functionality

Testing

  • Cross-SDK test vectors from Go, TypeScript, and Python reference implementations
  • NIST and RFC hash function test vectors
  • Bitcoin Core script interpreter test suite
  • Protocol conformance specs for opcodes, sighash flags, and transaction templates

gem install bsv-sdk