Proof Lab
StartEcosystem
Explore (579)Live Systems (52)Pricing
Log InGet API Key✓ Verify It Yourself
H33-Key — Machine IdentityH33-You — Human IdentityH33-API-G — Governed API AuthorityAgent-008 — AI GovernanceH33-74 — Portable ProofH33-PQ-Time — Temporal EvidenceH33-Verify — Offline VerificationH33-Recovery — Ransomware RecoveryHATS — Cyber InsuranceAPQC — PQ MigrationH33-GPIS — Federal ProcurementH33-AIR — Wireless TrustH33-Swarm — Adversarial EvidenceH33-PQ-Video — Meeting AuthorityH33-GIT — Governed LineageH33-128H33-CKKSH33-256H33-FHE-IQH33-TFHEFHE OverviewH33-CompileZK LookupsBiometricsH33-3-KeyH33-MPCZK-TrustlessZK-PhishZK-VerifyPQC ArchitectureStorage EncryptionAI DetectionEncrypted Search
Performance · 5 min read

Session Resume at 50µs:
Instant Re-Authentication

H33's new session resume feature authenticates returning users in just 50 microseconds. Learn how session context management eliminates redundant verification.

2.17M/s
Auth/sec
~42µs
Per Auth
96
CPU Cores
Graviton4
Platform

When a user returns to your application, why make them wait? H33's new session resume feature re-authenticates returning users in just 50 microseconds--that's 4.4x faster than a full authentication and essentially instant from a user's perspective.

Session Resume Performance

Session Resume: 50µs
Full Auth (Turbo): 1.36ms
Speedup: 4.4x faster
User perception: Instant

How Session Resume Works

Traditional authentication re-verifies everything on each request: biometrics, cryptographic proofs, and attestations. This is wasteful when the user's context hasn't changed.

Session resume takes a smarter approach:

// First authentication - full verification
const initial = await h33.auth.fullStack({
  userId: 'user_123',
  biometric: faceData,
  mode: 'turbo'
});
// 1.36ms - creates session context

// Session resume - lightning fast
const resumed = await h33.session.resume({
  sessionId: initial.sessionId,
  deviceFingerprint: fingerprint
});
// 50µs - verifies cached context

Inside the Resume Pipeline

A full H33 authentication runs three stages in sequence: BFV fully homomorphic encryption for biometric matching, a ZK proof lookup for identity verification, and a Dilithium attestation signature. On our production Graviton4 cluster (c8g.metal-48xl, 96 vCPUs), this pipeline processes 32 users per ciphertext batch in approximately 1,109µs--yielding the 1.595 million authentications per second figure shown above.

Session resume bypasses the two most expensive stages. The BFV inner product alone accounts for roughly 1,109µs of the full-stack latency, and Dilithium sign-plus-verify adds another 244µs. By caching the results of both operations and validating only the session binding, resume drops the per-request cost to the in-process DashMap lookup (0.085µs) plus a SHA3-256 HMAC over the session token and device fingerprint. The combined overhead lands at approximately 42-50µs depending on payload size.

Key Insight

Session resume does not weaken the cryptographic guarantee. The FHE biometric match result and ZK proof are computed once during full authentication and stored in an encrypted session context signed with Dilithium3 (ML-DSA-65). Resuming simply verifies that the signature is valid and the session has not been tampered with--a single Dilithium verify() call, not a full sign+verify cycle.

Session Context Architecture

Each session context is a compact binary structure containing the original authentication verdict, a monotonic timestamp, the device fingerprint hash, and a Dilithium3 signature over all preceding fields. The context is encrypted at rest with AES-256-GCM keyed from the server's Kyber-derived session master key, ensuring that even if an attacker obtains the raw cache contents, they cannot forge or replay a session.

FieldSizeDescription
Auth Verdict1 bytePass/fail + confidence level (3 bits)
Timestamp8 bytesMonotonic nanosecond counter
Device Hash32 bytesSHA3-256 of fingerprint components
User Batch Index2 bytesSlot within 32-user BFV ciphertext
Proof Digest32 bytesSHA3-256 of cached ZK proof
Dilithium3 Sig3,293 bytesML-DSA-65 signature over fields above
Total3,368 bytesPer-session overhead

At 3,368 bytes per session, storing one million active sessions requires just 3.2 GB--comfortably within the 377 GiB available on a Graviton4 metal instance. The in-process DashMap holding these contexts adds zero network latency and zero serialization cost, which is critical: we measured that switching to a TCP-based cache (even on localhost) caused an 11x throughput regression at 96 workers due to connection serialization overhead.

Security Without Compromise

Speed doesn't mean sacrificing security. Session resume maintains full cryptographic verification:

Every component in the resume path is post-quantum secure. The session signature uses ML-DSA-65 (CRYSTALS-Dilithium3, FIPS 204), the session encryption uses AES-256-GCM with Kyber-derived keys, and the proof digest uses SHA3-256. There is no classical-only cryptography anywhere in the chain, which means session resume is resistant to harvest-now-decrypt-later attacks from day one.

When Full Auth is Required

Session resume automatically falls back to full authentication when:

This adaptive approach gives you speed for normal operations and full security when it matters. In practice, approximately 85-90% of requests within a session window qualify for resume, meaning the effective per-auth cost across a typical session drops well below the ~42µs full-stack average.

Performance Comparison

Operation Latency Pipeline Stages
Full Auth (Turbo) 1.36ms FHE + ZKP + Attestation
Full Auth (Standard) 633µs FHE + ZKP + Attestation
Session Resume 42µs DashMap lookup + Dilithium verify
Cached Proof Verify 32µs DashMap lookup only

Implementation Guide

// Configure session management
const sessionManager = h33.createSessionManager({
  ttl: '24h',           // Session lifetime
  resumeWindow: '1h',   // Resume without re-auth
  deviceBinding: true,  // Require device match
  riskThreshold: 0.7    // Trigger full auth above this
});

// Middleware for automatic session handling
app.use(sessionManager.middleware());

// In your routes, authentication is automatic
app.get('/dashboard', async (req, res) => {
  // req.auth is populated - either from resume (50µs)
  // or full auth (1.36ms) based on context
  const user = req.auth.user;
  // ...
});

The resumeWindow parameter controls how long a session context remains eligible for fast-path verification. After the window expires, the next request triggers a full FHE+ZKP+attestation pipeline, refreshing the cached context. Setting this value involves a direct trade-off: shorter windows mean more frequent full auths (higher average latency) but tighter security bounds; longer windows reduce compute load but widen the window in which a compromised device fingerprint could be replayed.

Real-World Impact

For a typical user session with 50 API calls:

For high-frequency applications like real-time collaboration or gaming, this difference is transformative. Consider a multiplayer game server authenticating 10,000 concurrent users at 60 actions per second. Without resume, the auth layer alone would consume 816 milliseconds of CPU time per second per user. With resume enabled, that drops to 40.3 milliseconds--freeing over 95% of the auth budget for actual game logic.

Key Insight

Session resume pairs naturally with H33's SIMD batching architecture. Because BFV with N=4096 packs 32 users per ciphertext (4,096 slots divided by 128 biometric dimensions), a full auth batch already amortizes the FHE cost across 32 users. Session resume then eliminates that batch entirely for returning users, creating a two-tier optimization: batch amortization for first-time auths, and sub-50µs resume for everything after.

Canonical owner · FHE Platform

Session resume optimizes encrypted authentication computed under FHE — reusing session context so a returning user is re-authenticated without recomputing a full encrypted match. Computing on encrypted data is owned by the FHE Platform.

This page uses neighboring capabilities rather than redefining them. The session tokens and post-quantum keys behind a resumed session are held by H33-Key. Confirming an authentication result independently belongs to Verification. This page stays within the FHE boundary: fast re-authentication of encrypted sessions.

Frequently Asked Questions

What makes session resume so fast?

For a returning user, session context is reused instead of recomputing a full encrypted biometric match. That skips the most expensive FHE step, bringing re-authentication down to the microsecond range.

Does resume weaken the encryption model?

No. The underlying match is still computed under FHE for first-time authentication. Resume reuses an already-established encrypted session rather than exposing any plaintext.

Where do session tokens live?

Session tokens and the post-quantum keys behind them are held by H33-Key. The authentication flow references them rather than managing key custody itself.

Enable 50µs Session Resume

Upgrade your authentication with instant session resume. Get started with 1,000 free auths.

Get Free API Key

See also

Build With Post-Quantum Security

Enterprise-grade FHE, ZKP, and post-quantum cryptography. One API call. Sub-millisecond latency.

Get Free API Key → Read the Docs
Free tier · 10,000 API calls/month · No credit card required
Verify It Yourself