Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CIP-0010/registry.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@
"transaction_metadatum_label": 123,
"description": "shareslake.com - Bridge routing information"
},
{
"transaction_metadatum_label": 170,
"description": "CIP-0170 - KERI-backed metadata attestations"
},
{
"transaction_metadatum_label": 309,
"description": "Proof of Existence record"
Expand Down
407 changes: 407 additions & 0 deletions CIP-0170/README.md

Large diffs are not rendered by default.

133 changes: 133 additions & 0 deletions CIP-0170/example-credential-chain.cesr
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
{
"v": "KERI10JSON000113_",
"t": "vcp",
"d": "EFfQPwW9s8HQV-zq2NTGks_WYT79Z046mhIJwPQxlfn0",
"i": "EFfQPwW9s8HQV-zq2NTGks_WYT79Z046mhIJwPQxlfn0",
"ii": "EOosFLj1gOfRFEx5g5TSCPdpml9jM9_jIaWI5pZO5YCU",
"s": "0",
"c": [
"NB"
],
"bt": "0",
"b": [],
"n": "AFltXlPUmiWy8_v8d9f6jj1E2l7LX1UWjU7hGtrp-1xW"
}-VAS-GAB0AAAAAAAAAAAAAAAAAAAAAABEKiuK7uqunvbRxirmi9gqfuOGfQSZuqCT9b0WEVFx_Cf
{
"v": "KERI10JSON000113_",
"t": "vcp",
"d": "EOzV2Oj64Wwe9QetkB_FCmIvoTI_6OKn7nB4W51wJQ-a",
"i": "EOzV2Oj64Wwe9QetkB_FCmIvoTI_6OKn7nB4W51wJQ-a",
"ii": "EARtegK3M61uNJ5wyuznNjngYP0kJm1-KHv5fh-8UFWS",
"s": "0",
"c": [
"NB"
],
"bt": "0",
"b": [],
"n": "AM0aXrE5B79nt1_FOffK7N_rMw1VkYLRe1KB60rwRplM"
}-VAS-GAB0AAAAAAAAAAAAAAAAAAAAAABEPQN2EE4bNWu6-1vXoLMfTUumlHFEAr9-p4_CeoxfchP
{
"v": "KERI10JSON000113_",
"t": "vcp",
"d": "EOWTJBCuCpDtamFQrepwyC2WwbsOzWIP0fhRnT8eZeLC",
"i": "EOWTJBCuCpDtamFQrepwyC2WwbsOzWIP0fhRnT8eZeLC",
"ii": "EF--c3_VLg-aaoI-y9kKc0XSQD2-bZoiyk0U7Vym9p-l",
"s": "0",
"c": [
"NB"
],
"bt": "0",
"b": [],
"n": "AG_SUFGr-Nvk_t1Z7QUAjwsjoFw9GF4tZEt8IcNwrjFe"
}-VAS-GAB0AAAAAAAAAAAAAAAAAAAAAABEFVhm8TjehsDvAJGxlI5ufy_Mxd5j-B1KSqB-YLC1JWV
{
"v": "KERI10JSON0000ed_",
"t": "iss",
"d": "EOkDhM2BZL2dXuWydnDvIl7kWj5q2bVZXnPNLtr1Wtop",
"i": "EIUaX_JLblNtJQQg0gh7Ka4h64gbwOhqlPl9QC-7M6DZ",
"s": "0",
"ri": "EFfQPwW9s8HQV-zq2NTGks_WYT79Z046mhIJwPQxlfn0",
"dt": "2025-11-10T11:43:47.242000+00:00"
}-VAS-GAB0AAAAAAAAAAAAAAAAAAAAAACEDFK7pUh-Ez7kk0knpLl1m8iA59_BE4_Rkv8QtHMbRuE
{
"v": "KERI10JSON0000ed_",
"t": "iss",
"d": "ELlER5cq0f8sPsZKjz_jcdegz65uErDiCqfbYlYQHlim",
"i": "EBK-BG-8-ZhvQ7ml52PWOVJn30IUviSeC7VepeU_mZXK",
"s": "0",
"ri": "EOzV2Oj64Wwe9QetkB_FCmIvoTI_6OKn7nB4W51wJQ-a",
"dt": "2025-11-10T11:43:51.081000+00:00"
}-VAS-GAB0AAAAAAAAAAAAAAAAAAAAAACEIXsXeDBh9kSbE4pvn3uCPzKxE9Pkg4t-JuRKyLGrUI9
{
"v": "KERI10JSON0000ed_",
"t": "iss",
"d": "EOyo58VXZv4qVVs8jczoTmFlwffJDC8yirqpqecFW3jj",
"i": "EPSkZ1-E6ojESV9mt20vA0YUfoYAD8dxYyn4-ochHMtV",
"s": "0",
"ri": "EOWTJBCuCpDtamFQrepwyC2WwbsOzWIP0fhRnT8eZeLC",
"dt": "2025-11-10T11:43:58.630000+00:00"
}-VAS-GAB0AAAAAAAAAAAAAAAAAAAAAACEFuQPJfiOsO71geAaItT4DGH7xr0ZtaDs8ycsnpxki6k
{
"v": "ACDC10JSON000197_",
"d": "EIUaX_JLblNtJQQg0gh7Ka4h64gbwOhqlPl9QC-7M6DZ",
"i": "EOosFLj1gOfRFEx5g5TSCPdpml9jM9_jIaWI5pZO5YCU",
"ri": "EFfQPwW9s8HQV-zq2NTGks_WYT79Z046mhIJwPQxlfn0",
"s": "EBfdlu8R27Fbx-ehrqwImnK-8Cm79sqbAQ4MmvEAYqao",
"a": {
"d": "EC9iDB-5CIrhu_R68eXQ9HgDT_vxTqSPZXU-TPVzr6-F",
"i": "EARtegK3M61uNJ5wyuznNjngYP0kJm1-KHv5fh-8UFWS",
"dt": "2025-11-10T11:43:47.242000+00:00",
"LEI": "50670047U83746F70E20"
}
}-IABEIUaX_JLblNtJQQg0gh7Ka4h64gbwOhqlPl9QC-7M6DZ0AAAAAAAAAAAAAAAAAAAAAAAEOkDhM2BZL2dXuWydnDvIl7kWj5q2bVZXnPNLtr1Wtop
{
"v": "ACDC10JSON0005c8_",
"d": "EBK-BG-8-ZhvQ7ml52PWOVJn30IUviSeC7VepeU_mZXK",
"i": "EARtegK3M61uNJ5wyuznNjngYP0kJm1-KHv5fh-8UFWS",
"ri": "EOzV2Oj64Wwe9QetkB_FCmIvoTI_6OKn7nB4W51wJQ-a",
"s": "ENPXp1vQzRF6JwIuS-mp2U8Uf1MoADoP_GqQ62VsDZWY",
"a": {
"d": "EB9PCr5APfA1o9LRkO45kijrvoQuH1N5Te4U5JhjpzOO",
"i": "EF--c3_VLg-aaoI-y9kKc0XSQD2-bZoiyk0U7Vym9p-l",
"dt": "2025-11-10T11:43:51.081000+00:00",
"LEI": "50670047U83746F70E20"
},
"e": {
"d": "EC4U5Yxjv1TbJm6fVwi9b_mPr1kpqyv0EQM9Gb0AKDz8",
"qvi": {
"n": "EIUaX_JLblNtJQQg0gh7Ka4h64gbwOhqlPl9QC-7M6DZ",
"s": "EBfdlu8R27Fbx-ehrqwImnK-8Cm79sqbAQ4MmvEAYqao"
}
},
"r": {
"d": "EGZ97EjPSINR-O-KHDN_uw4fdrTxeuRXrqT5ZHHQJujQ",
"usageDisclaimer": {
"l": "Usage of a valid, unexpired, and non-revoked vLEI Credential, as defined in the associated Ecosystem Governance Framework, does not assert that the Legal Entity is trustworthy, honest, reputable in its business dealings, safe to do business with, or compliant with any laws or that an implied or expressly intended purpose will be fulfilled."
},
"issuanceDisclaimer": {
"l": "All information in a valid, unexpired, and non-revoked vLEI Credential, as defined in the associated Ecosystem Governance Framework, is accurate as of the date the validation process was complete. The vLEI Credential has been issued to the legal entity or person named in the vLEI Credential as the subject; and the qualified vLEI Issuer exercised reasonable care to perform the validation process set forth in the vLEI Ecosystem Governance Framework."
}
}
}-IABEBK-BG-8-ZhvQ7ml52PWOVJn30IUviSeC7VepeU_mZXK0AAAAAAAAAAAAAAAAAAAAAAAELlER5cq0f8sPsZKjz_jcdegz65uErDiCqfbYlYQHlim
{
"v": "ACDC10JSON000230_",
"d": "EPSkZ1-E6ojESV9mt20vA0YUfoYAD8dxYyn4-ochHMtV",
"i": "EF--c3_VLg-aaoI-y9kKc0XSQD2-bZoiyk0U7Vym9p-l",
"ri": "EOWTJBCuCpDtamFQrepwyC2WwbsOzWIP0fhRnT8eZeLC",
"s": "EJVgEQO8BEhGGM7GcAjlqoKG1upeuBZj9WjvjZo353sQ",
"a": {
"d": "EKGU79bIkzxFsr-ZcoOLyZyX5mD4ScRbylGNNVbeiOW3",
"i": "EKtQ1lymrnrh3qv5S18PBzQ7ukHGFJ7EXkH7B22XEMIL",
"dt": "2025-11-10T11:43:58.630000+00:00",
"labels": [
1447
]
},
"e": {
"d": "EPvTf6H9kJBJ87jDXR-IM-jSwWoGwQ_AhuwnIpq0lhqG",
"le": {
"n": "EBK-BG-8-ZhvQ7ml52PWOVJn30IUviSeC7VepeU_mZXK",
"s": "ENPXp1vQzRF6JwIuS-mp2U8Uf1MoADoP_GqQ62VsDZWY"
}
}
}-IABEPSkZ1-E6ojESV9mt20vA0YUfoYAD8dxYyn4-ochHMtV0AAAAAAAAAAAAAAAAAAAAAAAEOyo58VXZv4qVVs8jczoTmFlwffJDC8yirqpqecFW3jj
10 changes: 10 additions & 0 deletions CIP-0170/example-revocation-event.cesr
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"v": "KERI10JSON000120_",
"t": "rev",
"d": "EIYQA02v1cjNrPn1KhIZXof56LRLmCNPWnaeSyZ87KeU",
"i": "EPSkZ1-E6ojESV9mt20vA0YUfoYAD8dxYyn4-ochHMtV",
"s": "1",
"ri": "EOWTJBCuCpDtamFQrepwyC2WwbsOzWIP0fhRnT8eZeLC",
"p": "EOyo58VXZv4qVVs8jczoTmFlwffJDC8yirqpqecFW3jj",
"dt": "2025-11-10T13:00:40.243000+00:00"
}-VAS-GAB0AAAAAAAAAAAAAAAAAAAAAADEDNyGD0Vt0UgfX3NZuf3JhHY34kTzxGZfhApeISBCBUI
35 changes: 35 additions & 0 deletions CIP-0170/version_1.cddl
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
cardano_keri_metadata = {
? uint => auth_event
}

auth_event =
auth_begin /
auth_end /
attest

auth_begin = {
t: "AUTH_BEGIN",
s: text, ; SAID of leaf credential schema
i: text, ; AID of signer
c: bytes, ; Byte stream payload
? m: metadata_map ; Optional metadata
}

attest = {
t: "ATTEST",
i: text, ; AID of signer
d: text, ; Digest
s: text ; Hex-encoded sequence number
}

auth_end = {
t: "AUTH_END",
s: text, ; SAID of leaf credential schema
i: text, ; AID of signer
c: bytes, ; Byte stream payload
? m: metadata_map ; Optional metadata
}

metadata_map = {
* text => any
}
106 changes: 106 additions & 0 deletions CIP-0170/version_1.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Cardano KERI Accountability Metadata",
"description": "Metadata schema for embedding KERI identifiers and authentication events (AUTH_BEGIN, ATTEST, AUTH_END) within Cardano transactions.",
"type": "object",
"patternProperties": {
"^[0-9]+$": {
"description": "Metadata label key (integer as string).",
"oneOf": [
{
"type": "object",
"properties": {
"t": {
"const": "AUTH_BEGIN"
},
"s": {
"type": "string",
"description": "Self-addressing identifier (SAID) of the leaf credential schema."
},
"i": {
"type": "string",
"description": "Autonomic Identifier (AID) of the signer."
},
"c": {
"type": "string",
"description": "Byte stream representing the credential or context."
},
"m": {
"type": "object",
"description": "Optional metadata block.",
"additionalProperties": true
}
},
"required": [
"t",
"s",
"i",
"c"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"t": {
"const": "ATTEST"
},
"i": {
"type": "string",
"description": "Autonomic Identifier (AID) of the signer."
},
"d": {
"type": "string",
"description": "Digest referencing the authenticated data."
},
"s": {
"type": "string",
"pattern": "^[0-9A-Fa-f]+$",
"description": "Hex-encoded sequence number."
}
},
"required": [
"t",
"i",
"d",
"s"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"t": {
"const": "AUTH_END"
},
"s": {
"type": "string",
"description": "Self-addressing identifier (SAID) of the leaf credential schema."
},
"i": {
"type": "string",
"description": "Autonomic Identifier (AID) of the signer."
},
"c": {
"type": "string",
"description": "Byte stream representing the credential or closing context."
},
"m": {
"type": "object",
"description": "Optional metadata block.",
"additionalProperties": true
}
},
"required": [
"t",
"s",
"i",
"c"
],
"additionalProperties": false
}
]
}
},
"additionalProperties": false
}
Loading