Dart client for managing KERI based Identifiers. See top level README to get acquainted with more generic overview and clients features. For more information about infrastructure see KERI or its whitepaper.
This plugin requires a third party key provider that derives public private key pairs and is able to sign a String using Ed25519 algorithm. For such a usecase, Asymmetric crypto primitives plugin has been designed. The usage of its
signer object along with KERI plugin has been provided as an example for this plugin. Moreover, it is important that the key is in URL safe variant of Base64.
Currently supported functions are:
initKel- Initializes database for storing events.
incept- Creates inception event that needs to be signed externally.
finalizeInception- Finalizes inception (bootstrapping an Identifier and its Key Event Log).
rotate- Creates rotation event that needs to be signed externally.
addWatcher- Creates new reply message with identifier's watcher. It needs to be signed externally and finalized with finalizeEvent.
finalizeEvent- Verifies provided signatures against event and saves it.
resolveOobi- Checks and saves provided identifier's endpoint information.
getKel- Returns Key Event Log in the CESR representation for current Identifier when given a controller.
getCurrentPublicKey- Returns pairs: public key encoded in URL-safe Base64 and signature encoded in hex.
anchor- Creates new Interaction Event along with arbitrary data.
anchorDigest- Creates new Interaction Event along with provided Self Addressing Identifiers.
newIdentifier- Creates an
Identifierobject from the id string.
queryMailbox- Queries own or different mailbox about an identifier.
finalizeQuery- Verifies provided signatures against mailbox query and saves it.
signatureFromHex- Creates a
Signatureobject from given type and hex string.
inceptGroup- Creates group inception event that needs to be signed externally.
finalizeGroupIncept- Finalizes group inception
newPublicKey- Creates a
PublicKeyobject from given key type and Base64 string.
newDataAndSignature- Creates a
DataAndSignatureobject from given data and its hex string signature.
queryWatchers- Queries the watchers about an identifier.
sendOobiToWatcher- Sends given oobi to a connected watcher
notifyWitnesses- Publishes events to the witnesses
broadcastReceipts- Sends witnesses receipts between them
- Controller -- manages Identifiers;
- KERI -- see https://keri.one/ page;
- Test coverage provided in