Google Auth
- <?php
- require_once 'GoogleAuthenticator.php';
-
- $ga = new \PHPGangsta_GoogleAuthenticator();
- // 1.创建秘钥
- $secret = $ga->createSecret();
- //echo "Secret is: ".$secret."\n\n";
- echo "密匙" . $secret . "<br>";
-
- // 2. 生成秘钥对应的二维码
- $qrCodeUrl = $ga->getQRCodeGoogleUrl('Blog', $secret);
- //echo "Google Charts URL for the QR-Code: ".$qrCodeUrl."<br>";
- echo "二维码 url " . $qrCodeUrl . "<br>";
-
- // 3.生成秘钥对应的动态码
- $oneCode = $ga->getCode($secret);
-
- //echo "Checking Code '$oneCode' and Secret '$secret'<br>";
- echo "被检查的动态码: '$oneCode' and 密码是 '$secret'<br>";
-
- // 4.检查传递的秘钥与动态码是否匹配。最后一个参数应该是时间。值是30秒的倍数。
- // 但是谷歌验证器 app 的动态码好像是30s 变化一次,这个我没注意
- $checkResult = $ga->verifyCode($secret, $oneCode, 2); // 2 = 2*30sec clock tolerance
- if ($checkResult) {
- echo 'OK';
- } else {
- echo 'FAILED';
- }