The Blind Machine creates an encrypted computation platform where our servers can never see the raw data.
Mission: Enable scientific collaboration without exposing sensitive data
Mathematically guaranteed.
Already have an account? Sign in
How
Encrypted end to end. Verifiable offline.
We use homomorphic encryption. Data is encrypted on the data owner's own machine; the server collects only ciphertext and computes directly on it — it can compute, but it cannot see. One decryptable aggregate comes out the other side, and only the researcher, on their own machine, holds the key. Every artifact is content-addressed by SHA-256, so the result re-verifies offline, without us.
$ blind data encrypt cohort.csv Raw → LOCAL ONLY Encoded → LOCAL ONLY Private → LOCAL ONLY Encrypted → UPLOADABLE ─ ─ ─ your machine ─ ─ ─ ─ ─ ─ ─ ─ the network ─ ─ ─ $ blind contributions create --project rare-disease-af Encrypted → uploaded · sha256:9f3a…c41e ✔
Protocol registry
Signed, content-addressed protocols
A study pins exactly one protocol version — hashed, Ed25519-signed, reproducible. Straight from the public registry:
-
01
Allele Frequency Count1 version
Exact aggregate allele counts over a sealed cohort (additive BFV, flagship).
-
02
Allele Frequency with Variance1 version
Allele counts plus server-derived variance (multiplicative BFV, depth 1).
-
03
Carrier Count1 version
Per-variant carrier counts over a sealed cohort (additive BFV).
-
04
Cohort Histogram1 version
Bucketed one-hot counts over any cohort (additive BFV, generic).
-
05
Genotype-Phenotype Covariance1 version
Encrypted x encrypted covariance (multiplicative BFV, depth 1).
-
06
Polygenic Score Aggregate1 version
Public-weighted score aggregate (additive BFV, plaintext-scalar multiply).
Usage
One trust loop, six commands
-
01
Create a project.
The researcher creates a study and pins one signed, SHA-256-addressed protocol bundle — on the CLI or the web.
$ blind projects create --protocol allele_frequency_count
-
02
Contribute encrypted.
Each data owner encrypts locally on their own machine. Only ciphertext is uploaded — no account, no plaintext, ever.
$ blind contributions create --project rare-disease-af --data cohort.enc
-
03
Freeze the cohort.
Once at least 20 encrypted contributions arrive, the researcher freezes the cohort — a cohort commitment is recorded and runs are capped. No compute happens before this.
$ blind projects freeze rare-disease-af
-
04
Compute on ciphertext.
The server runs the pinned protocol directly on encrypted data, in a sealed, network-isolated sandbox. It computes, but it cannot see.
$ blind jobs create --project rare-disease-af
-
05
Decrypt only the aggregate.
The researcher decrypts the result locally with their own key. Only the final aggregate is ever decrypted — never any individual contribution.
$ blind results decrypt job_7f2c
-
06
Verify it, offline.
Every run emits a Computation Certificate binding protocol, project, cohort, data, and result hashes — re-checked with no network and no trust in us.
$ blind certificates verify sha256:41ac…9be0
Values
Fully obey Kerckhoffs' Principle.
The security of the system never depends on the secrecy of the system. Open CLI, public protocols, offline verifier — the server sits outside the trusted computing base, by design.
No data leaves the user's computer unencrypted.
Raw, encoded, and private artifacts are LOCAL ONLY. Encrypted is the only class that ever goes up.
You don't trust The Blind Machine. You verify it.
Every result carries a certificate that re-verifies on your machine, offline:
$ blind certificates verify sha256:41ac…9be0