KR102471210B1 - Method and system for data analysis service mediation based on blockchain and homomorphic encryption - Google Patents

Method and system for data analysis service mediation based on blockchain and homomorphic encryption Download PDF

Info

Publication number
KR102471210B1
KR102471210B1 KR1020220028805A KR20220028805A KR102471210B1 KR 102471210 B1 KR102471210 B1 KR 102471210B1 KR 1020220028805 A KR1020220028805 A KR 1020220028805A KR 20220028805 A KR20220028805 A KR 20220028805A KR 102471210 B1 KR102471210 B1 KR 102471210B1
Authority
KR
South Korea
Prior art keywords
analysis
analysis service
smart contract
user terminal
homomorphic encryption
Prior art date
Application number
KR1020220028805A
Other languages
Korean (ko)
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 KR1020220028805A priority Critical patent/KR102471210B1/en
Application granted granted Critical
Publication of KR102471210B1 publication Critical patent/KR102471210B1/en

Links

Images

Classifications

    • 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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • 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/3247Cryptographic 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 digital signatures
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The present invention relates to a data analysis service mediation system and method based on blockchain and homomorphic encryption. The system comprises: a user terminal for selecting one analysis service provider from among one or more analysis service providers and providing homomorphically encrypted data together with an analysis request; at least one analysis service provider terminal for registering a type of an analysis service that can be provided and providing an analysis result of the homomorphically encrypted data to the user terminal; and an analysis service mediation server for receiving and providing a type of at least one or more analysis service providers to the user terminal and mediating a smart contract between the user terminal and the selected analysis service provider based on the analysis request and the homomorphically encrypted data. The present invention provides an analysis service without leaking sensitive personal information to the outside and can mediate various analysis services and analysis service companies that a user needs.

Description

블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템 및 방법{METHOD AND SYSTEM FOR DATA ANALYSIS SERVICE MEDIATION BASED ON BLOCKCHAIN AND HOMOMORPHIC ENCRYPTION}Data analysis service mediation system and method based on block chain and homomorphic encryption

본 발명은 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템 및 방법에 관한 것으로, 민감한 개인정보를 외부에 유출시키지 않고서도 필요한 분석 서비스를 받을 수 있도록 동형암호 기술과 블록체인 기술을 접목하여 사용자와 데이터 분석 서비스 제공 사업자를 중개하는 시스템 및 방법에 관한 것이다.The present invention relates to a data analysis service brokerage system and method based on block chain and homomorphic encryption. It relates to a system and method for mediating a user and a data analysis service provider.

생명공학, 인공지능, 핀테크 등의 기술 발전으로 인해 개인의 건강이나 경제적인 문제 등에 대해 개인화된 분석 서비스를 받을 수 있는 환경이 조성되고 있다. 이와 동시에, 민감한 개인 정보를 안전하게 보관 또는 처리하기 위한 다양한 암호화 기술들이 존재하고 있다. 그러나, 대부분의 암호화 기술들은 원본 데이터를 안전하게 암호화/복호화 하여 제3자가 쉽게 복호화 할 수 없도록 하기 위한 기술들이 대부분이다.Due to technological developments such as biotechnology, artificial intelligence, and fintech, an environment is being created in which personalized analysis services can be received on personal health or economic problems. At the same time, various encryption technologies exist to safely store or process sensitive personal information. However, most of the encryption techniques are techniques for safely encrypting/decrypting the original data so that a third party cannot easily decrypt it.

한편, 1970년대 수학자들에 의해 구상된 동형암호화 기술은 2009년 스탠포드 대학의 과학자 크레이그 젠트리(Craig Gentry)에 의해 실질적으로 구현됐다. 동형암호화 기술이란 "독성 화학 물질을 취급하는데 사용되는 장갑이 들어 있는 상자와 같은 것으로, 모든 조작이 상자 안에서 이뤄지므로 화학 물질은 외부 세계에 절대 노출되지 않는다"는 원리를 데이터에 구현한 것으로, 암호화된 데이터(암호문)에 대해 직접 계산을 수행할 수 있도록 설계된 암호화 기술이다. 즉, 원본 데이터를 일반 텍스트로 보지 않고도 제3자가 암호화된 데이터를 처리하거나 분석해서 나온 결과를 데이터 소유자에게 반환하면 데이터 소유자가 복호화하여 결과를 확인할 수 있는 기술이다.Meanwhile, the homomorphic encryption technology conceived by mathematicians in the 1970s was practically implemented in 2009 by Stanford University scientist Craig Gentry. Homomorphic encryption technology is a data implementation of the principle that “it is like a box containing gloves used to handle toxic chemicals, and all operations are performed inside the box, so the chemicals are never exposed to the outside world.” It is an encryption technology designed to perform calculations directly on encrypted data (ciphertext). In other words, it is a technology in which a third party processes or analyzes encrypted data and returns the result to the data owner without viewing the original data as plain text, and the data owner decrypts and checks the result.

그러나 현재까지 이러한 동형암호화 기술을 활용한 서비스는 전무한 실정이다.However, there is no service using such homomorphic encryption technology to date.

등록특허공보 제10-1964254호(등록일자: 2019년03월26일)Registered Patent Publication No. 10-1964254 (registration date: March 26, 2019) 등록특허공보 제10-2024694호(등록일자: 2019년09월18일)Registered Patent Publication No. 10-2024694 (registration date: September 18, 2019)

본 발명은 전술한 문제점을 개선하기 위해 안출된 것으로, 본 발명은 민감한 개인정보를 외부에 유출시키지 않고서도 분석 서비스를 받을 수 있는 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템을 제공하는데 과제가 있다.The present invention has been made to improve the above problems, and the present invention provides a data analysis service mediation system based on block chain and homomorphic encryption that can receive analysis services without leaking sensitive personal information to the outside. There is a task.

또한 본 발명의 실시예에 따르면, 사용자가 필요로 하는 다양한 분석 서비스와 분석 서비스 업체를 중개하는데 과제가 있다.In addition, according to an embodiment of the present invention, there is a problem in mediating various analysis services required by users and analysis service companies.

상기와 같은 목적을 달성하기 위하여, 본 발명의 일 실시예에 의한 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템은 적어도 하나 이상의 분석 서비스 제공자 중에서 하나의 분석 서비스 제공자를 선택하여 분석의뢰와 함께 동형암호화된 데이터를 제공하는 사용자 단말; 제공 가능한 분석 서비스의 유형을 등록하고 상기 동형암호화된 데이터에 대한 분석결과를 상기 사용자 단말로 제공하는 적어도 하나 이상의 분석 서비스 제공자 단말; 및 상기 적어도 하나 이상의 분석 서비스 제공자의 유형을 접수하여 상기 사용자 단말로 제공하고, 상기 분석의뢰 및 동형암호화된 데이터를 기반으로 상기 사용자 단말 및 선택된 분석 서비스 제공자 간의 스마트 컨트랙트를 중개하는 분석 서비스 중개서버를 포함할 수 있다.In order to achieve the above object, the data analysis service mediation system based on block chain and homomorphic encryption according to an embodiment of the present invention selects one analysis service provider from among at least one analysis service provider and performs analysis request and a user terminal providing homomorphically encrypted data together; at least one analysis service provider terminal registering a type of analysis service that can be provided and providing an analysis result for the homomorphically encrypted data to the user terminal; And an analysis service mediation server that receives the type of at least one or more analysis service providers, provides them to the user terminal, and mediates a smart contract between the user terminal and the selected analysis service provider based on the analysis request and the homomorphically encrypted data. can include

상기 분석 서비스 중개서버는 상기 적어도 하나 이상의 분석 서비스 제공자 및 제공 가능한 분석 서비스의 유형을 저장하는 서비스 정보 저장부; 상기 사용자 단말로 동형암호화를 위한 전용 애플리케이션을 제공하는 애플리케이션 제공부; 상기 사용자 단말로 상기 적어도 하나 이상의 분석 서비스 제공자의 목록을 제공하고 상기 분석의뢰 및 동형암호화된 데이터를 수신하며, 상기 동형암호화된 데이터를 상기 선택된 분석 서비스 제공자 단말로 전송하는 분석의뢰 접수부; 및 상기 분석의뢰를 기반으로 상기 스마트 컨트랙트를 생성하고 블록체인 네트워크로 배포하는 스마트 컨트랙트 제공부를 포함할 수 있다.The analysis service mediation server includes a service information storage unit for storing the at least one or more analysis service providers and types of analysis services that can be provided; an application providing unit providing a dedicated application for homomorphic encryption to the user terminal; an analysis request receiving unit for providing a list of the at least one analysis service provider to the user terminal, receiving the analysis request and homomorphically encrypted data, and transmitting the homomorphically encrypted data to the selected analysis service provider terminal; and a smart contract providing unit generating the smart contract based on the analysis request and distributing the smart contract to a blockchain network.

상기 동형암호화된 데이터는 격자 암호 알고리즘을 기반으로 하는 약간의 동형암호화(Somewhat Homomorphic Encryption, SHE)로 암호화된 데이터일 수 있다.The homomorphic encrypted data may be data encrypted by some homomorphic encryption (SHE) based on a lattice encryption algorithm.

상기 동형암호화된 데이터는 격자 암호 알고리즘을 기반으로 하는 완전 동형암호화(Fully Homomorphic Encryption, FHE)로 암호화된 데이터일 수 있다.The homomorphically encrypted data may be data encrypted by Fully Homomorphic Encryption (FHE) based on a lattice encryption algorithm.

상기 적어도 하나 이상의 분석 서비스 제공자 단말은 의료분석, 금융분석, 법률분석, 머신러닝 기반의 분석 서비스 중 적어도 하나의 분석 서비스를 제공할 수 있다.The at least one analysis service provider terminal may provide at least one analysis service among medical analysis, financial analysis, legal analysis, and machine learning-based analysis service.

상기 스마트 컨트랙트 제공부는 사용자 및 상기 선택된 분석 서비스 제공자의 지갑주소, 분석비용, 계약 실행조건이 설정된 상기 스마트 컨트랙트를 생성하여 블록체인 네트워크에 배포하고, 상기 사용자 단말 및 선택된 분석 서비스 제공자 단말은 상기 스마트 컨트랙트에 각각 전자서명을 수행하며, 상기 사용자 단말이 상기 분석결과를 수신하면, 상기 계약 실행조건 완수 신호를 생성하여 상기 스마트 컨트랙트로 전송할 수 있다.The smart contract providing unit generates the smart contract in which the wallet address, analysis cost, and contract execution conditions of the user and the selected analysis service provider are set, and distributes the smart contract to a blockchain network, and the user terminal and the selected analysis service provider terminal and, when the user terminal receives the analysis result, the contract execution condition completion signal may be generated and transmitted to the smart contract.

상기 사용자 단말은 상기 전용 애플리케이션에서 제공되는 동형암호화 전용 라이브러리 환경을 기반으로 개인키와 상기 동형암호화된 데이터를 생성하고, 상기 수신된 분석결과를 상기 개인키로 복호화 할 수 있다.The user terminal may generate a private key and the homomorphically encrypted data based on a library environment dedicated to homomorphic encryption provided by the dedicated application, and decrypt the received analysis result with the private key.

본 발명의 다른 실시예에 의한 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 방법은 분석 서비스 중개서버에 의해, 적어도 하나 이상의 분석 서비스 제공자 단말로부터 제공 가능한 분석 서비스의 유형을 저장하는 분석 서비스 등록 단계; 상기 분석 서비스 중개서버에 의해, 사용자 단말로 동형암호화를 위한 전용 애플리케이션을 제공하는 애플리케이션 제공 단계; 상기 분석 서비스 중개서버에 의해, 상기 사용자 단말로 상기 적어도 하나 이상의 분석 서비스 제공자의 목록을 제공하는 분석 서비스 제공자 표시 단계; 상기 분석 서비스 중개서버에 의해, 상기 사용자 단말로부터 분석의뢰 및 동형암호화된 데이터를 수신하는 의뢰 접수 단계; 상기 분석 서비스 중개서버에 의해, 상기 분석의뢰를 기반으로 스마트 컨트랙트를 생성하고 블록체인 네트워크로 배포하며, 상기 동형암호화된 데이터를 상기 분석 서비스 제공자 단말로 전송하는 스마트 컨트랙트 생성 단계; 상기 사용자 단말 및 선택된 분석 서비스 제공자 단말이 상기 스마트 컨트랙트에 각각 전자서명을 수행하는 전자서명 단계; 상기 선택된 분석 서비스 제공자 단말이 상기 동형암호화된 데이터에 대한 분석결과를 생성하여 상기 사용자 단말로 제공하는 분석결과 제공 단계; 상기 사용자 단말이 상기 분석결과를 수신하면, 계약 실행조건 완수 신호를 생성하여 상기 스마트 컨트랙트로 전송하는 계약 실행 단계; 및 상기 사용자 단말이 상기 분석결과를 복호화하여 확인하는 단계를 포함할 수 있다.Data analysis service mediation method based on block chain and homomorphic encryption according to another embodiment of the present invention is an analysis service registration that stores the types of analysis services that can be provided from at least one analysis service provider terminal by an analysis service mediation server. step; An application providing step of providing a dedicated application for homomorphic encryption to a user terminal by the analysis service mediation server; an analysis service provider display step of providing a list of the at least one analysis service provider to the user terminal by the analysis service mediation server; a request acceptance step of receiving an analysis request and homomorphically encrypted data from the user terminal by the analysis service mediation server; A smart contract creation step of generating, by the analysis service mediation server, a smart contract based on the analysis request, distributing it to a blockchain network, and transmitting the homomorphically encrypted data to the analysis service provider terminal; An electronic signature step in which the user terminal and the selected analysis service provider terminal respectively perform digital signatures on the smart contract; an analysis result providing step in which the selected analysis service provider terminal generates an analysis result for the homomorphically encrypted data and provides it to the user terminal; a contract execution step of generating and transmitting a contract execution condition completion signal to the smart contract when the user terminal receives the analysis result; and decoding and verifying the analysis result by the user terminal.

상기 동형암호화된 데이터는 격자 암호 알고리즘을 기반으로 하는 약간의 동형암호화(Somewhat Homomorphic Encryption, SHE) 또는 동형암호화(Fully Homomorphic Encryption, FHE)로 암호화된 데이터일 수 있다.The homomorphically encrypted data may be data encrypted by Somewhat Homomorphic Encryption (SHE) or Fully Homomorphic Encryption (FHE) based on a lattice encryption algorithm.

상기 의뢰 접수 단계 이전에, 상기 사용자 단말이 상기 전용 애플리케이션에서 제공되는 동형암호화 전용 라이브러리 환경을 기반으로 개인키와 상기 동형암호화된 데이터를 생성하는 단계를 더 포함하고, 상기 사용자 단말이 상기 분석결과를 복호화하여 확인하는 단계는, 상기 수신된 분석결과를 상기 개인키로 복호화하며, 상기 스마트 컨트랙트 생성 단계는, 상기 분석 서비스 중개서버가 사용자 및 상기 선택된 분석 서비스 제공자의 지갑주소, 분석비용, 계약 실행조건이 설정된 상기 스마트 컨트랙트를 생성하여 배포할 수 있다.Before the step of receiving the request, the step of generating, by the user terminal, a private key and the homomorphically encrypted data based on a library environment dedicated to homomorphic encryption provided in the dedicated application, wherein the user terminal receives the analysis result. In the step of decrypting and confirming, the received analysis result is decrypted with the private key, and in the step of generating a smart contract, the analysis service brokerage server determines that the wallet address, analysis cost, and contract execution conditions of the user and the selected analysis service provider are The set smart contract can be created and distributed.

본 발명의 일 실시예에 따른 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템은 민감한 개인정보를 외부에 유출시키지 않고서도 분석 서비스를 제공할 수 있다.A data analysis service mediation system based on block chain and homomorphic encryption according to an embodiment of the present invention can provide analysis services without leaking sensitive personal information to the outside.

또한, 본 발명의 일 실시예는 사용자가 필요로 하는 다양한 분석 서비스와 분석 서비스 업체를 중개할 수 있다.In addition, an embodiment of the present invention can mediate various analysis services required by users and analysis service companies.

도 1은 본 발명의 일 실시예에 따른 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템을 개략적으로 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 분석 서비스 중개서버의 구성요소를 나타내는 블럭도이다.
도 3은 본 발명의 일 실시예에 따른 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 방법을 나타내는 흐름도이다.
1 is a diagram schematically showing a data analysis service mediation system based on a block chain and homomorphic encryption according to an embodiment of the present invention.
Figure 2 is a block diagram showing the components of the analysis service mediation server according to an embodiment of the present invention.
3 is a flowchart illustrating a data analysis service mediation method based on block chain and homomorphic encryption according to an embodiment of the present invention.

상기한 바와 같은 본 발명을 첨부된 도면들과 실시예들을 통해 상세히 설명하도록 한다.The present invention as described above will be described in detail through the accompanying drawings and embodiments.

본 발명에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 발명에서 사용되는 기술적 용어는 본 발명에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 발명에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.It should be noted that technical terms used in the present invention are only used to describe specific embodiments and are not intended to limit the present invention. In addition, technical terms used in the present invention should be interpreted in terms commonly understood by those of ordinary skill in the art to which the present invention belongs, unless specifically defined otherwise in the present invention, and are excessively inclusive. It should not be interpreted in a positive sense or in an excessively reduced sense. In addition, when the technical terms used in the present invention are erroneous technical terms that do not accurately express the spirit of the present invention, they should be replaced with technical terms that those skilled in the art can correctly understand. In addition, general terms used in the present invention should be interpreted as defined in advance or according to context, and should not be interpreted in an excessively reduced sense.

또한, 본 발명에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함한다. 본 발명에서, "구성된다" 또는 "포함한다" 등의 용어는 발명에 기재된 여러 구성 요소들, 또는 여러 단계를 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.Also, singular expressions used in the present invention include plural expressions unless the context clearly dictates otherwise. In the present invention, terms such as "consisting of" or "comprising" should not be construed as necessarily including all of the various elements or steps described in the invention, and some of the elements or steps are included. It should be construed that it may not be, or may further include additional components or steps.

또한, 본 발명에서 사용되는 제 1, 제 2 등과 같이 서수를 포함하는 용어는 구성 요소들을 설명하는데 사용될 수 있지만, 구성 요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성 요소는 제 2 구성 요소로 명명될 수 있고, 유사하게 제 2 구성 요소도 제 1 구성 요소로 명명될 수 있다.In addition, terms including ordinal numbers such as first and second used in the present invention may be used to describe components, but components should not be limited by the terms. Terms are used only to distinguish one component from another. For example, a first element may be termed a second element, and similarly, a second element may be termed a first element, without departing from the scope of the present invention.

이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, a preferred embodiment according to the present invention will be described in detail with reference to the accompanying drawings, but the same or similar components are assigned the same reference numerals regardless of reference numerals, and redundant description thereof will be omitted.

또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.In addition, in describing the present invention, if it is determined that a detailed description of a related known technology may obscure the gist of the present invention, the detailed description will be omitted. In addition, it should be noted that the accompanying drawings are only for easily understanding the spirit of the present invention, and should not be construed as limiting the spirit of the present invention by the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템을 개략적으로 나타내는 도면이고, 도 2는 본 발명의 일 실시예에 따른 분석 서비스 중개서버의 구성요소를 나타내는 블록도이며, 도 3은 본 발명의 일 실시예에 따른 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 방법을 나타내는 흐름도이다.1 is a diagram schematically showing a data analysis service mediation system based on block chain and homomorphic encryption according to an embodiment of the present invention, and FIG. 2 is a diagram showing components of an analysis service mediation server according to an embodiment of the present invention. 3 is a flowchart showing a data analysis service mediation method based on block chain and homomorphic encryption according to an embodiment of the present invention.

이하, 도 1 내지 도 2를 참조하여 본 발명의 일 실시예에 따른 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템(100)을 설명하고자 한다.Hereinafter, a data analysis service mediation system 100 based on a block chain and homomorphic encryption according to an embodiment of the present invention will be described with reference to FIGS. 1 and 2.

본 발명의 실시예에 따른 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템(100)은 분석 서비스 중개서버(200), 사용자 단말(300), 분석 서비스 제공자 단말(400) 및 블록체인 네트워크(500)의 형태로 구현될 수 있다.The data analysis service mediation system 100 based on blockchain and homomorphic encryption according to an embodiment of the present invention includes an analysis service mediation server 200, a user terminal 300, an analysis service provider terminal 400, and a blockchain network. It may be implemented in the form of 500.

상기 분석 서비스 중개서버(200)는 사용자와 적어도 하나 이상의 분석 서비스 제공자를 중개하는 역할을 한다. 이를 위해, 분석 서비스 중개 서버는 사용자 단말(300)로 동형암호화를 위한 전용 애플리케이션을 제공한다. 여기서 동형 암호화를 위한 전용 애플리케이션은 사용자 단말(300)에 설치되어 사용자가 분석 서비스를 받기 원하는 개인의 데이터에 대한 동형암호화를 지원하기 위한 동형암호화 라이브러리를 탑재할 수 있다. 이와 같은 동형암호화를 지원하는 라이브러리의 예로는, BFV 및 CKKS(근사동형암호) 스킴을 지원하는 Microsoft SEAL 라이브러리, BGV, BFV, CKKS, TFHE 및 FHEW와 같은 동형 암호화 체계를 지원하는 MIT의 PALISADE 라이브러리, CKKS 및 BGV를 지원하는 IBM의 HElib 라이브러리, 고정 소수점 근사 산술을 지원하는 CKKS 스킴을 구현한 HeaAn 라이브러리, 링 기반 격자 암호화를 위한 Haskell 라이브러리, WPI가 개발한 GPU를 통한 동형암호화 고속화 라이브러리인 cuHE, CUFHE 라이브러리, 유럽의 Sorbonne에서 개발한 NFLlib 라이브러리, KU Leuven에서 개발한 TFHE 스킴 지원 라이브러리인 TFHE 라이브러리, EPFL에서 개발한 다중 사용자용 라이브러리인 Lattigo 등이 있다.The analysis service mediation server 200 serves to mediate a user and at least one analysis service provider. To this end, the analysis service mediation server provides a dedicated application for homomorphic encryption to the user terminal 300 . Here, a dedicated application for homomorphic encryption may be installed in the user terminal 300 and may include a homomorphic encryption library for supporting homomorphic encryption of personal data that the user wants to receive analysis services from. As an example of a library that supports such homomorphic encryption, Microsoft SEAL library supporting BFV and CKKS (approximate homomorphic encryption) schemes, MIT's PALISADE library supporting homomorphic encryption schemes such as BGV, BFV, CKKS, TFHE and FHEW, IBM's HElib library supporting CKKS and BGV, fixed HeaAn library that implements the CKKS scheme supporting decimal point approximation arithmetic, Haskell library for ring-based lattice encryption, cuHE and CUFHE library, which are high-speed homomorphic encryption libraries through GPU developed by WPI, NFLlib library developed by Sorbonne in Europe, and KU There are TFHE library, a TFHE scheme support library developed by Leuven, and Lattigo, a multi-user library developed by EPFL.

여기서 개인의 데이터 또는 데이터는 사용자가 분석 서비스를 받기 원하는 데이터를 의미한다. 이와 같은 데이터의 예로는 사용자의 유전정보, 의료정보, 금융정보, 쇼핑정보, 학력정보, 사진정보 등과 같이 개인의 민감한 정보일 수 있다.Here, personal data or data refers to data that a user wants to receive an analysis service for. Examples of such data may include personal sensitive information such as genetic information, medical information, financial information, shopping information, educational background information, and photo information of the user.

상기 분석 서비스 중개서버(200)는 사용자 단말(300), 분석 서비스 제공자 단말(400) 및 블록체인 네트워크(500)와 통신하여 정보나 데이터를 서로 주고 받으며 데이터 분석 서비스 중개 업무를 담당한다. 이러한 분석 서비스 중개서버(200)는, 하드웨어적으로 통상적인 웹 서버와 동일한 구성을 가지며, 소프트웨어적으로는 C, C++, Java, Visual Basic, Visual C 등과 같은 다양한 형태의 언어를 통해 구현되어 여러 가지 기능을 하는 프로그램 모듈을 포함할 수 있다. 또한, 일반적인 서버용 하드웨어에 도스(dos), 윈도우 (window), 리눅스(linux), 유닉스(unix), 매킨토시(macintosh), 안드로이드(Android), 아이오에서(iOS) 등의 운영 체제에 따라 다양하게 제공되고 있는 웹 서버 프로그램을 이용하여 구현될 수 있다.The analysis service mediation server 200 communicates with the user terminal 300, the analysis service provider terminal 400, and the blockchain network 500 to exchange information or data with each other and is responsible for data analysis service mediation. This analysis service mediation server 200 has the same configuration as a conventional web server in terms of hardware, and in terms of software, it is implemented through various types of languages such as C, C++, Java, Visual Basic, Visual C, etc. It may include program modules that perform functions. In addition, it is provided in various ways depending on the operating system such as DOS, Windows, Linux, Unix, Macintosh, Android, and iOS in general server hardware. It can be implemented using a web server program that is being developed.

사용자 단말(300)이 상기 전용 애플리케이션을 실행하여 개인의 데이터에 대한 동형암호화를 수행할 때, 개인키가 발급되어 상기 개인키를 이용하여 데이터에 대한 동형암호화가 수행되고, 동형암호화된 데이터와 상기 개인키가 사용자 단말(300)에 저장될 수 있다. 즉, 사용자 단말(300)은 전용 애플리케이션을 통하여 발급되는 개인키로 데이터에 대한 동형암호화를 수행하고, 추후 수신된 분석결과를 상기 개인키로 복호화할 수 있다. 여기서 분석결과는 분석 서비스 제공자 단말(400)이 상기 동형암호화된 데이터에 대한 분석 서비스를 수행하여 생성한 처리 데이터를 의미한다. 상기 처리 데이터, 즉 분석결과는 사용자 단말(300)에서 개인키로 복호화되어 사용자가 확인할 수 있다.When the user terminal 300 executes the dedicated application to perform homomorphic encryption on personal data, a private key is issued and homomorphic encryption on the data is performed using the private key, and the homomorphically encrypted data and the A private key may be stored in the user terminal 300 . That is, the user terminal 300 may perform homomorphic encryption on data with a private key issued through a dedicated application and decrypt an analysis result received later with the private key. Here, the analysis result means processed data generated by the analysis service provider terminal 400 performing analysis service on the homomorphically encrypted data. The processed data, that is, the analysis result, is decrypted with a private key in the user terminal 300 so that the user can check it.

상기 분석 서비스 중개서버(200)는 적어도 하나 이상의 분석 서비스의 유형을 접수하여 사용자 단말(300)로 제공하고, 사용자 단말(300)로부터 분석의뢰 및 동형암호화된 데이터를 수신한다. 적어도 하나 이상의 분석 서비스 제공자는 의료분석, 금융분석, 법률분석, 머신러닝 기반의 분석 서비스와 같은 다양한 유형의 분석 서비스를 제공할 수 있고, 적어도 하나 이상의 분석 서비스 제공자 단말(400)은 동형암호화된 데이터에 대한 연산이 가능하도록 구성될 수 있다. 적어도 하나 이상의 분석 서비스 제공자 단말(400)은 수행 가능한 분석 서비스의 유형을 분석 서비스 중개서버(200)로 등록할 수 있다. 분석 서비스 중개서버(200)는 상기 적어도 하나 이상의 분석 서비스 제공자 단말(400)로부터 등록된 제공 가능한 분석 서비스의 유형을 데이터베이스와 같은 저장수단에 저장한 뒤, 사용자 단말(300)의 요청이 있을 경우, 분석 서비스 제공자 및 제공 가능한 분석 서비스의 유형을 리스트나 목록의 형태로 사용자 단말(300)에 제공할 수 있다. 또한, 분석 서비스 중개서버(200)는 적어도 하나 이상의 분석 서비스 제공자 단말(400)로부터 제공 가능한 분석 서비스의 유형과 함께 분석비용, 서비스 수행 기간, 분석 항목, 결제처리를 위한 암호화폐 지갑주소 등과 같이 분석 서비스와 관련된 정보를 추가로 수신하여 저장하고, 사용자 단말(300)에 분석 서비스 제공자 및 제공 가능한 분석 서비스의 유형과 함께 제공할 수 있다.The analysis service mediation server 200 receives at least one type of analysis service, provides the user terminal 300 with it, and receives an analysis request and homomorphic encrypted data from the user terminal 300 . At least one analysis service provider may provide various types of analysis services such as medical analysis, financial analysis, legal analysis, and machine learning-based analysis service, and the at least one analysis service provider terminal 400 may provide homomorphically encrypted data. It can be configured to enable calculation for . At least one analysis service provider terminal 400 may register the type of analysis service that can be performed with the analysis service mediation server 200 . The analysis service mediation server 200 stores the type of analysis service that can be provided registered from the at least one analysis service provider terminal 400 in a storage means such as a database, and when there is a request from the user terminal 300, Analysis service providers and types of analysis services that can be provided may be provided to the user terminal 300 in the form of a list or a list. In addition, the analysis service mediation server 200 analyzes the type of analysis service that can be provided from at least one analysis service provider terminal 400, analysis cost, service execution period, analysis item, cryptocurrency wallet address for payment processing, etc. Service-related information may be additionally received and stored, and may be provided to the user terminal 300 along with an analysis service provider and a type of analysis service that can be provided.

상기 분석 서비스 중개서버(200)는 사용자 단말(300)로부터 분석의뢰 및 동형암호화된 데이터를 수신하면, 이를 기반으로 사용자 단말(300) 및 선택된 분석 서비스 제공자 간의 스마트 컨트랙트를 중개한다. 여기서 분석의뢰는 사용자가 선택한 분석 서비스 제공자 및 분석 서비스의 유형, 비용 지불을 위한 사용자의 암호화폐 지갑주소를 포함할 수 있다. 분석 서비스 중개서버(200)는 먼저 상기 동형암호화된 데이터를 선택된 분석 서비스 제공자 단말(400)로 전송하고, 수신된 분석의뢰, 선택된 분석 서비스 제공자의 지갑주소, 분석비용, 계약 실행조건을 기반으로 설정된 스마트 컨트랙트를 생성하여 블록체인 네트워크(500)에 배포할 수 있다. 이때 스마트 컨트랙트는 다중서명 지갑으로 생성될 수 있다. 여기서 계약 실행조건은 분석 서비스 제공자 단말(400)에서 분석 서비스를 수행하여 생성된 분석결과가 사용자 단말(300)로 제공되는 것을 의미할 수 있다. 사용자 단말(300)이 분석결과를 수신하면, 계약 실행조건 완수 신호를 생성하여 상기 스마트 컨트랙트로 전송할 수 있다. 여기서 블록체인 네트워크(500)는 스마트 컨트랙트의 배포와 실행이 가능한 이더리움과 같은 퍼블릭 블록체인 네트워크(500)가 될 수도 있고, 기업을 위한 오픈소스 기반의 하이퍼레저 패브릭과 같은 프라이빗 블록체인 네트워크(500)가 될 수도 있다.Upon receiving the analysis request and the homomorphically encrypted data from the user terminal 300, the analysis service mediation server 200 mediates a smart contract between the user terminal 300 and the selected analysis service provider. Here, the analysis request may include the analysis service provider selected by the user, the type of analysis service, and the user's cryptocurrency wallet address for payment. The analysis service mediation server 200 first transmits the homomorphically encrypted data to the selected analysis service provider terminal 400, and is set based on the received analysis request, the wallet address of the selected analysis service provider, analysis cost, and contract execution conditions. A smart contract can be created and deployed to the blockchain network 500. At this time, the smart contract can be created as a multi-signature wallet. Here, the contract execution condition may mean that the analysis result generated by performing the analysis service in the analysis service provider terminal 400 is provided to the user terminal 300 . When the user terminal 300 receives the analysis result, a contract execution condition completion signal may be generated and transmitted to the smart contract. Here, the block chain network 500 may be a public block chain network 500 such as Ethereum capable of distributing and executing smart contracts, or a private block chain network such as an open source based hyperledger fabric for enterprises (500 ) may be

상기 사용자 단말(300)은 분석 서비스 중개서버(200)로부터 적어도 하나 이상의 분석 서비스 제공자를 수신할 수 있다. 이를 위해 사용자 단말(300)은 분석 서비스 중개서버(200)에서 제공하는 전용 애플리케이션을 다운로드하여 설치할 수 있다. 사용자 단말(300)은 상기 전용 애플리케이션을 실행하고, 분석 서비스 제공자 및 제공 가능한 분석 서비스의 유형을 리스트나 목록의 형태로 수신하여 디스플레이 상에 표시할 수 있다. 사용자가 특정 분석 서비스 제공자를 선택하면 해당 분석 서비스 제공자가 제공하는 분석 서비스에 대한 자세한 정보를 확인할 수 있는데, 이와 같은 분석 서비스에 대한 자세한 정보는 분석비용, 서비스 수행 기간, 분석 항목, 결제처리를 위한 암호화폐 지갑주소 등을 포함할 수 있다.The user terminal 300 may receive at least one or more analysis service providers from the analysis service mediation server 200 . To this end, the user terminal 300 may download and install a dedicated application provided by the analysis service mediation server 200 . The user terminal 300 may execute the dedicated application, receive analysis service providers and types of analysis services that can be provided in the form of a list or list, and display them on a display. When a user selects a specific analysis service provider, he or she can check detailed information on the analysis service provided by the analysis service provider. Detailed information on such analysis service includes analysis cost, service execution period, analysis items, and payment processing It may include a cryptocurrency wallet address, etc.

이러한 사용자 단말(300)은 스마트폰(smartphone), 스마트 패드(smartpad), 타블렛 PC(Tablet PC), 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) 단말 등 사용자가 휴대 가능한 무선 통신 장치 및 거치형 PC, 노트북과 같은 휴대용 컴퓨팅 장치를 포괄한다.Such a user terminal 300 is a smartphone (smartphone), smart pad (smartpad), tablet PC (Tablet PC), 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) It covers wireless communication devices that users can carry, such as terminals, and portable computing devices such as stationary PCs and laptops.

상기 사용자 단말(300)은 사용자가 원하는 분석 서비스 제공자를 선택하여 분석의뢰를 송신하도록 하는 경우, 분석 서비스를 받기 원하는 사용자의 데이터에 대해 동형암호화를 수행하게 된다. 즉, 사용자 단말(300)이 전용 애플리케이션을 통하여 개인의 데이터에 대한 동형암호화를 수행할 때, 개인키가 발급되어 상기 개인키를 이용하여 데이터에 대한 동형암호화가 수행되고, 동형암호화된 데이터와 상기 개인키가 사용자 단말(300)에 저장될 수 있다.When the user terminal 300 selects a desired analysis service provider and transmits an analysis request, the user terminal 300 performs homomorphic encryption on the data of the user who wants to receive the analysis service. That is, when the user terminal 300 performs homomorphic encryption on personal data through a dedicated application, a private key is issued and homomorphic encryption on the data is performed using the private key, and the homomorphically encrypted data and the A private key may be stored in the user terminal 300 .

상기 사용자 단말(300)은 선택된 분석 서비스 제공자에 대한 분석의뢰를 제공할 때 동형암호화된 데이터를 함께 제공할 수 있다. 이때, 분석의뢰 및 동형암호화된 데이터는 분석 서비스 중개서버(200)로 전송된다. 여기서 분석의뢰는 사용자가 선택한 분석 서비스 제공자 및 분석 서비스의 유형, 비용 지불을 위한 사용자의 암호화폐 지갑주소를 포함할 수 있다.The user terminal 300 may also provide homomorphically encrypted data when providing an analysis request to a selected analysis service provider. At this time, the analysis request and the homomorphically encrypted data are transmitted to the analysis service brokerage server 200 . Here, the analysis request may include the analysis service provider selected by the user, the type of analysis service, and the user's cryptocurrency wallet address for payment.

상기 사용자 단말(300)은 개인이 소유한 데이터에 대하여 동형암호화를 수행할 수 있다. 사용자 단말(300)은 분석 서비스 중개서버(200)로부터 제공되는 동형암호화를 위한 전용 애플리케이션을 제공받아 설치되도록 구성될 수 있다. 여기서 동형암호화를 위한 전용 애플리케이션은 사용자가 분석 서비스를 받기 원하는 개인의 데이터에 대한 동형암호화를 지원하기 위한 동형암호화 라이브러리를 탑재할 수 있다. 이와 같은 동형암호화를 지원하는 라이브러리의 예로는 BFV 및 CKKS(근사동형암호) 스킴을 지원하는 Microsoft SEAL 라이브러리, BGV, BFV, CKKS, TFHE 및 FHEW와 같은 동형 암호화 체계를 지원하는 MIT의 PALISADE 라이브러리, CKKS 및 BGV를 지원하는 IBM의 HElib 라이브러리, 고정 소수점 근사 산술을 지원하는 CKKS 스킴을 구현한 HeaAn 라이브러리, 링 기반 격자 암호화를 위한 Haskell 라이브러리, WPI가 개발한 GPU를 통한 동형암호화 고속화 라이브러리인 cuHE, CUFHE 라이브러리, 유럽의 Sorbonne에서 개발한 NFLlib 라이브러리, KU Leuven에서 개발한 TFHE 스킴 지원 라이브러리인 TFHE 라이브러리, EPFL에서 개발한 다중 사용자용 라이브러리인 Lattigo 등이 있다.The user terminal 300 may perform homomorphic encryption on data owned by an individual. The user terminal 300 may be configured to receive and install a dedicated application for homomorphic encryption provided from the analysis service mediation server 200 . Here, a dedicated application for homomorphic encryption may be loaded with a homomorphic encryption library for supporting homomorphic encryption of personal data that the user wants to receive analysis services from. Examples of libraries that support such homomorphic encryption include the Microsoft SEAL library, which supports BFV and approximate homomorphic encryption (CKKS) schemes, MIT's PALISADE library, which supports homomorphic encryption schemes such as BGV, BFV, CKKS, TFHE, and FHEW, and CKKS. and IBM's HElib library supporting BGV, HeaAn library implementing the CKKS scheme supporting fixed-point approximation arithmetic, Haskell library for ring-based lattice encryption, cuHE and CUFHE libraries developed by WPI, which are libraries for accelerating homomorphic encryption through GPU. , the NFLlib library developed by Sorbonne in Europe, the TFHE scheme support library developed by KU Leuven, and the multi-user library Lattigo developed by EPFL.

상기 동형암호화된 데이터는 격자 암호 알고리즘을 기반으로 암호화될 수 있다. 본 발명의 실시예에 따른 데이터 분석 서비스 중개 시스템(100)은 NTRU, SS-NTRU, BLISS, New Hope, NTRU 프라임 및 LWE-Frodo 중 어느 하나의 격자 암호 알고리즘을 사용하여 동형암호화된 데이터를 생성할 수 있도록 전술한 다양한 동형암호화 라이브러리를 지원할 수 있다. 동형암호화된 데이터는 격자 암호 알고리즘을 기반으로 하는 약간의 동형암호화(Somewhat Homomorphic Encryption, SHE)로 암호화된 데이터일 수 있다. 또는 동형암호화된 데이터는 격자 암호 알고리즘을 기반으로 하는 완전 동형암호화(Fully Homomorphic Encryption, FHE)로 암호화된 데이터일 수 있다.The homomorphically encrypted data may be encrypted based on a lattice encryption algorithm. The data analysis service brokerage system 100 according to an embodiment of the present invention generates homomorphic encrypted data using any one of the lattice encryption algorithms of NTRU, SS-NTRU, BLISS, New Hope, NTRU prime, and LWE-Frodo. It is possible to support the various homomorphic encryption libraries described above so that Homomorphic encrypted data may be data encrypted with some homomorphic encryption (SHE) based on a lattice encryption algorithm. Alternatively, the homomorphically encrypted data may be data encrypted by Fully Homomorphic Encryption (FHE) based on a lattice encryption algorithm.

동형암호화에는 세 가지 유형이 있는데 부분 동형암호화(Partially Homomorphic Encryption, PHE), 약간의 동형암호화(Somewhat Homomorphic Encryption, SHE), 완전 동형 암호화(Fully Homomorphic Encryption, FHE)가 있다. 부분 동형암호화(PHE)는 주어진 데이터 셋에 대해 무제한의 시간 동안 한 가지 유형의 수학 연산만 허용한다. 약간의 동형암호화(SHE)는 부분 동형암호화(PHE)에 비해 허용범위가 넓으나 여전히 제한적인 것으로, 주어진 데이터 셋에 대해 덧셈과 곱셈을 몇 차례만 허용할 수 있다. 완전 동형암호화(FHE)는 데이터 셋에 대해 횟수 제한 없이 다양한 유형의 연산을 허용한다. 따라서 분석 서비스의 유형에 따라 약간의 동형암호화(SHE) 또는 완전 동형암호화(FHE)가 적용될 수 있다.There are three types of homomorphic encryption: Partially Homomorphic Encryption (PHE), Somewhat Homomorphic Encryption (SHE), and Fully Homomorphic Encryption (FHE). Partially Homomorphic Encryption (PHE) allows only one type of mathematical operation for an unlimited amount of time on a given data set. Slight Homomorphic Encryption (SHE) is more permissive than Partial Homomorphic Encryption (PHE), but still restrictive, allowing only a few additions and multiplications for a given data set. Fully Homomorphic Encryption (FHE) allows various types of operations on a data set without limit. Therefore, some homomorphic encryption (SHE) or full homomorphic encryption (FHE) can be applied depending on the type of analysis service.

상기 사용자 단말(300)은 블록체인 네트워크(500)에 배포된 스마트 컨트랙트에 대하여 전자서명을 수행할 수 있다. 순서에 상관없이, 사용자 단말(300) 또는 서비스 제공자 단말은 배포된 스마트 컨트랙트에 대하여 전자서명을 수행할 수 있고, 스마트 컨트랙트는 다중서명 지갑으로 생성될 수 있으며, 양자 또는 분석 서비스 중개서버(200)가 포함된 3자의 전자서명이 가능하도록 구성될 수 있다.The user terminal 300 may perform an electronic signature on the smart contract distributed in the blockchain network 500. Regardless of the order, the user terminal 300 or the service provider terminal can perform a digital signature on the distributed smart contract, and the smart contract can be created as a multi-signature wallet, and the quantum or analysis service brokerage server 200 It can be configured to enable a third party's electronic signature including.

상기 사용자 단말(300)은 전자서명을 수행한 후, 분석 서비스 제공자 단말(400)로부터 동형암호화된 데이터에 대한 분석결과를 수신할 수 있다. 사용자 단말(300)은 상기 전용 애플리케이션에서 제공되는 개인키를 이용하여 상기 분석결과를 복호화할 수 있다. 이를 통해 사용자는 복호화된 분석결과를 확인함으로써 자신이 원하는 데이터에 대한 분석결과를 알 수 있게 된다.After performing the digital signature, the user terminal 300 may receive an analysis result for the homomorphically encrypted data from the analysis service provider terminal 400 . The user terminal 300 may decrypt the analysis result using a private key provided by the dedicated application. Through this, the user can know the analysis result for the desired data by checking the decrypted analysis result.

상기 사용자 단말(300)은 분석결과를 수신하면, 계약 실행조건 완수 신호를 생성하여 스마트 컨트랙트로 전송할 수 있다. 스마트 컨트랙트가 계약 실행조건 완수 신호를 수신하면, 사용자 단말(300)이 스마트 컨트랙트에 대한 전자서명을 수행하면서 분석비용의 가치에 상응하는 미리 예치된 암호화폐가 분석 서비스 제공자 단말(400)의 암호화폐 지갑주소로 전송되어 비용을 지불함으로써 계약이 완수되게 된다.Upon receiving the analysis result, the user terminal 300 may generate a contract execution condition completion signal and transmit it to the smart contract. When the smart contract receives the contract execution condition completion signal, the user terminal 300 performs the electronic signature on the smart contract, and the pre-deposited cryptocurrency corresponding to the value of the analysis cost is the cryptocurrency of the analysis service provider terminal 400. The contract is completed by sending it to the wallet address and paying the fee.

상기 분석 서비스 제공자 단말(400)은 제공 가능한 분석 서비스의 유형을 상기 분석 서비스 중개서버(200)에 등록할 수 있다. 이와 더불어, 분석 서비스 제공자 단말(400)은 분석비용, 서비스 수행 기간, 분석 항목, 결제처리를 위한 암호화폐 지갑주소 등과 같이 분석 서비스와 관련된 정보를 추가로 상기 분석 서비스 중개서버(200)로 제공할 수 있다.The analysis service provider terminal 400 may register the types of analysis services that can be provided with the analysis service mediation server 200 . In addition, the analysis service provider terminal 400 may additionally provide information related to the analysis service, such as analysis cost, service execution period, analysis item, cryptocurrency wallet address for payment processing, to the analysis service brokerage server 200. can

상기 분석 서비스 제공자 단말(400)은 상기 분석 서비스 중개서버(200)로부터 동형암호화된 데이터를 수신하여 분석 서비스를 수행할 수 있다. 이를 위해, 분석 서비스 제공자 단말(400)은 서비스 제공을 위한 데이터 분석이 가능한 수준의 데이터 처리 및 수행 능력을 갖춘 컴퓨팅 장치일 수 있다. 즉, 분석 서비스 제공자 단말(400)은 동형암호화된 데이터에 대한 연산이 가능하도록 구성될 수 있다.The analysis service provider terminal 400 may perform an analysis service by receiving homomorphically encrypted data from the analysis service mediation server 200 . for teeth, The analysis service provider terminal 400 may be a computing device capable of processing and performing data at a level capable of analyzing data for service provision. That is, the analysis service provider terminal 400 may be configured to enable operations on homomorphically encrypted data.

상기 분석 서비스 제공자 단말(400)은 의료분석, 금융분석, 법률분석, 머신러닝 기반의 분석 서비스 중 적어도 하나의 분석 서비스를 제공할 수 있다.The analysis service provider terminal 400 may provide at least one analysis service among medical analysis, financial analysis, legal analysis, and machine learning-based analysis service.

상기 분석 서비스 제공자 단말(400)은 분석 서비스 중개서버(200)에 의해 배포된 스마트 컨트랙트에 대한 전자서명을 수행할 수 있다. 순서에 상관없이, 사용자 단말(300) 또는 서비스 제공자 단말은 배포된 스마트 컨트랙트에 대하여 전자서명을 수행할 수 있고, 스마트 컨트랙트는 다중서명 지갑으로 생성될 수 있으며, 양자 또는 분석 서비스 중개서버(200)가 포함된 3자의 전자서명이 가능하도록 구성될 수 있다.The analysis service provider terminal 400 may perform an electronic signature on the smart contract distributed by the analysis service mediation server 200. Regardless of the order, the user terminal 300 or the service provider terminal can perform a digital signature on the distributed smart contract, and the smart contract can be created as a multi-signature wallet, and the quantum or analysis service brokerage server 200 It can be configured to enable a third party's electronic signature including.

상기 블록체인 네트워크(500)는 스마트 컨트랙트의 배포와 실행이 가능한 이더리움과 같은 퍼블릭 블록체인 네트워크(500)가 될 수도 있고, 기업을 위한 오픈소스 기반의 하이퍼레저 패브릭과 같은 프라이빗 블록체인 네트워크(500)가 될 수도 있다.The blockchain network 500 is It can be a public blockchain network 500, such as Ethereum, where smart contracts can be deployed and executed, or a private blockchain network 500, such as an open source based Hyperledger Fabric for enterprises.

본 실시예에 따른 분석 서비스 중개서버(200), 사용자 단말(300), 분석 서비스 제공자 단말(400) 및 블록체인 네트워크(500)를 연결하는 네트워크 통신의 일 예로는, 이동 통신을 위한 기술표준들 또는 통신방식(예를 들어, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced), 5G 등)에 따라 구축된 이동 통신망을 포함할 수 있으나, 특별히 한정하는 것은 아니다. 또한, 유선 통신망의 일 예로는, LAN(Local Area Network), WAN(Wide Area Network)등의 폐쇄형 네트워크일 수 있으며, 인터넷과 같은 개방형 네트워크인 것이 바람직하다. 인터넷은 TCP/IP 프로토콜 및 그 상위계층에 존재하는 여러 서비스, 즉 HTTP(HyperText Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service), NIS(Network Information Service)를 제공하는 전세계적인 개방형 컴퓨터 네트워크 구조를 의미한다.An example of network communication connecting the analysis service mediation server 200, the user terminal 300, the analysis service provider terminal 400, and the blockchain network 500 according to this embodiment is the technical standards for mobile communication Or communication method (eg, GSM (Global System for Mobile communication), CDMA (Code Division Multi Access), CDMA2000 (Code Division Multi Access 2000), EV-DO (Enhanced Voice-Data Optimized or Enhanced Voice-Data Only) , WCDMA (Wideband CDMA), HSDPA (High Speed Downlink Packet Access), HSUPA (High Speed Uplink Packet Access), LTE (Long Term Evolution), LTE-A (Long Term Evolution-Advanced), 5G, etc.) It may include a mobile communication network, but is not particularly limited. In addition, an example of the wired communication network may be a closed network such as a local area network (LAN) and a wide area network (WAN), preferably an open network such as the Internet. The Internet is based on the TCP/IP protocol and several services that exist on its upper layer, such as HTTP (HyperText Transfer Protocol), Telnet, FTP (File Transfer Protocol), DNS (Domain Name System), SMTP (Simple Mail Transfer Protocol), SNMP ( Simple Network Management Protocol), Network File Service (NFS), and Network Information Service (NIS).

상기 분석 서비스 중개서버(200)는 서비스 정보 저장부(210), 애플리케이션 제공부(220), 분석의뢰 접수부(230) 및 스마트 컨트랙트 제공부(240)를 포함할 수 있다.The analysis service mediation server 200 may include a service information storage unit 210, an application providing unit 220, an analysis request receiving unit 230, and a smart contract providing unit 240.

상기 서비스 정보 저장부(210)는 상기 적어도 하나 이상의 분석 서비스 제공자 및 제공 가능한 분석 서비스의 유형을 저장할 수 있다. 서비스 정보 저장부(210)는 상기 적어도 하나 이상의 분석 서비스 제공자 단말(400)로부터 등록된 제공 가능한 분석 서비스의 유형을 데이터베이스와 같은 저장수단에 저장할 수 있다.The service information storage unit 210 may store the one or more analysis service providers and types of analysis services that can be provided. The service information storage unit 210 may store the types of available analysis services registered by the at least one analysis service provider terminal 400 in a storage means such as a database.

상기 애플리케이션 제공부(220)는 상기 사용자 단말(300)로 동형암호화를 위한 전용 애플리케이션을 제공할 수 있다. 여기서 동형 암호화를 위한 전용 애플리케이션은 사용자 단말(300)에 설치되어 사용자가 분석 서비스를 받기 원하는 개인의 데이터에 대한 동형암호화를 지원하기 위한 동형암호화 라이브러리를 탑재할 수 있다. 이와 같은 동형암호화를 지원하는 라이브러리의 예로는, BFV 및 CKKS(근사동형암호) 스킴을 지원하는 Microsoft SEAL 라이브러리, BGV, BFV, CKKS, TFHE 및 FHEW와 같은 동형 암호화 체계를 지원하는 MIT의 PALISADE 라이브러리, CKKS 및 BGV를 지원하는 IBM의 HElib 라이브러리, 고정 소수점 근사 산술을 지원하는 CKKS 스킴을 구현한 HeaAn 라이브러리, 링 기반 격자 암호화를 위한 Haskell 라이브러리, WPI가 개발한 GPU를 통한 동형암호화 고속화 라이브러리인 cuHE, CUFHE 라이브러리, 유럽의 Sorbonne에서 개발한 NFLlib 라이브러리, KU Leuven에서 개발한 TFHE 스킴 지원 라이브러리인 TFHE 라이브러리, EPFL에서 개발한 다중 사용자용 라이브러리인 Lattigo 등이 있다.The application provider 220 may provide a dedicated application for homomorphic encryption to the user terminal 300 . Here, a dedicated application for homomorphic encryption may be installed in the user terminal 300 and may include a homomorphic encryption library for supporting homomorphic encryption of personal data that the user wants to receive analysis services from. As an example of a library that supports such homomorphic encryption, Microsoft SEAL library supporting BFV and CKKS (approximate homomorphic encryption) schemes, MIT's PALISADE library supporting homomorphic encryption schemes such as BGV, BFV, CKKS, TFHE and FHEW, IBM's HElib library supporting CKKS and BGV, fixed HeaAn library that implements the CKKS scheme supporting decimal point approximation arithmetic, Haskell library for ring-based lattice encryption, cuHE and CUFHE library, which are high-speed homomorphic encryption libraries through GPU developed by WPI, NFLlib library developed by Sorbonne in Europe, and KU There are TFHE library, a TFHE scheme support library developed by Leuven, and Lattigo, a multi-user library developed by EPFL.

상기 분석의뢰 접수부(230)는 상기 사용자 단말(300)로 상기 적어도 하나 이상의 분석 서비스 제공자의 목록을 제공하고 상기 분석의뢰 및 동형암호화된 데이터를 수신하며, 상기 동형암호화된 데이터를 상기 선택된 분석 서비스 제공자 단말(400)로 전송할 수 있다. 분석의뢰 접수부(230)는 사용자 단말(300)의 요청이 있을 경우, 분석 서비스 제공자 및 제공 가능한 분석 서비스의 유형을 리스트나 목록의 형태로 사용자 단말(300)에 제공할 수 있다. 또한, 분석의뢰 접수부(230)는 적어도 하나 이상의 분석 서비스 제공자 단말(400)로부터 제공 가능한 분석 서비스의 유형과 함께 분석비용, 서비스 수행 기간, 분석 항목, 결제처리를 위한 암호화폐 지갑주소 등과 같이 분석 서비스와 관련된 정보를 추가로 수신하여 저장하고, 사용자 단말(300)에 분석 서비스 제공자 및 제공 가능한 분석 서비스의 유형과 함께 제공할 수 있다. 분석의뢰 접수부(230)는 상기 동형암호화된 데이터를 상기 선택된 분석 서비스 제공자 단말(400)로 전송할 수 있다.The analysis request receiving unit 230 provides a list of the at least one analysis service provider to the user terminal 300, receives the analysis request and homomorphically encrypted data, and transfers the homomorphically encrypted data to the selected analysis service provider. It can be transmitted to the terminal 400. Upon receiving a request from the user terminal 300, the analysis request receiving unit 230 may provide the user terminal 300 with an analysis service provider and a type of analysis service that can be provided in the form of a list or a list. In addition, the analysis request reception unit 230 provides analysis services such as analysis cost, service execution period, analysis item, cryptocurrency wallet address for payment processing, together with the types of analysis services that can be provided from at least one analysis service provider terminal 400. Information related to may be additionally received and stored, and may be provided to the user terminal 300 along with an analysis service provider and a type of analysis service that can be provided. The analysis request receiving unit 230 may transmit the homomorphically encrypted data to the selected analysis service provider terminal 400 .

상기 스마트 컨트랙트 제공부(240)는 상기 분석의뢰를 기반으로 상기 스마트 컨트랙트를 생성하고 블록체인 네트워크(500)로 배포할 수 있다. 보다 구체적으로, 스마트 컨트랙트 제공부(240)는 사용자 및 상기 선택된 분석 서비스 제공자의 지갑주소, 분석비용, 계약 실행조건이 설정된 상기 스마트 컨트랙트를 생성하여 블록체인 네트워크(500)에 배포할 수 있다.The smart contract provider 240 may generate the smart contract based on the analysis request and distribute it to the blockchain network 500. More specifically, the smart contract providing unit 240 may generate the smart contract in which the wallet address of the user and the selected analysis service provider, analysis cost, and contract execution conditions are set, and distribute it to the blockchain network 500.

상기 스마트 컨트랙트 제공부(240)는 상기 스마트 컨트랙트를 생성하고 블록체인 네트워크(500)로 배포하기 전에, 외부의 스마트 컨트랙트 감사기관 서버와 연동하여 상기 스마트 컨트랙트에 대한 감사를 의뢰할 수 있다. 스마트 컨트랙트는 지정된 조건이 실행되면 불가역적으로 계약이 실행되는 만큼, 스마트 컨트랙트 상에 저장된 코드에 문제가 있거나, 논리적 오류가 있을 경우 되돌리기 어려운 만큼, 공인된 외부의 스마트 컨트랙트 감사기관 서버와 연계하여 스마트 컨트랙트 상에 잠재된 문제점 또는 취약점 여부에 대하여 감사를 받을 수 있다. 상기 외부의 스마트 컨트랙트 감사기관 서버가 상기 스마트 컨트랙트를 감사한 결과 문제점이 발견되면 문제점과 제안된 솔루션을 스마트 컨트랙트 제공부(240)로 전송할 수 있다. 스마트 컨트랙트 제공부(240)가 상기 스마트 컨트랙트의 문제점 및 제안된 솔루션을 수신하는 경우, 제안된 솔루션을 기반으로 상기 스마트 컨트랙트를 수정하여 블록체인 네트워크(500)로 배포할 수 있다.The smart contract provider 240 may request an audit of the smart contract in conjunction with an external smart contract audit agency server before creating the smart contract and distributing it to the blockchain network 500. Smart contracts are executed irreversibly when specified conditions are executed, and it is difficult to reverse if there is a problem with the code stored on the smart contract or a logical error. It can be audited for potential problems or vulnerabilities in the contract. If a problem is found as a result of the external smart contract audit agency server auditing the smart contract, it can transmit the problem and the proposed solution to the smart contract provider 240. When the smart contract providing unit 240 receives the problem of the smart contract and the proposed solution, it can modify the smart contract based on the proposed solution and distribute it to the blockchain network 500.

도 3을 참조하면, 본 발명의 다른 실시예에 따른 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 방법은 분석 서비스 등록 단계, 애플리케이션 제공 단계, 분석 서비스 제공자 표시 단계, 의뢰 접수 단계, 스마트 컨트랙트 생성 단계, 전자서명 단계, 분석결과 제공 단계, 계약 실행 단계 및 분석결과 복호화 단계를 포함할 수 있다.Referring to FIG. 3, a data analysis service mediation method based on blockchain and homomorphic encryption according to another embodiment of the present invention includes an analysis service registration step, an application provision step, an analysis service provider display step, a request acceptance step, and a smart contract. It may include a generation step, a digital signature step, an analysis result providing step, a contract execution step, and an analysis result decryption step.

상기 분석 서비스 등록 단계는 분석 서비스 중개서버(200)에 의해, 적어도 하나 이상의 분석 서비스 제공자 단말(400)로부터 제공 가능한 분석 서비스의 유형을 저장할 수 있다. 이 단계에서, 분석 서비스 중개서버(200)는 상기 적어도 하나 이상의 분석 서비스 제공자 단말(400)로부터 등록된 제공 가능한 분석 서비스의 유형과 함께 분석비용, 서비스 수행 기간, 분석 항목, 결제처리를 위한 암호화폐 지갑주소 등과 같이 분석 서비스와 관련된 정보를 데이터베이스와 같은 저장수단에 저장할 수 있다.In the analysis service registration step, the analysis service mediation server 200 may store types of analysis services that can be provided from at least one analysis service provider terminal 400 . In this step, the analysis service brokerage server 200 determines the analysis cost, service performance period, analysis item, cryptocurrency for payment processing together with the type of analysis service registered from the at least one analysis service provider terminal 400. Information related to the analysis service, such as a wallet address, may be stored in a storage means such as a database.

상기 애플리케이션 제공 단계는 상기 분석 서비스 중개서버(200)에 의해, 사용자 단말(300)로 동형암호화를 위한 전용 애플리케이션을 제공할 수 있다. 여기서 동형 암호화를 위한 전용 애플리케이션은 사용자 단말(300)에 설치되어 사용자가 분석 서비스를 받기 원하는 개인의 데이터에 대한 동형암호화를 지원하기 위한 동형암호화 라이브러리를 탑재할 수 있다. 이와 같은 동형암호화를 지원하는 라이브러리의 예로는, BFV 및 CKKS(근사동형암호) 스킴을 지원하는 Microsoft SEAL 라이브러리, BGV, BFV, CKKS, TFHE 및 FHEW와 같은 동형 암호화 체계를 지원하는 MIT의 PALISADE 라이브러리, CKKS 및 BGV를 지원하는 IBM의 HElib 라이브러리, 고정 소수점 근사 산술을 지원하는 CKKS 스킴을 구현한 HeaAn 라이브러리, 링 기반 격자 암호화를 위한 Haskell 라이브러리, WPI가 개발한 GPU를 통한 동형암호화 고속화 라이브러리인 cuHE, CUFHE 라이브러리, 유럽의 Sorbonne에서 개발한 NFLlib 라이브러리, KU Leuven에서 개발한 TFHE 스킴 지원 라이브러리인 TFHE 라이브러리, EPFL에서 개발한 다중 사용자용 라이브러리인 Lattigo 등이 있다.In the application providing step, a dedicated application for homomorphic encryption may be provided to the user terminal 300 by the analysis service mediation server 200 . Here, a dedicated application for homomorphic encryption may be installed in the user terminal 300 and may include a homomorphic encryption library for supporting homomorphic encryption of personal data that the user wants to receive analysis services from. As an example of a library that supports such homomorphic encryption, Microsoft SEAL library supporting BFV and CKKS (approximate homomorphic encryption) schemes, MIT's PALISADE library supporting homomorphic encryption schemes such as BGV, BFV, CKKS, TFHE and FHEW, IBM's HElib library supporting CKKS and BGV, fixed HeaAn library that implements the CKKS scheme supporting decimal point approximation arithmetic, Haskell library for ring-based lattice encryption, cuHE and CUFHE library, which are high-speed homomorphic encryption libraries through GPU developed by WPI, NFLlib library developed by Sorbonne in Europe, and KU There are TFHE library, a TFHE scheme support library developed by Leuven, and Lattigo, a multi-user library developed by EPFL.

여기서 개인의 데이터 또는 데이터는 사용자가 분석 서비스를 받기 원하는 데이터를 의미한다. 이와 같은 데이터의 예로는 사용자의 유전정보, 의료정보, 금융정보, 쇼핑정보, 학력정보, 사진정보 등과 같이 개인의 민감한 정보일 수 있다.Here, personal data or data refers to data that a user wants to receive an analysis service for. Examples of such data may include personal sensitive information such as genetic information, medical information, financial information, shopping information, educational background information, and photo information of the user.

상기 분석 서비스 제공자 표시 단계에서 상기 분석 서비스 중개서버(200)에 의해, 상기 사용자 단말(300)로 상기 적어도 하나 이상의 분석 서비스 제공자의 목록을 제공할 수 있다. 사용자 단말(300)의 요청이 있을 경우, 분석 서비스 중개서버(200)는 분석 서비스 제공자 및 제공 가능한 분석 서비스의 유형을 리스트나 목록의 형태로 사용자 단말(300)에 제공할 수 있다. 또한, 분석 서비스 중개서버(200)는 적어도 하나 이상의 분석 서비스 제공자 단말(400)로부터 제공 가능한 분석 서비스의 유형과 함께 분석비용, 서비스 수행 기간, 분석 항목, 결제처리를 위한 암호화폐 지갑주소 등과 같이 분석 서비스와 관련된 정보를 추가로 제공할 수 있다.In the analysis service provider display step, the analysis service mediation server 200 may provide a list of at least one analysis service provider to the user terminal 300 . When there is a request from the user terminal 300, the analysis service brokerage server 200 may provide analysis service providers and types of analysis services that can be provided to the user terminal 300 in the form of a list or a list. In addition, the analysis service mediation server 200 analyzes the type of analysis service that can be provided from at least one analysis service provider terminal 400, analysis cost, service execution period, analysis item, cryptocurrency wallet address for payment processing, etc. You may provide additional information related to the service.

상기 의뢰 접수 단계에서 상기 분석 서비스 중개서버(200)에 의해, 상기 사용자 단말(300)로부터 분석의뢰 및 동형암호화된 데이터를 수신할 수 있다. 여기서 분석의뢰는 사용자가 선택한 분석 서비스 제공자 및 분석 서비스의 유형, 비용 지불을 위한 사용자의 암호화폐 지갑주소를 포함할 수 있다.In the request receiving step, the analysis service mediation server 200 may receive an analysis request and homomorphically encrypted data from the user terminal 300 . Here, the analysis request may include the analysis service provider selected by the user, the type of analysis service, and the user's cryptocurrency wallet address for payment.

상기 스마트 컨트랙트 생성 단계에서 상기 분석의뢰 및 동형암호화된 데이터를 기반으로 스마트 컨트랙트를 생성하고 블록체인 네트워크(500)로 배포하며, 상기 동형암호화된 데이터를 상기 분석 서비스 제공자 단말(400)로 전송할 수 있다. 이를 위하여 분석 서비스 중개서버(200)는 먼저 상기 동형암호화된 데이터를 선택된 분석 서비스 제공자 단말(400)로 전송하고, 수신된 분석의뢰, 선택된 분석 서비스 제공자의 지갑주소, 분석비용, 계약 실행조건을 기반으로 설정된 스마트 컨트랙트를 생성하여 블록체인 네트워크(500)에 배포할 수 있다. 이때 스마트 컨트랙트는 다중서명 지갑으로 생성될 수 있다. 여기서 계약 실행조건은 분석 서비스 제공자 단말(400)에서 분석 서비스를 수행하여 생성된 분석결과가 사용자 단말(300)로 제공되는 것을 의미할 수 있다.In the smart contract creation step, a smart contract is created based on the analysis request and homomorphically encrypted data, distributed to the blockchain network 500, and the homomorphically encrypted data can be transmitted to the analysis service provider terminal 400. . To this end, the analysis service mediation server 200 first transmits the homomorphically encrypted data to the selected analysis service provider terminal 400, and based on the received analysis request, the wallet address of the selected analysis service provider, analysis cost, and contract execution conditions. A smart contract set to can be created and distributed to the blockchain network (500). At this time, the smart contract can be created as a multi-signature wallet. Here, the contract execution condition may mean that the analysis result generated by performing the analysis service in the analysis service provider terminal 400 is provided to the user terminal 300 .

상기 전자서명 단계에서 상기 사용자 단말(300) 및 선택된 분석 서비스 제공자 단말(400)이 상기 스마트 컨트랙트에 각각 전자서명을 수행할 수 있다.In the electronic signature step, the user terminal 300 and the selected analysis service provider terminal 400 may each perform an electronic signature on the smart contract.

상기 분석결과 제공 단계에서 상기 선택된 분석 서비스 제공자 단말(400)이 상기 동형암호화된 데이터에 대한 분석결과를 생성하여 상기 사용자 단말(300)로 제공할 수 있다.In the analysis result providing step, the selected analysis service provider terminal 400 may generate an analysis result for the homomorphically encrypted data and provide it to the user terminal 300 .

상기 계약 실행 단계에서 상기 사용자 단말(300)이 상기 분석결과를 수신하면 계약 실행조건 완수 신호를 생성하여 상기 스마트 컨트랙트로 전송할 수 있다.In the contract execution step, when the user terminal 300 receives the analysis result, a contract execution condition completion signal may be generated and transmitted to the smart contract.

상기 분석결과 복호화 단계에서 상기 사용자 단말(300)이 상기 분석결과를 복호화 할 수 있다. 여기서 분석결과는 분석 서비스 제공자 단말(400)이 상기 동형암호화된 데이터에 대한 분석 서비스를 수행하여 생성한 처리 데이터를 의미한다. 상기 처리 데이터, 즉 분석결과는 사용자 단말(300)에서 개인키로 복호화되어 사용자가 확인할 수 있다.In the analysis result decoding step, the user terminal 300 may decode the analysis result. Here, the analysis result means processed data generated by the analysis service provider terminal 400 performing analysis service on the homomorphically encrypted data. The processed data, that is, the analysis result, is decrypted with a private key in the user terminal 300 so that the user can check it.

상기 의뢰 접수 단계 이전에, 상기 사용자 단말(300)이 상기 전용 애플리케이션에서 제공되는 동형암호화 전용 라이브러리 환경을 기반으로 개인키와 상기 동형암호화된 데이터를 생성하는 단계를 더 포함할 수 있다.Before the request acceptance step, the user terminal 300 may further include generating a private key and the homomorphically encrypted data based on a library environment dedicated to homomorphic encryption provided by the dedicated application.

상기 분석결과 복호화 단계에서 사용자 단말(300)이 상기 수신된 분석결과를 상기 개인키로 복호화하여 확인할 수 있다.In the analysis result decoding step, the user terminal 300 may decrypt and check the received analysis result with the private key.

상기 스마트 컨트랙트 생성 단계에서, 상기 분석 서비스 중개서버(200)가 사용자 및 상기 선택된 분석 서비스 제공자의 지갑주소, 분석비용, 계약 실행조건이 설정된 상기 스마트 컨트랙트를 생성하여 배포할 수 있다.In the smart contract creation step, the analysis service brokerage server 200 may generate and distribute the smart contract in which the wallet address, analysis cost, and contract execution conditions of the user and the selected analysis service provider are set.

여기서 상기 동형암호화된 데이터는 격자 암호 알고리즘을 기반으로 하는 약간의 동형암호화(Somewhat Homomorphic Encryption, SHE) 또는 동형암호화(Fully Homomorphic Encryption, FHE)로 암호화된 데이터일 수 있다.Here, the homomorphically encrypted data may be data encrypted by Somewhat Homomorphic Encryption (SHE) or Fully Homomorphic Encryption (FHE) based on a lattice encryption algorithm.

이상에서는 본 발명에 따른 바람직한 실시예들에 대하여 도시하고 또한 설명하였다. 그러나 본 발명은 상술한 실시예에 한정되지 아니하며, 특허 청구의 범위에서 첨부하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능할 것이다.In the above, preferred embodiments according to the present invention have been shown and described. However, the present invention is not limited to the above-described embodiments, and various modifications can be made by anyone having ordinary knowledge in the technical field to which the present invention belongs without departing from the gist of the present invention appended within the scope of the claims. .

100: 데이터 분석 서비스 중개 시스템
200: 분석 서비스 중개서버
210: 서비스 정보 저장부
220: 애플리케이션 제공부
230: 분석의뢰 접수부
240: 스마트 컨트랙트 제공부
300: 사용자 단말
400: 분석 서비스 제공자 단말
500: 블록체인 네트워크
100: data analysis service mediation system
200: analysis service brokerage server
210: service information storage unit
220: application providing unit
230: Analysis request reception department
240: smart contract provision unit
300: user terminal
400: analysis service provider terminal
500: blockchain network

Claims (10)

적어도 하나 이상의 분석 서비스 제공자 중에서 하나의 분석 서비스 제공자를 선택하여 분석의뢰와 함께 동형암호화된 데이터를 제공하는 사용자 단말;
제공 가능한 분석 서비스의 유형을 등록하고 상기 동형암호화된 데이터에 대한 분석결과를 상기 사용자 단말로 제공하는 적어도 하나 이상의 분석 서비스 제공자 단말; 및
상기 적어도 하나 이상의 분석 서비스의 유형을 접수하여 상기 사용자 단말로 제공하고, 상기 분석의뢰 및 동형암호화된 데이터를 기반으로 상기 사용자 단말 및 선택된 분석 서비스 제공자 간의 스마트 컨트랙트를 중개하는 분석 서비스 중개서버
를 포함하고,
상기 분석 서비스 중개서버는
상기 적어도 하나 이상의 분석 서비스 제공자 및 제공 가능한 분석 서비스의 유형을 저장하는 서비스 정보 저장부;
상기 사용자 단말로 동형암호화를 위한 전용 애플리케이션을 제공하는 애플리케이션 제공부;
상기 사용자 단말로 상기 적어도 하나 이상의 분석 서비스 제공자의 목록을 제공하고 상기 분석의뢰 및 동형암호화된 데이터를 수신하며, 상기 동형암호화된 데이터를 상기 선택된 분석 서비스 제공자 단말로 전송하는 분석의뢰 접수부; 및
상기 분석의뢰를 기반으로 상기 스마트 컨트랙트를 생성하고 블록체인 네트워크로 배포하는 스마트 컨트랙트 제공부
를 포함하며,
상기 스마트 컨트랙트 제공부는
상기 스마트 컨트랙트를 블록체인 네트워크로 배포하기 전에, 미리 연동된 외부의 스마트 컨트랙트 감사기관 서버에 상기 스마트 컨트랙트에 대한 감사를 의뢰하고, 상기 외부의 스마트 컨트랙트 감사기관 서버로부터 상기 스마트 컨트랙트의 문제점 및 제안된 솔루션을 수신하는 경우, 제안된 솔루션을 기반으로 상기 스마트 컨트랙트를 수정하여 상기 블록체인 네트워크로 배포하는 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템.
a user terminal selecting one analysis service provider from among one or more analysis service providers and providing homomorphically encrypted data together with an analysis request;
at least one analysis service provider terminal registering a type of analysis service that can be provided and providing an analysis result for the homomorphically encrypted data to the user terminal; and
An analysis service mediation server that receives and provides the at least one type of analysis service to the user terminal, and mediates a smart contract between the user terminal and a selected analysis service provider based on the analysis request and homomorphically encrypted data.
including,
The analysis service brokerage server
a service information storage unit for storing the at least one analysis service provider and types of analysis services that can be provided;
an application providing unit providing a dedicated application for homomorphic encryption to the user terminal;
an analysis request receiving unit for providing a list of the at least one analysis service provider to the user terminal, receiving the analysis request and homomorphically encrypted data, and transmitting the homomorphically encrypted data to the selected analysis service provider terminal; and
A smart contract providing unit that creates the smart contract based on the analysis request and distributes it to the blockchain network
Including,
The smart contract provider
Before distributing the smart contract to the blockchain network, request an audit of the smart contract to an external smart contract audit agency server linked in advance, and from the external smart contract audit agency server, the smart contract problem and proposed When receiving a solution, a data analysis service brokerage system based on blockchain and homomorphic encryption that modifies the smart contract based on the proposed solution and distributes it to the blockchain network.
삭제delete 제1항에 있어서,
상기 동형암호화된 데이터는 격자 암호 알고리즘을 기반으로 하는 약간의 동형암호화(Somewhat Homomorphic Encryption, SHE)로 암호화된 데이터인, 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템.
According to claim 1,
The homomorphic encrypted data is data encrypted with some homomorphic encryption (Somewhat Homomorphic Encryption, SHE) based on a lattice encryption algorithm, a data analysis service brokerage system based on block chain and homomorphic encryption.
제1항에 있어서,
상기 동형암호화된 데이터는 격자 암호 알고리즘을 기반으로 하는 완전 동형암호화(Fully Homomorphic Encryption, FHE)로 암호화된 데이터인, 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템.
According to claim 1,
The homomorphic encrypted data is data encrypted with Fully Homomorphic Encryption (FHE) based on a lattice encryption algorithm, data analysis service brokerage system based on block chain and homomorphic encryption.
제1항에 있어서,
상기 적어도 하나 이상의 분석 서비스 제공자 단말은 의료분석, 금융분석, 법률분석, 머신러닝 기반의 분석 서비스 중 적어도 하나의 분석 서비스를 제공하는 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템.
According to claim 1,
The at least one analysis service provider terminal is a data analysis service mediation system based on blockchain and homomorphic encryption providing at least one analysis service of medical analysis, financial analysis, legal analysis, and machine learning-based analysis service.
제1항에 있어서,
상기 스마트 컨트랙트 제공부는
사용자 및 상기 선택된 분석 서비스 제공자의 지갑주소, 분석비용, 계약 실행조건이 설정된 상기 스마트 컨트랙트를 생성하여 블록체인 네트워크에 배포하고,
상기 사용자 단말 및 선택된 분석 서비스 제공자 단말은 상기 스마트 컨트랙트에 각각 전자서명을 수행하며,
상기 사용자 단말이 상기 분석결과를 수신하면, 상기 계약 실행조건 완수 신호를 생성하여 상기 스마트 컨트랙트로 전송하는 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템.
According to claim 1,
The smart contract provider
Create and distribute the smart contract in which the wallet address, analysis cost, and contract execution conditions of the user and the selected analysis service provider are set, and distributed to the blockchain network;
The user terminal and the selected analysis service provider terminal each perform a digital signature on the smart contract,
When the user terminal receives the analysis result, the data analysis service brokerage system based on block chain and homomorphic encryption for generating the contract execution condition completion signal and transmitting it to the smart contract.
제6항에 있어서,
상기 사용자 단말은
상기 전용 애플리케이션에서 제공되는 동형암호화 전용 라이브러리 환경을 기반으로 개인키와 상기 동형암호화된 데이터를 생성하고, 상기 수신된 분석결과를 상기 개인키로 복호화하는 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템.
According to claim 6,
The user terminal
Brokerage of data analysis service based on block chain and homomorphic encryption that generates a private key and the homomorphically encrypted data based on a library environment dedicated to homomorphic encryption provided by the dedicated application and decrypts the received analysis result with the private key system.
분석 서비스 중개서버에 의해, 적어도 하나 이상의 분석 서비스 제공자 단말로부터 제공 가능한 분석 서비스의 유형을 저장하는 분석 서비스 등록 단계;
상기 분석 서비스 중개서버에 의해, 사용자 단말로 동형암호화를 위한 전용 애플리케이션을 제공하는 애플리케이션 제공 단계;
상기 분석 서비스 중개서버에 의해, 상기 사용자 단말로 상기 적어도 하나 이상의 분석 서비스 제공자의 목록을 제공하는 분석 서비스 제공자 표시 단계;
상기 분석 서비스 중개서버에 의해, 상기 사용자 단말로부터 분석의뢰 및 동형암호화된 데이터를 수신하는 의뢰 접수 단계;
상기 분석 서비스 중개서버에 의해, 상기 분석의뢰를 기반으로 스마트 컨트랙트를 생성하고 블록체인 네트워크로 배포하며, 상기 동형암호화된 데이터를 상기 분석 서비스 제공자 단말로 전송하는 스마트 컨트랙트 생성 단계;
상기 사용자 단말 및 선택된 분석 서비스 제공자 단말이 상기 스마트 컨트랙트에 각각 전자서명을 수행하는 전자서명 단계;
상기 선택된 분석 서비스 제공자 단말이 상기 동형암호화된 데이터에 대한 분석결과를 생성하여 상기 사용자 단말로 제공하는 분석결과 제공 단계;
상기 사용자 단말이 상기 분석결과를 수신하면, 계약 실행조건 완수 신호를 생성하여 상기 스마트 컨트랙트로 전송하는 계약 실행 단계; 및
상기 사용자 단말이 상기 분석결과를 복호화하여 확인하는 단계
를 포함하고,
상기 분석 서비스 중개서버에 의해, 상기 분석의뢰를 기반으로 스마트 컨트랙트를 생성하고 블록체인 네트워크로 배포하며, 상기 동형암호화된 데이터를 상기 분석 서비스 제공자 단말로 전송하는 스마트 컨트랙트 생성 단계는,
상기 스마트 컨트랙트를 블록체인 네트워크로 배포하기 전에, 미리 연동된 외부의 스마트 컨트랙트 감사기관 서버에 상기 스마트 컨트랙트에 대한 감사를 의뢰하는 단계; 및
상기 외부의 스마트 컨트랙트 감사기관 서버로부터 상기 스마트 컨트랙트의 문제점 및 제안된 솔루션을 수신하는 경우, 제안된 솔루션을 기반으로 상기 스마트 컨트랙트를 수정하여 상기 블록체인 네트워크로 배포하는 단계
를 더 포함하는 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 방법.
An analysis service registration step of storing, by an analysis service mediation server, a type of analysis service that can be provided from at least one analysis service provider terminal;
An application providing step of providing a dedicated application for homomorphic encryption to a user terminal by the analysis service mediation server;
an analysis service provider display step of providing a list of the at least one analysis service provider to the user terminal by the analysis service mediation server;
a request acceptance step of receiving an analysis request and homomorphically encrypted data from the user terminal by the analysis service mediation server;
A smart contract creation step of generating, by the analysis service mediation server, a smart contract based on the analysis request, distributing it to a blockchain network, and transmitting the homomorphically encrypted data to the analysis service provider terminal;
An electronic signature step in which the user terminal and the selected analysis service provider terminal respectively perform digital signatures on the smart contract;
an analysis result providing step in which the selected analysis service provider terminal generates an analysis result for the homomorphically encrypted data and provides it to the user terminal;
a contract execution step of generating and transmitting a contract execution condition completion signal to the smart contract when the user terminal receives the analysis result; and
The user terminal decoding and confirming the analysis result
including,
The smart contract creation step of generating a smart contract based on the analysis request by the analysis service mediation server, distributing it to a blockchain network, and transmitting the homomorphically encrypted data to the analysis service provider terminal,
Prior to distributing the smart contract to the blockchain network, requesting an audit of the smart contract to an external smart contract audit agency server interlocked in advance; and
Modifying the smart contract based on the proposed solution and distributing it to the blockchain network when receiving the problem of the smart contract and the proposed solution from the external smart contract audit agency server
A data analysis service brokerage method based on block chain and homomorphic encryption further comprising.
제8항에 있어서,
상기 동형암호화된 데이터는 격자 암호 알고리즘을 기반으로 하는 약간의 동형암호화(Somewhat Homomorphic Encryption, SHE) 또는 동형암호화(Fully Homomorphic Encryption, FHE)로 암호화된 데이터인, 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 방법.
According to claim 8,
The homomorphic encrypted data is data encrypted with Somewhat Homomorphic Encryption (SHE) or Fully Homomorphic Encryption (FHE) based on a lattice encryption algorithm, data based on blockchain and homomorphic encryption. Analytical service brokerage method.
제8항에 있어서,
상기 의뢰 접수 단계 이전에,
상기 사용자 단말이 상기 전용 애플리케이션에서 제공되는 동형암호화 전용 라이브러리 환경을 기반으로 개인키와 상기 동형암호화된 데이터를 생성하는 단계를 더 포함하고,
상기 사용자 단말이 상기 분석결과를 복호화하여 확인하는 단계는,
상기 수신된 분석결과를 상기 개인키로 복호화하며,
상기 스마트 컨트랙트 생성 단계는,
상기 분석 서비스 중개서버가 사용자 및 상기 선택된 분석 서비스 제공자의 지갑주소, 분석비용, 계약 실행조건이 설정된 상기 스마트 컨트랙트를 생성하여 배포하는 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 방법.
According to claim 8,
Prior to the request acceptance step,
Generating, by the user terminal, a private key and the homomorphically encrypted data based on a library environment dedicated to homomorphic encryption provided by the dedicated application;
The step of the user terminal decoding and confirming the analysis result,
Decrypting the received analysis result with the private key;
The smart contract creation step,
A data analysis service mediation method based on blockchain and homomorphic encryption in which the analysis service mediation server generates and distributes the smart contract in which the wallet addresses, analysis costs, and contract execution conditions of the user and the selected analysis service provider are set.
KR1020220028805A 2022-03-07 2022-03-07 Method and system for data analysis service mediation based on blockchain and homomorphic encryption KR102471210B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220028805A KR102471210B1 (en) 2022-03-07 2022-03-07 Method and system for data analysis service mediation based on blockchain and homomorphic encryption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220028805A KR102471210B1 (en) 2022-03-07 2022-03-07 Method and system for data analysis service mediation based on blockchain and homomorphic encryption

Publications (1)

Publication Number Publication Date
KR102471210B1 true KR102471210B1 (en) 2022-11-29

Family

ID=84235478

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220028805A KR102471210B1 (en) 2022-03-07 2022-03-07 Method and system for data analysis service mediation based on blockchain and homomorphic encryption

Country Status (1)

Country Link
KR (1) KR102471210B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230421351A1 (en) * 2022-06-27 2023-12-28 Nec Corporation Of America Homomorphic encryption using smart contracts
KR102663780B1 (en) * 2023-06-01 2024-05-10 주식회사 비트코인그룹 Bitcoin hunter system combined real life automatic mining and homomorphic encryption based data analysis service mediation

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170022455A (en) * 2015-08-20 2017-03-02 에스케이텔레콤 주식회사 Analytics center and control method thereof, and service providing device and control method thereof in co-operational privacy protection communication environment
KR101964254B1 (en) 2017-01-03 2019-04-01 아주대학교산학협력단 Person to person trading method and apparatus by using blockchain and distributed hash table
KR102024694B1 (en) 2018-04-10 2019-09-24 주식회사 에이비씨 Decentralized service platform using multiple service nodes based on block chain
KR20190133573A (en) * 2018-05-23 2019-12-03 권형석 Block Chain Trading System with Smart Contract And That way
WO2020246020A1 (en) * 2019-06-07 2020-12-10 富士通株式会社 Information management program, information management method, and information management device
KR20210082615A (en) * 2019-12-26 2021-07-06 서울여자대학교 산학협력단 System for matching servers and clients considering privacy and integrity
KR20220009643A (en) * 2020-07-16 2022-01-25 삼성전자주식회사 Storage controller, and client and server including the same, method of operating the same

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170022455A (en) * 2015-08-20 2017-03-02 에스케이텔레콤 주식회사 Analytics center and control method thereof, and service providing device and control method thereof in co-operational privacy protection communication environment
KR101964254B1 (en) 2017-01-03 2019-04-01 아주대학교산학협력단 Person to person trading method and apparatus by using blockchain and distributed hash table
KR102024694B1 (en) 2018-04-10 2019-09-24 주식회사 에이비씨 Decentralized service platform using multiple service nodes based on block chain
KR20190133573A (en) * 2018-05-23 2019-12-03 권형석 Block Chain Trading System with Smart Contract And That way
WO2020246020A1 (en) * 2019-06-07 2020-12-10 富士通株式会社 Information management program, information management method, and information management device
KR20210082615A (en) * 2019-12-26 2021-07-06 서울여자대학교 산학협력단 System for matching servers and clients considering privacy and integrity
KR20220009643A (en) * 2020-07-16 2022-01-25 삼성전자주식회사 Storage controller, and client and server including the same, method of operating the same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230421351A1 (en) * 2022-06-27 2023-12-28 Nec Corporation Of America Homomorphic encryption using smart contracts
KR102663780B1 (en) * 2023-06-01 2024-05-10 주식회사 비트코인그룹 Bitcoin hunter system combined real life automatic mining and homomorphic encryption based data analysis service mediation

Similar Documents

Publication Publication Date Title
US11212261B2 (en) Data computation in a multi-domain cloud environment
US11750681B2 (en) Mapping between user interface fields and protocol information
JP6844876B2 (en) Secure data acquisition of sensitive data over the network
JP7036494B2 (en) Secure data distribution of sensitive data over content delivery networks
JP7014492B2 (en) Secure data egress of sensitive data over the network
KR102471210B1 (en) Method and system for data analysis service mediation based on blockchain and homomorphic encryption
US10069809B2 (en) System and method for secure transmission of web pages using encryption of their content
US8751788B2 (en) Payment encryption accelerator
US20020178353A1 (en) Secure messaging using self-decrypting documents
US20120179909A1 (en) Systems and methods for providing individual electronic document secure storage, retrieval and use
EP3313052A1 (en) Means for enhancing privacy of users of a cloud-based service
US20230208619A1 (en) Method to request sensitive data from a recipient and to establish a secure communication with the recipient
KR102663780B1 (en) Bitcoin hunter system combined real life automatic mining and homomorphic encryption based data analysis service mediation
Sreenivas et al. Enhancing the security for information with virtual data centers in cloud
Czubak et al. A Note on Keys and Keystreams of Chacha20 for Multi-Key Channels
Neto Post-Quantum Cryptography methods applied to the Brazilian instant payment system (Pix): A feasibility study
Alhibshi Encryption algorithms for data security in Local Area Network
Aziz et al. SIMSSP: Secure Instant Messaging System for Smart Phones
Herbert et al. Secure mashup-providing platforms-implementing encrypted wiring
Potey et al. Minimizing Ciphertext in Homomorphic Encryption Scheme for Cloud Data
Kounelis et al. Secure and privacy-enhanced e-mail system based on the concept of proxies
Ceesay et al. An authentication model for delegation, attribution and least privilege
Ganz et al. Security broker for multimedia wireless LANs
CN117896153A (en) Data processing method, apparatus, device, medium, and program product
Akintola et al. A ROBUST AND HYBRID SECURITY MODEL FOR PROTECTING MOBILE AGENTS AGAINST MALICIOUS HOSTS IN E-TRANSACTIONS

Legal Events

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