(Replying to PARENT post)
Data needs to be stored. You either store it locally, and as such it is only accessible when the device is on, or it's stored on a central repository or index, meaning it's always on even if one of the devices is off.
How do you tackle this? How do you make sure that user A tries to access news feed of user B, and fails to get it because user's B device is offline?
Maybe I'm being slow or noobish, but it seems to be the same problem one has with bitorrent: user A downloads from user B if user B is online. If data is common, I have multiple seeds, but social network implies that nobody has the same data. Unless you copy my graph to my friends "device" so one has multiple seeds, which could be quite unpractical on mobile devices if I have a lot of friends.
How do you solve this "intermittent issue" and the synchronization and persistence problems it generates? Without a central "clearing"/indexing server? Even Skype has "Super nodes" to handle this issues...
This aside from the fact that "IPV6 deployment" is not going to be a easy cake to bake, one has to fix the problems faced by GPG trust model to ensure that two parties can verify (with some degree of trust) that the other party with whom they're communicating is, indeed, the person they expect, dynamic IPs, and so on.
(Replying to PARENT post)
1. A requirement seems to be the ability to make and receive socket connections. How would you address the typically restrictive home firewalls/NATs that most people are living with?
2. In the responses, a commenter raises this issue: With the above example of two users and 56 connections it seems like there could be scaling issues and or perormance issues. They may be less obvious on computers but mobile devices with more limited bandwidth and sometimes quotas may suffer for those users with muilple devices and their multi device highly connected friends.
The response from admin is: "Correct, this technology will have to scale along with hardware. I donβt believe we are too far off with 4g, more inexpensive memory and the like."
That doesn't inspire much confidence in the idea as a proof of concept.
You're also claiming to solve a far more fundamental problem: that of creating and maintaining a reliable distributed peer-to-peer network without any central servers at all. If you do have a practical solution to this problem, then a bunch of other difficult problems (like tracker-less Bittorent, for example, which currently relies on distributed hash tables) reduce to yours. Are you sure you're able to make that claim?
(Replying to PARENT post)
(Replying to PARENT post)
edit: Namely, how do you securely add a friend without prior knowledge of his public key?
(Replying to PARENT post)
Is that a joke? Seriously?