具体实施方式
以下,参考附图,详细地说明本实用新型的优选实施方式。在下面的说明中,对于相同的部件赋予相同的符号,省略重复的说明。另外,附图只是示意性的图,部件相互之间的尺寸的比例或者部件的形状等可以与实际的不同。
需要说明的是,本实用新型中的术语“包括”和“具有”以及它们的任何变形,例如所包括或所具有的一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可以包括或具有没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本实用新型提供了一种基于区块链的配电物联网的安全认证设备。 (有时可以简称为安全认证设备)本实用新型涉及的配电物物联网设备可以通过一种基于区块链的配电物联网的安全认证方法(有时可以简称为安全认证方法)对配电物联网中的电力终端设备进行安全认证。
本实用新型的实施方式所涉及的安全认证设备可以应用于智能电网或配电物联网。根据本实用新型,能够提供一种更加高效地完成电力终端设备的身份认证的基于区块链的配电物联网的安全认证方法。在本实用新型所涉及的实施方式中可以构建配电物联网的轻量级安全架构。在一些示例中,配电物联网可以基于软件定义网络(Software DefinedNetwork,SDN)的边缘控制技术,可以将配电物理网中电力终端设备的安全认证任务(或身份认证任务)分配给边缘设备(也称“安全认证设备”)。在这种情况下,能够利用边缘设备来实现电力终端设备的身份认证。由此,能够有效缓解大量的电力终端设备对中心服务器带来的巨大负担,能够较为高效地完成电力终端设备的身份认证。
图1是示出了本实用新型示例所涉及的配电物联网1的场景图。在一些示例中,参见图1,配电物联网1可以包括一个或多个配电区(例如,配电区110、配电区120和配电区130)。在一些示例中,可以根据安全认证设备的通信区域(或通信覆盖范围)来划分配电区。在一些示例中,各个配电区可以包括安全认证设备。在一些示例中,安全认证设备的数量可以为一个或多个。例如,配电区110可以包括安全认证设备111,配电区120可以包括安全认证设备121,配电区130可以包括安全认证设备131,配电区140可以包括安全认证设备141等。在一些示例中,各个配电区可以包括电力终端设备。在一些示例中,各个配电区中的电力终端设备的数量可以为一个或多个。例如,配电区110中的电力终端设备的数量可以为3个,分别为电力终端设备112、电力终端设备113和电力终端设备114等。
以下通过配电区P描述各个配电区的结构与信号流的传递方式。
图2是示出了本实用新型示例所涉及的一个配电区P的场景图。其中,图2示出了一个配电区P所对应的场景图,配电区P可以包括安全认证设备S和若干个电力终端设备D,例如第一电力终端设备D1 和第二电力终端设备D2。图3是示出了本实用新型示例所涉及安全认证设备S的结构框图。图4是示出了本实用新型示例所涉及的基于区块链的配电物联网1的安全认证方法的流程示意图。
在一些示例中,如图3所示,安全认证设备S可以包括:接收模块S-1、身份生成模块S-2、加密模块S-3、发送模块S-4以及验证模块 S-5。
在一些示例中,接收模块S-1可以用于接收电力终端设备D发送的设备信息、预设口令以及认证信息。
在一些示例中,身份生成模块S-2基于设备信息和预设口令对电力终端设备D进行注册。
在一些示例中,加密模块S-3用于基于设备信息和预设口令生成第一加密密文和第二加密密文,并利用第一加密密文和第二加密密文生成目标密文组合。
在一些示例中,发送模块S-4用于将目标密文组合在区块链上链,区块链以安全认证设备S作为区块链主节点。
在一些示例中,验证模块S-5基于认证信息和从区块链提取的数字摘要对电力终端设备D进行安全认证。
在本实用新型所涉及实施方式中,提供了一种适用于安全认证设备S的安全认证方法(参见图4)。在本实施方式中,参见图4,基于区块链的配电物联网1的安全认证方法可以包括以下步骤:通过安全认证设备S进行区块链初始化(步骤S10);通过安全认证设备S对电力终端设备D进行注册(步骤S20);通过安全认证设备S对电力终端设备D进行身份认证(步骤S30)。根据本实用新型的安全认证方法,能够更加高效地完成电力终端设备D的身份认证。
在步骤S10中,如上所述,通过安全认证设备S可以进行区块链初始化。
在一些示例中,可以分别将各个配电区P对应的安全认证设备S 分别作为区块链主节点以构建区块链,安全认证设备S通信区域内的电力终端设备D即作为区块链的子节点。在一些示例中,各个安全认证设备S可以构建一个区块链信任域(简称“信任域”)。在这种情况下,若电力终端设备D在该信任域内进行身份认证,则所有信任该身份验证域(即信任域)的电力终端设备D可以接受该身份认证。在一些示例中,该安全认证设备S可以作为该区块链信任域的主设备,同一配电区内的电力终端设备D可以作为该区块链信任域的从设备。
在步骤S20中,如上所述,通过安全认证设备S的身份生成模块 S-2可以对电力终端设备D进行注册。
在一些示例中,在步骤S20中,安全认证设备S的身份生成模块 S-2需要对加入到同一配电区P的电力终端设备D进行注册(参见图2 和图4)。在这种情况下,该安全认证设备S能够对电力终端设备D 进行身份标识和信息登记,由此能够使安全认证设备S更好地识别和区分电力终端设备D,能够便于后续通过安全认证设备S实现对电力终端设备D的身份认证。在一些示例中,电力终端设备D可以由同一区块链信任域内的安全认证设备S进行注册。或者电力终端设备D可以由同一配电区P的安全认证设备S进行注册。
在一些示例中,各个电力终端设备D可以分别向安全认证设备S 发送目标信息。在一些示例中,目标信息可以包括该电力终端设备D 的设备信息和预设口令。在一些示例中,设备信息可以为能够区分各个电力终端设备D的信息。在一些示例中,设备信息可以包括该电力终端设备D的区域号、类型号和编号等信息。由此能够获得设备信息。在一些示例中,区域号可以是区块链区域的编号。在一些示例中,类型号可以是设备类型的编号。在一些示例中,编号可以是在该区域同类型设备里的编号。在一些示例中,设备信息可以在电力终端设备D 加入区块链信任域时生成。
在一些示例中,电力终端设备D发送的预设口令可以是基于电力终端设备D内置的伪随机数生成器生成的。由此能够获得预设口令。在一些示例中,电力终端设备D可以将生成的预设口令存储。
在一些示例中,该安全认证设备S可以接收电力终端设备D发送的目标信息。在一些示例中,该安全认证设备S可以通过接收模块S-1 接收电力终端设备D发送的目标信息模块并通过身份生成模块S-2基于接收的目标信息生成注册信息,并可以发送给对应的电力终端设备D。
具体而言,该安全认证设备S可以接收电力终端设备D发送的设备信息和预设口令。在一些示例中,安全认证设备S可以基于接收的设备信息生成该电力终端设备D对应的身份标识。在一些示例中,身份标识可以为电力终端设备D对应的唯一的设备身份标识。
在一些示例中,安全认证设备S可以利用身份生成模块S-2基于接收的预设口令生成该电力终端设备D对应的目标口令。在一些示例中,安全认证设备S可以利用身份生成模块S-2基于随机数和预设口令生成目标口令。在一些示例中,安全认证设备S可以利用身份生成模块S-2通过随机数生成器产生随机数。在一些示例中,安全认证设备S可以利用身份生成模块S-2通过对随机数和预设口令进行异或运算获得目标口令。由此,能够获得目标口令。
在一些示例中,注册信息可以包括身份标识和目标口令。在一些示例中,安全认证设备S可以包括存储模块(后续描述),存储模块可以将生成的注册信息存储。在一些示例中,安全认证设备S可以将设备信息存储到安全认证设备S的数据库中。
在一些示例中,安全认证设备S的发送模块S-4可以将注册信息发送给对应的电力终端设备D。例如,发送模块S-4可以将身份标识和目标口令等注册信息发送给对应的电力终端设备D。在另一些示例中,身份生成模块S-2在生成注册信息后,发送模块S-4可以发送注册信息和预设口令发送给对应的电力终端设备D。在一些示例中,可以通过比对接收的预设口令和自身生成的预设口令来确认该电力终端设备D 与注册信息对应。在一些示例中,电力终端设备D可以将接收的注册信息存储。
在一些示例中,安全认证设备S还可以生成该电力终端设备D的密钥对。
在一些示例中,身份标识可以作为电力终端设备D的公钥。在一些示例中,目标口令可以作为电力终端设备D的私钥。或者目标口令和预设口令可以作为电力终端设备D的私钥对。
在一些示例中,发送模块S-4可以并向该安全认证设备S发送注册信息以完成注册。具体而言,在一些示例中,电力终端设备D的接收模块S-1可以接收安全认证设备S发送的身份标识和目标口令,并可以通过安全信道向该安全认证设备S发送该身份标识和该目标口令。在一些示例中,若该安全认证设备S的接收模块S-1接收注册信息后,通过在存储在存储模块的数据中查询获得与之对应的注册信息,则说明该电力终端设备D完成注册。在这种情况下,安全认证设备S可以向电力终端设备D发送已完成注册的通知信息。在一些示例中,若安全认证设备S接收注册信息后,通过在存储在存储模块的数据中查询未获得与之对应的注册信息,则说明该电力终端设备D未完成注册。在这种情况下,安全认证设备S可以将接收的注册信息存储以完成注册,之后可以向电力终端设备D发送已完成注册的通知信息。
在步骤S30中,如上所述,通过安全认证设备S可以对电力终端设备D进行身份认证。
在一些示例中,步骤S30中可以包括将电力终端设备D的目标信息写入区块链中、以及基于安全认证设备S和区块链对电力终端设备 D进行身份认证。
在步骤S30中,如上所述,通过安全认证设备S的发送模块S-4 可以对电力终端设备D进行身份认证。
在一些示例中,步骤S30中可以包括将电力终端设备D的目标信息写入区块链中、以及通过安全认证设备S和区块链对电力终端设备 D进行身份认证。
在一些示例中,如上所述,安全认证设备S可以包括存储模块(未图示)。在一些示例中,存储模块可以用于存储加密算法,加密算法包括:基于所述身份标识生成第一数字摘要的第一加密算法、基于所述身份标识和所述设备信息生成第二数字摘要的第二加密算法、基于所述第一数字摘要和安全认证设备标识生成的第一字符串组合生成第一加密密文的第三加密算法、以及基于所述第二数字摘要和所述安全认证设备标识生成的第二字符串组合生成第二加密密文的第四加密算法,所述加密算法以软件的形式存储在所述存储模块。在这种情况下,能够随时调用加密算法,并根据不同的步骤调用相应的加密算法。
本实用新型所涉及的实施方式中,将电力终端设备D的目标信息写入区块链中可以包括以下步骤:安全认证设备S的加密模块S-3可以基于电力终端设备D注册信息中的身份标识和第一加密算法生成第一数字摘要,安全认证设备S的加密模块S-3可以基于电力终端设备D 的身份标识和设备信息以及第二加密算法生成第二数字摘要(步骤 S311);安全认证设备S的加密模块S-3可以基于第一数字摘要和安全认证设备标识生成第一字符串组合并基于第三加密算法生成第一加密密文,安全认证设备S的加密模块S-3可恶意基于第二数字摘要和安全认证设备标识生成第二字符串组合并基于第四加密算法生成第二加密密文(步骤S312),安全认证设备S的加密模块S-3可以基于第一加密密文和第二加密密文生成目标密文组合(步骤S313),安全认证设备 S将目标密文组合在区块链上链(步骤S314)。
在步骤S311中,如上所述,安全认证设备S的加密模块S-3可以基于电力终端设备D注册信息中的身份标识和第一加密算法生成第一数字摘要,安全认证设备S基于身份标识和已存储的设备信息以及第二加密算法生成第二数字摘要。
在一些示例中,安全认证设备S的加密模块S-3可以基于身份标识和第一加密算法生成第一数字摘要。在一些示例中,第一加密算法可以为SHA-256加密算法或SM3算法等。由此,能够便于获得第一数字摘要。
在一些示例中,安全认证设备S的加密模块S-3可以基于身份标识和设备信息以及第二加密算法生成第二数字摘要。在一些示例中,安全认证设备S可以基于第二加密算法和身份标识生成身份数字摘要。在一些示例中,安全认证设备S的加密模块S-3可以基于第二加密算法和设备信息生成设备信息数字摘要。在一些示例中,安全认证设备S 可以将身份数字摘要和设备信息数字摘要组合连接为字符串以生成第二数字摘要。在一些示例中,第二加密算法可以为SHA-256加密算法或SM3算法等。由此,能够便于获得第二数字摘要。
在步骤S312中,如上所述,安全认证设备S的加密模块S-3可以基于第一数字摘要和安全认证设备标识生成第一字符串组合并基于第三加密算法生成第一加密密文,安全认证设备S的加密模块S-3可以基于第二数字摘要和安全认证设备标识生成第二字符串组合并基于第四加密算法生成第二加密密文。
在一些示例中,安全认证设备标识可以是安全认证设备S的加密模块S-3对应的安全认证设备编号。在这种情况下,安全认证设备编号可以用于区分不同配电区的安全认证设备S。在一些示例中,安全认证设备标识可以是安全认证设备S在云网关上注册时产生的。
在一些示例中,如上所述,安全认证设备S的加密模块S-3可以基于第一数字摘要和安全认证设备标识生成第一字符串组合。在一些示例中,安全认证设备S的加密模块S-3可以将第一数字摘要与安全认证设备标识连接生成第一字符串组合。
在一些示例中,安全认证设备S的加密模块S-3可以基于第三加密算法和第一字符串组合生成第一加密密文。在一些示例中,第三加密算法可以是SM2算法或RSA算法。由此,能够便于获得第一加密密文。在一些示例中,安全认证设备S的加密模块S-3可以使用电力终端设备D公钥,并运用第三加密算法对第一字符串组合进行非对称加密,形成第一加密密文。
在一些示例中,安全认证设备S的加密模块S-3可以基于第二数字摘要和安全认证设备标识生成第二字符串组合。在一些示例中,安全认证设备S可以将第二数字摘要与安全认证设备标识连接生成第二字符串组合。
在一些示例中,安全认证设备S的加密模块S-3可以基于第四加密算法和第二字符串组合生成第二加密密文。在一些示例中,第四加密算法可以是SM2算法或RSA算法。由此,能够便于获得第二加密密文。在一些示例中,安全认证设备S的加密模块S-3可以使用安全认证设备S公钥,并运用第四加密算法对第二字符串组合进行非对称加密,形成第二加密密文。
在一些示例中,安全认证设备S公钥可以是在云网关上注册时产生的。
在步骤S313中,接收模块S-1可以接收第一加密密文并基于第二加密密文生成目标密文组合。
在一些示例中,加密模块S-3可以将第一加密密文和第二加密密文按照一定规则先进行分段拆分,再连接起来组成完整密文,即目标密文组合。在一些示例中,安全认证设备S可以将第一加密密文和第二加密密文使用井号(“#”)组合获得目标密文组合。
在步骤S314中,如上所述,安全认证设备S可以将目标密文组合在区块链上链。
在一些示例中,发送模块S-4可以将目标密文组合写入到用于区块链上链的填充字段中以完成将目标信息写入区块链。在一些示例中,填充字段可以是记载上链信息的字段。由此,能够使安全认证设备S 将目标密文组合写入区块链。在一些示例中,目标信息可以包括身份标识和设备信息等。
本实用新型所涉及的实施方式中,电力终端设备D之间进行数据传输前,需要安全认证设备S对电力终端设备D进行身份认证。例如,当第一电力终端设备D1向第二电力终端设备D2传输数据前,安全认证设备S可以认证第一电力终端设备D1是否合法。
本实用新型所涉及的实施方式中,安全认证设备S对电力终端设备D进行身份认证可以包括以下步骤:电力终端设备D可以向安全认证设备S发送认证信息(步骤S321),安全认证设备S基于认证信息和从区块链获得的加密设备信息,实现电力终端设备D的认证(步骤 S322);认证成功后,电力终端设备D向安全认证设备S发送请求内容以实现安全认证设备S对电力终端设备D的安全认证(步骤S323)。
在步骤S321中,如上所述,电力终端设备D可以向安全认证设备 S发送认证信息。
在一些示例中,电力终端设备D可以通过加密模块S-3对认证数据等进行加密以获得认证信息并通过发送模块S-4向安全认证设备S 发送。在一些示例中,认证数据可以包括身份标识和设备信息等。在这种情况下,能够使安全认证设备S有效地识别和区分电力终端设备 D。
在一些示例中,在步骤S321之前,电力终端设备D可以与安全认证设备S协商会话密钥。在一些示例中,电力终端设备D和安全认证设备S在进行数据交互时可以通过会话密钥进行加密和解密。在一些示例中,电力终端设备D可以通过会话密钥对认证数据进行加密以获得认证信息向安全认证设备S发送。由此,能够有利于电力终端设备D与安全认证设备S进行安全的数据交互,并能够便于后续安全认证设备S对电力终端设备D进行身份认证。
在步骤S322中,如上所述,安全认证设备S可以基于认证信息和从区块链获得的加密设备信息,实现对电力终端设备D的认证。
在一些示例中,安全认证设备S可以接收认证信息并从中获取认证数据。在一些示例中,安全认证设备S可以对认证信息解密以从中获得认证数据以及请求内容。在一些示例中,安全认证设备S可以通过会话密钥对认证信息解密。由此,能够获得认证数据,能够便于安全认证设备S对电力终端设备D进行身份认证。
在一些示例中,安全认证设备S可以从认证数据获得身份特征数据。在一些示例中,身份特征数据可以是指设备信息,即区域号、类型号和编号等。
在一些示例中,加密模块S-3可以基于认证数据获取第一认证数据摘要。在一些示例中,加密模块S-3可以基于认证数据中的身份标识和设备信息以及第二加密算法生成第一认证数据摘要。
在一些示例中,加密模块S-3可以基于认证数据中的身份标识从区块链提取加密设备信息。在一些示例中,加密设备信息可以为第二数字摘要等。
在一些示例中,安全认证设备S可以通过匹配第一认证数据摘要和第二数字摘要以实现安全认证设备S对电力终端设备D的身份认证。
在步骤S323中,如上所述,认证成功后,电力终端设备D向安全认证设备S发送请求内容以实现电力终端设备D之间的数据传输。在一些示例中,请求内容可以包括电力终端设备D待传输的其它电力终端设备D的身份标识等。在这种情况下,安全认证设备S可以基于身份标识识别待传输的电力终端设备D以实现电力终端设备D之间的数据传输。
在一些示例中,电力终端设备D可以利用会话密钥将请求内容加密发送给安全认证设备S。在一些示例中,安全认证设备S可以利用会话密钥对请求内容进行解密并存储在自身的数据库中以实现电力终端设备D之间的数据传输。
在本实用新型所涉及的实施方式中,在配电物联网1中,电力终端设备D之间可以进行数据的安全传输。例如,第一电力终端设备D1 与第二电力终端设备D2之间可以进行数据传输。在一些示例中,第一电力终端设备D1可以将传输的数据传输给安全认证设备S,安全认证设备S可以对第一电力终端设备D1发送的数据进行验证,若验证通过,则可以将数据传输给第二电力终端设备D2。以下详细描述电力终端设备D之间进行数据安全传输的过程。
在本实施方式中,第一电力终端设备D1与第二电力终端设备D2 之间进行数据传输的过程可以包括以下步骤:第一电力终端设备D1可以将目标传输数据生成目标数据包,并采用第五加密算法对目标数据包进行加密获得传输数据的数字摘要,并运用其私钥对传输数据的数字摘要进行签名,得到传输数据密文(步骤S41);第一电力终端设备 D1将目标数据包、签名后的传输数据密文以及数据生成时间戳发送到安全认证设备S,并进行签名认证(步骤S42);若验证通过,安全认证设备S可以将加密传输数据传输给第二电力终端设备D2,第二电力终端设备D2可以对加密传输数据解密获得目标传输数据(步骤S43)。
在一些示例中,在步骤S41中,第一电力终端设备D1可以基于网络通信协议将目标传输数据生成目标数据包。在一些示例中,目标传输数据可以包括第一电力终端设备D1想要传递给第二电力终端设备 D2的数据信息。在一些示例中,目标数据包可以包括第一电力终端设备D1的身份标识、设备信息等信息。由此,能够有利于后续安全认证设备S进行验证。在一些示例中,目标数据包还可以包含第一电力终端设备D1想要传输数据的电力终端设备D(第二电力终端设备D2) 的相关身份信息(例如,身份标识、设备信息等)。例如,目标数据包还可以包含第二电力终端设备D2的身份标识和设备信息等信息。由此,能够有利于后续安全认证设备S将信息准确地传输给第二电力终端设备D2。
在一些示例中,第一电力终端设备D1可以采用第五加密算法对目标数据包进行加密获得传输数据的数字摘要。在一些示例中,第五加密算法可以是SHA-2加密算法。在一些示例中,第一电力终端设备D1 可以采用其私钥对传输数据的数字摘要进行签名,得到传输数据密文。
在一些示例中,在步骤S42中,第一电力终端设备D1可以将目标数据包、签名后的传输数据密文以及数据生成时间戳发送到安全认证设备S。在一些示例中,数据生成时间戳可以是第一电力终端设备D1 根据数据发送的时间生成。在一些示例中,第一电力终端设备D1可以向同一配电区的安全认证设备S发送目标数据包、签名后的传输数据密文以及数据生成时间戳等信息。
在一些示例中,安全认证设备S可以将接收到的目标数据包、签名后的传输数据密文以及数据生成时间戳等信息广播给配电物联网1 中的其他安全认证设备S。在这种情况下,配电物联网1中的任一安全认证设备S可以对第一电力终端设备D1发送的目标数据包、签名后的传输数据密文以及数据生成时间戳等信息进行签名验证。由此,能够有效地提高验证的效率。在一些示例中,签名验证可以是指安全认证设备S基于第一电力终端设备D1的公钥对签名后的传输数据密文进行解密并得到传输数据的第三数字摘要与安全认证设备S对目标数据包使用第五加密算法计算得到传输数据的第四数字摘要进行比较,如果两者相等,则表明该数据未被篡改(即验证通过)。在一些示例中,若某一安全认证设备S获得签名验证的验证结果,则该安全认证设备S 可以将获得的验证结果广播至配电物联网1中的其他安全认证设备S。在这种情况下,其他安全认证设备S可以获得验证结果。
在一些示例中,在步骤S43中,安全认证设备S可以根据验证结果来确认是否将加密传输数据传输给第二电力终端设备D2。在一些示例中,若验证通过,则安全认证设备S可以将加密传输数据传输给第二电力终端设备D2。在一些示例中,安全认证设备S可以从目标数据包里获得第二电力终端设备D2的身份标识等信息。在这种情况下,可以由与第二电力终端设备D2位于同一配电区的安全认证设备S将目标数据包进行加密获得加密传输数据传给第二电力终端设备D2。在一些示例中,第二电力终端设备D2可以对加密传输数据解密获得目标传输数据。在一些示例中,安全认证设备S与电力终端设备D的加密与解密是基于二者协商的会话密钥。由此,能够实现电力终端设备D之间的信息传输。
虽然以上结合附图和示例对本实用新型进行了具体说明,但是可以理解,上述说明不以任何形式限制本实用新型。本领域技术人员在不偏离本实用新型的实质精神和范围的情况下可以根据需要对本实用新型进行变形和变化,这些变形和变化均落入本实用新型的范围内。