Homomorphic Encryption and Local-First Software: A Trade-off?

This article explores the challenges of using homomorphic encryption to protect private data in local-first software. While homomorphic encryption allows computation without decryption, it introduces significant performance and storage overheads. The author demonstrates the practical limitations of homomorphic encryption on CRDTs by building a homomorphically encrypted 'last-write-wins' register CRDT. The article highlights how homomorphic encryption requires operations under worst-case input assumptions, drastically increasing space and time complexity. Ultimately, the author concludes that securing local-first apps without severely degrading usability remains an open problem.
Read more