所以我使用Yubikey已经有一段时间了,现在我想把它集成到我的管理部分。
我在这里找到了一个很棒的类:http://code.google.com/p/yubikey-php-webservice-class
唯一的问题是,它会检查:
yubikeytest.php
if (md5 (substr ($otp, 0, 12).":".$_POST['username']) != $token_id)这意味着I必须已经在数据库中具有令牌id。
但我不知道如何创建原始令牌并将其放入数据库中,因为$token_id必须=动态口令和用户名的md5散列,但我们都知道动态口令只有一次,因此永远不会=原始令牌。
我是不是做错了什么?我怎样才能尽可能少的麻烦地实现它?
我想要做的是保留我当前的身份验证,但是对于那些拥有/想要使用yubiekey进行身份验证的用户,他们可以向我们注册他们的密钥,我想知道如何注册,然后每次登录时,这些用户都会被要求输入yubiekey OTP。
请帮助我,一旦我得到一个适当的解决方案,我会让任何其他用户访问它,以使过程更容易,因为这个主题没有太多信息。
PS。另外,如果我正在寻找的东西已经在脚本中,请让我知道。
发布于 2012-04-26 16:19:05
YubiKey动态口令由两部分组成,最后32个字符是加密的动态口令,在此之前的字符(缺省为12个)是标识密钥的静态公共id。因此,上面的代码只执行公共id的md5,您可以从给定密钥的任何动态口令中获取它。
对于php解决方案,还有由Yubico维护的php-yubico项目:http://code.google.com/p/php-yubico/
https://stackoverflow.com/questions/10328316
复制相似问题