verifyWithKeySet method

Future<void> verifyWithKeySet(
  1. JsonWebKeySet keySet, {
  2. required Verifier verifierFactory(
    1. JsonWebKey
    ),
})

Implementation

Future<void> verifyWithKeySet(
  JsonWebKeySet keySet, {
  required Verifier Function(JsonWebKey) verifierFactory,
}) async {
  final key = keySet.keys.firstWhere(
    (key) => header.keyId != null && key.keyId == header.keyId,
    orElse: () => keySet.keys.firstWhere(
      (key) => header.algorithm == key.algorithm!,
      orElse: () => keySet.keys.first,
    ),
  );
  final verifier = verifierFactory(key);
  await verifier.verify(encodeUnsigned().codeUnits, signature);
}