Re: Worldview conflicts on the purpose of DID documents

On 12/13/2017 01:38 PM, =Drummond Reed wrote:
> So I wanted to start a thread just for discussion of these worldview 
> conflicts. I'll start by taking a stab at articulating the worldviews
> as I understand them:

Thanks for this Drummond. I think you have captured two world views, but
it's doesn't match what's in my head. I'll try to articulate the
differences below:

> *THE RDF/JSON-LD WORLDVIEW*

I wouldn't label this RDF or JSON-LD -- those are specific
implementations of a more general approach. Rather it's the "Graph-based
Data Model with an Open World Assumption" approach, and I believe BOTH
world views fall into this category (whether they want to or not).

> In this worldview, DID documents are a standard way to describe a 
> well-known subgraph of a potentially very large RDF graph of data 
> about a subject.

Yes, that's technically accurate (but too specific). If you generalize
the statement above, this is also true of the Agent World view (and JSON
data that contains addressable links of any kind).

> "a DID document, is about establishing an independent entity and 
> being able to authenticate that certain activities/actions were 
> performed by that entity -- and to interact with that entity via 
> services.

+1 (but this is also true of the Agent world view)

> This necessarily includes specifying how that DID document can be 
> changed.

Dave may be being quoted out of context here, but (like Markus) I
disagree with the statement above. This is true for Veres One because
it's a declarative blockchain, but not necessarily true for other
Blockchains.

> Linked Data Signatures are also important in this worldview since it 
> is the standard way to sign JSON-LD documents.

Linked Data Signatures are an elegant way to do signatures with
graph-based data structures, but they're not the only way and thus I'd
stop short of saying they're "important". They're useful and elegant,
but we could swap them out for the JWS/JOSE stack (and adopt all of the
downsides that come along with that approach).

JSON-LD and Linked Data Signatures were designed to work elegantly
together and work well with Web Architecture. That doesn't mean that you
can't accomplish the same thing with JSON + JWS + JWT... you just don't
end up with something as composable.

> *THE AGENT WORLDVIEW*
> 
> In this worldview, DID documents are about having an open, 
> interoperable way to discover and manage the cryptographic keys and 
> service endpoints necessary to bootstrap secure, verifiable 
> connections, claims, and interactions between agents acting on behalf
> of DID subjects.

I don't see this world view as conflicting in any way with the
"Graph-based Data Model with an Open World Assumption". Or to put it
another way, the Agent worldview is a subset of the "Graph-based Data
Model with an Open World Assumption". I don't see the conflict except
that the latter is more restrictive than necessary (you don't gain
anything that I can see by making the restriction).

> First, obviously neither worldview is "wrong". They are just 
> different perspectives about the primary purpose of DID documents and
> the universes into which they fit.

... and I don't see them as incompatible. I just see one as more
restrictive than the other.

> Second, in the RDF/JSON-LD worldview it is important to describe the 
> data using an RDF graph model using an ontology that can live 
> alongside other ontologies.

+1, because of the open world assumption, which the agent worldview
falls into (even if you don't want it to).

> In the agent worldview the primary importance is on
> interoperability; it is not "anti-RDF", but it wants to avoid a
> dependence on RDF in order to make it easy to consume/transform the
> metadata carried by DID documents into other graph models and
> formats.

Hmm, then that raises the question -- If you're not using RDF or
vocabularies, what other mechanism is used to consume/transform the
metadata into other graph models and formats?

> Thirdly, the two have different views of key management. In the 
> RDF/JSON-LD worldview the importance is on being able to authenticate
> an interaction with the DID subject. In the agent worldview, a DID
> document is the "public-face" (or "non-private-face") of all types of
> key management, i.e., it is how a DID subject shares any type of key
> that needs to be shared with another party to verify interactions,
> decrypt communications, or do additional key negotiation.

I don't think this is a difference. Both models care about
authentication. To elaborate:

"verify interactions" -> you need to be able to authenticate to do this,
right? so, both models need it.

"decrypt communications" -> you need to be able to share a service
endpoint and a key to do this, which both models need.

"additional key negotiation" -> again, services and protocols, which
both models need.

So, both models need everything listed by the other model, there is no
difference there.

> Secondly, once we have a picture of the differences in the 
> worldviews, what solutions to DID issues can we come up with that 
> help reconcile these differences and ideally work for both 
> worldviews?

I think they're the same world view... one is just a subset of the
other. I expect that folks will need some convincing of that, but in
order to do that, we need folks to push back on the assertions above and
say things like "Yeah, but here's where one worldview isn't a subset of
the other worldview."

In the next email I'll try addressing the discussion from the other way
(bottom up instead of top down). Maybe once we meet in the middle we'll
figure out a clear path forward.

-- manu

-- 
Manu Sporny (skype: msporny, twitter: manusporny, G+: +Manu Sporny)
Founder/CEO - Digital Bazaar, Inc.
blog: The State of W3C Web Payments in 2017
http://manu.sporny.org/2017/w3c-web-payments/

Received on Thursday, 14 December 2017 04:58:33 UTC