一种基于智能终端陀螺仪的加解密方法及系统与流程

文档序号:11960640阅读:261来源:国知局
一种基于智能终端陀螺仪的加解密方法及系统与流程

本发明涉及智能终端加密技术领域,具体来讲是一种基于智能终端陀螺仪的加解密方法及系统。



背景技术:

随着移动互联网技术及移动设备技术的发展,移动便携式智能终端的持有量在逐年增加。目前,中国智能终端的持有量稳居世界第一,这无疑说明智能终端已成为了人们日常生活中必不可少的生活工具。与此同时,随着移动支付等技术的迅猛发展,使得智能终端等移动设备的安全问题越来越突出,而加密解密方法则是安全领域的核心。

现阶段,智能终端的加密解密方式有很多,例如:密码输入,图案识别等,即在加密解密过程中,直接由用户输入的密码或绘制成的图案来进行明文加解密。但是,现有的这些加密解密方式均是直接与明文密码相关,基于字符和图案的加密基础数据量有限,复杂度不够高,易被暴力破解;另外,由于受到智能终端屏幕尺寸及交互能力的限制,使得用户在秘钥输入过程中存在操作不方便、繁琐等问题,特别是对于一些长秘钥的输入,需要输入的时间较长,给用户带来很大的不便。



技术实现要素:

本发明的目的是为了克服上述背景技术的不足,提供一种基于智能终端陀螺仪的加解密方法及系统,不但加密数据量大、复杂度高,能有效避免暴力破解;而且加解密时无需长时间输入,操作方便快捷。

为达到以上目的,本发明采取的技术方案是:提供一种基于智能终端陀螺仪的加解密方法,该加解密方法包括加密流程和解密流程。其中,加密流程包括:A1、当用户进入加密界面后,初始化智能终端上的陀螺仪信息,转入A2;A2、将初始化成功后的陀螺仪信息显示到智能终端界面上,并随机生成一个与此次加密数据对应的停留时间,转入A3;A3、对智能终端陀螺仪进行监听,当监听到用户转动智能终端至期待位置并停止转动后,判断停止转动时间是否达到所述停留时间,若是,读取并记录下当前的陀螺仪数据,转入A4;否则,返回A3,继续监听;A4、将当前的陀螺仪数据与预设的软件秘钥进行混合加密,生成MD5的字符串,将该字符串作为一个加密信息与所述停留时间一并保存下来。

在上述技术方案的基础上,所述解码流程包括:B1、当用户进入解密界面后,初始化智能终端上的陀螺仪信息,转入B2;B2、将初始化成功后的陀螺仪信息显示到智能终端界面上,并获取与此次解密操作对应的停留时间,转入B3;B3、对智能终端陀螺仪进行监听,当监听到用户转动智能终端至期待位置并停止转动后,判断停止转动时间是否达到对应的停留时间,若是,读取并记录下当前的陀螺仪数据,转入B4;否则,返回B3,继续监听;B4、将当前的陀螺仪数据与预设的软件秘钥进行混合组合,生成一个解密信息,转入B5;B5、判断当前的解密信息是否与保存的对应加密信息一致,若是,解密流程结束;否则,返回B2,重新开始解密。

在上述技术方案的基础上,所述加密流程的步骤A1中,若智能终端上的陀螺仪信息初始化不成功,则显示键盘输入界面或图形输入界面,供用户进行字符加密或图形加密操作;所述解密流程的步骤B1中,若智能终端上的陀螺仪信息初始化不成功,则显示键盘输入界面或图形输入界面,供用户进行字符解密或图形解密操作。

在上述技术方案的基础上,所述加密流程的步骤A3、A4之间,还包括陀螺仪数据验证操作:判断当前的陀螺仪数据是否达到加密数据的要求,若是,转入A4;否则,返回A2,重新生成随机的停留时间和陀螺仪数据;所述解密流程的步骤B3、B4之间,同样也包括陀螺仪数据验证操作:判断当前的陀螺仪数据是否达到解密数据的要求,若是,转入B4;否则,返回B2,重新获取对应的停留时间和陀螺仪数据。

在上述技术方案的基础上,所述加密流程的步骤A4之后还包括以下操作:判断是否还需生成加密信息,若是,返回步骤A2,继续生成另一个加密信息;若否,加密流程结束;所述解密流程的步骤B5之后还包括以下操作:判断是否还需继续进行解密操作,若是,返回步骤B2,继续进行解密操作;若否,解密流程结束。

本发明还提供一种基于智能终端陀螺仪的加解密系统,该加解密系统包括加密模块和解密模块。其中,所述加密模块包括加密初始化子模块、加密预操作子模块、加密监听子模块和加密信息生成子模块。所述加密初始化子模块用于:当用户进入加密界面后初始化智能终端上的陀螺仪信息,并在初始化成功后向加密预操作子模块发送加密预操作信号;所述加密预操作子模块用于:收到加密预操作信号后,将初始化成功后的陀螺仪信息显示到智能终端界面上;并随机生成一个与此次加密数据对应的停留时间,向加密监听子模发送加密监听信号;所述加密监听子模块用于:收到加密监听信号后,对智能终端陀螺仪进行监听,当监听到用户转动智能终端至期待位置并停止转动后,判断停止转动时间是否达到所述停留时间,若是,读取并记录下当前的陀螺仪数据,向加密信息生成子模块发送加密信息生成信号;否则,发送加密监听信号,继续监听;所述加密信息生成子模块用于:收到加密信息生成信号后,将当前的陀螺仪数据与预设的软件秘钥进行混合加密,生成MD5的字符串,将该字符串作为一个加密信息与所述停留时间一并保存下来。

在上述技术方案的基础上,所述解密模块包括解密初始化子模块、解密预操作子模块、解密监听子模块、解密信息生成子模块和解密信息检验子模块。所述解密初始化子模块用于:当用户进入解密界面后初始化智能终端上的陀螺仪信息,并在初始化成功后向解密预操作子模块发送解密预操作信号;所述解密预操作子模块用于:收到解密预操作信号后,将初始化成功后的陀螺仪信息显示到智能终端界面上;并获取与此次解密操作对应的停留时间,向解密监听子模块发送解密监听信号;所述解密监听子模块用于:收到解密监听信号后,对智能终端陀螺仪进行监听,当监听到用户转动智能终端至期待位置并停止转动后,判断停止转动时间是否达到对应的停留时间,若是,读取并记录下当前的陀螺仪数据,向解密信息生成子模块发送解密信息生成信号;否则,发送解密监听信号,继续监听;所述解密信息生成子模块用于:收到解密信息生成信号后,将当前的陀螺仪数据与预设的软件秘钥进行混合组合,生成一个解密信息,并向解密信息检验子模块发送解密检验信号;所述解密信息检验子模块用于:收到解密检验信号后,判断当前的解密信息是否与保存的对应加密信息一致,若是,结束解密;否则,向解密预操作子模块发送解密预操作信号,重新开始解密。

在上述技术方案的基础上,所述加密初始化子模块在陀螺仪信息初始化不成功时,显示键盘输入界面或图形输入界面,供用户进行字符加密或图形加密操作;所述解密初始化子模块在陀螺仪信息初始化不成功时,显示键盘输入界面或图形输入界面,供用户进行字符解密或图形解密操作。

在上述技术方案的基础上,所述加密模块还包括加密陀螺仪数据验证子模块,用于判断加密监听子模块记录的当前陀螺仪数据是否达到加密数据的要求,若是,向加密信息生成子模块发送加密信息生成信号;否则,向加密预操作子模块发送加密预操作信号,重新生成随机的停留时间和陀螺仪数据;所述解密模块还包括解密陀螺仪数据验证子模块,用于判断解密监听子模块记录的当前陀螺仪数据是否达到解密数据的要求,若是,向解密信息生成子模块发送解密信息生成信号;否则,向解密预操作子模块发送解密预操作信号,重新获取对应的停留时间和陀螺仪数据。

在上述技术方案的基础上,所述加密模块还包括加密流程判断子模块,用于判断是否还需生成另外的加密信息,若是,向加密预操作子模块发送加密预操作信号,继续生成另一个加密信息;若否,结束加密流程;所述解密模块还包括解密流程判断子模块,用于判断是否还需继续进行解密操作,若是,向解密预操作子模块发送解密预操作信号,继续进行解密操作;若否,结束解密流程。

本发明的有益效果在于:

1、本发明采用一种基于智能终端陀螺仪的加解密技术解决了传统加解密方式中存在的易破解、难输入的问题。本发明利用陀螺仪取得若干空间数据作为加解密的基础数据,根据这些相关的基础数据,再结合随机的停留时间,动态生成陀螺仪数据;再将陀螺仪数据与预设的软件秘钥进行混合加密,生成真正的加密信息来实现加密。这种由多种数据进行结合生成的加密信息,较传统的字符加密或图形加密而言,其加密基础数据量相当大,复杂度也更高,能有效防止解密时被暴力破解,反破解性强。另外,用户在使用本发明的加解密技术(基于陀螺仪的加解密技术)来输入密码时,只需要调整智能终端的方向(即使用陀螺仪来生成加密数据)就可以进行加解密的输入,输入非常简便,用户体验较好。

2、本发明中,为了有效保证加密的陀螺仪数据的有效性和解密陀螺仪数据的有效性,在加密流程和解密流程中均包括有陀螺仪数据验证操作,能进一步提高加解密过程中的准确性及可靠性,减少错误的产生。

3、本发明在进行加解密时,若出现智能终端陀螺仪初始化不成功的情况(有可能该智能终端不支持陀螺仪功能),则会相应改用传统的键盘输入界面或图形输入界面,供用户进行字符加解密或图形加解密操作,能满足各种使用情况的需要,实用性及适用性好。

4、使用本发明进行加解密的使用场景包括不限于:智能终端解锁,软件解锁,及一切所需要密码输入的使用场景,适用范围广。

附图说明

图1为本发明实施例中基于智能终端陀螺仪的加密流程示意图;

图2为本发明实施例中基于智能终端陀螺仪的解密流程示意图;

图3为本发明实施例中基于智能终端陀螺仪的加解密系统的结构框图。

具体实施方式

下面结合附图及具体实施例对本发明作进一步的详细描述。

参见图1和图2所示,本发明实施例提供一种基于智能终端陀螺仪的加解密方法,该方法包括加密流程和解密流程两个步骤;

其中,加密流程具体包括以下步骤(如图1所示):

步骤A1、当用户通过点击进入加密界面后,初始化智能终端上的陀螺仪信息,若初始化成功,转入步骤A2;若初始化不成功,则显示传统的键盘输入界面或图形输入界面,供用户进行字符加密或图形加密操作。

步骤A2、将初始化成功后的陀螺仪信息显示到智能终端界面上,提示用户开始使用陀螺仪来生成加密数据;并随机生成一个与此次加密数据对应的停留时间,转入步骤A3。

可以理解的是,所述停留时间是指用户使用陀螺仪来生成加密数据时,需要停留的时间。在加密时,只有在等待所述停留时间之后,才读取陀螺仪数据并生成加密数据;在解密时,也只有在等待了所述停留时间之后,才读取陀螺仪数据进行解密操作。也就是说,该随机生成的停留时间能进一步提高加密数据的复杂度,能有效避免解密时的暴力破解,提高安全性。本实施例中,随机生成的停留时间的值为10秒以内,优选为2秒,能在满足时间要求的同时,也便于用户实际操作。

步骤A3、对智能终端陀螺仪进行监听,当监听到用户转动智能终端至期待位置并停止转动后,判断停止转动时间是否达到所述停留时间,若是,读取并记录下当前的陀螺仪数据,转入步骤A4;否则,返回步骤A3,继续监听。

实际操作时,为了有效保证陀螺仪数据的有效性,在步骤A3之后还包括陀螺仪数据验证操作:判断当前的陀螺仪数据是否达到加密数据的要求,若是,转入步骤A4;否则,返回至步骤A2,重新生成随机的停留时间和陀螺仪数据。其中,判断当前的陀螺仪数据是否达到加密数据的要求时,其判断依据为:当前的陀螺仪数据是否为智能终端陀螺仪的初始化数据(即当前用户拿智能终端正对的方向),若是,表明用户并没有设置非初始化的密码,则判定当前的陀螺仪数据未达到加密数据的要求;若否,表明用户设置了非初始化的密码,则判定当前的陀螺仪数据达到了加密数据的要求。

步骤A4、将当前的陀螺仪数据与预设的软件秘钥进行混合加密,生成MD5的字符串,将该字符串作为一个加密信息与所述停留时间一并保存下来,转入步骤A5。

步骤A5、判断是否还需生成加密信息,若是,返回步骤A2,继续提示用户生成另一个加密信息;若否,加密流程结束。

解密流程具体包括以下步骤(如图2所示):

步骤B1、当用户进入解密界面后,初始化智能终端上的陀螺仪信息,若初始化成功,转入步骤B2;若初始化不成功,则显示传统的键盘输入界面或图形输入界面,供用户进行字符解密或图形解密操作。

步骤B2、将初始化成功后的陀螺仪信息显示到智能终端界面上,提示用户开始使用陀螺仪来进行解密操作;并获取与此次解密操作对应的停留时间,转入步骤B3。

步骤B3、对智能终端陀螺仪进行监听,当监听到用户转动智能终端至期待位置并停止转动后,判断停止转动时间是否达到对应的所述停留时间,若是,读取并记录下当前的陀螺仪数据,转入步骤B4;否则,返回步骤B3,继续监听。

同样可以理解的是,为了有效保证解密时的陀螺仪数据的有效性,在步骤B3之后也还包括陀螺仪数据验证操作:判断当前的陀螺仪数据是否达到解密数据的要求,若是,转入步骤B4;否则,返回至步骤B2,重新获取对应的停留时间和陀螺仪数据。判断当前的陀螺仪数据是否达到解密数据的要求,其判断依据同加密数据的要求一致,此处不赘述。

步骤B4、将当前的陀螺仪数据与预设的软件秘钥进行混合组合,生成一个解密信息,转入步骤B5。

步骤B5、判断当前的解密信息是否与保存的对应加密信息一致,若是,提示用户解密成功,转入步骤B6;否则,提示用户解密失败,返回步骤B2,重新开始解密。

步骤B6、判断是否还需继续进行解密操作(即还有其他解密信息需要生成),若是,返回步骤B2,提示用户继续进行解密操作;若否,解密流程结束。

参见图3所示,本发明还提供了一种基于智能终端陀螺仪的加解密系统,包括加密模块和解密模块。具体来说,所述加密模块包括加密初始化子模块、加密预操作子模块、加密监听子模块、加密信息生成子模块和加密流程判断子模块。由于本实施例中,加密模块的上述子模块的功能是与加密流程操作一一对应的,因此,此处不赘述(具体可参见发明内容部分的相应内容)。另外,所述解密模块包括解密初始化子模块、解密预操作子模块、解密监听子模块、解密信息生成子模块、解密信息检验子模块和解密流程判断子模块。同样,由于本实施例中,解密模块的上述子模块的功能是与解密流程操作一一对应的,因此,此处也不赘述(具体可参见发明内容部分的相应内容)。

进一步地,实际操作时,为了有效保证加密的陀螺仪数据的有效性和解密的陀螺仪数据的有效性,因此,在加密模块的内部还增设有加密陀螺仪数据验证子模块;在解密模块的内部也增设有解密陀螺仪数据验证子模块。其中,所述加密陀螺仪数据验证子模块用于:判断加密监听子模块记录的当前陀螺仪数据是否达到加密数据的要求,若是,向加密信息生成子模块发送加密信息生成信号;否则,向加密预操作子模块发送加密预操作信号,重新生成随机的停留时间和陀螺仪数据。所述解密陀螺仪数据验证子模块用于:判断解密监听子模块记录的当前陀螺仪数据是否达到解密数据的要求,若是,向解密信息生成子模块发送解密信息生成信号;否则,向解密预操作子模块发送解密预操作信号,重新获取对应的停留时间和陀螺仪数据。

需要说明的是:上述实施例提供的基于智能终端陀螺仪的加解密系统在进行加解密时,仅以上述各功能模块的划分进行举例说明,实际应用中,可根据需要将上述功能分配由不同的功能模块完成,即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。

本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

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