BSV.Base58 (bsv_sdk v1.1.0)

Copy Markdown View Source

Base58 and Base58Check encoding/decoding using the Bitcoin alphabet.

Summary

Functions

Base58Check decode, returning version byte and payload.

Base58Check decode, raising on error.

Base58Check decode raw data. Returns {:ok, data} or {:error, reason}.

Base58Check encode with version byte.

Base58Check encode raw data (no version byte splitting). Appends 4-byte checksum.

Decode Base58 string to binary.

Decode Base58 string, raising on error.

Encode binary to Base58 string.

Functions

check_decode(string)

@spec check_decode(String.t()) ::
  {:ok, {non_neg_integer(), binary()}} | {:error, String.t()}

Base58Check decode, returning version byte and payload.

check_decode!(string)

@spec check_decode!(String.t()) :: {non_neg_integer(), binary()}

Base58Check decode, raising on error.

check_decode_raw(string)

@spec check_decode_raw(String.t()) :: {:ok, binary()} | {:error, String.t()}

Base58Check decode raw data. Returns {:ok, data} or {:error, reason}.

check_encode(payload, version_byte)

@spec check_encode(binary(), non_neg_integer()) :: String.t()

Base58Check encode with version byte.

check_encode_raw(data)

@spec check_encode_raw(binary()) :: String.t()

Base58Check encode raw data (no version byte splitting). Appends 4-byte checksum.

decode(string)

@spec decode(String.t()) :: {:ok, binary()} | {:error, String.t()}

Decode Base58 string to binary.

decode!(string)

@spec decode!(String.t()) :: binary()

Decode Base58 string, raising on error.

encode(binary)

@spec encode(binary()) :: String.t()

Encode binary to Base58 string.