离开时导出您的数据
读取五个退出目标,记录一次真实演练,在带 Merkle 根的清单下导出所有涵盖的类别,并验证导出。
exit.objectives
读取五个退出目标,记录一次真实演练,在带 Merkle 根的清单下导出所有涵盖的类别,并验证导出。
exit.objectives您想确认自己可以带着数据离开,并证明导出是完整的。Exit 列出五个数据类别,各有已发布的 RTO 和 RPO,通过各自的 list 操作导出每个类别,并对照实际清单验证清单文件。
代码从 INTRAMEDIAL_KEY 读取密钥。请把它放在您的 shell 或密钥存储中,切勿放进要提交的文件。需要已登录用户的调用不能使用密钥:这些调用由控制台发起。
列出五个类别:账本、策略包、场地、身份和策略,各有已发布的 RTO 和 RPO。没有任何记录的类别显示为 unverified,绝不会默认为 met。
provable: true 表示完整性和摘要都成立。exit.objectivesexit-objectivescurl -sS https://api.intramedial.com/api/v1/acp/exit/objectives \
-H "Authorization: Bearer $INTRAMEDIAL_KEY"const res = await fetch("https://api.intramedial.com/api/v1/acp/exit/objectives", {
headers: { Authorization: `Bearer ${process.env.INTRAMEDIAL_KEY}`, },
});
console.log(res.status, await res.json());import os, requests
res = requests.get(
"https://api.intramedial.com/api/v1/acp/exit/objectives",
headers={"Authorization": "Bearer " + os.environ["INTRAMEDIAL_KEY"]},
timeout=30,
)
print(res.status_code, res.json())真实演练之后,发送类别以及您测得的 RTO 和 RPO。observe 只记录您测得的数据,不运行任何东西,按当前发布的状态,尚无恢复演练记录过观察结果。
curl -sS -X POST https://api.intramedial.com/api/v1/acp/exit/observe \
-H "Authorization: Bearer $INTRAMEDIAL_KEY" \
-H "Content-Type: application/json" \
-d '{
"dataClass": "ledger",
"rtoMinutes": 12,
"rpoMinutes": 0
}'const res = await fetch("https://api.intramedial.com/api/v1/acp/exit/observe", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.INTRAMEDIAL_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
dataClass: "ledger",
rtoMinutes: 12,
rpoMinutes: 0,
}),
});
console.log(res.status, await res.json());import os, requests
res = requests.post(
"https://api.intramedial.com/api/v1/acp/exit/observe",
headers={"Authorization": "Bearer " + os.environ["INTRAMEDIAL_KEY"]},
json={
"dataClass": "ledger",
"rtoMinutes": 12,
"rpoMinutes": 0,
},
timeout=30,
)
print(res.status_code, res.json())导出通过各模块自己的 list 操作提取实际数据,用 SHA-256 为每个条目生成摘要,并汇总成带 Merkle 根的清单。列表失败会被返回,而不是被跳过。
curl -sS -X POST https://api.intramedial.com/api/v1/acp/exit/export \
-H "Authorization: Bearer $INTRAMEDIAL_KEY" \
-H "Content-Type: application/json" \
-d '{}'const res = await fetch("https://api.intramedial.com/api/v1/acp/exit/export", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.INTRAMEDIAL_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({}),
});
console.log(res.status, await res.json());import os, requests
res = requests.post(
"https://api.intramedial.com/api/v1/acp/exit/export",
headers={"Authorization": "Bearer " + os.environ["INTRAMEDIAL_KEY"]},
json={},
timeout=30,
)
print(res.status_code, res.json())验证会对照实际清单重新计算完整性。把原始内容作为 contents 发送,它也会重新计算摘要。没有 contents 时,integrity 保持为 null,绝不会给出错误的 true。
curl -sS -X POST https://api.intramedial.com/api/v1/acp/exit/verify \
-H "Authorization: Bearer $INTRAMEDIAL_KEY" \
-H "Content-Type: application/json" \
-d '{}'const res = await fetch("https://api.intramedial.com/api/v1/acp/exit/verify", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.INTRAMEDIAL_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({}),
});
console.log(res.status, await res.json());import os, requests
res = requests.post(
"https://api.intramedial.com/api/v1/acp/exit/verify",
headers={"Authorization": "Bearer " + os.environ["INTRAMEDIAL_KEY"]},
json={},
timeout=30,
)
print(res.status_code, res.json())只有完整性和摘要都成立时,provable 才为 true。清单中不再有的条目是 extra,不是篡改。
内容复制自: /docs/exit-objectives
unverified。账本仅可追加,并封存在 Merkle 根之下。条目上的时间取自 Intramedial 自己的时钟,签名包可用已发布的公钥离线核查。
把审计日志封存为带 Merkle 根的签名包,并用已发布的公钥离线核查。
ledger.bundles-snapshot调用欧盟 AI 法案第 12 条的导出,然后读取覆盖报告,该报告把您所持证据映射到控制项并指出缺口。
compliance.pack列出谁接触过某个资源(最近的在前),然后用其 Merkle 证明重建一个事件。
ledger.blame当我们向实用示例中添加新示例时,会发送一封简短的邮件。不会发送其他任何邮件,而且您可以从任意一封邮件中退订。
完全无需账户:在 7 天之内可以在各个 attest 路由上调用 35 次,所生成的回执都会被标记为测试回执。当您想继续使用时,再注册账户即可。