KR20230055984A - Data transmission and access control method, recording medium and data transmission and access control system for performing the same - Google Patents
Data transmission and access control method, recording medium and data transmission and access control system for performing the same Download PDFInfo
- Publication number
- KR20230055984A KR20230055984A KR1020220134050A KR20220134050A KR20230055984A KR 20230055984 A KR20230055984 A KR 20230055984A KR 1020220134050 A KR1020220134050 A KR 1020220134050A KR 20220134050 A KR20220134050 A KR 20220134050A KR 20230055984 A KR20230055984 A KR 20230055984A
- Authority
- KR
- South Korea
- Prior art keywords
- node
- data
- data transmission
- access control
- transmitting
- Prior art date
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 125
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000004590 computer program Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008676 import Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
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/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
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/08—Annexed information, e.g. attachments
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- 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/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/102—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measure for e-commerce
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
본 발명은 로그인과 관련된 복잡한 프로그램 설치 및 인증 과정 없이 메신저를 통해 간편하고 안전하게 데이터를 전송할 수 있도록 하는 데이터 전송 및 접근 제어 방법 및 이를 수행하기 위한 기록 매체 및 데이터 전송 및 접근 제어 시스템에 관한 것이다.The present invention relates to a data transmission and access control method that enables simple and safe data transmission through a messenger without complicated program installation and authentication related to log-in, and a recording medium and data transmission and access control system for performing the same.
일반적으로 단말에 저장된 데이터를 다른 단말에서 접근하여 제어하기 위해서는 메일이나 드롭박스, 클라우드 저장소 등을 통해 단말에서 다른 단말로 전송해야 한다. In general, in order to access and control data stored in a terminal from another terminal, it must be transmitted from the terminal to another terminal through mail, dropbox, cloud storage, or the like.
이때 다른 단말에서 데이터를 제어하기 위해서는 로그인 과정을 필요로 하지만, 빈번한 로그인 과정은 번거롭다는 문제가 있는 것은 물론, 로그인 과정에서 기록되는 키로그는 개인정보 유출의 위험성을 높이는 요소이다. At this time, a login process is required to control data from another terminal, but frequent login process is cumbersome, and the key log recorded during the login process is a factor that increases the risk of leakage of personal information.
그리고 클라우드 저장소의 경우에는, 중앙 집중식 구조로 중앙 서버가 제대로 동작하지 못하도록 하는 공격에 취약하며, 정보의 위·변조 가능성과 정보 탈취로 인한 재전송 공격의 가능성이 항상 존재하여 혼란을 야기할 수 있다. And in the case of cloud storage, it is vulnerable to attacks that prevent the central server from operating properly due to its centralized structure, and the possibility of forgery/falsification of information and retransmission attack due to information theft is always present, which can cause confusion.
따라서 데이터를 안전하고 신속하게 전송하는 것은 물론, 복잡한 로그인 과정을 필요로 하지 않는 방안이 필요하다. Therefore, there is a need for a method that not only transmits data safely and quickly, but also does not require a complicated login process.
본 발명은 상기와 같은 문제를 해결하기 위해 안출된 것으로, 본 발명의 목적은 복잡한 로그인 과정을 거치지 않고, 간단한 본인 인증 방식을 사용하여 개인 정보를 보호하는 것은 물론, 데이터를 안전하고 신속하게 전송할 수 있는 데이터 전송 및 접근 제어 방법 및 이를 수행하기 위한 기록 매체 및 데이터 전송 및 접근 제어 시스템을 제공하는 것이다.The present invention has been made to solve the above problems, and an object of the present invention is to protect personal information by using a simple authentication method without going through a complicated login process, as well as to transmit data safely and quickly. It is to provide a data transmission and access control method, a recording medium and a data transmission and access control system for performing the same.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 블록체인 네트워크에 기반하여 데이터 전송 서비스를 제공하는 데이터 전송 및 접근 제어 시스템은, 공유 대상 데이터를 송신하는 송신 노드; 상기 공유 대상 데이터를 수신하는 수신 노드; 및 상기 수신 노드로부터 상기 공유 대상 데이터에 대한 키워드를 수신하고, 상기 키워드에 대응되는 상기 공유 대상 데이터를 제공하는 상기 송신 노드를 확인하며, 상기 수신 노드와 상기 송신 노드 간의 P2P 세션을 확립시키는 릴레이 노드를 포함하고, 상기 수신 노드, 송신 노드 및 릴레이 노드는, 상기 블록체인 네트워크를 구성하는 노드이다. A data transmission and access control system for providing a data transmission service based on a blockchain network according to an embodiment of the present invention for achieving the above object includes a transmission node for transmitting data to be shared; a receiving node receiving the sharing target data; and a relay node that receives a keyword for the sharing target data from the receiving node, checks the transmitting node that provides the sharing target data corresponding to the keyword, and establishes a P2P session between the receiving node and the transmitting node. Including, the receiving node, the transmitting node and the relay node are nodes constituting the blockchain network.
그리고 상기 송신 노드는, 상기 공유 대상 데이터와 관련된 파일 컨트랙트와 상기 송신 노드와 관련된 유저 컨트랙트를 포함하는 스마트 컨트랙트를 생성하고, 상기 파일 컨트랙트는, 상기 공유 대상 데이터의 메타데이터 및 파일 송수신 로그 정보를 포함하고, 상기 유저 컨트랙트는, 상기 송신 노드의 피어 아이디(Peer ID), 서비스 아이디 및 상기 블록체인 네트워크에 로그인하기 위한 암호화된 패스워드 정보를 포함할 수 있다.The transmission node creates a smart contract including a file contract related to the data to be shared and a user contract related to the transmission node, and the file contract includes metadata and file transmission/reception log information of the data to be shared. And, the user contract may include a peer ID of the transmitting node, a service ID, and encrypted password information for logging in to the blockchain network.
또한 상기 릴레이 노드는, 상기 키워드에 대응하는 스마트 컨트랙트를 검색하고, 상기 검색된 스마트 컨트랙트의 서비스 아이디를 상기 수신 노드 측에 전송할 수 있다. In addition, the relay node may search for a smart contract corresponding to the keyword and transmit a service ID of the searched smart contract to the receiving node.
그리고 상기 수신 노드는, 상기 검색된 스마트 컨트랙트의 서비스 아이디가 포함된 접속창을 통해 상기 데이터 전송 서비스에 익명 로그인하고, 상기 릴레이 노드는, 상기 송신 노드와 수신 노드의 피어 아이디를 확인하여 상기 송신 노드와 수신 노드 간의 상기 P2P 세션을 확립시킬 수 있다. The receiving node logs in anonymously to the data transmission service through a connection window including the service ID of the searched smart contract, and the relay node checks the peer IDs of the sending node and the receiving node to communicate with the sending node. The P2P session between receiving nodes may be established.
또한 상기 송신 노드는, 상기 P2P 세션이 확립된 수신 노드에게 대화창을 통해 상기 공유 대상 데이터를 전송하고, 상기 스마트 컨트랙트의 파일 송수신 로그 정보를 업데이트할 수 있다. In addition, the transmitting node may transmit the data to be shared through a chat window to the receiving node where the P2P session is established, and update file transmission/reception log information of the smart contract.
그리고 상기 릴레이 노드가 상기 P2P 세션을 확립시키면, 상기 P2P 세션의 확립을 공지하기 위한 알림 정보를 생성하여 상기 송신 노드 및 수신 노드 중 적어도 하나의 노드로 상기 알림 정보를 전송하는 공지 노드를 더 포함할 수 있다. and a notification node generating notification information for notifying establishment of the P2P session and transmitting the notification information to at least one of the transmission node and the reception node when the relay node establishes the P2P session. can
한편 상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 블록체인 네트워크에 기반하여 데이터 전송 서비스를 제공하는 데이터 전송 및 접근 제어 시스템에서의 데이터 전송 및 접근 제어 방법은, 상기 데이터 전송 및 접근 제어 시스템은, 상기 블록체인 네트워크를 구성하는 수신 노드, 송신 노드 및 릴레이 노드를 포함하고, 상기 릴레이 노드가 상기 수신 노드로부터 공유 대상 데이터에 대한 키워드를 수신하는 단계; 상기 릴레이 노드가 상기 키워드에 대응되는 상기 공유 대상 데이터를 제공하는 송신 노드를 확인하는 단계; 상기 릴레이 노드가 상기 수신 노드와 상기 송신 노드 간의 P2P 세션을 확립시키는 단계; 상기 송신 노드가 상기 공유 대상 데이터를 송신하는 단계; 및 상기 수신 노드가 상기 공유대상 데이터를 수신하는 단계를 포함한다. On the other hand, a data transmission and access control method in a data transmission and access control system that provides a data transmission service based on a blockchain network according to an embodiment of the present invention for achieving the above object is the data transmission and access control system includes a receiving node, a transmitting node, and a relay node constituting the blockchain network, and the relay node receives a keyword for sharing target data from the receiving node; checking, by the relay node, a transmission node providing the sharing target data corresponding to the keyword; establishing, by the relay node, a P2P session between the receiving node and the transmitting node; transmitting, by the transmission node, the sharing target data; and receiving, by the reception node, the data to be shared.
그리고 상기 송신 노드가 상기 공유 대상 데이터와 관련된 파일 컨트랙트와 상기 송신 노드와 관련된 유저 컨트랙트를 포함하는 스마트 컨트랙트를 생성하는 단계를 더 포함하고, 상기 파일 컨트랙트는, 상기 공유 대상 데이터의 메타데이터 및 파일 송수신 로그 정보를 포함하고, 상기 유저 컨트랙트는, 상기 송신 노드의 피어 아이디(Peer ID), 서비스 아이디 및 상기 블록체인 네트워크에 로그인하기 위한 암호화된 패스워드 정보를 포함할 수 있다. and generating, by the sending node, a smart contract including a file contract related to the subject data to be shared and a user contract related to the sending node, wherein the file contract transmits and receives metadata and files of the subject data to be shared. log information, and the user contract may include a peer ID of the sending node, a service ID, and encrypted password information for logging in to the blockchain network.
또한 상기 송신 노드를 확인하는 단계는, 상기 릴레이 노드가 상기 키워드에 대응하는 상기 스마트 컨트랙트를 검색하는 단계; 상기 릴레이 노드가 상기 검색된 스마트 컨트랙트의 서비스 아이디를 상기 수신 노드 측에 전송하는 단계를 포함할 수 있다. In addition, the step of checking the transmission node may include: the relay node searching for the smart contract corresponding to the keyword; The relay node may transmit the service ID of the searched smart contract to the receiving node.
그리고 상기 수신 노드가 상기 검색된 스마트 컨트랙트의 서비스 아이디가 포함된 접속창을 통해 상기 데이터 전송 서비스에 익명 로그인하는 단계를 더 포함하고, 상기 P2P 세션을 확립시키는 단계에서는, 상기 송신 노드와 수신 노드의 피어 아이디를 확인하여 상기 송신 노드와 수신 노드 간의 상기 P2P 세션을 확립시킬 수 있다. The receiving node further includes anonymously logging in to the data transmission service through a connection window including the service ID of the searched smart contract, and in the step of establishing the P2P session, the peers of the transmitting node and the receiving node The P2P session between the sending node and the receiving node may be established by checking the ID.
또한 상기 송신하는 단계에서는, 상기 송신 노드가 상기 P2P 세션이 확립된 수신 노드에게 대화창을 통해 상기 공유 대상 데이터를 전송하고, 상기 스마트 컨트랙트의 파일 송수신 로그 정보를 업데이트할 수 있다. In addition, in the transmitting step, the sending node may transmit the data to be shared to the receiving node with which the P2P session is established through a chat window, and update file transmission/reception log information of the smart contract.
그리고 상기 데이터 전송 및 접근 제어 시스템은, 상기 블록체인 네트워크를 구성하는 공지 노드를 더 포함하고, 공지 노드가 상기 P2P 세션을 확립시키는 단계 이후에, 상기 P2P 세션의 확립을 공지하기 위한 알림 정보를 생성하여 상기 송신 노드 및 수신 노드 중 적어도 하나의 노드로 상기 알림 정보를 전송하는 단계를 더 포함할 수 있다. And the data transmission and access control system further includes a notification node constituting the blockchain network, and after the step of establishing the P2P session by the notification node, notification information for notifying establishment of the P2P session is generated. and transmitting the notification information to at least one of the transmission node and the reception node.
한편 상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 기록 매체는, 데이터 전송 및 접근 제어 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체이다. On the other hand, a recording medium according to an embodiment of the present invention for achieving the above object is a computer-readable recording medium on which a computer program for performing a data transmission and access control method is recorded.
상술한 본 발명의 일측면에 따르면, 데이터 전송 및 접근 제어 방법 및 이를 수행하기 위한 기록 매체 및 데이터 전송 및 접근 제어 시스템을 제공함으로써, 복잡한 로그인 과정을 거치지 않고, 간단한 본인 인증 방식을 사용하여 개인 정보를 보호하는 것은 물론, 데이터를 안전하고 신속하게 전송할 수 있다.According to one aspect of the present invention described above, by providing a data transmission and access control method, a recording medium and a data transmission and access control system for performing the same, without going through a complicated log-in process, using a simple authentication method to personal information and data can be transmitted safely and quickly.
도 1은 본 발명의 일 실시예에 따른 데이터 전송 및 접근 제어 시스템의 구성을 설명하기 위한 도면,
도 2는 본 발명의 일 실시예에 따른 데이터 전송 및 접근 제어 시스템에서 제공하는 데이터 전송 서비스를 설명하기 위한 도면,
도 3은 본 발명의 일 실시예에 따른 데이터 전송 및 접근 제어 시스템에서 저장되는 정보를 설명하기 위한 도면,
도 4는 본 발명의 일 실시예에 따른 데이터 전송 및 접근 제어 시스템에서 대화창이 생성되었을 때 알림이 전송되는 과정을 설명하기 위한 도면,
도 5는 본 발명의 일 실시예에 따른 데이터 전송 및 접근 제어 시스템에서의 데이터 전송 및 접근 제어 방법을 설명하기 위한 흐름도, 그리고
도 6은 도 5의 데이터 전송 및 접근 제어 방법을 보다 구체적으로 설명하기 위한 흐름도이다. 1 is a diagram for explaining the configuration of a data transmission and access control system according to an embodiment of the present invention;
2 is a diagram for explaining a data transmission service provided by a data transmission and access control system according to an embodiment of the present invention;
3 is a diagram for explaining information stored in a data transmission and access control system according to an embodiment of the present invention;
4 is a diagram for explaining a process of transmitting a notification when a chat window is created in a data transmission and access control system according to an embodiment of the present invention;
5 is a flowchart for explaining a data transmission and access control method in a data transmission and access control system according to an embodiment of the present invention, and
6 is a flowchart for explaining the data transmission and access control method of FIG. 5 in more detail.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예와 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The detailed description of the present invention which follows refers to the accompanying drawings which illustrate, by way of illustration, specific embodiments in which the present invention may be practiced. These embodiments are described in sufficient detail to enable one skilled in the art to practice the present invention. It should be understood that the various embodiments of the present invention are different from each other but are not necessarily mutually exclusive. For example, specific shapes, structures, and characteristics described herein may be implemented in another embodiment without departing from the spirit and scope of the invention in connection with one embodiment. Additionally, it should be understood that the location or arrangement of individual components within each disclosed embodiment may be changed without departing from the spirit and scope of the invention. Accordingly, the detailed description set forth below is not to be taken in a limiting sense, and the scope of the present invention, if properly described, is limited only by the appended claims, along with all equivalents as claimed by those claims. Like reference numbers in the drawings indicate the same or similar function throughout the various aspects.
본 발명에 따른 구성요소들은 물리적인 구분이 아니라 기능적인 구분에 의해서 정의되는 구성요소들로써 각각이 수행하는 기능들에 의해서 정의될 수 있다. 각각의 구성요소들은 하드웨어 또는 각각의 기능을 수행하는 프로그램 코드 및 프로세싱 유닛으로 구현될 수 있을 것이며, 두 개 이상의 구성요소의 기능이 하나의 구성요소에 포함되어 구현될 수도 있을 것이다. 따라서 이하의 실시예에서 구성요소에 부여되는 명칭은 각각의 구성요소를 물리적으로 구분하기 위한 것이 아니라 각각의 구성요소가 수행되는 대표적인 기능을 암시하기 위해서 부여된 것이며, 구성요소의 명칭에 의해서 본 발명의 기술적 사상이 한정되지 않는 것임에 유의하여야 한다.Components according to the present invention are components defined by functional division rather than physical division, and may be defined by the functions each performs. Each of the components may be implemented as hardware or program codes and processing units that perform respective functions, and the functions of two or more components may be implemented by being included in one component. Therefore, the names given to the components in the following embodiments are not to physically distinguish each component, but to imply the representative function performed by each component, and the names of the components indicate the present invention. It should be noted that the technical idea of is not limited.
이하에서는 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the drawings.
도 1은 본 발명의 일 실시예에 따른 데이터 전송 및 접근 제어 시스템(10)의 구성을 설명하기 위한 도면, 도 2는 본 발명의 일 실시예에 따른 데이터 전송 및 접근 제어 시스템(10)에서 제공하는 데이터 전송 서비스를 설명하기 위한 도면, 도 3은 본 발명의 일 실시예에 따른 데이터 전송 및 접근 제어 시스템(10)에서 저장되는 정보를 설명하기 위한 도면, 그리고 도 4는 본 발명의 일 실시예에 따른 데이터 전송 및 접근 제어 시스템(10)에서 대화창이 생성되었을 때 알림이 전송되는 과정을 설명하기 위한 도면이다. 1 is a diagram for explaining the configuration of a data transmission and
본 실시예에 따른 데이터 전송 및 접근 제어 시스템(10, 이하 시스템)은 키로그를 기록하는 로그인 과정 없이 익명 로그인을 통해 개인정보를 보호함과 동시에 노드들 간에 필요한 데이터를 안전하고 신속하게 송수신하기 위해 마련된다. The data transmission and access control system (10, hereinafter referred to as the system) according to this embodiment is prepared to safely and quickly transmit and receive necessary data between nodes while protecting personal information through anonymous login without a login process of recording a key log. do.
그리고 본 실시예에 따른 시스템(10)은 블록체인 네트워크(Blockchain Network)(BN)에 기반하여 데이터 전송 서비스를 제공할 수 있다. In addition, the
이를 위해 시스템(10)은 송신 노드(100), 수신 노드(200) 및 릴레이 노드(300)를 포함하여 마련될 수 있다. 그리고 송신 노드(100), 수신 노드(200) 및 릴레이 노드(300)는 데이터 전송 및 접근 제어 방법을 수행하기 위한 소프트웨어(어플리케이션)가(이) 설치되어 실행될 수 있다.To this end, the
또한 시스템(10)을 구성하는 송신 노드(100), 수신 노드(200) 및 릴레이 노드(300)는 블록체인 네트워크(BN)를 구성할 수 있다. 블록체인 네트워크(BN)는 P2P(peer to peer) 네트워크를 통해서 관리되는 분산데이터베이스의 한 형태이다.In addition, the
블록체인은 거래 정보를 담은 장부를 중앙 서버 한 곳에 저장하는 것이 아니라 연결된 여러 컴퓨터에 저장 및 보관하는 블록체인 기술을 기반으로 스마트 컨트랙트(Smart Contract), 전자투표 등 다양한 어플리케이션을 투명하게 운영할 수 있게 확장성을 제공할 수 있다.Blockchain enables transparent operation of various applications such as smart contracts and electronic voting based on blockchain technology that stores and stores ledgers containing transaction information in multiple connected computers rather than in one central server. extensibility can be provided.
그리고 블록체인을 구성하는 노드들은 동일한 사본을 저장하며, 한 번 기록되고 나면 데이터의 변조 및 위조가 불가능하다는 특징이 있어 정보 신뢰성, 투명성, 추적성 등의 이점이 있다. 본 발명의 시스템(10)에서의 블록체인 네트워크(BN)는 분산 어플리케이션 기능을 구현하기 위한 분산 컴퓨팅 플랫폼으로 마련될 수 있다. In addition, the nodes constituting the blockchain store identical copies, and once recorded, data cannot be tampered with or forged, so there are advantages such as information reliability, transparency, and traceability. The blockchain network (BN) in the
송신 노드(100), 수신 노드(200) 및 릴레이 노드(300)는 사용자가 소지한 단말이다. 이러한 단말의 예로는 데스크탑, 태블릿, 스마트폰, 스마트 워치, 노트북 등일 수 있으며, 디바이스(device), 기구(apparatus), 단말(terminal), UE(user equipment), MS(mobile station), 무선기기(wireless device), 휴대기기(handheld device) 등 다른 용어로 불릴 수도 있다.The transmitting
그리고 시스템(10)에서 제공하는 데이터 전송 서비스는 익명 로그인 및 메신저 기반의 데이터 전송 서비스일 수 있다. Also, the data transmission service provided by the
송신 노드(100)는 공유 대상 데이터가 로컬 저장소에 저장된 노드이거나 공유 대상 데이터가 저장된 클라우드와 연동된 노드일 수 있다. The
또한 송신 노드(100)의 로컬 저장소에는 파일 데이터(File Data) 및 로그인 데이터(Login Data)가 저장될 수 있다. In addition, file data and login data may be stored in the local storage of the
상술한 바와 같이 데이터 전송 서비스인 메신저 서비스는 앱 또는 웹 형태로 제공될 수 있는데, 파일 데이터(File data) 및 로그인 데이터(Login data)는 메신저 서비스가 앱 형태인 경우에는 송신 노드(100)의 단말 내부 저장소에 저장될 수 있다. As described above, the messenger service, which is a data transmission service, may be provided in the form of an app or web. File data and login data are the terminal of the
만약 메신저 서비스가 웹 형태인 경우에는 로컬 웹 스토리지에 저장될 수 있다. If the messenger service is in the form of a web, it may be stored in a local web storage.
파일 데이터(File Data)에는 파일 이름(File name), 파일 크기(File size), 파일 유형(File type) 및 파일과 관련된 기타 정보(Etc info)가 포함될 수 있다. The file data may include a file name, file size, file type, and other information related to the file (etc. info).
로그인 데이터(Login Data)에는 예컨대 클라우드 서비스와 연동하여 생성된 세션(Session) 또는 토큰(Token), 서비스 아이디(Service ID) 및 암호화된 비밀번호(Encrypted Password) 등이 저장될 수 있다. In the login data, for example, a session or token generated in conjunction with a cloud service, a service ID, and an encrypted password may be stored.
이러한 송신 노드(100)는 공유 대상 데이터와 관련된 스마트 컨트랙트(SC)를 생성할 수 있다. Such a transmitting
스마트 컨트랙트(SC)는 공유 대상 데이터와 관련된 파일 컨트랙트(File Contract)(FC)와 송신 노드(100)와 관련된 유저 컨트랙트(User Contract)(UC)를 포함할 수 있다. The smart contract (SC) may include a file contract (FC) related to data to be shared and a user contract (UC) related to the
구체적으로, 파일 컨트랙트(FC)는, 도 3에 도시된 바와 같이 공유 대상 데이터의 메타데이터(File Info) 및 파일 송수신 로그 정보(File Send/Receive Info)를 포함할 수 있다. Specifically, as shown in FIG. 3, the file contract (FC) may include metadata (File Info) and file transmission/reception log information (File Send/Receive Info) of data to be shared.
유저 컨트랙트(UC)는, 송신 노드(100)의 피어 아이디(Peer ID), 서비스 아이디(Service ID) 및 블록체인 네트워크에 로그인하기 위한 암호화된 패스워드 정보(Encrypted Password)를 포함할 수 있다. The user contract (UC) may include a peer ID of the
또한 유저 컨트랙트(UC)에 저장되는 송신 노드(100)의 피어 아이디(Peer ID), 서비스 아이디(Service ID) 및 블록체인 네트워크(BN)에 로그인하기 위한 암호화된 패스워드 정보(Encrypted Password)는 서로 매칭된 상태로 저장될 수 있다. In addition, the peer ID, service ID, and encrypted password information for logging in to the blockchain network (BN) of the sending
여기서 피어 아이디(Peer ID)는 블록체인 네트워크(BN)의 계정(account) 정보에 대응되는 아이디로써 블록체인 네트워크(BN) 상의 노드를 식별하기 위한 정보일 수 있다. 그리고 피어 아이디(Peer ID)는 도 2 내지 도 4에 도시된 바와 같이 16 진수로 마련될 수 있다. Here, the peer ID is an ID corresponding to account information of the blockchain network (BN) and may be information for identifying a node on the blockchain network (BN). Also, the peer ID may be prepared in hexadecimal as shown in FIGS. 2 to 4 .
그리고 서비스 아이디(Service ID)는 데이터 전송 서비스를 제공하기 위한 아이디로써, 메신저에 따라 달라질 수 있으며 서비스 내 노드별로 제공되되 서로 중복되지 않는 아이디일 수 있다. Also, a service ID is an ID for providing a data transmission service, and may vary depending on a messenger, and may be IDs provided for each node within a service but not overlapping with each other.
송신 노드(100)는 릴레이 노드(300)를 통해 P2P 세션이 확립되면, 대화창을 통해 공유 대상 데이터를 수신 노드(200)측으로 송신할 수 있다.When the P2P session is established through the
즉 송신 노드(100)는, P2P 세션이 확립된 수신 노드(200)에게 대화창을 통해 공유 대상 데이터를 전송할 수 있다. That is, the transmitting
또한 송신 노드(100)가 대화창을 통해 공유 대상 데이터를 송신하는 경우 송신 노드(100)의 로컬 저장소에 저장된 공유 대상 데이터는 물론, 송신 노드(100)가 메신저 서비스와 클라우드 저장소를 제공하는 클라우드 서비스의 계정을 연동시키면, 송신 노드(100)는 해당 클라우드 저장소에 접근하여 공유 대상 파일을 업로드하거나 가져올 수도 있다. In addition, when the transmitting
그리고 송신 노드(100)는 스마트 컨트랙트(SC)의 파일 송수신 로그 정보(File send/Receive Info)를 업데이트할 수 있다. In addition, the
또한 송신 노드(100)는 공유 대상 파일의 제공을 요청받는 경우, 후술할 수신 노드(200)의 익명 로그인 방식과 동일한 방식으로 데이터 전송 서비스에 익명 로그인할 수 있다. In addition, when receiving a request for providing a file to be shared, the
한편 수신 노드(200)는 공유 대상 데이터를 수신하는 노드로써, 수신하고자 하는 공유 대상 데이터에 대한 키워드를 릴레이 노드(300)측으로 전달할 수 있다. Meanwhile, the
그리고 수신 노드(200)는, 검색된 스마트 컨트랙트(SC)의 서비스 아이디가 포함된 접속창을 통해 데이터 전송 서비스에 익명 로그인할 수 있다. In addition, the receiving
익명 로그인을 위한 접속창에는 도 2에서와 같이 QR 코드 또는 송신 노드(100)의 서비스 아이디(Service ID)가 제공될 수 있다. As shown in FIG. 2 , a QR code or a service ID of the
따라서 수신 노드(200)는 QR 코드를 스캔하거나, 웹 또는 앱 형태로 제공된 메신저에 공유 대상 데이터를 소유한 송신 노드(100)의 서비스 아이디(Service ID)를 입력할 수 있다. Accordingly, the receiving
이후 수신 노드(200)는 송신 노드(100)의 피어 아이디(Peer ID)를 반환받고, 릴레이 노드(300)를 통해 P2P 세션이 확립되면 송신 노드(100)로부터 공유 대상 데이터를 수신할 수 있는 대화창이 생성될 수 있다. Thereafter, the receiving
그리고 수신 노드(200)는 대화창을 통해 공유 대상 데이터의 다운로드 링크 또는 데이터를 수신받아 수신 노드(200)의 단말에 저장할 수 있다. In addition, the receiving
한편 릴레이 노드(300)는 수신 노드(200)로부터 공유 대상 데이터에 대한 키워드를 수신할 수 있다.Meanwhile, the
그리고 릴레이 노드(300)는 키워드에 대응되는 공유 대상 데이터를 제공하는 송신 노드(100)를 블록체인 네트워크(BN) 상에서 확인할 수 있다. Also, the
이를 위해 릴레이 노드(300)는 블록체인 네트워크(BN)에 저장된 스마트 컨트랙트(SC) 중에서 키워드에 대응하는 스마트 컨트랙트(SC)를 검색할 수 있다. To this end, the
그리고 릴레이 노드(300)는 검색된 스마트 컨트랙트(SC)의 서비스 아이디를 수신 노드(200) 측으로 전송할 수 있다. 따라서 릴레이 노드(300)가 전송하는 서비스 아이디(Service ID)를 포함하는 접속창을 웹 또는 앱을 통해 수신 노드(200)는 제공받고, 접속창을 통해 익명 로그인이 가능할 수 있다. In addition, the
그리고 릴레이 노드(300)는 키워드를 입력한 수신 노드(200)와 공유 대상 데이터를 제공하는 송신 노드(100) 간의 P2P 세션을 확립시킬 수 있다. Also, the
구체적으로 릴레이 노드(300)는 송신 노드(100)와 수신 노드(200)의 피어 아이디를 확인하여 송신 노드(100)와 수신 노드(200) 간의 P2P 세션을 확립시킬 수 있다. In detail, the
릴레이 노드(300)를 통해 P2P 세션이 확립되면 송신 노드(100)와 수신 노드(200) 간에 공유 대상 데이터를 송수신할 수 있는 대화창이 생성되며, 송신 노드(100)와 수신 노드(200)는 생성된 대화창 내에서 공유 대상 데이터를 공유할 수 있다. When a P2P session is established through the
이러한 릴레이 노드(300)는 블록체인 네트워크(BN) 내의 노드 중에서 임의로 선택된 노드일 수 있다. This
그리고 릴레이 노드(300)는 송신 노드(100) 및 수신 노드(200)인 각 사용자의 피어 아이디(Peer ID) 및 IP 주소를 매칭시켜 저장할 수 있다. In addition, the
그리고 송신 노드(100)와 수신 노드(200) 간에 직접 데이터를 전송할 수 없을 경우, 릴레이 노드(300)는 송신 노드(100)로부터 수신 노드(200)로의 공유 대상 데이터 전송을 요청받을 수 있다. 그리고 릴레이 노드(300)가 송신 노드(100)로부터 수신한 공유 대상 데이터를 릴레이하여 수신 노드(200)로 전송할 수도 있다. In addition, when data cannot be directly transmitted between the
익명 로그인을 통해 생성된 대화창에서의 데이터 보존 유무는 송신 노드(100) 또는 수신 노드(200)의 선택사항일 수 있으며, 데이터 전송은 생성된 대화창에 참여하는 모든 노드에서 가능할 수 있다. Whether to preserve data in the chat window created through anonymous login may be an option of the transmitting
따라서 본 발명의 일 실시예에 따른 시스템(10)은 복잡한 로그인 과정을 거치지 않고도, 간단한 본인 인증 방식을 사용하여 개인 정보를 보호하는 것은 물론, 데이터를 안전하고 신속하게 전송할 수 있다.Therefore, the
본 발명의 일 실시예에 따른 시스템(10)은 공지 노드(400)를 더 포함하여 마련될 수 있다. The
공지 노드(400)는 릴레이 노드(300)가 P2P 세션을 확립시키면, P2P 세션의 확립을 공지하기 위한 알림 정보를 생성할 수 있다. When the
그리고 공지 노드(400)는 송신 노드(100) 및 수신 노드(200) 중 적어도 하나의 노드로 알림 정보를 전송할 수 있다. Also, the
도 4는 릴레이 노드(300)를 통해 P2P 세션이 확립되면 공지 노드(400)가 블록체인 네트워크(BN)와 이벤트 핸들러(event handler) 엔진을 통해 알림 정보를 전송하는 과정의 일례이다.4 is an example of a process in which the
구체적으로 도 4는 수신 노드(200)인 B가 생성한 대화창에 익명으로 송신 노드(100)인 A가 입장한 경우를 예시적 사항으로 도시한 도면으로, 대화창에 입장한 송신 노드(100) A가 이벤트 로그를 발생시키면 공지 노드(400)는 이벤트 발생을 감지할 수 있다. Specifically, FIG. 4 is a diagram showing, as an example, a case where A, the sending
도 4에서는 수신 노드(200)가 생성한 대화창에 송신 노드(100)가 입장하는 경우 송신 노드(100)에서 이벤트 로그를 생성하는 것으로 설명하였으나, 이는 설명의 편의를 위한 예시적 사항에 불과할 뿐 꼭 이에 한정되는 것은 아니다. In FIG. 4, it has been described that the sending
예컨대 어느 하나의 수신 노드(200, 예를 들어 B 노드)가 생성한 대화창에 송신 노드(100, 예를 들어 A 노드)가 입장한 이후 적어도 하나 이상의 다른 수신 노드(200, 예를 들어 C 노드)가 대화창에 추가 입장하여 그룹을 형성한 경우, 추가 입장한 수신 노드(200)인 C 노드가 이벤트 로그를 생성할 수도 있다. 이 경우 공지 노드(400)는 대화창에 입장해있는 송신 노드(100)인 A 노드 및 수신 노드(200)인 B 노드 모두에게 알림 정보를 전송할 수 있다. For example, after the sending node (100, for example node A) enters a chat window created by any one receiving node (200, for example node B), at least one other receiving node (200, for example node C) In the case where a group is formed by additionally entering the chat window, node C, which is the additionally entering receiving
그리고 본 발명의 시스템(10)에서 블록체인 네트워크(BN)를 구성하는 모든 노드들은 이벤트 핸들러 엔진을 구동할 수 있다. And all nodes constituting the blockchain network (BN) in the
예를 들어 파일을 송신하는 이벤트가 발생한 경우, 파일 송신 이벤트가 블록체인(BN)에 저장되면 블록체인(BN) 내에 포함된 모든 노드는 자신의 이벤트 핸들러를 통해 해당 이벤트를 감지할 수 있다. 따라서 모든 노드 중 공지 노드(400)가 해당 이벤트를 감지하게 되면, 이를 알림 정보로써 전송할 수 있게 되는 것이다. For example, when an event of transmitting a file occurs and the file transmission event is stored in the blockchain BN, all nodes included in the blockchain BN can detect the event through their own event handlers. Therefore, when the
그리고 이벤트 핸들러(event handler) 엔진은 블록체인 네트워크(BN) 내에서 공지 노드(400)를 선정하고, 선정된 노드가 로컬로 알림을 서비스하도록 하는 것이다. And the event handler engine selects the
이러한 공지 노드(400)는 릴레이 노드(300)가 공지 노드(400)로 선정되거나 블록체인 네트워크(BN)를 구성하는 노드들 중 릴레이 노드(300)와는 다른 노드가 공지 노드(400)로 선정될 수도 있다.In this notifying
그리고 알림 정보에는 알림 내용 및 해당 알림 내용을 수신할 노드인 수신자와 발신한 노드인 발신자를 식별하기 위한 ID를 포함할 수 있다. 여기서의 ID는 서비스 ID(Service ID) 및 피어 아이디(Peer ID) 중 적어도 하나를 포함할 수 있다. Further, the notification information may include notification content and an ID for identifying a receiver, which is a node to receive the notification content, and a sender, which is a node that sends the notification content. Here, the ID may include at least one of a service ID and a peer ID.
공지 노드(400)는 도 4와 같이 유저 데이터베이스(User DB)에 유저의 기기 토큰(userDeviceToken)을 사전에 저장할 수 있으며, 알림 정보를 수신할 수신자 노드의 기기 토큰을 통해 알림 정보를 전송할 수 있다. The
또한 공지 노드(400)는 서버로 마련되어 모바일 기기와 같은 각 노드(100, 200)로 알림 정보를 전송할 수 있다. In addition, the
도 5는 본 발명의 일 실시예에 따른 데이터 전송 및 접근 제어 시스템에서의 데이터 전송 및 접근 제어 방법을 설명하기 위한 흐름도이고 도 6은 도 5의 데이터 전송 및 접근 제어 방법을 보다 구체적으로 설명하기 위한 흐름도로써, 본 발명의 일 실시예에 따른 데이터 전송 및 접근 제어 방법은 도 1에 도시된 데이터 전송 및 접근 제어 시스템(10)과 실질적으로 동일한 구성 상에서 진행되므로, 도 1의 데이터 전송 및 접근 제어 시스템(10)과 동일한 구성요소에 대해 동일한 도면 부호를 부여하고, 반복되는 설명은 생략하기로 한다. 5 is a flowchart for explaining a data transmission and access control method in a data transmission and access control system according to an embodiment of the present invention, and FIG. 6 is a flowchart for explaining the data transmission and access control method of FIG. 5 in more detail. As a flowchart, since the data transmission and access control method according to an embodiment of the present invention proceeds on substantially the same configuration as the data transmission and
본 발명의 데이터 전송 및 접근 제어 방법은, 키워드를 수신하는 단계(S110), 송신 노드를 확인하는 단계(S130), P2P 세션을 확립시키는 단계(S150), 공유 대상 데이터를 송신하는 단계(S170) 및 공유 대상 데이터를 수신하는 단계(S190)를 포함할 수 있다. The data transmission and access control method of the present invention includes the steps of receiving a keyword (S110), identifying a transmission node (S130), establishing a P2P session (S150), and transmitting data to be shared (S170). and receiving sharing target data (S190).
키워드를 수신하는 단계(S110)는 릴레이 노드(300)가 수신 노드(200)로부터 공유 대상 데이터에 대한 키워드를 수신하는 단계일 수 있다. Receiving a keyword (S110) may be a step in which the
송신 노드를 확인하는 단계(S130)는 릴레이 노드(300)가 키워드에 대응되는 공유 대상 데이터를 제공하는 송신 노드(100)를 확인하는 단계일 수 있다. The step of checking the transmitting node (S130) may be a step in which the
P2P 세션을 확립시키는 단계(S150)는 릴레이 노드(300)가 수신 노드(200)와 송신 노드(100) 간의 P2P 세션을 확립시키는 단계일 수 있다. Establishing the P2P session (S150) may be a step in which the
공유 대상 데이터를 송신하는 단계(S170)는 송신 노드(100)가 공유 대상 데이터를 대화창을 통해 수신 노드(200)측으로 송신하는 단계일 수 있다. The step of transmitting the data to be shared ( S170 ) may be a step in which the
공유 대상 데이터를 수신하는 단계(S190)는 수신 노드(200)가 공유 대상 데이터를 대화창을 통해 수신하는 단계일 수 있다. Receiving the data to be shared (S190) may be a step in which the
이하에서는 도 6을 참고하여 데이터 전송 및 접근 제어 방법을 보다 구체적으로 설명하기로 한다. Hereinafter, a data transmission and access control method will be described in more detail with reference to FIG. 6 .
먼저 릴레이 노드(300)가 수신 노드(200)로부터 공유 대상 데이터에 대한 키워드를 수신할 수 있다(S215). First, the
또한 키워드를 수신하는 단계(S215) 이전에 송신 노드(100)가, 공유 대상 데이터와 관련된 파일 컨트랙트(FC)와 송신 노드(100)와 관련된 유저 컨트랙트(UC)를 포함하는 스마트 컨트랙트(SC)를 생성할 수 있다(S210). In addition, before the step of receiving the keyword (S215), the
이때 파일 컨트랙트(FC)는, 공유 대상 데이터의 메타데이터(File info.) 및 파일 송수신 로그 정보(File send/Receive Info)를 포함할 수 있다. At this time, the file contract (FC) may include metadata (File info.) and file transmission/reception log information (File send/Receive Info) of data to be shared.
그리고 유저 컨트랙트(UC)는, 송신 노드(100)의 피어 아이디(Peer ID), 서비스 아이디(Service ID) 및 블록체인 네트워크(BN)에 로그인하기 위한 암호화된 패스워드 정보(Encrypted password)를 포함할 수 있다. And the user contract (UC) may include the Peer ID of the sending
이후 릴레이 노드(300)가 키워드에 대응하는 스마트 컨트랙트(SC)를 검색할 수 있다(S220). Thereafter, the
그리고 릴레이 노드(300)가 검색된 스마트 컨트랙트(SC)에 포함된 송신 노드(100)의 서비스 아이디(Service ID)를 수신 노드(200) 측에 전송할 수 있다(S225). Further, the
이후 릴레이 노드(300)가 수신 노드(200)와 송신 노드(100) 간의 P2P 세션을 확립시킬 수 있다(S240). Thereafter, the
그리고 수신 노드(200)가, 검색된 스마트 컨트랙트(SC)의 서비스 아이디(Service ID)가 포함된 접속창을 통해 데이터 전송 서비스에 익명 로그인할 수 있다(S230).In addition, the receiving
이후 릴레이 노드(300)가 송신 노드(100)와 수신 노드(200)의 피어 아이디(Peer ID)를 확인할 수 있다(S235). Thereafter, the
그리고 나서 릴레이 노드(300)가 송신 노드(100)와 수신 노드(200) 간의 P2P 세션을 확립시킬 수 있다(S240). Then, the
이후 송신 노드(100)가 공유 대상 데이터를 수신 노드(200)로 전송할 수 있다(S250). Thereafter, the transmitting
공유 대상 데이터를 전송하는 단계(S250)에서는, 송신 노드(100)가 P2P 세션이 확립된 수신 노드(200)에게 대화창을 통해 공유 대상 데이터를 전송할 수 있다. In the step of transmitting the data to be shared ( S250 ), the
또한 공유 대상 데이터를 전송하는 단계(S250)에서는 스마트 컨트랙트(SC)의 파일 송수신 로그 정보(File send/Receive Info)를 업데이트할 수 있다(S255). In addition, in the step of transmitting the data to be shared (S250), the file send/receive log information (File send/receive Info) of the smart contract (SC) can be updated (S255).
그리고 수신 노드(200)가 공유 대상 데이터를 수신할 수 있다. Also, the receiving
또한 본 발명의 데이터 전송 및 접근 제어 시스템(10)은 블록체인 네트워크를 구성하는 공지 노드(400)를 더 포함할 수 있다. In addition, the data transmission and
시스템(10)이 공지 노드(400)를 더 포함하는 경우, 데이터 전송 및 접근 제어 방법은 공지 노드(400)가 P2P 세션을 확립시키는 단계(S240) 이후에, P2P 세션의 확립을 공지하기 위한 알림 정보를 생성하여 송신 노드(100) 및 수신 노드(200) 중 적어도 하나의 노드로 알림 정보를 전송하는 단계(S245)를 더 포함할 수 있다. If the
이와 같은 본 발명의 데이터 전송 및 접근 제어 방법은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. The data transmission and access control method of the present invention can be implemented in the form of program instructions that can be executed through various computer components and recorded on a computer-readable recording medium. The computer readable recording medium may include program instructions, data files, data structures, etc. alone or in combination.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. Program instructions recorded on the computer-readable recording medium may be specially designed and configured for the present invention, or may be known and usable to those skilled in the art of computer software.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, 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 and DVDs, and magneto-optical media such as floptical disks. media), and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter or the like as well as machine language codes such as those produced by a compiler. The hardware device may be configured to act as one or more software modules to perform processing according to the present invention and vice versa.
이상에서는 본 발명의 다양한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.Although various embodiments of the present invention have been shown and described above, the present invention is not limited to the specific embodiments described above, and is commonly used in the technical field to which the present invention pertains without departing from the gist of the present invention claimed in the claims. Of course, various modifications are possible by those with knowledge of, and these modifications should not be individually understood from the technical spirit or prospect of the present invention.
10 : 데이터 전송 및 접근 제어 시스템
100 : 송신 노드
200 : 수신 노드
300 : 릴레이 노드
400 : 공지 노드
BN : 블록체인 네트워크
SC : 스마트 컨트랙트
FC : 파일 컨트랙트
UC : 유저 컨트랙트10: data transmission and access control system 100: transmission node
200: receiving node 300: relay node
400: Announcement Node BN: Blockchain Network
SC: Smart Contract FC: File Contract
UC: User Contract
Claims (13)
공유 대상 데이터를 송신하는 송신 노드;
상기 공유 대상 데이터를 수신하는 수신 노드; 및
상기 수신 노드로부터 상기 공유 대상 데이터에 대한 키워드를 수신하고, 상기 키워드에 대응되는 상기 공유 대상 데이터를 제공하는 상기 송신 노드를 확인하며, 상기 수신 노드와 상기 송신 노드 간의 P2P 세션을 확립시키는 릴레이 노드를 포함하고,
상기 수신 노드, 송신 노드 및 릴레이 노드는, 상기 블록체인 네트워크를 구성하는 노드인 것을 특징으로 하는, 데이터 전송 및 접근 제어 시스템. In a data transmission and access control system that provides data transmission service based on a blockchain network,
a transmission node that transmits data to be shared;
a receiving node receiving the sharing target data; and
A relay node that receives a keyword for the sharing target data from the receiving node, checks the transmitting node that provides the sharing target data corresponding to the keyword, and establishes a P2P session between the receiving node and the transmitting node. include,
The receiving node, the transmitting node, and the relay node are nodes constituting the blockchain network, characterized in that, data transmission and access control system.
상기 송신 노드는,
상기 공유 대상 데이터와 관련된 파일 컨트랙트와 상기 송신 노드와 관련된 유저 컨트랙트를 포함하는 스마트 컨트랙트를 생성하고,
상기 파일 컨트랙트는,
상기 공유 대상 데이터의 메타데이터 및 파일 송수신 로그 정보를 포함하고,
상기 유저 컨트랙트는,
상기 송신 노드의 피어 아이디(Peer ID), 서비스 아이디 및 상기 블록체인 네트워크에 로그인하기 위한 암호화된 패스워드 정보를 포함하는 것을 특징으로 하는, 데이터 전송 및 접근 제어 시스템. According to claim 1,
The sending node,
Create a smart contract including a file contract related to the data to be shared and a user contract related to the transmission node;
The file contract,
Including metadata and file transmission/reception log information of the sharing target data,
The user contract,
A data transmission and access control system, characterized in that it includes a peer ID of the sending node, a service ID, and encrypted password information for logging in to the blockchain network.
상기 릴레이 노드는,
상기 키워드에 대응하는 스마트 컨트랙트를 검색하고, 상기 검색된 스마트 컨트랙트의 서비스 아이디를 상기 수신 노드 측에 전송하는 것을 특징으로 하는, 데이터 전송 및 접근 제어 시스템. According to claim 2,
The relay node,
A data transmission and access control system, characterized by searching for a smart contract corresponding to the keyword and transmitting the service ID of the searched smart contract to the receiving node.
상기 수신 노드는,
상기 검색된 스마트 컨트랙트의 서비스 아이디가 포함된 접속창을 통해 상기 데이터 전송 서비스에 익명 로그인하고,
상기 릴레이 노드는,
상기 송신 노드와 수신 노드의 피어 아이디를 확인하여 상기 송신 노드와 수신 노드 간의 상기 P2P 세션을 확립시키는 것을 특징으로 하는, 데이터 전송 및 접근 제어 시스템. According to claim 3,
The receiving node,
Log in anonymously to the data transmission service through the access window containing the service ID of the searched smart contract;
The relay node,
Characterized in that the P2P session between the sending node and the receiving node is established by checking the peer IDs of the sending node and the receiving node.
상기 송신 노드는,
상기 P2P 세션이 확립된 수신 노드에게 대화창을 통해 상기 공유 대상 데이터를 전송하고, 상기 스마트 컨트랙트의 파일 송수신 로그 정보를 업데이트하는 것을 특징으로 하는, 데이터 전송 및 접근 제어 시스템.According to claim 4,
The sending node,
A data transmission and access control system, characterized in that for transmitting the data to be shared through a chat window to the receiving node where the P2P session is established, and updating file transmission and reception log information of the smart contract.
상기 릴레이 노드가 상기 P2P 세션을 확립시키면, 상기 P2P 세션의 확립을 공지하기 위한 알림 정보를 생성하여 상기 송신 노드 및 수신 노드 중 적어도 하나의 노드로 상기 알림 정보를 전송하는 공지 노드를 더 포함하는 것을 특징으로 하는, 데이터 전송 및 접근 제어 시스템. According to claim 1,
When the relay node establishes the P2P session, further comprising a notifying node generating notification information for notifying establishment of the P2P session and transmitting the notification information to at least one of the transmitting node and the receiving node. characterized, data transmission and access control systems.
상기 데이터 전송 및 접근 제어 시스템은,
상기 블록체인 네트워크를 구성하는 수신 노드, 송신 노드 및 릴레이 노드를 포함하고,
상기 릴레이 노드가 상기 수신 노드로부터 공유 대상 데이터에 대한 키워드를 수신하는 단계;
상기 릴레이 노드가 상기 키워드에 대응되는 상기 공유 대상 데이터를 제공하는 송신 노드를 확인하는 단계;
상기 릴레이 노드가 상기 수신 노드와 상기 송신 노드 간의 P2P 세션을 확립시키는 단계;
상기 송신 노드가 상기 공유 대상 데이터를 송신하는 단계; 및
상기 수신 노드가 상기 공유 대상 데이터를 수신하는 단계를 포함하는, 데이터 전송 및 접근 제어 방법. A data transmission and access control method in a data transmission and access control system that provides data transmission service based on a blockchain network,
The data transmission and access control system,
Including a receiving node, a transmitting node and a relay node constituting the blockchain network,
receiving, by the relay node, a keyword for data to be shared from the receiving node;
checking, by the relay node, a transmission node providing the sharing target data corresponding to the keyword;
establishing, by the relay node, a P2P session between the receiving node and the transmitting node;
transmitting, by the transmission node, the sharing target data; and
A data transmission and access control method comprising the step of receiving the sharing target data by the receiving node.
상기 송신 노드가 상기 공유 대상 데이터와 관련된 파일 컨트랙트와 상기 송신 노드와 관련된 유저 컨트랙트를 포함하는 스마트 컨트랙트를 생성하는 단계를 더 포함하고,
상기 파일 컨트랙트는,
상기 공유 대상 데이터의 메타데이터 및 파일 송수신 로그 정보를 포함하고,
상기 유저 컨트랙트는,
상기 송신 노드의 피어 아이디(Peer ID), 서비스 아이디 및 상기 블록체인 네트워크에 로그인하기 위한 암호화된 패스워드 정보를 포함하는 것을 특징으로 하는, 데이터 전송 및 접근 제어 방법. According to claim 7,
Generating, by the transmission node, a smart contract including a file contract related to the data to be shared and a user contract related to the transmission node;
The file contract,
Including metadata and file transmission/reception log information of the sharing target data,
The user contract,
Data transmission and access control method, characterized in that it includes a peer ID of the sending node, a service ID, and encrypted password information for logging in to the blockchain network.
상기 송신 노드를 확인하는 단계는,
상기 릴레이 노드가 상기 키워드에 대응하는 상기 스마트 컨트랙트를 검색하는 단계;
상기 릴레이 노드가 상기 검색된 스마트 컨트랙트의 서비스 아이디를 상기 수신 노드 측에 전송하는 단계를 포함하는 것을 특징으로 하는, 데이터 전송 및 접근 제어 방법. According to claim 8,
The step of identifying the sending node,
the relay node searching for the smart contract corresponding to the keyword;
Data transmission and access control method comprising the step of the relay node transmitting the service ID of the searched smart contract to the receiving node.
상기 수신 노드가 상기 검색된 스마트 컨트랙트의 서비스 아이디가 포함된 접속창을 통해 상기 데이터 전송 서비스에 익명 로그인하는 단계를 더 포함하고,
상기 P2P 세션을 확립시키는 단계에서는,
상기 송신 노드와 수신 노드의 피어 아이디를 확인하여 상기 송신 노드와 수신 노드 간의 상기 P2P 세션을 확립시키는 것을 특징으로 하는, 데이터 전송 및 접근 제어 방법. According to claim 9,
The receiving node further comprises anonymously logging in to the data transmission service through a connection window including the service ID of the searched smart contract;
In the step of establishing the P2P session,
characterized in that the P2P session between the transmitting node and the receiving node is established by checking the peer IDs of the transmitting node and the receiving node.
상기 송신하는 단계에서는,
상기 송신 노드가 상기 P2P 세션이 확립된 수신 노드에게 대화창을 통해 상기 공유 대상 데이터를 전송하고, 상기 스마트 컨트랙트의 파일 송수신 로그 정보를 업데이트하는 것을 특징으로 하는, 데이터 전송 및 접근 제어 방법.According to claim 10,
In the sending step,
Characterized in that the transmitting node transmits the sharing target data to the receiving node with which the P2P session is established through a chat window, and updates file transmission/reception log information of the smart contract.
상기 데이터 전송 및 접근 제어 시스템은,
상기 블록체인 네트워크를 구성하는 공지 노드를 더 포함하고,
공지 노드가 상기 P2P 세션을 확립시키는 단계 이후에, 상기 P2P 세션의 확립을 공지하기 위한 알림 정보를 생성하여 상기 송신 노드 및 수신 노드 중 적어도 하나의 노드로 상기 알림 정보를 전송하는 단계를 더 포함하는 것을 특징으로 하는, 데이터 전송 및 접근 제어 방법.According to claim 7,
The data transmission and access control system,
Further comprising a notice node constituting the blockchain network,
Further comprising, after the announcing node establishing the P2P session, generating notification information for notifying establishment of the P2P session and transmitting the notification information to at least one of the transmitting node and the receiving node. Characterized in that, data transmission and access control method.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210139249 | 2021-10-19 | ||
KR20210139249 | 2021-10-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230055984A true KR20230055984A (en) | 2023-04-26 |
Family
ID=86099270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220134050A KR20230055984A (en) | 2021-10-19 | 2022-10-18 | Data transmission and access control method, recording medium and data transmission and access control system for performing the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230055984A (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030080318A (en) | 2002-04-08 | 2003-10-17 | 엘지전자 주식회사 | data transmission system in mobile communication system |
-
2022
- 2022-10-18 KR KR1020220134050A patent/KR20230055984A/en not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030080318A (en) | 2002-04-08 | 2003-10-17 | 엘지전자 주식회사 | data transmission system in mobile communication system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11621953B2 (en) | Dynamic risk detection and mitigation of compromised customer log-in credentials | |
US11323464B2 (en) | Artifact modification and associated abuse detection | |
US10887330B2 (en) | Data surveillance for privileged assets based on threat streams | |
CN112073400B (en) | Access control method, system, device and computing equipment | |
US10666442B2 (en) | Password management and verification with a blockchain | |
CN100474851C (en) | Safety foundation structure of coordinate network name analytical agreement (PNRP) and method thereof | |
CN103916244B (en) | Verification method and device | |
US8756697B2 (en) | Systems and methods for determining vulnerability to session stealing | |
JP4405248B2 (en) | Communication relay device, communication relay method, and program | |
EP2859702B1 (en) | Method and system for managing user accounts across multiple electronic devices | |
US20180145986A1 (en) | Network security based on redirection of questionable network access | |
EP3128459A1 (en) | System and method of utilizing a dedicated computer security service | |
US20230020504A1 (en) | Localized machine learning of user behaviors in network operating system for enhanced secure services in secure data network | |
US8291481B2 (en) | Sessionless redirection in terminal services | |
CN105407074A (en) | Authentication method, apparatus and system | |
CN100361452C (en) | Method and device for server denial of service shield | |
US12058122B2 (en) | Password concatenation for secure command execution in a secure network device | |
JP2019114061A (en) | Verification server, verification method, and computer program | |
CN110738502B (en) | Bill processing method and device and storage medium device | |
US11625368B1 (en) | Data migration framework | |
KR20200125279A (en) | User Identification Method Using Block Chain and System thereof | |
KR20210039190A (en) | Method for maintaining private information on blockchain network and device thereof | |
US20240291661A1 (en) | Systems and methods for verifying or ensuring communication paths | |
CN113190812A (en) | Login method, system, electronic equipment and storage medium | |
KR20230055984A (en) | Data transmission and access control method, recording medium and data transmission and access control system for performing the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal |