Jose\Util\JWSLoader::loadSerializedJsonJWS PHP Method

loadSerializedJsonJWS() public static method

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;
    }

Usage Example

Beispiel #1
0
 /**
  * {@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);
     }
 }