Bug1: Resolving a PrismDID was overwriting the key ids with our own value
fix: src/castor/resolver/LongFormPrismDIDResolver.ts line 124
use the key.id instead of generating our own with getUsageId
Bug2: Creating a PrismDID with multiple issuing keys only encodes one, as the key ids conflict.
fix: src/castor/Castor.ts line 146
create the id from both the usage and the index
Bug3: JWT verify required the encoded verification methods to be in order with the signing key first, otherwise would fail
fix: attempt verification with all verification methods, as no way of determining which was used
Description:
Multiple fixes around did resolution:
Bug1: Resolving a PrismDID was overwriting the key ids with our own value fix: src/castor/resolver/LongFormPrismDIDResolver.ts line 124 use the
key.id
instead of generating our own withgetUsageId
Bug2: Creating a PrismDID with multiple
issuing keys
only encodes one, as the key ids conflict. fix: src/castor/Castor.ts line 146 create theid
from both theusage
and theindex
Bug3: JWT verify required the encoded verification methods to be in order with the signing key first, otherwise would fail fix: attempt verification with all verification methods, as no way of determining which was used
Checklist: