All checks were successful
Build, Push and Deploy / build-and-push (push) Successful in 3m3s
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 16s
Build, Push and Deploy / deploy-staging (push) Successful in 32s
Build, Push and Deploy / deploy-production (push) Has been skipped
Build, Push and Deploy / cleanup (push) Successful in 1s
41 lines
781 B
PHP
41 lines
781 B
PHP
<?php
|
|
|
|
namespace League\OAuth1\Client\Signature;
|
|
|
|
class HmacSha1Signature extends Signature implements SignatureInterface
|
|
{
|
|
use EncodesUrl;
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function method()
|
|
{
|
|
return 'HMAC-SHA1';
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function sign($uri, array $parameters = [], $method = 'POST')
|
|
{
|
|
$url = $this->createUrl($uri);
|
|
|
|
$baseString = $this->baseString($url, $method, $parameters);
|
|
|
|
return base64_encode($this->hash($baseString));
|
|
}
|
|
|
|
/**
|
|
* Hashes a string with the signature's key.
|
|
*
|
|
* @param string $string
|
|
*
|
|
* @return string
|
|
*/
|
|
protected function hash($string)
|
|
{
|
|
return hash_hmac('sha1', $string, $this->key(), true);
|
|
}
|
|
}
|