Skip to content

NPE Claims Should Use Binary Format Instead of JSON #1

Description

@arkavo-com

Issue

Currently, NPE (Non-Person Entity) claims are transmitted as JSON in HTTP requests to authnz-rs. This is inconsistent with the NanoTDF binary format used elsewhere in the architecture.

Current State

arkavo-edge → authnz-rs (authentication): JSON

{
  "platform_code": "macos-arm64",
  "platform_state": "Trusted",
  "device_id": "...",
  "app_version": "0.38.2"
}

authnz-rs → arkavo-edge (response): NTDF binary token (Z85 encoded)

Authorization: NTDF <z85-encoded-binary-token>

Proposal

NPE claims should be serialized as binary (matching NanoTDF format) and Z85 encoded for transport, rather than using JSON.

Benefits:

  1. Consistency with NanoTDF binary format
  2. Smaller payload size
  3. Unified serialization approach
  4. Better alignment with RATS attestation evidence formats

Impact

  • authnz-rs API changes (breaking)
  • arkavo-edge client changes
  • Update NTDF token specification
  • Migration path for existing deployments

Related Work

  • NTDF token specification: ntdf-token/draft-arkavo-ntdf-token-00.md
  • NanoTDF implementation: opentdf-rs
  • arkavo-edge implementation: Issue #309

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions