PHP基于Google Authenticator双因素身份验证实现动态码验证

一:介绍

Google Authenticator双因素身份验证是谷歌推出的一款动态口令工具,解决大家各平台账户遭到恶意攻击的问题,一般在相关的服务平台登陆中除了用正常用户名和密码外,需要再输入一次谷歌认证器生成的动态口令才能验证成功,相当于输入二次密码,以达到账户的高安全性。

二:拓展安装

composer require huaweichenai/google-authenticator

三:使用

1:创建密钥

$authenticator = new Authenticator();
$secret = $authenticator->createSecret();

2:获取手机端扫描二维码链接

$authenticator = new Authenticator();
$qrCodeUrl  = $authenticator->getQRCodeGoogleUrl('username', $secret, 'title');

3:获取手机端扫描二维码的信息

$authenticator = new Authenticator();
$authCode  = $authenticator->getAuthCode('username', $secret, 'title');
$authCode = urldecode($authCode);//使用此信息生成二维码

4:动态口令认证

$authenticator = new Authenticator();
$verifyCode  = $authenticator->verifyCode($secret, 'code验证码');
if ($verifyCode) {
  echo '认证成功';
} else {
  echo '认证失败';
}
相关推荐
zyh_0305219 分钟前
GIN
开发语言·后端·golang·gin
明月看潮生11 分钟前
青少年编程与数学 02-004 Go语言Web编程 02课题、依赖管理
开发语言·前端·青少年编程·编程与数学·goweb
Coding~13 分钟前
CTFshow-php特性(Web125-150)
开发语言·安全·web安全·网络安全·php
Tiandaren14 分钟前
从Python到C++的转变之路——如何高效复现C++开源项目 || Windows || Visual Studio || 持续更新
开发语言·c++·图像处理·人工智能·python·深度学习·开源
YRr YRr1 小时前
详解ROS环境配置:setup.bash 文件的功能与操作
开发语言·bash
夜空晚星灿烂1 小时前
C# 文件系统I/O操作--Directory类与DirectoryInfo类
服务器·开发语言·c#
ahhhhaaaa-1 小时前
【AI图像生成网站&Golang】项目测试与优化
开发语言·后端·性能优化·golang·pprof·trace
shinelord明2 小时前
【再谈设计模式】外观模式~复杂系统交互的简化大师
开发语言·数据结构·设计模式·软件工程
武子康2 小时前
Java-30 深入浅出 Spring - IoC 基础 启动IoC 纯XML启动 Bean、DI注入
xml·java·开发语言·后端·spring·mybatis·springboot