Repository navigation
Releases: Nuraveda/qed-proof-core
Releases · Nuraveda/qed-proof-core
Release list
qed-proof-core 0.7.0
Trust level 3: a verdict decided inside a hardware enclave, which anyone can check against AWS's own root of trust.
Added
- Spec §7.1 attested observations (
aws-nitro-enclave): the enclave's attestation document binds the build that ran
(PCR0 =observation.verifier.code_hash) to the exact observation and verdict, throughuser_data=
SHA-256(JCS(statement)) over the claim digest, verifier, observed time, facts and verdict. The signed body carries
attestation: { type, document_sha256 }; the document travels beside it asattestation_document, so the signed
message stays small. Levels are cumulative: level 3 also requires level 2 (inclusion and a verified anchor). poaw-keys.jsonverifier_builds: the enclave builds an issuer accepts.poaw_core:enclave_statement,enclave_statement_digest, andpoaw_core.nitro(COSE ES384, certificate chain to
the pinned AWS Nitro Enclaves root, PCR and statement checks; a strict CBOR decoder that also reads the
indefinite-length maps real attestation documents use). A real document is included as a test fixture.- Reference checker: level-3 checks with reasons
attestation_invalid,attestation_chain,pcr_mismatch,
statement_mismatch,unknown_build;--nitro-rootfor tests only. Vectors 042-048. enclave/: the program that runs inside the enclave. It executes the open-source verifiers and verdict rules, reads
the destination over TLS that terminates inside the enclave, and asks the Nitro Security Module to attest each decision.
Its Dockerfile pins the base image and every dependency by hash.- Self-hosted node: the enclave work queue and
qed.receipts.attestation_document(additive).
qed-proof-core 0.6.2
Changed
- README: screenshots of the public log and of a receipt checked in the browser, and a short section on the public log API.
qed-proof-core 0.6.1
Changed
- README: opens with a 20-second product video (a silent loop, linking to the full video with sound).
qed-proof-core 0.6.0
The log becomes publicly readable and checkable: a signed tree head, consistency proofs, and a first reputation score.
Added
- Spec: a signed tree head (SPEC §8.5), a signature over the log's current size and root, so anyone can pin what the log
looked like at a point in time. - Spec: the public log endpoints (SPEC §8.6):
/v1/log/head,/v1/log/consistency,/v1/log/proof,/v1/log/anchors
and/v1/log/entries. They are free to read and need no API key. Receipt inclusion proofs now carry the anchor's block
number and time. - Spec: a reputation score,
score/v0, defined in an appendix, with reference vectors underspec/vectors/score/. - Spec: conformance vectors 036 to 041 covering tree heads and consistency proofs.
- Reference checker:
check.py --head,--consistencyand--issuercheck a receipt against a signed tree head and
consistency proofs; an anchor at a different tree size is connected to the receipt by a consistency proof. tools/score.py: computesscore/v0from a set of entries.poaw_core:score_v0, and functions to sign and verify tree heads.
qed-proof-core 0.5.0
Added
- Spec
poaw/0.2(SPEC §14 and §15): change entries, signed log entries for a change at a destination that no claim
explained, and pipeline policies, a pipeline document whose digest a receipt or change entry can carry inpolicy.
Receipts that use neither staypoaw/0.1. - JSON Schemas for change entries and pipeline documents, and an updated receipt schema.
- Conformance vectors 021 to 035 (policy checked, not checked, bad digest, version mismatches; change entries valid,
tampered, signed under the wrong domain, with and without inclusion proofs) and an example pipeline document. - Reference checker: verifies change entries and checks
policyagainst a pipeline document.
Security
- The node refuses request bodies over the size limit even when they arrive chunked, where a
Content-Lengthcheck cannot
see them.
Fixed
- Anchoring claims its send atomically in the database and allows one anchor in flight, so overlapping ticks can no longer
race for the same transaction.
qed-proof-core 0.4.0
Added
- Node: an endpoint listing the connections a workspace has set up.
qed-proof-core 0.3.0
Added
- Node: Slack (
slack.message.post) and X (x.post.publish) verifiers, alongside the existing GitHub and HTTP ones. - Node: listing a workspace's claims, with a cursor.
- Spec: an action profile document for each live action (
github.commit.push,github.pr.open,github.checks.pass,
slack.message.post,x.post.publish) underspec/profiles/.
qed-proof-core 0.2.4
Security
- Node: behind a CDN the caller's IP is read from a viewer-IP header only when the request also carries a shared edge secret
(POAW_TRUSTED_EDGE_SECRET). Without the secret the header is ignored, so a direct caller cannot forge their IP to
dodge the per-IP rate limit.
qed-proof-core 0.2.3
Maintenance release. Code of Conduct wording.
qed-proof-core 0.2.2
Maintenance release. Documentation updates (README and contributing guide).