diff options
Diffstat (limited to 'docs/utxo-commitment.md')
| -rw-r--r-- | docs/utxo-commitment.md | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/docs/utxo-commitment.md b/docs/utxo-commitment.md index 991e5d9..ab43deb 100644 --- a/docs/utxo-commitment.md +++ b/docs/utxo-commitment.md | |||
| @@ -21,7 +21,8 @@ python3 scripts/verify-utxo-set.py --out utxo-report.json --json | |||
| 21 | 21 | ||
| 22 | The verifier: | 22 | The verifier: |
| 23 | 23 | ||
| 24 | - parses Bitflash block files directly; | 24 | - parses Bitflash block files directly with the shared Python chain parser; |
| 25 | - streams `blk*.dat` records instead of loading full block files into memory; | ||
| 25 | - reconstructs the best chain rooted at the Bitflash genesis block; | 26 | - reconstructs the best chain rooted at the Bitflash genesis block; |
| 26 | - ignores side blocks that may also be present in `blk*.dat`; | 27 | - ignores side blocks that may also be present in `blk*.dat`; |
| 27 | - verifies every scanned block merkle root; | 28 | - verifies every scanned block merkle root; |
| @@ -98,6 +99,23 @@ last-write-wins semantics for the UTXO map, matching the legacy index model. | |||
| 98 | Those warnings are part of the report so auditors can see the historical debt | 99 | Those warnings are part of the report so auditors can see the historical debt |
| 99 | instead of relying on a polished summary. | 100 | instead of relying on a polished summary. |
| 100 | 101 | ||
| 102 | For synthetic chains or future clean consensus ranges, auditors can make | ||
| 103 | duplicates a hard failure: | ||
| 104 | |||
| 105 | ```bash | ||
| 106 | python3 scripts/verify-utxo-set.py --strict-duplicates | ||
| 107 | ``` | ||
| 108 | |||
| 109 | The default remains compatible with the current historical chain because it has | ||
| 110 | known legacy duplicate-output overwrites. | ||
| 111 | |||
| 112 | ## Shared Parser | ||
| 113 | |||
| 114 | The audit scripts share `scripts/bitflash_chain.py` for block parsing, | ||
| 115 | main-chain selection, UTXO application, canonical JSON, and genesis | ||
| 116 | reconstruction. That keeps `verify-utxo-set.py`, `verify-fair-launch.py`, | ||
| 117 | `prove-utxo.py`, and the explorer on the same serialization rules. | ||
| 118 | |||
| 101 | ## Future Consensus Path | 119 | ## Future Consensus Path |
| 102 | 120 | ||
| 103 | This tool is the low-risk first step toward consensus commitments. A future | 121 | This tool is the low-risk first step toward consensus commitments. A future |