Skip to content

Releases: Nuraveda/qed-proof-core

qed-proof-core 0.7.0

Choose a tag to compare

@floating-astronaut floating-astronaut released this 04 Oct 23:31
v0.7.0
843f4a2

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, through user_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 as attestation_document, so the signed
    message stays small. Levels are cumulative: level 3 also requires level 2 (inclusion and a verified anchor).
  • poaw-keys.json verifier_builds: the enclave builds an issuer accepts.
  • poaw_core: enclave_statement, enclave_statement_digest, and poaw_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-root for 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

Choose a tag to compare

@floating-astronaut floating-astronaut released this 04 Oct 19:01
v0.6.2
68791b7

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

Choose a tag to compare

@floating-astronaut floating-astronaut released this 04 Oct 18:53
v0.6.1
dbaa92c

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

Choose a tag to compare

@floating-astronaut floating-astronaut released this 04 Oct 17:19
v0.6.0
64601bc

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 under spec/vectors/score/.
  • Spec: conformance vectors 036 to 041 covering tree heads and consistency proofs.
  • Reference checker: check.py --head, --consistency and --issuer check 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: computes score/v0 from a set of entries.
  • poaw_core: score_v0, and functions to sign and verify tree heads.

qed-proof-core 0.5.0

Choose a tag to compare

@floating-astronaut floating-astronaut released this 04 Oct 17:18
v0.5.0
e2e4f52

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 in policy.
    Receipts that use neither stay poaw/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 policy against a pipeline document.

Security

  • The node refuses request bodies over the size limit even when they arrive chunked, where a Content-Length check 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

Choose a tag to compare

@floating-astronaut floating-astronaut released this 04 Oct 17:18
v0.4.0
c134886

Added

  • Node: an endpoint listing the connections a workspace has set up.

qed-proof-core 0.3.0

Choose a tag to compare

@floating-astronaut floating-astronaut released this 26 Sep 23:59
v0.3.0
9820bc6

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) under spec/profiles/.

qed-proof-core 0.2.4

Choose a tag to compare

@floating-astronaut floating-astronaut released this 04 Oct 17:18
v0.2.4
2d4f358

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

Choose a tag to compare

@floating-astronaut floating-astronaut released this 26 Sep 09:27
v0.2.3
e149dd3

Maintenance release. Code of Conduct wording.

qed-proof-core 0.2.2

Choose a tag to compare

@floating-astronaut floating-astronaut released this 04 Oct 17:18
v0.2.2
a8a744f

Maintenance release. Documentation updates (README and contributing guide).