Skip to content

docs: add CipherStash vs HashiCorp Vault comparison#34

Draft
coderdan wants to merge 2 commits into
mainfrom
docs/vault-comparison
Draft

docs: add CipherStash vs HashiCorp Vault comparison#34
coderdan wants to merge 2 commits into
mainfrom
docs/vault-comparison

Conversation

@coderdan

@coderdan coderdan commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

Part of CIP-3290 (issue stays open until the doc, backend, and in-region run all land)

Adds a new comparison page: CipherStash vs HashiCorp Vault, scoped to Vault's Transit secrets engine (the encryption-as-a-service analog to ZeroKMS).

What it adds

  • comparisons/hashicorp-vault.mdx — the doc, registered in meta.json and the overview index.mdx cards.
  • Built around the trilemma: no single Vault Transit configuration delivers plaintext-stays-client-side + per-record keys + bulk amortization at once — each gives two; ZeroKMS gives all three.
  • Covers Transit's direct mode (plaintext to Vault, has batch) vs envelope/datakey mode (plaintext client-side, one key per call), and the scattered-read reuse collapse (explained inline, so the page is self-contained).
  • Trust/capability comparison table, when-to-use-each, and a coexistence note.

Draft status

  • Performance section is intentionally qualitative. Vault Transit has a batch API, so this is not a throughput blowout — the differentiator is the trilemma, not raw speed. A TODO marks where in-region numbers go once the vault-transit backend lands in cipherstash/benches (kms-app).
  • Framing is trust/architecture-led by design.

Notes

https://claude.ai/code/session_018ag38k33yzmVZhLkVx7CPQ

Adds a Transit-scoped comparison built around the trilemma: no single Vault
Transit configuration delivers plaintext-stays-client-side + per-record keys +
bulk amortization at once, while ZeroKMS does. Covers Transit's direct vs
envelope (datakey) modes, the scattered-read reuse collapse (explained inline),
and the trust/capability differences. Performance section is qualitative pending
the in-region vault-transit benchmark.

Claude-Session: https://claude.ai/code/session_018ag38k33yzmVZhLkVx7CPQ
@vercel

vercel Bot commented Jun 29, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
public-docs Error Error Jun 29, 2026 3:29am

Request Review

Vault's transit/decrypt is batched, so a scattered read unwraps all distinct
data keys in one round-trip — it does NOT collapse the way AWS KMS does. The
real cost of per-record keys in Vault envelope mode lands on WRITES (datakey has
no batch API = one round-trip per record), and the cost of reuse is the security
model (shared key, lost per-record audit/revocation). Retitle 'Why the reuse row
collapses' -> 'Reading the table' and rewrite accordingly; fix the plaintext and
performance notes to match.

Claude-Session: https://claude.ai/code/session_018ag38k33yzmVZhLkVx7CPQ
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant