KR102054256B1 - Ami device, integrity verification system and method thereof - Google Patents

Ami device, integrity verification system and method thereof Download PDF

Info

Publication number
KR102054256B1
KR102054256B1 KR1020190004120A KR20190004120A KR102054256B1 KR 102054256 B1 KR102054256 B1 KR 102054256B1 KR 1020190004120 A KR1020190004120 A KR 1020190004120A KR 20190004120 A KR20190004120 A KR 20190004120A KR 102054256 B1 KR102054256 B1 KR 102054256B1
Authority
KR
South Korea
Prior art keywords
hash value
integrity
information
ami device
ami
Prior art date
Application number
KR1020190004120A
Other languages
Korean (ko)
Inventor
설재환
윤일오
장진봉
이동영
Original Assignee
주식회사 에너닷
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 에너닷 filed Critical 주식회사 에너닷
Priority to KR1020190004120A priority Critical patent/KR102054256B1/en
Application granted granted Critical
Publication of KR102054256B1 publication Critical patent/KR102054256B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • H04L2209/38
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

Disclosed are an advanced metering infrastructure (AMI) device, and an integrity verification system and integrity verification method of an AMI device. According to the present invention, the AMI device for power meter reading capable of integrity verification comprises at least one chip and a central processing unit for controlling the at least one chip. The central processing unit generates an integrity hash value based on hardware information of the AMI device including information on the chip and transmits transaction data encrypted with the integrity hash value.

Description

AMI 디바이스와 AMI 디바이스 무결성 검증 시스템 및 무결성 검증 방법{AMI DEVICE, INTEGRITY VERIFICATION SYSTEM AND METHOD THEREOF}AMI device and AMI device integrity verification system and integrity verification method {AMI DEVICE, INTEGRITY VERIFICATION SYSTEM AND METHOD THEREOF}

본 발명은 AMI 디바이스, AMI 디바이스의 무결성 검증 시스템 및 무결성 검증 방법으로서, 보다 구체적으로는, 원격으로 전력량을 검침하기 위한 AMI(Advanced Metering Infrastructure) 디바이스 및 상기 AMI 디바이스의 위변조와 고장 상황을 대비하기 위해 블록체인을 이용해 AMI 디바이스의 무결성을 검증하는 시스템과 방법에 관한 것이다.The present invention is an AMI device, an integrity verification system and integrity verification method of the AMI device, and more specifically, to prepare for the forgery and failure situation of the AMI (Advanced Metering Infrastructure) device and the AMI device for remotely reading the power amount The present invention relates to a system and method for verifying the integrity of an AMI device using a blockchain.

AMI(Advanced Metering Infrastructure)는 기존 아날로그 검침기를 디지털화하고, 통신망에 연결하여 발전 및 수전단의 전력량을 실시간으로 측정, 분석하는 장치 및 시스템의 총칭이다. 이러한 AMI는 EMS(Energy Management System), ESS(Energy Storage System), VPP(Virtual Power Plant), P2P 전력 거래 등 지능형 전력망 구축을 위한 핵심 기술이다.AMI (Advanced Metering Infrastructure) is a generic term for devices and systems that digitize existing analog meters and connect them to a communication network to measure and analyze the amount of power generated at the power generation and receiving terminals in real time. These AMIs are key technologies for building an intelligent power grid, including Energy Management System (EMS), Energy Storage System (ESS), Virtual Power Plant (VPP), and P2P power transactions.

실제 전력에너지는 전력계통을 통해 최종 고객에게 배분된다. 상기 전력계통은 전력을 생산하는 발전설비와 송전선로 변전소, 배전선로 등의 송배전설비와 수송 배분된 전력을 일반 가정이나 공장에서 소비하기 위한 수전설비 등으로 구성된 시스템을 총칭한다.Actual power energy is distributed to end customers through the power system. The power system collectively refers to a system consisting of a power generation facility for producing power, a transmission line substation, a distribution line such as a distribution line, and a power receiving facility for consuming a power distributed in a general home or factory.

상기 전력계통의 계통점들(이를테면, 발전소, 승압변전소, 1차 및 2차 강압 변전소, 변압기, 수전단 등)의 전력량은 AMI 디바이스를 통해 디지털 정보로 변환될 수 있다. 변환된 전력의 디지털 정보는 통신망을 통해 전파될 수 있다. 즉, 물리적인 전력의 경로와 전력의 디지털 정보의 경로는 다른 경로일 수 있다. 만약, AMI 디바이스를 통한 전력측정이 정확하지 않으면 실제 발전 및 소비 전력량과 네트워크상의 전력 정보가 불일치하게 되며, 이는 지능형 전력망의 신뢰도를 하락시키는 문제점을 발생시킬 수 있다.The amount of power of the system points of the power system (eg, power plants, boost substations, primary and secondary step-down substations, transformers, power stages, etc.) may be converted into digital information through the AMI device. The digital information of the converted power may be propagated through the communication network. That is, the path of physical power and the path of digital information of power may be different paths. If the power measurement through the AMI device is not accurate, the actual power generation and power consumption and the power information on the network are inconsistent, which may cause a problem of lowering the reliability of the intelligent power grid.

최근, 이와 같은 신뢰도를 보장하기 위해 데이터 무결성이 중요한 이슈로 떠오르고 있다. 각 산업군에서는 데이터 무결성을 확보하기 위해 여러 기술 중 블록체인을 주목하고 있다. 흔히, 블록체인을 디지털 정보의 전송에 특화된 기술로 여겨지지만, 블록체인은, 블록체인 시스템에 등록된 데이터의 위변조에 대한 데이터 무결성을 시스템 전체가 보장하는 것이 특징이다.Recently, data integrity has emerged as an important issue to guarantee such reliability. Each industry focuses on blockchain among several technologies to ensure data integrity. Although blockchain is often regarded as a technology specialized for the transmission of digital information, the blockchain is characterized by the entire system ensuring data integrity against forgery and corruption of data registered in the blockchain system.

이러한 이유로 각 산업군 시스템에 블록체인을 적용하려는 노력들이 진행되어 왔다. 그러나 종래의 블록체인을 적용한 시스템은 상위 시스템만 블록체인이 적용되었다. 전체 시스템에서 블록체인을 통해 유기적으로 연결되지 않으면, 블록체인이 적용되지 않은 부분의 데이터 무결성은 보장되지 않는다.For this reason, efforts have been made to apply blockchain to each industrial system. However, in the conventional blockchain system, only the upper system has been applied to the blockchain. If the entire system is not organically connected through the blockchain, the data integrity of the part where the blockchain is not applied is not guaranteed.

종래에 블록체인이 적용된 지능형 전력망의 경우도 상위시스템만 블록체인이 적용되고 있다. 지능형 전력망은 데이터의 신뢰성이 매우 중요하다. 종래와 같이 전체 시스템이 아닌 부분적인 블록체인의 적용은, 블록체인이 적용되지 않은 AMI 부분의 데이터 무결성을 블록체인이 보장할 수 없는 문제점이 발생한다.Conventionally, even in an intelligent power grid to which a blockchain is applied, only a higher system is applying a blockchain. In an intelligent grid, data reliability is very important. Application of a partial blockchain rather than the entire system as in the prior art causes a problem that the blockchain cannot guarantee the data integrity of the AMI portion to which the blockchain is not applied.

KR 10-1527353 (2015. 06. 09.)KR 10-1527353 (2015. 06. 09.)

본 발명은 상술한 문제점을 해결하기 위한 것으로서, 하드웨어 정보를 블록체인화하여 펌웨어, 칩과 회로의 개조 및 고장 등에 대한 하드웨어 무결성을 보장하는 것에 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems, and its object is to ensure hardware integrity for firmware, chip and circuit modification and failure by blockchaining hardware information.

또한, AMI 디바이스를 블록체인 시스템내에 구성하여 AMI 디바이스 시스템 전체의 무결성을 보장하는 것에 그 목적이 있다.In addition, the purpose is to configure the AMI device in the blockchain system to ensure the integrity of the entire AMI device system.

또한, 정상적인 전력 측정 정보를 블록체인화 하여 발생 가능한 물리적인 고장 및 전력 정보 위변조를 방지하는 것에 그 목적이 있다.It is also an object of the present invention to prevent physical failure and forgery of power information that can occur by blockchaining normal power measurement information.

본 발명의 일 실시예에 따른 무결성 검증이 가능한 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스는 하나 이상의 칩(Chip) 및 상기 하나 이상의 칩을 제어하는 중앙처리부를 포함하고, 상기 중앙처리부는, 상기 칩의 정보를 포함하는 상기 AMI 디바이스의 하드웨어 정보에 기초하여 무결성 해시값을 생성하고 상기 무결성 해시값을 암호화한 트랜잭션 데이터를 전송할 수 있다.According to an embodiment of the present invention, an AMI (Advanced Metering Infrastructure) device for inspecting an amount of power capable of verifying integrity may include at least one chip and a central processing unit to control the at least one chip. An integrity hash value may be generated based on hardware information of the AMI device including the chip information, and transaction data encrypted with the integrity hash value may be transmitted.

또한, 상기 하드웨어 정보는 상기 AMI 디바이스의 펌웨어 정보 및 회로점검 정보 중 하나 이상을 더 포함할 수 있다.The hardware information may further include one or more of firmware information and circuit check information of the AMI device.

또한, 상기 중앙처리부는 상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 AMI 디바이스와 네트워크로 연결된 검증노드의 공개키를 이용하여 암호화 할 수 있다.The central processing unit may encrypt the integrity hash value using a private key of the AMI device and a public key of a verification node connected to a network with the AMI device.

또한, 상기 펌웨어 정보는 상기 펌웨어의 버전 정보, 하나 이상의 파라미터 값 및 하나 이상의 기능에 대한 대표값 중 하나 이상을 포함할 수 있다.The firmware information may include one or more of the version information of the firmware, one or more parameter values, and representative values for one or more functions.

또한, 상기 칩의 정보는 상기 칩의 PUF(Physical Unclonable Function) 값을 포함할 수 있다.In addition, the chip information may include a PUF (Physical Unclonable Function) value of the chip.

또한, 상기 중앙처리부는 상기 펌웨어 정보를 기초로 생성한 펌웨어 해시값 및 상기 칩의 정보를 기초로 생성한 칩 해시값을 이용하여 위변조 해시값을 생성하고, 상기 위변조 해시값과 상기 회로점검 정보를 기초로 생성한 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성할 수 있다.The CPU may generate a forged hash value using a firmware hash value generated based on the firmware information and a chip hash value generated based on the information of the chip, and may generate the forged hash value and the circuit check information. The integrity hash value may be generated using the fault diagnosis hash value generated as a basis.

또한, 상기 트랜잭션 데이터는 상기 AMI 디바이스의 개인키로 상기 무결성 해시값을 암호화하여 서명값으로 변환하고, 상기 서명값을 상기 검증노드의 공개키로 암호화하여 생성할 수 있다.The transaction data may be generated by encrypting the integrity hash value with a private key of the AMI device, converting the integrity hash value into a signature value, and encrypting the signature value with a public key of the verification node.

또한, 상기 AMI 디바이스는 전력량을 측정하는 센서, 상기 센서가 측정한 전력 신호 또는 레퍼런스 신호를 선택적으로 통과시키는 스위치, 상기 스위치가 통과시킨 상기 전력 신호 또는 상기 레퍼런스 신호를 디지털 신호로 변환하여 상기 중앙처리부로 전송하는 ADC(Analog to Digital Converter) 및 상기 중앙처리부가 생성한 상기 트랜잭션 데이터를 전송하고 외부 제어 신호를 수신하는 통신모듈을 포함할 수 있다.The AMI device may further include a sensor for measuring an amount of power, a switch for selectively passing a power signal or a reference signal measured by the sensor, and converting the power signal or the reference signal passed by the switch into a digital signal and converting the digital signal into a digital signal. And a communication module for transmitting the transaction data generated by the central processing unit and receiving an external control signal.

또한, 상기 AMI 디바이스는 상기 스위치가 상기 전력 신호를 통과시키는 정상 모드 또는 상기 스위치가 상기 레퍼런스 신호를 통과시키는 검증 모드로 동작하고, 상기 검증 모드는 상기 검증노드의 무결성 검증 요청에 대응한 상기 중앙처리부의 제어 신호에 따라 동작할 수 있다.The AMI device may operate in a normal mode in which the switch passes the power signal or in a verification mode in which the switch passes the reference signal, and the verification mode corresponds to the central processing unit corresponding to the integrity verification request of the verification node. It can operate according to the control signal of.

본 발명의 일 실시예에 따른 블록체인 기반의 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스의 무결성을 검증하는 AMI 디바이스 무결성 검증 시스템은 중앙처리부를 포함하는 하나 이상의 상기 AMI 디바이스 및 상기 AMI 디바이스와 네트워크로 연결되어 상기 AMI 디바이스의 무결성 검증을 요청하는 복수의 블록체인 노드를 포함하고, 상기 AMI 디바이스의 상기 중앙처리부는 상기 AMI 디바이스의 펌웨어 정보, 칩의 정보 및 회로점검 정보 중 하나 이상에 기초하여 무결성 해시값을 생성하고, 상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 블록체인 노드의 공개키를 이용해 암호화하여 상기 블록체인 노드에 트랜잭션 데이터로 전송할 수 있다.An AMI device integrity verification system for verifying the integrity of an advanced metering infrastructure (AMI) device for blockchain-based power meter reading according to an embodiment of the present invention includes one or more of the AMI device and a network with the AMI device including a central processing unit. A plurality of blockchain nodes connected to each other and requesting integrity verification of the AMI device, wherein the central processing unit of the AMI device has integrity based on one or more of firmware information, chip information, and circuit inspection information of the AMI device; A hash value may be generated, and the integrity hash value may be encrypted using a private key of the AMI device and a public key of the blockchain node, and transmitted as transaction data to the blockchain node.

또한, 상기 블록체인 노드는 상기 트랜잭션 데이터를 상기 블록체인 노드의 개인키 및 상기 AMI 디바이스의 공개키를 이용한 복호화로 상기 무결성 해시값으로 변환하고, 미리 저장된 상기 AMI 디바이스의 참조 해시값과 비교한 결과 데이터를 상기 블록체인 노드의 개인키를 이용하여 암호화한 결과 트랜잭션 데이터를 생성하며, 상기 결과 트랜잭션 데이터를 상기 블록체인 노드 중에서 블록생성노드에 전송할 수 있다.The blockchain node converts the transaction data into the integrity hash value by decryption using the private key of the blockchain node and the public key of the AMI device, and compares the transaction data with a reference hash value of the previously stored AMI device. Transaction data may be generated as a result of encrypting data using the private key of the blockchain node, and the resulting transaction data may be transmitted to a block generation node among the blockchain nodes.

또한, 하나 이상의 상기 블록생성노드는 합의 알고리즘에 따른 블록생성규칙으로 블록을 생성하고, 상기 블록을 상기 블록체인 노드에 전파하고, 각각의 상기 블록체인 노드는 상기 결과 데이터가 일치한 결과값이면, 상기 AMI 디바이스와 통신을 유지하고, 불일치 결과값이면 상기 AMI 디바이스와 통신을 중단할 수 있다.Further, at least one block generation node generates a block with a block generation rule according to a consensus algorithm, propagates the block to the blockchain node, and each blockchain node is a result value of which the result data matches. Communication with the AMI device may be maintained, and communication with the AMI device may be stopped if there is a mismatch.

본 발명의 일 실시예에 따른 블록체인을 이용하여 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스의 무결성을 검증하는 방법은 상기 AMI 디바이스의 칩의 정보를 포함하는 하드웨어 정보에 기초하여 무결성 해시값을 생성하는 제1 단계, 상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 블록체인의 검증노드의 공개키로 암호화하는 제2 단계, 상기 제2 단계에서 암호화한 상기 무결성 해시값을 기초로 통신프로토콜에 따른 트랜잭션 데이터를 생성하여 상기 검증노드로 전송하는 제3 단계, 상기 트랜잭션 데이터를 상기 검증노드의 개인키 및 상기 AMI 디바이스의 공개키로 복호화하여 상기 무결성 해시값으로 변환하는 제4 단계, 상기 AMI 디바이스의 참조 해시값과 비교한 결과 데이터를 상기 검증노드의 개인키로 암호화하는 제5 단계 및 상기 제5 단계에서 암호화한 상기 결과 데이터를 기초로 통신프로토콜에 따른 결과 트랜잭션 데이터를 생성하여 상기 블록체인의 하나 이상의 블록생성노드에 전송하는 제6 단계를 포함할 수 있다.According to an embodiment of the present invention, a method of verifying the integrity of an advanced metering infrastructure (AMI) device for metering power using a blockchain may include an integrity hash value based on hardware information including chip information of the AMI device. A first step of generating, encrypting the integrity hash value with a private key of the AMI device and a public key of a verification node of the blockchain; and generating a communication protocol based on the integrity hash value encrypted in the second step. A third step of generating transaction data according to the verification node, a fourth step of decrypting the transaction data into a private key of the verification node and a public key of the AMI device, and converting the transaction data into the integrity hash value; A fifth step of encrypting the result data compared with the reference hash value with the private key of the verification node It is possible to generate a transaction result data in accordance with the communication protocol on the basis of the result of the encrypted data in the fifth step a sixth step of transmitting the at least one block generated node of the chain block.

또한, 합의 알고리즘에 따른 블록생성규칙으로 블록을 생성하고, 생성한 상기 블록을 하나 이상의 상기 블록체인의 노드에 전파하는 제7 단계를 포함하고, 상기 결과 데이터가 일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 유지하는 제8-1 단계 또는 상기 결과 데이터가 불일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 중단하는 제8-2 단계를 더 포함할 수 있다.And a seventh step of generating a block with a block generation rule according to a consensus algorithm, and propagating the generated block to one or more nodes of the blockchain, and if the result data is a matched result, each blockchain. The node may further include step 8-1 of maintaining communication with the AMI device or step 8-2 of each blockchain node suspending communication with the AMI device if the result data is an inconsistent result. .

또한, 상기 하드웨어 정보는, 상기 AMI 디바이스의 펌웨어 정보 및 회로점검 정보를 더 포함하고 상기 제1 단계는 상기 펌웨어 정보를 기초로 펌웨어 해시값, 상기 칩의 정보를 기초로 칩 해시값 및 상기 회로점검 정보를 기초로 고장진단 해시값을 생성하는 제1-1 단계, 상기 펌웨어 해시값과 상기 칩 해시값을 이용하여 위변조 해시값을 생성하는 제1-2 단계 및 상기 위변조 해시값과 상기 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성하는 제1-3 단계를 포함할 수 있다.The hardware information may further include firmware information and circuit check information of the AMI device, and the first step may include a firmware hash value based on the firmware information, a chip hash value based on the information of the chip, and the circuit check information. Step 1-1 of generating a troubleshooting hash value based on the information; steps 1-2 of generating a forgery hash value using the firmware hash value and the chip hash value; and the forgery hash value and the troubleshooting hash. And generating the integrity hash value using the value.

또한, 상기 제3 단계는 상기 AMI 디바이스의 개인키로 상기 무결성 해시값을 암호화하여 서명값으로 변환하는 제3-1 단계 및 상기 서명값을 상기 검증노드의 공개키로 암호화하여 상기 트랜잭션 데이터를 생성하는 제3-2 단계를 포함할 수 있다.The third step may further include a third step of encrypting the integrity hash value with a private key of the AMI device and converting the integrity hash value into a signature value, and generating the transaction data by encrypting the signature value with a public key of the verification node. It may include step 3-2.

또한, 상기 칩의 정보는 상기 칩의 PUF(Physical Unclonable Function) 값을 포함할 수 있다.In addition, the chip information may include a PUF (Physical Unclonable Function) value of the chip.

본 발명의 일 실시예에 따른 AMI 디바이스, AMI 디바이스 무결성 검증 시스템 및 무결성 검증 방법은 하드웨어 정보를 블록체인화하여 펌웨어, 칩과 회로의 개조 및 고장 등에 대한 하드웨어 무결성을 보장할 수 있다.The AMI device, the AMI device integrity verification system, and the integrity verification method according to an embodiment of the present invention can block hardware information to ensure hardware integrity for firmware, chip and circuit modification and failure.

또한, AMI 디바이스를 블록체인 시스템내에 구성하여 AMI 디바이스 시스템 전체의 무결성을 보장할 수 있다.In addition, the AMI device can be configured in the blockchain system to ensure the integrity of the entire AMI device system.

또한, 정상적인 전력 측정 정보를 블록체인화 하여 발생 가능한 물리적인 고장 및 전력 정보 위변조를 방지할 수 있다.In addition, it is possible to block normal power measurement information to prevent physical failure and forgery of power information that may occur.

도 1은 본 발명의 일 실시예에 따른 수용가 측에 설치된 AMI 디바이스를 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 AMI 디바이스의 구성을 나타낸 블록도이다.
도 3은 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 시스템의 대략적인 구성을 나타낸 블록도이다.
도 4는 본 발명의 일 실시예에 따른 AMI 디바이스의 무결성 검증 처리 절차를 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따른 스위치의 모드 변경에 따른 통과시키는 전압 신호를 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 무결성 해시값을 생성하는 해시트리 구조를 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 블록체인 노드의 무결성 검증 처리 절차를 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 따른 변조된 해시트리 구조를 나타낸 도면이다.
도 9는 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법의 흐름도이다.
도 10은 본 발명의 일 실시예에 따른 무결성 해시값을 생성하는 단계를 나타낸 흐름도이다.
도 11은 본 발명의 일 실시예에 따른 비대칭키를 이용해 암호화하는 단계를 나타낸 흐름도이다.
도 12는 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법의 흐름도이다.
1 is a view showing an AMI device installed on the consumer side according to an embodiment of the present invention.
2 is a block diagram illustrating a configuration of an AMI device according to an embodiment of the present invention.
3 is a block diagram illustrating a schematic configuration of an AMI device integrity verification system according to an embodiment of the present invention.
4 is a diagram illustrating an integrity verification processing procedure of an AMI device according to an embodiment of the present invention.
5 is a view showing a voltage signal to pass through the mode change of the switch according to an embodiment of the present invention.
6 is a diagram illustrating a hash structure for generating an integrity hash value according to an embodiment of the present invention.
7 is a diagram illustrating an integrity verification processing procedure of a blockchain node according to an embodiment of the present invention.
8 is a diagram illustrating a modulated hashite structure according to an embodiment of the present invention.
9 is a flowchart of a method for verifying AMI device integrity according to an embodiment of the present invention.
10 is a flowchart illustrating a step of generating an integrity hash value according to an embodiment of the present invention.
11 is a flowchart illustrating a process of encrypting using an asymmetric key according to an embodiment of the present invention.
12 is a flowchart of a method for verifying AMI device integrity according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예가 상세하게 설명된다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고, 도면에서 본 발명의 실시예를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략되었다.DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the embodiments of the present invention.

본 명세서에서 사용된 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도로 사용된 것이 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions may include plural expressions unless the context clearly indicates otherwise.

본 명세서에서, "포함하다", "가지다" 또는 "구비하다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것으로서, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해될 수 있다.As used herein, the terms "comprise", "have" or "include" are intended to indicate that there is a feature, number, step, action, component, part, or combination thereof described on the specification. Or other features or numbers, steps, operations, components, parts or combinations thereof may be understood as not precluding the possibility of addition or possibility in advance.

또한, 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 기술되고, 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있다. 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리 범위에 포함된다.In addition, the components shown in the embodiments of the present invention are shown independently to represent different characteristic functions, and do not mean that each component is made of separate hardware or one software unit. That is, each component is described by listing each component for convenience of description, and at least two of the components may be combined to form one component, or one component may be divided into a plurality of components to perform a function. The integrated and separated embodiments of each of these components are also included within the scope of the present invention without departing from the spirit of the invention.

또한, 이하의 실시예들은 당 업계에서 평균적인 지식을 가진 자에게 보다 명확하게 설명하기 위해서 제공되는 것으로서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.In addition, the following embodiments are provided to more clearly explain to those skilled in the art, the shape and size of the elements in the drawings may be exaggerated for more clear description.

이하, 첨부된 도면을 참조하여, 본 발명에 따른 바람직한 실시예에 대하여 설명한다.Hereinafter, exemplary embodiments of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 수용가 측에 설치된 AMI 디바이스를 나타낸 도면이다. 도 1에 도시된 AMI 디바이스(100)는 전력 공급자 라인에서 수용가 측으로 접속되는 지점에 설치되어 상기 수용가 측에서 소비하는 전력량을 측정하는 장치이다. 도 1의 경우는 일반적인 경우이며, 수용가 측이 아닌 발전 사업자 측에 설치되어 발전량을 측정할 수도 있다. 이하, 일 실시예에 따라 수용가 측에 설치된 AMI 디바이스로서 기술한다. 보통, AMI 디바이스(100)는 전력 공급자와의 양방향 통신이 가능하여 전기 공급자와 수요자의 상호 인지 기반 수요반응(DR, Demand Response) 시스템 구현 및 운영을 위한 중요 수단으로 사용되며, 다양한 유형의 분산전원체계, 배전지능화시스템 등과의 정보 연계 등 미래 지능형 전력망 운용으로 사용될 수 있는 구성요소 중 하나이다.1 is a view showing an AMI device installed on the consumer side according to an embodiment of the present invention. The AMI device 100 shown in FIG. 1 is an apparatus that is installed at a point connected to a consumer side in a power provider line and measures an amount of power consumed by the consumer side. 1 is a general case, and may be installed on the generator side instead of the consumer side to measure the amount of power generated. Hereinafter, the description will be made as an AMI device installed on the consumer side according to an embodiment. In general, the AMI device 100 is bi-directional communication with the power supplier is used as an important means for implementing and operating a mutual recognition-based demand response (DR) system of the electricity supplier and the consumer, and various types of distributed power supply It is one of the components that can be used for future intelligent power grid operation such as information linkage with the system and distribution system.

상기 AMI(Advanced Metering Infrastructure)는 단방향 원격검침시스템(AMR, Advanced Meter Reading)에서 진화된 형태로 전력 생산자와 전력 소비자 간의 양방향 데이터 통신으로 소비자와 전기 에너지 공급자 사이의 수요반응을 통해 적극적으로 에너지 절약을 유도하고, 소비자 측 에너지를 통합 관리하는 인프라 시스템이다. The AMI (Advanced Metering Infrastructure) is an advanced form of unidirectional remote metering system (AMR), which actively saves energy through demand response between consumers and electric energy suppliers through bidirectional data communication between power producers and consumers. It is an infrastructure system that guides and integrates and manages consumer-side energy.

도 2는 본 발명의 일 실시예에 따른 AMI 디바이스의 구성을 나타낸 블록도이다. 도 2를 참조하면, 본 발명의 일 실시예에 따른 AMI 디바이스(100)는 하나 이상의 칩(Chip) 및 중앙처리부(123)를 포함할 수 있다. 상기 칩은 센서(110), 스위치(121), ADC(Analog to Digital Converter, 122), 중앙처리부(123), 레퍼런스 회로(130) 및 통신모듈(140)을 포함할 수 있다.2 is a block diagram illustrating a configuration of an AMI device according to an embodiment of the present invention. 2, an AMI device 100 according to an embodiment of the present invention may include one or more chips and a central processing unit 123. The chip may include a sensor 110, a switch 121, an analog to digital converter (ADC) 122, a central processing unit 123, a reference circuit 130, and a communication module 140.

센서(110)는 도 1과 같이 수용가 측의 전력 소비량을 측정하여 전력 신호로 변환할 수 있다. 상기 전력 신호는 아날로그 신호 또는 디지털 신호일 수 있으며, 스위치(121)로 전송될 수 있다. 스위치(121)는 상기 전력 신호 또는 레퍼런스 신호를 선택적으로 통과시킬 수 있다. ADC(Analog to Digital Converter, 122)는 스위치(121)가 통과시킨 전력 신호 또는 레퍼런스 신호를 디지털 신호로 변환하여 중앙처리부(123)로 전송할 수 있다. 중앙처리부(123)는 스위치(121)의 상기 전력 신호 또는 상기 레퍼런스 신호의 선택적 통과에 대해 제어할 수 있으며, AMI 디바이스(100)의 무결성 검증을 위해 트랜잭션 데이터를 생성할 수 있다. 중앙처리부(123)는 생성한 상기 트랜잭션 데이터를 통신모듈(140)로 전송하고, 네트워크에 연결된 통신모듈(140)은 상기 트랜잭션 데이터를 블록체인 노드(도 3 참조)로 전송할 수 있다. 블록체인 노드에 대해서는 도 3에서 후술한다. 또한, 통신모듈(140)은 상기 네트워크로부터 전송되는 외부 제어 신호를 수신하여 중앙처리부(123)로 전송할 수 있다.As illustrated in FIG. 1, the sensor 110 may measure the power consumption of the consumer and convert the power consumption into a power signal. The power signal may be an analog signal or a digital signal and may be transmitted to the switch 121. The switch 121 may selectively pass the power signal or the reference signal. The analog-to-digital converter (ADC) 122 may convert the power signal or the reference signal passed by the switch 121 into a digital signal and transmit the digital signal to the central processing unit 123. The CPU 123 may control the selective passage of the power signal or the reference signal of the switch 121, and may generate transaction data for verifying the integrity of the AMI device 100. The central processing unit 123 may transmit the generated transaction data to the communication module 140, and the communication module 140 connected to the network may transmit the transaction data to the blockchain node (see FIG. 3). The blockchain node will be described later with reference to FIG. 3. In addition, the communication module 140 may receive an external control signal transmitted from the network and transmit it to the central processing unit 123.

여기서, 스위치(121), ADC(122) 및 중앙처리부(123)는 개별 소자로 마련될 수 있거나 제어부(120)로 통합되어 하나의 마이크로 컨트롤러 유닛(MCU, Micro Controller Unit)으로 마련될 수도 있다.Here, the switch 121, the ADC 122, and the central processing unit 123 may be provided as individual elements or may be integrated into the control unit 120 and provided as one micro controller unit (MCU).

AMI 디바이스(100)는 정상 모드 또는 검증 모드로 동작할 수 있다. 상기 정상 모드는 수용가 측에서 소비하는 전력량을 검침하는 모드로서, 스위치(121)가 상기 전력 신호를 통과시켜 ADC(122)로 보낼 수 있다. 검증 모드는 AMI 디바이스(100)의 무결성을 검증하기 위한 모드로서, 스위치(121)가 센서(110)의 상기 전력 신호의 통과를 막고 레퍼런스 회로(130)의 레퍼런스 신호를 통과시킬 수 있다. 상기 정상 모드 또는 검증 모드는 중앙처리부(123)의 제어 신호로 전환될 수 있다.The AMI device 100 may operate in a normal mode or a verify mode. The normal mode is a mode for reading the amount of power consumed by the consumer, and the switch 121 may pass the power signal to the ADC 122. The verification mode is a mode for verifying the integrity of the AMI device 100. The switch 121 may prevent the power signal of the sensor 110 from passing and pass the reference signal of the reference circuit 130. The normal mode or the verification mode may be converted into a control signal of the central processing unit 123.

도 3은 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 시스템의 대략적인 구성을 나타낸 블록도이다. 도 3을 참조하면, 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 시스템은 AMI 디바이스(100)를 포함하는 클라이언트와 네트워크로 연결된 복수의 노드로 구성된 블록체인 시스템을 포함할 수 있다. 상기 복수의 노드는 블록체인 노드일 수 있으며, 각각의 상기 블록체인 노드는 복수의 AMI 디바이스(100)가 각각 측정한 전력량 기록을 포함하는 분산원장을 가질 수 있다. 또한 각각의 상기 블록체인 노드는 상기 블록체인 시스템 상의 기능에 따라 검증노드(200), 블록생성노드(300) 및 일반노드(400)로 구분될 수 있다, 그러나 상기 블록체인 상의 검증노드(200), 블록생성노드(300) 및 일반노드(400)는 고정되는 것은 아니며 서로의 역할이 교환 또는 중복될 수도 있다.3 is a block diagram illustrating a schematic configuration of an AMI device integrity verification system according to an embodiment of the present invention. Referring to FIG. 3, an AMI device integrity verification system according to an embodiment of the present invention may include a blockchain system including a plurality of nodes connected to a network by a client including the AMI device 100. The plurality of nodes may be blockchain nodes, and each of the blockchain nodes may have a distributed ledger including a power amount record measured by each of the plurality of AMI devices 100. In addition, each blockchain node may be divided into a verification node 200, a block generation node 300, and a general node 400 according to a function on the blockchain system, but the verification node 200 on the blockchain. The block generation node 300 and the general node 400 are not fixed and their roles may be exchanged or duplicated.

AMI 디바이스(100)는 통신모듈(140)을 통해 상기 블록체인 노드와 연결될 수 있다. 도 3에 도시된 AMI 디바이스(100)는 검증노드(200)와 연결되어 있지만 이에 제한되지 않는다. 바람직하게는 AMI 디바이스(100)는 상기 블록체인 시스템 상의 노드로 포함될 수 있으며, 복수의 AMI 디바이스(100) 역시 상기 블록체인 노드로서 검증노드(200), 블록생성노드(300) 및 일반노드(400)와 서로 연결될 수 있다.The AMI device 100 may be connected to the blockchain node through the communication module 140. The AMI device 100 shown in FIG. 3 is connected to the verification node 200 but is not limited thereto. Preferably, the AMI device 100 may be included as a node on the blockchain system, and the plurality of AMI devices 100 may also be a verification node 200, a block generation node 300, and a general node 400 as the blockchain node. ) Can be connected to each other.

검증노드(200)는 AMI 디바이스(100)에 대해 무결성 검증을 요청할 수 있고, 해당 요청에 응답된 데이터를 검증할 수 있다. 블록생성노드(300)는 검증노드(200)가 검증하고 서명한 트랜잭션 데이터를 일정 단위로 묶어 기존 블록들과 유기적으로 연결될 수 있는 새로운 블록(원장)을 생성할 수 있다. 상기 생성된 블록은 일반노드(400)에 전파되고 일반노드(400)는 상기 생성된 노드를 기존에 존재하는 블록과 연결할 수 있다.The verification node 200 may request integrity verification for the AMI device 100 and verify data in response to the request. The block generation node 300 may generate a new block (ledger) that can be organically connected with existing blocks by binding the transaction data verified and signed by the verification node 200 in a predetermined unit. The generated block is propagated to the general node 400 and the general node 400 may connect the generated node with an existing block.

도 4는 본 발명의 일 실시예에 따른 AMI 디바이스의 무결성 검증 처리 절차를 나타낸 도면이다. 도 4를 참조하면, AMI 디바이스(100)의 무결성 검증은 도 3에 도시된 검증노드(200)의 디바이스 무결성 검증 요청에 따라 시작할 수 있다. AMI 디바이스(100)가 검증노드(200)의 무결성 검증 요청을 받으면, 중앙처리부(123)는 상기 검증 모드로 동작할 수 있다. 중앙처리부(123)는 AMI 디바이스(100)의 펌웨어 정보(151), 칩의 정보(152) 및 회로점검 정보(153) 중 하나 이상에 기초하여 무결성 해시값을 생성할 수 있다.4 is a diagram illustrating an integrity verification processing procedure of an AMI device according to an embodiment of the present invention. Referring to FIG. 4, the integrity verification of the AMI device 100 may start according to the device integrity verification request of the verification node 200 illustrated in FIG. 3. When the AMI device 100 receives the integrity verification request from the verification node 200, the CPU 123 may operate in the verification mode. The CPU 123 may generate an integrity hash value based on one or more of firmware information 151 of the AMI device 100, chip information 152, and circuit check information 153.

펌웨어 정보(151)는 외부에서 특정 목적을 위해 인위적으로 조작을 할 가능성이 있는 파라미터가 변경되거나 설치 상태가 변경되는 경우 이를 확인할 수 있는 상태정보 파라미터로서, 펌웨어에서 해시트리 생성을 위해 획득하는 정보일 수 있다. 예를 들어, 펌웨어 버전정보, 디바이스 고유관리번호, 디바이스 IP/포트 정보, 노드(서버)의 IP/포트정보, ADC의 센서 보정값(오프셋 값), 고장 판단을 위한 자기점검기능의 Threshold 비교값, 고장코드 목록, 외부 디버깅 장비의 MCU 로그 기록 등이 있을 수 있다.The firmware information 151 is a status information parameter that can be checked when a parameter that may be manipulated externally for a specific purpose is changed or an installation state is changed. The firmware information 151 may be information that is obtained for generating a hash from the firmware. Can be. For example, firmware version information, device specific management number, device IP / port information, node / server IP / port information, ADC sensor correction value (offset value), threshold comparison value of self-check function for fault determination , Fault code list, MCU log records of external debugging equipment.

칩의 정보(152)는 AMI 디바이스(100)를 구성하는 칩의 PUF(Physical Unclonable Function) 값일 수 있다. PUF 값은 반도체 제조 공정에서 발생하는 공정편차를 이용하여 칩 내부에 구현한 예측하기 어려운 랜덤한 디지털 값을 의미한다. PUF 값은 하드웨어적으로 예측 불가능한 값이 출력되므로 복제가 불가능하다. 일반적으로 동일한 회로와 동일한 마스크 레이아웃을 가지고, 동일한 공정과정을 거치더라도 반도체 제조 과정 특성상 발생하는 공정편차에 의해 트랜지스터, 커패시터, 저항 등과 같은 소자 특성 또는 게이트 지연시간과 같은 회로 특성과 같은 많은 부분에서 차이가 발생한다. 이러한 차이로 인해 칩마다 서로 다른 비트 값을 가지게 되고, 이렇게 결정된 값은 난수 생성 장치와 달리 매번 생성될 때마다 동일한 값을 출력하므로 칩 고유의 정보로 활용된다. 생성되는 값은 칩 내부에서 생성되는 값이므로 외부의 조작 없이 자체적으로 데이터 생성이 가능하여 칩 외부로의 유출을 근본적으로 차단할 수 있는 장점이 있다. 또한, 물리적 보안 공격에 대해서도 PUF 값을 읽기 어렵다.The information 152 of the chip may be a Physical Unclonable Function (PUF) value of the chip constituting the AMI device 100. The PUF value refers to a random digital value that is difficult to predict in a chip by using process deviations generated in a semiconductor manufacturing process. PUF values cannot be duplicated because hardware-predictable values are output. In general, the same circuit and the same mask layout, even in the same process, due to the process deviation occurs due to the characteristics of the semiconductor manufacturing process, the difference in many parts such as device characteristics such as transistors, capacitors, resistors, or circuit characteristics such as gate delay time Occurs. Due to this difference, each chip has a different bit value, and unlike the random number generator, the determined value outputs the same value every time it is used as chip-specific information. Since the generated value is generated inside the chip, it is possible to generate data on its own without any external manipulation, and thus has an advantage of fundamentally preventing leakage to the outside of the chip. It is also difficult to read the PUF value for physical security attacks.

회로점검 정보(153)는 센서(110)의 전압신호, 필터, ADC(122) 및 중앙처리부(123)로 이어지는 신호 흐름에 대한 이상 유무의 정보일 수 있다. 회로점검은 외부에서 자기 왜란을 가하거나 필터부에 여러 수동소자를 추가로 설치하여 검침 되는 값을 인위로 조작하거나 관리부실 및 노후화 등으로 해당 부분의 고장 발생을 자가 진단하기 위한 것일 수 있다. 이를 위해, 레퍼런스 회로(130)는 고정 또는 미리 결정된 가변 전압 신호 즉, 레퍼런스 신호를 생성할 수 있다. 레퍼런스 회로(130)는 레퍼런스 신호를 스위치(121)로 전송하고, 스위치(121)는 상기 레퍼런스 신호를 통과시킬 수 있다. 이때, 중앙처리부(123)는 스위치(121)가 검증 모드로 동작하도록 제어 신호를 보내고, 이에 따라 스위치(121)는 상기 검증 모드로 동작하여 상기 레퍼런스 신호를 통과시킬 수 있다.The circuit check information 153 may be information on whether there is an abnormality in the voltage signal of the sensor 110, the filter, the signal flow leading to the ADC 122, and the central processing unit 123. The circuit inspection may be for self-diagnosing the occurrence of a failure of the corresponding part due to artificial disturbance from the outside or by installing several passive elements in the filter unit to artificially manipulate the value to be read, or inadequate management and deterioration. To this end, the reference circuit 130 may generate a fixed or predetermined variable voltage signal, that is, a reference signal. The reference circuit 130 may transmit a reference signal to the switch 121, and the switch 121 may pass the reference signal. In this case, the CPU 123 may transmit a control signal to operate the switch 121 in the verify mode, and thus the switch 121 may operate in the verify mode to pass the reference signal.

도 5는 본 발명의 일 실시예에 따른 스위치의 모드 변경에 따른 통과시키는 전압 신호를 나타낸 도면이다. 도 5를 참조하면, 스위치(121)가 정상 모드일 경우, 상용 전압이 측정되고, 중앙처리부(123)의 제어 신호를 인해 스위치(121)가 검증 모드로 전환되면 상용 전압 신호는 막고, 레퍼런스 회로(130)의 레퍼런스 신호를 통과시키는 것을 알 수 있다.5 is a view showing a voltage signal to pass through the mode change of the switch according to an embodiment of the present invention. Referring to FIG. 5, when the switch 121 is in the normal mode, the commercial voltage is measured, and when the switch 121 is switched to the verify mode due to the control signal of the central processing unit 123, the commercial voltage signal is blocked and the reference circuit is performed. It can be seen that the reference signal of 130 passes.

중앙처리부(123)는 스위치(121)를 통과한 레퍼런스 신호의 결과값을 측정하고, 공장상태에서 레퍼런스 신호로 측정된 기록값과 비교할 수 있다. 그리고 중앙처리부(123)는 상기 결과값과 상기 기록값의 비교 결과가 오차범위 내에 있으면 오류로 오차범위를 벗어나면 정상으로 고장 여부를 판단하여 회로점검 정보에 포함할 수 있다. 또한, 중앙처리부(123)는 측정되는 파형의 왜곡 형태에 따른 이상 유형을 판단하여 회로점검 정보에 포함할 수 있다.The CPU 123 may measure a result value of the reference signal passing through the switch 121 and compare the result with the recording value measured as the reference signal in the factory state. If the result of comparison between the result value and the recorded value is within the error range, the central processing unit 123 may determine whether the failure is normal and include it in the circuit inspection information if the error is out of the error range. In addition, the central processing unit 123 may determine the type of abnormality according to the distortion type of the measured waveform and include it in the circuit inspection information.

도 6은 본 발명의 일 실시예에 따른 무결성 해시값을 생성하는 해시트리 구조를 나타낸 도면이다. 도 4 및 도 6을 참조하면, 중앙처리부(123)는 복수의 해시값으로 구성되는 해시트리(166) 구조를 생성할 수 있다. 상기 해시트리 구조는 하나 이상의 기저 정보를 기초로 각각 해시값을 생성하여 최종적으로 하나의 해시값을 생성하는 구조이다. 본 발명의 일 실시예에서 기저 정보는 펌웨어 정보(151), 칩의 정보(152) 및 회로점검 정보(153)일 수 있으며, 이들 정보를 각각 단계적으로 해시변환하여 최종적인 펌웨어 해시값(161), 칩 해시값(162) 및 고장진단 해시값(163)을 생성할 수 있다. 또한, 생성된 펌웨어 해시값(161), 칩 해시값(162) 및 고장진단 해시값(163)에 대해서도 해시트리 구조로 최종 해시값 즉, 무결성 해시값(165)을 생성할 수 있다. 중앙처리부(123)는 중앙처리부(123)는 펌웨어 해시값(161), 칩 해시값(162) 및 고장진단 해시값(163)을 동시에 생성하거나 미리 정해진 순서에 따라 따로 생성할 수 있다.6 is a diagram illustrating a hash structure for generating an integrity hash value according to an embodiment of the present invention. 4 and 6, the central processing unit 123 may generate a hash 166 structure composed of a plurality of hash values. The hash structure is a structure that finally generates one hash value by generating hash values based on one or more pieces of basis information. In one embodiment of the present invention, the basis information may be firmware information 151, chip information 152, and circuit check information 153, and the final firmware hash value 161 may be hash-converted step by step, respectively. The chip hash value 162 and the troubleshooting hash value 163 may be generated. In addition, the generated hash hash value 161, the chip hash value 162, and the fault diagnosis hash value 163 may generate the final hash value, that is, the integrity hash value 165, using the hash structure. The central processing unit 123 may generate the firmware hash value 161, the chip hash value 162, and the failure diagnosis hash value 163 simultaneously or separately according to a predetermined order.

일 실시예에 따라 펌웨어 정보(151)의 기저 정보는 디바이스 고유 ID 값, 펌웨어 버전 정보 및 IP/포트 정보이며, 칩의 정보(152)의 기저 정보는 중앙처리부 PUF 및 ADC PUF이고, 회로점검 정보(153)의 기저 정보는 고장코드일 수 있다. 위에서 언급한 것과 같이 각각의 상기 기저 정보는 다른 정보를 더 포함할 수도 있다. 중앙처리부(123)는 각각의 상기 기저정보에 따라 해시트리 구조로 펌웨어 해시값(161), 칩 해시값(162) 및 고장진단 해시값(163)을 생성할 수 있다. 도 6에 도시된 바와 같이, 중앙처리부(123)는 디바이스 고유 ID값(151a), 펌웨어 버전 정보(151b) 및 IP/포트 정보(151c)를 각각 해시변환하여 대응하는 해시값을 생성할 수 있다. 즉, 중앙처리부(123)는 디바이스 고유ID 값(151a)으로 0x6660AA0D...(161a)을, 펌웨어 버전 정보(151b)로 0x0CB21B56...(161b)을, IP/포트 정보(151c)로 0x3FB8AFE3...(161c)을 생성할 수 있다. 여기서, 해시값 길이는 따로 제한되지 않으며, 설명 편의상 앞 8자리를 표기하고 뒷자리는 생략하여 표기한다. 해시변환 함수로는 SHA-256 함수 등이 사용될 수 있고, 256bits 즉, 16진수로 64자리의 해시값이 생성될 수 있다.According to an embodiment, the basis information of the firmware information 151 is a device unique ID value, firmware version information, and IP / port information, and the basis information of the chip information 152 is a central processing unit PUF and an ADC PUF, and circuit check information. The basis information of 153 may be a fault code. As mentioned above, each of the basis information may further include other information. The CPU 123 may generate the firmware hash value 161, the chip hash value 162, and the failure diagnosis hash value 163 in the hash structure according to the basis information. As illustrated in FIG. 6, the CPU 123 may hash convert the device unique ID value 151a, the firmware version information 151b, and the IP / port information 151c, respectively, to generate a corresponding hash value. . That is, the central processing unit 123 sets 0x6660AA0D ... 161a as the device unique ID value 151a, 0x0CB21B56 ... (161b) as the firmware version information 151b, and 0x3FB8AFE3 as the IP / port information 151c. May generate ... 161c. Here, the hash value length is not particularly limited, and for convenience of description, the first 8 digits are indicated and the trailing digit is omitted. As the hash conversion function, a SHA-256 function may be used, and a 64-bit hash value may be generated in 256 bits, that is, in hexadecimal.

중앙처리부(123)는 생성된 0x6660AA0D...(161a)과 0x0CB21B56...(161b)를 기초로 0x33533960...(161d) 해시값을 생성할 수 있다. 그리고 중앙처리부(123)는 생성된 0x33533960...(161d)과 0x3FB8AFE3...(161c)을 기초로 0x26146AD2...(161e)을 생성할 수 있다. 생성된 0x26146AD2...(161e)는 펌웨어 정보(151)를 기초로 생성한 최종 해시값이며 도 4의 펌웨어 해시값(161)에 해당할 수 있다.The CPU 123 may generate a hash value of 0x33533960 ... (161d) based on the generated 0x6660AA0D ... (161a) and 0x0CB21B56 ... (161b). The CPU 123 may generate 0x26146AD2 ... 161e based on the generated 0x33533960 ... (161d) and 0x3FB8AFE3 ... (161c). The generated 0x26146AD2... 161e is a final hash value generated based on the firmware information 151 and may correspond to the firmware hash value 161 of FIG. 4.

이와 동일하게 중앙처리부(123)는 칩의 정보(152), 즉, 중앙처리부 PUF 값(152a)과 ADC PUF 값(152b)을 기초로 각각 해시변환하여 0x50F561B1...(162a)과 0x912E0459...(162b)을 생성할 수 있다. 그리고 중앙처리부(123)는 생성된 0x50F561B1...(162a)과 0x912E0459...(162b)를 기초로 해시변환하여 0x853E1B15...(162c)을 생성할 수 있고, 해당 0x853E1B15...(162c)은 칩 해시값(162)일 수 있다. 또한, 중앙처리부(123)는 고장코드 값(153a)을 기초로 해시변환하여 0xC3448CC4...(163a)을 생성할 수 있고, 생성된 0xC3448CC4...(163a)은 최종 고장진단 해시값(163)일 수 있다.Similarly, the central processing unit 123 performs hash conversion on the basis of the information 152 of the chip, that is, the central processing unit PUF value 152a and the ADC PUF value 152b, respectively, to 0x50F561B1 ... (162a) and 0x912E0459 .. 162b may be generated. The CPU 123 may generate 0x853E1B15 ... (162c) by hash conversion based on the generated 0x50F561B1 ... (162a) and 0x912E0459 ... (162b), and the corresponding 0x853E1B15 ... (162c). ) May be the chip hash value 162. In addition, the central processing unit 123 may generate 0xC3448CC4 ... (163a) by hash converting based on the fault code value 153a, and the generated 0xC3448CC4 ... (163a) is a final troubleshooting hash value (163). May be).

중앙처리부(123)는 생성된 펌웨어 해시값(161, 0x26146AD2...(161e)), 칩 해시값(162, 0x853E1B15...(162c))을 기초로 위변조 해시값(164, 0x17376195...(164a))을 생성할 수 있다. 이어서, 중앙처리부(123)는 생성된 위변조 해시값(164, 0x17376195...(164a))과 고장진단 해시값(163, 0xC3448CC4...(163a))을 기초로 무결성 해시값(165, 0xEE6F43F5...(165a))을 생성할 수 있다. 이처럼 기저 정보에서 각각의 해시값을 생성하여 단계적으로 압축하여 하나의 해시값을 생성하는 것을 해시트리구조라고하며, 중앙처리부(123)가 생성한 해시트리(166a)는 최종적으로 생성한 무결성 해시값(165, 0xEE6F43F5...(165a))이 펌웨어 정보(151), 칩의 정보(152) 및 회로점검 정보(153)를 포함하도록 생성되는 과정에 대한 정보일 수 있다.The central processing unit 123 generates a forgery hash value 164, 0x17376195 ... based on the generated firmware hash value 161, 0x26146AD2 ... (161e), and the chip hash value 162, 0x853E1B15 ... (162c). 164a). Subsequently, the central processing unit 123 generates the integrity hash values 165 and 0xEE6F43F5 based on the generated forgery hash values 164 and 0x17376195 ... (164a) and the fault diagnosis hash values 163 and 0xC3448CC4 ... (163a). ... 165a). In this way, each hash value is generated from the base information and compressed one by one to generate one hash value, and the hash matrix structure 166a generated by the central processing unit 123 is the integrity hash value finally generated. (165, 0xEE6F43F5 ... (165a)) may be information about a process generated to include firmware information 151, chip information 152, and circuit check information 153.

중앙처리부(123)는 생성된 무결성 해시값(165)을 AMI 디바이스(100)의 개인키 및 검증노드(200)의 공개키로 암호화하여 트랙잭션 데이터를 생성할 수 있다. 개인키 및 공개키는 하나의 쌍으로 이루어질 수 있다. 그리고 각각의 AMI 디바이스(100)와 검증노드(200)는 한 쌍의 개인키 및 공개키를 부여받을 수 있다.The central processing unit 123 may generate the transaction data by encrypting the generated integrity hash value 165 with the private key of the AMI device 100 and the public key of the verification node 200. The private key and the public key may consist of one pair. Each AMI device 100 and verification node 200 may be given a pair of private and public keys.

개인키는 의사난수생성기를 통해 256비트 크기의 무작위 랜덤값으로 생성될 수 있다. 일례로 16진수로 표현되는 개인키는 '1E99423A4ED2...6AEDD'와 같은 형태일 수 있다. 이와 쌍으로 생성된 개인키를 타원곡선 알고리즘에 입력하여 이에 대응하는 공개키를 생성할 수 있다. 개인키와 공개키 쌍이 생성되면 AMI 디바이스(100) 및 검증노드(200)에 할당되며, 공개키는 시스템에 참여하는 모든 참여자(노드)에게 공유될 수 있다.The private key may be generated as a random random value of 256 bits through the pseudo random number generator. For example, the private key expressed in hexadecimal can be in the form of '1E99423A4ED2 ... 6AEDD'. The private key generated in pairs may be input to an elliptic curve algorithm to generate a public key corresponding thereto. When the private key and the public key pair are generated, they are assigned to the AMI device 100 and the verification node 200, and the public key can be shared to all participants (nodes) participating in the system.

AMI 디바이스(100)의 개인키는 공장 출고 당시 AMI 디바이스(100)의 펌웨어에 삽입되거나 하드웨어 형태의 보안 모듈에 탑재될 수 있다. 출고할 때, 해당 개인키가 입력된 칩에 대한 락을 설정할 수 있고, 상기 락을 통해 AMI 디바이스(100)의 개인키를 외부 유출로부터 보호할 수 있다.The private key of the AMI device 100 may be inserted into the firmware of the AMI device 100 at the time of factory shipment or mounted on a security module in a hardware form. When shipped, a lock on a chip into which the corresponding private key is input may be set, and the private key of the AMI device 100 may be protected from external leakage through the lock.

암호화하는 과정을 더욱 자세히 설명하면, 중앙처리부(123)는 무결성 해시값(165)에 대해 AMI 디바이스 개인키(171a)를 이용하여 전자서명을 할 수 있다. 전자서명된 데이터에 대해 검증노드 공개키(172b)를 이용하여 한 번 더 암호화할 수 있다. 그리고 네트워크상에서 상호약속된 통신프로토콜을 이용하여 해당 데이터를 전송하기 위한 트랜잭션 데이터(181)를 생성할 수 있다.In more detail, the central processing unit 123 may digitally sign the integrity hash value 165 using the AMI device private key 171a. The digitally signed data may be encrypted once more using the verification node public key 172b. In addition, transaction data 181 for transmitting the corresponding data may be generated using a communication protocol mutually agreed on the network.

통신모듈(140)은 트랜잭션 데이터(181)를 검증을 요청한 검증노드(200)에 전송할 수 있다.The communication module 140 may transmit the transaction data 181 to the verification node 200 requesting verification.

도 7은 본 발명의 일 실시예에 따른 블록체인 노드의 무결성 검증 처리 절차를 나타낸 도면이다. 도 7을 참조하면, AMI 디바이스(100)가 전송한 트랜잭션은 도 3에 도시된 검증노드(200)가 수신할 수 있다. 검증노드(200)는 전송된 트랜잭션 데이터(181)를 검증노드 개인키(172a)로 복호화를 할 수 있다. 그리고 검증노드(200)는 복호화된 데이터를 AMI 디바이스 공개키(171b)를 이용하여 전자 서명을 확인하여 AMI 디바이스(100)가 전송한 데이터임을 확인할 수 있다. 검증노드 개인키(172a) 및 AMI 디바이스 공개키(171b)로 복호화한 데이터는 무결성 해시값(165)일 수 있다.7 is a diagram illustrating an integrity verification processing procedure of a blockchain node according to an embodiment of the present invention. Referring to FIG. 7, the verification node 200 illustrated in FIG. 3 may receive a transaction transmitted by the AMI device 100. The verification node 200 may decrypt the transmitted transaction data 181 with the verification node private key 172a. The verification node 200 may verify the electronic signature using the AMI device public key 171b to confirm that the decrypted data is the data transmitted by the AMI device 100. The data decrypted by the verification node private key 172a and the AMI device public key 171b may be an integrity hash value 165.

검증노드(200)는 복호화된 무결성 해시값(165)과 출고 시 미리 등록된 AMI 디바이스(100)의 순수 무결성 해시값(이하, 참조 해시값(167))과 비교할 수 있다. 비교 완료된 결과 데이터를 블록체인 분산원장에 기록하기 위해서, 검증노드(200)는 비교한 결과값에 대해 검증노드 개인키(172a)로 암호화하는 결과서명을 할 수 있고, 네트워크상에서 상호약속된 통신프로토콜을 이용하여 해당 결과 데이터를 전송하기 위한 결과 트랜잭션 데이터(182)를 생성할 수 있다. 검증노드(200)는 생성된 결과 트랜잭션 데이터(182)를 도 3에 도시된 하나 이상의 블록생성노드(300)에 전송할 수 있다. 각 블록생성노드(300)는 일정 시간 동안 다른 노드로부터 전달받은 다른 목적의 미포함 트랜잭션(183) 더 전송받은 후 합의 알고리즘에 따른 블록생성규칙에 따라 블록(220)을 생성할 수 있다.The verification node 200 may compare the decrypted integrity hash value 165 with a pure integrity hash value (hereinafter, referred to as a reference hash value 167) of the AMI device 100 registered at the factory. In order to record the comparison result data in the blockchain distributed ledger, the verification node 200 can sign the result of encrypting the comparison result with the verification node private key 172a, and mutually agreed communication protocol on the network. The result transaction data 182 for transmitting the result data can be generated using the. The verification node 200 may transmit the generated transaction data 182 to one or more block generation nodes 300 illustrated in FIG. 3. Each block generation node 300 may further generate a block 220 according to a block generation rule according to a consensus algorithm after further receiving a transaction 183 of another purpose not received from another node for a predetermined time.

여기서, 합의 알고리즘은 작업증명(PoW, Proof of Work), 균형작업증명(ePoW, equilibrium Proof of Work), 이중작업증명(DPoW, Dual Proof of Work), 지분증명(PoS, Proof of Stake), 우로보로스 지분증명(OPoS, Ouroboros Proof of Stake), 리스지분증명(LPoS, Leased Proof of Stake), 위임지분증명(DPoS, Delegated Proof of Stake), 이중위임지분증명(DDPoS, Dual Delegated Proof of Stake), 하이퍼 위임지분증명(Hyper-DPoS), 포뮬레이션증명(PoF, Proof of Formulation), 포크능력증명(PoF, Proof of Forkability), 활동증명(PoA, Proof of Activity), 트레이딩증명(PoT, Proof of Trading), 소각증명(PoB, Proof of Burn), 두뇌증명(PoB; Proof of Brain), 중요도증명(PoI, Proof of Importance), 신뢰성증명(PoB, Proof of Believability), 흐름증명(PoF, Proof of Flow), 권위증명(PoA, Proof of Authority), 저장증명(PoS; Proof of Storage) ,공간증명(Proof of Space), 경과시간증명(PoET, Proof of Elapsed Time) 및 프랙티컬 비잔틴 장애 허용(PBFT, Practical Byzantine Fault Tolerance) 중 하나를 이용할 수 있다.Here, the consensus algorithms are Proof of Work (PoW), Equilibrium Proof of Work (ePoW), Dual Proof of Work (DPoW), Proof of Stake (PoS) Ouroboros Proof of Stake (OPoS), Leased Proof of Stake (LPoS), Delegated Proof of Stake (DPoS), Dual Delegated Proof of Stake (DDPoS), Hyper-DPoS, Proof of Formulation, Proof of Forkability, Proof of Activity, ProTof Proof of Trading ), Proof of Burn (PoB), Proof of Brain (PoB), Proof of Importance (PoI), Proof of Believability (PoB), Proof of Flow (PoF) ), Proof of Authority (PoA), Proof of Storage (PoS), Proof of Space, Proof of Elapsed Time (PoET) and Rack tikeol can use one of Byzantine fault tolerance (PBFT, Practical Byzantine Fault Tolerance).

생성한 블록(220)은 도 3에 도시된 블록체인 노드 네트워크를 구성하는 하나 이상의 일반노드(400)로 전파할 수 있다. 블록(220)을 전파받은 각 일반노드(400)는 이전에 기록된 블록과 체인구조를 형성할 수 있고, 체인구조가 형성되면 블록체인 시스템에 해당 정보 기록이 완료될 수 있다. 이때, 각 일반노드(400)는 전파된 결과 데이터를 조회할 수 있다. 일반노드(400)는 조회한 결과 데이터가 일치한 결과값이면, 해당 AMI 디바이스(100)를 신뢰 디바이스로 규정하고 연결을 유지할 수 있다. 조회한 결과 데이터가 불일치 결과값이면 해당 AMI 디바이스(100)를 신뢰할 수 없는 디바이스로 규정하고 해당 AMI 디바이스(100)와 연결을 중단할 수 있고, 상기 결과 데이터의 내용을 관리시스템으로 전송하거나 알람을 줄 수 있다. 상기 관리시스템은 원격 또는 직접 AMI 디바이스(100)에 접근하여 해시트리를 분석하고 원인을 파악하여 조치할 수 있다.The generated block 220 may propagate to one or more general nodes 400 constituting the blockchain node network shown in FIG. 3. Each general node 400 propagating the block 220 may form a chain structure with a previously recorded block, and when the chain structure is formed, recording of corresponding information may be completed in the blockchain system. At this time, each general node 400 may query the propagated result data. The general node 400 may define the AMI device 100 as a trusted device and maintain the connection if the search result data is a matched result value. If the result of the inquiry is a mismatched result, the AMI device 100 may be defined as an untrusted device and the connection with the AMI device 100 may be stopped, and the contents of the result data may be transmitted to the management system or an alarm may be sent. Can give The management system may access the AMI device 100 remotely or directly, analyze the data, determine the cause, and take action.

도 8은 본 발명의 일 실시예에 따른 변조된 해시트리 구조를 나타낸 도면이다. 도 8을 참조하면, 해시트리(166a)의 최종 해시값(루트 해시값)은 하나의 가저 해시값 변화에도 최종 해시값 전체가 변경될 수 있다. 도 8에 도시된 일례는 도 6에 도시된 중앙처리부 PUF 값(152a, 0xAC048B64)이 어떠한 이유로 인해 0xAC048B65(152c)로 변경된 경우이다. 이 경우, 해시트리 구조에 따라 검증노드(200)로 전송되는 최종 해시값, 즉, 도 6의 무결성 해시값(165, 0xEE6F43F5?)이 도 8과 같이 0x4BA1AAD1...(165b)로 변경되어 전송될 수 있다. 검증노드(200)는 참조 해시값(167)과의 전송된 무결성 해시값(165b)의 비교를 통해 불일치 결과 데이터를 결과 트랜잭션 데이터(182)로 생성하여 블록생성노드(300)로 전송하고, 블록생성노드(300)는 불일치 결과 데이터가 포함된 블록(220)을 복수의 일반노드(400)에 전파할 수 있다. 복수의 일반노드(400)는 조회한 결과 데이터가 불일치 결과값이므로, 해당 AMI 디바이스(100)를 신뢰할 수 없는 디바이스로 규정하고 연결을 중단할 수 있다. 이후, 관리시스템은 원인을 파악하기 위해 전송된 해시트리(166b)를 분석할 수 있다.8 is a diagram illustrating a modulated hashite structure according to an embodiment of the present invention. Referring to FIG. 8, the final hash value (root hash value) of the hash 166a may be changed by the entire hash value even with one change of the hash value. An example shown in FIG. 8 is a case where the central processing unit PUF values 152a and 0xAC048B64 shown in FIG. 6 are changed to 0xAC048B65 152c for some reason. In this case, the final hash value transmitted to the verification node 200 according to the hash structure, that is, the integrity hash values 165 and 0xEE6F43F5? Of FIG. 6 is changed to 0x4BA1AAD1 ... (165b) as shown in FIG. 8 and transmitted. Can be. The verification node 200 generates inconsistent result data as the result transaction data 182 through the comparison of the transmitted integrity hash value 165b with the reference hash value 167, and transmits the result to the block generation node 300. The generating node 300 may propagate the block 220 including the mismatch result data to the plurality of general nodes 400. Since the plurality of general nodes 400 query result data are inconsistent result values, the general node 400 may define the corresponding AMI device 100 as an untrusted device and stop the connection. The management system can then analyze the transmitted hash 166b to determine the cause.

AMI 디바이스(100)에서 검증노드(200)로 전송하는 트랜잭션 데이터(181)에는 최종 해시값(무결성 해시값(165))과 더불어 최종 해시값이 생성되는 과정인 해시트리도 포함될 수 있다. 관리시스템은 불일치 판정을 받은 최종 해시값의 해시트리(166b)와 참조 해시값(167)의 해시트리(166a)를 상위에서부터 단계적으로 비교하면서 분석할 수 있다. 상위에서부터 불일치 해시값을 추적하며 최종 해시값(0x4BA1AAD1...(165b))이 변경된 이유와 유형을 분석할 수 있다. 도 8에 도시된 경우에는 관리시스템이 무결성 해시값(165b, 0x4BA1AAD1...), 위변조 해시값(164b, 0x562EC6AE...), 칩 해시값(162e, 0x702AE534...), 중앙처리부 PUF 해시값(162d, 0xA086ABE6...), 중앙처리부 PUF 값(152c, 0xAC048B65)으로 추적할 수 있으며, 중앙처리부(123)에서 위변조된 상황이 발생했다고 인지할 수 있고, 이에 대해 대응할 수 있다.The transaction data 181 transmitted from the AMI device 100 to the verification node 200 may include a hash data which is a process of generating a final hash value as well as a final hash value (integrity hash value 165). The management system can analyze the hash hash 166b of the final hash value that has been determined to be inconsistency and the hash 166a of the reference hash value 167 by comparing them from the top step by step. You can track inconsistent hash values from the top and analyze why and the type of the final hash values (0x4BA1AAD1 ... (165b)) has changed. In the case shown in Figure 8, the management system is the integrity hash value (165b, 0x4BA1AAD1 ...), the forgery hash value (164b, 0x562EC6AE ...), chip hash value (162e, 0x702AE534 ...), central processing unit PUF hash Value 162d, 0xA086ABE6 ..., central processing unit PUF values 152c, 0xAC048B65, and it can be recognized that a forged situation has occurred in the central processing unit 123 and can respond to it.

본 발명의 일 실시예에 따른 AMI 디바이스 및 AMI 디바이스 무결성 시스템은 AMI의 각각의 기저 정보를 기초로 생성한 해시값과 각 해시값의 최종 해시값을 참조 해시값(순수 무결성 해시값)과 비교하여 일치 여부를 확인하므로 상기 AMI 디바이스의 공장 초기 무결성을 보장할 수 있다. 또한, 상기 각 기저 정보를 각각의 해시 트리를 이용해 압축하여 전송하고 비교하여, 상기 AMI 디바이스와 상기 검증 노드의 연산 부하도 줄일 수 있다. 또한, 해시 변환은 역과정이 불가능하므로, 해시값의 유출로 인한 보안 우려도 불식할 수 있고, 상기 각 기저 정보는 펌웨어 정보, 칩의 정보 및 회로점검 정보를 포함하므로 소프트웨어단의 무결성 뿐만 아니라 하드웨어단의 무결성도 동시에 보장할 수 있다.According to an embodiment of the present invention, an AMI device and an AMI device integrity system compare a hash value generated based on respective basis information of an AMI with a final hash value of each hash value with reference hash values (pure integrity hash values). By checking the match, the factory initial integrity of the AMI device can be guaranteed. In addition, the basis information may be compressed, transmitted, and compared using each hash tree, thereby reducing the computational load of the AMI device and the verification node. In addition, since the hash conversion cannot be reversed, security concerns due to the leakage of the hash value can be eliminated, and each basis information includes firmware information, chip information, and circuit check information. The integrity of the stage can also be guaranteed at the same time.

또한, 블록체인을 통해 데이터베이스를 관리하므로 데이터의 무결성은 블록체인을 구성하는 참여자들의 합의 알고리즘에 의해 무결성이 보장될 수 있다.In addition, since the database is managed through the blockchain, the integrity of the data can be guaranteed by the consensus algorithm of the participants of the blockchain.

따라서, 본 발명의 일 실시예에 따른 AMI 디바이스 및 AMI 디바이스 무결성 시스템은 AMI의 소프트웨어 및 하드웨어 층으로부터 AMI 디바이스에서 수신하여 무결성을 검증하는 층 그리고 데이터를 관리하는 데이터베이스층까지 무결성을 보장할 수 있으므로, 신뢰성이 핵심인 지능형 전력망에 적절할 수 있다.Therefore, the AMI device and the AMI device integrity system according to an embodiment of the present invention can ensure the integrity from the software and hardware layer of the AMI to the layer received from the AMI device to verify the integrity and the database layer to manage data, It may be appropriate for intelligent power grids where reliability is key.

이하, 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법에 대해서 설명하기로 한다. 상기 AMI 디바이스 무결성 검증 방법은 AMI 디바이스 무결성 검증 시스템과 유사하므로 간략히 언급하기로 한다.Hereinafter, an AMI device integrity verification method according to an embodiment of the present invention will be described. Since the AMI device integrity verification method is similar to the AMI device integrity verification system, it will be briefly described.

도 9는 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법의 흐름도이다. 도 9를 참조하면, 블록체인을 이용하여 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스의 무결성을 검증하는 방법은 상기 AMI 디바이스의 칩의 정보를 포함하는 하드웨어 정보에 기초하여 무결성 해시값을 생성하는 단계(S910), 상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 블록체인의 검증노드의 공개키로 암호화하는 단계(S920), 암호화한 상기 무결성 해시값을 기초로 통신프로토콜에 따른 트랜잭션 데이터를 생성하여 상기 검증노드로 전송하는 단계(S930), 상기 트랜잭션 데이터를 상기 검증노드의 개인키 및 상기 AMI 디바이스의 공개키로 복호화하여 상기 무결성 해시값으로 변환하는 단계(S940), 상기 AMI 디바이스의 참조 해시값과 비교한 결과 데이터를 상기 검증노드의 개인키로 암호화하는 단계(S950) 및 암호화한 상기 결과 데이터를 기초로 통신프로토콜에 따른 결과 트랜잭션 데이터를 생성하여 상기 블록체인의 하나 이상의 블록생성노드에 전송하는 단계(S960)을 포함할 수 있다.9 is a flowchart of a method for verifying AMI device integrity according to an embodiment of the present invention. Referring to FIG. 9, a method of verifying an integrity of an advanced metering infrastructure (AMI) device for metering power using a blockchain includes generating an integrity hash value based on hardware information including information of a chip of the AMI device. In step S910, encrypting the integrity hash value with a private key of the AMI device and a public key of a verification node of the blockchain, in step S920, generating transaction data according to a communication protocol based on the encrypted integrity hash value. Transmitting to the verification node (S930), decrypting the transaction data with the private key of the verification node and the public key of the AMI device, and converting the transaction data into the integrity hash value (S940), and the reference hash value of the AMI device. Encrypting the result data with the private key of the verification node (S950) and encrypting the result data. Based on the site to create a transaction result data in accordance with the communication protocol it may include a step (S960) of transmitting the at least one block generated node of the chain block.

도 10은 본 발명의 일 실시예에 따른 무결성 해시값을 생성하는 단계를 나타낸 흐름도이다. 도 10을 참조하면, S910 단계는 펌웨어 정보를 기초로 펌웨어 해시값을 생성하는 단계(S911), 칩의 정보를 기초로 칩 해시값을 생성하는 단계(S912) 및 회로점검 정보를 기초로 고장진단 해시값을 생성하는 단계(S913)를 포함할 수 있으며, 상기 S911, S912 및 S913 단계는 동시에 실행되거나 따로 실행될 수 있다.10 is a flowchart illustrating a step of generating an integrity hash value according to an embodiment of the present invention. Referring to FIG. 10, in step S910, a firmware hash value is generated based on firmware information (S911), a chip hash value is generated based on chip information (S912), and a fault diagnosis is performed based on circuit check information. The method may include generating a hash value (S913), and the steps S911, S912, and S913 may be executed simultaneously or separately.

상기 칩의 정보(152)는 상기 칩의 PUF 값을 포함할 수 있다.The information 152 of the chip may include a PUF value of the chip.

또한, 상기 펌웨어 해시값과 상기 칩 해시값을 이용하여 위변조 해시값을 생성하는 단계(S914) 및 상기 위변조 해시값과 상기 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성하는 단계(S915)를 더 포함할 수 있다.In addition, the step of generating a forgery hash value using the firmware hash value and the chip hash value (S914) and the step of generating the integrity hash value using the forgery hash value and the failure diagnosis hash value (S915) It may further include.

도 11은 본 발명의 일 실시예에 따른 비대칭키를 이용해 암호화하는 단계를 나타낸 흐름도이다. 도 11을 참조하면, 상기 AMI 디바이스의 개인키로 상기 무결성 해시값을 암호화하여 서명값으로 변환하는 단계(S931) 및 상기 서명값을 상기 검증노드의 공개키로 암호화하여 상기 트랜잭션 데이터를 생성하는 단계(S932)를 포함할 수 있다.11 is a flowchart illustrating a process of encrypting using an asymmetric key according to an embodiment of the present invention. Referring to FIG. 11, encrypting the integrity hash value with a private key of the AMI device and converting the integrity hash value into a signature value (S931) and generating the transaction data by encrypting the signature value with a public key of the verification node (S932). ) May be included.

도 12는 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법의 흐름도이다. 도 12를 참조하면, 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법은 합의 알고리즘에 따른 블록생성규칙으로 블록을 생성하고, 생성한 상기 블록을 하나 이상의 상기 블록체인의 노드에 전파하는 단계(S970)를 포함한다.12 is a flowchart of a method for verifying AMI device integrity according to an embodiment of the present invention. Referring to FIG. 12, the AMI device integrity verification method according to an embodiment of the present invention may include generating a block by a block generation rule according to a consensus algorithm and propagating the generated block to one or more nodes of the blockchain ( S970).

상기 결과 데이터를 확인하는 단계(S980)에서 상기 결과 데이터가 일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 유지하는 단계(S991) 또는 상기 결과 데이터가 불일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 중단하는 단계(S992)를 더 포함할 수 있다.If the result data is a matching result value in the step of checking the result data (S980), each blockchain node maintains communication with the AMI device (S991) or if the result data is a mismatch result value, the respective The blockchain node may further include a step (S992) of stopping communication with the AMI device.

본 명세서에 기재된 다양한 실시예들은 하드웨어, 미들웨어, 마이크로코드, 소프트웨어 및/또는 이들의 조합에 의해 구현될 수 있다. 예를 들어, 다양한 실시예들은 하나 이상의 주문형 반도체(ASIC)들, 디지털 신호 프로세서(DSP)들, 디지털 신호 프로세싱 디바이스(DSPD)들, 프로그램어블 논리 디바이스(PLD)들, 필드 프로그램어블 게이트 어레이(FPGA)들, 프로세서들, 컨트롤러들, 마이크로컨트롤러들, 마이크로프로세서들, 여기서 제시되는 기능들을 수행하도록 설계되는 다른 전자 유닛들 또는 이들의 조합 내에서 구현될 수 있다.Various embodiments described herein can be implemented by hardware, middleware, microcode, software, and / or combinations thereof. For example, various embodiments may include one or more application specific semiconductors (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs). ), Processors, controllers, microcontrollers, microprocessors, other electronic units designed to perform the functions presented herein, or a combination thereof.

또한, 예를 들어, 다양한 실시예들은 명령들을 포함하는 컴퓨터-판독가능한 매체에 수록되거나 인코딩될 수 있다. 컴퓨터-판독가능한 매체에 수록 또는 인코딩된 명령들은 프로그램 가능한 프로세서 또는 다른 프로세서로 하여금 예컨대, 명령들이 실행될 때 방법을 수행하게끔 할 수 있다. 컴퓨터-판독가능한 매체는 컴퓨터 저장 매체 및 하나의 장소로부터 다른 장소로 컴퓨터 프로그램의 이송을 용이하게 하는 임의의 매체를 포함하는 통신 매체 모두를 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수도 있다. 예를 들어, 이러한 컴퓨터-판독가능한 매체는 RAM, ROM, EEPROM, CD-ROM 또는 기타 광학디스크 저장 매체, 자기 디스크 저장 매체 또는 기타 자기 저장 디바이스 또는 원하는 프로그램 코드를 컴퓨터에 의해 액세스가능한 명령들 또는 데이터 구조들의 형태로 반송하거나 저장하는데 이용될 수 있는 임의의 다른 매체를 포함할 수 있다.Also, for example, various embodiments may be embedded in or encoded on a computer-readable medium containing instructions. Instructions embedded in or encoded on a computer-readable medium may cause a programmable processor or other processor to perform a method, such as when the instructions are executed. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. The storage medium may be any available medium that can be accessed by a computer. For example, such computer-readable media may include RAM, ROM, EEPROM, CD-ROM, or other optical disk storage media, magnetic disk storage media or other magnetic storage device, or instructions or data accessible by a computer to a desired program code. It can include any other medium that can be used to carry or store in the form of structures.

이러한 하드웨어, 소프트웨어, 펌웨어 등은 본 명세서에 기술된 다양한 동작들 및 기능들을 지원하도록 동일한 디바이스 내에서 또는 개별 디바이스들 내에서 구현될 수 있다. 추가적으로, 본 발명에서 "~부"로 기재된 구성요소들, 유닛들, 모듈들, 컴포넌트들 등은 함께 또는 개별적이지만 상호 운용가능한 로직 디바이스들로서 개별적으로 구현될 수 있다. 모듈들, 유닛들 등에 대한 서로 다른 특징들의 묘사는 서로 다른 기능적 실시예들을 강조하기 위해 의도된 것이며, 이들이 개별 하드웨어 또는 소프트웨어 컴포넌트들에 의해 실현되어야만 함을 필수적으로 의미하지 않는다. 오히려, 하나 이상의 모듈들 또는 유닛들과 관련된 기능은 개별 하드웨어 또는 소프트웨어 컴포넌트들에 의해 수행되거나 또는 공통의 또는 개별의 하드웨어 또는 소프트웨어 컴포넌트들 내에 통합될 수 있다.Such hardware, software, firmware, etc. may be implemented within the same device or within separate devices to support the various operations and functions described herein. In addition, the components, units, modules, components, etc., described herein as "parts" may be implemented separately or separately as discrete but interoperable logic devices. The depiction of different features for modules, units, etc. is intended to highlight different functional embodiments and does not necessarily mean that they must be realized by individual hardware or software components. Rather, functionality associated with one or more modules or units may be performed by separate hardware or software components or integrated into common or separate hardware or software components.

특정한 순서로 동작들이 도면에 도시되어 있지만, 이러한 동작들이 원하는 결과를 달성하기 위해 도시된 특정한 순서, 또는 순차적인 순서로 수행되거나, 또는 모든 도시된 동작이 수행되어야 할 필요가 있는 것으로 이해되지 말아야 한다. 임의의 환경에서는, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 더욱이, 상술한 실시예에서 다양한 구성요소들의 구분은 모든 실시예에서 이러한 구분을 필요로 하는 것으로 이해되어서는 안되며, 기술된 구성요소들이 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키징될 수 있다는 것이 이해되어야 한다.Although the operations are shown in the drawings in a specific order, it should not be understood that these operations are performed in the specific order shown, or sequential order, to achieve the desired result, or that all illustrated actions need to be performed. . In some circumstances, multitasking and parallel processing may be advantageous. Moreover, the division of various components in the above-described embodiments should not be understood as requiring such division in all embodiments, and the described components are generally integrated together into a single software product or packaged into multiple software products. It should be understood that it can.

본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해서 정해져야 할 것이다.Although the present invention has been described with reference to the embodiments illustrated in the drawings, this is merely exemplary, and it will be understood by those skilled in the art that various modifications and equivalent other embodiments are possible. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

100: AMI 디바이스 110: 센서
121: 스위치 122: ADC
123: 중앙처리부 130: 레퍼런스 회로
140: 통신모듈 200: 검증노드
300: 블록생성노드 400: 일반노드
100: AMI device 110: sensor
121: switch 122: ADC
123: central processing unit 130: reference circuit
140: communication module 200: verification node
300: block generation node 400: general node

Claims (17)

무결성 검증이 가능한 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스로서,
하나 이상의 칩(Chip); 및
상기 하나 이상의 칩을 제어하는 중앙처리부를 포함하고,
상기 중앙처리부는, 상기 칩의 정보, 상기 AMI 디바이스의 펌웨어 정보 및 회로점검 정보를 포함하는 상기 AMI 디바이스의 하드웨어 정보에 기초하여 무결성 해시값을 생성하고 상기 무결성 해시값을 암호화한 트랜잭션 데이터를 전송하되,
상기 펌웨어 정보를 기초로 생성한 펌웨어 해시값 및 상기 칩의 정보를 기초로 생성한 칩 해시값을 이용하여 위변조 해시값을 생성하고,
상기 위변조 해시값과 상기 회로점검 정보를 기초로 생성한 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성하는 것인 AMI 디바이스.
Advanced Metering Infrastructure (AMI) device for meter reading with integrity verification.
One or more chips; And
A central processing unit for controlling the one or more chips,
The CPU may generate an integrity hash value based on hardware information of the AMI device including information of the chip, firmware information of the AMI device, and circuit check information, and transmit transaction data that encrypts the integrity hash value. ,
Generate a forgery hash value using a firmware hash value generated based on the firmware information and a chip hash value generated based on the chip information;
And generating the integrity hash value using the fault diagnosis hash value generated based on the forgery hash value and the circuit check information.
삭제delete 제1항에 있어서,
상기 중앙처리부는,
상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 AMI 디바이스와 네트워크로 연결된 검증노드의 공개키를 이용하여 암호화 하는 것인 AMI 디바이스.
The method of claim 1,
The central processing unit,
And encrypting the integrity hash value using a private key of the AMI device and a public key of a verification node networked with the AMI device.
제1항에 있어서,
상기 펌웨어 정보는,
상기 펌웨어의 버전 정보, 하나 이상의 파라미터 값 및 하나 이상의 기능에 대한 대표값 중 하나 이상을 포함하는 것인 AMI 디바이스.
The method of claim 1,
The firmware information,
And at least one of version information of the firmware, at least one parameter value, and at least one representative value for at least one function.
제1항에 있어서,
상기 칩의 정보는,
상기 칩의 PUF(Physical Unclonable Function) 값을 포함하는 것인 AMI 디바이스.
The method of claim 1,
The information of the chip,
AMI device comprising a Physical Unclonable Function (PUF) value of the chip.
삭제delete 제3항에 있어서,
상기 트랜잭션 데이터는,
상기 AMI 디바이스의 개인키로 상기 무결성 해시값을 암호화하여 서명값으로 변환하고, 상기 서명값을 상기 검증노드의 공개키로 암호화하여 생성하는 것인 AMI 디바이스.
The method of claim 3,
The transaction data,
Encrypting the integrity hash value with a private key of the AMI device, converting the integrity hash value into a signature value, and encrypting and generating the signature value with the public key of the verification node.
제1항에 있어서,
전력량을 측정하는 센서;
상기 센서가 측정한 전력 신호 또는 레퍼런스 신호를 선택적으로 통과시키는 스위치;
상기 스위치가 통과시킨 상기 전력 신호 또는 상기 레퍼런스 신호를 디지털 신호로 변환하여 상기 중앙처리부로 전송하는 ADC(Analog to Digital Converter); 및
상기 중앙처리부가 생성한 상기 트랜잭션 데이터를 전송하고 외부 제어 신호를 수신하는 통신모듈을 포함하는 것인 AMI 디바이스.
The method of claim 1,
A sensor measuring an amount of power;
A switch for selectively passing a power signal or a reference signal measured by the sensor;
An analog-to-digital converter (ADC) for converting the power signal or the reference signal passed by the switch into a digital signal and transmitting the digital signal to the central processing unit; And
And a communication module for transmitting the transaction data generated by the central processing unit and receiving an external control signal.
제8항에 있어서,
상기 AMI 디바이스는,
상기 스위치가 상기 전력 신호를 통과시키는 정상 모드 또는 상기 스위치가 상기 레퍼런스 신호를 통과시키는 검증 모드로 동작하고,
상기 검증 모드는 검증노드의 무결성 검증 요청에 대응한 상기 중앙처리부의 제어 신호에 따라 동작하는 것인 AMI 디바이스.
The method of claim 8,
The AMI device,
Operate in a normal mode in which the switch passes the power signal or in a verify mode in which the switch passes the reference signal,
The verification mode is an AMI device that operates according to the control signal of the central processing unit corresponding to the request for verifying the integrity of the verification node.
블록체인 기반의 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스의 무결성을 검증하는 AMI 디바이스 무결성 검증 시스템으로서,
중앙처리부를 포함하는 하나 이상의 상기 AMI 디바이스; 및
복수의 블록체인 노드로서, 각각이 하나 이상의 상기 AMI 디바이스 중 하나 이상과 네트워크로 연결되는 블록체인 노드;를 포함하고,
상기 AMI 디바이스의 상기 중앙처리부는, 상기 AMI 디바이스의 펌웨어 정보, 칩의 정보, 및 회로점검 정보에 기초하여 무결성 해시값을 생성하고, 상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 AMI 디바이스의 무결성 검증을 요청한 상기 블록체인 노드의 공개키를 이용해 암호화하여 상기 블록체인 노드에 트랜잭션 데이터로 전송하되,
상기 펌웨어 정보를 기초로 생성한 펌웨어 해시값 및 상기 칩의 정보를 기초로 생성한 칩 해시값을 이용하여 위변조 해시값을 생성하고,
상기 위변조 해시값과 상기 회로점검 정보를 기초로 생성한 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성하는 것인 AMI 디바이스 무결성 검증 시스템.
An AMI device integrity verification system that verifies the integrity of AMI (Advanced Metering Infrastructure) devices for blockchain-based power meter reading.
At least one AMI device including a central processing unit; And
A plurality of blockchain nodes, each blockchain node being connected to a network with one or more of one or more of the AMI devices;
The central processing unit of the AMI device generates an integrity hash value based on firmware information of the AMI device, chip information, and circuit inspection information, and generates the integrity hash value from the private key of the AMI device and the AMI device. Encrypts the public key of the blockchain node that has requested integrity verification and transmits the transaction data to the blockchain node,
Generate a forgery hash value using a firmware hash value generated based on the firmware information and a chip hash value generated based on the chip information;
And generating the integrity hash value by using the fault diagnosis hash value generated based on the forgery hash value and the circuit check information.
제10항에 있어서,
상기 블록체인 노드는,
상기 트랜잭션 데이터를 상기 블록체인 노드의 개인키 및 상기 AMI 디바이스의 공개키를 이용한 복호화로 상기 무결성 해시값으로 변환하고, 미리 저장된 상기 AMI 디바이스의 참조 해시값과 비교한 결과 데이터를 상기 블록체인 노드의 개인키를 이용하여 암호화한 결과 트랜잭션 데이터를 생성하며, 상기 결과 트랜잭션 데이터를 상기 블록체인 노드 중에서 블록생성노드에 전송하는 것인 AMI 디바이스 무결성 검증 시스템.
The method of claim 10,
The blockchain node,
The transaction data is converted into the integrity hash value by decryption using the private key of the blockchain node and the public key of the AMI device, and the result data is compared with a reference hash value of the AMI device previously stored. AMI device integrity verification system for generating transaction data as a result of encryption using a private key and transmitting the resulting transaction data to a block generation node among the blockchain nodes.
제11항에 있어서,
하나 이상의 상기 블록생성노드는,
합의 알고리즘에 따른 블록생성규칙으로 블록을 생성하고, 상기 블록을 상기 블록체인 노드에 전파하고,
각각의 상기 블록체인 노드는 상기 결과 데이터가 일치한 결과값이면, 상기 AMI 디바이스와 통신을 유지하고, 불일치 결과값이면 상기 AMI 디바이스와 통신을 중단하는 것인 AMI 디바이스 무결성 검증 시스템.
The method of claim 11,
One or more block generation nodes,
Generate a block with a block generation rule according to a consensus algorithm, propagate the block to the blockchain node,
Wherein each blockchain node maintains communication with the AMI device if the result data is a matched result, and stops communicating with the AMI device if it is a mismatched result.
블록체인을 이용하여 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스의 무결성을 검증하는 방법으로서,
상기 AMI 디바이스의 칩의 정보, 상기 AMI 디바이스의 펌웨어 정보 및 회로점검 정보를 포함하는 하드웨어 정보에 기초하여 무결성 해시값을 생성하는 제1 단계;
상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 블록체인의 검증노드의 공개키로 암호화하는 제2 단계;
상기 제2 단계에서 암호화한 상기 무결성 해시값을 기초로 통신프로토콜에 따른 트랜잭션 데이터를 생성하여 상기 검증노드로 전송하는 제3 단계;
상기 트랜잭션 데이터를 상기 검증노드의 개인키 및 상기 AMI 디바이스의 공개키로 복호화하여 상기 무결성 해시값으로 변환하는 제4 단계;
상기 AMI 디바이스의 참조 해시값과 비교한 결과 데이터를 상기 검증노드의 개인키로 암호화하는 제5 단계; 및
상기 제5 단계에서 암호화한 상기 결과 데이터를 기초로 통신프로토콜에 따른 결과 트랜잭션 데이터를 생성하여 상기 블록체인의 하나 이상의 블록생성노드에 전송하는 제6 단계를 포함하고,
상기 무결성 해시값을 생성하는 상기 제1 단계는,
상기 펌웨어 정보를 기초로 생성한 펌웨어 해시값 및 상기 칩의 정보를 기초로 생성한 칩 해시값을 이용하여 위변조 해시값을 생성하는 단계와,
상기 위변조 해시값과 상기 회로점검 정보를 기초로 생성한 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성하는 단계를 포함하는 것인 AMI 디바이스 무결성 검증 방법.
As a method of verifying the integrity of an advanced metering infrastructure (AMI) device for meter reading using a blockchain,
Generating an integrity hash value based on hardware information including chip information of the AMI device, firmware information of the AMI device, and circuit check information;
Encrypting the integrity hash value with a private key of the AMI device and a public key of a verification node of the blockchain;
A third step of generating transaction data according to a communication protocol based on the integrity hash value encrypted in the second step and transmitting the transaction data to the verification node;
A fourth step of decrypting the transaction data with the private key of the verification node and the public key of the AMI device and converting the transaction data into the integrity hash value;
A fifth step of encrypting data obtained by comparing the reference hash value of the AMI device with a private key of the verification node; And
A sixth step of generating result transaction data according to a communication protocol based on the result data encrypted in the fifth step and transmitting the result transaction data to one or more block generation nodes of the block chain;
The first step of generating the integrity hash value,
Generating a forgery hash value using a firmware hash value generated based on the firmware information and a chip hash value generated based on the information of the chip;
And generating the integrity hash value by using the fault diagnosis hash value generated based on the forgery hash value and the circuit check information.
제13항에 있어서,
합의 알고리즘에 따른 블록생성규칙으로 블록을 생성하고, 생성한 상기 블록을 하나 이상의 상기 블록체인의 노드에 전파하는 제7 단계를 포함하고,
상기 결과 데이터가 일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 유지하는 제8-1 단계; 또는
상기 결과 데이터가 불일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 중단하는 제8-2 단계를 더 포함하는 것인 AMI 디바이스 무결성 검증 방법.
The method of claim 13,
Generating a block with a block generation rule according to a consensus algorithm, and propagating the generated block to one or more nodes of the blockchain,
Step 8-1 of each blockchain node maintaining communication with the AMI device if the result data is a match result; or
If the result data is a mismatch result value, each blockchain node further comprises step 8-2 of stopping communication with the AMI device.
제13항에 있어서,
상기 하드웨어 정보는, 상기 AMI 디바이스의 펌웨어 정보 및 회로점검 정보를 더 포함하고
상기 제1 단계는,
상기 펌웨어 정보를 기초로 펌웨어 해시값, 상기 칩의 정보를 기초로 칩 해시값 및 상기 회로점검 정보를 기초로 고장진단 해시값을 생성하는 제1-1 단계;
상기 펌웨어 해시값과 상기 칩 해시값을 이용하여 위변조 해시값을 생성하는 제1-2 단계; 및
상기 위변조 해시값과 상기 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성하는 제1-3 단계를 포함하는 것인 AMI 디바이스 무결성 검증 방법.
The method of claim 13,
The hardware information further includes firmware information and circuit check information of the AMI device.
The first step,
Generating a fault diagnosis hash value based on the firmware hash value based on the firmware information, the chip hash value based on the information of the chip, and the circuit check information;
Generating a forgery hash value using the firmware hash value and the chip hash value; And
And generating the integrity hash value by using the forgery hash value and the failure diagnosis hash value.
제13항에 있어서,
상기 제3 단계는,
상기 AMI 디바이스의 개인키로 상기 무결성 해시값을 암호화하여 서명값으로 변환하는 제3-1 단계; 및
상기 서명값을 상기 검증노드의 공개키로 암호화하여 상기 트랜잭션 데이터를 생성하는 제3-2 단계를 포함하는 것인 AMI 디바이스 무결성 검증 방법.
The method of claim 13,
The third step,
A step 3-1 of encrypting the integrity hash value with a private key of the AMI device and converting the integrity hash value into a signature value; And
And encrypting the signature value with a public key of the verification node to generate the transaction data.
제13항에 있어서,
상기 칩의 정보는,
상기 칩의 PUF(Physical Unclonable Function) 값을 포함하는 것인 AMI 디바이스 무결성 검증 방법.
The method of claim 13,
The information of the chip,
AMI device integrity verification method comprising a PUF (Physical Unclonable Function) value of the chip.
KR1020190004120A 2019-01-11 2019-01-11 Ami device, integrity verification system and method thereof KR102054256B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190004120A KR102054256B1 (en) 2019-01-11 2019-01-11 Ami device, integrity verification system and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190004120A KR102054256B1 (en) 2019-01-11 2019-01-11 Ami device, integrity verification system and method thereof

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020190132258A Division KR102239683B1 (en) 2019-10-23 2019-10-23 Ami device, integrity verification system and method thereof

Publications (1)

Publication Number Publication Date
KR102054256B1 true KR102054256B1 (en) 2019-12-10

Family

ID=69002618

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190004120A KR102054256B1 (en) 2019-01-11 2019-01-11 Ami device, integrity verification system and method thereof

Country Status (1)

Country Link
KR (1) KR102054256B1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200087666A (en) * 2019-10-23 2020-07-21 주식회사 에너닷 Ami device, integrity verification system and method thereof
KR102287815B1 (en) 2021-02-26 2021-08-09 가이아스 주식회사 Safety reinforced IoT communication apparatus for remote automatic meter reading system
KR20210107456A (en) * 2020-02-24 2021-09-01 한국전자통신연구원 Power metering apparatus, power metering server and, power metering method base on block chain
KR20220000053A (en) 2020-06-25 2022-01-03 한전케이디엔주식회사 Apparatus and method for diagnosing ami facility failure based on artificial intelligence
KR20220089507A (en) 2020-12-21 2022-06-28 한전케이디엔주식회사 Apparatus and method for diagnosing ami facility failure through real-time complex event analysis
KR102442283B1 (en) * 2021-05-21 2022-09-13 한전케이디엔주식회사 Blockchain-based AMI device verification system and method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013502021A (en) * 2009-08-17 2013-01-17 サムスン エレクトロニクス カンパニー リミテッド Terminal remote management method and apparatus
KR101527353B1 (en) 2012-10-19 2015-06-09 한국전자통신연구원 Abnomal behavior detection system in smart grid advanced metering infrastructure network and method using the same
KR101621931B1 (en) * 2014-12-19 2016-05-17 한국인터넷진흥원 Power information transmitting and receiving system in the smart grid
KR101653148B1 (en) * 2009-11-30 2016-09-01 세진전자 주식회사 Security Apparatus For Remote Automatic Meter Reading System
KR20180037851A (en) * 2016-10-05 2018-04-13 한전케이디엔주식회사 Security method for smart grid system using block chain
KR101888629B1 (en) * 2017-10-31 2018-09-20 채령 The PUF-QRNG security terminal system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013502021A (en) * 2009-08-17 2013-01-17 サムスン エレクトロニクス カンパニー リミテッド Terminal remote management method and apparatus
KR101653148B1 (en) * 2009-11-30 2016-09-01 세진전자 주식회사 Security Apparatus For Remote Automatic Meter Reading System
KR101527353B1 (en) 2012-10-19 2015-06-09 한국전자통신연구원 Abnomal behavior detection system in smart grid advanced metering infrastructure network and method using the same
KR101621931B1 (en) * 2014-12-19 2016-05-17 한국인터넷진흥원 Power information transmitting and receiving system in the smart grid
KR20180037851A (en) * 2016-10-05 2018-04-13 한전케이디엔주식회사 Security method for smart grid system using block chain
KR101888629B1 (en) * 2017-10-31 2018-09-20 채령 The PUF-QRNG security terminal system

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200087666A (en) * 2019-10-23 2020-07-21 주식회사 에너닷 Ami device, integrity verification system and method thereof
KR102239683B1 (en) * 2019-10-23 2021-04-13 주식회사 에너닷 Ami device, integrity verification system and method thereof
KR20210107456A (en) * 2020-02-24 2021-09-01 한국전자통신연구원 Power metering apparatus, power metering server and, power metering method base on block chain
KR102559101B1 (en) * 2020-02-24 2023-07-25 한국전자통신연구원 Power metering apparatus, power metering server and, power metering method base on block chain
US11852664B2 (en) 2020-02-24 2023-12-26 Electronics And Telecommunications Research Institute Power metering apparatus, power metering server, and power metering method based on blockchain
KR20220000053A (en) 2020-06-25 2022-01-03 한전케이디엔주식회사 Apparatus and method for diagnosing ami facility failure based on artificial intelligence
KR20220089507A (en) 2020-12-21 2022-06-28 한전케이디엔주식회사 Apparatus and method for diagnosing ami facility failure through real-time complex event analysis
KR102287815B1 (en) 2021-02-26 2021-08-09 가이아스 주식회사 Safety reinforced IoT communication apparatus for remote automatic meter reading system
KR102442283B1 (en) * 2021-05-21 2022-09-13 한전케이디엔주식회사 Blockchain-based AMI device verification system and method

Similar Documents

Publication Publication Date Title
KR102054256B1 (en) Ami device, integrity verification system and method thereof
US11005290B2 (en) Electric grid control system based on peer-to-peer network
CN107925675B (en) Supply system and method for operating the same
Mohassel et al. A survey on advanced metering infrastructure and its application in smart grids
JP6719561B2 (en) Supply medium (eg, electricity) trading contract system
CN111177253A (en) Power big data protection method and system based on identity digital authentication
EP3513479A1 (en) System comprising an electrical producer arrangement
CN112733211A (en) Intelligent power grid data storage scheme based on block chain
Tian et al. Blockchain-based AMI framework for data security and privacy protection
CN112214544A (en) Ubiquitous power Internet of things edge data safe storage method based on permission block chain
KR102239683B1 (en) Ami device, integrity verification system and method thereof
Zuo et al. A blockchain-based IoT framework for oil field remote monitoring and control
Hao et al. Blockchain-Enabled Secure and Transparent Cross-Regional Model Updating and Sharing Approach in Smart Grid
He et al. Smart grid nontechnical loss detection based on power gateway consortium blockchain
Hahn et al. Oak Ridge National Laboratory Pilot Demonstration of an Attestation and Anomaly Detection Framework using Distributed Ledger Technology for Power Grid Infrastructure
Ariza et al. A blockchain solution for operational parameters monitoring platform for dc microgrids
Sheikh et al. Blockchain-based decentralized, flexible, and transparent energy market
US11481762B2 (en) Methods and apparatus for creating, tracking, and redeeming DLT-enabled digitized tokens from electricity generation
Pleier et al. Concept for a stepwise approach for an automated verification process of balancing services
Lazaroiu et al. Smart Contracts for Households Managed by Smart Meter Equipped with Blockchain and Chain 2
CN113780984B (en) Block chain-based power distribution website interaction system and interaction method
Wang et al. Research and system architecture design of dispatching data chain technology for load regulation and control
Mansour et al. Decentralized Private Peer-to-Peer Energy Trading using Public Blockchains
Detken et al. Security concept for gateway integrity protection within German smart grids
WO2022153375A1 (en) Data storage method, data storage program, and information processing device

Legal Events

Date Code Title Description
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant