docs(v2): port comparisons (FHE/KMS/HSM/Vault) into /concepts/compare - #43
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
1c38305 to
eea1c10
Compare
Ports the comparison content from PR #31 (AWS KMS merge + ZeroKMS vs HSM) and PR #34 (HashiCorp Vault) out of the legacy content/stack tree and into the new IA `/compare` section: - content/docs/compare/aws-kms.mdx (from #31) - content/docs/compare/zerokms-vs-hsm.mdx (from #31; retains its WIP TODOs) - content/docs/compare/hashicorp-vault.mdx (from #34) - public/images/hsm.png (from #31) Each page gains v2 facets (type: concept, components, audience, reviewBy — the claims-page review date rather than verifiedAgainst). Intra-comparison links are rewritten to `/compare/*`; all other cross-links keep pointing at the still-served legacy `/stack/...` pages (which hold the real content until their sections migrate). The dead `/stack/cipherstash/secrets` link on the Vault page (no secrets page exists in this repo) is delinked. The comparisons overview and nav (index.mdx, meta.json) list the three ported pages. The FHE comparison stays in the legacy tree for now — it is written against EQL v2 (eql_v2_encrypted, BLAKE3) and needs a v3 content refresh before porting, tracked separately in IA.md (/compare/fhe port). Supersedes #31 and #34 for the v2 branch. Claude-Session: https://claude.ai/code/session_01CqDNqLSEEkCi7xAJFq7HJA
Completes the /compare section: content/docs/compare/fhe.mdx, updated from EQL v2 to EQL v3 and wired into the overview cards and nav. - Types/operators: eql_v2_encrypted -> the eql_v3 domain-variant model (text_eq / int8_ord / text_match / text_search), typed-operand casts, and encrypted text match via bloom-filter `@>` (LIKE is blocked on ciphertext, now stated explicitly). - Scheme portfolio + leakage rewritten around the v3 terms (hm / ob / bf) and the new order-preserving encryption (OPE) fast path; dropped the unverified BLAKE3 primitive claim. - New "Real-world performance on EQL v3" section with v3 database-level numbers (0.12 ms exact equality ~1.3x plaintext; OPE range 0.12 ms ~1.2x plaintext; ORE range 4x faster than v2; bloom match 100-400x vs no index -- 1M rows, M1 Max, PG 17), from cipherstash/benches PR #23. Kept the primitive-level TFHE-vs-ORE table (tfhe-ore-bench). A public citation for the v3 DB figures is flagged with a TODO pending publication. - Links repointed to the v3 EQL reference (/reference/eql, core-concepts); cross-links to un-ported pages keep pointing at the served legacy /stack tree. Based on the v3 EQL reference; source of truth for terminology and terms is content/docs/reference/eql/core-concepts. Claude-Session: https://claude.ai/code/session_01CqDNqLSEEkCi7xAJFq7HJA
The revised IA folds Comparisons into Concepts (no top-level /compare tab). The rebase already moved these pages into content/docs/concepts/compare/; this adjusts their in-file content to match: - repoint /compare/* cross-links and index Cards to /concepts/compare/* - components facet [zerokms] -> [platform] (zerokms collapsed into platform in the components enum) fhe.mdx keeps [encryption, eql]. The zerokms-vs-hsm page is retained.
eea1c10 to
6db2352
Compare
…sed API The ported snippet used new LockContext().identify(userJwt), deprecated in protect-ffi 0.25, and passed the resulting Result straight to withLockContext() instead of unwrapping .data. main fixed this in #57; this carries the fix across so merging the port doesn't reintroduce it.
|
Pushed The const lockContext = await new LockContext().identify(userJwt); // deprecated
await client.encrypt(...).withLockContext(lockContext); // Result, not LockContext
Merging as-is would have reintroduced into the v2 tree exactly what #57 removed from
Heads up that this branch is 33 commits behind |
|
Reviewed against shipped Stack 1.0-rc.0 / EQL 3.0. No changes needed for correctness — the pages already match what shipped:
Two optional (non-blocking) items, your call:
|
Ports and refreshes the comparison section under
/concepts/compare, against the currentv2branch.Pages
The Comparisons item is a menu-only folder in the sidebar; the four comparisons are its children.
Updates from the original draft
datakeysbatch endpoint, removing the obsolete claim that envelope-mode data-key generation cannot be batchedValidation
bun run types:checkbun run lintSupersedes the older comparison drafts from #31 and #34.