Skip to main content

IKeyManager interface

Key manager interface.

This defines an interface for a plugin that orchestrates various implementations of AbstractKeyManagementSystem.

See KeyManager for a reference implementation.

The methods of this plugin are used automatically by other plugins, such as DIDManager, CredentialPlugin, or DIDComm to perform their required cryptographic operations using the managed keys.

Signature:

export interface IKeyManager extends IPluginMethodMap

Extends: IPluginMethodMap

Methods

MethodDescription
keyManagerCreate(args)Creates and returns a new key
keyManagerDecryptJWE(args)(BETA) Decrypts data This API may change without a BREAKING CHANGE notice.
keyManagerDelete(args)Deletes a key
keyManagerEncryptJWE(args)(BETA) Encrypts data This API may change without a BREAKING CHANGE notice.
keyManagerGet(args)Returns an existing key
keyManagerGetKeyManagementSystems()Lists available key management systems
keyManagerImport(args)Imports a created key
keyManagerSharedSecret(args)

Compute a shared secret with the public key of another party.

This computes the raw shared secret (the result of a Diffie-Hellman computation) To use this for symmetric encryption you MUST apply a KDF on the result.

keyManagerSign(args)Generates a signature according to the algorithm specified.
keyManagerSignEthTX(args)Signs Ethereum transaction
keyManagerSignJWT(args)Signs JWT