我正在使用Google Authenticator
在我的网站中使用两步验证。我将this php library用于Google Authenticator
。它工作正常,但现在我想生成backup codes
供以后使用,但该库中没有函数可以生成backup codes
。
我想知道backup codes
的算法以及如何在php中实现它。
答案 0 :(得分:2)
目前不支持此目的,以减少攻击面。目前,Google还没有计划添加此功能。
实际上,这不仅仅是复制算法的问题(这很简单)。您还需要获取算法生成代码的密钥。目前,Google身份验证器没有提供获取此密钥的方法,也没有计划这样的功能。
Issue 235: Is there an api to get the current TOTP from another app
的更多信息PAM module可以为任何支持PAM的应用程序添加双因素身份验证步骤。此模块中支持紧急刮刮代码。你将不得不做一些shell脚本并用你的php代码调用它们。
如果您使用的是Apache服务器,请下载名为multiOTP的免费LGPL PHP library implementing HOTP and TOTP。该库包含一个可以集成在FreeRadius中的命令行版本。
MultiOTP与支持TOTP和HOTP的Google身份验证器完全兼容。它支持10个代码的紧急刮刮密码。