dpc / hash-verifier
用于生成非密钥和验证HMac以与API进行身份验证的包
v0.2.0
2017-11-03 18:23 UTC
Requires
- paragonie/sodium_compat: ^1.1
This package is not auto-updated.
Last update: 2024-09-22 07:51:52 UTC
README
使用非密钥进行哈希验证以及验证laravel应用程序中URL的hmac
安装
composer require dpc/hash-verifier
在Laravel 5.5中,服务提供者将被自动发现。通过运行以下命令发布配置文件:
php artisan vendor:publish --provider="Dpc\HashVerifier\AuthValidatorServiceProvider"
这将创建一个 validator.php
文件在你的配置文件夹中。
不要直接在配置文件中使用你的密钥。相反,从
.env
或服务器环境变量中获取它。
使用
将nonce生成契约和/或HMAC验证契约注入到你的类中
public function __construct(NonceContract $generator) { $this->generator = $generator; }
以生成一个nonce
$nonce = $this->generator->generateNonce($user)
nonce将自动存储在session中,键为`nonce'。要检索它,请调用
$nonce = $this->generator->getStoredNonce();
确保您不修改nonce。
以验证nonce是否匹配
$nonceMatches = $this->generator->matches($user, $nonce);
以验证hmac是否与URL的组件匹配
$result = $this->validator->validate($uriComponents));
您可以在此repo中查找有关如何使用此包的更多详细信息
版本控制
此包遵循 semver。在主要版本中引入的功能以及创建的任何破坏性更改都在 releases 中提及。
贡献
- 将其分支
- 创建你的功能分支:
git checkout -b my-new-feature
- 提交你的更改:
git commit -am 'Add some feature'
- 推送到分支:
git push origin my-new-feature
- 提交一个拉取请求 :D
作者
版本控制
此包遵循semver。在主要版本中引入的功能以及创建的任何破坏性更改都在releases中提及。
支持
如果您需要帮助或有任何问题,您可以
- 在此创建一个问题
- 向 @DPC_22 发送推文
- 通过dylan.dpc@gmail.com给我发邮件
- 在larachat的slack团队上私信我(@Dylan DPC)
许可
本项目采用MIT许可 - 有关详细信息,请参阅LICENSE文件