keri-controller

Crates.iokeri-controller
lib.rskeri-controller
version
sourcesrc
created_at2024-01-24 15:00:48.248255
updated_at2024-12-11 10:47:01.537273
descriptionKERI Identifier Management Library
homepage
repositoryhttps://github.com/THCLab/keriox
max_upload_size
id1112414
Cargo.toml error:TOML parse error at line 18, column 1 | 18 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
core-team (github:thclab:core-team)

documentation

README

Controller

The Controller repository offers high-level functions that enable users to manage Key Event Log (KEL) and collect other identifiers' KELs for verification purposes. The library requires a third-party key provider that derives public-private key pairs and signatures.

Usage

Most functions require a three step process to either establish new Identifier and its KEL or to append changes to the KEL. The process goes as following:

  • prepare data for external signature;
  • sign data;
  • provide data along with signature.

Controller structure

The Controller structure encapsulates logic for saving incoming KERI events and retrieving them from the database, as well as computing the current state of saved Identifiers. It also provides methods for generating new identifiers based on the provided public keys (incept and finalize_inception).

Managing KEL

The Identifier structure combines the data stored in the Controller with a specific, already established identifier. Its main responsibility is to manage the concrete identifier's Key Event Log, which includes tasks such as generating events, publishing them to witnesses, and adding watchers.

For examples checkout components/controller/tests folder.

Commit count: 1274

cargo fmt