Skip to main content

Security & Encryption

What Is Zero-Knowledge Encryption? How It Protects Your Data

Zero-knowledge encryption explained: what it means, how it works, how it differs from standard cloud encryption, and how to verify a service really uses it.

Inkrypt Security TeamPublished Updated 15 min read
Diagram illustrating how zero-knowledge encryption works — encryption key stays on the user device, only ciphertext reaches the server

Most cloud services encrypt your data. Fewer protect it from themselves. Zero-knowledge encryption is the design that changes that relationship: the service provider is architecturally prevented from reading your content because it never holds the decryption keys.

Understanding what this actually means—and what it does not—is the foundation for making good decisions about any service you trust with sensitive information.

Summary

Zero-knowledge encryption protects your content from server-side access, insider threats, and database breaches. It does not protect against compromised devices, phishing, weak passwords, or metadata collection. Both the design and your own operational security matter.

What zero-knowledge encryption means

Zero-knowledge encryption means that encryption and decryption happen on your device. The server receives and stores only ciphertext—scrambled data—along with the parameters needed to derive a key from your password. The server never receives your password and never derives or stores your encryption key.

What the server stores:

  • Ciphertext (your encrypted content)
  • A random salt used during key derivation
  • An initialisation vector (IV) used during encryption
  • Key-derivation parameters such as the algorithm and iteration count

What the server never stores:

  • Your password
  • Your derived encryption key
  • Any plaintext version of your data

Without the key, the ciphertext is useless. Even a complete database breach exposes only encrypted data that cannot be decrypted without the user's password.

Tip

The term "zero-knowledge" in this context does not come from zero-knowledge proofs in academic cryptography. It is used more broadly to mean the provider has zero knowledge of what your data contains.

How it works in practice

The general process is straightforward:

1. You enter a password.

2. A key derivation function (KDF) runs on your device. It takes your password and a random salt and produces a cryptographic key. This process is deliberately slow to make brute-force guessing expensive.

3. Your data is encrypted on your device using the derived key and a strong symmetric cipher, typically AES-256 in GCM mode (AES-256-GCM), which provides both confidentiality and integrity protection.

4. The ciphertext, salt, and IV are sent to the server. Your password and key never leave your device.

5. When you return, the server provides the salt and IV. Your password re-derives the same key on your device. Decryption happens locally.

In a browser-based product, this typically uses the browser's built-in Web Crypto API—a well-reviewed set of cryptographic primitives that avoids the risks of custom implementations.

From password to stored ciphertextA left-to-right pipeline. The typed password feeds PBKDF2-HMAC-SHA256 at 310,000 iterations with a 16-byte random salt, producing a 256-bit key. That key drives AES-256-GCM with a 12-byte initialisation vector. A dashed boundary marks that the password, the derivation and the key all stay inside the browser. Only the ciphertext, its authentication tag, the salt and the IV are uploaded, and none of them reveal the password.Your passwordtyped, never sentPBKDF2-HMAC-SHA256310,000 iterations+ 16-byte random salt256-bit keyAES-256-GCM+ 12-byte IVall of this happens in your browseruploadedCiphertext + auth tag + salt + IVnone of these reveal the password
Each stage is a real parameter from the running product, not a generic illustration of the idea.

Zero-knowledge encryption vs standard cloud encryption

Most mainstream cloud services use what is often called encryption at rest: data is encrypted when written to disk using keys that the provider manages. The provider can decrypt it whenever needed—for search indexing, support access, legal compliance, or other purposes.

This protects against an attacker stealing physical hardware. It does not protect against the provider itself, a compromised internal system, or a legal order directed at the provider.

Zero-knowledge encryption removes the provider from the key trust chain entirely. Even if the provider wanted to comply with a request for plaintext content, it could not—because it does not hold the keys.

Standard cloud encryptionEnd-to-end encryptionZero-knowledge encryption
Who holds the keys?The providerCommunicating partiesThe user only
Can the provider read content?Yes, technicallyGenerally noNo, by design
Main protectionInfrastructure attacksMessage interceptionProvider access and server breaches
Main limitationProvider has key accessMay still collect metadataNo server-side search; no password recovery

Zero-knowledge encryption vs end-to-end encryption

These terms are related but not the same.

End-to-end encryption (E2EE) means data is encrypted from sender to recipient and no intermediary—including the service provider's server—can read it in transit or at rest. It is most commonly associated with messaging applications.

Zero-knowledge encryption specifically emphasises that the provider holds no knowledge of the keys or content, and is typically applied to stored data: notes, files, or passwords you access individually.

A service can offer both: end-to-end encryption for messages shared between people, and a zero-knowledge design for content stored on the server. A service can also offer one without the other. When evaluating any tool, check the technical documentation rather than relying on marketing terms.

The practical way to distinguish them: if the provider can reset your password and still show your old content, it is neither truly E2EE nor zero-knowledge for that content. If resetting a password means permanent loss of all data, that is a signal the provider does not hold keys.

Can the service provider access your files or passwords?

In a correctly implemented zero-knowledge system: no, not for content.

The provider cannot decrypt your files because it does not hold the decryption key. If a rogue employee, a compromised admin account, or a legal order targets the server, the attacker or authority retrieves only ciphertext.

However, several important qualifications apply:

Metadata is not encrypted content. Providers typically retain account information, IP addresses, access timestamps, and usage patterns. Zero-knowledge encryption applies to content, not to everything associated with your account. Check the provider's privacy policy to understand exactly what metadata is retained and for how long.

The claim requires trust in the implementation. You are trusting that the code correctly derives and keeps keys on the client side—that it does not log your password in transit or export your key through a hidden mechanism. Closed-source services cannot be independently verified without a third-party security audit.

Password recovery is usually impossible. If only your device derives the key from your password, there is no recovery path when that password is lost. This is deliberate: no recovery path means the provider cannot recover it either. It is a security feature, but it is also a real risk of permanent data loss.

Legal obligations still apply. A provider can still be required to cooperate with law enforcement. The reach of that obligation extends to metadata and account information—but not to encrypted content the provider cannot decrypt.

What zero-knowledge encryption does not protect against

Being clear about the limits is as important as understanding the benefits.

Compromised devices. If your device is compromised by a bad actor, your password can be captured before it is used to derive the key. Server-side encryption offers no protection once the attacker has your password.

Phishing. If you are tricked into entering your password on a fraudulent site, the attacker can decrypt your data. Zero-knowledge assumes your secret stays secret.

Weak or reused passwords. The security of the encryption depends on the difficulty of guessing your password. A short or common password dramatically reduces the protection that even strong key derivation can provide.

Unlocked devices and open browser sessions. Once data is decrypted and visible on screen, anyone with physical access to your device can read it.

Metadata exposure. The provider may still have visibility into who you are, when you accessed the service, how large your files are, and how often you return.

The one test that settles a zero-knowledge claim

Most claims can be checked with a single question:

If I forget my password, can you reset it and still give me my content back?

A zero-knowledge design cannot answer yes to both halves. Resetting a password is easy; restoring content afterwards requires the key, and if the provider can produce the key then it was never exclusively yours. Password recovery and zero-knowledge encryption are mutually exclusive, and no amount of policy language reconciles them.

This is why genuinely zero-knowledge services tend to be blunt about the cost: lose the password, lose the data. A service that promises both provider-blind encryption and painless recovery is describing something that does not exist, whether by carelessness or by design.

The recovery question settles who holds the key at rest. It says nothing about how a key reaches a recipient, and that is where a second, equally quick check applies to any service offering share links.

Create a share link without setting a password. Look at the URL: if the design is what it claims, part of it sits after a #. Now open your browser's network tab and reload. Compare the address bar with the request the browser actually issued.

The portion after the # should be present in the first and absent from the second. That is not a courtesy — the fragment was specified to address a location within a document, so browsers resolve it locally and never place it in the HTTP request. A service can therefore store ciphertext while the key travels past it, in the open, without ever touching its servers or its logs.

If you can find that key in a request, in a referrer header, or echoed back from the server, the claim is false and you have just disproved it in under a minute. If you cannot, the provider genuinely cannot decrypt that share — with one honest caveat: the fragment is still readable by any script running in the page, which is the same trust assumption discussed below, not a separate one.

That question tests this specific claim. Judging whether a service is a sensible place for your data is a broader exercise covering what the server stores, how a shared key reaches its recipient, and what deletion actually means — how to judge an encrypted note service works through it. The architecture behind the answers is covered in client-side vs server-side encryption.

Zero-knowledge encryption in practice: notes, storage, and messaging

Private notes and sensitive information

Most note-taking apps sync content to servers where the provider can read it—a necessary trade-off for features like server-side search and real-time collaboration. If those features matter less than privacy, a zero-knowledge encrypted notes tool changes the model: content is encrypted before it ever reaches the server.

The trade-offs to expect: no server-side full-text search, no provider-facilitated password recovery, and more careful handling of passwords. For private notes containing sensitive personal information, these trade-offs are often worthwhile.

Cloud storage and file sharing

Zero-knowledge cloud storage services encrypt files on your device before upload. The server stores encrypted blobs it cannot read.

When evaluating these services, check: does encryption happen before the file leaves your device? How are keys managed when syncing across multiple devices? When you share a file with someone else, does the provider gain any temporary key access during that transfer?

File names, sizes, and access timestamps are often not encrypted even when file contents are. Review technical documentation for these details.

Messaging and business communication

For messaging, end-to-end encryption is the more common description for the protection that prevents servers from reading messages. The considerations for businesses extend beyond message privacy: group key management when membership changes, message retention requirements for legal compliance, metadata about who communicates with whom, and what happens to encrypted communications on retired devices.

A zero-knowledge or E2EE messaging tool improves privacy over standard email or unencrypted chat. For regulated industries, verify whether the tool's design is compatible with retention and legal hold requirements before adoption.

How Inkrypt fits into encrypted private note-taking

Inkrypt is a zero-knowledge encrypted notepad for the browser. The purpose is straightforward: create private encrypted notes online without creating an account.

The encryption design, confirmed from the codebase and documentation:

  • Encryption happens in your browser using the Web Crypto API.
  • Keys are derived from your password using PBKDF2 with 310,000 iterations.
  • Content is encrypted with AES-256-GCM using a fresh random IV per save.
  • The server stores ciphertext, salt, IV, and derivation metadata—never your password or key.
  • There is no account, no login, and no password recovery mechanism.
  • Inkrypt collects aggregate usage analytics (page views, browser type, approximate region) that are not linked to your note content. Inkrypt's application code does not collect or store IP addresses, though your IP address remains visible to hosting infrastructure and to third-party services your browser contacts, as it is for any website. See the privacy policy for the current full details.

Because Inkrypt requires no account, the concept of multi-factor authentication does not apply to the core product. Access to a note is controlled entirely by knowledge of the URL and the correct password.

Inkrypt is designed for a specific use case: simple, private, encrypted notes in the browser. It is not a comprehensive encrypted cloud storage platform, an enterprise communication tool, or a password manager.

For more on the technical design:

Before storing highly sensitive information in any tool, review the platform's current privacy policy and security documentation to understand exactly how encryption, data access, and recovery work.

FAQ: Zero-knowledge encryption

Q1. What does zero-knowledge encryption mean and how does it protect my data?

It means encryption and decryption happen on your device. The server stores only ciphertext and cannot decrypt it because it never receives your password or derived key. If the server's database is stolen, the attacker gets data it cannot read.

Q2. How is zero-knowledge encryption different from standard cloud encryption?

Standard cloud encryption typically means the provider manages the keys and can decrypt your data when needed. Zero-knowledge encryption keeps key generation and management on your device, so the provider is never in a position to decrypt your content—even under legal compulsion.

Q3. Does zero-knowledge encryption mean the provider cannot access my files or passwords?

For content, yes—in a correctly implemented system. The provider cannot decrypt what it stores. However, metadata such as IP addresses, access timestamps, and account details may still be collected and visible to the provider.

Q4. How can I verify whether a service truly uses zero-knowledge encryption?

Check that the technical documentation explains client-side encryption. Confirm that your password is never transmitted to the server. Verify that password recovery for encrypted content is not possible (this is expected in genuine zero-knowledge systems). Look for independent security audit reports. Review the privacy policy for what metadata is collected.

Q5. Is zero-knowledge encryption better than end-to-end encryption?

They solve different problems. E2EE protects the communication channel between parties. Zero-knowledge encryption protects stored data from provider access. A well-designed service can use both. Neither is universally "better"—the right design depends on what you need to protect.

Q6. Can I recover my password with zero-knowledge encryption?

In most zero-knowledge systems, no. The provider cannot reconstruct your key because it never held it. If you lose your password, you lose access to your encrypted data. This is a deliberate security trade-off—no recovery path for you means no recovery path for anyone else either.

Q7. Does zero-knowledge encryption hide metadata?

No. Content encryption protects what you write, not everything associated with your account. Account information, IP addresses, access timestamps, file sizes, and usage patterns are metadata and are typically not covered by content encryption. Check the provider's privacy policy for specifics.

Q8. Can businesses use zero-knowledge encryption?

Yes, but with planning. Businesses need to address team key management, what happens when employees leave, compliance requirements for data retention, and integration with existing workflows. Zero-knowledge tools are particularly useful for protecting specific high-sensitivity data like client files and confidential notes.

Q9. Does zero-knowledge encryption work on mobile devices?

It can, if the mobile app implements client-side encryption consistently with the web or desktop version. Verify in the provider's documentation that the same encryption model applies across all platforms.

Q10. Is zero-knowledge encryption useful for financial or legal documents?

It provides meaningful content protection—the provider cannot read the documents. However, compliance with financial or legal data regulations is not automatically satisfied by encryption alone. Verify the complete compliance picture separately, including retention requirements, audit trails, and vendor agreements.

Where to go next

To understand the full architecture behind this design:

Try Inkrypt at https://www.inkrypt.online and see how zero-knowledge, client-side encrypted notes behave in practice.

Technical claims here follow the primary specifications for each step described: RFC 8018 and NIST SP 800-132 for password-based key derivation, NIST FIPS 197 for AES and NIST SP 800-38D for GCM, and the W3C Web Cryptography API specification for the browser primitives involved. RFC 9106 specifies Argon2, the memory-hard alternative browsers do not yet expose natively.

About the author

Inkrypt Security Team

Engineering & security research

The Inkrypt Security Team is the small group of engineers who write, review and maintain the cryptographic code that runs in your browser every time you create a note. Everything published under this byline is written by someone who has worked directly on the code being described.