This initializes the asynchronous proof fetch
Sign the given message using Keyless.
in HexInput format
Signature
Sign the given transaction with Keyless. Signs the transaction and proof to guard against proof malleability.
the transaction to be signed
KeylessSignature
Sign a transaction using Keyless.
the raw transaction
the AccountAuthenticator containing the signature of the transaction, together with the account's public key
Sign a message using Keyless.
the message to sign, as binary input
the AccountAuthenticator containing the signature, together with the account's public key
Note - This function is currently incomplete and should only be used to verify ownership of the KeylessAccount
Verifies a signature given the message.
TODO: Groth16 proof verification
the message that was signed.
the KeylessSignature to verify
boolean
Static
createOptional
address?: AccountAddressOptional
proofOptional
uidStatic
deserializeStatic
fromReadonly
accountAccount address associated with the account
Readonly
audThe value of the 'aud' claim on the JWT, also known as client ID. This is the identifier for the dApp's OIDC registration with the identity provider.
Readonly
ephemeralThe EphemeralKeyPair used to generate sign.
Readonly
jwtThe JWT token used to derive the account
Readonly
pepperA value contains 31 bytes of entropy that preserves privacy of the account. Typically fetched from a pepper provider.
The zero knowledge signature (if ready) which contains the proof used to validate the EphemeralKeyPair.
Readonly
proofThe proof of the EphemeralKeyPair or a promise that provides the proof. This is used to allow for awaiting on fetching the proof.
Readonly
publicThe FederatedKeylessPublicKey associated with the account
Readonly
signingSigning scheme used to sign transactions
Readonly
uidThe claim on the JWT to identify a user. This is typically 'sub' or 'email'.
Readonly
uidThe value of the uidKey claim on the JWT. This intended to be a stable user identifier.
Static
Readonly
PEPPER_
Account implementation for the FederatedKeyless authentication scheme.
Used to represent a FederatedKeyless based account and sign transactions with it.
Use
FederatedKeylessAccount.create()
to instantiate a KeylessAccount with a JWT, proof, EphemeralKeyPair and the address the JWKs are installed that will be used to verify the JWT.When the proof expires or the JWT becomes invalid, the KeylessAccount must be instantiated again with a new JWT, EphemeralKeyPair, and corresponding proof.