Skip to content

FrameSignature

Utilities for constructing, validating, and encoding EIP-8141 signature entries.

Supports FrameSignature.Arbitrary, FrameSignature.Secp256k1, and FrameSignature.P256 entries. An empty payload selects the canonical transaction signing hash.

Examples

Creating Signature Entries

Use FrameSignature.from to wrap arbitrary witness bytes.

import { FrameSignature } from 'ox'
 
const entry = FrameSignature.from('0xaabb')
{ payload: '0x', scheme: 'arbitrary', signature: '0xaabb' }

Functions

NameDescription
FrameSignature.assertAsserts that a FrameSignature.FrameSignature is structurally valid.
FrameSignature.fromCoerces a value into a FrameSignature.FrameSignature.
FrameSignature.fromRpcConverts an RPC signature entry to a structured frame signature.
FrameSignature.fromTupleConverts a FrameSignature.Tuple to a structured FrameSignature.FrameSignature.
FrameSignature.toRpcConverts a structured frame signature to its RPC representation.
FrameSignature.toTupleConverts a FrameSignature.FrameSignature to its RLP-ready FrameSignature.Tuple.
FrameSignature.validateReturns whether a FrameSignature.FrameSignature is structurally valid.

Errors

NameDescription
FrameSignature.InvalidErrorThrown when frame signature metadata or encoding is invalid.

Types

NameDescription
FrameSignature.ArbitraryContract-defined signature bytes.
FrameSignature.FrameSignatureAn EIP-8141 signature entry. Empty payload selects the transaction signing hash.
FrameSignature.P256A P-256 signature entry.
FrameSignature.RpcJSON-RPC representation of a frame signature.
FrameSignature.SchemeA supported numeric or named frame signature scheme.
FrameSignature.Secp256k1A secp256k1 signature entry.
FrameSignature.TupleRLP-ready signature entry. The payload occupies the specification's msg field.