Table · dataset · 2026
BinFuncGt
Listed in ZivaHub and Deakin Research Online and DMU Figshare and HKU DataHub and Swinburne Figshare and DaYta Ya Rona and SUNScholarData and figshare and Loughborough Research Repository and GRANTS Data and UP Research Data Repository — shown once because both records carry DOI 10.6084/m9.figshare.34040505.v1
BinFuncGT<p dir="ltr">BinFuncGT is a research framework for <b>binary software composition analysis (BSCA)</b>.
Description
It provides function-level ground truth, static feature extraction, candidate retrieval, call-graph-aware structural matching, and evaluation of component and version identification.</p><p dir="ltr">The project, benchmark, and construction utilities are named <b>BinFuncGT</b>. Python modules and filesystem paths use the lowercase spelling <code>binfuncgt</code>.</p><h2 dir="ltr">Features</h2><ul><li><b>Binary analysis:</b> Parse ELF metadata, symbol tables, and DWARF information, and recover functions and call graphs with angr CFGFast.</li><li><b>Function representation:</b> Extract instruction counts, basic-block counts, control-flow edges, call sites, immediate-constant statistics, cyclomatic complexity, and mnemonic histograms.</li><li><b>Candidate retrieval:</b> Generate candidate function pairs using cosine similarity, a top-r selection rule, and a similarity threshold.</li><li><b>Structural matching:</b> Combine local similarity, preserved call relationships, and one-to-one matching constraints in a unified optimization objective.</li><li><b>Reduction and classical solvers:</b> Apply safe reductions and interaction-graph decomposition, with greedy, Hungarian, CP-SAT, simulated annealing, and small-instance exhaustive solvers.</li><li><b>Function-level evaluation:</b> Measure precision, recall, and F1 against raw and strict ground-truth correspondences.</li><li><b>Version identification:</b> Explore constant features, string features, differential weighting, and version-discriminative string scoring.</li><li><b>Statistical analysis:</b> Provide paired comparisons, ranking diagnostics, and Benjamini–Hochberg false discovery rate correction.</li></ul><h2 dir="ltr">Repository Structure</h2><p dir="ltr">The main directories and modules are organized as follows:</p><pre><pre>.<br>├── configs/ # Benchmark and experiment configurations<br>├── data/ # Binary data, intermediate features, and instances<br>├── experiments/<br>│ ├── pilot/ # Matching, baseline, ablation, and ranking results<br>│ │ └── score_cache_v2/ # Per-instance scoring caches<br>│ ├── case_study/ # Debian case-study results and reports<br>│ └── versiongrid_v3/ # Extended version-grid design and build records<br>├── results/ # Aggregate results, statistics, and logs<br>├── scripts/ # Experiment and report-generation entry points<br>├── src/binfuncgt/<br>│ ├── binary/ # ELF parsing, call graphs, and ground truth<br>│ ├── data/ # BinFuncGT schemas and instance I/O<br>│ ├── features/ # Static features and vectorization<br>│ ├── retrieval/ # Candidate function retrieval<br>│ ├── matching/ # Matching instances and objectives<br>│ ├── reduction/ # Safe and heuristic reductions<br>│ ├── solvers/ # Classical optimization methods<br>│ ├── scoring/ # Downstream structural scores<br>│ ├── evaluation/ # Evaluation metrics<br>│ └── feasibility/ # Classical matching and solver statistics<br>└── requirements.txt # Pinned Python dependencies<br></pre></pre><h2 dir="ltr">Configuration</h2><p dir="ltr">The principal benchmark configurations are:</p><table><tr><th><p dir="ltr">Configuration</p></th><th><p dir="ltr">Experiment setting</p></th></tr><tr><td><code>configs/binkit_x86_v2.yaml</code></td><td><p dir="ltr">Same-architecture matching across build variants</p></td></tr><tr><td><code>configs/binkit_xarch_v2.yaml</code></td><td><p dir="ltr">Cross-architecture matching with the same compiler and optimization level</p></td></tr><tr><td><code>configs/pilot_versiongrid_v2.yaml</code></td><td><p dir="ltr">Component and version comparisons on VersionGrid v2</p></td></tr><tr><td><code>configs/pilot_versiongrid_v3.yaml</code></td><td><p dir="ltr">Extended version-grid comparisons</p></td></tr></table><p dir="ltr">The <code>x86</code> configuration name is historical: its pairing rule is <code>arch_relation: same</code>, covering matching architectures represented in the input corpus.</p><p dir="ltr">Common settings include:</p><table><tr><th><p dir="ltr">Parameter</p></th><th><p dir="ltr">Main protocol setting</p></th></tr><tr><td><p dir="ltr">Candidate count per target function</p></td><td><code>r = 5</code></td></tr><tr><td><p dir="ltr">Cosine-similarity threshold</p></td><td><code>0.5</code></td></tr><tr><td><p dir="ltr">Same-architecture feature set</p></td><td><code>full</code></td></tr><tr><td><p dir="ltr">Cross-architecture feature set</p></td><td><code>structural</code></td></tr><tr><td><p dir="ltr">Matching objective weights</p></td><td><code>alpha = beta = 1</code></td></tr><tr><td><p dir="ltr">CP-SAT time budget</p></td><td><p dir="ltr">60 seconds by default in the main scoring runners</p></td></tr><tr><td><p dir="ltr">Structural score weights</p></td><td><code>(0.5, 0.3, 0.2)</code></td></tr></table><h2 dir="ltr">Experiment Scripts</h2><table><tr><th><p dir="ltr">Script</p></th><th><p dir="ltr">Purpose</p></th></tr><tr><td><code>scripts/rq1_function_gt.py</code></td><td><p dir="ltr">Function-level matching evaluation</p></td></tr><tr><td><code>scripts/rq1_function_gt_report.py</code></td><td><p dir="ltr">Function-level result summaries and paired comparisons</p></td></tr><tr><td><code>scripts/run_feasibility.py</code></td><td><p dir="ltr">Structural matching and per-instance feasibility statistics</p></td></tr><tr><td><code>scripts/analyze_results.py</code></td><td><p dir="ltr">Pilot result aggregation</p></td></tr><tr><td><code>scripts/score_v2.py</code></td><td><p dir="ltr">Multi-method benchmark scoring</p></td></tr><tr><td><code>scripts/report_v2.py</code></td><td><p dir="ltr">Scoring-cache summaries and statistical comparisons</p></td></tr><tr><td><code>scripts/run_baselines.py</code></td><td><p dir="ltr">Classical baselines through</p> <code>run</code> <p dir="ltr">and</p> <code>summarize</code> <p dir="ltr">subcommands</p></td></tr><tr><td><code>scripts/rq5_feature_attribution.py</code></td><td><p dir="ltr">Feature attribution analysis</p></td></tr><tr><td><code>scripts/rq6_stripped.py</code></td><td><p dir="ltr">Evaluation with stripped target binaries</p></td></tr><tr><td><code>scripts/rq7_diff_weighted.py</code></td><td><p dir="ltr">Differential feature-weighting experiments</p></td></tr><tr><td><code>scripts/rq7_tie_audit.py</code></td><td><p dir="ltr">Tie and candidate-set diagnostics</p></td></tr><tr><td><code>scripts/rq7_str_scorer.py</code></td><td><p dir="ltr">Version-discriminative string scoring</p></td></tr><tr><td><code>scripts/rq7_stats.py</code></td><td><p dir="ltr">Statistical comparisons of string-based methods</p></td></tr><tr><td><code>scripts/fdr_correction.py</code></td><td><p dir="ltr">Benjamini–Hochberg FDR correction</p></td></tr><tr><td><code>scripts/debian_case_study.py</code></td><td><p dir="ltr">Debian case-study evaluation</p></td></tr><tr><td><code>scripts/debian_str_idf.py</code></td><td><p dir="ltr">String-IDF evaluation on Debian binaries</p></td></tr></table><p></p>
Links
Where it is published
- DOI doi.org/10.6084/m9.figshare.34040505.v1 ↗
DOI / persistent id · from zivahub uct ac za
Catalogue records · 1
- OAI-PMH record api.figshare.com/v2/oai?verb=GetRecord&metadataPrefix=oai_dc&identifier=oai%3Af… ↗
metadata API · from zivahub uct ac za
Topics
- From keywords
- Astronomy & Astrophysics · Chemistry · Chemistry · Computer Science & AI · Computer Science & AI · Computer Science & AI · Computer Science & AI · Computer Science & AI · Computer Science & AI · Computer Science & AI · Computer Science & AI · Computer Science & AI · Computer Science & AI · Computer Science & AI · Earth & Environmental Science · Earth & Environmental Science · Earth & Environmental Science · Earth & Environmental Science · Earth & Environmental Science · Earth & Environmental Science · Earth & Environmental Science · Earth & Environmental Science · Earth & Environmental Science · Earth & Environmental Science · Earth & Environmental Science · Economics & Finance · Economics & Finance · Engineering · Engineering · Engineering · Engineering · Engineering · Engineering · Engineering · Engineering · Engineering · Engineering · Engineering · Humanities · Humanities · Humanities · Humanities · Life Sciences · Life Sciences · Life Sciences · Life Sciences · Materials Science · Mathematics & Statistics · Medicine & Health · Medicine & Health · Ocean & Atmospheric Science · Psychology & Behavioral Science · Social Science · Social Science · Social Science · Social Science
- Inferred from text
- Software engineering 68% · Tabular 65%
Provenance · 11 source records, 63 field assertions
| Source | Key | Last seen | Raw |
|---|---|---|---|
| ZivaHub | oai:figshare.com:article/34040505 | 5 d ago | JSON v1 |
| Deakin Research Online | oai:figshare.com:article/34040505 | 5 d ago | JSON v1 |
| DMU Figshare | oai:figshare.com:article/34040505 | 5 d ago | JSON v1 |
| HKU DataHub | oai:figshare.com:article/34040505 | 5 d ago | JSON v1 |
| Swinburne Figshare | oai:figshare.com:article/34040505 | 5 d ago | JSON v1 |
| DaYta Ya Rona | oai:figshare.com:article/34040505 | 5 d ago | JSON v1 |
| SUNScholarData | oai:figshare.com:article/34040505 | 5 d ago | JSON v1 |
| figshare | oai:figshare.com:article/34040505 | 4 d ago | JSON v1 |
| Loughborough Research Repository | oai:figshare.com:article/34040505 | 4 d ago | JSON v1 |
| GRANTS Data | oai:figshare.com:article/34040505 | 4 d ago | JSON v1 |
| UP Research Data Repository | oai:figshare.com:article/34040505 | 4 d ago | JSON v1 |
| Field | Assertion | Extractor | Evidence |
|---|---|---|---|
| access_level | source · zivahub uct ac za | connector:zivahub_uct_ac_za@1.0.0 | |
| concepts[field].anzsrc:group:4612 | enrichment · figshare dmu ac uk | taxonomy-embedding@1.1.0 | title+keywords+description (68%) |
| concepts[field].local:field:astronomy | mapping · figshare com | connector:figshare_com@1.0.0 | |
| concepts[field].local:field:chemistry | mapping · figshare com | connector:figshare_com@1.0.0 | |
| concepts[field].local:field:chemistry | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:computer-science-ai | mapping · researchdata up ac za | connector:researchdata_up_ac_za@1.0.0 | |
| concepts[field].local:field:computer-science-ai | mapping · figshare com | connector:figshare_com@1.0.0 | |
| concepts[field].local:field:computer-science-ai | mapping · zivahub uct ac za | connector:zivahub_uct_ac_za@1.0.0 | |
| concepts[field].local:field:computer-science-ai | mapping · dro deakin edu au | connector:dro_deakin_edu_au@1.0.0 | |
| concepts[field].local:field:computer-science-ai | mapping · grantsdata jst go jp | connector:grantsdata_jst_go_jp@1.0.0 | |
| concepts[field].local:field:computer-science-ai | mapping · figshare dmu ac uk | connector:figshare_dmu_ac_uk@1.0.0 | |
| concepts[field].local:field:computer-science-ai | mapping · datahub hku hk | connector:datahub_hku_hk@1.0.0 | |
| concepts[field].local:field:computer-science-ai | mapping · figshare swinburne edu au | connector:figshare_swinburne_edu_au@1.0.0 | |
| concepts[field].local:field:computer-science-ai | mapping · dayta nwu ac za | connector:dayta_nwu_ac_za@1.0.0 | |
| concepts[field].local:field:computer-science-ai | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:computer-science-ai | mapping · scholardata sun ac za | connector:scholardata_sun_ac_za@1.0.0 | |
| concepts[field].local:field:earth-environmental | mapping · datahub hku hk | connector:datahub_hku_hk@1.0.0 | |
| concepts[field].local:field:earth-environmental | mapping · scholardata sun ac za | connector:scholardata_sun_ac_za@1.0.0 | |
| concepts[field].local:field:earth-environmental | mapping · grantsdata jst go jp | connector:grantsdata_jst_go_jp@1.0.0 | |
| concepts[field].local:field:earth-environmental | mapping · figshare swinburne edu au | connector:figshare_swinburne_edu_au@1.0.0 | |
| concepts[field].local:field:earth-environmental | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:earth-environmental | mapping · figshare com | connector:figshare_com@1.0.0 | |
| concepts[field].local:field:earth-environmental | mapping · dro deakin edu au | connector:dro_deakin_edu_au@1.0.0 | |
| concepts[field].local:field:earth-environmental | mapping · researchdata up ac za | connector:researchdata_up_ac_za@1.0.0 | |
| concepts[field].local:field:earth-environmental | mapping · dayta nwu ac za | connector:dayta_nwu_ac_za@1.0.0 | |
| concepts[field].local:field:earth-environmental | mapping · figshare dmu ac uk | connector:figshare_dmu_ac_uk@1.0.0 | |
| concepts[field].local:field:earth-environmental | mapping · zivahub uct ac za | connector:zivahub_uct_ac_za@1.0.0 | |
| concepts[field].local:field:economics-finance | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:economics-finance | mapping · figshare com | connector:figshare_com@1.0.0 | |
| concepts[field].local:field:engineering | mapping · figshare com | connector:figshare_com@1.0.0 | |
| concepts[field].local:field:engineering | mapping · zivahub uct ac za | connector:zivahub_uct_ac_za@1.0.0 | |
| concepts[field].local:field:engineering | mapping · dro deakin edu au | connector:dro_deakin_edu_au@1.0.0 | |
| concepts[field].local:field:engineering | mapping · figshare dmu ac uk | connector:figshare_dmu_ac_uk@1.0.0 | |
| concepts[field].local:field:engineering | mapping · datahub hku hk | connector:datahub_hku_hk@1.0.0 | |
| concepts[field].local:field:engineering | mapping · figshare swinburne edu au | connector:figshare_swinburne_edu_au@1.0.0 | |
| concepts[field].local:field:engineering | mapping · dayta nwu ac za | connector:dayta_nwu_ac_za@1.0.0 | |
| concepts[field].local:field:engineering | mapping · scholardata sun ac za | connector:scholardata_sun_ac_za@1.0.0 | |
| concepts[field].local:field:engineering | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:engineering | mapping · grantsdata jst go jp | connector:grantsdata_jst_go_jp@1.0.0 | |
| concepts[field].local:field:engineering | mapping · researchdata up ac za | connector:researchdata_up_ac_za@1.0.0 | |
| concepts[field].local:field:humanities | mapping · dayta nwu ac za | connector:dayta_nwu_ac_za@1.0.0 | |
| concepts[field].local:field:humanities | mapping · figshare com | connector:figshare_com@1.0.0 | |
| concepts[field].local:field:humanities | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:humanities | mapping · researchdata up ac za | connector:researchdata_up_ac_za@1.0.0 | |
| concepts[field].local:field:life-sciences | mapping · researchdata up ac za | connector:researchdata_up_ac_za@1.0.0 | |
| concepts[field].local:field:life-sciences | mapping · figshare com | connector:figshare_com@1.0.0 | |
| concepts[field].local:field:life-sciences | mapping · dayta nwu ac za | connector:dayta_nwu_ac_za@1.0.0 | |
| concepts[field].local:field:life-sciences | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:materials-science | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:mathematics-statistics | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:medicine-health | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:medicine-health | mapping · figshare com | connector:figshare_com@1.0.0 | |
| concepts[field].local:field:ocean-atmospheric | mapping · figshare com | connector:figshare_com@1.0.0 | |
| concepts[field].local:field:psychology-behavioral | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:social-science | mapping · figshare com | connector:figshare_com@1.0.0 | |
| concepts[field].local:field:social-science | mapping · repository lboro ac uk | connector:repository_lboro_ac_uk@1.0.0 | |
| concepts[field].local:field:social-science | mapping · researchdata up ac za | connector:researchdata_up_ac_za@1.0.0 | |
| concepts[field].local:field:social-science | mapping · dayta nwu ac za | connector:dayta_nwu_ac_za@1.0.0 | |
| concepts[modality].local:modality:tabular | enrichment · zivahub uct ac za | keyword-concept-rules@1.0.0 | title+description (65%) |
| description | source · zivahub uct ac za | connector:zivahub_uct_ac_za@1.0.0 | /metadata/dc/description |
| license | source · zivahub uct ac za | connector:zivahub_uct_ac_za@1.0.0 | /metadata/dc/rights |
| publication_date | source · zivahub uct ac za | connector:zivahub_uct_ac_za@1.0.0 | |
| title | source · zivahub uct ac za | connector:zivahub_uct_ac_za@1.0.0 | /metadata/dc/title |