Back to Blog
May 5, 2025

Zero-Knowledge Architecture Explained: What It Means When We Say We Can't See Your Files

S

SecureEU Team

Privacy & Security

"Zero-knowledge" gets thrown around a lot in marketing copy. But at SecureEU, it's not a slogan — it's an architectural constraint that's verifiable by anyone who opens their browser's developer tools. Let us walk you through exactly what it means.

What Zero-Knowledge Means

A zero-knowledge service is one where the operator — that's us — has no technical ability to access the plaintext content you store or transmit through the platform. It's not a policy ("we promise not to look"). It's an engineering guarantee ("we cannot look, even if we wanted to").

How SecureEU Achieves It

Here's the exact flow when you upload a file:

1

Key generation: Your browser generates a random 256-bit AES-GCM key using crypto.subtle.generateKey(). This happens entirely in JavaScript, on your device.

2

Encryption: Every byte of your file is encrypted with that key using AES-256-GCM. For large files, this happens in 64 MB chunks, each with a unique initialisation vector (IV).

3

Upload: The encrypted blob is uploaded directly to Hetzner Object Storage via a presigned URL. Our application server generates the URL but never touches the file data.

4

Link creation: The download URL is constructed as /download/batch/id#key. The key lives in the fragment — the part after # — which browsers never send to servers.

What We Store

On our servers, we have:

  • The file name (for display purposes only)
  • The file size (for pricing)
  • An encrypted blob (useless without the key)
  • A Stripe session ID (for payment verification)

We do not store: email addresses, IP addresses, user accounts, names, the encryption key, or any form of personal identifier.

Verify It Yourself

Open your browser's Network tab while uploading a file. You'll see the encrypted data going directly to Hetzner via a presigned URL. Check the download link — the key is in the fragment. Inspect the requests to our server — you'll find no file content and no key. Zero-knowledge isn't something you have to take our word for. It's something you can verify.

Send files privately

Transfer Files Now →