File manager - Edit - /home/autoph/public_html/projects/vendor/namshi/jose/src/Namshi/JOSE/Signer/OpenSSL/HMAC.php
Back
<?php namespace Namshi\JOSE\Signer\OpenSSL; use Namshi\JOSE\Signer\SignerInterface; /** * This class is the base of all HMAC Signers. */ abstract class HMAC implements SignerInterface { /** * {@inheritdoc} */ public function sign($input, $key) { return hash_hmac($this->getHashingAlgorithm(), $input, (string) $key, true); } /** * To prevent timing attacks we are using PHP 5.6 native function hash_equals, * in case of PHP < 5.6 a timing safe equals comparison function. * * more info here: * http://blog.ircmaxell.com/2014/11/its-all-about-time.html * * * {@inheritdoc} */ public function verify($key, $signature, $input) { $signedInput = $this->sign($input, $key); return $this->timingSafeEquals($signedInput, $signature); } /** * A timing safe equals comparison. * * @param string $signature the internal signature to be checked * @param string $signedInput The signed input submitted value * * @return bool true if the two strings are identical. */ public function timingSafeEquals($known, $input) { return hash_equals($known, $input); } /** * Returns the hashing algorithm used in this signer. * * @return string */ abstract public function getHashingAlgorithm(); }
| ver. 1.4 |
.
| PHP 8.1.32 | Generation time: 0 |
proxy
|
phpinfo
|
Settings