Notes & deep dives
Short pieces on how PlikShare works, why it's built the way it is, and the design decisions that aren't obvious from the code.
- 01
Fast uploads in PlikShare
Uploading ten thousand tiny files and uploading one 50 GB archive are two different problems. PlikShare picks one of three algorithms per file and tries to send the file bytes the shortest way the storage allows: straight to S3 when it can, or through the server when encryption or local disk makes that necessary. Small files get bundled together, big files split into parallel parts, and the final stitch-together runs in the background.
Read article → - 02
Managed encryption in PlikShare
Steal the bucket — you get nothing. PlikShare encrypts every file with AES-256-GCM before it leaves the server. The keys live in the database under a master password, and a 24-word recovery code rebuilds them if the database is ever lost.
Read article → - 03
Full encryption in PlikShare
Steal the bucket, steal the database — you still get nothing. File names, contents, even audit logs are ciphertext until a user logs in with their encryption password. Workspaces are shared via X25519 sealed boxes, search runs over ciphertext, and a 24-word recovery code gets you back if everything is lost.
Read article → - 04
Why I built PlikShare
The story behind PlikShare: how the need for a secure, self-hosted file sharing solution led to creating a platform with unlimited workspaces and complete data control.
Read article →