KTP/
github ↗
schemas

Trust Proof

created 23 August 2026 · last modified 23 August 2026
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://kinetic-trust-protocol.net/specs/schemas/v2/trust-proof.json",
  "title": "KTP Trust Proof",
  "description": "Signed token carrying Trust Score and environmental context for the Kinetic Trust Protocol",
  "type": "object",
  "required": [
    "iss",
    "sub",
    "iat",
    "exp",
    "jti",
    "ktp"
  ],
  "properties": {
    "iss": {
      "type": "string",
      "format": "uri",
      "description": "Trust Oracle identifier (issuer)"
    },
    "sub": {
      "type": "string",
      "format": "uri",
      "description": "Agent identifier (subject)"
    },
    "iat": {
      "type": "integer",
      "description": "Issued at (Unix timestamp)"
    },
    "exp": {
      "type": "integer",
      "description": "Expiration time (Unix timestamp, max 10 seconds from iat)"
    },
    "jti": {
      "type": "string",
      "description": "Unique token identifier (JWT ID)"
    },
    "ktp": {
      "$ref": "#/$defs/ktpClaims"
    }
  },
  "$defs": {
    "ktpClaims": {
      "type": "object",
      "required": [
        "e_base",
        "e_trust",
        "r",
        "context",
        "soul",
        "lineage",
        "peer_share",
        "applicable_ceilings",
        "advancement_floor",
        "root_instrument"
      ],
      "properties": {
        "e_base": {
          "type": "number",
          "minimum": 0,
          "maximum": 100,
          "description": "Base Trust score (intrinsic agent capability)"
        },
        "e_trust": {
          "type": "number",
          "minimum": 0,
          "maximum": 100,
          "description": "Effective Trust score after environmental deflation"
        },
        "r": {
          "type": "number",
          "minimum": 0,
          "maximum": 1,
          "description": "Aggregated environmental risk computed from the six weighted Risk Factor inputs"
        },
        "de_dt": {
          "type": "number",
          "description": "Trust velocity (rate of change per second)"
        },
        "sigma": {
          "type": "number",
          "minimum": 0,
          "description": "Trust volatility (standard deviation)"
        },
        "context": {
          "$ref": "risk-factors.json",
          "description": "The six weighted Risk Factor inputs (Soul is carried separately as a veto, not a term)"
        },
        "soul": {
          "$ref": "soul-constraint.json",
          "description": "Sovereignty constraint evaluation"
        },
        "lineage": {
          "type": "string",
          "enum": [
            "sponsored",
            "independent",
            "guarantor"
          ],
          "description": "Agent lineage stage, derived from generation"
        },
        "generation": {
          "type": "integer",
          "minimum": 0,
          "description": "Agent generation number"
        },
        "sponsor": {
          "type": "string",
          "format": "uri",
          "description": "Sponsor agent identifier (for sponsored agents)"
        },
        "resilience_hash": {
          "type": "string",
          "pattern": "^sha256:[a-f0-9]{64}$",
          "description": "Hash of current Proof of Resilience ledger"
        },
        "zone": {
          "type": "string",
          "description": "Blue Zone identifier where proof was issued"
        },
        "oracle_quorum": {
          "type": "string",
          "pattern": "^[0-9]+-of-[0-9]+$",
          "description": "Threshold signature quorum (e.g., '3-of-5')"
        },
        "peer_share": {
          "type": "number",
          "minimum": 0,
          "maximum": 100,
          "description": "Declared peer-signal share (w_p) in points; 0 where peer validation is not implemented. E_base MUST be evaluated against the declared share."
        },
        "applicable_ceilings": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "ceiling",
              "value"
            ],
            "properties": {
              "ceiling": {
                "type": "string",
                "description": "Which ceiling: generation, trajectory, adversity, ial, zone_mass, or a further declared ceiling"
              },
              "value": {
                "type": "number",
                "minimum": 0,
                "maximum": 100
              }
            }
          },
          "description": "Every ceiling applicable to this evaluation; E_base is bounded by their minimum. A ceiling absent here was not applied."
        },
        "advancement_floor": {
          "type": "number",
          "minimum": 0,
          "description": "Declared per-generation Resilience floor. A deployment whose environment produces no attestable friction declares 0, and a relying party can see the lineage advanced on time alone."
        },
        "root_instrument": {
          "type": "object",
          "required": [
            "status"
          ],
          "properties": {
            "status": {
              "type": "string",
              "enum": [
                "current",
                "non_renewable",
                "none"
              ],
              "description": "External Root instrument status; non_renewable follows a withdrawal without cause; none computes the term as zero"
            },
            "end_time": {
              "type": "integer",
              "description": "Unix timestamp when the instrument ends (bond expiry or attestation expiry); required unless status is none"
            },
            "exposure_class": {
              "type": [
                "string",
                "null"
              ],
              "description": "Declared class of irrecoverable, non-transferable exposure"
            },
            "declared_exposure": {
              "type": [
                "number",
                "null"
              ],
              "minimum": 0
            },
            "anchored_capacity": {
              "type": [
                "number",
                "null"
              ],
              "minimum": 0
            },
            "terminator": {
              "type": [
                "string",
                "null"
              ],
              "description": "The chain's terminator outside the agent-trust graph"
            },
            "chain_length": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 1,
              "description": "Declared accountability-chain length; MUST NOT exceed the deployment's declared hop bound"
            }
          },
          "description": "The accountability instrument occupying the External Root term, per KTP-CORE Section 5.1"
        }
      }
    }
  },
  "examples": [
    {
      "iss": "https://oracle.example.com",
      "sub": "agent:7gen:optimized:a1b2c3d4",
      "iat": 1699900000,
      "exp": 1699900010,
      "jti": "tp-uuid-12345",
      "ktp": {
        "e_base": 87,
        "e_trust": 42,
        "r": 0.517,
        "de_dt": -2.3,
        "sigma": 0.15,
        "context": {
          "evidence_density": 0.875,
          "trust_trend": 0.92,
          "adversarial_pressure": 0.02,
          "moment_criticality": 1.0,
          "update_resistance": 0.1,
          "attestation_coverage": 0.04
        },
        "soul": {
          "soul": 0,
          "constraint_type": null,
          "constraint_id": null,
          "authority": null
        },
        "lineage": "guarantor",
        "generation": 7,
        "resilience_hash": "sha256:abc123def456789012345678901234567890123456789012345678901234",
        "zone": "zone-blue-prod-01",
        "oracle_quorum": "3-of-5",
        "peer_share": 0,
        "applicable_ceilings": [
          {
            "ceiling": "generation",
            "value": 100
          },
          {
            "ceiling": "zone_mass",
            "value": 92
          }
        ],
        "advancement_floor": 2000,
        "root_instrument": {
          "status": "current",
          "end_time": 1731436800,
          "exposure_class": "legal_entity_declared_assets",
          "declared_exposure": 50,
          "anchored_capacity": 60,
          "terminator": "org:acme-holdings",
          "chain_length": 2
        }
      }
    },
    {
      "iss": "https://oracle.example.com",
      "sub": "agent:2gen:data-analyst:xyz789",
      "iat": 1699900100,
      "exp": 1699900110,
      "jti": "tp-uuid-67890",
      "ktp": {
        "e_base": 45,
        "e_trust": 40,
        "r": 0.111,
        "de_dt": 0.5,
        "sigma": 0.08,
        "context": {
          "evidence_density": 0.1,
          "trust_trend": 0.15,
          "adversarial_pressure": 0.05,
          "moment_criticality": 0.2,
          "update_resistance": 0.08,
          "attestation_coverage": 0.1
        },
        "soul": {
          "soul": 1,
          "constraint_type": "tk_label",
          "constraint_id": "TK-NC-001",
          "constraint_name": "TK Non-Commercial",
          "authority": "https://localcontexts.org/label/tk-nc/",
          "community": "Example Indigenous Community",
          "remediation": "Contact community data steward for commercial licensing"
        },
        "lineage": "sponsored",
        "generation": 2,
        "sponsor": "agent:guarantor:7gen:optimized:a1b2c3d4",
        "resilience_hash": "sha256:fedcba987654321098765432109876543210987654321098765432109876",
        "zone": "zone-blue-research",
        "oracle_quorum": "2-of-3",
        "peer_share": 0,
        "applicable_ceilings": [
          {
            "ceiling": "generation",
            "value": 45
          },
          {
            "ceiling": "adversity",
            "value": 60
          }
        ],
        "advancement_floor": 0,
        "root_instrument": {
          "status": "current",
          "end_time": 1731436800
        }
      }
    }
  ]
}