pdftract/crates/pdftract-core/build/CHECKSUMS.sha256
jedarden 54fe6c1964 feat(pdftract-1xf4d): implement TH-06 supply-chain gate
- Add minimum version requirements to deny.toml (ring >= 0.17.5, rustls >= 0.23)
- Create build/CHECKSUMS.sha256 for build-time data file integrity
- Update build.rs to verify checksums on every build
- Add tampering detection tests (th06_checksum_test.rs)
- Create nightly supply-chain scan workflow (pdftract-nightly-supply-chain.yaml)
- Update audit.toml with advisory exceptions

Closes: pdftract-1xf4d
Refs: plan lines 877, 883-896, 906-913
2026-05-26 17:31:13 -04:00

31 lines
1.9 KiB
Text

# SHA-256 checksums for build-time data files
#
# This file pins the checksums of all build-time data files used in pdftract-core.
# The build.rs script verifies these checksums on every build to detect tampering.
# If a checksum mismatch occurs, the build will abort with a clear error message.
#
# To regenerate this file after legitimate changes to build-time data:
# cd crates/pdftract-core/build && sha256sum std14-metrics.json named-encodings.json agl.json font-fingerprints.json wordlist-en-20k.txt predefined-cmaps/*.json > CHECKSUMS.sha256
# # For glyph-shapes.json (workspace root build/ dir):
# sha256sum ../../../build/glyph-shapes.json >> CHECKSUMS.sha256
#
# Bead: pdftract-1xf4d (TH-06 supply-chain gate)
# Plan: line 909 (Build-time data files checksum pin)
#
# Format: <checksum> <relative-path-from-crate-build-dir>
# Core build-time data files (in crates/pdftract-core/build/)
b86f59017313b50bb5e9458e62f1940a9147f7caf810149d7eef88adce048cd9 std14-metrics.json
b14b625d6bf62d1a1d44bd778e282dfdcc10d787c6ea69cf466d231c5f21cc4a named-encodings.json
c9c1bfb4b995e1d94b5e4132f775b362468e182c69b29596d6b1fca4be59113c agl.json
37517e5f3dc66819f61f5a7bb8ace1921282415f10551d2defa5c3eb0985b570 font-fingerprints.json
4ed6e5336d7760d281f7e72df31827da880c861363e820d8c65666b0f10d9ac0 wordlist-en-20k.txt
# Predefined CMap files (in crates/pdftract-core/build/predefined-cmaps/)
09da49c09f92f1c3e247cc6bc61dcfc7bca6dc5ab5e62b3da30e9be759e12b57 predefined-cmaps/adobe-cns1.json
f93b8e12c2bb8b9e0e00e4c65c9a39bc5c6d89e8618dc0d69e0c4e6a79012e5 predefined-cmaps/adobe-gb1.json
3752c80eeed25ee7875dc9b354c78f23976766c8d8ca3a4e5cc5f40430a9e385 predefined-cmaps/adobe-japan1.json
ec1ecc8937d9c7e94d9e9c5a237c1d8a8e3bb5e0fddcf0c78866f8e7e52d89b predefined-cmaps/adobe-korea1.json
# Glyph shapes database (in workspace root build/ dir, accessed via workspace_root)
a3cba1a5b82c6f04e25450608ceeffd3b66b3de2ee1c28da008bc59de6625a96 ../../../build/glyph-shapes.json