2.3 KiB
2.3 KiB
Static-to-Binary Braid (Build-Time Function Proof)
Module
BinaryIndex
Status
IMPLEMENTED
Description
Full binary analysis pipeline with function fingerprinting, delta signatures, multi-backend disassembly (Iced, B2R2), normalization, and semantic analysis for build-time function proof.
Implementation Details
- Modules:
src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Diff/,src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.DeltaSig/,src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Semantic/,src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Disassembly/ - Key Classes:
PatchDiffEngine(src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Diff/PatchDiffEngine.cs) - orchestrates build-time function proof by comparing pre/post binariesDeltaSigServiceV2(src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.DeltaSig/DeltaSigServiceV2.cs) - V2 delta-sig with IR diff supportSemanticFingerprintGenerator(src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Semantic/SemanticFingerprintGenerator.cs) - semantic function fingerprintingHybridDisassemblyService(src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Disassembly/HybridDisassemblyService.cs) - multi-backend disassemblyCodeNormalizer(src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Decompiler/CodeNormalizer.cs) - normalizes decompiled code for comparisonSemanticEquivalence(src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Decompiler/SemanticEquivalence.cs) - semantic equivalence checking between code versionsEnsembleDecisionEngine(src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Ensemble/EnsembleDecisionEngine.cs) - combines all matching tiers for final proof verdict
E2E Test Plan
- Submit source-to-binary pair and verify function-level proof linking source functions to binary symbols
- Verify multi-backend disassembly: same binary analyzed by Iced and B2R2 produces compatible fingerprints
- Verify delta-sig generation creates build-time proof of which functions changed
- Verify semantic analysis identifies equivalent functions across different compiler outputs
- Verify code normalization strips compiler-specific artifacts for fair comparison
- Verify ensemble decision produces final proof verdict combining all evidence tiers