mil*_*esb 6 perl google-authenticator
我的理解(可能显然是错误的)是Authen :: OATH模块与Google Authenticator App生成的totp代码兼容.但它对我不起作用,而类似的红宝石代码则有用.我们在这里是一个perl商店,如果有人能指出我正确的方向来帮助我免于逐行挖掘两个库,那将会有所帮助.
这款红宝石兼容:
require 'rubygems'
require 'rotp'
secret = "bqagf6ohx4rp3a67"
puts ROTP::TOTP.new(secret).now.to_s
Run Code Online (Sandbox Code Playgroud)
这个perl没有:
use Authen::OATH;
my $oath = Authen::OATH->new();
my $totp = $oath->totp(" bqagf6ohx4rp3a67" );
print "$totp\n";
Run Code Online (Sandbox Code Playgroud)
从文档中不是很清楚,但是Authen::OATH希望将未编码的密码用于totp和hotp.如果这不是一种选择,你可以尝试decode_base32从转换:: Base32
use Convert::Base32;
use Authen::OATH;
my $oath = Authen::OATH->new();
my $totp = $oath->totp( decode_base32( "bqagf6ohx4rp3a67" ) );
print "$totp\n";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1794 次 |
| 最近记录: |