11 releases (6 breaking)

new 0.14.2 Dec 11, 2024
0.14.0 Nov 25, 2024
0.4.0 May 21, 2024
0.2.0 Mar 22, 2024

#408 in Cryptography

Download history 150/week @ 2024-08-26 139/week @ 2024-09-02 13/week @ 2024-09-16 23/week @ 2024-09-23 10/week @ 2024-09-30 1/week @ 2024-10-07 2/week @ 2024-10-14 1/week @ 2024-11-11 2/week @ 2024-11-18 165/week @ 2024-11-25 110/week @ 2024-12-02

278 downloads per month

EUPL-1.2

790KB
18K SLoC

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.

Dependencies

~43–59MB
~1M SLoC