Constructs an instance with the specified parameters for cryptographic operations.
Get the authentication key for the keyless public key.
AuthenticationKey - The authentication key derived from the keyless public key.
Serializes the current instance into a format suitable for transmission or storage. This function ensures that all relevant fields are properly serialized, including the proof and optional fields.
The serializer instance used to perform the serialization.
Verifies the validity of a signature for a given message.
The arguments for signature verification.
The message that was signed.
The signature to verify against the message.
true if the signature is valid; otherwise, false.
Static
createCreates a KeylessPublicKey from the JWT components plus pepper
the client ID of the application
the iss of the identity
The pepper used to maintain privacy of the account
the key to use to get the uidVal in the JWT token
the value of the uidKey in the JWT token
KeylessPublicKey
Static
deserializeDeserializes a ZeroKnowledgeSig object from the provided deserializer. This function allows you to reconstruct a ZeroKnowledgeSig instance from its serialized form.
The deserializer instance used to read the serialized data.
A new instance of ZeroKnowledgeSig.
Static
fromCreates a KeylessPublicKey instance from a JWT and a pepper value. This function is useful for generating a public key that can be used for authentication based on the provided JWT claims and pepper.
The arguments for creating the KeylessPublicKey.
The JSON Web Token to decode.
The pepper value used in the key creation process.
Optional
uidAn optional key to retrieve the unique identifier from the JWT payload, defaults to "sub".
A KeylessPublicKey instance created from the provided JWT and pepper.
Static
isChecks if the provided public key is a valid instance by verifying its structure and types.
The public key to validate.
A boolean indicating whether the public key is a valid instance.
Static
isDetermines if the provided public key is an instance of KeylessPublicKey.
The public key to check.
A boolean indicating whether the public key is a KeylessPublicKey instance.
Static
loadLoads a KeylessPublicKey instance from the provided deserializer. This function is used to deserialize the necessary components to create a KeylessPublicKey.
The deserializer used to extract the string and byte data.
A new instance of KeylessPublicKey.
Readonly
idA value representing a cryptographic commitment to a user identity.
It is calculated from the aud, uidKey, uidVal, pepper.
Readonly
issThe value of the 'iss' claim on the JWT which identifies the OIDC provider.
Static
Readonly
ID_The number of bytes that idCommitment
should be
Represents a Keyless Public Key used for authentication.
This class encapsulates the public key functionality for keyless authentication, including methods for generating and verifying signatures, as well as serialization and deserialization of the key. The KeylessPublicKey is represented in the SDK as
AnyPublicKey
.