一种授权方法、装置和系统与流程

文档序号:16985517发布日期:2019-03-02 00:35阅读:142来源:国知局
一种授权方法、装置和系统与流程

本发明涉及物联网和智能家居安防技术领域,特别是涉及一种授权方法、装置和系统。



背景技术:

随着科学社会的飞速发展,指纹识别技术越来越成熟,在日常生活中的应用越来越广泛,特别是在智能门锁方面,将用户独一无二的指纹信息,设置为智能门锁的密码,只有用户验证个人的指纹,才能将门锁开启。

但是当需要租房或是买房时,用户需要打开多个房门进行看房,临时来访的用户无法提前对各个将要查看的房间录入指纹,若将各个房间门锁密码告知租户不仅不安全,在用户看房后还需要将密码进行更改,即使是将租户的个人指纹录入了各个门锁,但也不能安全的保证用户的个人指纹信息的泄露问题。因此需要一种对用户指纹解锁的安全授权方法。



技术实现要素:

有鉴于此,本发明所要解决的技术问题提供一种授权方法,能够保证在用户的需求下,对用户的指纹信息进行加密,实现对加密的指纹信息进行远程分发,防止指纹信息在传输过程中被非法截取。

本发明还提供了一种授权装置,用以保证上述方法在实际中的实现及应用。

一种授权方法,所述方法应用于控制终端,所述方法包括:

确定待开启的各个目标门锁,并获取用户的指纹信息;

建立与各个所述目标门锁之间的安全传输通道,并依据所述安全传输通道分别与每个所述目标门锁进行安全认证,生成与每个所述目标门锁进行数据传输的会话密钥;

依据每个所述会话密钥对所述指纹信息进行加密,并将经过加密的所述指纹信息,发送至该会话密钥对应的目标门锁,以在目标门锁对经过加密的指纹信息进行解密后,授予用户对所述目标门锁的开启权限。

上述的方法,优选的,所述建立与各个所述目标门锁之间的安全传输通道,包括:

向已建立的云平台发送身份认证请求,触发所述云平台与所述控制终端进行双向身份认证,并触发所述云平台分别与各个所述目标门锁进行双向身份认证;

当所述云平台与所述控制终端的双向身份认证通过,且所述云平台与各个所述目标门锁的双向身份认证通过时,建立所述控制终端经由所述云平台,与各个所述目标门锁之间进行数据传输的安全传输通道。

上述的方法,优选的,所述与目标门锁进行安全认证,包括:

调用所述云平台中预存储的门锁公私钥对中的门锁公钥,并依据所述门锁公钥对已生成的终端随机数进行加密;

向所述目标门锁发送算法确认请求及已加密的所述终端随机数,并接收所述目标门锁反馈的与所述算法确认请求对应的已加密的门锁随机数;

依据所述门锁公钥对已生成的共享主密钥进行加密,并依据所述终端随机数和解密获得的门锁随机数生成摘要随机数;

调用预设的摘要算法,对所述摘要随机数进行摘要运算,获得第一摘要值;

应用预先生成的终端公私钥对中的终端私钥,对所述第一摘要值进行签名运算,获得签名值;

将所述签名值及加密的共享主密钥发送至所述目标门锁进行验证;

当接收到所述目标门锁反馈的响应验证成功的门锁认证消息时,对所述门锁认证消息进行认证,当认证通过时,生成与所述门锁认证消息对应的终端认证消息,并将所述终端认证消息发送至所述目标门锁进行认证;

当接收到所述目标门锁发送的认证通过消息时,实现与所述目标门锁的安全认证。

上述的方法,优选的,所述对门锁认证消息进行认证,包括:

依据所述终端随机数、门锁随机数、签名值和加密的共享主密钥进行连接,获得第一连接值;

调用所述预设的摘要算法,对所述第一连接值进行摘要运算,获得第二摘要值;

将所述第二摘要值与预先设定的门锁ascii码进行连接,获得第二连接值;

调用预设的哈希算法,将所述第二连接值与所述共享主密钥进行哈希运算,获得第一认证消息;

将所述第一认证消息与所述门锁认证消息进行比对,当比对一致时,通过对所述门锁认证消息的认证。

上述的方法,优选的,所述生成与每个所述目标门锁进行数据传输的会话密钥,包括:

调用预设的哈希算法,对所述共享主密钥、终端随机数、门锁随机数及预先设定的密钥ascii码进行哈希运算,获得所述会话密钥。

一种授权装置,包括:

第一获取单元,用于确定待开启的各个目标门锁,并获取用户的指纹信息;

认证单元,用于建立与各个所述目标门锁之间的安全传输通道,并依据所述安全传输通道分别与每个所述目标门锁进行安全认证,生成与每个所述目标门锁进行数据传输的会话密钥;

授权单元,用于依据每个所述会话密钥对所述指纹信息进行加密,并将经过加密的所述指纹信息,发送至该会话密钥对应的目标门锁,以在目标门锁对经过加密的指纹信息进行解密后,授予用户对所述目标门锁的开启权限。

一种授权方法,所述方法应用于门锁,所述方法包括:

当接收到用户对目标门锁的开启指令时,获取所述开启指令中包含的用户的指纹信息;

将所述指纹信息与预先解密获得的授权指纹信息进行比对;

当比对一致时,开启所述目标门锁;

其中:所述授权指纹信息的获取过程,包括:

当接收到已通过安全认证的控制终端,经由已建立的云平台发送的经过加密的用户指纹信息时,根据安全认证过程中生成的会话密钥,对所述经过加密的用户指纹信息进行解密,以获得所述授权指纹信息。

上述的方法,优选的,所述安全认证的过程,包括:

当接收到所述控制终端发送的算法确认请求及已加密的终端随机数时,对所述控制终端中包含的算法进行确认;

当确认通过时,调用所述云平台中预存储的终端公私钥对中的终端公钥,对已生成的门锁随机数进行加密,并将已加密的门锁随机数发送至所述控制终端;

接收所述控制终端发送的签名值及经过加密的共享主密钥;

依据所述终端公钥对所述签名值进行验证,当验证通过时,对所述经过加密的共享主密钥进行解密,获得所述共享主密钥,并生成门锁认证消息;

将所述门锁认证消息发送至所述控制终端进行认证;

当接收到所述控制终端反馈的与所述门锁认证消息对应的终端认证消息时,对所述终端认证消息进行认证,当认证通过时,实现与所述控制终端的安全认证。

上述的方法,优选的,所述对终端认证消息进行认证,包括:

依据所述终端随机数、门锁随机数、签名值和加密的共享主密钥进行连接,获得第一连接值;

调用所述预设的摘要算法,对所述第一连接值进行摘要运算,获得第二摘要值;

将所述第二摘要值与预先设定的门锁ascii码进行连接,获得第三连接值;

调用预设的哈希算法,将所述第三连接值与所述共享主密钥进行哈希运算,获得第二认证消息;

将所述第二认证消息与所述终端认证消息进行比对,当比对一致时,通过对所述终端认证消息的认证。

一种授权装置,包括:

第二获取单元,用于当接收到用户对目标门锁的开启指令时,获取所述开启指令中包含的用户的指纹信息;

比对单元,用于将所述指纹信息与预先解密获得的授权指纹信息进行比对;

开启单元,用于当比对一致时,开启所述目标门锁。

一种授权系统,包括:

指纹管理终端、云平台和至少一个门锁;

所述指纹管理终端中包括:

第一采集模块,用于采集用户指纹;

第一指纹检测控制模块,用于将采集的用户指纹转换为指纹信息;

终端芯片,用于在接收到第一指纹检测控制模块发送的指纹信息时,执行如权利要求1~5任意一项所述的授权方法;

所述门锁包括:

第二采集模块,用于采集用户指纹;

第二指纹检测控制模块,用于将采集的用户指纹转换为指纹信息;

门锁芯片,用于执行如权利要求7~9任意一项所述的授权方法;

所述云平台,用于当接收到所述指纹管理终端发送的身份认证请求时,与所述指纹管理终端进行双向身份认证,并同时与各个门锁进行双向身份认证;并在所述指纹管理终端与各个所述门锁进行安全认证时,分发和中转安全认证过程中的数据及信息;并在安全认证通过后,接收通过所述指纹管理终端加密的指纹信息,将所述已加密的指纹信息分发至各个所述门锁。

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

本发明提供了一种授权方法,在获取到用户的指纹信息后,建立与各个所述目标门锁之间的安全传输通道,并依据所述安全传输通道分别与每个所述目标门锁进行安全认证,生成与每个所述目标门锁进行数据传输的会话密钥,将每个所述会话密钥对指纹信息加密,并将经过加密的指纹信息发送给该会话密钥对应的目标门锁,目标门锁接收到加密的指纹信息后,对所述加密的指纹信息进行解密,授予用户开启所述目标门锁的权限。应用本发明实施例提供的授权方法,可以保证用户的指纹信息在传输到各个目标门锁的过程中,用户指纹信息的安全性和保密性,使其他窃取软件或装置无法解析加密的指纹信息,保证了用户的个人信息的安全。

附图说明

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

图1为本发明提供的一种授权方法的方法流程图;

图2为本发明提供的一种授权方法的一示例图;

图3为本发明提供的一种授权方法的又一示例图;

图4为本发明提供的一种授权方法的又一示例图;

图5为本发明提供的一种授权方法的又一示例图;

图6为本发明提供的一种授权装置的结构示意图;

图7为本发明提供的一种授权方法的又一方法流程图;

图8为本发明提供的一种授权方法的又一示例图;

图9为本发明提供的一种授权装置的又一结构示意图;

图10为本发明提供的一种授权系统的结构示意图;

图11为本发明提供的一种授权系统的一示例图;

具体实施方式

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

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

本发明可用于众多需要对数据信息进行加密或解密的设备或配置中。例如:指纹智能门锁、声控门锁、掌纹门锁等,包括以上任何装置或设备,需要对个人的身份数据信息进行加密传输的环境和设备等等。

本发明实施例提供了一种授权方法,该方法可以应用在多种智能门锁中,执行主体为控制终端,所述控制终端为指纹管理终端,所述指纹管理终端可以为手机,pc,或者任意的移动终端,所述方法的方法流程图如图1所述,具体包括:

s101:确定待开启的各个目标门锁,并获取用户的指纹信息;

本发明实施例提供的方法中,在控制终端上确定用户需要开启的目标门锁的信息,并录入用户的指纹,根据所述用户的指纹获取所述用户的指纹信息进行保存。

需说明的是,所述控制终端实际为指纹管理终端,所述控制终端可以为手机、pc或是任意的移动终端等;所述目标门锁为至少一个智能门锁,所述用户可选择待开启的目标门锁数量。

s102:建立与各个所述目标门锁之间的安全传输通道,并依据所述安全传输通道分别与每个所述目标门锁进行安全认证,生成与每个所述目标门锁进行数据传输的会话密钥;

本发明实施例提供的方法中,当获取到用户的指纹信息后,由控制终端触发建立与每一个目标门锁之间的安全传输通道,并通过所述安全传输通道对每个所述目标门锁的进行安全认证,所述安全认证通过后,生成与每个所述目标门锁进行数据传输的会话密钥。

s103:依据每个所述会话密钥对所述指纹信息进行加密,并将经过加密的所述指纹信息,发送至该会话密钥对应的目标门锁,以在目标门锁对经过加密的指纹信息进行解密后,授予用户对所述目标门锁的开启权限。

本发明实施例提供的方法中,当所述控制终端确定好与每个目标门锁之间的传输数据信息会话密钥之后,控制终端利用所述会话密钥对指纹信息进行加密,并将经过加密的指纹信息,根据预先确定待开启目标门锁的信息,发送给与会话密钥对应的目标门锁中,当目标门锁对所述加密的指纹信息解密后,授予用户开启所述目标门锁的权限。

本发明实施例提供的方法中,在控制终端中确定用户需要开启的各个目标门锁之后,并获取所述用户的指纹信息,根据所述用户的指纹信息,触发与所述目标门锁进行建立安全传输通道,再根据所述安全传输通道与每个所述目标门锁进行安全认证,根据安全认证过程中的安全认证消息,建立与每个所述目标门锁的安全连接通道,在完成安全认证之后,生成与每个门锁进行数据传输的会话密钥。根据所述会话密钥,对所述用户的指纹信息进行加密,将已加密的指纹信息,对应的发送至与该会话密钥对应的目标门锁当中;再根据目标门锁对已加密的指纹信息进行解密后,授予用户对所述目标门锁的开启权限。应用本发明提供的授权方法,可以根据控制终端与目标门锁在进行安全认证后,生成会话密钥对所述指纹信息进行加密,再通过根据安全认证建立的安全连接通道,由控制终端向目标门锁发送已加密的指纹信息,保证了用户指纹信息在传输过程中的安全性和保密性。

需说明的是,安全传输通道是所述控制终端与云平台通过了双向身份认证,以及所述云平台与所述目标门锁通过了双向身份认证所建立的,并根据已建立的安全传输通道,所述控制终端通过所述云平台,与所述目标门锁进行安全认证。

本发明实施例提供的授权方法中,与目标门锁进行安全认证包括以下步骤,如图2所示,具体包括:

s201:调用所述云平台中预存储的门锁公私钥对中的门锁公钥,并依据所述门锁公钥对已生成的终端随机数进行加密;

本发明实施例提供的方法中,在建立与各个目标门锁之间的安全传输通道后,控制终端调用云平台中预先存储的门锁公私钥对中的门锁公钥,对控制终端原先已经生成的终端随机数进行加密。

需说明的是,所述云平台中预先存储的门锁公私钥对中的门锁公钥,是所述目标门锁预先存放于所述云平台中的;在控制终端通过所述云平台,与各个目标门锁之间建立安全传输通道后,由各个所述目标门锁产生门锁公私钥对,并将门锁公私钥对中的门锁公钥存放在云平台当中;所述门锁公私钥对由所述目标门锁内的门锁安全芯片根据预设的非对称算法生成,其中包括门锁公钥和门锁私钥,门锁私钥自生成后,只能存放于门锁安全芯片中,不能导出。所述控制终端内的终端安全芯片,也根据终端内预设的非对称算法产生终端公私钥对,包括了终端公钥和终端私钥,其中,所述终端私钥自生成后,只能存放于控制终端安全芯片中;所述非对称算法可设置为rsa1024/2048、sm2等算法。

本流程中以预先设定唯一一种非对称算法预先产生公私钥对为例进行描述,实际应用中门锁和控制终端可以用不同的非对称算法产生对应的多个公私钥对,将产生的多个公钥传输到平台上存储,并在终端调用云平台中预先存储的门锁公钥时,指定调用对应算法的公钥。

s202:向所述目标门锁发送算法确认请求及已加密的所述终端随机数,并接收所述目标门锁反馈的与所述算法确认请求对应的已加密的门锁随机数;

本发明实施例提供的方法中,当控制终端获取到用户的指纹信息,并在对终端随机数进行加密后,确定控制终端内的预先设定的各个算法,向各个所述目标门锁发送算法确定请求及已加密的终端随机数,之后再接收所述目标门锁反馈的已加密的门锁随机数。

需说明的是,所述算法确认请求为所述控制终端中预设算法的标识信息,所述目标门锁在接收到预设算法的标识信息后,判断是否支持所述控制终端中预先设定的算法,若支持则且存在与所述控制终端预先设定的算法一致的门锁预设的算法,则确认所述算法确认请求。所述已加密的门锁随机数是所述目标门锁在产生门锁随机数后,调用云平台中预先存储的终端公私钥对中的终端公钥,对所述门锁随机数进行加密获得。

s203:依据所述门锁公钥对已生成的共享主密钥进行加密,并依据所述终端随机数和解密获得的门锁随机数生成摘要随机数;

本发明实施例提供的方法中,所述控制终端经过云平台获得的门锁公钥,对所述控制终端中已经生成的共享主密钥进行加密,同时根据所述终端随机数和已经进行解密的门锁随机数,生成摘要随机数。

需说明的是,所述摘要随机数由所述终端随机数和门锁随机数生成,所述控制终端在接收所述目标门锁反馈的所述已加密的门锁随机数后,利用控制终端预先生成的终端私钥对已加密的门锁随机数进行解密,获得门锁随机数;同时随机生成16字节的随机数,并将所述16字节的随机数设置成共享主密钥。其中,对所述控制终端中预先设定的共享主密钥进行加密的过程,是通过利用门锁公钥,并调用预设的非对称算法,对所述共享主密钥进行加密。

s204:调用预设的摘要算法,对所述摘要随机数进行摘要运算,获得第一摘要值;

本发明实施例提供的方法中,在生成摘要随机数之后,调用预设的摘要算法,通过摘要运算对所述摘要随机数进行计算,获得第一摘要值。

需说明的是,所述摘要算法为哈希算法的一种,所述哈希算法为控制终端预设的算法,其中哈希算法还可设置为sha1/256/384/512、sm3等算法。

s205:应用预先生成的终端公私钥对中的终端私钥,对所述第一摘要值进行签名运算,获得签名值;

本发明实施例提供的方法中,在获取第一摘要值后,控制终端利用所述终端公私钥对中的终端私钥对所述第一摘要值进行签名运算,获得签名值。

需说明的是,所述签名运算的签名算法为控制终端预设的算法,所述签名值是通过签名算法以及终端私钥,对所述第一摘要值进行的签名加密获得的签名值;所述终端公私钥对由所述控制终端根据预设的非对称算法生成,其中包括终端公钥和终端私钥;所述非对称算法可设置为rsa1024/2048、sm2等算法。

s206:将所述签名值及加密的共享主密钥发送至所述目标门锁进行验证;

本发明实施例提供的方法中,控制终端将签名值以及已经加密的共享主密钥发送至所述目标门锁,让所述目标门锁对所述签名值进行验证。

s207:当接收到所述目标门锁反馈的响应验证成功的门锁认证消息时,对所述门锁认证消息进行认证,当认证通过时,生成与所述门锁认证消息对应的终端认证消息,并将所述终端认证消息发送至所述目标门锁进行认证;

本发明实施例提供的方法中,在接收到目标门锁反馈的响应验证成功的门锁认证消息时,控制终端对所述目标门锁认证消息进行认证,当控制终端认证门锁认证消息的生成过程,与根据预设的安全认证消息算法生成门锁认证消息的过程一致时,则认证通过,同时运用预设的安全认证消息算法,生成与所述门锁认证消息对应的终端认证消息,并将所述终端认证消息发送至所述门锁进行认证。

需说明的是,所述终端认证消息的生成过程,是根据预设的安全认证消息算法所生成的;所述预设的安全认证消息算法为:将所述终端随机数、门锁随机数、签名值与已加密的共享主密钥连接得到第一连接值;再运用预设的摘要算法对连接值进行摘要运算得到第二摘要值,将第二摘要值与ascii码连接后与共享主密钥根据预设的哈希算法进行哈希运算,最终生成安全认证消息,其中,哈希算法还可设置为sha1/256/384/512、sm3等算法。

s208:当接收到所述目标门锁发送的认证通过消息时,实现与所述目标门锁的安全认证。

本发明实施例提供的方法中,当接收到目标门锁反馈的认证通过的消息时,控制终端与目标门锁实现安全认证,建立安全连接通道。

本发明实施例提供的授权方法中,当控制终端接收到用户的指纹信息时,向所述目标门锁发送预设算法的标识信息和已加密的终端随机数,请求所述目标门锁确认所述预设算法;并且接收所述目标门锁反馈的已加密的门锁随机数后,调用云平台中预先存储的门锁公私钥对中的门锁公钥进行的加密。所述门锁公私钥对是门锁调用预设的非对称算法生成门锁公私钥对,所述非对称算法可设置为rsa1024/2048、sm2等算法。所述控制终端从所述云平台调用所述门锁公钥,对所述预先设置的共享主密钥进行加密,并同时将所述终端随机数、已解密的门锁随机数生成摘要随机数后,再进行摘要运算生成第一摘要值,将所述第一摘要值根据终端公私钥对中的终端私钥进行签名运算后,最终得到签名值。将所述签名值、已加密的共享主密钥发送至所述目标门锁,让所述目标门锁对所述签名值进行验证。当接收到所述目标门锁反馈的响应验证成功的门锁认证消息时,根据预设的安全认证消息算法对所述门锁认证消息进行认证;认证成功后,根据预设的安全认证消息算法,生成与所述门锁认证消息对应的终端认证消息,并将终端认证消息发送至所述目标门锁。当接收到所述目标门锁反馈的认证成功消息时,实现控制终端与各个目标门锁之间的安全认证,建立控制终端与所述目标门锁之间的安全连接通道。同时在安全认证完成之后,生成需要对指纹信息进行加密的会话密钥。

本发明实施例提供的方法中,与上述方法对应的具体实施例的实现方式,进行以下说明:

当控制终端获取用户的指纹信息后,调用云平台中预存储的门锁公私钥对中的门锁公钥,并依据所述门锁公钥对已生成的终端随机数r1进行加密;

控制终端向各个目标门锁发送预设算法的标识信息a1和已加密的终端随机数r1,请求所述目标门锁确认所述预设算法;

接收所述目标门锁反馈的与所述算法确认请求对应的已加密的门锁随机数r2时;

控制终端随机生成16字节的随机数,将所述16字节的随机数设置为共享主密钥m1,利用门锁公钥通过预设的非对称算法,将共享主密钥m1进行加密生成e1;

再根据终端随机数r1和已经解密的门锁随机数r2生成摘要随机数r3;

其中,摘要随机数的算法为:

r1+r2=r3;

将摘要随机数r3通过预设的摘要算法,对r3进行摘要运算,获得第一摘要值h1;

将第一摘要值h1通过终端公私钥对中的终端私钥进行签名运算,最终得到签名值s1;

将签名之s1和已加密的共享主密钥e1发送至所述目标门锁进行验证;

当接收到验证成功后反馈的门锁认证消息f1时,对所述门锁认证消息f1运用预设的安全认证消息算法生成第一认证消息f1’,与f1进行比对;

当比对一致。则认证成功,并利用所述预设的安全认证消息算法生成终端认证消息f2,将所述终端认证消息f2发送至所述目标们所进行认证;

当接收到所述目标门锁发送的认证通过消息时,实现控制终端与各个目标门锁之间的安全认证;

所述安全认证成功后,根据预设的哈希算法计算生成会话密钥x,其中生成会话密钥x的过程为:

调用预设的哈希算法,对所述共享主密钥m1、终端随机数r1、门锁随机数r2及预先设定的密钥ascii码进行哈希运算,获得所述会话密钥。

根据计算会话密钥的生成过程,会话密钥x公式为:

x=hash(m1,key_label||r1||r2);

所述key_label为密钥ascii码“sessionkey”。

基于上述实施例提供的方法,所述控制终端运用预设的安全认证消息算法,生成第一认证消息f1’的过程为:

将终端随机数r1、门锁随机数r2、签名值s1和加密的共享主密钥e1连接的到第一连接值t1,

其中,

t1=r1||r2||s1||e1;

将第一连接值t1根据预设的摘要算法进行摘要运算的到第二摘要值h2;

再将预先设定的门锁ascii码与第二摘要值h2连接,获得第二连接值d2;

最后将第二连接值d2与共享主密钥m1通过预设的哈希算法,最终生成第一认证消息f1’。

当所述控制终端生成的第一认证消息f1’,与接收到的门锁认证消息f1比对一致,则所述控制终端也运用了预设的安全认证消息算法,生成终端认证消息f2的,其过程为:

将终端随机数r1、门锁随机数r2、签名值s1和加密的共享主密钥e1连接的到第一连接值t1,

其中,

t1=r1||r2||s1||e1;

将第一连接值t1根据预设的摘要算法进行摘要运算的到第二摘要值h2;

再将预先设定的终端ascii码与第二摘要值h2连接,获得第三连接值d3;

最后将第三连接值d3与共享主密钥m1通过预设的哈希算法,最终生成终端认证消息f2。

根据上述实施例的方法,其中,门锁ascii码为“locker”;终端ascii码为“terminal”。

本发明实施例提供的方法中,当接收到用户的指纹信息后,利用安全认证过程中生成的会话密钥对所述指纹信息进行加密,将经过加密的指纹信息,发送到与会话密钥对应的目标门锁中,具体方法,如下说明:

将经过加密的所述指纹信息,发送至通过双向身份认证的云平台,触发所述云平台将经过加密的所述指纹信息,发送至该会话密钥对应的目标门锁。

本发明实施例提供的授权方法中,当控制终端要将已经加密的指纹信息与用户选定的待开启目标门锁的信息发送给所述目标门锁时,预先将所述已加密的指纹信息发送至已通过双向身份认证的云平台,由所述云平台根据所述目标门锁的信息,将所述已加密的指纹信息分别发送至与会话密钥对应的目标门锁当中。

需说明的是,所述目标门锁为至少一个用户选定的智能门锁;所述云平台为云平台服务器,负责分发和接收数据信息,当所述云平台接收到所述已加密的指纹信息后,根据用户选定的待开启的各个目标门锁,将所述以及密的指纹信息分发至所述目标门锁,因此,所述云平台并不具备对指纹信息进行加密或解密的功能,也不对所述已加密的指纹信息进行储存,在通过双向身份认证后,云平台可接收所述控制终端与所述目标门锁发送的公钥进行保存。所述终端或门锁公私钥对可以是,所述控制终端和所述目标门锁在安全认证过程中临时生成,由所述云平台对终端或门锁公钥进行转发;或是在建立安全传输通道后生成,将已生成的终端和门锁公钥发送至所述云平台进行保存,在进行安全认证过程中,直接从所述云平台进行调用。所述双向身份认证包括,控制终端向所述云平台发起身份认证请求,所述云平台响应所述控制终端的身份认证请求,同时向所述控制终端发起身份认证请求,当所述控制终端与所述云平台之间的身份认证均通过时,连接所述云平台与所述控制终端之间的安全传输通道。所述云平台还向所述目标门锁发起身份认证,所述目标门锁响应所述云平台的认证请求,同时也向所述云平台发起身份认证请求,当所述目标门锁与所述云平台之间的身份认证均通过时,连接所述云平台与所述目标门锁之间的安全传输通道。

应用本发明实施例提供的方法,控制终端需要将已加密的指纹信息发送至各个目标门锁之前,通过云平台进行中转和分发,在将所述已加密的指纹信息发送至之前,所述控制终端、目标门锁与云平台之间通过了身份认证,确定了安全的传输通道,即使所述已加密的指纹信息被非法截获,也无法从所述云平台中破解已加密的指纹信息的密码,保证了用户的个人信息的安全,保证指纹信息在传输过程的安全性和保密性。

本发明实施例提供的方法中,当控制终端需要将已加密的指纹信息发送至目标门锁时,通过云平台进行中转和分发,其中,在进行分发的中转之前,还与所述云平台进行了双向身份认证,建立与各个所述目标门锁之间的安全传输通道,如图3所述,具体建立过程包括:

s301:向已建立的云平台发送身份认证请求,触发所述云平台与所述控制终端进行双向身份认证,并触发所述云平台分别与各个所述目标门锁进行双向身份认证;

s302:当所述云平台与所述控制终端的双向身份认证通过,且所述云平台与各个所述目标门锁的双向身份认证通过时,建立所述控制终端经由所述云平台,与各个所述目标门锁之间进行数据传输的安全传输通道。

应用本发明实施例提供的方法,对身份认证过程进行具体说明:

当获取到用户的指纹信息时,调用预设的身份认证算法,生成第一身份认证信息,将所述第一身份认证信息发送至所述云平台,同时,接收所述云平台发送的通过所述预设的身份认证算法生成的第二身份认证信息;

对所述第二身份认证消息进行认证,当认证通过,且接收到所述云平台发送的对所述第一身份认证信息认证通过的通知消息时,实现与所述云平台的双向身份认证。

本发明实施例提供的授权方法中,当所述控制终端将所述已加密的指纹信息通过所述云平台发送至各个目标门锁前,需要与所述云平台进行双向身份认证,当所述控制终端获取到用户的指纹信息后,调用预设的身份认证算法,生成第一身份认证消息,将所述第一身份认证消息发送至所述云平台。所述云平台同时也调用所述身份认证算法,生成第二身份认证消息,将所述第二身份认证消息发送至所述控制终端进行认证;当所述第一身份认证消息与所述认第二身份认证消息均通过使时,实现控制终端与云平台之间的双向设备认证。

基于本发明实施例提供的方法,以云平台向控制终端发起消息认证为例,所述身份认证算法具体实现方式如图4所示,具体实现步骤为:

s401:云平台向控制终端发起身份认证;

s402:所述控制终端调用第一函数从所述云平台中获取云平台的随机数;

s403:所述控制终端采用0x00将所述所述云平台的随机数进行填充,当所述云平台的随机数填充至密码算法的分块长度时,组成云平台的数据;

s404:所述控制终端调用第二函数,根据预设的密钥算法生成的认证密钥,对所述云平台的数据进行加密,生成第一加密结果;

s405:将所述第一加密结果发送至所述云平台进行认证;

s406:若所述认证正确,则所述云平台对所述控制终端的身份认证通过;

s407:若认证不正确,则再执行上述步骤s402至s405的认证过程。

需说明的是,所述第一身份认证消息为控制终端向所述云平台发起的身份认证,在所述控制终端获取到用户的指纹信息之后,触发所述控制终端对所述云平台之间的身份认证。所述第二身份认证消息为所述云平台向所述控制终端发起的身份认证,在所述云平台接收到所述控制终端发起第一身份认证消息证后,也触发了所述云平台对所述控制终端的身份认证,当所述第一身份认证消息与所述第二身份认证消息均通过,则建立控制终端与云平台之间的安全传输通道。所述第一函数为getrandom函数;所述第二函数为encrypted函数;所述密码算法为对称密码算法;所述对称密码算法可设置为3des/aes/sm1/sm4等。在进行身份认证之前,可预先设置认证次数,当认证不正确时,再次进行重新认证后,认证次数减1,直至达到设定的认证次数结束后,无法再进行下一次身份消息认证。

本发明实施例提供的方法中,调用上述预设的身份认证算法,进行控制终端与云平台之间的双向身份认证,也利用同样的身份认证算法,实现云平台与各个目标门锁之间的双向认证,如图5所示,具体实施过程为:

控制终端或目标门锁发起对云平台的身份认证;

所述云平台调用getrandom函数,从所述控制终端或目标门锁获取随机数rnd1;

采用0x00将所述随机数rnd1进行填充至对称密码算法的分块长度,组成数据d-rnd1;

调用密钥算法生成的第一认证密钥,对所述数据d-rnd1进行加密获得加密结果en-d1;

将所述加密结果en-d1发送至所述控制终端或目标门锁进行认证;

当所述控制终端或目标门锁认证通过,则通过对所述云平台的身份认证;若认证不通过,则重复上述身份认证过程。

与上述控制终端或目标门锁对云平台的消息认证过程对应的,还进行了如下云平台对控制终端或目标门锁的身份认证过程:

云平台发起对控制终端或目标门锁的身份认证;

所述控制终端或目标门锁调用getrandom函数,从所述控制终端或目标门锁获取随机数rnd2;

采用0x00将所述随机数rnd2进行填充至对称密码算法的分块长度,组成数据d-rnd2;

调用密钥算法生成的第二认证密钥,对所述数据d-rnd2进行加密获得加密结果en-d2;

将所述加密结果en-d2发送至所述云平台进行认证;

当所述云平台认证通过,则通过对所述控制终端或目标门锁的身份认证;若认证不通过,则重复上述身份认证过程。

当上述控制终端或目标门锁发起对云平台的身份认证,与云平台发起对控制终端或目标门锁的身份认证均通过时,建立由控制终端到云平台再到目标门锁之间的安全传输通道。

应用本发明实施例提供的方法,通过对所述控制终端与云平台进行身份认证,也对所述云平台与目标门锁之间的身份认证,保证了所述控制终端至所述云平台以及所述云平台至所述控制终端之间的传输通道的安全,也能防止外来入侵的黑客截取传输过程中的数据信息,保证了用户个人信息的安全。

本发明实施例提供的授权方法中,当对所述已加密的指纹信息传输至所述目标门锁时,通过所述云平台,将已加密的指纹信息发送至该会话密钥对应的目标门锁,具体可以包括:

获取所述目标门锁的门锁标识信息;

触发所述云平台,依据所述门锁标识信息,将经过加密的所述指纹信息,发送至所述目标门锁。

本发明实施例提供的方法中,在将经过加密的所述指纹信息发送至目标门锁的过程中,为了确定各个待开启的目标门锁,先预先获取所述目标门锁的门锁标识信息,例如门牌号、房间号数或标志等。当所述控制终端要根据所述目标门锁标识信息发送已加密的所述指纹信息时,触发所述云平台,向所述云平台发送已加密的所述指纹信息以及所述门锁标识信息,所述云平台根据所述门锁标识信息,将经过已加密的所述指纹信息发送至对应的目标门锁。

应用本发明实施例提供的方法,针对用户指定的各个目标门锁,获取所述目标门锁对应的门锁标识信息,保证了加密的指纹信息不会误发至其他未被选中的的门锁中去,也可根据每个不同的门锁标识信息,设定与所述门锁标识信息对应的会话密钥,保证了用户个人信息的安全。

本发明实施例提供的授权方法中,当所述目标门锁对经过加密的指纹信息进行解密,并授予用户对所述目标门锁的开启权限后,具体还包括:

在用户开启所述目标门锁后,若所述用户未发送对所述目标门锁再次开启的通知消息时,撤销所述目标门锁中用户的指纹信息。

本发明实施例提供的方法中,当所述控制终端授予所述用户开启目标门锁的权限后,所述用户在对所述目标门锁对应的房间进行访问时,利用个人指纹信息开启所述目标门锁,若在所述用户结束访问后,所述控制终端未接收到所述用户发送的对所述目标门锁再次开启的通知消息时,所述控制终端或所述云平台撤销所述目标门锁中用户的指纹信息。

应用本发明实施例提供的方法,当所述控制终端未接收到所述用户反馈的,再次开启所述目标门锁的消息时,撤销所述用户在所述目标门锁上的指纹信息,保证了用户个人信息的安全。

与图1所述的方法相对应,本发明实施例还提供了一种授权装置,用于对图1中方法的具体实现,本发明实施例提供的授权装置可以应用手机、pc和各种移动终端可以进行指纹验证加密的设备中,其结构示意图如图6所示,具体包括:

601:第一获取单元,用于确定待开启的各个目标门锁,并获取用户的指纹信息;

602:认证单元,用于建立与各个所述目标门锁之间的安全传输通道,并依据所述安全传输通道分别与每个所述目标门锁进行安全认证,生成与每个所述目标门锁进行数据传输的会话密钥;

603:授权单元,用于依据每个所述会话密钥对所述指纹信息进行加密,并将经过加密的所述指纹信息,发送至该会话密钥对应的目标门锁,以在目标门锁对经过加密的指纹信息进行解密后,授予用户对所述目标门锁的开启权限。

本发明实施例提供的授权方法中,由第一获取单元确定各个待开启的目标门锁,并同时获取用户的指纹信息。当所述第一获取单元获取到所述用户的指纹信息后,触发认证单元对控制终端与目标门锁的认证过程,在与所述各个目标门锁建立安全的传输通道后,所述控制终端分别与每个所述目标门锁进行安全认证,并生成与每个所述目标门锁进行数据传输的会话密钥。最后经由授权单元,根据认证单元出发后生成的会话密钥对所述指纹信息进行加密,并将经过加密的所述指纹信息,发送到与会话密钥对应的目标门锁中。当所述目标门锁将经过加密的指纹信息进行解密后,授予所述用户开启所述目标门锁的权限。

应用本发明提供的装置,可以由认证单元触发控制终端与目标门锁进行安全认证,并根据安全认证完成后生成的会话密钥对所述指纹信息进行加密,再将所述已经加密的指纹信息,由控制终端向目标门锁发送已加密的指纹信息,保证了用户指纹信息在传输过程中的安全性和保密性。

本发明实施例提供了一种授权方法,该方法可以应用在多种智能门锁中,执行主体为门锁,或可以对加密的指纹信息进行解密的设备或装置,所述方法的方法流程图如图7所示,具体包括:

s701:当接收到用户对目标门锁的开启指令时,获取所述开启指令中包含的用户的指纹信息;

本发明实施例提供的方法中,用户在已经确定的待开启的目标门锁中,录入所述用户的指纹时,触发对所述目标门的开启指令,并获取所述用户的指纹信息。

s702:将所述指纹信息与预先解密获得的授权指纹信息进行比对;

本发明实施例提供的方法中,当所述目标门锁获取到用户的指纹信息后,将所述指纹信息与预先在所述目标门锁中解密获取的授权指纹信息进行比,判断所述指纹信息与所述授权指纹信息是否一致。

需说明的是,所述授权指纹信息为用户预先在控制终端中录入的指纹信息,所述控制终端在获取到所述用户的指纹信息后,将所述指纹信息进行加密后发送至所述目标门锁中,并由所述目标门锁对已经加密的指纹信息进行解密。

s703:当比对一致时,开启所述目标门锁。

本发明实施例提供的方法中,当所述指纹信息与所述授权指纹信息比对一致时,根据用户对所述目标门锁的开启指令,开启所述目标门锁。

本发明实施例提供的方法中,当目标门锁接收到用户的开启指令时,获取用户的指纹信息。所述用户的指纹信息包含在所述的开启指令当中,所述目标门锁根据获取到的所述指纹信息,将预先已经进行解密获得的授权指纹信息进行比对,当所述指纹信息与所述授权指纹信息比对一致,则开启所述目标门锁。应用本发明实施例提供的方法,确定用户的指纹信息与预设的授权指纹信息是否一致,保证发送开启目标门锁指令的用户身份的安全。

本发明实施例提供的授权方法中,当获取到用户开启指令中的指纹信息时,将所述指纹信息与授权指纹信息进行比对,其中,所述授权指纹信息的获取过程,具体包括:

当接收到已通过安全认证的控制终端,经由已建立的云平台发送的经过加密的用户指纹信息时,根据安全认证过程中生成的会话密钥,对所述经过加密的用户指纹信息进行解密,以获得所述授权指纹信息。

本发明实施例提供的方法中,接收控制终端发送的经过加密的用户指纹信息,所述经过加密的用户指纹信息是与所述控制终端通过安全认证后,在安全认证的建立完成后,根据生成的会话密钥对所述用户指纹信息进行加密。在所述目标门锁获取经过加密的指纹信息后,所述目标门锁也是通过安全认证完成后生成的会话密钥,并利用所述目标门锁生成的会话密钥,对所述控制终端发送的已加密的用户指纹信息进行解密,最终获得所述授权指纹信息。所述目标门锁将所述授权指纹信息进行保存,在接收到用户的开启指令后,获取所述开启指令中用户的指纹信息,将所述指纹信息与预先获取的授权指纹信息进行比对,比对一致则开启所述目标门锁。

应用本发明实施例提供的方法,所述目标门锁要预先获取经过加密的指纹信息,在对所述经过加密的指纹信息进行解密保存,以在用户对所述目标门锁发送开启指令时,能够与开启指令中包含的指纹信息进行比对,确定目标用户是否为同一用户,保证了用户个人信息的安全,也保证了目标门锁在开启过程中的安全性。

本发明实施例提供的授权方法中,在获取授权指纹信息时,预先与控制终端进行了安全认证的过程,并根据安全认证过程生成对指纹信息进行加密的会话密钥,其中,安全认证的过程,如图8所示,具体包括:

s801:当接收到所述控制终端发送的算法确认请求及已加密的终端随机数时,对所述控制终端中包含的算法进行确认;

本发明实施例提供的方法中,当目标门锁接收到控制终端发送的算法确认请求和已加密的终端随机数时,对控制终端发送的算法确认请求消息中的预设算法信息进行确认。

需说明的是,所述控制终端发送的算法确认消息包括非对称算法和哈希算法等,若所述目标门锁内预设的算法存在非对称算法和哈希算法,则算法确认通过;所述非对称算法可设置为rsa1024/2048、sm2等算法;所述哈希算法可设置为sha1/256/384/512、sm3等算法。

s802:当确认通过时,调用所述云平台中预存储的终端公私钥对中的终端公钥,对已生成的门锁随机数进行加密,并将已加密的门锁随机数发送至所述控制终端;

本发明实施例提供的方法中,当所述目标门锁内预设的算法存在所述控制终端发送的算法,则所述算法确认通过,并调用云平台中预先存储的终端公私钥对中的终端公钥,对所述目标门锁已经预先生成门锁随机数进行加密,并向所述控制终端发送与所述算法确认对应的已加密的门锁随机数。

需说明的是,所述云平台中预先存储的终端公私钥对中的终端公钥,是控制终端与云平台进行双向身份认证后生成,并将终端公钥发送至云平台进行存储的,或是控制终端与所述目标门锁进行安全认证过程中,临时生成的终端公私钥对,并将终端公钥中的终端公钥发送至所述云平台,由所述云平台转发送至所述目标门锁。

s803:接收所述控制终端发送的签名值及经过加密的共享主密钥;

本发明实施例提供的方法中,当所述目标门锁向所述控制终端发送已加密的门锁随机数后,获取由所述控制终端反馈的签名值以及经过加密的共享主密钥。

需说明的是,所述签名值是控制终端将所述已加密门锁随机数进行解密后生成门锁随机数,再根据终端随机数和门锁随机数生成摘要随机数后,再经过摘要运算以及通过终端私钥进行签名运算,最终得到所述签名值;所述加密的共享主密钥是根据所述控制终端生成的16字节随机数,作为共享主密钥,利用所述门锁公钥对所述共享主密钥进行加密,获得加密的共享主密钥。

s804:依据所述终端公钥对所述签名值进行验证,当验证通过时,对所述经过加密的共享主密钥进行解密,获得所述共享主密钥,并生成门锁认证消息;

本发明实施例提供的方法中,所述目标门锁利用从云平台获取的终端公钥,验证所述签名值,当所述签名值验证通过,则将所述已加密的共享主密钥进行解密,获得共享主密钥,并根据预设的安全认证消息算法,生成门锁认证消息。

需说明的是,所述安全认证消息算法为:将所述终端随机数、门锁随机数、签名值与已加密的共享主密钥连接得到第一连接值;再运用预设的摘要算法对连接值进行摘要运算得到第二摘要值,将第二摘要值与ascii码连接后与共享主密钥根据预设的哈希算法进行哈希运算,最终生成安全认证消息。其中,哈希算法还可设置为sha1/256/384/512、sm3等算法。

s805:将所述门锁认证消息发送至所述控制终端进行认证;

本发明实施例提供的方法中,根据上述预设的认证消息算法生成所述门锁认证消息后,将所述门锁认证消息发送至控制终端进行认证。

需说明的是,所述控制终端认证所述门锁认证消息时,运用控制终端预设的安全认证消息算法进行认证。

s806:当接收到所述控制终端反馈的与所述门锁认证消息对应的终端认证消息时,对所述终端认证消息进行认证,当认证通过时,实现与所述控制终端的安全认证。

本发明实施例提供的方法中,当所述控制终端对所述门锁认证消息的认证通过时,运用同样预设的安全认证消息算法,生成终端认证消息发送至所述门锁,当所述门锁接收到所述终端认证消息时,运用门锁预设的安全认证消息算法进行认证。

需说明的是,所述终端认证消息的生成过程,也采用与门锁认证消息生成过程一样算法的安全认证消息算法,其中,所述终端认证消息生成过程中运用所述安全认证消息算法时,所述认证消息算法中的ascii码为终端ascii码:“terminal”。

本发明实施例提供的方法中,当目标门锁接收到控制发送的算法确认请求时及已加密的终端随机数,根据所述目标门锁内预设的各个算法,对所述控制终端中包含的算法进行确认,当确认通过时,向所述控制终端发送已加密的门锁随机数。当接收到控制终端反馈的签名值、加密的共享主密钥,利用终端公钥,对所述签名值进行验证,验证通过则对已加密的共享主密钥进行解密获得共享主密钥。再根据预设的安全认证消息算法,生成门锁认证消息,并将所述门锁认证消息发送至所述控制终端进行认证,当接收到所述控制终端反馈需要认证的终端认证消息时,则表示所述控制终端对所述目标门锁认证消息的认证通过,则所述目标门锁运用预设的安全认证消息算法认证所述终端认证消息,认证通过,则实现与所述控制终端之间的安全认证,建立控制终端与目标门锁的安全连接通道。

本发明实施例提供的方法中,与上述方法对应的具体实施例的实现方式,进行以下说明:

当目标门锁接收到控制终端算法确认请求的算法标识a1和已加密的终端随机数时,所述目标门锁确认是否存在与所述控制终端中预设算法一致的算法,并调用预设的门锁私钥对已加密的终端随机数进行解密得到终端随机数r1;

当所述目标门锁预设算法与所述控制终端预设算法一致,则生成门锁随机数r2,并调用云平台中预先存储的终端公钥对门锁随机数进行加密,向所述控制终端发送已加密的门锁随机数;

当接收到所述控制终端发送签名值s1以及加密的共享主密钥e1时,利用签名值的生成算法验证所述签名值s1,验证通过,则利用所述终端公钥对所述加密的共享主密钥e1进行解密,得到共享主密钥m1;

根据预设的安全认证消息算法,生成门锁认证消息f1;

所述目标门锁将所述门锁认证消息f1发送至所述控制终端进行认证;

当接收到所述控制终端发送的,与所述门锁认证消息f1认证通过对应的终端认证消息f2认证消息时,运用所述预设的安全认证消息算法生成第二认证消息f2’,与所述终端认证消息f2进行比对;

当第二认证消息f2’与所述终端认证消息f2比对一致时,则认证通过,实现所述目标门锁与所述控制终端之间的安全认证;

所述安全认证成功后,根据预设的哈希算法计算会话密钥x,所述目标门锁生成会话密钥的过程为:

调用预设的哈希算法,对所述共享主密钥、终端随机数、门锁随机数及预先设定的密钥ascii码进行哈希运算,获得所述会话密钥。

其中,会话密钥x公式为:

x=hash(m1,key_label||r1||r2);

所述key_label为密钥ascii码“sessionkey”;

基于上述实施例提供的方法,当门锁成功验证签名值s1,并解密得到m1后,调用预设的安全认证消息算法,生成门锁认证消息f1,其过程为:

将终端随机数r1、门锁随机数r2、签名值s1和加密的共享主密钥e1连接的到第一连接值t1,

其中,

t1=r1||r2||s1||e1;

将第一连接值t1根据预设的摘要算法进行摘要运算的到第二摘要值h2;

再将预先设定的门锁ascii码与第二摘要值h2连接,获得第二连接值d2;

最后将第二连接值d2与共享主密钥m1通过预设的哈希算法,最终生成门锁认证消息f1。

当所述门锁将所述门锁认证消息f1发送至终端,并接收到终端反馈的终端认证消息f2后,也调用同样的安全认证消息算法,生成第二认证消息f2’,生成过程为:

将终端随机数r1、门锁随机数r2、签名值s1和加密的共享主密钥e1连接的到第一连接值t1,

其中,

t1=r1||r2||s1||e1;

将第一连接值t1根据预设的摘要算法进行摘要运算的到第二摘要值h2;

再将预先设定的终端ascii码与第二摘要值h2连接,获得第三连接值d3;

最后将第三连接值d3与共享主密钥m1通过预设的哈希算法,最终生成终端认证消息f2’。

根据上述实施例的方法,其中,门锁ascii码为“locker”;终端ascii码为“terminal”。

需说明的是,所述生成第二认证消息f2’由所述门锁生成,所述第二认证消息的生成过程与终端认证消息生成过程一致;所述门锁生成第二认证消息f2’后,与接收到的终端认证消息f2进行比对,比对一致,则门锁对所述终端认证消息的认证通过。

应用本发明实施例提供的方法,当所述目标门锁与所述控制终端成功建立安全认证后,根据所述安全认证过程中生成的会话密钥,对所述控制终端发送过来的已加密的用户指纹信息解密,防止已经加密的用户指纹信息在传输过程中被窃取用户的个人信息的可能性,因此保证了用户个人指纹信息的安全。

本发明实施例提供的授权方法中,可以应用于需要利用指纹解锁的智能门锁中,也可以用于人脸识别技术的智能门锁或掌纹识别技术的智能门锁中。上述各个具体的实现方式,及各个实现方式的衍生过程,均在本发明保护范围内。

与图6所述的方法相对应,本发明实施例还提供了一种授权装置,用于对图6中方法的具体实现,本发明实施例提供的授权装置可以应用智能门锁或各种需要进行指纹验证解密的设备中,其结构示意图如图9所示,具体包括:

901:第二获取单元,用于当接收到用户对目标门锁的开启指令时,获取所述开启指令中包含的用户的指纹信息;

902:比对单元,用于将所述指纹信息与预先解密获得的授权指纹信息进行比对;

903:开启单元,用于当比对一致时,开启所述目标门锁。

本发明实施例提供的授权装置,当所述第二获取单元接收到用户对所述目标门锁的开启指令时,可以获取开启指令中用户的指纹信息,将所述获取的指纹信息,由比对单元根据预先解密获得的授权指纹信息进行比对,当所述用户的指纹信息与所述授权指纹信息比对一致时,则由所述开启单元,对所述目标门锁进行开启,应用本发明实施例提供的授权装置,可以有效的确定用户的个人身份信息,防止其他用户误开启所述目标门锁,也有效的保证了用户的个人信息。

本发明还提供了一种授权系统,其系统模块图如图10所示,具体包括:

指纹管理终端100、云平台300和至少一个门锁200;

所述指纹管理终端100中包括:

第一采集模块110,用于采集用户指纹;

第一指纹检测控制模块120,用于将采集的用户指纹转换为指纹信息;

终端芯片130,用于在接收到第一指纹检测控制模块发送的指纹信息时,执行如下所述任意一项授权方法:

确定待开启的各个目标门锁,并获取用户的指纹信息;

建立与各个所述目标门锁之间的安全传输通道,并依据所述安全传输通道分别与每个所述目标门锁进行安全认证,生成与每个所述目标门锁进行数据传输的会话密钥;

依据每个所述会话密钥对所述指纹信息进行加密,并将经过加密的所述指纹信息,发送至该会话密钥对应的目标门锁,以在目标门锁对经过加密的指纹信息进行解密后,授予用户对所述目标门锁的开启权限。

上述的方法,优选的,所述建立与各个所述目标门锁之间的安全传输通道,包括:

向已建立的云平台发送身份认证请求,触发所述云平台与所述控制终端进行双向身份认证,并触发所述云平台分别与各个所述目标门锁进行双向身份认证;

当所述云平台与所述控制终端的双向身份认证通过,且所述云平台与各个所述目标门锁的双向身份认证通过时,建立所述控制终端经由所述云平台,与各个所述目标门锁之间进行数据传输的安全传输通道。

上述的方法,优选的,所述与目标门锁进行安全认证,包括:

调用所述云平台中预存储的门锁公私钥对中的门锁公钥,并依据所述门锁公钥对已生成的终端随机数进行加密;

向所述目标门锁发送算法确认请求及已加密的所述终端随机数,并接收所述目标门锁反馈的与所述算法确认请求对应的已加密的门锁随机数;

依据所述门锁公钥对已生成的共享主密钥进行加密,并依据所述终端随机数和解密获得的门锁随机数生成摘要随机数;

调用预设的摘要算法,对所述摘要随机数进行摘要运算,获得第一摘要值;

应用预先生成的终端公私钥对中的终端私钥,对所述第一摘要值进行签名运算,获得签名值;

将所述签名值及加密的共享主密钥发送至所述目标门锁进行验证;

当接收到所述目标门锁反馈的响应验证成功的门锁认证消息时,对所述门锁认证消息进行认证,当认证通过时,生成与所述门锁认证消息对应的终端认证消息,并将所述终端认证消息发送至所述目标门锁进行认证;

当接收到所述目标门锁发送的认证通过消息时,实现与所述目标门锁的安全认证。

上述的方法,优选的,所述对门锁认证消息进行认证,包括:

依据所述终端随机数、门锁随机数、签名值和加密的共享主密钥进行连接,获得第一连接值;

调用所述预设的摘要算法,对所述第一连接值进行摘要运算,获得第二摘要值;

将所述第二摘要值与预先设定的门锁ascii码进行连接,获得第二连接值;

调用预设的哈希算法,将所述第二连接值与所述共享主密钥进行哈希运算,获得第一认证消息;

将所述第一认证消息与所述门锁认证消息进行比对,当比对一致时,通过对所述门锁认证消息的认证。

上述的方法,优选的,所述生成与每个所述目标门锁进行数据传输的会话密钥,包括:

调用预设的哈希算法,对所述共享主密钥、终端随机数、门锁随机数及预先设定的密钥ascii码进行哈希运算,获得所述会话密钥。

所述门锁200包括:

第二采集模块210,用于采集用户指纹;

第二指纹检测控制模块220,用于将采集的用户指纹转换为指纹信息;

门锁芯片230,用于执行如下所述任意一项所述的授权方法:

当接收到用户对目标门锁的开启指令时,获取所述开启指令中包含的用户的指纹信息;

将所述指纹信息与预先解密获得的授权指纹信息进行比对;

当比对一致时,开启所述目标门锁;

其中:所述授权指纹信息的获取过程,包括:

当接收到已通过安全认证的控制终端,经由已建立的云平台发送的经过加密的用户指纹信息时,根据安全认证过程中生成的会话密钥,对所述经过加密的用户指纹信息进行解密,以获得所述授权指纹信息。

上述的方法,优选的,所述安全认证的过程,包括:

当接收到所述控制终端发送的算法确认请求及已加密的终端随机数时,对所述控制终端中包含的算法进行确认;

当确认通过时,调用所述云平台中预存储的终端公私钥对中的终端公钥,对已生成的门锁随机数进行加密,并将已加密的门锁随机数发送至所述控制终端;

接收所述控制终端发送的签名值及经过加密的共享主密钥;

依据所述终端公钥对所述签名值进行验证,当验证通过时,对所述经过加密的共享主密钥进行解密,获得所述共享主密钥,并生成门锁认证消息;

将所述门锁认证消息发送至所述控制终端进行认证;

当接收到所述控制终端反馈的与所述门锁认证消息对应的终端认证消息时,对所述终端认证消息进行认证,当认证通过时,实现与所述控制终端的安全认证。

上述的方法,优选的,所述对终端认证消息进行认证,包括:

依据所述终端随机数、门锁随机数、签名值和加密的共享主密钥进行连接,获得第一连接值;

调用所述预设的摘要算法,对所述第一连接值进行摘要运算,获得第二摘要值;

将所述第二摘要值与预先设定的门锁ascii码进行连接,获得第三连接值;

调用预设的哈希算法,将所述第三连接值与所述共享主密钥进行哈希运算,获得第二认证消息;

将所述第二认证消息与所述终端认证消息进行比对,当比对一致时,通过对所述终端认证消息的认证。

云平台300;

所述云平台300,用于当接收到所述指纹管理终端发送的身份认证请求时,与所述指纹管理终端进行双向身份认证,并同时与各个门锁进行双向身份认证;并在所述指纹管理终端与各个所述门锁进行安全认证时,分发和中转安全认证过程中的数据及信息;并在安全认证通过后,接收通过所述指纹管理终端加密的指纹信息,将所述已加密的指纹信息分发至各个所述门锁。

本发明实施例提供的系统中,指纹管理终端由所述第一采集模块,对用户的指纹进行采集,再通过第一指纹检测控制模块,将采集到的指纹转换为指纹信息。在接收到用户的指纹信息后,由所述终端芯片对指纹信息进行加密过程以及通过所述云平台与所述门锁进行安全认证的过程。所述门锁在与所述指纹管理终端进行安全认证后,由门锁芯片对接收到的经过加密的指纹信息进行解密,获取用户的指纹信息作为授权指纹信息保存,当所述第二采集模块采集到用户的指纹时,再经过第二指纹检测控制模块将所述用户指纹转化为指纹信息,最后又由所述门锁芯片对所述门锁接收到的指纹信息,与预先保存的授权指纹信息进行比对,比对一致则开启门锁。

需说明的是,所述终端芯片内包含了各种算法信息以及函数信息,用以实现各种认证过程和加密过程,所述门锁芯片内也包含了各种算法信息以及函数信息,用以实现各种认证过程和解密过程。

基于上述发明实施例提供的系统,所述指纹管理终端100与所述门锁200之间具体的安全认证过程,如图11所示,具体包括:

指纹管理终端设置算法标识信息a1并产生终端随机数r1,从云平台中获取预先存储的门锁公钥对终端随机数r1进行加密;

向所述门锁发送算法标识信息和已加密的终端随机数;

所述门锁在接收到所述算法标识a1后和已加密的终端随机数后,检查是否支持所述终端算法;

若支持所述终端算法,利用所述门锁预设的门锁私钥解密所述已加密的终端随机数,获得终端随机数r1,并产生门锁随机数r2,并从云平台获取预先存储的终端公钥对门锁随机数进行加密;

将所述已加密的门锁随机数发送至所述指纹管理终端;

所述指纹管理终端接收到所述已加密的门锁随机数后调用预设的终端私钥解密获得门锁随机数r2,并产生16字节的随机数作为共享主密钥m1,并使用所述门锁公钥对所述共享主密钥m1进行加密,获得加密的共享主密钥e1;

将所述终端随机数r1与门锁随机数r2连接,通过摘要运算以及签名运算后,最终获得签名值s1;

将所述签名值s1和已加密的共享主密钥e1发送至所述门锁;

所述门锁利用所述终端公钥验证所述签名值s1,验证成功后,利用所述门锁私钥对所述加密的共享主密钥e1进行解密,获得共享主密钥m1,并在解密后生成门锁认证消息f1;

将所述门锁认证消息f1发送至所述指纹管理终端;

所述指纹管理终端认证所述门锁认证消息f1,认证通过,则生成终端认证消息f2,并将所述终端认证消息f2发送至所述门锁;

所述门锁接收并认证所述终端认证消息f2,认证通过后,实现与所述指纹管理终端之间的安全认证,并计算生成会话密钥;

所述指纹管理终端同时也计算生成会话密钥。

需说明的是,上述指纹管理终端与所述门锁进行安全认证的过程,均通过所述云平台来完成接收和转发。本发明实施例提供的系统中,所述终端芯片和门锁芯片为上述方法实施例中的终端安全芯片和门锁安全芯片。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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