- From: Melvin Carvalho <melvincarvalho@gmail.com>
- Date: Thu, 13 Jun 2013 17:00:01 +0200
- To: Kingsley Idehen <kidehen@openlinksw.com>
- Cc: public-webid <public-webid@w3.org>
- Message-ID: <CAKaEYh+-PvH4_sPCtEsoTkDFQzhbMEq3hdx6F+GNp9vmYAoLEA@mail.gmail.com>
On 11 June 2013 22:15, Kingsley Idehen <kidehen@openlinksw.com> wrote: > On 6/11/13 3:58 PM, Melvin Carvalho wrote: > > > > > On 11 June 2013 21:50, Henry Story <henry.story@bblfish.net> wrote: > >> >> On 11 Jun 2013, at 21:47, Melvin Carvalho <melvincarvalho@gmail.com> >> wrote: >> >> >> >> >> On 11 June 2013 21:39, Henry Story <henry.story@bblfish.net> wrote: >> >>> >>> On 11 Jun 2013, at 21:28, Melvin Carvalho <melvincarvalho@gmail.com> >>> wrote: >>> >>> >>> >>> >>> On 11 June 2013 20:20, Henry Story <henry.story@bblfish.net> wrote: >>> >>>> Melvin, you forget that you could also use .onion or .garlic urls if >>>> you really don't want to rely on DNS. >>>> >>>> As for the rest I think it is interesting. But it seems like a lot of >>>> work, which will require >>>> working on a logic of trust, and much more. Perhaps a Phd thesis? >>>> >>> >>> You really think it's that much work? OK, then how about this: we >>> each take the keys of people in our friends list, and cache the reverse >>> lookup for them ... ? >>> >>> >>> And how do you stop a man in the middle changing all those pieces of >>> info as you fetch them? >>> What is the algorith you use for trusting those people? How do you tell >>> them to update their >>> system if your keys change? What do I do in case of clash? Etc.... >>> etc.... >>> >>> I don't think that quick answers to this point on a mailing list are >>> going to be satisfactory. >>> You need someone full time on these issues, and careful work with crypto >>> specialists. >>> >> >> I think, as with much of security, there's no perfect answer to these >> questions. Tho for each scenario you can devise a strategy. >> >> But the principle here is that the mirrored claims make things >> incrementally better. What's wrong with incrementalism? >> >> >> Well great. We're all waiting to see your implementation and the spec >> that goes with it. >> > > Well it only works if people start doing it. The algorithm is not too > hard. > > 1. For each of your friend's keys, each with digest (d): > > 2. On your host add the document > > /.well-known/di/d > > Containing the triple > > di:d > cert : identity > <webid> . > > > We have to get around /.well-known/ due to its issues with letting users > have full control, even when they don't control or possess admin privileges > for a DNS server. > > You can handle this by adding a URL parameter to the di: scheme URI. Net > effect, you can point to the location of the document associated with the > digest denoted by the di: scheme URI. > > We do exactly what I just described in our X.509 cert generation services: > > 1. http://id.myopenlink.net/certgen > 2. http://youid.openlinksw.com > Yes, I agree, you just put the triples out there. BUT how to people find them? I'm a server and I just got this public key ... where do I go now? > > Example: > > 1. http://id.myopenlink.net/certgen/key/7959 -- public key URI > 2. http://id.myopenlink.net/c/BVH477 -- page describing the cert > associated with the public key > 3. di:sha1;Ufn4rImd6QKET8LqDZwCkRaufLo?hashtag=webid&http= > id.myopenlink.net -- di: scheme URI with the URL parameter > 4. > http://kingsley.idehen.net/about/html/di:sha1;Ufn4rImd6QKET8LqDZwCkRaufLo?hashtag=webid&http=id.myopenlink.net > 5. > http://kingsley.idehen.net/about/html/di:sha1;Ufn4rImd6QKET8LqDZwCkRaufLo?hashtag=webid&http=id.myopenlink.net-- back to the original public key description. > > > Kingsley > > > > > >> >> Henry >> >> >> >>> >>> >>> >>>> >>>> >>>> On 11 Jun 2013, at 18:30, Melvin Carvalho <melvincarvalho@gmail.com> >>>> wrote: >>>> >>>> The WebID + TLS flow has one single point of failure, and that is >>>> that you have to trust the profile page. If the profile page is somehow >>>> compromised, or the victim of a MITM attack your whole authentication >>>> process could be compromised. >>>> >>>> Now some people say you can add trust by adding an SSL certificate, or >>>> in the future, perhaps DNSSEC. However, this can be unsatisfactory, >>>> because A) it's costly, B) you are just shifting the single point of >>>> failure around. Other projects have pushed back against using WebID for >>>> this reason. >>>> >>>> A more effective technique might be to distribute trust across the >>>> whole web. >>>> >>>> When the TLS handshake takes part, the sever can be mathematically >>>> sure, that the public key it receives is authentic. >>>> >>>> The *standard* flow is to add a forward follow-your-nose lookup from >>>> the certificate to your profile page. But what if we, as a community, were >>>> to distribute the trust across many many servers, using the read write >>>> web. >>>> >>>> Instead of a FORWARD (follow your nose) lookup, you can do a REVERSE >>>> lookup on the public key, using the di: (digest) URI scheme. A neat >>>> feature of the di: spec is that it also has a /.well-known/di directory >>>> where you can put digests and and get back a document. >>>> >>>> It may be fairly simple to set up a single directory that allows >>>> users to go in and update their info on your server. You may even charge >>>> a small fee for it. >>>> >>>> In this way a server does not have to rely on a single point of >>>> failure as the relationship between a key and a user will be distributed in >>>> many places. In this way you can perform extra checks as required to >>>> verify the authenticity of a login, as needed... >>>> >>>> >>>> >>>> Social Web Architect >>>> http://bblfish.net/ >>>> >>>> >>> >>> Social Web Architect >>> http://bblfish.net/ >>> >>> >> >> Social Web Architect >> http://bblfish.net/ >> >> > > > -- > > Regards, > > Kingsley Idehen > Founder & CEO > OpenLink Software > Company Web: http://www.openlinksw.com > Personal Weblog: http://www.openlinksw.com/blog/~kidehen > Twitter/Identi.ca handle: @kidehen > Google+ Profile: https://plus.google.com/112399767740508618350/about > LinkedIn Profile: http://www.linkedin.com/in/kidehen > > > >
Received on Thursday, 13 June 2013 15:00:34 UTC