KR20210045636A - Method and System for user-driven document distribution between trusted institution based on block chain - Google Patents

Method and System for user-driven document distribution between trusted institution based on block chain Download PDF

Info

Publication number
KR20210045636A
KR20210045636A KR1020190128912A KR20190128912A KR20210045636A KR 20210045636 A KR20210045636 A KR 20210045636A KR 1020190128912 A KR1020190128912 A KR 1020190128912A KR 20190128912 A KR20190128912 A KR 20190128912A KR 20210045636 A KR20210045636 A KR 20210045636A
Authority
KR
South Korea
Prior art keywords
terminal
user
institution
hash information
key
Prior art date
Application number
KR1020190128912A
Other languages
Korean (ko)
Other versions
KR102268985B1 (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 KR1020190128912A priority Critical patent/KR102268985B1/en
Publication of KR20210045636A publication Critical patent/KR20210045636A/en
Application granted granted Critical
Publication of KR102268985B1 publication Critical patent/KR102268985B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • 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/3226Cryptographic 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 using a predetermined code, e.g. password, passphrase or PIN
    • 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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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

Abstract

The present invention relates to a method and system for user-led document distribution between trusted target based on blockchain. More specifically, the present invention relates to the method and system for user-led document distribution between trusted target based on blockchain capable of sending a document encrypted with a user's personal information to the user, verifying, by the user, a reliability of an institution that wants to receive the user's personal information through the hash information by registering the hash information of the user's information in a blockchain node, and sending a document encrypted with the user's personal information. Therefore, the present invention is capable of enhancing the security of sensitive personal information.

Description

블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법 및 시스템{Method and System for user-driven document distribution between trusted institution based on block chain}Method and System for user-driven document distribution between trusted institution based on block chain}

본 발명은 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법 및 시스템에 관한 것으로서, 더욱 상세하게는, 사용자의 개인정보를 암호화 한 문서를 사용자에게 송신하고, 블록체인 노드에 사용자의 정보의 해쉬정보를 등록하여, 사용자는 해당 해쉬정보를 통해 사용자의 개인정보를 제공받고자 하는 기관의 신뢰성을 검증하고, 사용자의 개인정보를 암호화 한 문서를 송신할 수 있는, 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법 및 시스템에 관한 것이다.The present invention relates to a method and system for distributing documents between trusted targets led by a blockchain-based user, and more particularly, to transmit a document encrypted with the user's personal information to the user, and hashing of the user's information to the blockchain node. By registering information, a user can verify the trustworthiness of an institution that wants to receive the user's personal information through the corresponding hash information, and can send a document that encrypts the user's personal information, a blockchain-based user-led trusted target. It relates to a document distribution method and system between.

현대사회에서 대다수의 기업들은 서비스를 제공하거나, 고객관리 마케팅 등을 위해 고객들에게 개인정보를 요구하고, 의료기관 혹은 보험회사와 같은 기관들은 사람들의 보다 민감한 개인정보를 보유한다. 이와 같이 개인정보를 보유한 기업들은 사람들의 개인정보를 공유함으로써, 부가가치를 창출할 수 있으나, 개인정보의 전달 과정에서의 보안성의 문제의 발생이 빈번하다.In modern society, most companies request personal information from customers for providing services or customer management marketing, and institutions such as medical institutions or insurance companies have more sensitive personal information of people. As such, companies holding personal information can create added value by sharing people's personal information, but security problems occur frequently in the process of delivering personal information.

이러한 민감한 개인정보를 해킹하여 악용하는 범죄는 매년 증가하고 있는 추세이며 정부에서도 이로 인한 피해를 방지하기 위해 지난 2011년에 개인 정보 보호법을 제정하기에 이르렀다. 이러한 개인 정보에 관한 규제로 인해 기업 간에 특정 개인의 정보의 공유가 필요한 상황에도 기업 대 기업으로 직접적인 정보 공유를 할 수 없는 실정이다.Crimes that hack and abuse such sensitive personal information are increasing every year, and the government also enacted the Personal Information Protection Act in 2011 to prevent damage caused by this. Due to such restrictions on personal information, direct information sharing between companies is not possible even in situations where it is necessary to share information of specific individuals between companies.

또한, 민감한 개인정보가 담긴 문서의 유통은 인터넷의 발달로 인해, 보다 가볍고 복제 및 보관에 유리한 전자문서의 형태로 유통되며, 전자 문서들은 해킹이나 내부 조작 등의 위험에 노출되어 있다. 제3자의 의하여 허가 없이 원본 문서의 위변조가 이루어질 수 있고, 권한을 가지지 않은 제3자가 권한자를 사칭하여 문서를 허위로 작성하는 것 또한 문제가 될 수 있다. In addition, due to the development of the Internet, documents containing sensitive personal information are distributed in the form of lighter and more advantageous electronic documents for copying and storage, and electronic documents are exposed to risks such as hacking or internal manipulation. The forgery of the original document without permission may be made by a third party, and it may also be a problem that a third party who does not have the authority impersonates the authority and creates a false document.

이와 같은 문제점은, 사용자가 직접 개인정보를 취급 및 유통함으로써 해결할 수 있으나, 사용자 측에서 개인정보를 제공하는 기관 혹은 업체에 대한 신뢰성 검증이 어렵다는 문제점이 발생한다. 이러한 문제점을 해결하기 위해서는, 사용자의 주도하에 정보를 제공하고자 하는 기관에 신뢰성 검증이 가능하고, 보안성이 보장되는 정보를 송수신 할 수 있는 방법이 필요하나 이러한 서비스를 제공하는 종래의 기술은 전무하다.This problem can be solved by directly handling and distributing personal information by the user, but there arises a problem that it is difficult to verify the reliability of an institution or company that provides personal information from the user's side. In order to solve this problem, a method of transmitting and receiving information that enables reliability verification and security guarantees to an organization that wants to provide information under the leadership of a user is required, but there is no conventional technology for providing such a service. .

본 발명은 사용자의 개인정보를 암호화 한 문서를 사용자에게 송신하고, 블록체인 노드에 사용자의 정보의 해쉬정보를 등록하여, 사용자는 해당 해쉬정보를 통해 사용자의 개인정보를 제공받고자 하는 기관의 신뢰성을 검증하고, 사용자의 개인정보를 암호화 한 문서를 송신할 수 있는, 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법 및 시스템을 제공하는 것을 목적으로 한다.The present invention transmits a document in which the user's personal information is encrypted to the user, and registers hash information of the user's information on a blockchain node, so that the user can secure the reliability of an institution that wants to receive the user's personal information through the hash information. The purpose of this is to provide a method and system for document distribution between trusted targets led by users based on a block chain that can verify and transmit documents that encrypt the user's personal information.

상기와 같은 과제를 해결하기 위하여 본 발명은, 사용자의 단말기 및 블록체인네트워크에 접속할 수 있는 제1기관의 단말기 및 제2기관의 단말기에 의하여 수행되는 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법으로서, 사용자의 단말기에 의하여, 사용자의 공개키를 생성하고, 상기 사용자의 공개키를 포함하는 인증서 및 사용자정보요청을 제1기관의 단말기로 송신하는 인증서송신단계; 및 제1기관의 단말기에 의하여, 수신한 상기 사용자정보요청에 따라 대칭키를 생성하고, 생성한 상기 대칭키에 의하여 송신데이터를 암호화한 암호화송신데이터 및 상기 대칭키를 상기 사용자의 공개키로 암호화한 제1암호화키데이터를 생성하여 사용자의 단말기로 송신하는 단계;를 포함하는 사용자정보요청단계; 제1기관의 단말기에 의하여, 상기 암호화송신데이터의 해쉬정보 및 상기 송신데이터의 해쉬정보 중 1 이상을 포함하는 검증해쉬정보를 도출하여 상기 검증해쉬정보를 블록체인네트워크의 블록체인노드에 송신하는 블록체인저장단계; 및 제2기관의 단말기에 의하여, 상기 블록체인노드에 상기 검증해쉬정보에 대한 요청을 송신하고, 상기 블록체인노드로부터 상기 검증해쉬정보를 수신하는 해쉬정보수신단계;를 포함하는 신뢰된 대상 간 문서유통 방법을 제공한다.In order to solve the above problems, the present invention provides document distribution between a user's terminal and a blockchain-based user-led trusted target performed by a terminal of a first institution and a terminal of a second institution that can access the blockchain network. A method comprising: a certificate sending step of generating a user's public key by a user's terminal, and transmitting a certificate including the user's public key and a user information request to a terminal of a first institution; And by the terminal of the first institution, generating a symmetric key according to the received user information request, and encrypting the transmitted data encrypted by the generated symmetric key and the symmetric key encrypted with the user's public key. Generating first encryption key data and transmitting the first encryption key data to the user's terminal; A block that derives verification hash information including at least one of the hash information of the encrypted transmission data and the hash information of the transmission data by the terminal of the first institution and transmits the verification hash information to the blockchain node of the blockchain network. Chain storage step; And a hash information receiving step of transmitting a request for the verification hash information to the block chain node by a terminal of the second institution and receiving the verification hash information from the block chain node; Provide distribution methods.

본 발명의 일 실시예에서는, 상기 사용자정보요청단계는, 사용자의 단말기에 의하여, 사용자의 공개키 및 사용자의 개인키를 생성하고, 상기 사용자의 공개키를 포함하는 인증서 및 사용자정보요청을 제1기관의 단말기로 송신하는 인증서송신단계; 제1기관의 단말기에 의하여, 상기 대칭키를 생성하는 단계; 제1기관의 단말기에 의하여, 생성된 상기 대칭키에 의하여 송신데이터의 암호화를 수행하여 암호화송신데이터를 생성하는 단계; 제1기관의 단말기에 의하여, 사용자의 단말기로부터 수신한 상기 인증서에 포함된 상기 사용자의 공개키로 상기 대칭키를 암호화하여 제1암호화키데이터를 생성하는 단계; 및 제1기관의 단말기에 의하여, 상기 암호화송신데이터 및 상기 제1암호화키데이터를 사용자의 단말기로 송신하는 단계;를 포함할 수 있다.In an embodiment of the present invention, in the user information request step, a user's public key and a user's private key are generated by the user's terminal, and a certificate including the user's public key and a user information request are first requested. A certificate transmission step of transmitting to the terminal of the institution; Generating the symmetric key by a terminal of the first institution; Generating encrypted transmission data by encrypting transmission data using the generated symmetric key by a terminal of the first institution; Generating first encryption key data by encrypting the symmetric key with the user's public key included in the certificate received from the user's terminal, by a terminal of the first institution; And transmitting the encrypted transmission data and the first encryption key data to a user's terminal by a terminal of the first institution.

본 발명의 일 실시예에서는, 상기 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법은, 제2기관의 단말기에 의하여, 제2기관의 공개키 및 제2기관의 개인키를 생성하고, 상기 블록체인노드로부터 수신한 상기 검증해쉬정보 및 상기 제2기관의 공개키를 사용자의 단말기로 송신하는 기관인증요청단계; 및 사용자의 단말기에 의하여, 제2기관의 단말기로부터 수신한 상기 검증해쉬정보를 검증하고, 상기 검증해쉬정보의 검증결과에 따라 상기 제2기관의 공개키에 의하여 암호화된 대칭키인 제2암호화키데이터 및 상기 암호화송신데이터를 제2기관의 단말기로 송신하는 기관인증단계;를 더 포함할 수 있다.In one embodiment of the present invention, the block chain-based user-led document distribution method between trusted targets generates, by a terminal of the second institution, a public key of the second institution and a private key of the second institution, An agency authentication request step of transmitting the verification hash information received from the blockchain node and the public key of the second agency to the user's terminal; And a second encryption key that verifies the verification hash information received from the terminal of the second institution by the user's terminal, and is a symmetric key encrypted by the public key of the second institution according to the verification result of the verification hash information. It may further include an agency authentication step of transmitting the data and the encrypted transmission data to the terminal of the second institution.

본 발명의 일 실시예에서는, 상기 기관인증단계는, 사용자의 단말기에 의하여, 상기 검증해쉬정보를 검증하는 단계; 사용자의 단말기에 의하여, 상기 검증해쉬정보의 검증이 완료된 경우, 상기 대칭키를 상기 제2기관의 공개키로 암호화하여 제2암호화키데이터를 생성하는 단계; 및 사용자의 단말기에 의하여, 상기 제2암호화키데이터 및 제1기관의 단말기로부터 수신한 상기 암호화송신데이터를 제2기관의 단말기로 송신하는 단계;를 포함할 수 있다.In an embodiment of the present invention, the agency authentication step includes: verifying the verification hash information by the user's terminal; Generating second encryption key data by encrypting the symmetric key with the public key of the second institution when the verification of the verification hash information is completed by the user's terminal; And transmitting, by the user's terminal, the second encryption key data and the encrypted transmission data received from the terminal of the first institution to the terminal of the second institution.

본 발명의 일 실시예에서는, 상기 검증해쉬정보를 검증하는 단계는, 상기 사용자의 단말기에 의하여, 제1기관의 단말기로부터 수신한 암호화송신데이터에 대한 해쉬정보를 도출하는 해쉬도출단계; 및 상기 사용자의 단말기에 의하여, 제2기관의 단말기로부터 수신한 검증해쉬정보 및 상기 해쉬도출단계에서 도출한 암호화송신데이터에 대한 해쉬정보의 일치여부를 판별하여 해쉬정보를 검증하는 단계;를 포함할 수 있다.In an embodiment of the present invention, the step of verifying the verification hash information may include, by the user's terminal, a hash derivation step of deriving hash information on the encrypted transmission data received from the terminal of the first institution; And verifying the hash information by determining, by the user's terminal, whether the verification hash information received from the terminal of the second institution and the hash information corresponding to the encrypted transmission data derived in the hash extraction step are matched. I can.

본 발명의 일 실시예에서는, 상기 제2암호화키데이터를 생성하는 단계는, 사용자의 단말기에 의하여, 제1기관의 단말기로부터 수신한 제1암호화키데이터를 사용자의 개인키로 복호화하는 단계; 및 사용자의 단말기에 의하여, 상기 제1암호화키데이터로부터 복호화한 대칭키를 상기 제2기관의 공개키로 암호화하여 제2암호화키데이터를 생성하는 단계;를 포함할 수 있다.In an embodiment of the present invention, the generating of the second encryption key data includes: decrypting, by the user's terminal, the first encryption key data received from the terminal of the first institution with the user's private key; And generating second encryption key data by encrypting the symmetric key decrypted from the first encryption key data by the user's terminal with the public key of the second institution.

본 발명의 일 실시예에서는, 상기 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법은, 상기 제2기관의 단말기에 의하여, 제2기관의 개인키에 의하여 상기 제2암호화키데이터로부터 상기 대칭키를 복호화하고, 복호화된 상기 대칭키에 의하여 상기 암호화송신데이터로부터 상기 송신데이터를 복호화하는 복호화단계;를 더 포함할 수 있다.In an embodiment of the present invention, the method of distributing documents between trusted targets led by a user based on a blockchain is symmetrical from the second encryption key data by the terminal of the second institution, by the private key of the second institution. It may further include a decryption step of decrypting a key and decrypting the transmission data from the encrypted transmission data using the decrypted symmetric key.

상기와 같은 과제를 해결하기 위하여, 본 발명의 일 실시예는, 사용자의 단말기 및 블록체인네트워크에 접속할 수 있는 제1기관의 단말기 및 제2기관의 단말기에 의하여 구현되는 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 시스템으로서, 사용자의 단말기는 사용자의 공개키를 생성하고, 상기 사용자의 공개키를 포함하는 인증서 및 사용자정보요청을 제1기관의 단말기로 송신하고, 제1기관의 단말기는 수신한 상기 사용자정보요청에 따라 대칭키를 생성하고, 제1기관의 단말기는 생성한 상기 대칭키에 의하여 송신데이터를 암호화한 암호화송신데이터 및 상기 대칭키를 상기 사용자의 공개키로 암호화한 제1암호화키데이터를 생성하여 사용자의 단말기로 송신하고, 제1기관의 단말기는 상기 암호화송신데이터의 해쉬정보 및 상기 송신데이터의 해쉬정보 중 1 이상을 포함하는 검증해쉬정보를 도출하여 해당 해쉬정보를 블록체인네트워크의 블록체인노드에 송신하고, 제2기관의 단말기는, 상기 블록체인노드에 상기 검증해쉬정보에 대한 요청을 송신하고, 제2기관의 단말기는, 상기 블록체인노드로부터 상기 검증해쉬정보를 수신하는, 신뢰된 대상 간 문서유통 시스템을 제공한다.In order to solve the above problems, an embodiment of the present invention provides a blockchain-based user-led trust implemented by a terminal of a first institution and a terminal of a second institution that can access the user's terminal and the blockchain network. As a document distribution system between targets, the user's terminal generates the user's public key, transmits a certificate including the user's public key and a user information request to the terminal of the first institution, and the terminal of the first institution receives A symmetric key is generated according to the user information request, and the terminal of the first institution encrypts the transmission data using the generated symmetric key, and the encrypted transmission data and the first encryption key that encrypts the symmetric key with the user's public key. Data is generated and transmitted to the user's terminal, and the terminal of the first institution derives verification hash information including at least one of the hash information of the encrypted transmission data and the hash information of the transmission data, and sends the hash information to the blockchain network. And the second institution's terminal transmits a request for the verification hash information to the blockchain node, and the second institution's terminal receives the verification hash information from the blockchain node. In addition, it provides a document distribution system between trusted targets.

본 발명의 일 실시예에 따르면, 기관 대 기관으로 직접적인 사용자의 개인정보를 송수신하지 않고, 사용자 주도 하에 암호화 한 데이터의 송수신을 함으로써, 개인정보를 제공에 관한 규제를 위반하지 않고, 민감한 개인정보의 보안성을 강화시킬 수 있는 효과를 발휘할 수 있다.According to an embodiment of the present invention, the user's personal information is not transmitted and received directly from an organization to an organization, and encrypted data is transmitted and received under the direction of the user, without violating the regulations on provision of personal information, and of sensitive personal information. It can exert an effect that can enhance security.

본 발명의 일 실시예에 따르면, 사용자의 단말기로 사용자의 공개키에 의하여 암호화 된 개인정보를 송신하고, 기관의 신뢰성을 검증하기 위한 해쉬정보를 블록체인노드에 저장함으로써, 사용자는 해쉬정보의 검증을 통해 사용자의 개인정보를 제공할 기관의 신뢰성을 검증하여, 신뢰할 수 없는 기관으로의 개인정보 유출을 방지할 수 있는 효과를 발휘할 수 있다.According to an embodiment of the present invention, by transmitting personal information encrypted by the user's public key to the user's terminal and storing hash information for verifying the reliability of the institution in the blockchain node, the user can verify the hash information. Through this, the reliability of the organization that will provide the user's personal information can be verified, and the effect of preventing the leakage of personal information to untrusted organizations can be exerted.

본 발명의 일 실시예에 따르면, 사용자의 개인정보를 제공받을 기관은 블록체인노드로부터 수신한 해쉬정보를 송신하여 기관의 신뢰성을 인정받을 수 있고, 기관의 공개키로 암호화 된 데이터를 송수신함으로써, 민감한 사용자의 개인정보의 보안성을 강화시킬 수 있는 효과를 발휘할 수 있다.According to an embodiment of the present invention, the institution to be provided with the user's personal information can be recognized for the reliability of the institution by transmitting the hash information received from the blockchain node, and by transmitting and receiving data encrypted with the institution's public key, It can exert an effect that can enhance the security of user's personal information.

본 발명의 일 실시예에 따르면, 사용자 주도 하에 각각의 사용자 및 기관의 공개키 및 개인키에 의한 암호화 및 복호화를 수행하여 데이터를 송수신함으로써, 송수신하는 데이터의 보안성을 강화시킬 수 있는 효과를 발휘할 수 있다.According to an embodiment of the present invention, by performing encryption and decryption by the public and private keys of each user and organization under the direction of the user to transmit and receive data, the effect of enhancing the security of the transmitted and received data can be exerted. I can.

본 발명의 일 실시예에 따르면, 블록체인노드를 통해 수신한 해쉬정보를 검증하여 사용자는 사용자의 개인정보를 제공받고자 하는 기관의 신뢰성을 검증하고, 사용자의 개인정보를 제공하고자 하는 기관으로부터 생성된 암호화데이터를 송신해줌으로써, 제3자에 의한 데이터의 위변조를 방지할 수 있는 효과를 발휘할 수 있다.According to an embodiment of the present invention, by verifying the hash information received through the blockchain node, the user verifies the reliability of the organization that wants to receive the user's personal information, and is generated by the organization that wants to provide the user's personal information. By transmitting the encrypted data, it is possible to exert an effect of preventing forgery and alteration of data by a third party.

도 1은 본 발명의 일 실시예에 따른 블록체인 기반 사용자 주도의 신뢰된 대상간 문서 유통 방법의 전체적인 시스템 형태를 개략적으로 도시한다.
도 2는 본 발명의 일 실시예에 따른 블록체인 기반 사용자 주도의 신뢰된 대상간 문서 유통 방법의 전체적인 수행 과정의 단계들을 개략적으로 도시한다.
도 3은 본 발명의 일 실시예에 따른 사용자정보요청단계의 수행 과정을 개략적으로 도시한다.
도 4는 본 발명의 일 실시예에 따른 블록체인저장단계, 해쉬정보수신단계, 기관인증요청단계, 기관인증단계 및 복호화단계의 수행 과정을 개략적으로 도시한다.
도 5는 본 발명의 일 실시예에 따른 검증해쉬정보의 검증 과정을 개략적으로 도시한다.
도 6은 본 발명의 일 실시예에 따른 제2암호화키데이터의 생성 과정을 개략적으로 도시한다.
도 7은 본 발명의 일 실시예에 따른 컴퓨팅 장치의 내부구성을 개략적으로 도시한다.
1 schematically shows the overall system form of a method for distributing documents between trusted objects led by a block chain based user according to an embodiment of the present invention.
FIG. 2 schematically shows the steps of the overall execution process of a method of distributing documents between trusted objects led by a block chain-based user according to an embodiment of the present invention.
3 schematically shows a process of performing a user information request step according to an embodiment of the present invention.
4 schematically shows a process of performing a block chain storage step, a hash information reception step, an agency authentication request step, an agency authentication step, and a decryption step according to an embodiment of the present invention.
5 schematically shows a verification process of verification hash information according to an embodiment of the present invention.
6 schematically illustrates a process of generating second encryption key data according to an embodiment of the present invention.
7 schematically illustrates an internal configuration of a computing device according to an embodiment of the present invention.

다양한 실시예들이 이제 도면을 참조하여 설명되며, 전체 도면에서 걸쳐 유사한 도면번호는 유사한 구성요소를 나타내기 위해서 사용된다. 본 명세서에서, 다양한 설명들이 본 발명의 이해를 제공하기 위해서 제시된다. 그러나 이러한 실시예들은 이러한 구체적인 설명 없이도 실행될 수 있음이 명백하다. 다른 예들에서, 공지된 구조 및 장치들은 실시예들의 설명을 용이하게 하기 위해서 블록 다이어그램 형태로 제공된다.Various embodiments will now be described with reference to the drawings, in which like reference numbers are used to indicate like elements throughout the drawings. In this specification, various descriptions are presented to provide an understanding of the invention. However, it is clear that these embodiments may be implemented without such detailed description. In other examples, well-known structures and devices are provided in block diagram form to facilitate description of the embodiments.

본 명세서에서 사용되는 용어 "컴포넌트", "모듈", "시스템", "~부" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭한다. 예를 들어, 컴포넌트는 프로세서상에서 실행되는 처리과정, 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트는 프로세서 및/또는 실행 스레드 내에 상주할 수 있고, 일 컴포넌트는 하나의 컴퓨터As used herein, the terms "component", "module", "system", "~ unit" and the like refer to a computer-related entity, hardware, firmware, software, a combination of software and hardware, or execution of software. For example, a component may be, but is not limited to, a process executed on a processor, a processor, an object, an execution thread, a program, and/or a computer. For example, both an application running on a computing device and a computing device may be components. One or more components may reside within a processor and/or thread of execution, and one component is a computer

내에 로컬화될 수 있고, 또는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 컴포넌트들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다. 컴포넌트들은 예를 들어 하나 이상의 데이터 패킷들을 갖는 신호(예를 들면, 로컬 시스템, 분산 시스템에서 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터 데이터 및/또는 신호를 통해 다른 시스템과 인터넷과 같은 네트워크를 통한 데이터)에 따라 로컬 및/또는 원격 처리들을 통해 통신할 수 있다. It can be localized within, or it can be distributed between two or more computers. In addition, these components can execute from a variety of computer readable media having various data structures stored therein. Components are, for example, signals with one or more data packets (e.g., data from one component interacting with another component in a local system, a distributed system, and/or data via a signal over another system and a network such as the Internet. ) To communicate via local and/or remote processes.

또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하지만, 하나이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다.In addition, the terms "comprising" and/or "comprising" mean that the corresponding feature and/or component is present, but excludes the presence or addition of one or more other features, components, and/or groups thereof. It should be understood as not doing.

또한, 제1, 제2등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1구성요소는 제2구성요소로 명명될 수 있고, 유사하게 제2구성요소도 제1구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.In addition, 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. The terms are used only for the purpose of distinguishing one component from another component. For example, without departing from the scope of the present invention, a first element may be referred to as a second element, and similarly, a second element may be referred to as a first element. The term and/or includes a combination of a plurality of related listed items or any of a plurality of related listed items.

또한, 본 발명의 실시예들에서, 별도로 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 발명의 실시예에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.In addition, in the embodiments of the present invention, unless otherwise defined, all terms used herein including technical or scientific terms are generally understood by those of ordinary skill in the art to which the present invention belongs. It has the same meaning as. Terms as defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and unless explicitly defined in the embodiments of the present invention, an ideal or excessively formal meaning Is not interpreted as.

이하에서 언급되는 "사용자 단말"은 네트워크를 통해 서버나 타 단말에 접속할 수 있는 컴퓨터나 휴대용 단말기로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop) 등을 포함하고, 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말 등과 같은 모든 종류의 핸드헬드 (Handheld) 기반의 무선 통신 장치를 포함할 수 있다. 또한, "네트워크"는 근거리 통신망(Local Area Network;LAN), 광역 통신망(Wide Area Network; WAN) 또는 부가가치 통신망(Value Added Network; VAN) 등과 같은 유선네트워크나 이동 통신망(mobile radio communication network) 또는 위성 통신망 등과 같은 모든 종류의 무선 네트워크로 구현될 수 있다.The "user terminal" mentioned below may be implemented as a computer or portable terminal that can access a server or other terminal through a network. Here, the computer includes, for example, a notebook equipped with a web browser, a desktop, a laptop, and the like, and the portable terminal is, for example, a wireless communication device that guarantees portability and mobility. , PCS (Personal Communication System), GSM (Global System for Mobile communications), PDC (Personal Digital Cellular), PHS (Personal Handyphone System), PDA (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet) terminal, etc. may include all kinds of handheld-based wireless communication devices. In addition, the "network" refers to a wired network such as a local area network (LAN), a wide area network (WAN), or a value added network (VAN), or a mobile radio communication network or satellite. It can be implemented with any type of wireless network such as a communication network.

도 1은 본 발명의 일 실시예에 따른 블록체인 기반 사용자 주도의 신뢰된 대상간 문서 유통 방법의 전체적인 시스템 형태를 개략적으로 도시한다.1 schematically shows the overall system form of a method for distributing documents between trusted objects led by a block chain based user according to an embodiment of the present invention.

도 1의 사용자의 단말기(1000), 제1기관의 단말기(2000) 및 제2기관의 단말기(3000)는 전술한 사용자 단말에 해당할 수 있고, 제1기관의 단말기(2000) 및 제2기관의 단말기(3000)는 블록체인네트워크에 접속할 수 있다. 본 발명에 따른 블록체인네트워크는 신뢰 된 대상간 문서 유통 방법을 수행하기 위한 전용의 블록체인네트워크에 해당할 수도 있다. 블록체인네트워크는 기관이 송신하는 해쉬정보를 저장하고, 추후에 다른 기관에서 해당 해쉬정보를 블록체인네트워크를 통해 수신하여 검증, 확인 등에 있어서 사용될 수 있다.The user's terminal 1000, the first institution's terminal 2000, and the second institution's terminal 3000 in FIG. 1 may correspond to the above-described user terminals, and the first institution's terminal 2000 and the second institution The terminal 3000 of can access the blockchain network. The blockchain network according to the present invention may correspond to a dedicated blockchain network for performing the document distribution method between trusted objects. The blockchain network stores the hash information transmitted by the institution, and can be used for verification and verification by receiving the hash information from another institution later through the blockchain network.

제1기관의 단말기(2000) 및 제2기관의 단말기(3000)는 블록체인네트워크를 구성하는 1 이상의 노드에 접속할 수 있다. 기관에서 송신하는 해쉬정보는 1 이상의 노드 중 어느 하나에 저장될 수 있고, 해당 노드의 주소를 공유함으로써, 기관의 신뢰성을 검증하기 위하여 해당 노드의 주소를 통해 해당 노드에 접속하고, 기관의 신뢰성을 검증하기 위한 해쉬정보를 수신할 수 있다.The terminal 2000 of the first institution and the terminal 3000 of the second institution may access one or more nodes constituting a blockchain network. The hash information transmitted by the organization can be stored in any one of one or more nodes, and by sharing the address of the node, the node is accessed through the address of the node to verify the reliability of the organization, and the reliability of the organization is verified. It is possible to receive hash information for verification.

이하에서는, 사용자의 단말기(1000), 제1기관의 단말기(2000) 및 제2기관의 단말기(3000)의 동작에 대하여 더욱 자세하게 설명하도록 한다.Hereinafter, operations of the user's terminal 1000, the first institution's terminal 2000, and the second institution's terminal 3000 will be described in more detail.

도 2는 본 발명의 일 실시예에 따른 블록체인 기반 사용자 주도의 신뢰된 대상간 문서 유통 방법의 전체적인 수행 과정의 단계들을 개략적으로 도시한다.FIG. 2 schematically shows the steps of the overall execution process of a method of distributing documents between trusted objects led by a block chain-based user according to an embodiment of the present invention.

본 발명의 사용자의 단말기(1000), 제1기관의 단말기(2000) 및 제2기관의 단말기(3000)는 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법을 수행할 수 있다. 개략적으로, 사용자의 개인정보를 암호화 한 문서를 사용자에게 송신하고, 블록체인 노드에 사용자의 정보의 해쉬정보를 등록하여, 사용자는 해당 해쉬정보를 통해 사용자의 개인정보를 제공받고자 하는 기관의 신뢰성을 검증하고, 사용자의 개인정보를 암호화 한 문서를 송신할 수 있다. 도 2는 본 발명의 사용자의 단말기(1000), 제1기관의 단말기(2000), 및 제2기관의 단말기(3000)에 의하여 사용자정보요청단계, 블록체인저장단계, 해쉬정보수신단계, 기관인증요청단계, 기관인증요청단계 및 복호화단계를 수행하는 과정을 도시한다. 구체적으로, 사용자의 단말기(1000) 및 블록체인네트워크에 접속할 수 있는 제1기관의 단말기(2000) 및 제2기관의 단말기(3000)에 의하여 수행되는 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법은, 사용자의 단말기(1000)에 의하여, 사용자의 공개키를 생성하고, 상기 사용자의 공개키를 포함하는 인증서 및 사용자정보요청을 제1기관의 단말기(2000)로 송신하는 인증서송신단계(S1000); 및 제1기관의 단말기(2000)에 의하여, 수신한 상기 사용자등록요청에 따라 대칭키를 생성하고, 생성한 상기 대칭키에 의하여 송신데이터를 암호화한 암호화송신데이터 및 상기 대칭키를 상기 사용자의 공개키로 암호화한 제1암호화키데이터를 생성하여 사용자의 단말기(1000)로 송신하는 단계(S2000);를 포함하는 사용자정보요청단계; 제1기관의 단말기(2000)에 의하여, 상기 암호화송신데이터의 해쉬정보 및 상기 송신데이터의 해쉬정보 중 1 이상을 포함하는 검증해쉬정보를 도출하여 상기 검증해쉬정보를 블록체인네트워크의 블록체인노드에 송신하는 블록체인저장단계(S3000); 및 제2기관의 단말기(3000)에 의하여, 상기 블록체인노드에 상기 검증해쉬정보에 대한 요청을 송신하고, 상기 블록체인노드로부터 상기 검증해쉬정보를 수신하는 해쉬정보수신단계(S4000); 제2기관의 단말기(3000)에 의하여, 제2기관의 공개키 및 제2기관의 개인키를 생성하고, 상기 블록체인노드로부터 수신한 상기 검증해쉬정보 및 상기 제2기관의 공개키를 사용자의 단말기(1000)로 송신하는 기관인증요청단계(S5000); 사용자의 단말기(1000)에 의하여, 제2기관의 단말기(3000)로부터 수신한 상기 검증해쉬정보를 검증하고, 상기 검증해쉬정보의 검증결과에 따라 상기 제2기관의 공개키에 의하여 암호화된 대칭키인 제2암호화키데이터 및 상기 암호화송신데이터를 제2기관의 단말기(3000)로 송신하는 기관인증단계(S6000); 및 상기 제2기관의 단말기(3000)에 의하여, 제2기관의 개인키에 의하여 상기 제2암호화키데이터로부터 상기 대칭키를 복호화하고, 복호화된 상기 대칭키에 의하여 상기 암호화송신데이터로부터 상기 송신데이터를 복호화하는 복호화단계(S7000);를 포함한다.The terminal 1000 of the user, the terminal 2000 of the first institution, and the terminal 3000 of the second institution of the present invention may perform a method of distributing documents between trusted targets led by a block chain-based user. Schematically, by sending a document encrypted with the user's personal information to the user, and by registering the hash information of the user's information on the blockchain node, the user can verify the reliability of the institution that wants to receive the user's personal information through the hash information. It can verify and send a document that encrypts the user's personal information. 2 is a user information request step, a block chain storage step, a hash information receiving step, an agency authentication by the user's terminal 1000, the first institution's terminal 2000, and the second institution's terminal 3000 of the present invention. It shows the process of performing the request step, the agency authentication request step, and the decryption step. Specifically, document distribution between the user's terminal 1000 and a blockchain-based user-led trusted target performed by the terminal 2000 of the first institution and the terminal 3000 of the second institution that can access the blockchain network. The method includes a certificate transmission step of generating a user's public key by the user's terminal 1000 and transmitting a certificate including the user's public key and a user information request to the terminal 2000 of the first institution (S1000). ); And, by the terminal 2000 of the first institution, a symmetric key is generated according to the received user registration request, and the encrypted transmission data and the symmetric key encrypted by the generated symmetric key are disclosed to the user. A step of generating first encryption key data encrypted with a key and transmitting it to the user's terminal 1000 (S2000); By the terminal 2000 of the first institution, the verification hash information including at least one of the hash information of the encrypted transmission data and the hash information of the transmission data is derived, and the verification hash information is transferred to the blockchain node of the blockchain network. Blockchain storage step of transmitting (S3000); And a hash information receiving step (S4000) of transmitting a request for the verification hash information to the block chain node by the terminal 3000 of the second institution and receiving the verification hash information from the block chain node (S4000). By the terminal 3000 of the second institution, the public key of the second institution and the private key of the second institution are generated, and the verification hash information received from the blockchain node and the public key of the second institution are transmitted to the user. Agency authentication request step (S5000) for transmitting to the terminal 1000; By the user's terminal 1000, the verification hash information received from the terminal 3000 of the second institution is verified, and a symmetric key encrypted by the public key of the second institution according to the verification result of the verification hash information Institution authentication step (S6000) of transmitting the second encryption key data and the encrypted transmission data to the terminal 3000 of the second institution; And decrypting the symmetric key from the second encryption key data using the private key of the second institution by the terminal 3000 of the second institution, and the transmission data from the encrypted transmission data using the decrypted symmetric key. It includes; a decoding step (S7000) of decoding the.

구체적으로, 인증서송신단계(S1000)에서는, 사용자의 단말기(1000)는, 사용자의 공개키를 생성한다. 이후, 사용자의 공개키를 포함하는 인증서 및 사용자정보요청을 제1기관의 단말기(2000)로 송신한다.Specifically, in the certificate transmission step (S1000), the user's terminal 1000 generates the user's public key. Thereafter, a certificate including the user's public key and a user information request are transmitted to the terminal 2000 of the first institution.

단계S2000에서는, 제1기관의 단말기(2000)는, 수신한 사용자정보요청에 따라 대칭키를 생성한다. 대칭키를 생성한 후, 사용자의 단말기(1000)로 송신할 송신데이터를 대칭키로 암호화하여 암호화송신데이터를 생성하고, 상기 대칭키를 사용자의 단말기(1000)로부터 수신한 사용자의 공개키로 암호화하여 제1암호화키데이터를 생성한다. 이후, 생성한 암호화송신데이터 및 제1암호화키데이터를 사용자의 단말기(1000)로 송신한다.In step S2000, the terminal 2000 of the first institution generates a symmetric key according to the received user information request. After generating the symmetric key, the transmission data to be transmitted to the user's terminal 1000 is encrypted with a symmetric key to generate the encrypted transmission data, and the symmetric key is encrypted with the user's public key received from the user's terminal 1000 1 Generate encryption key data. Thereafter, the generated encrypted transmission data and the first encryption key data are transmitted to the user's terminal 1000.

블록체인저장단계(S3000)에서는, 제1기관의 단말기(2000)는, S2000단계에서 생성한 암호화송신데이터의 해쉬정보 및 상기 송신데이터의 해쉬정보 중 1 이상을 포함하는 검증해쉬정보를 도출하고, 상기 검증해쉬정보를 블록체인네트워크의 블록체인노드에 송신하고, 블록체인노드에는 해당 해쉬정보가 저장된다.In the block chain storage step (S3000), the terminal 2000 of the first institution derives verification hash information including at least one of the hash information of the encrypted transmission data generated in step S2000 and the hash information of the transmission data, The verification hash information is transmitted to the blockchain node of the blockchain network, and the corresponding hash information is stored in the blockchain node.

블록체인네트워크는 수많은 정보를 저장할 수 있는 복수의 노드를 포함하고, 어떤 정보가 저장된 노드로 정보를 송신하거나 노드로부터 정보를 수신하기 위해서는 송수신하고자 하는 단말기에서 노드의 주소값이 필요할 수 있다. 바람직하게는, 본 발명의 일 실시예에서는, 제1기관의 단말기(2000)는 해쉬정보를 송신한 블록체인노드의 주소값을 사용자의 단말기(1000)로 송신하고, 사용자의 단말기(1000)는, 수신한 블록체인노드의 주소값을 제2기관의 단말기(3000)로 송신할 수 있다. 본 발명의 다른 실시예에서는, 제1기관의 단말기(2000)는 해쉬정보를 송신한 블록체인노드의 주소값을 제2기관의 단말기(3000)로 송신할 수 있다.The blockchain network includes a plurality of nodes capable of storing a large number of information, and in order to transmit information to or receive information from a node where certain information is stored, the address value of the node may be required in the terminal to be transmitted/received. Preferably, in one embodiment of the present invention, the terminal 2000 of the first institution transmits the address value of the blockchain node that has transmitted the hash information to the terminal 1000 of the user, and the terminal 1000 of the user , The address value of the received blockchain node may be transmitted to the terminal 3000 of the second institution. In another embodiment of the present invention, the terminal 2000 of the first institution may transmit the address value of the block chain node that transmitted the hash information to the terminal 3000 of the second institution.

해쉬정보수신단계(S4000)에서는, 제2기관의 단말기(3000)는, 블록체인노드의 주소값에 따라 해당 주소값을 가진 블록체인노드로 암호화송신데이터의 해쉬정보에 대한 요청을 송신한다. 제2기관의 단말기(3000)는 해쉬정보의 요청을 수신한 블록체인노드로부터 암호화송신데이터의 해쉬정보를 수신한다.In the hash information receiving step (S4000), the terminal 3000 of the second institution transmits a request for hash information of the encrypted transmission data to the block chain node having the corresponding address value according to the address value of the block chain node. The terminal 3000 of the second institution receives the hash information of the encrypted transmission data from the block chain node that has received the request for the hash information.

이후, 기관인증요청단계(S5000)에서는, 제2기관의 단말기(3000)는 제2기관의 공개키 및 제2기관의 개인키를 생성한다. 이후, 블록체인노드로부터 수신한 암호화송신데이터의 해쉬정보 및 생성한 제2기관의 공개키를 사용자의 단말기(1000)로 송신한다.Thereafter, in the agency authentication request step (S5000), the terminal 3000 of the second agency generates a public key of the second agency and a private key of the second agency. Thereafter, the hash information of the encrypted transmission data received from the blockchain node and the generated public key of the second institution are transmitted to the user's terminal 1000.

기관인증단계(S6000)에서는, 사용자의 단말기(1000)는 제2기관의 단말기(3000)로부터 수신한 암호화송신데이터의 해쉬정보를 검증한다. 이후, 해쉬정보의 검증결과에 따라 제2기관의 공개키에 의하여 암호화된 대칭키인 제2암호화키데이터를 생성하고, 제1기관의 단말기(2000)로부터 수신한 암호화송신데이터 및 생성한 제2암호화키데이터를 제2기관의 단말기(3000)로 송신한다.In the agency authentication step (S6000), the user's terminal 1000 verifies the hash information of the encrypted transmission data received from the terminal 3000 of the second institution. Thereafter, according to the verification result of the hash information, the second encryption key data, which is a symmetric key encrypted by the public key of the second institution, is generated, and the encrypted transmission data received from the terminal 2000 of the first institution and the generated second The encryption key data is transmitted to the terminal 3000 of the second institution.

이후, 복호화단계(S7000)에서는, 제2기관의 단말기(3000)는 사용자의 단말기(1000)로부터 수신한 제2암호화키데이터를 제2기관의 개인키로 복호화하여 대칭키를 도출하고, 복호화하여 도출된 대칭키에 의하여 수신한 암호화송신데이터를 복호화하여 송신데이터를 도출한다.Thereafter, in the decryption step (S7000), the terminal 3000 of the second institution decrypts the second encryption key data received from the user's terminal 1000 with the private key of the second institution to derive a symmetric key, and then decrypts it. The encrypted transmission data received by the symmetric key is decrypted to derive the transmission data.

이와 같은 방식으로, 기관 대 기관으로 직접적인 사용자의 개인정보를 송수신하지 않고, 사용자 주도 하에 암호화 한 데이터의 송수신을 함으로써, 개인정보를 제공에 관한 규제를 위반하지 않고, 민감한 개인정보의 보안성을 강화시킬 수 있는 효과를 발휘할 수 있다.In this way, by not sending and receiving personal information of users directly from agency to agency, but by sending and receiving encrypted data under the direction of the user, it does not violate regulations on provision of personal information and strengthens the security of sensitive personal information. The effect that can be made can be exerted.

도 3은 본 발명의 일 실시예에 따른 사용자정보요청단계, 블록체인저장단계 및 해쉬정보수신단계의 수행 과정을 개략적으로 도시한다.3 schematically shows a process of performing a user information request step, a block chain storage step, and a hash information receiving step according to an embodiment of the present invention.

구체적으로, 상기 사용자정보요청단계(S1000 및 S2000)는, 사용자의 단말기(1000)에 의하여, 사용자의 공개키 및 사용자의 개인키를 생성하고, 상기 사용자의 공개키를 포함하는 인증서 및 사용자정보요청을 제1기관의 단말기(2000)로 송신하는 인증서송신단계(A 및 B); 제1기관의 단말기(2000)에 의하여, 상기 대칭키를 생성하는 단계(C); 제1기관의 단말기(2000)에 의하여, 생성된 상기 대칭키에 의하여 송신데이터의 암호화를 수행하여 암호화송신데이터를 생성하는 단계(D); 제1기관의 단말기(2000)에 의하여, 사용자의 단말기(1000)로부터 수신한 상기 인증서에 포함된 상기 사용자의 공개키로 상기 대칭키를 암호화하여 제1암호화키데이터를 생성하는 단계(E); 및 제1기관의 단말기(2000)에 의하여, 상기 암호화송신데이터 및 상기 제1암호화키데이터를 사용자의 단말기(1000)로 송신하는 단계(F);를 포함하고, 상기 블록체인저장단계는, 제1기관의 단말기(2000)에 의하여, 상기 암호화송신데이터의 해쉬정보를 도출하는 단계(G); 제1기관의 단말기(2000)에 의하여, 도출한 해쉬정보를 블록체인네트워크의 블록체인노드로 송신하는 단계(H);를 포함하고, 상기 해쉬정보수신단계는, 제2기관의 단말기(3000)에 의하여, 암호화송신데이터의 해쉬정보가 저장된 블록체인노드로 해당 해쉬정보에 대한 요청을 송신하는 단계(I) 및 제2기관의 단말기(3000)에 의하여, 블록체인노드로부터 해쉬정보를 수신하는 단계(J)를 포함한다.Specifically, in the user information request steps (S1000 and S2000), the user's terminal 1000 generates a user's public key and a user's private key, and requests a certificate and user information including the user's public key. A certificate transmission step (A and B) of transmitting the message to the terminal 2000 of the first institution; Generating the symmetric key by the terminal 2000 of the first institution (C); (D) generating encrypted transmission data by encrypting transmission data using the generated symmetric key by the terminal 2000 of the first institution; (E) generating first encryption key data by encrypting the symmetric key with the user's public key included in the certificate received from the user's terminal 1000 by the terminal 2000 of the first institution; And (F) transmitting the encrypted transmission data and the first encryption key data to the user's terminal 1000 by the terminal 2000 of the first institution, wherein the block chain storage step includes: A step (G) of deriving hash information of the encrypted transmission data by the terminal 2000 of one institution; Including the step (H) of transmitting the derived hash information to the block chain node of the blockchain network by the terminal 2000 of the first institution, the hash information receiving step, the terminal 3000 of the second institution By, the step (I) of transmitting a request for the hash information to the block chain node in which the hash information of the encrypted transmission data is stored, and the step of receiving the hash information from the block chain node by the terminal 3000 of the second institution Includes (J).

단계(A)에서는, 사용자의 단말기(1000)는 사용자의 공개키 및 사용자의 개인키를 생성한다.In step (A), the user's terminal 1000 generates the user's public key and the user's private key.

단계(B)에서는, 사용자의 공개키를 포함하는 인증서 및 사용자정보요청을 제1기관의 단말기(2000)로 송신한다.In step (B), a certificate including a user's public key and a user information request are transmitted to the terminal 2000 of the first institution.

단계(C)에서는, 제1기관의 단말기(2000)는 수신한 사용자정보요청에 따라 송신데이터의 암호화를 수행할 대칭키를 생성한다.In step (C), the terminal 2000 of the first institution generates a symmetric key to encrypt transmission data according to the received user information request.

단계(D)에서는, 제1기관의 단말기(2000)는 생성된 대칭키에 의하여 송신데이터의 암호화를 수행하여 암호화송신데이터를 생성한다.In step (D), the terminal 2000 of the first institution encrypts the transmission data using the generated symmetric key to generate encrypted transmission data.

단계(E)에서는, 제1기관의 단말기(2000)는 사용자의 단말기(1000)로부터 수신한 인증서에 포함된 상기 사용자의 공개키로 대칭키를 암호화하여 제1암호화키데이터를 생성한다.In step (E), the terminal 2000 of the first institution encrypts the symmetric key with the user's public key included in the certificate received from the user's terminal 1000 to generate first encryption key data.

단계(F)에서는, 제1기관의 단말기(2000)는 단계(C)에서 생성한 암호화송신데이터 및 단계(D)에서 생성한 제1암호화키데이터를 사용자의 단말기(1000)로 송신한다.In step (F), the terminal 2000 of the first institution transmits the encrypted transmission data generated in step (C) and the first encryption key data generated in step (D) to the user's terminal 1000.

단계(G)에서는, 제1기관의 단말기(2000)는 단계(C)에서 생성한 암호화송신데이터의 해쉬정보 및 상기 송신데이터의 해쉬정보 중 1 이상을 포함하는 검증해쉬정보를 도출한다. 송신데이터를 대칭키로 암호화 한 암호화송신데이터의 해쉬함수를 적용하여 해쉬정보를 도출하거나 혹은 송신데이터에 해쉬함수를 적용하여 해쉬정보를 도출할 수 있다.In step (G), the terminal 2000 of the first institution derives verification hash information including at least one of hash information of the encrypted transmission data generated in step (C) and hash information of the transmission data. Hash information can be derived by applying the hash function of the encrypted transmission data in which transmission data is encrypted with a symmetric key, or hash information can be derived by applying a hash function to transmission data.

단계(H)에서는, 제1기관의 단말기(2000)는 도출한 검증해쉬정보를 블록체인네트워크의 블록체인노드로 송신한다. In step (H), the terminal 2000 of the first institution transmits the derived verification hash information to the blockchain node of the blockchain network.

단계(I)에서는, 제2기관의 단말기(3000)는 검증해쉬정보가 저장된 블록체인노드로 해당 검증해쉬정보에 대한 요청을 송신한다. 블록체인네트워크는 수많은 정보를 저장할 수 있는 복수의 블록체인노드를 포함하고, 어떤 정보가 저장된 블록체인노드로 정보를 송신하거나 블록체인노드로부터 정보를 수신하기 위해서는 송수신하고자 하는 단말기에서 블록체인노드의 주소값이 필요하다. 바람직하게는, 본 발명의 일 실시예에서는, 제1기관의 단말기(2000)는 해쉬정보를 송신한 블록체인노드의 주소값을 사용자의 단말기(1000)로 송신하고, 사용자의 단말기(1000)는, 수신한 블록체인노드의 주소값을 제2기관의 단말기(3000)로 송신할 수 있다. 본 발명의 다른 실시예에서는, 제1기관의 단말기(2000)는 해쉬정보를 송신한 블록체인노드의 주소값을 제2기관의 단말기(3000)로 송신할 수 있다. 이와 같이, 블록체인노드의 주소값을 통해 제2기관의 단말기(3000)는 해당 주소값을 가진 블록체인노드로 해쉬정보에 대한 요청을 송신한다.In step (I), the terminal 3000 of the second institution transmits a request for the verification hash information to the blockchain node in which the verification hash information is stored. The blockchain network includes a plurality of blockchain nodes that can store a lot of information, and in order to transmit information to or receive information from the blockchain node where certain information is stored, the address of the blockchain node in the terminal to be transmitted/received. I need a value. Preferably, in one embodiment of the present invention, the terminal 2000 of the first institution transmits the address value of the blockchain node that has transmitted the hash information to the terminal 1000 of the user, and the terminal 1000 of the user , The address value of the received blockchain node may be transmitted to the terminal 3000 of the second institution. In another embodiment of the present invention, the terminal 2000 of the first institution may transmit the address value of the block chain node that has transmitted the hash information to the terminal 3000 of the second institution. In this way, the terminal 3000 of the second institution transmits a request for hash information to the blockchain node having the corresponding address value through the address value of the block chain node.

단계(J)에서는, 해쉬정보에 대한 요청을 수신한 블록체인노드는 제2기관의 단말기(3000)로 해당 검증해쉬정보를 송신한다.In step (J), the blockchain node receiving the request for hash information transmits the verification hash information to the terminal 3000 of the second institution.

이와 같은 방식으로, 사용자의 단말기(1000)로 사용자의 공개키에 의하여 암호화 된 개인정보를 송신하고, 기관의 신뢰성을 검증하기 위한 해쉬정보를 블록체인노드에 저장함으로써, 사용자는 해쉬정보의 검증을 통해 사용자의 개인정보를 제공할 기관의 신뢰성을 검증하여, 신뢰할 수 없는 기관으로의 개인정보 유출을 방지할 수 있는 효과를 발휘할 수 있다.In this way, by transmitting personal information encrypted by the user's public key to the user's terminal 1000 and storing hash information to verify the reliability of the institution in the blockchain node, the user can verify the hash information. Through this, the reliability of the organization that will provide the user's personal information can be verified, and the effect of preventing the leakage of personal information to untrusted organizations can be exerted.

도 4는 본 발명의 일 실시예에 따른 기관인증요청단계, 기관인증단계 및 복호화단계의 수행 과정을 개략적으로 도시한다.4 schematically shows a process of performing an agency authentication request step, an agency authentication step, and a decryption step according to an embodiment of the present invention.

구체적으로, 기관인증요청단계(S5000)는, 제2기관의 단말기(3000)에 의하여, 제2기관의 공개키 및 제2기관의 개인키를 생성하는 단계(K); 상기 블록체인노드로부터 수신한 상기 검증해쉬정보 및 상기 제2기관의 공개키를 사용자의 단말기(1000)로 송신하는 단계(L);를 포함하고, 기관인증단계는(S6000), 사용자의 단말기(1000)에 의하여, 상기 검증해쉬정보를 검증하는 단계(M); 사용자의 단말기(1000)에 의하여, 상기 검증해쉬정보의 검증이 완료된 경우, 상기 대칭키를 상기 제2기관의 공개키로 암호화하여 제2암호화키데이터를 생성하는 단계(N); 및 사용자의 단말기(1000)에 의하여, 상기 제2암호화키데이터 및 제1기관의 단말기(2000)로부터 수신한 상기 암호화송신데이터를 제2기관의 단말기(3000)로 송신하는 단계(O);를 포함하고, 복호화단계(S7000)는, 제2기관의 단말기(3000)에 의하여, 제2기관의 개인키에 의하여 상기 제2암호화키데이터로부터 상기 대칭키를 복호화 하는 단계(P); 복호화된 상기 대칭키에 의하여 상기 암호화송신데이터로부터 상기 송신데이터를 복호화하는 단계(Q);를 포함한다.Specifically, the agency authentication request step (S5000) includes the steps of generating a public key of a second institution and a private key of the second institution by the terminal 3000 of the second institution (K); Transmitting the verification hash information received from the blockchain node and the public key of the second institution to the user's terminal 1000 (L); Including, the agency authentication step (S6000), the user's terminal ( 1000), verifying the verification hash information (M); Generating second encryption key data by encrypting the symmetric key with the public key of the second institution when the verification of the verification hash information is completed by the user's terminal 1000 (N); And transmitting the second encryption key data and the encrypted transmission data received from the terminal 2000 of the first institution to the terminal 3000 of the second institution by the user's terminal 1000 (O). Including, the decryption step (S7000), by the terminal 3000 of the second institution, decrypting the symmetric key from the second encryption key data by the private key of the second institution (P); And decrypting the transmission data from the encrypted transmission data using the decrypted symmetric key (Q).

단계(K)에서는, 단계(J)에서 블록체인노드로부터 검증해쉬정보를 수신한 제2기관의 단말기(3000)는, 제2기관의 공개키 및 제2기관의 개인키를 생성한다.In step (K), the terminal 3000 of the second institution, which received the verification hash information from the blockchain node in step (J), generates a public key of the second institution and a private key of the second institution.

단계(L)에서는, 제2기관의 단말기(3000)는 블록체인노드로부터 수신한 검증해쉬정보 및 제2기관의 공개키를 사용자의 단말기(1000)로 송신한다. 본 발명의 다른 실시예에서는, 제2기관의 단말기(3000)는 블록체인노드로부터 수신한 검증해쉬정보 및 제2기관의 공개키를 포함하는 인증서를 생성 혹은 다른 인증서발급기관으로부터 발급받아 송신할 수 있다.In step (L), the second institution's terminal 3000 transmits the verification hash information received from the blockchain node and the second institution's public key to the user's terminal 1000. In another embodiment of the present invention, the terminal 3000 of the second institution may generate a certificate including the verification hash information received from the blockchain node and the public key of the second institution, or receive and transmit a certificate issued by another certificate issuing authority. have.

단계(M)에서는, 사용자의 단말기(1000)는 제2기관의 단말기(3000)로부터 수신한 해쉬정보를 검증한다. 바람직하게는, 상기 해쉬정보는, 제1기관의 단말기(2000)로부터 수신한 암호화송신데이터로부터 도출한 해쉬정보 및 제2기관의 단말기(3000)로부터 수신한 해쉬정보의 일치여부에 따라 검증된다.In step (M), the user's terminal 1000 verifies the hash information received from the terminal 3000 of the second institution. Preferably, the hash information is verified according to whether or not the hash information derived from the encrypted transmission data received from the terminal 2000 of the first institution and the hash information received from the terminal 3000 of the second institution match.

단계(N)에서는, 사용자의 단말기(1000)는 단계(M)에서 검증한 해쉬정보의 검증이 완료된 경우, 제2기관의 단말기(3000)로부터 수신한 제2기관의 공개키에 의하여 대칭키의 암호화를 수행하여 제2암호화키데이터를 생성한다. 바람직하게는, 상기 대칭키는, 제1기관의 단말기(2000)로부터 수신한 제1암호화키데이터를 사용자의 개인키로 복호화하여 도출된다.In step (N), when the verification of the hash information verified in step (M) is completed, the user's terminal 1000 uses the public key of the second institution received from the terminal 3000 of the second institution. Encryption is performed to generate second encryption key data. Preferably, the symmetric key is derived by decrypting the first encryption key data received from the terminal 2000 of the first institution with the user's private key.

단계(O)에서는, 사용자의 단말기(1000)는 단계(N)에서 생성한 제2암호화키데이터 및 단계(F)에서 제1기관의 단말기(2000)로부터 수신한 암호화송신데이터를 제2기관의 단말기(3000)로 송신한다.In step (O), the user's terminal 1000 receives the second encryption key data generated in step (N) and the encrypted transmission data received from the terminal 2000 of the first institution in step (F). It transmits to the terminal 3000.

단계(P)에서는, 제2기관의 단말기(3000)는 사용자의 단말기(1000)로부터 송신한 제2암호화키데이터를 제2기관의 개인키로 복호화하여 대칭키를 도출한다.In step (P), the terminal 3000 of the second institution decrypts the second encryption key data transmitted from the user's terminal 1000 with the private key of the second institution to derive a symmetric key.

단계(Q)에서는, 제2기관의 단말기(3000)는 단계(P)에서 복호화된 대칭키에 의하여 사용자의 단말기(1000)로부터 수신한 암호화송신데이터를 복호화하여 송신데이터를 도출한다.In step (Q), the terminal 3000 of the second institution decrypts the encrypted transmission data received from the user's terminal 1000 by the symmetric key decrypted in step (P) to derive the transmission data.

이와 같은 방식으로, 사용자의 개인정보를 제공받을 기관은 블록체인노드로부터 수신한 해쉬정보를 송신하여 기관의 신뢰성을 인정받을 수 있고, 기관의 공개키로 암호화 된 데이터를 송수신함으로써, 민감한 사용자의 개인정보의 보안성을 강화시킬 수 있는 효과를 발휘할 수 있다.In this way, the institution that will be provided with the user's personal information can receive the hash information received from the blockchain node to be recognized for the reliability of the institution, and by transmitting and receiving data encrypted with the institution's public key, sensitive user's personal information It can exert an effect that can enhance the security of the device.

도 5는 본 발명의 일 실시예에 따른 검증해쉬정보의 검증 과정을 개략적으로 도시한다.5 schematically shows a verification process of verification hash information according to an embodiment of the present invention.

사용자의 단말기(1000)는 도 4에서 설명한 단계(M)에서 제2기관의 단말기(3000)로부터 수신한 검증해쉬정보를 검증한다. 구체적으로, 상기 검증해쉬정보를 검증하는 단계(M)는, 상기 사용자의 단말기(1000)에 의하여, 제1기관의 단말기(2000)로부터 수신한 검증해쉬정보를 도출하는 해쉬도출단계(m1); 및 상기 사용자의 단말기(1000)에 의하여, 제2기관의 단말기(3000)로부터 수신한 암호화송신데이터에 대한 해쉬정보 및 상기 해쉬도출단계에서 도출한 암호화송신데이터에 대한 해쉬정보의 일치여부를 판별하여 해쉬정보를 검증하는 단계(m2);를 포함한다.The user's terminal 1000 verifies the verification hash information received from the terminal 3000 of the second institution in step M described in FIG. 4. Specifically, the step (M) of verifying the verification hash information may include a hash derivation step (m1) of deriving verification hash information received from the terminal 2000 of the first institution by the user's terminal 1000; And by the user's terminal 1000, it is determined whether the hash information for the encrypted transmission data received from the terminal 3000 of the second institution and the hash information for the encrypted transmission data derived in the hash derivation step are matched. And verifying the hash information (m2).

도 5에 도시된 바와 같이, 사용자의 단말기(1000)는 제1기관의 단말기(2000)가 송신한 암호화송신데이터로부터 해쉬정보를 도출하는 해쉬도출단계(m1)를 수행한다. 이후, 사용자의 단말기(1000)는 제2기관의 단말기(3000)로부터 수신한 검증해쉬정보 및 해쉬도출단계에서 도출한 암호화송신데이터에 대한 해쉬정보의 일치여부를 판별(m2)한다. 제2기관의 단말기(3000)로부터 수신한 검증해쉬정보와 해쉬도출단계에서 도출한 암호화송신데이터에 대한 해쉬정보가 일치하는 경우, 검증해쉬정보의 검증을 완료한다. 제2기관의 단말기(3000)로부터 수신한 검증해쉬정보와 해쉬도출단계에서 도출한 암호화송신데이터에 대한 해쉬정보가 일치하지 않는 경우, 검증해쉬정보의 검증은 완료되지 않는다.As shown in FIG. 5, the user's terminal 1000 performs a hash derivation step (m1) of deriving hash information from the encrypted transmission data transmitted by the terminal 2000 of the first institution. Thereafter, the user's terminal 1000 determines whether the verification hash information received from the terminal 3000 of the second institution and the hash information for the encrypted transmission data derived in the hash extraction step are matched (m2). If the verification hash information received from the terminal 3000 of the second institution matches the hash information for the encrypted transmission data derived in the hash extraction step, the verification of the verification hash information is completed. If the verification hash information received from the terminal 3000 of the second institution and the hash information for the encrypted transmission data derived in the hash extraction step do not match, the verification of the verification hash information is not completed.

이와 같이, 블록체인노드를 통해 수신한 해쉬정보를 검증하여 사용자는 사용자의 개인정보를 제공받고자 하는 기관의 신뢰성을 검증하고, 사용자의 개인정보를 제공하고자 하는 기관으로부터 생성된 암호화데이터를 송신해줌으로써, 제3자에 의한 데이터의 위변조를 방지할 수 있는 효과를 발휘할 수 있다.In this way, by verifying the hash information received through the blockchain node, the user verifies the reliability of the organization that wants to receive the user's personal information, and transmits the encrypted data generated by the organization that wants to provide the user's personal information. , It can exert the effect of preventing forgery and alteration of data by a third party.

도 6은 본 발명의 일 실시예에 따른 제2암호화키데이터의 생성 과정을 개략적으로 도시한다.6 schematically illustrates a process of generating second encryption key data according to an embodiment of the present invention.

사용자의 단말기(1000)는 도 4에서 설명한 단계(N)에서 해쉬정보의 검증이 완료된 경우, 대칭키를 제2기관의 공개키로 암호화하여 제2암호화키데이터를 생성한다. 구체적으로, 상기 제2암호화키데이터를 생성하는 단계(N)은, 사용자의 단말기(1000)에 의하여, 제1기관의 단말기(2000)로부터 수신한 제1암호화키데이터를 사용자의 개인키로 복호화하는 단계(n1); 및 사용자의 단말기(1000)에 의하여, 상기 제1암호화키데이터로부터 복호화한 대칭키를 상기 제2기관의 공개키로 암호화하여 제2암호화키데이터를 생성하는 단계(n2);를 포함한다.When the verification of the hash information is completed in step (N) described in FIG. 4, the user's terminal 1000 generates second encryption key data by encrypting the symmetric key with the public key of the second institution. Specifically, in the step (N) of generating the second encryption key data, the first encryption key data received from the terminal 2000 of the first institution is decrypted by the user's terminal 1000 with the user's private key. Step (n1); And generating second encryption key data by encrypting the symmetric key decrypted from the first encryption key data by the user's terminal 1000 with the public key of the second institution (n2).

도 6에 도시된 바에 따르면, 사용자의 단말기(1000)는 제1기관의 단말기(2000)로부터 수신한 제1암호화키데이터를 사용자의 개인키로 복호화(n1)한다. 제1암호화키데이터는 제1기관의 단말기(2000)에 의하여 사용자의 공개키로 대칭키를 암호화하여 제1암호화키데이터를 생성되었기 때문에, 사용자의 개인키로 복호화하여 제1암호화키데이터로부터 복호화된 대칭키를 도출할 수 있다. 이후, 사용자의 단말기(1000)는, 제1암호화키데이터로부터 복호화된 대칭키를 제2기관의 단말기(3000)로부터 수신한 제2기관의 공개키로 암호화하여 제2암호화키데이터를 생성(n2)한다. 이후, 사용자의단말기는 생성한 제2암호화키데이터를 암호화송신데이터와 함께 제2기관의 단말기(3000)로 송신하고, 제2기관의 단말기(3000)는 제2암호화데이터를 제2기관의 개인키로 복호화하여 대칭키를 도출하고, 도출한 대칭키로 암호화송신데이터를 복호화하여 송신데이터를 도출하여 확인할 수 있다.6, the user's terminal 1000 decrypts (n1) the first encryption key data received from the terminal 2000 of the first institution with the user's private key. Since the first encryption key data was generated by encrypting the symmetric key with the user's public key by the terminal 2000 of the first institution, the first encryption key data was decrypted with the user's private key and decrypted from the first encryption key data. You can derive the key. Thereafter, the user's terminal 1000 encrypts the symmetric key decrypted from the first encryption key data with the public key of the second institution received from the terminal 3000 of the second institution to generate second encryption key data (n2). do. Thereafter, the user's terminal transmits the generated second encryption key data together with the encrypted transmission data to the terminal 3000 of the second institution, and the terminal 3000 of the second institution transmits the second encryption data to the personal of the second institution. It can be decrypted with a key to derive a symmetric key, and the encrypted transmission data can be decrypted with the derived symmetric key to derive and check the transmission data.

이와 같은 방식으로, 사용자 주도 하에 각각의 사용자 및 기관의 공개키 및 개인키에 의한 암호화 및 복호화를 수행하여 데이터를 송수신함으로써, 송수신하는 데이터의 보안성을 강화시킬 수 있는 효과를 발휘할 수 있다.In this way, by performing encryption and decryption using the public and private keys of each user and organization under the user's initiative to transmit and receive data, it is possible to exert an effect of enhancing the security of the transmitted and received data.

도 7은 본 발명의 일 실시예에 따른 컴퓨팅 장치의 내부구성을 개략적으로 도시한다.7 schematically illustrates an internal configuration of a computing device according to an embodiment of the present invention.

도 1에 도시된 구성요소 전체 혹은 일부는 후술하는 컴퓨팅장치의 구성요소를 포함할 수 있다.All or part of the components illustrated in FIG. 1 may include components of a computing device to be described later.

도 7에 도시한 바와 같이, 컴퓨팅 장치(11000)은 적어도 하나의 프로세서(processor)(11100), 메모리(memory)(11200), 주변장치 인터페이스(peripheral interface)(11300), 입/출력 서브시스템(I/Osubsystem)(11400), 전력 회로(11500) 및 통신 회로(11600)를 적어도 포함할 수 있다.7, the computing device 11000 includes at least one processor 11100, a memory 11200, a peripheral interface 11300, and an input/output subsystem ( I/Osubsystem) 11400, a power circuit 11500, and a communication circuit 11600 may be included at least.

메모리(11200)는, 일례로 고속 랜덤 액세스 메모리(high-speed random access memory), 자기 디스크, 에스램(SRAM), 디램(DRAM), 롬(ROM), 플래시 메모리 또는 비휘발성 메모리를 포함할 수 있다. 메모리(11200)는 컴퓨팅 장치(11000)의 동작에 필요한 소프트웨어 모듈, 명령어 집합 또는 그밖에 다양한 데이터를 포함할 수 있다.The memory 11200 may include, for example, high-speed random access memory, magnetic disk, SRAM, DRAM, ROM, flash memory, or nonvolatile memory. have. The memory 11200 may include a software module, an instruction set, or other various data necessary for the operation of the computing device 11000.

이때, 프로세서(11100)나 주변장치 인터페이스(11300) 등의 다른 컴포넌트에서 메모리(11200)에 액세스하는 것은 프로세서(11100)에 의해 제어될 수 있다. 상기 프로세서(11100)은 단일 혹은 복수로 구성될 수 있고, 연산처리속도 향상을 위하여 GPU 및 TPU 형태의 프로세서를 포함할 수 있다.In this case, access to the memory 11200 from another component such as the processor 11100 or the peripheral device interface 11300 may be controlled by the processor 11100. The processor 11100 may be configured as a single unit or a plurality of units, and may include a processor in the form of a GPU and a TPU in order to improve operation processing speed.

주변장치 인터페이스(11300)는 컴퓨팅 장치(11000)의 입력 및/또는 출력 주변장치를 프로세서(11100) 및 메모리 (11200)에 결합시킬 수 있다. 프로세서(11100)는 메모리(11200)에 저장된 소프트웨어 모듈 또는 명령어 집합을 실행하여 컴퓨팅 장치(11000)을 위한 다양한 기능을 수행하고 데이터를 처리할 수 있다.The peripheral device interface 11300 may couple input and/or output peripheral devices of the computing device 11000 to the processor 11100 and the memory 11200. The processor 11100 may execute various functions for the computing device 11000 and process data by executing a software module or instruction set stored in the memory 11200.

입/출력 서브시스템(11400)은 다양한 입/출력 주변장치들을 주변장치 인터페이스(11300)에 결합시킬 수 있다. 예를 들어, 입/출력 서브시스템(11400)은 모니터나 키보드, 마우스, 프린터 또는 필요에 따라 터치스크린이나 센서등의 주변장치를 주변장치 인터페이스(11300)에 결합시키기 위한 컨트롤러를 포함할 수 있다. 다른 측면에 따르면, 입/출력 주변장치들은 입/출력 서브시스템(11400)을 거치지 않고 주변장치 인터페이스(11300)에 결합될 수도 있다.The input/output subsystem 11400 may couple various input/output peripherals to the peripherals interface 11300. For example, the input/output subsystem 11400 may include a monitor, a keyboard, a mouse, a printer, or a controller for coupling a peripheral device such as a touch screen or a sensor to the peripheral device interface 11300 as needed. According to another aspect, the input/output peripheral devices may be coupled to the peripheral device interface 11300 without going through the input/output subsystem 11400.

전력 회로(11500)는 단말기의 컴포넌트의 전부 또는 일부로 전력을 공급할 수 있다. 예를 들어 전력 회로(11500)는 전력 관리 시스템, 배터리나 교류(AC) 등과 같은 하나 이상의 전원, 충전 시스템, 전력 실패 감지 회로(power failure detection circuit), 전력 변환기나 인버터, 전력 상태 표시자 또는 전력 생성, 관리, 분배를 위한 임의의 다른 컴포넌트들을 포함할 수 있다.The power circuit 11500 may supply power to all or part of the components of the terminal. For example, the power circuit 11500 may include a power management system, one or more power sources such as batteries or alternating current (AC), a charging system, a power failure detection circuit, a power converter or inverter, a power status indicator or power. It may contain any other components for creation, management, and distribution.

통신 회로(11600)는 적어도 하나의 외부 포트를 이용하여 다른 컴퓨팅 장치와 통신을 가능하게 할 수 있다.The communication circuit 11600 may enable communication with another computing device using at least one external port.

또는 상술한 바와 같이 필요에 따라 통신 회로(11600)는 RF 회로를 포함하여 전자기 신호(electromagnetic signal)라고도 알려진 RF 신호를 송수신함으로써, 다른 컴퓨팅 장치와 통신을 가능하게 할 수도 있다.Alternatively, as described above, if necessary, the communication circuit 11600 may enable communication with other computing devices by transmitting and receiving an RF signal, also known as an electromagnetic signal, including an RF circuit.

이러한 도 7의 실시예는, 컴퓨팅 장치(11000)의 일례일 뿐이고, 컴퓨팅 장치(11000)은 도 7에 도시된 일부 컴포넌트가 생략되거나, 도 7에 도시되지 않은 추가의 컴포넌트를 더 구비하거나, 2개 이상의 컴포넌트를 결합시키는 구성 또는 배치를 가질 수 있다. 예를 들어, 모바일 환경의 통신 단말을 위한 컴퓨팅 장치는 도 7에 도시된 컴포넌트들 외에도, 터치스크린이나 센서 등을 더 포함할 수도 있으며, 통신 회로(11600)에 다양한 통신방식(WiFi, 3G, LTE, Bluetooth, NFC, Zigbee 등)의 RF 통신을 위한 회로가 포함될 수도 있다. 컴퓨팅 장치(11000)에 포함 가능한 컴포넌트들은 하나 이상의 신호 처리 또는 어플리케이션에 특화된 집적 회로를 포함하는 하드웨어, 소프트웨어, 또는 하드웨어 및 소프트웨어 양자의 조합으로 구현될 수 있다.The embodiment of FIG. 7 is only an example of the computing device 11000, and the computing device 11000 omits some of the components shown in FIG. 7 or further includes additional components not shown in FIG. It can have a configuration or arrangement that combines two or more components. For example, a computing device for a communication terminal in a mobile environment may further include a touch screen or a sensor in addition to the components shown in FIG. 7, and various communication methods (WiFi, 3G, LTE) in the communication circuit 11600 , Bluetooth, NFC, Zigbee, etc.) may include a circuit for RF communication. Components that may be included in the computing device 11000 may be implemented as hardware, software, or a combination of hardware and software including one or more signal processing or application-specific integrated circuits.

본 발명의 실시예에 따른 방법들은 다양한 컴퓨팅 장치를 통하여 수행될 수 있는 프로그램 명령(instruction) 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 특히, 본 실시예에 따른 프로그램은 PC 기반의 프로그램 또는 모바일 단말 전용의 어플리케이션으로 구성될 수 있다. 본 발명이 적용되는 애플리케이션은 파일 배포 시스템이 제공하는 파일을 통해 이용자 단말에 설치될 수 있다. 일 예로, 파일 배포 시스템은 이용자 단말이기의 요청에 따라 상기 파일을 전송하는 파일 전송부(미도시)를 포함할 수 있다.Methods according to an embodiment of the present invention may be implemented in the form of program instructions that can be executed through various computing devices and recorded in a computer-readable medium. In particular, the program according to the present embodiment may be configured as a PC-based program or an application dedicated to a mobile terminal. An application to which the present invention is applied may be installed on a user terminal through a file provided by the file distribution system. As an example, the file distribution system may include a file transmission unit (not shown) that transmits the file according to the request of the user terminal.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the devices and components described in the embodiments are, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA). , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, such as one or more general purpose computers or special purpose computers. The processing device may execute an operating system (OS) and one or more software applications executed on the operating system. Further, the processing device may access, store, manipulate, process, and generate data in response to the execution of software. For the convenience of understanding, although it is sometimes described that one processing device is used, one of ordinary skill in the art, the processing device is a plurality of processing elements and/or multiple types of processing elements. It can be seen that it may include. For example, the processing device may include a plurality of processors or one processor and one controller. In addition, other processing configurations are possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로 (collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨팅 장치 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instruction, or a combination of one or more of these, configuring the processing unit to operate as desired or processed independently or collectively. You can command the device. Software and/or data may be interpreted by a processing device or to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodyed in a transmitted signal wave. The software may be distributed over networked computing devices and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(OTPical media), 플롭티컬 디스크(flOTPical disk)와 같은 자기-광 매체(magneto-OTPical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as flOTPical disks. -Optical media (Magneto-OTPical 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 not only machine language codes such as those produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described by the limited embodiments and drawings as described above, various modifications and variations can be made from the above description to those of ordinary skill in the art. For example, the described techniques are performed in a different order from the described method, and/or components such as systems, structures, devices, circuits, etc. described are combined or combined in a form different from the described method, or other components Alternatively, even if substituted or substituted by an equivalent, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and those equivalent to the claims also fall within the scope of the claims to be described later.

Claims (8)

사용자의 단말기 및 블록체인네트워크에 접속할 수 있는 제1기관의 단말기 및 제2기관의 단말기에 의하여 수행되는 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법으로서,
사용자의 단말기에 의하여, 사용자의 공개키를 생성하고, 상기 사용자의 공개키를 포함하는 인증서 및 사용자정보요청을 제1기관의 단말기로 송신하는 인증서송신단계; 및
제1기관의 단말기에 의하여, 수신한 상기 사용자정보요청에 따라 대칭키를 생성하고, 생성한 상기 대칭키에 의하여 송신데이터를 암호화한 암호화송신데이터 및 상기 대칭키를 상기 사용자의 공개키로 암호화한 제1암호화키데이터를 생성하여 사용자의 단말기로 송신하는 단계;를 포함하는 사용자정보요청단계;
제1기관의 단말기에 의하여, 상기 암호화송신데이터의 해쉬정보 및 상기 송신데이터의 해쉬정보 중 1 이상을 포함하는 검증해쉬정보를 도출하여 상기 검증해쉬정보를 블록체인네트워크의 블록체인노드에 송신하는 블록체인저장단계; 및
제2기관의 단말기에 의하여, 상기 블록체인노드에 상기 검증해쉬정보에 대한 요청을 송신하고, 상기 블록체인노드로부터 상기 검증해쉬정보를 수신하는 해쉬정보수신단계;를 포함하는 신뢰된 대상 간 문서유통 방법.
As a method of distributing documents between a user's terminal and a trusted target led by a user-led blockchain performed by a terminal of a first institution and a terminal of a second institution that can access a user's terminal and a blockchain network
A certificate sending step of generating a user's public key by the user's terminal, and transmitting a certificate including the user's public key and a user information request to a terminal of a first institution; And
A device in which a symmetric key is generated according to the user information request received by the terminal of the first institution, and the encrypted transmission data is encrypted by the generated symmetric key and the symmetric key is encrypted with the user's public key. 1 generating and transmitting the encryption key data to the user's terminal; a user information request step including;
A block that derives verification hash information including at least one of the hash information of the encrypted transmission data and the hash information of the transmission data by the terminal of the first institution and transmits the verification hash information to the blockchain node of the blockchain network. Chain storage step; And
Document distribution between trusted targets including, by a terminal of a second institution, a hash information receiving step of transmitting a request for the verification hash information to the block chain node and receiving the verification hash information from the block chain node. Way.
청구항 1에 있어서,
상기 사용자정보요청단계는,
사용자의 단말기에 의하여, 사용자의 공개키 및 사용자의 개인키를 생성하고, 상기 사용자의 공개키를 포함하는 인증서 및 사용자정보요청을 제1기관의 단말기로 송신하는 인증서송신단계;
제1기관의 단말기에 의하여, 상기 대칭키를 생성하는 단계;
제1기관의 단말기에 의하여, 생성된 상기 대칭키에 의하여 송신데이터의 암호화를 수행하여 암호화송신데이터를 생성하는 단계;
제1기관의 단말기에 의하여, 사용자의 단말기로부터 수신한 상기 인증서에 포함된 상기 사용자의 공개키로 상기 대칭키를 암호화하여 제1암호화키데이터를 생성하는 단계; 및
제1기관의 단말기에 의하여, 상기 암호화송신데이터 및 상기 제1암호화키데이터를 사용자의 단말기로 송신하는 단계;를 포함하는, 신뢰된 대상 간 문서유통 방법.
The method according to claim 1,
The user information request step,
A certificate sending step of generating a user's public key and a user's private key by the user's terminal, and transmitting a certificate including the user's public key and a user information request to a terminal of a first institution;
Generating the symmetric key by a terminal of the first institution;
Generating encrypted transmission data by encrypting transmission data using the generated symmetric key by a terminal of the first institution;
Generating first encryption key data by encrypting the symmetric key with the user's public key included in the certificate received from the user's terminal, by a terminal of the first institution; And
Transmitting the encrypted transmission data and the first encryption key data to a user's terminal by a terminal of a first institution; including, a document distribution method between trusted objects.
청구항 1에 있어서,
상기 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법은,
제2기관의 단말기에 의하여, 제2기관의 공개키 및 제2기관의 개인키를 생성하고, 상기 블록체인노드로부터 수신한 상기 검증해쉬정보 및 상기 제2기관의 공개키를 사용자의 단말기로 송신하는 기관인증요청단계; 및
사용자의 단말기에 의하여, 제2기관의 단말기로부터 수신한 상기 검증해쉬정보를 검증하고, 상기 검증해쉬정보의 검증결과에 따라 상기 제2기관의 공개키에 의하여 암호화된 대칭키인 제2암호화키데이터 및 상기 암호화송신데이터를 제2기관의 단말기로 송신하는 기관인증단계;를 더 포함하는, 신뢰된 대상 간 문서유통 방법.
The method according to claim 1,
The blockchain-based user-led document distribution method between trusted targets,
By the terminal of the second institution, the public key of the second institution and the private key of the second institution are generated, and the verification hash information received from the blockchain node and the public key of the second institution are transmitted to the user's terminal. An agency certification request step; And
Second encryption key data, which is a symmetric key encrypted by the public key of the second institution, by verifying the verification hash information received from the terminal of the second institution by the user's terminal, and according to the verification result of the verification hash information And an agency authentication step of transmitting the encrypted transmission data to a terminal of a second agency.
청구항 3에 있어서,
상기 기관인증단계는,
사용자의 단말기에 의하여, 상기 검증해쉬정보를 검증하는 단계;
사용자의 단말기에 의하여, 상기 검증해쉬정보의 검증이 완료된 경우, 상기 대칭키를 상기 제2기관의 공개키로 암호화하여 제2암호화키데이터를 생성하는 단계; 및
사용자의 단말기에 의하여, 상기 제2암호화키데이터 및 제1기관의 단말기로부터 수신한 상기 암호화송신데이터를 제2기관의 단말기로 송신하는 단계;를 포함하는, 신뢰된 대상간 문서유통 방법.
The method of claim 3,
The agency certification step,
Verifying the verification hash information by the user's terminal;
Generating second encryption key data by encrypting the symmetric key with the public key of the second institution when the verification of the verification hash information is completed by the user's terminal; And
Transmitting, by the user's terminal, the second encryption key data and the encrypted transmission data received from the terminal of the first institution to the terminal of the second institution; Containing, document distribution method between trusted objects.
청구항 4에 있어서,
상기 검증해쉬정보를 검증하는 단계는,
상기 사용자의 단말기에 의하여, 제1기관의 단말기로부터 수신한 암호화송신데이터에 대한 해쉬정보를 도출하는 해쉬도출단계; 및
상기 사용자의 단말기에 의하여, 제2기관의 단말기로부터 수신한 검증해쉬정보 및 상기 해쉬도출단계에서 도출한 암호화송신데이터에 대한 해쉬정보의 일치여부를 판별하여 해쉬정보를 검증하는 단계;를 포함하는, 신뢰된 대상간 문서유통 방법.
The method of claim 4,
The step of verifying the verification hash information,
A hash derivation step of deriving hash information for encrypted transmission data received from a terminal of a first institution, by the user's terminal; And
Including, by the user's terminal, verifying the hash information by determining whether the hash information is matched with the verification hash information received from the terminal of the second institution and the encrypted transmission data derived in the hash extraction step. How to distribute documents between trusted parties.
청구항 4에 있어서,
상기 제2암호화키데이터를 생성하는 단계는,
사용자의 단말기에 의하여, 제1기관의 단말기로부터 수신한 제1암호화키데이터를 사용자의 개인키로 복호화하는 단계; 및
사용자의 단말기에 의하여, 상기 제1암호화키데이터로부터 복호화한 대칭키를 상기 제2기관의 공개키로 암호화하여 제2암호화키데이터를 생성하는 단계;를 포함하는, 신뢰된 대상간 문서유통 방법.
The method of claim 4,
Generating the second encryption key data,
Decrypting, by the user's terminal, the first encryption key data received from the terminal of the first institution with the user's private key; And
Encrypting the symmetric key decrypted from the first encryption key data by the user's terminal with the public key of the second institution to generate second encryption key data; Containing, document distribution method between trusted objects.
청구항 3에 있어서,
상기 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 방법은,
상기 제2기관의 단말기에 의하여, 제2기관의 개인키에 의하여 상기 제2암호화키데이터로부터 상기 대칭키를 복호화하고, 복호화된 상기 대칭키에 의하여 상기 암호화송신데이터로부터 상기 송신데이터를 복호화하는 복호화단계;를 더 포함하는, 신뢰된 대상 간 문서유통 방법.
The method of claim 3,
The blockchain-based user-led document distribution method between trusted targets,
Decryption in which the terminal of the second institution decrypts the symmetric key from the second encryption key data using the private key of the second institution, and decrypts the transmission data from the encrypted transmission data using the decrypted symmetric key The method further comprising a; document distribution between trusted targets.
사용자의 단말기 및 블록체인네트워크에 접속할 수 있는 제1기관의 단말기 및 제2기관의 단말기에 의하여 구현되는 블록체인 기반 사용자 주도의 신뢰된 대상 간 문서 유통 시스템으로서,
사용자의 단말기는 사용자의 공개키를 생성하고, 상기 사용자의 공개키를 포함하는 인증서 및 사용자정보요청을 제1기관의 단말기로 송신하고,
제1기관의 단말기는 수신한 상기 사용자정보요청에 따라 대칭키를 생성하고,
제1기관의 단말기는 생성한 상기 대칭키에 의하여 송신데이터를 암호화한 암호화송신데이터 및 상기 대칭키를 상기 사용자의 공개키로 암호화한 제1암호화키데이터를 생성하여 사용자의 단말기로 송신하고,
제1기관의 단말기는 상기 암호화송신데이터의 해쉬정보 및 상기 송신데이터의 해쉬정보 중 1 이상을 포함하는 검증해쉬정보를 도출하여 해당 해쉬정보를 블록체인네트워크의 블록체인노드에 송신하고,
제2기관의 단말기는, 상기 블록체인노드에 상기 검증해쉬정보에 대한 요청을 송신하고,
제2기관의 단말기는, 상기 블록체인노드로부터 상기 검증해쉬정보를 수신하는, 신뢰된 대상 간 문서유통 시스템.
As a document distribution system between a user's terminal and a trusted target led by a user-led, blockchain implemented by a terminal of a first institution and a terminal of a second institution that can access the user's terminal and blockchain network,
The user's terminal generates the user's public key, transmits a certificate including the user's public key and a user information request to the terminal of the first institution,
The terminal of the first institution generates a symmetric key according to the received user information request,
The terminal of the first institution generates encrypted transmission data that encrypts transmission data by the generated symmetric key and first encryption key data that encrypts the symmetric key with the user's public key, and transmits it to the user's terminal,
The terminal of the first institution derives verification hash information including at least one of the hash information of the encrypted transmission data and the hash information of the transmission data, and transmits the hash information to the blockchain node of the blockchain network,
The terminal of the second institution transmits a request for the verification hash information to the blockchain node,
The terminal of the second institution receives the verification hash information from the block chain node, a document distribution system between trusted targets.
KR1020190128912A 2019-10-17 2019-10-17 Method and System for user-driven document distribution between trusted institution based on block chain KR102268985B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190128912A KR102268985B1 (en) 2019-10-17 2019-10-17 Method and System for user-driven document distribution between trusted institution based on block chain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190128912A KR102268985B1 (en) 2019-10-17 2019-10-17 Method and System for user-driven document distribution between trusted institution based on block chain

Publications (2)

Publication Number Publication Date
KR20210045636A true KR20210045636A (en) 2021-04-27
KR102268985B1 KR102268985B1 (en) 2021-06-24

Family

ID=75725821

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190128912A KR102268985B1 (en) 2019-10-17 2019-10-17 Method and System for user-driven document distribution between trusted institution based on block chain

Country Status (1)

Country Link
KR (1) KR102268985B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090054774A (en) * 2007-11-27 2009-06-01 한국정보보호진흥원 Method of integrated security management in distribution network
KR20110070622A (en) * 2009-12-18 2011-06-24 주식회사 케이티 Method for establishing a dynamic user-centric trust relationship
KR102020000B1 (en) * 2018-10-31 2019-09-09 주식회사 스위클 Personal information providing system using one time private key based on block chain of proof of use and method thereof
KR101993293B1 (en) * 2018-10-05 2019-09-30 비즈플레이 주식회사 System and method for processing expense data based on blockchain and computer program for the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090054774A (en) * 2007-11-27 2009-06-01 한국정보보호진흥원 Method of integrated security management in distribution network
KR20110070622A (en) * 2009-12-18 2011-06-24 주식회사 케이티 Method for establishing a dynamic user-centric trust relationship
KR101993293B1 (en) * 2018-10-05 2019-09-30 비즈플레이 주식회사 System and method for processing expense data based on blockchain and computer program for the same
KR102020000B1 (en) * 2018-10-31 2019-09-09 주식회사 스위클 Personal information providing system using one time private key based on block chain of proof of use and method thereof

Also Published As

Publication number Publication date
KR102268985B1 (en) 2021-06-24

Similar Documents

Publication Publication Date Title
US10721080B2 (en) Key-attestation-contingent certificate issuance
EP3175575B1 (en) Secure content packaging using multiple trusted execution environments
US11244054B2 (en) Method and apparatus for trusted computing
US9213867B2 (en) Secure cloud database platform with encrypted database queries
US9424439B2 (en) Secure data synchronization
US9053329B2 (en) Systems and methods for validated secure data access
US9749139B2 (en) Digital certificate issuer-correlated digital signature verification
EP3084667A1 (en) Policy-based trusted inspection of rights managed content
JP7179725B2 (en) Secure key management
EP3133791B1 (en) Double authentication system for electronically signed documents
Drucker et al. Combining homomorphic encryption with trusted execution environment: a demonstration with paillier encryption and SGX
Cooijmans et al. Secure key storage and secure computation in Android
US20180218363A1 (en) Payment instrument management with key tokenization
KR102268985B1 (en) Method and System for user-driven document distribution between trusted institution based on block chain
Fournaris et al. From hardware security tokens to trusted computing and trusted systems
Kim et al. Secure user authentication based on the trusted platform for mobile devices
KR20210045632A (en) Method and System for electronic authentication and encryption of data Based On Cloud System
Rehman et al. Hybrid AES-ECC Model for the Security of Data over Cloud Storage. Electronics 2021, 10, 2673
CN115941200A (en) Method, system and blockchain node for storing alliance information in blockchain
KR20210045633A (en) Method and System for Universe Electronic Signature Using Save Domain
Ruan et al. Trust Computing, Backed by the Intel Platform Trust Technology

Legal Events

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