-
Notifications
You must be signed in to change notification settings - Fork 200
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(indy-sdk)!: move to did:indy with limited support #1347
feat(indy-sdk)!: move to did:indy with limited support #1347
Conversation
Signed-off-by: Timo Glastra <[email protected]>
export function parseRevocationRegistryId(revocationRegistryId: string) { | ||
const match = | ||
revocationRegistryId.match(didIndyRevocationRegistryIdRegex) ?? | ||
revocationRegistryId.match(legacyIndyRevocationRegistryIdRegex) |
Check failure
Code scanning / CodeQL
Polynomial regular expression used on uncontrolled data
Codecov Report
@@ Coverage Diff @@
## main #1347 +/- ##
===========================================
- Coverage 86.65% 71.60% -15.06%
===========================================
Files 778 694 -84
Lines 18476 16692 -1784
Branches 3163 2861 -302
===========================================
- Hits 16011 11952 -4059
- Misses 2458 4737 +2279
+ Partials 7 3 -4
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
Signed-off-by: Timo Glastra <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pretty interesting work here. Really like the usage of regex with named groups. Certainly very useful for DID and AnonCreds object parsing!
Even if I'm not so convinced about the needs of indy-sdk-based did:indy registrar and resolver considering its limited capabilities, I do see value on it for leveraging everyone to move to this new concept and move away from legacy did:sov.
My remarks are mainly some warnings regarding the importance of documenting well about these limitations and maybe recommending everyone to switch to indy-vdr as soon as possible to fully support did:indy. BTW, this PR's name suggested me that it would bring a true full support for did:indy (with diddocContent and everything), and now I feel like I fell into a marketing trap 😆.
const { namespace: submitterNamespace, id: submitterDidIdentifier } = parseIndyDid(submitterDid) | ||
const submitterSigningKey = await verificationKeyForIndyDid(agentContext, submitterDid) | ||
|
||
// Only supports version 1 did identifier (which is same as did:sov) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So indy-sdk has a 'ver' field hard-coded to 1?
For the moment, I think it's OK to leave this comment only internal, but once indy-vdr and indy-node officially supports it I think we'll need to add transactionVersion
to DidCreateOptions for both implementations, making explicit that only '1' is allowed for indy-sdk while 0, 1 and 2 will be possible for indy-vdr.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure what you mean. I mean the 1
from here: https://hyperledger.github.io/indy-did-method/#nym-transaction-version
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I'm referring to that too! When I've read that before implementing IndyVdr did:indy classes, I understood that it would be possible for an app to indicate whether to use 0, 1 or 2 when creating a DID, so I imagined having an extra parameter in the DidRegistrar that would allow us to specify the transactionVersion
.
So, in case of IndyVdr, we could set transactionVersion=1
if we wish to register a did:sov and transactionVersion=2
if we want to register a brand-new did:indy. Even a transactionVersion=0
would be possible (for super legacy ledgers I think... not sure why it was added).
Do you think this transaction version will be always hard-coded on the indy library? (i.e. 1 for indy-sdk and probably 2 for indy-vdr with did:indy support?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I understand. Yeah we should probably make that configurable and default to transactionVersion=1
. However we can't set the transaction version I think with the indy-sdk?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, for indy-sdk will be always 1. We just need to make clear about this limitation either in docs or by adding this transactionVersion to DidCreateOptions whose only possible value is '1'. This is of course not for this PR.
const verkey = getFullVerkey(did, nym.verkey) | ||
const builder = indyDidDocumentFromDid(did, verkey) | ||
|
||
// NOTE: we don't support the `diddocContent` field in the GET_NYM response using the indy-sdk. So if the did would have the `diddocContent` field |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a very important note. Surely it will need to be published in the module README. I'm not sure if it will be possible to get the diddocContent
field from the GET_NYM response using the indy-sdk as it is right now. If that will be the case, it could be a bit misleading to have an IndyDidResolver class that is not able to parse a did:indy that conforms to the specification.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah good point. I think it should just return it in the JSON. The NYM transaction is stored as stringified JSON on the ledger. We may not be able to use the parse method from the indy-sdk, but we should be able to extract the diddocContent
property. If we get to this point, we can look into it again. But I think before we have did:indy dids takes written to the ledger will take a while, and I'm not particularly keen to wait for it...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree! I had the same doubts when implementing it for indy-vdr and did some assumptions as a result. The time will tell 😆
…t-foundation#1314) Signed-off-by: Timo Glastra <[email protected]> BREAKING CHANGE: Agent default outbound content type has been changed to DIDComm V1. If you want to use former behaviour, you can do it so by manually setting `didcommMimeType` in `Agent`'s init config: ``` const agent = new Agent({ config: { ... didCommMimeType: DidCommMimeType.V0 }, ... }) ```
…ion#1351) Signed-off-by: Ariel Gentile <[email protected]>
Signed-off-by: Timo Glastra <[email protected]>
Not sure how to fix the revocation registry regex issue. It's just the regex that ACA-Py also uses. Should we impose a character limit on the id length? |
Signed-off-by: Timo Glastra <[email protected]>
commit 0351eec Author: Ariel Gentile <[email protected]> Date: Wed Mar 15 12:02:50 2023 -0300 fix: connection id in sessions for new connections (openwallet-foundation#1383) Signed-off-by: Ariel Gentile <[email protected]> commit f27fb99 Author: Ariel Gentile <[email protected]> Date: Wed Mar 15 09:23:10 2023 -0300 feat: basic message pthid/thid support (openwallet-foundation#1381) Signed-off-by: Ariel Gentile <[email protected]> commit d59366a Author: Jim Ezesinachi <[email protected]> Date: Wed Mar 15 11:04:52 2023 +0100 docs: fix example usage of indy-sdk-react-native package (openwallet-foundation#1382) Signed-off-by: Jim Ezesinachi <[email protected]> commit a4204ef Author: Timo Glastra <[email protected]> Date: Sat Mar 11 16:31:09 2023 +0100 fix: remove named capture groups (openwallet-foundation#1378) named capture groups are only supported in more recent versions of hermes Signed-off-by: Timo Glastra <[email protected]> commit dd6c020 Author: Ariel Gentile <[email protected]> Date: Sat Mar 11 11:57:37 2023 -0300 feat(anoncreds-rs): use new API methods for json conversion (openwallet-foundation#1373) Signed-off-by: Ariel Gentile <[email protected]> commit 122cdde Author: Timo Glastra <[email protected]> Date: Sat Mar 11 13:31:09 2023 +0100 fix: return HTTP 415 if unsupported content type (openwallet-foundation#1313) Signed-off-by: Timo Glastra <[email protected]> commit 582c711 Author: Mo <[email protected]> Date: Sat Mar 11 12:08:02 2023 +0100 feat: outbound message send via session (openwallet-foundation#1335) Co-authored-by: Jim Ezesinachi <[email protected]> Co-authored-by: Timo Glastra <[email protected]> Signed-off-by: Moriarty <[email protected]> commit 19cefa5 Author: Ariel Gentile <[email protected]> Date: Sat Mar 11 07:20:49 2023 -0300 feat(askar): import/export wallet support for SQLite (openwallet-foundation#1377) Signed-off-by: Ariel Gentile <[email protected]> commit c72ba14 Author: Timo Glastra <[email protected]> Date: Wed Mar 8 17:40:03 2023 +0100 fix(askar): custom error handling (openwallet-foundation#1372) Signed-off-by: Timo Glastra <[email protected]> commit 39c4ed0 Author: Timo Glastra <[email protected]> Date: Wed Mar 8 16:52:12 2023 +0100 feat(indy-vdr)!: extend did:indy support (openwallet-foundation#1362) Signed-off-by: Timo Glastra <[email protected]> commit 01669a7 Author: Timo Glastra <[email protected]> Date: Wed Mar 8 14:48:34 2023 +0100 test: increase timeout to 120 seconds (openwallet-foundation#1375) Signed-off-by: Timo Glastra <[email protected]> commit 953069a Author: Ariel Gentile <[email protected]> Date: Mon Mar 6 10:28:30 2023 -0300 fix(core): repository event when calling deleteById (openwallet-foundation#1356) Signed-off-by: Ariel Gentile <[email protected]> commit c133538 Author: Ariel Gentile <[email protected]> Date: Mon Mar 6 08:26:42 2023 -0300 fix(anoncreds): Buffer not imported from core (openwallet-foundation#1367) Signed-off-by: Ariel Gentile <[email protected]> commit 8f6b344 Author: Timo Glastra <[email protected]> Date: Fri Mar 3 12:15:58 2023 +0100 feat(indy-sdk)!: move to did:indy with limited support (openwallet-foundation#1347) Signed-off-by: Timo Glastra <[email protected]> commit 7795975 Author: Martin Auer <[email protected]> Date: Fri Mar 3 11:07:43 2023 +0100 fix(tenant): Correctly configure storage for multi tenant agents (openwallet-foundation#1359) Fixes hyperledger#1353 Signed-off-by: martin auer <[email protected]> commit cb4e469 Author: Timo Glastra <[email protected]> Date: Thu Mar 2 22:38:14 2023 +0100 test: various improvements (openwallet-foundation#1361) Signed-off-by: Timo Glastra <[email protected]> commit fd13bb8 Author: Ariel Gentile <[email protected]> Date: Thu Mar 2 17:00:57 2023 -0300 feat(oob): implicit invitations (openwallet-foundation#1348) Signed-off-by: Ariel Gentile <[email protected]> commit 18abb18 Author: Pritam Singh <[email protected]> Date: Thu Mar 2 22:11:20 2023 +0530 fix: isNewSocket logic (openwallet-foundation#1355) Signed-off-by: Pritam Singh <[email protected]> commit 2c792fe Author: Martin Auer <[email protected]> Date: Thu Mar 2 14:29:05 2023 +0100 refactor!: remove getKeyDidMappingByVerificationMethod (openwallet-foundation#1350) Signed-off-by: martin auer <[email protected]> commit 78ecf1e Author: Ariel Gentile <[email protected]> Date: Wed Mar 1 18:44:26 2023 -0300 refactor!: remove Dispatcher.registerMessageHandler (openwallet-foundation#1354) BREAKING CHANGE: `Dispatcher.registerMessageHandler` has been removed in favour of `MessageHandlerRegistry.registerMessageHandler`. If you want to register message handlers in an extension module, you can use directly `agentContext.dependencyManager.registerMessageHandlers`. Signed-off-by: Ariel Gentile <[email protected]> commit 1bda3f0 Author: Ariel Gentile <[email protected]> Date: Mon Feb 27 15:35:16 2023 -0300 fix(anoncreds-rs): save revocation registry index (openwallet-foundation#1351) Signed-off-by: Ariel Gentile <[email protected]> commit 4ab3b54 Author: Timo Glastra <[email protected]> Date: Mon Feb 27 13:23:47 2023 +0100 refactor!: set default outbound content type to didcomm v1 (openwallet-foundation#1314) Signed-off-by: Timo Glastra <[email protected]> BREAKING CHANGE: Agent default outbound content type has been changed to DIDComm V1. If you want to use former behaviour, you can do it so by manually setting `didcommMimeType` in `Agent`'s init config: ``` const agent = new Agent({ config: { ... didCommMimeType: DidCommMimeType.V0 }, ... }) ``` commit 254f661 Author: Ariel Gentile <[email protected]> Date: Sat Feb 25 11:49:36 2023 -0300 fix(indy-sdk): import from core (openwallet-foundation#1346) Signed-off-by: Ariel Gentile <[email protected]> commit 21d4bf7 Author: Timo Glastra <[email protected]> Date: Fri Feb 24 22:20:54 2023 +0100 feat!: allow to import created dids (and remove legacy `publicDidSeed`) (openwallet-foundation#1325) Signed-off-by: Timo Glastra <[email protected]> commit dc60acb Author: Timo Glastra <[email protected]> Date: Fri Feb 24 20:50:28 2023 +0100 build(anoncreds): remove node package from deps (openwallet-foundation#1339) Signed-off-by: Timo Glastra <[email protected]> commit e14d853 Author: Timo Glastra <[email protected]> Date: Fri Feb 24 17:59:30 2023 +0100 test: increase indy-sdk timeout (openwallet-foundation#1345) Signed-off-by: Timo Glastra <[email protected]> commit d38ecb1 Author: Ariel Gentile <[email protected]> Date: Fri Feb 24 09:12:40 2023 -0300 fix(anoncreds): include prover_did for legacy indy (openwallet-foundation#1342) Signed-off-by: Ariel Gentile <[email protected]> commit da8f2ad Author: Niall Shaw <[email protected]> Date: Fri Feb 24 13:01:47 2023 +0200 fix: create new socket if socket state is 'closing' (openwallet-foundation#1337) Signed-off-by: Niall Shaw <[email protected]> commit cac2ec3 Author: Martin Auer <[email protected]> Date: Fri Feb 24 11:11:28 2023 +0100 refactor(core)!: remove deprecated injectionContainer prop (openwallet-foundation#1344) Signed-off-by: martin auer <[email protected]> commit d5e34ff Author: Ariel Gentile <[email protected]> Date: Fri Feb 24 06:19:32 2023 -0300 test(indy-sdk): wait before resolving ledger objects (openwallet-foundation#1340) Signed-off-by: Ariel Gentile <[email protected]> commit 518e5e4 Author: Ariel Gentile <[email protected]> Date: Wed Feb 22 04:36:33 2023 -0300 fix: expose indy pool configs and action menu messages (openwallet-foundation#1333) Signed-off-by: Ariel Gentile <[email protected]> commit 1c6aeae Author: Ariel Gentile <[email protected]> Date: Tue Feb 21 19:18:19 2023 -0300 fix(askar): anoncrypt messages unpacking (openwallet-foundation#1332) Signed-off-by: Ariel Gentile <[email protected]> commit fb7ee50 Author: Victor Anene <[email protected]> Date: Tue Feb 21 15:39:14 2023 +0100 feat: IndyVdrAnonCredsRegistry revocation methods (openwallet-foundation#1328) Signed-off-by: Victor Anene <[email protected]> commit 64e20f1 Author: Timo Glastra <[email protected]> Date: Mon Feb 20 17:07:30 2023 +0100 fix!: don't emit legacy did:sov prefix for new protocols (openwallet-foundation#1245) Signed-off-by: Timo Glastra <[email protected]> commit c0e5339 Author: Ariel Gentile <[email protected]> Date: Mon Feb 20 09:04:20 2023 -0300 fix: seed and private key validation and return type in registrars (openwallet-foundation#1324) Signed-off-by: Ariel Gentile <[email protected]> commit edf392f Author: Timo Glastra <[email protected]> Date: Mon Feb 20 12:14:21 2023 +0100 refactor: remove master secret id from wallet (openwallet-foundation#1320) Signed-off-by: Timo Glastra <[email protected]> commit b6d66b1 Author: Timo Glastra <[email protected]> Date: Mon Feb 20 00:59:42 2023 +0100 refactor!: remove indy from core (openwallet-foundation#1286) Signed-off-by: Timo Glastra <[email protected]> commit 616b908 Author: Ariel Gentile <[email protected]> Date: Sun Feb 19 13:27:16 2023 -0300 feat(wallet)!: createKey from private key (openwallet-foundation#1301) Signed-off-by: Ariel Gentile <[email protected]> commit 64a5da9 Author: Ariel Gentile <[email protected]> Date: Sat Feb 18 16:54:25 2023 -0300 fix(samples): dummy module response message type (openwallet-foundation#1321) Signed-off-by: Ariel Gentile <[email protected]> commit ff5596d Author: Ariel Gentile <[email protected]> Date: Fri Feb 17 23:10:09 2023 -0300 feat!: add data, cache and temp dirs to FileSystem (openwallet-foundation#1306) Signed-off-by: Ariel Gentile <[email protected]> BREAKING CHANGE: Agent-produced files will now be divided in different system paths depending on their nature: data, temp and cache. Previously, they were located at a single location, defaulting to a temporary directory. If you specified a custom path in `FileSystem` object constructor, you now must provide an object containing `baseDataPath`, `baseTempPath` and `baseCachePath`. They can point to the same path, although it's recommended to specify different path to avoid future file clashes. commit af384e8 Author: Timo Glastra <[email protected]> Date: Sat Feb 18 01:32:45 2023 +0100 fix: loosen base64 validation (openwallet-foundation#1312) Signed-off-by: Timo Glastra <[email protected]> commit 229ed1b Author: Timo Glastra <[email protected]> Date: Fri Feb 17 21:31:47 2023 +0100 fix: thread id improvements (openwallet-foundation#1311) Signed-off-by: Timo Glastra <[email protected]> commit 1d782f5 Author: Victor Anene <[email protected]> Date: Fri Feb 17 20:01:35 2023 +0100 feat: add fetch indy schema method (openwallet-foundation#1290) Signed-off-by: Victor Anene <[email protected]> commit 3e02227 Author: Ariel Gentile <[email protected]> Date: Wed Feb 15 20:14:47 2023 -0300 fix: imports from core (openwallet-foundation#1303) Signed-off-by: Ariel Gentile <[email protected]> commit 4ac5332 Author: Jason C. Leach <[email protected]> Date: Wed Feb 15 14:11:41 2023 -0800 feat: add devcontainer support (openwallet-foundation#1282) Signed-off-by: Jason C. Leach <[email protected]> commit efab8dd Author: Ariel Gentile <[email protected]> Date: Tue Feb 14 19:49:59 2023 -0300 feat(indy-vdr): resolver and registrar for did:indy (openwallet-foundation#1253) Signed-off-by: Ariel Gentile <[email protected]> commit a487705 Author: Timo Glastra <[email protected]> Date: Tue Feb 14 10:57:22 2023 +0100 docs: update readme (openwallet-foundation#1298) docs: update reaadme Signed-off-by: Timo Glastra <[email protected]> commit ecce0a7 Author: Ariel Gentile <[email protected]> Date: Mon Feb 13 19:01:39 2023 -0300 fix(askar): generate nonce suitable for anoncreds (openwallet-foundation#1295) Signed-off-by: Ariel Gentile <[email protected]> commit c63350c Author: Timo Glastra <[email protected]> Date: Mon Feb 13 20:58:46 2023 +0100 test: add anoncreds restriction test (openwallet-foundation#1294) Signed-off-by: Timo Glastra <[email protected]> commit b570e0f Author: Karim Stekelenburg <[email protected]> Date: Mon Feb 13 19:49:21 2023 +0100 fix(indy-vdr): export relevant packages from root (openwallet-foundation#1291) Signed-off-by: Karim Stekelenburg <[email protected]> commit c72fd74 Author: Timo Glastra <[email protected]> Date: Mon Feb 13 18:40:44 2023 +0100 feat(anoncreds): legacy indy proof format service (openwallet-foundation#1283) Signed-off-by: Timo Glastra <[email protected]> commit dfb3eaf Author: Karim Stekelenburg <[email protected]> Date: Mon Feb 13 16:23:41 2023 +0100 build(indy-sdk): set private to false (openwallet-foundation#1293) Signed-off-by: Karim Stekelenburg <[email protected]> commit 231145f Author: Ariel Gentile <[email protected]> Date: Mon Feb 13 10:22:44 2023 -0300 chore: make askar, anoncreds(-rs), indy-vdr packages public (openwallet-foundation#1292) Signed-off-by: Ariel Gentile <[email protected]> commit fb8d58b Author: Timo Glastra <[email protected]> Date: Mon Feb 13 12:57:35 2023 +0100 refactor(proofs)!: generalize proofs api and improve consistency with credentials module (openwallet-foundation#1279) Signed-off-by: Timo Glastra <[email protected]> commit 51030d4 Author: Karim Stekelenburg <[email protected]> Date: Mon Feb 13 11:43:02 2023 +0100 feat(indy-vdr): module registration (openwallet-foundation#1285) Signed-off-by: Karim Stekelenburg <[email protected]> commit d61f6ed Author: Berend Sliedrecht <[email protected]> Date: Mon Feb 13 09:23:17 2023 +0100 chore(core): remove useless file (openwallet-foundation#1288) commit 30857b9 Author: Berend Sliedrecht <[email protected]> Date: Sat Feb 11 22:50:10 2023 +0100 fix(transport)!: added docs moved connection to connectionId (openwallet-foundation#1222) Signed-off-by: blu3beri <[email protected]> commit efe0271 Author: Ariel Gentile <[email protected]> Date: Fri Feb 10 19:15:36 2023 -0300 feat: add anoncreds-rs package (openwallet-foundation#1275) Signed-off-by: Ariel Gentile <[email protected]> commit 2669d7d Author: KolbyRKunz <[email protected]> Date: Fri Feb 10 14:14:59 2023 -0700 fix: set updateAt on records when updating a record (openwallet-foundation#1272) Signed-off-by: KolbyRKunz <[email protected]> commit 1d487b1 Author: Jim Ezesinachi <[email protected]> Date: Fri Feb 10 20:21:20 2023 +0100 feat: added endpoint setter to agent InitConfig (openwallet-foundation#1278) Signed-off-by: Jim Ezesinachi <[email protected]> commit 86cb9d0 Author: Ariel Gentile <[email protected]> Date: Fri Feb 10 11:13:44 2023 -0300 ci: increase maximum heap memory for node (openwallet-foundation#1280) Signed-off-by: Ariel Gentile <[email protected]> commit d056316 Author: Victor Anene <[email protected]> Date: Fri Feb 10 01:31:43 2023 +0100 feat(indy-vdr): add IndyVdrAnonCredsRegistry (openwallet-foundation#1270) Signed-off-by: Timo Glastra <[email protected]> commit f18d189 Author: Ariel Gentile <[email protected]> Date: Mon Feb 6 23:34:21 2023 -0300 feat: add initial askar package (openwallet-foundation#1211) Signed-off-by: Ariel Gentile <[email protected]> commit 115d897 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon Feb 6 23:45:01 2023 +0000 build(deps): bump http-cache-semantics from 4.1.0 to 4.1.1 (openwallet-foundation#1258) commit 3d86e78 Author: Karim Stekelenburg <[email protected]> Date: Tue Feb 7 00:09:24 2023 +0100 feat(openid4vc-client): pre-authorized (openwallet-foundation#1243) This PR adds support for the `pre-authorized` OpenID for Verifiable Credentials issuance flow to the new `openid4vc-client` module. Here are some highlights of the work: - Allows the user to execute the entire `pre-authorized` flow by calling a single method. - Adds a happy-flow test - HTTP(S) requests and responses are mocked using a network mocking library called [nock](https://github.com/nock/nock) - Because the JSON-LD credential that is received is expanded by the `W3cCredentialService`, I've added a few new contexts to our test document loader. - Not-so-happy-flow tests will be added later on. If you have any suggestions for edge cases that deserve testing, feel free to drop a comment. - Modifies the `JwsService` - The `JwsService` was geared towards a very specific use case. I've generalized its API so it's usable for a wider range of applications. - All pre-existing tests and calls to the `JwsService` have been updated. It's worth noting that I have had to add some `@ts-ignore` statements here and there to get around some incomplete types in the `OpenID4VCI-Client` library we're using. Once these issues have been resolved in the client library, they will be removed. **Work funded by the government of Ontario** --------- Signed-off-by: Karim Stekelenburg <[email protected]> Co-authored-by: Timo Glastra <[email protected]> commit 7f65ba9 Author: Jim Ezesinachi <[email protected]> Date: Mon Feb 6 22:27:03 2023 +0100 feat: optional routing for legacy connectionless invitation (openwallet-foundation#1271) Signed-off-by: Jim Ezesinachi <[email protected]> commit 3a4c5ec Author: Timo Glastra <[email protected]> Date: Mon Feb 6 21:49:12 2023 +0100 feat(anoncreds): add anoncreds API (openwallet-foundation#1232) Signed-off-by: Timo Glastra <[email protected]>
…undation#1347) Signed-off-by: Timo Glastra <[email protected]>
Adds full did:indy support for the indy-sdk package, while still keeping support for did:sov dids in interactions with other agents.
The
IndySdkAnonCredsRegistry
now supports resolving bothdid:indy
and legacy unqualified anoncreds objects. I wasn't sure on making it two separate classes due to the duplication. I think it's okay that they're combined for now, but it may be nice to split them up at some point so users could choose to e.g. not support the legacy identifiers anymore.In addition a new
IndySdkIndyDidRegistrar
has been added. This doesn't support thediddocContent
. TheIndySdkSovDidRegistrar
has been removed. From now on you can create did:indy dids, which contain the namespace, but you can keep on using thedid:sov
resolvers.For registering anoncreds object you can now only use
did:indy
identifiers as this will contain the namespace, but you can still use the unqualified ones in using the legacy indy credential format services.There's some additional work needed to the indy sdk issuer/holder/verifier services to make sure we can handle but qualified and unqualified dids and can also use them interchangeably.I'll make a similar PR for the indy-vdr package so they'll be in feature parity.
BREAKING CHANGE: The
IndySdkSovDidRegistrar
has been removed in favour of the newIndySdkIndyDidRegistar
. you can register the same dids as you could do with theIndySdkSovDidRegistrar
, but now with less ambiguity on which ledger should be used as that's encoded in the did itself.