Skip to content

Commit 2a6a367

Browse files
authored
feat: Add Verifier options (#297)
Signed-off-by: Mirko Mollik <mirko.mollik@eudi.sprind.org>
1 parent 0654a46 commit 2a6a367

File tree

18 files changed

+98
-43
lines changed

18 files changed

+98
-43
lines changed

docs/0.x/keybinding.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,9 @@ const presentedSdJwt = await sdjwt.present(
4040
## Verify
4141

4242
```ts
43-
const verified = await sdjwt.verify(presentedSdJwt, ['id', 'ssn'], true);
43+
const verified = await sdjwt.verify(presentedSdJwt, {
44+
requiredClaimKeys: ['id', 'ssn'],
45+
keyBindingNonce: '1234'
46+
});
4447
console.log(verified.kb); // key binding header and payload is in kb object
4548
```

docs/0.x/sdjwt-instance.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ type SDJWTConfig = {
5858
- issue(payload[, disclosureFrame, options])
5959
- present(encodedSDJwt[, presentationFrame, options])
6060
- validate(encodedSDJwt)
61-
- verify(encodedSDJwt[, requiredClaimKeys, requireKeyBindings])
61+
- verify(encodedSDJwt[, verifierConfig])
6262
- config(newConfig)
6363
- encode(sdJwt)
6464
- decode(encodedSDJwt)

docs/0.x/verify.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
```ts
22
const verified = await sdjwt.verify(
33
encodedSdjwt,
4-
requiredClaimKeys,
5-
requireKeyBindings,
4+
{
5+
requiredClaims: ['id', 'ssn'], // required claims to verify
6+
keyBindingNonce: 'secure_none'
7+
}
68
);
79
```
810

examples/sd-jwt-example/all.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,8 @@ import { createSignerVerifier, digest, generateSalt, ES256 } from './utils';
103103

104104
// Verify the presentation using the public key and the required claims
105105
// return a boolean result
106-
const verified = await sdjwt.verify(presentation, requiredClaims);
106+
const verified = await sdjwt.verify(presentation, {
107+
requiredClaimKeys: requiredClaims,
108+
});
107109
console.log('verified:', verified);
108110
})();

examples/sd-jwt-example/basic.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,8 @@ import { createSignerVerifier, digest, ES256, generateSalt } from './utils';
5353

5454
// Verify the presentation using the public key and the required claims
5555
// return a boolean result
56-
const verified = await sdjwt.verify(presentation, requiredClaims);
56+
const verified = await sdjwt.verify(presentation, {
57+
requiredClaimKeys: requiredClaims,
58+
});
5759
console.log(verified);
5860
})();

examples/sd-jwt-example/custom.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,8 @@ import { createSignerVerifier, digest, ES256, generateSalt } from './utils';
8080

8181
// Verify the presentation using the public key and the required claims
8282
// return a boolean result
83-
const verified = await sdjwt.verify(presentation, requiredClaims);
83+
const verified = await sdjwt.verify(presentation, {
84+
requiredClaimKeys: requiredClaims,
85+
});
8486
console.log('verified:', verified);
8587
})();

examples/sd-jwt-example/flattenJSON.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,9 @@ import { createSignerVerifier, digest, generateSalt, ES256 } from './utils';
5252
const flattenPresentationJSON = FlattenJSON.fromEncode(presentedSdJwt);
5353
console.log('flattenJSON(presentation): ', flattenPresentationJSON.toJson());
5454

55-
const verified = await sdjwt.verify(presentedSdJwt, ['id', 'ssn'], true);
55+
const verified = await sdjwt.verify(presentedSdJwt, {
56+
requiredClaimKeys: ['firstname', 'id'],
57+
keyBindingNonce: '1234',
58+
});
5659
console.log(verified);
5760
})();

examples/sd-jwt-example/generalJSON.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,10 @@ import { createSignerVerifier, digest, generateSalt, ES256 } from './utils';
7474
JSON.stringify(generalPresentationJSON.toJson(), null, 2),
7575
);
7676

77-
const verified = await sdjwt.verify(presentedSdJwt, ['id', 'ssn'], true);
77+
const verified = await sdjwt.verify(presentedSdJwt, {
78+
requiredClaimKeys: ['firstname', 'id'],
79+
keyBindingNonce: '1234',
80+
});
7881
console.log(verified);
7982

8083
const generalVerified = await generalJSONSdJwt.verify(generalJSON);

examples/sd-jwt-example/kb.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import { createSignerVerifier, digest, ES256, generateSalt } from './utils';
2323
id: '1234',
2424
};
2525
const disclosureFrame: DisclosureFrame<typeof claims> = {
26-
_sd: ['firstname', 'id'],
26+
_sd: ['ssn', 'id'],
2727
};
2828

2929
const kbPayload = {
@@ -48,6 +48,9 @@ import { createSignerVerifier, digest, ES256, generateSalt } from './utils';
4848
},
4949
);
5050

51-
const verified = await sdjwt.verify(presentedSdJwt, ['id', 'ssn'], true);
51+
const verified = await sdjwt.verify(presentedSdJwt, {
52+
requiredClaimKeys: ['ssn', 'id'],
53+
keyBindingNonce: '1234',
54+
});
5255
console.log(verified);
5356
})();

examples/sd-jwt-vc-example/all.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,8 @@ import { createSignerVerifier, digest, ES256, generateSalt } from './utils';
111111

112112
// Verify the presentation using the public key and the required claims
113113
// return a boolean result
114-
const verified = await sdjwt.verify(credential, requiredClaims);
114+
const verified = await sdjwt.verify(credential, {
115+
requiredClaimKeys: requiredClaims,
116+
});
115117
console.log('verified:', verified);
116118
})();

0 commit comments

Comments
 (0)