INTEGRITY Документация

Пространства имён

Key Transparency API от Cloudflare организован по пространствам имён, каждое из которых представляет Log, отслеживаемый Cloudflare Auditor. Если вы хотите зарегистрировать пространство имён, свяжитесь с нами.

Создание пространства имён

Следующие поля обязательны при выполнении POST запрос:

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. Возможные статусы:

Список всех пространств имён

Пример ниже показывает, как получить информацию обо всех публичных пространствах имён.

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" }
   ]
}

Отключение пространства имён

Если состояние лога повреждено, утеряно или его необходимо шардировать для поддержания работоспособности, 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
}