diff --git a/src/jws/flattened/verify.ts b/src/jws/flattened/verify.ts index 4de99b77df..19fbd34487 100644 --- a/src/jws/flattened/verify.ts +++ b/src/jws/flattened/verify.ts @@ -169,7 +169,12 @@ export async function flattenedVerify( encoder.encode('.'), typeof jws.payload === 'string' ? encoder.encode(jws.payload) : jws.payload, ) - const signature = base64url(jws.signature) + let signature: Uint8Array + try { + signature = base64url(jws.signature) + } catch { + throw new JWSInvalid('Failed to parse the base64url encoded signature') + } const verified = await verify(alg, key, signature, data) if (!verified) {