首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery上的击键动态

jQuery上的击键动态
EN

Stack Overflow用户
提问于 2014-01-23 19:53:38
回答 2查看 1.6K关注 0票数 2

我想给一个相当敏感的登录区域增加一些安全性。我读过有关击键动力学的文章,我发现它非常有趣:如果输入模式不被识别,我可以询问更多信息。是否有任何jQuery实现?你能给我关于行为双因素身份验证的其他提示吗?

EN

回答 2

Stack Overflow用户

发布于 2014-01-24 01:06:14

没有通用的,自由给出的解决方案,如何在任何项目中使用击键动态(据我所知)。但是,你可以使用基本的jQuery函数来计算字母之间的动态,然后将其与您的登录和密码一起发送到服务器,服务器可以评估现在给定的动态差异并在您注册新用户时存储(您需要自己的算法)。

我为您创建一个简短的示例。

for save Keystroke dynamics with javascript

代码语言:javascript
复制
var tmr = []; // array to save keyup times
$('#pwd').keyup(function(evt) {
    tmr.push({"tmr":evt.timeStamp,
              "cod":evt.which});
    console.log("Key code: "+evt.which+" On time: "+evt.timeStamp);
});

然后,您可以发送结果与密码和登录,就像任何其他输入从html表单。

您可以像这样计算动力学时间:

代码语言:javascript
复制
    var ret = "";
    for(var i = 0; i < tmr.length - 1; ++i) {
        ret += ((i>0)?";":"") + (tmr[i+1].tmr - tmr[i].tmr);
    }

然后,你必须创建脚本来评估实际的动态与用户存储的动态。也许我可以帮你一点忙。祝好运。

票数 3
EN

Stack Overflow用户

发布于 2017-03-24 22:54:24

问题要复杂得多,不是只用JavaScript就能解决的问题。身份验证本身是通过API使用复杂的机器学习算法来完成的。JavaScript仅用于记录类型模式。

TypingDNA,我编写了带有Apache license的a JavaScript implementation (你可以自由使用来记录网页中的输入模式),但是如果你想实际执行身份验证,你必须使用API。

如果您有特定的问题,请让我知道。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21307400

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档