kaiyin
.
zhong
home
essays
experiments
experience
about
contact
Writing
Essays
Things I have learned. Things I built, broke, and eventually figured out.
all
cryptography (3)
databases (1)
linear algebra (7)
linux (1)
llmops (2)
machine learning (15)
math (18)
postgres (1)
rust (10)
security (3)
statistics (5)
storage (2)
tui (9)
tutorial (2)
zfs (3)
e2d475866d774f5800d6c5c2a0211f30
The key server that never sees a key
Jul 16, 2026 · 16 min
LUKS encrypts your disk with field arithmetic in GF(2^128) and guards the key behind a memory-hard wall. Tang unlocks it over the network using a blinded Diffie-Hellman trick — McCallum-Relyea — so elegant that the server can hand back your key without ever learning it, or anything else. The whole stack, mathematics included.
cryptography
·
linux
·
security
Tang unlocks a LUKS disk without ever seeing a key
McCallum-Relyea: the disk opens only while the Tang server is reachable
LUKS client — at boot
holds C, S, ciphertext
picks fresh random e
sends X = C + E
(blinded point)
Tang server
holds secret scalar s
one job: Y = s·X
X looks uniformly random
→ learns nothing, no logs
X = C + E →
K never crosses the wire
← Y = s·X
unblind locally: K = Y − eS = sC = cS
LUKS volume unlocked
no passphrase, no key on disk