When a network grows big, the bigger the risk of some user (friend of friend's friend) inviting unwished users into the network. To protect the user at the first end, there are two solutions:
* Tunneling the data through trusted friend to untrusted friends.
Ex. Lets say I trust Mike but not his friends, letting me download from his friends but making it tunnel through Mike would be a super solution. NodeZilla does that, but unfortunately that's all it does which makes it slow.
* Create a safe level of trusted subnodes.
Ex. I choose to connect to friends, and friend's-friends. But not 3rd level friend's-friend's-friends.
Those two in combination whould be flawless.