KR20210022852A - Block chain-based iot management system using cryptographic module - Google Patents
Block chain-based iot management system using cryptographic module Download PDFInfo
- Publication number
- KR20210022852A KR20210022852A KR1020190102102A KR20190102102A KR20210022852A KR 20210022852 A KR20210022852 A KR 20210022852A KR 1020190102102 A KR1020190102102 A KR 1020190102102A KR 20190102102 A KR20190102102 A KR 20190102102A KR 20210022852 A KR20210022852 A KR 20210022852A
- Authority
- KR
- South Korea
- Prior art keywords
- module
- client
- data
- member management
- encryption
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic 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)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
Description
본 발명은 사물인터넷 관리 시스템에 관한 것으로 보다 상세하게는, 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리시스템에 관한 것이다.The present invention relates to an IoT management system, and more particularly, to a blockchain-based IoT management system using an encryption module.
사물인터넷(Internet of Things; IOT)이란, 각종 사물에 센서 및 통신 기능을 내장하여 사물이 인터넷에 연결되는 독립 장치가 되도록 함으로써, 사물들이 외부 환경으로부터 취득한 데이터를 클라이언트에게 제공하거나 클라이언트가 사물을 원격으로 제어할 수 있도록 하는 기술을 의미한다. 예를 들어, 인터넷에 연결되어 독자적인 IP(Internet Protocol) 주소를 가진 센서가 센싱 값을 인터넷을 통해 중앙의 서버에 전송하면, 클라이언트는 서버에 접속하여 센싱 정보의 검색, 수집, 분석 및 가공과 같은 처리를 수행할 수 있다.Internet of Things (IOT) means that objects can be connected to the Internet by embedding sensors and communication functions in various objects, thereby providing data acquired from the external environment to the client or allowing the client to remotely control the object. It refers to a technology that allows you to control it. For example, if a sensor connected to the Internet and having its own IP (Internet Protocol) address transmits the sensing value to a central server through the Internet, the client accesses the server and detects, collects, analyzes, and processes sensing information. Treatment can be carried out.
또한, 사물인터넷은 의료, 교통, 제조 등 다양한 상업 분야에 적용되고 있으며, 본격적인 시장 활성화가 진행됨에 따라 그 개체수가 증가하고 있고, 사물인터넷의 개체수에 대응한 데이터의 양도 증가하고 있다.In addition, IoT is being applied to various commercial fields such as medical care, transportation, and manufacturing, and as the market revitalization progresses, the number of the IoT is increasing, and the amount of data corresponding to the number of IoT is increasing.
그러나, 현재까지의 IOT 기술로는 사물이 센싱 값의 의미를 자체적으로 파악할 수 없으며, 센싱 정보의 처리를 위해서는 센싱 정보가 클라우드(Cloud) 서버와 같은 중앙의 서버에 집중 전송되어 처리는 되는 중앙화 데이터 처리만이 가능하여 중앙화 데이터 관리에 따른 보안문제가 대두되고 있다.However, with IOT technology up to now, objects cannot self-identify the meaning of sensing values, and for processing sensing information, sensing information is centrally transmitted to a central server such as a cloud server to be processed. Because only processing is possible, a security problem has emerged due to centralized data management.
중앙화 데이터 관리에 의한 상기 문제를 해결하기 위해 중앙 운영자에 의해 임의 조작이 불가능하도록 고안된 블록체인을 이용한 탈중앙화 사물인터넷 관리 시스템이 개발되고 있다. 그러나, 종래의 블록체인은 분산형 데이터 저장기술로써, 네트워크에 참여하는 클라이언트가 모든 데이터를 보유해야 하며, 데이터 처리를 위해 모든 클라이언트들이 데이터를 공유하고, 이를 대조해야 함으로써, 데이터양에 대응한 블록체인의 크기가 증가함에 따라 데이터 처리 속도가 느려지는 문제가 있다.In order to solve the above problem due to centralized data management, a decentralized IoT management system using a block chain designed to prevent arbitrary manipulation by a central operator is being developed. However, the conventional blockchain is a decentralized data storage technology, and clients participating in the network must hold all data, and all clients must share and collate data for data processing. As the size of the chain increases, there is a problem that the data processing speed is slowed down.
또한, 종래의 블록체인은 소프트웨어 기반의 프로세스 안에 클라이언트 인증을 위한 인증구성을 함께 구비하여 클라이언트의 인증을 수행함으로써, 클라이언트 정보가 저장되어 있는 메모리가 손실되거나 외부로부터 악의적으로 해킹될 경우, 악의자가 메모리에 저장되어 있던 클라이언트 정보를 이용하여 데이터를 위변조하는 문제가 있다.In addition, the conventional blockchain has an authentication configuration for client authentication in a software-based process and performs client authentication, so that if the memory in which the client information is stored is lost or if the memory is maliciously hacked from the outside, the malicious person There is a problem of falsifying data by using the client information stored in.
본 발명은 상기의 문제점을 해결하기 위한 것으로, 데이터 처리 속도를 개선하고, 데이터의 위변조를 방지할 수 있는 사물인터넷 관리 시스템을 제공하는 것을 목적으로 한다.The present invention has been made to solve the above problems, and an object of the present invention is to provide an IoT management system capable of improving data processing speed and preventing forgery and alteration of data.
상기와 같은 목적을 달성하기 위한 본 발명의 바람직한 일 실시예에 따른 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템은 적어도 하나 이상의 사물인터넷으로부터 센싱되는 데이터를 수신하며, 수신된 데이터 중 기 설정된 범위 내의 데이터를 추출하는 클라이언트 모듈, 상기 클라이언트 모듈을 기 설정된 인증방식으로 인증하며, 인증된 상기 클라이언트 모듈에 한하여 블록체인 네트워크의 접근을 허용하는 멤버관리모듈, 상기 멤버관리모듈로부터 클라이언트의 정보를 수신하며, 수신된 상기 클라이언트 정보에 대응한 암호키를 생성하는 암호모듈 및 상기 멤버관리모듈을 통해 인증된 상기 클라이언트 모듈로부터 데이터를 수신하며, 수신된 데이터에 대응한 블록을 생성하고, 생성된 블록의 유효성 검증을 통해 합의된 블록만을 체인에 연결하는 블록체인을 포함하는 것을 특징으로 한다.A blockchain-based IoT management system using an encryption module according to a preferred embodiment of the present invention for achieving the above object receives data sensed from at least one IoT, and a preset range among the received data. A client module that extracts data from within, a member management module that authenticates the client module with a preset authentication method, and allows access to the blockchain network only to the authenticated client module, and receives client information from the member management module. , An encryption module that generates an encryption key corresponding to the received client information, and receives data from the client module authenticated through the member management module, generates a block corresponding to the received data, and validates the generated block It is characterized by including a blockchain that connects only the blocks agreed upon through verification to the chain.
또한, 상기 멤버관리모듈은 인증된 상기 클라이언트 모듈에 한하여 블록체인 네트워크의 접근을 허용하되, 상기 클라이언트 모듈의 권한에 대응해 상기 클라이언트 모듈과 엑세스되는 것을 특징으로 한다.In addition, the member management module allows access to the blockchain network only to the authenticated client module, and is characterized in that the client module is accessed in response to the authority of the client module.
또한, 상기 암호모듈은 상기 클라이언트 정보에 대응한 암호키를 생성하되, 공개키는 상기 멤버관리모듈에 전송하는 것을 특징으로 한다.In addition, the encryption module generates an encryption key corresponding to the client information, and transmits the public key to the member management module.
또한, 상기 암호모듈은 상기 클라이언트 정보에 대응한 암호키를 생성하되, 비밀키는 저장부에 저장하여 관리하는 것을 특징으로 한다.In addition, the encryption module generates an encryption key corresponding to the client information, but the secret key is stored and managed in a storage unit.
이상에서 설명한 바와 같이, 본 발명은 암호모듈이 소프트웨어 기반으로 형성된 블록체인 네트워크와 분리되어 클라이언트 정보에 대응한 암호키를 생성하고, 생성된 암호키를 관리함으로써, 메모리 손실이나 외부 소프트웨어 공격으로부터 데이터의 위변조를 방지할 수 있는 효과를 가질 수 있다.As described above, in the present invention, the encryption module is separated from the block chain network formed based on software, generates an encryption key corresponding to client information, and manages the generated encryption key, thereby preventing data from being lost from memory loss or external software attacks. It can have the effect of preventing forgery and alteration.
또한, 클라이언트 모듈이 사물인터넷으로부터 센싱된 데이터 중 기 설정된 범위 내의 데이터만을 추출함으로써, 블록체인에 전송되는 데이터의 양을 최소화함과 동시에 블록체인의 크기를 최소화하여 데이터 처리 속도를 개선할 수 있는 효과를 가질 수 있다.In addition, the client module extracts only data within a preset range among the data sensed from the IoT, thereby minimizing the amount of data transmitted to the blockchain and improving the data processing speed by minimizing the size of the blockchain. Can have.
도 1은 본 발명의 일 실시예에 따른 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템의 개략도이다.
도 2는 도 1의 클라이언트 모듈의 기능블록도이다.
도 3은 도 1의 멤버관리모듈의 기능블록도이다.
도 4는 도 1의 암호모듈의 기능블록도이다.
도 5는 도 1의 블록체인의 기능블록도이다.
도 6은 본 발명의 일 실시예에 따른 암호모듈과 연동된 멤버관리모듈의 멤버관리방법을 설명하기 위한 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 블록체인과 연동된 멤버관리모듈의 데이터 처리방법을 설명하기 위한 흐름도이다.1 is a schematic diagram of a blockchain-based IoT management system using an encryption module according to an embodiment of the present invention.
2 is a functional block diagram of the client module of FIG. 1.
3 is a functional block diagram of the member management module of FIG. 1.
4 is a functional block diagram of the cryptographic module of FIG. 1.
5 is a functional block diagram of the block chain of FIG. 1.
6 is a flowchart illustrating a member management method of a member management module interlocked with an encryption module according to an embodiment of the present invention.
7 is a flowchart illustrating a data processing method of a member management module interlocked with a block chain according to an embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.In the present invention, various modifications may be made and various embodiments may be provided, and specific embodiments will be illustrated in the drawings and will be described in detail in the detailed description. However, this is not intended to limit the present invention to a specific embodiment, it should be understood to include all changes, equivalents, or substitutes included in the spirit and scope of the present invention.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In describing each drawing, similar reference numerals have been used for similar elements. In describing the present invention, when it is determined that a detailed description of a related known technology may obscure the subject matter of the present invention, a detailed description thereof will be omitted.
제 1, 제 2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms such as first and second may be used to describe various constituent elements, but the constituent elements should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another component.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다.For example, without departing from the scope of the present invention, a first element may be referred to as a second element, and similarly, a second element may be referred to as a first element.
및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The term and/or includes a combination of a plurality of related listed items or any of a plurality of related listed items.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present application, terms such as "comprise" or "have" are intended to designate the presence of features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, but one or more other features. It is to be understood that the presence or addition of elements or numbers, steps, actions, components, parts, or combinations thereof does not preclude in advance.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Unless otherwise defined, all terms used herein including technical or scientific terms have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and should not be interpreted as an ideal or excessively formal meaning unless explicitly defined in the present application. Does not.
이하, 도면을 참조하여 본 발명의 바람직한 일 실시 예에 따른 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템에 대하여 상세히 설명하기로 한다. 도 1은 본 발명의 일 실시예에 따른 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템의 개략도이다. 도 2는 도 1의 클라이언트 모듈의 기능블록도이다. 도 3은 도 1의 멤버관리모듈의 기능블록도이다. 도 4는 도 1의 암호모듈의 기능블록도이다. 도 5는 도 1의 블록체인의 기능블록도이다. 도 6은 본 발명의 일 실시예에 따른 암호모듈과 연동된 멤버관리모듈의 멤버관리방법을 설명하기 위한 흐름도이다. 도 7은 본 발명의 일 실시예에 따른 블록체인과 연동된 멤버관리모듈의 데이터 처리방법을 설명하기 위한 흐름도이다. 이하에서 종래 주지된 사항에 대한 설명은 본 발명의 요지를 명확히 하기 위해 생략하거나 간단히 한다.Hereinafter, a block chain-based IoT management system using an encryption module according to a preferred embodiment of the present invention will be described in detail with reference to the drawings. 1 is a schematic diagram of a blockchain-based IoT management system using an encryption module according to an embodiment of the present invention. 2 is a functional block diagram of the client module of FIG. 1. 3 is a functional block diagram of the member management module of FIG. 1. 4 is a functional block diagram of the cryptographic module of FIG. 1. 5 is a functional block diagram of the block chain of FIG. 1. 6 is a flowchart illustrating a member management method of a member management module interlocked with an encryption module according to an embodiment of the present invention. 7 is a flowchart illustrating a data processing method of a member management module interlocked with a block chain according to an embodiment of the present invention. Hereinafter, descriptions of conventionally known matters are omitted or simplified to clarify the gist of the present invention.
도 1을 참조하면, 본 발명의 일 실시예에 따른 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템(1)은 인증된 클라이언트 모듈에 한하여, 블록체인 네트워크의 접근을 허용하고, 정의된 클라이언트 모듈의 권한에 따라 사물인터넷으로부터 센싱되는 데이터를 처리함으로써, 사물인터넷을 효율적으로 관리할 수 있는 새로운 방법을 제공할 수 있다. 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템(1)은 클라이언트 모듈(100), 멤버관리모듈(200), 암호모듈(300) 및 블록체인(400)을 포함할 수 있다.Referring to FIG. 1, a blockchain-based IoT management system 1 using an encryption module according to an embodiment of the present invention allows access to a blockchain network only for authenticated client modules, and a defined client module It is possible to provide a new method for efficiently managing the IoT by processing data sensed from the IoT according to the authority of. The blockchain-based IoT management system 1 using a cryptographic module may include a
클라이언트 모듈(100)은 적어도 하나 이상의 사물인터넷(10)으로부터 센싱되는 데이터를 수신할 수 있으며, 수신된 데이터 중 기 설정된 범위 내의 데이터만을 추출할 수 있다. 여기서, 기 설정된 범위 내의 데이터는 사물인터넷(10)을 관리하기 위한 최소 필수 데이터가 될 수 있으며, 예를 들어, 사물인터넷(10)의 에너지 최적화에 필요한 데이터일 수 있다.The
사물인터넷(10)은 자체의 통신 기능이 구비된 임의의 장치일 수 있으며, 예를 들어, 사물인터넷(10)은 건물에 설치되어 실외 또는 실내 환경을 측정하는 날씨 센서, 재실 센서 또는 전기설비 센서 등과 같은 환경 측정 센서가 될 수 있다.The IoT 10 may be an arbitrary device equipped with its own communication function. For example, the IoT 10 is a weather sensor, occupancy sensor, or electric facility sensor installed in a building to measure the outdoor or indoor environment. It can be an environmental measurement sensor such as, etc.
또한, 사물인터넷(10)은 실내 환경 조절 등 제어에 의해 에너지를 소모하는 공기조절장치, 조명장치 또는 차양 장치 등과 같은 에너지 소모 장치가 될 수 있다.In addition, the
또한, 사물인터넷(10)은 실내 환경 조절 등 제어에 의해 에너지를 발생시키는 발전 장치, 에너지 저장 시스템(Energy Storage System; ESS) 등과 같은 에너지 발생 장치가 될 수 있다.In addition, the
본 명세서에서, 사물인터넷(10)은 에너지의 소모 또는 생산에 의하여 건물의 에너지 환경에 영향을 미치면서 통신 기능을 구비한 임의의 장치로 설명된다. 그러나, 본 발명의 실시예에 따른 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템(1)이 적용될 수 있는 사물인터넷(10)은 일반 가정에서 사용되는 개인용 장비 또는 스마트 팩토리(Smart Factory) 등에 사용되는 산업용 장비일 수 있고, 전술한 예시에 의하여 한정되지 않는다.In this specification, the
도 2를 참조하면, 클라이언트 모듈(100)은 데이터 수신부(110), 데이터 추출부(120) 및 제어부(130)를 포함할 수 있다.Referring to FIG. 2, the
데이터 수신부(110)는 적어도 하나 이상의 사물인터넷(10)으로부터 환경 정보 및 사물인터넷(10)의 동작 정보 중 하나 이상을 수신할 수 있다. 여기서, 동작 정보는 사물인터넷(10)의 에너지 생산량 정보 또는 에너지 소모량 정보 등이 될 수 있으며, 데이터 수신을 위하여, 데이터 수신부(110)는 유선 또는 무선 방식 중 적어도 하나 이상의 방식을 이용하여 사물인터넷(10)과 통신 가능하게 연결될 수 있다. 데이터 수신부(110)와 사물인터넷(10) 사이의 통신은 3GPP(3rd Generation Partnership Project) 통신, LTE(Long Term Evolution) 통신, WIMAX(World Interoperability for Microwave Access) 통신, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 통신, 위성 방송 통신, 아날로그 통신, DMB(Digital Multimedia Broadcasting) 통신, WiFi, V2V, V2I, V2X, DSRC 등이 포함되나 이에 한정되지는 않는다.The data receiving unit 110 may receive one or more of environment information and operation information of the
데이터 추출부(120)는 적어도 하나 이상의 사물인터넷(10)으로부터 수신된 데이터 중 사물인터넷(10)의 관리를 위한 최소 필수 데이터 즉, 기 설정된 범위 내의 데이터만을 추출할 수 있다. 여기서, 기 설정된 범위 내의 데이터는 클라이언트에 의해 정의될 수 있으며, 사물인터넷(10)이 설치된 환경 및 클라이언트의 경험에 의해 실험적으로 가변 될 수 있다. 이때, 클라이언트는 제어부(130)를 통해 명령신호 즉, 추출할 최소 필수 데이터에 대한 요청을 데이터 추출부(120)에 전송하고, 데이터 추출부(120)는 제어부(130)를 통해 전송된 클라이언트의 요청에 기초하여 기 설정된 범위 내의 최소 필수정보를 추출할 수 있다.The data extracting unit 120 may extract only the minimum essential data for management of the
제어부(130)는 클라이언트로부터 기본정보 및 명령신호를 수신할 수 있으며, 수신된 기본정보 및 명령신호에 대응하여 사물인터넷(10)의 동작을 제어함과 동시에 블록체인 네트워크(1000)에 참여하기 위한 동작을 할 수 있다. 즉, 제어부(130)는 클라이언트로부터 이름, 소속, IP(Internet Protocol) 등과 같은 기본정보를 수신하고, 명령신호에 대응하여 블록체인 네트워크(1000)에 참여하기 위한 멤버 등록요청, 접근 요청과 같은 동작을 수행할 수 있다. 여기서, 기본정보는 클라이언트의 이름, 소속, IP(Internet Protocol) 등으로 설명하고 있으나, 멤버관리모듈(200)이 클라이언트를 인식하고, 정의하기 위한 정보이면 한정하지 않는다. 명령신호는 클라이언트가 클라이언트 모듈(100)을 통해 블록체인 네트워크(1000)에 참여하기 위한 신호가 될 수 있으며, 사물인터넷(10)의 관리를 위한 신호 즉, 사물인터넷(10)의 에너지 최적화에 필요한 요청 신호가 될 수 있다.The controller 130 may receive basic information and command signals from the client, and control the operation of the Internet of
또한, 제어부(130)는 멤버관리모듈(200)로부터 멤버 등록요청에 대응한 멤버 ID를 수신할 수 있으며, 수신된 멤버 ID를 이용하여 멤버관리모듈(200)에 접근을 요청할 수 있다. 이때, 클라이언트 모듈(100)은 멤버관리모듈(200)이 멤버 ID를 인증하고, 정의된 클라이언트의 권한에 대응해 접근을 허용하는 것에 의해 멤버관리모듈(200)과 엑세스 되어 데이터를 전송할 수 있다.In addition, the control unit 130 may receive a member ID corresponding to the member registration request from the
도 3을 참조하면, 멤버관리모듈(200)은 클라이언트 모듈(100)을 기 설정된 인증방식으로 인증할 수 있으며, 인증된 클라이언트 모듈(100)에 한하여 블록체인 네트워크(1000)의 접근을 허용할 수 있다.Referring to FIG. 3, the
또한, 멤버관리모듈(200)은 인증된 클라이언트 모듈(100)에 한하여 블록체인 네트워크(1000)의 접근을 허용하되, 클라이언트 모듈(100)의 권한에 대응해 클라이언트 모듈(100)과 엑세스 될 수 있다. 즉, 멤버관리모듈(200)은 클라이언트 모듈(100)로부터 클라이언트의 기본정보를 수신하여 클라이언트를 인식하고, 인식된 클라이언트의 엑세스 권한 등을 정의할 수 있으며, 기 설정된 인증방식으로 인증된 클라이언트 모듈(100)에 한하여 엑세스 권한에 대응한 블록체인 네트워크(1000)의 접근을 허용할 수 있다. 여기서, 엑세스 권한은 클라이언트의 역할 예를 들어, 독자, 작성자, 관리자 등에 대응한 권한이 될 수 있으며, 기 설정된 인증방식은 하기에 설명될 인증부(240)에 의해 설명될 수 있다.In addition, the
계속하여, 멤버관리모듈(200)은 클라이언트 모듈(100)로부터 수신된 기본정보 및 클라이언트의 권한 정보를 암호모듈(300)에 전송할 수 있다. 이때, 암호모듈(300)은 수신된 기본정보 및 클라이언트의 권한 정보에 대응한 암호키 즉, 공개키 및 비밀키를 생성할 수 있으며, 생성된 비밀키는 저장부(320)에 저장하고, 공개키는 멤버관리모듈(200)에 전송할 수 있다.Subsequently, the
계속하여, 멤버관리모듈(200)은 암호모듈(300)로부터 수신된 공개키를 이용하여 클라이언트의 기본정보 및 클라이언트의 권한 정보를 암호화할 수 있으며, 암호화를 통해 멤버 ID를 생성하고, 생성된 멤버 ID를 클라이언트 모듈(100)에 전송할 수 있다. 이때, 클라이언트 모듈(100)은 멤버관리모듈(200)에 의해 블록체인 네트워크(1000)의 멤버가 될 수 있으며, 멤버관리모듈(200)을 통해 기 설정된 인증방식으로 인증되어 엑세스 권한에 따라 블록체인 네트워크(1000)에 접근하여 읽기, 쓰기, 관리 등의 행위를 할 수 있다.Subsequently, the
멤버관리모듈(200)은 인식부(210), 권한제어부(220), 멤버관리부(230) 및 인증부(240)를 포함할 수 있다.The
인식부(210)는 클라이언트 모듈(100)로부터 제공되는 클라이언트의 기본정보를 이용하여 클라이언트를 인식할 수 있으며, 인식된 클라이언트 기본정보를 권한제어부(220)에 제공할 수 있다.The recognition unit 210 may recognize the client using basic information of the client provided from the
권한제어부(220)는 인식부(210)로부터 인식된 클라이언트를 정의할 수 있으며, 인식부(210)로부터 제공된 클라이언트 기본정보를 이용하여 블록체인 네트워크(1000)에 대한 클라이언트의 엑세스 권한 등을 정의할 수 있다. 여기서, 엑세스 권한은 클라이언트의 역할 예를 들어, 독자, 작성자, 관리자 등에 대한 권한이 될 수 있으며, 클라이언트의 소속에 대응하여 관련 블록체인 네트워크(1000) 채널에 대한 권한이 할당 될 수 있다.The
멤버관리부(230)는 클라이언트의 기본정보 및 권한 정보를 암호모듈(300)에 전송할 수 있으며, 암호모듈(300)로부터 생성된 공개키를 제공받아 클라이언트의 기본정보 및 권한 정보를 암호화 함과 동시에 멤버 ID를 생성하고, 생성된 멤버 ID를 클라이언트 모듈(100)에 전송할 수 있다. 즉, 멤버관리부(230)는 암호모듈(300)에 암호키 생성 요청을 함과 동시에 인식부(210)로부터 인식된 클라이언트의 기본 정보 및 권한제어부(220)로부터 정의된 클라이언트의 권한 정보를 암호모듈(300)에 전송할 수 있으며, 이에 대응해 암호모듈(300)로부터 생성되는 암호키 즉, 공개키 및 비밀키 중 공개키만을 수신하여 클라이언트의 기본 정보 및 클라이언트의 권한 정보를 암호화함과 동시에 멤버 ID를 생성하여 클라이언트 모듈(100)을 멤버로 등록할 수 있다.The
인증부(240)는 클라이언트 모듈(100)로부터 제공되는 클라이언트 모듈(100)의 멤버 ID를 인식할 수 있으며, 인식된 멤버 ID를 암호모듈(300)에 전송하고, 암호모듈(300)에 의해 복호화된 멤버 ID에 대응한 클라이언트 정보를 수신하여 암호화 이전의 클라이언트 정보와 대조하는 것에 의해 멤버 ID를 인증할 수 있다. 즉, 인증부(240)는 암호모듈(300)로부터 수신된 공개키를 이용하여 암호화한 클라이언트 정보 및 암호모듈로(300)이 비밀키를 이용하여 복호화한 클라이언트 정보를 비교하여 매칭되는 것에 의해 멤버 ID를 인증할 수 있다. 여기서, 암호화는 공개키(특정의 비트열)를 이용하여 정보를 암호문으로 변환하는 것이 될 수 있고, 복호화는 비밀키를 이용하여 원래의 정보를 복원하는 것이 될 수 있다.The authentication unit 240 can recognize the member ID of the
도 4를 참조하면, 암호모듈(300)은 멤버관리모듈(200)로부터 클라이언트 정보를 수신할 수 있으며, 수신된 클라이언트 정보에 대응한 암호키를 생성할 수 있다. 즉, 암호모듈(300)은 멤버관리모듈(200)로부터 클라이언트의 기본정보 및 권한 정보를 수신할 수 있으며, 수신된 클라이언트의 기본정보 및 권한 정보를 이용하여 암호키를 생성하고, 관리할 수 있다. 여기서, 암호키는 공개키 및 비밀키가 될 수 있다.Referring to FIG. 4, the
또한, 암호모듈(300)은 클라이언트 정보에 대응한 암호키를 생성하되, 공개키는 멤버관리모듈에 전송할 수 있다.In addition, the
또한, 암호모듈(300)은 클라이언트 정보에 대응한 암호키를 생성하되, 비밀키는 저장부(320)에 저장하여 관리할 수 있다.In addition, the
또한, 암호모듈(300)은 소프트웨어를 기반으로 형성된 블록체인 네트워크(1000)와 분리되어 하드웨어를 기반으로 형성된 독립적인 장치가 될 수 있으며, 어플라이언스(Appliance)와 같은 정보 기기로 구현될 수 있다. 이에 따라, 멤버관리모듈(200)에 수신된 클라이언트 정보가 메모리 손실이나 외부 소프트웨어 공격에 의해 해킹되어도 기 설정된 인증방식을 수행하기 위한 암호키 즉, 암호화된 멤버 ID를 복원할 수 있는 비밀키가 멤버관리모듈(200)과 분리되어 관리되는 것에 의해 암호화된 멤버 ID를 복원할 수 없어 기 설정된 인증방식이 수행될 수 없으므로, 멤버관리모듈(200)의 메모리 손실이나 외부 소프트웨어 공격으로부터 데이터의 위변조를 방지할 수 있다. 여기서, 블록체인 네트워크(1000)는 멤버관리모듈(200) 및 블록체인(400)이 소프트웨어를 기반으로 형성된 프로세스가 될 수 있다.In addition, the
암호모듈(300)은 암호키 생성부(310), 저장부(320) 및 인증지원부(330)를 포함할 수 있다.The
암호키 생성부(310)는 멤버관리모듈(200)로부터 클라이언트의 기본정보 및 권한 정보를 수신하여 클라이언트의 정보에 대응한 암호키를 생성할 수 있으며, 생성된 암호키 중 공개키를 멤버관리모듈(200)에 전송할 수 있다. 여기서, 암호키는 공개키 및 비밀키가 될 수 있다.The encryption key generation unit 310 may receive basic information and authority information of the client from the
저장부(320)는 암호키 생성부(310)로부터 생성된 암호키 중 비밀키를 저장할 수 있으며, 저장된 비밀키를 인증지원부(330)에 제공할 수 있다.The storage unit 320 may store a secret key among encryption keys generated by the encryption key generation unit 310, and may provide the stored secret key to the
인증지원부(330)는 멤버관리모듈(200)의 기 설정된 인증방식을 지원할 수 있으며, 멤버관리모듈(200)로부터 멤버 ID를 수신하여 수신된 멤버 ID에 대응한 비밀키를 추출하고, 추출된 비밀키를 이용하여 암호화된 멤버 ID를 복호화하여 복원된 클라이언트 정보를 멤버관리모듈(200)에 전송할 수 있다.The
도 5를 참조하면, 블록체인(400)은 멤버관리모듈(200)을 통해 인증된 클라이언트 모듈(100)로부터 데이터를 수신할 수 있으며, 수신된 데이터에 대응하여 블록을 생성하고, 생성된 블록의 유효성 검증을 통해 합의된 블록만을 체인에 연결할 수 있다. 여기서, 데이터는 사물인터넷(10)을 관리하기 위한 최소 필수 데이터가 될 수 있으며, 예를 들어, 사물인터넷(10)의 에너지 최적화를 위한 트랜잭션이 될 수 있다. 블록체인(400)은 블록관리부(310), 합의부(320) 및 블록제어부(330)를 포함할 수 있다.5, the
블록관리부(310)는 클라이언트 모듈(100)로부터 멤버관리모듈(200)을 통해 전송된 데이터를 수신할 수 있으며, 수신된 데이터를 이용하여 블록을 생성할 수 있다. 여기서, 블록은 임의의 크기를 갖는 데이터를 미리 결정된 크기를 갖는 데이터로 변환하는 해쉬 함수에 의해 생성될 수 있으며, 예를 들어, MD5, SHA1, SHA2 등 필요에 따라 선택한 해쉬 함수가 이용될 수 있으나, 이에 한정되지 않는다.The block management unit 310 may receive data transmitted from the
합의부(320)는 블록관리부(310)로부터 생성된 블록의 유효성을 검증할 수 있으며, 유효성 검증을 통해 합의된 블록만을 블록제어부(330)에 제공할 수 있다. 여기서, 유효성 검증을 위한 합의 알고리즘은 블록 및 트랜잭션의 유효성 검증, 블록 및 트랜잭션의 순서 결정, 새로운 블록의 생성 중 적어도 하나 이상을 수행할 수 있도록 정의된 알고리즘일 수 있으며, 예를 들어, 작업 증명(Proof-of Work, POW) 알고리즘, 지분 증명(Proof-of-Stake, POS) 알고리즘, 프랙티컬 비잔틴 장애 허용(Practical Byzantine Fault Tolerance, PBFT) 알고리즘, 경과 시간 증명(Proof of Elapsed Time, PoET) 알고리즘 등이 이용될 수 있으나, 이에 한정되지 않는다.The consensus unit 320 may verify the validity of the block generated by the block management unit 310, and may provide only the consensus block to the
블록제어부(330)는 합의부(320)로부터 유효성 검증을 통해 합의된 블록을 수신할 수 있으며, 수신된 블록을 체인에 연결할 수 있다. 여기서, 각 블록들은 헤쉬 체인(Hash Chain)의 형태로 연결될 수 있다. 즉, n번째 블록은 n-1번째 블록의 해쉬 값을 저장한다. 이에 따라, 어느 한 블록의 정보의 변경은 해당 블록으로부터 산출한 해당 블록의 해쉬 값의 변경을 초래하고, 이는 그 다음 블록의 내용의 변경을 초래하기 때문에 체인에 연결된 블록의 데이터를 삭제하거나 변경하는 것을 불가능하여 체인에 연결된 블록의 데이터는 신뢰성이 보장될 수 있다.The
도 6은 본 발명의 일 실시예에 따른 암호모듈과 연동된 멤버관리모듈의 멤버관리방법을 설명하기 위한 흐름도이다.6 is a flowchart illustrating a member management method of a member management module interlocked with an encryption module according to an embodiment of the present invention.
도 6을 참조하여 본 발명의 일 실시예에 따른 암호모듈과 연동된 멤버관리모듈의 멤버관리방법을 설명한다. 이하의 설명에 의해 앞서 설명된 구성이 보다 명확해질 수 있다.A member management method of a member management module interlocked with an encryption module according to an embodiment of the present invention will be described with reference to FIG. 6. The configuration described above may be more clearly defined by the following description.
멤버관리모듈(200)은 먼저, 클라이언트 모듈(100)로부터 멤버 등록요청을 받을 수 있다(S11). 여기서, 클라이언트 모듈(100)은 멤버 등록요청과 동시에 클라이언트의 이름, 소속, IP와 같은 기본정보를 전송할 수 있다.The
계속하여, 멤버관리모듈(200)은 클라이언트 모듈(100)로부터 수신된 기본정보를 이용하여, 클라이언트를 인식할 수 있으며(S12), 인식된 클라이언트 기본정보를 이용하여 블록체인 네트워크(1000)에 대한 클라이언트를 정의할 수 있다(S13). 여기서, 클라이언트 정의는 블록체인 네트워크(1000)에 대한 클라이언트의 엑세스 권한 등이 될 수 있으며, 엑세스 권한은 클라이언트의 역할 예를 들어, 독자, 작성자, 관리자 등에 대한 권한이 될 수 있고, 클라이언트의 소속에 대응하여 관련 블록체인 네트워크(1000) 채널에 대한 권한이 할당될 수 있다.Subsequently, the
계속하여, 멤버관리모듈(200)은 암호모듈(300)에 암호키 생성 요청을 할 수 있다(S14). 여기서, 멤버관리모듈(200)은 암호키 생성 요청과 동시에 클라이언트의 기본정보 및 권한 정보를 전송할 수 있다.Subsequently, the
암호모듈(300)은 멤버관리모듈(200)로부터 수신된 클라이언트의 기본정보 및 권한 정보에 대응하여 공개키를 생성할 수 있으며(S15), 비밀키를 생성할 수 있다(S16).The
계속하여, 암호모듈(300)은 생성된 비밀키를 저장부(320)에 저장할 수 있으며(S17), 공개키는 멤버관리모듈(200)에 전송할 수 있다(S18).Subsequently, the
멤버관리모듈(200)은 암호모듈(300)로부터 수신된 공개키를 이용하여 클라이언트의 기본정보 및 권한 정보를 암호화 할 수 있으며(S19), 암호화를 통해 클라이언트의 기본정보 및 권한 정보에 대응한 멤버 ID를 생성할 수 있다(S20).The
계속하여, 멤버관리모듈(200)은 생성된 멤버 ID를 이용하여 클라이언트 모듈(100)을 멤버로 등록할 수 있으며(S21), 생성된 멤버 ID를 클라이언트 모듈(100)에 전송할 수 있다(S22). 이때, 클라이언트 모듈(100)은 멤버관리모듈(200)에 의해 블록체인 멤버가 될 수 있으며, 멤버관리모듈(200)을 통해 기 설정된 인증방식으로 인증되어 엑세스 권한에 따라 블록체인 네트워크(1000)에 접근하여 읽기, 쓰기, 관리 등의 행위를 할 수 있다.Subsequently, the
도 7은 본 발명의 일 실시예에 따른 블록체인과 연동된 멤버관리모듈의 데이터 처리방법을 설명하기 위한 흐름도이다.7 is a flowchart illustrating a data processing method of a member management module interlocked with a block chain according to an embodiment of the present invention.
도 7을 참조하여 본 발명의 일 실시예에 따른 블록체인과 연동된 멤버관리모듈의 데이터 처리방법을 설명한다. 이하의 설명에 의해 앞서 설명된 구성이 보다 명확해질 수 있다.Referring to FIG. 7, a data processing method of a member management module linked with a block chain according to an embodiment of the present invention will be described. The configuration described above may be more clearly defined by the following description.
멤버관리모듈(200)은 먼저, 클라이언트 모듈(100)로부터 접근 요청을 받을 수 있다(S101). 여기서, 클라이언트 모듈(100)은 접근 요청과 동시에 멤버 ID를 전송할 수 있다.The
계속하여, 멤버관리모듈(200)은 클라이언트 모듈(100)로부터 수신된 멤버 ID를 이용하여 멤버 ID를 인식할 수 있으며(S102), 인식된 멤버 ID를 암호모듈(300)에 전송할 수 있다(S103).Subsequently, the
암호모듈(300)은 멤버관리모듈(200)로부터 수신된 멤버 ID를 이용하여 멤버 ID에 대응한 비밀키를 추출할 수 있으며(S104), 추출된 비밀키를 이용하여 암호화된 멤버 ID를 복호화할 수 있다(S105). 여기서, 암호모듈(300)이 비밀키를 이용하여 멤버 ID를 복호화하는 것에 의해 클라이언트 정보를 복원할 수 있다.The
계속하여, 암호모듈(300)은 복원된 클라이언트 정보를 멤버관리모듈(200)에 전송할 수 있다(S106).Subsequently, the
멤버관리모듈(200)은 암호모듈(300)로부터 클라이언트 정보를 수신하여 암호화 이전의 클라이언트 정보와 대조하는 것에 의해 멤버 ID를 인증할 수 있다(S107).The
계속하여, 멤버관리모듈(200)은 인증된 클라이언트 모듈(100)에 한하여, 블록체인 네트워크(1000)의 접근을 허용할 수 있으며(S108), 정의된 클라이언트 모듈(100)의 권한에 따라 클라이언트 모듈(100)과 엑세스 될 수 있다(S109). 여기서, 엑세스 권한은 클라이언트의 역할 예를 들어, 독자, 작성자, 관리자 등에 대한 권한이 될 수 있으며, 클라이언트의 소속에 대응하여 관련 블록체인 네트워크(1000) 채널에 대한 권한이 할당 될 수 있다.Subsequently, the
클라이언트 모듈(100)은 멤버관리모듈(200)과 엑세스 되는 것에 의해 엑세스 권한에 따라 멤버관리모듈(200)을 통해 블록체인(400)에 데이터를 전송할 수 있다(S110).The
멤버관리모듈(200)은 클라이언트 모듈(100)로부터 데이터를 수신할 수 있으며, 클라이언트 모듈(100)의 권한 및 수신된 데이터에 대응하여 블록체인(400)에 블록 연결 요청을 할 수 있다(S111). 이에 따라, 클라이언트 모듈(100)은 엑세스 권한에 따라 블록체인 네트워크(1000)에 접근하여 읽기, 쓰기, 관리 등의 행위를 할 수 있다.The
블록체인(400)은 멤버관리모듈(200)로부터 블록 연결 요청을 받을 수 있다(S111). 여기서, 멤버관리모듈(200)은 블록체인(400)에 블록 연결 요청을 함과 동시에 클라이언트 모듈(100)로부터 수신된 데이터를 전송할 수 있다.The
계속하여, 블록체인(400)은 클라이언트 모듈(100)로부터 멤버관리모듈(200)을 통해 전송된 데이터를 이용하여 블록을 생성할 수 있다(S112). 여기서, 블록은 임의의 크기를 갖는 데이터를 미리 결정된 크기를 갖는 데이터로 변환하는 해쉬 함수에 의해 생성될 수 있으며, 예를 들어, MD5, SHA1, SHA2 등 필요에 따라 선택한 해쉬 함수가 이용될 수 있으나, 이에 한정되지 않는다.Subsequently, the
계속하여, 블록체인(400)은 생성된 블록의 유효성 검증을 위해 합의 과정을 수행할 수 있으며(S113), 합의된 블록만을 체인에 연결할 수 있다(S114). 여기서, 유효성 검증을 위한 합의 알고리즘은 블록 및 트랜잭션의 유효성 검증, 블록 및 트랜잭션의 순서 결정, 새로운 블록의 생성 중 적어도 하나 이상을 수행할 수 있도록 정의된 알고리즘일 수 있으며, 예를 들어, 작업 증명(Proof-of Work, POW) 알고리즘, 지분 증명(Proof-of-Stake, POS) 알고리즘, 프랙티컬 비잔틴 장애 허용(Practical Byzantine Fault Tolerance, PBFT) 알고리즘, 경과 시간 증명(Proof of Elapsed Time, PoET) 알고리즘 등이 이용될 수 있으나, 이에 한정되지 않는다.Subsequently, the
또한, 각 블록들은 헤쉬 체인(Hash Chain)의 형태로 연결될 수 있다. 즉, n번째 블록은 n-1번째 블록의 해쉬 값을 저장한다. 이에 따라, 어느 한 블록의 정보의 변경은 해당 블록으로부터 산출한 해당 블록의 해쉬 값의 변경을 초래하고, 이는 그 다음 블록의 내용의 변경을 초래하기 때문에 체인에 연결된 블록의 데이터를 삭제하거나 변경하는 것을 불가능하여 체인에 연결된 블록의 데이터는 신뢰성이 보장될 수 있다.In addition, each block can be connected in the form of a hash chain. That is, the nth block stores the hash value of the n-1th block. Accordingly, a change in the information of one block results in a change in the hash value of the block calculated from the block, which results in a change in the content of the next block. It is impossible to do so, so the reliability of the data in the blocks connected to the chain can be guaranteed.
한편, 상술한 설명에서, 단계 S11 내지 S22 및 단계 S101 내지 S114는 본 발명의 구현에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수 있고, 단계 간의 순서가 변경될 수도 있다. 아울러, 기타 생략된 내용이라 하더라도 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템에 관하여 이미 기술된 내용은 도 6 내지 도 7에도 적용된다.Meanwhile, in the above description, steps S11 to S22 and steps S101 to S114 may be further divided into additional steps or may be combined into fewer steps, depending on the implementation of the present invention. In addition, some steps may be omitted as necessary, and the order between steps may be changed. In addition, even if other contents are omitted, the contents already described for the blockchain-based IoT management system using the cryptographic module are also applied to FIGS. 6 to 7.
본 발명은 상술한 특정의 바람직한 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 해당 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.The present invention is not limited to the specific preferred embodiments described above, and any person having ordinary knowledge in the technical field to which the present invention pertains without departing from the gist of the present invention claimed in the claims can implement various modifications. Of course, such changes are intended to be within the scope of the description of the claims.
1 : 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템
10 : 사물인터넷
100 : 클라이언트 모듈
110 : 데이터 수신부
120 : 데이터 추출부
130 : 제어부
200 : 멤버관리모듈
210 : 인식부
220 : 권한제어부
230 : 멤버관리부
240 : 인증부
300 : 암호모듈
310 : 암호키 생성부
320 : 저장부
330 : 인증지원부
400 : 블록체인
410 : 블록관리부
420 : 합의부
430 : 블록제어부
1000 : 블록체인 네트워크1: Blockchain-based IoT management system using cryptographic modules
10: Internet of Things
100: client module
110: data receiving unit
120: data extraction unit
130: control unit
200: member management module
210: recognition unit
220: authority control unit
230: Member Management Department
240: authentication department
300: cryptographic module
310: encryption key generation unit
320: storage unit
330: Certification Support Department
400: Blockchain
410: block management unit
420: consensus
430: block control unit
1000: Blockchain network
Claims (4)
상기 클라이언트 모듈을 기 설정된 인증방식으로 인증하며, 인증된 상기 클라이언트 모듈에 한하여 블록체인 네트워크의 접근을 허용하는 멤버관리모듈;
상기 멤버관리모듈로부터 클라이언트의 정보를 수신하며, 수신된 상기 클라이언트 정보에 대응한 암호키를 생성하는 암호모듈; 및
상기 멤버관리모듈을 통해 인증된 상기 클라이언트 모듈로부터 데이터를 수신하며, 수신된 데이터에 대응한 블록을 생성하고, 생성된 블록의 유효성 검증을 통해 합의된 블록만을 체인에 연결하는 블록체인을 포함하는 것을 특징으로 하는 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템.A client module for receiving data sensed from at least one IoT and extracting data within a preset range from among the received data;
A member management module that authenticates the client module using a preset authentication method and allows access to the blockchain network only to the authenticated client module;
An encryption module for receiving client information from the member management module and generating an encryption key corresponding to the received client information; And
Including a block chain that receives data from the client module authenticated through the member management module, generates a block corresponding to the received data, and connects only the agreed block to the chain through validation of the generated block. Blockchain-based IoT management system using a cryptographic module as a feature.
상기 멤버관리모듈은 인증된 상기 클라이언트 모듈에 한하여 블록체인 네트워크의 접근을 허용하되, 상기 클라이언트 모듈의 권한에 대응해 상기 클라이언트 모듈과 엑세스되는 것을 특징으로 하는 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템.The method of claim 1,
The member management module allows access to the blockchain network only to the authenticated client module, but accesses the client module in response to the authority of the client module. Blockchain-based IoT management using a cryptographic module. system.
상기 암호모듈은 상기 클라이언트 정보에 대응한 암호키를 생성하되, 공개키는 상기 멤버관리모듈에 전송하는 것을 특징으로 하는 사물인터넷 관리 시스템.The method of claim 1,
Wherein the encryption module generates an encryption key corresponding to the client information, and transmits the public key to the member management module.
상기 암호모듈은 상기 클라이언트 정보에 대응한 암호키를 생성하되, 비밀키는 저장부에 저장하여 관리하는 것을 특징으로 하는 암호모듈을 이용한 블록체인 기반의 사물인터넷 관리 시스템.The method of claim 3,
The cryptographic module generates a cryptographic key corresponding to the client information, and stores and manages the secret key in a storage unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190102102A KR20210022852A (en) | 2019-08-21 | 2019-08-21 | Block chain-based iot management system using cryptographic module |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190102102A KR20210022852A (en) | 2019-08-21 | 2019-08-21 | Block chain-based iot management system using cryptographic module |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210022852A true KR20210022852A (en) | 2021-03-04 |
Family
ID=75174280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190102102A KR20210022852A (en) | 2019-08-21 | 2019-08-21 | Block chain-based iot management system using cryptographic module |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20210022852A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220141170A (en) | 2021-04-12 | 2022-10-19 | 이화여자대학교 산학협력단 | Leader election method using federated learning for private blockchain, recording medium and device for performing the method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180113786A (en) | 2017-04-07 | 2018-10-17 | 한국전자통신연구원 | Energy distributed method based on block chain |
KR101979586B1 (en) | 2018-12-19 | 2019-05-17 | 주식회사 마크애니 | IoT DEVICE MANAGED BASED ON BLOCK CHAIN, SYSTEM AND METHOD THEREOF |
-
2019
- 2019-08-21 KR KR1020190102102A patent/KR20210022852A/en not_active Application Discontinuation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180113786A (en) | 2017-04-07 | 2018-10-17 | 한국전자통신연구원 | Energy distributed method based on block chain |
KR101979586B1 (en) | 2018-12-19 | 2019-05-17 | 주식회사 마크애니 | IoT DEVICE MANAGED BASED ON BLOCK CHAIN, SYSTEM AND METHOD THEREOF |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220141170A (en) | 2021-04-12 | 2022-10-19 | 이화여자대학교 산학협력단 | Leader election method using federated learning for private blockchain, recording medium and device for performing the method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10154021B1 (en) | Securitization of temporal digital communications with authentication and validation of user and access devices | |
JP6234348B2 (en) | Distribution of user authentication information | |
US9510195B2 (en) | Secured transactions in internet of things embedded systems networks | |
US20160277933A1 (en) | Secure Data Communication system between IoT smart devices and a Network gateway under Internet of Thing environment | |
US10637650B2 (en) | Active authentication session transfer | |
EP3304258B1 (en) | Authenticating stylus device | |
US9092016B2 (en) | Universal validation module for access control systems | |
EA036987B1 (en) | Systems and methods for device authentication | |
US11373762B2 (en) | Information communication device, authentication program for information communication device, and authentication method | |
US9769164B2 (en) | Universal validation module for access control systems | |
US20140223528A1 (en) | Certificate installation and delivery process, four factor authentication, and applications utilizing same | |
JP6378424B1 (en) | User authentication method with enhanced integrity and security | |
US20180137297A1 (en) | Security system for industrial control system | |
KR20220086135A (en) | Block chain-based power transaction operation system | |
KR20210022852A (en) | Block chain-based iot management system using cryptographic module | |
US20090327704A1 (en) | Strong authentication to a network | |
CN111914270A (en) | Programmable authentication service method and system based on block chain technology | |
RU2709281C1 (en) | Digital key carrier authorization method and system | |
US11387997B2 (en) | Constrained key derivation in geographical space | |
US11784809B2 (en) | Constrained key derivation in temporal space | |
US20230403163A1 (en) | Identification and authentication of multiple controllers | |
US11438150B2 (en) | Constrained key derivation in linear space | |
US20230078096A1 (en) | Offline delegation of authorization data | |
WO2021118471A1 (en) | System and method for processing data | |
KR20170123222A (en) | User authentication method for integrity and security enhancement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |