Skip to content

Conversation

@Sakurann
Copy link
Collaborator

@Sakurann Sakurann commented Apr 9, 2021

  • Added four JWT Claims to represent W3C Verifiable Credentials objects
  • Added vp_jwt, vp_ldp examples of SIOP response when W3C Verifiable Credentials objects are returned with JWTs
  • Added vp_jwt, vp_ldp examples of UserInfo response when W3C Verifiable Credentials objects are returned as JSON claims
  • vc_jwt, vc_ldp option examples are missing
  • took our vp_token related text
  • edited the request part, moved it to the end for the following reasoning:
    • There are multiple candidates for requesting verifiable presentations and verifiable credentials using OpenID Connect flows: Edmund's Aggregated Claims draft, DIF Presentation Exchange, below draft, and probably others. This would be a natural next step after defining claims, and agreeing on the request syntax should be separate from agreeing on the usage of the above four claims.

Sakurann added 7 commits April 8, 2021 22:14
- Added four JWT Claims to represent W3C Verifiable Credentials objects
- Added vp_jwt, vp_ldp examples of SIOP response when W3C Verifiable Credentials objects are returned with JWTs 
- Added vp_jwt, vp_ldp examples of UserInfo response when W3C Verifiable Credentials objects are returned as JSON claims
- vc_jwt, vc_ldp options are missing
- Added four JWT Claims to represent W3C Verifiable Credentials objects
- Added vp_jwt, vp_ldp examples of SIOP response when W3C Verifiable Credentials objects are returned with JWTs 
- Added vp_jwt, vp_ldp examples of UserInfo response when W3C Verifiable Credentials objects are returned as JSON claims
- vc_jwt, vc_ldp options are missing
I left out the request part for now for the discussion purposes
- Added four JWT Claims to represent W3C Verifiable Credentials objects
- Added vp_jwt, vp_ldp examples of SIOP response when W3C Verifiable Credentials objects are returned with JWTs 
- Added vp_jwt, vp_ldp examples of UserInfo response when W3C Verifiable Credentials objects are returned as JSON claims
- vc_jwt, vc_ldp option examples are missing
- took our vp_token related text
- edited the request part, moved it to the end for the following reasoning:
    - There are multiple candidates for requesting verifiable presentations and verifiable credentials using OpenID Connect flows: Edmund's Aggregated Claims draft, DIF Presentation Exchange, below draft, and probably others. This would be a natural next step after defining claims, and agreeing on the request syntax should be separate from agreeing on the usage of the above four claims.
@Sakurann Sakurann requested a review from tlodderstedt April 9, 2021 04:20
Copy link
Collaborator

@tlodderstedt tlodderstedt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please see my comments. Additionally, it seems significant parts of the main revision re are still missing. Please integrate again.

README.md Outdated
## Abstract

This specification defines an extension of OpenID Connect to allow presentation of claims in the form of W3C Verifiable Credentials as part of the protocol flow in addition to claims provided in the `id_token` and/or via Userinfo responses.
This specification defines additional parameters `vp_jwt`, `vp_ldp`, `vc_jwt`, `vc_ldp` to allow presentation of claims in the form of W3C Verifiable Credentials objects as part of the OpenID Connect protocol flow.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It does more than that as it includes syntax for requesting vcs and vps and will also contain processing rules. What's wrong with the existing text?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think syntax for requesting vcs and vps should be different from defining the claims. as iterated in the PR comment

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure. Requesting something is different from representing something. However, I intend to come up with at least one reasonable end 2 end solution. That's important for implementers and it is the basis for a stable and reasonable concept. Just discussion claims in isolation is not sufficient because those claims serve a purpose. There is not a single JWT claim so far defined in isolation. verified_claims, for example, is part of OpenID 4 Identity Assurance. It would never have gotten the maturity it has now without the context. Does this mean verified_claims cannot be used in other contexts? Of course not! We use it heavily in token introspection responses.

I suggest to first of all discuss this topic and then propose potential changes to our draft in a separate PR. So far, we have discussed to change the representation of the VCs/VPs from vp_token and id token as VP to universal claims in ID token (and other artefacts). We agreed to continue this discussion and you took the task to make a PR as basis for further discussions. The current PRs goes way beyond what we have discussed. It especially proposes removal of text that I consider important and have put significant work in. I don't agree with those changes.

Copy link
Collaborator Author

@Sakurann Sakurann Apr 9, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The current PRs goes way beyond what we have discussed. It especially proposes removal of text that I consider important and have put significant work in. I don't agree with those changes.

yes, I understand. It felt wrong when doing this PR. Let me revert

README.md Outdated
* ID Token as Verififiable Presentation: An ID Token may contain a claim `vp` or `vc` as defined in [JWT proof format](https://www.w3.org/TR/vc-data-model/#json-web-token), i.e. it is a valid OpenID Connect ID Token and a VC or VP at the same time. Consequently, this mechanism utilizes (and supports) the external JWT proof format only.
* VP Token: a Verifiable Presentation is provided in a separate artifact designated as "VP Token". Such a token is provided to the RP in addition to an `id_token` in the `vp_token` parameter. VP Tokens support Verifiable Presentations in JSON-LD as well JWT format including all respective proof formats. They also allow to sign ID Token and Verifiable Presentation with different key.
* VC Token: a Verifiable Credential is provided in a separate artifact designated as "VC Token". Such a token is provided to the RP in addition to an `id_token` in the `vc_token` parameter. VC Tokens support Verifiable Presentations in JSON-LD as well JWT format including all respective proof formats.
* JWTs such as ID Tokens may contain a claim `vp_jwt`, `vp_ldp`, `vc_jwt`, or `vc_ldp`.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't get the value of the differentiation between JWTs and JSON claim set. These claims can be used in any JSON based object, right? The payload of a JWT is a JSON claim set as well, isn’t it?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The UserInfo Endpoint uses JWT claims in JSON, but without the response being a JWT. It's the body of a JWT, without the crypto parts.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we are saying the same. I would suggest to come up with more generic text like we have in eKYC.

A verified_claims element can be added to a OpenID Connect UserInfo response or an ID Token.

OAuth Authorization Servers can add verified_claims to access tokens in JWT format or Token Introspection responses, either in plain JSON or JWT-protected format.

An OP or AS MAY also include verified_claims in the beforementioned assertions as aggregated or distributed claims (see Section 5.6.2 of the OpenID Connect specification [OpenID]).

PS: a UserInfo response can also be a JWT if it is signed and/or encrypted ;-).

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tried to incorporate proposed generic text :)

README.md Outdated
* Sets of JSON claims that can be returned from the endpoints such as UserInfo endpoint may contain a claim `vp_jwt`, `vp_ldp`, `vc_jwt`, or `vc_ldp`.

This table shows the different combinations of signatures on id token, VC, and VP and how the binding of the VC or VP with the holder is validated by the RP.
Note that OP would first encode VPs/VCs using the rules defined in the Verifiable Credential specification either in JWT format or JSON-LD format, before passing encoded VPs/VCs as `vp_jwt`, `vp_ldp`, `vc_jwt`, or `vc_ldp` parameters as JWT claims or as sets of JSON claims.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

feels better placed in a section about request processing

This specification defines the following parameters to pass Verifiable Presentations or Verifiable Credentials signed as JWTs or using Linked Data Proofs:

### vp in id_token
- vc_jwt: A claim whose value is a W3C Verifiable Credential object using the JWT representation, which is a JSON string. The claim’s value may also be an array of W3C Verifiable Credential objects using the JWT representation if the use case calls for multiple JWT VCs.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't particularly like this polymorphism.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you fundamentally object to the choice of the four claims?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This comment is about the polymorphic definition of the claims as object or array. It is inline with the way aud is defined, but it creates unnecessary complexity where an array is sufficient.

My next comment raises the question whether the design approach is the best solution and proposes an alternative. There are pros and cons of both proposals that we should discuss and assess based on use cases and other requirements informing this discussion.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree that the polymorphism also caused some issues with aud implementations in the past. I'm happy to just say it is an array.

A RP requests a Verifiable Presentation using the `claims` parameter.
W3C Verifiable Credentials specification defines two kinds of objects – Verifiable Credentials and Verifiable Presentations, and it also orthogonally defines two proof formats of these objects – JWT and Linked Data Proofs. Thus, there are four data types that different use cases could utilize.

This specification defines the following parameters to pass Verifiable Presentations or Verifiable Credentials signed as JWTs or using Linked Data Proofs:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure whether we should define 4 different claims. I feel a single claim with metadata is better suited.
Something like this:

   "verifiable_presentation":{
      "format":"jwt",
      "proof":"external",
      "presentation":"ewogICAgImlzcyI6Imh0dHBzOi8vYm9vay5pdHNvdXJ3ZWIub...IH0="
   }

This gives implementors the ability to support further formats, like CBOR or AnonCreds. I would also envision implementations to add further data to the structure as needed, e.g. the metadata we talked about yesterday for carrying additional metadata for hash-based VCs in JWT-format to allow for selective disclosure.

Copy link
Owner

@awoie awoie Apr 9, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we used the metadata approach, then we should really think whether it makes sense to borrow the presentation_submission property from DIF PE:

"presentation_submission": {
    "id": "a30e3b91-fb77-4d22-95fa-871689c322e2",
    "definition_id": "32f54163-7166-48f1-93d8-ff217bdb0653",
    "descriptor_map": [
      {
        "id": "banking_input_2",
        "format": "jwt_vc",
        "path": "$.verifiableCredential[0]"
      },
      {
        "id": "employment_input",
        "format": "ldp_vc",
        "path": "$.verifiableCredential[1]"
      },
      {
        "id": "citizenship_input_1",
        "format": "ldp_vc",
        "path": "$.verifiableCredential[2]"
      }
    ]
  }

The path would just point to the verifiable_presentation claim in the id_token.

The only problem is that definition_id is mandatory and refers to the presentation_definition in the request. A minimal presentation_definition looks as follows:

"presentation_definition": {
    "id": "32f54163-7166-48f1-93d8-ff217bdb0653",
    "input_descriptors": [
      {
        "id": "wa_driver_license",
        "schema": [{
            "uri": "https://licenses.example.com/business-license.json"
        }]
      }
    ]
}

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am in favor of the array approach with several claims that address most needed representations, which would be more simple. Since I do not think we expect wide adoption of new proof formats other than JSON/JSON-LD in the mid-term future, four claims should fulfill the implemetations' needs.

Having said that, I think we agreed to start a separate in-depth document comparing the two approaches - four claims vs. one claim with metadata.

README.md Outdated
# Appendix?

#### Claims parameter
There are multiple candidates for requesting verifiable presentations and verifiable credentials using OpenID Connect flows: Edmund's Aggregated Claims draft, DIF Presentation Exchange, below draft, and probably others. This would be a natural next step after defining claims, and agreeing on the request syntax should be separate from agreeing on the usage of the above four claims.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please reintegrate the request section and the request examples in its previous places. I would then adopt them to fit the new claims.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, updated

- Re-added text and examples of the request
- Rdited text
Copy link
Owner

@awoie awoie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i guess we need to reiterate on the query request format a bit.

This specification defines the following parameters to pass Verifiable Presentations or Verifiable Credentials signed as JWTs or using Linked Data Proofs:

### vp in id_token
- vc_jwt: A claim whose value is a W3C Verifiable Credential object using the JWT representation, which is a JSON string. The claim’s value may also be an array of W3C Verifiable Credential objects using the JWT representation if the use case calls for multiple JWT VCs.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree that the polymorphism also caused some issues with aud implementations in the past. I'm happy to just say it is an array.

| Holder of the VC | bearer credential or same did in `sub` and credential | vp signed by holder | bearer credential or same did in `sub` and credential + `vc_hash` | VP signed by holder + `vp_hash`
| Other entity (e.g. OP)| bearer credential | n/a | bearer credential | VP signed by holder + `vp_hash`

## Requesting Verifiable Presentations
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the claims are a good starting point but this particular spec should also talk about the protocol level, i.e., requesting Verifiable Presentations. Note, the DIF Presentation Exchange spec only contains examples for OIDC but there is no normative reference. Someone and I propose we do this in the course of this spec, should create such a normative reference by utilizing the proposed claims.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, agreed. per the call we just had, I think the next step is to show how VP/VCs will be requested using

  • OIDC claims parameter
  • DIF Presentation Exchange
  • Aggregation claims draft
  • OIDC ekyc-ida?
  • Credential Provider draft?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most of the example you gave us the claims parameter in different flavours.

The aggregation claims draft doesn’t cover VP/VC. It uses the claims parameter to let an OP request claim sets at an aggregated claims provider for further use towards a RP as aggregated claims.

OIDC ekyc-ida uses the claims parameter to request verified_claims. That's a different topic but we should borrow the pattern. We perhaps can also utilize eKYC syntax, depending which way we go re representation and what the intended scope is.

Credential Provider draft uses a scope to request issuance of credentials and is silent on how the OP (credential provider) determines the credential types. From the conversations with Adam und Tobias we learned the idea is to a single OP per credential type to issue. I think this model won't scale. I think credential representation and how to request credentials should be aligned with this draft.

I think we've got two options: claims or DIF PE

README.md Outdated
A RP requests a Verifiable Presentation using the `claims` parameter.

* `claims` - An object determining the claims the RP wants to obtain using the same notation as used underneath `id_token`.
### Verifiable Presentation object in id_token
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the section is still just a small part of what exists in the main revision.

For example, it misses the ability to request a subset of claims.

### ID Token with Verifiable Presentation signed using Linked Data Proofs

### Authentication Response
Below is a non-normative example of ID Token that includes `vp_ldp` claim.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

request example is missing

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added

README.md Outdated
"vp_token": {
"format": "json-ld",
"vp_ldp": {
"claims":
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ambiguous request - it shall either put the vp_ldp into an "id_token" or "userinfo" context.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

requesting "vp_ldp" using "userinfo". Added reqesting "auth_time" using "id_token" to illustrate how these can work together.

Copy link
Collaborator

@tlodderstedt tlodderstedt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

request syntax definition is incomplete and auth code example needs fix

@tlodderstedt
Copy link
Collaborator

tlodderstedt commented Apr 10, 2021 via email

Sakurann and others added 2 commits April 11, 2021 18:27
Co-authored-by: Torsten Lodderstedt <torsten@lodderstedt.net>
- Adding missing examples
- Clarifying the structure
},
"nonce":"960848874",
"vp_jwt":[
"ewogICAgImlzcyI6Imh0dHBzOi8vYm9vay5pdHNvdXJ3ZWIub...IH0="
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure Aggregated Claims syntax really makes sense. Claims would have to be requested using their pre-agreed names in the request which does not really work with VPs in JSON-LD as it dilutes the purpose of @context.

Aggregated Claims response example:

{
  "_claim_names": {
       "address": "src1",
       "phone_number": "src1"
     },
   "_claim_sources": {
     "src1": {"vp_jwt": "ewogICAgImlzcyI6Imh0dHBzOi8vYm9vay5pdHNvdXJ3ZWIub...IH0="}
   }  

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

or maybe it does, OP would just take the claim name out of the schema

Copy link
Collaborator

@tlodderstedt tlodderstedt Apr 12, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the standard aggregated claims syntax does only allow you to refer to the top level claims provided in the aggregated claim set. In your example, this would be:

{
  "_claim_names": {
       "vp_jwt": "src1"
     },
   "_claim_sources": {
     "src1": {"vp_jwt": "ewogICAgImlzcyI6Imh0dHBzOi8vYm9vay5pdHNvdXJ3ZWIub...IH0="}
   }

telling the RP where to look for the vp_jwt claim.

In order to support multiple occurences (multiple VPs), one could adopt the syntax extension we did in eKYC (https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html#name-verified_claims-delivery). We also allow for an array of sources.

Copy link
Collaborator

@tlodderstedt tlodderstedt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added a couple of comments.

README.md Outdated
"userinfo":
{
"vp_jwt": {
"claims":
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this syntax is not covered by the syntax definition. I suggest to use the example fron above with the credential_types element. We can extend the query syntax once we have come to a consensus re claims vs container vs ADS vs ...

Copy link
Collaborator Author

@Sakurann Sakurann Apr 12, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for vp_jwt changed to response_type; for vp_ldp, it is response_type + claims

"userinfo":
{
"vp_ldp": {
"claims":
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see above

```

### Authentication Response
#### Claims parameter (vp_ldp)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest to show associated claims parameter example and token response example in a row.

vp_jwt

  • claims
  • token response
  • vp

vp_ldp

  • claims
  • token response
  • vp

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

vp is quite different ,but in claims, vp_jwt simply changes to vp_ldp and token response is the same

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

restructured as above

README.md Outdated
```

# vc_token encoding options
## VC encoding options
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we need this section any longer

README.md Outdated
* ID Token as Verififiable Presentation: An ID Token may contain a claim `vp` or `vc` as defined in [JWT proof format](https://www.w3.org/TR/vc-data-model/#json-web-token), i.e. it is a valid OpenID Connect ID Token and a VC or VP at the same time. Consequently, this mechanism utilizes (and supports) the external JWT proof format only.
* VP Token: a Verifiable Presentation is provided in a separate artifact designated as "VP Token". Such a token is provided to the RP in addition to an `id_token` in the `vp_token` parameter. VP Tokens support Verifiable Presentations in JSON-LD as well JWT format including all respective proof formats. They also allow to sign ID Token and Verifiable Presentation with different key.
* VC Token: a Verifiable Credential is provided in a separate artifact designated as "VC Token". Such a token is provided to the RP in addition to an `id_token` in the `vc_token` parameter. VC Tokens support Verifiable Presentations in JSON-LD as well JWT format including all respective proof formats.
OAuth Authorization Servers can add `vp_jwt`, `vp_ldp`, `vc_jwt`, or `vc_ldp` claims to ID tokens in JWT format or UserInfo responses either in plain JSON or JWT-protected format.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You mean OpenID Connect OPs? I'm asking since OAuth Authorization Servers issue access tokens and may expose token introspection but don't issue ID Tokens or have a userinfo endpoint.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good catch, thank you. I meant OPs.

README.md Outdated
## Overview

This specifications introduces the following mechanisms to provide VCs and VPs to RPs:
Verifiable Credentials and Verifiable Presentations can be added to a OpenID Connect UserInfo response or an ID Token.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't fully get why we need the following 3 sentences since the real definition is given in "ID Token Extensions".

I suggest to remove the additional heading "ID Token Extensions" and move (a simplified version of) the first 3 sentences to the end of the section.

Text could be:

"Those claims can be added to ID Tokens, Userinfo responses as well as Access Tokens and Introspection response. "

| Holder of the VC | bearer credential or same did in `sub` and credential | vp signed by holder | bearer credential or same did in `sub` and credential + `vc_hash` | VP signed by holder + `vp_hash`
| Other entity (e.g. OP)| bearer credential | n/a | bearer credential | VP signed by holder + `vp_hash`

## Requesting Verifiable Presentations
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most of the example you gave us the claims parameter in different flavours.

The aggregation claims draft doesn’t cover VP/VC. It uses the claims parameter to let an OP request claim sets at an aggregated claims provider for further use towards a RP as aggregated claims.

OIDC ekyc-ida uses the claims parameter to request verified_claims. That's a different topic but we should borrow the pattern. We perhaps can also utilize eKYC syntax, depending which way we go re representation and what the intended scope is.

Credential Provider draft uses a scope to request issuance of credentials and is silent on how the OP (credential provider) determines the credential types. From the conversations with Adam und Tobias we learned the idea is to a single OP per credential type to issue. I think this model won't scale. I think credential representation and how to request credentials should be aligned with this draft.

I think we've got two options: claims or DIF PE

`proof_format`
[TBD]
`credential_types`
A string array containing a list of VC credential types the RP asks for. The OP shall respond with a presentation containing one credential of one of the listed types.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

definition for "userinfo" is missing

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it should be "The OP shall respond with a presentation containing credentials of the listed types."

As the text states now, it is misleading that array is how a client asks for any one​ of these types to be satisfied (not all​ of them)

- changed request syntax (for vp_jwt response_type; for vp_ldp, it is response_type + claims)
- restructured to request and response for vp_jwt, request and response for vp_ldp
- took out ## VC encoding options section..
- edited Overview section
- added one sentence about DIF PE
@Sakurann Sakurann changed the title vp_jwt/vp_ldp proposal (Issue awoie#16) Proposal to use independent claims for each VC/VP proof type Apr 19, 2021
@tlodderstedt tlodderstedt merged commit ca521b5 into awoie:main Apr 30, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants