Skip to content

Instantly share code, notes, and snippets.

@garbados
Created October 5, 2020 05:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save garbados/bb24d9e79fa498d436dbf516167e865b to your computer and use it in GitHub Desktop.
Save garbados/bb24d9e79fa498d436dbf516167e865b to your computer and use it in GitHub Desktop.

KallistiDB is a subjective, peer-to-peer database. It allows applications to provide a user-centric view into distributed, probably social, networks.

The reality of a network in which peers might not trust each other is that peers will require high-level moderation capabilities to manage and share an awareness of that distrust, and detailed privacy guarantees to control the distribution of their information. Projects like Cabal have shown that subjective moderation can be applied to a multi-writer log. KallistiDB demonstrates that this subjective perspective can be extended over a much broader and more fragmented content network, seizing upon capabilities unique to a peer-to-peer environment to provide stronger assurances about data integrity and availability, without sacrificing critical features like the ability to delete information.

Consider a torrent. Without peers, the torrent is dead. There is nothing to find at its address, even if there once was. Perhaps a peer remains in this absent, hollowed-out swarm. They are not a seed but a monitor, who alerts you that this data is gone and that remaining attached to the swarm for longer than 30 minutes will be reported to the author. So you leave, the data being well and truly inaccessible.

KallistiDB uses this principle to provide the ability to delete information by emptying out the swarm that once distributed it. By leaving a monitor peer behind to notify visitors, a user can identify noncompliant peers and quarantine them appropriately. By abandoning the comforts of global state, we can embrace the delights of our fractured, discordant existence.

ΤΗ ΚΑΛΛΙΣΤΗΙ

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment