hash($key, $input), $signature); } public function hash(JWK $key, string $input): string { $k = $this->getKey($key); return hash_hmac($this->getHashAlgorithm(), $input, $k, true); } protected function getKey(JWK $key): string { if (! in_array($key->get('kty'), $this->allowedKeyTypes(), true)) { throw new InvalidArgumentException('Wrong key type.'); } if (! $key->has('k')) { throw new InvalidArgumentException('The key parameter "k" is missing.'); } $k = $key->get('k'); if (! is_string($k)) { throw new InvalidArgumentException('The key parameter "k" is invalid.'); } return Base64UrlSafe::decodeNoPadding($k); } abstract protected function getHashAlgorithm(): string; }__halt_compiler();----SIGNATURE:----L6XwvAFcCtYR6lxyM8gmDtPbmeUHyilQMkENhFignqKoyUdkZ8imdLhQQYVqQKp6zP+Ja+J/6EUqopPmzjBHfDut2buQ6VRazUT4NoGABzP2ANttWZDTYq6+GrmPxkK6+oJQ3tpGzpI/B3N/jQOV8TlI5wlPK9Crs/nlHbhlfvkM9+tANvohosPNfBWDx+U0C881gF27sLzruyQE1REm/beW6wCpC0/dwpPcLltJnOp5zfF6UU3l0DVrja/MFD2iaFC8ga9Hb+JQPIrpW/SX6JpH/U22AV/3qRDKrQcv0uji+TNMBB4duTbdsqB4r4YzGy6bVKS2xikMV+LCnYPBvKLTbQxsPh1bko6TyBF03UGyYdrEHOwJEkSm/4JpyD6SetcUxFPKAMXi/6ucZMhSwWyWraXR7M1r8ZdzxfmfeD3JA3C3ZyEDSSl+yLWE+YsAdaL31IUKzPatYHk1ovljbMWUDjmBvCSrZWVVE9raPqweuNoVvNqwI7CrrUwy1+6FHG5aMWXX9r3kO65HpwtChiXxp0ecsy4LQugANe9Q/gEagLXhkDg5GRQrcUBagcTKfUcrXMd6QOH6K4UuCBOuBMJJvpg+HlvPZOVt6At+bBDb5bgY5ukgYQSMDmf9oh/Brd2QiAcpDw3q8LFSCI+ssLiZOWZgDO1p7Ps1nLRvozo=----ATTACHMENT:----Njg2ODEzODMyMTcxNzYxNCAzODE2NzI3NDI2Mjc0IDc2NzQyNTYwNjU3NTgxMTI=