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

feat(pollux): add credential abstraction #94

Merged
merged 1 commit into from
Aug 7, 2023

Conversation

goncalo-frade-iohk
Copy link
Contributor

@goncalo-frade-iohk goncalo-frade-iohk commented Jun 29, 2023

ATL-4786

Besides adding the new credential abstraction this adds the following:

  • Changes on Pollux to use the new abstraction
  • Changes on PrismAgent to use new abstraction
  • Changes on Sample App to for new abstraction
  • Adds tests for new implementation
  • Adds Codable to Messages
  • Updates error codes and documentation
  • Updates all documentation on new methods

Copy link
Contributor

@curtis-h curtis-h left a comment

Choose a reason for hiding this comment

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

Looking great, just some minor questions on some wording that I didn't quite understand

import Foundation

/// `ProofableCredential` is a protocol that adds provability functionality to a credential.
public protocol ProofableCredential {
Copy link
Contributor

Choose a reason for hiding this comment

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

not sure about this naming, "Proofable" is not a meaningful term, perhaps "ProvableCredential" or "ProofCredential" would be more suitable?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah not sure as well. Im ok with changing, although I would prefer the ProvableCredential since it's a protocol/interface/abstraction I prefer it not to be a noun.

In my opinion:
In the case of ProofCredential as Proof is a noun it relays that the Credential itself is a Proof.
But ProvableCredential is more in line with the concept that it creates a proof given a context.

But tell me what you think @curtis-h around this?

Copy link
Contributor

Choose a reason for hiding this comment

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

I like your thinking, let's go with ProvableCredential then :)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done ;)

Copy link

@cristianIOHK cristianIOHK left a comment

Choose a reason for hiding this comment

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

Apart from Curtis' suggestion, looks good to me

Copy link
Contributor

@hamada147 hamada147 left a comment

Choose a reason for hiding this comment

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

LGTM

ATL-4786

Besides adding the new credential abstraction this adds the following:
- Changes on Pollux to use the new abstraction
- Changes on PrismAgent to use new abstraction
- Changes on Sample App to for new abstraction
- Adds tests for new implementation
- Adds Codable to Messages
- Updates error codes and documentation
- Updates all documentation on new methods
@goncalo-frade-iohk goncalo-frade-iohk merged commit 2f76cc6 into main Aug 7, 2023
@goncalo-frade-iohk goncalo-frade-iohk deleted the feature/ZKP-Abstraction branch August 7, 2023 13:07
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.

4 participants