Skip to content

counter-sign 0.1.2

Pre-release
Pre-release

Choose a tag to compare

@haridarman-star haridarman-star released this 08 Jul 20:35

counter-sign 0.1.2

Makes the ReceiptLog approval history tamper-evident for completeness, not just per-receipt authenticity.

Added

  • Hash-chained log — each entry commits to a SHA-256 of the entry before it, so an edit, reorder, insertion, or mid-stream deletion breaks the chain and is detectable offline. verifyChain() names the first break; verifyAll() now folds the chain into ok (true only when every receipt is genuine and the chain is intact).
  • head() + expectedHead — checkpoint the chain head and anchor it externally to catch tail truncation, the one thing a forward chain can't detect on its own.
  • New types: ChainEntry, ChainHead, ChainReport.

Changed

  • On-disk log line is now a chained envelope { seq, prev, receipt } instead of a bare receipt. Pre-0.1.2 logs still read (flagged as unchained-entry by verifyChain). No change to the protocol or the Countersignature wire format — receipts inside are byte-for-byte the same portable artifact.

98 tests pass. Full changelog: https://github.com/countersign-labs/counter-sign/blob/main/CHANGELOG.md