diff --git a/src/mdoc/IssuerSignedItem.ts b/src/mdoc/IssuerSignedItem.ts index 2c0644c..9ef7119 100644 --- a/src/mdoc/IssuerSignedItem.ts +++ b/src/mdoc/IssuerSignedItem.ts @@ -85,7 +85,7 @@ export class IssuerSignedItem { if (this.elementIdentifier === 'issuing_country') { return countryName === this.elementValue; } - if (this.elementIdentifier === 'issuing_jurisdiction') { + if (this.elementIdentifier === 'issuing_jurisdiction' && stateOrProvince) { return stateOrProvince === this.elementValue; } return undefined; diff --git a/src/mdoc/Verifier.ts b/src/mdoc/Verifier.ts index 8a97a00..c90f27e 100644 --- a/src/mdoc/Verifier.ts +++ b/src/mdoc/Verifier.ts @@ -283,7 +283,7 @@ export class Verifier { }); const invalidJurisdiction = verifications.filter((v) => v.ns === ns && v.ev.elementIdentifier === 'issuing_jurisdiction') - .find((v) => !v.isValid || !v.ev.matchCertificate(ns, issuerAuth)); + .find((v) => !v.isValid || (issuerAuth.stateOrProvince && !v.ev.matchCertificate(ns, issuerAuth))); onCheck({ status: invalidJurisdiction ? 'FAILED' : 'PASSED',