CN108768621B - 一种密码获取方法、验证方法、相关装置、设备和系统 - Google Patents
一种密码获取方法、验证方法、相关装置、设备和系统 Download PDFInfo
- Publication number
- CN108768621B CN108768621B CN201810258147.9A CN201810258147A CN108768621B CN 108768621 B CN108768621 B CN 108768621B CN 201810258147 A CN201810258147 A CN 201810258147A CN 108768621 B CN108768621 B CN 108768621B
- Authority
- CN
- China
- Prior art keywords
- password
- key
- mcu
- security
- host
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 96
- 238000012795 verification Methods 0.000 title claims abstract description 95
- 230000004044 response Effects 0.000 claims description 59
- 238000004891 communication Methods 0.000 claims description 26
- 230000005540 biological transmission Effects 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 2
- 240000007594 Oryza sativa Species 0.000 claims 1
- 235000007164 Oryza sativa Nutrition 0.000 claims 1
- 235000009566 rice Nutrition 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 25
- 230000008569 process Effects 0.000 description 12
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 4
- 238000010411 cooking Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开一种密码获取方法、装置、设备和系统,所述方法,包括:与MCU建立安全通道,通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储。解决了现有技术中设定密码存储在微控制单元MCU,易被外部攻击,密码被窃取的问题。本发明还公开一种密码验证方法、装置、设备和系统。
Description
技术领域
本发明涉及一种密码获取方法、密码验证方法、相关装置、设备和系统。
背景技术
随着信息化系统和物联网技术的发展,一些日常生活中的设备都已实现智能化,例如:监控摄像机、智能门锁等都已经通过网络硬件和软件的方式实现联网认证和控制,通过密码验证来保证智能化设备的使用安全性,防止不法人员的非法操作。智能化设备因其便捷的操作性能和先进的技术体验正在改变人们的生活品质,为人们带来便捷的使用体验。人们通过事先将目标密码录入到智能设备,通过密码访问就可以控制智能设备。但是当前使用的智能设备连接到网络,会存在被网络攻击的风险,人们对安全性的担忧,一定程度上影响了智能设备的普及。当前智能设备中,一般是通过微控制单元MCU存储密码,而微控制单元MCU存在被外部攻击的风险,如果MCU被攻击或非法接入,导致其中的密码泄露,会威胁到用户的工作或者居住安全,给用户的生产生活带来不必要的麻烦。因此,提高现有的智能设备的安全性能,保证智能设备在使用时的安全性和可靠性是当前亟待解决的一个问题。
发明内容
鉴于现有技术中存在的技术缺陷和技术弊端,本发明实施例提供克服上述问题或者至少部分地解决上述问题的一种密码获取方法、密码验证方法、相关装置、设备和系统。
作为本发明实施例的一个方面,涉及一种密码获取方法,包括:
与MCU建立安全通道,通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储。
在一个实施例中,所述的密码获取方法,在与MCU建立安全通道,通过安全通道接收存储设定密码请求之前,还包括:
与MCU建立安全通道,通过安全通道接收MCU发送的安全传输密钥Transport Key,所述Transport Key是由远程服务器验证后发送到MCU的。
在一个实施例中,所述的密码获取方法中,与微控制单元MCU建立安全通道包括:
接收MCU发送的选择安全域请求,发送选择安全域响应;
接收MCU发送的初始化更新请求;生成会话密钥,计算卡鉴别密码,通过初始化更新响应将所述会话密钥和卡鉴别密码发送到所述MCU;
接收MCU发送的外部认证请求,所述外部认证请求包括新的会话密钥、主机端鉴别密码和主机端信息认证码MAC;验证所述主机端MAC和主机端鉴别密码,验证成功后,发送外部认证响应到所述MCU;
所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥。
在一个实施例中,所述的密码获取方法中,所述计算卡鉴别密码,包括:
产生本次初始化更新会话的会话序号,生成会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version,用至少包括会话序号、会话密钥和Key Version在内的因子计算卡鉴别密码;
所述验证主机端MAC,包括:
根据得到的至少包括主机端鉴别密码在内的因子计算主机端验证MAC,使用所述主机端验证MAC与主机端MAC进行比对,若相同,则验证成功;
所述验证主机端鉴别密码,包括:
根据本次外部认证会话的会话序号生成对应的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version和键值KeyValue,根据至少包括所述会话序号、会话密钥、Key Version和Key Value在内的因子计算与所述MCU对应的主机端验证密码,使用所述主机端验证密码与所述主机端鉴别密码进行比对,若相同,则验证成功。
在一个实施例中,所述的密码获取方法中,所述选择安全域请求包括请求数据和所选择安全域的AID;
在接收存储设定密码请求之前,与微控制单元MCU建立安全通道时选择的安全域为主安全域ISD,对应的,所述安全域密钥为主安全域密钥ISD Key;
在接收存储设定密码请求之后,与微控制单元MCU建立安全通道时选择的安全域为ISD或辅助安全域SSD,对应的,所述安全域密钥为主安全域密钥ISD Key或SSD的Transport Key。
在一个实施例中,所述的密码获取方法,还包括:
接收的所述初始化更新请求中还包括主机端随机数;
在向MCU发送初始化更新响应前生成卡随机数,并将卡随机数加入所述初始化更新响应中。
在一个实施例中,所述的密码获取方法中,通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储包括:
接收MCU发送的存储设定密码请求,所述存储设定密码请求包括新的会话密钥、加密的包含设定密码的请求数据和主机端MAC;
验证所述主机端MAC,验证成功后,解密所述包含设定密码的请求数据,获取设定密码并存储。
作为本发明实施例的另一个方面,涉及一种密码获取方法,包括:
接收存储设定密码请求,获取设定密码;
与安全芯片建立安全通道,通过安全通道将设定密码发送到安全芯片。
在一个实施例中,所述的密码获取方法,还包括:
接收存储设定密码请求之前,通过下述方式将建立安全通道使用的安全传输密钥Transport Key发送到安全芯片:
接收移动终端发送的初始化Transport Key请求;
生成Transport Key并保存;
通过预存的公钥证书对所述Transport Key进行加密并上传远程服务器;
接收由远程服务器验证后发送的Transport Key,与安全芯片建立安全通道,通过安全通道将Transport Key发送到安全芯片。
在一个实施例中,所述的密码获取方法中,与安全芯片建立安全通道包括:
向安全芯片发送选择安全域请求,接收安全芯片发送的选择安全域响应;
向安全芯片发送初始化更新请求;接收安全芯片发送的初始化更新响应,所述初始化更新响应包括会话密钥和卡鉴别密码;
验证卡鉴别密码,验证成功后,生成新的会话密钥,计算主机端鉴别密码,计算主机端信息认证码MAC,通过向安全芯片发送外部认证请求将所述新的会话密钥、主机端鉴别密码和主机端MAC发送到所述安全芯片;接收所述安全芯片发送的外部认证响应;
所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥。
在一个实施例中,所述的密码获取方法中,所述验证卡鉴别密码,包括:
根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version,根据至少包括会话序号、会话密钥和Key Version在内的因子计算与安全芯片对应的卡验证密码,使用所述卡验证密码与接收到的所述卡鉴别密码进行比对,若相同,则验证成功;
所述计算主机端鉴别密码,包括:
产生新的会话序号,生成新的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version和键值Key Value,用至少包括所述新的会话序号、新的会话密钥、Key Version和Key Value在内的因子计算主机端鉴别密码;
所述新的会话序号是指在前一次会话结束后,MCU产生的用于下一次会话的会话序号;
所述计算主机端MAC,包括:
用至少包括主机端鉴别密码在内的因子计算主机端MAC。
作为本发明实施例的再一方面,涉及一种安全芯片,包括:
第一安全通信模块,用于与微处理单元MCU建立安全通道,通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储。
在一个实施例中,所述的安全芯片中,第一安全通信模块,还用于与微控制单元MCU建立安全通道,通过安全通道接收MCU发送的安全传输密钥Transport Key,所述Transport Key是由远程服务器验证后发送到MCU的。
作为本发明实施例的又一方面,涉及一种微控制单元MCU,包括:
获取模块,用于接收存储设定密码请求,获取设定密码;
第二安全通信模块,用于与安全芯片建立安全通道,通过安全通道将设定密码存储到安全芯片。
在一个实施例中,所述的微控制单元MCU,还包括:
密钥生成及收发模块,用于接收移动终端发送的初始化Transport Key请求,生成Transport Key并保存;通过预存的公钥证书对所述Transport Key进行加密并上传远程服务器;接收由远程服务器验证后发送的Transport Key,与安全芯片建立安全通道,通过安全通道将Transport Key发送到安全芯片。
作为本发明实施例的第五个方面,还涉及一种智能家居设备,包括:
密码信息采集单元、上述任一项所述的安全芯片和上述任一项所述的微控制单元MCU;
所述密码信息采集单元,用于采集设定密码,并发送给MCU。
在一个实施例中,所述的智能家居设备,还包括:
通信单元,与MCU连接,用于MCU与移动终端之间进行通信。
在一个实施例中,所述智能家居设备为智能门锁、监控摄像机、智能电饭锅或智能灶台。
作为本发明实施例的第六个方面,还涉及一种智能家居系统,包括:远程服务器和上述任一项所述的智能家居设备。
作为本发明实施例的第七个方面,还涉及一种密码验证方法,包括:
与MCU建立安全通道,通过安全通道接收存储设定密码请求,获取所述存储设定密码中的设定密码并存储;
当接收到微处理单元MCU发送的待验证密码时,将所述待验证密码与设定密码进行匹配,对所述待验证密码进行校验,并返回校验结果。
作为本发明实施例的第八个方面,还涉及一种密码验证方法,包括:
接收存储设定密码请求,获取设定密码;
与安全芯片建立安全通道,通过安全通道将设定密码发送到安全芯片;
当接收到待验证密码时,将所述待验证密码发送到安全芯片,并接收返回的对待验证密码的校验结果。
作为本发明实施例的第九个方面,还涉及一种安全芯片,包括:
第一安全通信模块,用于与微处理单元MCU建立安全通道,通过安全通道接收存储设定密码请求,获取所述存储设定密钥请求中的设定密码并存储;
验证模块,用于当接收到微处理单元MCU发送的待验证密码时,将所述待验证密码与设定密码进行匹配,对所述待验证密码进行校验,并返回校验结果。
作为本发明实施例的第十个方面,还涉及一种微控制单元MCU,包括:
获取模块,用于接收存储设定密码请求,获取设定密码;
第二安全通信模块,与安全芯片建立安全通道,通过安全通道将设定密码存储到安全芯片;
收发模块,用于当接收到待验证密码时,将所述待验证密码发送到安全芯片,并接收返回的对待验证密码的校验结果。
本发明实施例至少实现了如下技术效果:
本发明实施例提供的密码获取方法,通过安全通信方式将设定密码存储到安全芯片,可以保证设定密码的安全性,防止因设备故障或失电造成设定密码丢失,即使发生非法访问,非法访问者也无法得到安全芯片中存储的设定密码,提高密码的隐秘性和安全性。同时,MCU将设定密码发送到安全芯片时,基于Global Platform规范与安全芯片建立安全通道,在安全会话过程中,动态的更新会话密钥,保证会话安全,MCU和安全芯片分别对接收的消息中的安全验证信息进行验证,对接收的消息进行认证,实现MCU和安全芯片双向鉴权,保证消息的机密性和完整性。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所记载的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例提供的密码获取方法流程示意图;
图2为本发明实施例提供的密码获取方法MCU与安全芯片建立安全通道示意图;
图3为本发明实施例提供的密码获取方法MCU向安全芯片发送设定密码过程示意图;
图4为本发明实施例提供的密码获取方法Transport Key存储流程示意图;
图5为本发明实施例提供的密码获取方法Transport Key初始化过程示意图;
图6为本发明实施例提供的另一密码获取方法流程示意图;
图7-1为本发明实施例提供的密码获取方法Transport Key初始化流程示意图;
图7-2为本发明实施例提供的密码获取方法Transport Key初始化及存储流程示意图;
图8为本发明实施例提供的一种安全芯片结构示意图;
图9-1为本发明实施例提供的一种微控制单元MCU结构示意图;
图9-2为本发明实施例提供的另一种微控制单元MCU结构示意图;
图10为本发明实施例提供的一种智能家居设备结构示意图;
图11为本发明实施例提供的另一种智能家居设备结构示意图;
图12为本发明实施例提供的一种智能家居设备设定密码获取过程示意图;
图13为本发明实施例提供的密码验证方法流程示意图;
图14为本发明实施例提供的另一密码验证方法流程示意图;
图15为本发明实施例提供的又一种安全芯片结构示意图;
图16为本发明实施例提供的又一种微控制单元MCU结构示意图;
图17为本发明实施例提供的又一种智能家居设备结构示意图;
图18为本发明实施例提供的再一种智能家居设备结构示意图;
图19为本发明实施例提供的一种智能家居设备密码验证过程示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
下面分别对本发明实施例提供的一种密码获取方法、密码验证方法、相关装置、设备和系统的各种具体实施方式进行详细的说明。
参照图1所示,本发明实施例提供一种密码获取方法,涉及到微处理单元(Microcontroller Unit,MCU)和安全芯片,对于安全芯片来说,上述方法包括:
S101:与MCU建立安全通道,通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储。
本发明实施例提供的密码获取方法,通过安全通信方式将设定密码存储到安全芯片,可以保证设定密码的安全性,防止因设备故障或失电造成设定密码丢失,即使发生非法访问,非法访问者也无法得到安全芯片中存储的设定密码,提高密码的隐秘性和安全性。同时,MCU将设定密码发送到安全芯片时,基于Global Platform规范与安全芯片建立安全通道,在安全会话过程中,动态的更新会话密钥,保证会话安全,MCU和安全芯片分别对接收的消息中的安全验证信息进行验证,对接收的消息进行认证,实现MCU和安全芯片双向鉴权,保证消息的机密性和完整性。
参照图2所示,在一个实施例中,上述密码获取方法中,S101所述与微控制单元MCU建立安全通道包括:
接收MCU发送的选择安全域请求,发送选择安全域响应;
接收MCU发送的初始化更新INITIALIZE UPDATE请求;生成会话密钥,计算卡鉴别密码(Card Cryptogram),通过初始化更新INITIALIZE UPDATE响应将所述会话密钥和卡鉴别密码发送到所述MCU;
接收MCU发送的外部认证EXTERNAL AUTHENTICAT请求,所述外部认证EXTERNALAUTHENTICAT请求包括新的会话密钥、主机端鉴别密码(Host Cryptogram)和主机端信息认证码(Message Authentication Code,MAC);验证所述主机端MAC和主机端鉴别密码,验证成功后,发送外部认证EXTERNAL AUTHENTICAT响应到所述MCU。
本发明实施例中,所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥。
作为本发明实施例的一个具体实施方式,MCU与安全芯片建立安全通道的步骤如下:
1)MCU发送选择安全域请求,所述安全域请求包括请求数据和所选择安全域的应用标识符(Application Identifier,AID)。
2)安全芯片根据接收的请求数据和所选择安全域的AID确定所选择安全域,发送选择安全域响应。
3)MCU向安全芯片发送INITIALIZE UPDATE请求。具体来讲,MCU还可以在向安全芯片发送INITIALIZE UPDATE请求前生成主机端随机数,并将主机端随机数加入到INITIALIZE UPDATE请求中。
4)安全芯片接收到INITIALIZE UPDATE请求,根据产生的本次初始化更新会话的会话序号生成会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version,用至少包括会话序号、会话密钥和Key Version在内的因子计算卡鉴别密码,通过INITIALIZE UPDATE响应,将所述会话密钥和卡鉴别密码发送到MCU。具体来讲,安全芯片还可以在向MCU发送INITIALIZE UPDATE响应前生成卡随机数,并将卡随机数加入到INITIALIZE UPDATE响应中。
5)MCU接收到INITIALIZE UPDATE响应,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version,根据至少包括会话序号、会话密钥和Key Version在内的因子计算与安全芯片对应的卡验证密码,使用所述卡验证密码与接收到的所述卡鉴别密码进行比对,若相同,则验证成功;验证卡鉴别密码成功后,MCU产生新的会话序号,并根据所述新的会话序号生成新的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version和键值Key Value,用至少包括所述新的会话序号、新的会话密钥、Key Version和Key Value在内的因子计算主机端鉴别密码;用至少包括主机端鉴别密码在内的因子计算主机端MAC。通过向安全芯片发送EXTERNAL AUTHENTICATE请求将所述新的会话密钥、主机端鉴别密码和主机端MAC发送到所述安全芯片。
6)安全芯片收到EXTERNAL AUTHENTICATE请求,根据得到的至少包括主机端鉴别密码在内的因子计算主机端验证MAC,使用所述主机端验证MAC与主机端MAC进行比对,若相同,则验证成功。根据本次外部认证会话的会话序号生成对应的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version和键值Key Value,根据至少包括所述会话序号、会话密钥、Key Version和Key Value在内的因子计算与所述MCU对应的主机端验证密码,使用所述主机端验证密码与所述主机端鉴别密码进行比对,若相同,则验证成功。验证主机端MAC和主机端鉴别密码成功后,安全芯片产生新的会话序号,根据所述新的会话序号生成新的会话密钥,采用所述新的会话密钥加密响应数据,根据至少包括加密的响应数据在内的因子计算卡片MAC,通过EXTERNALAUTHENTICATE响应将所述新的会话密钥、加密的响应数据和卡片MAC发送到所述MCU。
在一个具体实施例中,可以是,MCU在向安全芯片发送EXTERNAL AUTHENTICATE请求前生成主机端随机数,并将主机端随机数加入到所述EXTERNAL AUTHENTICATE请求中。
在一个具体实施例中,可以是,安全芯片在向MCU发送EXTERNAL AUTHENTICATE响应前生成卡随机数,并将卡随机数加入到所述EXTERNAL AUTHENTICATE响应中。
参照图2所示,在一个具体实施例中,安全芯片在向MCU发送EXTERNALAUTHENTICATE响应前,还进行初始化完整性校验值(Integrity Check Value,ICV),并将所述ICV加入到所述EXTERNAL AUTHENTICATE响应中。本实施例提供的密码获取方法中,ICV的初始化以及后续对ICV的验证方法与现有技术中相似,本实施例中不做限定。
参照图3所示,上述方法中,S101所述通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储包括:
接收MCU发送的存储设定密码请求,所述存储设定密码请求包括新的会话密钥、加密的包含设定密码的请求数据和主机端MAC;
验证所述主机端MAC,验证成功后,解密所述包含设定密码的请求数据,获取设定密码并存储。
作为本发明实施例的一个具体实施方式,所述通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储包括如下步骤:
1)MCU产生新的会话序号,根据新的会话序号生成新的会话密钥,采用该新的会话密钥对包含设定密码的请求数据进行加密,用至少包括加密的请求数据在内的因子计算新的主机端MAC,通过存储设定密码请求将所述新的会话密钥、加密的请求数据和新的主机端MAC发送到安全芯片。
2)安全芯片接收到存储设定密码请求,根据得到的至少包括加密的请求数据在内的因子计算新的主机端验证MAC,使用所述新的主机端验证MAC与所述新的主机端MAC进行比对,若相同,则新的主机端MAC验证成功。验证成功后,根据本次存储设定密码会话的会话序号生成相应的会话密钥,采用该对应的会话密钥对加密的请求数据进行解密,获取设定密码;返回存储结果到所述MCU。
在一个具体实施例中,以上所述新的会话序号是指在前一次会话结束后,MCU或安全芯片产生的用于下一次会话的会话序号;所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥。具体来讲,MCU和安全芯片可以通过各自的会话计数器,对会话序号进行同步,保证MCU和安全芯片在进行一次会话时的会话序号相同。例如,可以是,MCU的会话计数器和安全芯片的会话计数器在进行下一次会话前,各自的会话计数器的会话序号的数值加1得到下一会话序号,即上述实施例中的新的会话序号。
在一个具体实施例中,上述方法中,MCU与安全芯片建立安全通道时选择的安全域可以是辅助安全域(Supplementary Security Domain,SSD)或者是主安全域(IssuerSecurity Domain,ISD)。
当建立安全通道选择的安全域为SSD时,MCU向安全芯片发送的安全域请求包括请求数据和所选择辅助安全域SSD的AID,建立安全通道时使用的安全域密钥为安全传输密钥Transport Key,所述Key Version和Key Value即对应该Transport Key的Key Version和Key Value;
当建立安全通道选择的安全域为ISD时,MCU向安全芯片发送的安全域请求包括请求数据和所选择主安全域ISD的AID,建立安全通道时使用的安全域密钥为主安全域密钥ISD Key,所述Key Version和Key Value即对应该ISD Key的Key Version和Key Value。
本发明实施例提供的密码获取方法中,MCU和安全芯片建立安全通道,通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储时,建立安全通道所选择的安全域可以是SSD和ISD,本发明的发明人在进行实验时发现,在获取设定密码过程中,建立安全通道用来传送设定密码时,所选择的安全域为SSD时可以取得更好的应用效果,即采用上述实施例中的Transport Key作为建立安全通道时使用的安全域密钥,这样在传送设定密码时,MCU与安全芯片之间的安全通信使用SSD,在通信过程中不会影响到安全芯片上装载的其他应用的运行,保证安全芯片的运行效率。
参照图4所示,在一个实施例中,所述的密码获取方法,在与MCU建立安全通道,通过安全通道接收存储设定密码请求之前,还包括:
S401:与MCU建立安全通道,通过安全通道接收MCU发送的安全传输密钥TransportKey,所述Transport Key是由远程服务器验证后发送到MCU的。
在本发明实施例中,S401所述与所述安全芯片建立安全通道的步骤与上述实施例中S101建立安全通道的步骤相近,在本实施例中不再赘述。需要说明的是,本实施例中,S401所述与所述安全芯片建立安全通道中,安全芯片建立安全通道时的安全域为ISD,也就是说,此时MCU向安全芯片发送的安全域请求包括请求数据和所选择主安全域ISD的AID,建立安全通道时使用的安全域密钥为主安全域密钥ISD Key,所述Key Version和Key Value即对应该ISD Key的Key Version和Key Value。
参照图5所示,在一个具体实施例中,本发明实施例所述的Transport Key的初始化过程包括如下步骤:
1)移动终端发送初始化Transport Key请求,通过通信单元发送到所述MCU;
2)MCU接收初始化Transport Key请求,生成Transport Key,并保存在MCU的安全存储区;
3)MCU使用预存的公钥证书对Transport Key进行加密,MCU获取安全芯片的卡生产生命周期(Card Production Life Cycle,CPLC),将所述CPLC和加密的Transport Key上传远程服务器;
4)远程服务器验证所述Transport Key,使用预存的私钥证书对所述TransportKey进行加密,以及,根据所述CPLC获取的安全芯片的ISD Key,准备指令发下TransportKey到安全芯片,将安全芯片的ISD Key和加密的Transport Key发送到MCU;
5)MCU使用预存的公钥证书对所述Transport Key进行解密,使用ISD Key与安全芯片建立安全通道,通过安全通道将所述Transport Key发送到安全芯片。
参照图6所示,本发明实施例提供一种密码获取方法,对于MCU来说,上述方法包括:
S601:接收存储设定密码请求,获取设定密码;
S602:与安全芯片建立安全通道,通过安全通道将设定密码发送到安全芯片。
参照图7-1所示,所述的密码获取方法,还包括:
接收存储设定密码请求之前,通过下述方式将建立安全通道使用的安全传输密钥Transport Key发送到安全芯片:
S701:接收移动终端发送的初始化Transport Key请求;
S702:生成Transport Key并保存;
S703:通过预存的公钥证书对所述Transport Key进行加密并上传远程服务器;
S704:接收由远程服务器验证后发送的Transport Key;
S705:与安全芯片建立安全通道,通过安全通道将Transport Key发送到安全芯片。
参照图2所示,在一个实施例中,所述的密码获取方法中,S602和S705所述与安全芯片建立安全通道包括:
向安全芯片发送选择安全域请求,接收安全芯片发送的选择安全域响应;
向安全芯片发送初始化更新请求;接收安全芯片发送的初始化更新响应,所述初始化更新响应包括会话密钥和卡鉴别密码;
验证卡鉴别密码,验证成功后,生成新的会话密钥,计算主机端鉴别密码,计算主机端信息认证码MAC,通过向安全芯片发送外部认证请求,将所述新的会话密钥、主机端鉴别密码和主机端MAC发送到所述安全芯片;接收所述安全芯片发送的外部认证响应;
所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥。
在一个具体实施例中,所述的密码获取方法中,所述验证卡鉴别密码,包括:
根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version,根据至少包括会话序号、会话密钥和Key Version在内的因子计算与安全芯片对应的卡验证密码,使用所述卡验证密码与接收到的所述卡鉴别密码进行比对,若相同,则验证成功;
所述计算主机端鉴别密码,包括:
产生新的会话序号,生成新的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version和键值Key Value,用至少包括所述新的会话序号、新的会话密钥、Key Version和Key Value在内的因子计算主机端鉴别密码;
所述新的会话序号是指在前一次会话结束后,MCU产生的用于下一次会话的会话序号;
所述计算主机端MAC,包括:
用至少包括主机端鉴别密码在内的因子计算主机端MAC。
参照图7-2所示,在一个具体实施例中,所述的密码获取方法,还包括:
S706:获取安全芯片的CPLC,将所述CPLC上传远程服务器;
S707:接收远程服务器根据所述CPLC获取的安全芯片的ISD Key。
基于同一发明构思,本发明实施例还提供了一种安全芯片和一种微控制单元MCU,由于这些装置所解决问题的原理与前述密码获取方法相似,因此这些装置的实施可以参见前述方法的实施,重复之处不再赘述。
参照图8所示,本发明实施例提供一种安全芯片,包括:
第一安全通信模块801,用于与微处理单元MCU建立安全通道,通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储。
在一个具体实施例中,所述的安全芯片中,第一安全通信模块801,还用于与微控制单元MCU建立安全通道,通过安全通道接收MCU发送的安全传输密钥Transport Key,所述Transport Key是由远程服务器验证后发送到MCU的。
在一个具体实施例中,上述实施例中的安全芯片为嵌入式安全芯片(EmbeddedSecure Element,eSE)。
参照图9-1所示,本发明实施例提供一种微控制单元MCU,包括:
获取模块901,用于接收存储设定密码请求,获取设定密码;
第二安全通信模块902,用于与安全芯片建立安全通道,通过安全通道将设定密码存储到安全芯片。
参照图9-2所示,本发明实施例提供所述的微控制单元MCU,还包括:
密钥生成及收发模块903,用于接收移动终端发送的初始化Transport Key请求,生成Transport Key并保存;通过预存的公钥证书对所述Transport Key进行加密并上传远程服务器;接收由远程服务器验证后发送的Transport Key。
参照图9-2所示,在一个具体实施例中,所述第二安全通信模块902,还用于与安全芯片建立安全通道,通过安全通道将Transport Key发送到安全芯片。
参照图9-2所示,在一个具体实施例中,所述获取模块901,还用于获取安全芯片的CPLC,接收远程服务器根据所述CPLC获取的安全芯片的ISD Key,以及接收远程服务器私钥证书加密的Transport Key。
基于同一发明构思,本发明实施例还提供了一种智能家居设备,由于该智能家居设备包括了前述实施例中的MCU和安全芯片,所解决技术问题的原理与前述方法及装置相似,因此该智能家居设备的实施可以参见前述方法和装置的实施,重复之处不再赘述。
参照图10所示,本发明实施例提供一种智能家居设备,包括:
密码信息采集单元3、上述任一项所述的安全芯片1和上述任一项所述的微控制单元MCU2;
所述密码信息采集单元3,用于采集设定密码,并发送给MCU。
参照图11所示,在一个具体实施例中,所述的智能家居设备,还包括:
通信单元4,与MCU连接,用于MCU与移动终端之间进行通信。将移动终端的请求发送到所述MCU,和/或,将MCU的消息发送到移动终端,以及通过移动终端将MCU的消息上传到远程服务器。
在一个具体实施例中,所述智能家居设备为智能门锁、监控摄像机、智能电饭锅或智能灶台。
在一个具体实施例中,所述密码信息采集单元3,可以是键盘、操控面板或手写板,只要能够实现采集密码的功能即可,本发明实施例中不做限定。
在一个具体实施例中,所述通信单元4可以是蓝牙单元、WiFi单元、红外单元等无线网络单元,也可以是有线网络单元。只要能够实现智能家居设备与移动终端进行通信即可,本发明实施例中不做限定。
参照图12,本发明实施例的智能家居设备的设定密码获取过程,可以是按照以下方式进行:
智能家居设备通过密码信息采集单元采集设定密码;
密码信息采集单元发起存储设定密码请求,智能家居设备的MCU获取存储设定密码请求中的设定密码,与安全芯片建立安全通道,通过安全通道将设定密码发送到安全芯片;
安全芯片对设定密码进行存储。
进一步的,在完成设定密码存储后,智能家居设备,可以通过语音或电子屏显示等方式,提示用户设定密码存储结果。
基于同一发明构思,本发明实施例还提供了一种智能家居系统,由于该智能家居系统包括了前述实施例中的智能家居设备,所解决技术问题的原理与前述方法、装置及设备相似,因此该智能家居系统的实施可以参见前述方法、装置和设备的实施,重复之处不再赘述。
本发明实施例提供一种智能家居系统,包括:远程服务器和上述任一项所述的智能家居设备。
在一个具体实施例中,所述远程服务器,用于接收移动终端传送的智能家居设备发送的消息,以及通过移动终端将消息发送到所述智能家居设备。
在一个具体实施例中,所述智能家居系统还包括移动终端,所述移动终端,用于接收所述智能家居设备或所述远程服务器发送的消息,以及向所述智能家居设备或所述远程服务器发送消息。
基于同一发明构思,本发明实施例还提供了一种密码验证方法及装置,由于这些方法和装置所解决问题的原理与前述密码获取方法和装置相似,因此该方法和装置的实施可以参见前述方法和装置的实施,重复之处不再赘述。
参照图13所示,本发明实施例提供一种密码验证方法,包括:
S131:与MCU建立安全通道,通过安全通道接收存储设定密码请求,获取所述存储设定密码中的设定密码并存储;
S132:当接收到微处理单元MCU发送的待验证密码时,将所述待验证密码与设定密码进行匹配,对所述待验证密码进行校验,并返回校验结果。
参照图14所示,本发明实施例提供一种密码验证方法,包括:
S141:接收存储设定密码请求,获取设定密码;
S142:与安全芯片建立安全通道,通过安全通道将设定密码发送到安全芯片;
S143:当接收到待验证密码时,将所述待验证密码发送到安全芯片,并接收返回的对待验证密码的校验结果。
参照图15所示,本发明实施例提供一种安全芯片,包括:
第一安全通信模块151,用于与微处理单元MCU建立安全通道,通过安全通道接收存储设定密码请求,获取所述存储设定密钥请求中的设定密码并存储;
验证模块152,用于当接收到微处理单元MCU发送的待验证密码时,将所述待验证密码与设定密码进行匹配,对所述待验证密码进行校验,并返回校验结果。
参照图16所示,本发明实施例提供一种微控制单元MCU,包括:
获取模块161,用于接收存储设定密码请求,获取设定密码;
第二安全通信模块162,与安全芯片建立安全通道,通过安全通道将设定密码存储到安全芯片;
收发模块163,用于当接收到待验证密码时,将所述待验证密码发送到安全芯片,并接收返回的对待验证密码的校验结果。
参照图17所示,本发明实施例提供一种智能家居设备,包括:
密码信息采集单元5、上述的安全芯片1和上述的微控制单元MCU2;
所述密码信息采集单元5,用于采集设定密码和待验证密码,并发送给MCU2。
参照图18所示,在一个具体实施例中,所述的智能家居设备,还包括:
通信单元4,与MCU连接,用于MCU与移动终端之间进行通信。将移动终端的请求发送到所述MCU2,和/或,将MCU2的消息发送到移动终端或通过移动终端将MCU2的消息上传到远程服务器。
在一个具体实施例中,所述智能家居设备为智能门锁、监控摄像机、智能电饭锅或智能灶台。
在一个具体实施例中,所述密码信息采集单元5,可以是键盘、操控面板或手写板,只要能够实现采集密码的功能即可,本发明实施例中不做限定。
在一个具体实施例中,所述通信单元4可以是蓝牙单元、WiFi单元、红外单元等无线网络单元,也可以是有线网络单元。只要能够实现智能家居设备与移动终端进行通信即可,本发明实施例中不做限定。
参照图19,本发明实施例的智能家居设备的密码验证过程,可以是按照以下方式进行:
智能家居设备通过密码信息采集单元采集待验证密码;
密码信息采集单元发送待验证密码,并经过MCU发送到安全芯片;
当安全芯片接收到微处理单元MCU发送的待验证密码时,将所述待验证密码与设定密码进行匹配,对所述待验证密码进行验证,并返回验证结果。
进一步的,在完成密码验证后,智能家居设备,可以通过语音或电子屏显示等方式,提示用户密码验证结果,决定是否进行下一步的动作。更进一步的,当该智能家居设备为智能门锁时,智能门锁可以根据密码验证结果决定是否开启智能门锁的机械或电气结构,完成开锁;当该智能家居设备为监控摄像机时,监控摄像机可以根据密码验证结果决定是否开启监控摄像机的摄像头,记录摄像信息;当该智能家居设备为智能电饭锅时,智能电饭锅可以根据密码验证结果决定是否开启智能电饭锅的电气开关连接电源;当该智能家居设备为智能灶台时,智能灶台可以根据密码验证结果决定是否开启智能灶台的点火机构并通入燃气。
本发明实施例提供一种智能家居系统,包括:远程服务器和上述任一项所述的智能家居设备。
在一个具体实施例中,所述远程服务器,用于接收移动终端传送的智能家居设备发送的消息,以及通过移动终端将消息发送到所述智能家居设备。
在一个具体实施例中,所述智能家居系统还包括移动终端,所述移动终端,用于接收所述智能家居设备或所述远程服务器发送的消息,以及向所述智能家居设备或所述远程服务器发送消息。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (20)
1.一种安全芯片的密码获取方法,其特征在于,包括:
与MCU建立安全通道,通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储;
所述与微控制单元MCU建立安全通道包括:
接收MCU发送的选择安全域请求,发送选择安全域响应;
接收MCU发送的初始化更新请求;生成会话密钥,计算卡鉴别密码,通过初始化更新响应将所述会话密钥和卡鉴别密码发送到所述MCU;
接收MCU发送的外部认证请求,所述外部认证请求包括新的会话密钥、主机端鉴别密码和主机端信息认证码MAC;验证所述主机端MAC和主机端鉴别密码,验证成功后,初始化完整性校验值ICV,发送外部认证响应到所述MCU;
所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥。
2.如权利要求1所述的安全芯片的密码获取方法,其特征在于,在与MCU建立安全通道,通过安全通道接收存储设定密码请求之前,还包括:
与MCU建立安全通道,通过安全通道接收MCU发送的安全传输密钥Transport Key,所述Transport Key是由远程服务器验证后发送到MCU的。
3.如权利要求1或2所述的安全芯片的密码获取方法,其特征在于,所述计算卡鉴别密码,包括:
产生本次初始化更新会话的会话序号,生成会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version,用至少包括会话序号、会话密钥和Key Version在内的因子计算卡鉴别密码;
所述验证主机端MAC,包括:
根据得到的至少包括主机端鉴别密码在内的因子计算主机端验证MAC,使用所述主机端验证MAC与主机端MAC进行比对,若相同,则验证成功;
所述验证主机端鉴别密码,包括:
根据本次外部认证会话的会话序号生成对应的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version和键值Key Value,根据至少包括所述会话序号、会话密钥、Key Version和Key Value在内的因子计算与所述MCU对应的主机端验证密码,使用所述主机端验证密码与所述主机端鉴别密码进行比对,若相同,则验证成功。
4.如权利要求3所述的安全芯片的密码获取方法,其特征在于,所述选择安全域请求包括请求数据和所选择安全域的应用标识符AID;
在接收存储设定密码请求之前,与微控制单元MCU建立安全通道时选择的安全域为主安全域ISD,对应的,所述安全域密钥为主安全域密钥ISD Key;
在接收存储设定密码请求之后,与微控制单元MCU建立安全通道时选择的安全域为ISD或辅助安全域SSD,对应的,所述安全域密钥为主安全域密钥ISD Key或SSD的TransportKey。
5.如权利要求1或2所述的安全芯片的密码获取方法,其特征在于,还包括:
接收的所述初始化更新请求中还包括主机端随机数;
在向MCU发送初始化更新响应前生成卡随机数,并将卡随机数加入所述初始化更新响应中。
6.如权利要求1或2所述的安全芯片的密码获取方法,其特征在于,通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储包括:
接收MCU发送的存储设定密码请求,所述存储设定密码请求包括新的会话密钥、加密的包含设定密码的请求数据和主机端MAC;
验证所述主机端MAC,验证成功后,解密所述包含设定密码的请求数据,获取设定密码并存储。
7.一种应用MCU的密码获取方法,其特征在于,包括:
接收存储设定密码请求,获取设定密码;
与安全芯片建立安全通道,通过安全通道将设定密码发送到安全芯片;
所述与安全芯片建立安全通道包括:
向安全芯片发送选择安全域请求,接收安全芯片发送的选择安全域响应;
向安全芯片发送初始化更新请求;接收安全芯片发送的初始化更新响应,所述初始化更新响应包括会话密钥和卡鉴别密码;
验证卡鉴别密码,验证成功后,生成新的会话密钥,计算主机端鉴别密码,计算主机端信息认证码MAC,通过向安全芯片发送外部认证请求,将所述新的会话密钥、主机端鉴别密码和主机端MAC发送到所述安全芯片;接收所述安全芯片发送的外部认证响应;
所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥。
8.如权利要求7所述的应用MCU的密码获取方法,其特征在于,还包括:
接收存储设定密码请求之前,通过下述方式将建立安全通道使用的安全传输密钥Transport Key发送到安全芯片:
接收移动终端发送的初始化Transport Key请求;
生成Transport Key并保存;
通过预存的公钥证书对所述Transport Key进行加密并上传远程服务器;
接收由远程服务器验证后发送的Transport Key,与安全芯片建立安全通道,通过安全通道将Transport Key发送到安全芯片。
9.如权利要求7或8所述的应用MCU的密码获取方法,其特征在于,所述验证卡鉴别密码,包括:
根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version,根据至少包括会话序号、会话密钥和Key Version在内的因子计算与安全芯片对应的卡验证密码,使用所述卡验证密码与接收到的所述卡鉴别密码进行比对,若相同,则验证成功;
所述计算主机端鉴别密码,包括:
产生新的会话序号,生成新的会话密钥,根据所选择安全域的默认密钥组得到建立安全通道时使用的安全域密钥的密钥版本号Key Version和键值Key Value,用至少包括所述新的会话序号、新的会话密钥、Key Version和Key Value在内的因子计算主机端鉴别密码;
所述新的会话序号是指在前一次会话结束后,MCU产生的用于下一次会话的会话序号;
所述计算主机端MAC,包括:
用至少包括主机端鉴别密码在内的因子计算主机端MAC。
10.一种安全芯片,其特征在于,包括:
第一安全通信模块,用于与微处理单元MCU建立安全通道,通过安全通道接收存储设定密码请求,获取存储设定密码请求中的设定密码并存储;
所述与微控制单元MCU建立安全通道包括:
接收MCU发送的选择安全域请求,发送选择安全域响应;
接收MCU发送的初始化更新请求;生成会话密钥,计算卡鉴别密码,通过初始化更新响应将所述会话密钥和卡鉴别密码发送到所述MCU;
接收MCU发送的外部认证请求,所述外部认证请求包括新的会话密钥、主机端鉴别密码和主机端信息认证码MAC;验证所述主机端MAC和主机端鉴别密码,验证成功后,初始化完整性校验值ICV,发送外部认证响应到所述MCU;
所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥。
11.如权利要求10所述的安全芯片,其特征在于,
第一安全通信模块,还用于与微控制单元MCU建立安全通道,通过安全通道接收MCU发送的安全传输密钥Transport Key,所述Transport Key是由远程服务器验证后发送到MCU的。
12.一种微控制单元MCU,其特征在于,包括:
获取模块,用于接收存储设定密码请求,获取设定密码;
第二安全通信模块,用于与安全芯片建立安全通道,通过安全通道将设定密码存储到安全芯片;
所述与安全芯片建立安全通道包括:
向安全芯片发送选择安全域请求,接收安全芯片发送的选择安全域响应;
向安全芯片发送初始化更新请求;接收安全芯片发送的初始化更新响应,所述初始化更新响应包括会话密钥和卡鉴别密码;
验证卡鉴别密码,验证成功后,生成新的会话密钥,计算主机端鉴别密码,计算主机端信息认证码MAC,通过向安全芯片发送外部认证请求,将所述新的会话密钥、主机端鉴别密码和主机端MAC发送到所述安全芯片;接收所述安全芯片发送的外部认证响应;
所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥。
13.如权利要求12所述的微控制单元MCU,其特征在于,还包括:
密钥生成及收发模块,用于接收移动终端发送的初始化Transport Key请求,生成Transport Key并保存;通过预存的公钥证书对所述Transport Key进行加密并上传远程服务器;接收由远程服务器验证后发送的Transport Key,与安全芯片建立安全通道,通过安全通道将Transport Key发送到安全芯片。
14.一种智能家居设备,其特征在于,包括:
密码信息采集单元、权利要求10或11所述的安全芯片和权利要求12或13所述的微控制单元MCU;
所述密码信息采集单元,用于采集设定密码,并发送给MCU。
15.如权利要求14所述的智能家居设备,其特征在于,所述智能家居设备为智能门锁、监控摄像机、智能电饭锅或智能灶台。
16.一种智能家居系统,其特征在于,包括:远程服务器和权利要求14或15所述的智能家居设备。
17.一种安全芯片的密码验证方法,其特征在于,包括:
与MCU建立安全通道,通过安全通道接收存储设定密码请求,获取所述存储设定密码中的设定密码并存储;所述与微控制单元MCU建立安全通道包括:
接收MCU发送的选择安全域请求,发送选择安全域响应;
接收MCU发送的初始化更新请求;生成会话密钥,计算卡鉴别密码,通过初始化更新响应将所述会话密钥和卡鉴别密码发送到所述MCU;
接收MCU发送的外部认证请求,所述外部认证请求包括新的会话密钥、主机端鉴别密码和主机端信息认证码MAC;验证所述主机端MAC和主机端鉴别密码,验证成功后,初始化完整性校验值ICV,发送外部认证响应到所述MCU;
所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥;
当接收到微处理单元MCU发送的待验证密码时,将所述待验证密码与设定密码进行匹配,对所述待验证密码进行校验,并返回校验结果。
18.一种MCU的密码验证方法,其特征在于,包括:
接收存储设定密码请求,获取设定密码;
与安全芯片建立安全通道,通过安全通道将设定密码发送到安全芯片;
当接收到待验证密码时,将所述待验证密码发送到安全芯片,并接收返回的对待验证密码的校验结果;
所述与安全芯片建立安全通道包括:
向安全芯片发送选择安全域请求,接收安全芯片发送的选择安全域响应;
向安全芯片发送初始化更新请求;接收安全芯片发送的初始化更新响应,所述初始化更新响应包括会话密钥和卡鉴别密码;
验证卡鉴别密码,验证成功后,生成新的会话密钥,计算主机端鉴别密码,计算主机端信息认证码MAC,通过向安全芯片发送外部认证请求,将所述新的会话密钥、主机端鉴别密码和主机端MAC发送到所述安全芯片;接收所述安全芯片发送的外部认证响应;
所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥。
19.一种安全芯片,其特征在于,包括:
第一安全通信模块,用于与微处理单元MCU建立安全通道,通过安全通道接收存储设定密码请求,获取所述存储设定密钥请求中的设定密码并存储;所述与微控制单元MCU建立安全通道包括:
接收MCU发送的选择安全域请求,发送选择安全域响应;
接收MCU发送的初始化更新请求;生成会话密钥,计算卡鉴别密码,通过初始化更新响应将所述会话密钥和卡鉴别密码发送到所述MCU;
接收MCU发送的外部认证请求,所述外部认证请求包括新的会话密钥、主机端鉴别密码和主机端信息认证码MAC;验证所述主机端MAC和主机端鉴别密码,验证成功后,始化完整性校验值ICV,发送外部认证响应到所述MCU;
所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥
验证模块,用于当接收到微处理单元MCU发送的待验证密码时,将所述待验证密码与设定密码进行匹配,对所述待验证密码进行校验,并返回校验结果。
20.一种微控制单元MCU,其特征在于,包括:
获取模块,用于接收存储设定密码请求,获取设定密码;
第二安全通信模块,与安全芯片建立安全通道,通过安全通道将设定密码存储到安全芯片;所述与安全芯片建立安全通道包括:
向安全芯片发送选择安全域请求,接收安全芯片发送的选择安全域响应;
向安全芯片发送初始化更新请求;接收安全芯片发送的初始化更新响应,所述初始化更新响应包括会话密钥和卡鉴别密码;
验证卡鉴别密码,验证成功后,生成新的会话密钥,计算主机端鉴别密码,计算主机端信息认证码MAC,通过向安全芯片发送外部认证请求,将所述新的会话密钥、主机端鉴别密码和主机端MAC发送到所述安全芯片;接收所述安全芯片发送的外部认证响应;
所述新的会话密钥为根据MCU或安全芯片产生的新的会话序号生成的会话密钥;
收发模块,用于当接收到待验证密码时,将所述待验证密码发送到安全芯片,并接收返回的对待验证密码的校验结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810258147.9A CN108768621B (zh) | 2018-03-27 | 2018-03-27 | 一种密码获取方法、验证方法、相关装置、设备和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810258147.9A CN108768621B (zh) | 2018-03-27 | 2018-03-27 | 一种密码获取方法、验证方法、相关装置、设备和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108768621A CN108768621A (zh) | 2018-11-06 |
CN108768621B true CN108768621B (zh) | 2021-03-26 |
Family
ID=63980373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810258147.9A Expired - Fee Related CN108768621B (zh) | 2018-03-27 | 2018-03-27 | 一种密码获取方法、验证方法、相关装置、设备和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108768621B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1808966A (zh) * | 2004-10-01 | 2006-07-26 | 美国博通公司 | 安全数据处理方法及其系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3027176B1 (fr) * | 2014-10-13 | 2016-12-09 | Oberthur Technologies | Rejeu d'un batch de commandes securisees dans un canal securise |
-
2018
- 2018-03-27 CN CN201810258147.9A patent/CN108768621B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1808966A (zh) * | 2004-10-01 | 2006-07-26 | 美国博通公司 | 安全数据处理方法及其系统 |
Non-Patent Citations (1)
Title |
---|
"基于GP规范的JAVA卡应用管理系统";孟子山;《中国优秀硕士学位论文全文数据库 信息科技辑》;20110315;15-49页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108768621A (zh) | 2018-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107113315B (zh) | 一种身份认证方法、终端及服务器 | |
EP3657370B1 (en) | Methods and devices for authenticating smart card | |
CN110334498B (zh) | 利用一个设备解锁另一个设备的方法 | |
CN108712246B (zh) | 一种智能家居设备和系统以及访客密码获取方法 | |
CN105279832B (zh) | 智能门锁系统及其控制方法 | |
CN105118127B (zh) | 一种访客系统及其控制方法 | |
CN106161032B (zh) | 一种身份认证的方法及装置 | |
CN107222373B (zh) | 智能家居的控制方法、系统、终端、fido服务器及安全设备 | |
CN107426160B (zh) | 智能家居的控制方法、系统、终端、fido服务器及安全设备 | |
CN108650219B (zh) | 一种用户身份识别方法、相关装置、设备和系统 | |
CN110189442A (zh) | 认证方法及装置 | |
CN110995710B (zh) | 一种基于eUICC的智能家居认证方法 | |
CN109618334B (zh) | 控制方法及相关设备 | |
CN109920100B (zh) | 一种智能锁开锁方法及系统 | |
EP3206329B1 (en) | Security check method, device, terminal and server | |
CN110766524A (zh) | 一种在线订房自助入住方法和存储装置 | |
CN111901303A (zh) | 设备认证方法和装置、存储介质及电子装置 | |
CN110838919B (zh) | 通信方法、存储方法、运算方法及装置 | |
CN112425116B (zh) | 智能门锁无线通信方法、智能门锁、网关及通信设备 | |
CN109922022A (zh) | 物联网通信方法、平台、终端和系统 | |
WO2014187208A1 (zh) | 一种备份电子签名令牌中私钥的方法和系统 | |
CN108768621B (zh) | 一种密码获取方法、验证方法、相关装置、设备和系统 | |
TWI675579B (zh) | 網路身份驗證系統與方法 | |
CN115550002A (zh) | 一种基于tee的智能家居远程控制方法及相关装置 | |
CN114329418A (zh) | 设备认证的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210326 |
|
CF01 | Termination of patent right due to non-payment of annual fee |