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

Checklist to finish specification #175

Open
6 of 17 tasks
swcurran opened this issue Nov 3, 2023 · 2 comments
Open
6 of 17 tasks

Checklist to finish specification #175

swcurran opened this issue Nov 3, 2023 · 2 comments
Assignees

Comments

@swcurran
Copy link
Member

swcurran commented Nov 3, 2023

We are getting close to finishing the specification. The work from @aritroCoder has gotten the "hard to do" things out of the way, now to get the text ready. Here is a checklist of the remaining items that I think need to be done to finish the specification:

OK -- not a short list, but not too bad either!

@swcurran
Copy link
Member Author

swcurran commented Nov 9, 2023

Addition -- update the warning about weak issuer keys to cover the impacts based on conversation with Mike.

  • anyone can detect that the keys are weak.
  • The use of weak keys also results in the "sharing" of the private key, and hence the ability for others to issue the same credential as if they were the issuer.

Also, update the verification section to reference the "ge_proof" as "ne_proof" -- not equal.

@RieksJ
Copy link

RieksJ commented Dec 22, 2023

I would not have closed #100 because in the issue itself, as well as the discussions, some points were made that I don't think have been adequately addressed. Also, I've noticed some other things that may need clarification. Here's a list of what I think are (potential) issues:

  • the idea was to expressly state that 'holder' refers to IT (software), and that this would also be clarified for 'issuer' and 'verifier'. This remains to be done.
  • an 'issuer identifier' would (then) identify an IT component with issuing functionality (similar for 'holder identifier' and 'verifier identifier', if they were to be used. Please consider that in a business setting, it is people (and organizations) that are interested in any data that has identifiers, and that they are typically not interested in the IT components that work for them, but in the parties that control them.
  • one of the old issues I have with AnonCreds (and their ABC predecessors) is that credentials are bound to the link secret (implying the holder (IT component)), rather than to its subject. My colleague Oskar and I have played with an implementation (by others, using issuers that we did not control), and showed that we could get a gov't ID-credential for Oskar and a bank credential for me in the same holder. I haven't seen anything in the spec that enables verifiers to make sure that the subject of both credentials is in fact the same entity. I did see that the spec allows a holder to create a presentation that selectively discloses the name attributes of the 'oskar-credential' and the bank account attributes of the 'rieks-credential', then proves they come from credentials issued by the expected (and trusted) issuers and haven't been tampered with, and that credentials haven't been revoked. All this seems to be according to the spec. But it also shows that AnonCreds would be useless in practice.

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

No branches or pull requests

2 participants