Skip to content

Instantly share code, notes, and snippets.

@rossdylan
Created October 2, 2014 14:09
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 rossdylan/743ea9cd95d7e2f64fd9 to your computer and use it in GitHub Desktop.
Save rossdylan/743ea9cd95d7e2f64fd9 to your computer and use it in GitHub Desktop.
Vaux: Voting Trees

Malicous Files and Vaux

One of the key tenets of the VauxIo project is the inability to delete files. However since anyone can upload files to a vaux node there needs to be a way to prevent the spread of malicious files. An example of such a file is a massive file filled with random data. The server will be unable to tell if its junk or, encrypted data we care about. I've been thinking about how to fix this for the last few days and this blog post is me trying to figure out how I want to implement this.

Possible Solution: Voting

The first thing I thought of was a voting system. Users on each node can flag a file as malicious. The node then tells the nodes it peers with that it thinks this file is bad. This counts as a vote. Each node gets a vote and when a majority of the network thinks a file is bad, it is purged by all nodes and prevented from being uploaded in the future. The problem with this system is that it is easy for people to swing the vote by just spinning up a bunch of nodes and having them vote in their favor. A possible solution to this, is to change how the vaux network is designed. If the vaux network is built more like a tree in that each node has parents and children we can then use that as a way to prevent vote spamming. What I've been thinking about it giving each sub tree within the full tree a single vote. Each node can only send 1 vote to its parent. That vote is either a majority vote of its subtrees, or its own opinion if it is a leaf node. In theory, this doing this will prevent spam votes from actually swaying the majority of the entire network.

Final Thoughts

This is just a rough idea of what I've been thinking about the last few days. I'm not sure if it will work or if its feasible but it should make it possible for the VauxIo network to self regulate itself when it comes to malicious files. Questions and comments are welcome.

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