KR20240013335A - Blockchain-based financial transaction security system - Google Patents

Blockchain-based financial transaction security system Download PDF

Info

Publication number
KR20240013335A
KR20240013335A KR1020220090728A KR20220090728A KR20240013335A KR 20240013335 A KR20240013335 A KR 20240013335A KR 1020220090728 A KR1020220090728 A KR 1020220090728A KR 20220090728 A KR20220090728 A KR 20220090728A KR 20240013335 A KR20240013335 A KR 20240013335A
Authority
KR
South Korea
Prior art keywords
data
smart contract
fragments
fragment
blockchain
Prior art date
Application number
KR1020220090728A
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 KR1020220090728A priority Critical patent/KR20240013335A/en
Publication of KR20240013335A publication Critical patent/KR20240013335A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • 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
    • 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/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Computing Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

일실시예에 따른 시스템은 공유하고자 하는 데이터를 등록하기 위한 트랜잭션을 생성하여 블록체인상의 스마트 컨트랙트에 전송하고, 데이터를 파편화하고 복호화하여 적어도 하나의 데이터 보관자에게 데이터 파편과 파편 복호화 키를 업로드하는 데이터 제공자; 데이터 등록 내역, 데이터 접근 권한 내역, 데이터 보관자 내역이 기록되고, 데이터 제공자가 등록한 데이터의 접근 권한을 승인하는 스마트 컨트랙트; 데이터 제공자로부터 전송된 데이터를 보관 및 관리하고, 소정의 데이터 요청자로부터 데이터 요청을 받을 경우 스마트 컨트랙트를 통해 데이터 요청자가 데이터 접근 권한이 있는지를 확인하고 데이터 파편과 파편 복호화 키를 데이터 요청자에게 전달하는 데이터 보관자; 및 스마트 컨트랙트로부터 데이터 접근 권한을 획득하고 데이터 보관자로부터 제공된 데이터 파편과 파편 복호화키를 이용하여 데이터 원본을 획득하는 데이터 요청자를 포함할 수 있다.The system according to one embodiment creates a transaction to register data to be shared, transmits it to a smart contract on the blockchain, fragments and decrypts the data, and uploads the data fragments and fragment decryption key to at least one data custodian. provider; A smart contract that records data registration details, data access permission details, and data custodian details, and approves access permission to data registered by the data provider; Data that stores and manages data transmitted from a data provider, and when receiving a data request from a given data requestor, checks whether the data requester has permission to access the data through a smart contract and delivers the data fragments and fragment decryption key to the data requester. keeper; and a data requester who obtains data access rights from a smart contract and obtains the original data using data fragments and fragment decryption keys provided by the data custodian.

Description

블록체인 기반 금융거래 보안 시스템{BLOCKCHAIN-BASED FINANCIAL TRANSACTION SECURITY SYSTEM}Blockchain-based financial transaction security system{BLOCKCHAIN-BASED FINANCIAL TRANSACTION SECURITY SYSTEM}

아래 실시예들은 블록체인 기반 금융거래를 보안하는 기술에 관한 것이다.The examples below relate to technology that secures blockchain-based financial transactions.

블록체인은 특정 암호화 기능을 사용해 중앙관리자 없이 데이터를 모든 참여자가 공유 및 업데이트하는 기술로서, 데이터 조작을 방지하며 거래의 투명화가 가능하다. 블록체인(Blockchain)은 공공 거래 장부라고도 부르며 가상 화폐로 거래할 때 발생할 수 있는 해킹을 막는 기술이다.Blockchain is a technology that uses specific encryption functions to share and update data among all participants without a central administrator, preventing data manipulation and making transactions transparent. Blockchain, also called a public transaction ledger, is a technology that prevents hacking that can occur when transacting with virtual currency.

기존 금융 회사의 경우 중앙 집중형 서버에 거래 기록을 보관하는 반면, 블록체인은 거래에 참여하는 모든 사용자에게 거래 내역을 보내주며 거래 때마다 이를 대조해 데이터 위조를 막는 방식을 사용하는 탈 중앙화적 특징을 갖는다.While existing financial companies store transaction records on a centralized server, blockchain has decentralized features that prevent data falsification by sending transaction details to all users participating in the transaction and comparing them for each transaction. have

따라서, 금융거래에 있어서 데이터의 보안성을 강화시킨 블록체인 기반 금융거래 보안 시스템에 대한 기술의 개발이 요구된다.Therefore, the development of technology for a blockchain-based financial transaction security system that enhances the security of data in financial transactions is required.

실시예들은 블록체인 기반 금융거래 보안 시스템을 제공하고자 한다.Embodiments seek to provide a blockchain-based financial transaction security system.

실시예들은 데이터 요청자가 데이터 접근 권한을 획득했을 경우 데이터 제공자의 개입 없이 네트워크로부터 안전하게 데이터를 획득하고자 한다.Embodiments seek to safely obtain data from the network without the intervention of the data provider when the data requester obtains data access authority.

실시예들은 데이터를 제공하는 자가 데이터를 네트워크에 등록한 상태에서 데이터를 요청하는 자가 네트워크를 통해 데이터 접근 권한을 획득하고 데이터를 요청할 경우, 그리고 데이터를 제공하는 자가 데이터를 요청하는 자를 알지 않아도 되는 경우에 안전한 데이터 거래를 위해 암호화된 데이터의 파편을 분산 저장함으로써, 데이터가 보관되는 스토리지 운영 주체조차 데이터를 획득할 수 없도록 하여 오로지 데이터 접근 권한을 얻은 자만이 데이터를 얻게 하고자 한다.Embodiments are when a data provider registers data on the network and a data requester obtains data access rights through the network and requests data, and when the data provider does not need to know the data requester. By distributing and storing fragments of encrypted data for safe data transactions, we aim to prevent even the storage operator where the data is stored from obtaining the data, allowing only those who have access to the data to obtain the data.

일실시예에 따르면, 블록체인 기반 금융거래 보안 시스템에 있어서, 공유하고자 하는 데이터를 등록하기 위한 트랜잭션을 생성하여 블록체인상의 스마트 컨트랙트에 전송하고, 데이터를 파편화하고 복호화하여 적어도 하나의 데이터 보관자에게 데이터 파편과 파편 복호화 키를 업로드하는 데이터 제공자; 데이터 등록 내역, 데이터 접근 권한 내역, 데이터 보관자 내역이 기록되고, 상기 데이터 제공자가 등록한 데이터의 접근 권한을 승인하는 스마트 컨트랙트; 상기 데이터 제공자로부터 전송된 데이터를 보관 및 관리하고, 소정의 데이터 요청자로부터 데이터 요청을 받을 경우 상기 스마트 컨트랙트를 통해 상기 데이터 요청자가 데이터 접근 권한이 있는지를 확인하고 데이터 파편과 파편 복호화 키를 상기 데이터 요청자에게 전달하는 데이터 보관자; 및 상기 스마트 컨트랙트로부터 데이터 접근 권한을 획득하고 상기 데이터 보관자로부터 제공된 데이터 파편과 파편 복호화키를 이용하여 데이터 원본을 획득하는 데이터 요청자를 포함할 수 있다.According to one embodiment, in a blockchain-based financial transaction security system, a transaction to register data to be shared is created and transmitted to a smart contract on the blockchain, the data is fragmented and decrypted, and the data is sent to at least one data holder. Data providers who upload fragments and fragment decryption keys; A smart contract that records data registration details, data access permission details, and data custodian details, and approves access permission to data registered by the data provider; Stores and manages the data transmitted from the data provider, and when receiving a data request from a certain data requestor, verifies whether the data requestor has data access rights through the smart contract and sends the data fragments and fragment decryption key to the data requestor. data custodian; And it may include a data requester who obtains data access rights from the smart contract and obtains the original data using the data fragments and fragment decryption key provided by the data custodian.

상기 시스템에 있어서, 상기 데이터 등록 내역은 데이터 제공자 정보와 데이터 파편 정보, 데이터 파편 보관자 매칭 정보를 포함하고, 상기 데이터 접근 권한 내역은 누가 어떤 데이터에 접근이 가능한지에 대한 내역을 포함하고, 상기 데이터 보관자 내역은 데이터 보관자의 스토리지 엔드포인트 정보(서버 접속 정보)와 현재 보관중인 데이터의 용량과 총 보관 가능한 용량 정보를 포함할 수 있다.In the system, the data registration details include data provider information, data fragment information, and data fragment keeper matching information, the data access authority details include details of who can access what data, and the data keeper The details may include the data custodian's storage endpoint information (server connection information), the capacity of data currently being stored, and the total storage capacity information.

상기 데이터 제공자는 전체 데이터를 비트 단위로 섞어서 데이터 전체를 암호화하고, 전체 암호화된 데이터를 적어도 2개 이상의 파편으로 분할한 후, 각 데이터 파편을 각각 상이한 공개키로 암호화하고, 상기 스마트 컨트랙트는 상기 데이터 제공자의 요청에 따라, 각 데이터 보관 서버의 용량 정보를 포함한 데이터 보관 서버 정보에 근거하여, 파편 데이터를 저장가능한 파편 데이터 보관서버를 매칭하여 상기 데이터 제공자에게 매칭 정보를 제공하고, 매칭 정보를 저장하고, 상기 데이터 요청자는 데이터 권한 인증용 공개키를 포함하는 데이터 권한 획득 요청 트랙잭션을 형성하여 상기 스마트 컨트랙트에 전송할 수 있다.The data provider encrypts the entire data by mixing the entire data bit by bit, divides the entire encrypted data into at least two fragments, and then encrypts each data fragment with a different public key, and the smart contract is executed by the data provider. Upon request, based on data storage server information including capacity information of each data storage server, match fragment data storage servers capable of storing fragment data, provide matching information to the data provider, and store the matching information, The data requestor may form a data permission acquisition request transaction including a public key for data permission authentication and transmit it to the smart contract.

일실시예에 따른 장치는 하드웨어와 결합되어 상술한 방법들 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램에 의해 제어될 수 있다.The device according to one embodiment may be combined with hardware and controlled by a computer program stored in a medium to execute any one of the above-described methods.

실시예들은 블록체인 기반 금융거래 보안 시스템을 제공할 수 있다.Embodiments may provide a blockchain-based financial transaction security system.

실시예들은 데이터 요청자가 데이터 접근 권한을 획득했을 경우 데이터 제공자의 개입 없이 네트워크로부터 안전하게 데이터를 획득할 수 있다.In embodiments, when a data requestor obtains data access authority, data can be safely obtained from the network without the intervention of a data provider.

실시예들은 데이터를 제공하는 자가 데이터를 네트워크에 등록한 상태에서 데이터를 요청하는 자가 네트워크를 통해 데이터 접근 권한을 획득하고 데이터를 요청할 경우, 그리고 데이터를 제공하는 자가 데이터를 요청하는 자를 알지 않아도 되는 경우에 안전한 데이터 거래를 위해 암호화된 데이터의 파편을 분산 저장함으로써, 데이터가 보관되는 스토리지 운영 주체조차 데이터를 획득할 수 없도록 하여 오로지 데이터 접근 권한을 얻은 자만이 데이터를 얻게 할 수 있다.Embodiments are when a data provider registers data on the network and a data requester obtains data access rights through the network and requests data, and when the data provider does not need to know the data requester. By distributing and storing fragments of encrypted data for safe data transactions, even the storage operator where the data is stored cannot obtain the data, allowing only those who have access to the data to obtain the data.

도 1은 일실시예에 따른 시스템의 구성을 설명하기 위한 도면이다.
도 2는 일실시예에 따른 탈중앙화 시스템 환경에서의 블록체인 기반 데이터 거래 및 보관을 위한 데이터 보안 시스템을 설명하기 위한 구성도이다.
도 3은 일실시예에 따른 데이터 등록 및 획득 과정을 설명하기 위한 도면이다.
도 4는 일실시예에 따른 장치의 구성의 예시도이다.
1 is a diagram for explaining the configuration of a system according to an embodiment.
Figure 2 is a configuration diagram to explain a data security system for blockchain-based data transaction and storage in a decentralized system environment according to an embodiment.
Figure 3 is a diagram for explaining a data registration and acquisition process according to an embodiment.
Figure 4 is an exemplary diagram of the configuration of a device according to an embodiment.

이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, embodiments will be described in detail with reference to the attached drawings. However, various changes can be made to the embodiments, so the scope of the patent application is not limited or limited by these embodiments. It should be understood that all changes, equivalents, or substitutes for the embodiments are included in the scope of rights.

실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Specific structural or functional descriptions of the embodiments are disclosed for illustrative purposes only and may be modified and implemented in various forms. Accordingly, the embodiments are not limited to the specific disclosed form, and the scope of the present specification includes changes, equivalents, or substitutes included in the technical spirit.

제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various components, but these terms should be interpreted only for the purpose of distinguishing one component from another component. For example, a first component may be named a second component, and similarly, the second component may also be named a first component.

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

실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the examples are for descriptive purposes only and should not be construed as limiting. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, terms such as “comprise” or “have” are intended to designate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are not intended to indicate the presence of one or more other features. It should be understood that this does not exclude in advance the possibility of the existence or addition of elements, numbers, steps, operations, components, parts, or combinations thereof.

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

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, when describing with reference to the accompanying drawings, identical components will be assigned the same reference numerals regardless of the reference numerals, and overlapping descriptions thereof will be omitted. In describing the embodiments, if it is determined that detailed descriptions of related known technologies may unnecessarily obscure the gist of the embodiments, the detailed descriptions are omitted.

실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다.Embodiments may be implemented in various types of products such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent vehicles, kiosks, and wearable devices.

도 1은 일실시예에 따른 시스템의 구성을 설명하기 위한 도면이다.1 is a diagram for explaining the configuration of a system according to an embodiment.

도 1을 참조하면, 장치(100)는 데이터 파편으로 분할하기 전에 원본 데이터를 암호화시킨다. 이에 의해, 데이터 보관자나 데이터 파편을 획득한 자가 원본 데이터의 일부라도 유추할 수 없도록 할 수 있다.Referring to FIG. 1, the device 100 encrypts the original data before dividing it into data fragments. By this, it is possible to ensure that the data keeper or the person who acquires the data fragments cannot infer even part of the original data.

장치(100)는 암호화된 원본 데이터를 복호화하기 위한 복호화 키를 블록체인상의 스마트 컨트랙트에 기록할 수 있다.The device 100 may record a decryption key for decrypting the encrypted original data in a smart contract on the blockchain.

장치(100)는 데이터 보관 주체가 데이터 획득을 할 수 없도록 복수개의 데이터 보관자들이 암호화된 각 다른 데이터 파편을 보관할 수 있다.The device 100 can store different data fragments encrypted by a plurality of data keepers so that the data keeper cannot obtain the data.

장치(100)는 데이터의 원본과 데이터의 파편, 암호화된 데이터 파편의 해시 값을 블록체인상의 스마트 컨트랙트에 기록함으로써 무결성을 검증할 수 있다.The device 100 can verify the integrity by recording the original data, data fragments, and hash values of the encrypted data fragments in a smart contract on the blockchain.

장치(100)는 동일한 데이터 파편을 복수의 데이터 보관자에게 보관시킴으로써 일부 보관자가 네트워크에서 이탈하여도 데이터 파편이 유실되지 않도록 할 수 있다The device 100 stores the same data fragments in multiple data custodians so that the data fragments are not lost even if some custodians leave the network.

도 2는 일실시예에 따른 탈중앙화 시스템 환경에서의 블록체인 기반 데이터 거래 및 보관을 위한 데이터 보안 시스템을 설명하기 위한 구성도이다.Figure 2 is a configuration diagram to explain a data security system for blockchain-based data transaction and storage in a decentralized system environment according to an embodiment.

도 2를 참조하면, 블록체인 기반 금융거래 보안 시스템(1)은 데이터 제공자(20), 블록체인(스마트 컨트랙트)(30), 데이터 보관자(보관 서버)(40), 데이터 요청자(50)를 포함한다Referring to Figure 2, the blockchain-based financial transaction security system (1) includes a data provider (20), a blockchain (smart contract) (30), a data custodian (storage server) (40), and a data requestor (50). do

본 발명의 블록체인은, 프라이빗(private) 블록체인, 퍼블릭(public) 블록체인 또는 프라이빗(private) 블록체인과 퍼블릭(public) 블록체인의 혼합형 등 다양한 형태의 블록체인을 포함하는 개념일 수 있다.The blockchain of the present invention may be a concept that includes various types of blockchain, such as a private blockchain, a public blockchain, or a mixture of private blockchain and public blockchain.

데이터 제공자(20)와 데이터 요청자(50)는 블록체인 상의 하나의 노드를 포함할 수 있다.The data provider 20 and the data requester 50 may include one node on the blockchain.

데이터 제공자(20)와, 스마트 컨트랙트(30), 데이터 요청자(50)의 기능을 하는 노드는, 태블릿 PC(Tablet PC), 랩톱(Laptop), 개인용 컴퓨터(PC: Personal Computer), 스마트폰(Smart Phone), 개인휴대용 정보단말(PDA: Personal DigitalAssistant), 스마트 TV 및 이동통신 단말(Mobile Communication Terminal) 등 중 어느 하나일 수 있다.The nodes that function as the data provider 20, smart contract 30, and data requester 50 are tablet PCs, laptops, personal computers, and smart phones. It may be one of a phone, a personal digital assistant (PDA), a smart TV, and a mobile communication terminal.

데이터 제공자(20)는 데이터를 소유하고 있으며 공유하고자 하는 데이터를 스마트 컨트랙트(30)에 등록하고 복수의 데이터 보관자(40)에게 데이터 파편과 파편 복호화 키를 업로드할 수 있다. The data provider 20 owns the data and can register the data it wants to share with the smart contract 30 and upload data fragments and fragment decryption keys to a plurality of data custodians 40.

이와 같이, 복수개의 데이터 보관자들이 암호화된 각 다른 데이터 파편을 보관하게 함으로써, 데이터 보관 주체가 데이터 획득을 할 수 없게 할 수 있다.In this way, by having a plurality of data custodians store different encrypted data fragments, it is possible to prevent the data custodian from obtaining the data.

데이터 제공자(20)는 동일한 데이터 파편을 복수의 데이터 보관자에게 업로드하여 보관시킬 수 있다. 이에 의해, 일부 보관자가 네트워크에서 이탈하여도 데이터 파편이 유실되지 않게 되어, 데이터 가용성이 확보된다.The data provider 20 can upload and store the same data fragments to multiple data custodians. As a result, data fragments are not lost even if some custodians leave the network, ensuring data availability.

데이터 보관자(40)는 데이터 제공자(20)로부터 받은 데이터를 보관 및 관리하다가 데이터 요청을 받을 경우 스마트 컨트랙트(30)를 통해 데이터 요청자(50)가 데이터 접근 권한이 있는지를 확인하고 데이터 파편과 파편 복호화 키를 데이터 요청자(50)에게 전달할 수 있다.The data custodian 40 stores and manages the data received from the data provider 20, and when receiving a data request, checks whether the data requester 50 has permission to access the data through the smart contract 30 and decrypts the data fragments and fragments. The key can be delivered to the data requester 50.

데이터 요청자(50)는 스마트 컨트랙트(30)로부터 데이터 접근 권한을 얻고 데이터 보관자(40)로부터 데이터 파편과 파편 복호화키를 요청하여 데이터 원본을 얻는다.The data requester 50 obtains data access rights from the smart contract 30 and obtains the original data by requesting data fragments and fragment decryption keys from the data keeper 40.

스마트 컨트랙트(30)는 데이터 거래를 위한 기능을 제공하기 위해 블록체인상에 존재할 수 있다.Smart contracts 30 may exist on the blockchain to provide functionality for data transactions.

스마트 컨트랙트(30)는 블록체인을 구성하는 다수의 노드(서버, 컴퓨터 등)에 설치되는 프로그램으로서는 실행 가능한 바이트 코드로 컴파일되어 적어도 하나의 컴퓨팅 장치 상에서 실행될 수 있는 소스 코드이다. 스마트 컨트랙트(30)가 하나의 노드에 설치되면, 블록체인내 다른 노드로 전파되어, 모든 노드가 스마트 컨트랙트를 가지게 된다.The smart contract 30 is a program installed on multiple nodes (servers, computers, etc.) that constitute a blockchain and is source code that is compiled into executable byte code and can be executed on at least one computing device. Once the smart contract 30 is installed on one node, it is propagated to other nodes in the blockchain, so that all nodes have a smart contract.

스마트 컨트랙트(30)에는 데이터 등록 내역, 데이터 접근 권한 내역, 데이터 보관자 내역이 기록되어 있다.The smart contract 30 records data registration details, data access authority details, and data custodian details.

데이터 등록 내역에서는 데이터의 정보와 파편 정보, 파편과 보관자 매칭 정보를 포함할 수 있다.Data registration details may include data information, fragment information, and fragment and custodian matching information.

데이터 접근 권한 내역에서는 누가 어떤 데이터에 접근이 가능한지에 대한 내역을 포함할 수 있다.Data access rights details can include details about who can access what data.

데이터 보관자 내역은 데이터 보관자(40)의 스토리지 엔드포인트 정보(서버 접속 정보)와 현재 보관중인 데이터의 용량과 총 보관 가능한 용량 정보를 포함할 수 있다.Data custodian details may include storage endpoint information (server connection information) of the data custodian 40, the capacity of data currently being stored, and total storage capacity information.

해당 스마트 컨트랙트(30) 상에서 트랜잭션을 발생시킴으로써, 데이터 제공자(2))는 데이터를 등록하게 되며, 데이터 요청자(50)는 데이터 접근 권한을 획득하게 되고, 데이터 보관자(40)는 자신의 스토리지를 등록할 수 있다.By generating a transaction on the smart contract 30, the data provider 2) registers data, the data requester 50 obtains data access rights, and the data keeper 40 registers its storage. can do.

도 3은 일실시예에 따른 데이터 등록 및 획득 과정을 설명하기 위한 도면이다.Figure 3 is a diagram for explaining a data registration and acquisition process according to an embodiment.

일실시예에 따른 데이터 등록 방법은 먼저, 데이터 준비 과정에서는 데이터를 전체 암호화 후 데이터를 여러 파편으로 나눈다. 이때 데이터의 파편은 비트(bit) 혹은 바이트(byte) 단위로 나눌 수 있다. 그 다음에 각 파편을 암호화하고, 앞의 각 단계에 대한 데이터의 해시 값을 얻는다. In the data registration method according to one embodiment, first, in the data preparation process, the entire data is encrypted and the data is divided into several fragments. At this time, the data fragments can be divided into bits or bytes. We then encrypt each fragment and obtain the hash value of the data for each of the previous steps.

데이터 등록 과정에서는 데이터 등록을 위한 트랜잭션을 발생시키며, 이때 데이터 준비 과정에서 얻은 데이터 해시 값들과 데이터 준비 과정에서 암호화한 데이터를 복호화 가능한 복호화 키를 스마트 컨트랙트(30)에 기록할 수 있다. In the data registration process, a transaction for data registration is generated, and at this time, the data hash values obtained in the data preparation process and the decryption key that can decrypt the data encrypted in the data preparation process can be recorded in the smart contract 30.

데이터 보관자 매칭 과정에서는 각 데이터 파편이 각 데이터 보관자(혹은 데이터 보관 그룹)으로 매칭될 수 있다.In the data holder matching process, each data fragment can be matched to each data holder (or data storage group).

매칭 방법은 데이터 제공자(20)가 직접 선택하거나, 무작위로 매칭할 수도 있고, 데이터 보관 용량이 낮은 순으로 혹은 데이터 보관 여유가 많은 순으로 매칭할 수도 있다. 이때, 매칭 정보가 스마트 컨트랙트(30)의 데이터 등록 내역에 기록되어야 한다.The matching method may be directly selected by the data provider 20, may be randomly matched, or may be matched in the order of low data storage capacity or high data storage capacity. At this time, matching information must be recorded in the data registration history of the smart contract 30.

일실시예에 따른 데이터 획득 방법은 데이터 권한 획득 과정에서는 스마트 컨트랙트(30)를 통해 데이터 권한을 획득한다. 이때 스마트 컨트랙트에는 데이터 권한 인증을 위한 공개키를 기록한다.In the data acquisition method according to one embodiment, data rights are acquired through a smart contract 30 in the data rights acquisition process. At this time, the public key for data authority authentication is recorded in the smart contract.

데이터 요청 과정에서는, 데이터 요청자(50)가 스마트 컨트랙트(30)에 기록된 데이터 보관 내역에 따라 암호화된 데이터 파편을 보관하고 있는 데이터 보관자(50)들에게 데이터 파편과 복호화 키를 요청할 수 있다. In the data request process, the data requester 50 may request data fragments and decryption keys from the data custodians 50 that store the encrypted data fragments according to the data storage history recorded in the smart contract 30.

각 데이터 보관자(50)들은 데이터 요청자(50)의 데이터 접근 권한을 스마트 컨트랙트(30) 상에서 확인하고, 데이터 파편의 복호화 키를 스마트 컨트랙트(30) 상에 기록된 데이터 권한 인증을 위한 공개키로 암호화하여 암호화된 데이터 파편과 함께 데이터 요청자(50)에게 전달할 수 있다.Each data keeper 50 verifies the data access authority of the data requester 50 on the smart contract 30, and encrypts the decryption key of the data fragment with the public key for data authority authentication recorded on the smart contract 30. It can be delivered to the data requester 50 along with the encrypted data fragments.

원본 데이터 획득 과정에서는 데이터 요청자(50)는 각 데이터 보관자(40)들로부터 받은 데이터 파편 복호화 키를 데이터 요청자(50)의 데이터 권한 인증을 위한 비밀키로 복호화하여 얻고, 이 복호화키를 이용하여 각 암호화된 데이터 파편을 복호화한다. 데이터 요청자(50)는 복호화된 데이터 파편을 합쳐 하나의 데이터로 만들고 스마트 컨트랙트(30)에 기록된 원본 데이터 복호화키를 이용하여 합쳐진 데이터를 복호화하여 원본 데이터를 획득할 수 있다.In the original data acquisition process, the data requester 50 decrypts the data fragment decryption key received from each data holder 40 with a secret key for data authority authentication of the data requester 50, and uses this decryption key to encrypt each data fragment. Decrypt the data fragments. The data requester 50 can obtain the original data by combining the decrypted data fragments into one data and decrypting the combined data using the original data decryption key recorded in the smart contract 30.

이때 데이터 요청자(50)는 원본 데이터를 비롯한 각 데이터 획득 단계에서의 해시 값들을 스마트 컨트랙트(30)에 기록된 해시 값들과 비교하여 원본 데이터를 정상적으로 획득하였는지를 확인할 수 있다.At this time, the data requester 50 can check whether the original data has been properly obtained by comparing the hash values in each data acquisition step, including the original data, with the hash values recorded in the smart contract 30.

도 4는 일실시예에 따른 장치의 구성의 예시도이다.Figure 4 is an exemplary diagram of the configuration of a device according to an embodiment.

일실시예에 따른 장치(100)는 프로세서(101) 및 메모리(102)를 포함한다. 일실시예에 따른 장치(100)는 상술한 서버 또는 단말일 수 있다. 프로세서는 도 1 내지 도 3을 통하여 전술한 적어도 하나의 장치들을 포함하거나, 도 1 내지 도 3을 통하여 전술한 적어도 하나의 방법을 수행할 수 있다. 메모리(102)는 상술한 방법과 관련된 정보를 저장하거나 상술한 방법이 구현된 프로그램을 저장할 수 있다. 메모리(102)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다. Device 100 according to one embodiment includes a processor 101 and memory 102. Device 100 according to one embodiment may be the server or terminal described above. The processor may include at least one device described above with reference to FIGS. 1 to 3 or may perform at least one method described with reference to FIGS. 1 to 3 . The memory 102 may store information related to the above-described method or store a program in which the above-described method is implemented. Memory 102 may be volatile memory or non-volatile memory.

프로세서(101)는 프로그램을 실행하고, 장치(100)를 제어할 수 있다. 프로세서(101)에 의하여 실행되는 프로그램의 코드는 메모리(102)에 저장될 수 있다. 장치(100)는 입출력 장치(도면 미 표시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 데이터를 교환할 수 있다.The processor 101 can execute programs and control the device 100. The code of the program executed by the processor 101 may be stored in the memory 102. The device 100 is connected to an external device (eg, a personal computer or a network) through an input/output device (not shown) and can exchange data.

이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, 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 embodiments described above may be implemented with hardware components, software components, and/or a combination of hardware components and software components. For example, the devices, methods, and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, and a field programmable gate (FPGA). It may be implemented using one or more general-purpose or special-purpose computers, such as an array, programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. A processing device may execute an operating system (OS) and one or more software applications that run on the operating system. Additionally, a processing device may access, store, manipulate, process, and generate data in response to the execution of software. For ease of understanding, a single processing device may be described as being used; however, those skilled in the art will understand that a processing device includes multiple processing elements and/or multiple types of processing elements. It can be seen that it may include. For example, a processing device may include a plurality of processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are possible.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical 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 on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., singly or in combination. Program instructions recorded on the medium may be specially designed and configured for the embodiment or may be known and available to those skilled in the art of 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 floptical disks. -Includes optical media (magneto-optical media) and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. Examples of program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

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

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described with limited drawings as described above, those skilled in the art can apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order than the described method, and/or components of the described system, structure, device, circuit, etc. are combined or combined in a different form than the described method, or other components are used. Alternatively, appropriate results may be achieved even if substituted or substituted by an equivalent.

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

Claims (3)

블록체인 기반 금융거래 보안 시스템에 있어서,
공유하고자 하는 데이터를 등록하기 위한 트랜잭션을 생성하여 블록체인상의 스마트 컨트랙트에 전송하고, 데이터를 파편화하고 복호화하여 적어도 하나의 데이터 보관자에게 데이터 파편과 파편 복호화 키를 업로드하는 데이터 제공자;
데이터 등록 내역, 데이터 접근 권한 내역, 데이터 보관자 내역이 기록되고, 상기 데이터 제공자가 등록한 데이터의 접근 권한을 승인하는 스마트 컨트랙트;
상기 데이터 제공자로부터 전송된 데이터를 보관 및 관리하고, 소정의 데이터 요청자로부터 데이터 요청을 받을 경우 상기 스마트 컨트랙트를 통해 상기 데이터 요청자가 데이터 접근 권한이 있는지를 확인하고 데이터 파편과 파편 복호화 키를 상기 데이터 요청자에게 전달하는 데이터 보관자; 및
상기 스마트 컨트랙트로부터 데이터 접근 권한을 획득하고 상기 데이터 보관자로부터 제공된 데이터 파편과 파편 복호화키를 이용하여 데이터 원본을 획득하는 데이터 요청자
를 포함하는
블록체인 기반 금융거래 보안 시스템.
In a blockchain-based financial transaction security system,
A data provider that creates a transaction to register data to be shared and sends it to a smart contract on the blockchain, fragments and decrypts the data, and uploads the data fragments and fragment decryption key to at least one data custodian;
A smart contract that records data registration details, data access permission details, and data custodian details, and approves access permission to data registered by the data provider;
Stores and manages the data transmitted from the data provider, and when receiving a data request from a certain data requestor, verifies whether the data requestor has data access rights through the smart contract and sends the data fragments and fragment decryption key to the data requestor. data custodian; and
A data requester who obtains data access rights from the smart contract and obtains the original data using the data fragments and fragment decryption key provided by the data custodian.
containing
Blockchain-based financial transaction security system.
제1항에 있어서,
상기 데이터 등록 내역은 데이터 제공자 정보와 데이터 파편 정보, 데이터 파편 보관자 매칭 정보를 포함하고,
상기 데이터 접근 권한 내역은 누가 어떤 데이터에 접근이 가능한지에 대한 내역을 포함하고, 상기 데이터 보관자 내역은 데이터 보관자의 스토리지 엔드포인트 정보(서버 접속 정보)와 현재 보관중인 데이터의 용량과 총 보관 가능한 용량 정보를 포함하는
블록체인 기반 금융거래 보안 시스템.
According to paragraph 1,
The data registration details include data provider information, data fragment information, and data fragment keeper matching information,
The data access rights details include details of who can access what data, and the data holder details include the data keeper's storage endpoint information (server access information), the amount of data currently stored, and the total storage capacity information. containing
Blockchain-based financial transaction security system.
제1항에 있어서,
상기 데이터 제공자는 전체 데이터를 비트 단위로 섞어서 데이터 전체를 암호화하고, 전체 암호화된 데이터를 적어도 2개 이상의 파편으로 분할한 후, 각 데이터 파편을 각각 상이한 공개키로 암호화하고,
상기 스마트 컨트랙트는 상기 데이터 제공자의 요청에 따라, 각 데이터 보관 서버의 용량 정보를 포함한 데이터 보관 서버 정보에 근거하여, 파편 데이터를 저장가능한 파편 데이터 보관서버를 매칭하여 상기 데이터 제공자에게 매칭 정보를 제공하고, 매칭 정보를 저장하고,
상기 데이터 요청자는 데이터 권한 인증용 공개키를 포함하는 데이터 권한 획득 요청 트랙잭션을 형성하여 상기 스마트 컨트랙트에 전송하는 것인
블록체인 기반 금융거래 보안 시스템.
According to paragraph 1,
The data provider encrypts the entire data by mixing the entire data bit by bit, divides the entire encrypted data into at least two fragments, and then encrypts each data fragment with a different public key,
At the request of the data provider, the smart contract matches fragment data storage servers capable of storing fragment data based on data storage server information including capacity information of each data storage server, and provides matching information to the data provider. , save matching information,
The data requestor forms a data permission acquisition request transaction including a public key for data permission authentication and transmits it to the smart contract.
Blockchain-based financial transaction security system.
KR1020220090728A 2022-07-22 2022-07-22 Blockchain-based financial transaction security system KR20240013335A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220090728A KR20240013335A (en) 2022-07-22 2022-07-22 Blockchain-based financial transaction security system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220090728A KR20240013335A (en) 2022-07-22 2022-07-22 Blockchain-based financial transaction security system

Publications (1)

Publication Number Publication Date
KR20240013335A true KR20240013335A (en) 2024-01-30

Family

ID=89715044

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220090728A KR20240013335A (en) 2022-07-22 2022-07-22 Blockchain-based financial transaction security system

Country Status (1)

Country Link
KR (1) KR20240013335A (en)

Similar Documents

Publication Publication Date Title
TWI707245B (en) Retrieving access data for blockchain networks using highly available trusted execution environments
US11971980B2 (en) Using trusted execution environments to perform a communal operation for mutually-untrusted devices
WO2019214211A1 (en) Block chain-based user data authorization method and apparatus, and medium and computing device
US11270006B2 (en) Intelligent storage devices with cryptographic functionality
US8788815B1 (en) System and method for controlling access to decrypted data
WO2018076761A1 (en) Block chain-based transaction permission control method and system, electronic device, and storage medium
US9846778B1 (en) Encrypted boot volume access in resource-on-demand environments
US8838961B2 (en) Security credential deployment in cloud environment
CN111199045A (en) Method and system for encrypted private key management for secure multiparty storage and delivery of information
US8863255B2 (en) Security credential deployment in cloud environment
US20210374232A1 (en) Data distribution using a trusted execution environment in an untrusted device
US20140096213A1 (en) Method and system for distributed credential usage for android based and other restricted environment devices
US10911538B2 (en) Management of and persistent storage for nodes in a secure cluster
CN116490868A (en) System and method for secure and fast machine learning reasoning in trusted execution environments
US11394546B2 (en) Encrypted data key management
US11947659B2 (en) Data distribution across multiple devices using a trusted execution environment in a mobile device
US10516655B1 (en) Encrypted boot volume access in resource-on-demand environments
WO2022227799A1 (en) Device registration method and apparatus, and computer device and storage medium
US20210173950A1 (en) Data sharing between trusted execution environments
JP4882072B2 (en) Encrypted data storage method in distributed network storage system
KR20240013335A (en) Blockchain-based financial transaction security system
KR102199464B1 (en) Method of authentication among nodes participating in consortium blockchain
KR102365421B1 (en) Program security system and method
US20210135853A1 (en) Apparatus and method for data security
JP6830635B1 (en) Data management method