Onchain.Signature (onchain v0.16.0)

Copy Markdown View Source

A secp256k1 signature with integer scalars and an optional recovery ID.

Summary

Functions

Parses a canonical DER ECDSA signature, rejecting invalid scalars and encodings.

Normalizes s while preserving recovery by flipping the parity bit.

Types

t()

@type t() :: %Onchain.Signature{r: pos_integer(), recid: 0..3 | nil, s: pos_integer()}

Functions

from_der(arg1)

@spec from_der(binary()) :: {:ok, t()} | {:error, :invalid_signature}

Parses a canonical DER ECDSA signature, rejecting invalid scalars and encodings.

normalize(signature)

@spec normalize(t()) :: t()

Normalizes s while preserving recovery by flipping the parity bit.