CN115361147A - 设备注册方法及装置、计算机设备、存储介质 - Google Patents
设备注册方法及装置、计算机设备、存储介质 Download PDFInfo
- Publication number
- CN115361147A CN115361147A CN202110476586.9A CN202110476586A CN115361147A CN 115361147 A CN115361147 A CN 115361147A CN 202110476586 A CN202110476586 A CN 202110476586A CN 115361147 A CN115361147 A CN 115361147A
- Authority
- CN
- China
- Prior art keywords
- registered
- registration
- circulation
- parameter
- information
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 353
- 238000003860 storage Methods 0.000 title claims abstract description 15
- 238000012795 verification Methods 0.000 claims abstract description 340
- 230000008569 process Effects 0.000 claims abstract description 243
- 230000004044 response Effects 0.000 claims abstract description 162
- 238000012546 transfer Methods 0.000 claims description 263
- 230000015654 memory Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 abstract description 8
- 238000004422 calculation algorithm Methods 0.000 description 71
- 230000006399 behavior Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 14
- 238000004519 manufacturing process Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000009795 derivation Methods 0.000 description 7
- 238000013475 authorization Methods 0.000 description 5
- 239000003999 initiator Substances 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000005304 joining Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000013478 data encryption standard Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- 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/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- 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
-
- 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/40—Network security protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种设备注册方法及装置、计算机设备、存储介质,属于通信技术领域。该方法包括:待注册设备向注册管理设备发送注册请求;待注册设备接收注册管理设备发送的第一注册响应,第一注册响应携带有第一验证参数,第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,任意两个流转方的流转密钥不同,上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方;待注册设备基于待注册设备的基础认证密钥,生成第三验证参数;当第三验证参数与第一验证参数匹配时,待注册设备确定注册管理设备通过验证,向注册管理设备发送第二注册响应。本申请提高了待注册设备注册过程的安全保障。
Description
技术领域
本申请涉及通信技术领域,特别涉及一种设备注册方法及装置、计算机设备、存储介质。
背景技术
在园区网或企业网等场景中,用户在购置了大量的终端设备之后,通常需要对其购置的终端设备进行统一的管理,如获取终端设备的相关基础信息、向终端设备下发配置信息等,以便终端设备在接入企业网络时能够被正确识别、并与企业网络中的其他设备进行互联互通、执行正确的软件更新等。其中,在对终端设备进行统一管理之前,企业网络的注册管理设备和终端设备之间需要进行双向认证,即终端设备需要向注册管理设备进行注册。
相关技术中,终端设备从制造方流转到注册管理设备的所有者的流转过程中,终端设备每次由上一流转方流转至一个流转方时,上一流转方的代理设备会向当前流转方颁发代理证书,以将终端设备的代理权转移给当前流转方。在终端设备向注册管理设备进行注册的过程中,终端设备会根据注册管理设备提供的代理证书验证终端设备在流转过程中的转移关系,以及验证注册管理设备的身份,从而实现对注册管理设备的认证。
但是,由于该流转过程涉及多个流转方,在代理权转移的过程中任一流转方均存在作恶的风险,导致终端设备注册过程的安全保障较差。
发明内容
本申请提供了一种设备注册方法及装置、计算机设备、存储介质,可以解决终端设备注册过程的安全保障较差的问题。
第一方面,本申请提供了一种设备注册方法,该设备注册方法包括:待注册设备向注册管理设备发送注册请求;待注册设备接收注册管理设备发送的第一注册响应,第一注册响应携带有第一验证参数,第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,任意两个流转方的流转密钥不同,上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方;待注册设备基于待注册设备的基础认证密钥,生成第三验证参数;当第三验证参数与第一验证参数匹配时,待注册设备确定注册管理设备通过验证,向注册管理设备发送第二注册响应。
在该设备注册方法中,待注册设备对注册管理设备进行验证时,注册管理设备发送给待注册设备的第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,待注册设备对第一验证参数进行验证使用的第三验证参数基于待注册设备的基础认证密钥得到,且任意两个流转方的流转密钥不同。这样一来,由于生成第一验证参数依赖的信息与生成第三验证参数依赖的信息不同,且任意两个流转方的流转密钥不同,能够减小因信息泄露对待注册设备对注册管理设备进行验证产生的影响,提高了待注册设备注册过程的安全保障。并且,由于任意两个流转方的流转密钥不同,当任一流转方作恶时,其提供的流转密钥与数据库中记录的流转密钥不同,就能够根据其及时发现流转方的作恶行为,实现对流转方的作恶行为的追溯,提高了对终端设备注册过程的安全保障。另外,该设备注册方法能够使得制造方免责,也无需制造方实时在线提供授权服务,能够实现待注册设备的自动化注册。
在一种可实现方式中,第三验证参数还基于流转信息链和秘密参数链中的至少一个信息链得到;其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。
可选地,流转信息链通过流转过程中待注册设备的流转总次数反映。
进一步的,流转信息链还通过各级流转方的标识和类型值中的至少一个,以及待注册设备在各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数链通过各级流转方使用的秘密参数和待注册设备在各级流转方之间的流转顺序反映。
在另一种可实现方式中,第三验证参数还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥得到;其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
可选地,流转信息支链通过流转子过程中待注册设备的流转总次数反映。
进一步的,流转信息支链还通过待注册设备在流转子过程中经过的各级流转方的标识和类型值中的至少一个,以及待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数支链通过待注册设备在流转子过程中经过的各级流转方使用的秘密参数和待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映。
作为一种可实现方式,第三验证参数还基于第二挑战参数和待注册设备的当前注册次数中的至少一个参数得到,当前注册次数用于指示待注册设备是否具有注册权限。
相应的,为便于注册管理设备对待注册设备进行验证,注册请求还携带有至少一个参数。
并且,当注册请求还携带有第二挑战参数时,第一注册响应还携带有第三挑战参数,以便于待注册设备基于该第三挑战参数对注册管理设备进行验证。此时,第二注册响应在第三验证参数与第一验证参数匹配,且第三挑战参数与第二挑战参数匹配时发送。
在一种可实现方式中,在待注册设备向注册管理设备发送第二注册响应之前,该设备注册方法还包括:待注册设备基于第一挑战参数,生成第二验证参数。相应的,待注册设备向注册管理设备发送第二注册响应,包括:待注册设备向注册管理设备发送携带有第二验证参数的第二注册响应。这样一来,注册管理设备可以根据该第二验证参数对待注册设备进行验证,以保证注册过程的安全性。
作为一种可选实现方式,第二验证参数还基于注册管理设备对待注册设备的认证密钥得到。其中,该认证密钥基于基础认证密钥得到。进一步的,认证密钥还基于流转信息链和秘密参数链中的至少一个信息链得到;其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。又或者,认证密钥还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥得到;其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
作为另一种可选实现方式,第二验证参数还基于当前注册次数和待注册设备在当前注册次数使用的凭证信息中的至少一个得到,待注册设备在不同注册次数使用的凭证信息互不相同。
其中,待注册设备在当前注册次数使用的凭证信息基于待注册设备的种子参数、当前注册次数和允许注册次数的上限值得到。
此时,第二注册响应还携带有待注册设备在当前注册次数使用的凭证信息,以便于注册管理设备根据该待注册设备在当前注册次数使用的凭证信息,对待注册设备进行验证,以进一步保证注册过程的安全性。
需要说明的是,当注册次数i小于注册次数j时,基于待注册设备在注册次数j使用的凭证信息计算待注册设备在注册次数i使用的凭证信息的过程具有单向性。也即是,当注册次数i小于注册次数j时,待注册设备在注册次数i使用的凭证信息P(maxn-i)能够由待注册设备在注册次数j使用的凭证信息P(maxn-j)计算得到,且待注册设备在注册次数j使用的凭证信息无法根据待注册设备在注册次数i使用的凭证信息得到。这样一来,待注册设备在不同注册过程中向管理注册设备提供的待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)具有单向性,使得注册设备无法根据待注册设备在注册次数i使用的凭证信息得到待注册设备在注册次数j使用的凭证信息,使得待注册设备在前的注册过程不会泄露在后的注册过程使用的凭证信息,保证了注册过程中使用的凭证信息的安全性,进一步保证了待注册设备注册过程的安全性。
第二方面,本申请提供了一种设备注册方法,该设备注册方法包括:注册管理设备接收待注册设备发送的注册请求;注册管理设备基于注册请求向待注册设备发送第一注册响应,第一注册响应携带有第一验证参数,第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,任意两个流转方的流转密钥不同,上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方;注册管理设备接收第二注册响应,第二注册响应在待注册设备基于第一验证参数确定注册管理设备通过验证时发送。
在该设备注册方法中,待注册设备对注册管理设备进行验证时,注册管理设备发送给待注册设备的第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,待注册设备对第一验证参数进行验证使用的第三验证参数基于待注册设备的基础认证密钥得到,且任意两个流转方的流转密钥不同。这样一来,由于生成第一验证参数依赖的信息与生成第三验证参数依赖的信息不同,且任意两个流转方的流转密钥不同,能够减小因信息泄露对待注册设备对注册管理设备进行验证产生的影响,提高了待注册设备注册过程的安全保障。并且,由于任意两个流转方的流转密钥不同,当任一流转方作恶时,其提供的流转密钥与数据库中记录的流转密钥不同,就能够根据其及时发现流转方的作恶行为,实现对流转方的作恶行为的追溯,提高了对终端设备注册过程的安全保障。另外,该设备注册方法能够使得制造方免责,也无需制造方实时在线提供授权服务,能够实现待注册设备的自动化注册。
作为一种可选实现方式,第一验证参数还基于注册管理设备所属流转方使用的秘密参数得到。
作为另一种可选实现方式,第一验证参数还基于流转信息链和秘密参数链中的至少一个信息链得到;其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。
可选地,流转信息链通过流转过程中待注册设备的流转总次数反映。
进一步的,流转信息链还通过各级流转方的标识和类型值中的至少一个,以及待注册设备在各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数链通过各级流转方使用的秘密参数和待注册设备在各级流转方之间的流转顺序反映。
此时,为便于待注册设备能够根据该至少一个信息链对注册管理设备进行验证,第一注册响应还携带有至少一个信息链。
作为再一种可选实现方式,第一验证参数还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥得到;
其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
可选地,流转信息支链通过流转子过程中待注册设备的流转总次数反映。
进一步的,流转信息支链还通过待注册设备在流转子过程中经过的各级流转方的标识和类型值中的至少一个,以及待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数支链通过待注册设备在流转子过程中经过的各级流转方使用的秘密参数和待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映。
此时,为便于待注册设备能够根据该至少一个信息支链对注册管理设备进行验证,第一注册响应还携带有至少一个信息支链。
作为又一种可选实现方式,第一验证参数还基于第二挑战参数和待注册设备的当前注册次数中的至少一个参数得到。
相应的,第一注册响应还携带有第三挑战参数,第三挑战参数由注册管理设备从注册请求中提取得到,第三挑战参数用于供待注册设备验证注册管理设备。
可选地,注册请求还携带有待注册设备的当前注册次数,此时,注册管理设备基于注册请求向待注册设备发送第一注册响应,包括:当注册管理设备基于当前注册次数确定待注册设备具有注册权限时,向待注册设备发送第一注册响应。
作为一种可选实现方式,第二注册响应携带有第二验证参数,该设备注册方法还包括:注册管理设备基于第二验证参数,对待注册设备进行验证,基于验证结果向待注册设备发送注册结果。
可选地,第二验证参数基于第一挑战参数得到,则注册管理设备基于第二验证参数,对待注册设备进行验证,包括:注册管理设备基于注册管理设备对待注册设备的认证密钥和第一挑战参数,生成第四验证参数;当第四验证参数与第二验证参数匹配时,确定待注册设备通过验证。
其中,认证密钥基于上一流转方的流转密钥得到。进一步的,认证密钥还基于注册管理设备所属流转方使用的秘密参数得到。
作为一种可选实现方式,第四验证参数还基于待注册设备的当前注册次数得到。
作为另一种可选实现方式,第四验证参数还基于待注册设备在当前注册次数使用的凭证信息得到,待注册设备在不同注册次数使用的凭证信息互不相同。
可选地,注册管理设备基于第二验证参数,对待注册设备进行验证,还包括:注册管理设备基于待注册设备在当前注册次数使用的凭证信息,获取待注册设备在允许注册次数的上限值使用的身份凭证信息。相应的,当第四验证参数与第二验证参数匹配时,确定待注册设备通过验证,包括:当待注册设备在允许注册次数的上限值使用的身份凭证信息与待注册设备的标准身份存证信息匹配,且第四验证参数与第二验证参数匹配时,确定待注册设备通过验证。
作为一种可选实现方式,待注册设备在允许注册次数的上限值的身份凭证信息还基于待注册设备的设备标识和允许注册次数的上限值得到。
需要说明的是,当注册次数i小于注册次数j时,基于待注册设备在注册次数j使用的凭证信息计算待注册设备在注册次数i使用的凭证信息的过程具有单向性。也即是,当注册次数i小于注册次数j时,待注册设备在注册次数i使用的凭证信息P(maxn-i)能够由待注册设备在注册次数j使用的凭证信息P(maxn-j)计算得到,且待注册设备在注册次数j使用的凭证信息无法根据待注册设备在注册次数i使用的凭证信息得到,使得待注册设备在前的注册过程不会泄露在后的注册过程使用的凭证信息,保证了注册过程中使用的凭证信息的安全性,进一步保证了待注册设备注册过程的安全性。
第三方面,本申请提供了一种设备注册方法,该设备注册方法包括:接收注册管理设备发送的信息获取请求,信息获取请求携带有待注册设备的设备标识;响应于信息获取请求,基于密钥转移记录向注册管理设备发送信息获取响应,信息获取响应携带有注册管理设备所属流转方的上一流转方的流转密钥,密钥转移记录中记录的任意两个流转方的流转密钥不同,上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方。
在本申请实施例提供的设备注册方法中,通过接收制造方的管理设备和各级流转方的管理设备发送的信息,基于该信息生成密钥转移记录,并在接收到信息获取请求后,基于该密钥转移记录发送信息获取响应,能够根据该密钥转移记录反馈待注册设备的流转信息,能够便于信息获取请求的发起方根据该待注册设备的流转信息对该待注册设备进行注册验证等操作。并且,由于该密钥转移记录包括流转密钥,且任意两个流转方的流转密钥不同,能够防止所有流转方共享相同的密钥带来的密钥安全问题。并且,由于任意两个流转方的流转密钥不同,当任一流转方作恶时,其提供的流转密钥与数据库中记录的流转密钥不同,就能够根据其及时发现流转方的作恶行为,实现对流转方的作恶行为的追溯,提高了对终端设备注册过程的安全保障。
在一种可实现方式中,信息获取响应还携带有注册管理设备所属流转方使用的秘密参数。
在另一种可实现方式中,信息获取响应还携带有流转信息链和秘密参数链中的至少一个信息链;其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。
其中,流转信息链通过流转过程中待注册设备的流转总次数反映。秘密参数链通过各级流转方使用的秘密参数和待注册设备在各级流转方之间的流转顺序反映。进一步的,流转信息链还通过各级流转方的标识和类型值中的至少一个,以及待注册设备在各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
在又一种可实现方式中,信息获取响应还携带有流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥;其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
可选地,流转信息支链通过流转子过程中待注册设备的流转总次数反映。秘密参数支链通过待注册设备在流转子过程中经过的各级流转方使用的秘密参数和待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映。进一步的,流转信息支链还通过待注册设备在流转子过程中经过的各级流转方的标识和类型值中的至少一个,以及待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
在再一种可实现方式中,信息获取响应还携带有待注册设备的已注册次数。
在又一种可实现方式中,信息获取响应还携带有待注册设备的允许注册次数的上限值和标准身份存证信息。
可选地,在响应于信息获取请求,基于密钥转移记录向注册管理设备发送信息获取响应之前,该设备注册方法还包括:接收制造方的管理设备发送的待注册设备的设备信息,设备信息包括:设备标识;接收待注册设备的各级流转方的管理设备发送的流转方的流转密钥和拥有的待注册设备的设备标识,任意两个流转方的流转密钥不同;基于制造方的管理设备和各级流转方的管理设备发送的信息,生成密钥转移记录。
通过根据制造方的管理设备发送的待注册设备的设备信息,及待注册设备的各级流转方的管理设备发送的流转方的流转密钥和拥有的待注册设备的设备标识,并根据接收到的信息生成密钥转移记录,使得能够根据该密钥转移记录向注册管理设备发送信息获取响应。
可选地,各级流转方中任一流转方的管理设备发送的信息还包括以下一个或多个:流转方使用的秘密参数的摘要、流转方的标识、类型值和待注册设备的已注册次数,任一流转方的类型值用于反映任一流转方的类型。
进一步的,设备信息还包括以下一个或多个:待注册设备的标准身份存证信息和允许注册次数的上限值。
第四方面,本申请提供了一种设备注册装置,该设备注册装置应用于待注册设备,该设备注册装置包括:第一发送模块,用于向注册管理设备发送注册请求;第一接收模块,用于接收注册管理设备发送的第一注册响应,第一注册响应携带有第一验证参数,第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,任意两个流转方的流转密钥不同,上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方;第一生成模块,用于基于待注册设备的基础认证密钥,生成第三验证参数;第一发送模块,用于当第三验证参数与第一验证参数匹配时,确定注册管理设备通过验证,向注册管理设备发送第二注册响应。
可选地,第三验证参数还基于流转信息链和秘密参数链中的至少一个信息链得到;其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。
可选地,流转信息链通过流转过程中待注册设备的流转总次数反映。
可选地,流转信息链还通过各级流转方的标识和类型值中的至少一个,以及待注册设备在各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数链通过各级流转方使用的秘密参数和待注册设备在各级流转方之间的流转顺序反映。
可选地,第三验证参数还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥得到;其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
可选地,流转信息支链通过流转子过程中待注册设备的流转总次数反映。
可选地,流转信息支链还通过待注册设备在流转子过程中经过的各级流转方的标识和类型值中的至少一个,以及待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数支链通过待注册设备在流转子过程中经过的各级流转方使用的秘密参数和待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映。
可选地,第三验证参数还基于第二挑战参数和待注册设备的当前注册次数中的至少一个参数得到,当前注册次数用于指示待注册设备是否具有注册权限。
可选地,注册请求还携带有至少一个参数。
可选地,当注册请求还携带有第二挑战参数时,第一注册响应还携带有第三挑战参数,第二注册响应在第三验证参数与第一验证参数匹配,且第三挑战参数与第二挑战参数匹配时发送。
可选地,第一生成模块,还用于基于第一挑战参数,生成第二验证参数;第一发送模块,具体用于:向注册管理设备发送携带有第二验证参数的第二注册响应。
可选地,第二验证参数还基于注册管理设备对待注册设备的认证密钥得到。
可选地,认证密钥基于基础认证密钥得到。
可选地,认证密钥还基于流转信息链和秘密参数链中的至少一个信息链得到;其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。
可选地,认证密钥还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥得到;其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
可选地,第二验证参数还基于当前注册次数和待注册设备在当前注册次数使用的凭证信息中的至少一个得到,待注册设备在不同注册次数使用的凭证信息互不相同。
可选地,待注册设备在当前注册次数使用的凭证信息基于待注册设备的种子参数、当前注册次数和允许注册次数的上限值得到。
可选地,第二注册响应还携带有待注册设备在当前注册次数使用的凭证信息。
可选地,当注册次数i小于注册次数j时,基于待注册设备在注册次数j使用的凭证信息计算待注册设备在注册次数i使用的凭证信息的过程具有单向性。
第五方面,本申请提供了一种设备注册装置,该设备注册装置应用于注册管理设备,该设备注册装置包括:第二接收模块,用于接收待注册设备发送的注册请求;第二发送模块,用于基于注册请求向待注册设备发送第一注册响应,第一注册响应携带有第一验证参数,第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,任意两个流转方的流转密钥不同,上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方;第二接收模块,用于接收第二注册响应,第二注册响应在待注册设备基于第一验证参数确定注册管理设备通过验证时发送。
可选地,第一验证参数还基于注册管理设备所属流转方使用的秘密参数得到。
可选地,第一验证参数还基于流转信息链和秘密参数链中的至少一个信息链得到;其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。
可选地,流转信息链通过流转过程中待注册设备的流转总次数反映。
可选地,流转信息链还通过各级流转方的标识和类型值中的至少一个,以及待注册设备在各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数链通过各级流转方使用的秘密参数和待注册设备在各级流转方之间的流转顺序反映。
可选地,第一注册响应还携带有至少一个信息链。
可选地,第一验证参数还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥得到;其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
可选地,流转信息支链通过流转子过程中待注册设备的流转总次数反映。
可选地,流转信息支链还通过待注册设备在流转子过程中经过的各级流转方的标识和类型值中的至少一个,以及待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数支链通过待注册设备在流转子过程中经过的各级流转方使用的秘密参数和待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映。
可选地,第一注册响应还携带有至少一个信息支链。
可选地,第一验证参数还基于第二挑战参数和待注册设备的当前注册次数中的至少一个参数得到。
可选地,第一注册响应还携带有第三挑战参数,第三挑战参数由注册管理设备从注册请求中提取得到,第三挑战参数用于供待注册设备验证注册管理设备。
可选地,注册请求还携带有待注册设备的当前注册次数,第二发送模块,具体用于:当基于当前注册次数确定待注册设备具有注册权限时,向待注册设备发送第一注册响应。
可选地,第二注册响应携带有第二验证参数,第二发送模块,还用于:基于第二验证参数,对待注册设备进行验证,基于验证结果向待注册设备发送注册结果。
可选地,第二验证参数基于第一挑战参数得到,第二发送模块,具体用于:基于注册管理设备对待注册设备的认证密钥和第一挑战参数,生成第四验证参数;当第四验证参数与第二验证参数匹配时,确定待注册设备通过验证。
可选地,认证密钥基于上一流转方的流转密钥得到。
可选地,认证密钥还基于注册管理设备所属流转方使用的秘密参数得到。
可选地,第四验证参数还基于待注册设备的当前注册次数得到。
可选地,第四验证参数还基于待注册设备在当前注册次数使用的凭证信息得到,待注册设备在不同注册次数使用的凭证信息互不相同。
可选地,第二发送模块,还具体用于:基于待注册设备在当前注册次数使用的凭证信息,获取待注册设备在允许注册次数的上限值使用的身份凭证信息;
当第四验证参数与第二验证参数匹配时,确定待注册设备通过验证,包括:当待注册设备在允许注册次数的上限值使用的身份凭证信息与待注册设备的标准身份存证信息匹配,且第四验证参数与第二验证参数匹配时,确定待注册设备通过验证。
可选地,待注册设备在允许注册次数的上限值的身份凭证信息还基于待注册设备的设备标识和允许注册次数的上限值得到。
可选地,当注册次数i小于注册次数j时,基于待注册设备在注册次数j使用的凭证信息计算待注册设备在注册次数i使用的凭证信息的过程具有单向性。
第六方面,本申请提供了一种设备注册装置,该设备注册装置包括:第三接收模块,用于接收注册管理设备发送的信息获取请求,信息获取请求携带有待注册设备的设备标识;第三发送模块,用于响应于信息获取请求,基于密钥转移记录向注册管理设备发送信息获取响应,信息获取响应携带有注册管理设备所属流转方的上一流转方的流转密钥,密钥转移记录中记录的任意两个流转方的流转密钥不同,上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方。
可选地,信息获取响应还携带有注册管理设备所属流转方使用的秘密参数。
可选地,信息获取响应还携带有流转信息链和秘密参数链中的至少一个信息链;其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。
可选地,流转信息链通过流转过程中待注册设备的流转总次数反映。
可选地,流转信息链还通过各级流转方的标识和类型值中的至少一个,以及待注册设备在各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数链通过各级流转方使用的秘密参数和待注册设备在各级流转方之间的流转顺序反映。
可选地,信息获取响应还携带有流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥;其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
可选地,流转信息支链通过流转子过程中待注册设备的流转总次数反映。
可选地,流转信息支链还通过待注册设备在流转子过程中经过的各级流转方的标识和类型值中的至少一个,以及待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数支链通过待注册设备在流转子过程中经过的各级流转方使用的秘密参数和待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映。
可选地,信息获取响应还携带有待注册设备的已注册次数。
可选地,信息获取响应还携带有待注册设备的允许注册次数的上限值和标准身份存证信息。
可选地,第三接收模块,还用于接收制造方的管理设备发送的待注册设备的设备信息,设备信息包括:设备标识;第三接收模块,还用于接收待注册设备的各级流转方的管理设备发送的流转方的流转密钥和拥有的待注册设备的设备标识,任意两个流转方的流转密钥不同;该设备注册装置还包括:第二生成模块,用于基于制造方的管理设备和各级流转方的管理设备发送的信息,生成密钥转移记录。
可选地,各级流转方中任一流转方的管理设备发送的信息还包括以下一个或多个:流转方使用的秘密参数的摘要、流转方的标识、类型值和待注册设备的已注册次数,任一流转方的类型值用于反映任一流转方的类型。
可选地,设备信息还包括以下一个或多个:待注册设备的标准身份存证信息和允许注册次数的上限值。
第七方面,提供了一种计算机设备,计算机设备包括:处理器和存储器,存储器中存储有计算机程序;处理器执行计算机程序时,计算机设备实现上述第一至六方面任一提供的方法。
第八方面,提供了一种存储介质,当存储介质中的指令被处理器执行时,实现上述第一至六方面任一提供的方法。
附图说明
图1是本申请实施例提供的一种实施场景的示意图;
图2是本申请实施例提供的另一种实施场景的示意图;
图3是本申请实施例提供的一种设备注册方法的流程图;
图4是本申请实施例提供的一种设备注册方法的实现过程示意图;
图5是本申请实施例提供的一种获取认证密钥的原理示意图;
图6是本申请实施例提供的一种获取待注册设备在当前注册次数使用的凭证信息的原理示意图;
图7是本申请实施例提供的另一种设备注册方法的流程图;
图8是本申请实施例提供的一种设备注册方法的实现过程示意图;
图9是本申请实施例提供的一种设备注册装置的结构示意图;
图10是本申请实施例提供的另一种设备注册装置的结构示意图;
图11是本申请实施例提供的又一种设备注册装置的结构示意图;
图12是本申请实施例提供的再一种设备注册装置的结构示意图;
图13是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
为了便于读者对本申请方案的理解,以下首先对一些名词进行解释。
密钥:指密码算法中所需要的参数。密钥一般分为会话密钥、密钥加密密钥和根密钥。会话密钥(session key)指发送方与接收方进行数据传输时所采用的一次性密钥,在数据传输完成之后该密钥将会被销毁。密钥加密密钥(key-encrypting key)指对发送方与接收方进行数据传输时采用的密钥进行加密的密钥,也可以称为次根密钥、辅助密钥(secondary key)或密钥传输密钥等。根密钥指对密钥加密密钥进行加密的密钥,一般存储在设备的处理器中。
对称加密算法:指发送方与接收方采用相同的密钥进行加解密的算法,也可以称为单钥密码算法。常用的对称加密算法包括数据加密标准(data encryption standard,DES)算法、高级加密标准(advanced encryption standard,AES)算法或国际数据加密算法(international data encryption algorithm,IDEA)等。
非对称加密算法:指发送方与接收方采用不同的密钥进行加解密的算法,也可以称为公钥密码算法。在非对称加密技术中,有一对密钥,分别为私钥和公钥,私钥由密钥对所有者持有,不可公布。公钥由密钥对持有者公布给他人的。用公钥加密的数据只能使用对应的私钥解密,用私钥加密的数据也只能使用对应的公钥解密。常用的非对称加密算法包括数字签名算法(digital signature algorithm,DSA),RSA(rivest-shamir-adleman)算法或椭圆曲线密码编码学(elliptic curves cryptography,ECC)算法等。
摘要:对需要传输的数据,进行哈希(HASH)运算得到。
签名:使用私钥对需要传输的数据的摘要进行加密,得到的密文被称为该次传输过程的签名。
签名验证:接收方接收到数据后,采用公钥对数字签名进行解密,得到摘要。然后使用与发送方同样的哈希算法计算摘要值。再将计算出的摘要值与解密得到的摘要进行对比,如果二者一致,则说明数据没有被篡改,如果不一致,则说明数据被篡改。即签名验证用于验证数据的完整性(未经篡改)和可靠性(不是虚假数据或伪造数据)。
区块链(blockchain):本质上是一个去中心化的数据库。狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。
联盟链:区块链被划分为公有链,私有链和联盟链。联盟链仅针对联盟成员开放全部或部分功能,联盟链上的读写权限、记账规则等,都按联盟规则来“私人定制”。联盟链上的共识过程由预先选好的节点控制,一般来说,联盟链适用于机构间的交易、结算、或清算等企业对企业(business-to-business,B2B)场景。
在园区网或企业网等场景中,用户在购置了大量的终端设备之后,通常需要对其购置的终端设备进行统一的管理,如获取终端设备的相关信息、向终端设备下发配置信息等,以便终端设备在接入网络时能够被正确识别、并与网络中的其他设备进行互联互通、执行正确的软件更新等。
然而,从终端设备出厂到加入网络(如企业网络)之前,终端设备无法预知新买家的身份,因此终端设备需要在加入网络时验证新买家的身份,以防止加入错误的网络。而企业网络在将一个新的终端设备纳入管理时,需要对新的终端设备进行认证,以确保该终端设备是企业购置的一个合法设备,而不是攻击者或者具备安全漏洞的山寨设备。因此,企业网络向新的终端设备下发配置之前,企业网络和终端设备之间需要执行安全的双向认证,即终端设备需要向注册管理设备进行注册。
本申请实施例提供一种设备注册方法。在该设备注册方法中,待注册设备对注册管理设备进行验证时,注册管理设备发送给待注册设备的第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,待注册设备对第一验证参数进行验证使用的第三验证参数基于待注册设备的基础认证密钥得到,且任意两个流转方的流转密钥不同。这样一来,由于生成第一验证参数依赖的信息与生成第三验证参数依赖的信息不同,且任意两个流转方的流转密钥不同,能够减小因信息泄露对待注册设备对注册管理设备进行验证产生的影响,提高了待注册设备注册过程的安全保障。
图1是本申请实施例涉及的一种实施场景的示意图。如图1所示,该实施场景包括:注册管理设备10和待注册设备20。注册管理设备10与待注册设备20之间能够通过有线或无线网络进行通信。
在该应用场景中,待注册设备20用于向注册管理设备10发送注册请求。注册管理设备10用于基于该注册请求向待注册设备20发送第一注册响应。待注册设备20用于基于该第一注册响应对注册管理设备10进行验证,并在对该注册管理设备10验证通过时,向注册管理设备10发送第二注册响应,以便于注册管理设备根据该第二注册响应完成多该待注册设备的注册过程。
并且,作为一种可能的实现方式,注册管理设备10还用于基于该第二注册响应对待注册设备20进行验证,然后向待注册设备20发送验证结果,并根据该验证结果执行对该待注册设备20的后续管理注册过程。
可选地,待注册设备20为物联网(Internet of things,IoT)设备、个人电脑(personal computer,PC)、台式计算机、膝上型计算机、移动电话、智能手机、平板电脑、多媒体播放器、智能家电、人工智能设备、智能可穿戴设备、电子阅读器或智能车载设备等终端设备,或路由器和交换机等具备通信接口的网络设备。注册管理设备10为服务器或网关设备等。其中,服务器可选为一台服务器,或者由多台服务器构成的服务器集群,或者一个云计算服务中心。
图2是本申请实施例涉及的另一种实施场景的示意图。如图2所示,该实施场景包括:待注册设备20、记录管理设备301、制造方的管理设备302和待注册设备20的至少一级流转方的管理设备303。制造方的管理设备302和至少一级流转方的管理设备303中的任一个,与记录管理设备301均通过有线或无线方式进行通信。并且,图1所示的应用场景中的注册管理设备10属于该至少一级流转方中的一个。
在该应用场景中,记录管理设备301用于接收注册管理设备10发送的信息获取请求,并响应于信息获取请求,基于密钥转移记录向注册管理设备10发送信息获取响应,信息获取响应携带有注册管理设备10所属流转方的上一流转方的流转密钥,密钥转移记录中记录的任意两个流转方的流转密钥不同,该上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方。
可选地,密钥转移记录可以根据制造方的管理设备302和至少一级流转方的管理设备303向记录管理设备301发送的信息得到。例如,制造方的管理设备302用于向记录管理设备301发送待注册设备20的设备信息。至少一级流转方的管理设备303用于向记录管理设备301发送流转方拥有的待注册设备20的设备标识和流转密钥等信息。记录管理设备301用于基于制造方的管理设备302和至少一级流转方的管理设备303发送的信息,生成密钥转移记录。
其中,信息获取请求的发起者能够为至少一级流转方的管理设备303中的任一个。例如,信息获取请求的发起者为该至少一级流转方的管理设备303中的最后一个流转方的管理设备303。
可选地,记录管理设备301、制造方的管理设备302和至少一级流转方的管理设备303均能够为服务器、个人电脑、台式计算机、膝上型计算机、移动电话、智能手机、平板电脑、多媒体播放器、智能家电、人工智能设备、智能可穿戴设备、电子阅读器或智能车载设备等。且该服务器可选为一台服务器,或者由多台服务器构成的服务器集群,或者一个云计算服务中心。
并且,记录管理设备301可以为单独设置的用于管理数据的管理设备。例如用于管理数据库的服务器。或者,制造方的管理设备302或任一级流转方的管理设备303也可用作记录管理设备301。例如,当密钥转移记录记载在区块链系统中时,某一流转方的注册管理设备10本身也是区块链上的节点,此时,该注册管理设备10同时用作记录管理设备301。另外,该注册管理设备10从区块链记载的密钥转移记录中获取信息时,可以从该注册管理设备10本身记录的信息中获取信息,也可以从区块链上的其他节点记录的信息中获取信息,本申请实施例对其不做具体限定。
在一种可实现方式中,密钥转移记录可以记载在数据库中。可选地,位保证该密钥转移记录的安全性,数据库为半可信的中心化数据库,或者,数据库为区块链系统。
应理解的是,以上两种应用场景为对本申请实施例涉及的应用场景的举例,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例涉及的应用场景还可以有其他实现方式,本申请实施例对其不做一一列举。
下面对本申请实施例提供的一种设备注册方法的实现过程进行说明。该设备注册方法可应用于图1所示的应用场景。本申请实施例借助图3和图4对该设备注册方法进行说明。如图3所示,该设备注册方法包括以下步骤:
步骤401、注册管理设备获取待注册设备的流转信息。
待注册设备被制造完成后,待注册设备会被从制造方依次流转至至少一个流转方。例如,从待注册设备的制造方依次流转至集成商、代理商、分销商、零售商和企业用户。该待注册设备从制造方依次流转至至少一个流转方的过程称为该待注册设备的流转过程。流转方是指在待注册设备的流转过程中曾拥有或曾控制待注册设备的实体。
该至少一个流转方中的每个流转方均有可能是该待注册设备的使用者,且流转方的管理设备可能是注册管理设备。例如,待注册设备流转过程中的最后一级流转方是该待注册设备的使用者,且该最后一级流转方的管理设备为该流转方的注册管理设备。又例如,待注册设备在流转过程中依次经过制造方、集成商、代理商、分销商、零售商到达企业用户1,企业用户1为该待注册设备的使用者,待注册设备加入该企业用户1的网络之前需要向该企业用户1的注册管理设备注册,此时该企业用户1的管理设备为该待注册设备的注册管理设备。当该待注册设备由企业用户1转卖至企业用户2时,该企业用户2更新为该待注册设备的使用者,待注册设备加入该企业用户2的网络之前需要向该企业用户2的注册管理设备注册,此时该企业用户2的管理设备更新为该待注册设备的注册管理设备。
待注册设备的流转信息可以为注册管理设备直接获取得到的信息,也可以是根据获得的信息进行处理后得到的信息。并且,注册管理设备可以数据库等能够使制造方和各级流转方均能够访问的介质中获取相关信息。例如,可以从半可信的中心化数据库或者区块链系统中获取相关信息。本申请实施例以从数据库中获取相关信息为例进行说明。
注册管理设备可以根据待注册设备的设备标识,从数据库中获取注册管理设备所属的流转方拥有的待注册设备的流转信息,以便于根据待注册设备的流转信息对待注册设备进行验证,完成待注册设备的注册过程。并在获取以上信息后,将以上信息存储在注册管理设备的本地,如存储在本地数据库中,以备在待注册设备的注册过程中使用。
其中,注册管理设备获取的待注册设备的流转信息包括:在待注册设备的流转过程中,注册管理设备所属流转方的上一流转方的流转密钥TK(i-1)。可选地,该流转信息还包括以下一个或多个:流转信息链和秘密参数链中的至少一个信息链,流转信息支链和秘密参数支链中的至少一个信息支链及参考流转方(如流转过程中的第j个流转方)对待注册设备的认证密钥(如SK(j)),注册管理设备所属流转方使用的秘密参数secretpara(i),待注册设备的已注册次数,待注册设备的允许注册次数的上限值maxn和标准身份存证信息。
其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,即流转信息链体现的是在各级流转方之间如何实现流转的。在一种可实现方式中,流转信息链通过流转过程中待注册设备的流转总次数反映。也即是,流转信息链用于指示待注册设备经过的流转方的总数。其中,注册管理设备根据数据库记录的多个流转方的信息,能够确定流转过程中待注册设备的流转总次数。进一步的,流转信息链还通过各级流转方的标识ownerID和类型值ownertype中的至少一个,以及待注册设备在各级流转方之间的流转顺序反映。任一流转方的类型值用于反映任一流转方的类型,如表示流转方为集成商、分销商或零售商。流转方的标识和类型值、及待注册设备的标识可以保存在转移证据基础信息VP中。相应的,如图4所示,注册管理设备可以从数据库中获取了该转移证据基础信息VP。由此可以得知,注册管理设备根据数据库记录的多个流转方的信息,可以确定该流转方在流转过程中的次序,根据该次序能够确定待注册设备在各级流转方之间的流转顺序。
例如,当至少一个信息链KC1包括流转信息链,且流转信息链通过各级流转方的标识ownerID,以及待注册设备在各级流转方之间的流转顺序反映时,信息链KC1可表示为:KC1={<Index1:OwnerID 1>,…,<Index i:OwnerID i>},其中,OwnerID i表示第i个流转方的标识,Indexi表示标识OwnerID i指示的流转方在流转过程中的次序,待注册设备在各级流转方之间的流转顺序为从Index1至Index i,该流转信息链KC1表示的流转方的总数即为待注册设备经过的流转方的总数。
秘密参数链用于指示流转过程中各级流转方使用的秘密参数。在一种可实现方式中,秘密参数链通过各级流转方使用的秘密参数和待注册设备在各级流转方之间的流转顺序反映。
例如,当至少一个信息链KC1包括流转信息链和秘密参数链,且流转信息链通过各级流转方的标识ownerID,以及待注册设备在各级流转方之间的流转顺序反映,秘密参数链通过各级流转方的秘密参数SecretPara和待注册设备在各级流转方之间的流转顺序反映时,信息链KC1可表示为:KC1={<Index1:OwnerID(1),SecretPara(1)>,…<Indexi:OwnerID(i),SecretPara(i)>},其中,SecretPara(i)表示第i个流转方使用的秘密参数。
类似的,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
流转信息支链通过流转子过程中待注册设备的流转总次数反映。秘密参数支链通过待注册设备在流转子过程中经过的各级流转方使用的秘密参数和待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映。可选地,流转信息支链还通过待注册设备在流转子过程中经过的各级流转方的标识ownerID和类型值ownertype中的至少一个,以及待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
进一步的,制造方的管理设备存储在数据库中的信息还包括:待注册设备的允许注册次数、允许注册次数的上限值maxn和标准身份存证信息Pmaxn。当待注册设备在流转方处发生注册行为时,会导致待注册设备的允许注册次数发生变化,此时,流转方的管理设备存储在数据库中的信息还包括:待注册设备的更新后的允许注册次数。相应的,注册管理设备获取的待注册设备的流转信息还包括以下一个或多个:待注册设备的允许注册次数、允许注册次数的上限值maxn和标准身份存证信息Pmaxn。并且,当数据库中存储有多个允许注册次数时,注册管理设备可以获取更新时间最晚的允许注册次数。例如,在制造方的管理设备向数据库发送允许注册次数后,待注册设备的允许注册次数在流转过程中发生了至少一次更新,对应的流转方的管理设备还向数据库发送了更新后的允许注册次数,且每次发送允许注册次数时还会发送允许注册次数的更新时间,则注册管理设备还需要获取更新时间距离注册管理设备获取信息的时间最近的一次的允许注册次数Acounter。
一般地,为保证待注册设备的信息的安全性,以上信息均以密文的方式存储在数据库中。例如,对于第i个流转方,该第i个流转方使用的秘密参数secretpara(i)以第一密文CK1存储在数据库中,第(i-1)个流转方传递给第i个流转方的流转密钥TK(i-1)、及第1至(i-1)个流转方使用的秘密参数secretpara(1)至secretpara(i-1)以第二密文CK2存储在数据库中。并且,第一密文CK1可以采用第i个流转方的加密公钥EPKi加密得到,第二密文CK2可以采用第(i-1)个流转方的数据密钥key加密得到,且为了保证数据密钥key的安全性,数据库中还存储有第三密文EK,该第三密文由第i个流转方的加密公钥EPKi对第(i-1)个流转方的数据密钥key加密得到。其中,i表示流转方在待注册设备的流转过程中的次序,即待注册设备流转到的第几个流转方。如图4所示,注册管理设备从数据库中获取了第一密文CK1、第二密文CK2和第三密文EK。
下面以注册管理设备在获取第一密文CK1、第二密文CK2和第三密文EK后,通过对第一密文CK1、第二密文CK2和第三密文EK进行解密,得到待注册设备的流转信息的实现过程为例,对注册管理设备获取待注册设备的流转信息的过程进行说明。假设注册管理设备为第i个流转方的注册管理设备,其通过解密获取待注册设备的流转信息的实现过程包括:
步骤(1)、使用第i个流转方的加密公钥EPKi对应的解密私钥ESK(i),对第一密文CK1解密得到SecretPara(i)。在一种可实现方式中,对第一密文CK1解密的实现过程包括:SecretPara(i)=DA(ESK(i),CK1),DA()是一个基于非对称密码的解密算法。其中,用于对第一密文CK1解密的算法与加密得到第一密文CK1的算法互为匹配算法。当加密得到第一密文CK1的算法为RSA(rivest-shamir-adleman)2048算法时,该解密算法可以为RSA-2048算法。解密的算法与加密的算法互为匹配的算法是指该匹配的解密的算法能够成功地对加密的算法加密后的密文进行解密。
步骤(2)、使用第i个流转方的加密公钥EPKi对应的解密私钥ESK(i),对第三密文EK解密得到数据密钥key。在一种可实现方式中,对第三密文EK解密的实现过程包括:key=DA(ESK(i),EK)。该过程中使用的DA()与解密第一密文CK1使用的DA()可以相同或不同,只要该过程中使用的解密算法与加密得到key的算法互为匹配算法即可。
步骤(3)、使用步骤(2)解密得到的数据密钥key,对第二密文CK2解密得到流转密钥TK(i-1)、及秘密参数secretpara(1)至secretpara(i-1)。其中,流转密钥TK(i-1)为第i个流转方的上一流转方向第i个流转方传输的流转密钥,secretpara(1)至secretpara(i-1)分别为在流转过程中按照流转顺序位于第i个流转方之前的第1个至第(i-1)个流转方使用的秘密参数。上一流转方为向第i个流转方转移待注册设备的流转方。
在一种可实现方式中,对第二密文CK2解密的实现过程包括:TK(i-1),SecretPara(1),…,SecretPara(i-1)=DS(key,CK2),Ds()是一个对称解密算法。其中,用于对第二密文CK2解密的算法与加密得到第二密文CK2的算法互为匹配算法。例如,当加密得到第二密文CK2的算法为高级加密标准(advanced encryption standard,AES)256算法时,该解密算法可以为AES256算法。
步骤(4)、根据步骤(3)解密得到的流转密钥TK(i-1),获取注册管理设备对待注册设备的认证密钥SK(i)。例如,可以将流转密钥TK(i-1)直接确定为认证密钥SK(i)。或者,根据流转密钥TK(i-1)获取认证密钥SK(i)的实现方式包括:SK(i)=HKDF(TK(i-1))。其中,基于哈希的密钥派生函数(hash key derivation function,HKDF)是一个安全的密钥派生算法,如基于HMAC-SHA256的密钥派生算法。
可选地,认证密钥SK(i)还可以基于步骤(1)解密得到的第i个流转方使用的秘密参数SecretPara(i)得到。例如,获取认证密钥SK(i)的实现方式包括:SK(i)=HKDF(TK(i-1),SecretPara(i))。当认证密钥SK(i)还根据秘密参数得到时,能够进一步提高注册过程的安全性保障。
基于以上解密过程得到的信息,注册管理设备能够获得待注册设备的流转信息。并且,上述步骤(1)至步骤(4)中未示出的流转信息中的参数的获取过程,请相应参考上述步骤(1)至步骤(4),此处不对其进行一一列举。
需要说明的是,该步骤401的执行时机可以根据应用需求进行调整。例如,该步骤401可以在步骤402之前执行。或者,该步骤401可以在步骤402之后执行。例如,该步骤401中获取任一信息的过程可以在需要使用该信息时执行,如在步骤403中需要根据认证密钥SK(i)获取第一验证参数AuthS,则可以在根据认证密钥获取第一验证参数时,执行获取认证密钥的操作。并且,注册管理设备获取的流转信息,可以为注册管理设备所属的流转方所拥有的所有设备中部分或全部还未进行注册的设备的流转信息。例如,注册管理设备可以根据注册管理设备所属的流转方所拥有的所有设备中部分或全部还未进行注册的设备的设备标识,获取的设备标识指示的设备的流转信息。
还需要说明的是,注册管理设备获取的流转信息,可以根据由数据库根据该数据库中记载的密钥转移记录提供的信息得到,且该密钥转移记录可以根据制造方和流转方提供的信息生成。为便于阅读,制造方和流转方提供以上信息,及生成密钥转移记录的实现过程,在后面设备注册方法的实施例中进行介绍。
步骤402、待注册设备向注册管理设备发送注册请求。
待注册设备向注册管理设备注册时,需要向注册管理设备发送注册请求,并在该注册请求中携带该待注册设备的设备标识DevID,以便于注册管理设备根据该设备标识确定请求注册的设备。其中,设备标识内置在待注册设备中。该待注册设备的设备标识用于唯一标识待注册设备的身份。例如,当待注册设备为移动终端时,该设备标识可以为移动终端的产品序列号(serial number,SN)或国际移动设备身份码(international mobileequipment identity,IMEI)。
可选地,注册请求还携带有待注册设备的当前注册次数Acounter,以便于注册管理设备基于该当前注册次数验证待注册设备是否具有注册权限。当待注册设备具有注册权限时,可以继续后续注册过程。当待注册设备不具有注册权限时,即可停止对该待注册设备的注册过程,不允许该待注册设备注册向该注册管理设备进行注册。其中,待注册设备能够记录自身的已注册次数,待注册设备的当前注册次数等于待注册设备的已注册次数加1。
进一步,注册请求还携带有第二挑战参数RandC,以便于注册管理设备根据该第二挑战参数执行对待注册设备的验证过程。通过在注册请求中携带第二挑战参数,使得注册过程中还需要根据该第二挑战参数进行验证,增加了验证的复杂度,进一步增加了待注册设备注册过程的安全性保障。
其中,第二挑战参数RandC可以由待注册设备生成。在一种可实现方式中,第二挑战参数RandC可以基于待注册设备生成的随机数得到。例如,该第二挑战参数RandC可以为待注册设备生成的随机数。
如图4所示,待注册设备向注册管理设备发送了注册请求,该注册请求中携带有待注册设备的设备标识DevID、当前注册次数Acounter和第二挑战参数RandC。
步骤403、注册管理设备基于注册请求向待注册设备发送第一注册响应,第一注册响应携带有第一验证参数,第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到。
注册管理设备接收待注册设备发送的注册请求后,可以基于该注册请求向待注册设备发送第一注册响应,以向待注册设备发送用于对该注册管理设备进行验证的参数。其中,注册管理设备所属流转方的上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方。在本申请实施例中,每个流转方均具有流转密钥,且任意两个流转方的流转密钥不同。当任意两个流转方的流转密钥不同时,能够减小因信息泄露对待注册设备对注册管理设备进行验证产生的影响。并且,当任一流转方作恶时,其提供的流转密钥与数据库中记录的流转密钥不同,就能够根据其及时发现流转方的作恶行为,实现对流转方的作恶行为的追溯。
可选地,当注册请求还携带有待注册设备的当前注册次数Acounter时,注册管理设备可以基于该当前注册次数验证待注册设备是否具有注册权限,并在待注册设备具有注册权限时,向待注册设备发送第一注册响应,以便于继续后续的注册过程。在待注册设备不具有注册权限时,停止对该待注册设备的注册过程,不允许该待注册设备注册向该注册管理设备进行注册。
在一种可实现方式中,注册管理设备可以获取数据库中记载的更新时间距离注册管理设备获取待注册设备的流转信息的时间最近的一次的允许注册次数,并将从数据库中获取的允许注册次数与注册请求中携带的允许注册次数进行比较,当从数据库中获取的允许注册次数与注册请求中携带的允许注册次数相等时,确定该待注册设备具有注册权限。
其中,注册管理设备向待注册设备发送的用于对注册管理设备进行验证的参数包括:第一验证参数。可选地,注册管理设备向待注册设备发送的用于对注册管理设备进行验证的参数还包括:第一挑战参数,即第一注册响应还可以携带有第一挑战参数。第一挑战参数Rands由注册管理设备生成,以便于注册管理设备对待注册设备进行验证。在一种可实现方式中,第一挑战参数可以基于注册管理设备生成的随机数得到。例如,该第一挑战参数可以为该注册管理设备生成的随机数。
第一验证参数AuthS由注册管理设备生成。并且,根据不同的应用场景,生成第一验证参数的实现方式可以有多种,下面以以下几种可实现方式为例,对第一验证参数的生成过程进行说明:
在生成第一验证参数的第一种可实现方式中,第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥TK(i-1)得到。例如,可以根据注册管理设备所属流转方的上一流转方的流转密钥TK(i-1),确定注册管理设备对待注册设备的认证密钥SK(i),然后根据该认证密钥SK(i)得到第一验证参数AuthS。
可选地,基于认证密钥生成第一验证参数的实现方式包括:AuthS=HMAC(SK(i)),基于哈希的消息认证码(Hash-based Message Authentication Code,HMAC)是一个安全的带密钥的杂凑算法,如HMAC-SHA256算法。
在生成第一验证参数的第二种可实现方式中,第一验证参数AuthS还基于注册管理设备所属流转方使用的秘密参数secretpara(i)得到。其中,该注册管理设备流转方使用的秘密参数可以由注册管理设备从数据库中获得,即注册管理设备从数据库中获取的流转信息还可以包括注册管理设备所属流转方使用的秘密参数secretpara(i)。
例如,第一验证参数AuthS基于注册管理设备所属流转方的上一流转方的流转密钥TK(i-1),及注册管理设备所属流转方使用的秘密参数secretpara(i)得到。可选地,其实现方式包括:AuthS=HMAC(TK(i-1),secretpara(i))。
在生成第一验证参数的第三种可实现方式中,第一验证参数AuthS还基于流转信息链和秘密参数链中的至少一个信息链KC1得到。其中,该至少一个信息链可以由注册管理设备从数据库中获取,即注册管理设备从数据库中获取的流转信息还可以包括该至少一个信息链KC1。
例如,第一验证参数AuthS基于该至少一个信息链KC1、注册管理设备所属流转方的上一流转方的流转密钥TK(i-1)、及注册管理设备所属流转方使用的秘密参数secretpara(i)得到。可选地,其实现方式包括:AuthS=HMAC(TK(i-1),secretpara(i),KC1)。
当第一验证参数还基于该至少一个信息链得到时,第一注册响应还携带有该至少一个流转链,以便于待注册设备根据该至少一个信息链对注册管理设备进行验证。
作为该第三种可实现方式的并列实现方式,第一验证参数AuthS还基于流转信息支链和秘密参数支链中的至少一个信息支链KC2,及参考流转方对待注册设备的认证密钥SK(j)得到。其中,该至少一个信息支链和参考流转方对待注册设备的认证密钥,可以由注册管理设备从数据库中获取,即注册管理设备从数据库中获取的流转信息还可以包括该至少一个信息支链和参考流转方对待注册设备的认证密钥。
例如,第一验证参数AuthS基于该至少一个信息支链KC2、注册管理设备所属流转方的上一流转方的流转密钥TK(i-1)、注册管理设备所属流转方使用的秘密参数secretpara(i)、及参考流转方对待注册设备的认证密钥SK(j)得到。可选地,其实现方式包括:AuthS=HMAC(TK(i-1),secretpara(i),KC2,SK(j))。
流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,即流转信息支链体现的是流转子过程中待注册设备在各级流转方之间如何实现流转的。秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数。待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。可选的,流转信息支链通过流转子过程中待注册设备的流转总次数反映。秘密参数支链通过待注册设备在流转子过程中经过的各级流转方使用的秘密参数和待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映。进一步的,流转信息支链还通过待注册设备在流转子过程中经过的各级流转方的标识ownerID和类型值ownertype中的至少一个,以及待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。其中,该至少一个信息支链的实现方式可以相应参考前述至少一个信息链的实现方式。
并且,当第一验证参数还基于至少一个信息支链KC2,及参考流转方对待注册设备的认证密钥SK(j)得到时,第一注册响应还携带有至少一个信息支链KC2,及参考流转方对待注册设备的认证密钥SK(j)得到,以便于待注册设备根据其对注册管理设备进行验证。
在生成第一验证参数的第四种可实现方式中,第一验证参数AuthS还基于第二挑战参数得到。其中,注册请求中可以携带有第二挑战参数RandC。
例如,第一验证参数AuthS基于至少一个信息链KC1、注册管理设备所属流转方的上一流转方的流转密钥TK(i-1)、及注册管理设备所属流转方使用的秘密参数secretpara(i)和第二挑战参数得到。可选地,其实现方式包括:AuthS=HMAC(TK(i-1),secretpara(i),KC1,RandC)。
此时,第一注册响应还可以携带有第三挑战参数RandC’,以便于待注册设备基于该第三挑战参数对注册管理设备进行验证。其中,第三挑战参数由注册管理设备从注册请求中提取得到。例如,该第三挑战参数可以为注册管理设备从注册请求中解码得到的指示为第二挑战参数的参数。如图4所示,注册管理设备向待注册设备发送了第一注册响应,该第一注册响应携带有第一验证参数AuthS、第一挑战参数Rands、第三挑战参数RandC’和至少一个流转链KC1。
在生成第一验证参数的第五种可实现方式中,第一验证参数AuthS还基于当前注册次数Acounter得到。其中,注册请求中可以携带有待注册设备的当前注册次数Acounter。
例如,第一验证参数AuthS基于至少一个信息链KC1、注册管理设备所属流转方的上一流转方的流转密钥TK(i-1)、注册管理设备所属流转方使用的秘密参数secretpara(i)、第二挑战参数和当前注册次数Acounter得到。可选地,其实现方式包括:AuthS=HMAC(TK(i-1),secretpara(i),KC1,RandC,Acounter)。或者,第一验证参数AuthS可以基于至少一个信息链KC1、注册管理设备所属流转方的上一流转方的流转密钥TK(i-1)、及注册管理设备所属流转方使用的秘密参数secretpara(i)和当前注册次数Acounter得到。可选地,其实现方式包括:AuthS=HMAC(TK(i-1),secretpara(i),KC1,Acounter)。
需要说明的是,在上述获取第一验证参数的多种实现方式中,该多种实现方式均为在第一种实现方式的基础上增加了用于确定第一验证参数的可选输入参数,例如,上述第二至第五种实现方式分别在注册管理设备所属流转方的上一流转方的流转密钥TK(i-1)的基础上,增加了注册管理设备所属流转方使用的秘密参数secretpara(i)、至少一个信息链KC1(或至少一个信息支链KC2)、第二挑战参数和当前注册次数。当增加以上任一种可选输入参数时,生成第一验证参数的实现方式可以为仅根据注册管理设备所属流转方的上一流转方的流转密钥TK(i-1)和该新增的可选输入参数生成第一验证参数,也可以是根据其他可选输入参数中的一个或多个、该新增的可选输入参数和注册管理设备所属流转方的上一流转方的流转密钥TK(i-1),生成第一验证参数,本申请实施例对其不做具体限定。并且,根据应用场景的变化,生成第一验证参数的输入参数还可以根据应用需求进行变化。例如,还可以根据待注册设备的设备标识DevID生成第一验证参数。
步骤404、待注册设备接收注册管理设备发送的第一注册响应后,基于第一验证参数对注册管理设备进行验证。
待注册设备基于第一验证参数对注册管理设备进行验证的过程可以包括:待注册设备生成第三验证参数,根据第三验证参数对第一验证参数进行验证,当第三验证参数与第一验证参数匹配时,确定对注册管理设备的验证通过。在一种可实现方式中,第三验证参数与第一验证参数匹配包括:第三验证参数等于第一验证参数。
可选地,根据不同的应用场景,生成第三验证参数的实现方式可以有多种,下面以以下几种可实现方式为例,对第三验证参数的生成过程进行说明:
在生成第三验证参数的第一种可实现方式中,第三验证参数AuthS’基于注册管理设备对待注册设备的基础认证密钥SK(0)得到。在一种可实现方式中,制造方的管理设备在待注册设备中内置有该待注册设备的基础认证密钥SK(0)。当注册管理设备采用生成第一验证参数的第一种实现方式生成第一验证参数时,待注册设备采用该第一种可实现方式生成第三验证参数。
可选地,基于认证密钥生成第三验证参数AuthS’的实现方式包括:AuthS’=HMAC(SK(0)),HMAC()是一个安全的带密钥的杂凑算法,如HMAC-SHA256算法。
其中,该根据基础认证密钥SK(0)生成第三验证参数的过程,具体可以包括:基于基础认证密钥SK(0)得到认证密钥SK(i),然后根据认证密钥SK(i)生成第三验证参数。
在一种可实现方式中,认证密钥SK(i)可以等于基础认证密钥SK(0),即SK(i)=SK(0)。或者,如图5所示,认证密钥SK(i)和基础认证密钥SK(0)满足:
TK(0)=HKDF1(SK(0)),SK(1)=HKDF2(TK(0));
…
TK(i-1)=HKDF1(SK(i-1)),SK(i)=HKDF2(TK(i-1))。
其中,TK(0)至TK(i-1)分别为流转密钥,SK(1)至SK(i)分别为不同流转方针对待注册设备的认证密钥,HKDF1()和HKDF2()均是一个安全的密钥派生算法,HKDF1()和HKDF2()可以相同或不同,如HKDF1()和HKDF2()均为基于HMAC-SHA256的密钥派生算法。
在生成第三验证参数的第二种可实现方式中,第三验证参数AuthS’还基于流转信息链和秘密参数链中的至少一个信息链得到。其中,第一注册响应可以携带有流转信息链和秘密参数链中的至少一个信息链,待注册设备可以从该第一注册响应中获取该至少一个信息链。或者,待注册设备也可以采用其他实现方式得到至少一个信息链,例如待注册设备中可以预先保存有该至少一个信息链,或者,待注册设备可以从数据库等得到该至少一个信息链。并且,当注册管理设备采用生成第一验证参数的第三种实现方式生成第一验证参数时,待注册设备采用该第二种可实现方式生成第三验证参数。另外,当该至少一个信息链为秘密参数链时,该生成第三验证参数的第二种可实现方式,即对应生成第一验证参数的第二种可实现方式。
例如,第三验证参数AuthS’基于基础认证密钥SK(0)和至少一个信息链KC1得到。可选地,其实现方式包括:AuthS’=HMAC(SK(0),KC1)。
其中,该根据基础认证密钥SK(0)和至少一个信息链KC1生成第三验证参数的过程,具体可以包括:基于基础认证密钥SK(0)和至少一个信息链KC1得到认证密钥SK(i),然后根据认证密钥SK(i)生成第三验证参数。
例如,待注册设备根据该至少一个信息链能够获得各级流转方的秘密参数、标识ownerID和类型值ownertype中的至少一个,则如图5所示,认证密钥SK(i)还可以根据各级流转方的秘密参数、标识ownerID和类型值ownertype中的至少一个得到。在一种可实现方式中,可以按照以下公式计算得到认证密钥SK(i):
TK(0)=HKDF1(SK(0),OwnerID(1),ownertype(1),Counter=1),
SK(1)=HKDF2(TK(0),SecretPara(1));
......
TK(i-1)=HKDF1(SK(i-1),OwnerID(i),ownertype(i),Counter=i),
SK(i)=HKDF2(TK(i-1);
其中,SecretPara(i)),OwnerID(1),.....,OwnerID(i)分别表示第1个至第i个流转方的标识,ownertype(1),.....,ownertype(i)分别表示第1个至第i个流转方的类型值,SecretPara(1),.....,SecretPara(i)分别表示第1个至第i个流转方使用的秘密参数。
作为该第二种可实现方式的并列实现方式,第三验证参数AuthS’还基于流转信息支链和秘密参数支链中的至少一个信息支链KC2,及参考流转方对待注册设备的认证密钥SK(j)得到。其中,第一注册响应可以携带有至少一个信息支链,待注册设备可以从该第一注册响应中获取该至少一个信息支链。或者,待注册设备也可以采用其他实现方式得到至少一个信息支链,例如待注册设备中可以预先保存有该至少一个信息支链,或者,待注册设备可以从数据库等得到该至少一个信息支链。
例如,第三验证参数AuthS’基于基础认证密钥SK(0)、至少一个信息支链KC2、及参考流转方对待注册设备的认证密钥SK(j)得到。可选地,其实现方式包括:AuthS=HMAC(SK(0),KC2,SK(j))。
其中,该根据基础认证密钥SK(0)、至少一个信息支链KC2、及参考流转方对待注册设备的认证密钥SK(j),生成第三验证参数的过程,具体可以包括:基于基础认证密钥SK(0)、至少一个信息支链KC2、及参考流转方对待注册设备的认证密钥SK(j)得到认证密钥SK(i),然后根据认证密钥SK(i)生成第三验证参数。
并且,当第一验证参数还基于至少一个信息支链KC2,及参考流转方对待注册设备的认证密钥SK(j)得到时,第一注册响应还携带有至少一个信息支链KC2,及参考流转方对待注册设备的认证密钥SK(j)得到,以便于待注册设备根据其对注册管理设备进行验证。
在生成第三验证参数的第三种可实现方式中,第三验证参数AuthS’还基于第二挑战参数RandC得到。此时,注册请求还应携带有第二挑战参数RandC,以便于注册管理设备生成第一验证参数。并且,当注册管理设备采用生成第一验证参数的第四种实现方式生成第一验证参数时,待注册设备采用该第三种可实现方式生成第三验证参数。
例如,第三验证参数AuthS’基于基础认证密钥SK(0)、至少一个信息链KC1和第二挑战参数RandC得到。可选地,其实现方式包括:AuthS’=HMAC(SK(0),KC1,RandC)。
并且,当第一注册响应还携带有第三挑战参数RandC’时,待注册设备还可以根据该第三挑战参数对注册管理设备进行验证,且注册管理设备通过验证的条件还包括:第三挑战参数与第二挑战参数匹配。即注册管理设备通过验证的条件包括:第三验证参数与第一验证参数AuthS匹配,且第三挑战参数与第二挑战参数匹配。在一种可实现方式中,第三挑战参数与第二挑战参数匹配包括:第三挑战参数等于第二挑战参数。
正常情况下,注册管理设备从注册请求中解码得到的第三挑战参数应该与待注册设备发送的第二挑战参数匹配。因此,当第一注册响应中携带的第三挑战参数与待注册设备发送的第二挑战参数不匹配时,说明该待注册设备的注册过程中可能存在不安全因素,若继续执行待注册设备的注册过程可能导致待注册设备进入错误的网络,则需要停止当次的注册过程。
在生成第三验证参数的第四种可实现方式中,第三验证参数AuthS’还基于当前注册次数Acounter得到。此时,注册请求还应携带有当前注册次数Acounter,以便于注册管理设备根据其生成第一验证参数。并且,当注册管理设备采用生成第一验证参数的第五种实现方式生成第一验证参数时,待注册设备采用该第四种可实现方式生成第三验证参数。
例如,第三验证参数AuthS’基于基础认证密钥SK(0)、至少一个信息链KC1、第二挑战参数RandC和当前注册次数Acounter得到。可选地,其实现方式包括:AuthS’=HMAC(SK(0),KC1,RandC,Acounter)。或者,第三验证参数AuthS’基于基础认证密钥SK(0)、至少一个信息链KC1和当前注册次数Acounter得到。例如,第三验证参数AuthS’基于基础认证密钥SK(0)、至少一个信息链KC1和当前注册次数Acounter得到。可选地,其实现方式包括:AuthS’=HMAC(SK(0),KC1,Acounter)。
需要说明的是,在上述获取第三验证参数的多种实现方式中,该多种实现方式均为在第一种实现方式的基础上增加了用于确定第三验证参数的可选输入参数,例如,上述第二至第四种实现方式分别在基础认证密钥SK(0)的基础上,增加了至少一个信息链(或至少一个信息支链)、第二挑战参数和当前注册次数。当增加以上任一种可选输入参数时,生成第三验证参数的实现方式可以为仅根据基础认证密钥SK(0)和该新增的可选输入参数生成第三验证参数,也可以是根据其他可选输入参数中的一个或多个、基础认证密钥SK(0)和该新增的可选输入参数生成第三验证参数,本申请实施例对其不做具体限定。并且,根据应用场景的变化,生成第三验证参数的输入参数还可以根据应用需求进行变化。
步骤405、当待注册设备对注册管理设备的验证通过时,待注册设备向注册管理设备发送第二注册响应,第二注册响应携带有第二验证参数。
待注册设备对注册管理设备的验证通过时,表示可以继续执行注册过程,则待注册设备可以向注册管理设备发送第二注册响应,且该第二注册响应中携带有第二验证参数,以供注册管理设备根据该第二验证参数对待注册设备进行验证。由于第二注册响应携带有第二验证参数,则在待注册设备向注册管理设备发送第二注册响应之前,该待注册设备需要生成该第二验证参数。
可选地,根据不同的应用场景,生成第二验证参数的实现方式可以有多种,下面以以下几种可实现方式为例,对第二验证参数的生成过程进行说明:
在生成第二验证参数的第一种可实现方式中,第二验证参数Authc基于第一挑战参数Rands和注册管理设备对待注册设备的认证密钥SK(i)得到。其中,第一注册响应还可以携带有第一挑战参数Rands,则待注册设备可以从第一注册响应中获取第一挑战参数。
可选地,基于认证密钥SK(i)和第一挑战参数Rands生成第二验证参数Authc的实现方式包括:Authc=HMAC(SK(i),Rands),HMAC()是一个安全的带密钥的杂凑算法,如HMAC-SHA256算法。其中,认证密钥的获取方式请相应参考步骤404中的相关描述,此处不再赘述。
在生成第二验证参数的第二种可实现方式中,第二验证参数Authc还基于待注册设备在当前注册次数Acounter使用的凭证信息P(maxn-Acounter)得到。maxn为待注册设备允许注册次数的上限值。
例如,第二验证参数Authc基于第一挑战参数Rands、认证密钥SK(i)和待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)得到。可选地,其实现方式包括:Authc=HMAC(SK(i),Rands,P(maxn-Acounter))。
在一种可实现方式中,待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter),可以基于待注册设备的种子参数MSeed得到。其中,种子参数MSeed基于待注册设备或待注册设备的制造方的管理设备生成的随机数得到。例如,种子参数MSeed是待注册设备生成的长度为256比特(bit)的随机数。
可选地,请参考图6,可以按照以下公式,通过执行maxn-Acounter次哈希计算,得到待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter):
P1=Hash(MSeed);
P2=Hash(P1);
......
P(maxn-Acounter)=Hash(P(maxn-Acounter-1))。
其中,Hash()是一个安全的单向哈希函数。例如,Hash()算法可以是SHA256。
在另一种可实现方式中,待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter),还可以基于当前注册次数Acounter和允许注册次数的上限值maxn得到。例如,请参考图6,可以按照以下公式计算得到待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter):
P1=Hash(MSeed,Counter=maxn);
P2=Hash(P1,Counter=maxn-1);
......
P(maxn-Acounter)=Hash(P(maxn-Acounter-1),Counter=maxn-Acounter))。
在再一种可实现方式中,待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter),还可以基于待注册设备的设备标识DevID得到。例如,请参考图6,可以按照以下公式计算得到待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter):
P1=Hash(MSeed,DevID,Counter=maxn);
P2=Hash(P1,DevID,Counter=maxn-1);
......
P(maxn-Acounter)=Hash(P(maxn-Acounter-1),DevID,Counter=maxn-Acounter)。
当第二验证参数Authc还基于待注册设备在当前注册次数Acounter使用的凭证信息P(maxn-Acounter)得到时,为便于注册管理设备基于待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter),对第二验证参数进行验证,该第二注册响应还携带有待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)。
其中,为避免通过待注册设备在不同注册过程中导致的泄密,待注册设备在不同注册次数使用的凭证信息互不相同,以进一步提高待注册设备注册的安全性。并且,通过采用单向哈希函数计算待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)时,能够使得在注册次数i小于注册次数j时,基于待注册设备在注册次数j使用的凭证信息P(maxn-j)计算待注册设备在注册次数i使用的凭证信息P(maxn-i)的过程具有单向性。也即是,当注册次数i小于注册次数j时,待注册设备在注册次数i使用的凭证信息P(maxn-i)能够由待注册设备在注册次数j使用的凭证信息P(maxn-j)计算得到,且待注册设备在注册次数j使用的凭证信息无法根据待注册设备在注册次数i使用的凭证信息得到。这样一来,待注册设备在不同注册过程中向管理注册设备提供的待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)具有单向性,使得注册设备无法根据待注册设备在注册次数i使用的凭证信息得到待注册设备在注册次数j使用的凭证信息,使得待注册设备在前的注册过程不会泄露在后的注册过程使用的凭证信息,保证了注册过程中使用的凭证信息的安全性,进一步保证了待注册设备注册过程的安全性。
在生成第二验证参数的第三种可实现方式中,第二验证参数还基于当前注册次数Acounter得到。
例如,第二验证参数基于第一挑战参数Rands、认证密钥SK(i)、待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)和当前注册次数Acounter得到。可选地,其实现方式包括:Authc=HMAC(SK(i),Rands,P(maxn-Acounter),Acounter)。
此时,为便于注册管理设备基于当前注册次数Acounter对第二验证参数进行验证,若待注册设备发送的注册请求中没有携带当前注册次数,该第二注册响应还携带有当前注册次数Acounter。如图4所示,待注册设备向注册管理设备发送了第二注册响应,该第二注册响应携带有第二验证参数Authc和待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)。
需要说明的是,在上述获取第二验证参数的多种实现方式中,该多种实现方式均为在第一种实现方式的基础上增加了用于确定第二验证参数的可选输入参数,例如,上述第二和第三种实现方式在第一挑战参数Rands和认证密钥SK(i)的基础上,分别增加了待注册设备在当前注册次数使用的凭证信息和当前注册次数。当增加以上任一种可选输入参数时,生成第二验证参数的实现方式可以为仅根据第一挑战参数Rands、认证密钥SK(i)和该新增的可选输入参数生成第二验证参数,也可以是根据其他可选输入参数中的一个或多个、第一挑战参数Rands、认证密钥SK(i)和该新增的可选输入参数生成第二验证参数,本申请实施例对其不做具体限定。并且,根据应用场景的变化,生成第二验证参数的输入参数还可以根据应用需求进行变化。
步骤406、注册管理设备接收第二注册响应后,基于第二注册响应携带的第二验证参数,对待注册设备进行验证,向待注册设备发送验证结果。
注册管理设备对待注册设备进行验证后,若确定待注册设备验证通过,则注册管理设备可以向待注册设备发送允许入网的通知,并向待注册设备发送相关的配置信息,以便待注册设备能够正确入网。若确定待注册设备验证不通过,则注册管理设备可以向待注册设备发送拒绝入网的通知,以指示该待注册设备不能入网。
在一种可实现方式中,注册管理设备对待注册设备进行验证的实现方式包括:注册管理设备生成第四验证参数,当第四验证参数Authc’与第二验证参数Authc匹配时,确定待注册设备通过验证。可选地,第四验证参数Authc’与第二验证参数Authc匹配,包括第四验证参数Authc’与第二验证参数Authc相等。
在另一种可实现方式中,注册管理设备不仅可以基于第二验证参数进行验证,还可以基于待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter),对待注册设备进行验证。其实现方式包括:注册管理设备基于待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter),获取待注册设备在允许注册次数的上限值maxn的标准身份存证信息Pmaxn’,并基于待注册设备的标准身份存证信息Pmaxn对在允许注册次数的上限值maxn的标准身份存证信息Pmaxn’进行验证。此时,当待注册设备在允许注册次数的上限值的身份存证信息与标准身份存证信息Pmaxn匹配,且第四验证参数与第二验证参数匹配时,确定待注册设备通过验证。其中,待注册设备的标准身份存证信息Pmaxn由注册管理设备从数据库中获得。第二注册响应还可以携带有待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter),此时,注册管理设备可以从该第二注册响应中获取待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)。
下面先对生成第四验证参数的实现过程进行说明。可选地,根据不同的应用场景,生成第四验证参数的实现方式可以有多种,下面以以下几种可实现方式为例,对第四验证参数的生成过程进行说明:
在生成第四验证参数的第一种可实现方式中,第四验证参数Authc’基于注册管理设备对待注册设备的认证密钥SK(i)和第一挑战参数Rands得到。当待注册设备采用生成第二验证参数的第一种实现方式生成第二验证参数时,注册管理设备采用该第一种可实现方式生成第四验证参数。
可选地,基于认证密钥SK(i)和第一挑战参数Rands生成第四验证参数Authc’的实现方式包括:Authc’=HMAC(SK(i),Rands),HMAC()是一个安全的带密钥的杂凑算法,如HMAC-SHA256算法。其中,如前,注册管理设备可以基于上一流转方的流转密钥TK(i-1)得到认证密钥SK(i)。可选地,注册管理设备还可以基于注册管理设备所属流转方使用的秘密参数secretpara得到认证密钥SK(i)。
在生成第四验证参数的第二种可实现方式中,第四验证参数Authc’还基于待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)得到。其中,注册管理设备可以从第二注册响应中获取待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)。当待注册设备采用生成第二验证参数的第二种实现方式生成第二验证参数时,注册管理设备采用该第二种可实现方式生成第四验证参数。
例如,第四验证参数基于认证密钥SK(i)、第一挑战参数Rands和待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)得到。可选地,其实现方式包括:Authc’=HMAC(SK(i),Rands,P(maxn-Acounter))。
在第三种可实现方式中,第四验证参数还基于待注册设备的当前注册次数得到。注册管理设备可以从待注册设备发送的注册请求和/或第二注册响应中,获取待注册设备的当前注册次数Acounter。当待注册设备采用生成第二验证参数的第三种实现方式生成第二验证参数时,注册管理设备采用该第三种可实现方式生成第四验证参数。
例如,第四验证参数基于认证密钥SK(i)、第一挑战参数Rands、待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)和当前注册次数Acounter得到。可选地,其实现方式包括:Authc’=HMAC(SK(i),Rands,P(maxn-Acounter),Acounter)。
下面对获取待注册设备在允许注册次数的上限值maxn的标准身份存证信息Pmaxn’的实现方式进行说明。其实现方式至少包括以下两种:
在一种可实现方式中,待注册设备在允许注册次数的上限值maxn的标准身份存证信息Pmaxn’,基于待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)得到。
可选地,其实现方式包括:从i=maxn-Acounter开始,按照下式执行maxn-(maxn-Acounter)=Acounter次哈希(hash)计算:P(i+1)’=Hash(Pi),i++,直至i=maxn-1时,计算得到的P(maxn-1+1)’=Hash(Pmaxn-1),即为待注册设备在允许注册次数的上限值maxn的标准身份存证信息Pmaxn’。其中,Hash()是一个安全的单向哈希函数。例如,Hash()算法可以是SHA256。
在另一种可实现方式中,待注册设备在允许注册次数的上限值maxn的标准身份存证信息Pmaxn’,还基于待注册设备的设备标识DevID和允许注册次数的上限值maxn得到。
例如,待注册设备在允许注册次数的上限值maxn的标准身份存证信息Pmaxn’基于待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)、待注册设备的设备标识DevID和允许注册次数的上限值maxn得到。可选地,其实现方式包括:从i=maxn-Acounter开始,按照下式执行maxn-(maxn-Acounter)=Acounter次计算:P(i+1)’=Hash(Pi,DevID,maxn-i),i++,直至i=maxn-1时,计算得到P(maxn-1+1)’=Hash(Pmaxn-1),即为待注册设备在允许注册次数的上限值maxn的标准身份存证信息Pmaxn’。
当待注册设备在允许注册次数的上限值maxn的标准身份存证信息Pmaxn’,通过对待注册设备在当前注册次数使用的凭证信息P(maxn-Acounter)执行单向哈希函数得到时,使得待注册设备在允许注册次数的上限值maxn的标准身份存证信息Pmaxn’的计算过程具有单向性。也即是,当注册次数i小于注册次数j时,待注册设备在注册次数i使用的凭证信息P(maxn-i)能够由待注册设备在注册次数j使用的凭证信息P(maxn-j)计算得到,且待注册设备在注册次数j使用的凭证信息无法根据待注册设备在注册次数i使用的凭证信息得到,使得待注册设备在前的注册过程不会泄露在后的注册过程使用的凭证信息,保证了注册过程中使用的凭证信息的安全性,进一步保证了待注册设备注册过程的安全性。
由上可知,在待注册设备对注册管理设备进行验证时,需要生成第三验证参数AuthS’,并将第三验证参数AuthS’与注册管理设备生成的第一验证参数AuthS进行匹配。在注册管理设备对待注册设备进行验证时,需要生成第四验证参数Authc’,并将第四验证参数Authc’与待注册设备生成的第二验证参数Authc进行匹配。并且,待注册设备生成第三验证参数AuthS’和第二验证参数Authc,以及,注册管理设备生成第一验证参数AuthS和第四验证参数Authc’,均需要使用注册管理设备对待注册设备的认证密钥SK(i)。因此,可以看出待注册设备与注册管理设备对对方进行验证时均使用认证密钥SK(i),由此可以确定本申请实施例提供的设备注册方法涉及的注册过程是基于对称密钥的注册过程。
通过使用基于对称密钥的注册过程对待注册设备进行注册,使得待注册设备仅需要支持轻量级的对称密码技术,无需额外支持非对称密码的数字证书机制,能够大大降低待注册设备的生产成本和注册开销,且该特点在IoT设备上表现的尤其明显。并且,该设备注册方法解决了很多IoT设备出于成本和资源受限考虑,不支持非对称密码的证书机制的问题,保证了该设备注册方法具有较大的适用范围。
需要说明的是,在上述获取第四验证参数的多种实现方式中,该多种实现方式均为在第一种实现方式的基础上增加了用于确定第四验证参数的可选输入参数,例如,上述第二和第三种实现方式是在认证密钥SK(i)和第一挑战参数Rands的基础上,分别增加了待注册设备在当前注册次数使用的凭证信息和当前注册次数的可选输入参数。当增加以上任一种可选输入参数时,生成第四验证参数的实现方式可以为仅根据认证密钥SK(i)、第一挑战参数Rands和该新增的可选输入参数生成第四验证参数,也可以是根据其他可选输入参数中的一个或多个、认证密钥SK(i)、第一挑战参数Rands和该新增的可选输入参数生成第四验证参数,本申请实施例对其不做具体限定。并且,根据应用场景的变化,生成第四验证参数的输入参数还可以根据应用需求进行变化。
步骤407、待注册设备接收注册管理设备发送的验证结果后,基于验证结果执行响应操作。
待注册设备接收到注册管理设备发送的允许入网的通知后,待注册设备就可以根据该通知执行后续的入网操作。例如当注册管理设备向待注册设备发送相关的配置信息后,待注册设备可以根据该配置信息执行相关的配置操作,以便能够正确入网。当待注册设备接收到注册管理设备发送的拒绝入网的通知,待注册设备可以停止执行注册过程,或者重新发起注册过程。
综上所述,在本申请实施例提供的设备注册方法中,待注册设备对注册管理设备进行验证时,注册管理设备发送给待注册设备的第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,待注册设备对第一验证参数进行验证使用的第三验证参数基于待注册设备的基础认证密钥得到,且任意两个流转方的流转密钥不同。这样一来,由于生成第一验证参数依赖的信息与生成第三验证参数依赖的信息不同,且任意两个流转方的流转密钥不同,能够减小因信息泄露对待注册设备对注册管理设备进行验证产生的影响,提高了待注册设备注册过程的安全保障。并且,由于任意两个流转方的流转密钥不同,当任一流转方作恶时,其提供的流转密钥与数据库中记录的流转密钥不同,就能够根据其及时发现流转方的作恶行为,实现对流转方的作恶行为的追溯,提高了对终端设备注册过程的安全保障。另外,该设备注册方法能够使得制造方免责,也无需制造方实时在线提供授权服务,能够实现待注册设备的自动化注册。
本申请实施例还提供了一种设备注册方法。该设备注册方法可应用于图2所示的应用场景。
下面以通过记录管理设备生成密钥转移记录,且密钥转移记录存储在数据库中为例,对本申请实施例提供的一种设备注册方法的实现过程进行说明。本申请实施例借助图7和图8对该设备注册方法进行说明。如图7所示,该设备注册方法包括以下步骤:
步骤701、记录管理设备接收制造方的管理设备发送的待注册设备的设备信息,设备信息包括:设备标识。
设备标识DevID由制造方向待注册设备分配,该设备标识用于唯一标识待注册设备的身份。可选地,设备信息还包括以下一个或多个:待注册设备的标准身份存证信息Pmaxn、允许注册次数的上限值maxn和制造方的签名信息Sig0。
其中,允许注册次数的上限值maxn由制造方确定。例如制造方指定待注册设备只能入网4次,则该允许注册次数的上限值maxn等于4。
制造方的签名信息Sig0是使用制造方的签名私钥VSKM,对制造方需要向数据库发送的信息的签名。例如,假设制造方需要向数据库发送的信息包括待注册设备的标识DevID和待注册设备的标准身份存证信息Pmaxn,则制造方的签名信息Sig0=Sig(VSKM,DevID,Pmaxn)。其中,Sig()算法可以是2018版RSA加密算法(RSA-2018),或椭圆曲线数字签名算法(elliptic curve digital signature algorithm,ECDSA),例如国密非对称加密算法SM2。
待注册设备的标准身份存证信息用于验证待注册设备的身份。待注册设备的标准身份存证信息可以基于待注册设备的种子参数MSeed得到。可选地,待注册设备的标准身份存证信息还可以基于待注册设备的设备标识和允许注册次数的上限值maxn得到。其中,种子参数MSeed基于待注册设备或待注册设备的制造方的管理设备生成的随机数得到,当种子参数由待注册设备生成时,待注册设备需要将该种子参数发送至制造方的管理设备,以便于制造方的管理设备根据该种子参数生成MSeed身份存证信息。例如,种子参数MSeed是待注册设备生成的长度为256比特(bit)的随机数。
可选地,请参考图6,可以按照以下公式计算得到待注册设备的标准身份存证信息Pmaxn:
P1=Hash(MSeed,DevID,Counter=maxn);
......
Pi+1=Hash(Pi,DevID,Counter=maxn-i);
......
Pmaxn=Hash(Pmaxn-1,DevID,Counter=1)。
其中,Hash()是一个安全的单向哈希函数。例如,Hash()算法可以是SHA256。
如图8所示,制造方的管理设备向记录管理设备发送的设备信息包括:待注册设备的设备标识DevID、标准身份存证信息Pmaxn、允许注册次数的上限值maxn和制造方的签名信息Sig0。
步骤702、记录管理设备接收待注册设备的各级流转方的管理设备发送的流转方拥有的待注册设备的设备标识和流转密钥,任意两个流转方的流转密钥不同。
可选地,任一流转方owner的管理设备发送的信息还包括以下一种或多种:秘密参数的摘要、流转方的标识ownerID、流转方的类型值ownertype和更新后的允许注册次数。秘密参数的摘要是对秘密参数执行哈希运算得到。其中,秘密参数的摘要、流转方的标识ownerID和类型值ownertype中的至少一个信息可以为发送该至少一个信息的管理设备所属的流转方自己的信息,也可以是发送该至少一个信息的管理设备所属的流转方(以下简称旧流转方)的下一流转方(以下简称新流转方)的信息。该下一流转方为接收发送该至少一个信息的管理设备所属的流转方转出待注册设备的流转方。需要说明的是,为保证待注册设备的信息的安全性,秘密参数和流转密钥等涉及到密钥相关的信息均以密文的方式发送并存储在数据库中。
并且,该设备注册方法还可以包括:记录管理设备接收任一流转方owner的管理设备发送的流转方的签名信息。该流转方的签名信息可以为该任一流转方的签名信息。或者,该流转方的签名信息为该任一流转方的下一流转方的签名信息。该任一流转方的下一流转方为接收该任一流转方转出待注册设备的流转方。该签名信息用于进行签名验证。例如,当流转方A的管理设备从数据库获取流转方B的管理设备发送的信息后,若获取的信息包括流转方B的签名信息,该流转方A的管理设备可以先采用流转方B的公钥对流转方B的签名信息进行验证,以验证获取的信息的真实性。
流转方的管理设备向记录管理设备发送的信息可以分为两类:当待注册设备流转到该流转方时该流转方的管理设备发送的信息,以及,当待注册设备由该流转方流转到下一流转方时该流转方发送的信息。在下面的描述中,为便于对该两类信息进行区分,将当待注册设备流转到流转方时发送信息的该流转方的管理设备所属的流转方称为新流转方,将当待注册设备由该流转方流转到下一流转方时发送信息的该流转方的管理设备所属的流转方称为旧流转方。
下面以秘密参数和流转密钥等涉及到密钥的信息均以密文的方式发送,且发送信息的过程区分新流转方和旧流转方发送为例,对流转方的管理设备获取并发送信息的过程进行说明:
在该过程中,新流转方(假设为待注册设备的流转过程中的第i个流转方)的管理设备执行的操作包括:
1)生成一个随机数,基于该随机数得到该新流转方使用的秘密参数。例如,将该随机数作为该新流转方使用的秘密参数SecretPara(i)。
2)生成新流转方使用的秘密参数SecretPara(i)的摘要Hash(SecretPara(i)),其中Hash()是一个安全的单向哈希函数,如SHA256算法。并使用新流转方的加密公钥EPKi对新流转方使用的秘密参数SecretPara(i)加密,得到第一密文CK1。在一种可实现方式中,CK1=EA(EPKi,SecretPara(i)),EA()是一个安全的基于非对称密码的加密算法,如国密非对称加密算法SM2算法或RSA-2048算法。
3)使用新流转方的签名私钥,计算得到新流转方的签名信息。在一种可实现方式中,可以基于新流转方的签名私钥VSK(i),对待注册设备的标识DevID和第一密文CK1进行签名,得到新流转方的签名信息SigCode1=Sig(VSK(i),DevID,CK1)。或者,可以基于新流转方的签名私钥VSK(i),对待注册设备的标识DevID、第一密文CK1和新流转方使用的秘密参数SecretPara(i)的摘要Hash(SecretPara(i))进行签名,得到新流转方的签名信息SigCode1=Sig(VSK(i),DevID,Hash(SecretPara(i)),CK1)。其中,Sig()是一个安全的基于非对称密码的签名算法,如国密非对称加密算法SM2或RSA-2048算法。
4)向记录管理设备发送新流转方使用的秘密参数SecretPara(i)的摘要Hash(SecretPara(i))。可选地,新流转方的管理设备还可以向记录管理设备发送第一密文CK1和新流转方的签名信息SigCode1。或者,新流转方的管理设备可以向该新流转方的下一流转方发送第一密文CK1和新流转方的签名信息SigCode1,使得该下一流转方的管理设备向记录管理设备发送第一密文CK1和新流转方的签名信息SigCode1。
可选地,新流转方的管理设备还可以生成转移证据基础信息VP,该转移证据基础信息VP包括:待注册设备的标识DevID、新流转方的标识ownerID和秘密参数的摘要Hash(SecretPara(i)),并将该转移证据基础信息发送至记录管理设备。
如图8所示,新流转方的管理设备向记录管理设备发送了该新流转方使用的秘密参数的摘要Hash(SecretPara(i)),向该新流转方的下一流转方发送了第一密文CK1和新流转方的签名信息SigCode1。
在该过程中,旧流转方(假设为待注册设备的流转过程中的第i-1个流转方)的管理设备执行的操作包括:
1)接收新流方的管理设备发送的秘密参数的摘要Hash(SecretPara(i))和新流转方的加密公钥EPKi。可选地,旧流转方的管理设备还可以接收新流转方的管理设备发送的新流转方的标识ownerID和类型值ownertype。
2)生成转移证据基础信息VP,该转移证据基础信息VP包括:待注册设备的标识DevID、新流转方的标识ownerID和秘密参数的摘要Hash(SecretPara(i))。其中,当新流转方的管理设备向记录管理设备发送了转移证据基础信息VP时,旧流转方的管理设备则无需执行该过程。
3)生成数据密钥key,并使用新流转方的加密公钥EPKi对数据密钥进行加密,得到第三密文EK。在一种可实现方式中,EK=EA(EPKi,key),EA()是一个安全的基于非对称密码的加密算法,如RSA-2048算法。可选地,数据密钥基于随机数生成。例如,数据密钥为旧流转方生成的随机数。
4)使用数据密钥key对流转密钥TK(i-1)进行加密,得到第二密文CK2。在一种可实现方式中,CK2=E(key,(TK(i-1),SecretPara(1),...,SecretPara(i-1)),E()是一个对称加密算法,如AES256算法。SecretPara(1)至SecretPara(i-2)由旧流转方的管理设备从其上一流转方接收得到,且SecretPara(1)至SecretPara(i-2)分别为待注册设备在流转过程中的第1个至第(i-2)个流转方使用的秘密参数,SecretPara(i-1)是旧流转方使用的秘密参数。
在一种可实现方式中,流转密钥TK(i-1)基于旧流转方对待注册设备的认证密钥SK(i-1)得到。例如,如图5所示,TK(i-1)=HKDF(SK(i-1)),HKDF()是一个安全的密钥派生算法,如基于HMAC-SHA256的密钥派生算法。可选地,流转密钥TK(i-1)还基于新流转方的标识ownerID、类型值ownertype和新流转方在流转过程中的次序Counter得到。例如,如图5所示,流转密钥TK(i-1)=HKDF(SK(i-1),OwnerID(i),ownertype(i),Counter=i)。
5)使用旧流转方的签名私钥VSK2,对转移证据基础信息VP、第三密文EK和第二密文CK2进行签名,得到旧流转方的签名信息SigCode2。例如,签名信息SigCode2=Sig(VSK2,VP,EK,CK2),其中Sig()是一个安全的基于非对称密码的签名算法,如RSA-2048算法。可选地,当第一密文CK1和新流转方的签名信息SigCode1也由旧流转方的管理设备发送至记录管理设备时,还需要对第一密文CK1和新流转方的签名信息SigCode1进行签名。例如,SigCode2=Sig(VSK2,VP,EK,CK1,SigCode1,CK2)。
6)将转移证据基础信息VP、第三密文EK、第二密文CK2和旧流转方的签名信息SigCode2发送至记录管理设备。可选地,当第一密文CK1和新流转方的签名信息SigCode1也由旧流转方的管理设备发送至记录管理设备时,还需要发送第一密文CK1和新流转方的签名信息SigCode1。
如图8所示,旧流转方的管理设备向记录管理设备发送的设备信息包括:转移证据基础信息VP、第三密文EK、第二密文CK2、第一密文CK1、旧流转方的签名信息SigCode2和新流转方的签名信息SigCode1。
步骤703、记录管理设备基于制造方的管理设备和各级流转方的管理设备发送的信息,生成密钥转移记录。
记录管理设备接收到制造方的管理设备和各级流转方的管理设备发送的信息后,可以根据接收到的信息,按照各级流转方在待注册设备的流转过程中的次序,生成密钥转移记录,以通过该密钥转移记录反映待注册设备在各级流转方之间的流转过程。可选地,该密钥转移记录可以存储在数据库等能够使制造方和各级流转方均能够访问的介质中。例如,密钥转移记录存储在半可信的中心化数据库或者区块链系统中。
在一种可实现方式中,密钥转移记录存储在数据库中。可选地,该数据库为半可信的中心化数据库,或者,数据库为区块链系统。例如,密钥转移记录存储在联盟链上,待注册设备流转过程中的各级流转方的管理设备可用作该联盟链上的节点,用于共同维护该联盟链。
如前所述,流转方的管理设备向记录管理设备发送的信息还包括一些可选信息。当发送的信息还包括可选信息时,记录管理设备还基于可选信息生成密钥转移记录。下面以以下两种情况为例对其进行说明:
当任一流转方的管理设备向记录管理设备发送的信息还包括秘密参数的摘要时,密钥转移记录还包括秘密参数链,该秘密参数链用于指示流转过程中各个流转方使用的秘密参数。在一种可实现方式中,秘密参数链通过各级流转方的秘密参数和待注册设备在各级流转方之间的流转顺序反映。
当任一流转方的管理设备向记录管理设备发送的信息还包括流转方的标识和类型值中的至少一个时,密钥转移记录还包括流转信息链,该流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程。在一种可实现方式中,流转信息链通过流转过程中待注册设备的流转总次数反映。进一步地,流转信息链还通过各级流转方的标识ownerID和类型值ownertype中的至少一个,以及待注册设备在各级流转方之间的流转顺序反映。
记录管理设备生成密钥转移记录后,若该记录管理设备接收到注册管理设备发送的信息获取请求,即可对该信息获取请求进行响应,基于密钥转移记录向注册管理设备发送信息获取响应。其中,信息获取请求携带有待注册设备的设备标识。信息获取响应携带有注册管理设备所属流转方的上一流转方的流转密钥TK(i-1)。可选地,信息获取响应还携带有注册管理设备所属流转方使用的秘密参数secretpara、至少一个信息链、至少一个信息支链及参考流转方对待注册设备的认证密钥、待注册设备的已注册次数,待注册设备的允许注册次数的上限值maxn和标准身份存证信息。
综上所述,在本申请实施例提供的设备注册方法中,通过接收制造方的管理设备和各级流转方的管理设备发送的信息,基于该信息生成密钥转移记录,并在接收到信息获取请求后,基于该密钥转移记录发送信息获取响应,能够根据该密钥转移记录反馈待注册设备的流转信息,能够便于信息获取请求的发起方根据该待注册设备的流转信息对该待注册设备进行注册验证等操作。并且,由于该密钥转移记录包括流转密钥,且任意两个流转方的流转密钥不同,能够防止所有流转方共享相同的密钥带来的密钥安全问题。并且,由于任意两个流转方的流转密钥不同,当任一流转方作恶时,其提供的流转密钥与数据库中记录的流转密钥不同,就能够根据其及时发现流转方的作恶行为,实现对流转方的作恶行为的追溯,提高了对终端设备注册过程的安全保障。
需要说明的是,本申请实施例提供的设备注册方法和设备注册方法的步骤先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
本申请提供了一种设备注册装置,该设备注册装置应用于待注册设备。如图9所示,该设备注册装置90包括:
第一发送模块901,用于向注册管理设备发送注册请求。
第一接收模块902,用于接收注册管理设备发送的第一注册响应,第一注册响应携带有第一验证参数,第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,任意两个流转方的流转密钥不同,上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方。
第一生成模块903,用于基于待注册设备的基础认证密钥,生成第三验证参数。
第一发送模块901,用于当第三验证参数与第一验证参数匹配时,确定注册管理设备通过验证,向注册管理设备发送第二注册响应。
可选地,第三验证参数还基于流转信息链和秘密参数链中的至少一个信息链得到。
其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。
可选地,流转信息链通过流转过程中待注册设备的流转总次数反映。
可选地,流转信息链还通过各级流转方的标识和类型值中的至少一个,以及待注册设备在各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数链通过各级流转方使用的秘密参数和待注册设备在各级流转方之间的流转顺序反映。
可选地,第三验证参数还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥得到。
其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
可选地,流转信息支链通过流转子过程中待注册设备的流转总次数反映。
可选地,流转信息支链还通过待注册设备在流转子过程中经过的各级流转方的标识和类型值中的至少一个,以及待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数支链通过待注册设备在流转子过程中经过的各级流转方使用的秘密参数和待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映。
可选地,第三验证参数还基于第二挑战参数和待注册设备的当前注册次数中的至少一个参数得到,当前注册次数用于指示待注册设备是否具有注册权限。
可选地,注册请求还携带有至少一个参数。
可选地,当注册请求还携带有第二挑战参数时,第一注册响应还携带有第三挑战参数,第二注册响应在第三验证参数与第一验证参数匹配,且第三挑战参数与第二挑战参数匹配时发送。
可选地,第一生成模块903,还用于基于第一挑战参数,生成第二验证参数。
相应的,第一发送模块901,具体用于:向注册管理设备发送携带有第二验证参数的第二注册响应。
可选地,第二验证参数还基于注册管理设备对待注册设备的认证密钥得到。
可选地,认证密钥基于基础认证密钥得到。
可选地,认证密钥还基于流转信息链和秘密参数链中的至少一个信息链得到。
其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。
可选地,认证密钥还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥得到。
其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
可选地,第二验证参数还基于当前注册次数和待注册设备在当前注册次数使用的凭证信息中的至少一个得到,待注册设备在不同注册次数使用的凭证信息互不相同。
可选地,待注册设备在当前注册次数使用的凭证信息基于待注册设备的种子参数、当前注册次数和允许注册次数的上限值得到。
可选地,第二注册响应还携带有待注册设备在当前注册次数使用的凭证信息。
可选地,当注册次数i小于注册次数j时,基于待注册设备在注册次数j使用的凭证信息计算待注册设备在注册次数i使用的凭证信息的过程具有单向性。
综上所述,在本申请实施例提供的设备注册装置中,待注册设备对注册管理设备进行验证时,注册管理设备发送给待注册设备的第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,待注册设备对第一验证参数进行验证使用的第三验证参数基于待注册设备的基础认证密钥得到,且任意两个流转方的流转密钥不同。这样一来,由于生成第一验证参数依赖的信息与生成第三验证参数依赖的信息不同,且任意两个流转方的流转密钥不同,能够减小因信息泄露对待注册设备对注册管理设备进行验证产生的影响,提高了待注册设备注册过程的安全保障。并且,由于任意两个流转方的流转密钥不同,当任一流转方作恶时,其提供的流转密钥与数据库中记录的流转密钥不同,就能够根据其及时发现流转方的作恶行为,实现对流转方的作恶行为的追溯,提高了对终端设备注册过程的安全保障。另外,该设备注册装置能够使得制造方免责,也无需制造方实时在线提供授权服务,能够实现待注册设备的自动化注册。
本申请提供了一种设备注册装置,该设备注册装置应用于注册管理设备。如图10所示,该设备注册装置100包括:
第二接收模块1001,用于接收待注册设备发送的注册请求;
第二发送模块1002,用于基于注册请求向待注册设备发送第一注册响应,第一注册响应携带有第一验证参数,第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,任意两个流转方的流转密钥不同,上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方;
第二接收模块1001,用于接收第二注册响应,第二注册响应在待注册设备基于第一验证参数确定注册管理设备通过验证时发送。
可选地,第一验证参数还基于注册管理设备所属流转方使用的秘密参数得到。
可选地,第一验证参数还基于流转信息链和秘密参数链中的至少一个信息链得到;
其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。
可选地,流转信息链通过流转过程中待注册设备的流转总次数反映。
可选地,流转信息链还通过各级流转方的标识和类型值中的至少一个,以及待注册设备在各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数链通过各级流转方使用的秘密参数和待注册设备在各级流转方之间的流转顺序反映。
可选地,第一注册响应还携带有至少一个信息链。
可选地,第一验证参数还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥得到;
其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
可选地,流转信息支链通过流转子过程中待注册设备的流转总次数反映。
可选地,流转信息支链还通过待注册设备在流转子过程中经过的各级流转方的标识和类型值中的至少一个,以及待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数支链通过待注册设备在流转子过程中经过的各级流转方使用的秘密参数和待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映。
可选地,第一注册响应还携带有至少一个信息支链。
可选地,第一验证参数还基于第二挑战参数和待注册设备的当前注册次数中的至少一个参数得到。
可选地,第一注册响应还携带有第三挑战参数,第三挑战参数由注册管理设备从注册请求中提取得到,第三挑战参数用于供待注册设备验证注册管理设备。
可选地,注册请求还携带有待注册设备的当前注册次数,第二发送模块1002,具体用于:
当基于当前注册次数确定待注册设备具有注册权限时,向待注册设备发送第一注册响应。
可选地,第二注册响应携带有第二验证参数,第二发送模块1002,还用于:
基于第二验证参数,对待注册设备进行验证,基于验证结果向待注册设备发送注册结果。
可选地,第二验证参数基于第一挑战参数得到,第二发送模块1002,具体用于:
基于注册管理设备对待注册设备的认证密钥和第一挑战参数,生成第四验证参数;
当第四验证参数与第二验证参数匹配时,确定待注册设备通过验证。
可选地,认证密钥基于上一流转方的流转密钥得到。
可选地,认证密钥还基于注册管理设备所属流转方使用的秘密参数得到。
可选地,第四验证参数还基于待注册设备的当前注册次数得到。
可选地,第四验证参数还基于待注册设备在当前注册次数使用的凭证信息得到,待注册设备在不同注册次数使用的凭证信息互不相同。
可选地,第二发送模块1002,还具体用于:
基于待注册设备在当前注册次数使用的凭证信息,获取待注册设备在允许注册次数的上限值使用的身份凭证信息;
当第四验证参数与第二验证参数匹配时,确定待注册设备通过验证,包括:
当待注册设备在允许注册次数的上限值使用的身份凭证信息与待注册设备的标准身份存证信息匹配,且第四验证参数与第二验证参数匹配时,确定待注册设备通过验证。
可选地,待注册设备在允许注册次数的上限值的身份凭证信息还基于待注册设备的设备标识和允许注册次数的上限值得到。
可选地,当注册次数i小于注册次数j时,基于待注册设备在注册次数j使用的凭证信息计算待注册设备在注册次数i使用的凭证信息的过程具有单向性。
综上所述,在本申请实施例提供的设备注册装置中,待注册设备对注册管理设备进行验证时,注册管理设备发送给待注册设备的第一验证参数基于注册管理设备所属流转方的上一流转方的流转密钥得到,待注册设备对第一验证参数进行验证使用的第三验证参数基于待注册设备的基础认证密钥得到,且任意两个流转方的流转密钥不同。这样一来,由于生成第一验证参数依赖的信息与生成第三验证参数依赖的信息不同,且任意两个流转方的流转密钥不同,能够减小因信息泄露对待注册设备对注册管理设备进行验证产生的影响,提高了待注册设备注册过程的安全保障。并且,由于任意两个流转方的流转密钥不同,当任一流转方作恶时,其提供的流转密钥与数据库中记录的流转密钥不同,就能够根据其及时发现流转方的作恶行为,实现对流转方的作恶行为的追溯,提高了对终端设备注册过程的安全保障。另外,该设备注册装置能够使得制造方免责,也无需制造方实时在线提供授权服务,能够实现待注册设备的自动化注册。
本申请提供了一种设备注册装置。如图11所示,该设备注册装置110包括:
第三接收模块1101,用于接收注册管理设备发送的信息获取请求,信息获取请求携带有待注册设备的设备标识;
第三发送模块1102,用于响应于信息获取请求,基于密钥转移记录向注册管理设备发送信息获取响应,信息获取响应携带有注册管理设备所属流转方的上一流转方的流转密钥,密钥转移记录中记录的任意两个流转方的流转密钥不同,上一流转方为向注册管理设备所属的流转方转移待注册设备的流转方。
可选地,信息获取响应还携带有注册管理设备所属流转方使用的秘密参数。
可选地,信息获取响应还携带有流转信息链和秘密参数链中的至少一个信息链;
其中,流转信息链用于指示待注册设备在各级流转方之间进行流转的流转过程,秘密参数链用于指示流转过程中各级流转方使用的秘密参数。
可选地,流转信息链通过流转过程中待注册设备的流转总次数反映。
可选地,流转信息链还通过各级流转方的标识和类型值中的至少一个,以及待注册设备在各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数链通过各级流转方使用的秘密参数和待注册设备在各级流转方之间的流转顺序反映。
可选地,信息获取响应还携带有流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对待注册设备的认证密钥;
其中,流转信息支链用于指示待注册设备在不同流转方之间进行流转的流转子过程,秘密参数支链用于指示流转子过程中各级流转方使用的秘密参数,待注册设备在流转子过程中从参考流转方流转至注册管理设备所属流转方。
可选地,流转信息支链通过流转子过程中待注册设备的流转总次数反映。
可选地,流转信息支链还通过待注册设备在流转子过程中经过的各级流转方的标识和类型值中的至少一个,以及待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映,任一流转方的类型值用于反映任一流转方的类型。
可选地,秘密参数支链通过待注册设备在流转子过程中经过的各级流转方使用的秘密参数和待注册设备在流转子过程中经过的各级流转方之间的流转顺序反映。
可选地,信息获取响应还携带有待注册设备的已注册次数。
可选地,信息获取响应还携带有待注册设备的允许注册次数的上限值和标准身份存证信息。
可选地,第三接收模块1101,还用于接收制造方的管理设备发送的待注册设备的设备信息,设备信息包括:设备标识;
第三接收模块1101,还用于接收待注册设备的各级流转方的管理设备发送的流转方的流转密钥和拥有的待注册设备的设备标识,任意两个流转方的流转密钥不同;
相应的,如图12所示,该设备注册装置110还包括:第二生成模块1103,用于基于制造方的管理设备和各级流转方的管理设备发送的信息,生成密钥转移记录。
可选地,各级流转方中任一流转方的管理设备发送的信息还包括以下一个或多个:流转方使用的秘密参数的摘要、流转方的标识、类型值和待注册设备的已注册次数,任一流转方的类型值用于反映任一流转方的类型。
可选地,设备信息还包括以下一个或多个:待注册设备的标准身份存证信息和允许注册次数的上限值。
综上所述,在本申请实施例提供的设备注册装置中,通过第三接收模块接收制造方的管理设备和各级流转方的管理设备发送的信息,第二生成模块基于该信息生成密钥转移记录,并第三接收模块在接收到信息获取请求后,第三发送模块基于该密钥转移记录发送信息获取响应,能够根据该密钥转移记录反馈待注册设备的流转信息,能够便于信息获取请求的发起方根据该待注册设备的流转信息对该待注册设备进行注册验证等操作。并且,由于该密钥转移记录包括流转密钥,且任意两个流转方的流转密钥不同,能够防止所有流转方共享相同的密钥带来的密钥安全问题。并且,由于任意两个流转方的流转密钥不同,当任一流转方作恶时,其提供的流转密钥与数据库中记录的流转密钥不同,就能够根据其及时发现流转方的作恶行为,实现对流转方的作恶行为的追溯,提高了对终端设备注册过程的安全保障。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和模块的具体工作过程,可以参考前述实施例中的对应内容,在此不再赘述。
本申请实施例提供了一种计算机设备。本申请实施例提供的任一种设备注册装置可以部署在该计算机设备中。图13示例性的提供了计算机设备的一种可能的架构图。如图13所示,该计算机设备130可以包括处理器1301、存储器1302、通信接口1303和总线1304。在计算机设备中,处理器1301的数量可以是一个或多个,图13仅示意了其中一个处理器1301。可选的,处理器1301可以是中央处理器(Central Processing Unit,CPU)。若计算机设备具有多个处理器1301,多个处理器1301的类型可以不同,或者可以相同。可选的,计算机设备的多个处理器还可以集成为多核处理器。
存储器1302存储计算机指令和数据,存储器1302可以存储实现本申请提供的设备注册方法所需的计算机指令和数据。存储器1302可以是以下存储介质的任一种或任一种组合:非易失性存储器(如只读存储器(Read-Only Memory,ROM)、固态硬盘(Solid StateDisk,SSD)、硬盘(Hard Disk Drive,HDD)、光盘等、易失性存储器。
通信接口1303可以是以下器件的任一种或任一种组合:网络接口(如以太网接口)、无线网卡等具有网络接入功能的器件。通信接口1303用于计算机设备与其他节点或者其他计算机设备进行数据通信。
图13还示例性地绘制出总线1304。总线1304可以将处理器1301与存储器1302、通信接口1303连接。这样,通过总线1304,处理器1301可以访问存储器1302,还可以利用通信接口1303与其他节点或者其他计算机设备进行数据交互。
在本申请中,计算机设备执行存储器1302中的计算机指令,可以实现本申请实施例提供的设备注册方法。例如,向注册管理设备发送注册请求;接收注册管理设备发送的第一注册响应;基于待注册设备的基础认证密钥,生成第三验证参数;当第三验证参数与第一验证参数匹配时,确定注册管理设备通过验证,向注册管理设备发送第二注册响应。并且,计算机设备通过执行存储器1302中的计算机指令,执行计算机设备的步骤的实现过程可以相应参考上述方法实施例中对应的描述。
本申请实施例还提供了一种存储介质,该存储介质为非易失性计算机可读存储介质,当存储介质中的指令被处理器执行时,实现如本申请实施例提供的设备注册方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行本申请实施例提供的设备注册方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本申请实施例中,术语“第一”、“第二”和“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“至少一个”是指一个或多个,术语“多个”指两个或两个以上,除非另有明确的限定。
本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的构思和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (34)
1.一种设备注册方法,其特征在于,所述方法包括:
待注册设备向注册管理设备发送注册请求;
所述待注册设备接收所述注册管理设备发送的第一注册响应,所述第一注册响应携带有第一验证参数,所述第一验证参数基于所述注册管理设备所属流转方的上一流转方的流转密钥得到,任意两个流转方的流转密钥不同,所述上一流转方为向所述注册管理设备所属的流转方转移所述待注册设备的流转方;
所述待注册设备基于所述待注册设备的基础认证密钥,生成第三验证参数;
当所述第三验证参数与所述第一验证参数匹配时,所述待注册设备确定所述注册管理设备通过验证,向所述注册管理设备发送第二注册响应。
2.根据权利要求1所述的方法,其特征在于,所述第三验证参数还基于流转信息链和秘密参数链中的至少一个信息链得到;
其中,所述流转信息链用于指示所述待注册设备在各级流转方之间进行流转的流转过程,所述秘密参数链用于指示所述流转过程中各级流转方使用的秘密参数。
3.根据权利要求1所述的方法,其特征在于,所述第三验证参数还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对所述待注册设备的认证密钥得到;
其中,所述流转信息支链用于指示所述待注册设备在不同流转方之间进行流转的流转子过程,所述秘密参数支链用于指示所述流转子过程中各级流转方使用的秘密参数,所述待注册设备在所述流转子过程中从所述参考流转方流转至所述注册管理设备所属流转方。
4.根据权利要求1至3任一所述的方法,其特征在于,所述第三验证参数还基于第二挑战参数和所述待注册设备的当前注册次数中的至少一个参数得到,所述当前注册次数用于指示所述待注册设备是否具有注册权限。
5.根据权利要求1至4任一所述的方法,其特征在于,在所述待注册设备向所述注册管理设备发送第二注册响应之前,所述方法还包括:
所述待注册设备基于第一挑战参数,生成第二验证参数;
所述待注册设备向所述注册管理设备发送第二注册响应,包括:
所述待注册设备向所述注册管理设备发送携带有所述第二验证参数的第二注册响应。
6.根据权利要求5所述的方法,其特征在于,所述第二验证参数还基于所述注册管理设备对所述待注册设备的认证密钥得到。
7.根据权利要求6所述的方法,其特征在于,所述认证密钥基于所述基础认证密钥得到。
8.根据权利要求7所述的方法,其特征在于,所述认证密钥还基于流转信息链和秘密参数链中的至少一个信息链得到;
其中,所述流转信息链用于指示所述待注册设备在各级流转方之间进行流转的流转过程,所述秘密参数链用于指示所述流转过程中各级流转方使用的秘密参数。
9.根据权利要求7所述的方法,其特征在于,所述认证密钥还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对所述待注册设备的认证密钥得到;
其中,所述流转信息支链用于指示所述待注册设备在不同流转方之间进行流转的流转子过程,所述秘密参数支链用于指示所述流转子过程中各级流转方使用的秘密参数,所述待注册设备在所述流转子过程中从所述参考流转方流转至所述注册管理设备所属流转方。
10.根据权利要求6至9任一所述的方法,其特征在于,所述第二验证参数还基于所述当前注册次数和所述待注册设备在当前注册次数使用的凭证信息中的至少一个得到,所述待注册设备在不同注册次数使用的凭证信息互不相同。
11.根据权利要求10所述的方法,其特征在于,当注册次数i小于注册次数j时,基于所述待注册设备在所述注册次数j使用的凭证信息计算所述待注册设备在所述注册次数i使用的凭证信息的过程具有单向性。
12.一种设备注册方法,其特征在于,所述方法包括:
注册管理设备接收待注册设备发送的注册请求;
所述注册管理设备基于所述注册请求向所述待注册设备发送第一注册响应,所述第一注册响应携带有第一验证参数,所述第一验证参数基于所述注册管理设备所属流转方的上一流转方的流转密钥得到,任意两个流转方的流转密钥不同,所述上一流转方为向所述注册管理设备所属的流转方转移所述待注册设备的流转方;
所述注册管理设备接收第二注册响应,所述第二注册响应在所述待注册设备基于所述第一验证参数确定所述注册管理设备通过验证时发送。
13.根据权利要求12所述的方法,其特征在于,所述第一验证参数还基于所述注册管理设备所属流转方使用的秘密参数得到。
14.根据权利要求12或13所述的方法,其特征在于,所述第一验证参数还基于流转信息链和秘密参数链中的至少一个信息链得到;
其中,所述流转信息链用于指示所述待注册设备在各级流转方之间进行流转的流转过程,所述秘密参数链用于指示所述流转过程中各级流转方使用的秘密参数。
15.根据权利要求14所述的方法,其特征在于,所述第一注册响应还携带有所述至少一个信息链。
16.根据权利要求12或13所述的方法,其特征在于,所述第一验证参数还基于流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对所述待注册设备的认证密钥得到;
其中,所述流转信息支链用于指示所述待注册设备在不同流转方之间进行流转的流转子过程,所述秘密参数支链用于指示所述流转子过程中各级流转方使用的秘密参数,所述待注册设备在所述流转子过程中从所述参考流转方流转至所述注册管理设备所属流转方。
17.根据权利要求16所述的方法,其特征在于,所述第一注册响应还携带有所述至少一个信息支链。
18.根据权利要求12至17任一所述的方法,其特征在于,所述第一验证参数还基于第二挑战参数和所述待注册设备的当前注册次数中的至少一个参数得到。
19.根据权利要求12至18任一所述的方法,其特征在于,所述第二注册响应携带有第二验证参数,所述方法还包括:
所述注册管理设备基于所述第二验证参数,对所述待注册设备进行验证,基于验证结果向所述待注册设备发送注册结果。
20.根据权利要求19所述的方法,其特征在于,所述第二验证参数基于第一挑战参数得到,所述注册管理设备基于所述第二验证参数,对所述待注册设备进行验证,包括:
所述注册管理设备基于所述注册管理设备对所述待注册设备的认证密钥和所述第一挑战参数,生成第四验证参数;
当所述第四验证参数与所述第二验证参数匹配时,确定所述待注册设备通过验证。
21.根据权利要求20所述的方法,其特征在于,所述认证密钥基于所述上一流转方的流转密钥得到。
22.根据权利要求21所述的方法,其特征在于,所述认证密钥还基于所述注册管理设备所属流转方使用的秘密参数得到。
23.根据权利要求20至22任一所述的方法,其特征在于,所述第四验证参数还基于所述待注册设备的当前注册次数和所述待注册设备在当前注册次数使用的凭证信息中的至少一个得到,所述待注册设备在不同注册次数使用的凭证信息互不相同。
24.根据权利要求20至23任一所述的方法,其特征在于,所述注册管理设备基于所述第二验证参数,对所述待注册设备进行验证,还包括:
所述注册管理设备基于所述待注册设备在当前注册次数使用的凭证信息,获取所述待注册设备在所述允许注册次数的上限值使用的身份凭证信息;
所述当所述第四验证参数与所述第二验证参数匹配时,确定所述待注册设备通过验证,包括:
当所述待注册设备在所述允许注册次数的上限值使用的身份凭证信息与所述待注册设备的标准身份存证信息匹配,且所述第四验证参数与所述第二验证参数匹配时,确定所述待注册设备通过验证。
25.根据权利要求24所述的方法,其特征在于,所述待注册设备在所述允许注册次数的上限值的身份凭证信息还基于所述待注册设备的设备标识和允许注册次数的上限值得到。
26.根据权利要求23至25任一所述的方法,其特征在于,当注册次数i小于注册次数j时,基于所述待注册设备在所述注册次数j使用的凭证信息计算所述待注册设备在所述注册次数i使用的凭证信息的过程具有单向性。
27.一种设备注册方法,其特征在于,所述方法包括:
接收注册管理设备发送的信息获取请求,所述信息获取请求携带有待注册设备的设备标识;
响应于所述信息获取请求,基于密钥转移记录向所述注册管理设备发送信息获取响应,所述信息获取响应携带有所述注册管理设备所属流转方的上一流转方的流转密钥,所述密钥转移记录中记录的任意两个流转方的流转密钥不同,所述上一流转方为向所述注册管理设备所属的流转方转移所述待注册设备的流转方。
28.根据权利要求27所述的方法,其特征在于,所述信息获取响应还携带有以下一项或多项:
所述注册管理设备所属流转方使用的秘密参数;和,
所述信息获取响应还携带有流转信息链和秘密参数链中的至少一个信息链,所述流转信息链用于指示所述待注册设备在各级流转方之间进行流转的流转过程,所述秘密参数链用于指示所述流转过程中各级流转方使用的秘密参数;和,
流转信息支链和秘密参数支链中的至少一个信息支链,及参考流转方对所述待注册设备的认证密钥,所述流转信息支链用于指示所述待注册设备在不同流转方之间进行流转的流转子过程,所述秘密参数支链用于指示所述流转子过程中各级流转方使用的秘密参数,所述待注册设备在所述流转子过程中从所述参考流转方流转至所述注册管理设备所属流转方;和,
所述待注册设备的已注册次数;和,
所述待注册设备的允许注册次数的上限值和标准身份存证信息。
29.根据权利要求27或28所述的方法,其特征在于,在所述响应于所述信息获取请求,基于密钥转移记录向所述注册管理设备发送信息获取响应之前,所述方法还包括:
接收制造方的管理设备发送的所述待注册设备的设备信息,所述设备信息包括:设备标识;
接收所述待注册设备的各级流转方的管理设备发送的流转方的流转密钥和拥有的待注册设备的设备标识,任意两个流转方的流转密钥不同;
基于所述制造方的管理设备和各级流转方的管理设备发送的信息,生成所述密钥转移记录。
30.一种设备注册装置,其特征在于,所述装置应用于待注册设备,所述装置包括:
第一发送模块,用于向注册管理设备发送注册请求;
第一接收模块,用于接收所述注册管理设备发送的第一注册响应,所述第一注册响应携带有第一验证参数,所述第一验证参数基于所述注册管理设备所属流转方的上一流转方的流转密钥得到,任意两个流转方的流转密钥不同,所述上一流转方为向所述注册管理设备所属的流转方转移所述待注册设备的流转方;
第一生成模块,用于基于所述待注册设备的基础认证密钥,生成第三验证参数;
所述第一发送模块,用于当所述第三验证参数与所述第一验证参数匹配时,确定所述注册管理设备通过验证,向所述注册管理设备发送第二注册响应。
31.一种设备注册装置,其特征在于,所述装置应用于注册管理设备,所述装置包括:
第二接收模块,用于接收待注册设备发送的注册请求;
第二发送模块,用于基于所述注册请求向所述待注册设备发送第一注册响应,所述第一注册响应携带有第一验证参数,所述第一验证参数基于所述注册管理设备所属流转方的上一流转方的流转密钥得到,任意两个流转方的流转密钥不同,所述上一流转方为向所述注册管理设备所属的流转方转移所述待注册设备的流转方;
所述第二接收模块,用于接收第二注册响应,所述第二注册响应在所述待注册设备基于所述第一验证参数确定所述注册管理设备通过验证时发送。
32.一种设备注册装置,其特征在于,所述装置包括:
第三接收模块,用于接收注册管理设备发送的信息获取请求,所述信息获取请求携带有待注册设备的设备标识;
第三发送模块,用于响应于所述信息获取请求,基于密钥转移记录向所述注册管理设备发送信息获取响应,所述信息获取响应携带有所述注册管理设备所属流转方的上一流转方的流转密钥,所述密钥转移记录中记录的任意两个流转方的流转密钥不同,所述上一流转方为向所述注册管理设备所属的流转方转移所述待注册设备的流转方。
33.一种计算机设备,其特征在于,所述计算机设备包括:处理器和存储器,所述存储器中存储有计算机程序;所述处理器执行计算机程序时,所述计算机设备实现权利要求1至29任一所述的方法。
34.一种存储介质,其特征在于,当所述存储介质中的指令被处理器执行时,实现权利要求1至29任一所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110476586.9A CN115361147A (zh) | 2021-04-29 | 2021-04-29 | 设备注册方法及装置、计算机设备、存储介质 |
PCT/CN2022/076505 WO2022227799A1 (zh) | 2021-04-29 | 2022-02-16 | 设备注册方法及装置、计算机设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110476586.9A CN115361147A (zh) | 2021-04-29 | 2021-04-29 | 设备注册方法及装置、计算机设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115361147A true CN115361147A (zh) | 2022-11-18 |
Family
ID=83847738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110476586.9A Pending CN115361147A (zh) | 2021-04-29 | 2021-04-29 | 设备注册方法及装置、计算机设备、存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115361147A (zh) |
WO (1) | WO2022227799A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117056976A (zh) * | 2023-08-22 | 2023-11-14 | 哈尔滨商业大学 | 一种财务数据处理方法、装置及系统 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1160912C (zh) * | 2002-09-10 | 2004-08-04 | 联想(北京)有限公司 | 家庭网络中实现动态组网时的设备注册与注销方法 |
CN102014483A (zh) * | 2010-11-22 | 2011-04-13 | 中兴通讯股份有限公司 | 手机及实现手机设备管理的注册方法、系统及装置 |
CN103685353A (zh) * | 2012-09-05 | 2014-03-26 | 中兴通讯股份有限公司 | 网关管理终端的方法及装置 |
CN103532987B (zh) * | 2013-11-11 | 2016-06-29 | 国家电网公司 | 一种防止非认证计算机设备接入企业内网的保护方法及系统 |
US9935950B2 (en) * | 2015-01-12 | 2018-04-03 | Verisign, Inc. | Systems and methods for establishing ownership and delegation ownership of IOT devices using domain name system services |
CN105764057A (zh) * | 2016-04-21 | 2016-07-13 | 北京元心科技有限公司 | 移动终端的注册方法及服务器平台 |
US10461939B2 (en) * | 2017-02-08 | 2019-10-29 | Ca, Inc. | Secure device registration for multi-factor authentication |
CN107395575B (zh) * | 2017-07-03 | 2020-11-06 | 东北电力大学 | 基于互联网的高校文化创意培育与转让系统 |
PL3729758T3 (pl) * | 2017-12-22 | 2022-03-21 | Telefonaktiebolaget Lm Ericsson (Publ) | Rejestracja urządzeń w sieci komunikacyjnej |
CN109936509B (zh) * | 2019-03-06 | 2021-09-10 | 西安电子科技大学 | 一种基于多元身份的设备群组认证方法及系统 |
-
2021
- 2021-04-29 CN CN202110476586.9A patent/CN115361147A/zh active Pending
-
2022
- 2022-02-16 WO PCT/CN2022/076505 patent/WO2022227799A1/zh active Application Filing
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117056976A (zh) * | 2023-08-22 | 2023-11-14 | 哈尔滨商业大学 | 一种财务数据处理方法、装置及系统 |
CN117056976B (zh) * | 2023-08-22 | 2024-03-08 | 哈尔滨商业大学 | 一种财务数据处理方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2022227799A1 (zh) | 2022-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108418680B (zh) | 一种基于安全多方计算技术的区块链密钥恢复方法、介质 | |
CN109829326B (zh) | 基于区块链的跨域认证与公平审计去重云存储系统 | |
Yavari et al. | An Improved Blockchain‐Based Authentication Protocol for IoT Network Management | |
KR101851261B1 (ko) | 사설 블록체인 데이터 기반 중앙집중형 원격검침 보안시스템 | |
KR102580509B1 (ko) | 복수의 스토리지 노드를 통해 대규모 블록체인의 안전한 저장을 가능하게 하는 컴퓨터 구현 시스템 및 방법 | |
CN114172735A (zh) | 基于智能合约的双链混合式区块链数据共享方法及系统 | |
US11044082B2 (en) | Authenticating secure channel establishment messages based on shared-secret | |
CN109359464B (zh) | 一种基于区块链技术的无线安全认证方法 | |
CN109067528A (zh) | 密码运算、创建工作密钥的方法、密码服务平台及设备 | |
US11367065B1 (en) | Distributed ledger system for electronic transactions | |
US9398024B2 (en) | System and method for reliably authenticating an appliance | |
US11102006B2 (en) | Blockchain intelligent security implementation | |
US20110162053A1 (en) | Service assisted secret provisioning | |
US11917081B2 (en) | Issuing device and method for issuing and requesting device and method for requesting a digital certificate | |
US11588629B2 (en) | Secure, decentralized, automated platform and multi-actors for object identity management through the use of a block chain technology | |
CN113556230B (zh) | 数据安全传输方法、证书相关方法、服务端、系统及介质 | |
US20220014354A1 (en) | Systems, methods and devices for provision of a secret | |
US20210306135A1 (en) | Electronic device within blockchain based pki domain, electronic device within certification authority based pki domain, and cryptographic communication system including these electronic devices | |
US20240113885A1 (en) | Hub-based token generation and endpoint selection for secure channel establishment | |
Liou et al. | T-auth: A novel authentication mechanism for the IoT based on smart contracts and PUFs | |
WO2022227799A1 (zh) | 设备注册方法及装置、计算机设备、存储介质 | |
CN112733129A (zh) | 一种服务器带外管理的可信接入方法 | |
TWM585941U (zh) | 帳戶資料處理系統 | |
TW202101267A (zh) | 帳戶資料處理方法及帳戶資料處理系統 | |
WO2023151427A1 (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 |