File

src/crypto/key/crypto/crypto-implementation.ts

Description

Generic interface to imeplement different algorithms.

Index

Properties
Methods

Methods

generateKeyPair
generateKeyPair()

Generates a new keypair

Returns : Promise<KeyPair>
getSigner
getSigner(privateKeyJWK: JsonWebKey)

creates a signer based on the passed key.

Parameters :
Name Type Optional
privateKeyJWK JsonWebKey No
Returns : Promise<Signer>
getVerifier
getVerifier(publicKeyJWK: JsonWebKey)

creates a verifier based on the passed key.

Parameters :
Name Type Optional
publicKeyJWK JsonWebKey No
Returns : Promise<Verifier>

Properties

alg
alg: string
Type : string
type KeyPair = {
    publicKey: JsonWebKey;
    privateKey: JsonWebKey;
};

type Signer = (data: string) => Promise<string>;

type Verifier = (data: string, signature: string) => Promise<boolean>;

/**
 * Generic interface to imeplement different algorithms.
 */
export interface CryptoImplementation {
    //name of the algorithm
    alg: string;
    /**
     * Generates a new keypair
     */
    generateKeyPair(): Promise<KeyPair>;
    /**
     * creates a signer based on the passed key.
     * @param privateKeyJWK
     */
    getSigner(privateKeyJWK: JsonWebKey): Promise<Signer>;
    /**
     * creates a verifier based on the passed key.
     * @param publicKeyJWK
     */
    getVerifier(publicKeyJWK: JsonWebKey): Promise<Verifier>;
}

results matching ""

    No results matching ""