I'm sure some of you have already seen the bandwidth-as-currency
article making the rounds
(http://pressesc.com/news/1220/29082007/internet-bandwidth-become-global-currency).
 Nothing in the press article summary seems terribly new, but I hadn't
seen the Give-to-Get paper
(http://tv.seas.harvard.edu/give-to-get_algorithm_for_P2P_Video_on_Demand.pdf)
yet, and it certainly seems interesting.

I'm a bit leery of the web-of-trust in the former and the forwarding
of bw currency in Give-to-Get -- mostly on principle.  It has always
seemed like trusting 2nd-hand information opens up too many
opportunities for gaming these types of systems.  I'd love to be
convinced that this isn't the case, since trust-webs, rumors, epidemic
algorithms, et. al. are very appealing technically.  But in an
untrusted environment where nodes can be modified and collude, they
seem pretty shaky.  I've yet to see any claims that they are resistant
to cheating in theory, or even a good discussion of how such exploits
can be reduced to a negligible level in practice (anyone have
pointers?).

Enough of my hand-waving, here's a specific example of what I'm
talking about:  At the end of Section 4.2, the Give-to-Get paper
describes how a node Alice finds out if a neighbor Bob is forwarding
data to its neigbors Carol-through-Zach.  Since Bob could lie about
how much data it is sharing, Alice asks Carol-Zach directly.  Good,
we've prevented Bob from lying... except... Bob gets to choose
Carol-Zach and can simply create some sybil nodes that fulfill this
role without doing any legitimate work or contributing any resources.
Or, Bob could collude with real nodes Carol-Zach where they all
promise to do I-scratch-your-back,-you-scratch-mine lies to all other
nodes, with the same results.

The Give-to-Get authors admit this problem at the conclusion of the
paper.  I don't know of *any* solution (other than removing 2nd-hand
information from the system altogether), but I'm often ignorant of
such things and thought it might be something p2p-hackers would be
thinking about, or at least know of some research that could be
fruitful in this area.  Since there are lots of cool algorithms for
doing this type of thing among *trusted* nodes, it seems like being
able to leverage these into *untrusted* networks would be a major
addition to the field.

The lack of a workable solution in this area is one reason that all
trust in flŭd is localized (http://www.flud.org/wiki/LocalizedTrust)
and why all flŭd 'currency' is symmetric and not forwardable
(http://www.flud.org/wiki/Fairness).

BTW, other aspects of Give-to-Get are really cool, such as its
tolerance for free-loaders to a given level, and then swift punishment
thereafter, similar to Grothoff's excess-based economic model
(http://grothoff.org/christian/ebe.pdf).

Alen
http://flud.org
_______________________________________________
p2p-hackers mailing list
[email protected]
http://lists.zooko.com/mailman/listinfo/p2p-hackers

Reply via email to