KR20200078420A - 블록체인 네트워크에서의 데이터 아이솔레이션 - Google Patents

블록체인 네트워크에서의 데이터 아이솔레이션 Download PDF

Info

Publication number
KR20200078420A
KR20200078420A KR1020197022207A KR20197022207A KR20200078420A KR 20200078420 A KR20200078420 A KR 20200078420A KR 1020197022207 A KR1020197022207 A KR 1020197022207A KR 20197022207 A KR20197022207 A KR 20197022207A KR 20200078420 A KR20200078420 A KR 20200078420A
Authority
KR
South Korea
Prior art keywords
personal
transaction
blockchain
account
personal transaction
Prior art date
Application number
KR1020197022207A
Other languages
English (en)
Other versions
KR102303376B1 (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 알리바바 그룹 홀딩 리미티드
Publication of KR20200078420A publication Critical patent/KR20200078420A/ko
Application granted granted Critical
Publication of KR102303376B1 publication Critical patent/KR102303376B1/ko

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/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/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/54Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/3825Use of electronic signatures
    • 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
    • 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/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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
    • H04L2209/38
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Accounting & Taxation (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Finance (AREA)
  • Databases & Information Systems (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Power Engineering (AREA)
  • Computing Systems (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

본 출원의 구현들은, 적어도 하나의 계정과 연관된 개인 트랜잭션을 수행하라는 요청을 수신하는 것; 요청을 수신한 것에 대한 응답으로, 워크플로우 노드(workflow node)에 의해, 개인 트랜잭션을 수행하는 것; 개인 트랜잭션을 수행하는 것에 대한 응답으로, 워크플로우 노드에 의해, 개인 트랜잭션에 액세스하도록 인가된 엔티티들만이 액세스 가능하도록 구성된 개인 트랜잭션의 표현을 생성하는 것; 개인 트랜잭션의 표현을 개인 블록체인에 저장하는 것; 워크플로우 노드에 의해, 개인 트랜잭션에 적어도 부분적으로 기초하여 개인 트랜잭션과 연관된 적어도 하나의 계정에 대한 계정 레코드를 생성하는 것 ― 계정 레코드는 개인 블록체인 내의 개인 트랜잭션의 표현에 액세스하도록 인가되지 않은 적어도 하나의 엔티티가 액세스 가능하도록 구성됨 ― ; 그리고 계정 레코드를 공개 블록체인에 저장하는 것을 포함한다.

Description

블록체인 네트워크에서의 데이터 아이솔레이션
컨센서스(consensus) 네트워크들 및/또는 블록체인 네트워크들로서 또한 지칭되는 DLS(distributed ledger system)은 참여하는 엔티티들이 데이터를 안전하게 그리고 불변적으로 저장하는 것을 가능하게 한다. DLS들은 일반적으로 어떠한 특정 사용자 경우(예를 들어, 암호-화폐들)와 관계없이 블록체인 네트워크로서 지칭된다. 예시적인 유형들의 블록체인 네트워크들은 공개 블록체인 네트워크들, 개인 블록체인 네트워크들 및 컨소시엄 블록체인 네트워크들을 포함할 수 있다. 모든 엔티티들이 DLS를 사용하고 컨센서스 프로세스에 참여하기 위해 공개 블록체인 네트워크가 개방되어 있다. 개인 블록체인 네트워크에는 읽기 및 쓰기 권한들을 중앙에서 제어하는 특정 엔티티가 제공된다. 컨센서스 블록체인 네트워크에는 컨소시엄 프로세스를 제어하는 엔티티들의 선택된 그룹이 제공되며, 액세스 제어 층을 포함한다.
블록체인 네트워크의 하나의 일반적인 이슈는 블록체인 그 자체의 내재적인 개방성으로 인한 프라이버시 보호(privacy protection)이다. 종래의 블록체인의 엔트리들은 블록체인 네트워크의 모든 참여자들에 의한 검사에 이용 가능하며, 이는 블록체인 네트워크에서 관리되는 트랜잭션들이 민감한 정보를 포함할 때 이슈들을 제공할 수 있다.
본 명세서의 구현들은 블록체인 네트워크에서 데이터 아이솔레이션을 위한 컴퓨터-구현 방법을 포함한다. 보다 구체적으로, 본 명세서의 구현들은, 개인 트랜잭션(private transaction) 세부사항들을 아이솔레이션하는 반면, 트랜잭션 요약들을 개인 블록체인에 그리고 계정(account) 잔액 업데이트들을 공개 블록체인에 공개하는 것에 관한 것이다.
일부 구현들에서, 액션들은, 적어도 하나의 계정과 연관된 개인 트랜잭션을 수행하라는 요청을 수신하는 단계; 요청을 수신한 것에 대한 응답으로, 워크플로우 노드(workflow node)에 의해, 개인 트랜잭션을 수행하는 단계; 개인 트랜잭션을 수행하는 것에 대한 응답으로, 워크플로우 노드에 의해, 개인 트랜잭션에 액세스하도록 인가된 엔티티들만이 액세스 가능하도록 구성된 개인 트랜잭션의 표현을 생성하는 단계; 개인 트랜잭션의 표현을 개인 블록체인에 저장하는 단계; 워크플로우 노드에 의해, 개인 트랜잭션에 적어도 부분적으로 기초하여 개인 트랜잭션과 연관된 적어도 하나의 계정에 대한 계정 레코드를 생성하는 단계 ― 계정 레코드는 개인 블록체인 내의 개인 트랜잭션의 표현에 액세스하도록 인가되지 않은 적어도 하나의 엔티티가 액세스 가능하도록 구성됨 ― ; 및 계정 레코드를 공개 블록체인에 저장하는 단계를 포함한다.
다른 구현들은 컴퓨터 저장 디바이스들 상에 인코딩된 방법들의 액션들을 수행하도록 구성되는, 대응하는 시스템들, 장치 및 컴퓨터 프로그램들을 포함한다.
이들 및 다른 구현들은 선택적으로 다음의 특징들 중 하나 이상을 각각 포함할 수 있다.
일부 경우들에서, 워크플로우 노드는, 워크플로우 노드의 데이터스토어에 개인 트랜잭션을 저장하고, 데이터스토어는 개인 블록체인과 별개이고, 개인 트랜잭션의 표현을 생성하는 단계는 개인 트랜잭션과 연관된 해시 값을 생성하는 단계를 포함한다.
일부 구현들에서, 워크플로우 노드는 적어도 하나의 계정에 대한 계정 레코드의 로컬 표현을 유지하고, 개인 트랜잭션을 수행하는 단계는 개인 트랜잭션에 기초하여 계정 레코드의 로컬 표현을 수정하는 단계를 포함하고; 적어도 하나의 계정 레코드는 계정 레코드의 로컬 표현에 있는 정보의 서브세트를 포함한다.
일부 경우들에서, 계정 레코드를 공개 블록체인에 저장하는 단계는 개인 트랜잭션의 표현을 개인 블록체인에 저장하는 것에 응답하여 수행된다.
일부 구현들에서, 공개 블록체인에 대한 계정의 대응하는 저장이 수행되지 않은 개인 트랜잭션들의 다른 표현들은 개인 블록체인에 저장된다.
일부 경우들에서, 공개/개인 키쌍의 공개 키로 암호화된 개인 트랜잭션의 암호화된 사본은 개인 블록체인과 별개의 데이터스토어에 저장된다.
일부 구현들에서, 개인 트랜잭션의 암호화된 사본을 저장하는 단계는 공개/개인 키쌍의 개인 키로 생성된, 암호화된 사본의 서명을 저장하는 단계를 포함한다.
일부 구현들에서, 개인 블록체인은 제 1 개인 블록체인이고, 개인 트랜잭션은 제 1 개인 트랜잭션이며, 방법은, 제 1 개인 트랜잭션과 상이한 제 2 개인 트랜잭션의 표현을, 제 1 개인 블록체인과 별개의 제 2 개인 블록체인에 저장하는 단계; 및 제 2 개인 트랜잭션과 연관된 계정에 대한 계정 레코드를 공개 블록체인에 저장하는 단계를 더 포함한다.
일부 경우들에서, 계정 레코드는 적어도 하나의 계정의 잔액을 포함하고, 계정 레코드는 연관된 개인 트랜잭션에 관한 정보를 포함하지 않는다.
본 명세서는 또한, 하나 이상의 프로세서들에 커플링되고 명령들이 저장되어 있는 비-일시적인 컴퓨터-판독 가능 저장 매체들을 제공하며, 이 명령들은 하나 이상의 프로세서들에 의해 실행될 때, 하나 이상의 프로세서들로 하여금, 본원에서 제공된 방법들의 구현들에 따른 동작들을 수행하게 한다.
본 명세서는 추가로, 본원에서 제공된 방법들을 구현하기 위한 시스템을 제공한다. 시스템은, 하나 이상의 프로세서들, 및 하나 이상의 프로세서들에 커플링되고 명령들이 저장되어 있는 컴퓨터-판독 가능 저장 매체를 포함하며, 이 명령들은 하나 이상의 프로세서들에 의해 실행될 때, 하나 이상의 프로세서들로 하여금, 본원에서 제공된 방법들의 구현들에 따른 동작들을 수행하게 한다.
본 명세서에 따른 방법들은 본원에서 설명된 양상들 및 특징들의 임의의 조합을 포함할 수 있다는 것이 인지된다. 즉, 본 명세서에 따른 방법들은 본원에서 구체적으로 설명된 양상들 및 특징들의 조합들로 제한되는 것이 아니라, 제공되는 양상들 및 특징들의 임의의 조합을 또한 포함한다.
본 명세서의 하나 이상의 구현들의 세부사항들은 첨부한 도면들 및 아래의 설명에서 기술된다. 본 명세서의 다른 특징들 및 이점들은, 설명 및 도면들로부터, 그리고 청구항들로부터 명백해질 것이다.
도 1은 본 명세서의 구현들을 실행하는데 사용될 수 있는 환경의 예를 도시한다.
도 2는 본 명세서의 구현들에 따른 아키텍처의 예를 도시한다.
도 3은 본 명세서의 구현들에 따라, 블록체인 네트워크에서 데이터 아이솔레이션을 제공하기 위한 시스템의 예를 도시한다.
도 4는 본 명세서의 구현들에 따라, 블록체인 네트워크에서 데이터 아이솔레이션을 제공하기 위한 프로세스의 예를 도시한다.
도 5는 본 명세서의 구현들에 따라 실행될 수 있는 프로세스의 예를 도시한다.
다양한 도면들 내의 유사한 참조 기호들은 유사한 엘리먼트들을 표시한다.
본 명세서의 구현들은 블록체인 네트워크에서 데이터 아이솔레이션을 위한 컴퓨터-구현 방법을 포함한다. 보다 구체적으로, 본 명세서의 구현들은, 개인 트랜잭션 세부사항들을 아이솔레이션하는 반면, 트랜잭션 요약들을 개인 블록체인에 그리고 계정 잔액 업데이트들을 공개 블록체인에 공개하는 것에 관한 것이다. 일부 구현들에서, 액션들은, 적어도 하나의 계정과 연관된 개인 트랜잭션을 수행하라는 요청을 수신하는 단계; 요청을 수신한 것에 대한 응답으로, 워크플로우 노드에 의해, 개인 트랜잭션을 수행하는 단계; 개인 트랜잭션을 수행하는 것에 대한 응답으로, 워크플로우 노드에 의해, 개인 트랜잭션에 액세스하도록 인가된 엔티티들만이 액세스 가능하도록 구성된 개인 트랜잭션의 표현을 생성하는 단계; 개인 트랜잭션의 표현을 개인 블록체인에 저장하는 단계; 워크플로우 노드에 의해, 개인 트랜잭션에 적어도 부분적으로 기초하여 개인 트랜잭션과 연관된 적어도 하나의 계정에 대한 계정 레코드를 생성하는 단계 ― 계정 레코드는 개인 블록체인 내의 개인 트랜잭션의 표현에 액세스하도록 인가되지 않은 적어도 하나의 엔티티가 액세스 가능하도록 구성됨 ― ; 및 계정 레코드를 공개 블록체인에 저장하는 단계를 포함한다.
본 명세서의 구현들에 대한 추가의 맥락을 제공하기 위해 그리고 위에서 소개된 바와 같이, 컨센서스 네트워크들(예를 들어, 피어-투-피어 노드들로 구성됨), 및 블록체인 네트워크로서 또한 지칭될 수 있는 DSL(distributed ledger system)들은, 참여 엔티티들이 안전하고 불변적으로 트랜잭션들을 수행하고 데이터를 저장하는 것을 가능하게 한다. 블록체인이라는 용어는 일반적으로 암호-화폐 네트워크들과 연관되지만, 블록체인은 본원에서 어떠한 특정 사용 경우와 관계없이 DLS를 일반적으로 지칭하기 위해 사용된다.
블록체인은 트랜잭션들이 불변적인(immutable) 방식으로 트랜잭션들을 저장하고 후속적으로 검증될 수 있는 데이터 구조이다. 블록체인은 하나 이상의 블록들을 포함한다. 체인 내의 각각의 블록은 이전 블록의 암호화 해시(cryptographic hash)를 포함함으로써 체인 내에 자신 바로 앞의 이전 블록에 링크된다. 각각의 블록은 또한 타임스탬프, 자체 암호화 해시 및 하나 이상의 트랜잭션들을 포함한다. 블록체인 네트워크의 노드들에 의해 이미 검증된 트랜잭션들은 해시되고 머클 트리(Merkle tree)로 인코딩된다. 머클 트리는 트리의 리프 노드들의 데이터가 해시되고 트리의 각각의 분기(branch)의 모든 해시들이 분기의 루트에서 연접되는 데이터 구조이다. 이 프로세스는 전체 트리의 루트까지 트리에서 계속되며, 트리의 모든 데이터를 나타내는 해시를 저장한다. 트리에 저장된 트랜잭션인 것으로 간주되는 해시는 그것이 트리의 구조와 일치하는지 여부를 결정함으로써 신속하게 검증될 수 있다.
블록체인은 트랜잭션들을 저장하기 위한 데이터 구조인 반면, 블록체인 네트워크는 하나 이상의 블록체인들을 관리, 업데이트 및 유지(maintain)하는 컴퓨팅 노드들의 네트워크이다. 위에서 소개된 바와 같이, 블록체인 네트워크는 공개 블록체인 네트워크, 개인 블록체인 네트워크 또는 컨소시엄 블록체인 네트워크로서 제공될 수 있다.
공개 블록체인 네트워크에서 컨센서스 프로세스는 컨센서스 네트워크의 노드들에 의해 제어된다. 예를 들어, 수백, 수천, 심지어 수백만개의 엔티티들이 공개 블록체인 네트워크에서 협력할 수 있으며, 이들 각각은 공개 블록체인 네트워크에서 하나 이상의 노드를 동작시킨다. 따라서, 공개 블록체인 네트워크는 참여 엔티티들과 관련하여 공개 네트워크로 간주될 수 있다. 일부 예들에서, 대부분의 엔티티들(노드들)은, 블록이 유효하며 블록체인 네트워크의 블록체인(분산 원장)에 추가되기 위해 각각의 모든 블록에 서명해야 한다. 공개 블록체인 네트워크들의 예들은 피어-투-피어 지불 네트워크인 암호-화폐 네트워크들을 포함한다. 그러나 위에서 언급된 바와 같이, 블록체인이라는 용어는 일반적으로 어떠한 특정 블록체인 네트워크와 특별히 관계없이 분산 원장들을 지칭하는 데 사용된다.
일반적으로, 공개 블록체인 네트워크는 공개 트랜잭션들을 지원한다. 공개 트랜잭션은 공개 블록체인 네트워크 내의 모든 노드들과 공유되며 글로벌 블록체인에 저장된다. 글로벌 블록체인은 모든 노드들에 걸쳐 복제되는 블록체인이다. 즉, 모든 노드들은 글로벌 블록체인과 관련하여 완벽한 상태 컨센서스(perfect state consensus)에 있다. 컨센서스를 달성하기 위해(예를 들어, 블록체인에의 블록의 추가에 대한 합의), 컨센서스 프로토콜은 공개 블록체인 네트워크 내에서 구현된다. 컨센서스 프로토콜들의 예들은 제한 없이, POW(proof-of-work)(예를 들어, 일부 암호-화폐 네트워크들에서 구현됨), POS(proof-of-stake) 및 POA(proof-of-authority)를 포함한다. POW는 비-제한적인 예로서 본원에서 추가로 참조된다.
일반적인 개인 블록체인 네트워크에서, 개인 블록체인 네트워크에는 읽기 및 쓰기 권한들을 중앙에서 제어하는 특정 엔티티가 제공된다. 엔티티는 어떤 노드들이 블록체인 네트워크에 참여할 수 있는지를 제어한다. 결과적으로, 개인 블록체인 네트워크들은 일반적으로, 누가 네트워크에 참여하도록 허용되는지 그리고 그의 참여 레벨에(예를 들어, 소정의 트랜잭션들로만) 제한을 두는 허가된 네트워크로서 지칭된다. 다양한 유형들의 액세스 제어 메커니즘들이 사용될 수 있다(예를 들어, 기존 참여자가 새로운 엔티티들의 추가에 관해 투표하고 규제 기관이 승인을 제어할 수 있음).
일반적으로 컨소시엄 블록체인 네트워크는 참여 엔티티들 사이에서 비공개(private)이다. 컨소시엄 블록체인 네트워크에서, 컨센서스 프로세스는 노드들의 인가된 세트에 의해 제어되며, 하나 이상의 노드들은 각각의 엔티티(예를 들어, 금융 기관, 보험 회사)에 의해 동작된다. 예를 들어, 10개의 엔티티들(예를 들어, 금융 기관들, 보험 회사들)의 컨소시엄은 컨소시엄 블록체인 네트워크를 동작시킬 수 있으며, 이들 각각은 컨소시엄 블록체인 네트워크에서 적어도 하나의 노드를 동작시킨다. 따라서, 컨소시엄 블록체인 네트워크는 참여 엔티티들과 관련하여 개인 네트워크로 간주될 수 있다. 일부 예들에서, 각각의 엔티티(노드)는, 블록이 유효하며 블록체인에 추가되기 위해 각각의 모든 블록에 서명해야 한다. 일부 예들에서, 블록이 유효하며 블록체인에 추가되기 위해 적어도 엔티티들(노드들)의 서브세트(예를 들어, 적어도 7개의 엔티티들)가 각각의 모든 블록에 서명해야 한다.
본 명세서의 구현들은 참여 엔티티들 사이에서 공개되는 공개 블록체인 네트워크를 참조하여 본원에서 추가로 상세히 설명된다. 그러나, 본 명세서의 구현들은 임의의 적절한 유형의 블록체인 네트워크에서 실현될 수 있는 것으로 고려된다.
본 명세서의 구현들은 위의 맥락을 고려하여 본원에서 추가로 상세히 설명된다. 보다 구체적으로, 그리고 위에서 소개된 바와 같이, 본 명세서의 구현들은 블록체인 네트워크에서 민감한 트랜잭션 데이터의 아이솔레이션에 관한 것이다.
종래의 블록체인 네트워크에서, 블록체인에 레코딩되는 트랜잭션들은 공개적으로 사용 가능하다. 그러나 다수의 금융 시나리오들에서, 이러한 트랜잭션들의 세부사항들은 트랜잭션 참여자들이 공개되기를 원하지 않는 민감한 정보를 포함한다. 예를 들어, 블록체인 네트워크의 참여자는 블록체인 네트워크에 또한 참여하는 경쟁 엔티티로부터 자신의 트랜잭션을 감추고자 할 수 있다.
본원에서 설명된 기술들은 블록체인 네트워크에서 데이터 아이솔레이션의 기술적 문제에 대한 기술적 솔루션을 제공한다. 예를 들어, 트랜잭션 세부사항 데이터는 워크플로우 노드에 의해 블록체인 네트워크에 로컬로 저장되고 체인-외 협업(out-of-chain collaboration)을 통해 검증될 수 있다. 트랜잭션 세부사항 데이터(예를 들어, 트랜잭션의 참여자들)로부터 선택된 정보는 워크플로우 노드들만이 액세스 가능한 개인 블록체인에 저장될 수 있다. 참여자들에 대한 계정 상태들(예를 들어, 잔액)은 모든 네트워크 참여자들에 의한 검사 및 확인을 위해 공개 블록체인에 저장될 수 있으며, 새로운 트랜잭션들이 프로세싱됨에 따라 업데이트될 수 있다.
도 1은 본 명세서의 구현들을 실행하는데 사용될 수 있는 환경(100)의 예를 도시한다. 일부 예들에서, 예시적인 환경(100)은 엔티티들이 블록체인 네트워크(102)에 참여하는 것을 가능하게 한다. 예시적인 환경(100)은 컴퓨팅 디바이스들(106, 108) 및 네트워크(110)를 포함한다. 일부 예에서, 네트워크(110)는 근거리 네트워크(LAN), 광역 네트워크(WAN), 인터넷 또는 이들의 조합을 포함하고, 웹 사이트, 사용자 디바이스들(예를 들어, 컴퓨팅 디바이스들) 및 백-엔드 시스템들을 연결한다. 일부 예들에서, 네트워크(110)는 유선 및/또는 무선 통신 링크를 통해 액세스될 수 있다. 일반적으로, 네트워크(110)는 하나 이상의 통신 네트워크들을 나타낸다. 일부 경우들에서, 컴퓨팅 디바이스(106, 108)는 클라우드 컴퓨팅 시스템(도시되지 않음)의 노드들일 수 있거나, 또는 각각의 컴퓨팅 디바이스(106, 108)는 분산된 프로세싱 시스템으로서 기능하고 네트워크에 의해 상호연결된 복수의 컴퓨터들을 포함하는 별개의 클라우드 컴퓨팅 시스템일 수 있다.
도시된 예에서, 컴퓨팅 시스템들(106, 108)은 각각, 블록체인 네트워크(102)에서 노드로서 참여할 수 있는 임의의 적절한 컴퓨팅 시스템을 포함할 수 있다. 예시적인 컴퓨팅 디바이스는 제한 없이, 서버, 데스크톱 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨팅 디바이스 및 스마트 폰을 포함한다. 일부 예들에서, 컴퓨팅 시스템들(106, 108)은 블록체인 네트워크(102)와 상호작용하기 위한 하나 이상의 컴퓨터-구현 서비스들을 호스팅한다. 예를 들어, 컴퓨팅 시스템(106)은 제 1 엔티티(예를 들어, 사용자 A)가 하나 이상의 다른 엔티티들(예를 들어, 다른 사용자들)과의 그의 트랜잭션들을 관리하기 위해 사용하는 트랜잭션 관리 시스템과 같은 제 1 엔티티의 컴퓨터-구현 서비스들을 호스팅할 수 있다. 컴퓨팅 시스템(108)은 제 2 엔티티(예를 들어, 사용자 B)가 하나 이상의 다른 엔티티들(예를 들어, 다른 사용자들)과의 그의 트랜잭션들을 관리하기 위해 사용하는 트랜잭션 관리 시스템과 같은 제 2 엔티티의 컴퓨터-구현 서비스들을 호스팅할 수 있다. 도 1의 예에서, 블록체인 네트워크(102)는 노드의 피어-투-피어 네트워크로서 표현되고, 컴퓨팅 시스템들(106, 108)은 블록체인 네트워크(102)에 참여하는 제 1 엔티티 및 제 2 엔티티의 노드들을 각각 제공한다.
도 2는 본 명세서의 구현들에 따른 아키텍처(200)의 예를 도시한다. 예시적인 개념 아키텍처(200)는 엔티티 층(202), 호스팅된 서비스 층(204) 및 블록체인 네트워크 층(206)을 포함한다. 도시된 예에서, 엔티티 층(202)은 3개의 엔티티들(Entity_1(E1), Entity_2(E2) 및 Entity_3(E3))을 포함하고, 각각의 엔티티는 각각의 트랜잭션 관리 시스템(208)을 갖는다.
도시된 예에서, 호스팅된 서비스 층(204)은 각각의 트랜잭션 관리 시스템(210)에 대한 인터페이스들(210)을 포함한다. 일부 예들에서, 각각의 트랜잭션 관리 시스템(208)은 프로토콜(예를 들어, HTTPS(hypertext transfer protocol secure))을 사용하여 네트워크(예를 들어, 도 1의 네트워크(110))를 통해 각각의 인터페이스(210)와 통신한다. 일부 예들에서, 각각의 인터페이스(210)는 각각의 트랜잭션 관리 시스템(208)과 블록체인 네트워크 층(206) 사이의 통신 연결을 제공한다. 보다 구체적으로, 인터페이스(210)는 블록체인 네트워크 층(206)의 블록체인 네트워크(212)와 통신한다. 일부 예들에서, 인터페이스(210)와 블록체인 네트워크 층(206) 사이의 통신은 RPC(remote procedure call)들을 사용하여 수행된다. 일부 예들에서, 인터페이스들(210)은 각각의 트랜잭션 관리 시스템들(208)에 대한 "호스트" 블록체인 네트워크 노드들을 호스팅한다. 예를 들어, 인터페이스들(210)은 블록체인 네트워크(212)로의 액세스를 위한 API(application programming interface)를 제공한다.
본원에서 설명된 바와 같이, 블록체인 네트워크(212)는 블록체인(216)에 정보를 불변적으로 레코딩하는 복수의 노드들(214)을 포함하는 피어-투-피어 네트워크로서 제공된다. 단일 블록체인(216)이 개략적으로 도시되어 있지만, 블록체인(216)의 다수의 사본들이 제공되고 블록체인 네트워크(212)를 통해 유지된다. 예를 들어, 각각의 노드(214)는 블록체인의 사본을 저장한다. 일부 구현들에서, 블록체인(216)은 블록체인 네트워크에 참여하는 둘 이상의 엔티티들 사이에서 수행되는 트랜잭션들과 연관된 정보를 저장한다.
도 3은 본 명세서의 구현들에 따라, 블록체인 네트워크에서 데이터 아이솔레이션을 제공하기 위한 시스템(300)의 예를 도시한다. 도시된 바와 같이, 시스템(300)은 공개 블록체인(330)을 유지하는 블록체인 노드들(310A-D)을 포함하는 공개 블록체인 네트워크(305)를 포함한다. 시스템(300)은 워크플로우 노드들(320A-D)을 포함하는 개인 블록체인 네트워크(310)를 더 포함한다. 각각의 워크플로우 노드(320A-D)는 로컬 저장 디바이스(325A-D)와 연관된다. 워크플로우 노드들(320A-D)은 공개 블록체인(330)과 별개로 개인 블록체인(340)을 유지한다. 일부 구현들에서, 워크플로우 노드들(320A-D)은 또한 공개 블록체인(330)에 추가될 새로운 블록들의 생성 및 검증에 참여함으로써 공개 블록체인 네트워크(305)의 블록체인 노드들로서 기능할 수 있다.
동작에서, 워크플로우 노드들(320A-D)은 시스템(300)에서 수행되고 저장될 개인 트랜잭션을 수신한다. 일부 경우들에, 시스템(300)의 클라이언트는 블록체인 노드들(310A-D) 또는 워크플로우 노드들(320A-D) 중 하나에 트랜잭션을 제출할 수 있다. 일부 경우들에서, 트랜잭션은 블록체인 노드들(310A-D) 또는 워크플로우 노드들(320A-D) 중 하나 이상을 동작시키는 둘 이상의 엔티티들 사이에 있을 수 있고, 이 경우에 트랜잭션은 제어된 워크플로우 노드에서 이들 참여자 엔티티들 중 하나 이상으로부터 수신될 수 있다. 일부 구현들에서, 블록체인 노드들(310A-D)은 공개 블록체인(330)에 새로운 트랜잭션들을 레코딩하기 보다는, 프로세싱을 위해 워크플로우 노드들(320A-D)에 새로운 트랜잭션들을 포워딩하도록 구성될 수 있다.
일부 구현들에서, 각각의 워크플로우 노드(320A-D)는 수신된 트랜잭션 데이터를 자신의 로컬 저장소(325A-D)에 저장한다. 일부 구현들에서, 로컬 저장소(325A-D)는 예를 들어, 하드 드라이브, 랜덤 액세스 메모리(RAM), 플래시 메모리, 또는 다른 저장 디바이스들과 같은 연관된 워크플로우 노드(320A-D)에 커플링된 저장 디바이스일 수 있다. 일부 경우에, 로컬 저장소(325A-D)는 워크플로우 노드들(320A-D)에 의해 유지되는 분산 데이터베이스의 샤드(shard)들을 저장할 수 있다.
일부 구현들에서, 워크플로우 노드(예를 들어, 320A)가 새로운 트랜잭션을 수신할 때, 워크플로우 노드(320A)는 트랜잭션을 검증하고(아래에서 더 상세히 설명됨), 그것이 담당하는 트랜잭션(예를 들어, 스마트 계약 명령을 실행하는, 참가자 금융 기관들에서의 인출 및 입금 계정들 등)과 연관된 임의의 액션들을 수행한다. 일부 경우들에, 워크플로우 노드(320A)는 개인 블록체인(340)에의 저장을 위해 개인 트랜잭션의 표현을 생성한다. 예를 들어, 워크플로우 노드(320A)는 트랜잭션 데이터의 해시 및 모든 트랜잭션 참여자들의 아이덴티티들(identities)을 포함하는 트랜잭션의 표현을 생성할 수 있다. 일부 구현들에서, 각각의 개인 트랜잭션은 모든 트랜잭션 참여자들에 의해 암호로 서명될 것이다. 워크플로우 노드(320A)는 개인 블록체인(340)에 저장된 개인 트랜잭션의 표현에 이들 디지털 서명을 포함시킬 수 있다. 또한, 워크플로우(320A)는 원시 개인 트랜잭션 데이터를 자신의 로컬 저장소(325A)에 저장할 수 있다. 이러한 방식으로 트랜잭션 데이터를 구성함으로써, 민감한 트랜잭션 데이터(예를 들어, 트랜잭션과 연관된 금액들)는 워크플로우 노드(320A-D)에 의해 로컬로 저장될 수 있고, 따라서 비밀로 유지될 수 있는 반면, 개인 블록체인(340)은 시스템의 모든 개인 트랜잭션들의 컨센서스 레코(consensus record)드로서 역할을 할 수 있다. 일부 구현들에서, 개인 트랜잭션 데이터는 트랜잭션에 참여하는 엔티티들에 의해 제어되는 워크플로우 노드들(320A-D)의 로컬 저장소(325A-D)에 저장되며, 따라서 개인 트랜잭션 데이터를 다른 엔티티들로부터 아이솔레이션시킨다. 일부 경우들에서, 워크플로우 노드들(320A-D)은 종래의 컨센서스 방법들에 따라 개인 블록체인(340)을 유지한다.
일부 구현들에서, 워크플로우 노드(320A)는 개인 블록체인 네트워크(310) 상에서 전술한 액션들을 수행한 후에, 공개 블록체인(330)에의 포함을 위해 개인 트랜잭션의 참여자들에 대한 계정 레코드를 생성한다. 계정 레코드들은 개인 트랜잭션이 수행된 후 개인 트랜잭션의 참여자들의 계정들에 대한 업데이트된 잔액이 포함한다. 예를 들어, 계정 A가 계정 B로 $10를 이체한 개인 트랜잭션을 워크플로우 노드(320A)가 수신한 경우, 워크플로우 노드(320A)는 계정 A의 잔액에서 $10를 인출한 계정 레코드 및 계정 B의 잔액에 $10를 입금한 다른 계정 레코드를 생성할 수 있다. 생성된 계정 레코드들은, 이를테면, 워크플로우 노드(320A)가 계정 레코드들을 블록체인 노드들(310A-D)에 브로드캐스트함으로써 공개 블록체인(330)에의 포함을 위해 공개 블록체인 네트워크(305)에 전송될 수 있다.
일부 구현들에서, 워크플로우 노드(320A)는 공개 블록체인(330) 상에서 엔티티의 계정 잔액을 업데이트하기 전에 특정 엔티티를 수반하는 소정 수의 트랜잭션들이 수행될 때까지 대기하도록 구성될 수 있다. 예를 들어, 워크플로우 노드(320A)는 계정 A를 수반하는 3개의 트랜잭션들을 프로세싱한 후에만 계정 A에 대한 새로운 계정 레코드 및 잔액을 공개할 수 있다. 계정 잔액 업데이트들을 지연시키는 것은 관찰자가 계정 잔액들의 변화들에 기초하여 트랜잭션 세부사항들을 추론하는 것을 방지할 수 있다. 예를 들어, 시스템이 각각의 트랜잭션 후에 계정 잔액을 업데이트해야 하는 경우, 관찰자는 계정 A의 잔액에서 $10가 인출되고 계정 B의 잔액에 동일한 금액이 입금되는 것을 알아차림으로써 계정 A가 계정 B에 $10를 지불했다는 것을 추론할 수 있다. 각각의 계정 잔액 업데이트에 다수의 트랜잭션들에 의해 이루어진 변화들을 반영시킴으로써, 개별 트랜잭션 세부사항들은 추론하기가 더 어려워진다.
도 4는 본 명세서의 구현들에 따라, 블록체인 네트워크에서 데이터 아이솔레이션을 제공하기 위한 프로세스(400)의 예를 도시한다. 도시된 바와 같이, 프로세스는 도 3의 워크플로우 노드들(320A 및 320B) 및 블록체인 노드(310A)를 포함한다. 415에서, 워크플로우 노드(320A)는 워크플로우 노드(320B)에 개인 트랜잭션을 제안한다. 예를 들어, 개인 트랜잭션은 엔티티 제어 워크플로우 노드(320A)와 엔티티 제어 워크플로우 노드(320B) 사이의 트랜잭션일 수 있다. 일부 경우들에서, 워크플로우 노드(320A)는 제안된 트랜잭션들을 암호로 서명하여서, 워크플로우 노드(320B)가 트랜잭션을 제안하는 엔티티의 아이덴티티를 검증할 수 있게 한다.
420에서, 워크플로우 노드(320B)는 그의 개인 상태 및/또는 개인 블록체인(340)을 사용하여 제안된 트랜잭션을 검증한다. 예를 들어, 워크플로우 노드(320B)는 워크플로우 노드(320A)와 연관된 계정이 트랜잭션을 커버하기에 충분한 자금들을 갖는다는 것; 계정이 이체될 자산들(예를 들어, 화폐)의 소유자라는 것; 또는 개인 트랜잭션에 관한 다른 정보를 검증할 수 있다.
425에서, 워크플로우 노드(320B)는 트랜잭션이 성공적으로 검증되었음을 워크플로우 노드(320A)에 통지하고, 자신의 아이덴티티를 증명하기 위해 자신의 디지털 서명을 리턴한다. 430 및 435에서, 워크플로우 노드들(320A, B)은 합의된 개인 트랜잭션을 포함시키도록 각자의 개인 상태들(예를 들어, 로컬 저장소(325A, B))를 업데이트한다. 440에서, 워크플로우 노드(320A)는 위에서 설명된 바와 같이 개인 블록체인(340)에 개인 트랜잭션의 표현을 저장한다.
445에서, 워크플로우 노드(320A)는 블록체인 노드(310A)에 통지를 전송함으로써 워크플로우 노드들(320A 및 320B)과 연관된 계정들의 상태를 (위에서 설명된 바와 같이 계정 레코드들을 생성함으로써) 업데이트하며, 이는 공개 블록체인(330)에 업데이트들을 저장할 것이다. 이전에 논의된 바와 같이, 워크플로우 노드(320A)는 관찰자가 계정 잔액 업데이트들로부터 트랜잭션 세부사항들을 추론하는 것을 방지하기 위해 트랜잭션 참여자들에 대한 소정 수의 개인 트랜잭션들이 프로세싱된 후에 계정 잔액 업데이트들을 제공하도록 구성될 수 있다.
도 5는 본 명세서의 구현들에 따라 실행될 수 있는 프로세스(500)의 예를 도시한다. 일부 구현들에서, 예시적인 프로세스(500)는 하나 이상의 컴퓨팅 디바이스들을 사용하여 실행되는 하나 이상의 컴퓨터-실행 가능 프로그램들을 사용하여 수행될 수 있다.
505에서, 적어도 하나의 계정과 연관된 개인 트랜잭션을 수행하라는 요청이 워크플로우 노드에 의해 수신된다.
510에서, 요청을 수신한 것에 대한 응답으로, 워크플로우 노드는 요청된 개인 트랜잭션을 수행한다.
515에서, 개인 트랜잭션을 수행하는 것에 대한 응답으로, 워크플로우 노드는, 개인 트랜잭션에 액세스하도록 인가된 엔티티들만이 액세스 가능하도록 구성된 개인 트랜잭션의 표현을 생성한다.
520에서, 개인 트랜잭션의 표현이 개인 블록체인에 저장된다. 일부 경우들에서, 워크플로우 노드는 워크플로우 노드의 데이터스토어에 개인 트랜잭션을 저장하며, 여기서 데이터스토어는 개인 블록체인과 별개이며, 개인 트랜잭션의 표현을 생성하는 것은 개인 트랜잭션과 연관된 해시 값을 생성하는 것을 포함한다.
525에서, 워크플로우 노드는 개인 트랜잭션에 적어도 부분적으로 기초하여 개인 트랜잭션과 연관된 적어도 하나의 계정에 대한 계정 레코드를 생성하며, 여기서 계정 레코드는 개인 블록체인 내의 개인 트랜잭션의 표현에 액세스하도록 인가되지 않은 적어도 하나의 엔티티가 액세스 가능하도록 구성된다. 일부 구현들에서, 워크플로우 노드는 적어도 하나의 계정에 대한 계정 레코드의 로컬 표현을 유지하고, 개인 트랜잭션을 수행하는 것은 개인 트랜잭션에 기초하여 계정 레코드의 로컬 표현을 수정하는 것을 포함하고; 적어도 하나의 계정 레코드는 계정 레코드의 로컬 표현에 있는 정보의 서브세트를 포함한다. 일부 경우들에서, 계정 레코드는 적어도 하나의 계정의 잔액을 포함하고, 계정 레코드는 연관된 개인 트랜잭션에 관한 정보를 포함하지 않는다.
530에서, 계정 레코드는 공개 블록체인에 저장된다. 일부 경우들에서, 계정 레코드를 공개 블록체인에 저장하는 것은 개인 트랜잭션의 표현을 개인 블록체인에 저장하는 것에 응답하여 수행된다.
일부 구현들에서, 공개 블록체인에 대한 계정의 대응하는 저장이 수행되지 않은 개인 트랜잭션들의 다른 표현들은 개인 블록체인에 저장된다.
일부 경우들에서, 공개/개인 키쌍의 공개 키로 암호화된 개인 트랜잭션의 암호화된 사본은 개인 블록체인과 별개의 데이터스토어에 저장된다.
일부 구현들에서, 개인 블록체인은 제 1 개인 블록체인이고, 개인 트랜잭션은 제 1 개인 트랜잭션이며, 방법은, 제 1 개인 트랜잭션과 상이한 제 2 개인 트랜잭션의 표현을, 제 1 개인 블록체인과 별개의 제 2 개인 블록체인에 저장하는 것; 그리고 제 2 개인 트랜잭션과 연관된 계정에 대한 계정 레코드를 상기 공개 블록체인에 저장하는 것을 더 포함한다.
본 명세서에서 설명된 청구대상 액션들 및 동작들의 구현들은, 본 명세서에서 개시된 구조들 및 그들의 구조적 등가물들을 포함하는 디지털 전자 회로로, 유형으로 구체화되는 컴퓨터 소프트웨어로 또는 펌웨어로, 컴퓨터 하드웨어로, 또는 그들 중 하나 이상의 조합들로 구현될 수 있다. 본 명세서에 설명된 청구대상의 구현들은, 데이터 프로세싱 장치에 의한 실행을 위해, 또는 데이터 프로세싱 장치의 동작을 제어하기 위해 컴퓨터 프로그램 캐리어들 상에 인코딩된 하나 이상의 컴퓨터 프로그램들, 예를 들어, 컴퓨터 프로그램 명령들의 하나 이상의 모듈들로서 구현될 수 있다. 캐리어는 유형의 비-일시적인 컴퓨터 저장 매체일 수 있다. 대안적으로 또는 부가적으로, 캐리어는 데이터 프로세싱 장치에 의한 실행을 위해 적합한 수신기 장치로의 송신을 위한 정보를 인코딩하기 위해 생성되는, 인위적으로 생성된 전파된 신호, 예를 들어, 머신-생성 전기, 광학 또는 전자기 신호일 수 있다. 컴퓨터-저장 매체는 머신-판독 가능 저장 디바이스, 머신-판독 가능 저장 기재, 랜덤 또는 직렬 액세스 메모리 디바이스, 또는 이들의 하나 이상의 조합이거나 그의 부분일 수 있다. 컴퓨터 저장 매체는 전파된 신호는 아니다.
"데이터 프로세싱 장치"라는 용어는 예로서, 프로그래밍 가능 프로세서, 컴퓨터, 또는 다수의 프로세서들 또는 컴퓨터들을 포함해서, 데이터를 프로세싱하기 위한 모든 종류의 장치, 디바이스들 및 머신들을 포함한다. 데이터 프로세싱 장치는 특수-목적 로직 회로, 예를 들어 FPGA(field programmable gate array), ASIC(application-specific integrated circuit), 또는 GPU(graphics processing unit)를 포함할 수 있다. 장치는 또한, 하드웨어 외에도, 컴퓨터 프로그램들에 대한 실행 환경을 생성하는 코드, 예를 들어, 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 또는 이들 중 하나 이상의 조합을 구성하는 코드를 포함할 수 있다.
프로그램, 소프트웨어, 소프트웨어 애플리케이션, 앱, 모듈, 소프트웨어 모듈, 엔진, 스크립트, 또는 코드로서 또한 지칭되거나 설명될 수 있는 컴퓨터 프로그램은 컴파일되거나 인터프리팅된 언어들, 선언형 또는 절차형 언어들을 포함한 모든 형태의 프로그래밍 언어로 작성될 수 있으며; 그것은 자립형 프로그램 또는 모듈, 컴포넌트, 엔진, 서브루틴 또는 컴퓨팅 환경에서 실행하기에 적합한 다른 유닛을 포함한 임의의 형태로 배포될 수 있으며, 이 환경은 하나 이상의 위치들에 있는 데이터 통신 네트워크에 의해 상호연결되는 하나 이상의 컴퓨터들을 포함할 수 있다.
컴퓨터 프로그램은 파일 시스템의 파일에 대응할 수 있지만 반드시 대응할 필요는 없을 수 있다. 컴퓨터 프로그램은, 다른 프로그램들 또는 데이터(예를 들어, 마크업 언어 문서에 저장되는 하나 이상의 스크립트들)를 보유하는 파일의 부분에, 문제의 프로그램에 전용된 단일 파일에, 또는 다수의 통합된 파일들(예를 들어, 하나 이상의 모듈들, 서브-프로그램들 또는 코드의 부분들을 저장하는 파일들)에 저장될 수 있다.
본 명세서에서 설명된 프로세스들 및 로직 흐름들은 입력 데이터를 조작하고 출력을 생성함으로써 동작들을 수행하도록 하나 이상의 컴퓨터 프로그램들을 실행하는 하나 이상의 컴퓨터들에 의해 수행될 수 있다. 프로세스 및 로직 흐름들은 또한 특수-목적 로직 회로, 예를 들어 FPGA, ASIC 또는 GPU, 또는 특수-목적 로직 회로 및 하나 이상의 프로그래밍된 컴퓨터들의 조합에 의해 수행될 수 있다.
컴퓨터 프로그램의 실행에 적합한 컴퓨터들은 범용 또는 특수 목적 마이크로프로세서들, 또는 둘 모두 또는 임의의 다른 종류의 중앙 처리 장치에 기초할 수 있다. 일반적으로, 중앙 처리 장치는 판독-전용 메모리 또는 랜덤 액세스 메모리 또는 둘 모두로부터 명령들 및/또는 데이터를 수신할 것이다. 컴퓨터의 엘리먼트들은 명령들을 실행하기 위한 중앙 처리 장치 및 명령들 및/또는 데이터를 저장하기 위한 하나 이상의 메모리 디바이스들을 포함할 수 있다. 중앙 처리 장치 및 메모리는 특수-목적 로직 회로에 의해 보완되거나 또는 거기에 통합될 수 있다.
일반적으로, 컴퓨터는 적어도 하나의 비-일시적인 컴퓨터-판독 가능 저장 매체(컴퓨터-판독 가능 메모리로서 또한 지칭됨)에 커플링될 것이다. 컴퓨터에 커플링된 저장 매체는 컴퓨터의 내부 컴포넌트들(예를 들어, 통합된 하드 드라이브) 또는 외부 컴포넌트(예를 들어, 범용 직렬 버스(USB) 하드 드라이브 또는 네트워크를 통해 액세스되는 저장 시스템)일 수 있다. 저장 매체의 예들은 예를 들어, 자기, 자기-광학 또는 광학 디스크들, 솔리드 스테이트 드라이브들, 클라우드 저장 시스템들과 같은 네트워크 저장 자원들, 또는 다른 유형들의 저장 매체를 포함할 수 있다. 그러나 컴퓨터는 이러한 디바이스들을 가질 필요가 없다. 또한, 컴퓨터는 다른 디바이스, 예를 들어, 몇 개만 언급하면, 모바일 전화, 개인용 디지털 보조기기(PDA), 모바일 오디오 또는 비디오 플레이어, 게임 콘솔, 글로벌 포지셔닝 시스템(GPS) 수신기 또는 휴대용 저장 디바이스, 예를 들어 범용 직렬 버스 (USB) 플래시 드라이브에 임베딩될 수 있다.
사용자와의 상호작용을 제공하기 위해, 본 명세서에 설명된 청구 대상의 구현들은 정보를 사용자에게 디스플레이하기 위한 디스플레이 디바이스 예를 들어, LCD(liquid crystal display) 모니터, 및 사용자가 입력을 컴퓨터에 제공할 수 있게 하는 입력 디바이스, 예를 들어 키보드 및 포인팅 디바이스, 예를 들어 마우스, 트랙볼 또는 터치패드를 갖는 컴퓨터 상에 구현되거나, 이 컴퓨터와 통신하도록 구성될 수 있다. 다른 종류들의 디바이스들은 또한, 사용자와의 상호작용을 제공하기 위해 사용될 수 있으며, 예를 들어, 사용자에게 제공된 피드백은 임의의 형태의 감각 피드백 예를 들어, 시각 피드백, 청각 피드백, 또는 촉각 피드백일 수 있고; 사용자로부터의 입력은 음향, 스피치, 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다. 게다가, 컴퓨터는 사용자에 의해 사용되는 디바이스에 문서들을 전송하고 이 디바이스로부터 문서들을 수신함으로써, 예를 들어, 웹 브라우저로부터 수신된 요청들에 대한 응답으로 사용자의 디바이스 상의 웹 브라우저에 웹 페이지들을 전송함으로써, 또는 사용자 디바이스 예를 들어, 스마트폰 또는 전자 태블릿 상에서 실행되는 앱과 상호작용함으로써 사용자와 상호작용할 수 있다. 또한, 컴퓨터는 텍스트 메시지 또는 다른 형태들의 메시지를 개인용 디바이스, 예를 들어 메시징 애플리케이션을 실행하는 스마트 폰에 전송하고 답신으로 사용자로부터 응답 메시지를 수신함으로써 사용자와 상호작용할 수 있다.
본 명세서는 시스템들, 장치 및 컴퓨터 프로그램 컴포넌트들과 관련하여 "~ 하도록 구성된"이라는 용어를 사용한다. 하나 이상의 컴퓨터들의 시스템이 특정 동작들 또는 액션들을 수행하도록 구성된다는 것은, 시스템에는, 동작 시에 시스템이 동작들 또는 액션들을 수행하게 하는 소프트웨어, 펌웨어, 하드웨어 또는 이들의 조합이 설치되어 있음을 의미한다. 하나 이상의 컴퓨터 프로그램들이 특정 동작들 또는 액션들을 수행하도록 구성된다는 것은, 하나 이상의 프로그램들이, 데이터 프로세싱 장치에 의해 실행될 때, 장치로 하여금 동작들 또는 액션들을 수행하게 하는 명령들을 포함한다는 것을 의미한다. 특수-목적 로직 회로가 특정 동작들 또는 액션들을 수행하도록 구성된다는 것은, 회로가 동작들 또는 액션들을 수행하는 전자 로직을 갖는다는 것을 의미한다.
본 명세서가 다수의 특정 구현 세부사항들을 포함하지만, 이들은 청구항들 그 자체들에 의해 정의되는 청구되는 대상의 범위에 관한 제한들로서 해석되어서는 안 되며, 오히려, 특정 구현들에 특유할 수 있는 특징들의 설명들로서 해석되어야 한다. 별개의 구현들의 맥락에서 본 명세서에 설명된 소정의 특징들은 또한, 단일 구현으로 조합하여 실현될 수 있다. 대조적으로, 단일 구현의 맥락에서 설명된 다양한 특징들은 또한, 다수의 구현들에서 개별적으로 또는 임의의 적합한 서브조합으로 실현될 수 있다. 더욱이, 특징들이 소정의 조합들로 작용하는 것으로 위에서 설명되고 심지어 초기에 이와 같이 청구될 수 있지만, 일부 경우들에서, 청구된 조합으로부터의 하나 이상의 특징들은 그 조합으로부터 제거될 수 있고, 청구항은 서브조합 또는 서브조합의 변동과 관련될 수 있다.
유사하게, 동작들이 특정한 순서로 도면들에 도시되고 청구항들에서 나열되지만, 이것은, 바람직한 결과들을 달성하기 위해, 그러한 동작들이 도시된 특정 순서 또는 순차적인 순서로 수행되거나, 모든 예시된 동작들이 수행될 것을 요구하는 것으로서 이해되지는 않아야 한다. 소정의 환경들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 또한, 위에서 설명된 구현에서의 다양한 시스템 모듈들 및 컴포넌트들의 분리는 모든 구현들에서 그러한 분리를 요구하는 것으로서 이해되지는 않아야 하고, 그리고 설명된 프로그램 컴포넌트들 및 시스템들이 일반적으로, 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품들로 패키징될 수 있다는 것이 이해되어야 한다.
청구대상의 특정 구현들이 설명되었다. 다른 구현들은 다음의 청구항들의 범위 내에 존재한다. 예를 들어, 청구항들에서 열거된 액션들은, 상이한 순서로 수행될 수 있으며, 그럼에도 불구하고 원하는 결과들을 달성할 수 있다. 일 예로서, 첨부한 도면들에 도시된 프로세스들은 바람직한 결과들을 달성하기 위해, 도시된 특정한 순서 또는 순차적인 순서를 반드시 요구하지는 않는다. 일부 경우들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다.

Claims (19)

  1. 블록체인 상에 저장된 민감한 데이터를 보호하기 위한 컴퓨터-구현 방법으로서,
    적어도 하나의 계정과 연관된 개인 트랜잭션을 수행하라는 요청을 수신하는 단계;
    상기 요청을 수신하는 것에 응답하여, 워크플로우 노드(workflow node)에 의해, 상기 개인 트랜잭션을 수행하는 단계;
    상기 개인 트랜잭션을 수행하는 것에 응답하여, 상기 워크플로우 노드에 의해, 상기 개인 트랜잭션에 액세스하도록 인가된(authorized) 엔티티들만이 액세스 가능하도록 구성된 상기 개인 트랜잭션의 표현(representation)을 생성하는 단계;
    상기 개인 트랜잭션의 표현을 개인 블록체인에 저장하는 단계;
    상기 워크플로우 노드에 의해, 상기 개인 트랜잭션에 적어도 부분적으로 기초하여 상기 개인 트랜잭션과 연관된 상기 적어도 하나의 계정에 대한 계정 레코드를 생성하는 단계 ― 상기 계정 레코드는, 상기 개인 블록체인 내의 상기 개인 트랜잭션의 표현에 액세스하도록 인가되지 않은 적어도 하나의 엔티티가 액세스 가능하도록 구성됨 ― ; 및
    상기 계정 레코드를 공개 블록체인에 저장하는 단계
    를 포함하는 컴퓨터-구현 방법.
  2. 제 1 항에 있어서, 상기 방법은, 상기 워크플로우 노드에 의해, 상기 워크플로우 노드의 데이터스토어에 상기 개인 트랜잭션을 저장하는 단계를 더 포함하고,
    상기 데이터스토어는 상기 개인 블록체인과는 별개이고,
    상기 개인 트랜잭션의 표현을 생성하는 단계는, 상기 개인 트랜잭션과 연관된 해시 값을 생성하는 단계를 포함하는 것인 컴퓨터-구현 방법.
  3. 제 1 항에 있어서, 상기 방법은, 상기 워크플로우 노드에 의해, 상기 적어도 하나의 계정에 대한 상기 계정 레코드의 로컬 표현을 유지하는 단계를 더 포함하고;
    상기 개인 트랜잭션을 수행하는 단계는, 상기 개인 트랜잭션에 기초하여 상기 계정 레코드의 상기 로컬 표현을 수정하는 단계를 포함하고;
    상기 적어도 하나의 계정 레코드는, 상기 계정 레코드의 상기 로컬 표현에서의 정보의 서브세트를 포함하는 것인 컴퓨터-구현 방법.
  4. 제 1 항에 있어서, 상기 계정 레코드를 공개 블록체인에 저장하는 단계는, 상기 개인 트랜잭션의 표현을 상기 개인 블록체인에 저장하는 것에 응답하여 수행되는 것인 컴퓨터-구현 방법.
  5. 제 1 항에 있어서, 상기 방법은, 상기 공개 블록체인에의 계정의 대응하는 저장이 수행되지 않은 개인 트랜잭션들의 다른 표현들을 상기 개인 블록체인에 저장하는 단계를 더 포함하는 컴퓨터-구현 방법.
  6. 제 1 항에 있어서, 상기 방법은, 공개/개인 키쌍(keypair)의 공개 키로 암호화된 상기 개인 트랜잭션의 암호화된 사본을, 상기 개인 블록체인과는 별개의 데이터스토어에 저장하는 단계를 더 포함하는 컴퓨터-구현 방법.
  7. 제 6 항에 있어서, 상기 개인 트랜잭션의 암호화된 사본을 저장하는 단계는, 상기 공개/개인 키쌍의 개인 키로 생성된 상기 암호화된 사본의 서명을 저장하는 단계를 포함하는 것인 컴퓨터-구현 방법.
  8. 제 1 항에 있어서, 상기 개인 블록체인은 제 1 개인 블록체인이고, 상기 개인 트랜잭션은 제 1 개인 트랜잭션이며,
    상기 방법은,
    상기 제 1 개인 트랜잭션과는 상이한 제 2 개인 트랜잭션의 표현을, 상기 제 1 개인 블록체인과는 별개의 제 2 개인 블록체인에 저장하는 단계; 및
    상기 제 2 개인 트랜잭션과 연관된 계정에 대한 계정 레코드를 상기 공개 블록체인에 저장하는 단계
    를 더 포함하는 컴퓨터-구현 방법.
  9. 제 1 항에 있어서, 상기 계정 레코드는 상기 적어도 하나의 계정의 잔액을 포함하고, 상기 계정 레코드는 상기 연관된 개인 트랜잭션에 관한 정보를 포함하지 않는 것인 컴퓨터-구현 방법.
  10. 비-일시적인 컴퓨터-판독 가능 저장 매체로서,
    상기 비-일시적인 컴퓨터-판독 가능 저장 매체는, 하나 이상의 컴퓨터에 커플링되고,
    적어도 하나의 계정과 연관된 개인 트랜잭션을 수행하라는 요청을 수신하고;
    상기 요청을 수신하는 것에 응답하여, 워크플로우 노드에 의해, 상기 개인 트랜잭션을 수행하고;
    상기 개인 트랜잭션을 수행하는 것에 응답하여, 상기 워크플로우 노드에 의해, 상기 개인 트랜잭션에 액세스하도록 인가된 엔티티들만이 액세스 가능하도록 구성된 개인 트랜잭션의 표현을 생성하고;
    상기 개인 트랜잭션의 표현을 개인 블록체인에 저장하고;
    상기 워크플로우 노드에 의해, 상기 개인 트랜잭션에 적어도 부분적으로 기초하여 상기 개인 트랜잭션과 연관된 상기 적어도 하나의 계정에 대한 계정 레코드를 생성하고 ― 상기 계정 레코드는, 상기 개인 블록체인 내의 상기 개인 트랜잭션의 표현에 액세스하도록 인가되지 않은 적어도 하나의 엔티티가 액세스 가능하도록 구성됨 ― ; 그리고
    상기 계정 레코드를 공개 블록체인에 저장하도록
    상기 하나 이상의 컴퓨터에 의해 실행 가능한 명령어들로 구성(configure)되는 것인 비-일시적인 컴퓨터-판독 가능 저장 매체.
  11. 제 10 항에 있어서,
    상기 워크플로우 노드에 의해, 상기 워크플로우 노드의 데이터스토어에 상기 개인 트랜잭션을 저장하도록 ― 상기 데이터스토어는 상기 개인 블록체인과는 별개이고, 상기 개인 트랜잭션의 표현을 생성하는 것은 상기 개인 트랜잭션과 연관된 해시 값을 생성하는 것을 포함함 -
    상기 하나 이상의 컴퓨터에 의해 실행 가능한 명령어들로 또한 구성되는 것인 비-일시적인 컴퓨터-판독 가능 저장 매체.
  12. 제 10 항에 있어서,
    상기 워크플로우 노드에 의해, 상기 적어도 하나의 계정에 대한 계정 레코드의 로컬 표현을 유지하도록
    상기 하나 이상의 컴퓨터에 의해 실행 가능한 명령어들로 또한 구성되고,
    상기 개인 트랜잭션을 수행하는 것은, 상기 개인 트랜잭션에 기초하여 상기 계정 레코드의 상기 로컬 표현을 수정하는 것을 포함하고,
    상기 적어도 하나의 계정 레코드는, 상기 계정 레코드의 상기 로컬 표현에서의 정보의 서브세트를 포함하는 것인 비-일시적인 컴퓨터-판독 가능 저장 매체.
  13. 제 10 항에 있어서, 상기 계정 레코드를 공개 블록체인에 저장하는 것은, 상기 개인 트랜잭션의 표현을 상기 개인 블록체인에 저장하는 것에 응답하여 수행되는 것인 비-일시적인 컴퓨터-판독 가능 저장 매체.
  14. 제 10 항에 있어서,
    상기 공개 블록체인에의 계정의 대응하는 저장이 수행되지 않은 개인 트랜잭션들의 다른 표현들을 상기 개인 블록체인에 저장하도록
    상기 하나 이상의 컴퓨터에 의해 실행 가능한 명령어들로 또한 구성되는 것인 비-일시적인 컴퓨터-판독 가능 저장 매체.
  15. 제 10 항에 있어서,
    공개/개인 키쌍의 공개 키로 암호화된 상기 개인 트랜잭션의 암호화된 사본을, 상기 개인 블록체인과는 별개의 데이터스토어에 저장하도록
    상기 하나 이상의 컴퓨터에 의해 실행 가능한 명령어들로 또한 구성되는 것인 비-일시적인 컴퓨터-판독 가능 저장 매체.
  16. 제 15 항에 있어서, 상기 개인 트랜잭션의 암호화된 사본을 저장하는 것은, 상기 공개/개인 키쌍의 개인 키로 생성된 상기 암호화된 사본의 서명을 저장하는 것을 포함하는 것인 비-일시적인 컴퓨터-판독 가능 저장 매체.
  17. 제 10 항에 있어서, 상기 개인 블록체인은 제 1 개인 블록체인이고, 상기 개인 트랜잭션은 제 1 개인 트랜잭션이며,
    상기 컴퓨터-판독 가능 매체는,
    상기 제 1 개인 트랜잭션과는 상이한 제 2 개인 트랜잭션의 표현을, 상기 제 1 개인 블록체인과는 별개의 제 2 개인 블록체인에 저장하고; 그리고
    상기 제 2 개인 트랜잭션과 연관된 계정에 대한 계정 레코드를 상기 공개 블록체인에 저장하도록
    상기 하나 이상의 컴퓨터에 의해 실행 가능한 명령어들로 또한 구성되는 것인 비-일시적인 컴퓨터-판독 가능 저장 매체.
  18. 제 10 항에 있어서, 상기 계정 레코드는 상기 적어도 하나의 계정의 잔액을 포함하고, 상기 계정 레코드는 상기 연관된 개인 트랜잭션에 관한 정보를 포함하지 않는 것인 비-일시적인 컴퓨터-판독 가능 저장 매체.
  19. 시스템으로서,
    하나 이상의 컴퓨터; 및
    하나 이상의 컴퓨터-판독 가능 메모리
    를 포함하고,
    상기 하나 이상의 컴퓨터-판독 가능 메모리는, 상기 하나 이상의 컴퓨터에 커플링되고,
    적어도 하나의 계정과 연관된 개인 트랜잭션을 수행하라는 요청을 수신하고;
    상기 요청을 수신하는 것에 응답하여, 워크플로우 노드에 의해, 상기 개인 트랜잭션을 수행하고;
    상기 개인 트랜잭션을 수행하는 것에 응답하여, 상기 워크플로우 노드에 의해, 상기 개인 트랜잭션에 액세스하도록 인가된 엔티티들만이 액세스 가능하도록 구성된 상기 개인 트랜잭션의 표현을 생성하고;
    상기 개인 트랜잭션의 표현을 개인 블록체인에 저장하고;
    상기 워크플로우 노드에 의해, 상기 개인 트랜잭션에 적어도 부분적으로 기초하여 상기 개인 트랜잭션과 연관된 상기 적어도 하나의 계정에 대한 계정 레코드를 생성하고 ― 상기 계정 레코드는 상기 개인 블록체인 내의 상기 개인 트랜잭션의 표현에 액세스하도록 인가되지 않은 적어도 하나의 엔티티가 액세스 가능하도록 구성됨 ― ; 그리고
    상기 계정 레코드를 공개 블록체인에 저장하도록
    상기 하나 이상의 컴퓨터에 의해 실행 가능한 명령어들로 구성되는 것인 시스템.
KR1020197022207A 2018-12-19 2018-12-19 블록체인 네트워크에서의 데이터 아이솔레이션 KR102303376B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/122166 WO2019072299A2 (en) 2018-12-19 2018-12-19 DATA INSULATION IN A BLOCK CHAIN NETWORK

Publications (2)

Publication Number Publication Date
KR20200078420A true KR20200078420A (ko) 2020-07-01
KR102303376B1 KR102303376B1 (ko) 2021-09-24

Family

ID=66100121

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197022207A KR102303376B1 (ko) 2018-12-19 2018-12-19 블록체인 네트워크에서의 데이터 아이솔레이션

Country Status (10)

Country Link
US (3) US10628605B2 (ko)
EP (1) EP3559885B1 (ko)
JP (1) JP6883110B2 (ko)
KR (1) KR102303376B1 (ko)
CN (1) CN110088793B (ko)
MY (1) MY194395A (ko)
PH (1) PH12019501713A1 (ko)
SG (1) SG11201906838QA (ko)
TW (1) TWI705689B (ko)
WO (1) WO2019072299A2 (ko)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210042295A1 (en) * 2018-04-25 2021-02-11 Simplecredit Micro-Lending Co., Ltd. Blockchain-based data management method and related system
US11164180B1 (en) 2018-08-06 2021-11-02 United Services Automobile Association (Usaa) Privacy preservation in private consensus networks
US11216573B1 (en) * 2018-08-06 2022-01-04 United Services Automobile Association (Usaa) Privacy preservation in private consensus networks
EP3559885B1 (en) 2018-12-19 2022-08-24 Advanced New Technologies Co., Ltd. Data isolation in a blockchain network
CN111164935B (zh) * 2019-05-31 2023-08-22 创新先进技术有限公司 在基于区块链的私有交易中提供隐私和安全保护的系统和方法
MX2020014099A (es) * 2019-07-18 2021-04-13 Allfunds Bank S A U Disposicion de cadenas de bloques con una transaccion restringida.
CN114175031A (zh) * 2019-08-06 2022-03-11 索尼集团公司 信息处理设备、信息处理方法和程序
WO2019228553A2 (en) * 2019-08-27 2019-12-05 Alibaba Group Holding Limited System and method for registering subscribable sub-states in blockchain
CN110706108B (zh) * 2019-09-30 2021-08-03 支付宝(杭州)信息技术有限公司 在区块链中并发执行交易的方法和装置
US11290294B2 (en) * 2019-10-04 2022-03-29 Sap Se Collaboration hub with blockchain verification
CN111027973A (zh) * 2019-12-04 2020-04-17 杭州复杂美科技有限公司 转账证明授权提交方法、设备和存储介质
US20210250219A1 (en) * 2020-02-07 2021-08-12 Bank Of America Corporation System for integration and interoperability between disparate distributed server technologies
CN115191000A (zh) * 2020-03-12 2022-10-14 株式会社日立物流 对价支付辅助系统及方法、信息处理装置、以及程序
CN111489156A (zh) * 2020-03-18 2020-08-04 平安国际智慧城市科技股份有限公司 基于区块链的交易方法、电子装置及可读存储介质
SG11202103081RA (en) 2020-06-08 2021-04-29 Alipay Labs Singapore Pte Ltd Distributed storage of custom clearance data
CN111989663A (zh) 2020-06-08 2020-11-24 支付宝实验室(新加坡)有限公司 基于区块链的智能合约池
SG11202103063PA (en) * 2020-06-08 2021-04-29 Alipay Labs Singapore Pte Ltd Managing user authorizations for blockchain-based custom clearance services
WO2020169122A2 (en) 2020-06-08 2020-08-27 Alipay Labs (singapore) Pte. Ltd. Blockchain-based import custom clearance data processing
SG11202102583UA (en) 2020-06-08 2021-04-29 Alipay Labs Singapore Pte Ltd Blockchain-based document registration for custom clearance
CN114930330A (zh) 2020-06-08 2022-08-19 支付宝实验室(新加坡)有限公司 基于区块链的海关清关服务平台的用户管理
US11853291B2 (en) * 2020-07-06 2023-12-26 International Business Machines Corporation Privacy preserving architecture for permissioned blockchains
WO2022109850A1 (en) * 2020-11-25 2022-06-02 Alipay (Hangzhou) Information Technology Co., Ltd. Blockchain-based trusted platform
US12010226B2 (en) * 2021-03-17 2024-06-11 International Business Machines Corporation Blockchain data segregation
CN113726747B (zh) * 2021-08-11 2022-07-12 东南大学 一种基于区块链的工业互联网数据访问控制系统
CN114510540A (zh) * 2022-04-19 2022-05-17 北京微芯感知科技有限公司 数据处理方法、计算存储分离系统及区块链网络架构
CN115659410A (zh) * 2022-07-29 2023-01-31 湖南工商大学 一种保证网络安全的智慧医保支付系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170230375A1 (en) * 2016-02-10 2017-08-10 Bank Of America Corporation System for centralized control of secure access to process data network
US20180068130A1 (en) * 2016-09-02 2018-03-08 The Toronto-Dominion Bank System and method for maintaining a segregated database in a multiple distributed ledger system
US20180349621A1 (en) * 2017-06-01 2018-12-06 Schvey, Inc. d/b/a/ Axoni Distributed privately subspaced blockchain data structures with secure access restriction management

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9298387B2 (en) * 2013-07-17 2016-03-29 International Business Machines Corporation Recovering from a pending uncompleted reorganization of a data set
WO2015142765A1 (en) * 2014-03-17 2015-09-24 Coinbase, Inc Bitcoin host computer system
US20170085555A1 (en) 2015-07-14 2017-03-23 Fmr Llc Point-to-Point Transaction Guidance Apparatuses, Methods and Systems
CN105488675B (zh) * 2015-11-25 2019-12-24 布比(北京)网络技术有限公司 一种区块链的分布式共享总账构建方法
US10026118B2 (en) * 2016-02-22 2018-07-17 Bank Of America Corporation System for allowing external validation of data in a process data network
US10135870B2 (en) * 2016-02-22 2018-11-20 Bank Of America Corporation System for external validation of secure process transactions
AU2017240682B2 (en) * 2016-04-01 2022-06-30 Consensys Software Inc. Systems and methods for providing data privacy in a private distributed ledger
US10992649B2 (en) * 2016-04-01 2021-04-27 Consensys Software Inc. Systems and methods for privacy in distributed ledger transactions
US10810583B2 (en) * 2016-04-29 2020-10-20 Digital Asset Holdings Digital asset modeling
US20170331896A1 (en) * 2016-05-13 2017-11-16 De La Rue International Limited Methods and systems for processing assets
US10826685B1 (en) 2016-06-28 2020-11-03 Amazon Technologies, Inc. Combined blockchain integrity
KR101841566B1 (ko) 2016-10-11 2018-05-04 주식회사 코인플러그 블록체인 내의 블록별로 발란스 데이터베이스를 관리하여 전자 바우처를 발행, 사용, 환불, 정산 및 파기하는 방법과 이를 이용한 서버
US10361853B2 (en) * 2016-10-12 2019-07-23 Bank Of America Corporation Automated data authentication and service authorization via cryptographic keys in a private blockchain
US10158611B2 (en) * 2016-11-17 2018-12-18 Bank Of America Corporation System for multiplexing and demultiplexing blockchain ledgers via a cryptographic hash
US10355869B2 (en) * 2017-01-12 2019-07-16 International Business Machines Corporation Private blockchain transaction management and termination
US10810290B2 (en) * 2017-03-05 2020-10-20 Ronald H Minter Robust method and an apparatus for authenticating a client in non-face-to-face online interactions based on a combination of live biometrics, biographical data, blockchain transactions and signed digital certificates
WO2018174112A1 (ja) * 2017-03-21 2018-09-27 渡辺浩志 ネットワーク上の装置認証技術
JP6199518B1 (ja) * 2017-03-23 2017-09-20 株式会社bitFlyer プライベートノード、プライベートノードにおける処理方法、及びそのためのプログラム
CN111614655A (zh) * 2017-03-24 2020-09-01 创新先进技术有限公司 一种共识校验的方法及装置
US20180285839A1 (en) * 2017-04-04 2018-10-04 Datient, Inc. Providing data provenance, permissioning, compliance, and access control for data storage systems using an immutable ledger overlay network
US10812270B2 (en) * 2017-04-07 2020-10-20 Citizen Hex Inc. Techniques for increasing the probability that a transaction will be included in a target block of a blockchain
US11922363B2 (en) * 2017-07-05 2024-03-05 United Parcel Service Of America, Inc. Counterparty physical proximity verification for digital asset transfers
WO2019018776A1 (en) * 2017-07-21 2019-01-24 Patientory, Inc. BLOCK CHAIN NETWORK FOR SECURE EXCHANGE OF HEALTH CARE INFORMATION
US10762478B1 (en) 2017-08-04 2020-09-01 Wells Fargo Bank, N.A. Creating and managing private electronic currency
US11196552B2 (en) * 2017-08-04 2021-12-07 Truss Financial, LLC Secure data distribution protocol using blockchains
WO2019089774A1 (en) * 2017-10-31 2019-05-09 Jordan Simons Distributed multi-ledger gambling architecture
CN108154367B (zh) * 2017-12-26 2021-07-02 成都质数斯达克科技有限公司 一种区块链业务校验方法及装置
US11449842B2 (en) * 2018-02-23 2022-09-20 Jpmorgan Chase Bank, N.A. Systems and methods for private settlement of distributed ledger transactions
US20190303623A1 (en) * 2018-04-02 2019-10-03 Ca, Inc. Promotion smart contracts for software development processes
US10928803B2 (en) * 2018-05-02 2021-02-23 Rockwell Automation Technologies, Inc. Managing blockchains for multiple components in an industrial facility
US20190354606A1 (en) * 2018-05-18 2019-11-21 Factom Private Cryptocoinage in Blockchain Environments
CN108805656B (zh) * 2018-05-22 2021-01-26 北京京东尚科信息技术有限公司 供需匹配方法、平台、系统和计算机可读存储介质
CN108805568A (zh) * 2018-05-28 2018-11-13 夸克链科技(深圳)有限公司 一种区块链智能协同交易模式
US11328347B2 (en) * 2018-06-28 2022-05-10 International Business Machines Corporation Rental asset processing for blockchain
US10984410B2 (en) * 2018-11-15 2021-04-20 Adobe Inc. Entity-sovereign data wallets using distributed ledger technology
US20200167769A1 (en) * 2018-11-27 2020-05-28 Its, Inc. Distributed ledger settlement transactions
US11127000B2 (en) * 2018-12-17 2021-09-21 Intel Corporation Reducing blockchain transaction delay
EP3559885B1 (en) 2018-12-19 2022-08-24 Advanced New Technologies Co., Ltd. Data isolation in a blockchain network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170230375A1 (en) * 2016-02-10 2017-08-10 Bank Of America Corporation System for centralized control of secure access to process data network
US20180068130A1 (en) * 2016-09-02 2018-03-08 The Toronto-Dominion Bank System and method for maintaining a segregated database in a multiple distributed ledger system
US20180349621A1 (en) * 2017-06-01 2018-12-06 Schvey, Inc. d/b/a/ Axoni Distributed privately subspaced blockchain data structures with secure access restriction management

Also Published As

Publication number Publication date
KR102303376B1 (ko) 2021-09-24
CN110088793B (zh) 2023-10-20
US20190286838A1 (en) 2019-09-19
JP2020512716A (ja) 2020-04-23
EP3559885A4 (en) 2020-01-08
US11106817B2 (en) 2021-08-31
WO2019072299A3 (en) 2019-08-08
SG11201906838QA (en) 2019-08-27
WO2019072299A2 (en) 2019-04-18
CN110088793A (zh) 2019-08-02
US20200202035A1 (en) 2020-06-25
MY194395A (en) 2022-11-30
EP3559885B1 (en) 2022-08-24
US10628605B2 (en) 2020-04-21
JP6883110B2 (ja) 2021-06-09
TW202025663A (zh) 2020-07-01
US11074358B2 (en) 2021-07-27
EP3559885A2 (en) 2019-10-30
US20210097196A1 (en) 2021-04-01
PH12019501713A1 (en) 2020-02-24
TWI705689B (zh) 2020-09-21

Similar Documents

Publication Publication Date Title
KR102303376B1 (ko) 블록체인 네트워크에서의 데이터 아이솔레이션
EP3560143B1 (en) Data isolation in a blockchain network
US10678597B2 (en) Event-driven blockchain workflow processing
JP6892513B2 (ja) 信頼できる実行環境に基づいたオフチェーンスマートコントラクトサービス
KR102289612B1 (ko) 분산 원장 시스템에서 트랜잭션들의 병렬 실행 수행
KR20200083936A (ko) 블록체인 네트워크에서의 트랜잭션의 병렬 실행
KR102337171B1 (ko) 판독-기입 세트 모델 기반 블록체인 기술에서 이중 소비 문제를 회피하기 위한 방법 및 디바이스
CN110959282B (zh) 用于智能合约的软件接口
US20220311595A1 (en) Reducing transaction aborts in execute-order-validate blockchain models
CN113409131A (zh) 资产信息管理方法、装置、设备、存储介质和程序产品

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant