docs/jws/general/verify/functions/generalVerify.md
Support from the community to continue maintaining and improving this module is welcome. If you find the module useful, please consider supporting the project by becoming a sponsor.
āø generalVerify(jws, key, options?): Promise<GeneralVerifyResult>
Verifies the signature and format of and afterwards decodes the General JWS.
This function is exported (as a named export) from the main 'jose' module entry point as well
as from its subpath export 'jose/jws/general/verify'.
[!NOTE]
The function iterates over thesignaturesarray in the General JWS and returns the verification result of the first signature entry that can be successfully verified. The result only contains the payload, protected header, and unprotected header of that successfully verified signature entry. Other signature entries in the General JWS are not validated, and their headers are not included in the returned result. Recipients of a General JWS should only rely on the returned (verified) data.
| Parameter | Type | Description |
|---|---|---|
jws | GeneralJWSInput | General JWS. |
key | KeyInput | Key to verify the JWS with. See Algorithm Key Requirements. |
options? | VerifyOptions | JWS Verify options. |
const jws = {
payload: 'SXTigJlzIGEgZGFuZ2Vyb3VzIGJ1c2luZXNzLCBGcm9kbywgZ29pbmcgb3V0IHlvdXIgZG9vci4',
signatures: [
{
signature:
'FVVOXwj6kD3DqdfD9yYqfT2W9jv-Nop4kOehp_DeDGNB5dQNSPRvntBY6xH3uxlCxE8na9d_kyhYOcanpDJ0EA',
protected: 'eyJhbGciOiJFUzI1NiJ9',
},
],
}
const { payload, protectedHeader } = await jose.generalVerify(jws, publicKey)
console.log(protectedHeader)
console.log(new TextDecoder().decode(payload))
āø generalVerify<KeyType>(jws, getKey, options?): Promise<GeneralVerifyResult & ResolvedKey<KeyType>>
Verifies the signature and format of and afterwards decodes the General JWS, resolving the key dynamically. The result additionally carries the resolved key.
| Type Parameter | Default type |
|---|---|
KeyType extends Uint8Array | CryptoKey | Uint8Array | CryptoKey |
| Parameter | Type | Description |
|---|---|---|
jws | GeneralJWSInput | General JWS. |
getKey | GeneralVerifyGetKey<KeyType> | Function resolving a key to verify the JWS with. See Algorithm Key Requirements. |
options? | VerifyOptions | JWS Verify options. |
Promise<GeneralVerifyResult & ResolvedKey<KeyType>>
āø generalVerify(jws, key, options?): Promise<GeneralVerifyResult & Partial<ResolvedKey<Uint8Array | CryptoKey>>>
Accepts either form of the key argument. Use this overload when forwarding a value that may be
either a key or a key resolution function; key is present on the result only when a resolution
function was used.
| Parameter | Type | Description |
|---|---|---|
jws | GeneralJWSInput | General JWS. |
key | KeyInput | GeneralVerifyGetKey<Uint8Array | CryptoKey> | Key, or function resolving a key, to verify the JWS with. See Algorithm Key Requirements. |
options? | VerifyOptions | JWS Verify options. |
Promise<GeneralVerifyResult & Partial<ResolvedKey<Uint8Array | CryptoKey>>>