authelia/app/lib/totp_checker.js

23 lines
367 B
JavaScript
Raw Normal View History

2016-12-10 07:47:58 +07:00
module.exports = {
'validate': validate
}
var Q = require('q');
function validate(speakeasy, token, totp_secret) {
var defer = Q.defer();
var real_token = speakeasy.totp({
secret: totp_secret,
encoding: 'base32'
});
if(token == real_token) {
defer.resolve();
}
else {
defer.reject('Wrong challenge');
}
return defer.promise;
}