KR102121658B1 - Block chain system in d2d communication environments and constructing method thereof - Google Patents
Block chain system in d2d communication environments and constructing method thereof Download PDFInfo
- Publication number
- KR102121658B1 KR102121658B1 KR1020180087609A KR20180087609A KR102121658B1 KR 102121658 B1 KR102121658 B1 KR 102121658B1 KR 1020180087609 A KR1020180087609 A KR 1020180087609A KR 20180087609 A KR20180087609 A KR 20180087609A KR 102121658 B1 KR102121658 B1 KR 102121658B1
- Authority
- KR
- South Korea
- Prior art keywords
- blockchain
- node
- participating node
- value
- participating
- Prior art date
Links
Images
Classifications
-
- 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/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Abstract
D2D 통신 환경 하에서의 블록체인 시스템 및 이의 구축 방법이 개시된다. D2D 통신 환경 하에서의 블록체인 시스템은 블록체인에 저장할 사용자 데이터를 수집하고, 상기 블록체인의 예비 참여 노드의 D2D(Device-to-Device) 통신 리소스 값에 기초하여 상기 예비 참여 노드를 상기 블록체인의 참여 노드로의 등록 여부를 결정하는 스마트 등록 서비스 모듈 및 상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 사용자 데이터 저장에 대한 합의 알고리즘을 진행할 검증 노드를 선출하고, 상기 검증 노드에 의한 상기 합의 알고리즘을 진행하여 상기 사용자 데이터를 상기 블록체인에 저장하는 블록체인 합의 모듈을 포함한다.Disclosed is a blockchain system under a D2D communication environment and a method for building the same. The blockchain system under a D2D communication environment collects user data to be stored in the blockchain, and participates in the blockchain based on the D2D (Device-to-Device) communication resource value of the preliminary participating node of the blockchain. A smart registration service module for determining whether to register as a node and a verification node to proceed with the consensus algorithm for storing the user data based on the resource usage and communication strength values of the participating nodes, and the consensus algorithm by the verification node And a blockchain consensus module that stores the user data in the blockchain.
Description
본 발명은 D2D 통신 환경 하에서의 블록체인 시스템 및 이의 구축 방법에 관한 것으로서, 더욱 상세하게는 D2D 통신 환경 하에서 사용자 데이터 전송 시, 사용자 데이터의 무결성을 입증하기 위한 블록체인 시스템 및 이의 구축 방법에 관한 것이다.The present invention relates to a blockchain system under a D2D communication environment and a method for constructing the same, and more particularly, to a blockchain system for verifying the integrity of user data when transmitting user data under a D2D communication environment and a method for constructing the same.
IoT 네트워크 환경의 발전에 힘입어 D2D(Device-to-Device) 통신 또한 각광받고 있다. 셀룰러 네트워크 통신 방식은 AP(Access Ponit)와 같이 데이터 전달을 관리하는 중앙 시설이 필수이나, D2D 통신은 디바이스 간에 직접 데이터를 교환할 수 있다. 따라서, D2D 통신은 셀룰러 네트워크 확장, 처리율 향상, 에너지 효율 향상 등의 장점이 있다.With the development of the IoT network environment, D2D (Device-to-Device) communication is also in the spotlight. The cellular network communication method requires a central facility for managing data transmission, such as an AP (Access Ponit), but D2D communication can directly exchange data between devices. Therefore, D2D communication has advantages such as cellular network expansion, improved throughput, and improved energy efficiency.
한편, D2D 통신의 보안 취약성을 해결하기 위한 방법으로 블록체인 기술이 각광받고 있다. 블록체인은 피어-투-피어 통신을 기반으로 분산화 네트워크 환경을 구축하며, 거래내역을 체인 형식으로 형성함으로써 데이터의 안정성을 보장하는 기술이다.Meanwhile, blockchain technology has been spotlighted as a method for solving the security vulnerability of D2D communication. Blockchain is a technology that builds a decentralized network environment based on peer-to-peer communication and ensures data stability by forming transaction details in a chain format.
그러나, D2D 통신 환경 하에서 블록체인 시스템이 적용되는 경우, 블록체인 시스템에 사용되는 다수의 디바이스가 네트워크를 공유하게 된다. 이에, 비인증 기기에 의한 프라이버시 침해 문제가 발생할 수 있다.However, when a blockchain system is applied under a D2D communication environment, multiple devices used in the blockchain system share a network. Accordingly, a privacy infringement problem by an unauthorized device may occur.
또한, D2D 통신 환경 하에서는 간섭현상으로 인해 안전한 수신자가 아닌 인증되지 않은 악의적인 수신자가 비밀 메시지를 전송 받는 도청 가능성이 존재한다.In addition, under a D2D communication environment, there is a possibility of eavesdropping, where a malicious message is transmitted by an unauthenticated malicious recipient who is not a secure recipient due to interference.
또한, 블록체인 시스템은 모든 참여자가 검증에 참여하기 때문에 참여자가 늘어날수록 성능이 떨어지는 문제점이 발생한다. 이는 메모리 용량이 한정되는 D2D 통신 환경에 적합하지 않다. 아울러, D2D 통신 환경에 참여하는 일부 이기적 노드는 에너지 절약을 위해 다른 노드의 데이터를 수신하면서 이를 전달하지는 않는 무임승차(Free-riding) 문제점이 있다. 이러한 이기적 노드에 의해 블록체인 시스템의 처리 속도를 현저히 저하시킬 수 있다. In addition, since all participants participate in verification in the blockchain system, the performance decreases as the number of participants increases. This is not suitable for a D2D communication environment where memory capacity is limited. In addition, some selfish nodes participating in the D2D communication environment have a problem of free-riding that does not transmit data while receiving data of other nodes to save energy. Such selfish nodes can significantly reduce the processing speed of the blockchain system.
본 발명의 일측면은 D2D 통신 기기의 보안성을 검증하여 블록체인에 참여시키고, D2D 통신 기기의 참여도 레벨을 검증하여 블록체인 합의 알고리즘의 검증자를 선출하는 D2D 통신 환경 하에서의 블록체인 시스템 및 이의 구축 방법을 제공한다.One aspect of the present invention is to verify the security of the D2D communication device to participate in the blockchain, to verify the level of participation of the D2D communication device, and to select a validator of the blockchain consensus algorithm to establish a blockchain system under a D2D communication environment and its construction Provide a method.
본 발명의 다른 측면은 블록체인 합의가 진행되기 전의 오프-블록체인 영역에서 블록체인에 저장할 사용자 데이터를 수집하는 기기를 인증하여 검증된 사용자 데이터를 블록체인에 전송하는 블록체인 시스템 및 이의 구축 방법을 제공한다.Another aspect of the present invention is a blockchain system for authenticating a device that collects user data to be stored in the blockchain in the off-blockchain area before the blockchain consensus proceeds and transmitting the verified user data to the blockchain. to provide.
상기 과제를 해결하기 위한 본 발명의 D2D 통신 환경 하에서의 블록체인 시스템은 블록체인에 저장할 사용자 데이터를 수집하고, 상기 블록체인의 예비 참여 노드의 D2D(Device-to-Device) 통신 리소스 값에 기초하여 상기 예비 참여 노드를 상기 블록체인의 참여 노드로의 등록 여부를 결정하는 스마트 등록 서비스 모듈 및 상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 사용자 데이터 저장에 대한 합의 알고리즘을 진행할 검증 노드를 선출하고, 상기 검증 노드에 의한 상기 합의 알고리즘을 진행하여 상기 사용자 데이터를 상기 블록체인에 저장하는 블록체인 합의 모듈을 포함한다.The blockchain system under the D2D communication environment of the present invention for solving the above problems collects user data to be stored in the blockchain, and based on the device-to-device (D2D) communication resource value of the preliminary participating node of the blockchain. A smart registration service module for determining whether to register a preliminary participating node as a participating node of the blockchain and a verification node to proceed with an agreement algorithm for storing the user data based on the resource usage and communication strength values of the participating node, And a blockchain consensus module that processes the consensus algorithm by the verification node and stores the user data in the blockchain.
한편, 상기 사용자 데이터를 수집하는 IoT(Internet of Things) 기기 및 상기 사용자 데이터를 상기 블록체인에 전송하는 모바일 기기 간의 인증을 진행하는 IoT 인증 모듈을 더 포함할 수 있다.Meanwhile, an IoT authentication module that performs authentication between an Internet of Things (IoT) device that collects the user data and a mobile device that transmits the user data to the blockchain may be further included.
또한, 상기 스마트 등록 서비스 모듈은, 상기 블록체인 참여 노드 리스트인 스마트 등록 서비스 리스트 및 상기 예비 참여 노드의 D2D 통신 리소스 값에 기초하여 상기 예비 참여 노드의 데이터 수신 가능성을 나타내는 보안 전송률을 계산하고, 상기 보안 전송률에 따라 상기 예비 참여 노드를 상기 스마트 등록 서비스 리스트에 등록하는 스마트 등록 서비스 리스트 관리부를 포함할 수 있다.In addition, the smart registration service module calculates a security transmission rate indicating the possibility of receiving data of the preliminary participating node based on the smart registration service list which is the list of the blockchain participating nodes and the D2D communication resource values of the preliminary participating nodes, and the And a smart registration service list management unit that registers the preliminary participating node in the smart registration service list according to the security transmission rate.
또한, 상기 스마트 등록 서비스 리스트 관리부는, 상기 예비 참여 노드의 RSSI(Received Signal Strength Indicator) 값을 이용하여 상기 보안 전송률을 계산할 수 있다.In addition, the smart registration service list management unit may calculate the security transmission rate by using the received signal strength indicator (RSSI) value of the preliminary participating node.
또한, 상기 스마트 등록 서비스 리스트 관리부는, 노이즈 신호를 포함하는 D2D 통신 환경 하에서 상기 예비 참여 노드의 RSSI 값에 따른 보안 용량에서 상기 D2D 통신 환경 하에서 허가되지 않은 제 3자의 RSSI 값에 따른 보안 용량을 제외한 값을 상기 보안 전송률로 계산할 수 있다.In addition, the smart registration service list management unit excludes the security capacity according to the RSSI value of a third party not authorized under the D2D communication environment from the security capacity according to the RSSI value of the preliminary participating node under the D2D communication environment including the noise signal. The value can be calculated with the secure transmission rate.
또한, 상기 블록체인 합의 모듈은, 상기 참여 노드에 의해 구축되는 블록체인 및 상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 참여 노드의 무임승차(Free-riding) 여부를 판단할 수 있는 수치를 나타내는 참여도를 계산하고, 상기 참여도에 따라 상기 참여 노드를 상기 검증 노드로 선출하여 상기 합의 알고리즘을 진행하는 검증 노드 선출부를 포함할 수 있다.In addition, the blockchain consensus module is a value capable of determining whether the participating node is free-riding based on the value of the resource usage and communication strength of the blockchain and the participating node that are built by the participating node. It may include a verification node selecting unit for calculating the participation degree indicating, and selecting the participating node as the verification node according to the participation degree to proceed with the consensus algorithm.
또한, 상기 검증 노드 선출부는, 상기 참여 노드의 CPU 점유량 및 메모리 사용량에 따른 자원 사용량을 소정의 기준에 따라 정량화하여 레벨을 부여하고, 상기 참여 노드의 신호 세기 값을 소정의 기준에 따라 정량화하여 레벨을 부여하며, 상기 자원 사용량 레벨 값 및 상기 신호 세기 레벨 값을 이용하여 상기 참여 노드를 상기 검증 노드로 선출할 수 있다.In addition, the verification node election unit quantifies the resource usage according to the CPU occupancy amount and the memory usage of the participating node according to a predetermined criterion, and gives a level, and quantifies the signal strength value of the participating node according to a predetermined criterion. In addition, the participating node may be selected as the verification node by using the resource usage level value and the signal strength level value.
또한, 상기 검증 노드 선출부는, 상기 참여 노드의 자원 사용량 레벨 값이 1 이하가 되게 하는 참여도를 임계값으로 설정하고, 상기 참여 노드의 참여도가 임계값을 초과하는 경우 해당 참여 노드를 상기 검증 노드로 선출할 수 있다.In addition, the verification node electing unit sets the participation degree such that the resource usage level value of the participating node becomes 1 or less as a threshold value, and when the participation degree of the participating node exceeds a threshold value, the participating node is verified You can elect as a node.
또한, 상기 과제를 해결하기 위한 본 발명의 D2D 통신 환경 하에서의 블록체인 시스템 구축 방법은 블록체인에 전송할 사용자 데이터를 수집하는 단계, 상기 블록체인의 예비 참여 노드의 D2D(Device-to-Device) 통신 리소스 값에 기초하여 상기 예비 참여 노드를 상기 블록체인의 참여 노드로의 등록 여부를 결정하는 단계, 상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 사용자 데이터 저장에 대한 합의 알고리즘을 진행할 검증 노드를 선출하는 단계 및 상기 검증 노드에 의한 상기 합의 알고리즘을 진행하여 상기 사용자 데이터를 상기 블록체인에 저장하는 단계를 포함한다.In addition, the method of constructing a blockchain system under the D2D communication environment of the present invention for solving the above-mentioned problems comprises collecting user data to be transmitted to the blockchain, and device-to-device (D2D) communication resources of the preliminary participating nodes of the blockchain. Determining whether to register the preliminary participating node as a participating node of the blockchain based on a value, and verifying a node to proceed with an agreement algorithm for storing the user data based on the resource usage and communication strength values of the participating node. Electing and proceeding with the consensus algorithm by the verification node to store the user data in the blockchain.
한편, 상기 블록체인에 전송할 사용자 데이터를 수집하는 단계는, 상기 사용자 데이터를 수집하는 IoT(Internet of Things) 기기 및 상기 사용자 데이터를 상기 블록체인에 전송하는 모바일 기기 간의 인증을 진행하는 단계를 포함할 수 있다.On the other hand, the step of collecting user data to be transmitted to the blockchain includes the step of performing authentication between an Internet of Things (IoT) device collecting the user data and a mobile device transmitting the user data to the blockchain. Can be.
또한, 상기 블록체인의 예비 참여 노드의 D2D(Device-to-Device) 통신 리소스 값에 기초하여 상기 예비 참여 노드를 상기 블록체인의 참여 노드로의 등록 여부를 결정하는 단계는, 상기 예비 참여 노드의 D2D 통신 리소스 값에 기초하여 상기 예비 참여 노드의 데이터 수신 가능성을 나타내는 보안 전송률을 계산하는 단계 및 상기 보안 전송률에 따라 상기 예비 참여 노드를 스마트 등록 서비스 리스트에 등록하는 단계를 포함할 수 있다.In addition, determining whether to register the preliminary participating node as a participating node of the blockchain based on the D2D (Device-to-Device) communication resource value of the preliminary participating node of the blockchain includes: The method may include calculating a security transmission rate indicating a possibility of receiving data of the spare participating node based on a D2D communication resource value, and registering the spare participating node in a smart registration service list according to the secure transmission rate.
또한, 상기 예비 참여 노드의 D2D 통신 리소스 값에 기초하여 상기 예비 참여 노드의 데이터 수신 가능성을 나타내는 보안 전송률을 계산하는 단계는, 노이즈 신호를 포함하는 D2D 통신 환경 하에서 상기 예비 참여 노드의 RSSI 값에 따른 보안 용량에서 상기 D2D 통신 환경 하에서 허가되지 않은 제 3자의 RSSI 값에 따른 보안 용량을 제외한 값을 상기 보안 전송률로 계산하는 단계일 수 있다.In addition, the step of calculating a security rate indicating the data reception probability of the preliminary participating node based on the value of the D2D communication resource of the preliminary participating node is based on the RSSI value of the preliminary participating node under a D2D communication environment including a noise signal. It may be a step of calculating a value excluding the security capacity according to the RSSI value of a third party not authorized under the D2D communication environment from the security capacity as the security transmission rate.
또한, 상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 사용자 데이터 저장에 대한 합의 알고리즘을 진행할 검증 노드를 선출하는 단계는, 상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 참여 노드의 무임승차(Free-riding) 여부를 판단할 수 있는 수치를 나타내는 참여도를 계산하는 단계 및 상기 참여도에 따라 상기 참여 노드를 상기 검증 노드로 선출하는 단계를 포함할 수 있다.In addition, the step of selecting a verification node to proceed with the consensus algorithm for storing the user data based on the resource usage and communication strength value of the participating node is based on the resource usage and communication strength value of the participating node, It may include calculating a participation degree indicating a value capable of determining whether free-riding, and selecting the participating node as the verification node according to the participation degree.
또한, 상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 참여 노드의 무임승차 여부를 판단할 수 있는 수치를 나타내는 참여도를 계산하는 단계는, 상기 참여 노드의 CPU 점유량 및 메모리 사용량에 따른 자원 사용량을 소정의 기준에 따라 정량화하여 레벨을 부여하고, 상기 참여 노드의 신호 세기 값을 소정의 기준에 따라 정량화하여 레벨을 부여하는 단계, 상기 참여 노드의 자원 사용량 레벨 값이 1 이하가 되게 하는 참여도를 임계값으로 설정하는 단계 및 상기 자원 사용량 레벨 값 및 상기 신호 세기 레벨 값을 이용하여 상기 참여 노드를 상기 검증 노드로 선출하되, 상기 참여 노드의 참여도가 임계값을 초과하는 경우 해당 참여 노드를 상기 검증 노드로 선출하는 단계를 포함할 수 있다.In addition, the step of calculating the participation degree indicating a value capable of determining whether or not the participating node is free based on the resource usage and communication strength value of the participating node includes: resources according to the CPU occupancy amount and memory usage of the participating node. Quantifying usage according to a predetermined criterion to give a level, and quantifying the signal strength value of the participating node according to a predetermined criterion to give a level, and participating in a resource usage level value of the participating node to be 1 or less Setting the degree as a threshold value and using the resource usage level value and the signal strength level value to select the participating node as the verification node, but if the participation degree of the participating node exceeds a threshold value, the participating node It may include the step of electing as the verification node.
또한, 상기 검증 노드에 의한 상기 합의 알고리즘을 진행하여 상기 사용자 데이터를 상기 블록체인에 저장하는 단계는, 비잔틴 오류(Byzantine Fault) 합의 알고리즘에 따른 상기 합의 알고리즘을 진행하여 상기 사용자 데이터를 상기 블록체인에 저장하는 단계일 수 있다.In addition, the step of storing the user data in the blockchain by performing the consensus algorithm by the verification node is performed by performing the consensus algorithm according to a Byzantine Fault consensus algorithm to transfer the user data to the blockchain. It may be a step of saving.
본 발명에 따르면, 온-블록체인 영역에서 보안성이 검증된 모바일 기기만을 블록체인에 참여시킴으로써, D2D 통신에서 발생 가능한 도청의 위험성을 방지하고 기밀성을 보장할 수 있다.According to the present invention, by participating in the blockchain only mobile devices with security proven in the on-blockchain area, it is possible to prevent the risk of eavesdropping in D2D communication and ensure confidentiality.
또한, 온-블록체인 영역에서 참여도가 검증된 모바일 기기를 블록체인 합의 알고리즘의 검증자로 선출함으로써, 무임승차(Free-riding)를 방지하고, 전체 실행 시간 향상으로 가용성 저하를 막을 수 있다.In addition, by selecting a mobile device whose participation has been verified in the on-blockchain domain as a validator of the blockchain consensus algorithm, free-riding can be prevented, and availability can be prevented by improving overall execution time.
또한, 오프-블록체인 영역에서 사용자 데이터를 수집하는 IoT 기기를 검증함으로써, 사용자 데이터 위변조로 인한 사고를 방지하고, 안정성을 보장할 수 있다.In addition, by verifying IoT devices that collect user data in the off-blockchain area, it is possible to prevent accidents caused by forgery of user data and ensure stability.
도 1은 본 발명의 일 실시예에 따른 D2D 통신 환경 하에서의 블록체인 시스템의 개념도이다.
도 2는 도 1에 도시된 블록체인 시스템에서의 데이터 흐름을 나타낸 흐름도이다.
도 3은 도 1에 도시된 오프-블록체인 영역에서의 데이터 흐름을 나타낸 흐름도이다.
도 4는 D2D 통신 환경에서 발생하는 노이즈 신호의 일 예를 도시한 그래프이다.
도 5은 D2D 통신 환경에서 RSSI 값에 따른 보안 전송률의 일 예를 도시한 그래프이다.
도 7은 본 발명의 일 실시예에 따른 D2D 통신 환경 하에서의 블록체인 시스템 구축 방법의 순서도이다.1 is a conceptual diagram of a blockchain system under a D2D communication environment according to an embodiment of the present invention.
2 is a flowchart illustrating data flow in the blockchain system shown in FIG. 1.
3 is a flowchart illustrating data flow in the off-blockchain region shown in FIG. 1.
4 is a graph showing an example of a noise signal generated in a D2D communication environment.
5 is a graph illustrating an example of a secure transmission rate according to an RSSI value in a D2D communication environment.
7 is a flowchart of a method for constructing a blockchain system under a D2D communication environment according to an embodiment of the present invention.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예와 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.For a detailed description of the present invention, which will be described later, reference is made to the accompanying drawings that illustrate, by way of example, specific embodiments in which the invention may be practiced. These examples are described in detail enough to enable those skilled in the art to practice the present invention. It should be understood that the various embodiments of the invention are different, but need not be mutually exclusive. For example, the specific shapes, structures, and properties described herein can be implemented in other embodiments without departing from the spirit and scope of the invention in connection with one embodiment. In addition, it should be understood that the location or placement of individual components within each disclosed embodiment can be changed without departing from the spirit and scope of the invention. Therefore, the following detailed description is not intended to be taken in a limiting sense, and the scope of the present invention, if appropriately described, is limited only by the appended claims, along with all ranges equivalent to those claimed. In the drawings, similar reference numerals refer to the same or similar functions throughout several aspects.
이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the drawings.
도 1은 본 발명의 일 실시예에 따른 D2D 통신 환경 하에서의 블록체인 시스템의 개념도이다. 1 is a conceptual diagram of a blockchain system under a D2D communication environment according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 일 실시예에 따른 D2D(Device-to-Device) 통신 환경 하에서의 블록체인 시스템(이하, 블록체인 시스템)(1000)은 D2D 통신 환경 하에서 사용자 데이터 전송 시, 블록체인 기술을 적용하여 사용자 데이터의 무결성을 입증할 수 있다. Referring to FIG. 1, a blockchain system (hereinafter referred to as a blockchain system) 1000 under a D2D (Device-to-Device) communication environment according to an embodiment of the present invention is a block chain when transmitting user data under a D2D communication environment. Technology can be applied to demonstrate the integrity of user data.
D2D 통신은 기기 간 직접 통신으로 기지국이나 중간 인프라 없이 기기 간 유연한 데이터 교환이 가능하다. 예를 들면, D2D 통신은 NFC, ZigBee, Bluetooth, Wi-Fi 등을 포함할 수 있다. D2D 통신은 기기 간 직접 통신으로 네트워크 트래픽을 줄이고 통신 지연과 전력을 줄일 수 있으며, 재난, 전쟁 등으로 인해 기지국 가동이 멈춘 후에도 지속적인 통신이 가능하다는 장점을 갖는다. 이에 D2D 통신은 의료 분야, 금융 분야, IoT(Internet of Things) 서비스 등에 적용될 수 있으며, 특히 IoT 서비스에 있어서 저전력 기기가 지닌 통신 거리의 한계를 보완할 수 있어 각광받고 있다. 본 실시예에서는 IoT 서비스에 적용된 D2D 통신 환경을 예로 들어 설명하기로 한다.D2D communication is a direct communication between devices, enabling flexible data exchange between devices without a base station or intermediate infrastructure. For example, D2D communication may include NFC, ZigBee, Bluetooth, Wi-Fi, and the like. D2D communication has the advantage of being able to reduce network traffic and reduce communication delay and power through direct communication between devices, and to continue communication even after the base station stops due to disaster or war. Accordingly, D2D communication can be applied to the medical field, the financial field, the Internet of Things (IoT) service, etc. In particular, the IoT service has been spotlighted because it can compensate for the limitation of the communication distance of low-power devices. In this embodiment, the D2D communication environment applied to the IoT service will be described as an example.
본 발명의 일 실시예에 따른 블록체인 시스템(1000)은 오프-블록체인 영역 및 온-블록체인 영역으로 나뉠 수 있다. 오프-블록체인 영역에서는 사용자 데이터를 수집할 수 있다. 온-블록체인 영역에서는 D2D 통신을 수행하는 기기(500)의 보안성 및 가용성을 검증하여 블록체인(600)에 참여시키고, 이러한 블록체인(600)에 사용자 데이터를 저장할 수 있다. The
본 발명의 일 실시예에 따른 블록체인 시스템(1000)은 오프-블록체인 영역에 IoT 인증 모듈(1001)을 포함하여, 사용자 데이터를 수집하는 IoT 기기(110)를 검증할 수 있다. The
IoT 기기(110)는 사용자 데이터를 수집하고, 수집한 데이터를 모바일 기기(500)를 매개체로 하여 블록체인(600)에 전송할 수 있다. IoT 기기(110)에서 수집하는 사용자 데이터는 사용자의 민감한 정보에 해당하며, 이러한 데이터를 다루는 어플리케이션의 경우 해킹 위험이 높다.The
본 발명의 일 실시예에 따른 블록체인 시스템(1000)은 오프-블록체인 영역에 IoT 인증 모듈(1001)을 포함하여, 검증된 IoT 기기(110)로부터 사용자 데이터를 수집할 수 있다. 이와 관련하여 구체적인 설명은 도 3을 참조하여 후술하기로 한다.The
본 발명의 일 실시예에 따른 블록체인 시스템(1000)은 온-블록체인 영역에 스마트 등록 서비스 모듈(1005) 및 블록체인 합의 모듈(1006)을 포함할 수 있다. The
스마트 등록 서비스 모듈(1005)은 D2D 통신을 수행하는 모바일 기기(500)의 보안성을 검증하여 블록체인(600) 참여 허용 여부를 결정할 수 있다. 스마트 등록 서비스 모듈(1005)은 모바일 기기(500)의 RSSI(Received Signal Strength Indicator) 등을 포함하는 D2D 통신 리소스 값에 기초하여 모바일 기기(500)의 보안 전송률을 계산할 수 있다. 스마트 등록 서비스 모듈(1005)은 모바일 기기(500)의 보안 전송률에 따라 모바일 기기(500)를 블록체인(600)의 참여 노드인 거래 허용 참가자로 등록할 수 있다. 이와 관련하여 구체적인 설명은 도 4 및 도 5를 참조하여 후술하기로 한다.The smart
본 발명의 일 실시예에 따른 블록체인 시스템(1000)은 온-블록체인 영역에 스마트 등록 서비스 모듈(1005)을 포함하여 보안성이 검증된 모바일 기기(500)만을 블록체인(600)에 참여시킴으로써, D2D 통신에서 발생 가능한 도청의 위험성을 방지하고 기밀성을 보장할 수 있다.The
블록체인 합의 모듈(1006)은 블록체인(600)의 거래 허용 참가자로 등록된 모바일 기기(500)의 참여도를 검증하여 합의 알고리즘에 참여할 검증자(610)를 선출할 수 있다. 블록체인 합의 모듈(1006)은 블록체인(600)의 거래 허용 참가자로 등록된 모바일 기기(500)의 자원 사용량 및 통신 세기 값에 따라 합의 알고리즘에 참여하는 검증 노드인 검증자(610)를 선출할 수 있다. 검증자(610)로 선출된 모바일 기기는 비잔틴 오류(Byzantine Fault) 합의 알고리즘을 진행하여, 사용자 데이터를 블록체인(600)에 저장할 수 있다. 이와 관련하여 구체적인 설명은 도 6을 참조하여 후술하기로 한다.The
본 발명의 일 실시예에 따른 블록체인 시스템(1000)은 온-블록체인 영역에 블록체인 합의 모듈(1006)을 포함하여 참여도가 검증된 모바일 기기(500)를 블록체인 합의 알고리즘의 검증자(610)로 선출함으로써, 무임승차(Free-riding)를 방지하고, 전체 실행 시간 향상으로 가용성 저하를 막을 수 있다.The
도 2는 도 1에 도시된 블록체인 시스템에서의 데이터 흐름을 나타낸 흐름도이다.2 is a flowchart illustrating data flow in the blockchain system shown in FIG. 1.
도 2를 참조하면, 사용자 데이터를 수집하는 IoT 기기(110)와 사용자 데이터를 블록체인(600)에 전송하는 모바일 기기(500) 간의 인증이 진행될 수 있다(①). 이는 도 1에 도시된 오프-블록체인 영역에서 진행될 수 있다.Referring to FIG. 2, authentication between the
IoT 기기(110)는 사용자 데이터를 수집하는 저전력 지능형 센서일 수 있다. The
모바일 기기(500)는 D2D 통신이 가능하고 정보의 입출력이 가능한 장치로, 예를 들면, PC, 스마트폰, 테블릿 등으로 구현될 수 있다. 모바일 기기(500)는 Window, Linux, Android, iOS 등과 같은 운영 체제가 탑재될 수 있다. 본 실시예에서는 모바일 기기(500)는 Android가 탑재된 것을 예로 들어 설명하기로 한다.The
IoT 기기(110)는 특정 서버로부터 내려 받은 어플리케이션에 의해 실행될 수 있으며, 모바일 기기(500)는 특정 서버에서 인증한 기기일 수 있다. IoT 기기(110)는 특정 서버로부터 어플리케이션을 내려 받을 때 SEED 키(K_seed)를 함께 내려 받을 수 있다. IoT 기기(110) 및 모바일 기기(500)는 이러한 SEED 키(K_seed)를 이용하여 인증을 진행할 수 있다. The
모바일 기기(500)는 IoT 기기(110)와의 인증이 완료되면, IoT 기기(110)에서 수집한 사용자 데이터를 D2D 통신 방식에 따라 도 1에 도시된 온-블록체인 영역으로 전달할 수 있다(②).When the authentication with the
또한, 도 1에 도시된 온-블록체인 영역에서는 블록체인(600)를 구성하는 노드(501)를 검증하여 블록체인(600) 참여 허용 여부를 결정할 수 있다.In addition, in the on-blockchain region illustrated in FIG. 1, it is possible to determine whether to allow participation in the
블록체인(600)은 사설 블록체인 플랫폼인 하이퍼레저일 수 있다.
노드(501)는 D2D 통신이 가능한 기기일 수 있으며, D2D 통신 환경 하에서 블록체인(600)을 구성할 수 있다.The
도 2를 참조하면, 노드(501)의 보안 전송률 및 자원 사용량에 따라 참여도(Ppi)가 계산될 수 있으며(③), 이러한 참여도(Ppi)가 소정의 조건을 만족하는 경우, 해당 노드(501)는 스마트 등록 서비스 모듈(1005)로부터 블록체인(600)의 참여 노드(501)로 등록될 수 있다(④). 2, participation (P pi ) may be calculated according to the security transmission rate and resource usage of the node 501 (③), and when such participation (P pi ) satisfies a predetermined condition, the corresponding The
예를 들면, 스마트 등록 서비스 모듈(1005)에 등록된 노드(501)는 사용자 데이터에 대한 블록 및 스마트 컨트랙트를 작성할 수 있으며, 이를 다른 노드(501)로 브로드캐스트할 수 있다. For example, the
스마트 등록 서비스 모듈(1005)에 등록된 노드(501) 중, 참여도(Ppi)가 소정의 조건을 만족하는 노드(501)는 블록에 대한 합의 알고리즘을 진행하는 노드(501)로 선출될 수 있으며, 합의 알고리즘을 실행하고 그 결과를 다른 노드(501)로 브로드캐스트할 수 있다(⑤). Among the
이하, 도 3을 참조하여 도 1에 도시된 오프-블록체인 영역에서의 데이터 흐름에 대해 구체적으로 설명한다.Hereinafter, the data flow in the off-blockchain region shown in FIG. 1 will be described in detail with reference to FIG. 3.
도 3은 도 1에 도시된 오프-블록체인 영역에서의 데이터 흐름을 나타낸 흐름도이다.3 is a flowchart illustrating data flow in the off-blockchain region shown in FIG. 1.
도 3을 참조하면, 사용자 데이터를 수집하는 IoT 기기(110)에 대한 인증이 진행될 수 있다. 이는 도 1에 도시된 오프-블록체인 영역에 포함되는 IoT 인증 모듈(1001)에서 진행될 수 있다. Referring to FIG. 3, authentication for the
IoT 인증 모듈(1001)은 사용자(111), IoT 기기(110), TrustZone 어플리케이션(500) 및 IoT 인증 서버(120)를 포함할 수 있다.The
도 3에 도시된 TrustZone 어플리케이션(500)은 도 2의 모바일 기기(500)에 해당할 수 있다. 일반적으로 Android 운영체제가 탑재된 기기의 경우, TrustZone의 TEE(Trusted-Execution Environment) 보안 플랫폼이 탑재될 수 있다. TEE 보안 플랫폼은 운영체제의 접근 가능/불가능 영역을 분리하여 고립된 환경을 제공하는 플랫폼으로, 내부에 로드된 코드 및 데이터의 기밀성과 무결성을 보장할 수 있다. 본 실시예에서는 모바일 기기(500)에 탑재된 TrustZone 어플리케이션(500)을 이용하여 IoT 기기(110) 및 모바일 기기(500)의 무결성을 검증할 수 있다.The
구체적으로는, IoT 기기(110)는 사용자(111)의 제어에 의해 IoT 인증 서버(120)로부터 내려 받는 어플리케이션에 의해 실행될 수 있다. IoT 기기(110)는 IoT 인증 서버(120)로부터 어플리케이션을 내려 받는 경우 SEED 키(Kseed)를 함께 내려 받을 수 있다.Specifically, the
IoT 기기(110)는 사용자(111)에 의해 실행되면, SEED 키(Kseed) 및 앱 ID(AID)를 TrustZone 어플리케이션(500)으로 전송할 수 있다.When executed by the
TrustZone 어플리케이션(500)은 IoT 기기(110)로부터 수신한 SEED 키(Kseed)를 검증하고, 그 결과, SEED 키(Kseed)가 "true"로 검증되는 경우, 앱 ID(AID)를 IoT 인증 서버(120)로 전달할 수 있다.The
SEED 키(Kseed)가 "true"로 검증되는 경우, IoT 기기(110) 및 IoT 인증 서버(120)는 각각 IoT 기기(110)의 고유번호(DID) 및 앱 ID(AID)를 해싱한 후, 오늘 날짜(date)로 해싱하여 해시 값(H(1), H(2))을 생성할 수 있다.When the SEED key (K seed ) is verified as “true”, the
IoT 인증 서버(120)는 두 해시 값(H(1), H(2))을 비교하고, 그 결과 두 해시 값(H(1), H(2))이 동일하면 IoT 기기(110)가 정상적인 기기인 것으로 판단할 수 있다.The
IoT 인증 서버(120)는 IoT 기기(110)가 정상적인 기기로 판단하면, 랜덤 키(Krandom)를 생성하여 IoT 기기(110)로 전달할 수 있다. 랜덤 키(Krandom)는 자동 로그인, 비정상 종료 후 남아있는 쿠키, 세션 값을 이용하여 악의적으로 데이터를 변형하거나, 암호화 키를 가로채는 것 등을 방지하기 위한 임시키로 사용될 수 있으며, 또는, 사용자 인증에 사용될 수 있다.When the
본 발명의 일 실시예에 따른 블록체인 시스템(1000)은 이와 같은 방식으로 사용자 데이터를 수집하는 IoT 기기(110) 및 이를 블록체인에 전달하는 모바일 디바이스(500) 간의 인증을 진행함으로써, 사용자 데이터의 위, 변조를 방지할 수 있으며, 사용자 데이터가 유출될 가능성을 예방할 수 있다.The
이하, 도 1에 도시된 온-블록체인 영역에서의 데이터 흐름에 대해 구체적으로 설명한다.Hereinafter, the data flow in the on-blockchain region shown in FIG. 1 will be described in detail.
도 1에 도시된 온-블록체인 영역에 포함되는 스마트 등록 서비스 모듈(1005)은 D2D 통신을 수행하는 모바일 기기(500)의 보안성을 검증하여 블록체인(600) 참여 허용 여부를 결정할 수 있다. The smart
이하에서는, 설명의 편의를 위해 모바일 기기(500)를 블록체인(600)을 구성하는 노드로 칭하여 설명하기로 한다. 또한, 스마트 등록 서비스 모듈(1005)에 의해 보안성이 검증되기 전의 노드를 예비 참여 노드로 정의하고, 스마트 등록 서비스 모듈(1005)에 의해 블록체인(600) 참여가 허용된 노드를 참여 노드로 정의한다.Hereinafter, for convenience of description, the
스마트 등록 서비스 모듈(1005)은 스마트 등록 서비스 리스트 및 이를 관리하는 스마트 등록 서비스 리스트 관리부를 포함할 수 있다. 스마트 등록 서비스 리스트는 블록체인(600) 참여가 허용된 노드 리스트일 수 있다. 스마트 등록 서비스 리스트 관리부는 예비 참여 노드의 보안성을 검증하여 스마트 등록 서비스 리스트에 등록할 수 있다.The smart
구체적으로는, 스마트 등록 서비스 리스트 관리부는 예비 참여 노드의 D2D 통신 리소스 값에 기초하여 예비 참여 노드의 보안 전송률을 계산할 수 있다. Specifically, the smart registration service list management unit may calculate the secure transmission rate of the preliminary participating node based on the D2D communication resource value of the preliminary participating node.
D2D 통신 리소스 값은 D2D 통신에서 발생하는 값을 의미하며 수신 신호 세기인 RSSI 값이 포함될 수 있다. The D2D communication resource value refers to a value generated in D2D communication, and may include an RSSI value of received signal strength.
보안 전송률은 D2D 통신에서 예비 참여 노드가 데이터를 수신할 가능성을 나타낼 수 있으며, 실제 D2D 통신 환경에서 잡음 Noise 및 Fading을 발생시킨 후, 허가된 수신자의 보안 용량에서 제 3자인 악의적인 도청자의 보안 용량을 제외한 값으로 정의될 수 있다. D2D 통신 환경 하에서 허가되지 않은 제 3자가 허가된 수신 대상과 근접하여 위치하는 경우, 허가되지 않은 제 3자가 데이터를 도청할 가능성이 높다. 따라서, D2D 통신 환경에서 송신자가 수신자에게 데이터 전송 시, 도청자가 해독할 수 없는 전송률을 이용하여 전송하는 경우 데이터를 수신자에게 안전하게 전달할 수 있을 것이다. The secure transmission rate may indicate the possibility of a pre-participating node receiving data in D2D communication, and after generating noise noise and fading in an actual D2D communication environment, the secure capacity of a malicious eavesdropper that is a third party in the authorized recipient's security capacity It can be defined as a value excluding. In a D2D communication environment, when an unauthorized third party is located close to an authorized receiving target, there is a high possibility that an unauthorized third party may intercept data. Accordingly, in a D2D communication environment, when a sender transmits data to a receiver, data may be safely delivered to the receiver when the wiretap transmits using a rate that cannot be decrypted.
이에, 본 실시예에서는 보안 전송률을 상술한 바와 같이 정의할 수 있으며, 보안 전송률이 높을수록 보안성이 높은 안전한 노드로 판단할 수 있다.Accordingly, in the present embodiment, the security transmission rate can be defined as described above, and the higher the security transmission rate, the more secure the node can be determined to be.
스마트 등록 서비스 리스트 관리부는 아래 수학식 1에 따라 예비 참여 노드의 보안 전송률을 계산할 수 있다. The smart registration service list management unit may calculate the secure transmission rate of the preliminary participating node according to
수학식 1에서 P는 송신 전력, RSSI는 수신 신호 세기, σm 2은 수신자를 방해하는 신호, σw 2는 도청자를 방해하는 신호, W는 통신 대역폭을 의미하며 일예로, W=1일 수 있다.In
스마트 등록 서비스 리스트 관리부는 예비 참여 노드의 RSSI 값을 수학식 1에 대입할 수 있다. 스마트 등록 서비스 리스트 관리부는 매트랩을 이용하여 획득할 수 있는 Gaussian Noise 값을 수학식 1의 σm 2 및 σw 2에 대입할 수 있다. The smart registration service list management unit may substitute the RSSI value of the preliminary participating node into Equation (1). The smart registration service list management unit may substitute Gaussian Noise values obtainable using MATLAB into σ m 2 and σ w 2 of Equation (1).
도 4는 D2D 통신 환경에서 발생하는 노이즈 신호의 일 예를 도시한 그래프이다.4 is a graph showing an example of a noise signal generated in a D2D communication environment.
도 4를 참조하면, Gaussian Noise 가 적용된 시그널 값과 평균 시그널 값을 확인할 수 있다. 스마트 등록 서비스 리스트 관리부는 예비 참여 노드의 RSSI 에서 노이즈가 적용된 시그널 값을 수학식 1에 적용하여 예비 참여 노드의 보안 전송률을 계산할 수 있다.Referring to FIG. 4, it is possible to check a signal value to which Gaussian Noise is applied and an average signal value. The smart registration service list management unit may calculate the security transmission rate of the preliminary participating node by applying the noise-applied signal value to the
도 5은 D2D 통신 환경에서 RSSI 값에 따른 보안 전송률의 일 예를 도시한 그래프이다.5 is a graph illustrating an example of a secure transmission rate according to an RSSI value in a D2D communication environment.
도 5를 참조하면, 도청자의 수신 방해 값이 작을수록 예비 참여 노드의 보안 전송률이 높아짐을 확인할 수 있다. 즉, 도청자의 수신 방해 값이 작을수록 예비 참여 노드가 안전하게 데이터를 수신할 가능성이 상승됨을 확인할 수 있다.Referring to FIG. 5, it can be confirmed that the smaller the interference value of the eavesdropper, the higher the security transmission rate of the preliminary participating node. That is, it can be confirmed that the smaller the interference value of the eavesdropper, the higher the probability that the preliminary participating node can safely receive data.
스마트 등록 서비스 모듈(1005)은 이와 같은 예비 참여 노드의 보안 전송률을 계산하고, 예비 참여 노드의 보안 전송률이 높을수록 안전한 모바일 기기인 것으로 판단하고 관리할 수 있다.The smart
예를 들면, 스마트 등록 서비스 모듈(1005)은 예비 참여 노드의 보안 전송률이 1 이상으로 계산되는 경우, 해당 예비 참여 노드를 스마트 등록 서비스 리스트에 블록체인의 참여 노드로 등록할 수 있다. 이에 따라, 스마트 등록 서비스 모듈(1005)은 D2D 통신에서 발생할 수 있는 도청의 위험성을 방지하고, 인가된 기기를 구별함으로써 기밀성을 보장할 수 있다.For example, when the security transmission rate of the preliminary participating node is calculated as 1 or more, the smart
한편, 도 1에 도시된 온-블록체인 영역에 포함되는 블록체인 합의 모듈(1006)은 스마트 등록 서비스 리스트에 등록된 참여 노드 중 블록체인 합의 알고리즘에 참여할 노드를 선출하여 합의 알고리즘을 진행할 수 있다.Meanwhile, the
이하에서는, 설명의 편의를 위해 스마트 등록 서비스 리스트에 등록된 참여 노드 중, 합의 알고리즘에 참여할 노드로 선출된 노드를 검증 노드로 정의한다. Hereinafter, a node selected as a node to participate in the consensus algorithm is defined as a verification node among the participating nodes registered in the smart registration service list for convenience of explanation.
블록체인 합의 모듈(1006)은 블록체인 및 검증 노드 선출부를 포함할 수 있다. 블록체인은 사설 블록체인 플랫폼인 하이퍼레저로, 참여 노드에 의해 구축된 블록체인 네트워크일 수 있으며, 검증 노드 선출부는 참여 노드 중 블록체인에 사용자 데이터 저장에 대한 합의 알고리즘을 진행할 검증 노드를 선출할 수 있다. The
구체적으로는, 검증 노드 선출부는 참여 노드의 CPU 점유량 및 메모리 사용량에 따른 자원 사용량을 소정의 기준에 따라 정량화하여 레벨을 부여할 수 있다. 또한, 검증 노드 선출부는 참여 노드의 신호 세기 값을 소정의 기준에 따라 정량화하여 레벨을 부여할 수 있다. 검증 노드 선출부는 참여 노드의 자원 사용량 레벨 값 및 신호 세기 레벨 값에 따라 검증 노드를 선출할 수 있다.Specifically, the verification node election unit may assign a level by quantifying resource usage according to the CPU occupancy amount and memory usage of the participating node according to a predetermined criterion. In addition, the verification node selection unit may quantify the signal strength value of the participating node according to a predetermined criterion to give a level. The verification node selection unit may select the verification node according to the resource usage level value and the signal strength level value of the participating node.
표 1은 신호 세기에 따라 나눠지는 신호 세기 레벨 값의 일 예이고, 표 2는 CPU 점유량 및 메모리 사용량에 따라 나눠지는 자원 사용량 레벨 값의 일 예이다.Table 1 is an example of a signal strength level value divided according to signal strength, and Table 2 is an example of a resource usage level value divided according to CPU occupancy amount and memory usage.
표 1 및 표 2와 같은 각 레벨 값을 구분하는 기준은 하이퍼레저 블록체인 플랫폼에서 각 노드를 도커(Docker) 가상 머신으로 구현한 경우, UCP(universal Control Plane)을 활용하여 설정될 수 있다.The criteria for classifying each level value as shown in Table 1 and Table 2 can be set by using a universal control plan (UCP) when each node is implemented as a Docker virtual machine in the hyperledger blockchain platform.
도 6은 도 1에 도시된 블록체인 합의 모듈에 의해 선출된 검증 노드의 일 예를 도시한 도면이다.6 is a diagram illustrating an example of a verification node selected by the blockchain consensus module illustrated in FIG. 1.
도 6을 참조하면, 검증 노드 선출부는 참여 노드(620)의 자원 사용량 레벨 값(RC) 및 신호 세기 레벨 값(SC)에 따라 검증 노드(610)를 선출할 수 있다. 검증 노드 선출부는 자원 사용량 레벨 값(RC) 및 신호 세기 레벨 값(SC)이 높은 참여 노드(620)를 검증 노드(610)로 선출할 수 있다.Referring to FIG. 6, the verification node selection unit may elect the
예를 들면, 검증 노드 선출부는 참여 노드(620)의 자원 사용량 레벨 값(RC)이 3 이상인 경우 해당 참여 노드(620)를 검증 노드(610)로 선출할 수 있다. 또는, 검증 노드 선출부는 참여 노드(620)의 자원 사용량 레벨 값(RC)이 1 이하인 경우 해당 참여 노드(620)를 검증 노드(610)에서 제외할 수 있다. For example, when the resource usage level value RC of the participating
검증 노드 선출부는 이와 같이 참여 노드(620)의 자원 사용량 레벨 값(RC) 및 신호 세기 레벨 값(SC)에 따라 검증 노드(610)를 선출할 수 있도록 아래 수학식 2에 따라 참여 노드(620)의 참여도를 계산할 수 있다.The verification node selecting unit may participate in the
수학식 2에서 SCpi는 참여 노드의 보안 전송률, RUpi는 참여 노드의 자원 사용량, Cpi는 참여 노드의 CPU 사용량, Mpi는 참여 노드의 메모리 사용량, W는 통신 대역폭을 의미하며 일예로, W=1일 수 있다.In
검증 노드 선출부는 참여 노드(620)의 참여도에 따라 검증 노드(610)를 선별할 수 있다. 참여도는 참여 노드(620)의 무임승차 여부를 판단할 수 있는 수치를 나타낼 수 있으며, 참여도가 낮을수록 무임승차 가능성이 높은 것으로 판단할 수 있다. 예를 들면, 검증 노드 선출부는 참여 노드(620)의 자원 사용량 레벨 값(RC)이 1 이하가 되는 참여도를 임계값으로 설정하고, 참여 노드(620)의 참여도가 임계값을 초과하는 경우 해당 참여 노드(620)를 검증 노드(610)로 선출할 수 있다.The verification node selection unit may select the
사설 블록체인 플랫폼에 적용되는 합의 알고리즘은 PBFT(Practical Byzantine Fault Tolerance) 알고리즘으로, 다수결로 합의를 도출하는 방식이다. 따라서, 참여 노드의 수가 늘어날수록 전체 속도 저하 문제가 발생할 수 있으며, 일부 참여 노드가 악의적으로 담합하여 합의하는 경우 잘못된 검증이 진행될 수 있다. 이에, 본 실시예에서는 스마트 등록 서비스 리스트에 등록된 참여 노드를 대상으로 합의를 진행하되, 참여 노드의 참여도에 따라 검증 노드를 선별함으로써 참여 노드의 무임승차를 방지하여 전체 실행 시간을 향상시킬 수 있다.The consensus algorithm applied to the private blockchain platform is the PBFT (Practical Byzantine Fault Tolerance) algorithm, which is a method of deriving consensus by majority consensus. Therefore, as the number of participating nodes increases, an overall speed reduction problem may occur, and if some of the participating nodes maliciously agree to collide, incorrect verification may proceed. Thus, in this embodiment, an agreement is made for the participating nodes registered in the smart registration service list, but by selecting the verification node according to the participation degree of the participating nodes, free running of the participating nodes can be prevented to improve the overall execution time. have.
이하에서는, 본 발명의 일 실시예에 따른 D2D 통신 환경 하에서의 블록체인 시스템 구축 방법에 대하여 설명한다.Hereinafter, a method of constructing a blockchain system under a D2D communication environment according to an embodiment of the present invention will be described.
본 발명의 일 실시예에 따른 D2D 통신 환경 하에서의 블록체인 시스템 구축 방법은 도 1에 도시된 블록체인 시스템(1000)과 실질적으로 동일한 구성에서 진행될 수 있다. 따라서, 도 1에 도시된 블록체인 시스템(1000)과 동일한 구성요소는 동일한 도면부호를 부여하고, 반복되는 설명은 생략하기로 한다.The method of constructing a blockchain system under a D2D communication environment according to an embodiment of the present invention may be performed in substantially the same configuration as the
도 7은 본 발명의 일 실시예에 따른 D2D 통신 환경 하에서의 블록체인 시스템 구축 방법의 순서도이다.7 is a flowchart of a method for constructing a blockchain system under a D2D communication environment according to an embodiment of the present invention.
도 7을 참조하면, 오프-블록체인 영역에서는 인증된 IoT 기기(110)로부터 사용자 데이터를 수집할 수 있다(S10).Referring to FIG. 7, in the off-blockchain area, user data may be collected from the authenticated IoT device 110 (S10 ).
IoT 인증 모듈(1001)은 사용자 데이터를 수집하는 IoT 기기(110)와 사용자 데이터를 블록체인(600)에 전송하는 모바일 기기(500) 간의 인증을 진행할 수 있다.The
IoT 기기(110)는 특정 서버로부터 내려 받은 어플리케이션에 의해 실행될 수 있으며, 모바일 기기(500)는 특정 서버에서 인증한 기기일 수 있다. IoT 기기(110)는 특정 서버로부터 어플리케이션을 내려 받을 때 SEED 키(K_seed)를 함께 내려 받을 수 있다. IoT 인증 모듈(1001)은 이러한 SEED 키(K_seed)를 이용하여 IoT 기기(110) 및 모바일 기기(500) 간의 인증을 진행할 수 있다. The
온-블록체인 영역에서는 블록체인(600)의 예비 참여 노드의 보안 전송률을 계산하고(S20), 보안 전송률에 따라 예비 참여 노드의 참여 노드로의 등록을 결정할 수 있다(S30).In the on-blockchain area, the secure transmission rate of the preliminary participating node of the
스마트 등록 서비스 모듈(1005)은 예비 참여 노드의 D2D 통신 리소스 값에 기초하여 예비 참여 노드의 보안 전송률을 계산할 수 있다. The smart
D2D 통신 리소스 값은 D2D 통신에서 발생하는 값을 의미하며 수신 신호 세기인 RSSI 값이 포함될 수 있다. The D2D communication resource value refers to a value generated in D2D communication, and may include an RSSI value of received signal strength.
보안 전송률은 D2D 통신에서 예비 참여 노드가 데이터를 수신할 가능성을 나타낼 수 있으며, 실제 D2D 통신 환경에서 잡음 Noise 및 Fading을 발생시킨 후, 허가된 수신자의 보안 용량에서 제 3자인 악의적인 도청자의 보안 용량을 제외한 값으로 정의될 수 있다.The secure transmission rate may indicate the possibility of a pre-participating node receiving data in D2D communication, and after generating noise noise and fading in an actual D2D communication environment, the secure capacity of a malicious eavesdropper that is a third party in the authorized recipient's security capacity It can be defined as a value excluding.
스마트 등록 서비스 모듈(1005)은 상술한 수학식 1에 따라 예비 참여 노드의 보안 전송률을 계산하고, 예비 참여 노드의 보안 전송률이 높을수록 안전한 모바일 기기인 것으로 판단하고 관리할 수 있다.The smart
예를 들면, 스마트 등록 서비스 모듈(1005)은 예비 참여 노드의 보안 전송률이 1 이상으로 계산되는 경우, 해당 예비 참여 노드를 스마트 등록 서비스 리스트에 블록체인의 참여 노드로 등록할 수 있다.For example, when the security transmission rate of the preliminary participating node is calculated as 1 or more, the smart
온-블록체인 영역에서는 사용자 데이터에 대한 블록 및 스마트 컨트랙트를 작성하여 블록체인(600) 참여 노드로 브로드캐스트할 수 있다(S40).In the on-blockchain area, a block and a smart contract for user data can be created and broadcast to the
그리고, 온-블록체인 영역에서는 참여 노드의 참여도를 계산하고(S50), 참여도에 따라 참여 노드를 검증 노드로 선출할 수 있다(S60).And, in the on-blockchain domain, the participation level of the participating node is calculated (S50), and the participating node can be selected as a verification node according to the participation level (S60).
블록체인 합의 모듈(1006)은 참여 노드 중 블록체인에 사용자 데이터 저장에 대한 합의 알고리즘을 진행할 검증 노드를 선출할 수 있다. The
블록체인 합의 모듈(1006)은 상술한 수학식 2에 따라 참여 노드(620)의 참여도를 계산할 수 있다. 참여도는 참여 노드의 무임승차 여부를 판단할 수 있는 수치를 나타낼 수 있으며, 참여도가 낮을수록 무임승차 가능성이 높은 것으로 판단할 수 있다.The
블록체인 합의 모듈(1006)은 참여도를 이용하여 자원 사용량 레벨 값(RC) 및 신호 세기 레벨 값(SC)이 높은 참여 노드를 검증 노드로 선출할 수 있다.The
자원 사용량 레벨 값(RC)은 참여 노드의 CPU 점유량 및 메모리 사용량에 따른 자원 사용량을 소정의 기준에 따라 정량화하여 레벨을 부여한 값일 수 있다. 또한, 신호 세기 레벨 값(SC)은 참여 노드의 신호 세기 값을 소정의 기준에 따라 정량화하여 레벨을 부여한 값일 수 있다. The resource usage level value RC may be a value obtained by quantifying resource usage according to a CPU occupancy amount and memory usage of a participating node according to a predetermined criterion. Further, the signal strength level value SC may be a value obtained by quantifying the signal strength value of the participating node according to a predetermined criterion.
블록체인 합의 모듈(1006)은 참여 노드의 자원 사용량 레벨 값(RC)이 1 이하가 되는 참여도를 임계값으로 설정하고, 참여 노드의 참여도가 임계값을 초과하는 경우 해당 참여 노드를 검증 노드로 선출할 수 있다.The
온-블록체인 영역에서는 검증 노드가 선출되면, 검증 노드에 의한 합의 알고리즘이 실행될 수 있으며(S70), 합의 알고리즘 결과에 따라 블록체인(600)에 블록이 저장될 수 있다(S80).In the on-blockchain area, when a verification node is selected, a consensus algorithm by the verification node may be executed (S70), and a block may be stored in the
본 실시예에서 합의 알고리즘은 비잔틴 오류(Byzantine Fault) 합의 알고리즘을 따를 수 있다. 또한, 합의 알고리즘 실행 결과, 스마트 컨트랙트에 대한 검증이 완료되면, 블록을 체인에 연결하고 그 결과를 참여 노드로 브로드캐스트할 수 있다.In this embodiment, the consensus algorithm may follow the Byzantine Fault consensus algorithm. In addition, when the verification of the smart contract is completed as a result of executing the consensus algorithm, the block can be connected to the chain and the result can be broadcast to the participating node.
이와 같은, D2D 통신 환경 하에서의 블록체인 시스템 구축 방법은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.Such a method for constructing a blockchain system under a D2D communication environment may be implemented as an application or implemented in the form of program instructions that can be executed through various computer components and recorded in a computer-readable recording medium. The computer-readable recording medium may include program instructions, data files, data structures, or the like alone or in combination.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.The program instructions recorded on the computer-readable recording medium are specially designed and configured for the present invention, and may be known and available to those skilled in the computer software field.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD 와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs, DVDs, and magneto-optical media such as floptical disks. media), and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of program instructions include not only machine language codes produced by a compiler, but also high-level language codes executable by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules to perform processing according to the present invention, and vice versa.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described above with reference to embodiments, those skilled in the art understand that various modifications and changes can be made to the present invention without departing from the spirit and scope of the present invention as set forth in the claims below. Will be able to.
1000: D2D 통신 환경 하에서의 블록체인 시스템
1001: IoT 인증 모듈
1005: 스마트 등록 서비스 모듈
1006: 블록체인 합의 모듈
110: IoT 기기
500: 모바일 기기
600: 블록체인
610: 검증자1000: Blockchain system under D2D communication environment
1001: IoT authentication module
1005: smart registration service module
1006: Blockchain consensus module
110: IoT device
500: mobile device
600: Blockchain
610: validator
Claims (15)
상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 사용자 데이터 저장에 대한 합의 알고리즘을 진행할 검증 노드를 선출하고, 상기 검증 노드에 의한 상기 합의 알고리즘을 진행하여 상기 사용자 데이터를 상기 블록체인에 저장하는 블록체인 합의 모듈을 포함하며,
상기 스마트 등록 서비스 모듈은,
상기 블록체인 참여 노드 리스트인 스마트 등록 서비스 리스트; 및
상기 예비 참여 노드의 D2D 통신 리소스 값에 기초하여 상기 예비 참여 노드의 데이터 수신 가능성을 나타내는 보안 전송률을 계산하고, 상기 보안 전송률에 따라 상기 예비 참여 노드를 상기 스마트 등록 서비스 리스트에 등록하는 스마트 등록 서비스 리스트 관리부를 포함하며,
노이즈 신호를 포함하는 D2D 통신 환경 하에서 상기 예비 참여 노드의 RSSI 값에 따른 보안 용량에서 상기 D2D 통신 환경 하에서 허가되지 않은 제 3자의 RSSI 값에 따른 보안 용량을 제외한 값을 상기 보안 전송률로 계산하는, D2D 통신 환경 하에서의 블록체인 시스템.Collecting user data to be stored in the blockchain, and determining whether to register the preliminary participating node as a participating node of the blockchain based on the D2D (Device-to-Device) communication resource value of the preliminary participating node of the blockchain Smart registration service module; And
Selecting a verification node to proceed with the consensus algorithm for storing the user data based on the resource usage and communication strength value of the participating node, and proceeding with the consensus algorithm by the verification node to store the user data in the blockchain Blockchain consensus module,
The smart registration service module,
A smart registration service list, which is a list of nodes participating in the blockchain; And
A smart registration service list that calculates a security transmission rate indicating the possibility of receiving data from the spare participating node based on the D2D communication resource value of the spare participating node, and registers the spare participating node in the smart registration service list according to the secure transmission rate Includes management
D2D calculating a value excluding the security capacity according to the RSSI value of a third party not authorized under the D2D communication environment from the security capacity according to the RSSI value of the preliminary participating node under a D2D communication environment including a noise signal, as the security rate Blockchain system under communication environment.
상기 사용자 데이터를 수집하는 IoT(Internet of Things) 기기 및 상기 사용자 데이터를 상기 블록체인에 전송하는 모바일 기기 간의 인증을 진행하는 IoT 인증 모듈을 더 포함하는 D2D 통신 환경 하에서의 블록체인 시스템.According to claim 1,
A blockchain system under a D2D communication environment further comprising an IoT authentication module that performs authentication between an Internet of Things (IoT) device that collects the user data and a mobile device that transmits the user data to the blockchain.
상기 스마트 등록 서비스 리스트 관리부는,
상기 예비 참여 노드의 RSSI(Received Signal Strength Indicator) 값을 이용하여 상기 보안 전송률을 계산하는 D2D 통신 환경 하에서의 블록체인 시스템.According to claim 1,
The smart registration service list management unit,
A blockchain system under a D2D communication environment that calculates the secure transmission rate using the received signal strength indicator (RSSI) value of the preliminary participating node.
상기 블록체인 합의 모듈은,
상기 참여 노드에 의해 구축되는 블록체인; 및
상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 참여 노드의 무임승차(Free-riding) 여부를 판단할 수 있는 수치를 나타내는 참여도를 계산하고, 상기 참여도에 따라 상기 참여 노드를 상기 검증 노드로 선출하여 상기 합의 알고리즘을 진행하는 검증 노드 선출부를 포함하는 D2D 통신 환경 하에서의 블록체인 시스템.According to claim 1,
The blockchain consensus module,
A blockchain built by the participating nodes; And
Based on the resource usage and communication strength values of the participating nodes, the participation degree representing a number capable of determining whether the participating node is free-riding is calculated, and the participating node is verified according to the participation degree A blockchain system under a D2D communication environment including a verification node election unit that elects as a node and proceeds with the consensus algorithm.
상기 검증 노드 선출부는,
상기 참여 노드의 CPU 점유량 및 메모리 사용량에 따른 자원 사용량을 소정의 기준에 따라 정량화하여 레벨을 부여하고, 상기 참여 노드의 신호 세기 값을 소정의 기준에 따라 정량화하여 레벨을 부여하며, 상기 자원 사용량 레벨 값 및 상기 신호 세기 레벨 값을 이용하여 상기 참여 노드를 상기 검증 노드로 선출하는 D2D 통신 환경 하에서의 블록체인 시스템.The method of claim 6,
The verification node election unit,
The resource usage according to the CPU occupancy amount and the memory usage of the participating node is quantified according to a predetermined criterion to give a level, and the signal strength value of the participating node is quantified according to a predetermined criterion to give a level, and the resource usage level A blockchain system under a D2D communication environment that elects the participating node as the verification node using a value and the signal strength level value.
상기 검증 노드 선출부는,
상기 참여 노드의 자원 사용량 레벨 값이 1 이하가 되게 하는 참여도를 임계값으로 설정하고, 상기 참여 노드의 참여도가 임계값을 초과하는 경우 해당 참여 노드를 상기 검증 노드로 선출하는 D2D 통신 환경 하에서의 블록체인 시스템.The method of claim 7,
The verification node election unit,
In a D2D communication environment in which a participation level such that the resource usage level value of the participating node becomes 1 or less is set as a threshold value, and when the participation level of the participating node exceeds a threshold value, the participating node is elected as the verification node. Blockchain system.
상기 블록체인의 예비 참여 노드의 D2D(Device-to-Device) 통신 리소스 값에 기초하여 상기 예비 참여 노드를 상기 블록체인의 참여 노드로의 등록 여부를 결정하는 단계;
상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 사용자 데이터 저장에 대한 합의 알고리즘을 진행할 검증 노드를 선출하는 단계; 및
상기 검증 노드에 의한 상기 합의 알고리즘을 진행하여 상기 사용자 데이터를 상기 블록체인에 저장하는 단계를 포함하며,
상기 블록체인의 예비 참여 노드의 D2D(Device-to-Device) 통신 리소스 값에 기초하여 상기 예비 참여 노드를 상기 블록체인의 참여 노드로의 등록 여부를 결정하는 단계는,
상기 예비 참여 노드의 D2D 통신 리소스 값에 기초하여 상기 예비 참여 노드의 데이터 수신 가능성을 나타내는 보안 전송률을 계산하는 단계; 및
상기 보안 전송률에 따라 상기 예비 참여 노드를 스마트 등록 서비스 리스트에 등록하는 단계를 포함하며,
상기 예비 참여 노드의 D2D 통신 리소스 값에 기초하여 상기 예비 참여 노드의 데이터 수신 가능성을 나타내는 보안 전송률을 계산하는 단계는,
노이즈 신호를 포함하는 D2D 통신 환경 하에서 상기 예비 참여 노드의 RSSI 값에 따른 보안 용량에서 상기 D2D 통신 환경 하에서 허가되지 않은 제 3자의 RSSI 값에 따른 보안 용량을 제외한 값을 상기 보안 전송률로 계산하는 단계인, D2D 통신 환경 하에서의 블록체인 시스템 구축 방법.Collecting user data to be transmitted to the blockchain;
Determining whether to register the preliminary participating node as a participating node of the blockchain based on a D2D (Device-to-Device) communication resource value of the preliminary participating node of the blockchain;
Selecting a verification node to proceed with the consensus algorithm for storing the user data based on the resource usage and communication strength values of the participating nodes; And
And performing the consensus algorithm by the verification node to store the user data in the blockchain,
The step of determining whether to register the preliminary participating node as a participating node of the blockchain based on the D2D (Device-to-Device) communication resource value of the preliminary participating node of the blockchain,
Calculating a secure transmission rate indicating the possibility of receiving data of the spare participating node based on the D2D communication resource value of the spare participating node; And
And registering the preliminary participating node in the smart registration service list according to the secure transmission rate,
The step of calculating a secure transmission rate indicating the possibility of receiving data of the spare participating node based on the D2D communication resource value of the spare participating node includes:
Calculating a value excluding the security capacity according to the RSSI value of an unauthorized third party under the D2D communication environment from the security capacity according to the RSSI value of the preliminary participating node under a D2D communication environment including a noise signal as the security rate , How to build a blockchain system in a D2D communication environment.
상기 블록체인에 전송할 사용자 데이터를 수집하는 단계는,
상기 사용자 데이터를 수집하는 IoT(Internet of Things) 기기 및 상기 사용자 데이터를 상기 블록체인에 전송하는 모바일 기기 간의 인증을 진행하는 단계를 포함하는 D2D 통신 환경 하에서의 블록체인 시스템 구축 방법.The method of claim 9,
The step of collecting user data to be transmitted to the blockchain is
A method of building a blockchain system under a D2D communication environment, comprising the step of performing authentication between an Internet of Things (IoT) device that collects the user data and a mobile device that transmits the user data to the blockchain.
상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 사용자 데이터 저장에 대한 합의 알고리즘을 진행할 검증 노드를 선출하는 단계는,
상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 참여 노드의 무임승차(Free-riding) 여부를 판단할 수 있는 수치를 나타내는 참여도를 계산하는 단계; 및
상기 참여도에 따라 상기 참여 노드를 상기 검증 노드로 선출하는 단계를 포함하는 D2D 통신 환경 하에서의 블록체인 시스템 구축 방법.The method of claim 9,
The step of selecting the verification node to proceed with the consensus algorithm for storing the user data based on the resource usage and communication strength value of the participating node,
Calculating a participation degree indicating a value capable of determining whether the participating node is free-riding based on the resource usage and communication strength value of the participating node; And
A method of constructing a blockchain system under a D2D communication environment, comprising selecting the participating node as the verification node according to the participation degree.
상기 참여 노드의 자원 사용량 및 통신 세기 값에 기초하여 상기 참여 노드의 무임승차 여부를 판단할 수 있는 수치를 나타내는 참여도를 계산하는 단계는,
상기 참여 노드의 CPU 점유량 및 메모리 사용량에 따른 자원 사용량을 소정의 기준에 따라 정량화하여 레벨을 부여하고, 상기 참여 노드의 신호 세기 값을 소정의 기준에 따라 정량화하여 레벨을 부여하는 단계;
상기 참여 노드의 자원 사용량 레벨 값이 1 이하가 되게 하는 참여도를 임계값으로 설정하는 단계; 및
상기 자원 사용량 레벨 값 및 상기 신호 세기 레벨 값을 이용하여 상기 참여 노드를 상기 검증 노드로 선출하되, 상기 참여 노드의 참여도가 임계값을 초과하는 경우 해당 참여 노드를 상기 검증 노드로 선출하는 단계를 포함하는 D2D 통신 환경 하에서의 블록체인 시스템 구축 방법.The method of claim 13,
The step of calculating the participation degree indicating a value capable of determining whether or not the participating node is free based on the resource usage and communication strength value of the participating node is:
Quantifying a resource usage according to the CPU occupancy amount and memory usage of the participating node according to a predetermined criterion and assigning a level, and quantifying a signal strength value of the participating node according to a predetermined criterion to give a level;
Setting a participation degree such that the resource usage level value of the participating node becomes 1 or less as a threshold value; And
Selecting the participating node as the verification node using the resource usage level value and the signal strength level value, and when the participation degree of the participating node exceeds a threshold, selecting the participating node as the verification node A method of building a blockchain system under a D2D communication environment.
상기 검증 노드에 의한 상기 합의 알고리즘을 진행하여 상기 사용자 데이터를 상기 블록체인에 저장하는 단계는,
비잔틴 오류(Byzantine Fault) 합의 알고리즘에 따른 상기 합의 알고리즘을 진행하여 상기 사용자 데이터를 상기 블록체인에 저장하는 단계인 D2D 통신 환경 하에서의 블록체인 시스템 구축 방법. The method of claim 9,
The step of storing the user data in the blockchain by performing the consensus algorithm by the verification node,
A method of constructing a blockchain system under a D2D communication environment in which the user data is stored in the blockchain by performing the consensus algorithm according to a Byzantine Fault consensus algorithm.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180087609A KR102121658B1 (en) | 2018-07-27 | 2018-07-27 | Block chain system in d2d communication environments and constructing method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180087609A KR102121658B1 (en) | 2018-07-27 | 2018-07-27 | Block chain system in d2d communication environments and constructing method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200012375A KR20200012375A (en) | 2020-02-05 |
KR102121658B1 true KR102121658B1 (en) | 2020-06-10 |
Family
ID=69514610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180087609A KR102121658B1 (en) | 2018-07-27 | 2018-07-27 | Block chain system in d2d communication environments and constructing method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102121658B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102348449B1 (en) * | 2020-07-08 | 2022-01-10 | 한국전력공사 | Internet of things device and operating method thereof |
KR102418734B1 (en) * | 2020-12-02 | 2022-07-07 | 이화여자대학교 산학협력단 | Method for trading digital content using blockchain, recording medium and system for performing the method |
CN114285848B (en) * | 2021-12-20 | 2024-03-19 | 上海简苏网络科技有限公司 | Quantifiable methods, systems, electronic devices, and readable media for blockchain resources |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101585372B1 (en) * | 2015-02-27 | 2016-01-14 | 성균관대학교산학협력단 | Clustering method for cluster based d2d communication |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170137388A (en) * | 2016-06-03 | 2017-12-13 | (주) 블록체인오에스 | A method for ensuring integrity by using a blockchain technology |
KR101891125B1 (en) * | 2016-12-07 | 2018-08-24 | 데이터얼라이언스 주식회사 | Distributed Network Node Service Contribution Evaluation System and Method |
-
2018
- 2018-07-27 KR KR1020180087609A patent/KR102121658B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101585372B1 (en) * | 2015-02-27 | 2016-01-14 | 성균관대학교산학협력단 | Clustering method for cluster based d2d communication |
Also Published As
Publication number | Publication date |
---|---|
KR20200012375A (en) | 2020-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Edge computing-based privacy-preserving authentication framework and protocol for 5G-enabled vehicular networks | |
US20220245724A1 (en) | Securing distributed electronic wallet shares | |
US11386420B2 (en) | Contextual authentication of an electronic wallet | |
Kang et al. | Privacy-preserved pseudonym scheme for fog computing supported internet of vehicles | |
US11229023B2 (en) | Secure communication in network access points | |
Chen et al. | Stochastic blockchain for IoT data integrity | |
CN107770182B (en) | Data storage method of home gateway and home gateway | |
Huang et al. | Recent advances and challenges in security and privacy for V2X communications | |
KR101256887B1 (en) | Ticket-based configuration parameters validation | |
US20190034936A1 (en) | Approving Transactions from Electronic Wallet Shares | |
US20190034917A1 (en) | Tracking an Electronic Wallet Using Radio Frequency Identification (RFID) | |
US20190034919A1 (en) | Securing Electronic Wallet Transactions | |
CN108632056B (en) | Intelligent equipment network configuration method and system | |
KR102121658B1 (en) | Block chain system in d2d communication environments and constructing method thereof | |
KR20120055683A (en) | Methods and apparatus for deriving, communicating and/or verifying ownership of expressions | |
Limbasiya et al. | Secure message confirmation scheme based on batch verification in vehicular cloud computing | |
KR20210128469A (en) | Distribution of software updates to vehicles via V2V communication and verification by community of vehicles | |
CN107396350B (en) | SDN-5G network architecture-based security protection method between SDN components | |
CN111246481B (en) | Micro base station authentication method and terminal | |
JP6279821B2 (en) | Authenticating messages in wireless communication | |
CN111182545B (en) | Micro base station authentication method and terminal | |
CN111355684B (en) | Internet of things data transmission method, device and system, electronic equipment and medium | |
Muhammad et al. | 5G-based V2V broadcast communications: A security perspective | |
Limbasiya et al. | VCom: Secure and efficient vehicle-to-vehicle message communication protocol | |
KR102377045B1 (en) | SYSTEMS AND METHODS FOR AUTHENTICATING IoT DEVICE THROUGH CLOUD USING HARDWARE SECURITY MODULE |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |