Fast encrypted backups with Rust
summary
Zerostash is a Rust storage format that packs data into 4MB objects, deduplicates and end‑to‑end encrypts it, and targets low latency by minimizing syscalls and copies via mmap, buffer reuse and pipelining. Implementation uses blake2 for crypto indexing, cHash for fast dedupe (~10 GB/s), lz4, crossbeam and dashmap, secrecy for key wiping, LTO and panic=abort for speed. Benchmarks hit ~1 GB/s on small files and an LRU tweak yields roughly 20% gain.
AI-written summary · about
chapters (32)
- 0:00Introduction
- 2:00Privacy policies
- 2:22Encryption at rest
- 3:07Endtoend encryption
- 4:03Performance vs security
- 4:57Performance
- 5:45Latency
- 7:23Throughput
- 8:06Zero Stash
- 9:38Minimize latency
- 12:46Primitives
- 14:37Optimizations
- 17:55Design Implementation
- 20:28Structure
- 21:32Profiling
- 27:10Pressure comparison
- 28:42When to copy
- 29:29Slicing
- 30:38Reducing code size
- 34:18Arking
- 35:50LTO
- 36:51Async
- 41:13Read vs Map
- 43:09Object storage
- 45:11Performance improvement
- 46:16Encryption keys
- 48:15Compression ratio
- 49:20Error handling
- 50:04Backup verification
- 51:31Syncing keys
- 53:36Timing attacks
- 55:13Encryption smaller than 4MB
related talks
50mRusty Swapping: Rewriting a zswap Backend in Rust
50mRusty Swapping: Rewriting a zswap Backend in Rust
55mA Solution to the Backup Inconvenience
39mRusty Swapping: Rewriting a Zswap Backend in Rust
39mRusty Swapping: Rewriting a Zswap Backend in Rust
34mWhoops! I Rewrote it in Rust
20mSecure and Lightweight Deduplicated Storage via Shielded Deduplication...
11mMaking Zcash Shine with Rust
