【技术实现步骤摘要】
认证方法和系统
本申请涉及双因素认证领域,具体而言,涉及一种认证方法和系统。
技术介绍
双因素验证(2FA,Two-factorAuthentication)已经是国际上公认的,对用户账号安全最有效的增强保障手段。常见的双因素认证方案如短信验证码、RSA令牌(TOTP)、生物信息等,存在操作不便,中途数据可能被劫持,泄漏用户的隐私等问题。通用第二因素(U2F,Universal2ndFacto)类似国内的二代U盾的保护机制,使用双因子(密码和能与用户交互的设备)保护用户账户和隐私。用户在注册阶段,使用服务器支持的U2F设备,将账户和设备绑定。当进行登录验证操作时,服务器在合适的时候,提示用户插入设备并进行按键操作,加密设备对数据签名,发送给服务器,服务器做验证,如果验证成功,用户则可登录成功。由于有了第二因子(加密设备)的保护,用户可以选择不设置密码或者使用更简单易记的密码。其工作原理如下:当用户登录服务器注册信息时,用户的U2F设备产生一对非对称密钥对,私钥在加密设备中保留,黑客无法读取,公钥传给服务器,服 ...
【技术保护点】
1.一种认证方法,包括:/n客户终端获取签名信息,第一数值和认证因素,其中,所述签名信息是对服务器发送的挑战值进行签名得到的,所述第一数值用于表征对所述挑战值进行签名的操作次数,所述认证因素用于表征所述客户终端登录所述服务器的登录信息;/n所述客户终端基于所述签名信息、所述第一数值和所述认证因素,生成认证信息;/n所述客户终端将所述认证信息发送至所述服务器,其中,所述服务器对所述认证信息进行验证。/n
【技术特征摘要】
1.一种认证方法,包括:
客户终端获取签名信息,第一数值和认证因素,其中,所述签名信息是对服务器发送的挑战值进行签名得到的,所述第一数值用于表征对所述挑战值进行签名的操作次数,所述认证因素用于表征所述客户终端登录所述服务器的登录信息;
所述客户终端基于所述签名信息、所述第一数值和所述认证因素,生成认证信息;
所述客户终端将所述认证信息发送至所述服务器,其中,所述服务器对所述认证信息进行验证。
2.根据权利要求1所述的方法,其中,客户终端上连接有认证设备,所述认证因素存储在所述认证设备的单片机或安全模块内。
3.根据权利要求2所述的方法,其中,所述认证因素至少包括如下之一:登录时间和登录次数。
4.根据权利要求3所述的方法,其中,所述客户终端获取所述登录时间包括:
所述客户终端从所述认证设备中读取历史登录时间,其中,所述历史登录时间用于表征所述客户终端上一次成功登录所述服务器的登录时间;
所述客户终端读取当前登录时间,其中,所述当前登录时间用于表征所述客户终端当前登录所述服务器的登录时间。
5.根据权利要求4所述的方法,其中,在所述客户终端首次登录所述服务器的情况下,所述历史登录时间用于表征所述客户终端在所述服务器上进行注册操作的时间,其中,在所述客户终端在所述服务器上进行注册操作的情况下,所述客户终端根据所述当前登录时间生成所述登录时间。
6.根据权利要求3所述的方法,其中,所述客户终端获取所述登录次数包括:
所述客户终端从所述认证设备中读取目标应用程序对应的历史数值,其中,所述目标应用程序与所述服务器对应,所述历史数值用于表征所述客户终端登录所述服务器的历史登录次数;
所述客户终端获取所述历史数值与第一预设值之和,得到所述登录次数。
7.根据权利要求6所述的方法,其中,所述第一数值为所述客户终端上安装的所有应用程序对应的历史数值与所述第一预设值之和。
8.根据权利要求3所述的方法,其中,所述客户终端获取所述登录次数包括:
所述客户终端获取所述服务器发送的目标应用程序对应的历史掩码,其中,所述历史掩码用于表征所述客户终端登录所述服务器的历史登录次数;
所述客户终端获取所述历史掩码与第二预设值之和,得到所述目标应用程序对应的当前掩码;
所述客户终端基于所述当前掩码,得到所述登录次数。
9.根据权利要求3至8中任意一项所述的方法,其中,在所述客户终端将所述认证信息发送至所述服务器之后,所述方法还包括:
所述服务器对所述签名信息、所述第一数值和所述认证因素进行验证;
如果所述签名信息、所述第一数值或所述认证因素认证失败,则所述服务器拒绝所述客户终端登录所述服务器,并执行相应的控制策略;
如果所述签名信息、所述第一数值和所述认证因素均认证成功,则所述服务器允许所述客户终端登录所述服务器。
10.根据权利要求9所述的方法,其中,所述服务器对所述登录时间进行认证包括:
所述服务器将所述客户终端发送的历史登录时间与本地存储的历史登录时间进行比较;
如果所述客户终端发送的历史登录时间与所述本地存储的历史登录时间相同,则所述服务器确定所述登录时间认证成功;
如果所述客户终端发送的历史登录时间与所述本地存储的历史登录时间不同,则所述服务器确定所述登录时间认证失败。
11.根据权利要求10所述的方法,其中,在所述服务器确定所述登录时间认证成功之后,所述客户终端根据当前登录时间对所述认证设备内存储的历史登录时间进行更新;所述服务器根据所述当前登录时间对所述本地存储的历史登录时间进行更新。
12.根据权利要求9所述的方法,其中,所述服务器对所述登录次数进行认证包括:
所述服务器获取本地存储的目标应用程序对应的历史数值,得到本地存储的历史登录次数;
所述服务器获取所述客户终端发送的登录次数与所述本地存储的历史登录次数的差值;
所述服务器判断所述差值是否为第一预设值;
如果所述差值为所述第一预设值,则所述服务器确定所述登录次数认证成功;
如果所述差值不为所述第一预设值,则所述服务器确定所述登录次数认证失败。
13.根据权利要求12所述的方法,其中,在所述服务器确定所述登录次数认证成功之后,所述客户终端根据所述登录次数对所述认证设备内存储的历史数值进行更新;所述服务器根据所述登录次数对所述本地存储的历史数值进行更新。
14.根据权利要求9所述的方法,其中,所述服务器对所述登录次数进行认证包括:
所述服务器获取本地存储的目标应用程序对应的历史掩码;
所述服务器根据所述本地存储的历史掩码和所述第一数值,得到本地存储的历史登录次数;
所述服务器判断所述登录次数与所述本地存储的历史登录次数的差值是否为第一预设值;
如果所述差值为所述第一预设值,则所述服务器确定所述登录次数认证成功;
如果所述差值不为所述第一预设值,则所述服务器确定所述登录次数认证失败。
15.根据权利要求14所述的方法,其中,在所述服务器确定所述登录次数认证成功之后,所述方法还包括:
所述服务器获取所述历史掩码与第二预设值之和,得到所述目标应用程序对应的当前掩码;
所述服务器根据所述当前掩码对所述本地存储的历史掩码进行更新。
16.根据权利要求9所述的方法,其中,所述服务器对所述第一数值进行认证包括:
所述服务器获取所述客户终端发送的第一数值与本地存储的第一数值的差值;
所述服务器判断所述差值是否处于预设范围内;
如果所述差值处于所述预设范围内,则所述服务器确定所述第一数值认证成功;
如果所述差值未处于所述预设范围内,则所述服务器确定所述第一数值认证失败。
17.根据权利要求1...
【专利技术属性】
技术研发人员:朱红儒,李克鹏,王康,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛;KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。