I chose UOV and Classic McEliece because both schemes have very large public keys but tiny transmitted payloads. The site hosts the public keys as static binary assets, so the large keys do not increase the size of each shared message link. UOV adds a 96-byte signature, while Classic McEliece adds a 96-byte KEM ciphertext; the remaining URL size is mostly the compressed message itself and symmetric-encryption overhead.
Additionally, I implemented a signed theme feature inspired by Owala. As my website only uses 5 color hexes total, I can sign official colorways with UOV and encode the signed colorway directly into a URL that verifies and applies it in one click. Anyone can edit the theme locally, but they cannot distribute a modified colorway as one of my official themes because diaryof.me verifies the UOV signature against my pinned public key before applying it.
Schemes used:
Symmetric encryption: XChaCha20-Poly1305-SIV (libsodium) Password KDF: Argon2id (libsodium) KEM: Classic McEliece 348864f Signatures: UOV-pkc-Is
This is my personal diary, and I dedicate it to my irl best friend. I'd love to hear any feedback. Enjoy!
cryptographical•40m ago
Try a custom signed message: https://diaryof.me/v/#zs3825DubOxElyNFeMxgGTm6g9d6v-ukt_YF_O...
Try a custom signed theme - strawberry: https://diaryof.me/#ZufrBRsbsY9Kuy_Sd1nssHZB2Eu3q34-w_28_9nO...