The Blind Substrate: A Minimalist Architecture for Secure, Scalable Distributed Systems

Modern distributed systems struggle to balance security (privacy from the provider), scalability (data volume), and consistency (complex state). Traditional architectures conflate these concerns—databases handle both storage and state, and Key Management Systems (KMS) hold custody of secrets.

The Blind Substrate decouples these concerns into orthogonal, highly constrained layers. By enforcing strict separation between permission (Blind KMS), volume (Hash Store), state (Pointer Store), and logic (Client Library), we create a substrate that is intrinsically secure, scalable, and easier to reason about.

1. The Core Philosophy

  1. Cryptographic Dependence, Informational Independence: The client depends on the server for permission ( decryption, state updates), but the server is mathematically prevented from learning the client’s data.
  2. Offloading Complexity: Data volume moves to immutable storage; cryptographic complexity moves to the client. The transactional core remains small, bounded, and fast.

2. Layer 1: The Blind KMS (Permission)

The Blind KMS is a stateless, blind key derivation oracle. Unlike traditional KMS, it never sees plaintext or ciphertext.

Mechanism

  1. Commitment: Client computes commit = H(data || salt || context).
  2. Derivation: Client sends key_id and commit to the server.
  3. Key Generation: Server derives k = HKDF(master_secret, key_id || commit || epoch).
  4. Control: Server returns k to the client after enforcing RBAC and logging the access.

Properties

3. Layer 2: The Hash Store (Volume)

The Hash Store is a content-addressable, immutable blob store. It handles the “weight” of the system.

4. Layer 3: The Pointer Store (State)

The Pointer Store is a transactional, bounded key-value fabric. It manages the “meaning” and relationships of the data.

Architecture

5. Layer 4: The Client Library (Logic)

The Client Library is the “Crypto Brain.” It orchestrates the other layers and enforces best practices.

6. Layer 5: The GC Service (Lifecycle)

Because the Hash Store is immutable and the Pointer Store is versioned, the system requires an external Garbage Collection Service.

7. Layer 6: Accounting & Quotas (Enforcement)

To support multi-tenancy and prevent DoS, the Accounting Service tracks resource usage as billable, enforceable state.

Summary of the Substrate

Layer Responsibility Visibility Constraint
Blind KMS Permission Blind (Hashes only) Stateless HKDF
Hash Store Volume Opaque Blobs Immutable, Content-Addressed
Pointer Store State Pointers/Metadata Bounded K/V, Transactional
Client Library Logic Plaintext (Local) AEAD, Compression, Padding

By decoupling these concerns, the Blind Substrate allows for a system where the server can say yes or no to an operation, but can never see the data it is protecting.