docs: cryptography deep dives#214
Conversation
|
Review notes This PR is clean. No broken links, no banned patterns, frontmatter complete (including One optional improvement (not blocking): Ready to merge. |
|
Two issues to address before merging: 1. Em-dashes in
|
| File | Current order | Proposed order |
|---|---|---|
certified-data.md |
11 | 10 |
| chain-fusion | (current) | 11 |
vetkeys.md |
11 | 12 |
| security | (current) | 13 |
| governance | (current) | 14 |
Please verify the full ordering in the concepts sidebar before adjusting, as the right numbers depend on what other pages occupy orders 10 and above.
|
Content accuracy follow-up — The new subsection on key resharing states:
The Learn Hub source material only describes resharing occurring when subnet membership changes (e.g., node rotation). It does not describe periodic intra-subnet resharing as an adaptive adversary defense mechanism. This claim may be accurate — it is consistent with how proactive secret sharing works in threshold cryptography — but it goes beyond what the migration source supports. Please verify it against the IC interface spec or If not verifiable from available sources, the sentence should be narrowed to what is confirmed:
|
|
Feedback addressed:
|
dabad66 to
d191270
Compare
cd6cbbb to
155259a
Compare
Add docs/concepts/certified-data.md covering the certified query response mechanism: single public key verification, certified state tree, certified variables interface, and applications (certified assets, Internet Identity). Expand docs/concepts/chain-key-cryptography.md with context on why threshold ECDSA is harder than BLS (asynchronous network, robustness requirements, protocol papers) and how Schnorr/EdDSA protocols are simplified variants. Link to new certified-data.md. Update docs/concepts/index.md and docs/guides/backends/certified-variables.md to reference certified-data.md. All 4 staging files under .migration/learn-hub/.../chain-key-cryptography/ consumed and deleted.
- Replace 4 em-dashes in certified-data.md with commas, colon, or parentheses - Resolve sidebar order collision: vetkeys 11->12, security 12->13 (certified-data stays at 11 in the sequence after chain-fusion at 10) - Narrow the resharing claim in chain-key-cryptography.md to what is confirmed from source material: resharing runs on membership changes, not described as periodic proactive secret sharing
… pages Remove "blockchain" comparisons from certified-data.md intro paragraphs. Replace "cross-chain" with "crosschain" and "other blockchains" with "other chains" in chain-key-cryptography.md. Replace "blockchain address" with "network address". Fix DAO reference in security.md. Remove em-dashes from Upstream comments. Fix "learn hub staging:" Upstream comment format.
…benefit, security cross-link - certified-data.md: expand NNS on first use - chain-key-cryptography.md: expand NNS on first use in Deployed keys section; add DKG research paper link (eprint.iacr.org/2021/339) from Subnet Keys source; add VetKeys to 'Why threshold cryptography matters' benefits list - security.md: add link to certified-data.md where certified variables are first explained
9055473 to
55d600c
Compare
## Summary - Adds `docs/concepts/certified-data.md` — concept page explaining: the verification problem (compare to Bitcoin SPV / Ethereum light clients), how ICP's single root public key enables chain-wide certificate verification, the certified state tree mechanism, certified variables interface, and applications (certified assets, Internet Identity) - Expands `docs/concepts/chain-key-cryptography.md`: - Adds vetKeys to the "Why threshold cryptography matters" benefits list - Adds DKG research paper link (`eprint.iacr.org/2021/339`) to the DKG section - Expands NNS on first use in the Deployed keys section - Adds context on why threshold ECDSA is significantly harder than threshold BLS (asynchronous network requirement, robustness against 1/3 faulty nodes, protocol papers); notes that Schnorr/Ed25519 protocols are simplified variants with the same properties - Updates `docs/concepts/security.md` — adds link to `certified-data.md` where certified variables are first explained (cross-referencing the concept page from the security model page) - Updates `docs/guides/backends/certified-variables.md` — links to the new concept page for background - Deletes all 4 staging files from `.migration/learn-hub/.../chain-key-cryptography/` ## Completeness audit (staff technical writer sign-off) Source articles audited element-by-element via Zendesk API raw HTML: - **Certified Communication** (34214090576404): all content migrated — verification problem, single public key approach, certified variables (update/query pattern), 32-byte value + Merkle trees ✓. No images or tables in source. - **Chain-Key Cryptography** (34209486239252): all content migrated — 5-benefit numbered list (including vetKeys now added), DKG explanation, threshold signature schemes ✓. No images or tables in source. - **Chain-Key Signatures** (34209497587732): all content migrated — threshold ECDSA vs BLS difficulty, robustness/asynchronous network requirement, research paper links, Schnorr/EdDSA as simplified variants ✓. No images or tables in source. - **Subnet Keys and Subnet Signatures** (34209540682644): all content migrated — 4 subnet key uses (random beacon, XNet signing, client validation, randomness), threshold BLS properties, DKG paper link now added ✓. No images or tables in source. ## Cross-referencing - `security.md` now links to `certified-data.md` at the point where certified variables are introduced as the solution to query call integrity - `certified-variables.md` (guide) links to both `certified-data.md` (concept) and `security.md` (security implications) - `chain-key-cryptography.md` links to `certified-data.md` and `vetkeys.md` ## Sync recommendation `hand-written` <!-- Upstream: informed by Learn Hub articles "Certified Communication" (34214090576404), "Chain-Key Cryptography" (34209486239252), "Chain-Key Signatures" (34209497587732), "Subnet Keys and Subnet Signatures" (34209540682644) (migrated, source retired) -->
…ocs (#208) ## Summary Migrates all 57 developer-relevant articles from the Learn Hub \"How does ICP work?\" section into the developer docs, replacing Learn Hub as the canonical source for ICP protocol concepts before the site is retired. This was executed as 9 content batch PRs plus a post-migration review pass, all merged into this staging branch before landing on `main`: **Batch 1 — Protocol stack** (#209): Consensus, peer-to-peer, message routing, execution layer, state synchronization, and performance concept pages under `docs/concepts/protocol/`. **Batch 2 — Node infrastructure** (#210): `docs/concepts/node-infrastructure.md` — TEE (SEV-SNP) attestation, IC-OS layer model (SetupOS / HostOS / GuestOS), TEE key derivation and disk encryption. **Batch 3 — Edge infrastructure** (#211): `docs/concepts/edge-infrastructure.md` — boundary nodes, HTTP gateway, edge caching. **Batch 4 — Evolution and scaling** (#212): `docs/concepts/evolution-scaling.md` — horizontal scaling via subnet sharding, fault tolerance, governance-driven subnet creation, forkless protocol upgrades. **Chain fusion deep dives** (#213): Expanded `docs/concepts/chain-fusion/` with dedicated pages for Bitcoin integration, ckBTC mechanics, Ethereum integration, EVM RPC, Solana RPC, Dogecoin integration, and Exchange Rate Canister. Architecture and flow diagrams migrated to `public/concepts/chain-fusion/`. **Cryptography deep dives** (#214): Expanded `docs/concepts/chain-key-cryptography.md` and `docs/concepts/certified-data.md` with subnet keys, threshold signing internals, and certified communication theory. **Tokens, ledgers, and cycles** (#215): Expanded `docs/concepts/ledgers.md` and `docs/concepts/cycles.md` with ledger architecture, accounts, sub-accounts, cycles ledger transfer semantics, and NNS tokenomics. **Governance deep dives** (#216): Expanded `docs/concepts/governance.md` and added `docs/concepts/sns-framework.md` — NNS neuron attributes and bonuses, voting rewards formula, Neurons Fund, proposal taxonomy, SNS framework and architecture, DAO settings, launch flow, SNS neurons and rewards, and SNS proposals. **Principals and canister model** (#217): Expanded `docs/concepts/principals.md` and `docs/concepts/canisters.md` — principal model, canister control, Wasm execution model, and `docs/concepts/app-architecture.md`. **Post-migration holistic review** (#218, #226): - Navigation restructured across all concepts, guides, and references — sentence case applied throughout, section indices completed - Cross-reference audit: all Learn Hub outbound links replaced with internal doc links; first-use terms linked to their concept pages - Glossary expanded with TEE, boundary node, and cycle-related entries - System canisters content placement corrected - Exchange Rate Canister restructured across concept, reference, and guide pages (#XRC commits) **Migration infrastructure** (initial prep commits): - `.docs-plan/learn-hub-migration.md` — agent workflow and authoring rules for 9-batch execution - `.docs-plan/learn-hub-navigation.md` — per-article mapping (target file, action type, cross-link table) - `AGENTS.md / CLAUDE.md` — Learn Hub removed from external-docs list; linking rule updated - `sidebar.mjs` — all new concept pages registered ## Closes - Closes #187 — Content gap analysis: Learn Hub vs developer docs - Closes #190 — Gap analysis: articles on learn.internetcomptuter.org vs developer-docs `reference` and `concepts` - Closes #226 — Post-migration holistic review (content placement, nav structure, glossary, first-use terms) ## Sync recommendation hand-written (all pages authored from Learn Hub source articles via Zendesk API; no upstream repo to sync from) <!-- Upstream: source articles fetched from learn.internetcomputer.org via Zendesk API (2026-05-06 through 2026-05-11) -->
Summary
docs/concepts/certified-data.md— concept page explaining: the verification problem (compare to Bitcoin SPV / Ethereum light clients), how ICP's single root public key enables chain-wide certificate verification, the certified state tree mechanism, certified variables interface, and applications (certified assets, Internet Identity)docs/concepts/chain-key-cryptography.md:eprint.iacr.org/2021/339) to the DKG sectiondocs/concepts/security.md— adds link tocertified-data.mdwhere certified variables are first explained (cross-referencing the concept page from the security model page)docs/guides/backends/certified-variables.md— links to the new concept page for background.migration/learn-hub/.../chain-key-cryptography/Completeness audit (staff technical writer sign-off)
Source articles audited element-by-element via Zendesk API raw HTML:
Cross-referencing
security.mdnow links tocertified-data.mdat the point where certified variables are introduced as the solution to query call integritycertified-variables.md(guide) links to bothcertified-data.md(concept) andsecurity.md(security implications)chain-key-cryptography.mdlinks tocertified-data.mdandvetkeys.mdSync recommendation
hand-written