add canonical sigchain bundle format
This commit is contained in:
parent
76eb785ee2
commit
decff4b995
14 changed files with 1515 additions and 42 deletions
|
|
@ -576,10 +576,28 @@ resource-scoped capability decisions.
|
|||
backend receipt policies, required backend classes, old-policy witnessing
|
||||
of policy-change heads, cached-head rollback checks, and
|
||||
incomparable-history fork failure.
|
||||
- `[x]` Define and implement the canonical `.sscb` on-disk/full-snapshot
|
||||
bundle with deterministic record, disclosure, claim, and receipt objects.
|
||||
- `[x]` Decoding rejects trailing bytes, noncanonical order, duplicates,
|
||||
unknown references, mixed chains, and over-limit inputs.
|
||||
- `[x]` `bundle-create` and `bundle-extract` convert record JSONL while
|
||||
clearly preserving claims/receipts only in the canonical bundle.
|
||||
- `[x]` `verify-sigchain` auto-detects JSONL or canonical bundles and binds
|
||||
a bundle's namespace and chain ID to local trust.
|
||||
- `[x]` Specify the backend-neutral distribution-source contract and a static
|
||||
HTTP full-snapshot profile at
|
||||
`/.well-known/sshsigchain/v1/<chain-id>/chain.sscb`.
|
||||
- `[ ]` Implement automatic distribution fetchers.
|
||||
- Acceptance criteria: an HTTP fetcher enforces streaming limits,
|
||||
conditional caching, redirect policy, trust-tuple matching, accepted-head
|
||||
ancestry, anchor policy, and fork failure.
|
||||
- Acceptance criteria: the Iroh fetcher returns the identical canonical
|
||||
bundle/object model and remains the only geth node-to-node transport.
|
||||
- `[~]` Add explicit CLI storage, signing, verification, publication, and
|
||||
import workflows for a pinned SSHSIGCHAIN trust tuple.
|
||||
- `[x]` `geth keychain verify-sigchain` verifies a JSONL transport file
|
||||
against an operator-pinned chain ID and OpenSSH root public key.
|
||||
- `[x]` `geth keychain verify-sigchain` verifies JSONL interchange or a
|
||||
canonical bundle against an operator-pinned chain ID, namespace, and
|
||||
OpenSSH root public key.
|
||||
- `[ ]` Local record storage, signing, publication, import, and
|
||||
head-advance workflows are complete.
|
||||
- `[ ]` Persist accepted heads and require proof of extension before a source
|
||||
|
|
@ -602,8 +620,9 @@ resource-scoped capability decisions.
|
|||
- `[x]` An OpenSSH `ssh-keygen -Y` integration test signs and verifies an
|
||||
Authority v1 genesis link.
|
||||
- `[~]` The specification and reference implementation share base signing,
|
||||
key-proof, commitment, and head-claim vectors.
|
||||
- `[ ]` Publish the complete vector set in the specification.
|
||||
canonical-bundle, key-proof, commitment, and head-claim vectors.
|
||||
- `[x]` Publish outer-link and canonical-bundle framing vectors.
|
||||
- `[ ]` Publish key-proof, commitment, head-claim, and receipt vectors.
|
||||
- `[ ]` Add independently generated cross-implementation vectors.
|
||||
|
||||
- `[x]` SSH-admin-rooted keychain initialization.
|
||||
|
|
|
|||
Loading…
Reference in a new issue