public static loadSerializedJsonJWS ( array $data ) : Jose\Object\JWSInterface | ||
$data | array | |
return | Jose\Object\JWSInterface |
public static function loadSerializedJsonJWS(array $data)
{
$jws = new JWS();
foreach ($data['signatures'] as $signature) {
$bin_signature = Base64Url::decode($signature['signature']);
$protected_headers = self::getProtectedHeaders($signature);
$headers = self::getHeaders($signature);
$jws = $jws->addSignatureFromLoadedData($bin_signature, $protected_headers, $headers);
}
self::populatePayload($jws, $data);
return $jws;
}
/** * {@inheritdoc} */ public function load($input) { $json = $this->convert($input); if (array_key_exists('signatures', $json)) { return Util\JWSLoader::loadSerializedJsonJWS($json); } if (array_key_exists('recipients', $json)) { return Util\JWELoader::loadSerializedJsonJWE($json); } }