Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

4.7 Proofs #489

Closed
nadalin opened this issue Mar 27, 2019 · 10 comments
Closed

4.7 Proofs #489

nadalin opened this issue Mar 27, 2019 · 10 comments
Labels
pending close Close if no objection within 7 days
Milestone

Comments

@nadalin
Copy link

nadalin commented Mar 27, 2019

Suggest that this section be marked at risk if there is no interoperable proof mechanism since JSON-LD Signature is not a complete specification, would also suggest the removal of JSON-LD from the specification since this is not in a standards body

@burnburn burnburn added this to the CR-Exit milestone Mar 27, 2019
@brentzundel
Copy link
Member

We are limited by our charter to specifying a data model. Specifying a particular proof mechanism is a protocol decision and therefore, unfortunately, out of scope, regardless of how beneficial that would be for interoperability.
The goal of the working group in specifying the data model was to make it as inclusive of different proof mechanisms as we felt it was possible to be.

@brentzundel brentzundel mentioned this issue Apr 1, 2019
@brentzundel
Copy link
Member

@nadalin, this issue raised two suggestions:

  1. "Suggest that this section be marked at risk if there is no interoperable proof mechanism since JSON-LD Signature is not a complete specification"
  2. "suggest the removal of JSON-LD from the specification since this is not in a standards body"

These have been responded to:

  1. "We are limited by our charter to specifying a data model. Specifying a particular proof mechanism is a protocol decision and therefore, unfortunately, out of scope, regardless of how beneficial that would be for interoperability."
  2. "The goal of the working group in specifying the data model was to make it as inclusive of different proof mechanisms as we felt it was possible to be."

If there are any further points you would like to raise concerning this issue, please let us know.

I recommend discussing the second suggestion as a working group to determine if a PR should be raised.

The first suggestion recommends specifying protocol, which is out of scope for our working group.

@nadalin
Copy link
Author

nadalin commented Apr 2, 2019

@brentzundel You can't specify proofing w/o specifying a mechanism for interop, not how the W3C works. If you are fine with this being non-normative and not required that is fine but then you will never have verifiable claims/credentials which seems to be the goal here.

@msporny
Copy link
Member

msporny commented Apr 4, 2019

@nadalin wrote:

would also suggest the removal of JSON-LD from the specification since this is not in a standards body

If by "this", you mean JSON-LD, then you are mistaken as JSON-LD is a W3C Recommendation -- https://www.w3.org/TR/json-ld/ -- with a currently active W3C Working Group -- https://www.w3.org/2018/json-ld-wg/

@msporny
Copy link
Member

msporny commented Apr 4, 2019

You can't specify proofing w/o specifying a mechanism for interop, not how the W3C works.

It is perfectly reasonable to specify, in a data model specification, a data field whose purpose is to contain extensible proof mechanisms. The Verifiable Credentials Data Model specification has been designed by the Working Group to be proof mechanism agnostic and this is one of the mechanisms that was settled on by the Working Group.

With respect to whether this mechanisms works in practice, there have been implementations since 2011 that demonstrate (via working code) that this mechanism works with a variety of different cryptographic systems. One such implementation, which our organization uses is: https://github.com/digitalbazaar/jsonld-signatures

In any case, the WG has asserted multiple times that it's charter limits it to data model and not protocol and the test suite reflects that. The normative tests in the test suite are performed on the data model fields. There will be optional tests that test the interop on the cryptography, but again, the WG is not requiring those as they go outside of the data model and thus, our charter.

@nadalin
Copy link
Author

nadalin commented Apr 4, 2019

@mspory There are no mechanisms defined in the specification that would allow interop, if there is no test suite then this has to be non-normative

@David-Chadwick
Copy link
Contributor

this issue should be closed since it covers the same issue as #498

@stonematt
Copy link
Contributor

VCWG Teleconference Resolution: https://www.w3.org/2019/04/09-vcwg-minutes.html#resolution07

RESOLUTION: The VCWG does not support the removal of JSON-LD from the specification. For Section 4.7: Proofs, interoperability is defined as at least two implementations implementing the normative statements in the section. Specifically, that the data model specifies a mechanism to express an embedded proof and the type of proof. The VCWG does not believe that it is appropriate to make this section non-normative. Issue #496 should be closed with no change to the
... specification.

Plan to close in 7 days.

@nadalin
Copy link
Author

nadalin commented Apr 15, 2019

@stonematt Disagree as someone reading specification needs to be able to implement a proof mechanism that is fully described as a normative reference in the VC specification so that interop can be achieved. So disagree with closing

@msporny msporny added the pending close Close if no objection within 7 days label Apr 16, 2019
@burnburn
Copy link
Contributor

The outstanding request by @nadalin to mandate support by all implementations of the JWT format will be tracked by issue #634.

The outstanding concern by @nadalin regarding JSON-LD will be tracked by issue #633. Closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pending close Close if no objection within 7 days
Projects
None yet
Development

No branches or pull requests

6 participants