一种基于智能电网中能量信息网关的信息安全算法

文档序号:7779207阅读:250来源:国知局
一种基于智能电网中能量信息网关的信息安全算法
【专利摘要】本发明涉及一种基于智能电网中能量信息网关的信息安全算法,按照连接的流程将本发明所介绍的安全机制划分为身份认证过程、加密消息报文格式和消息通信过程三部分。本发明采用基于RSA加密算法、高级加密技术(AES)和数字签名等技术,以实现指令信息传输机密性、完整性和不可抵赖性的安全机制。利用三项技术各自的优点,结合智能用电网络在公用网络中进行敏感信息传输的情况,充分考虑了身份伪造、数据窃取和重复发送攻击等情形,提出了一种双向身份认证和安全的指令传输机制,;有效地防范上述数据攻击,保证指令可追溯。本发明为我国在需求响应和家庭自动化技术中的数据安全传输提供了一种可行、可靠的解决办法。
【专利说明】一种基于智能电网中能量信息网关的信息安全算法【技术领域】
[0001]本发明涉及一种基于智能电网中能量信息网关的信息安全算法,属于智能电网【技术领域】。
【背景技术】
[0002]近年来,我国不断创下新的用电高峰,峰谷差日益变大,给电力系统运行带来了一定的困难。电力需求响应为解决这些问题提出了新的思路。智能用电网络是实现需求响应的一种形式,它将用户侧的各种电器通过能量信息网关互连而形成的网络。基于该网络,一方面可实现对电器设备的监测与控制,并在此基础上感知电器的状态,实现用电网络的安全、健康、舒适、节能运行;另一方面,可实现协同的自动需求响应,进而参与电网的优化运行。智能用电网络中的能量信息网关,既是智能电网与用电网络所辖电器的能量消费接口,也是外部互联网与所辖电器间信息接口。
[0003]能量信息网关在智能用电网络中占据重要的地位,其信息安全关系到用户用电的安全性和私密性,也关系到需求响应策略的能否保密、完整地接收和执行。针对控制和响应指令在公用互联网中传输,在互联网中可能存在消息窃听、数据篡改、身份仿冒等潜在的安全威胁。

【发明内容】

[0004]本发明的目的在于提供一种基于智能电网中能量信息网关的信息安全算法,以便能够更好针对智能电网中的信息进行安全保护。
[0005]为了实现上述目的,本发明的技术方案如下。
[0006]一种基于智能电网中能量信息网关的信息安全算法,能量信息网关被用作用户端网络的接入点,需要经常与需求响应中心和客户端之间通信,从而实现家电的远程控制、负荷的需求响应。由于所有的消息都是通过互联网进行传输,因此网关的通信安全问题是实际应用时必须考虑的重要因素。本发明实施例针对公用网络的特点,按照连接的流程将本发明所介绍的安全机制划分为身份认证过程、加密消息报文格式和消息通信过程三部分,具体如下:
(A)身份认证过程:
为了实现客户端与网关之间的双向认证,防止其中任何一方的身份伪造,本发明提出利用客户端和网关双方信任的权威机构颁发的根证书,进行对方身份的验证。原理是:
Al)权威机构基于RSA算法,生成公钥和私钥,公钥向公众公开,并嵌入在客户端和网关软件中。
[0007]A2)客户端和网关在连接之前,需要向权威机构请求对其身份标识、公钥进行签名,签名后保存在自己的数据库中。经过签名后的身份标识或公钥被篡改后签名将失效。
[0008]A3)通信双方交换公钥,在每一步中,接受公钥一方将首先利用根证书为对方公钥的签名进行验证,签名有效时保存对方公钥。[0009]A4)网关确认对方身份,赋予相应的权限之后,将对方公钥及其权限储存,供未来的加密通信和指令执行使用。
[0010]由于双方的通信过程中,通过非加密通道传输的公钥已经被根证书签名,因而其完整性得到了数字签名技术的支持。在权威机构发放签名的时候,对用户标识的有效性进行判断,即可保证用户标识和公钥的对应关系,保障任意一方能够获取到对方完整的、无篡改的公钥。由于公钥经过签名,因此即使该公钥被第三方截获,也无法将公钥替换为自己的公钥,因而有效地避免身份认证过程中的身份冒充现象。
[0011](B)加密消息报文格式:
发送到网关的信息包括负荷控制、权限管理、响应指令等,利用数字签名技术;实现指令的真实性、完整性和不可抵赖性,从而避免指令遭到泄露、篡改、多次发送。根据这些需求,兼顾报文的安全性和效率,本发明实施例提出消息报文应包括报文头和报文体两部分。报文头长度较短,被接收方公钥加密;报文体长度可变,;存储大量的信息,也;为空。报文体通过AES算法加密以得到更高的解密效率,AES密钥随机生成,定期更换,存储在报文头中。
[0012]报文头分为用户信息、指令信息和报文体信息三部分,用户信息包括用户标识及其签名,指令信息包括指令类型和指令参数,报文体信息是报文体加密方法及密钥。其中用户签名与报文内容、当前时间、对方发送的随机数有关,因此接收方;根据该签名辨别指令的真伪。由于每一次报文头中的签名都不相同,指令执行后相同签名的指令无法再次执行,因此该机制能够防止由于网络不稳定或者第三方截获消息后重复发送指令而造成的指令重复执行的问题。另外,由于只有真正的客户端拥有私钥,并利用该私钥对指令签名,因此该机制能够保证指令的不可抵赖性。
[0013](C)消息通信过程:
在网关通信的过程中,多数需要保障消息机密性、完整性和不可抵赖性的情况是由客户端、需求响应中心发送到网关的指令,这里以客户端向网关发送指令为例,介绍消息加密通信过程,步骤如下:
Cl)客户端将身份标识作为请求的一部分,发送给网关,该请求通过目标网关公钥加
LU O
[0014]C2)网关收到请求信息后判断该用户是否具有权限,如有则相应客户端请求,响应内容中包括网关针对该请求生成的随机数,响应经请求方(即客户端)公钥加密。
[0015]C3)客户端收到网关响应,如果响应;正确解密,并且内容合理,则;确定对方是真实的网关。客户端收到响应之后,获取当前时间、计算指令的哈希值摘要,将随机数、时间和摘要三者打包签名后,构造加密报文,发送给网关。
[0016]C4)网关首先对加密信息进行解密,之后对报文签名字段进行校验。利用用户端的公钥解密签名字段,将解密后的随机数与前一次响应的随机数进行比较,并判断消息是否超时、消息哈希值是否一致,从而确定客户端身份的真实性、报文的完整性以及报文签名的不可抵赖性。
[0017]C5)网关核实用户端的权限,如果该指令在权限范围内,则执行。
[0018]C6)将包含客户端签名的消息记录在日志中。
[0019]在步骤C2中,只有网关能够解密该请求,并辨别出和其通信的客户端对象,所以如果客户端得到了来自网关的正确响应,则表示网关的身份是真实的。在步骤C3中,随机数在每个响应中都是唯一且不同的,并且签名域中的时间在每个指令中都是不相同的,所以只有客户端;发送签名后的消息。在网关收到一个有效的加密信息之后,使用后的响应随机数将会被从本地缓存中移除,并且会在指令执行前判断指令发送时间是否超时,因而重复的、超时的指令不会被执行。在消息和指令发送机制上,消息的机密性、完整性和不可抵赖性都得到了保障。
[0020]本发明采用一种基于RSA加密算法、高级加密技术(AES)和数字签名等技术,以实现指令信息传输机密性、完整性和不可抵赖性的安全机制。本发明利用了以下三个技术:
A、RSA加密算法:
RSA是一种基于公用密钥的加密算法,它生成一个公共密钥和一个私有密钥,以下将分别简称为“公钥”和“私钥”。消息通过公钥加密之后,能且仅能通过私钥进行解密;反之,通过私钥加密后的消息也仅能够通过公钥解密,因此这是一种非对称的加密方法。由于是非对称加密,且仅拥有一对密钥中的一个密钥是难以计算出另一个密钥的,因此公钥;被任何使用者获得用于加密,而被公钥加密的信息只能通过私钥进行解密,私钥持有者不需要担心公开公钥而导致私钥泄露。这种算法的安全性主要依赖于大数分解的困难性,它被广泛应用在诸多领域,如电子商务等。
[0021]B、高级加密标准(AES):
AES又称Rijndael加密算法,是针对电子数据加密的标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。和RSA加密算法不同的是,AES采用的是对称密钥体制,即信息的加密和解密使用的是同一个密钥。高级加密标准已经成为对称密钥加密中最流行的算法之一。在有大量数据需要传输的情况下,一种更加高效的方法是采用RSA与AES相结合的加密方式,即利用AES加密消息主体,再利用RSA加密AES随机密钥。
[0022]C、数字签名技术:
数字签名技术是一种用于验证数字信息或文件真实性的数学方法,;保证了数据和文件的鉴权、完整性和不可抵赖性。文档的数字签名中用到了 RSA加密算法,被加密的消息首先通过哈希算法的计算,产生一个难以重复、难以被人为指定的哈希值摘要,并利用RSA算法对这个摘要信息进行签名。目前数字签名技术已经涉及信息安全的诸多领域,如电子商务、软件发布、在线支付等。
[0023]该发明的有益效果在于:本发明技术基于RSA、AES和数字签名技术,利用三项技术各自的优点,结合智能用电网络在公用网络中进行敏感信息传输的情况,充分考虑了身份伪造、数据窃取和重复发送攻击等情形,提出了一种双向身份认证和安全的指令传输机制,;有效地防范上述数据攻击,保证指令可追溯。本发明为我国在需求响应和家庭自动化技术中的数据安全传输提供了一种可行、可靠的解决办法。
【专利附图】

【附图说明】
[0024]图1是本发明实施例中网关和用户端的身份认证步骤图。
[0025]图2是本发明实施例中加密消息报文格式图。
[0026]图3是本发明实施例中消息通信过程图。
【具体实施方式】[0027]下面结合附图和实施例对本发明的【具体实施方式】进行描述,以便更好的理解本发明。
实施例
[0028]能量信息网关被用作用户端网络的接入点,需要经常与需求响应中心和客户端之间通信,从而实现家电的远程控制、负荷的需求响应。由于所有的消息都是通过互联网进行传输,因此网关的通信安全问题是实际应用时必须考虑的重要因素。本发明实施例针对公用网络的特点,按照连接的流程将本发明所介绍的安全机制划分为身份认证过程、加密消息报文格式和消息通信过程三部分,图1是本发明实施例中网关和用户端的身份认证步骤图,下面分别介绍:
(A)身份认证过程:
为了实现客户端与网关之间的双向认证,防止其中任何一方的身份伪造,本发明提出利用客户端和网关双方信任的权威机构颁发的根证书,进行对方身份的验证。原理是:
I)权威机构基于RSA算法,生成公钥和私钥,公钥向公众公开,并嵌入在客户端和网关软件中。
[0029]2)客户端和网关在连接之前,需要向权威机构请求对其身份标识、公钥进行签名,签名后保存在自己的数据库中(即图1中第I步)。经过签名后的身份标识或公钥被篡改后签名将失效。
[0030]3)通信双方交换公钥,即图1中第2、3步。每一步中,接受公钥一方将首先利用根证书为对方公钥的签名进行验证,签名有效时保存对方公钥。
[0031]4)网关确认对方身份,赋予相应的权限之后,将对方公钥及其权限储存,供未来的加密通信和指令执行使用。
[0032]由于双方的通信过程中,通过非加密通道传输的公钥已经被根证书签名,因而其完整性得到了数字签名技术的支持。在权威机构发放签名的时候,对用户标识的有效性进行判断,即可保证用户标识和公钥的对应关系,保障任意一方能够获取到对方完整的、无篡改的公钥。由于公钥经过签名,因此即使该公钥被第三方截获,也无法将公钥替换为自己的公钥,因而有效地避免身份认证过程中的身份冒充现象。
[0033]( 2 )加密消息报文格式:
发送到网关的信息包括负荷控制、权限管理、响应指令等,利用数字签名技术;实现指令的真实性、完整性和不可抵赖性,从而避免指令遭到泄露、篡改、多次发送。根据这些需求,兼顾报文的安全性和效率,本发明实施例提出消息报文应包括报文头和报文体两部分。报文头长度较短,被接收方公钥加密;报文体长度可变,;存储大量的信息,也;为空。报文体通过AES算法加密以得到更高的解密效率,AES密钥随机生成,定期更换,存储在报文头中。
[0034]图2为加密信息报文格式。报文头分为用户信息、指令信息和报文体信息三部分,用户信息包括用户标识及其签名,指令信息包括指令类型和指令参数,报文体信息是报文体加密方法及密钥。其中用户签名与报文内容、当前时间、对方发送的随机数有关,因此接收方;根据该签名辨别指令的真伪。由于每一次报文头中的签名都不相同,指令执行后相同签名的指令无法再次执行,因此该机制能够防止由于网络不稳定或者第三方截获消息后重复发送指令而造成的指令重复执行的问题。另外,由于只有真正的客户端拥有私钥,并利用该私钥对指令签名,因此该机制能够保证指令的不可抵赖性。
[0035](3)消息通信过程:
在网关通信的过程中,多数需要保障消息机密性、完整性和不可抵赖性的情况是由客户端、需求响应中心发送到网关的指令,图3是本发明实施例中消息通信过程图。这里以客户端向网关发送指令为例,介绍消息加密通信过程,步骤如下:
I)客户端将身份标识作为请求的一部分,发送给网关,该请求通过目标网关公钥加密。
[0036]2)网关收到请求信息后判断该用户是否具有权限,如有则相应客户端请求,响应内容中包括网关针对该请求生成的随机数,响应经请求方(即客户端)公钥加密。
[0037]3)客户端收到网关响应,如果响应;正确解密,并且内容合理,则;确定对方是真实的网关。客户端收到响应之后,获取当前时间、计算指令的哈希值摘要,将随机数、时间和摘要三者打包签名后,用图2所示的格式构造加密报文,发送给网关。
[0038]4)网关首先对加密信息进行解密,之后对报文签名字段进行校验。利用用户端的公钥解密签名字段,将解密后的随机数与前一次响应的随机数进行比较,并判断消息是否超时、消息哈希值是否一致,从而确定客户端身份的真实性、报文的完整性以及报文签名的不可抵赖性。
[0039]5)网关核实用户端的权限,如果该指令在权限范围内,则执行。
[0040]6)将包含客户端签名的消息记录在日志中。
[0041]在步骤2中,只有网关能够解密该请求,并辨别出和其通信的客户端对象,所以如果客户端得到了来自网关的正确响应,则表示网关的身份是真实的。在步骤3中,随机数在每个响应中都是唯一且不同的,并且签名域中的时间在每个指令中都是不相同的,所以只有客户端;发送签名后的消息。在网关收到一个有效的加密信息之后,使用后的响应随机数将会被从本地缓存中移除,并且会在指令执行前判断指令发送时间是否超时,因而重复的、超时的指令不会被执行。在消息和指令发送机制上,消息的机密性、完整性和不可抵赖性都得到了保障。
[0042]具体实施例中,上述过程为:
A、身份认证过程:
1)客户端C请求访问网关G;
2)网关提供经根证书签名的网关身份标识及对应的公钥PG;
3)客户端利用根证书ROOT验证PG的有效性,如无效则终止请求;
4)客户端利用PG加密客户端私钥PC,得到(PG|PC),发送给网关;
5)网关收到(PGIPC),利用网关私钥KG解密得到PC,利用根证书ROOT验证PC的有效性,如无效则终止;
6)客户端和网关均持有对方公钥,且身份都经过ROOT的验证,将来;利用双方公钥进行通信。
[0043]B、消息通信过程:
1)客户端将其身份标识(CID)、指令类型(C0MMAND_TYPE)加密后,将(PG| CID、C0MMAND_TYPE)发送给网关;
2)网关用KG解密后,查找CID对应的公钥PC。如存在该用户,则产生随机数RAND,保存在本地缓存。将(PCIrand)作为响应,发送至客户端;3)客户端用客户端私钥KC解密后,构造消息MSG,计算消息中除签名字段的所有内容的哈希值HASH,获取当前时间--ΜΕ,将三者进行签名后,得到(KCI HASH、TIME, RAND),作为MSG的签名字段。发送(PGlMSG)至网关;
4)网关用KG解密(PGlMSG)得到MSG,提取消息签名字段,使用PC解密后得到明文签名字段--ΜΕ、HASH、RAND内容,验证超时、消息完整性和RAND是否与前次响应对应,三者均成立后,指令有效。
[0044]5)对有效指令的发送者进行权限认证,如权限满足要求,执行指令。 [0045]以上所述是本发明的优选实施方式,应当指出,对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,还;做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
【权利要求】
1.一种基于智能电网中能量信息网关的信息安全算法,其特征在于:针对公用网络的特点,按照连接的流程将安全机制划分为身份认证过程、加密消息报文格式和消息通信过程三部分,具体如下: (A)身份认证过程:利用客户端和网关双方信任的权威机构颁发的根证书,进行对方身份的验证,其原理是: Al)权威机构基于RSA算法,生成公钥和私钥,公钥向公众公开,并嵌入在客户端和网关软件中; A2)客户端和网关在连接之前,需要向权威机构请求对其身份标识、公钥进行签名,签名后保存在自己的数据库中;经过签名后的身份标识或公钥被篡改后签名将失效; A3)通信双方交换公钥,在每一步中,接受公钥一方将首先利用根证书为对方公钥的签名进行验证,签名有效时保存对方公钥; A4)网关确认对方身份,赋予相应的权限之后,将对方公钥及其权限储存,供未来的加密通信和指令执行使用; 由于双方的通信过程中,通过非加密通道传输的公钥已经被根证书签名,因而其完整性得到了数字签名技术的支持;在权威机构发放签名的时候,对用户标识的有效性进行判断,即可保证用户标识和公钥的对应关系,保障任意一方能够获取到对方完整的、无篡改的公钥;由于公钥经过签名,因此即使该公钥被第三方截获,也无法将公钥替换为自己的公钥,因而有效地避免身份认证过程中的身份冒充现象; (B)加密消息报文格式: 消息报文包括报文头和报文体两部分;报文头长度较短,被接收方公钥加密;报文体长度可变,存储大量的信息,或为`空;报文体通过AES算法加密以得到更高的解密效率,AES密钥随机生成,定期更换,存储在报文头中; 报文头分为用户信息、指令信息和报文体信息三部分,用户信息包括用户标识及其签名,指令信息包括指令类型和指令参数,报文体信息是报文体加密方法及密钥;其中用户签名与报文内容、当前时间、对方发送的随机数有关,因此接收方;根据该签名辨别指令的真伪;由于每一次报文头中的签名都不相同,指令执行后相同签名的指令无法再次执行,因此该机制能够防止由于网络不稳定或者第三方截获消息后重复发送指令而造成的指令重复执行的问题;另外,由于只有真正的客户端拥有私钥,并利用该私钥对指令签名,因此该机制能够保证指令的不可抵赖性; (C)消息通信过程: 步骤如下: Cl)客户端将身份标识作为请求的一部分,发送给网关,该请求通过目标网关公钥加密; C2)网关收到请求信息后判断该用户是否具有权限,如有则相应客户端请求,响应内容中包括网关针对该请求生成的随机数,响应经请求方(即客户端)公钥加密; C3)客户端收到网关响应,如果响应;正确解密,并且内容合理,则;确定对方是真实的网关;客户端收到响应之后,获取当前时间、计算指令的哈希值摘要,将随机数、时间和摘要三者打包签名后,构造加密报文,发送给网关; C4)网关首先对加密信息进行解密,之后对报文签名字段进行校验;利用用户端的公钥解密签名字段,将解密后的随机数与前一次响应的随机数进行比较,并判断消息是否超时、消息哈希值是否一致,从而确定客户端身份的真实性、报文的完整性以及报文签名的不可抵赖性; C5)网关核实用户端的权限,如果该指令在权限范围内,则执行; C6)将包含客户端签名的消息记录在日志中; 在步骤C2中,只有网关能够解密该请求,并辨别出和其通信的客户端对象,所以如果客户端得到了来自网关的正确响应,则表示网关的身份是真实的;在步骤C3中,随机数在每个响应中都是唯一且不同的,并且签名域中的时间在每个指令中都是不相同的,所以只有客户端;发送签名后的消息;在网关收到一个有效的加密信息之后,使用后的响应随机数将会被从本地缓存中移除,并且会在指令执行前判断指令发送时间是否超时,因而重复的、超时的指令不会被执行;在消息和指令发送机制上,消息的机密性、完整性和不可抵赖性都得到了保障。
【文档编号】H04L9/32GK103618610SQ201310649727
【公开日】2014年3月5日 申请日期:2013年12月6日 优先权日:2013年12月6日
【发明者】何县宇, 余捻宏, 徐为勇, 徐韦坚, 孙丹 申请人:上海千贯节能科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1