4 ms·
Counter example: Git is immutable object store successfully replacing mutable CVS databases. The trick is to build mutable functionality on top immutable store.
by dr_win 11y ago
Counter example: Git is immutable object store successfully replacing mutable CVS databases. The trick is to build mutable functionality on top immutable store. In case of git it is branches/tags that are light-weight mutable pointers to immutable objects. Additionally I believe access control and privacy can be built on top of immutable store using cryptography.
- ianopolous 11y agoYou've nailed it. At Peergos [1], we are doing exactly that, with privacy as our primary focus. We layer encryption on top of IPNS + IPFS to get a distributed private, access controlled filesystem + social network that hides your friendship graph. IPFS is a wonderful model to work with. [1] https://github.com/ianopolous/Peergos https://github.com/ianopolous/Peergos
- joepie91_ 11y ago"Using cryptography" is (like some of the other things mentioned) nice in theory, but has significant drawbacks as well. If you've ever worked with stateless servers using something like JWT, you will have run into the issue of 'stale data', essentially the cache invalidation problem. Trying to solve ACLs with cryptography is prone to the exact same issues, as well as overhead problems. The crypto itself is immutable. EDIT: In fact, Git is a great example of how you can't really do access control very easily in such a setup. Have you ever tried restricting access to a specific branch in a repository?