KR20200087666A - Ami 디바이스와 ami 디바이스 무결성 검증 시스템 및 무결성 검증 방법 - Google Patents

Ami 디바이스와 ami 디바이스 무결성 검증 시스템 및 무결성 검증 방법 Download PDF

Info

Publication number
KR20200087666A
KR20200087666A KR1020190132258A KR20190132258A KR20200087666A KR 20200087666 A KR20200087666 A KR 20200087666A KR 1020190132258 A KR1020190132258 A KR 1020190132258A KR 20190132258 A KR20190132258 A KR 20190132258A KR 20200087666 A KR20200087666 A KR 20200087666A
Authority
KR
South Korea
Prior art keywords
hash value
integrity
ami
ami device
information
Prior art date
Application number
KR1020190132258A
Other languages
English (en)
Other versions
KR102239683B1 (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 KR1020190132258A priority Critical patent/KR102239683B1/ko
Publication of KR20200087666A publication Critical patent/KR20200087666A/ko
Application granted granted Critical
Publication of KR102239683B1 publication Critical patent/KR102239683B1/ko

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
    • 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
    • H04L2209/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • Storage Device Security (AREA)

Abstract

AMI 디바이스, AMI 디바이스 무결성 검증 시스템 및 무결성 검증 방법이 개시된다. 본 발명의 무결성 검증이 가능한 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스는 하나 이상의 칩(Chip) 및 상기 하나 이상의 칩을 제어하는 중앙처리부를 포함하고, 상기 중앙처리부는, 상기 칩의 정보를 포함하는 상기 AMI 디바이스의 하드웨어 정보에 기초하여 무결성 해시값을 생성하고 상기 무결성 해시값을 암호화한 트랜잭션 데이터를 전송한다.

Description

AMI 디바이스와 AMI 디바이스 무결성 검증 시스템 및 무결성 검증 방법{AMI DEVICE, INTEGRITY VERIFICATION SYSTEM AND METHOD THEREOF}
본 발명은 AMI 디바이스, AMI 디바이스의 무결성 검증 시스템 및 무결성 검증 방법으로서, 보다 구체적으로는, 원격으로 전력량을 검침하기 위한 AMI(Advanced Metering Infrastructure) 디바이스 및 상기 AMI 디바이스의 위변조와 고장 상황을 대비하기 위해 블록체인을 이용해 AMI 디바이스의 무결성을 검증하는 시스템과 방법에 관한 것이다.
AMI(Advanced Metering Infrastructure)는 기존 아날로그 검침기를 디지털화하고, 통신망에 연결하여 발전 및 수전단의 전력량을 실시간으로 측정, 분석하는 장치 및 시스템의 총칭이다. 이러한 AMI는 EMS(Energy Management System), ESS(Energy Storage System), VPP(Virtual Power Plant), P2P 전력 거래 등 지능형 전력망 구축을 위한 핵심 기술이다.
실제 전력에너지는 전력계통을 통해 최종 고객에게 배분된다. 상기 전력계통은 전력을 생산하는 발전설비와 송전선로 변전소, 배전선로 등의 송배전설비와 수송 배분된 전력을 일반 가정이나 공장에서 소비하기 위한 수전설비 등으로 구성된 시스템을 총칭한다.
상기 전력계통의 계통점들(이를테면, 발전소, 승압변전소, 1차 및 2차 강압 변전소, 변압기, 수전단 등)의 전력량은 AMI 디바이스를 통해 디지털 정보로 변환될 수 있다. 변환된 전력의 디지털 정보는 통신망을 통해 전파될 수 있다. 즉, 물리적인 전력의 경로와 전력의 디지털 정보의 경로는 다른 경로일 수 있다. 만약, AMI 디바이스를 통한 전력측정이 정확하지 않으면 실제 발전 및 소비 전력량과 네트워크상의 전력 정보가 불일치하게 되며, 이는 지능형 전력망의 신뢰도를 하락시키는 문제점을 발생시킬 수 있다.
최근, 이와 같은 신뢰도를 보장하기 위해 데이터 무결성이 중요한 이슈로 떠오르고 있다. 각 산업군에서는 데이터 무결성을 확보하기 위해 여러 기술 중 블록체인을 주목하고 있다. 흔히, 블록체인을 디지털 정보의 전송에 특화된 기술로 여겨지지만, 블록체인은, 블록체인 시스템에 등록된 데이터의 위변조에 대한 데이터 무결성을 시스템 전체가 보장하는 것이 특징이다.
이러한 이유로 각 산업군 시스템에 블록체인을 적용하려는 노력들이 진행되어 왔다. 그러나 종래의 블록체인을 적용한 시스템은 상위 시스템만 블록체인이 적용되었다. 전체 시스템에서 블록체인을 통해 유기적으로 연결되지 않으면, 블록체인이 적용되지 않은 부분의 데이터 무결성은 보장되지 않는다.
종래에 블록체인이 적용된 지능형 전력망의 경우도 상위시스템만 블록체인이 적용되고 있다. 지능형 전력망은 데이터의 신뢰성이 매우 중요하다. 종래와 같이 전체 시스템이 아닌 부분적인 블록체인의 적용은, 블록체인이 적용되지 않은 AMI 부분의 데이터 무결성을 블록체인이 보장할 수 없는 문제점이 발생한다.
KR 10-1527353 (2015. 06. 09.)
본 발명은 상술한 문제점을 해결하기 위한 것으로서, 하드웨어 정보를 블록체인화하여 펌웨어, 칩과 회로의 개조 및 고장 등에 대한 하드웨어 무결성을 보장하는 것에 그 목적이 있다.
또한, AMI 디바이스를 블록체인 시스템내에 구성하여 AMI 디바이스 시스템 전체의 무결성을 보장하는 것에 그 목적이 있다.
또한, 정상적인 전력 측정 정보를 블록체인화 하여 발생 가능한 물리적인 고장 및 전력 정보 위변조를 방지하는 것에 그 목적이 있다.
본 발명의 일 실시예에 따른 무결성 검증이 가능한 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스는 하나 이상의 칩(Chip) 및 상기 하나 이상의 칩을 제어하는 중앙처리부를 포함하고, 상기 중앙처리부는, 상기 칩의 정보를 포함하는 상기 AMI 디바이스의 하드웨어 정보에 기초하여 무결성 해시값을 생성하고 상기 무결성 해시값을 암호화한 트랜잭션 데이터를 전송할 수 있다.
또한, 상기 하드웨어 정보는 상기 AMI 디바이스의 펌웨어 정보 및 회로점검 정보 중 하나 이상을 더 포함할 수 있다.
또한, 상기 중앙처리부는 상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 AMI 디바이스와 네트워크로 연결된 검증노드의 공개키를 이용하여 암호화 할 수 있다.
또한, 상기 펌웨어 정보는 상기 펌웨어의 버전 정보, 하나 이상의 파라미터 값 및 하나 이상의 기능에 대한 대표값 중 하나 이상을 포함할 수 있다.
또한, 상기 칩의 정보는 상기 칩의 PUF(Physical Unclonable Function) 값을 포함할 수 있다.
또한, 상기 중앙처리부는 상기 펌웨어 정보를 기초로 생성한 펌웨어 해시값 및 상기 칩의 정보를 기초로 생성한 칩 해시값을 이용하여 위변조 해시값을 생성하고, 상기 위변조 해시값과 상기 회로점검 정보를 기초로 생성한 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성할 수 있다.
또한, 상기 트랜잭션 데이터는 상기 AMI 디바이스의 개인키로 상기 무결성 해시값을 암호화하여 서명값으로 변환하고, 상기 서명값을 상기 검증노드의 공개키로 암호화하여 생성할 수 있다.
또한, 상기 AMI 디바이스는 전력량을 측정하는 센서, 상기 센서가 측정한 전력 신호 또는 레퍼런스 신호를 선택적으로 통과시키는 스위치, 상기 스위치가 통과시킨 상기 전력 신호 또는 상기 레퍼런스 신호를 디지털 신호로 변환하여 상기 중앙처리부로 전송하는 ADC(Analog to Digital Converter) 및 상기 중앙처리부가 생성한 상기 트랜잭션 데이터를 전송하고 외부 제어 신호를 수신하는 통신모듈을 포함할 수 있다.
또한, 상기 AMI 디바이스는 상기 스위치가 상기 전력 신호를 통과시키는 정상 모드 또는 상기 스위치가 상기 레퍼런스 신호를 통과시키는 검증 모드로 동작하고, 상기 검증 모드는 상기 검증노드의 무결성 검증 요청에 대응한 상기 중앙처리부의 제어 신호에 따라 동작할 수 있다.
본 발명의 일 실시예에 따른 블록체인 기반의 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스의 무결성을 검증하는 AMI 디바이스 무결성 검증 시스템은 중앙처리부를 포함하는 하나 이상의 상기 AMI 디바이스 및 상기 AMI 디바이스와 네트워크로 연결되어 상기 AMI 디바이스의 무결성 검증을 요청하는 복수의 블록체인 노드를 포함하고, 상기 AMI 디바이스의 상기 중앙처리부는 상기 AMI 디바이스의 펌웨어 정보, 칩의 정보 및 회로점검 정보 중 하나 이상에 기초하여 무결성 해시값을 생성하고, 상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 블록체인 노드의 공개키를 이용해 암호화하여 상기 블록체인 노드에 트랜잭션 데이터로 전송할 수 있다.
또한, 상기 블록체인 노드는 상기 트랜잭션 데이터를 상기 블록체인 노드의 개인키 및 상기 AMI 디바이스의 공개키를 이용한 복호화로 상기 무결성 해시값으로 변환하고, 미리 저장된 상기 AMI 디바이스의 참조 해시값과 비교한 결과 데이터를 상기 블록체인 노드의 개인키를 이용하여 암호화한 결과 트랜잭션 데이터를 생성하며, 상기 결과 트랜잭션 데이터를 상기 블록체인 노드 중에서 블록생성노드에 전송할 수 있다.
또한, 하나 이상의 상기 블록생성노드는 합의 알고리즘에 따른 블록생성규칙으로 블록을 생성하고, 상기 블록을 상기 블록체인 노드에 전파하고, 각각의 상기 블록체인 노드는 상기 결과 데이터가 일치한 결과값이면, 상기 AMI 디바이스와 통신을 유지하고, 불일치 결과값이면 상기 AMI 디바이스와 통신을 중단할 수 있다.
본 발명의 일 실시예에 따른 블록체인을 이용하여 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스의 무결성을 검증하는 방법은 상기 AMI 디바이스의 칩의 정보를 포함하는 하드웨어 정보에 기초하여 무결성 해시값을 생성하는 제1 단계, 상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 블록체인의 검증노드의 공개키로 암호화하는 제2 단계, 상기 제2 단계에서 암호화한 상기 무결성 해시값을 기초로 통신프로토콜에 따른 트랜잭션 데이터를 생성하여 상기 검증노드로 전송하는 제3 단계, 상기 트랜잭션 데이터를 상기 검증노드의 개인키 및 상기 AMI 디바이스의 공개키로 복호화하여 상기 무결성 해시값으로 변환하는 제4 단계, 상기 AMI 디바이스의 참조 해시값과 비교한 결과 데이터를 상기 검증노드의 개인키로 암호화하는 제5 단계 및 상기 제5 단계에서 암호화한 상기 결과 데이터를 기초로 통신프로토콜에 따른 결과 트랜잭션 데이터를 생성하여 상기 블록체인의 하나 이상의 블록생성노드에 전송하는 제6 단계를 포함할 수 있다.
또한, 합의 알고리즘에 따른 블록생성규칙으로 블록을 생성하고, 생성한 상기 블록을 하나 이상의 상기 블록체인의 노드에 전파하는 제7 단계를 포함하고, 상기 결과 데이터가 일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 유지하는 제8-1 단계 또는 상기 결과 데이터가 불일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 중단하는 제8-2 단계를 더 포함할 수 있다.
또한, 상기 하드웨어 정보는, 상기 AMI 디바이스의 펌웨어 정보 및 회로점검 정보를 더 포함하고 상기 제1 단계는 상기 펌웨어 정보를 기초로 펌웨어 해시값, 상기 칩의 정보를 기초로 칩 해시값 및 상기 회로점검 정보를 기초로 고장진단 해시값을 생성하는 제1-1 단계, 상기 펌웨어 해시값과 상기 칩 해시값을 이용하여 위변조 해시값을 생성하는 제1-2 단계 및 상기 위변조 해시값과 상기 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성하는 제1-3 단계를 포함할 수 있다.
또한, 상기 제3 단계는 상기 AMI 디바이스의 개인키로 상기 무결성 해시값을 암호화하여 서명값으로 변환하는 제3-1 단계 및 상기 서명값을 상기 검증노드의 공개키로 암호화하여 상기 트랜잭션 데이터를 생성하는 제3-2 단계를 포함할 수 있다.
또한, 상기 칩의 정보는 상기 칩의 PUF(Physical Unclonable Function) 값을 포함할 수 있다.
본 발명의 일 실시예에 따른 AMI 디바이스, AMI 디바이스 무결성 검증 시스템 및 무결성 검증 방법은 하드웨어 정보를 블록체인화하여 펌웨어, 칩과 회로의 개조 및 고장 등에 대한 하드웨어 무결성을 보장할 수 있다.
또한, AMI 디바이스를 블록체인 시스템내에 구성하여 AMI 디바이스 시스템 전체의 무결성을 보장할 수 있다.
또한, 정상적인 전력 측정 정보를 블록체인화 하여 발생 가능한 물리적인 고장 및 전력 정보 위변조를 방지할 수 있다.
도 1은 본 발명의 일 실시예에 따른 수용가 측에 설치된 AMI 디바이스를 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 AMI 디바이스의 구성을 나타낸 블록도이다.
도 3은 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 시스템의 대략적인 구성을 나타낸 블록도이다.
도 4는 본 발명의 일 실시예에 따른 AMI 디바이스의 무결성 검증 처리 절차를 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따른 스위치의 모드 변경에 따른 통과시키는 전압 신호를 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 무결성 해시값을 생성하는 해시트리 구조를 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 블록체인 노드의 무결성 검증 처리 절차를 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 따른 변조된 해시트리 구조를 나타낸 도면이다.
도 9는 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법의 흐름도이다.
도 10은 본 발명의 일 실시예에 따른 무결성 해시값을 생성하는 단계를 나타낸 흐름도이다.
도 11은 본 발명의 일 실시예에 따른 비대칭키를 이용해 암호화하는 단계를 나타낸 흐름도이다.
도 12는 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법의 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예가 상세하게 설명된다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고, 도면에서 본 발명의 실시예를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략되었다.
본 명세서에서 사용된 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도로 사용된 것이 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다.
본 명세서에서, "포함하다", "가지다" 또는 "구비하다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것으로서, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해될 수 있다.
또한, 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 기술되고, 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있다. 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리 범위에 포함된다.
또한, 이하의 실시예들은 당 업계에서 평균적인 지식을 가진 자에게 보다 명확하게 설명하기 위해서 제공되는 것으로서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 첨부된 도면을 참조하여, 본 발명에 따른 바람직한 실시예에 대하여 설명한다.
도 1은 본 발명의 일 실시예에 따른 수용가 측에 설치된 AMI 디바이스를 나타낸 도면이다. 도 1에 도시된 AMI 디바이스(100)는 전력 공급자 라인에서 수용가 측으로 접속되는 지점에 설치되어 상기 수용가 측에서 소비하는 전력량을 측정하는 장치이다. 도 1의 경우는 일반적인 경우이며, 수용가 측이 아닌 발전 사업자 측에 설치되어 발전량을 측정할 수도 있다. 이하, 일 실시예에 따라 수용가 측에 설치된 AMI 디바이스로서 기술한다. 보통, AMI 디바이스(100)는 전력 공급자와의 양방향 통신이 가능하여 전기 공급자와 수요자의 상호 인지 기반 수요반응(DR, Demand Response) 시스템 구현 및 운영을 위한 중요 수단으로 사용되며, 다양한 유형의 분산전원체계, 배전지능화시스템 등과의 정보 연계 등 미래 지능형 전력망 운용으로 사용될 수 있는 구성요소 중 하나이다.
상기 AMI(Advanced Metering Infrastructure)는 단방향 원격검침시스템(AMR, Advanced Meter Reading)에서 진화된 형태로 전력 생산자와 전력 소비자 간의 양방향 데이터 통신으로 소비자와 전기 에너지 공급자 사이의 수요반응을 통해 적극적으로 에너지 절약을 유도하고, 소비자 측 에너지를 통합 관리하는 인프라 시스템이다.
도 2는 본 발명의 일 실시예에 따른 AMI 디바이스의 구성을 나타낸 블록도이다. 도 2를 참조하면, 본 발명의 일 실시예에 따른 AMI 디바이스(100)는 하나 이상의 칩(Chip) 및 중앙처리부(123)를 포함할 수 있다. 상기 칩은 센서(110), 스위치(121), ADC(Analog to Digital Converter, 122), 중앙처리부(123), 레퍼런스 회로(130) 및 통신모듈(140)을 포함할 수 있다.
센서(110)는 도 1과 같이 수용가 측의 전력 소비량을 측정하여 전력 신호로 변환할 수 있다. 상기 전력 신호는 아날로그 신호 또는 디지털 신호일 수 있으며, 스위치(121)로 전송될 수 있다. 스위치(121)는 상기 전력 신호 또는 레퍼런스 신호를 선택적으로 통과시킬 수 있다. ADC(Analog to Digital Converter, 122)는 스위치(121)가 통과시킨 전력 신호 또는 레퍼런스 신호를 디지털 신호로 변환하여 중앙처리부(123)로 전송할 수 있다. 중앙처리부(123)는 스위치(121)의 상기 전력 신호 또는 상기 레퍼런스 신호의 선택적 통과에 대해 제어할 수 있으며, AMI 디바이스(100)의 무결성 검증을 위해 트랜잭션 데이터를 생성할 수 있다. 중앙처리부(123)는 생성한 상기 트랜잭션 데이터를 통신모듈(140)로 전송하고, 네트워크에 연결된 통신모듈(140)은 상기 트랜잭션 데이터를 블록체인 노드(도 3 참조)로 전송할 수 있다. 블록체인 노드에 대해서는 도 3에서 후술한다. 또한, 통신모듈(140)은 상기 네트워크로부터 전송되는 외부 제어 신호를 수신하여 중앙처리부(123)로 전송할 수 있다.
여기서, 스위치(121), ADC(122) 및 중앙처리부(123)는 개별 소자로 마련될 수 있거나 제어부(120)로 통합되어 하나의 마이크로 컨트롤러 유닛(MCU, Micro Controller Unit)으로 마련될 수도 있다.
AMI 디바이스(100)는 정상 모드 또는 검증 모드로 동작할 수 있다. 상기 정상 모드는 수용가 측에서 소비하는 전력량을 검침하는 모드로서, 스위치(121)가 상기 전력 신호를 통과시켜 ADC(122)로 보낼 수 있다. 검증 모드는 AMI 디바이스(100)의 무결성을 검증하기 위한 모드로서, 스위치(121)가 센서(110)의 상기 전력 신호의 통과를 막고 레퍼런스 회로(130)의 레퍼런스 신호를 통과시킬 수 있다. 상기 정상 모드 또는 검증 모드는 중앙처리부(123)의 제어 신호로 전환될 수 있다.
도 3은 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 시스템의 대략적인 구성을 나타낸 블록도이다. 도 3을 참조하면, 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 시스템은 AMI 디바이스(100)를 포함하는 클라이언트와 네트워크로 연결된 복수의 노드로 구성된 블록체인 시스템을 포함할 수 있다. 상기 복수의 노드는 블록체인 노드일 수 있으며, 각각의 상기 블록체인 노드는 복수의 AMI 디바이스(100)가 각각 측정한 전력량 기록을 포함하는 분산원장을 가질 수 있다. 또한 각각의 상기 블록체인 노드는 상기 블록체인 시스템 상의 기능에 따라 검증노드(200), 블록생성노드(300) 및 일반노드(400)로 구분될 수 있다, 그러나 상기 블록체인 상의 검증노드(200), 블록생성노드(300) 및 일반노드(400)는 고정되는 것은 아니며 서로의 역할이 교환 또는 중복될 수도 있다.
AMI 디바이스(100)는 통신모듈(140)을 통해 상기 블록체인 노드와 연결될 수 있다. 도 3에 도시된 AMI 디바이스(100)는 검증노드(200)와 연결되어 있지만 이에 제한되지 않는다. 바람직하게는 AMI 디바이스(100)는 상기 블록체인 시스템 상의 노드로 포함될 수 있으며, 복수의 AMI 디바이스(100) 역시 상기 블록체인 노드로서 검증노드(200), 블록생성노드(300) 및 일반노드(400)와 서로 연결될 수 있다.
검증노드(200)는 AMI 디바이스(100)에 대해 무결성 검증을 요청할 수 있고, 해당 요청에 응답된 데이터를 검증할 수 있다. 블록생성노드(300)는 검증노드(200)가 검증하고 서명한 트랜잭션 데이터를 일정 단위로 묶어 기존 블록들과 유기적으로 연결될 수 있는 새로운 블록(원장)을 생성할 수 있다. 상기 생성된 블록은 일반노드(400)에 전파되고 일반노드(400)는 상기 생성된 노드를 기존에 존재하는 블록과 연결할 수 있다.
도 4는 본 발명의 일 실시예에 따른 AMI 디바이스의 무결성 검증 처리 절차를 나타낸 도면이다. 도 4를 참조하면, AMI 디바이스(100)의 무결성 검증은 도 3에 도시된 검증노드(200)의 디바이스 무결성 검증 요청에 따라 시작할 수 있다. AMI 디바이스(100)가 검증노드(200)의 무결성 검증 요청을 받으면, 중앙처리부(123)는 상기 검증 모드로 동작할 수 있다. 중앙처리부(123)는 AMI 디바이스(100)의 펌웨어 정보(151), 칩의 정보(152) 및 회로점검 정보(153) 중 하나 이상에 기초하여 무결성 해시값을 생성할 수 있다.
펌웨어 정보(151)는 외부에서 특정 목적을 위해 인위적으로 조작을 할 가능성이 있는 파라미터가 변경되거나 설치 상태가 변경되는 경우 이를 확인할 수 있는 상태정보 파라미터로서, 펌웨어에서 해시트리 생성을 위해 획득하는 정보일 수 있다. 예를 들어, 펌웨어 버전정보, 디바이스 고유관리번호, 디바이스 IP/포트 정보, 노드(서버)의 IP/포트정보, ADC의 센서 보정값(오프셋 값), 고장 판단을 위한 자기점검기능의 Threshold 비교값, 고장코드 목록, 외부 디버깅 장비의 MCU 로그 기록 등이 있을 수 있다.
칩의 정보(152)는 AMI 디바이스(100)를 구성하는 칩의 PUF(Physical Unclonable Function) 값일 수 있다. PUF 값은 반도체 제조 공정에서 발생하는 공정편차를 이용하여 칩 내부에 구현한 예측하기 어려운 랜덤한 디지털 값을 의미한다. PUF 값은 하드웨어적으로 예측 불가능한 값이 출력되므로 복제가 불가능하다. 일반적으로 동일한 회로와 동일한 마스크 레이아웃을 가지고, 동일한 공정과정을 거치더라도 반도체 제조 과정 특성상 발생하는 공정편차에 의해 트랜지스터, 커패시터, 저항 등과 같은 소자 특성 또는 게이트 지연시간과 같은 회로 특성과 같은 많은 부분에서 차이가 발생한다. 이러한 차이로 인해 칩마다 서로 다른 비트 값을 가지게 되고, 이렇게 결정된 값은 난수 생성 장치와 달리 매번 생성될 때마다 동일한 값을 출력하므로 칩 고유의 정보로 활용된다. 생성되는 값은 칩 내부에서 생성되는 값이므로 외부의 조작 없이 자체적으로 데이터 생성이 가능하여 칩 외부로의 유출을 근본적으로 차단할 수 있는 장점이 있다. 또한, 물리적 보안 공격에 대해서도 PUF 값을 읽기 어렵다.
회로점검 정보(153)는 센서(110)의 전압신호, 필터, ADC(122) 및 중앙처리부(123)로 이어지는 신호 흐름에 대한 이상 유무의 정보일 수 있다. 회로점검은 외부에서 자기 왜란을 가하거나 필터부에 여러 수동소자를 추가로 설치하여 검침 되는 값을 인위로 조작하거나 관리부실 및 노후화 등으로 해당 부분의 고장 발생을 자가 진단하기 위한 것일 수 있다. 이를 위해, 레퍼런스 회로(130)는 고정 또는 미리 결정된 가변 전압 신호 즉, 레퍼런스 신호를 생성할 수 있다. 레퍼런스 회로(130)는 레퍼런스 신호를 스위치(121)로 전송하고, 스위치(121)는 상기 레퍼런스 신호를 통과시킬 수 있다. 이때, 중앙처리부(123)는 스위치(121)가 검증 모드로 동작하도록 제어 신호를 보내고, 이에 따라 스위치(121)는 상기 검증 모드로 동작하여 상기 레퍼런스 신호를 통과시킬 수 있다.
도 5는 본 발명의 일 실시예에 따른 스위치의 모드 변경에 따른 통과시키는 전압 신호를 나타낸 도면이다. 도 5를 참조하면, 스위치(121)가 정상 모드일 경우, 상용 전압이 측정되고, 중앙처리부(123)의 제어 신호를 인해 스위치(121)가 검증 모드로 전환되면 상용 전압 신호는 막고, 레퍼런스 회로(130)의 레퍼런스 신호를 통과시키는 것을 알 수 있다.
중앙처리부(123)는 스위치(121)를 통과한 레퍼런스 신호의 결과값을 측정하고, 공장상태에서 레퍼런스 신호로 측정된 기록값과 비교할 수 있다. 그리고 중앙처리부(123)는 상기 결과값과 상기 기록값의 비교 결과가 오차범위 내에 있으면 오류로 오차범위를 벗어나면 정상으로 고장 여부를 판단하여 회로점검 정보에 포함할 수 있다. 또한, 중앙처리부(123)는 측정되는 파형의 왜곡 형태에 따른 이상 유형을 판단하여 회로점검 정보에 포함할 수 있다.
도 6은 본 발명의 일 실시예에 따른 무결성 해시값을 생성하는 해시트리 구조를 나타낸 도면이다. 도 4 및 도 6을 참조하면, 중앙처리부(123)는 복수의 해시값으로 구성되는 해시트리(166) 구조를 생성할 수 있다. 상기 해시트리 구조는 하나 이상의 기저 정보를 기초로 각각 해시값을 생성하여 최종적으로 하나의 해시값을 생성하는 구조이다. 본 발명의 일 실시예에서 기저 정보는 펌웨어 정보(151), 칩의 정보(152) 및 회로점검 정보(153)일 수 있으며, 이들 정보를 각각 단계적으로 해시변환하여 최종적인 펌웨어 해시값(161), 칩 해시값(162) 및 고장진단 해시값(163)을 생성할 수 있다. 또한, 생성된 펌웨어 해시값(161), 칩 해시값(162) 및 고장진단 해시값(163)에 대해서도 해시트리 구조로 최종 해시값 즉, 무결성 해시값(165)을 생성할 수 있다. 중앙처리부(123)는 중앙처리부(123)는 펌웨어 해시값(161), 칩 해시값(162) 및 고장진단 해시값(163)을 동시에 생성하거나 미리 정해진 순서에 따라 따로 생성할 수 있다.
일 실시예에 따라 펌웨어 정보(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자리의 해시값이 생성될 수 있다.
중앙처리부(123)는 생성된 0x6660AA0D...(161a)과 0x0CB21B56...(161b)를 기초로 0x33533960...(161d) 해시값을 생성할 수 있다. 그리고 중앙처리부(123)는 생성된 0x33533960...(161d)과 0x3FB8AFE3...(161c)을 기초로 0x26146AD2...(161e)을 생성할 수 있다. 생성된 0x26146AD2...(161e)는 펌웨어 정보(151)를 기초로 생성한 최종 해시값이며 도 4의 펌웨어 해시값(161)에 해당할 수 있다.
이와 동일하게 중앙처리부(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)일 수 있다.
중앙처리부(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)를 포함하도록 생성되는 과정에 대한 정보일 수 있다.
중앙처리부(123)는 생성된 무결성 해시값(165)을 AMI 디바이스(100)의 개인키 및 검증노드(200)의 공개키로 암호화하여 트랙잭션 데이터를 생성할 수 있다. 개인키 및 공개키는 하나의 쌍으로 이루어질 수 있다. 그리고 각각의 AMI 디바이스(100)와 검증노드(200)는 한 쌍의 개인키 및 공개키를 부여받을 수 있다.
개인키는 의사난수생성기를 통해 256비트 크기의 무작위 랜덤값으로 생성될 수 있다. 일례로 16진수로 표현되는 개인키는 '1E99423A4ED2...6AEDD'와 같은 형태일 수 있다. 이와 쌍으로 생성된 개인키를 타원곡선 알고리즘에 입력하여 이에 대응하는 공개키를 생성할 수 있다. 개인키와 공개키 쌍이 생성되면 AMI 디바이스(100) 및 검증노드(200)에 할당되며, 공개키는 시스템에 참여하는 모든 참여자(노드)에게 공유될 수 있다.
AMI 디바이스(100)의 개인키는 공장 출고 당시 AMI 디바이스(100)의 펌웨어에 삽입되거나 하드웨어 형태의 보안 모듈에 탑재될 수 있다. 출고할 때, 해당 개인키가 입력된 칩에 대한 락을 설정할 수 있고, 상기 락을 통해 AMI 디바이스(100)의 개인키를 외부 유출로부터 보호할 수 있다.
암호화하는 과정을 더욱 자세히 설명하면, 중앙처리부(123)는 무결성 해시값(165)에 대해 AMI 디바이스 개인키(171a)를 이용하여 전자서명을 할 수 있다. 전자서명된 데이터에 대해 검증노드 공개키(172b)를 이용하여 한 번 더 암호화할 수 있다. 그리고 네트워크상에서 상호약속된 통신프로토콜을 이용하여 해당 데이터를 전송하기 위한 트랜잭션 데이터(181)를 생성할 수 있다.
통신모듈(140)은 트랜잭션 데이터(181)를 검증을 요청한 검증노드(200)에 전송할 수 있다.
도 7은 본 발명의 일 실시예에 따른 블록체인 노드의 무결성 검증 처리 절차를 나타낸 도면이다. 도 7을 참조하면, AMI 디바이스(100)가 전송한 트랜잭션은 도 3에 도시된 검증노드(200)가 수신할 수 있다. 검증노드(200)는 전송된 트랜잭션 데이터(181)를 검증노드 개인키(172a)로 복호화를 할 수 있다. 그리고 검증노드(200)는 복호화된 데이터를 AMI 디바이스 공개키(171b)를 이용하여 전자 서명을 확인하여 AMI 디바이스(100)가 전송한 데이터임을 확인할 수 있다. 검증노드 개인키(172a) 및 AMI 디바이스 공개키(171b)로 복호화한 데이터는 무결성 해시값(165)일 수 있다.
검증노드(200)는 복호화된 무결성 해시값(165)과 출고 시 미리 등록된 AMI 디바이스(100)의 순수 무결성 해시값(이하, 참조 해시값(167))과 비교할 수 있다. 비교 완료된 결과 데이터를 블록체인 분산원장에 기록하기 위해서, 검증노드(200)는 비교한 결과값에 대해 검증노드 개인키(172a)로 암호화하는 결과서명을 할 수 있고, 네트워크상에서 상호약속된 통신프로토콜을 이용하여 해당 결과 데이터를 전송하기 위한 결과 트랜잭션 데이터(182)를 생성할 수 있다. 검증노드(200)는 생성된 결과 트랜잭션 데이터(182)를 도 3에 도시된 하나 이상의 블록생성노드(300)에 전송할 수 있다. 각 블록생성노드(300)는 일정 시간 동안 다른 노드로부터 전달받은 다른 목적의 미포함 트랜잭션(183) 더 전송받은 후 합의 알고리즘에 따른 블록생성규칙에 따라 블록(220)을 생성할 수 있다.
여기서, 합의 알고리즘은 작업증명(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) 중 하나를 이용할 수 있다.
생성한 블록(220)은 도 3에 도시된 블록체인 노드 네트워크를 구성하는 하나 이상의 일반노드(400)로 전파할 수 있다. 블록(220)을 전파받은 각 일반노드(400)는 이전에 기록된 블록과 체인구조를 형성할 수 있고, 체인구조가 형성되면 블록체인 시스템에 해당 정보 기록이 완료될 수 있다. 이때, 각 일반노드(400)는 전파된 결과 데이터를 조회할 수 있다. 일반노드(400)는 조회한 결과 데이터가 일치한 결과값이면, 해당 AMI 디바이스(100)를 신뢰 디바이스로 규정하고 연결을 유지할 수 있다. 조회한 결과 데이터가 불일치 결과값이면 해당 AMI 디바이스(100)를 신뢰할 수 없는 디바이스로 규정하고 해당 AMI 디바이스(100)와 연결을 중단할 수 있고, 상기 결과 데이터의 내용을 관리시스템으로 전송하거나 알람을 줄 수 있다. 상기 관리시스템은 원격 또는 직접 AMI 디바이스(100)에 접근하여 해시트리를 분석하고 원인을 파악하여 조치할 수 있다.
도 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)를 분석할 수 있다.
AMI 디바이스(100)에서 검증노드(200)로 전송하는 트랜잭션 데이터(181)에는 최종 해시값(무결성 해시값(165))과 더불어 최종 해시값이 생성되는 과정인 해시트리도 포함될 수 있다. 관리시스템은 불일치 판정을 받은 최종 해시값의 해시트리(166b)와 참조 해시값(167)의 해시트리(166a)를 상위에서부터 단계적으로 비교하면서 분석할 수 있다. 상위에서부터 불일치 해시값을 추적하며 최종 해시값(0x4BA1AAD1...(165b))이 변경된 이유와 유형을 분석할 수 있다. 도 8에 도시된 경우에는 관리시스템이 무결성 해시값(165b, 0x4BA1AAD1...), 위변조 해시값(164b, 0x562EC6AE...), 칩 해시값(162e, 0x702AE534...), 중앙처리부 PUF 해시값(162d, 0xA086ABE6...), 중앙처리부 PUF 값(152c, 0xAC048B65)으로 추적할 수 있으며, 중앙처리부(123)에서 위변조된 상황이 발생했다고 인지할 수 있고, 이에 대해 대응할 수 있다.
본 발명의 일 실시예에 따른 AMI 디바이스 및 AMI 디바이스 무결성 시스템은 AMI의 각각의 기저 정보를 기초로 생성한 해시값과 각 해시값의 최종 해시값을 참조 해시값(순수 무결성 해시값)과 비교하여 일치 여부를 확인하므로 상기 AMI 디바이스의 공장 초기 무결성을 보장할 수 있다. 또한, 상기 각 기저 정보를 각각의 해시 트리를 이용해 압축하여 전송하고 비교하여, 상기 AMI 디바이스와 상기 검증 노드의 연산 부하도 줄일 수 있다. 또한, 해시 변환은 역과정이 불가능하므로, 해시값의 유출로 인한 보안 우려도 불식할 수 있고, 상기 각 기저 정보는 펌웨어 정보, 칩의 정보 및 회로점검 정보를 포함하므로 소프트웨어단의 무결성 뿐만 아니라 하드웨어단의 무결성도 동시에 보장할 수 있다.
또한, 블록체인을 통해 데이터베이스를 관리하므로 데이터의 무결성은 블록체인을 구성하는 참여자들의 합의 알고리즘에 의해 무결성이 보장될 수 있다.
따라서, 본 발명의 일 실시예에 따른 AMI 디바이스 및 AMI 디바이스 무결성 시스템은 AMI의 소프트웨어 및 하드웨어 층으로부터 AMI 디바이스에서 수신하여 무결성을 검증하는 층 그리고 데이터를 관리하는 데이터베이스층까지 무결성을 보장할 수 있으므로, 신뢰성이 핵심인 지능형 전력망에 적절할 수 있다.
이하, 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법에 대해서 설명하기로 한다. 상기 AMI 디바이스 무결성 검증 방법은 AMI 디바이스 무결성 검증 시스템과 유사하므로 간략히 언급하기로 한다.
도 9는 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법의 흐름도이다. 도 9를 참조하면, 블록체인을 이용하여 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스의 무결성을 검증하는 방법은 상기 AMI 디바이스의 칩의 정보를 포함하는 하드웨어 정보에 기초하여 무결성 해시값을 생성하는 단계(S910), 상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 블록체인의 검증노드의 공개키로 암호화하는 단계(S920), 암호화한 상기 무결성 해시값을 기초로 통신프로토콜에 따른 트랜잭션 데이터를 생성하여 상기 검증노드로 전송하는 단계(S930), 상기 트랜잭션 데이터를 상기 검증노드의 개인키 및 상기 AMI 디바이스의 공개키로 복호화하여 상기 무결성 해시값으로 변환하는 단계(S940), 상기 AMI 디바이스의 참조 해시값과 비교한 결과 데이터를 상기 검증노드의 개인키로 암호화하는 단계(S950) 및 암호화한 상기 결과 데이터를 기초로 통신프로토콜에 따른 결과 트랜잭션 데이터를 생성하여 상기 블록체인의 하나 이상의 블록생성노드에 전송하는 단계(S960)을 포함할 수 있다.
도 10은 본 발명의 일 실시예에 따른 무결성 해시값을 생성하는 단계를 나타낸 흐름도이다. 도 10을 참조하면, S910 단계는 펌웨어 정보를 기초로 펌웨어 해시값을 생성하는 단계(S911), 칩의 정보를 기초로 칩 해시값을 생성하는 단계(S912) 및 회로점검 정보를 기초로 고장진단 해시값을 생성하는 단계(S913)를 포함할 수 있으며, 상기 S911, S912 및 S913 단계는 동시에 실행되거나 따로 실행될 수 있다.
상기 칩의 정보(152)는 상기 칩의 PUF 값을 포함할 수 있다.
또한, 상기 펌웨어 해시값과 상기 칩 해시값을 이용하여 위변조 해시값을 생성하는 단계(S914) 및 상기 위변조 해시값과 상기 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성하는 단계(S915)를 더 포함할 수 있다.
도 11은 본 발명의 일 실시예에 따른 비대칭키를 이용해 암호화하는 단계를 나타낸 흐름도이다. 도 11을 참조하면, 상기 AMI 디바이스의 개인키로 상기 무결성 해시값을 암호화하여 서명값으로 변환하는 단계(S931) 및 상기 서명값을 상기 검증노드의 공개키로 암호화하여 상기 트랜잭션 데이터를 생성하는 단계(S932)를 포함할 수 있다.
도 12는 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법의 흐름도이다. 도 12를 참조하면, 본 발명의 일 실시예에 따른 AMI 디바이스 무결성 검증 방법은 합의 알고리즘에 따른 블록생성규칙으로 블록을 생성하고, 생성한 상기 블록을 하나 이상의 상기 블록체인의 노드에 전파하는 단계(S970)를 포함한다.
상기 결과 데이터를 확인하는 단계(S980)에서 상기 결과 데이터가 일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 유지하는 단계(S991) 또는 상기 결과 데이터가 불일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 중단하는 단계(S992)를 더 포함할 수 있다.
본 명세서에 기재된 다양한 실시예들은 하드웨어, 미들웨어, 마이크로코드, 소프트웨어 및/또는 이들의 조합에 의해 구현될 수 있다. 예를 들어, 다양한 실시예들은 하나 이상의 주문형 반도체(ASIC)들, 디지털 신호 프로세서(DSP)들, 디지털 신호 프로세싱 디바이스(DSPD)들, 프로그램어블 논리 디바이스(PLD)들, 필드 프로그램어블 게이트 어레이(FPGA)들, 프로세서들, 컨트롤러들, 마이크로컨트롤러들, 마이크로프로세서들, 여기서 제시되는 기능들을 수행하도록 설계되는 다른 전자 유닛들 또는 이들의 조합 내에서 구현될 수 있다.
또한, 예를 들어, 다양한 실시예들은 명령들을 포함하는 컴퓨터-판독가능한 매체에 수록되거나 인코딩될 수 있다. 컴퓨터-판독가능한 매체에 수록 또는 인코딩된 명령들은 프로그램 가능한 프로세서 또는 다른 프로세서로 하여금 예컨대, 명령들이 실행될 때 방법을 수행하게끔 할 수 있다. 컴퓨터-판독가능한 매체는 컴퓨터 저장 매체 및 하나의 장소로부터 다른 장소로 컴퓨터 프로그램의 이송을 용이하게 하는 임의의 매체를 포함하는 통신 매체 모두를 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수도 있다. 예를 들어, 이러한 컴퓨터-판독가능한 매체는 RAM, ROM, EEPROM, CD-ROM 또는 기타 광학디스크 저장 매체, 자기 디스크 저장 매체 또는 기타 자기 저장 디바이스 또는 원하는 프로그램 코드를 컴퓨터에 의해 액세스가능한 명령들 또는 데이터 구조들의 형태로 반송하거나 저장하는데 이용될 수 있는 임의의 다른 매체를 포함할 수 있다.
이러한 하드웨어, 소프트웨어, 펌웨어 등은 본 명세서에 기술된 다양한 동작들 및 기능들을 지원하도록 동일한 디바이스 내에서 또는 개별 디바이스들 내에서 구현될 수 있다. 추가적으로, 본 발명에서 "~부"로 기재된 구성요소들, 유닛들, 모듈들, 컴포넌트들 등은 함께 또는 개별적이지만 상호 운용가능한 로직 디바이스들로서 개별적으로 구현될 수 있다. 모듈들, 유닛들 등에 대한 서로 다른 특징들의 묘사는 서로 다른 기능적 실시예들을 강조하기 위해 의도된 것이며, 이들이 개별 하드웨어 또는 소프트웨어 컴포넌트들에 의해 실현되어야만 함을 필수적으로 의미하지 않는다. 오히려, 하나 이상의 모듈들 또는 유닛들과 관련된 기능은 개별 하드웨어 또는 소프트웨어 컴포넌트들에 의해 수행되거나 또는 공통의 또는 개별의 하드웨어 또는 소프트웨어 컴포넌트들 내에 통합될 수 있다.
특정한 순서로 동작들이 도면에 도시되어 있지만, 이러한 동작들이 원하는 결과를 달성하기 위해 도시된 특정한 순서, 또는 순차적인 순서로 수행되거나, 또는 모든 도시된 동작이 수행되어야 할 필요가 있는 것으로 이해되지 말아야 한다. 임의의 환경에서는, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 더욱이, 상술한 실시예에서 다양한 구성요소들의 구분은 모든 실시예에서 이러한 구분을 필요로 하는 것으로 이해되어서는 안되며, 기술된 구성요소들이 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키징될 수 있다는 것이 이해되어야 한다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해서 정해져야 할 것이다.
100: AMI 디바이스 110: 센서
121: 스위치 122: ADC
123: 중앙처리부 130: 레퍼런스 회로
140: 통신모듈 200: 검증노드
300: 블록생성노드 400: 일반노드

Claims (17)

  1. 무결성 검증이 가능한 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스로서,
    하나 이상의 칩(Chip); 및
    상기 하나 이상의 칩을 제어하는 중앙처리부를 포함하고,
    상기 중앙처리부는, 상기 칩의 정보를 포함하는 상기 AMI 디바이스의 하드웨어 정보에 기초하여 무결성 해시값을 생성하고 상기 무결성 해시값을 암호화한 트랜잭션 데이터를 전송하는 것인 AMI 디바이스.
  2. 제1항에 있어서,
    상기 하드웨어 정보는,
    상기 AMI 디바이스의 펌웨어 정보 및 회로점검 정보 중 하나 이상을 더 포함하는 것인 AMI 디바이스.
  3. 제1항에 있어서,
    상기 중앙처리부는,
    상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 AMI 디바이스와 네트워크로 연결된 검증노드의 공개키를 이용하여 암호화 하는 것인 AMI 디바이스.
  4. 제2항에 있어서,
    상기 펌웨어 정보는,
    상기 펌웨어의 버전 정보, 하나 이상의 파라미터 값 및 하나 이상의 기능에 대한 대표값 중 하나 이상을 포함하는 것인 AMI 디바이스.
  5. 제1항에 있어서,
    상기 칩의 정보는,
    상기 칩의 PUF(Physical Unclonable Function) 값을 포함하는 것인 AMI 디바이스.
  6. 제2항에 있어서,
    상기 중앙처리부는,
    상기 펌웨어 정보를 기초로 생성한 펌웨어 해시값 및 상기 칩의 정보를 기초로 생성한 칩 해시값을 이용하여 위변조 해시값을 생성하고,
    상기 위변조 해시값과 상기 회로점검 정보를 기초로 생성한 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성하는 것인 AMI 디바이스.
  7. 제3항에 있어서,
    상기 트랜잭션 데이터는,
    상기 AMI 디바이스의 개인키로 상기 무결성 해시값을 암호화하여 서명값으로 변환하고, 상기 서명값을 상기 검증노드의 공개키로 암호화하여 생성하는 것인 AMI 디바이스.
  8. 제1항에 있어서,
    전력량을 측정하는 센서;
    상기 센서가 측정한 전력 신호 또는 레퍼런스 신호를 선택적으로 통과시키는 스위치;
    상기 스위치가 통과시킨 상기 전력 신호 또는 상기 레퍼런스 신호를 디지털 신호로 변환하여 상기 중앙처리부로 전송하는 ADC(Analog to Digital Converter); 및
    상기 중앙처리부가 생성한 상기 트랜잭션 데이터를 전송하고 외부 제어 신호를 수신하는 통신모듈을 포함하는 것인 AMI 디바이스.
  9. 제8항에 있어서,
    상기 AMI 디바이스는,
    상기 스위치가 상기 전력 신호를 통과시키는 정상 모드 또는 상기 스위치가 상기 레퍼런스 신호를 통과시키는 검증 모드로 동작하고,
    상기 검증 모드는 검증노드의 무결성 검증 요청에 대응한 상기 중앙처리부의 제어 신호에 따라 동작하는 것인 AMI 디바이스.
  10. 블록체인 기반의 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스의 무결성을 검증하는 AMI 디바이스 무결성 검증 시스템으로서,
    중앙처리부를 포함하는 하나 이상의 상기 AMI 디바이스; 및
    복수의 블록체인 노드로서, 각각이 하나 이상의 상기 AMI 디바이스 중 하나 이상과 네트워크로 연결되는 블록체인 노드;를 포함하고,
    상기 AMI 디바이스의 상기 중앙처리부는, 상기 AMI 디바이스의 펌웨어 정보, 칩의 정보 및 회로점검 정보 중 하나 이상에 기초하여 무결성 해시값을 생성하고, 상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 AMI 디바이스의 무결성 검증을 요청한 상기 블록체인 노드의 공개키를 이용해 암호화하여 상기 블록체인 노드에 트랜잭션 데이터로 전송하는 것인 AMI 디바이스 무결성 검증 시스템.
  11. 제10항에 있어서,
    상기 블록체인 노드는,
    상기 트랜잭션 데이터를 상기 블록체인 노드의 개인키 및 상기 AMI 디바이스의 공개키를 이용한 복호화로 상기 무결성 해시값으로 변환하고, 미리 저장된 상기 AMI 디바이스의 참조 해시값과 비교한 결과 데이터를 상기 블록체인 노드의 개인키를 이용하여 암호화한 결과 트랜잭션 데이터를 생성하며, 상기 결과 트랜잭션 데이터를 상기 블록체인 노드 중에서 블록생성노드에 전송하는 것인 AMI 디바이스 무결성 검증 시스템.
  12. 제11항에 있어서,
    하나 이상의 상기 블록생성노드는,
    합의 알고리즘에 따른 블록생성규칙으로 블록을 생성하고, 상기 블록을 상기 블록체인 노드에 전파하고,
    각각의 상기 블록체인 노드는 상기 결과 데이터가 일치한 결과값이면, 상기 AMI 디바이스와 통신을 유지하고, 불일치 결과값이면 상기 AMI 디바이스와 통신을 중단하는 것인 AMI 디바이스 무결성 검증 시스템.
  13. 블록체인을 이용하여 전력량 검침을 위한 AMI(Advanced Metering Infrastructure) 디바이스의 무결성을 검증하는 방법으로서,
    상기 AMI 디바이스의 칩의 정보를 포함하는 하드웨어 정보에 기초하여 무결성 해시값을 생성하는 제1 단계;
    상기 무결성 해시값을 상기 AMI 디바이스의 개인키 및 상기 블록체인의 검증노드의 공개키로 암호화하는 제2 단계;
    상기 제2 단계에서 암호화한 상기 무결성 해시값을 기초로 통신프로토콜에 따른 트랜잭션 데이터를 생성하여 상기 검증노드로 전송하는 제3 단계;
    상기 트랜잭션 데이터를 상기 검증노드의 개인키 및 상기 AMI 디바이스의 공개키로 복호화하여 상기 무결성 해시값으로 변환하는 제4 단계;
    상기 AMI 디바이스의 참조 해시값과 비교한 결과 데이터를 상기 검증노드의 개인키로 암호화하는 제5 단계; 및
    상기 제5 단계에서 암호화한 상기 결과 데이터를 기초로 통신프로토콜에 따른 결과 트랜잭션 데이터를 생성하여 상기 블록체인의 하나 이상의 블록생성노드에 전송하는 제6 단계를 포함하는 것인 AMI 디바이스 무결성 검증 방법.
  14. 제13항에 있어서,
    합의 알고리즘에 따른 블록생성규칙으로 블록을 생성하고, 생성한 상기 블록을 하나 이상의 상기 블록체인의 노드에 전파하는 제7 단계를 포함하고,
    상기 결과 데이터가 일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 유지하는 제8-1 단계; 또는
    상기 결과 데이터가 불일치 결과값이면 각각의 상기 블록체인 노드는 상기 AMI 디바이스와 통신을 중단하는 제8-2 단계를 더 포함하는 것인 AMI 디바이스 무결성 검증 방법.
  15. 제13항에 있어서,
    상기 하드웨어 정보는, 상기 AMI 디바이스의 펌웨어 정보 및 회로점검 정보를 더 포함하고
    상기 제1 단계는,
    상기 펌웨어 정보를 기초로 펌웨어 해시값, 상기 칩의 정보를 기초로 칩 해시값 및 상기 회로점검 정보를 기초로 고장진단 해시값을 생성하는 제1-1 단계;
    상기 펌웨어 해시값과 상기 칩 해시값을 이용하여 위변조 해시값을 생성하는 제1-2 단계; 및
    상기 위변조 해시값과 상기 고장진단 해시값을 이용하여 상기 무결성 해시값을 생성하는 제1-3 단계를 포함하는 것인 AMI 디바이스 무결성 검증 방법.
  16. 제13항에 있어서,
    상기 제3 단계는,
    상기 AMI 디바이스의 개인키로 상기 무결성 해시값을 암호화하여 서명값으로 변환하는 제3-1 단계; 및
    상기 서명값을 상기 검증노드의 공개키로 암호화하여 상기 트랜잭션 데이터를 생성하는 제3-2 단계를 포함하는 것인 AMI 디바이스 무결성 검증 방법.
  17. 제13항에 있어서,
    상기 칩의 정보는,
    상기 칩의 PUF(Physical Unclonable Function) 값을 포함하는 것인 AMI 디바이스 무결성 검증 방법.
KR1020190132258A 2019-10-23 2019-10-23 Ami 디바이스와 ami 디바이스 무결성 검증 시스템 및 무결성 검증 방법 KR102239683B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190132258A KR102239683B1 (ko) 2019-10-23 2019-10-23 Ami 디바이스와 ami 디바이스 무결성 검증 시스템 및 무결성 검증 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190132258A KR102239683B1 (ko) 2019-10-23 2019-10-23 Ami 디바이스와 ami 디바이스 무결성 검증 시스템 및 무결성 검증 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020190004120A Division KR102054256B1 (ko) 2019-01-11 2019-01-11 Ami 디바이스와 ami 디바이스 무결성 검증 시스템 및 무결성 검증 방법

Publications (2)

Publication Number Publication Date
KR20200087666A true KR20200087666A (ko) 2020-07-21
KR102239683B1 KR102239683B1 (ko) 2021-04-13

Family

ID=71832776

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190132258A KR102239683B1 (ko) 2019-10-23 2019-10-23 Ami 디바이스와 ami 디바이스 무결성 검증 시스템 및 무결성 검증 방법

Country Status (1)

Country Link
KR (1) KR102239683B1 (ko)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013502021A (ja) * 2009-08-17 2013-01-17 サムスン エレクトロニクス カンパニー リミテッド 端末の遠隔管理方法及び装置
KR101527353B1 (ko) 2012-10-19 2015-06-09 한국전자통신연구원 스마트그리드 ami 네트워크에서 이상행위 탐지 시스템 및 이를 이용한 방법
KR101621931B1 (ko) * 2014-12-19 2016-05-17 한국인터넷진흥원 스마트 그리드에서의 전력정보 송수신 시스템
KR101653148B1 (ko) * 2009-11-30 2016-09-01 세진전자 주식회사 원격검침시스템용 보안장치
KR20180037851A (ko) * 2016-10-05 2018-04-13 한전케이디엔주식회사 블록체인을 이용한 스마트 그리드 시스템의 보안 방법
KR101888629B1 (ko) * 2017-10-31 2018-09-20 채령 Puf-qrng 보안단말기 시스템
KR102054256B1 (ko) * 2019-01-11 2019-12-10 주식회사 에너닷 Ami 디바이스와 ami 디바이스 무결성 검증 시스템 및 무결성 검증 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013502021A (ja) * 2009-08-17 2013-01-17 サムスン エレクトロニクス カンパニー リミテッド 端末の遠隔管理方法及び装置
KR101653148B1 (ko) * 2009-11-30 2016-09-01 세진전자 주식회사 원격검침시스템용 보안장치
KR101527353B1 (ko) 2012-10-19 2015-06-09 한국전자통신연구원 스마트그리드 ami 네트워크에서 이상행위 탐지 시스템 및 이를 이용한 방법
KR101621931B1 (ko) * 2014-12-19 2016-05-17 한국인터넷진흥원 스마트 그리드에서의 전력정보 송수신 시스템
KR20180037851A (ko) * 2016-10-05 2018-04-13 한전케이디엔주식회사 블록체인을 이용한 스마트 그리드 시스템의 보안 방법
KR101888629B1 (ko) * 2017-10-31 2018-09-20 채령 Puf-qrng 보안단말기 시스템
KR102054256B1 (ko) * 2019-01-11 2019-12-10 주식회사 에너닷 Ami 디바이스와 ami 디바이스 무결성 검증 시스템 및 무결성 검증 방법

Also Published As

Publication number Publication date
KR102239683B1 (ko) 2021-04-13

Similar Documents

Publication Publication Date Title
KR102054256B1 (ko) Ami 디바이스와 ami 디바이스 무결성 검증 시스템 및 무결성 검증 방법
US11005290B2 (en) Electric grid control system based on peer-to-peer network
US10879734B2 (en) Arrangement in a system for electrical power production
CN106407795B (zh) 数据存在认证系统、认证方法及验证方法
CN107925675B (zh) 供应系统及其运行方法
JP6719561B2 (ja) 供給媒体(例えば、電力)取引契約システム
US20200295936A1 (en) Computer-implemented systems and methods for linking a blockchain to a digital twin
CN111177253A (zh) 基于身份数字认证的电力大数据保护方法及系统
CN112733211A (zh) 一种基于区块链的智能电网数据存储方案
Tian et al. Blockchain-based AMI framework for data security and privacy protection
Jia et al. PROCESS: Privacy-preserving on-chain certificate status service
Zuo et al. A blockchain-based IoT framework for oil field remote monitoring and control
KR102239683B1 (ko) Ami 디바이스와 ami 디바이스 무결성 검증 시스템 및 무결성 검증 방법
Hahn et al. Oak Ridge National Laboratory Pilot Demonstration of an Attestation and Anomaly Detection Framework using Distributed Ledger Technology for Power Grid Infrastructure
Hao et al. Blockchain-Enabled Secure and Transparent Cross-Regional Model Updating and Sharing Approach in Smart Grid
Mansour et al. Decentralized Private Peer-to-Peer Energy Trading using Public Blockchains
Sheikh et al. Blockchain-based decentralized, flexible, and transparent energy market
Pleier et al. Concept for a stepwise approach for an automated verification process of balancing services
US20200175504A1 (en) Methods and apparatus for creating, tracking, and redeeming dlt-enabled digitized tokens from electricity generation
CN112035426A (zh) 供应链数据防伪方法、装置、设备及计算机可读介质
Detken et al. Security concept for gateway integrity protection within German smart grids
CN113780984B (zh) 一种基于区块链的配电网站所交互系统及交互方法
Snyder et al. The realities of testing meter firmware upgradeability
WO2022153375A1 (ja) データ格納方法、データ格納プログラム、および情報処理装置
Zhang et al. Design and Development of Insurance System Based on PoW Consensus Algorithm

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant