Cryptpad: a free/open, end-to-end encrypted, zero-knowledge shared text editor

Tools like Etherpad and Google Docs are transformative ways to collaborate on text (including code); I've used them in contexts as varied as making unofficial transcripts of statements at UN agencies to liveblogging conference presentations — but they all share a weakness, which is that whomever owns the document server can see everything you're typing.

Cryptpad is a free/open project that uses some of the ideas behind blockchain to implement a "zero-knowledge" version of a collaborative document editor, ensuring that only the people working on a document can see it. The crypto keys are stored in a "fragment identifier" in the URL, so sharing the URL is the same as sharing permission to read and edit the doc. It's on Github, and licensed GPL V3.

CryptPad uses a variant of the Operational transformation algorithm which is able to find distributed consensus using a Nakamoto Blockchain, a construct popularized by Bitcoin. This way the algorithm can avoid the need for a central server to resolve Operational Transform Edit Conflicts and without the need for resolving conflicts, the server can be kept unaware of the content which is being edited on the pad.


Cryptpad [Github]

(via 4 Short Links)