一种用户身份识别方法、相关装置、设备和系统与流程

文档序号:15648850发布日期:2018-10-12 22:54阅读:149来源:国知局

本发明涉及一种用户身份识别方法、身份信息识别模板录入方法、相关装置、设备和系统。



背景技术:

随着信息化系统和物联网技术的发展,一些日常生活中的设备都已实现智能化,例如:监控摄像机、智能门锁等都已经通过网络硬件和软件的方式实现联网认证和控制,通过身份信息验证来保证智能化设备的使用安全性,防止不法人员的非法操作。智能化设备因其便捷的操作性能和先进的技术体验正在改变人们的生活品质,为人们带来便捷的使用体验。人们通过提前将目标密码或者是身份信息录入到智能设备,通过密码访问或者验证身份信息就可以控制智能设备。但是当前使用的智能设备连接到网络,会存在被网络攻击的风险,人们对安全性的担忧,一定程度上影响了智能设备的普及。当前智能设备中,通过微控制单元mcu存储密码或者是身份信息,而微控制单元mcu存在被攻击的风险,如果mcu被攻击或非法接入,其中的密码或者是身份信息泄露,会威胁到用户的工作或者居住安全,给用户的生产生活带来不必要的麻烦。因此,提高现有的智能设备的安全性能,保证智能设备在使用时的安全性和可靠性是当前亟待解决的一个问题。



技术实现要素:

鉴于现有技术中存在的技术缺陷和技术弊端,本发明实施例提供克服上述问题或者至少部分地解决上述问题的一种用户身份识别方法、身份信息识别模板录入方法、相关装置、设备和系统。

作为本发明实施例的一个方面,涉及一种用户身份识别方法,包括:

接收用户身份识别请求,获取所述用户身份识别请求中的用户身份认证信息;

与安全芯片建立安全通道,通过安全通道接收所述安全芯片传送的加密密钥idkey;

通过所述idkey对预存的加密的用户身份信息识别模板进行解密,与所述用户身份认证信息进行比对,对用户身份进行识别。

在一个实施例中,所述的用户身份识别方法中,所述加密的用户身份信息识别模板通过下述方式得到:

接收用户身份信息识别模板录入请求,获取所述用户身份信息识别模板录入请求中的用户身份信息识别模板;

与安全芯片建立安全通道,通过安全通道接收所述安全芯片传送的加密密钥idkey;

通过所述idkey对所述用户身份信息识别模板进行加密并存储。

在一个实施例中,所述的用户身份识别方法,还包括:

在接收用户身份信息识别模板录入请求之前,通过以下方式获得用于建立安全通道的安全传输密钥transportkey:

接收移动终端发送的初始化transportkey请求;

生成transportkey并保存;

获取安全芯片的卡生产生命周期cplc,通过预存的公钥证书对所述transportkey进行加密,将所述cplc和加密的transportkey上传远程服务器。

在一个实施例中,所述的用户身份识别方法,所述上传远程服务器之后,还包括:

接收远程服务器根据所述cplc获取的安全芯片的主安全域密钥isdkey,接收远程服务器私钥证书加密的transportkey,使用所述公钥证书进行解密;

与所述安全芯片建立安全通道,通过安全通道将所述transportkey发送到安全芯片。

在一个实施例中,所述的用户身份识别方法中,与安全芯片建立安全通道包括:

向安全芯片发送选择安全域请求,所述安全域请求包括所选安全域的应用标识符aid;接收安全芯片发送的选择安全域响应;

向安全芯片发送初始化更新请求;接收安全芯片发送的初始化更新响应,所述初始化更新响应包括会话密钥和卡鉴别密码;

验证卡鉴别密码,验证成功后,生成新的会话密钥,计算主机端鉴别密码,计算主机端信息认证码mac,通过向安全芯片发送外部认证请求,将所述新的会话密钥、主机端鉴别密码和主机端mac发送到所述安全芯片;接收所述安全芯片发送的外部认证响应;

所述新的会话密钥为根据mcu或安全芯片产生的新的会话序号生成的会话密钥。

在一个实施例中,所述的用户身份识别方法中,所述验证卡鉴别密码,包括:

根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion,根据至少包括会话序号、会话密钥和keyversion在内的因子计算与安全芯片对应的卡验证密码,使用所述卡验证密码与接收到的所述卡鉴别密码进行比对,若相同,则验证成功;

所述计算主机端鉴别密码,包括:

产生新的会话序号,生成新的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion和键值keyvalue,用至少包括所述新的会话序号、新的会话密钥、keyversion和keyvalue在内的因子计算主机端鉴别密码;

所述新的会话序号是指在前一次会话结束后,mcu产生的用于下一次会话的会话序号;

所述计算主机端mac,包括:

用至少包括主机端鉴别密码在内的因子计算主机端mac。

在一个实施例中,所述的用户身份识别方法中,与所述安全芯片建立安全通道,通过安全通道将所述transportkey发送到安全芯片时,所述所选择的安全域为主安全域isd,对应的,所述安全域密钥为主安全域密钥isdkey;

与安全芯片建立安全通道,通过安全通道接收所述安全芯片传送的加密密钥idkey时,所述所选择的安全域为isd或辅助安全域ssd,对应的,所述安全域密钥为isdkey或transportkey。

在一个实施例中,所述的用户身份识别方法中,通过安全通道接收所述安全芯片传送的加密密钥idkey包括:

产生新的会话序号,生成新的会话密钥,用新的会话密钥加密请求数据,计算新的主机端mac;

发送获取idkey请求,所述获取idkey请求包括所述新的会话密钥、加密的请求数据和新的主机端mac;

接收安全芯片发送的获取idkey响应,所述获取idkey响应包括使用新的会话密钥加密的包含idkey的响应数据和卡片mac;

对安全芯片发送的卡片mac进行验证,验证成功后,解密包含idkey的响应数据,获取所述idkey。

在一个实施例中,所述的用户身份识别方法,还包括:在向安全芯片发送初始化更新请求前生成主机端随机数,并将主机端随机数加入所述初始化更新请求中;

所述初始化更新响应中还包括由安全芯片生成的卡随机数。

在一个实施例中,所述的用户身份识别方法中,所述用户身份认证信息包括下述任意一种或多种的组合:密码信息、语音信息、指纹信息、面部信息和虹膜信息。

作为本发明实施例的另一方面,涉及一种用户身份识别方法,包括:

与微控制单元mcu建立安全通道,通过安全通道将加密密钥idkey传送到所述mcu。

在一个实施例中,所述的用户身份识别方法,还包括:

在与微控制单元mcu建立安全通道,通过安全通道将加密密钥idkey传送到所述mcu之前,与微控制单元mcu建立安全通道,通过安全通道接收由mcu发送的transportkey并存储。

在一个实施例中,所述的用户身份识别方法中,与微控制单元mcu建立安全通道包括:

接收mcu发送的选择安全域请求;发送选择安全域响应;

接收mcu发送的初始化更新请求;生成会话密钥,计算卡鉴别密码,通过初始化更新响应将所述会话密钥和卡鉴别密码发送到所述mcu;

接收mcu发送的外部认证请求,所述外部认证请求包括新的会话密钥、主机端鉴别密码和主机端mac;验证所述主机端mac和主机端鉴别密码,验证成功后,发送外部认证响应到所述mcu。

在一个实施例中,所述的用户身份识别方法中,所述计算卡鉴别密码,包括:

产生本次初始化更新会话的会话序号,生成会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion,用至少包括会话序号、会话密钥和keyversion在内的因子计算卡鉴别密码;

所述验证主机端mac,包括:

根据得到的至少包括主机端鉴别密码在内的因子计算主机端验证mac,使用所述主机端验证mac与主机端mac进行比对,若相同,则验证成功;

所述验证主机端鉴别密码,包括:

根据本次外部认证会话的会话序号生成对应的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion和键值keyvalue,根据至少包括所述会话序号、会话密钥、keyversion和keyvalue在内的因子计算与所述mcu对应的主机端验证密码,使用所述主机端验证密码与所述主机端鉴别密码进行比对,若相同,则验证成功。

在一个实施例中,所述的用户身份识别方法中,通过安全通道将加密密钥idkey传送到所述mcu包括:

接收mcu发送的获取idkey请求,所述获取idkey请求包括根据会话序号生成的新的会话密钥、加密的请求数据和新的主机端mac;

验证所述新的主机端mac,验证成功后,解密请求数据,获取idkey,产生新的会话序号,根据新的会话序号生成新的会话密钥,对包含idkey的响应数据进行加密,计算卡片mac,通过获取idkey响应将新的会话密钥、加密的包含idkey的响应数据和新的卡片mac发送到所述mcu。

作为本发明实施例的再一方面,涉及一种微控制单元mcu,包括:

获取模块,用于接收用户身份识别请求,获取所述用户身份识别请求中的用户身份认证信息;

第一安全通信模块,用于与所述安全芯片建立安全通道,通过安全通道接收所述安全芯片传送的加密密钥idkey;

识别模块,用于通过所述idkey对预存的加密的用户身份信息识别模板进行解密,与所述用户身份认证信息进行比对,对用户身份进行识别。

在一个实施例中,所述的微控制单元mcu中,所述获取模块,还用于接收用户身份信息识别模板录入请求,获取所述用户身份信息识别模板录入请求中的用户身份信息识别模板。

在一个实施例中,所述的微控制单元mcu,还包括:

加密及存储模块,用于通过所述idkey对所述用户身份信息识别模板进行加密并存储。

在一个实施例中,所述的微控制单元mcu,还包括:

密钥生成及发送模块,用于接收移动终端发送的初始化transportkey请求;生成transportkey并保存;通过预存的公钥证书对所述transportkey进行加密并上传远程服务器。

作为本发明实施例的又一方面,涉及一种安全芯片,包括:

第二安全通信模块,用于与微控制单元mcu建立安全通道,通过安全通道将加密密钥idkey传送到所述mcu。

在一个实施例中,所述的安全芯片中,所述第二安全通信模块,还用于与微控制单元mcu建立安全通道,通过安全通道接收由mcu发送的transportkey并存储。

作为本发明实施例的第五个方面,还涉及一种智能家居设备,包括:

身份信息采集单元、上述任一项所述的微控制单元mcu和上述任一项所述的安全芯片;所述mcu与所述身份信息采集单元和安全芯片分别连接;

所述身份信息采集单元,用于采集用户身份信息数据,从用户身份信息数据提取用户身份信息识别模板或用户身份认证信息,并发送给mcu。

在一个实施例中,所述的智能家居设备,还包括:

通信单元,与mcu连接,用于mcu与移动终端之间进行通信。

在一个实施例中,所述的智能家居设备,所述智能家居设备为智能门锁或监控摄像机。

作为本发明实施例的第六个方面,还涉及一种智能家居系统,包括:远程服务器和上述任一项所述的智能家居设备。

作为本发明实施例的第七个方面,还涉及一种身份信息识别模板录入方法,包括:

接收用户的身份信息识别模板录入请求,获取所述用户身份信息识别模板录入请求中的用户身份信息识别模板;

与安全芯片建立安全通道,通过安全通道接收所述安全芯片传送的加密密钥idkey;

通过所述idkey对所述用户身份信息识别模板进行加密并存储。

作为本发明实施例的第八个方面,还涉及一种身份信息识别模板录入方法,包括:

与微控制单元mcu建立安全通道,通过安全通道将加密密钥idkey传送到所述mcu。

作为本发明实施例的第九个方面,还涉及一种微控制单元mcu,包括:

获取模块,用于接收用户身份信息识别模板录入请求,获取所述用户身份信息识别模板录入请求中的用户身份信息识别模板;

第一安全通信模块,用于与所述安全芯片建立安全通道,通过安全通道接收所述安全芯片传送的加密密钥idkey;

识别模块,用于通过所述idkey对所述用户身份信息识别模板进行加密并存储。

作为本发明实施例的第十个方面,还涉及一种安全芯片,包括:

第二安全通信模块,用于与微控制单元mcu建立安全通道,通过安全通道将加密密钥idkey传送到所述mcu。

本发明实施例至少实现了如下技术效果:

本发明实施例提供的用户身份识别方法,通过安全通信方式获取存储在安全芯片的加密密钥idkey,采用idkey对用户身份信息识别模板进行加密,并存储在mcu。当用户需要进行身份验证时,mcu通过安全通信方式获取安全芯片中的idkey,通过idkey对用户身份信息识别模板进行解密,使用用户身份信息识别模板对用户身份认证信息进行验证,完成用户身份识别。通过idkey对用户身份信息识别模板进行加密,可以保证用户身份信息识别模板的安全性,即使mcu发生非法访问,被窃取了加密的用户身份信息识别模板,但由于非法访问者无法得到安全芯片中存储的idkey,从而无法对加密的用户身份信息识别模板进行解密,不能获取真实的用户身份信息。同时,mcu从安全芯片中获取idkey时,基于globalplatform规范与安全芯片建立安全通道,在安全会话过程中,动态的更新会话密钥,保证会话安全,mcu和安全芯片分别对接收的消息中的安全验证信息进行验证,对接收的消息进行认证,实现mcu和安全芯片双向鉴权,保证消息的机密性和完整性。本发明实施例提供的用户身份识别方法,能够有效保证用户身份信息识别模板的安全性。

本发明实施例中,由于用户身份信息识别模板本身的数据量较大,为了避免安全芯片本身的存储空间小、运行速度慢,而影响到安全芯片和mcu之间的通信效率,安全芯片只用于存储加密密钥idkey,而将用户身份信息识别模板通过加密密钥idkey进行加密后存储在mcu,既能够保证用户身份信息识别模板安全,也使得安全芯片在与mcu安全会话时,加密和解密的数据量减少,提高安全芯片的运行效率,实现安全芯片和mcu之间的消息快速收发。本发明实施例采用安全芯片对加密密钥idkey进行存储,以保证应用安全,而通过安全通道传送加密密钥idkey,以保证传输安全,对传输的消息进行隐私保护。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所记载的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明实施例提供的用户身份识别方法流程示意图;

图2为本发明实施例提供的用户身份识别方法中身份信息识别模板录入流程示意图;

图3为本发明实施例提供的用户身份识别方法中mcu与安全芯片建立安全通道示意图;

图4为本发明实施例提供的用户身份识别方法中mcu从安全芯片获取idkey过程示意图;

图5-1为本发明实施例提供的用户身份识别方法中transportkey初始化流程示意图;

图5-2为本发明实施例提供的用户身份识别方法中transportkey初始化及存储流程示意图;

图6为本发明实施例提供的用户身份识别方法中transportkey初始化过程示意图;

图7为本发明实施例提供的另一用户身份识别方法流程示意图;

图8-1为本发明实施例提供的一种微控制单元mcu结构示意图;

图8-2为本发明实施例提供的另一种微控制单元mcu结构示意图;

图9-1为本发明实施例提供的一种安全芯片结构示意图;

图9-2为本发明实施例提供的另一种安全芯片结构示意图;

图10为本发明实施例提供的一种智能家居设备结构示意图;

图11为本发明实施例提供的另一种智能家居设备结构示意图;

图12为本发明实施例提供的一种智能家居设备用户身份识别过程示意图;

图13为本发明实施例提供的一种智能家居设备身份信息识别模板录入过程示意图;

图14-1为本发明实施例提供的又一种微控制单元mcu结构示意图;

图14-2为本发明实施例提供的再一种微控制单元mcu结构示意图;

图15-1为本发明实施例提供的又一种安全芯片结构示意图;

图15-2为本发明实施例提供的再一种安全芯片结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

下面分别对本发明实施例提供的一种用户身份识别方法、身份信息识别模板录入方法、相关装置、设备和系统的各种具体实施方式进行详细的说明。

参照图1所示,本发明实施例提供一种用户身份识别方法,涉及到微处理单元(microcontrollerunit,mcu)和安全芯片,对于mcu来说,上述方法包括:

s101:接收用户身份识别请求,获取所述用户身份识别请求中的用户身份认证信息;

s102:与安全芯片建立安全通道,通过安全通道接收所述安全芯片传送的加密密钥(useridentityinformationkey,idkey);

s103:通过所述idkey对预存的加密的用户身份信息识别模板进行解密,与所述用户身份认证信息进行比对,对用户身份进行识别。

参照图2所示,在一个实施例中,加密的用户身份信息识别模板通过下述方式得到:

s201:接收用户身份信息识别模板录入请求,获取所述用户身份信息识别模板录入请求中的用户身份信息识别模板;

s202:与安全芯片建立安全通道,通过安全通道接收所述安全芯片传送的加密密钥idkey;

s203:通过所述idkey对所述用户身份信息识别模板进行加密并存储。

本发明实施例提供的用户身份识别方法,通过安全通信方式获取存储在安全芯片的加密密钥idkey,采用idkey对用户身份信息识别模板进行加密,并存储在mcu。当用户需要进行身份验证时,mcu通过安全通信方式获取安全芯片中的idkey,使用idkey对用户身份信息识别模板进行解密,使用用户身份信息识别模板对用户身份认证信息进行验证,完成用户身份识别。通过idkey对用户身份信息识别模板进行加密,可以保证用户身份信息识别模板的安全性,即使mcu发生非法访问,被窃取了加密的用户身份信息识别模板,但由于非法访问者无法得到安全芯片中存储的idkey,从而无法对加密的用户身份信息识别模板进行解密,不能获取真实的用户身份信息。同时,mcu从安全芯片中获取idkey时,基于globalplatform规范与安全芯片建立安全通道,在安全会话过程中,每次会话均更新会话密钥,保证会话安全,mcu和安全芯片分别对接收的消息中的安全验证信息进行验证,对接收的消息进行认证,实现mcu和安全芯片双向鉴权,保证消息的机密性和完整性。本发明实施例提供的用户身份识别方法,能够有效保证用户身份信息识别模板的安全性。

本发明实施例中,由于用户身份信息识别模板本身的数据量较大,为了避免安全芯片本身的存储空间小、运行速度慢,而影响到安全芯片和mcu之间的通信效率,安全芯片只用于存储加密密钥idkey,而将用户身份信息识别模板通过加密密钥idkey进行加密后存储在mcu,既能够保证用户身份信息识别模板安全,也使得安全芯片在与mcu安全会话时,加密和解密的数据量减少,提高安全芯片的运行效率,实现安全芯片和mcu之间的消息快速收发。本发明实施例采用安全芯片对加密密钥idkey进行存储,以保证应用安全,而通过安全通道传送加密密钥idkey,保证传输安全,对传输的消息进行隐私保护。

参照图3所示,在一个实施例中,上述用户身份识别方法中,s102和s202所述与安全芯片建立安全通道包括:

向安全芯片发送选择安全域请求,所述安全域请求包括所选安全域的应用标识符(applicationidentifier,aid);接收安全芯片发送的选择安全域响应;

向安全芯片发送初始化更新initializeupdate请求;接收安全芯片发送的初始化更新initializeupdate响应,所述initializeupdate响应包括会话密钥和卡鉴别密码(cardcryptogram);

验证卡鉴别密码,验证成功后,生成新的会话密钥,计算主机端鉴别密码(hostcryptogram),计算主机端信息认证码(messageauthenticationcode,mac),通过向安全芯片发送外部认证externalauthenticate请求,将所述新的会话密钥、主机端鉴别密码和主机端mac发送到所述安全芯片;接收所述安全芯片发送的外部认证externalauthenticate响应。

本发明实施例中,所述新的会话密钥为根据mcu或安全芯片产生的新的会话序号生成的会话密钥。

作为本发明实施例的一个具体实施方式,mcu与安全芯片建立安全通道的步骤如下:

1)mcu发送选择安全域请求,所述安全域请求包括请求数据和所选择安全域的aid。

2)安全芯片根据接收的请求数据和所选择安全域的aid确定所选择安全域,发送选择安全域响应。

3)mcu向安全芯片发送initializeupdate请求。具体来讲,mcu还可以在向安全芯片发送initializeupdate请求前生成主机端随机数,并将主机端随机数加入到initializeupdate请求中。

4)安全芯片接收到initializeupdate请求,根据产生的本次初始化更新会话的会话序号,生成会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion,用至少包括会话序号、会话密钥和keyversion在内的因子计算卡鉴别密码,通过initializeupdate响应,将所述会话密钥和卡鉴别密码发送到mcu。具体来讲,安全芯片还可以在向mcu发送initializeupdate响应前生成卡随机数,并将卡随机数加入到initializeupdate响应中。

5)mcu接收到initializeupdate响应,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion,根据至少包括会话序号、会话密钥和keyversion在内的因子计算与安全芯片对应的卡验证密码,使用所述卡验证密码与接收到的所述卡鉴别密码进行比对,若相同,则验证成功;验证卡鉴别密码成功后,mcu产生新的会话序号,并根据所述新的会话序号生成新的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion和键值keyvalue,用至少包括所述新的会话序号、新的会话密钥、keyversion和keyvalue在内的因子计算主机端鉴别密码;用至少包括主机端鉴别密码在内的因子计算主机端mac。通过向安全芯片发送externalauthenticate请求将所述新的会话密钥、主机端鉴别密码和主机端mac发送到所述安全芯片。

6)安全芯片收到externalauthenticate请求,根据得到的至少包括主机端鉴别密码在内的因子计算主机端验证mac,使用所述主机端验证mac与主机端mac进行比对,若相同,则验证成功。根据本次外部认证会话的会话序号生成对应的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion和键值keyvalue,根据至少包括所述会话序号、会话密钥、keyversion和keyvalue在内的因子计算与所述mcu对应的主机端验证密码,使用所述主机端验证密码与所述主机端鉴别密码进行比对,若相同,则验证成功。验证主机端mac和主机端鉴别密码成功后,安全芯片产生新的会话序号,根据所述新的会话序号生成新的会话密钥,采用所述新的会话密钥加密响应数据,根据至少包括加密的响应数据在内的因子计算卡片mac,通过externalauthenticate响应将所述新的会话密钥、加密的响应数据和卡片mac发送到所述mcu。

在一个具体实施例中,可以是,mcu在向安全芯片发送externalauthenticate请求前生成主机端随机数,并将主机端随机数加入到所述externalauthenticate请求中。

在一个具体实施例中,可以是,安全芯片在向mcu发送externalauthenticate响应前生成卡随机数,并将卡随机数加入到所述externalauthenticate响应中。

参照图3所示,在一个具体实施例中,安全芯片在向mcu发送externalauthenticate响应前,还进行初始化完整性校验值(integritycheckvalue,icv),并将所述icv加入到所述externalauthenticate响应中。本实施例提供的用户身份识别方法中,icv的初始化以及对icv的验证方法与现有技术中相似,本实施例中不做限定。

参照图4所示,在一个实施例中,上述方法中,s102和s202所述通过安全通道接收所述安全芯片传送的加密密钥idkey包括:

产生新的会话序号,根据新的会话序号生成新的会话密钥、用新的会话密钥加密请求数据,计算新的主机端mac;

发送获取idkey请求,所述获取idkey请求包括所述新的会话密钥、加密的请求数据和新的主机端mac;

接收安全芯片发送的获取idkey响应,所述获取idkey响应包括使用新的会话密钥加密的包含idkey的响应数据和新的卡片mac;

对安全芯片发送的新的卡片mac进行验证,验证成功后,解密包含idkey的响应数据,获取所述idkey。

作为本发明实施例的一个具体实施方式,所述通过安全通道接收所述安全芯片传送的加密密钥idkey包括如下步骤:

1)mcu产生新的会话序号,根据新的会话序号生成新的会话密钥,采用该新的会话密钥对请求数据进行加密,用至少包括加密的请求数据在内的因子计算新的主机端mac,通过获取idkey请求将所述新的会话密钥、加密的请求数据和新的主机端mac发送到安全芯片。

2)安全芯片接收到获取idkey请求,根据得到的至少包括加密的请求数据在内的因子计算新的主机端验证mac,使用所述新的主机端验证mac与所述新的主机端mac进行比对,若相同,则新的主机端mac验证成功。验证成功后,根据本次获取idkey会话的会话序号生成相应的会话密钥,采用该对应的会话密钥对加密的请求数据进行解密,获取idkey;安全芯片产生新的会话序号,根据新的会话序号生成新的会话密钥,对包含idkey的响应数据进行加密,用至少包括加密的包含idkey的响应数据在内的因子计算新的卡片mac,通过获取idkey响应将新的会话密钥、加密的包含idkey的响应数据和新的卡片mac发送到所述mcu。

3)mcu接收所述获取idkey响应,根据得到的至少包括加密的包含idkey的响应数据在内的因子计算卡片验证mac,使用所述卡片验证mac与所述新的卡片mac进行比对,若相同,则验证成功。验证所述新的卡片mac成功后,根据本次获取idkey会话的会话序号生成对应的会话密钥,采用该对应的会话密钥解密包含idkey的响应数据,获取所述idkey。

在一个具体实施例中,上述方法中,所述idkey是由所述安全芯片根据第一次接收的获取idkey请求而生成的,或者是,预先存储在安全芯片中的。

在一个具体实施例中,可以是,mcu在向安全芯片发送获取idkey请求前生成主机端随机数,并将主机端随机数加入到所述获取idkey请求中。

在一个具体实施例中,可以是,安全芯片在向mcu发送获取idkey响应前生成卡随机数,并将卡随机数加入到所述获取idkey响应中。

在一个具体实施例中,以上所述新的会话序号是指在前一次会话结束后,mcu或安全芯片产生的用于下一次会话的会话序号;所述新的会话密钥为根据mcu或安全芯片产生的新的会话序号生成的会话密钥。具体来讲,mcu和安全芯片可以通过各自的会话计数器,对会话序号进行同步,保证mcu和安全芯片在进行一次会话时的会话序号相同。例如,可以是,mcu的会话计数器和安全芯片的会话计数器在进行下一次会话前,各自的会话计数器的会话序号的数值加1得到下一会话序号,即上述实施例中的新的会话序号。

在一个具体实施例中,上述方法中,mcu与安全芯片建立安全通道时选择的安全域可以是辅助安全域(supplementarysecuritydomain,ssd)或者是主安全域(issuersecuritydomain,isd)。

当建立安全通道选择的安全域为ssd时,mcu向安全芯片发送的安全域请求包括请求数据和所选择辅助安全域ssd的aid,建立安全通道时使用的安全域密钥为安全传输密钥transportkey,所述keyversion和keyvalue即对应该transportkey的keyversion和keyvalue;

当建立安全通道选择的安全域为isd时,mcu向安全芯片发送的安全域请求包括请求数据和所选择主安全域isd的aid,建立安全通道时使用的安全域密钥为主安全域密钥isdkey,所述keyversion和keyvalue即对应该isdkey的keyversion和keyvalue。

本发明实施例提供的用户身份识别方法中,mcu和安全芯片通过建立安全通道,传送idkey时,建立安全通道所选择的安全域可以是ssd和isd,本发明的发明人在进行实验时发现,在用户身份识别和用户身份信息识别模板录入过程中,建立安全通道用来传送idkey时,所选择的安全域为ssd时可以取得更好的应用效果,即采用上述实施例中的transportkey作为建立安全通道时使用的安全域密钥,这样在传送idkey时,mcu与安全芯片之间的通信使用ssd,在通信过程中不会影响到安全芯片上装载的其他应用的运行,从而保证安全芯片的运行效率。

参照图5-1所示,在一个具体实施例中,所述transportkey是在mcu接收用户身份信息识别模板录入请求之前,通过以下方式获得的:

s501:接收移动终端发送的初始化transportkey请求;

s502:生成transportkey并保存;

s503:获取安全芯片的卡生产生命周期(cardproductionlifecycle,cplc),通过预存的公钥证书对所述transportkey进行加密,将所述cplc和加密的transportkey上传远程服务器。

参照图5-2所示,在一个具体实施例中,所述用户身份识别方法,还包括:

s504:接收远程服务器根据所述cplc获取的安全芯片的主安全域密钥isdkey,接收远程服务器私钥证书加密的transportkey,使用所述公钥证书进行解密;

s505:与所述安全芯片建立安全通道,通过安全通道将所述transportkey发送到安全芯片。

在本发明实施例中,s505所述与所述安全芯片建立安全通道的步骤与上述实施例中s102和s202建立安全通道的步骤相近,在本实施例中不再赘述。需要说明的是,本实施例中,s505所述与所述安全芯片建立安全通道,安全芯片建立安全通道时的安全域为isd,也就是说,此时mcu向安全芯片发送的安全域请求包括请求数据和所选择主安全域isd的aid,建立安全通道时使用的安全域密钥为主安全域密钥isdkey,所述keyversion和keyvalue即对应该isdkey的keyversion和keyvalue。

参照图6所示,在一个具体实施例中,本发明实施例所述的transportkey的初始化过程包括如下步骤:

1)移动终端发送初始化transportkey请求,通过通信单元发送到所述mcu;

2)mcu接收初始化transportkey请求,生成transportkey,并保存在mcu的安全存储区;

3)mcu使用预存的公钥证书对transportkey进行加密,mcu获取安全芯片的cplc,将所述cplc和加密的transportkey上传远程服务器;

4)远程服务器验证所述transportkey,使用预存的私钥证书对所述transportkey进行加密,以及,根据所述cplc获取到安全芯片的主安全域密钥isdkey,准备指令发下transportkey到安全芯片,将安全芯片的isd的主安全域密钥isdkey和加密的transportkey发送到mcu;

5)mcu使用预存的公钥证书对所述transportkey进行解密,使用isdkey与安全芯片建立安全通道,通过安全通道将所述transportkey发送到安全芯片。

在一个具体实施例中,所述用户身份认证信息包括下述任意一种或多种的组合:密码信息、语音信息、指纹信息、面部信息和虹膜信息。

在一个具体实施例中,所述身份信息识别模板包括下述任意一种或多种的组合:密码模板、语音信息识别模板、指纹信息识别模板、面部信息识别模板和/或虹膜信息识别模板。

参照图7所示,本发明实施例提供一种用户身份识别方法,对于安全芯片来说,上述方法包括:

s701:与mcu建立安全通道,通过安全通道将加密密钥idkey传送到所述mcu。

在一个具体实施例中,所述的用户身份识别方法,还包括:

s702:在与微控制单元mcu建立安全通道,通过安全通道将加密密钥idkey传送到所述mcu之前,接收并存储由mcu发送的transportkey。

具体来讲,s702所述接收并存储由mcu发送的transportkey包括:与mcu建立安全通道,通过安全通道接收mcu发送的transportkey,并存储在安全芯片。

参照图3所示,在一个具体实施例中,所述的用户身份识别方法中,与微控制单元mcu建立安全通道包括:

接收mcu发送的选择安全域请求;发送选择安全域响应;

接收mcu发送的初始化更新请求;生成会话密钥,计算卡鉴别密码,通过初始化更新响应将所述会话密钥和卡鉴别密码发送到所述mcu;

接收mcu发送的外部认证请求,所述外部认证请求包括新的会话密钥、主机端鉴别密码和主机端mac;验证所述主机端mac和主机端鉴别密码,验证成功后,发送外部认证响应到所述mcu。

在一个具体实施例中,所述计算卡鉴别密码,包括:

产生本次初始化更新会话的会话序号,生成会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion,用至少包括会话序号、会话密钥和keyversion在内的因子计算卡鉴别密码;

所述验证主机端mac,包括:

根据得到的至少包括主机端鉴别密码在内的因子计算主机端验证mac,使用所述主机端验证mac与主机端mac进行比对,若相同,则验证成功;

所述验证主机端鉴别密码,包括:

根据本次外部认证会话的会话序号生成对应的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion和键值keyvalue,根据至少包括所述会话序号、会话密钥、keyversion和keyvalue在内的因子计算与所述mcu对应的主机端验证密码,使用所述主机端验证密码与所述主机端鉴别密码进行比对,若相同,则验证成功。

参照图4所示,在一个具体实施例中,所述用户身份识别方法中,通过安全通道将加密密钥idkey传送到所述mcu包括:

接收mcu发送的获取idkey请求,所述获取idkey请求包括根据会话序号生成的新的会话密钥、加密的请求数据和新的主机端mac;

验证所述新的主机端mac,验证成功后,解密请求数据,获取idkey,安全芯片产生新的会话序号,根据新的会话序号生成新的会话密钥,对包含idkey的响应数据进行加密,计算新的卡片mac,通过获取idkey响应将新的会话密钥、加密的包含idkey的响应数据和新的卡片mac发送到所述mcu。

本发明实施例中建立安全通道的步骤,以及通过安全通道将加密密钥idkey传送到所述mcu的步骤,在前述实施例中已经进行详细说明,重复之处,在此不再赘述。

基于同一发明构思,本发明实施例还提供了一种微控制单元mcu和一种安全芯片,由于这些装置所解决问题的原理与前述用户身份识别方法相似,因此这些装置的实施可以参见前述方法的实施,重复之处不再赘述。

参照图8-1所示,本发明实施例提供一种微控制单元mcu,包括:

获取模块801,用于接收用户身份识别请求,获取所述用户身份识别请求中的用户身份认证信息;

第一安全通信模块802,用于与所述安全芯片建立安全通道,通过安全通道接收所述安全芯片传送的加密密钥idkey;

识别模块803,用于通过所述idkey对预存的加密的用户身份信息识别模板进行解密,与所述用户身份认证信息进行比对,对用户身份进行识别。

在一个具体实施例中,所述获取模块801,还用于接收用户身份信息识别模板录入请求,获取所述用户身份信息识别模板录入请求中的用户身份信息识别模板。

参照图8-2所示,在一个具体实施例中,所述的微控制单元mcu,还包括:

加密及存储模块804,用于通过所述idkey对所述用户身份信息识别模板进行加密并存储。

参照图8-2所示,在一个具体实施例中,所述的微控制单元mcu,还包括:

密钥生成及发送模块805,用于接收移动终端发送的初始化transportkey请求;生成transportkey并保存;将通过预存的公钥证书加密的transportkey上传远程服务器。

参照图8-2所示,在一个具体实施例中,所述获取模块801,还用于获取安全芯片的cplc,接收远程服务器根据所述cplc获取的安全芯片的isdkey,以及接收远程服务器私钥证书加密的transportkey。

参照图8-2所示,在一个具体实施例中,所述第一安全通信模块802,还用于与所述安全芯片建立安全通道,通过安全通道将所述transportkey发送到安全芯片。

在一个具体实施例中,所述的微控制单元mcu,还包括:

mcu外部存储区,用于存储用户身份信息识别模板。

本发明实施例中,由于mcu的存储区域有限,在用户身份信息识别模板数据较大的情况下,可以通过连接外部存储区,将用户身份信息识别模板存储在mcu的外部存储区。

参照图9-1所示,本发明实施例提供一种安全芯片,包括:

第二安全通信模块901,用于与微控制单元mcu建立安全通道,通过安全通道将加密密钥idkey传送到所述mcu。

在一个具体实施例中,所述第二安全通信模块901,还用于与微控制单元mcu建立安全通道,通过安全通道接收由mcu发送的transportkey并存储。

参照图9-2所示,在一个具体实施例中,所述的安全芯片,还包括:

加密密钥生成模块902,用于生成idkey并存储。

在一个具体实施例中,上述实施例中的安全芯片为嵌入式安全芯片(embeddedsecureelement,ese)。

基于同一发明构思,本发明实施例还提供了一种智能家居设备,由于该智能家居设备包括了前述实施例中的mcu和安全芯片,所解决技术问题的原理与前述方法及装置相似,因此该智能家居设备的实施可以参见前述方法和装置的实施,重复之处不再赘述。

参照图10所示,本发明实施例提供一种智能家居设备,包括:

身份信息采集单元3、上述任一项所述的微控制单元mcu1和上述任一项所述的安全芯片2;所述mcu1与所述身份信息采集单元3和安全芯片2分别连接;

所述身份信息采集单元3,用于采集用户身份信息数据,提取用户身份信息识别模板以及用户身份认证信息。

参照图11所示,在一个具体实施例中,所述的智能家居设备,还包括:

通信单元4,用于与移动终端进行通信,将移动终端的请求发送到所述mcu,和/或,将mcu的消息发送到移动终端或通过移动终端将mcu的消息上传到远程服务器。

在一个具体实施例中,所述智能家居设备可以是,智能门锁、监控摄像机、智能电饭锅或智能灶台。

在一个具体实施例中,所述身份信息采集单元3可以是,采集密码的键盘、采集语音的声音传感器、采集指纹的指纹传感器、采集虹膜的虹膜传感器或采集面部信息的面部传感器中的一种或几种的组合。

本发明实施例中,当密码信息较为复杂,存储量较大时,可以把密码信息作为一种身份信息,身份信息采集单元3采集密码信息,得到密码模板,mcu获取所述用户身份信息识别模板录入请求中的密码模板,使用idkey对密码模板进行加密后存储在mcu,当接收到用户身份识别请求中的用户身份认证信息为密码信息时,通过解密所述密码模板与密码信息进行比对,对用户身份进行识别。

本发明实施例中,当用户身份认证信息为语音信息、指纹信息、面部信息或虹膜信息时,身份信息采集单元3采集身份信息图像,即声波图像、指纹图像、面部图像或虹膜图像;提取身份信息图像中的身份信息,得到用户身份信息识别模板。mcu获取所述用户身份信息识别模板录入请求中的语音信息识别模板、指纹信息识别模板、面部信息识别模板或虹膜信息识别模板,使用idkey对相应模板进行加密后存储在mcu,当接收到用户身份识别请求中的用户身份认证信息为语音信息、指纹信息、面部信息或虹膜信息时,通过解密相应模板与用户身份认证信息进行比对,对用户身份进行识别。

在一个具体实施例中,所述通信单元4可以是蓝牙单元、wifi单元、红外单元等无线网络单元,也可以是有线网络单元。只要能够实现智能家居设备与移动终端进行通信即可,本发明实施例中不做限定。

参照图12,下面以采用指纹为例说明智能家居设备的用户身份识别过程:

智能家居设备通过身份信息采集单元即指纹传感器采集用户指纹图像,提取用户身份认证信息即指纹信息;

指纹传感器发起用户身份识别请求,智能家居设备的mcu获取所述用户身份识别请求中的指纹信息,与安全芯片建立安全通道,读取加密密钥idkey;

使用idkey对预先存储的用户身份信息识别模板即指纹模板进行解密,与所述指纹信息进行比对,完成对用户身份的识别。

进一步的,在完成身份识别后,智能家居设备,可以通过语音或电子屏显示等方式,提示用户身份识别结果,决定是否进行下一步的动作。更进一步的,当该智能家居设备为智能门锁时,智能门锁可以根据用户身份识别结果决定是否开启智能门锁的机械或电气结构,完成开锁;当该智能家居设备为监控摄像机时,监控摄像机可以根据用户身份识别结果决定是否开启监控摄像机的摄像头记录摄像信息;当该智能家居设备为智能电饭锅时,智能电饭锅可以根据用户身份识别结果决定是否开启智能电饭锅的电气开关连接电源;当该智能家居设备为智能灶台时,智能灶台可以根据用户身份识别结果决定是否开启智能灶台的点火机构并通入燃气。

参照图13,下面以采用指纹为例说明智能家居设备的身份信息识别模板录入过程:

智能家居设备通过身份信息采集单元即指纹传感器采集用户指纹图像,提取指纹模板;

指纹传感器发起用户身份信息识别模板录入请求,智能家居设备的mcu获取用户身份信息识别模板录入请求中的指纹模板,与安全芯片建立安全通道,读取加密密钥idkey;

使用idkey对指纹模板进行加密并存储。

进一步的,在完成指纹模板录入后,智能家居设备,可以通过语音或电子屏显示等方式,提示用户指纹模板录入结果。

基于同一发明构思,本发明实施例还提供了一种智能家居系统,由于该智能家居系统包括了前述实施例中的智能家居设备,所解决技术问题的原理与前述方法、装置及设备相似,因此该智能家居系统的实施可以参见前述方法、装置和设备的实施,重复之处不再赘述。

本发明实施例提供一种智能家居系统,包括:远程服务器和前述任一项所述的智能家居设备。

在一个具体实施例中,所述远程服务器,用于接收移动终端传送的智能家居设备发送的消息,以及通过移动终端将消息发送到所述智能家居设备。

在一个具体实施例中,所述智能家居系统还包括移动终端,所述移动终端,用于接收所述智能家居设备或所述远程服务器发送的消息,以及向所述智能家居设备或所述远程服务器发送消息。

基于同一发明构思,本发明实施例还提供了一种身份信息识别模板录入方法及装置,由于这些方法和装置所解决问题的原理与前述用户身份识别方法和装置相似,因此该方法和装置的实施可以参见前述方法和装置的实施,重复之处不再赘述。

参照图2所示,本发明实施例提供一种身份信息识别模板录入方法,涉及到微处理单元(microcontrollerunit,mcu)和安全芯片,对于mcu来说,上述方法包括:

s201:接收用户身份信息识别模板录入请求,获取所述用户身份信息识别模板录入请求中的用户身份信息识别模板;

s202:与安全芯片建立安全通道,通过安全通道接收所述安全芯片传送的加密密钥idkey;

s203:通过所述idkey对所述用户身份信息识别模板进行加密并存储。

参照图3所示,在一个实施例中,上述用户身份识别方法中,s202所述与安全芯片建立安全通道包括:

向安全芯片发送选择安全域请求,所述安全域请求包括所选安全域的aid;接收安全芯片发送的选择安全域响应;

向安全芯片发送初始化更新请求;接收安全芯片发送的初始化更新响应,所述初始化更新响应包括会话密钥和卡鉴别密码;

验证卡鉴别密码,验证成功后,生成新的会话密钥,计算主机端鉴别密码,计算主机端mac,通过向安全芯片发送外部认证请求,将所述新的会话密钥、主机端鉴别密码和主机端mac发送到所述安全芯片;接收所述安全芯片发送的外部认证响应;

所述新的会话密钥为根据mcu或安全芯片产生的新的会话序号生成的会话密钥。

作为本发明实施例的一个具体实施方式,mcu与安全芯片建立安全通道的步骤如下:

1)选择安全域请求,mcu向安全芯片发送的安全域请求包括请求数据和所选择安全域的aid。

2)安全芯片根据接收的请求数据和所选择安全域的aid确定所选择安全域,发送选择安全域响应。

3)mcu向安全芯片发送初始化更新initializeupdate请求。具体来讲,mcu还可以在向安全芯片发送initializeupdate请求前生成主机端随机数,并将主机端随机数加入到initializeupdate请求中。

4)安全芯片接收到的initializeupdate请求,根据产生的本次初始化更新会话的会话序号,生成会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion,用至少包括会话序号、会话密钥和keyversion在内的因子计算卡鉴别密码,通过initializeupdate响应,将所述会话密钥和卡鉴别密码发送到mcu。具体来讲,安全芯片还可以在向mcu发送initializeupdate响应前生成卡随机数,并将卡随机数加入到initializeupdate响应中。

5)mcu接收到initializeupdate响应,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion,根据至少包括会话序号、会话密钥和keyversion在内的因子计算与安全芯片对应的卡验证密码,使用所述卡验证密码与接收到的所述卡鉴别密码进行比对,若相同,则验证成功;验证卡鉴别密码成功后,mcu产生新的会话序号,并根据所述新的会话序号生成新的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion和键值keyvalue,用至少包括所述新的会话序号、新的会话密钥、keyversion和keyvalue在内的因子计算主机端鉴别密码;用至少包括主机端鉴别密码在内的因子计算主机端mac。通过向安全芯片发送外部认证(externalauthenticate)请求将所述新的会话密钥、主机端鉴别密码和主机端mac发送到所述安全芯片。

6)安全芯片收到externalauthenticate请求,根据得到的至少包括主机端鉴别密码在内的因子计算主机端验证mac,使用所述主机端验证mac与主机端mac进行比对,若相同,则验证成功。根据本次外部认证会话的会话序号生成对应的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion和键值keyvalue,根据至少包括所述会话序号、会话密钥、keyversion和keyvalue在内的因子计算与所述mcu对应的主机端验证密码,使用所述主机端验证密码与所述主机端鉴别密码进行比对,若相同,则验证成功。验证主机端mac和主机端鉴别密码成功后,安全芯片产生新的会话序号,根据所述新的会话序号生产新的会话密钥,加密响应数据,计算卡片mac,通过externalauthenticate响应将所述新的会话密钥、加密的响应数据和卡片mac发送到所述mcu。

在一个具体实施例中,可以是,mcu在向安全芯片发送externalauthenticate请求前生成主机端随机数,并将主机端随机数加入到所述externalauthenticate请求中。

在一个具体实施例中,可以是,安全芯片在向mcu发送externalauthenticate响应前生成卡随机数,并将卡随机数加入到所述externalauthenticate响应中。

在一个具体实施例中,安全芯片在向mcu发送externalauthenticate响应前,还进行初始化完整性校验值(integritycheckvalue,icv),并将所述icv加入到所述externalauthenticate响应中。icv的初始化以及对icv的验证方法与现有技术中相似,本实施例中不做限定。

在一个实施例中,通过安全通道接收所述安全芯片传送的加密密钥idkey包括:

产生新的会话序号,根据新的会话序号生成新的会话密钥、用新的会话密钥加密请求数据,计算新的主机端mac;

发送获取idkey请求,所述获取idkey请求包括所述新的会话密钥、加密的请求数据和新的主机端mac;

接收安全芯片发送的获取idkey响应,所述获取idkey响应包括使用新的会话密钥加密的包含idkey的响应数据和新的卡片mac;

对安全芯片发送的新的卡片mac进行验证,验证成功后,解密包含idkey的响应数据,获取所述idkey。

作为本发明实施例的一个具体实施方式,通过安全通道接收所述安全芯片传送的加密密钥idkey包括如下步骤:

1)mcu产生新的会话序号,根据新的会话序号产生新的会话密钥,采用该新的会话密钥对请求数据进行加密,用至少包括加密的请求数据在内的因子计算新的主机端mac,通过获取idkey请求将所述新的会话密钥、加密的请求数据和新的主机端mac发送到安全芯片。

2)安全芯片接收到获取idkey请求,根据得到的至少包括加密的请求数据在内的因子计算新的主机端验证mac,使用所述新的主机端验证mac与所述新的主机端mac进行比对,若相同,则新的主机端mac验证成功。验证成功后,根据本次获取idkey会话的会话序号生成新的会话密钥,对加密的请求数据进行解密,获取idkey,产生新的会话序号,根据新的会话序号生成新的会话密钥,对包含idkey的响应数据进行加密,用至少包括加密的包含idkey的响应数据在内的因子计算新的卡片mac,通过获取idkey响应将新的会话密钥、加密的包含idkey的响应数据和新的卡片mac发送到所述mcu。

3)mcu根据得到的至少包括加密的包含idkey的响应数据在内的因子计算卡片验证mac,使用所述卡片验证mac与所述新的卡片mac进行比对,若相同,则验证成功。验证新的卡片mac成功后,根据本次获取idkey会话的会话序号生成对应的新的会话密钥,解密包含idkey的响应数据,获取所述idkey。

在一个具体实施例中,可以是,mcu在向安全芯片发送获取idkey请求前生成主机端随机数,并将主机端随机数加入到所述获取idkey请求中。

在一个具体实施例中,可以是,安全芯片在向mcu发送获取idkey响应前生成卡随机数,并将卡随机数加入到所述获取idkey响应中。

在一个具体实施例中,所述加密密钥idkey由所述安全芯片根据第一次接收的获取idkey请求生成并存储在安全芯片中的。

在一个具体实施例中,以上所述新的会话序号是指在前一次会话结束后,mcu或安全芯片产生的用于下一次会话的会话序号;所述新的会话密钥为根据mcu或安全芯片产生的新的会话序号生成的会话密钥。具体来讲,mcu和安全芯片可以通过各自的会话计数器,对会话序号进行同步,保证mcu和安全芯片在进行一次会话时的会话序号相同。例如,可以是,mcu的会话计数器和安全芯片的会话计数器在进行下一次会话前,各自的会话计数器的会话序号的数值加1产生下一次的会话序号。

在一个具体实施例中,上述具体实施方式中,mcu与安全芯片建立安全通道时选择的安全域可以是辅助安全域ssd或者是主安全域isd。

当建立安全通道选择的安全域为ssd时,mcu向安全芯片发送的安全域请求包括请求数据和所选择辅助安全域ssd的aid,建立安全通道时使用的安全域密钥为安全传输密钥transportkey;

当建立安全通道选择的安全域为isd时,mcu向安全芯片发送的安全域请求包括请求数据和所选择主安全域isd的aid,建立安全通道时使用的安全域密钥为主安全域密钥isdkey。

参照图7,本发明实施例提供一种身份信息识别模板录入方法,对于安全芯片来说,上述方法包括:

s701:与微控制单元mcu建立安全通道,通过安全通道将加密密钥idkey传送到所述mcu。

在一个具体实施例中,所述的用户身份识别方法,还包括:

s702:在与微控制单元mcu建立安全通道,通过安全通道将加密密钥idkey传送到所述mcu之前,通过安全通道接收由mcu发送的transportkey并存储。

具体来讲,s702所述通过安全通道接收由mcu发送的transportkey并存储包括:与mcu建立安全通道,通过安全通道接收mcu发送的transportkey,保存在安全芯片。

参照图3所示,在一个具体实施例中,所述的用户身份识别方法中,与微控制单元mcu建立安全通道包括:

接收mcu发送的选择安全域请求;发送选择安全域响应;

接收mcu发送的初始化更新请求;生成会话密钥,计算卡鉴别密码,通过初始化更新响应将所述会话密钥和卡鉴别密码发送到所述mcu;

接收mcu发送的外部认证请求,所述外部认证请求包括新的会话密钥、主机端鉴别密码和主机端mac;验证所述主机端mac和主机端鉴别密码,验证成功后,发送外部认证响应到所述mcu。

在一个具体实施例中,所述计算卡鉴别密码,包括:

产生本次初始化更新会话的会话序号,生成会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion,用至少包括会话序号、会话密钥和keyversion在内的因子计算卡鉴别密码;

所述验证主机端mac,包括:

根据得到的至少包括主机端鉴别密码在内的因子计算主机端验证mac,使用所述主机端验证mac与主机端mac进行比对,若相同,则验证成功;

所述验证主机端鉴别密码,包括:

根据本次外部认证会话的会话序号生成对应的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号keyversion和键值keyvalue,根据至少包括所述会话序号、会话密钥、keyversion和keyvalue在内的因子计算与所述mcu对应的主机端验证密码,使用所述主机端验证密码与所述主机端鉴别密码进行比对,若相同,则验证成功。

参照图4所示,在一个具体实施例中,所述用户身份识别方法中,通过安全通道将加密密钥idkey传送到所述mcu包括:

接收mcu发送的获取idkey请求,所述获取idkey请求包括根据会话序号生成的新的会话密钥、加密的请求数据和新的主机端mac;

验证所述新的主机端mac,验证成功后,解密请求数据,获取idkey,安全芯片产生新的会话序号,根据新的会话序号生成新的会话密钥,对包含idkey的响应数据进行加密,计算新的卡片mac,通过获取idkey响应将新的会话密钥、加密的包含idkey的响应数据和新的卡片mac发送到所述mcu。

本发明实施例中建立安全通道的步骤,以及通过安全通道将加密密钥idkey传送到所述mcu的步骤,在前述实施例中已经进行详细说明,重复之处,在此不再赘述。

参照图14-1,本发明实施例提供一种微控制单元mcu,包括:

获取模块141,用于接收用户身份信息识别模板录入请求,获取所述用户身份信息识别模板录入请求中的用户身份信息识别模板;

第一安全通信模块142,用于与所述安全芯片建立安全通道,通过安全通道接收所述安全芯片传送的加密密钥idkey;

加密及存储模块143,用于通过所述idkey对所述用户身份信息识别模板进行加密并存储。

在一个具体实施例中,所述的微控制单元mcu,还包括:

密钥生成及发送模块144,用于接收移动终端发送的初始化transportkey请求;生成transportkey并保存;通过预存的公钥证书对所述transportkey进行加密并上传远程服务器。

在一个具体实施例中,所述的微控制单元mcu,还包括:

mcu外部存储区,用于存储用户身份信息识别模板。

本发明实施例中,由于mcu的存储区域有限,在用户身份信息识别模板数据较大的情况下,可以通过连接外部存储区,将用户身份信息识别模板存储在mcu的外部存储区。

参照图15-1所示,本发明实施例提供一种安全芯片,包括:

第二安全通信模块151,用于与微控制单元mcu建立安全通道,通过安全通道将加密密钥idkey传送到所述mcu。

在一个具体实施例中,所述第二安全通信模块151,还用于接收由mcu发送到远程服务器进行验证后的transportkey,并存储到安全域。

参照图15-2所示,在一个具体实施例中,所述的安全芯片,还包括:

加密密钥生成模块152,用于生成idkey并存储。

本发明实施例还提供一种智能家居设备和一种智能家居系统,所述智能家居设备和系统的组成及原理与前述实施例中的智能家居设备和系统相似,在此不再赘述。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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