OK, I think all confusion comes down to one simple issue. Yes, you can protect both the senders anonymity when requesting/sending a request or insert using the mixnet poxing approach. However you can't prevent neighboring nodes from knowing the holder of the data.
Think about it like this: You have to route your request for data to the node that has the data. How do you do that. A. Just broadcast your request to everyone. Doesn't scale. B. Have a centrial server to keep track of it for you. Centralized, and vulnerable to attack. C. Use some sort of predefined routing scheme, where it is determined in advance which node holds which data. The holder any given piece of data can easily be determined. D. Use an algorithm that learns form past requests. Freenet uses this scheme. CHORD uses C. IMHO a better implementation of C is the Grapevine project. If you are doing C you have the option of returning the data directly. However most implinentations don't because the other nodes have no way of knowing whether or not the node that was supposed to actually did, or is malicious. Using D you cannot, because nodes need to find out whether or not the data was where they thought it would be. You can't just trust the node to tell you whether or not they sent the data. Since the intermediate nodes don't know what the data is, nothing short of showing them the data is sufficient proof that you were able to locate it, and that it was returned to the requester. From the performance perspective, it's true it does incur overhead. However this is only over the whole network, not for any individual user. So each user gets a download rate equal to their maximum network throughput under peek demand. However supposing the network averages using 10 hops and the load balancing works well, the total network cannot be receiving with more than 1/10th of it's TOTAL bandwidth at any given time. This is not a problem, because under most circomstances this is not the case. Yes, this prevents dial-up users form contributing to the network, but for Broadband it's a non issue. A 128k link can transmit a theoretical 10.8GB a day. Show me someone who has a 128k link and AVERAGES downloading more than 1GB a day, and I'll show you someone who needs a faster connection. Sure you could change it from aveaging 10 hops to 5 hops, but then you cut the rate that nodes learn in half. It would be nice to find the optimum value, but there is no way to do that on the existing network. (only in simulation.) _______________________________________________ Tech mailing list [EMAIL PROTECTED] http://hawk.freenetproject.org:8080/cgi-bin/mailman/listinfo/tech
