Skip to main content
Encrypt Everything, Disclose Nothing: Your Implementation PlaybookCryptography & Encryption
5 min readFor Privacy Officers

Encrypt Everything, Disclose Nothing: Your Implementation Playbook

When two-thirds of the public doesn't trust the government with encrypted messages, you're not just building a security architecture. You're building a trust architecture. The UK's recent clash between the Investigatory Powers Act and Apple's Advanced Data Protection shows what happens when encryption policy meets political reality: companies get secret Technical Capability Notices, users lose features, and nobody wins.

Your job isn't to wait for the next TCN. It's to build an encryption posture that protects user data while documenting every decision in case regulators come calling.

The Problem: Why This Matters Now

The Investigatory Powers Act gives UK authorities power to issue secret orders requiring access to encrypted data. Apple withdrew Advanced Data Protection from UK users after receiving one such notice. That withdrawal wasn't a bug; it was a feature of their compliance strategy.

You face the same choice: build encryption that survives regulatory pressure or build encryption you'll have to disable later. The difference is documentation, transparency, and architectural decisions you make before anyone asks.

According to the CDT poll, 84 percent of British adults worry that access mechanisms introduce vulnerabilities for hackers. They're right. You can't build a backdoor that only good guys use. Every access point is a potential compromise.

What You Need Before Starting

Legal clarity on your jurisdiction:

  • Identify which data protection regimes apply (GDPR, UK General Data Protection Regulation, PIPEDA, CPRA)
  • Document your legal basis for processing encrypted communications
  • Know whether you operate in a jurisdiction with mandatory access laws

Stakeholder alignment:

  • Privacy officer sign-off on encryption scope
  • Legal team review of potential TCN obligations
  • Executive understanding that you may need to withdraw features rather than weaken them

Technical inventory:

  • List every system storing or transmitting personal data
  • Identify which systems currently use encryption
  • Document who holds decryption keys for each system

Transparency framework:

  • Template for public encryption policy
  • Process for disclosing government requests (where legally permitted)
  • Incident response plan for forced access scenarios

Step-by-Step Implementation

Step 1: Classify your data by encryption requirement

Not all data needs the same protection. Build a matrix:

  • End-to-end encrypted: Direct messages, health records, financial data. Only sender and recipient hold keys.
  • Encrypted at rest: Customer records, transaction logs. You hold keys but encrypt storage.
  • Encrypted in transit: API calls, form submissions. TLS/SSL only.

Document the legal basis for each classification. Under GDPR Article 32, you must implement "appropriate technical and organisational measures" based on risk. Write down why end-to-end encryption is appropriate for specific data categories.

Step 2: Implement end-to-end encryption for high-sensitivity communications

For messaging or document sharing:

Use Signal Protocol or a similar open-source implementation. Don't build your own cryptography.

Key technical decisions:

  • Generate key pairs on user devices, never on your servers
  • Store private keys in device secure enclaves (iOS Secure Enclave, Android StrongBox)
  • Use Perfect Forward Secrecy so compromising one key doesn't expose past messages
  • Implement key verification (safety numbers) so users can confirm they're talking to the right person

Configuration example for a messaging feature:

encryption_mode: end_to_end
key_generation: client_side
key_storage: device_secure_enclave
forward_secrecy: enabled
server_key_access: none

Document this in your data processing records under Article 30 GDPR. Specify that you cannot decrypt these communications because you don't hold the keys.

Step 3: Build your transparency layer

Create a public encryption policy page. Include:

  • Which data you encrypt and how
  • Who can decrypt it (users only, you and users, you only)
  • Your response protocol if ordered to provide access

Example language: "We use end-to-end encryption for direct messages. We do not hold decryption keys and cannot access message content. If we receive a legal demand for access to encrypted messages, we will challenge the order where possible and notify affected users unless legally prohibited."

This isn't just a good practice. When 89 percent of users think nobody should access their messages without a court order, transparency becomes a competitive advantage.

Step 4: Prepare your TCN response protocol

If you operate in the UK, you may receive a Technical Capability Notice under the Investigatory Powers Act. Build your response process now:

  1. Immediate legal review (within 24 hours)
  2. Technical feasibility assessment: can you comply without breaking encryption?
  3. Decision tree: challenge the notice, comply, or withdraw the feature
  4. User communication plan (if legally permitted)

Document this protocol. Share it with your executive team. Make sure they understand that "just give them access" may not be technically possible without compromising all users.

Step 5: Implement access logging for any decryption you do control

For data encrypted at rest where you hold keys:

Log every decryption event:

timestamp: 2024-05-15T14:23:11Z
user_id: [redacted]
data_type: customer_record
decryption_reason: DSAR_fulfillment
authorized_by: privacy_officer_id_7829
legal_basis: GDPR_Article_15

Store these logs separately from the encrypted data. Encrypt the logs themselves. Review them quarterly for anomalies.

This creates an audit trail if you ever need to demonstrate that you didn't provide unauthorized access.

Validation: How to Verify It Works

Test your end-to-end encryption:

  • Attempt to access encrypted message content from your server. You should fail.
  • Verify that private keys never transit your network.
  • Confirm that users can still communicate if your servers go offline (for peer-to-peer implementations).

Audit your key management:

  • Run a key inventory. Where is each decryption key stored?
  • Test your key rotation process.
  • Verify that deprovisioned users lose access to new data.

Validate your transparency:

  • Have someone outside your team read your encryption policy. Can they understand what you encrypt and who can decrypt it?
  • Check that your privacy policy under Article 13/14 GDPR mentions encryption as a Technical and Organisational Measure.

Stress-test your legal response:

  • Run a tabletop exercise: you receive a TCN demanding access to encrypted messages. Walk through your protocol. Who makes the final decision? How quickly can you engage outside counsel?

Maintenance: Ongoing Tasks

Quarterly:

  • Review decryption logs for unauthorized access patterns
  • Update your data classification matrix as you add features
  • Test key rotation procedures

Annually:

  • Audit which systems use end-to-end encryption vs. encryption at rest
  • Review your encryption policy for accuracy
  • Update your TCN response protocol based on legal developments

After any regulatory contact:

  • Document the request, your response, and the outcome
  • Update your transparency report (if you publish one)
  • Assess whether the interaction requires architecture changes

When launching new features:

  • Classify the data sensitivity before writing code
  • Choose encryption level based on classification
  • Update your public encryption policy

The UK's experience shows that encryption policy isn't stable. Apple built Advanced Data Protection, then withdrew it from UK users after regulatory pressure. Your architecture needs to survive that kind of whiplash.

Build encryption you can defend. Document every choice. And when someone asks for access, have a protocol that doesn't start with "sure, here's the key."

You Might Also Like