Cloudflare Key Transparency API は名前空間で構成されます。各名前空間は、Cloudflare Auditor が監視する Log を表します。名前空間を登録したい場合は、お問い合わせください。
POST リクエストでは、次のフィールドが必須です。
namepublicrootsignature_version:0x0001: Auditor による Protobuf シリアライゼーション ↗ の Ed25519 署名0x0002: Auditor による bincode シリアライゼーション ↗ の E25519 シリアライゼーション
log_directory フィールドは省略できます。設定すると、Cloudflare はそれを使って監査証明を取得し、検証します。
この API は mTLS ↗ で認証します。
curl 'https://plexi.key-transparency.cloudflare.com/namespaces' \
--header 'Content-Type: application/json' \
--data '{
"name": "your.new.log.com",
"root": "1/1111111111111111111111111111111111111111111111111111111111111111",
"log_directory": "https://your.new.log.com/path/to/proofs",
"signature_version": 1
}'
{
"name": "your.new.log.com",
"log_directory": "https://your.new.log.com/path/to/proofs",
"root": "1/1111111111111111111111111111111111111111111111111111111111111111",
"status": "Initialization",
"reports_uri": "/namespaces/your.new.log.com/reports",
"audits_uri": "/namespaces/your.new.log.com/audits",
"signature_version": 1
}最初のエポックを公開すると、status は Online になります。取りうるステータスは次のとおりです。
OnlineInitializationDisabled
公開名前空間すべての情報を取得する例は次のとおりです。
curl 'https://plexi.key-transparency.cloudflare.com/namespaces'
{
"namespaces": [
{ "name": "your.new.log.com", "root": "1/abc", "reports_uri": "/namespaces/your.new.log.com/reports", "audits_uri": "/namespaces/your.new.log.com/audits", "log_directory": "https://your.new.log.com/path/to/proofs", "status": "online" },
{ "name": "my.new.log.com", "reports_uri": "/namespaces/meta-bt-2024/reports", "audits_uri": "/namespaces/meta-bt-2024/audits", "status": "initialization" }
]
}Log の状態が破損した、失われた、または維持できるようシャーディングする必要がある場合、Auditor は Log 運営者に名前空間を Disabled にする操作を許可します。
この API は mTLS ↗ で認証します。
curl -X PATCH 'https://plexi.key-transparency.cloudflare.com/namespaces/{namespace}' \
-H 'Content-Type: application/json' \
-d '{
"status": "Disabled"
}'
{
"name": "your.new.log.com",
"log_directory": "https://your.new.log.com/path/to/proofs",
"root": "1/1111111111111111111111111111111111111111111111111111111111111111",
"status": "Disabled",
"reports_uri": "/namespaces/your.new.log.com/reports",
"audits_uri": "/namespaces/your.new.log.com/audits",
"signature_version": 1
}