一种使用智能手机重力传感器实现无密码身份认证方法与流程

文档序号:12064144阅读:361来源:国知局
一种使用智能手机重力传感器实现无密码身份认证方法与流程

本发明属于身份认证技术领域,涉及一种使用智能手机重力传感器实现无密码身份认证方法。



背景技术:

随着科技的发展,智能手机越来越普及,只要有了智能手机,购物、付款、转账都可以解决了,但是关于安全问题一直是人们没法完美解决的。为了保证安全,很多APP要求用户设置复杂的密码,而且建议为不同的APP设置不同的密码,给用户带来了诸多不便。

现已有的密码解决方案有:

1.传统的输入字母加数字组合;

2.基于口令、手势的密码;

3.基于硬件配置的,例如指纹识别、虹膜识别、人脸识别;

4.采集用户行为和基于智能手机内置加速度传感器来实现身份认证。

但是,这些方案均存在各种各样的问题和局限性:

1.传统密码:

传统的输入字母加数字组合方法,是最原始的,也是我们现在依然常用的,因为组合的多样性,所以比较安全,但是因为现在越来越多的软件,银行卡等等都需要密码,完全设置相同密码又会极不安全,而且人的记忆力有限,很多时候会忘记,所以这种方法虽然可靠,但却跟不上社会信息化快速发展的步伐。

2.口令和手势密码:

基于口令和手势的密码,在公共场所使用会被很容易窃取。而且口令、手势密码一旦泄露,任何人都可以登录,所以也存在很大的安全隐患。

3.依靠硬件的生物特征密码,例如指纹识别,虹膜识别,人脸识别方法:

由于人体有很多生物特征是独一无二的,所以已经有科技公司开始考虑密码以外的用户识别方式,比较流行的是依靠硬件----比如指纹识别、虹膜识别、人脸识别等。但是很多时候硬件成本较高。而且科技越来越发达,这些生物特征也存在被盗取的可能。同时这些方法需要手机进行大量运算,影响手机运算效率。指纹是非常容易窃取的,现在智能手机还没有普及虹膜识别。人脸识别在进行身份认证时,如果人脸发生变化、被遮挡,特别是被包含有用户的照片及视频替换,人脸认证就会容易出现错误的认证结果,因此人脸认证时需要涉及到活体检测,而手机端的硬件资源配置有限,因此会降低认证的流畅性。

4.采集用户行为和基于智能手机内置加速度传感器来实现身份认证:

有的分析用户行为,譬如提取用户打字频率、姿势、分析用户的习惯性操作等。这类技术一旦成熟,便无需绞尽脑汁证明“我就是我”,也提升了安全性,但是这些方法都有很大的错误率,因为用户不可能保证每次的行为都可以保持一致。现在已有研究针对一种基于内嵌三维加速计的手持设备的身份认证方法。这个方法有一定的局限性,比如在成功率方面,用户不可能做到每次动作完全相同。在安全性上,在公共场合密码更容易被盗取。同时需要采取大量的样本来分析。



技术实现要素:

为实现上述目的,本发明提供一种使用智能手机重力传感器实现无密码身份认证方法,解决了现有技术中存在密码解决方案不安全或太过复杂、用户不易掌握的问题。

本发明所采用的技术方案是,一种使用智能手机重力传感器实现无密码身份认证方法,包含如下步骤:

步骤一:注册子模块;

步骤二:登录子模块。

所述步骤一包含如下步骤:

步骤1.1:设置姿态密钥;

步骤1.2:将姿态密钥串存入数据库。

所述步骤1.1包含如下步骤:

步骤1.1.1:检测手机姿态,所述检测手机姿态是利用手机内置的重力传感器进行检测;

步骤1.1.2:记录手机姿态保持时长,设置姿态密钥的时候,需要对注册者保持手机不动的时长进行记录,把大于时长t的姿态认为是用户刻意输入的姿态密钥,此时获取到姿态,进行后续的判断;否则,从更新至新姿态的时间开始重新计时。

步骤1.1.3:判断姿态密钥是否合法,所述合法姿态提前确定并输入数据库,并对这些合法姿态进行编号,若用户设置的姿态密钥为这些合法姿态中的任意一个,则合法;否则,提示用户非法,并提示用户重新设置。

步骤1.1.4:姿态密钥串一致性验证:验证注册者两次设置的姿态密钥串是否一致。

所述步骤二包含如下步骤:

步骤2.1:获取用户输入的姿态密钥,所述获取用户输入的姿态密钥获取的是手机的姿态序列,其中复用了注册时检测手机姿态和记录手机姿态保持时间的实现方法。

步骤2.2:密码匹配检测,所述密码匹配检测是将步骤2.1中获取的用户输入的姿态密钥与数据库中存放的注册成功的密钥串进行比对,二者一致则登陆成功,否则登陆失败。

本发明的有益效果是:

1.随着智能手机的快速发展,重力传感器已经成为了标配。本方法只需要利用重力传感器就可以实现用户身份认证,不需要使用其他任何传感器或硬件设备;

2.本方法身份认证的方式安全性高,攻击者通过猜测的方式模仿用户身份认证特征在计算时间上不可行;

3.成功率极高,验证方式简单,用户容易很快掌握。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一种使用智能手机重力传感器实现无密码身份认证方法的流程框图;

图2是本发明一种使用智能手机重力传感器实现无密码身份认证方法的注册流程框图;

图3是本发明一种使用智能手机重力传感器实现无密码身份认证方法的登录流程框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明一种使用智能手机重力传感器实现无密码身份认证方法,如图1、图2和图3所示,包含如下步骤:

步骤一:注册子模块;

步骤二:登录子模块。

所述步骤一包含如下步骤:

步骤1.1:设置姿态密钥;

步骤1.2:将姿态密钥串存入数据库。

所述步骤1.1包含如下步骤:

步骤1.1.1:检测手机姿态,所述检测手机姿态是利用手机内置的重力传感器进行检测;

步骤1.1.2:记录手机姿态保持时长,所述记录手机姿态保持时长是利用软件方法设置定时器来记录手机姿态保持时长,设置姿态密钥的时候,需要对注册者保持手机不动的时长进行记录,把大于时长t的姿态认为是用户刻意输入的姿态密钥,此时获取到姿态,进行后续的判断;否则,从更新至新姿态的时间开始重新计时。

记录手机姿态保持时长的方法是,每当手机姿态发生改变时,系统会触发sensorChanged事件,并提供了编程接口处理该事件。通过软件代码处理该事件并进行如下操作:检查当前手机姿态与上次触发sensorChanged事件时手机姿态的变化情况,如果变化幅度小于本方案设定的阈值,则认为当前手机仍然大致稳定在上一次的姿态,进而读取当前系统时间,与最初进入该姿态时的系统时间的差值,即认定为该姿态的保持时间;如果前手机姿态与上次触发sensorChanged事件时手机姿态相比,幅度超出本方案设定的阈值,则认为当前手机进入了新的姿态,记录进入新姿态的系统时间以便进行后续判断。其中,读取当前系统时间可以通过调用系统函数CurrentTimeMill来实现的。

步骤1.1.3:判断姿态密钥是否合法,所述合法姿态提前确定并输入数据库,并对这些合法姿态进行编号,若用户设置的姿态密钥为这些合法姿态中的任意一个,则合法;否则,提示用户非法,并提示用户重新设置。

步骤1.1.4:姿态密钥串一致性验证:验证注册者两次设置的姿态密钥串是否一致。

所述步骤二包含如下步骤:

步骤2.1:获取用户输入的姿态密钥,所述获取用户输入的姿态密钥获取的是手机的姿态序列,其中复用了注册时检测手机姿态和记录手机姿态保持时间的实现方法。

步骤2.2:密码匹配检测,所述密码匹配检测是将步骤2.1中获取的用户输入的姿态密钥与数据库中存放的注册成功的密钥串进行比对,二者一致则登陆成功,否则登陆失败。

本发明一种使用智能手机重力传感器实现无密码身份认证方法的步骤一:注册子模块基本路径如下:

1.用户设置姿态密码,固定密码长度为L(姿态密码长度是姿态序列中包含的姿态个数)

如果当前长度小于3或者是输入遍数小于等于2

a.将手机保持一个姿态2秒,检测每一个手机姿态是否合法

●若合法,则震动提示该姿态合法

●若不合法,则震动提示不合法,提示重新输入

循环结束

b.两遍输入完成后,检查是否一致

●若果一致,则提示设置密码成功

●否则,重新设置密码

2.将姿态秘钥串存储入数据库

可选路径:

在第2步之前的任何一个环节,用户可以选择返回,退出程序。

具体的实现方法是:利用手机内置的重力传感器,检测手机的姿态,重力传感器返回XYZ三个方向上的重力加速度值,根据三个方向上的值计算出手机屏幕朝向,顶端朝向,从而得到当前的姿态。

基于上述方法,定义一组方便用户使用并且使手势误判率最低的手机姿态,若用户设置的姿态密钥为这一组的任意一个,则为合法姿态。其他任何姿态都被定义为非法。利用软件方法设置定时器记录手机姿态保持时长。当手机姿态变化为任一姿态时,若计时器计时超过阈值时长t,并且手机姿态未发生显著变化,则认定是用户刻意输入的姿态;若计时器计时未超过阈值时长t,手机姿态发生变化,则从手机进入新姿态的时间开始,重新启动计时器计时。

本发明一种使用智能手机重力传感器实现无密码身份认证方法的步骤二:登录子模块基本路径如下:

1.当用户选择登录时,登录用况开始;

2.输入姿态秘钥:

当秘钥长度小于固定长度3

a.将手机保持一个姿态2秒,检测每一个手机姿态是否合法

●若合法,则震动提示输入下一个姿态

●若不合法,则提示不合法,并继续输入

循环结束

3.检测密码是否匹配,若匹配则登陆成功,否则登陆失败。

可选路径:在第3步之前的任何一个环节,用户可以选择返回并退出。

本发明一种使用智能手机重力传感器实现无密码身份认证方法,可以编写成为手机应用程序在android 4.0及其以上内置重力传感器的安卓智能手机上运行,让使用者参考相应的提示进行操作。

正常的注册流程为:注册-->设置姿态秘钥-->注册完成。

注册的具体操作步骤为:

1.注册;

2.设定姿态密码;

进行设置姿态密钥过程中,规定用户连续设置三个合法手机姿态作为密钥,每个姿态密钥需要将手机保持至少两秒钟,捕捉到用户设置的手机姿态,然后进行判断,如果是合法姿态,则引导用户输入下一个姿态密钥;如果不合法,提示用户再次输入该姿态密钥,如此进行重复,直至完成第三个姿态。

接下来是三个姿态的依次设定,如果合法,则设置成功。

3.再次输入确认一遍(不一致则重输);

三个姿态密钥设定后,引导用户再次输入,以便用户确认密码。若两次输入的密钥不一致,提示用户不一致并引导用户重新设置密钥;若一致,则注册完成。

4.注册成功。

需要注意的是,设置的密钥串是有顺序的,必须按照注册时的顺序用来解锁。

登录的具体操作步骤为:

1.开始判定姿态;

验证时,手机姿态如果是合法姿态中的任何一个,不管正确与否,都进行震动提醒;否则提示不合法,不震动提醒,提示用户调整姿态,继续验证。

三个姿态密钥完全录入后,进行验证,检测密码是否与注册一致,若一致则登陆成功,否则登陆失败。

2、提示用户登录成功。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1