3.0 KiB
3.0 KiB
Binary Diff Predicate / DSSE Attestation for Patch Detection
Module
Attestor
Status
VERIFIED
Description
Complete BinaryDiff predicate implementation with DSSE signing/verification, schema validation, normalization, and serialization for patch detection attestations.
Implementation Details
- BinaryDiff Predicate Builder:
src/Attestor/__Libraries/StellaOps.Attestor.StandardPredicates/BinaryDiff/BinaryDiffPredicateBuilder.cs(with.Buildpartial) -- implementsIBinaryDiffPredicateBuilderto construct binary diff predicates from diff findings. - BinaryDiff Predicate Serializer:
BinaryDiffPredicateSerializer.cs(with.Normalizepartial) -- implementsIBinaryDiffPredicateSerializerfor deterministic serialization with normalization. - DSSE Signing:
BinaryDiffDsseSigner.cs-- signs binary diff predicates as DSSE envelopes. - DSSE Verification:
BinaryDiffDsseVerifier.cs(with.Helperspartial) -- implementsIBinaryDiffDsseVerifierfor verifying signed binary diff attestations. - Schema Validation:
BinaryDiffSchema.cs(with.SchemaJsonpartial) -- JSON schema for binary diff predicates.BinaryDiffSchemaValidationResult.cs-- validation result model. - Models:
BinaryDiffModels.cs-- core diff models.BinaryDiffSectionModels.cs-- section-level diff models (ELF/PE sections).BinaryDiffFinding.cs-- individual diff finding.BinaryDiffOptions.cs-- configuration. - Metadata:
BinaryDiffMetadataBuilder.cs-- builds metadata for diff predicates. - DI Registration:
ServiceCollectionExtensions.cs-- registers all BinaryDiff services. - Tests:
__Tests/StellaOps.Attestor.StandardPredicates.Tests/BinaryDiff/--BinaryDiffPredicateBuilderTests.cs,BinaryDiffPredicateSerializerTests.cs,BinaryDiffDsseSignerTests.cs,BinaryDiffSchemaValidationTests.cs
E2E Test Plan
- Build a binary diff predicate from a set of
BinaryDiffFindingentries viaBinaryDiffPredicateBuilderand verify the predicate contains all findings - Serialize the predicate via
BinaryDiffPredicateSerializerand verify normalization produces deterministic output (serialize twice, compare bytes) - Sign the serialized predicate via
BinaryDiffDsseSignerand verify the DSSE envelope is well-formed - Verify the signed envelope via
BinaryDiffDsseVerifierand confirm verification passes - Tamper with the signed envelope payload and verify
BinaryDiffDsseVerifierreturns failure - Validate a predicate against the JSON schema via
BinaryDiffSchemaand verify it passes - Create a predicate with section-level diffs (
BinaryDiffSectionModels) for ELF.textand.rodatasections and verify section details are preserved - Create a predicate missing required fields and verify schema validation catches the error
Verification
| Check | Result |
|---|---|
| Tier 0 - Source Verification | PASS |
| Tier 1 - Build + Code Review | PASS |
| Tier 2 - Behavioral Verification | PASS |
| Verified Date | 2026-02-13 |
| Run ID | run-001 |