Loading vLEI.wiki
Fetching knowledge base...
Fetching knowledge base...
This comprehensive explanation has been generated from 93 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.
Sally is a purpose-built verification service and reporting server for the vLEI ecosystem that receives credential presentations and revocation notices, verifies their structural and cryptographic , and forwards validated data via HTTP POST to configured webhook URLs, enabling the Reporting API to track which vLEIs have been issued to Legal Entities.
Sally is the vLEI Audit Reporting Agent, a specialized Python-based verification service implementation designed specifically for the verifiable Legal Entity Identifier (vLEI) ecosystem governed by GLEIF. The implementation serves as a critical infrastructure component that bridges credential presentations from vLEI ecosystem participants to GLEIF's reporting systems.
Programming Language: Python
Purpose and Scope: Sally functions as both a verification service and a reporting server, handling the complete workflow of receiving ACDC credential presentations, performing cryptographic validation, and forwarding verified data to external systems via webhooks. The implementation is purpose-built for the vLEI ecosystem and is not a general-purpose credential verifier.
Relationship to Protocol Specifications: Sally implements the verification side of the IPEX (Issuance and Presentation EXchange) protocol, specifically handling the presentation exchange workflow defined in the ACDC and KERI specifications. It operates as a verifier in the credential ecosystem, validating presentations against KERI key event logs and ACDC schemas.
Sally performs three primary verification operations:
Structural Validation: Verifies that received credential presentations conform to the expected ACDC schema structure, ensuring all required fields are present and properly formatted according to JSON Schema definitions.
Cryptographic Verification: Validates the cryptographic integrity of presented credentials by:
Revocation Processing: Handles notices of credential revocation events by:
Sally implements a webhook-based reporting mechanism that enables integration with external systems:
The primary use case for Sally is enabling the GLEIF Reporting API to maintain visibility into the vLEI ecosystem:
Sally operates in what KERI terms direct mode, implementing a synchronous, peer-to-peer communication model:
Based on the source documentation, Sally is available as open-source software maintained by GLEIF-IT on GitHub at the repository GLEIF-IT/sally.
Sally requires the following components to be operational:
The implementation requires configuration of:
The typical workflow for Sally involves:
Presentation Receipt: Sally receives a credential presentation from a vLEI ecosystem participant (typically via HTTP POST to Sally's endpoint)
Schema Resolution: Sally resolves the credential's schema using the schema SAID and configured OOBI endpoints
Structural Validation: The credential is validated against its JSON Schema to ensure structural correctness
Cryptographic Verification: Sally performs the following cryptographic checks:
Webhook Notification: Upon successful verification, Sally POSTs the verified credential data to configured webhook URLs
For revocation events:
Revocation Notice Receipt: Sally receives a revocation event notification
Event Verification: The revocation event is cryptographically verified:
State Update: Sally updates its internal state to reflect the revoked credential
Webhook Notification: The revocation is forwarded to configured webhooks
Sally integrates with other vLEI ecosystem components:
While Sally is purpose-built for vLEI, the broader KERI ecosystem includes other verification implementations:
Sally integrates with:
The KERI ecosystem includes verification capabilities in multiple languages:
Sally implements a multi-stage verification pipeline:
Credential Presentation → Schema Resolution → Structural Validation →
Cryptographic Verification → State Update → Webhook Notification
Each stage can fail independently, with appropriate error handling and logging at each step.
Trust Assumptions:
Attack Surface:
Sally's performance characteristics:
Sally is deployed in the production vLEI ecosystem:
Sally is used in vLEI development workflows:
Documentation indicates potential future enhancements:
Future versions may integrate with watcher networks to:
Potential enhancements include:
Sally exemplifies several KERI architectural principles:
Sally demonstrates end-verifiability by:
While Sally is a specific service, the credentials it verifies exhibit ambient verifiability:
Sally implements zero-trust principles:
Sally occupies a specific niche in the vLEI ecosystem:
This focused role makes Sally a critical but specialized component in the vLEI infrastructure, enabling GLEIF to maintain oversight of the ecosystem without becoming a centralized authority over credential issuance or usage.
Sally implements a stateless verification service that does not maintain long-term credential storage. Each verification is performed independently, with no persistent state beyond configuration.
Implementers should note that Sally's webhook mechanism requires:
Sally's performance is heavily dependent on schema resolution speed:
Verifying KELs involves:
Sally's direct mode operation provides:
When integrating Sally into vLEI workflows:
Scalability:
Monitoring:
Security:
When testing Sally integration: