1.本发明涉及一种物联网(internet of thing,iot)环境中的密钥协商系统及方法,更详细地,涉及一种用于物联网环境的基于无证书密钥协商系统及方法,其能够使参与物联网服务的客体无需证书即可进行相互认证及密钥协商,由此客体可以直接连接到网络并安全地进行通信。
背景技术:
2.最近,随着iot环境成为第四次工业革命的中心,其正在持续地发展。由此,推出了各种iot服务,使得我们的生活更加便捷。
3.作为与iot共同成为第四次工业革命的核心技术的云技术、大数据技术、移动技术正在引起关注并被研究中,结合各技术的智能家居、医疗保健、智能工厂或智能城市服务作为产物受人瞩目。
4.对于这些服务,各种传感器物联网(iot)设备连接到互联网,并与传感器iot设备的通信技术、接口等进行有机连接以便运行。各个国家的主要制造商推出了各种类型的iot设备,在onem2m、国际互联网工程任务组(the internet engineering task force,ietf)等中进行对iot通信技术的标准化操作,使得这些各种iot设备能够顺畅地进行通信。
5.另外,在iot环境中,由于各种设备通过各种通信技术进行通信,因此需要考虑安全性。当各种异构iot设备进行通信时,因各个设备的安全漏洞的集合而可能会出现新的安全漏洞。
6.最近,随着iot设备的性能的提高,iot设备配置为通过直接连接于互联网而直接与其他iot设备进行通信。
7.其中,iot设备可以是用户的智能手机,也可以是构成服务的各种设备,然而,需要各种安全要求以便提供安全的iot服务。
8.在iot环境中,特别重要的部分是认证和密钥管理。进行常规的认证和密钥管理的公开密钥密码系统,一定会执行对参与网络的iot设备的认证,并提供证书以便对方进行确认。然后,iot设备通过基于证书执行会话密钥协商来进行相互安全的通信。
9.但是,iot设备即便可以直接连接到互联网,却还是在有限的环境中运行,因此存在无法按原样适用现有的认证及密钥协商的协议的问题。
10.并且,其由异构网络构成,因此多个设备可以参与到一个网络中。
11.由此,公开密钥密码系统存在公开密钥认证问题和密钥托管问题(kgc可以解密用户的所有密文并伪造签名)。
12.为了解决这种问题,ai-riyami等提出了一种基于无证书的公开密钥密码系统(certificateless public key cryptosystem,cl-pkc)。
13.在这种基于无证书的公开密钥密码系统中,密钥生成中心(key generation center,kgc)仅生成用户的私用密钥及公开密钥的一部分,而iot设备直接生成其余部分。即,在cl-pkc中,kgc尝试了通过仅了解一部分而不是全部私用密钥来解决密钥托管问题。
cl-pkc密码系统主要用于建立数据密码、数字签名及认证密钥协商(authenticated key agreement:aka)方法。其中,认证密钥匹配方法是两个用户通过网络协商公共会话密钥的交互协议中的一种。在提出cl-pkg系统的过程中,提出了基于无证书的认证密钥协商方法。
14.然而,现有的基于无证书的认证密钥协商方法存在因基于使用配对(pairing)运算的无证书而计算效率低的问题。上述配对是密码算法中所使用的数学元素之一,是指将两组(group)元素配对并映射到第三组元素。这是一种数学运算,其缺点在于需要很长的运算时间。
15.并且,存在一个问题,即,现有的基于无证书认证密钥协商方法不能确认系统中所使用的公开密钥是否为发送者的公开密钥。
16.现有技术文献
17.非专利文献
18.(非专利文献1)韩国信息通信学会论文(j,korea inst,inf,commun,eng)vol,20,no,6:1109-1122(2016.06.公开)
技术实现要素:
19.发明所要解决的问题
20.因此,本发明的目的在于,提供一种用于物联网环境的基于无证书的密钥协商系统及方法,其能够使参与物联网服务的客体无需证书即可进行相互认证及密钥协商,由此客体可以直接连接到网络并安全地进行通信。
21.用于解决问题的方案
22.用于实现如上所述的目的,根据本发明的用于物联网环境的基于无证书密钥协商系统的特征在于,包括:部分公开密钥提供部,其生成并提供公开信息,当接收到注册请求信息时,针对发送上述注册请求信息的对象生成部分秘密密钥并进行注册后,将上述部分秘密密钥发送到上述对象;以及多个物联网设备,其作为上述对象,接收并存储由上述部分公开密钥提供部发送的公开信息,使用上述公开信息来生成注册请求信息后,发送到上述部分公开密钥提供部以请求注册,作为对上述注册请求信息发送的响应,接收部分秘密密钥,生成并存储基于上述部分秘密密钥的完整认证密钥,根据上述完整认证密钥生成与所要进行通信的另一对象的相互认证及会话密钥,从而与上述另一对象进行使用上述会话密钥的通信。
23.上述物联网设备包括:设备存储部,其存储上述公开信息及自身的部分秘密密钥及会话密钥;设备无线通信部,其通过与有线及无线数据通信网络及作为上述另一对象的另一物联网设备设置物理通信通道来进行数据通信;设备控制部,其接收由上述部分公开密钥提供部发送的公开信息并存储在上述设备存储部中,将使用上述公开信息生成的用于请求注册的注册请求信息发送到上述部分公开密钥提供部,作为对上述注册请求信息发送的响应,接收部分秘密密钥,根据上述部分秘密密钥生成上述完整认证密钥后存储在上述设备存储部中,根据上述完整认证密钥生成与所要进行通信的另一对象的相互认证及会话密钥,根据上述会话密钥形成逻辑会话通信通道后,通过上述无线通信部与上述另一物联网设备进行通信。
24.上述设备控制部包括:注册部,其接收由上述部分公开密钥提供部发送的公开信
息并存储在上述设备存储部中,将使用上述公开信息生成的用于请求注册的注册请求信息发送到上述部分公开密钥提供部,作为对上述注册请求信息发送的响应,接收部分秘密密钥,使用上述部分秘密密钥来生成包括完整公开密钥及完整私用密钥的完整认证密钥并存储在上述设备存储部中;协商部,其根据上述完整认证密钥生成与所要进行通信的另一对象的相互认证及会话密钥,根据上述会话密钥形成逻辑会话通信通道;以及会话通信处理部,在形成上述会话通信通道后,所述会话通信处理部通过上述无线通信部与上述另一物联网设备进行通信。
25.上述注册部包括:公开密钥信息收集部,其收集包括由上述部分公开密钥提供部公开的密钥生成中心的主公开密钥的参数并存储在上述设备存储部中;认证密钥生成部,其使用上述参数及物联网设备的设备识别信息来生成包括用户公开密钥及用户私用密钥的认证密钥;设备注册部,其生成包括上述设备识别信息及上述用户公开密钥的注册请求信息并发送到上述部分公开密钥提供部;部分秘密密钥获取部,其响应于上述注册请求信息的发送,从上述部分公开密钥提供部接收部分秘密密钥并存储在上述设备存储部中;以及完整认证密钥生成部,其使用上述部分秘密密钥来生成完整认证密钥。
26.上述协商部包括:临时秘密密钥生成部,其选择rz
q*
的元素中的一个作为临时秘密密钥,并通过应用所选的临时秘密密钥来生成临时公开密钥;收发部,其在请求模式的数据发送模式下,将包括上述临时公开密钥、完整公开密钥、发送侧物联网设备及接收侧物联网设备的设备识别信息的通信请求信息发送到上述接收侧物联网设备,在请求模式的数据接收模式下,从上述接收侧物联网设备接收包括临时公开密钥、完整公开密钥及发送侧物联网设备及接收侧物联网设备的设备识别信息的通信响应信息,在响应模式的数据接收模式下,从发送侧物联网设备接收上述通信请求信息,在响应模式的数据发送模式下,将上述通信响应信息发送到上述发送侧物联网设备;验证部,其验证在上述发送模式及上述接收模式中分别接收的通信请求信息及通信响应信息中所包括的完整公开密钥;以及会话密钥生成部,在上述验证成功时,所述会话密钥生成部为上述各个模式生成会话密钥。
27.上述部分公开密钥提供部包括:机构存储部,其存储上述主秘密密钥、公开信息及每个上述物联网设备的部分秘密密钥;机构通信部,其通过有线及无线数据通信网络能够与上述物联网设备进行数据通信;以及机构控制部,其生成主密钥及公开信息并存储在上述机构存储部中,当通过机构通信部接收到上述注册请求信息时,使用上述注册请求信息中所包括的上述物联网设备的设备识别信息、用户公开密钥、主密钥及公开信息来生成部分秘密密钥后,通过上述机构通信部发送到上述物联网设备。
28.上述机构控制部包括:安全参数选择部,其选择安全参数k;主信息生成部,其生成包括主秘密密钥s、主公开密钥p
pub
及公开参数param的主信息;公开信息分发部,其将包括上述主公开密钥及上述公开参数的公开信息分发给多个物联网设备;设备注册监控部,其监控是否接收到包括任意的物联网设备的设备识别信息及用户公开密钥的注册请求信息;部分秘密密钥生成部,当上述设备注册监控部判断为接收到注册请求信息时,所述部分秘密密钥生成部使用注册请求信息中所包括的上述设备识别信息、用户公开密钥、主秘密密钥、ri来生成签名zi,将生成的签名应用到以下公式2中生成部分秘密密钥;以及
29.[公式2]
[0030]
ppki=(ri,zi)
[0031]
秘密密钥提供部,其通过机构通信部将上述部分秘密密钥发送到上述物联网设备。
[0032]
用于实现如上所述的目的,根据本发明的用于物联网环境的基于无证书密钥协商方法的特征在于,包括:注册步骤,在接收到包括反映公开信息的用户公开密钥及设备识别信息id的注册请求信息并生成反映上述用户公开密钥及设备识别信息的部分秘密密钥后,发送到上述物联网设备,以便上述物联网设备能够生成包括完整秘密密钥及公开密钥的完整认证密钥,其中,上述公开信息由部分公开密钥提供部分发;以及协商步骤,分别接受上述部分秘密密钥并生成而具有完整认证密钥的至少两个物联网设备,根据上述完整认证密钥对与所要进行通信的一个以上的另一对象的相互认证及会话密钥进行协商,以便与上述另一对象进行使用上述会话密钥的通信。
[0033]
上述注册步骤包括:公开信息分发步骤,部分公开密钥提供部生成主密钥及公开信息并分发上述公开信息;注册请求步骤,物联网设备接收并存储由上述部分公开密钥提供部所分发的公开信息,使用上述公开信息来生成注册请求信息后,发送到上述部分公开密钥提供部以请求注册;部分秘密密钥提供步骤,当上述部分公开密钥提供部接收到上述注册请求信息时,生成并注册针对发送上述注册请求信息的对象的部分秘密密钥,并将上述部分秘密密钥发送到上述对象;以及完整认证密钥生成步骤,上述物联网设备接收上述部分秘密密钥,生成并存储基于上述部分秘密密钥的完整认证密钥。
[0034]
上述部分秘密密钥提供步骤包括:部分秘密密钥生成步骤,当上述部分公开密钥提供部接收到上述注册请求信息时,根据以下公式2生成并注册针对发送上述注册请求信息的对象的部分秘密密钥;以及
[0035]
[公式2]
[0036]
ppki=(ri,zi)
[0037]
部分秘密密钥发送步骤,将上述部分秘密密钥发送到上述另一物联网设备。
[0038]
上述物联网设备根据以下公式7提取签名后,根据以下公式3计算完整认证密钥。
[0039]
[公式7]
[0040]
签名(zi)=ri+s
·
h1(idi,pvi,ri)
[0041][0042]ri
=ri*p
[0043]
[公式3]
[0044]
pri=svi+zi
[0045]
pui=(pvi,ri,zi)
[0046]
zi=zi*p
[0047]
上述协商步骤包括:通信请求步骤,发送侧物联网设备生成通信请求信息并发送到所要进行通信的至少一个接收侧物联网设备,其中,上述通信请求信息包括:临时公开密钥、完整公开密钥、发送侧物联网设备及至少一个接收侧物联网设备的各个设备识别信息;通信请求响应步骤,接收侧物联网设备进行基于上述通信请求信息的临时公开密钥、完整公开密钥及发送侧物联网设备的设备识别信息的验证,当验证成功时,将通信响应信息发送到上述发送侧物联网设备,其中,上述通信响应信息包括:所述接收侧物联网设备的自身
的临时公开密钥、完整公开密钥、发送侧物联网设备及上述接收侧物联网设备的各个设备识别信息;以及通信协商步骤,生成基于上述发送侧物联网设备及上述接收侧物联网设备分别接收的对方侧设备识别信息、临时公开密钥及完整公开密钥的会话密钥,并根据所生成的会话密钥启动相互通信。
[0048]
发明效果
[0049]
本发明无需进行配对运算,因此具有可提高计算效率的效果。
[0050]
并且,本发明具有即使在基于无证书认证密钥协商系统也能确认公开密钥是否为发送者的公开密钥的效果。
附图说明
[0051]
图1是示出根据本发明的用于物联网环境的基于无证书密钥协商系统的结构的图。
[0052]
图2是示出根据本发明的用于物联网环境的基于无证书密钥协商系统的物联网设备的结构的图。
[0053]
图3是示出根据本发明的用于物联网环境的基于无证书密钥协商系统的部分公开密钥提供部的结构的图。
[0054]
图4是示出根据本发明的用于物联网环境的基于无证书密钥协商方法的流程图。
[0055]
图5是示出根据本发明的用于物联网环境的基于无证书密钥协商方法中的物联网设备注册方法的流程图。
[0056]
图6是示出根据本发明的用于物联网环境的基于无证书密钥协商方法中的物联网设备之间的密钥协商方法的流程图。
[0057]
附图标记说明:
[0058]
100:物联网设备
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
110:设备存储部
[0059]
120:设备无线通信部
ꢀꢀꢀꢀꢀꢀꢀꢀ
130:设备控制部
[0060]
140:注册部
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
141:公开信息收集部
[0061]
142:认证密钥生成部
ꢀꢀꢀꢀꢀꢀꢀꢀ
143:设备注册部
[0062]
144:部分秘密密钥获取部
ꢀꢀꢀꢀ
145:完整认证密钥生成部
[0063]
150:协商部
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
151:临时秘密密钥生成部
[0064]
152:通信部
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
153:验证部
[0065]
154:会话密钥生成部
ꢀꢀꢀꢀꢀꢀꢀꢀ
160:会话通信处理部
[0066]
200:部分秘密密钥提供部
ꢀꢀꢀꢀ
210:机构存储部
[0067]
220:机构通信部
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
230:机构控制部
[0068]
231:安全参数选择部
ꢀꢀꢀꢀꢀꢀꢀꢀ
232:主信息生成部
[0069]
233:公开信息分发部
ꢀꢀꢀꢀꢀꢀꢀꢀ
234:设备注册监控部
[0070]
235:部分秘密密钥生成部
ꢀꢀꢀꢀ
236:秘密密钥提供部。
具体实施方式
[0071]
在下文中,将参照附图详细说明根据本发明的用于物联网环境的基于无证书密钥协商系统的结构及动作,并且对上述系统中的基于无证书密钥协商方法进行说明。
[0072]
在说明之前,对说明中所使用的符号进行如下定义。
[0073]
*:参与实体(部分公开密钥提供部(key generation center:kgc,密钥生成中心),物联网设备a(#1),物联网设备b(#2),
……
,物联网设备#n)
[0074]
id
*
:实体的识别信息
[0075]
s:kgc的主秘密密钥
[0076]
p
pub
:kgc的主公开密钥
[0077]
sv
*
,pv
*
:由实体生成的验证用私用密钥及公开密钥对(认证密钥)
[0078]
ppk
*
:实体的部分秘密密钥
[0079]
pr
*
,pu
*
:实体的完整私用密钥及公开密钥对(完整认证密钥)
[0080]
e:阶数为素数的椭圆曲线的阶数(任意值)
[0081]
g:用于计算证书的阶数为q的椭圆曲线上的循环组
[0082]
p:椭圆曲线e上的生成器
[0083]
h1:映射哈希函数1
[0084]
h2:映射哈希函数2
[0085]hk
:单向哈希函数(oneway hash function)
[0086]
sk:通过密钥协商生成的当前会话中所要使用的会话密钥
[0087]
图1是示出根据本发明的用于物联网环境的基于无证书密钥协商系统的结构的图。
[0088]
参照图1,根据本发明的用于物联网环境的基于无证书密钥协商系统包括多个物联网设备100及部分公开密钥提供部200。
[0089]
上述物联网设备100及部分公开密钥提供部200通过有线及无线中任一方式连接到有线及无线数据通信网络1以进行相互数据通信。
[0090]
并且,物联网设备100可以通过无线方式连接到有线及无线数据通信网络1以进行相互数据通信,物联网设备100之间也可以通过无线方式进行直接连接(direct connect)以进行直接无线通信。
[0091]
上述有线及无线数据通信网络1可以是包括wifi网络的互联网络、wibro网络、第三代(3generation,3g)、4g、5g等移动通信网络、专用网络、电力线网络等中的任意一个以上相结合的数据通信网络。
[0092]
上述物联网设备100可以是用于测量及检测电流、亮度、侵入、气体等特定值的测量传感器类物联网设备100;用于产生警报、开启/关闭自动阀门、开启/关闭门锁等的功能控制物联网设备100;如智能手机、智能平板电脑(smart pad)等智能终端物联网设备100等,其通过上述有线及无线数据通信网络1与其他物联网设备100进行通信,或者通过直接无线通信的方式连接到其他物联网设备100,从而通过使用根据本发明的部分公开密钥及会话密钥来进行数据通信。参照图2,详细说明根据本发明的物联网设备100的上述结构及动作。
[0093]
部分公开密钥提供部200可以是配置于信任机构的服务器形式的密钥生成中心(key generation center,kgc)等,其生成主秘密密钥及公开信息并将上述公开信息分发给多个物联网设备100。
[0094]
当从物联网设备100接收到注册请求信息时,部分公开密钥提供部200针对发送上
述注册请求信息的对象生成部分秘密密钥并进行注册,将上述部分秘密密钥发送到该物联网设备100。
[0095]
参照图3,详细说明部分公开密钥提供部200的详细结构。
[0096]
图2是示出根据本发明的用于物联网环境的基于无证书密钥协商系统的物联网设备的结构的图。
[0097]
根据本发明的物联网设备100包括设备存储部110、设备无线通信部120及设备控制部130。
[0098]
设备存储部110包括:程序区域,存储用于控制根据本发明的物联网设备的动作的控制程序;临时区域,临时存储在执行上述控制程序中产生的数据;以及数据区域,半永久性存储执行上述控制程序所需要的数据及执行控制程序中产生的数据。上述数据区域中可以存储根据本发明的公开信息、自身的部分秘密密钥及会话密钥。
[0099]
上述设备无线通信部120可通过无线方式连接到有线及无线数据通信网络1以与连接到上述有线及无线数据通信网络1的其他物联网设备100及部分公开密钥提供部200进行相互数据通信,或者可以与相邻的另一物联网设备100进行直接无线通信。
[0100]
设备控制部130包括注册部140、协商部150及会话通信处理部160,以控制根据本发明的物联网设备100的整体动作。
[0101]
具体地,注册部140包括公开信息收集部141、认证密钥生成部142、设备注册部143、部分秘密密钥获取部144及完整认证密钥生成部145,上述注册部140接收由上述部分公开密钥提供部200发送的公开信息并存储在上述设备存储部110中,将使用上述公开信息生成的用于请求注册的注册请求信息发送到上述部分公开密钥提供部200,并作为对上述注册请求信息发送的响应,接收部分秘密密钥,生成基于上述部分秘密密钥的上述完整认证密钥后,存储在上述设备存储部110中。
[0102]
具体地,公开信息收集部141接收并获取由部分公开密钥提供部200分发的公开信息。上述公开信息包括公开参数(param)。上述公开参数(param)的构成如以下公式1。
[0103]
【公式1】
[0104]
params=g,q,p,p
pub
,h1,h2,hk[0105]
认证密钥生成部142通过使用上述公开参数及物联网设备100的设备识别信息(id
*
)来生成物联网设备100的公开密钥(pv
*
)及私用密钥(sv
*
)对。上述公开密钥及私用密钥可以由将上述设备识别信息及公开参数作为参数应用的userkeygeneration()函数生成。
[0106]
上述userkeygenration()函数为物联网设备i选择xi∈rz
q*
,计算svi=xi,并计算pvi=xi*p。z表示整数集,rz
q*
表示由0到q-1(q个整数)的范围组成的组(group)。r表示任意选择其中之一。
[0107]
设备注册部143将包括作为自身的标识符的设备识别信息(idi)及公开密钥(pvi)的注册请求信息发送到部分公开密钥提供部200。
[0108]
部分秘密密钥获取部144响应于向上述部分公开密钥提供部200的注册请求信息的发送,从部分公开密钥提供部接收部分秘密密钥(ppki)并存储在设备存储部110中。上述部分秘密密钥(ppki)的定义如以下公式2。
[0109]
【公式2】
[0110]
ppki=(ri,zi)
[0111]
即,上述ppki表示ri及zi两个值的部分密钥,作为部分秘密密钥的ri、zi值发送到设备。
[0112]
当由上述部分秘密密钥获取部144获取部分秘密密钥(ppki)时,完整认证密钥生成部145生成完整认证密钥并存储在设备存储部110中。完整认证密钥通过以下公式3来计算。
[0113]
【公式3】
[0114]
pri=svi+zi[0115]
pui=(pvi,ri,zi)
[0116]
zi=zi*p
[0117]
协商部150包括临时秘密密钥生成部151、通信部152、验证部153、会话密钥生成部154,根据上述完整认证密钥生成针对所要进行通信的另一对象,即,其他物联网设备100的相互认证及会话密钥。
[0118]
具体地,临时秘密密钥生成部151选择作为rz
q*
的阶数的ti(ti∈rz
q*
),并通过进行ti*p来生成临时公开密钥(ti)。
[0119]
通信部152包括通信请求部10及通信响应部20,以与另一物联网设备100进行通信。
[0120]
上述通信请求部10在包括数据发送模式及数据接收模式的请求模式下动作,在请求模式的数据发送模式下,将包括上述临时公开密钥、完整公开密钥、发送侧物联网设备及接收侧物联网设备的设备识别信息的通信请求信息发送到上述接收侧物联网设备100,在发送模式的数据接收模式中,将包括临时公开密钥、完整公开密钥及发送侧物联网设备及接收侧物联网设备的设备识别信息的通信响应信息发送到上述发送侧物联网设备100。
[0121]
上述通信响应部20在包括数据发送模式及数据接收模式的响应模式下动作,在响应模式的数据接收模式下,从发送侧物联网设备接收上述通信请求信息,在响应模式的数据发送模式下,向上述发送侧物联网设备发送上述通信响应信息。
[0122]
根据物联网设备100的功能,也可能存在仅在发送模式及接收模式中任意一个模式下动作的物联网设备100。
[0123]
验证部153对在请求模式及响应模式下获取的通信请求信息及通信响应信息中所包括的临时公开密钥进行验证,将结果输出到会话密钥生成部154。
[0124]
如以下公式4,上述验证是判断对方侧的临时公开密钥是否为g的阶数以及是否基于从kgc生成的公开密钥来生成。
[0125]
【公式4】
[0126]
ti∈g
[0127]
zi=ri+p
pub
*h1(idi,pvi,ri)
[0128]
其中,i是对方侧的物联网设备的索引。
[0129]
如以下公式5,会话密钥生成部154生成会话信息,如以下公式6,生成会话密钥(sk)。
[0130]
【公式5】
[0131]
si=pvi+zi[0132]
会话信息=h2(idi,id
i+1
,si,s
i+1
,ti,t
i+1
)
[0133]
其中,i是发送侧物联网设备的索引,i+1是接收侧物联网设备的索引。
[0134]
【公式6】
[0135]
sk=σ
i,i+1
=(eti+pri)s
i+1
+(ti+dpri)t
i+1
[0136]
会话通信处理部160根据上述会话密钥形成逻辑会话通信通道后,通过上述无线通信部与上述另一物联网设备进行通信。
[0137]
图3是示根据出本发明的用于物联网环境的基于无证书密钥协商系统的部分公开密钥提供部的结构的图。
[0138]
参照图3,部分公开密钥提供部200作为密钥生成中心(kgc),包括机构存储部210、机构通信部220及机构控制部230。
[0139]
上述机构存储部210包括:程序区域,存储用于控制部分公开密钥提供部200的动作的控制程序;临时区域,临时存储在执行上述控制程序中产生的数据;以及数据区域,半永久性存储执行上述控制程序所需要的数据及执行控制程序中产生的数据。上述数据区域中可以存储主秘密密钥(s)、公开信息(param)及每个已注册的物联网设备100的部分秘密密钥。
[0140]
上述机构通信部220可通过有线方式连接到有线及无线数据通信网络1,以与连接到上述有线及无线数据通信网络1的物联网设备100进行数据通信。
[0141]
机构控制部230包括安全参数选择部231、主信息生成部232、公开信息分发部233、设备注册监控部234、部分秘密密钥生成部235及秘密密钥提供部236,以向物联网设备100分发公开信息并向请求设备注册的物联网设备提供部分秘密密钥。
[0142]
具体地,安全参数选择部231选择并输出任意的安全参数k。作为随机选择的常数,上述k表示使用任意选择的常数来生成整个系统的安全参数的输入。
[0143]
当选择安全参数k后,主信息生成部232生成应用k的主秘密密钥(s),通过setup()函数生成主公开密钥(p
pub
),并通过将选择的k应用在setup()函数中来生成公开参数(param)。
[0144]
公开信息分发部233将包括所生成的上述公开参数的公开信息分发给物联网设备100。
[0145]
设备注册监控部234监控是否从任意的物联网设备100接收到注册请求信息,并且当接收到注册请求信息时,将注册请求信息中所包括的设备识别信息(idi)及认证密钥(公开密钥(pvi)及私用密钥(svi))存储在机构存储部210中,然后提供给部分秘密密钥生成部235。
[0146]
部分秘密密钥生成部235从上述设备注册监控部234或机构存储部210获取设备识别信息及认证密钥,以生成针对该物联网设备100的部分秘密密钥并存储在机构存储部210中,然后提供给上述物联网设备100。
[0147]
为了生成上述部分秘密密钥,上述部分秘密密钥生成部235由以下公式7生成针对上述物联网设备100的公开密钥的签名后,由上述公式2计算部分秘密密钥(ppki)。
[0148]
【公式7】
[0149]
签名(zi)=ri+s
·
h1(idi,pvi,ri)
[0150][0151]ri
=ri*p
[0152]
其中,ri是与公开密钥一起用于签名验证的标签,并且是公开值。ri是由签名者任意选择以生成ri的整数,并且是不应公开的值。
[0153]
图4是示出根据本发明的用于物联网环境的基于无证书密钥协商方法的流程图。
[0154]
参照图4,根据本发明的基于无证书密钥协商方法包括:物联网设备注册步骤s111,向物联网设备100分发公开信息,分配根据注册请求的部分秘密密钥;以及物联网设备100之间的通信步骤,通过使用接收到上述部分秘密密钥的物联网设备之间的上述部分秘密密钥来生成会话密钥,并且由生成的会话密钥形成会话通信通道以进行数据通信。
[0155]
参照以下图5详细说明上述物联网设备注册步骤,并且参照以下图6详细说明物联网设备100之间的通信过程。
[0156]
图5是示出根据本发明的用于物联网环境的基于无证书密钥协商方法中的物联网设备注册方法的流程图。
[0157]
参照图5,首先,部分公开密钥提供部200生成包括公开参数(param)及主公开密钥(p
pub
)的公开信息以及包括主秘密密钥(s)的主信息(步骤s211)。
[0158]
当生成主信息时,部分公开密钥提供部200将公开信息分发给物联网设备100(步骤s213)。
[0159]
物联网设备100接收并存储由部分公开密钥提供部200分发的公开信息(步骤s215),当发生注册事件时,生成认证密钥(公开密钥(pvi)、私用密钥(svi))(步骤s217)。
[0160]
当生成认证密钥时,物联网设备100生成包括设备识别信息(idi)及公开密钥(pvi)的注册请求信息(步骤s219)后,将其发送到部分公开密钥提供部200(步骤s221)。
[0161]
当接收到注册请求信息时,部分公开密钥提供部200通过应用注册请求信息中所包括的设备识别信息(idi)及公开密钥(pvi)来生成如上所述的部分秘密密钥(ppki)(步骤s223),将生成的部分秘密密钥提供给相应的物联网设备100(步骤s225)。
[0162]
接收到部分秘密密钥的物联网设备100通过使用部分秘密密钥来生成完整的完整私用密钥(pri)及完整公开密钥(pui)(步骤s227)。
[0163]
图6是示出根据本发明的用于物联网环境的基于无证书密钥协商方法中的物联网设备之间的密钥协商方法的流程图。
[0164]
在参照图6的说明中,将请求通信以发送模式动作的物联网设备称为物联网设备#1(100-1),并且将响应于通信以接收模式动作的物联网设备称为物联网设备#2(100-2)。
[0165]
物联网设备#1(100-1)选择临时秘密密钥(t1∈rz
q*
)(步骤s311),生成临时公开密钥(t1=t1*p)(步骤s313)。
[0166]
当生成临时公开密钥时,物联网设备#1(100-1)生成通信请求信息(步骤s315),其中,上述通信请求信息包括物联网设备#1(100-1)自身的设备识别信息(id1)、所要进行通信的物联网设备#2(100-2)的设备识别信息(id2)、物联网设备#1(100-1)的完整公开密钥(pu1)(以下称为“发送侧完整公开密钥”)、临时公开密钥(t1),然后,发送到物联网设备#2(100-2)(步骤s317)。
[0167]
接收到通信请求信息的物联网设备#2(100-2)对物联网设备#1的临时公开密钥及
完整公开密钥进行验证(步骤s319)。
[0168]
在进行验证后,物联网设备#2(100-2)判断验证是否成功(步骤s321)。
[0169]
当判断为验证成功时,物联网设备#2(100-2)还选择针对自身的临时秘密密钥(t2∈rz
q*
)(步骤s323),生成临时公开密钥(t2=t2*p)(步骤s325)。
[0170]
当生成临时公开密钥时,物联网设备#2(100-2)生成通信响应信息(步骤s327),其中,上述通信响应信息包括物联网设备#2(100-2)自身的设备识别信息(id2)、请求通信的物联网设备#1(100-1)的设备识别信息(id1)、物联网设备#2(100-2)的完整公开密钥(pu2)(以下称为“接收侧完整公开密钥”)、临时公开密钥(t2),然后,发送到物联网设备#1(100-1)(步骤s331)。
[0171]
接收到上述通信响应信息的物联网设备#1(100-1)对上述通信响应信息中所包括的物联网设备#2(100-2)的公开密钥进行验证(步骤s333),判断验证成功结果(步骤s335)。
[0172]
验证成功的各个物联网设备100生成各个会话密钥(sk)(步骤s329、步骤s337)。
[0173]
从以下公式8可以看出,上述两个会话密钥为相等值(equivalence)。
[0174]
【公式8】
[0175]
si=xip+zip=(xi+zi)p=pri·
p
[0176]
σ
ab
=(eta+pra)sb+(ta+dpra)tb[0177]
ꢀꢀ
=(dta+pra)prb·
p+(ta+dpra)tb·
p
[0178]
ꢀꢀ
=(etb+prb)sa+(tb+dprb)ta[0179]
ꢀꢀ
=σ
ba
[0180]
其中,a是物联网设备#1(100-1),b是物联网设备#2(100-2)。
[0181]
如上述公式8所示,上述物联网设备#1(100-1)及物联网设备#2(100-2)通过使用等值的两个会话密钥来进行数据通信(步骤s339)。
[0182]
另一方面,本发明不限定于上述典型的优选实施例,并且所属技术领域中具有通常知识的技术人员应该理解,在不超出本发明的主旨的范围内能够进行各种改进、改变、替换或者添加。如果通过这种改进、改变、替换或者添加来实现的实施方式属于所附权利要求书的范围内,则该技术思想也应视为属于本发明。
技术特征:
1.一种用于物联网环境的基于无证书密钥协商系统,其特征在于,包括:部分公开密钥提供部,其生成并提供公开信息,当接收到注册请求信息时,针对发送所述注册请求信息的对象生成部分秘密密钥并进行注册后,将所述部分秘密密钥发送到所述对象;以及多个物联网设备,其作为所述对象,接收并存储由所述部分公开密钥提供部发送的公开信息,使用所述公开信息来生成注册请求信息后,发送到所述部分公开密钥提供部以请求注册,作为对所述注册请求信息发送的响应,接收部分秘密密钥,生成并存储基于所述部分秘密密钥的完整认证密钥,根据所述完整认证密钥生成与所要进行通信的另一对象的相互认证及会话密钥,从而与所述另一对象进行使用所述会话密钥的通信。2.根据权利要求1所述的用于物联网环境的基于无证书密钥协商系统,其特征在于,所述物联网设备包括:设备存储部,其存储所述公开信息及自身的部分秘密密钥及会话密钥;设备无线通信部,其通过与有线及无线数据通信网络及作为所述另一对象的另一物联网设备设置物理通信通道来进行数据通信;设备控制部,其接收由所述部分公开密钥提供部发送的公开信息并存储在所述设备存储部中,将使用所述公开信息生成的用于请求注册的注册请求信息发送到所述部分公开密钥提供部,作为对所述注册请求信息发送的响应,接收部分秘密密钥,根据所述部分秘密密钥生成所述完整认证密钥后存储在所述设备存储部中,根据所述完整认证密钥生成与所要进行通信的另一对象的相互认证及会话密钥,根据所述会话密钥形成逻辑会话通信通道后,通过所述无线通信部与所述另一物联网设备进行通信。3.根据权利要求2所述的用于物联网环境的基于无证书密钥协商系统,其特征在于,所述设备控制部包括:注册部,其接收由所述部分公开密钥提供部发送的公开信息并存储在所述设备存储部中,将使用所述公开信息生成的用于请求注册的注册请求信息发送到所述部分公开密钥提供部,作为对所述注册请求信息发送的响应,接收部分秘密密钥,使用所述部分秘密密钥来生成包括完整公开密钥及完整私用密钥的完整认证密钥并存储在所述设备存储部中;协商部,其根据所述完整认证密钥生成与所要进行通信的另一对象的相互认证及会话密钥,根据所述会话密钥形成逻辑会话通信通道;以及会话通信处理部,在形成所述会话通信通道后,所述会话通信处理部通过所述无线通信部与所述另一物联网设备进行通信。4.根据权利要求3所述的用于物联网环境的基于无证书密钥协商系统,其特征在于,所述注册部包括:公开密钥信息收集部,其收集包括由所述部分公开密钥提供部公开的密钥生成中心的主公开密钥的参数并存储在所述设备存储部中;认证密钥生成部,其使用所述参数及物联网设备的设备识别信息来生成包括用户公开密钥及用户私用密钥的认证密钥;设备注册部,其生成包括所述设备识别信息及所述用户公开密钥的注册请求信息并发送到所述部分公开密钥提供部;部分秘密密钥获取部,其响应于所述注册请求信息的发送,从所述部分公开密钥提供
部接收部分秘密密钥并存储在所述设备存储部中;以及完整认证密钥生成部,其使用所述部分秘密密钥来生成完整认证密钥。5.根据权利要求4所述的用于物联网环境的基于无证书密钥协商系统,其特征在于,所述协商部包括:临时秘密密钥生成部,其选择
r
z
q*
的元素中的一个作为临时秘密密钥,并通过应用所选的临时秘密密钥来生成临时公开密钥;收发部,其在请求模式的数据发送模式下,将包括所述临时公开密钥、完整公开密钥、发送侧物联网设备及接收侧物联网设备的设备识别信息的通信请求信息发送到所述接收侧物联网设备,在请求模式的数据接收模式下,从所述接收侧物联网设备接收包括临时公开密钥、完整公开密钥及发送侧物联网设备及接收侧物联网设备的设备识别信息的通信响应信息,在响应模式的数据接收模式下,从发送侧物联网设备接收所述通信请求信息,在响应模式的数据发送模式下,将所述通信响应信息发送到所述发送侧物联网设备;验证部,其验证在所述发送模式及所述接收模式中分别接收的通信请求信息及通信响应信息中所包括的完整公开密钥;以及会话密钥生成部,在所述验证成功时,所述会话密钥生成部为所述发送模式及所述接收模式分别生成会话密钥。6.根据权利要求1所述的用于物联网环境的基于无证书密钥协商系统,其特征在于,所述部分公开密钥提供部包括:机构存储部,其存储所述主秘密密钥、公开信息及每个所述物联网设备的部分秘密密钥;机构通信部,其通过有线及无线数据通信网络能够与所述物联网设备进行数据通信;以及机构控制部,其生成主密钥及公开信息并存储在所述机构存储部中,当通过机构通信部接收到所述注册请求信息时,使用所述注册请求信息中所包括的所述物联网设备的设备识别信息、用户公开密钥、主密钥及公开信息来生成部分秘密密钥后,通过所述机构通信部发送到所述物联网设备。7.根据权利要求6所述的用于物联网环境的基于无证书密钥协商系统,其特征在于,所述机构控制部包括:安全参数选择部,其选择安全参数k;主信息生成部,其生成包括主秘密密钥s、主公开密钥p
pub
及公开参数param的主信息;公开信息分发部,其将包括所述主公开密钥及所述公开参数的公开信息分发给多个物联网设备;设备注册监控部,其监控是否接收到包括任意的物联网设备的设备识别信息及用户公开密钥的注册请求信息;部分秘密密钥生成部,当所述设备注册监控部判断为接收到注册请求信息时,所述部分秘密密钥生成部使用注册请求信息中所包括的所述设备识别信息、用户公开密钥、主秘密密钥、r
i
来生成签名z
i
,将生成的签名应用到以下公式2中生成部分秘密密钥;以及[公式2]ppk
i
=(r
i
,z
i
)
秘密密钥提供部,其通过机构通信部将所述部分秘密密钥发送到所述物联网设备。8.一种用于物联网环境的基于无证书密钥协商方法,其特征在于,包括:注册步骤,在接收到包括反映公开信息的用户公开密钥及设备识别信息id的注册请求信息并生成反映所述用户公开密钥及设备识别信息的部分秘密密钥后,发送到所述物联网设备,以便所述物联网设备能够生成包括完整秘密密钥及公开密钥的完整认证密钥,其中,所述公开信息由部分公开密钥提供部分发;以及协商步骤,分别接受所述部分秘密密钥并生成而具有完整认证密钥的至少两个物联网设备,根据所述完整认证密钥对与所要进行通信的一个以上的另一对象的相互认证及会话密钥进行协商,以便与所述另一对象进行使用所述会话密钥的通信。9.根据权利要求8所述的用于物联网环境的基于无证书密钥协商方法,其特征在于,所述注册步骤包括:公开信息分发步骤,部分公开密钥提供部生成主密钥及公开信息并分发所述公开信息;注册请求步骤,物联网设备接收并存储由所述部分公开密钥提供部所分发的公开信息,使用所述公开信息来生成注册请求信息后,发送到所述部分公开密钥提供部以请求注册;部分秘密密钥提供步骤,当所述部分公开密钥提供部接收到所述注册请求信息时,生成并注册针对发送所述注册请求信息的对象的部分秘密密钥,并将所述部分秘密密钥发送到所述对象;以及完整认证密钥生成步骤,所述物联网设备接收所述部分秘密密钥,生成并存储基于所述部分秘密密钥的完整认证密钥。10.根据权利要求9所述的用于物联网环境的基于无证书密钥协商方法,其特征在于,所述部分秘密密钥提供步骤包括:部分秘密密钥生成步骤,当所述部分公开密钥提供部接收到所述注册请求信息时,根据以下公式2生成并注册针对发送所述注册请求信息的对象的部分秘密密钥;以及[公式2]ppk
i
=(r
i
,z
i
)部分秘密密钥发送步骤,将所述部分秘密密钥发送到所述另一物联网设备。11.根据权利要求9所述的用于物联网环境的基于无证书密钥协商方法,其特征在于,所述物联网设备根据以下公式7提取签名后,根据以下公式3计算完整认证密钥,[公式7]签名(z
i
)=r
i
+s
·
h1(id
i
,pv
i
,r
i
)r
i
=r
i
*p,[公式3]pr
i
=sυ
i
+z
i
pu
i
=(pv
i
,r
i
,z
i
)z
i
=z
i
*p。
12.根据权利要求8所述的用于物联网环境的基于无证书密钥协商方法,其特征在于,所述协商步骤包括:通信请求步骤,发送侧物联网设备生成通信请求信息并发送到所要进行通信的至少一个接收侧物联网设备,其中,所述通信请求信息包括:临时公开密钥、完整公开密钥、发送侧物联网设备及至少一个接收侧物联网设备的各个设备识别信息;通信请求响应步骤,接收侧物联网设备进行基于所述通信请求信息的临时公开密钥、完整公开密钥及发送侧物联网设备的设备识别信息的验证,当验证成功时,将通信响应信息发送到所述发送侧物联网设备,其中,所述通信响应信息包括:所述接收侧物联网设备的自身的临时公开密钥、完整公开密钥、发送侧物联网设备及所述接收侧物联网设备的各个设备识别信息;以及通信协商步骤,生成基于所述发送侧物联网设备及所述接收侧物联网设备分别接收的对方侧设备识别信息、临时公开密钥及完整公开密钥的会话密钥,并根据所生成的会话密钥启动相互通信。
技术总结
本发明涉及一种物联网(Internet of thing,IoT)环境中的密钥协商系统及方法,更详细地,涉及一种用于物联网环境的基于无证书密钥协商系统及方法,其能够使参与物联网服务的客体无需证书即可进行相互认证及密钥协商,由此客体可以直接连接到网络并安全地进行通信。此客体可以直接连接到网络并安全地进行通信。此客体可以直接连接到网络并安全地进行通信。
技术研发人员:李壬永 李大辉
受保护的技术使用者:顺天乡大学校产学协力团
技术研发日:2020.12.18
技术公布日:2022/5/25
转载请注明原文地址:https://tc.8miu.com/read-14101.html