@@ -17,7 +17,8 @@ import * as vc from '../lib/index.js';
17
17
import { DataIntegrityProof } from '@digitalbazaar/data-integrity' ;
18
18
import { driver } from '@digitalbazaar/did-method-key' ;
19
19
20
- // document loader support
20
+ // setup document loader
21
+ import { CachedResolver } from '@digitalbazaar/did-io' ;
21
22
import { securityLoader } from '@digitalbazaar/security-document-loader' ;
22
23
23
24
//import secCtx from '@digitalbazaar/security-context';
@@ -41,17 +42,20 @@ loader.addStatic(
41
42
}
42
43
/* eslint-enable quotes, quote-props, max-len */
43
44
) ;
45
+ const resolver = new CachedResolver ( ) ;
46
+ const didKeyDriverMultikey = driver ( ) ;
47
+
48
+ didKeyDriverMultikey . use ( {
49
+ multibaseMultikeyHeader : 'zDna' ,
50
+ fromMultibase : EcdsaMultikey . from
51
+ } ) ;
52
+ resolver . use ( didKeyDriverMultikey ) ;
53
+ loader . setDidResolver ( resolver ) ;
44
54
45
55
const documentLoader = loader . build ( ) ;
46
56
47
57
async function main ( { credential, documentLoader} ) {
48
58
// generate example ecdsa keypair
49
- const didKeyDriverMultikey = driver ( ) ;
50
-
51
- didKeyDriverMultikey . use ( {
52
- multibaseMultikeyHeader : 'zDna' ,
53
- fromMultibase : EcdsaMultikey . from
54
- } ) ;
55
59
56
60
const ecdsaKeyPair = await EcdsaMultikey . generate ( { curve : 'P-256' } ) ;
57
61
@@ -63,8 +67,8 @@ async function main({credential, documentLoader}) {
63
67
ecdsaKeyPair . id = didDocument . assertionMethod [ 0 ] ;
64
68
ecdsaKeyPair . controller = didDocument . id ;
65
69
66
- // setup ecdsa-rdfc-2019 suite
67
- const suite = new DataIntegrityProof ( {
70
+ // setup ecdsa-rdfc-2019 signing suite
71
+ const signingSuite = new DataIntegrityProof ( {
68
72
signer : ecdsaKeyPair . signer ( ) ,
69
73
// date: '2023-01-01T01:01:01Z',
70
74
cryptosuite : ecdsaRdfc2019Cryptosuite
@@ -75,13 +79,19 @@ async function main({credential, documentLoader}) {
75
79
// sign credential
76
80
const verifiableCredential = await vc . issue ( {
77
81
credential,
78
- suite,
82
+ suite : signingSuite ,
79
83
documentLoader
80
84
} ) ;
85
+
86
+ // setup ecdsa-rdfc-2019 verifying suite
87
+ const verifyingSuite = new DataIntegrityProof ( {
88
+ cryptosuite : ecdsaRdfc2019Cryptosuite
89
+ } ) ;
90
+
81
91
// verify signed credential
82
92
const verifyResult = await vc . verifyCredential ( {
83
93
credential : verifiableCredential ,
84
- suite,
94
+ suite : verifyingSuite ,
85
95
documentLoader
86
96
} ) ;
87
97
0 commit comments