一种提高电力数据传输安全性的量子密钥分等级提供方法
技术领域
本发明属于电力***自动化技术领域,具体涉及一种提高电力数据传输安全性的量子密钥分等级提供方法。
背景技术
配电管理自动化是利用现代计算机、通信技术手段和设备对配电网的运行进行管理的一个信息收集和处理的***。配电自动化***处理的数据属于电力行业的核心数据,因此配电自动化***对安全性有很高的要求。目前配电自动化***采用RSA、ElGamal、Rabin以及ECC等加密算法进行通信加密。近年来,计算机技术飞速发展,使得这些依靠计算复杂度保证安全性的加密方式的可靠性越来越低。具有无条件安全性的量子通信的发展为解决这一问题带来了曙光。
量子通信的无条件安全性是由量子力学的几个基本规律保证的,即海森堡不确定性原理、测量塌缩原理和量子态不可克隆原理。目前研究最多、最有希望的量子通信工作方式是量子密钥分配(Quantum Key Distribution,QKD)。QKD量子密钥最早是由Bennett等人提出和实现的,它建立在量子力学的基本原理上,是密码技术与量子力学结合的产物,通过分发协议和量子态信息的传输,在收发双方之间建立一串共享的密钥。QKD技术与经典的“一次一密”方案相结合,可以从物理上实现绝对安全的量子保密通信。
随着量子密钥分配技术的不断发展,美国、日本以及欧洲等国相继将量子密钥融入到实际应用中。美国***纪念研究所和IdQuantique公司于2012年签订合同,建立美国首个商用量子加密网络,可以让华盛顿的研究人员通过光纤以及量子加密通道,和远在俄亥俄州的研究人员通信,这条量子通信线路长达650公里。日本NICT于2010年10月14日,在大手町举行了不可窃听的多点电视会议***试运行开幕式,在试运行期间,NTT在大手町到小金井之间,利用铺设的光纤线路,通过环回方式在最大为90千米的通路上,实现了电视会议***的连通。这些虽然仍是半商业化半实验性的应用,但是其硬件层面的难题基本已经解决。目前,制约量子密钥应用于实际使用的最大障碍就是量子密钥设备的密钥产生速度很慢,高速接收设备的价格十分昂贵。另外,目前量子密钥的应用方案基本是面向金融以及政府通信等方面设计的,无法良好的支持电力数据传输的特定通信模型。
发明内容
为了克服上述现有技术的不足,本发明提供一种提高电力数据传输安全性的量子密钥分等级提供方法,在缓解量子密钥分配速度与业务需求速度不匹配的问题的同时,为不同安全性等级的电力***数据传输提供了满足其安全需求的加密服务,大大提高了量子加密技术在电力***中的实用性。
为了实现上述发明目的,本发明采取如下技术方案:
本发明提供一种提高电力数据传输安全性的量子密钥分等级提供方法,所述方法包括以下步骤:
步骤1:通信发起方判断本地密钥长度是否满足本次通信要求;
步骤2:通信接收方收到本次通信请求后,判断自身剩余的本地密钥长度是否满足本次通信要求;
步骤3:通信接收方开始量子密钥加密通信;
步骤4:通信发起方开始量子密钥加密通信。
所述步骤1中,通信发起方根据业务安全***级别和预计数据量判断本地密钥长度是否满足本次通信要求;若本地密钥长度满足本次通信要求,则将本次通信请求告知通信接收方,等待通信接收方回应;若本地密钥长度不满足本次通信要求,通信发起方向中心密钥控制器发出量子密钥获取请求并在获取完成后继续执行该步骤。
所述步骤2中,若通信接收方自身剩余的本地密钥长度不满足本次通信要求,则向中心密钥控制器发出量子密钥获取请求并计时,若超时后自身剩余的本地密钥长度与获取的量子密钥长度总和仍未满足本次通信要求,则回复通信发起方本次通信请求失败并执行下一步;若通信接收方自身剩余的本地密钥长度满足本次通信请求,则回复通信发起方本次通信请求失败,由通信发起方通知应用程序本次通信请求失败。
通信发起方或通信接收方从中心密钥控制器获取量子密钥的过程如下:
(1)由通信发起方或通信接收方发出量子密钥获取请求,并将该量子密钥获取请求的目的地址、业务安全***需求和预计数据量发送给中心密钥控制器;
(2)中心密钥控制器的资源管理模块根据当前量子密钥信道资源使用情况为需要通信的终端密钥产生器分配资源;
(3)若中心密钥控制器成功为需要通信的终端密钥产生器分配资源,则启动中心密钥控制器的量子接收模块,通过中心通信模块通知终端密钥产生器;如果中心密钥控制器为需要通信的终端密钥产生器分配资源失败,则不启动中心密钥控制器的量子接收模块并将结果返回给通信发起方或通信接收方,要求通信发起方或通信接收方再次发出量子密钥获取请求;
(4)终端密钥产生器启动量子发送模块,开始产生量子密钥;
(5)在通信发起方或通信接收方获得满足本次通信需求的量子密钥或者本次通信结束后,业务安全***需求响应完成。
所述步骤3包括以下步骤:
步骤3-1:通信接收方的应用程序从本地密钥中提取出本次通信所需密钥,提取完成后通信接收方的存储模块删除提取出的密钥并交由应用程序保管;
步骤3-2:应用程序在每个加密数据包的头部加入本次通信使用的密钥长度以及起始位置。
所述步骤4包括以下步骤:
步骤4-1:通信发起方的应用程序从本地密钥中提取出本次通信所需密钥,提取完成后通信发起方的存储模块删除提取出的密钥并交由应用程序保管;
步骤4-2:应用程序在每个加密数据包的头部加入本次通信使用的密钥长度以及起始位置。
所述中心密钥控制器包括中心通信模块、量子接收模块、资源管理模块和中心密钥存储模块;
所述中心通信模块包括第一以太网接口和第一解码芯片,负责处理与终端密钥产生器之间的经典信道数据通信;
所述量子接收模块用于接收终端密钥产生器发送的量子信号,产生量子密钥;
所述资源管理模块包括与业务终端通信的USB接口和微处理芯片,所述微处理芯片用于监测当前量子信道的带宽资源,并对量子密钥获取请求进行处理;
所述中心密钥存储模块包括存储介质和访问控制器,用于存储与每个终端密钥产生器产生的量子密钥。
所述终端密钥产生器包括终端通信模块、量子发送设备和终端密钥存储模块;
所述终端通信模块包括第二以太网口和第二解码芯片,负责处理与中心密钥控制器之间的经典信道数据通信;
所述量子发送设备用于发送量子信号到中心密钥控制器以产生量子密钥;
所述终端密钥存储模块由大容量硬盘构成,用于存储与中心密钥控制器对应的量子密钥。
业务安全***级别包括一次一密型加密服务、安全尽力型加密服务和密钥节约型加密服务,三者的安全***级别按照一次一密型加密服务、安全尽力型加密服务、密钥节约型加密服务的顺序依次递减。
一次一密型加密服务中,利用按位异或的方式对将要传输的数据进行加密,一个字节的密钥只用来加密一个字节的数据,所有密钥只使用一次;
安全尽力型加密服务中,L表示每个密钥数据段的长度,M表示密钥数据段的个数,N表示本密钥帧需要重复使用的次数;一个密钥帧由M*N字节的帧头以及L*M字节的密钥数据构成,其中密钥数据分为M个L字节的数据段,整个帧数据均为量子密钥;第一次使用时直接使用密钥数据段使用一次一密方式加密,第k次使用时将M个密钥数据段的第i个数据段中的每个字节与帧头的第(k-2)*M+i个字节异或形成新的密钥数据段,使用该密钥数据段对数据进行一次一密方式加密,其中k取值范围为2至N+1,i的取值范围为1至M;
密钥节约型加密服务中,直接使用量子密钥作为会话密钥,使用对称加密算法进行加密。
与现有技术相比,本发明的有益效果在于:
1.本发明可以有效地缓解量子密钥产生速度与业务需求不匹配的问题,提高了量子密钥的实用性,使量子密钥应用于电力数据传输成为可能;
2.实现了对电力数据传输业务中数据的多安全级别加密,在满足安全需求的同时缓解了量子密钥产生速度低无法满足业务需求的问题;
3.本发明通过每次加密时利用帧头的量子密钥对密钥数据段进行分段异或处理后产生新的密钥数据段,由帧头量子密钥重新引入的随机性可以有效地抵抗频率攻击,提高了量子密钥在多次使用时的安全性;
4.密钥帧结构实现简单,计算量小,加密和解密速度很快,很好地符合了电力数据传输的低处理时延的要求;
5.密钥帧结构中的参数L、M、N均可以根据当前密钥剩余量以及具体业务的安全需求动态调节,具有非常高的灵活性。
附图说明
图1是本发明实施例中提高电力数据传输安全性的量子密钥分等级提供方法流程图;
图2是本发明实施例中通信发起方或通信接收方从中心密钥控制器获取量子密钥流程图;
图3是本发明实施例中中心密钥控制器与终端密钥产生器连接方式示意图;
图4是本发明实施例中采用的缓冲技术示意图;
图5是本发明实施例中安全尽力型密钥服务的密钥帧结构图。
具体实施方式
下面结合附图对本发明作进一步详细说明。
本发明提供一种用于提高电力***通信安全性的量子密钥提供方法,对于量子密钥设备的密钥生成速率慢的问题,首先采用缓冲池技术,即无论是否有业务需求,都进行密钥分配;其次,针对电力***数据传输安全性需求,本方案提供了一次一密(OTP)型、安全尽力型和密钥节约型等三种不同的通信加密服务。通过改变密钥的使用方式来平衡安全性与时延要求,根据当前密钥余量,动态分配密钥资源,利用有限的量子密钥提供尽可能可靠的加密服务。
如图1,提高电力数据传输安全性的量子密钥分等级提供方法包括以下步骤:
步骤1:通信发起方判断本地密钥长度是否满足本次通信要求;
步骤2:通信接收方收到本次通信请求后,判断自身剩余的本地密钥长度是否满足本次通信要求;
步骤3:通信接收方开始量子密钥加密通信(理论上应与通信发起方一致,主要检测由于网络以及其他原因造成的密钥同步错误,同时考虑通信时上下行数据量的不对称性)。
步骤4:通信发起方开始量子密钥加密通信。
所述步骤1中,通信发起方根据业务安全***级别和预计数据量判断本地密钥长度是否满足本次通信要求;若本地密钥长度满足本次通信要求,则将本次通信请求告知通信接收方,等待通信接收方回应;若本地密钥长度不满足本次通信要求,通信发起方向中心密钥控制器发出量子密钥获取请求并在获取完成后继续执行该步骤。
业务安全***级别包括一次一密型加密服务、安全尽力型加密服务和密钥节约型加密服务,三者的安全***级别按照一次一密型加密服务、安全尽力型加密服务、密钥节约型加密服务的顺序依次递减。
(1)一次一密型加密服务:此种加密方式具有最高的安全性;利用按位异或的方式对将要传输的数据进行加密,一个字节的密钥只用来加密一个字节的数据,所有密钥只使用一次;符合OTP原则,理论上无法破解。应用于电力数据传输中的馈线自动化业务以及数据采集业务中的遥控功能,对安全性要求极高,因此包括中心密钥控制器与终端密钥产生器之间的通信都利用量子密钥以一次一密方式进行加密,保证通信数据的最高安全性,需要预先存储足够的量子密钥,可以最大程度保证电力设备不被入侵者控制。
(2)安全尽力型加密服务:此种加密方式拥有很高的安全性。L表示每个密钥数据段的长度,M表示密钥数据段的个数,N表示本密钥帧需要重复使用的次数;一个密钥帧由M*N字节的帧头以及L*M字节的密钥数据构成,其中密钥数据分为M个L字节的数据段,整个帧数据均为量子密钥;第一次使用时直接使用密钥数据段使用一次一密方式加密,第k次使用时将M个密钥数据段的第i个数据段中的每个字节与帧头的第(k-2)*M+i个字节异或形成新的密钥数据段,使用该密钥数据段对数据进行一次一密方式加密,其中k取值范围为2至N+1,i的取值范围为1至M。
这种加密方式中的L、M、N均根据当前密钥剩余状态以及业务类型进行动态调节,密钥剩余量越多,L*M越大,反之L*M越小;L与M可以根据业务的数据类型做相应的调整,L应与业务的通信数据长度不同,并使L与业务数据长度的最小公约数尽量大以减小任意两次密文的相关性;M不应过小,否则会降低重复使用时量子密钥的随机性;业务安全需求越高,N越小,反之N越大。同时,参数中的N也对应于安全级别,一次一密型加密服务的安全级别为0,安全尽力型加密服务的安全级别为大于1的常数,密钥节约型加密服务的安全级别为-1。应用于配电通信中的数据采集业务中除遥控功能外的其他业务,对时延与安全性要求均较高。本服务根据当前剩余密钥量以及业务安全需求,通过动态调节加密参数提供最高的安全加密服务,相比一次一密型加密服务,虽然安全性有所降低,但是对于预先分配的量子密钥数量要求大大降低,能够应对较高速率的数据通信。
以下内容为本类型服务的使用实例:
当前量子密钥剩余约10000字节,若业务A的安全级别相对较高,其数据长度为50字节,那么L应设置为99,M应设置为100,假设N为1,即量子密钥只重复使用一次以尽力为业务A提供更高的安全保证,那么实际可以提供给业务A的密钥量大约为20000字节;若业务B的安全级别相对较低,其数据长度为99字节,那么L应设置为50,M应设置为200,假设N为10,那么实际可以提供给业务B的密钥量大约为100000字节。
(3)密钥节约型加密服务中,直接使用量子密钥作为会话密钥,使用对称加密算法进行加密,使用现代对称加密算法,使整个***的安全性不再受限于公钥***的安全性,同时利用更多位数的量子密钥直接作为对称密钥进行加密,由于对称加密的加密和解密过程较快,因此对于***的延时影响很低。为了节约量子密钥的使用,每个量子密钥根据当前计算能力的不同,选择不同长度以及不同的使用次数以保证一定的安全性。随着计算能力的不断进步,作为对称加密密钥的量子密钥的长度应不断增加,同时使用次数也应该减少。应用于配电监测,其业务安全敏感度较低,但数据量较大。因此,应用本服务提供能够保证数据保密期内安全的加密服务并尽可能节约密钥的使用,相比前两种业务,安全性最低,但是需要预先分配量子密钥数极少。
所述步骤2中,若通信接收方自身剩余的本地密钥长度不满足本次通信要求,则向中心密钥控制器发出量子密钥获取请求并计时,若超时后自身剩余的本地密钥长度与获取的量子密钥长度总和仍未满足本次通信要求,则回复通信发起方本次通信请求失败并执行下一步;若通信接收方自身剩余的本地密钥长度满足本次通信请求,则回复通信发起方本次通信请求失败,由通信发起方通知应用程序本次通信请求失败。
如图2,通信发起方或通信接收方从中心密钥控制器获取量子密钥的过程如下:
(1)由通信发起方或通信接收方发出量子密钥获取请求,并将该量子密钥获取请求的目的地址、业务安全***需求和预计数据量发送给中心密钥控制器;
(2)中心密钥控制器的资源管理模块根据当前量子密钥信道资源使用情况为需要通信的终端密钥产生器分配资源;
(3)若中心密钥控制器成功为需要通信的终端密钥产生器分配资源,则启动中心密钥控制器的量子接收模块,通过中心通信模块通知终端密钥产生器;如果中心密钥控制器为需要通信的终端密钥产生器分配资源失败,则不启动中心密钥控制器的量子接收模块并将结果返回给通信发起方或通信接收方,要求通信发起方或通信接收方再次发出量子密钥获取请求;
(4)终端密钥产生器启动量子发送模块,开始产生量子密钥;
(5)在通信发起方或通信接收方获得满足本次通信需求的量子密钥或者本次通信结束后,业务安全***需求响应完成。
所述步骤3包括以下步骤:
步骤3-1:通信接收方的应用程序从本地密钥中提取出本次通信所需密钥,提取完成后通信接收方的存储模块删除提取出的密钥并交由应用程序保管;
步骤3-2:应用程序在每个加密数据包的头部加入本次通信使用的密钥长度以及起始位置(减少由于网络环境不稳定造成的损失,即使数据到达的先后顺序无法保证,也可以保证数据的正确解密)。
所述步骤4包括以下步骤:
步骤4-1:通信发起方的应用程序从本地密钥中提取出本次通信所需密钥,提取完成后通信发起方的存储模块删除提取出的密钥并交由应用程序保管;
步骤4-2:应用程序在每个加密数据包的头部加入本次通信使用的密钥长度以及起始位置(减少由于网络环境不稳定造成的损失,即使数据到达的先后顺序无法保证,也可以保证数据的正确解密)。
所述中心密钥控制器包括中心通信模块、量子接收模块、资源管理模块和中心密钥存储模块;
所述中心通信模块包括第一以太网接口和第一解码芯片,负责处理与终端密钥产生器之间的经典信道数据通信;
所述量子接收模块用于接收终端密钥产生器发送的量子信号,产生量子密钥;
所述资源管理模块包括与业务终端通信的USB接口和微处理芯片,所述微处理芯片用于监测当前量子信道的带宽资源,并对量子密钥获取请求进行处理;
所述中心密钥存储模块包括存储介质和访问控制器,用于存储与每个终端密钥产生器产生的量子密钥。
所述终端密钥产生器包括终端通信模块、量子发送设备和终端密钥存储模块;
所述终端通信模块包括第二以太网口和第二解码芯片,负责处理与中心密钥控制器之间的经典信道数据通信;
所述量子发送设备用于发送量子信号到中心密钥控制器以产生量子密钥;
所述终端密钥存储模块由大容量硬盘构成,用于存储与中心密钥控制器对应的量子密钥。
实施例1:
电力调度控制中心(主站)需要对子站进行遥控,密钥存储器模块中的密钥存储量不足。
步骤1:电力调度控制中心(主站)通过USB线缆将本次加密通信的目的子站ID、安全级别需求以及预计流量发送给中心密钥控制器,本例中假设为子站1,安全级别为0,预计流量为1500字节。
步骤2:中心密钥控制器收到请求信息后,得知本次业务为遥控通信,需要最高的安全性并可以接受小于10秒的延时,再结合本次通信的预计流量使用计算出要完成本次通信需要3000字节的密钥(包括额外开销以及密钥冗余)并查询中心密钥存储器模块中子站1的密钥剩余量。
步骤3:查询得到尚有密钥2000字节,密钥剩余量不足,向中心密钥控制器发出密钥不足的消息。
步骤4:中心密钥控制器的资源管理模块查询得知本次通信的安全级别为0,是遥控指令,拥有最高优先级,则为中心密钥控制器与子站1之间分配资源。
步骤5:密钥产生速率为200字节每秒,密钥消耗速率为300字节每秒,本业务可以忍受一定的延时,经过计算可以完成本次通信,为本次通信提供一次一密型加密服务。
步骤6:中心密钥控制器将本次通信请求通过中心通信模块中的以太网接口通过经典信道发送给子站1的终端密钥产生器并等待回应。
步骤7:子站1的终端密钥产生器回复可以进行通信,则将可以通信的消息通过USB线缆返回给电力调度控制中心(主站)并将本次通信需要的密钥传给电力调度控制中心(主站)。
步骤8:开始加密通信。
实施例2:
电力调度控制中心(主站)需要对子站进行遥控,密钥存储器模块中的密钥存储量不足。
步骤1:电力调度控制中心(主站)通过USB线缆将本次加密通信的目的子站ID、安全级别需求以及预计流量发送给中心密钥控制器,本例中假设为子站1,安全级别为5,预计流量为3000字节。
步骤2:中心密钥控制器收到请求信息后,得知本次业务为遥测通信,需要很高的安全性并可以接受小于4秒的延时,再结合本次通信的预计流量使用计算出要完成本次通信需要1000字节的密钥(包括额外开销以及密钥冗余)并查询中心密钥存储器模块中子站1的密钥剩余量。
步骤3:查询得到密钥剩余量只有600字节,不足以进行本次通信,根据安全尽力型加密服务的密钥提供方法,本次加密通信的安全级别被降低为9并将动态调节的安全级别通过USB线缆返回给电力调度控制中心(主站)。
步骤4:电力调度控制中心(主站)接受本次动态调整安全级别,中心密钥控制器通过中心通信模块的以太网接口向子站1的终端密钥产生器发送加密通信请求并告知本次通信的安全级别以及预计流量。
步骤5:子站1的终端密钥产生器回复可以进行通信,则将可以通信的消息通过USB线缆返回给电力调度控制中心(主站)并将本次通信需要的密钥传给电力调度控制中心(主站)。
步骤6:开始加密通信。
实施例3:
子站响应电力调度控制中心(主站)的遥测指令,密钥存储器中的密钥存储量充足。
步骤1:子站1响应电力调度控制中心(主站)的指令请求发送当前的线路参数数据,本次通信的安全级别为-1,预计流量为5000字节,通过USB线缆将本次通信请求发送给终端密钥产生器。
步骤2:终端密钥产生器收到请求,检查当前用作对称加密的量子密钥已经使用1小时,尚未达到更换时间(2小时)。
步骤3:终端密钥产生器向中心密钥控制器发送加密通信请求。
步骤4:收到中心密钥控制器同意本次加密通信的信息后,终端密钥产生器将当前用作对称加密的量子密钥通过USB线缆返回给子站1。
步骤5:开始加密通信。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,所属领域的普通技术人员参照上述实施例依然可以对本发明的具体实施方式进行修改或者等同替换,这些未脱离本发明精神和范围的任何修改或者等同替换,均在申请待批的本发明的权利要求保护范围之内。