#2425 new enhancement

Unreliable (including malicious) storage nodes

Reported by: communitycube Owned by: daira
Priority: normal Milestone: undecided
Component: code-peerselection Version: 1.10.0
Keywords: availability reliability anti-censorship Cc:
Launchpad Bug:

Description (last modified by daira)

An important development to keep a network clean from pseudospoofing ("Sybil") and malicious attacks is a way to detect and blacklist unreliable or malicious storage nodes

An unreliable storage node is defined as a node that says it's storing data, but it isn't.

Those parts of files that it's receiving, are lost.

To prevent use of unreliable storage nodes, each client will check file integrity to be sure files are accessible.

Client keeps a relation of parts uploaded to each node. When a storage node where file were allocated there, is not giving the file, or answers that it doesn't have your file or is not online, after few retries in different days this node is marked as unreliable.

Each client will have a list of what it detected as an unreliable storage node.

Those list can be done in the introducer, too. In this way, introducer would prevent to notice about an unreliable storage node to possible clients.

Change History (4)

comment:1 Changed at 2015-05-16T16:37:22Z by daira

  • Description modified (diff)

I changed the term "malicious" in the description to "unreliable". The distinction between those is a matter of intent, not observable behaviour; what we actually care about (and can detect) is the latter.

Version 0, edited at 2015-05-16T16:37:22Z by daira (next)

comment:2 Changed at 2015-05-16T16:38:44Z by daira

  • Keywords availability reliability anti-censorship added
  • Summary changed from Malicious storage nodes to Unreliable (including malicious) storage nodes

comment:3 Changed at 2015-05-16T16:39:03Z by daira

  • Component changed from unknown to code-peerselection

comment:4 Changed at 2015-05-16T16:39:39Z by daira

  • Description modified (diff)
Note: See TracTickets for help on using tickets.