A Transparent and Verifiable Way to Sync the AT Protocol's PLC Directory

update spec

+3 -3
+3 -3
SPECIFICATION.md
··· 10 10 11 11 ## 2. Key Terminology 12 12 13 - * **Operation:** A single DID PLC operation, as exported from a PLC directory's [`/export` endpoint](https://web.plc.directory/api/redoc#operation/Export). It is represented as a single JSON object. 13 + * **Operation:** A single DID PLC operation, as exported from a PLC directory's export endpoint. It is represented as a single JSON object. 14 14 * **Bundle:** A single compressed file containing a fixed number of operations. 15 15 * **Index:** A JSON file named `plc_bundles.json` that contains metadata for all available bundles in the repository. It is the entry point for discovering and verifying bundles. 16 - * **Content Hash:** The [SHA-256](https://en.wikipedia.org/wiki/SHA-2) hash of the *uncompressed* [JSONL](https://jsonlines.org/) content of a single bundle. This hash uniquely identifies the bundle's data. 16 + * **Content Hash:** The SHA-256 hash of the *uncompressed* content of a single bundle. This hash uniquely identifies the bundle's data. 17 17 * **Chain Hash:** A cumulative SHA-256 hash that links a bundle to its predecessor, ensuring the integrity and order of the entire chain. 18 18 * **Compressed Hash:** The SHA-256 hash of the *compressed* `.jsonl.zst` bundle file. This is used to verify file integrity during downloads. 19 19 ··· 105 105 106 106 ### 6.3. Hash Calculation 107 107 108 - Three distinct hashes are calculated for each bundle. All use the **SHA-256** algorithm. 108 + Three distinct hashes are calculated for each bundle. All use the [SHA-256](https://en.wikipedia.org/wiki/SHA-2) algorithm. 109 109 110 110 1. **Content Hash (`content_hash`):** 111 111 * This hash is calculated on the **uncompressed** JSONL data.