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) Cheqd DID resolver #1300 #1305

Open
wants to merge 25 commits into
base: main
Choose a base branch
from

Conversation

gmulhearn
Copy link
Contributor

@gmulhearn gmulhearn commented Nov 25, 2024

Closes #1300

Implements a did:cheqd resolver using cheqd's gRPC resolver provided by nodes.

For this approach i decided to check-in cheqd's .proto type files, and also check in the generated rust files for these proto types. These rust files are generated using tonic, a defacto rust lib for handling grpc. I justify the decision to check-in the files in the README, please see there.

Testing

  • there are some system & unit tests. system tests are using universal-resolver sample DIDs
  • have tested consumption in anonyome's internal stack.
  • have tested that internal stack against credo-ts testnet cheqd DIDs (including testing on android device).

Out of Scope (for now)

  • doc version resolution
  • DID resource resolution (including did-doc metadata with the resources metadata)

Other changes

  • added some const context definitions in the did_doc crate, and a utility method to get the required context for a given VM type.
    • longer term, we may consider have some general "normalize" function of DIDDocuments, which scans the doc contents, finds all appropriate JSON-LD contexts, and adds them if they were missing.
  • removed RsaVerificationKey2018 - unused legacy VM type
  • added specific parsing for did:cheqd DIDs
  • updates the did:web resolver to use hyper 1+. mostly following: https://hyper.rs/guides/1/upgrading/ . This was necessary, as hyper 0.14 & hyper-tls 0.5 had several issues with TLS on devices (e.g. android devices). Upgrading has fixed those issues (did:web can now resolve on android devices).

Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
…er than generate at build time)

Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
@gmulhearn gmulhearn changed the title Cheqd DID resolver (feat) Cheqd DID resolver Nov 25, 2024
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
@gmulhearn gmulhearn changed the title (feat) Cheqd DID resolver (feat) Cheqd DID resolver #1300 Nov 26, 2024
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
@gmulhearn gmulhearn marked this pull request as ready for review November 27, 2024 00:50
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
Signed-off-by: George Mulhearn <gmulhearn@anonyome.com>
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.

Implement Resolver for did:cheqd DidResolvable
2 participants