arkavo-org / arkavo-org/specifications
NPE Claims Should Use Binary Format Instead of JSON
- Dominant language
- No language data
- Stars
- 0
- Forks
- 0
- Avg merge
- 28m
- Merged PRs (30d)
- 1
Description
## 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
```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
```
## 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
Contributor guide
No contributing guide indexed for this repository
Research direction
Read ntdf-token/draft-arkavo-ntdf-token-00.md first, then compare the NanoTDF implementation in opentdf-rs with the arkavo-edge implementation referenced as Issue #309. The work is done when the binary NPE claim format, Z85 transport, authnz-rs and arkavo-edge API changes, NTDF specification updates, and migration path for existing deployments are defined.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- api, authentication, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100