KR102166233B1 - Certificate issuance system based on blockchain technology and control method thereof - Google Patents

Certificate issuance system based on blockchain technology and control method thereof Download PDF

Info

Publication number
KR102166233B1
KR102166233B1 KR1020180121236A KR20180121236A KR102166233B1 KR 102166233 B1 KR102166233 B1 KR 102166233B1 KR 1020180121236 A KR1020180121236 A KR 1020180121236A KR 20180121236 A KR20180121236 A KR 20180121236A KR 102166233 B1 KR102166233 B1 KR 102166233B1
Authority
KR
South Korea
Prior art keywords
sub
main
certificate
blockchain
transaction
Prior art date
Application number
KR1020180121236A
Other languages
Korean (ko)
Other versions
KR20200041148A (en
Inventor
전정우
Original Assignee
주식회사 디지털존
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 디지털존 filed Critical 주식회사 디지털존
Priority to KR1020180121236A priority Critical patent/KR102166233B1/en
Publication of KR20200041148A publication Critical patent/KR20200041148A/en
Application granted granted Critical
Publication of KR102166233B1 publication Critical patent/KR102166233B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/26Government or public services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • H04L2209/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Educational Administration (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 블록체인 기술에 기초하여 문서를 발급하기 위한 시스템에 관한 것으로, 보다 구체적으로는 전자문서의 발급을 수행하기 위한 시스템에 있어서, 복수 개의 메인 노드로 구성되는 메인 블록체인, 복수 개의 서브 노드로 구성되는 서브 블록체인, 증명서의 발급을 요청하는 증명서 요청 서버, 및 상기 증명서 요청 서버로부터의 발급 요청에 대응하여 증명서를 생성하는 증명서 발급 서버를 포함하되, 상기 증명서 발급 서버는, 상기 증명서의 생성에 관한 제 1 트랜잭션(transaction)을 제 1 메인 노드에 전송하고, 상기 메인 블록체인은 상기 제 1 메인 노드로 수신한 상기 제 1 트랜잭션을 상기 서브 블록체인으로 전달하며, 상기 증명서 요청 서버는, 상기 제 1 트랜잭션의 검증 쿼리(Query)를 제 1 서브 노드에 전달하는 것을 특징으로 하는, 전자문서 발급 시스템에 관한 것이다.The present invention relates to a system for issuing documents based on blockchain technology, and more specifically, in a system for issuing electronic documents, a main blockchain composed of a plurality of main nodes, a plurality of sub nodes A sub-blockchain consisting of, a certificate request server for requesting issuance of a certificate, and a certificate issuing server for generating a certificate in response to an issuance request from the certificate request server, wherein the certificate issuing server generates the certificate A first transaction related to (transaction) is transmitted to a first main node, the main block chain transfers the first transaction received to the first main node to the sub-blockchain, and the certificate request server, the It relates to an electronic document issuing system, characterized in that the verification query of the first transaction is transmitted to the first sub-node.

Description

블록체인 기술을 이용한 전자문서 발급 시스템 및 그것의 제어 방법{CERTIFICATE ISSUANCE SYSTEM BASED ON BLOCKCHAIN TECHNOLOGY AND CONTROL METHOD THEREOF}Electronic document issuing system using blockchain technology and its control method {CERTIFICATE ISSUANCE SYSTEM BASED ON BLOCKCHAIN TECHNOLOGY AND CONTROL METHOD THEREOF}

본 발명은 증명 시스템에 관한 것으로, 보다 구체적으로는 사용자 인증이나 문서 제 증명에 관한 동작들을 블록체인의 트랜잭션으로 기록하고 열람하여 신뢰성을 향상시킬 수 있는 인증 시스템에 관한 것이다.The present invention relates to a verification system, and more particularly, to an authentication system capable of improving reliability by recording and viewing operations related to user authentication or document authentication as a transaction of a block chain.

블록체인 기술이란, 네트워크에 참여하는 모든 사용자가 관리 대상이 되는 모든 데이터를 분산하여 저장하는 데이터 분산처리기술을 말한다. 거래 정보가 담긴 원장(原帳)을 거래 주체나 특정 기관에서 보유하는 것이 아니라 네트워크 참여자 모두가 나누어 가지는 기술이라는 점에서 '분산원장기술(DLT;distributed ledger technology)' 또는 '공공거래장부'라고도 한다. 블록체인은 거래 내용이 담긴 블록(Block)을 사슬처럼 연결(chain)한 것이라 하여 붙여진 명칭이다.Blockchain technology refers to a data distributed processing technology that distributes and stores all the data that are subject to management by all users participating in the network. It is also referred to as'distributed ledger technology (DLT)' or'public transaction ledger' in that the ledger containing transaction information is not owned by the transaction entity or a specific institution, but is shared by all network participants. . Blockchain is a name given as a chain of blocks containing transaction details.

이러한 블록체인은 퍼블릭 블록체인(Public blockchain)과 프라이빗 블록체인(Private blockchain)으로 구분될 수 있다. 퍼블릭 블록체인은 앞에서 설명한 공공거래장부에 해당하며, 통상 블록체인이라 하면 퍼블릭 블록체인을 지칭한다. 프라이빗 블록체인은 이와 상대적 개념으로, 주로 기업에서 활용한다 하여 엔터프라이즈 블록체인(Enterprise blockchain)이라고도 한다. 여러 기업(또는 기관)이 공동으로 참여하는 컨소시엄 블록체인(Consortium blockchain)도 넓은 의미에서 프라이빗 블록체인의 범주에 속한다.These blockchains can be divided into a public blockchain and a private blockchain. The public blockchain corresponds to the public transaction ledger described above, and generally refers to the public blockchain when referring to the blockchain. Private blockchain is a relative concept, and is also referred to as enterprise blockchain because it is mainly used by companies. Consortium blockchain, in which several companies (or institutions) jointly participate, also belongs to the category of private blockchain in a broad sense.

누구에게나 개방되고 누구나 트랜잭션을 생성할 수 있는 퍼블릭 블록체인과 달리, 프라이빗 블록체인은 서비스 제공자(기업 또는 기관)의 승인을 받아야만 참여할 수 있고 법적 책임을 지는 기관만 트랜잭션을 생성할 수 있다. 또한 트랜잭션 내역이 모두에게 공개되어 네트워크에 참여한 모든 노드(Node)가 이를 검증하고 거래를 승인하는 퍼블릭 블록체인과는 달리, 프라이빗 블록체인에서는 승인된 기관만 트랜잭션을 검증하고 거래를 승인한다.Unlike public blockchains, which are open to anyone and anyone can create transactions, private blockchains can only participate with approval of a service provider (company or institution), and only legally responsible organizations can create transactions. In addition, unlike the public blockchain, in which transaction details are open to all, and all nodes participating in the network verify it and approve the transaction, in the private blockchain, only authorized organizations verify the transaction and approve the transaction.

퍼블릭 블록체인은 누구나 참여할 수 있고 모든 참여자의 상호 검증을 거쳐 신뢰도가 높지만, 모든 참여자의 거래 기록을 남기고 이를 공유하느라 처리 속도가 느리다는 단점이 있다. 이에 비하여 프라이빗 블록체인은 승인 받은 노드만 참여하고, 다른 노드의 검증을 구할 필요가 없기 때문에 처리 속도가 훨씬 빠르다. 하지만 프라이빗 블록체인의 사용자는 서비스 제공자에게 전적으로 의존하여야 하기 때문에 퍼블릭 블록체인에 비하여 신뢰성에 한계가 있다.The public blockchain has a high reliability through mutual verification of all participants, but it has the disadvantage that the processing speed is slow to record and share transaction records of all participants. On the other hand, the private blockchain is much faster because only authorized nodes participate and there is no need to seek verification of other nodes. However, since the users of the private blockchain must completely rely on the service provider, the reliability is limited compared to the public blockchain.

이러한 블록체인은 다양한 산업분야에 활용될 수 있으며, 특히 위변조에 대한 신뢰성이 확보되어야 하는 분야에 가장 적합할 것이다. 사용자에 대한 인증이나 문서의 제 증명 등의 증명 업무는, 위조나 변조의 위험에 지속적으로 노출될 수 밖에 없는 업무로서, 신뢰성 확보가 다른 산업 분야의 업무들 보다 시급할 것이다. 그럼에도 불구하고, 블록체인 기술을 활용하여 이러한 증명 시스템에 대한 연구가 제대로 이루어지지 못하고 있는 실정이다.Such a blockchain can be used in a variety of industrial fields, and it will be most suitable especially for fields where reliability against forgery and alteration must be secured. Verification work, such as authentication for users or verification of documents, is a work that is inevitably exposed to the risk of forgery or alteration, and securing reliability will be more urgent than work in other industries. Nevertheless, research on such a proof system using blockchain technology has not been properly conducted.

본 발명은 전술한 문제 및 다른 문제를 해결하는 것을 목적으로 한다. 또 다른 목적은 사용자의 인증이나 문서의 제 증명에 대한 신뢰도를 향상시킬 수 있는 증명 시스템을 제공하는 것을 그 목적으로 한다.It is an object of the present invention to solve the above and other problems. Another object is to provide an authentication system that can improve the reliability of user authentication or document authentication.

또 다른 목적은 증명의 대상이 되는 문서의 발급, 유통 및 파기까지의 전 과정에 대한 증명을 수행하고, 누구든지 해당 과정을 확인할 수 있는 증명 시스템을 제공하는 것을 그 목적으로 한다.Another purpose is to provide a certification system that enables verification of the entire process of issuance, distribution, and destruction of documents subject to certification, and anyone can verify the process.

본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved in the present invention are not limited to the technical problems mentioned above, and other technical problems that are not mentioned will be clearly understood by those of ordinary skill in the technical field to which the present invention belongs from the following description. I will be able to.

상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따르면, 전자문서의 제 증명을 수행하기 위한 시스템에 있어서, 복수 개의 메인 노드로 구성되는 메인 블록체인; 복수 개의 서브 노드로 구성되는 서브 블록체인; 증명서의 발급을 요청하는 증명서 요청 서버; 및 상기 증명서 요청 서버로부터의 발급 요청에 대응하여 증명서를 생성하는 증명서 발급 서버를 포함하되, 상기 증명서 발급 서버는, 상기 증명서의 생성에 관한 제 1 트랜잭션(transaction)을 제 1 메인 노드에 전송하고, 상기 메인 블록체인은 상기 제 1 메인 노드로 수신한 상기 제 1 트랜잭션을 상기 서브 블록체인으로 전달하며, 상기 증명서 요청 서버는, 상기 제 1 트랜잭션의 검증 쿼리(Query)를 제 1 서브 노드에 전달하는 것을 특징으로 하는, 전자문서 제 증명 시스템을 제공한다.In order to achieve the above or other objects, according to an aspect of the present invention, there is provided a system for performing verification of an electronic document, comprising: a main block chain comprising a plurality of main nodes; A sub-blockchain composed of a plurality of sub-nodes; A certificate request server that requests issuance of a certificate; And a certificate issuing server that generates a certificate in response to an issuance request from the certificate request server, wherein the certificate issuing server transmits a first transaction related to generation of the certificate to a first main node, The main blockchain transmits the first transaction received to the first main node to the sub-blockchain, and the certificate request server transmits a verification query of the first transaction to the first sub-node. It is characterized in that it provides a system for verifying the electronic document.

본 발명에 따른 인증 시스템의 효과에 대해 설명하면 다음과 같다.The effect of the authentication system according to the present invention will be described as follows.

본 발명의 실시 예들 중 적어도 하나에 의하면, 블록체인 기술에 기초하여 사용자 인증의 신뢰성을 향상시킬 수 있다는 장점이 있다.According to at least one of the embodiments of the present invention, there is an advantage of improving the reliability of user authentication based on a block chain technology.

또한, 본 발명의 실시 예들 중 적어도 하나에 의하면, 인증 요청 기관으로부터의 인증 절차를 블록체인 트랜잭션으로 기록하는데 있어서, 인증 요청 기관의 수가 방대해 지더라도 병목 현상 없이 효과적이고 문제 없이 기록할 수 있다는 장점이 있다.In addition, according to at least one of the embodiments of the present invention, in recording the authentication procedure from the authentication requesting authority as a block chain transaction, even if the number of authentication requesting authorities increases, there is an advantage that it can be recorded effectively and without problems without a bottleneck. have.

본 발명의 적용 가능성의 추가적인 범위는 이하의 상세한 설명으로부터 명백해질 것이다. 그러나 본 발명의 사상 및 범위 내에서 다양한 변경 및 수정은 당업자에게 명확하게 이해될 수 있으므로, 상세한 설명 및 본 발명의 바람직한 실시 예와 같은 특정 실시 예는 단지 예시로 주어진 것으로 이해되어야 한다.Further scope of applicability of the present invention will become apparent from the detailed description below. However, since various changes and modifications within the spirit and scope of the present invention can be clearly understood by those skilled in the art, specific embodiments such as the detailed description and preferred embodiments of the present invention should be understood as being given by way of example only.

도 1은 본 발명의 일실시예에 따른 블록체인의 구조를 도시하는 도면이다.
도 2는 본 발명의 일실시예에 따른 메인 블록체인과 서브 블록체인의 확장 관계를 설명하는 도면이다.
도 3은 본 발명의 일실시예에 따른 문서의 제 증명 절차를 도시하는 도면이다.
도 4는 본 발명의 일실시예에 따라, 증명 기관들 간의 증명서 요청 과정을 도시하는 도면이다.
도 5는 본 발명의 일실시예에 따른 사용자 인증 절차를 도시하는 도면이다.
1 is a diagram showing the structure of a block chain according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating an extension relationship between a main block chain and a sub block chain according to an embodiment of the present invention.
3 is a diagram showing a procedure for verifying a document according to an embodiment of the present invention.
4 is a diagram illustrating a process of requesting a certificate between certification authorities according to an embodiment of the present invention.
5 is a diagram illustrating a user authentication procedure according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. Hereinafter, exemplary embodiments disclosed in the present specification will be described in detail with reference to the accompanying drawings, but identical or similar elements are denoted by the same reference numerals regardless of reference numerals, and redundant descriptions thereof will be omitted. The suffixes "module" and "unit" for components used in the following description are given or used interchangeably in consideration of only the ease of preparation of the specification, and do not have meanings or roles that are distinguished from each other by themselves. In addition, in describing the embodiments disclosed in the present specification, when it is determined that a detailed description of related known technologies may obscure the subject matter of the embodiments disclosed herein, the detailed description thereof will be omitted. In addition, the accompanying drawings are for easy understanding of the embodiments disclosed in the present specification, and the technical idea disclosed in the present specification is not limited by the accompanying drawings, and all modifications included in the spirit and scope of the present invention It should be understood to include equivalents or substitutes.

제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms including ordinal numbers, such as first and second, may be used to describe various elements, but the elements are not limited by the terms. These terms are used only for the purpose of distinguishing one component from another component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is referred to as being "connected" or "connected" to another component, it is understood that it may be directly connected or connected to the other component, but other components may exist in the middle. Should be. On the other hand, when a component is referred to as being "directly connected" or "directly connected" to another component, it should be understood that there is no other component in the middle.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. Singular expressions include plural expressions unless the context clearly indicates otherwise.

본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In the present application, terms such as "comprises" or "have" are intended to designate the presence of features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, but one or more other features. It is to be understood that the presence or addition of elements or numbers, steps, actions, components, parts, or combinations thereof, does not preclude in advance.

블록체인 기술은, 현재 금융 시스템에서 활발하게 사용되고 있다. 이하에서, 금융 시스템에서 적용되고 있는 방식에 대하여 설명한다.Blockchain technology is currently being actively used in financial systems. Hereinafter, a method applied in the financial system will be described.

블록체인은 금융기관 등에서 모든 거래를 담보하고 관리하는 기존의 금융 시스템에서 벗어나 P2P(Peer to Peer;개인 대 개인) 거래를 지향하는, 탈(脫)중앙화를 핵심 개념으로 한다. P2P란 서버나 클라이언트 없이 개인 컴퓨터 사이를 연결하는 통신망을 말하며, 연결된 각각의 컴퓨터가 서버이자 클라이언트 역할을 하며 정보를 공유하는 방식이다.Blockchain is a core concept of decentralization, which aims for P2P (Peer to Peer) transactions, away from the existing financial system that secures and manages all transactions in financial institutions. P2P refers to a communication network that connects personal computers without a server or client, and each connected computer acts as a server and a client and shares information.

기존 금융 시스템에서는 금융회사들이 중앙 서버에 거래 기록을 보관해 온 반면, P2P 방식을 기반으로 하는 블록체인에서는 거래 정보를 블록에 담아 차례대로 연결하고 이를 모든 참여자가 공유한다.In the existing financial system, financial companies have kept transaction records on a central server, whereas in a block chain based on the P2P method, transaction information is stored in blocks and connected in sequence, which is shared by all participants.

금융 시스템에서 거래 과정(트랜잭션, transaction)에 대한 블록체인 기술의 처리는, 다음과 같이 이루어진다. ① A가 B에게 송금 희망 등의 거래 요청을 한다. ② 해당 거래 정보가 담긴 블록이 생성된다. ③ 블록이 네트워크상의 모든 참여자에게 전송되면, 참여자들은 거래 정보의 유효성을 상호 검증한다. ④ 참여자 과반수의 데이터와 일치하는 거래 내역은 정상 장부로 확인하는 방식으로 검증이 완료된 블록은 이전 블록에 연결되고, 그 사본이 만들어져 각 사용자의 컴퓨터에 분산 저장된다. ⑤ A가 B에게 송금하여 거래가 완료된다. 이때 기설정된 주기 내에(예를 들면 약 10분) 발생된 모든 트랜잭션을 하나의 블록으로 생성할 수 있다.Blockchain technology processing for the transaction process (transaction, transaction) in the financial system is performed as follows. ① A requests for a transaction, such as a request for remittance, to B. ② A block containing the transaction information is created. ③ When the block is transmitted to all participants on the network, the participants mutually verify the validity of the transaction information. ④ The transaction details that match the data of the majority of participants are checked with the normal ledger, and the verified block is linked to the previous block, and a copy is made and distributed to each user's computer. ⑤ A transfers money to B and the transaction is completed. At this time, all transactions that occur within a preset period (for example, about 10 minutes) can be generated as one block.

이와 같은 과정에 의해서, 참여자 과반수의 데이터와 일치하는지 여부를 확인함으로서 블록의 생성 시에도 그 신뢰성을 확보할 수 있을 뿐만 아니라, 완성된 블록들의 사본을 각 컴퓨터(노드)에 개별적으로 저장하여 위변조를 실질적으로 불가능하게 한다.Through this process, by checking whether the data of the majority of participants match or not, the reliability of blocks can be secured even when creating blocks, as well as counterfeiting by storing copies of completed blocks individually in each computer (node). Makes it practically impossible.

본 발명에서의 증명 시스템은, 위와 같이 금융 시스템에서 활용하는 거래의 증명 대신, 사용자의 인증 및/또는 전자 문서의 제 증명에 관한 다양한 동작(이하, 블록체인에 기록되는 모든 동작을 트랜잭션이라 호칭한다)에 적용하고자 하는 것이다.In the proof system in the present invention, instead of the proof of the transaction used in the financial system as above, various actions related to the user's authentication and/or the first proof of the electronic document (hereinafter, all actions recorded in the blockchain are referred to as transactions. ).

이하, 블록체인 관련 용어에 대하여 설명한다.Hereinafter, terms related to blockchain will be described.

· 블록(block)· Block

블록은 데이터를 저장하는 단위로, 바디(body)와 헤더(header)로 구분된다. 바디에는 거래 내용이, 헤더에는 머클해시(머클루트)나 넌스(nounce, 암호화와 관련되는 임의의 수) 등의 암호코드가 담겨 있다. 블록은 약 10분을 주기로 생성되며, 거래 기록을 끌어 모아 블록을 만들어 신뢰성을 검증하면서 이전 블록에 연결하여 블록체인 형태가 된다. 여기서 처음 시작된 블록을 제네시스 블록이라고 부른다. 즉, 제네시스 블록은 그 앞에 어떤 블록도 생성되지 않은 최초의 블록을 말한다. A block is a unit that stores data and is divided into a body and a header. The body contains the transaction content, and the header contains encryption codes such as merkle hash (merclout) or nonce (an arbitrary number related to encryption). Blocks are created every about 10 minutes, and they are connected to the previous block to form a block chain while collecting transaction records and creating blocks to verify reliability. The block that starts here is called the genesis block. That is, the genesis block refers to the first block in which no block has been created before it.

· 노드(node)· Node

블록체인은 중앙 집중형 서버에 거래 기록을 보관, 관리하지 않고 거래에 참여하는 개개인의 서버들이 모여 네트워크를 유지 및 관리한다. 이 개개인의 서버, 즉 참여자를 노드라고 한다. 중앙 관리자가 없기 때문에 블록을 배포하는 노드의 역할이 중요하며, 참여하는 노드들 가운데 절반 이상의 동의가 있어야 새 블록이 생성된다. 노드들은 블록체인을 컴퓨터에 저장해 놓고 있는데, 일부 노드가 해킹을 당해 기존 내용이 틀어져도 다수의 노드에게 데이터가 남아 있어 계속적으로 데이터를 보존할 수 있다.Blockchain does not store and manage transaction records on a centralized server, but individual servers participating in transactions gather to maintain and manage the network. This individual server, or participant, is called a node. Since there is no central administrator, the role of the node distributing blocks is important, and a new block is created only when more than half of the participating nodes agree. Nodes store the blockchain in their computers, and even if some nodes are hacked and the existing contents are changed, data remains in multiple nodes, so data can be preserved continuously.

· 해시함수· Hash function

어떤 데이터를 입력해도 같은 길이의 결과를 도출하는 함수이다. 도출되는 결과가 중복될 가능성이 낮고, 결과 값으로 입력 값을 역으로 추정하기 어렵다. 이 때문에 해시 값을 비교하면 데이터의 변경이 발생했는지 파악할 수 있다. 해시함수는 SHA(Secure Hash Algorithm)-1이 처음 고안된 후 더 발전된 형태의 SHA-2(SHA 256)가 나왔는데, 이것을 블록체인에서 사용하고 있다. SHA-2는 어떤 길이의 값을 입력해도 결과가 256비트로 도출된다.It is a function that produces results of the same length no matter what data is entered. It is unlikely that the resulting result will be duplicated, and it is difficult to inversely estimate the input value as the result value. For this reason, by comparing the hash values, it is possible to determine whether data has been changed. As for the hash function, SHA-2 (SHA 256) in a more advanced form came out after SHA (Secure Hash Algorithm)-1 was first devised, which is being used in the blockchain. SHA-2 results in 256 bits no matter what length value is entered.

도 1은 본 발명의 일실시예에 따른 블록체인의 구조를 도시하는 도면이다. 도 2는 본 발명의 일실시예에 따른 메인 블록체인과 서브 블록체인의 확장 관계를 설명하는 도면이다.1 is a diagram showing the structure of a block chain according to an embodiment of the present invention. FIG. 2 is a diagram illustrating an extension relationship between a main block chain and a sub block chain according to an embodiment of the present invention.

본 발명의 일실시예에 따른 증명 시스템은, 적어도 두 개의 메인 노드(111-1 ~ 111-3)가 참여하는 메인 블록체인(110) 및 적어도 두 개의 서브 노드(121-1 ~ 121-4)가 참여하는 서브 블록체인(120)을 포함할 수 있다.The proof system according to an embodiment of the present invention includes a main blockchain 110 in which at least two main nodes 111-1 to 111-3 participate and at least two sub-nodes 121-1 to 121-4 It may include a sub-blockchain 120 to participate in.

메인 블록체인(110)은 상기 메인 트랜잭션에 기초하여 기설정된 주기로 메인 블록을 형성하고, 상기 서브 블록체인(120)은 상기 서브 트랜잭션에 기초하여 기설정된 주기로 서브 블록을 형성할 수 있을 것이다. 즉, 메인 블록체인(110)과 서브 블록체인(120)간에 생성되는 블록 간에는 서로 연결되거나 검증 절차가 이루어지지 않는다.The main block chain 110 may form a main block at a preset cycle based on the main transaction, and the sub block chain 120 may form a sub block at a preset cycle based on the sub transaction. That is, the blocks generated between the main blockchain 110 and the sub-blockchain 120 are not connected to each other or a verification procedure is performed.

다만, 메인 블록체인(110)과 서브 블록체인(120)은 선택적으로 연결될 수 있으며, 선택적으로 연결 시에는 검증 절차가 요구될 수 있다.However, the main blockchain 110 and the sub-blockchain 120 may be selectively connected, and when selectively connected, a verification procedure may be required.

예를 들어, 이하에서 상세히 후술하겠지만, 메인 블록체인(110)에서 증명서 생성 트랜잭션 발생 시, 서브 블록체인에 해당 트랜잭션에 대한 정보가 공유될 수 있다. 이와 같이 공유 받은 증명서 생성 트랜잭션에 기초하여, 서브 블록체인(120)은 트랜잭션에 대한 검증 쿼리를 수행할 수 있다.For example, as will be described later in detail below, when a certificate generating transaction occurs in the main blockchain 110, information on the corresponding transaction may be shared in the sub-blockchain. Based on the certificate generation transaction shared in this way, the sub-blockchain 120 may perform a verification query for the transaction.

이와 같이 블록 간에 관계는 차단되어 있는 대신, 메인 블록체인(110)과 서브 블록체인(120)은, 연결 노드에 의해서 데이터가 송수신될 수 있다. 메인 블록체인(110)에 참여하는 메인 노드(111-1 ~ 111-3) 중에서 적어도 하나는 메인 연결 노드(111-3)이고, 서브 블록체인(120)에 참여하는 서브 노드(121-1 ~ 121-4) 중에서 적어도 하나는 서브 연결 노드(121-1)이며, 메인 및 서브 연결 노드(111-3, 121-1)는, 상기 메인 및 서브 블록 체인을 서로 연결하기 위하여 구비된다.In this way, the relationship between the blocks is blocked, but the main blockchain 110 and the sub-blockchain 120 may transmit and receive data by a connection node. At least one of the main nodes 111-1 to 111-3 participating in the main blockchain 110 is the main connection node 111-3, and the sub-nodes 121-1 to participating in the sub-blockchain 120 121-4), at least one is a sub-connection node 121-1, and the main and sub-connection nodes 111-3 and 121-1 are provided to connect the main and sub-block chains to each other.

이때 서로 연결된다는 것은, 데이터를 주고 받는 것을 의미할 수 있다.In this case, being connected to each other may mean exchanging data.

본 발명의 일실시예에서는, 특정 조건 하에서만 상기 연결 노드들 간에 데이터를 주고 받도록 제안한다. 왜냐하면, 메인 블록체인은 프라이빗 블록체인으로서, 메인 블록체인에 저장되어 있는 정보는 외부에 공개되어서는 안되기 때문이다.In one embodiment of the present invention, it is proposed to exchange data between the connection nodes only under specific conditions. This is because the main blockchain is a private blockchain, and information stored in the main blockchain should not be disclosed to the outside.

예를 들어서, 서브 블록체인(120)으로부터 기설정된 쿼리(Query)만을 수신하거나, 상기 기설정된 쿼리에 대한 회신을 하는 경우의 데이터 송수신만을 상기 연결 노드를 통하여 수행할 수 있을 것이다. 기설정된 쿼리 및 이에 대한 회신에 대해서는 이하에서 상세하게 후술하기로 한다.For example, only data transmission/reception in the case of receiving only a preset query from the sub-blockchain 120 or replying to the preset query may be performed through the connection node. A preset query and a response thereto will be described in detail later.

본 발명의 일실시예에 따르면, 메인 블록체인(110)은 프라이빗 블록체인일 수 있다. 즉, 메인 블록체인(110)의 노드인 메인 노드(111-1 ~ 111-3)는 누구에게나 공개되지 않으며, 승인되거나 지정된 기관만이 참여할 수 있다.According to an embodiment of the present invention, the main blockchain 110 may be a private blockchain. That is, the main nodes 111-1 to 111-3, which are nodes of the main blockchain 110, are not disclosed to anyone, and only authorized or designated organizations can participate.

반면, 서브 블록체인(120)은, 프라이빗 블록체인일 수도 있고, 퍼블릭 블록체인일 수도 있다. 완전하게 차단되지는 않지만, 확인되거나 인증된 주체(기설정된 일부 주체)만이 한정적으로 참여할 수 있는, 넓은 의미의 프라이빗 블록체인일 수도 있다. 이에 따라, 서브 블록체인(120)의 노드인 서브 노드(121-1 ~ 121-4)는 추가 서브 노드(122-1, 122-2, ...)가 참여할 수 있을 것이다.On the other hand, the sub-blockchain 120 may be a private blockchain or a public blockchain. Although it is not completely blocked, it may be a private blockchain in a broad sense, where only verified or authenticated subjects (pre-set some subjects) can participate in a limited manner. Accordingly, the sub-nodes 121-1 to 121-4, which are nodes of the sub-blockchain 120, may participate in additional sub-nodes 122-1, 122-2, ....

이와 같이, 메인 블록체인(110)과 서브 블록체인(120)이 분리되는 이유는, 증명 시스템에 대한 보안이 요구되기 때문이다. 블록체인 기술에 의하면 모든 트랜잭션이 공중(public)에게 공개되는데, 사용자 인증이나 문서의 제 증명 내용 자체는 공중(public)에 공개되어서는 안되기 때문이다. 예를 들어, 졸업 증명 문서는 요청인(예를 들어 기업의 지원자)이 요청한 수령 기관(예를 들어 지원자에 대한 증명서를 수령하고자 하는 기업 등)에게만 공개되어야 되고, 그 수령 기관을 제외한 다른 기업, 금융기관이나 타인 등의 제3자에게는 공개되어서는 안되는 정보이기 때문이다.In this way, the main block chain 110 and the sub block chain 120 are separated because security for the proof system is required. According to the blockchain technology, all transactions are open to the public, because user authentication or the contents of the document itself must not be disclosed to the public. For example, the certificate of graduation should be disclosed only to the recipient organization (e.g., a company wishing to receive a certificate for the applicant) requested by the requestor (e.g., an applicant from a company), and to a company other than that recipient, This is because it is information that should not be disclosed to third parties such as financial institutions or others.

메인 블록체인(110)과 서브 블록체인(120)이 분리되는 또 다른 이유는, 수령 기관의 확장성을 확보하기 위함이다. 메인 블록체인(110)의 경우에는 내용이 공개되어서는 안되는 프라이빗 블록체인이기 때문에, 그 확장성 측면에서 제한적일 수 밖에 없다.Another reason why the main blockchain 110 and the sub-blockchain 120 are separated is to secure the scalability of the recipient institution. In the case of the main blockchain 110, since it is a private blockchain whose contents should not be disclosed, it is bound to be limited in terms of its scalability.

블록체인의 노드로 참여하고자 하는 기업이 추가적으로 발생한다면, 본 발명의 일실시예에 따른 시스템에서는, 서브 블록체인의 노드에 참여할 수 있도록 구비된다.If a company that wants to participate as a node of the block chain additionally occurs, the system according to an embodiment of the present invention is provided to participate in the node of the sub-block chain.

사용자 인증에 대한 요청이나, 문서의 제 증명을 요청하는 복수 개의 기관(이하 수령 기관이라 함)은 상기 서브 노드(121-1 ~ 121-4)에 대응될 수 있다. 즉 수령 기관은 하나의 서브 노드에 매칭되어 연결되며, 하나의 서브 노드에는 하나의 수령 기관이 연결되어 있을 수 있다.A plurality of organizations (hereinafter referred to as recipient organizations) requesting user authentication or document authentication may correspond to the sub-nodes 121-1 to 121-4. That is, the recipient organization may be matched to and connected to one sub-node, and one recipient organization may be connected to one sub-node.

이에 반하여, 메인 블록체인(110)에는 증명 기관이 복수 개의 메인 노드(111-1 ~ 111-3) 중 적어도 하나의 노드에 연결되어 있을 수 있다. 즉, 하나의 통합 증명 기관이 복수 개의 노드를 사용할 수 있다는 것이다.On the other hand, in the main blockchain 110, a certification authority may be connected to at least one of the plurality of main nodes 111-1 to 111-3. In other words, one integrated certification authority can use multiple nodes.

더 나아가, 서브 블록체인(120)은 블록체인 자체 개수의 확장이 가능하다. 도 2에 도시된 바와 같이, 하나의 메인 블록체인(110)에 복수 개의 서브 블록체인(120-1, 120-2, 120-3, ...)이 연결되어 동작할 수 있다. 이때, 메인 블록체인(110)의 메인 연결 노드(111-3)는, 복수 개의 서브 연결 노드(도 2에서의 121-1, 130-1, 130-2)들과 '1 to many' 관계로 각각 연결될 수 있을 것이다.Furthermore, the sub-blockchain 120 can expand the number of blockchains themselves. As shown in FIG. 2, a plurality of sub-blockchains 120-1, 120-2, 120-3, ... may be connected to one main blockchain 110 to operate. At this time, the main connection node 111-3 of the main blockchain 110 is in a '1 to many' relationship with a plurality of sub-connection nodes (121-1, 130-1, 130-2 in FIG. 2). Each could be connected.

이하에서는, 본 발명의 이러한 구조에 기초하여 문서의 제 증명 및 사용자 인증을 수행하는 구체적인 방법에 대해서 설명한다.Hereinafter, a specific method of performing document authentication and user authentication based on this structure of the present invention will be described.

도 3은 본 발명의 일실시예에 따른 문서의 제 증명 절차를 도시하는 도면이다.3 is a diagram showing a procedure for verifying a document according to an embodiment of the present invention.

증명서 요청 서버(391)란, 요청인(390)에 관한 문서의 진위 여부를 확인하고자 하는 수령 기관(또는 개인)에서 관리하는 서버를 의미할 수 있으며, 예를 들면, 증명서 요청 서버(391)는 기업에서 운영하는 서버이고, 요청인(390)은 해당 기업에 취업하고자 지원하는 지원자일 수 있으며, 해당 기업에서 증명서 요청 서버(391)를 통하여 요청인(390)의 학적사항을 확인하고자 졸업 증명 문서에 대한 진위 여부를 확인하고자 하는 상황을 가정할 수 있다.The certificate request server 391 may mean a server managed by a recipient organization (or individual) that wants to check the authenticity of a document related to the requester 390, for example, the certificate request server 391 It is a server operated by a company, and the requestor 390 may be an applicant who applies for employment in the company, and a graduation certificate to check the academic information of the requester 390 through the certificate request server 391 in the company You can assume a situation where you want to check the authenticity of.

증명 기관(393)은, 해당하는 증명을 수행하는 주체를 의미하며, 위 예시에서 요청인(390)이 졸업한 대학교 학사증명 또는 학적증명 시스템이 될 수 있을 것이다. 본 발명에서 사용하는 증명 기관(393)이라는 용어는, 개념을 이해하기 쉽도록 사용하는 용어일 뿐, 증명 기관(393)에서 운영하는 장치, 시스템이나 서버로 해석할 수 있음은 자명할 것이다.The certification institution 393 refers to a subject that performs the corresponding certification, and in the example above, the requestor 390 may be a university bachelor's certificate or academic certificate system. It will be apparent that the term “certification authority 393” used in the present invention is only a term used to make the concept easier to understand, and can be interpreted as a device, system, or server operated by the certification authority 393.

증명서 발급 서버(392)란, 복수 개의 증명 기관(393)의 증명 관련 절차를 일괄적으로 관리하기 위한 기관으로, 증명 기관(393)에 의해서 증명된 사항을 암호화한 문서로 발급하는 주체를 의미한다. 예를 들어, 수많은 대학교 각각이 증명 기관(393)이라 한다면, 증명서 발급 서버(392)는 수많은 대학교에서 확인/증명된 내용을 통합하고 이를 암호화하여 증명서로 발급해 주는 역할을 수행할 수 있다.The certificate issuing server 392 is an organization for collectively managing certification-related procedures of a plurality of certification authorities 393, and refers to a subject that issues the matters certified by the certification authority 393 as encrypted documents. . For example, if each of a number of universities is the certification authority 393, the certificate issuing server 392 may play a role of integrating the contents verified/certified by the numerous universities, encrypting it, and issuing it as a certificate.

다만, 본 발명은 증명서 발급 서버(392)가 직접 증명서 생성하는 것에 한정되지 않으며, 복수 개의 증명 기관(393)에서 증명서가 발급 되고 그 발급된 증명서의 취합 및 관리를 수행하는 경우도 본 발명에 포함될 것이다.However, the present invention is not limited to generating certificates directly by the certificate issuing server 392, and the case where certificates are issued by a plurality of certification authorities 393 and the collection and management of the issued certificates is also included in the present invention. will be.

또한, 이러한 증명서 발급 서버(392)는 증명 기관(393)과 별도로 구비될 수도 있지만 증명 기관(393)과 구분되지 않고 하나의 기관으로 구비될 수도 있을 것이다.In addition, the certificate issuing server 392 may be provided separately from the certification authority 393, but may be provided as a single organization without being distinguished from the certification authority 393.

본 발명을 실시하기 위한 구체적인 내용에서 사용하는 서버라는 용어는 온오프라인으로 데이터를 송수신할 수 있는 장치를 모두 포함하는 용어로서, 서버라는 용어 자체에 본 발명의 내용이 한정되지는 않는다.The term server used in the detailed description for carrying out the present invention is a term including all devices capable of transmitting and receiving data online and offline, and the content of the present invention is not limited to the term server itself.

또한, 본 발명을 실시하기 위한 구체적인 내용에서 증명서라는 용어는, 전자적으로 발급, 유통 및 저장될 수 있는 전자문서를 모두 포괄하는 용어이다.In addition, the term “certificate” in the specific content for carrying out the present invention is a term encompassing all electronic documents that can be issued, distributed, and stored electronically.

기존의 증명 시스템에 의하면, 요청인(390)이 직접 증명 기관(393)이나 증명서 발급 서버(392)에 졸업 증명 문서를 요청하여 졸업 증명 문서를 프린터로 출력 및 수령 기관에 출력된 졸업 증명 문서를 제출하는 방식으로 확인하였다.According to the existing certification system, the requestor 390 directly requests a graduation certification document from the certification authority 393 or the certificate issuing server 392 to print the graduation certification document through a printer and print the graduation certification document output to the recipient institution. Confirmed by the method of submission.

이와 같은 기존 증명 시스템에 의하면, 요청인이 문서를 출력하고 수령 기관에 제출하는 과정에서 위변조 위험성이 항상 존재하였다.According to such an existing certification system, there was always a risk of forgery and alteration in the process of the requester printing the document and submitting it to the recipient agency.

하지만, 본 발명의 일실시예에서는, 요청인(390)의 요청에 기초하여, 블록체인 기술을 활용하여 증명서를 확인하고자 하는 기관(예를 들면, 요청자의 학적사항을 확인하고자 하는 기업 등)에서 직접 증명서 발급에 관한 요청을 수행하고 전달하는 방식을 제안한다.However, in an embodiment of the present invention, based on the request of the requestor 390, an institution that wants to verify the certificate using blockchain technology (for example, a company that wants to check the registration information of the requestor) We propose a method of carrying out and delivering requests for direct certificate issuance.

S301 단계에서 요청인(390)은 자신이 증명하고자 하는 문서(증명서)를 생성해 줄 것을 증명서 요청 서버(391)에 요청한다. S302 단계에서 증명서 요청 서버(391)는, 증명서 발급 서버(392)에 요청을 전달한다. S303 단계에서 증명서 발급 서버(392)는, 생성될 증명서 파일명을 지정하고, 지정된 파일명을 증명서 요청 서버(391)에 회신해 준다.In step S301, the requester 390 requests the certificate request server 391 to generate a document (certificate) that he or she wants to prove. In step S302, the certificate request server 391 delivers the request to the certificate issuing server 392. In step S303, the certificate issuing server 392 designates the name of the certificate file to be generated, and returns the designated file name to the certificate request server 391.

S304 단계에서 증명서 발급 서버(392)는 증명기관(393)에게 증명서 생성에 대한 요청을 전달한다. 증명기관(393)은 전달 받은 요청에 기초하여, 증명서를 생성할 수 있다. 이어서 증명서 발급 서버(392)는 증명서 생성에 대한 트랜잭션을 메인 블록체인(110)의 노드에 전달(S305)한다. 이렇게 전달된 트랜잭션은, 상술한 바와 같이 메인 블록에 저장될 수 있으며, 더 나아가 서브 블록체인(120)에 선택적으로 전달되어 서브 블록에 저장될 수도 있을 것이다.In step S304, the certificate issuing server 392 transmits a request for generating a certificate to the certification authority 393. The certification authority 393 may generate a certificate based on the received request. Subsequently, the certificate issuing server 392 transfers the transaction for generating the certificate to the node of the main blockchain 110 (S305). The transferred transaction may be stored in the main block as described above, and further, may be selectively transmitted to the sub-blockchain 120 and stored in the sub-block.

더 나아가, 본 발명의 일실시예에 따른 상기 트랜잭션은, 서브 체인에 전달되어 서브 블록으로 저장되도록 제안한다. 왜냐하면, 후술하는 S307 단계에서 검증을 수행하기 위함이다. 이때, 상기 트랜잭션은, 메인 연결 노드(111-3)와 서브 연결 노드(121-1)간에 연결을 통하여 전달될 수 있을 것이다. 즉, 상기 증명서 생성에 대한 트랜잭션은, 메인 연결 노드(111-3) 및 서브 연결 노드(121-1)를 순차적으로 통하여 서브 블록체인의 서브 블록에 기록될 수 있다.Furthermore, it is proposed that the transaction according to an embodiment of the present invention be transferred to a sub-chain and stored as a sub-block. This is because the verification is performed in step S307 to be described later. In this case, the transaction may be transmitted through a connection between the main connection node 111-3 and the sub connection node 121-1. That is, the transaction for generating the certificate may be recorded in the sub-block of the sub-blockchain sequentially through the main connection node 111-3 and the sub-connection node 121-1.

S306 단계에서 증명서 요청 서버(391)는, 증명서 발급 서버(392)에 지속적으로 생성 컨트랙트를 확인한다. 즉, S303 단계에서 회신 받은 파일명에 기초하여, 해당 파일명을 가지는 증명서가 생성되었는지 지속적으로 체크하는 것이다. 만약, 증명서 생성이 확인되었다면, 서브 블록체인(120)을 통하여 해당 증명서가 생성되었는지 검증 쿼리를 전달(S307)한다. 즉, 올바르게 생성된 증명서인지 확인하는 것이다.In step S306, the certificate request server 391 continuously checks the generated contract with the certificate issuing server 392. That is, based on the file name returned in step S303, it is continuously checked whether a certificate having the corresponding file name has been generated. If it is confirmed that the certificate is generated, a verification query is transmitted to see if the certificate has been generated through the sub-blockchain 120 (S307). In other words, it is to check whether the certificate was generated correctly.

이때 확인하는 과정(S307)은, 상기 서브 블록에 저장되어 있는 내용에 기초하여 수행될 수 있다. 즉, 증명서 생성에 대한 트랜잭션이 서브 블록에 저장되어 있는데, 그 서브 블록에 기록되어 있는 트랜잭션을 확인하여 검증을 수행하는 것이다.In this case, the checking process (S307) may be performed based on the contents stored in the sub-block. That is, a transaction for generating a certificate is stored in a subblock, and verification is performed by checking the transaction recorded in the subblock.

해당 쿼리에 대한 응답인 확인 결과는, 상기 증명서 요청 서버(391)에 다시 회신될 수 있다.The confirmation result, which is a response to the query, may be returned to the certificate request server 391 again.

그리고, 생성된 증명서는 S308, S309 단계를 통하여 증명 기관(393), 증명서 발급 서버(392) 및 증명서 요청 서버(391)에게 전달되어, 증명서 요청 서버(391)가 수령(다운로드)할 수 있다. 증명서 수령을 완료할 경우 증명서 요청 서버(391)는, S310 단계에서 수령 완료에 대한 트랜잭션을 서브 노드(121-4)에 전송한다. 이렇게 전송된 트랜잭션은, 서브 블록체인(120)의 서브 블록에 저장될 것이다.Then, the generated certificate is transmitted to the certification authority 393, the certificate issuing server 392, and the certificate request server 391 through steps S308 and S309, so that the certificate request server 391 can receive (download) it. Upon completion of receipt of the certificate, the certificate request server 391 transmits a transaction for completion of receipt to the sub-node 121-4 in step S310. The transmitted transaction will be stored in the sub-block of the sub-blockchain 120.

이어서 S311단계에서 요청인(390)은, 증명서 요청 서버(391)로부터 증명서를 수신(다운로드) 받는다. 증명서 요청 서버(391)는 증명서의 발급(즉, 요청인에게 전달 완료)에 대한 트랜잭션을 서브 블록체인(120)의 서브 노드(121-4)에 전달(S312 단계)하여 서브 블록에 저장시킬 수 있을 것이다. 또한, 상기 증명서의 전달 완료 뿐만 아니라, 증명서의 복제, 파기나 이전 등의 모든 동작에 대하여 트랜잭션으로 하여 서브 노드(121-4)에 전달할 수 있을 것이다.Subsequently, in step S311, the requester 390 receives (downloads) a certificate from the certificate request server 391. The certificate request server 391 transmits a transaction for issuing a certificate (i.e., completion of delivery to the requester) to the sub-node 121-4 of the sub-blockchain 120 (step S312) and stores it in the sub-block. There will be. In addition, it is possible to transfer not only the completion of the transfer of the certificate, but also all operations such as copying, destruction, or transfer of the certificate as a transaction to the sub-node 121-4.

도 3에서의 절차에 의하면, 증명서를 수령하는 증명서 요청 서버(391)는 전달 받은 증명서가 올바르게 생성되었는지 높은 신뢰도로 검증할 수 있을 뿐만 아니라, 요청인(390)은 생성된 증명서를 수령 기관이 수령했는지 여부, 제3자에게 전달되었는지 여부나 파기 여부에 대하여 높은 신뢰도로 확인할 수 있다는 장점이 있다.According to the procedure in FIG. 3, the certificate request server 391 receiving the certificate can verify with high reliability whether the received certificate has been correctly generated, and the requester 390 receives the generated certificate by the receiving organization. It has the advantage of being able to check with high reliability whether it has been done, whether it is delivered to a third party, or whether it is destroyed.

도 4는 본 발명의 일실시예에 따라, 증명 기관들 간의 증명서 요청 과정을 도시하는 도면이다.4 is a diagram illustrating a process of requesting a certificate between certification authorities according to an embodiment of the present invention.

경우에 따라서는 증명 기관들 간에 증명서 발급이 필요한 경우도 존재한다. 예를 들면, A 대학교에 다니고 있는 학생이 B 대학교에 학점 교류를 신청하거나, B 대학교의 대학원에 진학을 하는 경우, B 대학교에서는 A 대학교에 다니고 있는지 여부에 대한 증명서가 필요할 수 있을 것이다. 증명 기관들은 상술한 증명서 발급 서버(392)를 통하여 증명서 발급에 관한 내용을 통합적으로 관리하기 때문에, 도 3의 절차와는 조금 다르게 진행될 수 있다.In some cases, it may be necessary to issue certificates between certification authorities. For example, if a student at University A applies for credit transfer to University B, or is going to graduate school at University B, then University B may require proof of whether or not he is attending University A. Since the certification authorities collectively manage the contents of the certificate issuance through the certificate issuing server 392 described above, the procedure of FIG. 3 can be performed slightly differently.

도 4에서는 요청인의 요청에 기반하여 제 1 증명 기관(393-1)이 제 2 증명 기관(393-2)에게 증명서를 요청하는 과정을 도시한다. 즉 위의 예시에서, 학점 교류를 신청하고자 하는 학생이 요청인으로서 B 대학교에 요청을 수행하면, B 대학교가 제 1 증명 기관(393-1)이 될 수 있고, 요청인이 현재 재학 중인 A 대학교가 제 2 증명 기관(393-2)가 될 수 있는 것이다.4 shows a process of requesting a certificate from the first certification authority 393-1 to the second certification authority 393-2 based on the requestor's request. In other words, in the example above, if a student who wants to apply for credit exchange makes a request to University B as a requester, University B may become the first certification institution (393-1), and the requestor is currently attending University A Can become the second certification body (393-2).

S401 단계에서 제 1 증명 기관(393-1)은 증명서 발급 서버(392)에 증명서 생성을 요청을 전송한다. 이어서 증명서 발급 서버(392)는, 생성될 증명서 파일명을 지정하고, 지정된 파일명을 제 1 증명 기관(393-1)에게 회신하여 준다. S403 단계에서 증명서 발급 서버(392)는 제 2 증명 기관(393-2)에게 증명서 생성 요청을 전달하고, 제 2 증명 기관(393-2)은 요청 받은 증명서를 생성한다.In step S401, the first certification authority 393-1 transmits a request to generate a certificate to the certificate issuing server 392. Next, the certificate issuing server 392 designates the name of the certificate file to be generated, and returns the designated file name to the first certification authority 393-1. In step S403, the certificate issuing server 392 transmits a certificate generation request to the second certification authority 393-2, and the second certification authority 393-2 generates the requested certificate.

증명서가 생성되면, 증명서 발급 서버(392)는 메인 블록체인(110)의 메인 노드에 상기 증명서 생성에 대한 트랜잭션을 전달할 수 있다.When a certificate is generated, the certificate issuing server 392 may transmit a transaction for generating the certificate to the main node of the main blockchain 110.

S405 단계에서 제 1 증명 기관(393-1)은, 증명서 발급 서버(392)에 지속적으로 생성 컨트랙트를 확인한다. S402 단계에서 회신 받은 파일명에 기초하여, 해당 파일명을 가지는 증명서가 생성되었는지 지속적으로 체크하는 것이다.In step S405, the first certification authority 393-1 continuously checks the creation contract with the certificate issuing server 392. Based on the file name returned in step S402, it is continuously checked whether a certificate having the corresponding file name has been generated.

S406 단계에서 제 2 증명 기관(393-2)은 증명서 발급 서버(392)에 생성된 증명서를 전송한다. 증명서 발급 서버(392)는, 증명서를 수신 받으면 증명서 수신에 대한 트랜잭션을 생성하고, 이를 메인 블록체인(110)의 메인 노드에 전달(S407 단계)한다.In step S406, the second certification authority 393-2 transmits the generated certificate to the certificate issuing server 392. Upon receiving the certificate, the certificate issuing server 392 generates a transaction for receiving the certificate, and transmits it to the main node of the main block chain 110 (step S407).

이어서, 증명서 발급 서버(392)는 제 1 증명 기관에게 수신 받은 증명서를 전달(S408 단계)한다. 그리고, 증명서 전달이 완료되면, 증명서 전달에 대한 트랜잭션을 생성하여 메인 블록체인(110)의 메인 노드에 전달(S409 단계)한다.Subsequently, the certificate issuing server 392 delivers the received certificate to the first certification authority (step S408). Then, upon completion of the certificate transfer, a transaction for certificate transfer is generated and transferred to the main node of the main blockchain 110 (step S409).

이하에서는, 블록체인 기술을 활용하여 사용자 인증을 수행하는 과정에 대해서 설명한다.In the following, a process of performing user authentication using blockchain technology will be described.

도 5는 본 발명의 일실시예에 따른 사용자 인증 절차를 도시하는 도면이다.5 is a diagram illustrating a user authentication procedure according to an embodiment of the present invention.

인증 요청 서버(591)란, 요청인(390)에 대한 인증을 수행하고자 하는 서버를 의미할 수 있으며, 예를 들어 요청인(390)이 가입하고자 하는 홈페이지의 서버를 의미할 수 있을 것이다.The authentication request server 591 may refer to a server that attempts to perform authentication for the requestor 390, and for example, may refer to a server of a homepage to which the requestor 390 wishes to subscribe.

인증 기관(393')은, 요청인(390)에 대한 인증을 수행하는 주체를 의미하며, 예를 들어 인증 요청 서버(591)가 요청인(390)에 대한 학적 사항(대학에 재학, 졸업 등) 인증을 인증 기관(393')에 요청할 수 있을 것이다. 이 경우 인증 기관(393')은 요청인(390)이 졸업한 대학교 학사증명 또는 학적증명 시스템이 될 수 있을 것이다. 인증 기관(393')은 도 3 및 4에서 상술한 증명 기관(393)에 속해 있는 기관일 수도 있고, 증명 기관(393)과는 별도의 기관일 수도 있다.The certification body 393 ′ refers to a subject that performs authentication for the requester 390, for example, the authentication request server 591 provides academic information (attendance, graduation, etc.) for the requester 390. ) Certification may be requested from the certification authority 393'. In this case, the certification body 393 ′ may be a system of university bachelor's certificate or academic record certificate from which the requestor 390 graduated. The certification authority 393 ′ may be an organization belonging to the certification authority 393 described above in FIGS. 3 and 4, or may be an organization separate from the certification authority 393.

통합 인증 서버(592)란, 복수 개의 인증 기관(393')의 사용자 인증 관련 절차를 일괄적으로 관리하기 위한 주체를 의미한다. 예를 들어, 수많은 대학교 각각이 인증 기관(393')이라 한다면, 통합 인증 서버(592)는 수많은 대학교에서 수행된 인증을 통합하고 이를 암호화하여 사용자 식별 정보로 발급해 주는 역할을 수행할 수 있다.The integrated authentication server 592 refers to a subject for collectively managing procedures related to user authentication of a plurality of authentication authorities 393'. For example, if each of a number of universities is an authentication authority 393', the integrated authentication server 592 may play a role of integrating authentications performed at numerous universities, encrypting them, and issuing them as user identification information.

S501 단계에서 요청인(390)은 인증 요청 서버(591)에 사용자 식별 정보에 대한 생성을 요청할 수 있으며, S502 단계에서 인증 요청 서버(591)은 이 요청을 통합 인증 서버(592)로 전달해 줄 수 있다.In step S501, the requester 390 may request the authentication request server 591 to generate user identification information, and in step S502, the authentication request server 591 may forward this request to the integrated authentication server 592. have.

통합 인증 서버(592)는 위 요청에 대한 트랜잭션을 상기 메인 블록체인(110)에 전달(S503 단계)할 수 있다.The integrated authentication server 592 may transmit the transaction for the above request to the main blockchain 110 (step S503).

사용자 식별 정보 생성 요청을 받은 통합 인증 서버(592)는 인증 기관(393')에 이 요청을 다시 전달하고, 인증 기관(393')은 전달 받은 요청 내용에 기초하여 사용자 인증(S504 단계)을 수행할 수 있다. S504의 사용자 인증 단계에서 인증 기관(393')은 요청자(390)에 대한 데이터 베이스를 검색하여, 인증 작업을 수행해 줄 수 있을 것이다. 예를 들어서, 요청자(390)가 대학교 학생이고, 인증 기관(393')은 해당 대학교 학적 시스템으로, 학적 데이터 베이스 조회를 통하여 요청자(390)에 대한 학적 인증을 수행하고 그 수행 결과를 통합 인증 서버(592)에 전달할 수 있는 것이다.The integrated authentication server 592 receiving the request to generate user identification information transmits the request back to the authentication authority 393', and the authentication authority 393' performs user authentication (step S504) based on the received request. can do. In the user authentication step of S504, the authentication authority 393' may search the database for the requester 390 and perform the authentication operation. For example, the requestor 390 is a university student, and the certification body 393' is a corresponding university registration system, and through a registration database inquiry, the requestor 390 performs registration authentication, and the result of the performance is integrated with the authentication server. It can be delivered to (592).

통합 인증 서버(592)는 인증이 완료된 사용자에 대한 사용자 식별 정보를 생성하고, 사용자 식별 정보의 생성에 대한 트랜잭션을 메인 블록체인의 메인 노드에 전달(S505 단계)할 수 있다. 여기서 사용자 식별 정보란, 요청인(390)에게 할당된 고유의 코드를 의미할 수 있으며, 사용자 ID(Identication information)이나 토큰값(token value) 등을 의미할 수 있다. 이때 사용자 식별 정보를 생성하는 주체는 통합 인증 서버(592)가 될 수도 있지만, 인증 기관(393')에서 사용자 식별 정보를 생성하여 이것을 통합 인증 서버(592)에 전달해 줄 수도 있을 것이다.The integrated authentication server 592 may generate user identification information for a user whose authentication has been completed, and transmit a transaction for the generation of user identification information to the main node of the main blockchain (step S505). Here, the user identification information may refer to a unique code assigned to the requester 390, and may refer to a user ID (Identication information) or a token value (token value). At this time, the subject generating the user identification information may be the integrated authentication server 592, but the authentication authority 393' may generate user identification information and transmit it to the integrated authentication server 592.

한편 본 발명의 일실시예에 따른 시스템은, 상기 S503 단계에서와 같이 요청에 대한 트랜잭션은 제 1 메인 노드(111-1)에, 그리고, 식별 정보 생성에 대한 트랜잭션은 제 2 메인 노드(111-2)에 전달하여 블록화 하도록 제안한다. 식별 정보 생성에 대한 트랜잭션은 결국 S503 요청에 대한 인증 회신(Authentication response)일 수 있다.Meanwhile, in the system according to an embodiment of the present invention, as in step S503, a transaction for a request is sent to the first main node 111-1, and a transaction for generating identification information is a second main node 111- It is proposed to block by passing to 2) The transaction for generating identification information may eventually be an authentication response to the S503 request.

블록체인 시스템에서는, 기본적으로 적어도 3 개의 노드가 요구된다. 왜냐하면, 새로 생성된 블록의 검증을 모든 노드에서 함께 수행하게 되는데, 검증 결과 과반수가 넘어야 새로운 블록이 생성될 수 있으며, 2 개의 노드로는 과반수의 결과를 형성할 수 없기 때문이다. 따라서, 도 5에 도시된 메인 블록체인(110) 역시 적어도 세 개의 노드가 필수적이다.In a blockchain system, at least 3 nodes are basically required. This is because the verification of the newly created block is performed at all nodes together, and a new block can be generated only when the verification result exceeds the majority, and two nodes cannot form a majority result. Therefore, the main blockchain 110 shown in FIG. 5 also requires at least three nodes.

통합 인증 서버(592)는 수많은 인증 기관(393')에 대한 인증 절차를 통합하는 역할을 수행하다 보니, 병목 현상이 발생할 우려가 존재한다. 따라서, 본 발명에서는, 통합 인증 서버(592)에서 발생할 수 있는 트랜잭션의 종류를 구분하여, 어느 한 종류의 트랜잭션은 제 1 메인 노드(111-1)에, 다른 종류의 트랜잭션은 제 2 메인 노드(111-2)에 전달하도록 제안하는 것이다. 즉, 적어도 세 개의 노드가 형성되어야 하는 블록체인의 특성 상, 병목 현상을 완화시키기 위하여 노드 들에 역할을 분담하고자 하는 것이다.Since the integrated authentication server 592 plays a role of integrating authentication procedures for numerous authentication authorities 393', there is a concern that a bottleneck may occur. Accordingly, in the present invention, the types of transactions that may occur in the integrated authentication server 592 are classified, and one type of transaction is assigned to the first main node 111-1, and the other type of transaction is assigned to the second main node ( 111-2). In other words, due to the nature of the blockchain in which at least three nodes must be formed, it is intended to allocate roles among nodes to alleviate bottlenecks.

통합 인증 서버(592)는, S506 단계에서 생성된 사용자 식별 정보를 인증 요청 서버(591)에게 전달할 수 있다. 인증 요청 서버(591)는 사용자 식별 정보의 수신에 대한 트랜잭션을 상기 서브 블록체인의 서브 노드에 전달(S507 단계)할 수 있다.The integrated authentication server 592 may transmit the user identification information generated in step S506 to the authentication request server 591. The authentication request server 591 may transmit a transaction for receiving user identification information to a sub node of the sub-blockchain (step S507).

그리고, S508 단계에서는, 요청인(390)에게 사용자 식별 번호를 전달하거나, 사용자 식별 번호가 발급되었다는 사실에 대하여 통지(안내)해 줄 수 있다.Then, in step S508, the user identification number may be transmitted to the requester 390, or a notification (guide) may be given to the fact that the user identification number has been issued.

이상으로 본 발명에 따른 증명 시스템 및 그것의 제어 방법의 실시예를 설시하였으나 이는 적어도 하나의 실시예로서 설명되는 것이며, 이에 의하여 본 발명의 기술적 사상과 그 구성 및 작용이 제한되지는 아니하는 것으로, 본 발명의 기술적 사상의 범위가 도면 또는 도면을 참조한 설명에 의해 한정/제한되지는 아니하는 것이다. 또한 본 발명에서 제시된 발명의 개념과 실시예가 본 발명의 동일 목적을 수행하기 위하여 다른 구조로 수정하거나 설계하기 위한 기초로써 본 발명이 속하는 기술분야의 통상의 지식을 가진 자에 의해 사용되어질 수 있을 것인데, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자에 의한 수정 또는 변경된 등가 구조는 특허청구범위에서 기술되는 본 발명의 기술적 범위에 구속되는 것으로서, 특허청구범위에서 기술한 발명의 사상이나 범위를 벗어나지 않는 한도 내에서 다양한 변화, 치환 및 변경이 가능한 것이다.The embodiment of the proof system and its control method according to the present invention has been described above, but this is described as at least one embodiment, and the technical idea of the present invention and its configuration and operation are not limited thereto, The scope of the technical idea of the present invention is not limited/limited by the drawings or the description referring to the drawings. In addition, the concepts and embodiments of the invention presented in the present invention may be used by those of ordinary skill in the art as a basis for modifying or designing other structures in order to perform the same object of the present invention. , Modified or changed equivalent structure by a person of ordinary skill in the technical field to which the present invention belongs is bound by the technical scope of the present invention described in the claims, and the spirit or scope of the invention described in the claims Various changes, substitutions, and changes are possible within the limit that does not deviate.

Claims (14)

전자문서의 발급을 수행하기 위한 시스템에 있어서,
복수 개의 메인 노드로 구성되는 메인 블록체인;
복수 개의 서브 노드로 구성되는 서브 블록체인;
증명서의 발급을 요청하는 증명서 요청 서버; 및
상기 증명서 요청 서버로부터의 발급 요청에 대응하여 증명서를 생성하는 증명서 발급 서버를 포함하되,
상기 메인 블록체인은 프라이빗 블록체인이고,
상기 메인 블록체인은 기설정된 주기로 메인 블록을 생성하고, 상기 서브 블록체인은 기설정된 주기로 서브 블록을 생성하며, 상기 생성되는 메인 블록과 서브 블록 간에는 서로 연결되거나 검증 절차가 이루어지지 않고,
상기 복수 개의 메인 노드 중 적어도 하나는 메인 연결 노드이고,
상기 복수 개의 서브 노드 중 적어도 하나는 서브 연결 노드이며,
상기 메인 및 서브 연결 노드는 상기 메인 및 서브 블록 체인 간에 서로 데이터를 주고 받기 위하여 연결되고,
상기 메인 블록체인과 서브 블록체인은 데이터의 송수신이 서로 차단되고 기설정된 조건하에서만 상기 메인 및 서브 연결 노드를 통하여 연결되며,
상기 증명서 발급 서버는, 상기 증명서의 생성에 관한 제 1 트랜잭션(transaction)을 제 1 메인 노드에 전송하고,
상기 메인 블록체인은, 상기 수신 받은 제 1 트랜잭션에 기초하여 메인 블록을 형성하며,
상기 메인 블록체인은 상기 메인 및 서브 연결 노드의 연결을 통하여 상기 제 1 메인 노드로 수신한 상기 제 1 트랜잭션을 상기 서브 블록체인으로 전달하며,
상기 서브 블록체인은, 상기 전달 받은 제 1 트랜잭션에 기초하여 서브 블록을 형성하고,
상기 증명서 요청 서버는, 상기 제 1 트랜잭션의 검증 쿼리(Query)를 제 1 서브 노드에 전달하고,
상기 검증 쿼리를 수신 받은 상기 제 1 서브 노드는 상기 서브 블록에 저장되어 있는 상기 제 1 트랜잭션에 기초하여, 상기 제 1 트랜잭션에 대한 검증을 수행하고,
상기 수행된 검증 결과를 상기 증명서 요청 서버에 회신(response)하는 것을 특징으로 하는,
전자문서 발급 시스템.
In a system for issuing electronic documents,
A main blockchain consisting of a plurality of main nodes;
A sub-blockchain composed of a plurality of sub-nodes;
A certificate request server that requests issuance of a certificate; And
Including a certificate issuing server for generating a certificate in response to the issuance request from the certificate request server,
The main blockchain is a private blockchain,
The main block chain generates a main block at a preset cycle, the sub block chain generates a sub block at a preset cycle, and the generated main block and the sub block are connected to each other or no verification procedure is performed,
At least one of the plurality of main nodes is a main connection node,
At least one of the plurality of sub-nodes is a sub-connection node,
The main and sub connection nodes are connected to exchange data between the main and sub blockchains,
The main blockchain and the sub-blockchain are connected through the main and sub-connected nodes only under predetermined conditions and when data transmission/reception is blocked from each other,
The certificate issuing server transmits a first transaction related to the generation of the certificate to a first main node,
The main blockchain forms a main block based on the received first transaction,
The main blockchain transfers the first transaction received to the first main node to the sub-blockchain through the connection of the main and sub-connected nodes,
The sub-blockchain forms a sub-block based on the received first transaction,
The certificate request server transmits a verification query of the first transaction to a first sub-node,
The first sub-node, which has received the verification query, performs verification on the first transaction based on the first transaction stored in the sub-block,
Characterized in that the response (response) the performed verification result to the certificate request server,
Electronic document issuing system.
삭제delete 삭제delete 삭제delete 삭제delete 제 1 항에 있어서,
상기 증명서 요청 서버는 상기 생성된 증명서를 수신하면, 증명서 수신에 대한 제 2 트랜잭션을 상기 제 1 서브 노드에 전송하고,
상기 서브 블록체인은 상기 제 1 서브 노드로 수신 받은 제 2 트랜잭션에 기초하여 서브 블록을 형성하는 것을 특징으로 하는,
전자문서 발급 시스템.
The method of claim 1,
When the certificate request server receives the generated certificate, it transmits a second transaction for certificate reception to the first sub-node,
The sub-blockchain is characterized in that to form a sub-block based on a second transaction received by the first sub-node,
Electronic document issuing system.
제 6 항에 있어서,
상기 증명서 요청 서버는, 수신된 증명서의 발급, 파기 등에 관한 동작을 제 3 트랜잭션으로 상기 제 1 서브 노드에 전달하는 것을 특징으로 하는,
전자문서 발급 시스템.
The method of claim 6,
The certificate request server, characterized in that for transmitting an operation related to issuance, destruction, etc. of the received certificate to the first sub-node in a third transaction,
Electronic document issuing system.
복수 개의 메인 노드로 구성되는 메인 블록체인, 복수 개의 서브 노드로 구성되는 서브 블록체인, 증명서의 발급을 요청하는 증명서 요청 서버 및 상기 증명서 요청 서버로부터의 발급 요청에 대응하여 증명서를 생성하는 증명서 발급 서버를 포함하는 전자문서의 발급을 수행하기 위한 시스템의 제어 방법에 있어서,
상기 메인 블록체인은 프라이빗 블록체인이고,
상기 메인 블록체인은 기설정된 주기로 메인 블록을 생성하고, 상기 서브 블록체인은 기설정된 주기로 서브 블록을 생성하며, 상기 생성되는 메인 블록과 서브 블록 간에는 서로 연결되거나 검증 절차가 이루어지지 않고,
상기 복수 개의 메인 노드 중 적어도 하나는 메인 연결 노드이고,
상기 복수 개의 서브 노드 중 적어도 하나는 서브 연결 노드이며,
상기 메인 및 서브 연결 노드는 상기 메인 및 서브 블록 체인 간에 서로 데이터를 주고 받기 위하여 연결되고,
상기 메인 블록체인과 서브 블록체인은 데이터의 송수신이 서로 차단되고 기설정된 조건하에서만 상기 메인 및 서브 연결 노드를 통하여 연결되며,
상기 증명서 발급 서버가, 상기 증명서의 생성에 관한 제 1 트랜잭션(transaction)을 제 1 메인 노드에 전송하는 단계;
상기 메인 블록체인이, 상기 수신 받은 제 1 트랜잭션에 기초하여 메인 블록을 형성하는 단계;
상기 메인 블록체인이, 상기 메인 및 서브 연결 노드의 연결을 통하여 상기 제 1 메인 노드로 수신한 상기 제 1 트랜잭션을 상기 서브 블록체인으로 전달하는 단계;상기 서브 블록체인이, 상기 전달 받은 제 1 트랜잭션에 기초하여 서브 블록을 형성하는 단계;
상기 증명서 요청 서버는, 상기 제 1 트랜잭션의 검증 쿼리(Query)를 제 1 서브 노드에 전달하는 단계;
상기 검증 쿼리를 수신 받은 상기 제 1 서브 노드는 상기 서브 블록에 저장되어 있는 상기 제 1 트랜잭션에 기초하여, 상기 제 1 트랜잭션에 대한 검증을 수행하는 단계; 및
상기 수행된 검증 결과를 상기 증명서 요청 서버에 회신(response)하는 단계를 포함하는 것을 특징으로 하는,
전자문서 발급 시스템의 제어 방법.
A main blockchain composed of a plurality of main nodes, a sub-blockchain composed of a plurality of sub-nodes, a certificate request server that requests issuance of a certificate, and a certificate issuing server that generates a certificate in response to an issuance request from the certificate request server. In the control method of a system for issuing an electronic document comprising a,
The main blockchain is a private blockchain,
The main block chain generates a main block at a preset cycle, the sub block chain generates a sub block at a preset cycle, and the generated main block and the sub block are connected to each other or no verification procedure is performed,
At least one of the plurality of main nodes is a main connection node,
At least one of the plurality of sub-nodes is a sub-connection node,
The main and sub connection nodes are connected to exchange data between the main and sub blockchains,
The main blockchain and the sub-blockchain are connected through the main and sub-connected nodes only under predetermined conditions and when data transmission/reception is blocked from each other,
Transmitting, by the certificate issuing server, a first transaction related to generation of the certificate to a first main node;
Forming, by the main block chain, a main block based on the received first transaction;
The main blockchain, transmitting the first transaction received to the first main node to the sub-blockchain through the connection of the main and sub-connected nodes; the sub-blockchain, the first transaction received Forming a sub-block based on the;
The certificate request server, transmitting a verification query of the first transaction to a first sub-node;
Performing, by the first sub-node receiving the verification query, verifying the first transaction based on the first transaction stored in the sub-block; And
It characterized in that it comprises the step of replying (response) the performed verification result to the certificate request server,
Control method of electronic document issuing system.
삭제delete 삭제delete 삭제delete 삭제delete 제 8 항에 있어서,
상기 증명서 요청 서버가, 상기 생성된 증명서를 수신하면 증명서 수신에 대한 제 2 트랜잭션을 상기 제 1 서브 노드에 전송하는 단계; 및
상기 서브 블록체인이, 상기 제 1 서브 노드로 수신 받은 제 2 트랜잭션에 기초하여 서브 블록을 형성하는 단계를 더 포함하는 것을 특징으로 하는,
전자문서 발급 시스템의 제어 방법.
The method of claim 8,
Transmitting, by the certificate request server, a second transaction for receiving a certificate to the first sub-node upon receiving the generated certificate; And
The sub-blockchain further comprises the step of forming a sub-block based on a second transaction received by the first sub-node,
Control method of electronic document issuing system.
제 13 항에 있어서,
상기 증명서 요청 서버가, 수신된 증명서의 발급, 파기 등에 관한 동작을 제 3 트랜잭션으로 상기 제 1 서브 노드에 전달하는 단계를 더 포함하는 것을 특징으로 하는,
전자문서 발급 시스템의 제어 방법.
The method of claim 13,
The certificate request server, further comprising the step of transmitting an operation related to issuance, destruction, etc. of the received certificate to the first sub-node in a third transaction,
Control method of electronic document issuing system.
KR1020180121236A 2018-10-11 2018-10-11 Certificate issuance system based on blockchain technology and control method thereof KR102166233B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180121236A KR102166233B1 (en) 2018-10-11 2018-10-11 Certificate issuance system based on blockchain technology and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180121236A KR102166233B1 (en) 2018-10-11 2018-10-11 Certificate issuance system based on blockchain technology and control method thereof

Publications (2)

Publication Number Publication Date
KR20200041148A KR20200041148A (en) 2020-04-21
KR102166233B1 true KR102166233B1 (en) 2020-10-15

Family

ID=70456513

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180121236A KR102166233B1 (en) 2018-10-11 2018-10-11 Certificate issuance system based on blockchain technology and control method thereof

Country Status (1)

Country Link
KR (1) KR102166233B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022149816A1 (en) * 2021-01-06 2022-07-14 이화여자대학교 산학협력단 System and method for providing blockchain-based corporate did service
WO2022203203A1 (en) * 2021-03-23 2022-09-29 주식회사 헤세그 Method for accessing blockchain via trusted node, computer-readable recording medium storing same, and system therefor

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021117931A1 (en) * 2019-12-11 2021-06-17 주식회사 디지털존 System for electronic document issuance, user authentication and integrated authentication using blockchain technology, and control method thereof
KR102239449B1 (en) 2020-06-02 2021-04-13 (주)소셜인프라테크 Portfolio management system by using data sharing
KR102274169B1 (en) 2020-06-16 2021-07-08 (주)소셜인프라테크 System for issuing object with function for preventing object from being tampered
KR102441120B1 (en) * 2020-07-13 2022-09-08 주식회사 윈솔텍 System and method for credit exchange using block-chain technology
KR102271647B1 (en) * 2020-11-11 2021-07-01 (주)소셜인프라테크 System for portfolio management by sharing data for verification of object
KR102525795B1 (en) * 2020-12-24 2023-04-27 주식회사 디지털존 Did-based document management server, system, and control method thereof
KR102470713B1 (en) * 2021-04-29 2022-11-25 (주)소프트제국 Method and apparatus for providing certificate distribution service based on block chain decentralized identitifier
KR102605431B1 (en) * 2021-05-25 2023-11-23 주식회사 포스토피아 Apparatus and method for issuing distribution certificate of electronic document through interlocking method between electronic document intermediaries
KR102641175B1 (en) * 2021-10-13 2024-02-27 박정은 Online sheet music providing Method and System for providing sheet music with authentication code
CN115099817B (en) * 2022-06-17 2023-03-24 北京中科深智科技有限公司 Efficient block chain transaction verification and query method and system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101882802B1 (en) * 2017-04-17 2018-07-27 주식회사 코인플러그 Method for blockchain based management of documents in use of unspent transaction output based protocol and document management server using the same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101882802B1 (en) * 2017-04-17 2018-07-27 주식회사 코인플러그 Method for blockchain based management of documents in use of unspent transaction output based protocol and document management server using the same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022149816A1 (en) * 2021-01-06 2022-07-14 이화여자대학교 산학협력단 System and method for providing blockchain-based corporate did service
WO2022203203A1 (en) * 2021-03-23 2022-09-29 주식회사 헤세그 Method for accessing blockchain via trusted node, computer-readable recording medium storing same, and system therefor

Also Published As

Publication number Publication date
KR20200041148A (en) 2020-04-21

Similar Documents

Publication Publication Date Title
KR102166233B1 (en) Certificate issuance system based on blockchain technology and control method thereof
KR102147083B1 (en) Certificate verification system based on blockchain technology and control method thereof
US10942994B2 (en) Multicomputer processing for data authentication using a blockchain approach
US11159537B2 (en) Multicomputer processing for data authentication and event execution using a blockchain approach
US10735397B2 (en) Systems and methods for distributed identity verification
DE102017204536B3 (en) Issuing virtual documents in a blockchain
US11153069B2 (en) Data authentication using a blockchain approach
US11139984B2 (en) Information processing system, devices and methods
CN109314637A (en) Method and system for efficient transfer of payroll-associated cryptocurrency over blockchains
CN109845220A (en) For providing the method and apparatus of block chain participant's identity binding
JP7114078B2 (en) Electronic authentication method and program
KR102220599B1 (en) Blockchain system for combined authentication and control method thereof
CN113065961A (en) Power block chain data management system
KR102079354B1 (en) User authentication system based on blockchain technology and control method thereof
US20220191047A1 (en) Anonymity mechanisms in permissioned blockchain networks
CN111106930A (en) Block chain network construction method and device and block chain network system
CN115136543A (en) Authentication service for use in blockchain networks
CN114363327A (en) Compliance mechanism in blockchain networks
KR102147085B1 (en) Online document managing system based on blockchain technology capable of destroying the online document and control method thereof
KR102051257B1 (en) System for preventing counterfeit of non face-to-face transactions based on blockchain
CN117480758A (en) Computer-implemented method and system for verifying certification on blockchain
EP4254234A1 (en) Digital credential issuing for an entity
KR102273960B1 (en) System for managing data for documents based on blockchain system
CN116361823A (en) Selective audit processing of blockchains for privacy protection
KR102178405B1 (en) Online document authentication system

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right