manueldimmler / hmac-signature-middleware
两个PSR-15中间件用于创建和验证HMAC签名
v0.1.1
2022-07-13 15:02 UTC
Requires
- php: >=8.0
- psr/http-factory: ^1.0
- psr/http-server-middleware: ^1.0
Requires (Dev)
- infection/infection: ^0.26.10
- phpunit/phpunit: ^9.5
- vimeo/psalm: ^4.23
README
此包提供了两个PSR-15中间件。
第一个中间件创建负载签名。必须提供密钥作为第一个参数。默认情况下,使用SHA1哈希算法,并将HMAC签名添加为x-signature头部。
$signatureMiddleware = new Http\Middleware\HmacSignatureMiddleware('secret key'):
要验证签名,请使用验证中间件。
/** @var \Psr\Http\Message\ResponseFactoryInterface $responseFactory */ $signatureMiddleware = new Http\Middleware\HmacVerificationMiddleware('secret key', $responseFactory):
什么是HMAC
HMAC是一种基于哈希的消息认证代码,使用对称密钥。
如果用户看到一个消息和一个HMAC,并且知道相关的密钥,他可以通过自己进行HMAC计算来验证HMAC是由知道密钥的主体产生的。因此,如果消息附带正确的HMAC,这意味着消息在某个时刻被持有密钥的人看到过。
安装
composer require manueldimmler/hmac-signature-middleware