Interface EncryptionAlgorithm<I, Asym, G>

WebCrypto based encryption algorithm implementation.

interface EncryptionAlgorithm {
    cryptoGenerate: ((params, extractable) => Promise<If<Asym, GeneratedKeyPair<I>, GeneratedSecretKey<I>, never>>);
    importSpki?: ((spki, der) => Promise<CryptoAlgorithm.PublicKey<I>>);
    keyUsages: If<Asym, Record<"private" | "public", readonly KeyUsage[]>, Record<"secret", readonly KeyUsage[]>, {}>;
    makeLLDecrypt: If<Asym, ((key) => LLDecrypt), ((key) => LLDecrypt), unknown>;
    makeLLEncrypt: If<Asym, ((key) => LLEncrypt), ((key) => LLEncrypt), unknown>;
    uuid: string;
}

Type Parameters

  • I = any

  • Asym extends boolean = any

  • G = any

Hierarchy

Properties

cryptoGenerate: ((params, extractable) => Promise<If<Asym, GeneratedKeyPair<I>, GeneratedSecretKey<I>, never>>)

Type declaration

importSpki?: ((spki, der) => Promise<CryptoAlgorithm.PublicKey<I>>)

Type declaration

keyUsages: If<Asym, Record<"private" | "public", readonly KeyUsage[]>, Record<"secret", readonly KeyUsage[]>, {}>

Type declaration

    makeLLDecrypt: If<Asym, ((key) => LLDecrypt), ((key) => LLDecrypt), unknown>

    Type declaration

    Type declaration

    makeLLEncrypt: If<Asym, ((key) => LLEncrypt), ((key) => LLEncrypt), unknown>

    Type declaration

    Type declaration

    uuid: string

    Identifies an algorithm in storage. This should be changed when the serialization format changes.

    Generated using TypeDoc