jose/docs/functions/jws_general_verify.generalverify.md
2021-03-18 07:51:50 +01:00

2.1 KiB

Function: generalVerify

jws/general/verify.generalVerify

generalVerify(jws: GeneralJWSInput, key: KeyLike | GeneralVerifyGetKey, options?: VerifyOptions): Promise<GeneralVerifyResult>

Verifies the signature and format of and afterwards decodes the General JWS.

example

// ESM import
import { generalVerify } from 'jose/jws/general/verify'

example

// CJS import
const { generalVerify } = require('jose/jws/general/verify')

example

// usage
import { parseJwk } from 'jose/jwk/parse'

const decoder = new TextDecoder()
const jws = {
  payload: 'SXTigJlzIGEgZGFuZ2Vyb3VzIGJ1c2luZXNzLCBGcm9kbywgZ29pbmcgb3V0IHlvdXIgZG9vci4',
  signatures: [
    {
      signature: 'FVVOXwj6kD3DqdfD9yYqfT2W9jv-Nop4kOehp_DeDGNB5dQNSPRvntBY6xH3uxlCxE8na9d_kyhYOcanpDJ0EA',
      protected: 'eyJhbGciOiJFUzI1NiJ9'
    }
  ]
}
const publicKey = await parseJwk({
  alg: 'ES256',
  crv: 'P-256',
  kty: 'EC',
  x: 'ySK38C1jBdLwDsNWKzzBHqKYEE5Cgv-qjWvorUXk9fw',
  y: '_LeQBw07cf5t57Iavn4j-BqJsAD1dpoz8gokd3sBsOo'
})

const { payload, protectedHeader } = await generalVerify(jws, publicKey)

console.log(protectedHeader)
console.log(decoder.decode(payload))

Parameters:

Name Type Description
jws GeneralJWSInput General JWS.
key KeyLike | GeneralVerifyGetKey Key, or a function resolving a key, to verify the JWS with.
options? VerifyOptions JWS Verify options.

Returns: Promise<GeneralVerifyResult>

Defined in: jws/general/verify.ts:69