qlixes / phpgangsta_googleauthenticator
谷歌身份验证器双因素认证
此软件包的官方仓库似乎已消失,因此软件包已被冻结。
dev-master
2019-04-19 08:06 UTC
Requires
- php: >=5.3
This package is auto-updated.
Last update: 2023-02-19 17:14:22 UTC
README
- 版权所有 (c) 2012-2016, http://www.phpgangsta.de
- 作者:Michael Kliewe, @PHPGangsta 和 贡献者
- 在BSD许可下发布。
此PHP类可用于与谷歌身份验证器移动应用进行交互,实现双因素认证。该类可以生成密钥、生成代码、验证代码以及显示用于扫描密钥的二维码。它实现了根据RFC6238的TOTP。
为了安全安装,您需要确保使用的代码不会被重复使用(重放攻击)。您还需要限制验证次数,以抵抗暴力攻击。例如,您可以将一个IP地址(或IPv6块)在10分钟内的验证次数限制为10次。这取决于您的环境。
使用方法
请参阅以下示例
<?php require_once 'PHPGangsta/GoogleAuthenticator.php'; $ga = new PHPGangsta_GoogleAuthenticator(); $secret = $ga->createSecret(); echo "Secret is: ".$secret."\n\n"; $qrCodeUrl = $ga->getQRCodeGoogleUrl('Blog', $secret); echo "Google Charts URL for the QR-Code: ".$qrCodeUrl."\n\n"; $oneCode = $ga->getCode($secret); echo "Checking Code '$oneCode' and Secret '$secret':\n"; $checkResult = $ga->verifyCode($secret, $oneCode, 2); // 2 = 2*30sec clock tolerance if ($checkResult) { echo 'OK'; } else { echo 'FAILED'; }
运行脚本将提供以下输出
Secret is: OQB6ZZGYHCPSX4AK
Google Charts URL for the QR-Code: https://www.google.com/chart?chs=200x200&chld=M|0&cht=qr&chl=otpauth://totp/infoATphpgangsta.de%3Fsecret%3DOQB6ZZGYHCPSX4AK
Checking Code '848634' and Secret 'OQB6ZZGYHCPSX4AK':
OK
安装
-
使用 Composer 安装软件包
-
从项目根目录执行以下操作
composer install
-
Composer 将负责自动加载库。只需在文件顶部包含以下内容即可
require_once __DIR__ . '/../vendor/autoload.php';
运行测试
- 所有测试都在
tests文件夹中。 - 执行
composer install,然后从项目根目录运行测试 - 从项目根目录运行
phpunit tests
待办事项
- ??? 您需要什么?
注意
如果您喜欢此脚本或想添加一些功能:联系我,访问我的博客,分支此项目,发送拉取请求,您知道怎么做。