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

Authenticators for nodes #760

Closed
RieksJ opened this issue Dec 14, 2020 · 10 comments
Closed

Authenticators for nodes #760

RieksJ opened this issue Dec 14, 2020 · 10 comments
Labels
pending close Close if no objection within 7 days

Comments

@RieksJ
Copy link

RieksJ commented Dec 14, 2020

There are lots of use-cases in which a VC that contains claims about different subjects is to be used in situations where more than one of these subjects need to be authenticated. For example, in the case of a marriage credential both persons need to be authenticated in order to determine whether are not they are married. In case of a guardianship credential, a guardian should only be allowed to exercise its rights regarding someone else after the other has been authenticated as the dependent in the guardianship relationship.

In a credential, the 'payload' typically consists of tree-like structures as shown e.g. in Figure 4 of the VC Data model:
image

As a JSON object, it would be something like this:
image

In this figure, 'Pat' and 'Sam' are identifiers that only the issuer knows how to dereference. If the issuer wants anyone else, e.g. verifiers, to know which real-world entities correspond with these identifiers, the issuer must provide means by which such entities can be authenticated.

In this issue, I only propose to add a section 'Authenticators' to chapter 4 (Basic Concepts), and have it specify that each node in an information graph that is contained in a VC MAY have a property authenticator, which links to a data object (to be further defined) that allows verifiers to authenticate the entity that is represented by that node.


If accepted, further/other discussions can be started as to what the authenticator object might/should/must look like.

There may be a link with #756.

For example, Example University may decide to allow authentication of people by means of a DID they control, a student or employee card, or a set of physical characteristics. The JSON object of Pat and Sam might then look something like this:

image

@David-Chadwick
Copy link
Contributor

David-Chadwick commented Dec 14, 2020 via email

@RieksJ
Copy link
Author

RieksJ commented Dec 14, 2020

I can see that the Pat & Sam example is confusing.

Consider the case in a hospital, where a patient is in a coma. Then, another person arrives and tells a doctor to stop that patient's treatment, and that (s)he must do so because the person is the patient's guardian. The doctor would then need to ensure:

  • that the guardianship credential that the person produces verifies;
  • that the person is indeed the person that fulfills the guardian role in that credential;
  • that the person in a coma fulfills the dependent role in that credential.
    The doctor needs a way to establish all of this, and cannot rely on all entities having credentials for that (the credential that the person produces should suffice).

@David-Chadwick
Copy link
Contributor

David-Chadwick commented Dec 14, 2020 via email

@RieksJ
Copy link
Author

RieksJ commented Dec 14, 2020

I'm quite confident that in the UK you can't just go in waving a PoA, claim that you are the guardian mentioned in the PoA, claim that this patient here is the donor of the PoA, and then have his life support systems cut off. Before even considering this request, the doctor will need to make sure that you are the person that the PoA calls the guardian (which I consider as authentication of the guardian) and that this patient here corresponds with what the PoA calls the donor (authentication of the donor).

I think it is beneficial to have generic support for such authentication in VCs that does not require any prerequisite data/information, such as a previously obtained identity of the patient. I think that specifically in credentials that concern different subjects (people, things, ...) this may be quite valuable.

@David-Chadwick
Copy link
Contributor

David-Chadwick commented Dec 14, 2020 via email

@agropper
Copy link

agropper commented Dec 14, 2020 via email

@iherman iherman added the defer label Feb 15, 2021
@brentzundel
Copy link
Member

The chairs feel that work on this issue is outside the scope of the maintenance working group.
This doesn't mean work cannot continue, but that it would need to be included a future version of the specification.

@brentzundel brentzundel added the PossibleErratum WG should determine if this is Errata label Mar 5, 2021
@kdenhartog kdenhartog added v2 and removed PossibleErratum WG should determine if this is Errata defer labels Jul 29, 2021
@Sakurann Sakurann added pending close Close if no objection within 7 days and removed relevant? labels Aug 10, 2022
@OR13
Copy link
Contributor

OR13 commented Aug 10, 2022

Seems related to normative requirements for presentations... which really don't exist :)

@iherman
Copy link
Member

iherman commented Aug 10, 2022

The issue was discussed in a meeting on 2022-08-10

  • no resolutions were taken
View the transcript

4.2. Define v2 context (issue vc-data-model#760)

See github issue vc-data-model#760.

Kristina Yasuda: This is about authentication relationship. Looks like it has been idle for a while, I suggest closing. Anyone can speak up on it?.
… Will mark "pending close".

@brentzundel
Copy link
Member

No opposition since makred pending close, 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

8 participants