Skip to main content

Interface: PasskeyAuthenticatorLike

A passkey authenticator.

BCS

The BCS serialized form for this type is defined by the following ABNF:

passkey-bcs = bytes               ; where the contents of the bytes are
; defined by <passkey>
passkey = passkey-flag
bytes ; passkey authenticator data
client-data-json ; valid json
simple-signature ; required to be a secp256r1 signature

client-data-json = string ; valid json

See https://www.w3.org/TR/webauthn-2/#dictdef-collectedclientdata for the required json-schema for the client-data-json rule. In addition, IOTA currently requires that the CollectedClientData.type field is required to be webauthn.get.

Note: Due to historical reasons, signatures are serialized slightly different from the majority of the types in IOTA. In particular if a signature is ever embedded in another structure it generally is serialized as bytes meaning it has a length prefix that defines the length of the completely serialized signature.

Methods

authenticatorData()

authenticatorData(): ArrayBuffer;

Opaque authenticator data for this passkey signature.

See https://www.w3.org/TR/webauthn-2/#sctn-authenticator-data for more information on this field.

Returns

ArrayBuffer


challenge()

challenge(): ArrayBuffer;

The parsed challenge message for this passkey signature.

This is parsed by decoding the base64url data from the client_data_json.challenge field.

Returns

ArrayBuffer


clientDataJson()

clientDataJson(): string;

Structured, unparsed, JSON for this passkey signature.

See https://www.w3.org/TR/webauthn-2/#dictdef-collectedclientdata for more information on this field.

Returns

string


publicKey()

publicKey(): PasskeyPublicKeyLike;

The passkey public key.

Returns

PasskeyPublicKeyLike


signature()

signature(): SimpleSignatureLike;

The passkey signature.

Returns

SimpleSignatureLike