发明内容
针对上述问题,本发明提出一种智能变电站的通信方法及系统,能够解决智能变电站内站控层网络和过程层网络的安全通信问题。
为了实现上述技术目的,达到上述技术效果,本发明通过以下技术方案实现:
第一方面,本发明提供了一种智能变电站动态可信加密通信方法,包括:
建立与对端的动态可信连接;
基于预设的动态加密通信规则,与对端进行动态加密通信,完成智能变电站动态可信加密通信。
可选地,所述建立与对端的动态可信连接,包括以下步骤:
响应与对端完成基础连接建立的信号,向授权机发送申请证书请求;
接收授权机反馈的证书和授权机的公钥,所述证书是授权机完成身份验证后使用自己的私钥制作而成;
接收对端发送的由授权机反馈的证书,利用接收到的授权机的公钥对对端的证书进行第一验证,获得第一验证结果;
将从授权机处获得的证书发送至对端,供对端基于其接收到的授权机公钥对从本端处获得的证书进行第二验证,并获得对端反馈的第二验证结果;
基于第一验证结果和第二验证结果,建立与对端的动态可信连接。
可选地,所述动态加密通信包括以下步骤:
基于动态随机因子和随机从预设的加解密策略库选中的加解密策略,结合密钥交换算法,计算出动态密钥;
利用所述动态密钥加密业务数据,生成业务密文;
获取所述加解密策略的序号;
发送所述业务密文至对端,对端基于加解密策略的序号从加解密策略库中找到对应的加解密策略,然后基于所述动态密钥和加解密策略对所述业务密文进行解密,完成加密通信。
可选地,当所述智能变电站动态可信加密通信方法应用于站控层时,所述动态密钥的计算方法包括:
基于动态随机因子和选择的加解密策略的序号,生成伪密钥A;
接收对端发送的伪密钥B,所述伪密钥B是基于动态随机因子和密钥有效期生成的;
基于密钥协商算法对所述伪密钥A和伪密钥B进行计算,生成密钥c1;
使用与所述加解密策略序号对应的摘要算法,对密钥c1进行摘要计算,生成对应密钥强度的密钥c2;
将所述加解密策略序号合并入密钥c2,生成c3;
基于所述伪密钥B,获取密钥有效期,合并入c3,形成动态密钥C。
可选地,所述利用所述动态密钥加密业务数据步骤之前还包括:
在利用动态密钥进行报文加密前,根据动态密钥的有效期字段判断动态密钥是否到期,若动态密钥到期,则重新生成新的动态密钥。
可选地,当所述智能变电站动态可信加密通信方法应用于过程层时,所述动态密钥的计算方法包括:
基于动态随机因子,生成伪密钥;
从加解密策略库随机选取一条加解密策略;
使用加解密策略的摘要算法对所述伪密钥进行摘要计算,得到该加解密策略对应密钥强度的动态密钥。
可选地,所述业务密文的生成过程包括:
使用所述动态密钥和加解密策略的对称密钥算法,对业务数据进行加密。
第二方面,本发明提供了一种智能变电站动态可信加密通信方法,包括:
将智能变电站网络结构划分为两类,面向连接的站控层TCP网络和面向无连接的过程层网络,其中过程层网络又可细分为点对点直连和交换机相连两种方式,分别对站控层TCP网络和过程层网络实现动态可信加密通信机制,该机制包括:
建立动态可信连接;
基于预设的动态加密通信规则,通信双方进行动态加密通信,完成智能变电站动态可信加密通信。
可选地,在站控层TCP网络,建立动态可信连接的步骤为:
录入新增装置UID至授权机的合规列表;
客户端和服务端在建立TCP连接后,各自向授权机发送自己UID申请证书;
授权机比对UID和合规列表,验证UID合法后,为其制作证书并将证书和授权机公钥发送回客户端和服务端;
客户端和服务端互发自己的证书给对方,并使用授权机公钥验证对方证书,双方均验证通过后,进入下一步动态加密流程。
可选地,站控层TCP网络的通信双方每次建立连接均去授权机动态申请证书。
可选地,在站控层TCP网络,通信双方进行动态加密通信的步骤为:
客户端根据UID、随机因子和随机选取加解密策略库的一条策略,生成伪密钥A;
服务端根据UID、随机因子和密钥有效期,生成伪密钥B;
双方互发伪密钥A或B给对方,并通过DH算法计算A和B生成加密通信的密钥C;
双方使用密钥C和对称密钥算法加密报文并发送出去,接收方使用密钥C和对称密钥算法解密报文获得业务数据。
可选地,在过程层网络点对点直连的组网里,采用过程层网络点对点直连组网动态加密机制,其步骤为:
发送方根据UID、随机因子生成伪密钥;
发送方随机选取加解密策略库的一条策略,使用其摘要算法对伪密钥进行摘要计算,生成真密钥;
发送方使用密钥对业务数据进行加密,并将业务密文、密钥、策略序号一起打包发送给接收方;
接收方收到报文后,根据策略序号和密钥解密业务密文,获得业务数据。
可选地,在过程层网络交换机相连的组网里,采用过程层网络动态可信加密机制,其步骤为:
新接入过程层网络的设备将自己的iedName和随机选取加解密策略库的一条策略的加解密策略序号发送给密钥代理机;
密钥代理机将其发给授权机,授权机根据iedName和加解密策略以及其他随机值生成密钥,并将密钥和此设备的发布订阅配置发送给密钥代理机;
密钥代理机将密钥、策略序号和iedName通告给此设备和订阅此设备的其他设备;
业务数据发送时,此设备使用密钥和加解密策略对业务数据进行加密,并将业务密文和iedName一起组播MAC发送出去;
组播组内的设备根据iedName判断是否有对应密钥,若没有则不是自己订阅的;若有则用密钥和加解密策略解密业务密文,得到业务数据。
第三方面,本发明提供了一种智能变电站动态可信加密通信系统,应用于站控层,包括授权机、客户端和服务端;
所述客户端和服务端基于所述授权机建立动态可信连接;
所述客户端与服务端基于预设的动态加密通信规则,与对端进行动态加密通信,完成智能变电站站控层动态可信加密通信。
可选地,所述客户端和服务端基于所述授权机建立动态可信连接的具体过程包括:
客户端和服务端分别向授权机发送申请证书请求;
当授权机成功完成客户端和服务端的身份验证后,使用自己的私钥分别为客户端和服务端制作证书;
授权机将客户端和服务端的证书连同自己的公钥发送给客户端和服务端;
客户端和服务端互发自己的证书给对方;
客户端和服务端使用授权机公钥验证对方的证书,若均验证通过,说明双方是可信设备,双方进入动态加密通信流程,否则断开连接。
可选地,所述动态加密通信包括以下步骤:
客户端基于动态随机因子和选择的加解密策略的序号,生成伪密钥A;
服务端基于动态随机因子和密钥有效期,生成伪密钥B;
客户端和服务端互发伪密钥A或B给对方;
基于密钥协商算法对所述伪密钥A和伪密钥B进行计算,生成密钥c1;
使用与所述加解密策略序号对应的摘要算法,对密钥c1进行摘要计算,生成对应密钥强度的密钥c2;
将所述加解密策略序号合并入密钥c2,生成c3;
基于所述伪密钥B,获取密钥有效期,合并入c3,形成动态密钥C。
可选地,所述利用所述动态密钥加密业务数据步骤之前还包括:
在利用动态密钥进行报文加密前,根据动态密钥的有效期字段判断动态密钥是否到期,若动态密钥到期,则重新生成新的动态密钥。
可选地,所述业务密文的生成过程包括:
使用所述动态密钥和加解密策略的对称密钥算法,对业务数据进行加密。
第四方面,本发明提供了一种智能变电站加密通信系统,应用于点对点直连组网方式的过程层,包括:发送方和接收方;
所述发送方基于动态随机因子和随机从预设的加解密策略库选中的加解密策略,计算出动态密钥;利用所述动态密钥加密业务数据,生成业务密文;获取所述加解密策略的序号;发送所述动态密钥、加解密策略的序号和业务密文至服务端;
所述接收方基于所述加解密策略的序号从加解密策略库中找到对应的加解密策略,然后基于所述动态密钥和加解密策略对所述业务密文进行解密,完成加密通信。
可选地,所述动态密钥通过以下步骤获得:
发送方基于随机因子计算生成伪密钥,从加解密策略库随机选取一条加解密策略,使用该加解密策略的摘要算法对所述伪密钥进行摘要计算,得到加解密策略对应密钥强度的动态密钥。
可选地,所述接收方的解密过程为:
接收方接根据加解密策略的序号找到对应的加解密策略,使用密钥和加解密策略中的对称密钥算法对业务密文进行解密,获取业务明文数据。
第五方面,本发明提供了一种智能变电站动态可信加密通信系统,应用于通过交换机组网的过程层,包括:授权机、密钥代理机、发送方和接收方;
所述发送方和接收方基于所述授权机和密钥代理机建立动态可信连接;
所述发送方与接收方基于预设的动态加密通信规则进行动态加密通信,完成智能变电站通过交换机组网的过程层的动态可信加密通信。
可选地,所述发送方向密钥代理机发送自己的iedName和随机选取的加解密策略的序号;
所述密钥代理机将发送方的iedName和加解密策略的序号发送给授权机;
所述授权机基于所述iedName、加解密策略的序号和动态随机因子,生成动态密钥,并将所述动态密钥、加解密策略的序号和此设备的消息订阅发布配置信息发送给密钥代理机;
所述密钥代理机将接收到的动态密钥、加解密策略的序号和发送方的iedName发送给发送方和订阅发送方的其他设备;
订阅发送方的其他设备建立iedName和动态密钥、加解密策略的序号的对应关系;
发送方发布业务消息前,使用自己的动态密钥和选取的加解密策略对业务数据进行对称算法加密,形成业务密文,然后将业务密文和iedName通过组播MAC方式发布出去;
订阅发送方的其他设备收到发送方发送的消息后,基于消息中iedName匹配是否有其动态密钥,若有,则获取动态密钥和对应的加解密策略,并利用该动态密钥和加解密策略对业务密文进行解密,得到业务数据。
与现有技术相比,本发明的有益效果:
(1)本发明的通信方法覆盖智能变电站内的站控层网络和过程层网络,保证了整个智能变电站网络上业务数据的安全可靠传输。
(2)站控层TCP网络中动态可信方法采用在业务进行前,动态认证对方合法身份的机制,提高了设备合法性认证的时效性。
(3)动态加密方法采用的加密算法随机动态选取机制,攻击者即使获得密钥,也不知道所采用的加密算法和加解密时真正的密钥,增大了密文的破解难度。
(4)加解密策略库所提供的加密算法和密钥强度,可根据嵌入式设备硬件性能进行合理地选取,达到既保证数据加密强度,又不明显降低加解密所消耗的设备性能的目的。
(5)动态加密方法采用的密钥动态生成和重协商机制,保证了密钥生成的随机性和时效性,增大了密钥的安全强度。
(6)过程层网络点对点直连方式采用的动态加密方法,增加的报文长度有限,加解密耗时少,易于实现,满足业务报文收发的实时性要求。
(7)过程层网络通过交换机相连的组网里,采用的过程层网络动态可信加密方法,设备每次重新接入网络时即更新一次密钥,提高了密钥的安全性,保证了源设备的可信。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明的保护范围。
下面结合附图对本发明的应用原理作详细的描述。
智能变电站大多遵循三层两网的组网结构,基于TCP的站控层网络以及基于MAC的过程层网络。本发明提出的新的通信方法,用于分别解决站控层网络和过程层网络的安全通信问题。本发明的通信方法是一种动态可信加密通信方法,体现在动态可信、动态加密以及密钥分发和传输上。
在本发明中,由于智能变电站内多为嵌入式设备,对资源要求苛刻,实时性要求高,算力较小,故加密通信采用加解密速度快的对称密钥算法,舍弃加解密速度慢、计算流程复杂的非对称密钥算法。为此,所述加解密策略库包括若干条加解密策略,每条加解密策略均包括序号、对称加密算法、密钥强度和摘要算法。在具体实施过程中,可以通过对各对称密钥主算法、子算法以及摘要算法指定序列编号,形成加解密策略库。所述加解密策略库包含了业内常用的对称密钥算法,如AES、3DES、SM4、RC4等,各算法根据密钥长度不同又衍生出不同安全强度的子算法。同时也包含了业内常用的摘要算法,如MD5、SHA、SM3等,用于对伪密钥等数据信息进行摘要计算,具体如表1所示。
表1
序号 |
对称密钥算法 |
密钥强度 |
摘要算法 |
0x11 |
AES |
128 |
MD5 |
0x12 |
AES |
128 |
SHA |
0x13 |
AES |
128 |
SM3 |
0x14 |
AES |
256 |
SHA |
0x21 |
SM4 |
128 |
SM3 |
0x22 |
SM4 |
128 |
MD5 |
0x22 |
SM4 |
256 |
SHA |
0x31 |
3DES |
128 |
SHA |
… |
… |
… |
… |
智能变电站内所有涉及动态可信加密通信的设备均可合法获得并使用加解密策略库,各设备可根据自身硬件性能和业务特征选择合适的加解密策略。同时,为了提高密钥的安全性,加解密策略库的每条策略在对数据加解密时所使用的真正密钥,是通过对设备传递过来的密钥采用不同方式加工后生成的(简单的,比如每偶数字节乘以17再减3等)。非法设备即使获得了调用者的密钥,没有加解密策略库也无法知道真正的密钥和加解密算法,无法对业务数据进行破解。
在组网上,站控层增设一台后台机作为授权机,间隔层增设一台密钥代理机,用来实现动态可信方法。所述密钥代理机为间隔层增设的一台服务器,并接入站控层网络和过程层网络;所述授权机和密钥代理机是实现动态可信方法的重要设备,在整个智能变电站网络中至关重要。根据智能变电站内网络设备的规模,可全站增设一台授权机和密钥代理机,也可全站划区域分布式增设多台授权机和密钥代理机。
实施例1
本发明实施例中提供了一种智能变电站动态可信加密通信方法,包括:
将智能变电站网络结构划分为两类,面向连接的站控层TCP网络和面向无连接的过程层网络,其中过程层网络又可细分为点对点直连和交换机相连两种方式,分别对站控层TCP网络和过程层网络实现动态可信加密通信机制,该机制包括:
建立动态可信连接;
基于预设的动态加密通信规则,通信双方进行动态加密通信,完成智能变电站动态可信加密通信。
在站控层TCP网络,建立动态可信连接的步骤为:
录入新增装置UID至授权机的合规列表;
客户端和服务端在建立TCP连接后,各自向授权机发送自己UID申请证书;
授权机比对UID和合规列表,验证UID合法后,为其制作证书并将证书和授权机公钥发送回客户端和服务端;
客户端和服务端互发自己的证书给对方,并使用授权机公钥验证对方证书,双方均验证通过后,进入下一步动态加密流程。
站控层TCP网络的通信双方每次建立连接均去授权机动态申请证书。
在站控层TCP网络,通信双方进行动态加密通信的步骤为:
客户端根据UID、随机因子和随机选取加解密策略库的一条策略,生成伪密钥A;
服务端根据UID、随机因子和密钥有效期,生成伪密钥B;
双方互发伪密钥A或B给对方,并通过DH算法计算A和B生成加密通信的密钥C;
双方使用密钥C和对称密钥算法加密报文并发送出去,接收方使用密钥C和对称密钥算法解密报文获得业务数据。
在过程层网络点对点直连的组网里,采用过程层网络点对点直连组网动态加密机制,其步骤为:
发送方根据UID、随机因子生成伪密钥;
发送方随机选取加解密策略库的一条策略,使用其摘要算法对伪密钥进行摘要计算,生成真密钥;
发送方使用密钥对业务数据进行加密,并将业务密文、密钥、策略序号一起打包发送给接收方;
接收方收到报文后,根据策略序号和密钥解密业务密文,获得业务数据。
在过程层网络交换机相连的组网里,采用过程层网络交换机相连组网动态可信加密机制,其步骤为:
新接入过程层网络的设备将自己的iedName和随机选取加解密策略库的一条策略的加解密策略序号发送给密钥代理机;
密钥代理机将其发给授权机,授权机根据iedName和加解密策略以及其他随机值生成密钥,并将密钥和此设备的发布订阅配置发送给密钥代理机;
密钥代理机将密钥、策略序号和iedName通告给此设备和订阅此设备的其他设备;
业务数据发送时,此设备使用密钥和加解密策略对业务数据进行加密,并将业务密文和iedName一起组播MAC发送出去;
组播组内的设备根据iedName判断是否有对应密钥,若没有则不是自己订阅的;若有则用密钥和加解密策略解密业务密文,得到业务数据。
实施例2
本发明实施例中提供了一种智能变电站动态可信加密通信方法,包括:
建立与对端的动态可信连接;
基于预设的动态加密通信规则,与对端进行动态加密通信,完成智能变电站动态可信加密通信。
在本发明实施例的一种具体实施方式中,如图2所示,所述建立与对端的动态可信连接,包括以下步骤:
响应与对端完成基础连接建立的信号,向授权机发送申请证书请求;
接收授权机反馈的证书和授权机的公钥,所述证书是授权机完成身份验证后使用自己的私钥制作而成;
接收对端发送的由授权机反馈的证书,利用接收到的授权机的公钥对对端的证书进行第一验证,获得第一验证结果;
将从授权机处获得的证书发送至对端,供对端基于其接收到的授权机公钥对从本端处获得的证书进行第二验证,并获得对端反馈的第二验证结果;
基于第一验证结果和第二验证结果,建立与对端的动态可信连接。
在本发明实施例的一种具体实施方式中,所述动态加密通信包括以下步骤:
基于动态随机因子和随机从预设的加解密策略库选中的加解密策略,结合密钥交换算法,计算出动态密钥;
利用所述动态密钥加密业务数据,生成业务密文;在具体实施过程中,所述业务密文的生成过程包括:使用所述动态密钥和加解密策略的对称密钥算法,对业务数据进行加密;
获取所述加解密策略的序号;
发送所述业务密文至对端,对端基于加解密策略的序号从加解密策略库中找到对应的加解密策略,然后基于所述动态密钥和加解密策略对所述业务密文进行解密,完成加密通信。
根据网络协议和承载业务的特点,可将智能变电站网络划分为两类,一类是面向连接的站控层TCP网络,另一类是面向无连接的过程层网络。下面通过实施方式1和实施方式2对这两类网络分别阐述当所述智能变电站动态可信加密通信方法应用于站控层时,以及当所述智能变电站动态可信加密通信方法应用于点对点设备直连的过程层时,所述动态密钥的计算方法。
实施方式1
当所述智能变电站动态可信加密通信方法应用于站控层时,如图2所示,所述动态密钥的计算方法包括:
基于动态随机因子和选择的加解密策略的序号,生成伪密钥A;
接收对端发送的伪密钥B,所述伪密钥B是基于动态随机因子和密钥有效期生成;
基于密钥协商算法对所述伪密钥A和伪密钥B进行计算,生成密钥c1;
使用与所述加解密策略序号对应的摘要算法,对密钥c1进行摘要计算,生成对应密钥强度的密钥c2;
将所述加解密策略序号合并入密钥c2,生成c3;
基于所述伪密钥B,获取密钥有效期,合并入c3,形成动态密钥C。
关于动态密钥的动态生成时机,所述利用所述动态密钥加密业务数据步骤之前还包括:在利用动态密钥进行报文加密前,根据动态密钥的有效期字段判断动态密钥是否到期,若动态密钥到期,则重新生成新的动态密钥。
实施方式2
当所述智能变电站动态可信加密通信方法应用于点对点设备直连的过程层时,如图3所示,所述动态密钥的计算方法包括:
基于动态随机因子,生成伪密钥;
从加解密策略库随机选取一条加解密策略;
使用加解密策略的摘要算法对所述伪密钥进行摘要计算,得到该加解密策略对应密钥强度的动态密钥。
实施例3
本发明实施例中提供了一种智能变电站可信加密通信系统,应用于站控层,包括授权机、客户端和服务端;在实际应用过程中,所述授权机被设置在站控层,并接入站控层网络;
所述客户端和服务端基于所述授权机建立动态可信连接;
所述客户端与服务端基于预设的动态加密通信规则,与对端进行动态加密通信,完成智能变电站站控层的动态可信加密通信。
在通信双方发送业务数据前,需要动态认证对方合法身份的方式来实现。具体步骤为:
新装置进入智能变电站时,将新装置的UID(唯一标识符)录入到授权机的合规列表。新装置接入站控层网络,和其他设备进行通信时,在完成TCP握手后,双方准备发送业务数据前,增加互认证环节。互认证环节步骤为:双方分别将自己的UID发送给授权机。授权机比对接收到的UID和合规列表的UID,若比对成功,则采用非对称密钥和数字签名机制,用授权机的私钥为其制作连接授权证书,并连同授权机公钥一起发送给该装置。若比对不成功则不为其制作、颁发证书。两个装置分别为客户端和服务端,拿到连接授权证书后将自己的连接授权证书发送给对方,并通过使用非对称密钥技术和授权机公钥来验证对方发来的连接授权证书。只有双方都验证成功才进行下一步的加密通信,有任何一方无证书或验证失败则停止下一步的加密通信。当连接断开重新建立连接时,双方重新进入互认证流程,重认证过程同上,双方重新向授权机申请连接授权证书并互发连接授权证书进行认证。重认证使得每次连接认证时,双方都要获取一次新的证书,提高了证书的安全性。
在通信双方互认证通过后,在发送业务数据报文时,对业务数据报文进行动态加密。动态加密体现在两点:1加密算法随机动态选取,2密钥动态生成。在基于TCP的站控层网络里,具体实现为:
加密算法随机动态选取:加密算法的随机动态选取由client发起,根据自己的硬件能力和业务特征,在加解密策略库中随机选择某一条合适的加解密策略。选取过程嵌入在密钥动态生成流程里。
密钥动态生成:client和server相互认证通过后,进行下一步的加密通信。首先双方生成各自的伪密钥,通过混合UID、时间戳、温湿度值、装置运行时生成文件导致目录内容变化等随机因子,计算得出。且server的伪密钥混合入密钥有效期(比如10小时),client的伪密钥混合入加解密策略序号。双方通过密钥协商算法(DH算法)计算出共同使用的对称算法的密钥(即真密钥),通过DH算法,将自己的伪密钥发送给对方,比如client将自己的伪密钥A发送给server,server将自己的伪密钥B发送给clinet,client将A+B计算出真密钥C,server则计算出C’,理论上C和C’相等。在计算C的时候,client和server都有双方的伪密钥A和B,计算方法相同:对A和B进行DH计算,生成密钥c1;通过client的伪密钥A获取选择的加解密策略序号,使用加解密策略库对应的摘要算法,对c1进行摘要计算,生成对应算法强度的密钥c2;将加解密策略序号合并入c2,生成c3;通过server的伪密钥B获取密钥有效期,合并入c3,形成C。后面双方即使用密钥C和选择的加解密策略进行加密通信。关于密钥动态生成时机,双方每次建立连接时生成密钥,且生成伪密钥的随机因子保证密钥是动态的,每次生成的密钥都不相同。密钥有效期到达时再次动态生成密钥,密钥更新步骤为:由server端发起,server每次使用密钥时都检查下密钥有效期。在半衰期(如有效期为10小时,半衰期则为5小时)到达时,server向client发起密钥更新流程,双方重复“生成伪密钥A和B,计算真密钥C”的流程。密钥更新成功后,双方使用新密钥和新的加解密策略进行加密通信。
下面结合具体的实施方式对本发明实施例中的智能变电站可信加密通信系统的工作原理进行详细说明。
如图2所示,在站控层TCP网络,所述智能变电站可信加密通信系统的动态可信加密通信步骤如下:
1.作为客户端的新装置和作为服务端的监控机进入智能变电站,在授权机上录入新装置和监控机的UID。
2.客户端和服务端建立TCP连接。
3.客户端和服务端分别向授权机发送自己的UID1和UID2申请证书;
4.授权机分别验证客户端和服务端的UID,若验证成功,使用自己的私钥分别为客户端和服务端制作证书C1和S1。
5.授权机将客户端和服务端的证书(C1和S1)连同自己的公钥发送给客户端和服务端。
6.客户端和服务端互发自己的证书给对方。
7.客户端和服务端使用授权机公钥验证对方的证书,若均验证通过,说明双方是可信设备,双方进入动态加密流程,否则断开连接。
8.客户端根据随机因子(UID、时间戳、温湿度值、装置运行时生成文件导致目录内容变化等)和选择的加解密策略的序号,生成伪密钥A,并将其发送给服务端。
9.服务端根据随机因子(UID、时间戳、温湿度值、装置运行时生成文件导致目录内容变化等)和设置的密钥有效期,生成伪密钥B,并将其发送给客户端。
10.客户端和服务端采用DH算法,通过伪密钥A和伪密钥B计算出动态密钥C,计算方法为:对A和B进行DH计算,生成密钥c1;通过伪密钥A获取选择的加解密策略的序号,使用加解密策略库对应的摘要算法,对密钥c1进行摘要计算,生成对应算法强度的密钥c2;将加解密策略序号合并入密钥c2,生成密钥c3;通过伪密钥B获取密钥有效期,合并入密钥c3,形成动态密钥C。
11.客户端使动态密钥C和选择的加解密策略的对称密钥算法对业务数据进行加密,生成密文。
12.客户端将加密后的密文发送给服务端。
13.服务端接收到密文后,使用动态密钥C和选择的加解密策略的对称密钥算法对密文进行解密,得到业务数据明文。
14.服务端向客户端的加密通信方式同步骤11-13。
为了增强网络的安全性,本发明动态加密方法还体现在密钥重协商上,具体步骤为:
15.服务端每次使用动态密钥C进行报文加密前,根据动态密钥C的有效期字段判断动态密钥C是否到期。若密钥到期,服务端向客户端发送密钥重协商报文。
16.客户端和服务端重复步骤8-10,生成新密钥。
17.客户端和服务端使用新密钥进行动态加密通信。
18.客户端和服务端完成业务通信,断开TCP连接。
实施例4
在过程层网络里,有点对点设备直连和通过交换机连接两种组网方式。在点对点设备直连的组网里,因为是物理线缆两台设备直连,双方必定是可信的,不需要动态可信方法,可采用加密算法对发送的数据进行保护。根据网络协议、业务报文特征以及对实时性的要求,对每一次报文的发送和接收,采用过程层网络点对点直连组网动态加密方法。
为此,本发明提供了一种智能变电站动态可信加密通信系统,应用于点对点直连组网方式的过程层,如图3所示,包括:发送方和接收方;
所述发送方基于动态随机因子和随机从预设的加解密策略库选中的加解密策略,计算出动态密钥;利用所述动态密钥加密业务数据,生成业务密文;获取所述加解密策略的序号;发送所述动态密钥、加解密策略的序号和业务密文至服务端;
所述接收方基于所述加解密策略的序号从加解密策略库中找到对应的加解密策略,然后基于所述动态密钥和加解密策略对所述业务密文进行解密,完成加密通信。
所述加解密策略库包括若干条加解密策略,每条加解密策略均包括序号、对称加密算法、密钥强度和摘要算法。
所述动态密钥通过以下步骤获得:
发送方基于随机因子计算生成伪密钥,从加解密策略库随机选取一条加解密策略,使用该加解密策略的摘要算法对所述伪密钥进行摘要计算,得到加解密策略对应密钥强度的动态密钥。
所述接收方的解密过程为:接收方根据报文中加解密策略的序号找到对应的加解密策略,使用密钥和加解密策略中的对称密钥算法对业务密文进行解密,获取业务明文数据。
如图3所示,在过程层网络,点对点直连的组网方式无需验证对方身份,发送业务报文时,具体步骤如下:
1.发送方在本地生成伪密钥。伪密钥通过混合UID、时间戳、温湿度值、装置运行时生成文件导致目录内容变化等随机因子计算得出。
2.发送方从加解密策略库随机选取一条加解密策略。
3.发送方使用加解密策略的摘要算法对伪密钥进行摘要计算,得到加解密策略对应密钥强度的动态密钥。
4.发送方使用动态密钥和加解密策略的对称密钥算法对业务数据进行加密。
5.发送方将业务密文、动态密钥和加解密策略序号一起打包发送给接收方。
6.接收方接收到报文后,根据加解密策略序号和动态密钥,使用动态密钥和对称密钥算法对业务密文进行解密,获取业务明文数据。
即:发送方在发送业务数据前,先生成伪密钥,通过混合UID、时间戳、温湿度值、装置运行时生成文件导致目录内容变化等随机因子,计算得出。发送方根据从加解密策略库随机选取一条加解密策略,使用加解密策略库对应的摘要算法,对伪密钥进行摘要计算,生成对应算法强度的密钥c1;将加解密策略序号合并入c1,生成密钥C。发送方使用密钥c1将待发送的业务数据采用选取的加解密策略库的对称加密算法进行加密,将加密后的业务密文数据连同密钥C一起打包成报文发送给接收方。接收方接收到报文后,获取报文中的密钥C,提取出密钥c1和加解密策略序号,使用密钥c1和对应的加解密策略库的对称加密算法对密文进行解密,从而获得正确的明文数据。
实施例5
在通过交换机组网的过程层网络里,业务通信大多采用消息订阅发布的机制。站控层后台授权机有全站设备的GOOSE/SV消息订阅发布配置文件,比如某些设备属于某个组播MAC地址里,某台设备订阅了某几台设备的消息,每台设备都有自己全站唯一的iedName。各设备根据全局订阅发布配置文件生成自己的订阅发布配置文件,知道自己属于某几个组播MAC地址,订阅了某几个设备的消息。
为此,本发明实施例中提供了一种智能变电站动态可信加密通信系统,应用于交换机相连组网方式的过程层,如图4所示,包括:授权机、密钥代理机、发送方和接收方;
所述发送方和接收方基于所述授权机和密钥代理机建立动态可信连接;
所述发送方与接收方基于预设的动态加密通信规则进行动态加密通信,完成智能变电站交换机相连组网的过程层的动态可信加密通信。
具体地:所述发送方向密钥代理机发送自己的iedName和随机选取的加解密策略的序号;
所述密钥代理机将发送方的iedName和加解密策略的序号发送给授权机;
所述授权机基于所述iedName、加解密策略的序号和动态随机因子,生成动态密钥,并将所述动态密钥、加解密策略的序号和此设备的消息订阅发布配置信息发送给密钥代理机;
所述密钥代理机基于接收到的动态密钥、加解密策略的序号和客户端的iedName发送给客户端和订阅客户端的其他设备;
订阅发送方的其他设备建立iedName和动态密钥、加解密策略的序号的对应关系;
发送方发布业务消息前,使用自己的动态密钥和选取的加解密策略对业务数据进行对称算法加密,形成业务密文,然后将业务密文、iedName通过组播MAC方式发布出去;
订阅发送方的其他设备收到消息后,基于消息中iedName匹配是否有其动态密钥,若有,则获取动态密钥和对应的加解密策略,并利用该动态密钥和加解密策略对业务密文进行解密,得到业务数据。
综上可见,过程层网络交换机相连组网的动态可信加密方法核心在于为每台设备生成密钥并管理分发该密钥,其步骤为:
当某设备接入过程层网络时,该设备将自己的iedName和本次随机选取的加解密策略序号发送给密钥代理机,密钥代理机将此信息发送到授权机,授权机根据此设备的iedName和选取的加解密策略,连同其他随机值为其生成对称算法密钥,并将该密钥和此设备的消息订阅发布配置信息一起发送给密钥代理机。授权机和密钥代理机之间的安全通信采用站控层TCP网络动态可信加密通信方法。密钥代理机收到密钥、加解密策略序号和此设备的消息订阅发布配置信息后,将密钥、加解密策略序号和此设备的iedName通告给此设备和订阅此设备的其他设备。密钥代理机通告密钥时采用过程层网络点对点直连组网动态加密方法来保证通信安全。此设备收到密钥后本地妥善保存好密钥;订阅此设备的其他设备收到密钥后,建立此设备iedName和密钥、加解密策略序号的对应关系。在过程层网络里,每当有设备新接入或断开重接入过程层网络时,都触发一遍该密钥生成和分发的过程。当有业务数据通信时,此设备在发布消息前,使用自己的密钥和选取的加解密策略对业务消息数据进行对称算法加密,然后将业务密文数据和自己iedName通过组播MAC方式发布出去,组播组内的设备收到消息后,取消息中iedName匹配是否有其密钥,若没有,说明不是自己订阅的。若有,则用该密钥和加解密策略对业务密文进行解密,得到业务数据。
如图4所示,在过程层网络,通过交换机相连的组网中,采用过程层网络交换机相连组网动态可信加密通信方法,具体步骤如下:
1.新装置设备接入过程层网络时,向密钥代理机发送自己的iedName和随机选取的加解密策略序号。
2.密钥代理机将此设备的iedName和策略序号发送给授权机。
3.授权机根据此设备的iedName和选取的加解密策略,连同其他随机因子,生成动态密钥,并将该动态密钥、加解密策略的序号和此设备的消息订阅发布配置信息一起发送给密钥代理机。其中,步骤2和步骤3授权机和密钥代理机之间的安全通信采用站控层TCP网络动态可信加密通信方法。
4.密钥代理机收到动态密钥、加解密策略的序号和此设备的消息订阅发布配置信息后,将动态密钥、加解密策略的序号和此设备的iedName通告给此设备和订阅此设备的其他设备。步骤1和步骤4密钥代理机和过程层网络设备的安全通信采用实施例1中实施方式2提到的加解密方法。
5.此设备收到密钥后本地妥善保存好动态密钥。
6.订阅此设备的其他设备收到动态密钥后,建立此设备iedName和密钥、加解密策略序号的对应关系。
7.此设备发布业务消息前,使用自己的动态密钥和选取的加解密策略对业务消息数据进行对称算法加密,然后将业务密文数据和自己iedName通过组播MAC方式发布出去。
8.组播组内的设备收到消息后,取消息中iedName匹配是否有其密钥。若没有,说明不是自己订阅的;若有,则获取密钥和对应的加解密策略。
9.用该密钥和加解密策略对业务密文进行解密,得到业务数据。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。