When you download a medication reminder app, you're handing it something deeply personal: the complete picture of your health. Every pill you take, every condition you manage, every injection you give yourself. It's a data profile that insurance companies would love to see. Pharmaceutical companies would pay for it. Hackers would exploit it.
So here's a simple question: who should have access to your medication data?
DoseStream's answer: you, and the people you choose. Not us. Not pharmaceutical companies. Not anyone else. And the technology that makes this possible is Ed25519 asymmetric encryption.
The Problem with Most Health Apps
Most medication apps operate on a simple model: your data goes to their servers, stored in a database, and sent back to your phone when needed. The data is often stored in plaintext or with basic server-side encryption — meaning anyone with database access can read it.
Some of the largest medication reminder apps have partnerships with pharmaceutical companies. Their privacy policies disclose that they share de-identified patient data with third parties for research and marketing purposes. While this is legal — and common in the industry — it raises a fundamental question: did you consent to your medication data being used this way?
You wouldn't let a stranger read your medical records. Yet millions of people hand their complete medication history to apps that store it on someone else's servers, readable by someone else's employees, and shareable with someone else's partners.
What Is Ed25519?
Ed25519 is a public-key signature system based on the Ed25519 elliptic curve. It was introduced in 2011 by Daniel J. Bernstein and colleagues, and it's become one of the most respected encryption systems in modern cryptography.
Here's how it works — without the maths:
The Postbox Analogy
Imagine a postbox with two keys. One key is public — anyone can have a copy, and it lets you put encrypted mail into the box. The other key is private — only you have it, and it's the only key that can open the box and read the mail.
In Ed25519 terms:
- Your public key is shared with people who want to send you encrypted data (like care circle members)
- Your private key stays on your device, never leaves it, and is the only thing that can decrypt data sent to you
- Even the server that relays the data can't read it — it only sees encrypted bytes
Why Ed25519 Specifically?
Ed25519 has several properties that make it ideal for health data:
- Small keys: Public and private keys are just 32 bytes each — tiny, fast, and efficient for mobile
- Fast signing: Signatures are generated in microseconds, even on older phones
- Secure: No known practical attacks against Ed25519 as of 2024
- Used by professionals: Ed25519 is the default SSH key type in OpenSSH, used by Signal for message verification, and powers significant parts of modern internet security
How DoseStream Uses Ed25519
When you install DoseStream, the app generates an Ed25519 key pair on your device. Your private key never leaves your phone. Your public key is registered with the sync service.
When data needs to sync — for example, when you take a medication and the update needs to reach your care circle — here's what happens:
- The data is encrypted on your device using the care circle members' public keys
- The encrypted data is sent to DoseStream's relay server
- The server forwards it to the appropriate devices
- Each receiving device decrypts the data using its own private key
At no point can DoseStream's server read your medication data. It's a relay, not a reader.
Ed25519 vs HMAC: What's the Difference?
Many apps use HMAC (Hash-based Message Authentication Code) for data integrity. HMAC is fine for verifying that data hasn't been tampered with — but it doesn't provide encryption or privacy.
| Feature | Ed25519 (DoseStream) | HMAC (Many Apps) |
|---|---|---|
| Encryption | Yes — data is unreadable to the server | No — only verifies integrity |
| Key sharing | Public key can be shared freely; private key stays on device | Same shared secret on both ends — if server is compromised, data is exposed |
| Server can read data? | No | Yes — the server has the shared secret |
| Non-repudiation | Yes — signatures prove who sent data | No |
| Use case | Private, end-to-end encrypted communication | Verifying data hasn't been altered in transit |
Why Health Data Privacy Matters
Medication data is health data. Your medication list reveals:
- What conditions you have (diabetes, HIV, depression, cancer)
- What stage of treatment you're in
- Whether you're likely to be compliant with treatment plans
- Your lifestyle patterns (when you wake up, when you eat, your daily routine)
In the wrong hands, this data can be used for:
- Insurance discrimination: Life and health insurers could use medication data to assess risk — potentially denying coverage or raising premiums
- Employment discrimination: Employers could infer health conditions from medication lists
- Targeted advertising: Pharmaceutical companies could target you with ads based on your specific conditions
- Phishing and scams: Knowing your exact medications makes it easy to craft convincing phishing emails about "prescription updates" or "drug recalls"
Your medication list is a medical record. Treat it like one.
The DoseStream Promise
DoseStream's privacy commitment is simple:
- Your data stays on your device — it's encrypted before it leaves, and only your keys can decrypt it
- We don't sell your data — not to pharma, not to insurers, not to anyone
- We don't show ads — our revenue comes from the £8.75 purchase price, nothing else
- We can't read your data — even if we wanted to, the encryption prevents it
This isn't a feature. It's a founding principle.