KR102486027B1 - 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법 - Google Patents

계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법 Download PDF

Info

Publication number
KR102486027B1
KR102486027B1 KR1020210150031A KR20210150031A KR102486027B1 KR 102486027 B1 KR102486027 B1 KR 102486027B1 KR 1020210150031 A KR1020210150031 A KR 1020210150031A KR 20210150031 A KR20210150031 A KR 20210150031A KR 102486027 B1 KR102486027 B1 KR 102486027B1
Authority
KR
South Korea
Prior art keywords
value
weighing
data
generated
meter
Prior art date
Application number
KR1020210150031A
Other languages
English (en)
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 KR1020210150031A priority Critical patent/KR102486027B1/ko
Application granted granted Critical
Publication of KR102486027B1 publication Critical patent/KR102486027B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01FMEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
    • G01F15/00Details of, or accessories for, apparatus of groups G01F1/00 - G01F13/00 insofar as such details or appliances are not adapted to particular types of such apparatus
    • G01F15/06Indicating or recording devices
    • G01F15/061Indicating or recording devices for remote indication
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D4/00Tariff metering apparatus
    • G01D4/002Remote reading of utility meters
    • G01D4/004Remote reading of utility meters to a fixed location
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/06Electricity, gas or water supply
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Abstract

계량 데이터 수집 서버 및 그 동작 방법이 개시된다. 본 발명은 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법을 제시함으로써, 검침원이 직접 계량기에 대한 계량 데이터를 수집할 필요 없이, 보다 편리하고 효율적으로 계량기에 대한 계량 데이터를 수집할 수 있도록 지원할 수 있다.

Description

계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법{METERING DATA COLLECTION SERVER THAT COLLECTS METERING DATA IN CONJUNCTION WITH A CAMERA ARRANGED TO PHOTOGRAPH THE AREA WHERE THE METERING VALUE IS DISPLAYED ON THE METER AND OPERATING METHOD THEREOF}
본 발명은 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법에 대한 것이다.
일반적으로, 전기, 가스, 수도 등의 수요가 발생하는 가정이나 산업현장 등에서는 그 사용량을 계측할 수 있도록 다양한 종류의 계량기가 부설된다.
최근에는, 소정의 통신 모듈을 통해 계량기에서 측정된 계량 값을 원격의 시스템 관리 장치로 전송할 수 있는 디지털 계량기가 등장하여 사용자의 편의를 도모하고 있다.
이렇게, 원격지에서 계량 값을 전송해줄 수 있는 소정의 통신 모듈이 탑재된 다양한 디지털 계량기가 등장하고 있지만, 아직까지는 검침원이 직접 계량기가 부설된 지역으로 이동하여 육안으로 계량 값을 검침해 주어야하는 계량기가 적지 않게 존재하고 있다.
이에 따라, 검침원이 직접 돌아다니면서 계량기를 검침함으로 인한 인건비가 발생하고, 검침원의 검침에 따라 발생하는 오차 등에 의한 요금 차이에 대한 불신도 발생하고 있는 실정이다.
따라서, 통신 모듈이 탑재되지 않은 계량기에 대한 계량 값을 검침원이 직접 검침하지 않더라도 원격지에서 수집할 수 있도록 지원하는 시스템의 도입이 필요한 상황이다.
이와 관련해서, 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여, 카메라로부터 계량 값이 촬영된 촬영 이미지를 수신하고, 소정의 문자 인식 모듈을 이용하여 수신된 촬영 이미지로부터 계량 데이터를 생성할 수 있는 시스템이 도입된다면, 검침원이 직접 계량기에 대한 계량 값을 수집할 필요 없이, 보다 편리하고 효율적으로 계량기에 대한 계량 데이터의 수집이 가능할 수 있을 것이다.
따라서, 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 방법과 관련된 기술에 대한 연구가 필요하다.
본 발명은 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법을 제시함으로써, 검침원이 직접 계량기에 대한 계량 값을 수집할 필요 없이, 보다 편리하고 효율적으로 계량기에 대한 계량 데이터를 수집할 수 있도록 지원하고자 한다.
본 발명의 일실시예에 따른 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버는 관리 단말로부터 상기 계량기에 대한 계량 데이터의 전송 요청이 수신되면, 상기 카메라로, 상기 계량기에서 계량 값이 표시되는 영역을 t(t는 2 이상의 자연수임)번 연속해서 촬영할 것을 요청하는 촬영 요청 명령을 전송하는 촬영 요청부, 상기 카메라가, 상기 촬영 요청 명령에 대응하여, 상기 계량기에서 계량 값이 표시되는 영역을 t번 연속해서 촬영함에 따라, 상기 카메라로부터, t번 연속해서 촬영되어 생성된 t개의 촬영 이미지들이 수신되면, 상기 t개의 촬영 이미지들 각각에 대해, 사전 설정된 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, t개의 계량 값들을 생성하는 계량 값 생성부, 상기 t개의 계량 값들이 생성되면, 상기 t개의 계량 값들을 서로 비교하여, 상기 t개의 계량 값들에서 사전 설정된 제1 비율 이상 존재하는 공통 계량 값이 있는지 여부를 확인하는 확인부 및 상기 t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는 것으로 확인되면, 확인된 공통 계량 값을, 상기 계량기에 대한 현재 시점의 최종 계량 값으로 지정하여 상기 관리 단말로 전송하는 전송부를 포함한다.
또한, 본 발명의 일실시예에 따른 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버의 동작 방법은 관리 단말로부터 상기 계량기에 대한 계량 데이터의 전송 요청이 수신되면, 상기 카메라로, 상기 계량기에서 계량 값이 표시되는 영역을 t(t는 2 이상의 자연수임)번 연속해서 촬영할 것을 요청하는 촬영 요청 명령을 전송하는 단계, 상기 카메라가, 상기 촬영 요청 명령에 대응하여, 상기 계량기에서 계량 값이 표시되는 영역을 t번 연속해서 촬영함에 따라, 상기 카메라로부터, t번 연속해서 촬영되어 생성된 t개의 촬영 이미지들이 수신되면, 상기 t개의 촬영 이미지들 각각에 대해, 사전 설정된 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, t개의 계량 값들을 생성하는 단계, 상기 t개의 계량 값들이 생성되면, 상기 t개의 계량 값들을 서로 비교하여, 상기 t개의 계량 값들에서 사전 설정된 제1 비율 이상 존재하는 공통 계량 값이 있는지 여부를 확인하는 단계 및 상기 t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는 것으로 확인되면, 확인된 공통 계량 값을, 상기 계량기에 대한 현재 시점의 최종 계량 값으로 지정하여 상기 관리 단말로 전송하는 단계를 포함한다.
본 발명은 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법을 제시함으로써, 검침원이 직접 계량기에 대한 계량 데이터를 수집할 필요 없이, 보다 편리하고 효율적으로 계량기에 대한 계량 데이터를 수집할 수 있도록 지원할 수 있다.
도 1은 본 발명의 일실시예에 따른 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버의 동작 방법을 도시한 순서도이다.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.
도 1은 본 발명의 일실시예에 따른 계량 데이터 수집 서버의 구조를 도시한 도면이다.
본 발명의 일실시예에 따른 계량 데이터 수집 서버(110)는 계량기(150)에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라(151)와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버로, 촬영 요청부(111), 계량 값 생성부(112), 확인부(113) 및 전송부(114)를 포함한다.
촬영 요청부(111)는 관리 단말(160)로부터 계량기(150)에 대한 계량 데이터의 전송 요청이 수신되면, 카메라(151)로, 계량기(150)에서 계량 값이 표시되는 영역을 t(t는 2 이상의 자연수임)번 연속해서 촬영할 것을 요청하는 촬영 요청 명령을 전송한다.
예컨대, t를 '10'이라고 하고, 관리 단말(160)로부터 계량기(150)에 대한 계량 데이터의 전송 요청이 계량 데이터 수집 서버(110)에 수신되었다고 하는 경우, 촬영 요청부(111)는 카메라(151)로, 계량기(150)에서 계량 값이 표시되는 영역을 '10'번 연속해서 촬영할 것을 요청하는 촬영 요청 명령을 전송할 수 있다.
계량 값 생성부(112)는 카메라(151)가, 상기 촬영 요청 명령에 대응하여, 계량기(150)에서 계량 값이 표시되는 영역을 t번 연속해서 촬영함에 따라, 카메라(151)로부터, t번 연속해서 촬영되어 생성된 t개의 촬영 이미지들이 수신되면, 상기 t개의 촬영 이미지들 각각에 대해, 사전 설정된 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, t개의 계량 값들을 생성한다. 여기서, 문자 인식 모듈이란 이미지나 영상에서 문자를 인식하여 획득할 수 있는 광학 문자 인식(Optical Character Recognition: OCR) 기술이나 딥러닝 기술을 기반으로 사전 구축된 문자 인식 모듈을 의미한다.
예컨대, 전술한 예와 같이, 촬영 요청부(111)가 카메라(151)로 상기 촬영 요청 명령을 전송함에 따라, 상기 촬영 요청 명령이 카메라(151)에 수신되면, 카메라(151)는 상기 촬영 요청 명령에 대응하여, 계량기(150)에서 계량 값이 표시되는 영역을 '10'번 연속해서 촬영함으로써, '10'개의 촬영 이미지들을 '촬영 이미지 1, 촬영 이미지 2, 촬영 이미지 3, ..., 촬영 이미지 10'과 같이 생성할 수 있다.
그러고 나서, 카메라(151)는 '10'번 연속해서 촬영하여 생성한 '촬영 이미지 1, 촬영 이미지 2, 촬영 이미지 3, ..., 촬영 이미지 10'을 계량 데이터 수집 서버(110)로 전송할 수 있다.
이로 인해, 카메라(151)로부터, '10'번 연속해서 촬영되어 생성된 '촬영 이미지 1, 촬영 이미지 2, 촬영 이미지 3, ..., 촬영 이미지 10'이 계량 데이터 수집 서버(110)에 수신되면, 계량 값 생성부(112)는 '촬영 이미지 1, 촬영 이미지 2, 촬영 이미지 3, ..., 촬영 이미지 10' 각각에 대해, 사전 설정된 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, '10'개의 계량 값들을 '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 10'과 같이 생성할 수 있다.
확인부(113)는 상기 t개의 계량 값들이 생성되면, 상기 t개의 계량 값들을 서로 비교하여, 상기 t개의 계량 값들에서 사전 설정된 제1 비율 이상 존재하는 공통 계량 값이 있는지 여부를 확인한다.
예컨대, 전술한 예와 같이, 계량 값 생성부(112)에 의해, '10'개의 계량 값들인 '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 10'이 생성되었다고 하고, 사전 설정된 제1 비율을 '90%'라고 하는 경우, 확인부(113)는 '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 10'을 서로 비교하여, '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 10'에서 상기 제1 비율인 '90%' 이상 존재하는 공통 계량 값이 있는지 여부를 확인할 수 있다.
전송부(114)는 상기 t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는 것으로 확인되면, 확인된 공통 계량 값을, 계량기(150)에 대한 현재 시점의 최종 계량 값으로 지정하여 관리 단말(160)로 전송한다.
예컨대, 확인부(113)를 통한 확인 결과, '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 10' 중 '계량 값 1, 계량 값 2, 계량 값 3, 계량 값 4, 계량 값 5, 계량 값 6, 계량 값 7, 계량 값 8, 계량 값 9'가 모두 동일한 계량 값임으로 인해, '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 10'에서 상기 제1 비율인 '90%' 이상 존재하는 공통 계량 값이 있는 것으로 확인된 경우라고 가정하자. 그러면, 전송부(114)는 확인된 공통 계량 값을, 계량기(150)에 대한 현재 시점의 최종 계량 값으로 지정하여 관리 단말(160)로 전송할 수 있다.
본 발명의 일실시예에 따르면, 계량 데이터 수집 서버(110)는 재촬영 요청부(115), 계량 값 재생성부(116) 및 재확인부(117)를 더 포함할 수 있다.
재촬영 요청부(115)는 확인부(113)를 통한 확인 결과, 상기 t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 없는 것으로 확인된 경우, 카메라(151)로, 계량기(150)에서 계량 값이 표시되는 영역을 2t번 연속해서 촬영할 것을 요청하는 재촬영 요청 명령을 전송한다.
예컨대, t를 '10'이라고 하고, 상기 제1 비율을 '90%'라고 하며, 확인부(113)를 통한 확인 결과, '10'개의 계량 값들인 '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 10'에서 상기 제1 비율인 '90%' 이상 존재하는 공통 계량 값이 없는 것으로 확인된 경우라고 가정하자. 그러면, 재촬영 요청부(115)는 카메라(151)로, 계량기(150)에서 계량 값이 표시되는 영역을 '20'번 연속해서 촬영할 것을 요청하는 재촬영 요청 명령을 전송할 수 있다.
계량 값 재생성부(116)는 카메라(151)가, 상기 재촬영 요청 명령에 대응하여, 계량기(150)에서 계량 값이 표시되는 영역을 2t번 연속해서 촬영함에 따라, 카메라(151)로부터, 2t번 연속해서 촬영되어 생성된 2t개의 촬영 이미지들이 수신되면, 상기 2t개의 촬영 이미지들 각각에 대해, 상기 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, 2t개의 계량 값들을 생성한다.
예컨대, 전술한 예와 같이, 재촬영 요청부(115)가 카메라(151)로 상기 재촬영 요청 명령을 전송함에 따라, 상기 재촬영 요청 명령이 카메라(151)에 수신되면, 카메라(151)는 상기 재촬영 요청 명령에 대응하여, 계량기(150)에서 계량 값이 표시되는 영역을 '20'번 연속해서 촬영함으로써, '20'개의 촬영 이미지들을 '촬영 이미지 1, 촬영 이미지 2, 촬영 이미지 3, ..., 촬영 이미지 20'과 같이 생성할 수 있다.
그러고 나서, 카메라(151)는 '20'번 연속해서 촬영하여 생성한 '촬영 이미지 1, 촬영 이미지 2, 촬영 이미지 3, ..., 촬영 이미지 20'을 계량 데이터 수집 서버(110)로 전송할 수 있다.
이로 인해, 카메라(151)로부터, '20'번 연속해서 촬영되어 생성된 '촬영 이미지 1, 촬영 이미지 2, 촬영 이미지 3, ..., 촬영 이미지 20'이 계량 데이터 수집 서버(110)에 수신되면, 계량 값 재생성부(116)는 '촬영 이미지 1, 촬영 이미지 2, 촬영 이미지 3, ..., 촬영 이미지 20' 각각에 대해, 상기 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, '20'개의 계량 값들을 '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 20'과 같이 생성할 수 있다.
재확인부(117)는 상기 2t개의 계량 값들이 생성되면, 상기 2t개의 계량 값들을 서로 비교하여, 상기 2t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는지 여부를 확인한다.
예컨대, 전술한 예와 같이, 계량 값 재생성부(116)에 의해, '20'개의 계량 값들인 '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 20'이 생성되었다고 하고, 상기 제1 비율을 '90%'라고 하는 경우, 재확인부(117)는 '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 20'을 서로 비교하여, '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 20'에서 상기 제1 비율인 '90%' 이상 존재하는 공통 계량 값이 있는지 여부를 확인할 수 있다.
이때, 본 발명의 일실시예에 따르면, 전송부(114)는 상기 2t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는 것으로 확인되면, 확인된 공통 계량 값을, 계량기(150)에 대한 현재 시점의 최종 계량 값으로 지정하여 관리 단말(160)로 전송할 수 있다.
예컨대, 재확인부(117)를 통한 확인 결과, '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 20' 중 '계량 값 1, 계량 값 2, 계량 값 3, 계량 값 4, 계량 값 5, 계량 값 6, 계량 값 7, 계량 값 8, 계량 값 9, 계량 값 10, 계량 값 11, 계량 값 12, 계량 값 13, 계량 값 14, 계량 값 15, 계량 값 16, 계량 값 17, 계량 값 18'이 모두 동일한 계량 값임으로 인해, '계량 값 1, 계량 값 2, 계량 값 3, ..., 계량 값 20'에서 상기 제1 비율인 '90%' 이상 존재하는 공통 계량 값이 있는 것으로 확인된 경우라고 가정하자. 그러면, 전송부(114)는 확인된 공통 계량 값을, 계량기(150)에 대한 현재 시점의 최종 계량 값으로 지정하여 관리 단말(160)로 전송할 수 있다.
이때, 본 발명의 일실시예에 따르면, 계량 데이터 수집 서버(110)가 수집한 상기 최종 계량 값은 제3자에 의한 조작이 발생하면 안되는 보안 데이터이기 때문에, 전송부(114)는 관리 단말(160)로 상기 최종 계량 값을 전송할 때, 상기 최종 계량 값을 암호화하여 전송하는 구성을 포함할 수 있다.
이와 관련해서, 본 발명의 일실시예에 따르면, 전송부(114)는 암호화 이벤트 발생부(118), 부분 데이터 생성부(119), 벡터 생성부(120), 인증 행렬 생성부(121), 연산 값 산출부(122), 치환 행렬 생성부(123), 암호화부(124) 및 전송 처리부(125)를 포함할 수 있다.
암호화 이벤트 발생부(118)는 상기 최종 계량 값이 지정되면, 상기 최종 계량 값을 암호화하여 관리 단말(160)로 전송하기 위한 암호화 이벤트를 발생시킨다.
부분 데이터 생성부(119)는 상기 암호화 이벤트가 발생되면, 상기 최종 계량 값을 암호화하기 위한 암호화키를 생성하고, 상기 암호화키에 대한 데이터를 2개로 분할함으로써, 제1 부분 데이터와 제2 부분 데이터를 생성한다.
벡터 생성부(120)는 상기 제1 부분 데이터와 상기 제2 부분 데이터가 생성되면, 상기 제1 부분 데이터를 n(n은 2 이상의 자연수임)개로 다시 분할함으로써, n개의 제1 분할 데이터들을 생성하고, 상기 제2 부분 데이터를 k(k는 2 이상의 자연수임)개로 다시 분할함으로써, k개의 제2 분할 데이터들을 생성한 후, 상기 n개의 제1 분할 데이터들 각각을 성분으로 갖는 n차원의 제1 열벡터와 상기 k개의 제2 분할 데이터들 각각을 성분으로 갖는 k차원의 제1 행벡터를 생성한다.
인증 행렬 생성부(121)는 랜덤하게 생성된 n x k개의 더미(dummy) 데이터들을 성분으로 갖는 n x k 크기의 인증 행렬을 생성한다.
연산 값 산출부(122)는 상기 인증 행렬이 생성되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 k를 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값 x를 산출하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값 y를 산출한다.
여기서, 모듈로 연산은 피제수를 제수로 나누는 나눗셈을 수행하여 그에 대한 나머지(remainder)를 산출하는 연산을 의미한다.
치환 행렬 생성부(123)는 상기 제1 연산 값 x와 상기 제2 연산 값 y가 산출되면, 상기 인증 행렬에서 x+1번째 열에 위치하는 열벡터를 상기 제1 열벡터로 치환함으로써, 제1 치환 행렬을 생성하고, 상기 인증 행렬에서 y+1번째 행에 위치하는 행벡터를 상기 제1 행벡터로 치환함으로써, 제2 치환 행렬을 생성한다.
암호화부(124)는 상기 제1 치환 행렬과 상기 제2 치환 행렬이 생성되면, 상기 최종 계량 값을 상기 암호화키로 암호화한 후, 상기 제1 치환 행렬과 상기 제2 치환 행렬을, 암호화된 상기 최종 계량 값을 복호화하기 위한 단서 정보로 지정한다.
전송 처리부(125)는 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬을 관리 단말(160)로 전송한다.
이하에서는, 암호화 이벤트 발생부(118), 부분 데이터 생성부(119), 벡터 생성부(120), 인증 행렬 생성부(121), 연산 값 산출부(122), 치환 행렬 생성부(123), 암호화부(124) 및 전송 처리부(125)의 동작을 예를 들어, 상세히 설명하기로 한다.
먼저, n을 '3', k를 '4'라고 하고, 전송부(114)에 의해 상기 최종 계량 값이 지정되면, 암호화 이벤트 발생부(118)는 상기 최종 계량 값을 암호화하여 관리 단말(160)로 전송하기 위한 암호화 이벤트를 발생시킬 수 있다.
이렇게, 상기 암호화 이벤트가 발생되면, 부분 데이터 생성부(119)는 상기 최종 계량 값을 암호화하기 위한 '암호화키 1'을 생성하고, '암호화키 1'에 대한 데이터를 2개로 분할함으로써, '부분 데이터 1'과 '부분 데이터 2'를 생성할 수 있다.
그러고 나서, 벡터 생성부(120)는 '부분 데이터 1'을 '3'개로 다시 분할함으로써, '3'개의 제1 분할 데이터들을 'a1, a2, a3'과 같이 생성할 수 있고, '부분 데이터 2'를'4'개로 다시 분할함으로써, '4'개의 제2 분할 데이터들을 'b1, b2, b3, b4'와 같이 생성할 수 있다.
그러면, 벡터 생성부(120)는 'a1, a2, a3' 각각을 성분으로 갖는 '3'차원의 제1 열벡터인 '
Figure 112021126945059-pat00001
'과, 'b1, b2, b3, b4' 각각을 성분으로 갖는 '4'차원의 제1 행벡터인 '
Figure 112021126945059-pat00002
'를 생성할 수 있다.
또한, 인증 행렬 생성부(121)는 랜덤하게 생성된 '12'개의 더미 데이터들을 성분으로 갖는 '3 x 4' 크기의 인증 행렬을 '
Figure 112021126945059-pat00003
'와 같이 생성할 수 있다.
여기서, 'd1, d2, ..., d12'는 랜덤하게 생성된 '12'개의 더미 데이터들을 의미한다.
그러면, 연산 값 산출부(122)는 상기 현재 시점에 대한 날짜 값을 획득할 수 있다. 예컨대, 상기 현재 시점에 대한 날짜 값을 '20211030'이라고 하는 경우, 연산 값 산출부(122)는 상기 현재 시점에 대한 날짜 값인 '20211030'을 획득할 수 있다. 그 이후, 연산 값 산출부(122)는 상기 날짜 값인 '20211030'에 대해 '4'를 제수로 하는 모듈로 연산을 수행함으로써, 제1 연산 값을 '2'와 같이 산출할 수 있고, '20211030'에 대해 '3'을 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값을 '0'과 같이 산출할 수 있다.
그리고 나서, 치환 행렬 생성부(123)는 상기 인증 행렬인 '
Figure 112021126945059-pat00004
'에서 '3'번째 열에 위치하는 열벡터를 상기 제1 열벡터인 '
Figure 112021126945059-pat00005
'으로 치환함으로써, 제1 치환 행렬을 '
Figure 112021126945059-pat00006
'와 같이 생성할 수 있고, 상기 인증 행렬에서 '1'번째 행에 위치하는 행벡터를 상기 제1 행벡터인 '
Figure 112021126945059-pat00007
'로 치환함으로써, 상기 제2 치환 행렬을 '
Figure 112021126945059-pat00008
'와 같이 생성할 수 있다.
그러면, 암호화부(124)는 상기 최종 계량 값을 '암호화키 1'로 암호화한 후, 상기 제1 치환 행렬인 '
Figure 112021126945059-pat00009
'과 상기 제2 치환 행렬인 '
Figure 112021126945059-pat00010
'을, 암호화된 상기 최종 계량 값을 복호화하기 위한 단서 정보로 지정할 수 있다.
그 이후, 전송 처리부(125)는 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬을 관리 단말(160)로 전송할 수 있다.
이렇게, 계량 데이터 수집 서버(110)로부터, 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬이 관리 단말(160)에 수신되면, 관리 단말(160)은 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬을 기초로, 상기 암호화키를 복원한 후, 복원된 상기 암호화키를 이용하여 암호화된 상기 최종 계량 값을 복호화할 수 있다.
이때, 본 발명의 일실시예에 따르면, 관리 단말(160)은 계량 데이터 수집 서버(110)로부터, 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬이 수신되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해, k를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값 x를 산출한 후, 상기 제1 치환 행렬로부터 x+1번째 열에 위치하는 열벡터를 상기 제1 열벡터로 추출하고, 상기 날짜 값에 대해, n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제2 연산 값 y를 산출한 후, 상기 제2 치환 행렬로부터 y+1번째 행에 위치하는 행벡터를 상기 제1 행벡터로 추출하고, 상기 제1 열벡터와 상기 제1 행벡터가 추출되면, 상기 제1 열벡터를 구성하는 n개의 성분들을 상기 n개의 제1 분할 데이터들로 추출한 후 상기 n개의 제1 분할 데이터들을 결합하여 상기 제1 부분 데이터를 복원하고, 상기 제1 행벡터를 구성하는 k개의 성분들을 상기 k개의 제2 분할 데이터들로 추출한 후 상기 k개의 제2 분할 데이터들을 결합하여 상기 제2 부분 데이터를 복원하며, 상기 제1 부분 데이터와 상기 제2 부분 데이터가 복원되면, 상기 제1 부분 데이터와 상기 제2 부분 데이터를 결합하여 상기 암호화키에 대한 데이터를 복원한 후, 복원된 상기 암호화키를 이용하여, 암호화된 상기 최종 계량 값을 복호화할 수 있다.
예컨대, 전술한 예에 따라, n을 '3', k를 '4'라고 하고, 상기 현재 시점에 대한 날짜 값을 '20211030'이라고 하며, 계량 데이터 수집 서버(110)로부터, 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬인 '
Figure 112021126945059-pat00011
'과 상기 제2 치환 행렬인 '
Figure 112021126945059-pat00012
'이 관리 단말(160)에 수신되었다고 가정하자.
그러면, 관리 단말(160)은 상기 현재 시점에 대한 날짜 값인 '20211030'을 획득하고, 상기 날짜 값인 '20211030'에 대해, '4'를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값인 '2'를 산출한 후, 상기 제1 치환 행렬인 '
Figure 112021126945059-pat00013
'로부터 '3'번째 열에 위치하는 열벡터인 '
Figure 112021126945059-pat00014
'을 상기 제1 열벡터로 추출하고, '20211030'에 대해, '3'을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제2 연산 값인 '0'을 산출한 후, 상기 제2 치환 행렬인 '
Figure 112021126945059-pat00015
'로부터 '1'번째 행에 위치하는 행벡터인 '
Figure 112021126945059-pat00016
'를 상기 제1 행벡터로 추출할 수 있다. 그러고 나서, 관리 단말(160)은 상기 제1 열벡터인 '
Figure 112021126945059-pat00017
'을 구성하는 '3'개의 성분들인 'a1, a2, a3'을 상기 '3'개의 제1 분할 데이터들로 추출한 후, 상기 '3'개의 제1 분할 데이터들인 'a1, a2, a3'을 결합하여 '부분 데이터 1'을 복원하고, 상기 제1 행벡터인 '
Figure 112021126945059-pat00018
'를 구성하는 '4'개의 성분들인 'b1, b2, b3, b4'를 상기 '4'개의 제2 분할 데이터들로 추출한 후, 상기 '4'개의 제2 분할 데이터들인 'b1, b2, b3, b4'를 결합하여 '부분 데이터 2'를 복원할 수 있다.
이때, 전술한 예에 따르면, '부분 데이터 1'과 '부분 데이터 2'는, 부분 데이터 생성부(119)에 의해 '암호화키 1'에 대한 데이터가 2개로 분할되어 생성된 부분 데이터들이므로, 관리 단말(160)은 '부분 데이터 1'과 '부분 데이터 2'를 결합하여 '암호화키 1'에 대한 데이터를 복원할 수 있고, 그 이후, 복원된 '암호화키 1'을 이용하여, 상기 최종 계량 값을 복호화할 수 있다.
본 발명의 일실시예에 따르면, 계량 데이터 수집 서버(110)는 수집 이력 정보 생성부(126) 및 등록 요청부(127)를 더 포함할 수 있다.
수집 이력 정보 생성부(126)는 상기 최종 계량 값이 관리 단말(160)로 전송되면, 상기 현재 시점에 대한 시간 정보를 생성한 후, 상기 시간 정보와 상기 최종 계량 값으로 구성된 수집 이력 정보를 생성한다.
예컨대, 전송부(114)를 통해, '최종 계량 값 1'이라는 상기 최종 계량 값이 관리 단말(160)로 전송되었다고 가정하자. 그러면, 수집 이력 정보 생성부(126)는 상기 현재 시점에 대한 시간 정보를 생성한 후, 상기 시간 정보와 상기 최종 계량 값인 '최종 계량 값 1'로 구성된 수집 이력 정보를 생성할 수 있다.
관련해서, 상기 시간 정보를 '시간 정보 1'이라고 하는 경우, 수집 이력 정보 생성부(126)는 하기의 표 1과 같은 수집 이력 정보를 생성할 수 있다.
시간 정보 최종 계량 값
시간 정보 1 최종 계량 값 1
등록 요청부(127)는 상기 수집 이력 정보가 생성되면, 상기 수집 이력 정보가 포함된 트랜잭션을 생성한 후, 블록체인 네트워크를 구성하고 있는 복수의 노드 장치들(11, 12, 13, 14) 중 어느 하나인 제1 노드 장치를 랜덤하게 선택하여, 상기 제1 노드 장치로, 상기 트랜잭션을 전송하면서, 상기 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송한다.
이때, 상기 제1 노드 장치는 계량 데이터 수집 서버(110)로부터 상기 트랜잭션과 상기 등록 요청이 수신되면, 상기 제1 노드 장치의 메모리 상에 저장되어 있는 블록체인 데이터에 체인으로 연결된 이전 블록을 기초로, 상기 트랜잭션이 포함된 제1 블록을 생성하고, 상기 제1 블록을 상기 블록체인 데이터에 체인으로 연결함으로써, 상기 제1 블록을, 복수의 노드 장치들(11, 12, 13, 14) 중 상기 제1 노드 장치를 제외한 나머지 노드 장치들로 전파할 수 있다.
구체적으로, 상기 제1 노드 장치는 계량 데이터 수집 서버(110)로부터 상기 트랜잭션과 함께 상기 등록 요청이 수신되면, 상기 블록체인 데이터에 체인으로 연결되어 있는 이전 블록의 블록 헤더를 참조하여 상기 트랜잭션이 포함된 새로운 블록인 상기 제1 블록을 생성할 수 있다. 그러고 나서, 상기 제1 노드 장치는 상기 제1 블록을 상기 블록체인 데이터에 체인으로 연결함으로써, 상기 제1 블록에 대한 저장을 완료한 후 상기 블록체인 네트워크를 통해 상기 제1 블록을 복수의 노드 장치들(11, 12, 13, 14) 중 상기 제1 노드 장치를 제외한 나머지 노드 장치들로 전파할 수 있다.
이렇게, 본 발명에 따른 계량 데이터 수집 서버(110)는 관리 단말(160)로 상기 최종 계량 값이 전송되면, 상기 수집 이력 정보를 생성하여 블록체인 네트워크에 등록해 둠으로써, 관리자가 이러한 수집 이력 정보를 확인하여, 상기 최종 계량 값이 관리 단말(160)로 언제 전송되었고, 전송된 상기 최종 계량 값이 얼마인지를 모니터링할 수 있도록 지원할 수 있다.
도 2는 본 발명의 일실시예에 따른 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버의 동작 방법을 도시한 순서도이다.
단계(S210)에서는 관리 단말로부터 상기 계량기에 대한 계량 데이터의 전송 요청이 수신되면, 상기 카메라로, 상기 계량기에서 계량 값이 표시되는 영역을 t(t는 2 이상의 자연수임)번 연속해서 촬영할 것을 요청하는 촬영 요청 명령을 전송한다.
단계(S220)에서는 상기 카메라가, 상기 촬영 요청 명령에 대응하여, 상기 계량기에서 계량 값이 표시되는 영역을 t번 연속해서 촬영함에 따라, 상기 카메라로부터, t번 연속해서 촬영되어 생성된 t개의 촬영 이미지들이 수신되면, 상기 t개의 촬영 이미지들 각각에 대해, 사전 설정된 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, t개의 계량 값들을 생성한다.
단계(S230)에서는 상기 t개의 계량 값들이 생성되면, 상기 t개의 계량 값들을 서로 비교하여, 상기 t개의 계량 값들에서 사전 설정된 제1 비율 이상 존재하는 공통 계량 값이 있는지 여부를 확인한다.
단계(S240)에서는 상기 t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는 것으로 확인되면, 확인된 공통 계량 값을, 상기 계량기에 대한 현재 시점의 최종 계량 값으로 지정하여 상기 관리 단말로 전송한다.
이때, 본 발명의 일실시예에 따르면, 상기 계량 데이터 수집 서버의 동작 방법은 단계(S230)를 통한 확인 결과, 상기 t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 없는 것으로 확인된 경우, 상기 카메라로, 상기 계량기에서 계량 값이 표시되는 영역을 2t번 연속해서 촬영할 것을 요청하는 재촬영 요청 명령을 전송하는 단계, 상기 카메라가, 상기 재촬영 요청 명령에 대응하여, 상기 계량기에서 계량 값이 표시되는 영역을 2t번 연속해서 촬영함에 따라, 상기 카메라로부터, 2t번 연속해서 촬영되어 생성된 2t개의 촬영 이미지들이 수신되면, 상기 2t개의 촬영 이미지들 각각에 대해, 상기 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, 2t개의 계량 값들을 생성하는 단계, 상기 2t개의 계량 값들이 생성되면, 상기 2t개의 계량 값들을 서로 비교하여, 상기 2t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는지 여부를 확인하는 단계 및 상기 2t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는 것으로 확인되면, 확인된 공통 계량 값을, 상기 계량기에 대한 현재 시점의 최종 계량 값으로 지정하여 상기 관리 단말로 전송하는 단계를 더 포함할 수 있다.
또한, 본 발명의 일실시예에 따르면, 단계(S240)에서는 상기 최종 계량 값이 지정되면, 상기 최종 계량 값을 암호화하여 상기 관리 단말로 전송하기 위한 암호화 이벤트를 발생시키는 단계, 상기 암호화 이벤트가 발생되면, 상기 최종 계량 값을 암호화하기 위한 암호화키를 생성하고, 상기 암호화키에 대한 데이터를 2개로 분할함으로써, 제1 부분 데이터와 제2 부분 데이터를 생성하는 단계, 상기 제1 부분 데이터와 상기 제2 부분 데이터가 생성되면, 상기 제1 부분 데이터를 n(n은 2 이상의 자연수임)개로 다시 분할함으로써, n개의 제1 분할 데이터들을 생성하고, 상기 제2 부분 데이터를 k(k는 2 이상의 자연수임)개로 다시 분할함으로써, k개의 제2 분할 데이터들을 생성한 후, 상기 n개의 제1 분할 데이터들 각각을 성분으로 갖는 n차원의 제1 열벡터와 상기 k개의 제2 분할 데이터들 각각을 성분으로 갖는 k차원의 제1 행벡터를 생성하는 단계, 랜덤하게 생성된 n x k개의 더미 데이터들을 성분으로 갖는 n x k 크기의 인증 행렬을 생성하는 단계, 상기 인증 행렬이 생성되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 k를 제수로 하는 모듈로 연산을 수행함으로써, 제1 연산 값 x를 산출하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값 y를 산출하는 단계, 상기 제1 연산 값 x와 상기 제2 연산 값 y가 산출되면, 상기 인증 행렬에서 x+1번째 열에 위치하는 열벡터를 상기 제1 열벡터로 치환함으로써, 제1 치환 행렬을 생성하고, 상기 인증 행렬에서 y+1번째 행에 위치하는 행벡터를 상기 제1 행벡터로 치환함으로써, 제2 치환 행렬을 생성하는 단계, 상기 제1 치환 행렬과 상기 제2 치환 행렬이 생성되면, 상기 최종 계량 값을 상기 암호화키로 암호화한 후, 상기 제1 치환 행렬과 상기 제2 치환 행렬을, 암호화된 상기 최종 계량 값을 복호화하기 위한 단서 정보로 지정하는 단계 및 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬을 상기 관리 단말로 전송하는 단계를 포함할 수 있다.
이때, 상기 관리 단말은 상기 계량 데이터 수집 서버로부터, 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬이 수신되면, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬을 기초로, 상기 암호화키를 복원한 후, 복원된 상기 암호화키를 이용하여 암호화된 상기 최종 계량 값을 복호화할 수 있다.
이때, 본 발명의 일실시예에 따르면, 상기 관리 단말은 상기 계량 데이터 수집 서버로부터, 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬이 수신되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해, k를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값 x를 산출한 후, 상기 제1 치환 행렬로부터 x+1번째 열에 위치하는 열벡터를 상기 제1 열벡터로 추출하고, 상기 날짜 값에 대해, n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제2 연산 값 y를 산출한 후, 상기 제2 치환 행렬로부터 y+1번째 행에 위치하는 행벡터를 상기 제1 행벡터로 추출하고, 상기 제1 열벡터와 상기 제1 행벡터가 추출되면, 상기 제1 열벡터를 구성하는 n개의 성분들을 상기 n개의 제1 분할 데이터들로 추출한 후 상기 n개의 제1 분할 데이터들을 결합하여 상기 제1 부분 데이터를 복원하고, 상기 제1 행벡터를 구성하는 k개의 성분들을 상기 k개의 제2 분할 데이터들로 추출한 후 상기 k개의 제2 분할 데이터들을 결합하여 상기 제2 부분 데이터를 복원하며, 상기 제1 부분 데이터와 상기 제2 부분 데이터가 복원되면, 상기 제1 부분 데이터와 상기 제2 부분 데이터를 결합하여 상기 암호화키에 대한 데이터를 복원한 후, 복원된 상기 암호화키를 이용하여, 암호화된 상기 최종 계량 값을 복호화할 수 있다.
또한, 본 발명의 일실시예에 따르면, 상기 계량 데이터 수집 서버의 동작 방법은 상기 최종 계량 값이 상기 관리 단말로 전송되면, 상기 현재 시점에 대한 시간 정보를 생성한 후, 상기 시간 정보와 상기 최종 계량 값으로 구성된 수집 이력 정보를 생성하는 단계 및 상기 수집 이력 정보가 생성되면, 상기 수집 이력 정보가 포함된 트랜잭션을 생성한 후, 블록체인 네트워크를 구성하고 있는 복수의 노드 장치들 중 어느 하나인 제1 노드 장치를 랜덤하게 선택하여, 상기 제1 노드 장치로, 상기 트랜잭션을 전송하면서, 상기 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송하는 단계를 더 포함할 수 있다.
이때, 상기 제1 노드 장치는 상기 계량 데이터 수집 서버로부터 상기 트랜잭션과 상기 등록 요청이 수신되면, 상기 제1 노드 장치의 메모리 상에 저장되어 있는 블록체인 데이터에 체인으로 연결된 이전 블록을 기초로, 상기 트랜잭션이 포함된 제1 블록을 생성하고, 상기 제1 블록을 상기 블록체인 데이터에 체인으로 연결함으로써, 상기 제1 블록에 대한 저장을 완료한 후, 상기 블록체인 네트워크를 통해 상기 제1 블록을, 상기 복수의 노드 장치들 중 상기 제1 노드 장치를 제외한 나머지 노드 장치들로 전파할 수 있다.
이상, 도 2를 참조하여 본 발명의 일실시예에 따른 계량 데이터 수집 서버의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 계량 데이터 수집 서버의 동작 방법은 도 1을 이용하여 설명한 계량 데이터 수집 서버(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.
본 발명의 일실시예에 따른 계량 데이터 수집 서버의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.
또한, 본 발명의 일실시예에 따른 계량 데이터 수집 서버의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
110: 계량 데이터 수집 서버
111: 촬영 요청부 112: 계량 값 생성부
113: 확인부 114: 전송부
115: 재촬영 요청부 116: 계량 값 재생성부
117: 재확인부 118: 암호화 이벤트 발생부
119: 부분 데이터 생성부 120: 벡터 생성부
121: 인증 행렬 생성부 122: 연산 값 산출부
123: 치환 행렬 생성부 124: 암호화부
125: 전송 처리부 126: 수집 이력 정보 생성부
127: 등록 요청부
150: 계량기
151: 카메라
160: 관리 단말
11, 12, 13, 14: 복수의 노드 장치들

Claims (12)

  1. 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버에 있어서,
    관리 단말로부터 상기 계량기에 대한 계량 데이터의 전송 요청이 수신되면, 상기 카메라로, 상기 계량기에서 계량 값이 표시되는 영역을 t(t는 2 이상의 자연수임)번 연속해서 촬영할 것을 요청하는 촬영 요청 명령을 전송하는 촬영 요청부;
    상기 카메라가, 상기 촬영 요청 명령에 대응하여, 상기 계량기에서 계량 값이 표시되는 영역을 t번 연속해서 촬영함에 따라, 상기 카메라로부터, t번 연속해서 촬영되어 생성된 t개의 촬영 이미지들이 수신되면, 상기 t개의 촬영 이미지들 각각에 대해, 사전 설정된 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, t개의 계량 값들을 생성하는 계량 값 생성부;
    상기 t개의 계량 값들이 생성되면, 상기 t개의 계량 값들을 서로 비교하여, 상기 t개의 계량 값들에서 사전 설정된 제1 비율 이상 존재하는 공통 계량 값이 있는지 여부를 확인하는 확인부;
    상기 t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는 것으로 확인되면, 확인된 공통 계량 값을, 상기 계량기에 대한 현재 시점의 최종 계량 값으로 지정하여 상기 관리 단말로 전송하는 전송부;
    상기 확인부를 통한 확인 결과, 상기 t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 없는 것으로 확인된 경우, 상기 카메라로, 상기 계량기에서 계량 값이 표시되는 영역을 2t번 연속해서 촬영할 것을 요청하는 재촬영 요청 명령을 전송하는 재촬영 요청부;
    상기 카메라가, 상기 재촬영 요청 명령에 대응하여, 상기 계량기에서 계량 값이 표시되는 영역을 2t번 연속해서 촬영함에 따라, 상기 카메라로부터, 2t번 연속해서 촬영되어 생성된 2t개의 촬영 이미지들이 수신되면, 상기 2t개의 촬영 이미지들 각각에 대해, 상기 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, 2t개의 계량 값들을 생성하는 계량 값 재생성부; 및
    상기 2t개의 계량 값들이 생성되면, 상기 2t개의 계량 값들을 서로 비교하여, 상기 2t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는지 여부를 확인하는 재확인부
    를 포함하고,
    상기 전송부는
    상기 재확인부를 통한 확인 결과, 상기 2t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는 것으로 확인되면, 확인된 공통 계량 값을, 상기 계량기에 대한 현재 시점의 최종 계량 값으로 지정하여 상기 관리 단말로 전송하는 것을 특징으로 하는 계량 데이터 수집 서버.
  2. 삭제
  3. 제1항에 있어서,
    상기 전송부는
    상기 최종 계량 값이 지정되면, 상기 최종 계량 값을 암호화하여 상기 관리 단말로 전송하기 위한 암호화 이벤트를 발생시키는 암호화 이벤트 발생부;
    상기 암호화 이벤트가 발생되면, 상기 최종 계량 값을 암호화하기 위한 암호화키를 생성하고, 상기 암호화키에 대한 데이터를 2개로 분할함으로써, 제1 부분 데이터와 제2 부분 데이터를 생성하는 부분 데이터 생성부;
    상기 제1 부분 데이터와 상기 제2 부분 데이터가 생성되면, 상기 제1 부분 데이터를 n(n은 2 이상의 자연수임)개로 다시 분할함으로써, n개의 제1 분할 데이터들을 생성하고, 상기 제2 부분 데이터를 k(k는 2 이상의 자연수임)개로 다시 분할함으로써, k개의 제2 분할 데이터들을 생성한 후, 상기 n개의 제1 분할 데이터들 각각을 성분으로 갖는 n차원의 제1 열벡터와 상기 k개의 제2 분할 데이터들 각각을 성분으로 갖는 k차원의 제1 행벡터를 생성하는 벡터 생성부;
    랜덤하게 생성된 n x k개의 더미(dummy) 데이터들을 성분으로 갖는 n x k 크기의 인증 행렬을 생성하는 인증 행렬 생성부;
    상기 인증 행렬이 생성되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 k를 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값 x를 산출하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값 y를 산출하는 연산 값 산출부;
    상기 제1 연산 값 x와 상기 제2 연산 값 y가 산출되면, 상기 인증 행렬에서 x+1번째 열에 위치하는 열벡터를 상기 제1 열벡터로 치환함으로써, 제1 치환 행렬을 생성하고, 상기 인증 행렬에서 y+1번째 행에 위치하는 행벡터를 상기 제1 행벡터로 치환함으로써, 제2 치환 행렬을 생성하는 치환 행렬 생성부;
    상기 제1 치환 행렬과 상기 제2 치환 행렬이 생성되면, 상기 최종 계량 값을 상기 암호화키로 암호화한 후, 상기 제1 치환 행렬과 상기 제2 치환 행렬을, 암호화된 상기 최종 계량 값을 복호화하기 위한 단서 정보로 지정하는 암호화부; 및
    암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬을 상기 관리 단말로 전송하는 전송 처리부
    를 포함하고,
    상기 관리 단말은
    상기 계량 데이터 수집 서버로부터, 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬이 수신되면, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬을 기초로, 상기 암호화키를 복원한 후, 복원된 상기 암호화키를 이용하여 암호화된 상기 최종 계량 값을 복호화하는 것을 특징으로 하는 계량 데이터 수집 서버.
  4. 제3항에 있어서,
    상기 관리 단말은
    상기 계량 데이터 수집 서버로부터, 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬이 수신되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해, k를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값 x를 산출한 후, 상기 제1 치환 행렬로부터 x+1번째 열에 위치하는 열벡터를 상기 제1 열벡터로 추출하고, 상기 날짜 값에 대해, n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제2 연산 값 y를 산출한 후, 상기 제2 치환 행렬로부터 y+1번째 행에 위치하는 행벡터를 상기 제1 행벡터로 추출하고, 상기 제1 열벡터와 상기 제1 행벡터가 추출되면, 상기 제1 열벡터를 구성하는 n개의 성분들을 상기 n개의 제1 분할 데이터들로 추출한 후 상기 n개의 제1 분할 데이터들을 결합하여 상기 제1 부분 데이터를 복원하고, 상기 제1 행벡터를 구성하는 k개의 성분들을 상기 k개의 제2 분할 데이터들로 추출한 후 상기 k개의 제2 분할 데이터들을 결합하여 상기 제2 부분 데이터를 복원하며, 상기 제1 부분 데이터와 상기 제2 부분 데이터가 복원되면, 상기 제1 부분 데이터와 상기 제2 부분 데이터를 결합하여 상기 암호화키에 대한 데이터를 복원한 후, 복원된 상기 암호화키를 이용하여, 암호화된 상기 최종 계량 값을 복호화하는 것을 특징으로 하는 계량 데이터 수집 서버.
  5. 제1항에 있어서,
    상기 최종 계량 값이 상기 관리 단말로 전송되면, 상기 현재 시점에 대한 시간 정보를 생성한 후, 상기 시간 정보와 상기 최종 계량 값으로 구성된 수집 이력 정보를 생성하는 수집 이력 정보 생성부; 및
    상기 수집 이력 정보가 생성되면, 상기 수집 이력 정보가 포함된 트랜잭션을 생성한 후, 블록체인 네트워크를 구성하고 있는 복수의 노드 장치들 중 어느 하나인 제1 노드 장치를 랜덤하게 선택하여, 상기 제1 노드 장치로, 상기 트랜잭션을 전송하면서, 상기 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송하는 등록 요청부
    를 더 포함하고,
    상기 제1 노드 장치는
    상기 계량 데이터 수집 서버로부터 상기 트랜잭션과 상기 등록 요청이 수신되면, 상기 제1 노드 장치의 메모리 상에 저장되어 있는 블록체인 데이터에 체인으로 연결된 이전 블록을 기초로, 상기 트랜잭션이 포함된 제1 블록을 생성하고, 상기 제1 블록을 상기 블록체인 데이터에 체인으로 연결함으로써, 상기 제1 블록에 대한 저장을 완료한 후, 상기 블록체인 네트워크를 통해 상기 제1 블록을, 상기 복수의 노드 장치들 중 상기 제1 노드 장치를 제외한 나머지 노드 장치들로 전파하는 것을 특징으로 하는 계량 데이터 수집 서버.
  6. 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버의 동작 방법에 있어서,
    관리 단말로부터 상기 계량기에 대한 계량 데이터의 전송 요청이 수신되면, 상기 카메라로, 상기 계량기에서 계량 값이 표시되는 영역을 t(t는 2 이상의 자연수임)번 연속해서 촬영할 것을 요청하는 촬영 요청 명령을 전송하는 단계;
    상기 카메라가, 상기 촬영 요청 명령에 대응하여, 상기 계량기에서 계량 값이 표시되는 영역을 t번 연속해서 촬영함에 따라, 상기 카메라로부터, t번 연속해서 촬영되어 생성된 t개의 촬영 이미지들이 수신되면, 상기 t개의 촬영 이미지들 각각에 대해, 사전 설정된 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, t개의 계량 값들을 생성하는 단계;
    상기 t개의 계량 값들이 생성되면, 상기 t개의 계량 값들을 서로 비교하여, 상기 t개의 계량 값들에서 사전 설정된 제1 비율 이상 존재하는 공통 계량 값이 있는지 여부를 확인하는 단계;
    상기 t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는 것으로 확인되면, 확인된 공통 계량 값을, 상기 계량기에 대한 현재 시점의 최종 계량 값으로 지정하여 상기 관리 단말로 전송하는 단계;
    상기 확인하는 단계를 통한 확인 결과, 상기 t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 없는 것으로 확인된 경우, 상기 카메라로, 상기 계량기에서 계량 값이 표시되는 영역을 2t번 연속해서 촬영할 것을 요청하는 재촬영 요청 명령을 전송하는 단계;
    상기 카메라가, 상기 재촬영 요청 명령에 대응하여, 상기 계량기에서 계량 값이 표시되는 영역을 2t번 연속해서 촬영함에 따라, 상기 카메라로부터, 2t번 연속해서 촬영되어 생성된 2t개의 촬영 이미지들이 수신되면, 상기 2t개의 촬영 이미지들 각각에 대해, 상기 문자 인식 모듈을 이용하여 각 촬영 이미지에 포함되어 있는 문자를 인식한 후, 각 촬영 이미지에서 인식된 문자를 각 촬영 이미지에 대응되는 계량 값으로 생성함으로써, 2t개의 계량 값들을 생성하는 단계;
    상기 2t개의 계량 값들이 생성되면, 상기 2t개의 계량 값들을 서로 비교하여, 상기 2t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는지 여부를 확인하는 단계; 및
    상기 2t개의 계량 값들에서 상기 제1 비율 이상 존재하는 공통 계량 값이 있는 것으로 확인되면, 확인된 공통 계량 값을, 상기 계량기에 대한 현재 시점의 최종 계량 값으로 지정하여 상기 관리 단말로 전송 처리하는 단계
    를 포함하는 계량 데이터 수집 서버의 동작 방법.
  7. 삭제
  8. 제6항에 있어서,
    상기 관리 단말로 전송하는 단계는
    상기 최종 계량 값이 지정되면, 상기 최종 계량 값을 암호화하여 상기 관리 단말로 전송하기 위한 암호화 이벤트를 발생시키는 단계;
    상기 암호화 이벤트가 발생되면, 상기 최종 계량 값을 암호화하기 위한 암호화키를 생성하고, 상기 암호화키에 대한 데이터를 2개로 분할함으로써, 제1 부분 데이터와 제2 부분 데이터를 생성하는 단계;
    상기 제1 부분 데이터와 상기 제2 부분 데이터가 생성되면, 상기 제1 부분 데이터를 n(n은 2 이상의 자연수임)개로 다시 분할함으로써, n개의 제1 분할 데이터들을 생성하고, 상기 제2 부분 데이터를 k(k는 2 이상의 자연수임)개로 다시 분할함으로써, k개의 제2 분할 데이터들을 생성한 후, 상기 n개의 제1 분할 데이터들 각각을 성분으로 갖는 n차원의 제1 열벡터와 상기 k개의 제2 분할 데이터들 각각을 성분으로 갖는 k차원의 제1 행벡터를 생성하는 단계;
    랜덤하게 생성된 n x k개의 더미(dummy) 데이터들을 성분으로 갖는 n x k 크기의 인증 행렬을 생성하는 단계;
    상기 인증 행렬이 생성되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 k를 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값 x를 산출하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값 y를 산출하는 단계;
    상기 제1 연산 값 x와 상기 제2 연산 값 y가 산출되면, 상기 인증 행렬에서 x+1번째 열에 위치하는 열벡터를 상기 제1 열벡터로 치환함으로써, 제1 치환 행렬을 생성하고, 상기 인증 행렬에서 y+1번째 행에 위치하는 행벡터를 상기 제1 행벡터로 치환함으로써, 제2 치환 행렬을 생성하는 단계;
    상기 제1 치환 행렬과 상기 제2 치환 행렬이 생성되면, 상기 최종 계량 값을 상기 암호화키로 암호화한 후, 상기 제1 치환 행렬과 상기 제2 치환 행렬을, 암호화된 상기 최종 계량 값을 복호화하기 위한 단서 정보로 지정하는 단계; 및
    암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬을 상기 관리 단말로 전송하는 단계
    를 포함하고,
    상기 관리 단말은
    상기 계량 데이터 수집 서버로부터, 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬이 수신되면, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬을 기초로, 상기 암호화키를 복원한 후, 복원된 상기 암호화키를 이용하여 암호화된 상기 최종 계량 값을 복호화하는 것을 특징으로 하는 계량 데이터 수집 서버의 동작 방법.
  9. 제8항에 있어서,
    상기 관리 단말은
    상기 계량 데이터 수집 서버로부터, 암호화된 상기 최종 계량 값과 함께, 상기 단서 정보로 지정된 상기 제1 치환 행렬과 상기 제2 치환 행렬이 수신되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해, k를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값 x를 산출한 후, 상기 제1 치환 행렬로부터 x+1번째 열에 위치하는 열벡터를 상기 제1 열벡터로 추출하고, 상기 날짜 값에 대해, n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제2 연산 값 y를 산출한 후, 상기 제2 치환 행렬로부터 y+1번째 행에 위치하는 행벡터를 상기 제1 행벡터로 추출하고, 상기 제1 열벡터와 상기 제1 행벡터가 추출되면, 상기 제1 열벡터를 구성하는 n개의 성분들을 상기 n개의 제1 분할 데이터들로 추출한 후 상기 n개의 제1 분할 데이터들을 결합하여 상기 제1 부분 데이터를 복원하고, 상기 제1 행벡터를 구성하는 k개의 성분들을 상기 k개의 제2 분할 데이터들로 추출한 후 상기 k개의 제2 분할 데이터들을 결합하여 상기 제2 부분 데이터를 복원하며, 상기 제1 부분 데이터와 상기 제2 부분 데이터가 복원되면, 상기 제1 부분 데이터와 상기 제2 부분 데이터를 결합하여 상기 암호화키에 대한 데이터를 복원한 후, 복원된 상기 암호화키를 이용하여, 암호화된 상기 최종 계량 값을 복호화하는 것을 특징으로 하는 계량 데이터 수집 서버의 동작 방법.
  10. 제6항에 있어서,
    상기 최종 계량 값이 상기 관리 단말로 전송되면, 상기 현재 시점에 대한 시간 정보를 생성한 후, 상기 시간 정보와 상기 최종 계량 값으로 구성된 수집 이력 정보를 생성하는 단계; 및
    상기 수집 이력 정보가 생성되면, 상기 수집 이력 정보가 포함된 트랜잭션을 생성한 후, 블록체인 네트워크를 구성하고 있는 복수의 노드 장치들 중 어느 하나인 제1 노드 장치를 랜덤하게 선택하여, 상기 제1 노드 장치로, 상기 트랜잭션을 전송하면서, 상기 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송하는 단계
    를 더 포함하고,
    상기 제1 노드 장치는
    상기 계량 데이터 수집 서버로부터 상기 트랜잭션과 상기 등록 요청이 수신되면, 상기 제1 노드 장치의 메모리 상에 저장되어 있는 블록체인 데이터에 체인으로 연결된 이전 블록을 기초로, 상기 트랜잭션이 포함된 제1 블록을 생성하고, 상기 제1 블록을 상기 블록체인 데이터에 체인으로 연결함으로써, 상기 제1 블록에 대한 저장을 완료한 후, 상기 블록체인 네트워크를 통해 상기 제1 블록을, 상기 복수의 노드 장치들 중 상기 제1 노드 장치를 제외한 나머지 노드 장치들로 전파하는 것을 특징으로 하는 계량 데이터 수집 서버의 동작 방법.
  11. 제6항, 제8항, 제9항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
  12. 제6항, 제8항, 제9항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.
KR1020210150031A 2021-11-03 2021-11-03 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법 KR102486027B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210150031A KR102486027B1 (ko) 2021-11-03 2021-11-03 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210150031A KR102486027B1 (ko) 2021-11-03 2021-11-03 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법

Publications (1)

Publication Number Publication Date
KR102486027B1 true KR102486027B1 (ko) 2023-01-06

Family

ID=84923947

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210150031A KR102486027B1 (ko) 2021-11-03 2021-11-03 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법

Country Status (1)

Country Link
KR (1) KR102486027B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101851261B1 (ko) * 2017-06-09 2018-04-23 씨토 주식회사 사설 블록체인 데이터 기반 중앙집중형 원격검침 보안시스템
KR20190048543A (ko) * 2017-10-31 2019-05-09 주식회사 소네트 위치 센서를 이용한 컨테이너 영상 인식 장치 및 그 방법
KR20210090484A (ko) * 2020-01-10 2021-07-20 금오공과대학교 산학협력단 촬영영상을 이용한 계량기 무인 원격 검침 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101851261B1 (ko) * 2017-06-09 2018-04-23 씨토 주식회사 사설 블록체인 데이터 기반 중앙집중형 원격검침 보안시스템
KR20190048543A (ko) * 2017-10-31 2019-05-09 주식회사 소네트 위치 센서를 이용한 컨테이너 영상 인식 장치 및 그 방법
KR20210090484A (ko) * 2020-01-10 2021-07-20 금오공과대학교 산학협력단 촬영영상을 이용한 계량기 무인 원격 검침 시스템

Similar Documents

Publication Publication Date Title
US11010855B2 (en) Method and apparatus for protecting digital photos from alteration
CN111628868B (zh) 数字签名生成方法、装置、计算机设备和存储介质
CN105471575B (zh) 一种信息加密、解密方法及装置
CN111314069B (zh) 基于区块链的摇号系统、方法、电子设备及存储介质
US7308577B2 (en) Image verification system, image verification apparatus, and image verification method
CN1741449B (zh) 数据处理系统及其控制方法、计算机程序和可读记录介质
US11227037B2 (en) Computer system, verification method of confidential information, and computer
CN103593618A (zh) 电子数据证据的可采用性验证方法及系统
JP4261724B2 (ja) 署名データ生成装置及び画像検証装置
CN104980278A (zh) 验证生物特征图像的可用性的方法和装置
US9094204B2 (en) Image encryption system and image decryption system
CN103646375A (zh) 智能移动终端拍照的照片原始性可认证方法
CN110022355B (zh) 特定场景下环境数据的存储方法、验真方法和设备
US10783278B2 (en) Signature generation device, signature verification device, signature generation method, and signature verification method
CN114285575A (zh) 图像加密和解密方法和装置、存储介质及电子装置
KR102486027B1 (ko) 계량기에서 계량 값이 표시되는 영역을 촬영하도록 배치된 카메라와 연동하여 계량 데이터를 수집하는 계량 데이터 수집 서버 및 그 동작 방법
US20210099772A1 (en) System and method for verification of video integrity based on blockchain
JP2019057880A (ja) 撮影装置、画像処理システム、画像処理プログラム、検索プログラム、及び撮影プログラム
JP6541311B2 (ja) 暗号情報コードを利用した復号システム、プログラム及び方法
JP2013197889A (ja) 画像処理装置、画像処理方法
KR20220051510A (ko) 개인 정보가 포함된 이미지의 보호 장치, 개인 정보가 포함된 이미지의 보호 방법 및 개인 정보가 포함된 이미지의 보호 방법을 수행하기 위하여 매체에 저장된 컴퓨터 프로그램
JP2005284854A (ja) プラント点検保守記録の管理方法および装置、ならびにプラント点検保守記録の確認方法および装置
WO2022201234A1 (ja) 秘密検索方法、秘密検索システム、秘密検索装置、暗号化装置、検索者端末、およびプログラム
JP7021375B2 (ja) 計算機システム、秘密情報の検証方法、及び計算機
WO2022201235A1 (ja) 秘密検索方法、秘密検索システム、秘密検索装置、暗号化装置、検索者端末、およびプログラム

Legal Events

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