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

Multiple Indy Ledger support and State Proof verification #1425

Merged
merged 56 commits into from
Nov 29, 2021

Conversation

shaangill025
Copy link
Contributor

@shaangill025 shaangill025 commented Sep 27, 2021

Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
@shaangill025 shaangill025 changed the title WIP: Multiple Indy Ledger support, State Proof and leaf inclusion verification Multiple Indy Ledger support and State Proof verification Oct 20, 2021
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
@shaangill025 shaangill025 marked this pull request as ready for review October 29, 2021 16:27
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Copy link
Member

@ianco ianco left a comment

Choose a reason for hiding this comment

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

Hi @shaangill025 overall this looks pretty good. I haven't done a deep dive yet though.

Once thing that would be nice is a document describing how the multi-ledger support works, or how to use it, for example:

  • how to I define multiple ledgers? (I know there is a hackmd but should prob be a doc in the github repo)
  • what do I need to do for read vs write? (I assume the verifier has to be able to auto-select the ledger based on received proofs, but what about the issuer?)
  • can you add/remove ledgers at runtime or only on startup?
  • what happens if I restart an agent with a different set of ledgers than previously? (note that data in the wallet is ledger-specific, for example data associated with credential definitions)
  • any impact on other functions, such as the endorser protocol (may need a different endorser for different ledgers)

See the docs for functions like multitenancy, mediation, endorser, for example.

Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
Signed-off-by: Shaanjot Gill <shaangill025@users.noreply.github.com>
@shaangill025
Copy link
Contributor Author

Hi @shaangill025 overall this looks pretty good. I haven't done a deep dive yet though.

Once thing that would be nice is a document describing how the multi-ledger support works, or how to use it, for example:

  • how to I define multiple ledgers? (I know there is a hackmd but should prob be a doc in the github repo)
  • what do I need to do for read vs write? (I assume the verifier has to be able to auto-select the ledger based on received proofs, but what about the issuer?)
  • can you add/remove ledgers at runtime or only on startup?
  • what happens if I restart an agent with a different set of ledgers than previously? (note that data in the wallet is ledger-specific, for example data associated with credential definitions)
  • any impact on other functions, such as the endorser protocol (may need a different endorser for different ledgers)

See the docs for functions like multitenancy, mediation, endorser, for example.

@ianco It is ready for review. I have removed the ability to update the ledger configuration or write_ledger at runtime as I observed some issues in testing (mostly around cached DID to ledger_id).

Multiledger.md Show resolved Hide resolved
demo/multi_ledger_config.yml Outdated Show resolved Hide resolved
aries_cloudagent/config/argparse.py Show resolved Hide resolved
shaangill025 and others added 17 commits November 23, 2021 11:44
Signed-off-by: Shaanjot Gill <gill.shaanjots@gmail.com>
Signed-off-by: Shaanjot Gill <gill.shaanjots@gmail.com>
Signed-off-by: Shaanjot Gill <gill.shaanjots@gmail.com>
Signed-off-by: Shaanjot Gill <gill.shaanjots@gmail.com>
Signed-off-by: Shaanjot Gill <gill.shaanjots@gmail.com>
Signed-off-by: Shaanjot Gill <gill.shaanjots@gmail.com>
Signed-off-by: Ian Costanzo <ian@anon-solutions.ca>
Signed-off-by: Ian Costanzo <ian@anon-solutions.ca>
Fix faber demo to run in multi-ledger mode
Signed-off-by: Shaanjot Gill <gill.shaanjots@gmail.com>
Signed-off-by: Shaanjot Gill <gill.shaanjots@gmail.com>
Copy link
Member

@ianco ianco left a comment

Choose a reason for hiding this comment

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

LGTM

@ianco ianco merged commit 04a0264 into hyperledger:main Nov 29, 2021
@swcurran
Copy link
Member

w00t! Awesome stuff, @shaangill025 !

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.

None yet

3 participants