Loading vLEI.wiki
Fetching knowledge base...
Fetching knowledge base...
This comprehensive explanation has been generated from 18 GitHub source documents. All source documents are searchable here.
Last updated: October 7, 2025
This content is meant to be consumed by AI agents via MCP. Click here to get the MCP configuration.
Note: In rare cases it may contain LLM hallucinations.
For authoritative documentation, please consult the official GLEIF vLEI trainings and the ToIP Glossary.
Reconciliation is the process by which a [validator](/concept/validator) or [controller](/concept/controller) decides whether to accept a forked version of a [KEL](/concept/kel) (Key Event Log) when [duplicity](/concept/duplicity) is detected, enabling potential recovery from [key compromise](/concept/key-compromise) without abandoning the [AID](/concept/aid).
Reconciliation is the process in which a controller or validator decides whether to accept a fork of the KEL (Key Event Log). This represents a decision-making mechanism that addresses situations where multiple verifiable but inconsistent versions of a KEL exist for the same AID (Autonomic Identifier).
The source materials provide a minimal but specific definition: reconciliation fundamentally involves evaluating a forked KEL and making a decision about acceptance. The term "fork" refers to situations where divergent versions of a KEL have emerged for the same identifier, creating what KERI terms duplicity - the existence of more than one version of a verifiable KEL for a given AID.
The documentation explicitly identifies two specific benefits of the reconciliation mechanism:
Reconciliation enables the possibility that controllers might not have to abandon their identifier after key compromise. This is stated as a potential outcome rather than a guaranteed result - the sources use language like "You might not have to abandon your identifier" to indicate this is a possible benefit in certain circumstances, not an automatic recovery mechanism.
This advantage addresses a critical operational concern in identifier systems: the cost and disruption of identifier abandonment. When key compromise occurs, the ability to potentially recover and continue using the same identifier preserves associated reputation, relationships, and system state that would otherwise be lost with identifier replacement.
Validators implementing reconciliation must:
Duplicity Detection: Implement robust mechanisms to detect when multiple verifiable KEL versions exist for the same AID. This requires maintaining state across KEL observations and comparing event sequences.
Evidence Collection: Gather comprehensive evidence including witness receipts, watcher first-seen records, and pre-rotation commitments. The OOBI protocol enables discovery of additional evidence sources.
Decision Algorithms: Implement the reconciliation decision logic based on:
State Management: Maintain reconciliation state including:
Controllers must prepare for potential reconciliation:
Pre-rotation Management: Securely generate and store pre-rotated keys offline. Use hierarchical deterministic key generation for systematic recovery.
Monitoring Infrastructure: Deploy watcher networks to detect duplicity early. Implement automated alerts when forks are detected.
Recovery Procedures: Document and test recovery rotation procedures. Ensure ability to quickly execute recovery rotations using pre-committed keys.
Witness Pool Management: Configure robust witness pools with appropriate TOAD thresholds. Use geographically and administratively diverse witnesses.
Infrastructure components supporting reconciliation:
Receipt Generation: Witnesses must generate consistent, timely receipts for all observed events. Implement policies strictly.
The reconciliation or cleanup process has restricted observability within the network. The sources note that "only few people will see your reconciliation or clean up," indicating that fork resolution does not require network-wide disclosure or coordination.
This limited visibility characteristic provides operational privacy during recovery scenarios. Rather than broadcasting compromise and recovery details to all participants in the trust domain, the reconciliation mechanism allows targeted resolution with minimal exposure of the security incident.
While the reconciliation definition itself is minimal, understanding its role requires recognizing its position within KERI's broader duplicity handling architecture:
Reconciliation operates downstream from KERI's duplicity detection mechanisms. The KERI specification establishes that duplicity exists when more than one verifiable version of a KEL is observed for a given AID. Detection mechanisms include:
Reconciliation is the process invoked after duplicity has been detected and verified, representing the decision phase rather than the detection phase.
Validators in KERI determine the authoritative key state for an AID by evaluating KELs. The validator role, as defined in the source materials, involves determining "the current authoritative key set for an identifier from at least one key event (receipt) log." When multiple conflicting KELs exist, reconciliation becomes the mechanism by which a validator decides which version to accept as authoritative.
This connects reconciliation to the fundamental validator function: establishing control authority over identifiers. Without reconciliation, validators would lack a defined process for resolving conflicts when presented with forked event logs.
The KERI specification establishes first-seen as a foundational principle: "the first instance of a Message received by any Witness or Watcher. The first-seen event is always seen, and can never be unseen." This temporal precedence mechanism provides an objective basis for reconciliation decisions, though the specific procedures for applying first-seen policies during reconciliation are not detailed in the reconciliation-specific documentation.
Based on the available documentation, reconciliation exhibits these characteristics:
Reconciliation is explicitly described as a decision process - deciding "whether to accept a fork" or not. This binary framing indicates that reconciliation results in either:
The sources do not document intermediate states, partial acceptance, or graduated reconciliation outcomes.
The documentation specifically identifies the controller as the entity performing reconciliation: "the process in which a controller decides whether to accept a fork." This positions reconciliation as an action taken by the entity with control authority over the identifier, rather than a network-wide consensus process or validator-driven procedure.
However, validators also perform reconciliation when evaluating KELs for trust decisions, suggesting reconciliation operates at multiple levels within the KERI ecosystem.
The stated advantage of "only few people will see your reconciliation or clean up" indicates reconciliation is designed to minimize the visibility and coordination requirements for fork resolution. This contrasts with blockchain-style consensus mechanisms that require network-wide agreement on canonical state.
Reconciliation intersects with several other KERI protocol features, though the specific integration details are not comprehensively documented in the reconciliation-specific sources:
The KERI architecture employs pre-rotation, where cryptographic commitments to next keys are established in previous events. This mechanism provides a foundation for distinguishing legitimate rotations from unauthorized forks during reconciliation, as authorized rotations use pre-committed keys while attacks would require non-committed keys.
The KERI specification establishes witness-based validation through KAACE (KERI's Agreement Algorithm for Control Establishment). Witnesses provide receipts that establish event observation, and their agreement patterns likely inform reconciliation decisions, though the specific witness role in reconciliation procedures is not detailed in the available sources.
The stated advantage of potential identifier retention "after key compromise" connects reconciliation to recovery rotation scenarios. When keys are compromised, controllers can execute recovery rotations using pre-committed keys to establish new control authority. Reconciliation appears to be the process by which such recovery rotations are evaluated and potentially accepted by validators.
The source materials provide only a minimal definition of reconciliation with two stated advantages. Specific details about reconciliation procedures, decision criteria, implementation requirements, and integration with other KERI mechanisms are not documented in the reconciliation-specific sources. The broader KERI specification likely contains additional reconciliation details delegated to sections on duplicity handling, witness consensus, and key state determination.
The attribution to Samuel Smith from a January 2, 2024 Zoom meeting indicates this definition represents authoritative guidance on KERI protocol behavior during fork scenarios, though it appears to be an outline or summary rather than a complete technical specification of the reconciliation process.
Reconciliation represents a critical decision point in KERI's security architecture. The ability to potentially recover from key compromise without identifier abandonment provides operational resilience, while the limited visibility of reconciliation protects operational security during recovery. However, the minimal documentation indicates that reconciliation is likely a complex mechanism with detailed procedures specified elsewhere in the KERI architecture, rather than a simple accept/reject decision at the protocol level.
Record Preservation: Watchers must maintain complete KEL copies and first-seen timestamps. These records provide crucial evidence for reconciliation.
Evidence Provision: Implement APIs for validators to query witness receipts and watcher observations during reconciliation.
Timing Attacks: Implement protections against attackers manipulating timing to influence reconciliation. Use multiple independent time sources.
Witness Collusion: Design witness pools to resist collusion. Use threshold schemes that require supermajority agreement.
Evidence Integrity: Cryptographically sign all evidence (receipts, observations). Verify signatures during reconciliation.
Recovery Key Protection: Pre-rotated recovery keys must be protected with highest security. Compromise of recovery keys enables irreconcilable duplicity.
Reconciliation Scenarios: Test various reconciliation scenarios including:
Evidence Simulation: Create test environments with simulated witnesses, watchers, and attackers to validate reconciliation logic.
Performance Testing: Measure reconciliation latency under various conditions. Optimize evidence collection and evaluation.
Reconciliation is supported across KERI implementations: