Re: a common understanding of profiles

On 28 June 2015 at 23:31, Harry Halpin <hhalpin@w3.org> wrote:

>
>
> On 06/28/2015 10:53 PM, Melvin Carvalho wrote:
> > On 28 June 2015 at 22:13, Harry Halpin <hhalpin@w3.org> wrote:
> >
> >>
> >>
> >> On 06/27/2015 09:10 PM, Melvin Carvalho wrote:
> >>> On 26 June 2015 at 23:22, Harry Halpin <hhalpin@w3.org> wrote:
> >>>
> >>>>
> >>>>
> >>>> On 06/26/2015 11:17 PM, Melvin Carvalho wrote:
> >>>>> On 26 June 2015 at 22:58, Harry Halpin <hhalpin@w3.org> wrote:
> >>>>>
> >>>>>> Again, I think http URIs and using #s to separate humans and
> documents
> >>>>>> are in general good ideas and support that in RDF-based systems.
> >>>>>>
> >>>>>> However, as the WebID+TLS community in the past has been unable or
> >>>>>> unwilling to update or change their  authentication protocol in
> >> response
> >>>>>> to noted and kinda well-known security/privacy issues with
> WebID+TLS,
> >> so
> >>>>>> I'm not sure further discussion is productive on this mailing list.
> >>>>>>
> >>>>>> Regardless of security/privacy issues, as TLS client negotiation is
> >>>>>> being dropped in TLS 1.3 due to the triple handshake attack, it's
> >> pretty
> >>>>>> obvious that WebID+TLS should not be used as a general purpose
> >>>>>> authentication protocol in the future as browser support for even
> how
> >> it
> >>>>>> works today will be phased out over time.
> >>>>>>
> >>>>>> Rather, the WebID community I would suggest looking at the TLS Token
> >>>>>> Binding discussion, or improving WebID+RSA or the FIDO work.
> >>>>>>
> >>>>>> I'm happy to write these well-known issues up and send them to the
> WG.
> >>>>>> If you doubt these points, you may wish to communicate with the TLS
> >> WG,
> >>>>>> the IETF SAAG, or the W3C WebSec WG to get in touch with folks in
> >>>>>> industry and academia who are working on these problems and may have
> >>>>>> more time to discuss these issues with you.
> >>>>>>
> >>>>>
> >>>>> Thanks for the offer of writing up the "well known" issues, that
> would
> >> be
> >>>>> welcome.  I know you have strong views here, so, in general, a write
> up
> >>>> or
> >>>>> pointers (as above) would be appreciated.
> >>>>
> >>>> These issues are strangely enough well known in the larger security,
> >>>> privacy, and cryptographic research community, which it seems the
> WebID
> >>>> community could use more interaction with. Good luck!
> >>>>
> >>>> I'll send a doc out if I have time, but the links are below from Ryan
> >>>> and Brad.
> >>>>
> >>>
> >>> Harry, please dont say you would be "happy to" do something, unless you
> >> are
> >>> prepared to follow through with it.  If you claim there are well known
> >>> issues with something, then you can be expected to be asked what they
> >> are.
> >>> I think it's clear from the conversation above, that you're not up to
> >> date
> >>> with the subject material, in this case.  So soon after being asked by
> >>> TimBL not to quote him out of context, you seem to be doing it again.
> >>
> >> I am not quoting TimBL. I just said I support WebID as http URIs with
> >> the use of #s.
> >>
> >
> > Quote: "by WebID you mean what TimBL means, i.e. identify people using
> URIs"
> >
> > If you had been referring to the timbl's web axioms that anything of note
> > should be identified using a URIs, then sure.  But that's not what WebID
> > means.
> >
> > WebIDs are HTTP URIs that support turtle.  Hash URIs are recommended.
> That
> > is what's in the webid spec that timbl authored.
> >
> > I hope this is clear now.
>
> Yes, I noted the WebID vs. WebID+TLS distinction in this e-mail, so
> *why* are you repeating yourself?
>

> https://lists.w3.org/Archives/Public/public-socialweb/2015Jun/0060.html
>
> Note my comments on clarifiying the security/privacy issues apply to
> WebID+TLS. When most people say WebID they mean "WebID+TLS", which of
> course has all security/privacy issues mentioned earlier, and thus the
> lack of support and implementation from the larger W3C community. IMHO
> It would *definitely* be useful to decouple even further WebID as "URIs
> to identify people that return a profile" from "WebID+TLS".
>

Quote: "most people say WebID they mean "WebID+TLS""

No, most people dont.

We wrote a whole spec to make this clear.

This community has gone out of their way to make this distinction clear,
particularly to you, and you are undermining that work.

WebID is VERY well defined.

>
>
> You can also read my previously mentioned email to see a hopeful but
> realistic take on #s and Turtle being adopted outside the community
> already using them. Thus, you may want to make #s and Turtle optional
> for WebID, and focus on interop in terms of JSON-LD (JSON with a good
> default context) if you want people outside the RDF community to use
> WebID and thus have the ability to link profiles. Turtle is a great
> syntax for RDF, but I imagine RDF-aware people can roundtrip quite
> easily between the two.In terms of #s, you could always auto-append a #
> to a URI of a non-# using system (i.e the majority of systems out there)
> for RDF inference purposes.
>

No, that's a bad idea, because trailing #'s dont work with qnames.


>
> Of course, if the WebID community wishes to not engage with the rest of
> the non-RDF world, that's fine but that's a loss for you all obviously,
> since as the Social Web WG shows, we have to bring together very
> disparate communities to create a standard for interop in terms of
> decentralization. Otherwise, a 'decentralized' solution just ends up
> being a small, decentralized silo.


That's slightly condescending.

This very thread was an attempt to do that.  I asked for feedback from
implementors and what I got was unrelated opinion pieces from you.  You
said you'd be happy to write it up your concerns, but when challenged to do
so, backed down.  If you're not going to do that, let's end the
conversation here.


>    cheers,
>        harry
>
>
>
>
> >
> >
> >>
> >>>
> >>> In future, If you provide pointers to back up your opinions, It will be
> >>> more productive, and that much easier to take seriously.
> >>
> >> Did you not see the poiners below from Brad Hill (Facebook) and Ryan
> >> Sleevi (Google)?
> >>
> >> You just have to scroll down. However here they are:
> >>
> >>  https://lists.w3.org/Archives/Public/public-xg-webid/2011May/0126.html
> >>
> >>
> >>
> https://lists.w3.org/Archives/Public/public-webcrypto-comments/2015Jun/0001.html
> >>
> >>
> >>
> https://lists.w3.org/Archives/Public/public-webcrypto-comments/2015Jun/0003.html
> >>
> >> It may take me a week or so to write this down, I can't do it overnight
> >> nor do I have lots of spare time. Again, all of these points were
> >> brought up privately (last time by Nadim from INRIA at the Social Web
> >> F2F) and ignored for a long time.
> >>
> >> That being said, the WebID+TLS community could use the fact that TLS 1.3
> >> is dropping support as an opportunity: The idea of using private key
> >> material to authenticate in a decentralized fashion is a *great idea*
> >> and everyone agrees (i.e FIDO, WebID+RSA with separate
> >> signing/encryption keys, etc.) it makes lots of sense.
> >>
> >> A redesign that works with privacy and security concerns would be
> >> welcomed. However, that would require the WebID community leaving its
> >> comfort zone and engaging with the security and privacy community
> >> seriously, which could would be very productive for all concerned. I
> >> hope you all can actually do that.
> >>
> >
> > Regarding the 'well known' issues as you describe.
> >
> > Your pointer is from 2011 and concerns in part performance.  Thanks for
> > sharing but a lot has changed since 2011.
> >
> > The other two are from this month (June 2015), and are not directed at
> > WebID.  So one wonders to see how an issue raised just 4 days ago can be
> a
> > 'well known' problem with WebID+TLS.
> >
> > From my experience, I have found Ryan Sleevi to be very conservative,
> > wanting to block ajax connections to localhost and web crypto api running
> > on http are things I think he had a hand in.
> >
> > So, if you want to raise criticisms of WebID or WebID+TLS, either here,
> or
> > unprompted in other working groups, it would be helpful if you were
> > prepared to be asked to write up a summary of your concerns.
> >
> >
> >>
> >>    cheers,
> >>       harry
> >>
> >>
> >>>
> >>>
> >>>>
> >>>>>
> >>>>>
> >>>>>>
> >>>>>> Brief links below:
> >>>>>>
> >>>>>>
> >>>>>> On 06/26/2015 10:25 PM, Melvin Carvalho wrote:
> >>>>>>> FYI: I've moved this discussion to public-webid, I hope I can field
> >>>> some
> >>>>>> of
> >>>>>>> the comments / criticisms.
> >>>>>>>
> >>>>>>> On 26 June 2015 at 21:51, Harry Halpin <hhalpin@w3.org> wrote:
> >>>>>>>
> >>>>>>>> On 06/26/2015 09:22 PM, Melvin Carvalho wrote:
> >>>>>>>>> On 26 June 2015 at 19:25, Harry Halpin <hhalpin@w3.org> wrote:
> >>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> On 06/26/2015 05:04 PM, Melvin Carvalho wrote:
> >>>>>>>>>>> On 26 June 2015 at 14:23, Evan Prodromou <evan@e14n.com>
> wrote:
> >>>>>>>>>>>
> >>>>>>>>>>>> On 2015-06-26 07:37 AM, Melvin Carvalho wrote:
> >>>>>>>>>>>>
> >>>>>>>>>>>>> Regarding the URI above.  It can become slightly problematic
> >>>>>>>> attaching
> >>>>>>>>>>>>> key value pairs to an HTTP document, also doubling as a
> Person.
> >>>>>>>>>>>>>
> >>>>>>>>>>>> I'm pretty sure I didn't do that in the example I gave.
> >>>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> Well I thought you were tying (for example) the key "@type" and
> >>>> value
> >>>>>>>>>>> "Person" to the http doc :
> https://evanprodmorou.example/profile
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>> So, how to get interoperable profiles?
> >>>>>>>>>>
> >>>>>>>>>> Note this question was explicitly scoped to the Social Interest
> >>>> Group,
> >>>>>>>>>> as obviously profiles are going to vary alot across systems and
> >> only
> >>>>>> the
> >>>>>>>>>> most generic pieces of syntax. So, could we move this discussion
> >>>>>> there?
> >>>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> Thanks, that's good to know.  However I dont think all members
> here
> >>>> are
> >>>>>>>>> members of the IG (im not for example).  To the extent that a
> >> common
> >>>>>>>>> understanding of profiles is a pre requisite for implementing a
> >>>> social
> >>>>>>>> api,
> >>>>>>>>> it would be good to get that understood.
> >>>>>>>>
> >>>>>>>> Anyone can join the IG.
> >>>>>>>>
> >>>>>>>> Again, the way to solve this is probably to look at Activity
> >>>> Vocabulary
> >>>>>>>> carefully first, and then vCard, and then FOAF and see what is
> >>>> missing,
> >>>>>>>> then pull requests with proposed modified changes/mapping to
> >> Activity
> >>>>>>>> Vocabulary.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>> Pick a data standard, and a way to find the profiles. Then,
> >>>>>> everybody
> >>>>>>>>>>>> implements that.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> +1 good to re-use a well-known standard.  Typically, that would
> be
> >>>>>> VCard
> >>>>>>>>>> (support across most of the ecosystem), which basically merged
> >> with
> >>>> a
> >>>>>>>>>> good deal of PortableContacts in VCard 4.0. It's got an XML
> >>>>>>>>>> serliazation, it maps to hCard for microformat users, and
> there's
> >> a
> >>>>>> RDF
> >>>>>>>>>> serialization for RDF users (not sure why FOAF didn't closely
> >> align
> >>>>>>>>>> more, but that could fixed).
> >>>>>>>>>>
> >>>>>>>>>> For things that aren't part of core vCard, the IG is empowered
> to
> >>>>>> create
> >>>>>>>>>> and maintain vocabularies (published as Interest Group Notes),
> and
> >>>> we
> >>>>>>>>>> imagined there would be lots of activity and iterations and
> >>>>>> maintenance
> >>>>>>>>>> of these vocabularies might go beyond the lifetime of the WG.
> The
> >>>> W3C
> >>>>>> is
> >>>>>>>>>> happy also co-ordinate as needed with schema.org and IETF on
> >> these
> >>>>>>>> issues.
> >>>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> -1 to vcard, I dont think everyone can be expected to implement
> >> that,
> >>>>>>>> does
> >>>>>>>>> anyone here do that so far?
> >>>>>>>>>
> >>>>>>>>> In general, I think it's unrealistic to propose "one profile
> >> standard
> >>>>>> to
> >>>>>>>>> rule them all", unless there's a very strong reason to do so --
> but
> >>>> if
> >>>>>>>> the
> >>>>>>>>> WG wants to go in that direction I would say a stand out
> candidate
> >> is
> >>>>>>>> WebID
> >>>>>>>>> because
> >>>>>>>>>
> >>>>>>>>> - It's already a documented spec
> >>>>>>>>> - It is already based on standards, and is 5 star linked data
> >>>>>>>>> - It is already implemented by SoLiD
> >>>>>>>>> - It is already implemented by facebook
> >>>>>>>>> - It already has about 1 billion profiles, out there
> >>>>>>>>> - It provides a discovery mechanism for feeds, followers, friends
> >>>> etc.
> >>>>>>>>>
> >>>>>>>>> Once again, I dont advocate this as being the single choice, I
> >> would
> >>>>>>>> rather
> >>>>>>>>> look for common ground for interop.
> >>>>>>>>
> >>>>>>>> If by WebID you mean what TimBL means, i.e. identify people using
> >>>> URIs,
> >>>>>>>> I am sure almost everyone agrees that using URIs is the way to
> go. I
> >>>>>>>> think there's wide agreement there. I believe Facebook and most
> >> sites
> >>>>>>>> indeed do that.
> >>>>>>>>
> >>>>>>>> If by WebID you mean FOAF, see above re mapping FOAF into vCard 4
> >> and
> >>>>>>>> Activity Vocabulary and seeing what the diff is. Most of the known
> >>>> world
> >>>>>>>> implements vCard and there are very mature libraries for almost
> all
> >>>>>>>> platforms. Convergence between FOAF/ActivityVocabulary/vCard would
> >> be
> >>>>>>>> great, but should be done in IG. FOAF is not supported natively by
> >>>>>>>> Facebook to my knowledge and has very little developer take-up
> >> outside
> >>>>>>>> the RDF community, although Matt Rowe had some excellent export
> >> tools.
> >>>>>>>>
> >>>>>>>
> >>>>>>> FOAF is not part of webid, but it is used in the examples.  Do you
> >>>> have a
> >>>>>>> pointer to the tools you mention?
> >>>>>>
> >>>>>> http://www.matthew-rowe.com/?q=foaf-generator
> >>>>>>
> >>>>>> Might not work any more due to bit rot.
> >>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>
> >>>>>>>> Authentication mechanisms such as WebID+TLS is *out of scope* for
> >> this
> >>>>>>>> WG. Even if it was, the necessary cryptographic and security
> >> expertise
> >>>>>>>> is clearly not here as well. WebID+TLS is not implemented by
> >> Facebook
> >>>> or
> >>>>>>>> any other user-facing vendors to my knowledge (Facebook
> implements,
> >> as
> >>>>>>>> is widely known, a variant of OpenID Connect i.e. Facebook Connect
> >> and
> >>>>>>>> my guess will likely support FIDO). People at Facebook, such as
> Brad
> >>>>>>>> Hill and chair of the W3C WebAppSec WG, have come out quite
> strongly
> >>>>>>>> against WebID+TLS.
> >>>>>>>>
> >>>>>>>
> >>>>>>> Pointer to Brad Hill's comments?
> >>>>>>
> >>>>>>
> >> https://lists.w3.org/Archives/Public/public-xg-webid/2011May/0126.html
> >>>>>>
> >>>>>> It's been forwarded before without adequate response or change in
> >>>>>> protocol about four years ago :(
> >>>>>>
> >>>>>> See Ryan Sleevi (Google) in WebCrypto on cleartext/privacy issues:
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>
> >>
> https://lists.w3.org/Archives/Public/public-webcrypto-comments/2015Jun/0001.html
> >>>>>>
> >>>>>> More datapoints:
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>
> >>
> https://lists.w3.org/Archives/Public/public-webcrypto-comments/2015Jun/0003.html
> >>>>>>
> >>>>>>
> >>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> To summarize the well-known arguments about why WebID+TLS is
> >>>> considered
> >>>>>>>> harmful and thus unlikely to be standardized: From a privacy
> >>>> perspective
> >>>>>>>> client certificates send personal data (i.e the URI in the SAN for
> >>>> their
> >>>>>>>> WebID profile) in the cleartext, unlike even usernames and
> passwords
> >>>>>>>> over TLS. From a security perspective (see triplehandshake attack)
> >>>> there
> >>>>>>>> are so many security bugs in client certificate authentication
> that
> >> it
> >>>>>>>> is being deprecated by the IETF in TLS 1.3.
> >>>>>>>>
> >>>>>>>
> >>>>>>> This comment sounds like flame bait, and is IMHO damaging.  I
> think,
> >> in
> >>>>>>> general your hostility towards WebID + TLS is not shared by all at
> >> the
> >>>>>>> W3C.
> >>>>>>
> >>>>>> It's not hostility, its requests for corrections so you should
> >>>>>> fix/change the protocol. WebID+RSA may make more sense (although you
> >>>>>> should use a different signing and privacy key - and you may need
> >>>>>> key-wrapping, which has some issues in WebCrypto in terms of attack
> >>>>>> surfaces) in the long-run if you want a lightweight key
> authentication
> >>>>>> mechanism.
> >>>>>>
> >>>>>> In terms of authentication protocols, for passwords SRP makes a lot
> of
> >>>>>> sense, w/o passowords there is also HOBA at the IETF:
> >>>>>> https://tools.ietf.org/html/rfc7486
> >>>>>>
> >>>>>>>
> >>>>>>> More than 50% of the population of Estonia use TLS with X.509 to
> >> vote,
> >>>> do
> >>>>>>> banking and identify themselves.  The system is now being rolled
> out
> >> to
> >>>>>>> Finland.
> >>>>>>>
> >>>>>>> Does this also fail your personal litmus test?
> >>>>>>
> >>>>>> They do not use TLS client certs or negotiation, they use X.509
> certs
> >>>>>> transmitted over an already established TLS connection. I've
> discussed
> >>>>>> this with them, and they are actively monitoring WebCrypto and FIDO
> as
> >>>>>> they plan to upgrade their infrastructure when the newer standards
> are
> >>>>>> deployed.
> >>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>
> >>>>>>>> That being said, the general concepts behind something like
> >> WebID+TLS
> >>>>>>>> (use of proof of key material for authentication) is of interest,
> >> and
> >>>>>>>> should be discussed in the W3C Web Security Interest Group and the
> >>>>>>>> Security Area (SAAG) at the IETF for further evolution, rather
> than
> >> in
> >>>>>>>> this WG. In detail, a privacy-preserving technique known as
> channel
> >>>>>>>> binding (i.e. binding authentication to a TLS channel without
> >>>> revealing
> >>>>>>>> personal information) is being worked on actively in the TLS Token
> >>>>>>>> Binding at the IETF. User-centric authentication with
> >>>>>>>> proof-of-possession of key material done using the same-origin
> >> policy
> >>>> is
> >>>>>>>> currently being developed by the FIDO Alliance, with the backing
> of
> >>>>>>>> Google, Microsoft, Paypal, and others. I suspect authentication
> >>>> without
> >>>>>>>> passwords be a solved problem shortly.
> >>>>>>>>
> >>>>>>>> So, let's remain on topic and focus on what is chartered for the
> WG.
> >>>>>>>> Thanks!
> >>>>>>>>
> >>>>>>>>    cheers,
> >>>>>>>>       harry
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>    cheers,
> >>>>>>>>>>       harry
> >>>>>>>>>>>>
> >>>>>>>>>>>> It would be wrong to assume that the point of this working
> group
> >>>> is
> >>>>>> to
> >>>>>>>>>>>> make Melvin's site implemented in FOAF with Turtle talk to
> >> Aaron's
> >>>>>>>> site
> >>>>>>>>>>>> implemented in HTML with microformats.
> >>>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> I guess Im not quite seeing it how to implement an
> interoperable
> >>>>>> social
> >>>>>>>>>> API
> >>>>>>>>>>> without interoperable social profiles.  However, Kingley's
> reply
> >>>>>> seems
> >>>>>>>> to
> >>>>>>>>>>> make sense. I'll fwd them to the public list.
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> We're here for the important goals of defining a social
> syntax,
> >>>> and
> >>>>>>>>>> social
> >>>>>>>>>>>> API, and a federation protocol for the seven billion people on
> >> the
> >>>>>>>>>> entire
> >>>>>>>>>>>> planet -- not to build ad hoc bridges for the few dozen people
> >>>>>>>>>>>> participating in this group.
> >>>>>>>>>>>>
> >>>>>>>>>>>> Ultimately, that means some people here are going to have to
> >>>>>>>> compromise,
> >>>>>>>>>>>> hold their nose, and implement a data standard that they don't
> >>>>>> usually
> >>>>>>>>>> use
> >>>>>>>>>>>> or like.
> >>>>>>>>>>>>
> >>>>>>>>>>>> -Evan
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>
> >>>>
> >>>
> >>
> >
>

Received on Sunday, 28 June 2015 22:02:23 UTC