How do instances federate?

6 views
Skip to first unread message

Wanton

unread,
Sep 17, 2010, 1:35:59 PM9/17/10
to diaspora-dev
Hi,

Lacking in the README is any sense of how to get multiple instances to
talk to each other. Or even how to add friends who are on a different
node.

Is there documentation about how federation/resource discovery works?

Cheers,
Wanton

Nate

unread,
Sep 17, 2010, 1:50:57 PM9/17/10
to diaspo...@googlegroups.com

You can friend others by using their user@system address.  Like t...@tom.joindiaspora.com.  though, this doesn't seem to work properly on my system, I think its due to my own issue of some sort. 

I would be interested to know how if its possible to link two systems as you describe.  It seems to make more sense that way.

John

unread,
Sep 17, 2010, 1:56:48 PM9/17/10
to diaspo...@googlegroups.com
On 17/09/10 18:50, Nate wrote:

You can friend others by using their user@system address.  Like t...@tom.joindiaspora.com.  though, this doesn't seem to work properly on my system, I think its due to my own issue of some sort. 

I would be interested to know how if its possible to link two systems as you describe.  It seems to make more sense that way.


I am having the same problems, cant friend somebody. Now, for some reason, the log in page, has disappeared, and says page unavailable. Was using http://pivots.joindiaspora.com/login

John

Zachary Giles

unread,
Sep 17, 2010, 2:35:03 PM9/17/10
to diaspo...@googlegroups.com
I too have problems adding other people. Trying to add t...@tom.joindiaspora.com gives me an error of:

Unable to find the host XRD file.
/usr/lib/ruby/gems/1.8/bundler/gems/redfinger-605edbb2b3b4/lib/redfinger/client.rb:44:in `retrieve_template_from_xrd'
/usr/lib/ruby/gems/1.8/bundler/gems/redfinger-605edbb2b3b4/lib/redfinger/client.rb:42:in `retrieve_template_from_xrd'
/usr/lib/ruby/gems/1.8/bundler/gems/redfinger-605edbb2b3b4/lib/redfinger/client.rb:15:in `finger'
/usr/lib/ruby/gems/1.8/bundler/gems/redfinger-605edbb2b3b4/lib/redfinger.rb:15:in `finger'
app/models/person.rb:88:in `by_webfinger'
app/helpers/requests_helper.rb:36:in `relationship_flow'
app/controllers/requests_controller.rb:37:in `create'
...


I'm not sure what it is that I'm doing wrong. Before just now, it gave me "No user with that email" .. which didnt make much sense either since I don't think it's using email for this.. Supposed to be going through it's own web based thing I thought...

I can't tell if I've got it set up wrong or what.. I'm latest git revision as of an hour ago or so..
--
Zach Giles
zgi...@gmail.com

Wanton

unread,
Sep 17, 2010, 2:42:04 PM9/17/10
to diaspora-dev
Ok, so this seems to be a major usability issue.

So, in order to invite friends one has to know their exact Diaspora
handle - which given that the whole point seemed (to me) to have a
world in which everyone and their mothers would have their own server,
makes it a little awkward to use.

Worst still, it means everyone needs to grab a new email address,
potentially discardable if they change their minds about where they
are hosting themselves?


Wanton


On Sep 17, 10:50 am, Nate <yjn...@gmail.com> wrote:
> You can friend others by using their user@system address.  Like
> t...@tom.joindiaspora.com.  though, this doesn't seem to work properly on my
> system, I think its due to my own issue of some sort.
>
> I would be interested to know how if its possible to link two systems as you
> describe.  It seems to make more sense that way.
>
> On Sep 17, 2010 1:35 PM, "Wanton" <davi...@gmail.com> wrote:> Hi,

Tristan Sloughter

unread,
Sep 17, 2010, 2:47:21 PM9/17/10
to diaspo...@googlegroups.com
I assume that isn't the end goal. It would be easy to connect pods and search all users of the connected pods efficiently -- no not having to send a message to each pod and search there :). This index would be located any multiple pods in either entirety or near entirety to limit the number of pods required to be search (if having to go outside of your local pod at all).

Sam Whited

unread,
Sep 17, 2010, 2:52:51 PM9/17/10
to diaspo...@googlegroups.com
What does the email address have to do with anything?

The point is not that everyone runs their own seeds, but that anyone CAN
run their own seeds if they so choose. They can also change seeds at any
time and take all of their data with them.

If I move my data from s...@joindiaspora.com to sa...@acmeco.com anyone
who is friends with me will still be friends with me and will still know
that I am who I claim to be (via my public key).

Best,
Sam

--
Sam Whited
s...@samwhited.com
404.492.6008

Georgia Institute of Technology
Mechanical Engineering Undergraduate
swh...@gatech.edu

andy baxter

unread,
Sep 17, 2010, 2:58:24 PM9/17/10
to diaspo...@googlegroups.com
On 17/09/10 19:42, Wanton wrote:
> Ok, so this seems to be a major usability issue.
>
> So, in order to invite friends one has to know their exact Diaspora
> handle - which given that the whole point seemed (to me) to have a
> world in which everyone and their mothers would have their own server,
> makes it a little awkward to use.
>
> Worst still, it means everyone needs to grab a new email address,
> potentially discardable if they change their minds about where they
> are hosting themselves?
>

I don't get why this is such a problem. Can't people just tell each
other their Diaspora handle using email, phone, word of mouth, or any of
the other ways people already communicate? It seems to me that this is
only a problem if you're expecting Diaspora to replace all these other
forms of communication, but this is never going to be the case and nor
should it.

Alexander Grotewohl

unread,
Sep 17, 2010, 3:03:24 PM9/17/10
to diaspo...@googlegroups.com
This seems to be heading toward mega netsplits.. to use IRC lingo... Are
there any plans to sort of offset this potential problem?

Sam Whited

unread,
Sep 17, 2010, 3:05:08 PM9/17/10
to diaspo...@googlegroups.com
What if you want to catch up with an old friend that you know has a
Diaspora account but you don't have their email or phone number?

Search is definitely a good idea, but it's not a problem. The feature
will be created eventually, probably using one of the general methods
which are being discussed in this group.

Best,
Sam

--

Tristan Sloughter

unread,
Sep 17, 2010, 3:16:56 PM9/17/10
to diaspo...@googlegroups.com
So is the idea that pods do not share data? I get the feeling from some that they want this as a "security thing". That seems like a bad idea and will greatly hurt performance and usability. But there is so little written up about the actual design I can't say! 

Tristan

Tristan Sloughter

unread,
Sep 17, 2010, 3:18:22 PM9/17/10
to diaspo...@googlegroups.com
I should make it clear that it has nothing to do with security!

If the data is encrypted and spread out over the pods and only those who you've allowed access to it doesn't matter. 

Tristan

John Favorite

unread,
Sep 17, 2010, 3:23:55 PM9/17/10
to diaspo...@googlegroups.com
which then does not make it secure. If you give someone access to the info (think email) they can do whatever they want with it. This project is not about securing your info as much as controlling it, in a secure way.

Zachary Giles

unread,
Sep 17, 2010, 3:30:21 PM9/17/10
to diaspo...@googlegroups.com
This is all well and good, but still connecting 2 nodes seems problematic.. I didnt think (and wouldnt expect) this to use email.. but, when I enter another user on another pod to connect to, it says that the "email does not exist" or something similar message about email. I don't see it going out and asking via HTTP to that pod if that user exists..
How then can I connect my public diaspora seed/pod to another successfully.
ALSO, how could I do it offline.. m...@server1.local and m...@server2.local  ? doesnt seem to work inhouse either.

Anyone else with that problem that got it working, or is it either people who are working and people who aren't working?

Further, where is the GPG key and information per user? I don't see any user interface that says anything about GPG configuration or printing my key or anything
--
Zach Giles
zgi...@gmail.com

Tristan Sloughter

unread,
Sep 17, 2010, 3:33:30 PM9/17/10
to diaspo...@googlegroups.com
Is there any explanation anywhere about how this all is suppose to work?

Users being connected to a server by user@server seems very bad. 

Ori Pekelman

unread,
Sep 17, 2010, 3:51:26 PM9/17/10
to diaspora-dev
+1 I simply have not seen any, anything about the overall design. I
suspect there is none. I suspect this: 1. does not work. 2. has
horrible privacy implications. I suspect from what I could gather from
the code that a lot of personal info leakage is happening and this is
happening by this "non design".
You can not do security later. You can not do privacy later. It must
be in there by design. Distributed systems are hard. Distributed
search is hard. Distributed trust is hard. Routing without
centralizing elements is hard.

BTW. Crypto stuff is not magic dust. You don't get privacy because you
are doing public key cryptography. On the contrary. If you use the
same public key for every tier you are leaking a GUID. GUIDs are
really bad for your privacy.

On Sep 17, 9:33 pm, Tristan Sloughter <tristan.slough...@gmail.com>
wrote:
> Is there any explanation anywhere about how this all is suppose to work?
>
> Users being connected to a server by user@server seems very bad.
>
>
>
> On Fri, Sep 17, 2010 at 2:30 PM, Zachary Giles <zgi...@gmail.com> wrote:
> > This is all well and good, but still connecting 2 nodes seems problematic..
> > I didnt think (and wouldnt expect) this to use email.. but, when I enter
> > another user on another pod to connect to, it says that the "email does not
> > exist" or something similar message about email. I don't see it going out
> > and asking via HTTP to that pod if that user exists..
> > How then can I connect my public diaspora seed/pod to another successfully.
>
> > ALSO, how could I do it offline.. m...@server1.local and m...@server2.local
> > ? doesnt seem to work inhouse either.
>
> > Anyone else with that problem that got it working, or is it either people
> > who are working and people who aren't working?
>
> > Further, where is the GPG key and information per user? I don't see any
> > user interface that says anything about GPG configuration or printing my key
> > or anything
>
> >>>>> swhi...@gatech.edu
>
> > --
> > Zach Giles
> > zgi...@gmail.com

Sam Whited

unread,
Sep 17, 2010, 4:11:59 PM9/17/10
to diaspo...@googlegroups.com
On 9/17/2010 3:51 PM, Ori Pekelman wrote:
> BTW. Crypto stuff is not magic dust. You don't get privacy because you
> are doing public key cryptography. On the contrary. If you use the
> same public key for every tier you are leaking a GUID. GUIDs are
> really bad for your privacy.

What?

> On Sep 17, 9:33 pm, Tristan Sloughter <tristan.slough...@gmail.com>
> wrote:
>> Is there any explanation anywhere about how this all is suppose to work?
>>
>> Users being connected to a server by user@server seems very bad.

Why, and what do you mean by "bad?" This is exactly how it should work
(it's exactly how your email works among other things).

Georgia Institute of Technology
Mechanical Engineering Undergraduate

swh...@gatech.edu

Tristan Sloughter

unread,
Sep 17, 2010, 4:17:28 PM9/17/10
to diaspo...@googlegroups.com
Right, I don't want email. I want a social network. Now, this isn't about what I want, of course. I'm just putting my thoughts out there.

I understood it as a secure and distributed social network.

Tristan

farnoy

unread,
Sep 17, 2010, 4:20:37 PM9/17/10
to diaspora-dev
It's pre-alpha now, they released it to show that this money went in a
proper way... Don't expect any documentary now, as every force is
heading towards development. This version is just a start for people
who want to contribute, not end users.
> swhi...@gatech.edu

Zachary Giles

unread,
Sep 17, 2010, 4:28:57 PM9/17/10
to diaspo...@googlegroups.com
farnoy, documentation would be nice.. but not necessary. I understand why they released it and I'm very glad they did. Now we all want to play with it. Of course, if someone doesnt like it, they can git [sic] and improve it to their heart's content..

With that said, I still would like to be able to connect to other servers. It is unclear if this is yet implemented.. but it appears to be since it seems other people are actually connecting (though, it seems no one has confirmed this yet) and the demo videos from a while back showed that they did have inter-node communication working..regardless of privacy issues.
Security is important, but it's a pre-alpha. nothing here has to have anyone's real information in it for now.
--
Zach Giles
zgi...@gmail.com

shadowfirebird@gmail

unread,
Sep 17, 2010, 6:47:21 PM9/17/10
to diaspo...@googlegroups.com
That's a truly horrific thought, and one I've been avoiding. I've no experience at all with open source development, but I've certainly seen that scenario played out any number of times in the commercial programming world, and I've seen enough here to start feeling, um, that I ought to brace myself for a possible sinking feeling later on...

It seems to me that we ought to find out if your suspicions are correct, as a priority. Any ideas as to how? I'm not a cryptography expert; I wouldn't know secure data transfer from semaphore...

Michiel

unread,
Sep 18, 2010, 5:58:31 AM9/18/10
to diaspora-dev
On Sep 18, 12:47 am, "shadowfirebird@gmail" <shadowfireb...@gmail.com>
wrote:
> That's a truly horrific thought, and one I've been avoiding.  I've no experience at all with open source development, but I've certainly seen that scenario played out any number of times in the commercial programming world, and I've seen enough here to start feeling, um, that I ought to brace myself for a possible sinking feeling later on...
>
> It seems to me that we ought to find out if your suspicions are correct, as a priority.  Any ideas as to how?  I'm not a cryptography expert; I wouldn't know secure data transfer from semaphore...
>


It seems to me that the security is done the wrong way around in what
I've understood so far, think about it. I have to trust the server
that hosts my diaspora account. This means not only trusting the
application (ref. http://www.theregister.co.uk/2010/09/16/diaspora_pre_alpha_landmines/),
but also trusting the kind stranger where i currently have my account
(in my case www.diasporahosting.eu). But there is a third security
risk I think: say I send a private message to my friend. That friend
hasn't done a lot of research on which diaspora seeds are run by
people who know what they're doing, and he happens to have his
diaspora account on a server owned by whatever phishing mafia, who
access his private data, and through that, all the photo albums of all
the victim's friends. Instead of having to trust just facebook, I now
have to trust each server on which at least one of my friends has
their diaspora account. If people host in their homes, with amateur
server hardening and monitoring, then this may become even worse.

I haven't confirmed exactly whether the data is stored in plain text
in mongodb, but if you hack the login page of your server, it's easy
to set up a 'phishing seed'. can anyone please prove me wrong on this?
because if it is that way, then the 'distributed trust' issue
mentioned by Ori is a huge obstacle for diaspora becoming a success.

If this wasn't solved in this pre-alpha, then maybe we should round up
a little team here and 'git on it'. I think, turning the security
model inside out in some way (which we would have to invent, i don't
have the answer yet!), it must be able to add provider-independent
security (as explained in ref http://tahoe-lafs.org/source/tahoe-lafs/trunk/docs/about.html)
to diaspora.

Cheers
Michiel de Jong

shadowfirebird@gmail

unread,
Sep 18, 2010, 6:33:03 AM9/18/10
to diaspo...@googlegroups.com
Okay, first of all I'd like to give the Diaspora team the benefit of the doubt: maybe they've sorted all these problems and just haven't documented them yet.

Now, assuming that they haven't...

All the problems you talk about are solvable. I know, because Tor must have solved them, and if Tor didn't work, I think the stink would be all over the internet. It naively seems to me that if each pod has an encrypted db, and only talks to other pods that are certified by a public key, then that deals with most of it.

My concerns are at a more basic level. How do pods communicate? Is there a distributed hash network going on here, and if so, what is stored in it?

Dreamcat4

unread,
Sep 18, 2010, 6:34:44 AM9/18/10
to diaspo...@googlegroups.com
Regarding the issue about a phishing seed...

Well in the real world we use DNS resolution to trust who we are
connecting to. As you say... with facebook people know that
facebook.com is a trusted domain name, owned by facebook inc. We then
go on to trust that the page they are serving us is authentic and not
hacked. (which is rather the point where facebook security starts to
fall down, of course. teehee).

With diaspora is entirely likely that most users wont want to trust
any tom dick or harry with their data. We will still want to use the
trusted dns domain name model to connect to diaspora servers and
gateways which we trust.

Consider the distributed security concept adopted by TOR. We trust tor
GATEWAYS with entry and exit into the tor network. For establishing a
connection and an endpoint. Tor relay nodes (the links in the middle
of the chain) however can be hosted by anyone. All of the data
exchanged by tor relay nodes is completely anonymous and always
encrypted by an ssh tunnel.

Now. Transfer that same mentality to a different kind of networking
service like diasposa. You would have 2 kinds of diaspora seeds. One
kind are known and trusted authentication gateways. The other kind are
basically just anonymous distributed databases. That would be a secure
method of safely storing your profile data on any free (untrusted)
server. But still remaining in confidence for your login pages not
being phished by hackers / identity theives.

I dont really know how else you can set up a watertight security model
for diaspora. Can there possible be an easier way to do it? If so,
then great.

On Sat, Sep 18, 2010 at 10:58 AM, Michiel <dejong....@gmail.com> wrote:
> On Sep 18, 12:47 am, "shadowfirebird@gmail" <shadowfireb...@gmail.com>
> wrote:
>> That's a truly horrific thought, and one I've been avoiding.  I've no experience at all with open source development, but I've certainly seen that scenario played out any number of times in the commercial programming world, and I've seen enough here to start feeling, um, that I ought to brace myself for a possible sinking feeling later on...
>>
>> It seems to me that we ought to find out if your suspicions are correct, as a priority.  Any ideas as to how?  I'm not a cryptography expert; I wouldn't know secure data transfer from semaphore...
>>
>
>
> It seems to me that the security is done the wrong way around in what
> I've understood so far, think about it. I have to trust the server
> that hosts my diaspora account. This means not only trusting the
> application (ref. http://www.theregister.co.uk/2010/09/16/diaspora_pre_alpha_landmines/),
> but also trusting the kind stranger where i currently have my account
> (in my case www.diasporahosting.eu). But there is a third security
> risk I think: say I send a private message to my friend. That friend
> hasn't done a lot of research on which diaspora seeds are run by
> people who know what they're doing, and he happens to have his
> diaspora account on a server owned by whatever phishing mafia, who
> access his private data, and through that, all the photo albums of all
> the victim's friends. Instead of having to trust just facebook, I now
> have to trust each server on which at least one of my friends has
> their diaspora account. If people host in their homes, with amateur
> server hardening and monitoring, then this may become even worse.

As for your friends accounts being compromised well... thats an
inherent problem for any kind of social network that is like Facebook.
Theres just no way to get away from it. You either trust your friends
are smart enough to not compromise their passwords. Or otherwise
simply dont trust them. No watertight security model can ever stop
that from happening. And the issue probably has got absolutely nothing
to do with "amateur servers".

Jakob Keres

unread,
Sep 18, 2010, 1:22:32 PM9/18/10
to diaspo...@googlegroups.com
I'm afraid there's no solution for this. You will never be able to
decide if you have an evil friend or if the server/software of your
friend is evil. But it is the same situation like today. If you write an
email to someone, you also don't know if the mail program of him is
hacked and your email adress stolen. If you post something to FB you
can't be sure that your friends don't have a lot of Trojan horses on
their notebook and everything is forwarded to the mafia or whomever.

Therefore, you never can be sure what will happen with your data. But
Diaspora hopefully will give you more control. But on the other side, I
think, a good, nice, user-friendly social-network provider (not FB but a
non-commercial organization) theoretically could ensure a higher data
security.

shadowfirebird@gmail

unread,
Sep 18, 2010, 3:19:26 PM9/18/10
to diaspo...@googlegroups.com, Jakob Keres
Tor seem to have solutions for most of those problems. True, at the end of the day you have to make a call that your friends are relatively security-conscious: that will never change.

A distributed network communicating over encrypted channels through a web of trust and storing data encryptedly goes a long way towards privacy.

shadowfirebird

unread,
Sep 18, 2010, 4:19:22 PM9/18/10
to diaspora-dev
Dreamcat, I think you are talking about two distinct problems: the
problem of how pods communicate with each other, and the problem of
how pods communicate with the bits of the internet outside the
Diaspora network.

I don't disagree with anything you've said, but let's walk before we
run: lets address the problem of pods communicating with each other,
first.

Now, it seems to me that in the current software this feature is
either missing or broken. Does anyone know which?

I don't see anything in the Pivotal Tracker (https://
www.pivotaltracker.com/projects/61641) that indicates either way. Nor
do I see anything in closed issues (http://github.com/diaspora/
diaspora/issues/closed).

I think it would be ridiculous to rule out at this early stage the
idea that the Diaspora devs have it all in hand and just haven't told
us yet. But just as an exercise, how would we design communication
between pods?

Do we all think a distributed hash network running on a web of trust
is the right approach?
> > application (ref.http://www.theregister.co.uk/2010/09/16/diaspora_pre_alpha_landmines/),
> > but also trusting the kind stranger where i currently have my account
> > (in my casewww.diasporahosting.eu). But there is a third security
> > security (as explained in refhttp://tahoe-lafs.org/source/tahoe-lafs/trunk/docs/about.html)

shadowfirebird

unread,
Sep 18, 2010, 5:03:52 PM9/18/10
to diaspora-dev
Gonna answer some of my own questions. I've looked at the code.

From diaspora/lib/message_handler.rb:
> def send_to_seed(message, http_response)
> #DO SOMETHING!
> end

It would appear that the code to talk to other pods is probably not
written at this point.
(Disclaimer: I'm not bad with Ruby, but my Rails skills are pretty
rough. I could be wrong.)

As a side note, it looks like messages are currently encrypted using
SSL.


On Sep 18, 9:19 pm, shadowfirebird <shadowfireb...@gmail.com> wrote:
> Dreamcat, I think you are talking about two distinct problems: the
> problem of how pods communicate with each other, and the problem of
> how pods communicate with the bits of the internet outside the
> Diaspora network.
>
> I don't disagree with anything you've said, but let's walk before we
> run: lets address the problem of pods communicating with each other,
> first.
>
> Now, it seems to me that in the current software this feature is
> either missing or broken.  Does anyone know which?
>
> I don't see anything in the Pivotal Tracker (https://www.pivotaltracker.com/projects/61641) that indicates either way.  Nor

andy baxter

unread,
Sep 19, 2010, 7:10:18 PM9/19/10
to diaspo...@googlegroups.com
On 18/09/10 18:22, Jakob Keres wrote:
> I'm afraid there's no solution for this. You will never be able to
> decide if you have an evil friend or if the server/software of your
> friend is evil. But it is the same situation like today. If you write an
> email to someone, you also don't know if the mail program of him is
> hacked and your email adress stolen. If you post something to FB you
> can't be sure that your friends don't have a lot of Trojan horses on
> their notebook and everything is forwarded to the mafia or whomever.
>
> Therefore, you never can be sure what will happen with your data. But
> Diaspora hopefully will give you more control. But on the other side, I
> think, a good, nice, user-friendly social-network provider (not FB but a
> non-commercial organization) theoretically could ensure a higher data
> security.
>

I agree with this. The question isn't just about whether some seeds on a
network like this can potentially be abused by phishers or whoever
(there's no such thing as total security and they probably can), it's
about whether a distributed model of trust can give as good or better a
level of security across the whole network over a period of time. If
there are obvious exploits, then it's good that they should be designed
out where possible, but the question for me is whether a distributed
network can work well enough that I'm happy to trust it with my data. My
inclination is to say that it can.

At the moment people have the choice between putting their trust in
facebook or using other means like email to communicate over the
internet. If facebook breaks that trust (which it already has done in
various ways), then lots of people lose out but have nothing obvious to
do about it except leave the network. Whereas with diaspora if it
becomes obvious that a particular server is deliberately or accidentally
being abused, people do have something to do - they can move their
diaspora account to another host (and be more careful in the future
about making decisions like this). I think that over time, many people
trying to make informed choices about where to place their trust is
likely to produce better results than everybody pooling their trust with
a big organisation like facebook.

Reply all
Reply to author
Forward
0 new messages