belongsTo('Models\OAuth2\Client'); } /** * @param string $kid * @param string $type * @param string $use * @param string $pem * @param string $alg * @param bool $active * @param \DateTime $valid_from * @param \DateTime $valid_to * @return IClientPublicKey */ static public function buildFromPEM($kid, $type, $use, $pem, $alg, $active, \DateTime $valid_from, \DateTime $valid_to) { $pk = new self; $pk->kid = $kid; $pk->pem_content = $pem; $pk->type = $type; $pk->usage = $use; $pk->alg = $alg; $pk->active = $active; $pk->valid_from = $valid_from; $pk->valid_to = $valid_to; return $pk; } public function getPublicKeyPEM() { return $this->pem_content; } /** * @return IJWK */ public function toJWK() { $jwk = RSAJWKFactory::build ( new RSAJWKPEMPublicKeySpecification ( $this->getPublicKeyPEM(), $this->alg ) ); $jwk->setId($this->kid); $jwk->setType($this->type); $jwk->setKeyUse($this->usage); return $jwk; } }