Multiple Signatures
$jws = $jwsBuilder
->create()
->withPayload('...')
->addSignature($signature_key1, ['alg' => 'HS256'])
->addSignature($signature_key2, ['alg' => 'RS384'])
->addSignature($signature_key3, ['alg' => 'ES512'])
->build();use Jose\Component\Core\Converter\StandardConverter;
use Jose\Component\Signature\Serializer;
// The JSON Converter.
$jsonConverter = new StandardConverter();
$manager = Serializer\JWSSerializerManager::create([
new Serializer\CompactSerializer($jsonConverter),
new Serializer\JsonFlattenedSerializer($jsonConverter),
new Serializer\JsonGeneralSerializer($jsonConverter),
]);
$tokenWithAllSignatures = $manager->serialize('jws_json_general', $jws);
$compactTokenWithSignatureAtIndex1 = $manager->serialize('jws_compact', $jws, 1);
$flattenedTokenWithSignatureAtIndex2 = $manager->serialize('jws_json_flattened', $jws, 2);Last updated
Was this helpful?