Logo

php实现authenticator功能

photo

2024年03月27日

最近在实现一个MFC【多因子验证】来实现二次验证,分享以下整个过程

下载手机app

  • Authenticator(可以微软/谷歌)

php代码实现输出

//参考文档

https://github.com/Spomky-Labs/otphp/blob/HEAD/doc/index.md

<?php
namespace app\controller\user;

use OTPHP\TOTP;
use app\BaseController;

class Authenticator extends BaseController
{
   public function generateQrcode1()
    {
        $otp = TOTP::create();
        $scret = $otp->getSecret();
        echo "The OTP secret is: {$otp->getSecret()}\n";

        //生成6位数码
        echo "The current OTP is: {$otp->now()}\n";
        echo '<pre/>';
         //生成可扫描二维码
        $otp->setLabel('OA令牌验证功能');
        $grCodeUri = $otp->getQrCodeUri(
            'https://api.qrserver.com/v1/create-qr-code/?data=[DATA]&size=200x200&ecc=M',
            '[DATA]'
        );
        echo "<img src='{$grCodeUri}'>";
        echo '<pre/>';
        //解密
        $otp = TOTP::create($scret); // create TOTP object from the secret.

        var_dump($otp->verify($otp->now())); // Returns true if the input is verified, otherwise false.
    }

}
* 注意如果要固定scret则要存起来,否则每次刷新后都是一个全新的值

橙子主题打折出售

其实我不卖,主要是这里是放广告的,所以就放了一个
毕竟主题都没做完,卖了也是坑.

购买它
所有附件
该文章没有附件.
本文为原创文章,请注意保留出处!

热门文章

西游记之大圣归来 《西游记之大圣归来》是根据中国传统神话故事《西游记》进行拓展和演绎的3D动画电影。由横店影视、天空之城、燕城十月与微影时代作为出品方,高路动画、恭梓兄弟、世纪长龙、山东影视、东台龙行盛世、淮安西游产业与永康壹禾作为联合出品方出品,田晓鹏执导,张磊、林子杰、刘九容和童自荣等联袂配音。影片讲述了已于五行山下寂寞沉潜五百年的孙悟空被儿时的唐僧——俗名江流儿的小和尚误打误撞地解除了封印,在相互陪伴的冒险之旅中找回初心,完成自我救赎的故事。 作者:Pastore Antonio
1429 浏览量
Jquery如何选取元素及其所有子元素?jquery选择器大全 $("#myELement")选择id值等于myElement的元素,id值不能重复在文档中只能有...Jquery如何选取元素及其所有子元素?jquery选择器大全 作者:Pastore Antonio
1399 浏览量
Office 365身份认证–深度解析(一) 微软Office365现在支持的认证方式,正准确的说是AzureActiveDirectory...Office365身份认证–深度解析(一) 作者:Pastore Antonio
1374 浏览量
Navicat设置MySQL索引+MySQL索引知识 引用:https://www.cnblogs.com/bypp/p/7755307.htmlht...Navicat设置MySQL索引+MySQL索引知识 作者:Pastore Antonio
1367 浏览量
ffmpeg+srs 实现直播流 这篇文章是我在做直播流的时候收集的所有素材,没有太多的整理,都放到了脑袋里面了,之后有时间了再整理成...ffmpeg+srs实现直播流 作者:Pastore Antonio
1359 浏览量