Loading vLEI.wiki
Fetching knowledge base...
Fetching knowledge base...
This comprehensive explanation has been generated from 28 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.
Full disclosure is a graduated disclosure mechanism in [ACDC](/concept/acdc) systems that reveals complete detailed information of previously compact or partially disclosed field maps, with context-dependent meaning: in [selective disclosure](/concept/selective-disclosure) it means detailed disclosure of the selectively disclosed attributes (not all selectively disclosable attributes), while in [partial disclosure](/concept/partial-disclosure) it means detailed disclosure of the field map that was previously only partially disclosed.
Full disclosure represents the final stage in ACDC's graduated disclosure framework, where a Discloser reveals complete detailed information about credential attributes or field maps that were previously represented only by their cryptographic commitments (SAIDs). This process accomplishes the transition from privacy-preserving compact representations to complete data revelation while maintaining cryptographic verifiability back to the original Issuer's commitment.
The process is used when:
Key participants include:
Implementations MUST use deterministic serialization when computing SAIDs for full disclosure verification:
When receiving full disclosure, implementations MUST verify in this order:
Skipping any step creates security vulnerabilities.
Implementations MUST reject full disclosure if:
Log all rejection events for security monitoring.
Implementations SHOULD:
For high-volume scenarios:
Full disclosure has two distinct technical meanings depending on the disclosure context, as explicitly defined in Document 1 and Document 2:
When operating within selective disclosure mechanisms, full disclosure means detailed disclosure of the selectively disclosed attributes. Critically, this does not mean revealing all selectively disclosable attributes—only those attributes that were chosen for selective disclosure are shown in full detail.
For example, if an ACDC contains ten selectively disclosable attributes in its attribute aggregate section (A field), and the Discloser chose to selectively disclose three of them, full disclosure in this context means revealing the complete details of those three attributes, not all ten.
When operating within partial disclosure mechanisms, full disclosure means detailed disclosure of the field map that was previously only partially disclosed. This reveals the complete structure and content of specific field maps that were initially represented only by their SAID commitments.
For example, if an ACDC's attribute section (a field) was initially disclosed as just its SAID, full disclosure in this context means providing the complete attribute field map with all its nested properties.
The disclosure process typically begins with compact disclosure, where field maps are represented by their SAIDs rather than full content. According to Document 8, an ACDC in compact form replaces nested field maps with their cryptographic digests:
{
"v": "ACDC10JSON000197_",
"d": "EBdXt3gIXOf2BBWNHdSXCJnFJL5OuQPyM5K0neuniccM",
"i": "EaU6JR2nmwyZ-i0d8JZAoTNZH3ULvYAfSVPzhzS6b5CM",
"s": "E46jrVPTzlSkUPqGGeIZ8a8FWS7a6s4reAXRZOkogZ2A",
"a": "EgveY4-9XgOcLxUderzwLIr9Bf7V_NHwY1lkFrn9y2PY"
}
In this compact form, the a (attributes) field contains only the SAID of the attributes block, not the actual attribute data.
This establishes a cryptographic commitment to the undisclosed content without revealing it.
As noted in Document 3, "additional information is revealed in subsequent steps" as "the recipient satisfies conditions set by the discloser."
When conditions are met, the Discloser transmits the full field map content. For the example above, full disclosure of the attributes section would provide:
{
"d": "EgveY4-9XgOcLxUderzwLIr9Bf7V_NHwY1lkFrn9y2PY",
"i": "EaU6JR2nmwyZ-i0d8JZAoTNZH3ULvYAfSVPzhzS6b5CM",
"dt": "2024-01-15T09:30:00.000000+00:00",
"LEI": "254900OPPU84GM83MG36",
"personLegalName": "Jane Smith",
"officialRole": "Chief Financial Officer"
}
The Disclosee can now see the complete attribute details that were previously hidden behind the SAID commitment.
The Disclosee must verify that the full disclosure is authentic by:
This verification process is enabled by the SAID protocol, which ensures that any modification to the field map would produce a different SAID, making tampering detectable.
After full disclosure, the Disclosee's knowledge state changes:
As noted in Document 7, "partially disclosed fields become correlatable to their encompassing block after full disclosure," which has privacy implications that must be considered in the disclosure strategy.
SAID Computation Consistency: The full disclosure must produce a SAID that exactly matches the SAID in the compact representation. According to Document 27, this requires:
Signature Verification: The Issuer's signature must remain valid across all disclosure variants. Document 4 emphasizes that "cross-variant Issuer commitment verifiability" is an "essential property" where "the cryptographic commitments made by the original Issuer remain verifiable throughout the disclosure process."
Integrity Chain: Full disclosure must maintain the integrity chain from:
Freshness Requirements: Full disclosure may need to occur within specific time windows:
dt issuance datetime field)Revocation Checking: Before accepting full disclosure, the Disclosee should verify the credential's status in the Transaction Event Log referenced by the ri field. A credential may be revoked between compact disclosure and full disclosure, invalidating the exchange.
Grace Periods: Some credentials include grace periods (e.g., 90 days in QVI credentials per Document 22) that affect timing of full disclosure validity.
Schema Validation Failure: If the full disclosure doesn't conform to the declared schema:
s field in the ACDCSignature Verification Failure: If the Issuer signature cannot be verified:
Revocation Detection: If the credential is found to be revoked:
High-Stakes Authorization: In scenarios requiring complete information for authorization decisions, such as:
Example from Document 3: "An individual proves insurance policy coverage before engaging in extreme sports without revealing policy details. Only in the rare event of an incident (1 in 100 cases) are full policy details disclosed."
Progressive Trust Building: Full disclosure as the final step in a multi-stage trust establishment:
Audit and Compliance: Full disclosure for audit trails and regulatory reporting:
Credential Chaining: Full disclosure of parent credentials in ACDC chains:
Minimize Full Disclosure: Only perform full disclosure when absolutely necessary:
Implement Contractual Protection: Combine full disclosure with contractually protected disclosure:
r (rules) fieldVerify Before Disclosing: Disclosers should verify Disclosee authorization:
Verify After Receiving: Disclosees must verify full disclosure authenticity:
Log Disclosure Events: Maintain audit trails of full disclosure:
exn (exchange) messages for disclosure transactionsWallet Integration: Client wallets must support:
Registry Integration: Full disclosure requires TEL integration:
Correlation Risk: Full disclosure increases correlation risk as noted in Document 7: "partially disclosed fields become correlatable to their encompassing block after full disclosure." This means:
Mitigation Strategies:
Confidentiality Loss: Full disclosure represents the final lifting of confidentiality:
Mitigation Strategies:
Full disclosure is the final stage in a hierarchy of disclosure mechanisms:
Each stage maintains cryptographic verifiability while progressively revealing more information, enabling privacy-preserving credential presentations that can scale with trust relationships and contextual requirements.
IPEX Integration: Use exn (exchange) messages with route /presentation/full for full disclosure transactions. Embed complete field maps in the a (attributes) section of the exchange message.
KERIA Integration: Cloud agents should automatically verify SAIDs and check TEL status before accepting full disclosure. Implement disclosure state machines to track progression from compact to full.
Wallet Integration: Client wallets must obtain explicit user consent before transmitting full disclosure. Display privacy impact warnings and disclosure history.
Implementations MUST test: