Edge Agent SDK [Multiplatform] & Universal prism:did resolver #93
elribonazo
started this conversation in
Polls
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Universal resolver (prism:did)
Context
As we all know JWT and SDJWT use the issuer DID to issue and verify SSI Credentials. Our SDK is currently bundling 2 did resolvers in Castor.
Roadmap
Both JWT and SDJWT will very soon be issued with the short form prism:did which requires to be resolved on testnet, mainnet or using a custom resolver.
Option 1 (API resolver)
When the prism:did operations are being stored in a prism:node with inMemory storage, we won't be able to resolve on cardano directly so we will need a custom resolver using the Issuer's endpoint.
Note
This option is the less recommended option as it does not act in favor of a more decentralized and user centric approach, introduced a centralised endpoint (issuer API) to resolve the DID VS other methods that write transactions on chain.
Example:
Option 2 (Cardano resolver)
This option is the most recommended option and here's where we want to drive the discussion and debate into.
Most simple approach would be to create a prism:did resolver using the blockfrost API.
There's now several approaches to implement and add this functionality to our SDKs:
Add blockfrost API resolver by default in our SDK and enable opt-in (mainnet/testnet) through agent options
Better responsability separation, create external (community maintainet) prism:did resolver. Same as previous option but not bundled in our SDK. Main difference in here is that u would need to create the instance of the resolver and then passing it to Castor, VS the first option which would do the same by just passing a property to the Agent.
Option 3 (Document the process and leave up to devs)
This is the option that requires less amount of work, we will just document the process that devs need to follow to integrate a resolver and how to integrate it with the agent but the team won't maintain the package and the resolvers.
3 votes ·
Beta Was this translation helpful? Give feedback.
All reactions