认证方法、认证装置、移动设备及服务器与流程

文档序号:17954408发布日期:2019-06-19 00:20阅读:206来源:国知局
认证方法、认证装置、移动设备及服务器与流程

本申请涉及互联网数据处理技术领域,特别涉及身份认证方法,身份认证装置、移动设备和服务器。



背景技术:

在互联网的应用越来越广泛的今天,大部分用户都会采用互联网进行数据传输或者业务交流。为了防止信息被盗用保证互联网交易安全,目前一般会对进行数据传输或者业务交流的用户进行身份认证。

其中,短信认证码是当今互联网上远程身份认证较为普遍的方式。这种方式由服务器生成随机认证码,通过短信发送到用户预留的手机号对应的智能手机,用户再向服务器提交短信中包含的认证码以确认自己的身份。



技术实现要素:

但是发明人在研究过程中发现,短信认证码的方式虽然简单便捷,但是随着智能手机的普及,各种手机木马病毒也大肆传播,而拦截包含认证码的短信的木马是当下最流行的手机木马类型之一,而短信中的认证码被盗用,就使得互联网领域的数据传输或者数据处理等的安全性极低,进而也导致了用户体验非常不好。更有甚者,可能使得用户的网银、支付平台的财产被盗窃,给用户带来了很大的经济损失。

基于此,本申请提供了分别用于移动设备和服务器的身份认证方法,用以提高互联网数据传输或者数据处理过程中的安全性,进而提升用户在互联网进行数据处理的使用体验,进一步的,还可以避免用户遭受经济损失。

本申请还提供了认证装置、移动设备和服务器,用以保证上述方法在实际中的实现及应用。

为了解决上述问题,本申请公开了一种认证方法,该方法应用于移动设备的终端认证装置上,该方法包括:

响应于当前用户触发的认证请求,获取所述移动设备的认证参数,所述认证参数用于唯一标识认证参数在哪一个移动设备上触发;

将所述认证参数发送至服务器,以便服务器根据所述认证参数生成加密的认证码;

响应于服务器返回的所述加密的认证码,对所述当前用户的身份进行认证。

本申请还公开了另一种认证方法,该方法应用于服务器的对端认证装置上,该方法包括:

接收移动设备响应于用户发送的认证请求而发送的认证参数,所述认证参数用于唯一标识认证参数在哪一个移动设备上触发;

利用所述认证参数生成加密后的认证码,将所述加密后的认证码发送给所述移动设备;

响应于所述移动设备返回的解密后的认证码,对所述移动设备进行认证。

本申请还公开了一种认证装置,该装置集成于移动设备的终端认证装置上,该装置包括:

获取模块,配置用于响应于当前用户触发的认证请求,获取所述移动设备的认证参数,所述认证参数用于唯一标识认证参数在哪一个移动设备上触发;

发送认证参数模块,配置用于将所述认证参数发送至服务器,以便服务器根据所述认证参数生成加密的认证码;

第一认证模块,配置用于响应于服务器返回的所述加密的认证码,对所述当前用户的身份进行认证。

本申请还公开了另一种认证装置,该装置集成于服务器上,该对端认证装置包括:

接收认证参数模块,配置用于接收移动设备响应于用户发送的认证请求而发送的认证参数,所述认证参数用于唯一标识认证参数在哪一个移动设备上触发;

生成认证码模块,配置用于利用所述认证参数生成加密后的认证码,

发送认证码模块,配置用于将所述加密后的认证码发送给所述移动设备;

第二认证模块,配置用于响应于所述移动设备返回的解密后的认证码,对所述移动设备进行认证。

与现有技术相比,本申请包括以下优点:

在本申请实施例中,由于终端认证装置发送给服务器的认证参数可以用于加密,而该特征参数又可以唯一标识一个认证参数在哪一个移动设备上触发,所以在进行身份认证的时候,只有被触发认证参数的那个移动设备才能通过服务器的认证。可见,采用本实施例的方法,即便认证码被其他用户所盗用,那么因为其他用户使用了其他移动设备,而不是与认证参数对应的那个移动设备,也不可能通过身份认证,因此,就增加了互联网数据处理的安全性,进而也能更好的提升用户认证体验。当然,在实际应用中,并不需求每次认证请求时都由移动设备提交特征值和随机数,服务器可以使用事先保存的特征值和随机数进行认证码加密。

进一步的,还有可能使用户避免巨大的经济损失,保证用户的财产利益。

当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。

附图说明

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

图1是本申请的认证方法实施例1的流程图;

图2是本申请的认证方法实施例2的流程图;

图3是本申请的认证方法实施例3的流程图;

图4是本申请的认证方法实施例4的流程图;

图5是本申请的终端认证装置实施例的结构框图;

图6是本申请的对端认证装置实施例的结构框图;

图7和图8分别是本申请的移动设备和服务器的交互示意图。

具体实施方式

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

本申请可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。

本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

参考图1,示出了本申请一种认证方法实施例1的流程图,该方法实施例应用于移动设备上安装的终端认证装置上,则本实施例可以包括以下步骤:

步骤101:响应于当前用户触发的认证请求,获取所述移动设备的认证参数,所述认证参数用于唯一标识所述认证参数在哪一个移动设备上触发。

在移动设备上,用户已经预先安装了认证装置,例如,可以是带认证功能的手机银行APP等。假设用户打开该手机银行APP,需要给另外一个用户进行转账业务,该用户就可以在手机银行APP提供的界面上输入转账金额和转账对象,进而触发认证请求。其中,触发认证请求的方式可以有多种,例如,可以通过手机银行APP提供的按钮触发,也可以通过手机银行APP提供的快捷链接触发,等等。

认证装置在用户触发认证请求之后,首先获取该其所集成的移动设备的认证参数,在本实施例中,认证参数可以是移动设备的特征值,也可以是移动设备的随机数发生器生成的一个随机数,或者,同时包含特征值和随机数。此外,认证参数也可以采用特征值和非对称密钥对来表示。其中,认证参数主要用于唯一标识一个认证请求是在哪一个移动设备上触发的,后续还可以在发送给服务器之后由服务器参考认证参数来进行加密。

在本申请实施例中,特征值可以是移动设备的wifi网卡地址、国际移动设备标识IMEI,移动设备的硬件出场序列号,或者,认证装置在所述移动设备上的安装时间,等等。当然,也可以将这几种任意结合起来作为移动设备的特征值,只要结合之后的特征值也能够唯一标识一个移动设备即可。

步骤102:将所述认证参数发送至服务器,以便服务器根据所述认证参数生成加密的认证码。

终端认证装置在获取到认证参数之后,将认证参数发送给服务器,则服务器可以在生成本次认证的认证码之后,参考认证参数给该认证码加密。

步骤103:响应于服务器返回的所述加密的认证码,对所述当前用户的身份进行认证。

服务器再将加密的认证码发送给移动设备,以在移动设备上实现对触发认证请求的当前用户的身份认证。

可见,在本申请实施例中,由于终端认证装置发送给服务器的认证参数可以用于加密,而该特征参数又可以唯一标识一个认证参数在哪一个移动设备上触发,所以在进行身份认证的时候,只有被触发认证参数的那个移动设备才能通过服务器的认证。可见,采用本实施例的方法,即便认证码被其他用户所盗用,那么因为其他用户使用了其他移动设备,而不是与认证参数对应的那个移动设备,也不可能通过身份认证,因此,就增加了互联网数据处理的安全性,进而也能更好的提升用户认证体验。

参考图2,示出了本申请一种行为特征数据的采集方法实施例2的流程图,本实施例可以应用于移动设备上安装的终端认证装置,本实施例可以包括以下步骤:

步骤201:响应于当前用户触发的认证请求,获取所述移动设备的特征值,所述特征值为以下任意一种或多种的组合:移动设备的wifi网卡地址、国际移动设备标识IMEI、移动设备的硬件出场序列号,和所述认证装置在所述移动设备上的安装时间。

本步骤的具体实施过程可以参考步骤101,在此不再赘述。

步骤202:触发随机数发生器生成随机数。

在本步骤中,采用特征值和随机数结合进行认证的方式为例进行说明。那么,获取到特征值之后,可以再触发移动设备中的随机数发生器来生成一个随机数,将特征值和随机数都作为认证参数。其中,生成随机数的方式不定,随机数的长度和数值也不定。

步骤203:将所述认证参数发送至服务器,以便服务器根据所述认证参数生成加密的认证码。

接着移动设备将认证参数,即随机数和特征值发送给服务器,由服务器根据随机数和特征值来生成加密的认证码。服务器可以首先针对本次认证提交的认证请求随机生成一个认证码,例如,可以是六位数字的随机组合“587163”等等,接着服务器利用移动设备发送来的特征值和随机数作为加密密钥来对该认证码进行加密,从而得到加密的认证码。其中,特征值和随机数可以进行相加,并将相加结果取hash,再将hash结果作为加密密钥。当然,也可以采用其他任意的组合方式来生成加密密钥。此外,加密算法可以采用对称算法DES(Data Encryption Standard,数据加密标准),或者3DES或者IDEA(International Data Encryption Algorithm,国际数据加密算法)等等。

步骤204:响应于服务器返回的所述加密的认证码,依据所述特征值和随机数对所述加密的认证码进行解密。

服务器在生成加密的认证码之后再返回给移动设备,而移动设备上的终端认证装置再根据自己获取到的特征值和生成的随机数,作为解密密钥来对该加密的认证码进行解密。其中解密方法和服务器端的加密方法一致即可。

步骤205:将解密后的认证码发送至所述服务器进行认证。

终端认证装置解密之后得到未加密的认证码,终端认证装置再将解密后的认证码发送给服务器进行认证,服务器来判断接收到的认证码和自己生成的原始认证码是否一致,一致则对该移动设备认证通过,不一致则不通过该移动设备的认证。

在本实施例中,由于终端认证装置发送给服务器的认证参数中包括了特征值和随机数,而该特征值和随机数可以用于唯一标识一个认证参数在哪一个移动设备上触发,所以在进行身份认证的时候,只有被触发认证参数的那个移动设备才能通过认证。可见,采用本实施例的方法,即便认证码被其他用户所盗用,那么因为其他用户使用了其他移动设备,而不是与认证参数对应的那个移动设备,也不可能通过身份认证,因此,就增加了互联网数据处理的安全性,进而也能更好的提升用户认证体验。

参考图3所示,示出了本申请一种方法实施例3的流程图,该方法实施例应用于移动设备上安装的终端认证装置上,本实施例可以包括以下步骤:

步骤301:响应于当前用户触发的认证请求,获取所述移动设备的特征值,所述特征值为以下任意一种或多种的组合:移动设备的wifi网卡地址、国际移动设备标识IMEI、移动设备的硬件出场序列号和所述认证装置在所述移动设备上的安装时间。

本步骤的实施过程可以参考步骤101,在此不再赘述。

步骤302:采用非对称加密算法生成一对非对称密钥,所述非对称密钥包括公有密钥和私有密钥,并将所述公有密钥确定为加密参数。

在本实施例中,与前一个实施例的不同之处在于,采用特征值和加密参数作为认证参数的方式。在本步骤中,可以采用非对称加密算法生成一对非对称密钥,移动设备再将其中的公有密钥确定为加密参数。其中,非对称算法需要两个密钥:公有密钥(publickey)和私有密钥(privatekey)。公有密钥与私有密钥是一对,如果用公有密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公有密钥才能解密。

步骤303:将所述硬件特征值作为加密密钥,对未发送给服务器的私有密钥进行加密保存。

本实施例与前两个实施例的不同之处在于,移动设备还需要将硬件特征值作为加密密钥,来对非对称密钥中的私有密钥进行加密保存。

步骤304:将所述认证参数发送至服务器,以便服务器根据所述认证参数生成加密的认证码。

移动设备再将认证参数中的公有密钥发送给服务器,以便服务器根据公有密钥来生成加密的认证码。当然,移动设备也可以将特征值和共有密钥同时发送服务器。本步骤和步骤303的顺序可以互换,本步骤具体实现可以参考步骤203的介绍,在此不再赘述。

步骤305:响应于服务器返回的所述加密的认证码,对所述当前用户的身份进行认证。

移动设备在接收到服务器返回的加密的认证码之后,实现对当前用户的身份认证。具体的,本实施例中本步骤的实现可以包括:

步骤A1:利用所述硬件特征值对保存的、加密后的私有密钥进行解密;

首先,终端认证装置在接收到服务器返回的加密的认证码时,利用获取到的硬件特征值来对自己保存的、加密的私有密钥进行解密,从而获得未加密的私有密钥。

步骤A2:将解密后的私有密钥作为解密密钥,对所述加密的认证码进行解密;

接着将未加密的私有密钥作为加密密钥,解密服务器返回的加密的认证码,从而得到未加密的认证码。

步骤A3:将解密后的认证码发送给服务器进行认证。

接着终端认证装置再将解密后的认证码发送给服务器,服务器判断接收到的认证码和自己原始生成的认证码是否一致,如果一致,则对终端认证装置所在的移动设备的认证通过,反之,则不通过。

在本实施例中,由于终端认证装置发送给服务器的认证参数中包括了特征值和公有密钥,而该特征值可以用于唯一标识一个移动设备,认证参数可以唯一标识一个其在哪一个移动设备上触发,所以在进行身份认证的时候,只有被触发认证参数的那个移动设备才能通过认证。可见,采用本实施例的方法,即便认证码被其他用户所盗用,那么因为其他用户使用了其他移动设备,而不是与认证参数对应的那个移动设备,也不可能通过身份认证,因此,就增加了互联网数据处理的安全性,进而也能更好的提升用户认证体验。

参考图4所示,示出了本申请一种方法实施例4的流程图,该方法实施例应用于该方法应用于服务器的对端认证装置上,本实施例可以包括以下步骤:

步骤401:接收移动设备响应于用户发送的认证请求而发送的认证参数,所述认证参数包括:特征值和加密参数,所述特征值用于唯一标识认证参数在哪一个移动设备上触发。

本实施例与前三个实施例的不同之处在于,执行主体为与移动设备交互的服务器。首先,在移动设备响应于当前用户触发的认证请求,获取到移动设备的认证参数之后,将其发送给服务器。其中,认证参数包括特征值和加密参数,特征值用于唯一标识认证参数在哪一个移动设备上触发。具体的获取过程可以参考前三个实施例的对应内容,在此不再赘述。

步骤402:利用所述认证参数生成加密后的认证码。

服务器利用移动设备发送来的认证参数来生成加密后的认证码。在本步骤中,根据移动设备发送的认证参数的不同而存在不同的实施方式。

在加密参数为随机数发生器生成的随机数的情况下,本步骤具体可以包括:

步骤B1:依据所述移动设备发送的认证请求生成本次认证的认证码;

首先,针对移动设备发送来的认证请求,服务器生成本次认证的认证码。该认证码可以是六位随机数字,例如258476等等。

步骤B2:将所述硬件特征值和随机数作为加密密钥,对所述认证码进行加密。

接着服务器将移动终端发送来的硬件特征值和随机数作为加密密钥,来对不住B1中生成的认证码进行加密。在实际应用中,移动设备如果仅发送硬件特征值或者随机数,也可以仅采用硬件特征值或随机数进行加密。

另外,在加密参数为移动设备发送的公有密钥的情况下,本步骤具体可以包括:

步骤C1:依据所述移动设备发送的认证请求生成本次认证的认证码;

首先,在移动设备生成了一对非对称密钥并将其中的公有密钥发送给服务器的情况下,服务器依然先针对移动设备发送的本次认证请求,来随机生成本次认证的认证码。

步骤C2:利用所述公有密钥对所述认证码进行加密。

接着服务器可以利用移动设备发送的公有密钥来对该认证码进行加密。

步骤403:将所述加密后的认证码发送给所述移动设备。

接着将加密后的认证码发送给移动设备,以便移动设备解密该加密后的认证码,获得未加密的认证码。移动设备的解密步骤可以参考步骤305的介绍,在此不再赘述。

步骤404:响应于所述移动设备返回的解密后的认证码,对所述移动设备进行认证。

服务器在接收到移动设备返回的解密后的认证码之后,对该移动设备进行认证,具体本步骤可以包括:判断所述移动设备返回的解密后的认证码,与服务器生成的认证码是否一致,如果一致则认证通过,如果不一致则认证不通过。

在实际应用中,针对同一个移动设备,在第一次接收到移动设备发送的认证参数之后,在步骤404之后,还可以包括:

步骤405:将所述移动设备发送的认证参数进行保存。

服务器还可以将该移动设备发送的认证参数进行保存,例如将移动设备获取到的特征值和随机数对应进行保存,那么该移动设备就不需要每一次认证的时候都需要发送认证参数了。这样就节省了移动设备和服务器之间的交互次数,节约了交互资源。

对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

与上述本申请认证方法实施例所提供的方法相对应,参见图5,本申请还提供了一种认证装置实施例,在本实施例中,该装置可以集成于移动设备上,该装置可以包括:

获取模块501,配置用于响应于当前用户触发的认证请求,获取所述移动设备的认证参数,所述认证参数包括:特征值和加密参数,所述特征值用于唯一标识认证参数在哪一个移动设备上触发。

发送认证参数模块502,配置用于将所述认证参数发送至服务器,以便服务器根据所述认证参数生成加密的认证码。

第一认证模块503,配置用于响应于服务器返回的所述加密的认证码,对所述当前用户的身份进行认证。

其中,在不同的实施例中,所述获取模块501具体可以包括:

提取特征值子模块,配置用于获取所述移动设备的特征值,所述特征值为以下任意一种或多种的组合:移动设备的wifi网卡地址、国际移动设备标识IMEI、移动设备的硬件出场序列号和所述认证装置在所述移动设备上的安装时间;和,触发子模块,配置用于触发所述移动设备上的随机数发生器生成随机数作为所述加密参数。

对应的,所述第一认证模块503具体可以包括:

第一解密子模块,配置用于依据所述特征值和随机数对所述加密的认证码进行解密;和,第一发送子模块,配置用于将解密后的认证码发送至所述服务器进行认证。

其中,在不同的实施例中,所述获取模块501具体可以包括:

提取特征值子模块,配置用于获取所述移动设备的特征值,所述特征值为以下任意一种或多种的组合:移动设备的wifi网卡地址、国际移动设备标识IMEI、移动设备的硬件出厂序列号和所述认证装置在所述移动设备上的安装时间;和,生成密钥子模块,配置用于采用非对称加密算法生成一对非对称密钥,所述非对称密钥包括公有密钥和私有密钥,并将所述公有密钥确定为加密参数。

对应的,该装置还可以包括:

密钥保存模块,配置用于将所述硬件特征值作为加密密钥,对未发送给服务器的私有密钥进行加密保存。

对应的,所述第一认证模块503具体可以包括:

第二解密子模块,配置用于利用所述硬件特征值对保存的、加密后的私有密钥进行解密;第三解密子模块,配置用于将解密后的私有密钥作为解密密钥,对所述加密的认证码进行解密;和,第二发送子模块,配置用于将解密后的认证码发送给服务器进行认证。

相应的,本申请还公开了一种移动设备实施例,该移动设备上安装了图5所示的终端认证装置。

参考图6所示,与上述本申请认证方法实施例所提供的方法相对应,本申请还提供了一种对端认证装置实施例,在本实施例中,该装置可以集成于服务器上,该装置可以包括:

接收认证参数模块601,配置用于接收移动设备响应于用户发送的认证请求而发送的认证参数,所述认证参数包括:特征值和加密参数,所述特征值用于唯一标识认证参数在哪一个移动设备上触发。

生成认证码模块602,配置用于利用所述认证参数生成加密后的认证码。

发送认证码模块603,配置用于将所述加密后的认证码发送给所述移动设备。

第二认证模块604,配置用于响应于所述移动设备返回的解密后的认证码,对所述移动设备进行认证。

在不同的实施例中,所述生成认证码模块602具体可以包括:

第一生成子模块,配置用于依据所述移动设备发送的认证请求生成本次认证的认证码;和,第一加密子模块,配置用于将所述硬件特征值和随机数作为加密密钥,对所述认证码进行加密。

在不同的实施例中,所述生成认证码模块602具体可以包括:

第二生成子模块,配置用于依据所述移动设备发送的认证请求生成本次认证的认证码;和,第二加密子模块,配置用于利用所述公有密钥对所述认证码进行加密。

在不同的实施例中,第二认证模块604具体可以包括:

判断子模块,配置用于判断所述移动设备返回的解密后的认证码,与生成的认证码是否一致。

在不同的实施例中,该装置还可以包括:

保存认证参数模块605,配置用于将所述移动设备发送的认证参数进行保存。

相应的,本申请还公开了一种服务器实施例,该服务器上安装了图6所示的对端认证装置。

参考图7所示,为本申请的移动设备701和服务器702进行交互时的一框架图。为了方便起见,在图7中,第一解密子模块、第二解密子模块和第三解密子模块统一采用解密子模块示意,第一发送子模块和第二发送子模块统一采用发送子模块示意。此外,参考图8所示,为本申请的移动设备701和服务器702进行交互时的另一框架图。为了方便起见,在图8中,第一生成子模块和第二生成子模块采用生成子模块示意,第一加密子模块和第二加密子模块采用加密子模块示意。当然,图7和图8中的移动设备和服务器仅仅是示例,本领域技术人员可以根据自己的需求参考图7和图8改变移动设备和服务器的组成和连接关系。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本申请所提供的认证方法、认证装置、移动设备和服务器进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

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