KR102281558B1 - 합의 검증 방법 및 디바이스 - Google Patents

합의 검증 방법 및 디바이스 Download PDF

Info

Publication number
KR102281558B1
KR102281558B1 KR1020197018706A KR20197018706A KR102281558B1 KR 102281558 B1 KR102281558 B1 KR 102281558B1 KR 1020197018706 A KR1020197018706 A KR 1020197018706A KR 20197018706 A KR20197018706 A KR 20197018706A KR 102281558 B1 KR102281558 B1 KR 102281558B1
Authority
KR
South Korea
Prior art keywords
transaction
node
data
determining
valid
Prior art date
Application number
KR1020197018706A
Other languages
English (en)
Other versions
KR20190090832A (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 KR1020217019308A priority Critical patent/KR102541219B1/ko
Publication of KR20190090832A publication Critical patent/KR20190090832A/ko
Application granted granted Critical
Publication of KR102281558B1 publication Critical patent/KR102281558B1/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
    • 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/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • 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/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • 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
    • 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • 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
    • G06Q2220/00Business processing using cryptography
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

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

Abstract

본 출원의 구현예들은 합의 검증 방법 및 디바이스를 개시한다. 규제 노드는 트랜잭션 요청이 유효한지의 여부를 검증하는 것을 담당한다. 트랜잭션 요청이 유효하면, 규제 노드는 트랜잭션 데이터 내의 특정된 데이터에 기반하여 다이제스트를 생성하고, 다이제스트 및 트랜잭션 데이터 내에 포함된 비특정된 데이터를 합의 검증을 위해 각각의 합의 노드에 송신한다. 각각의 합의 노드는 합의 검증이 성공한 후 블록체인 내에 다이제스트 및 비특정된 데이터를 저장한다. 이와 같이, 합의 노드는 특정된 데이터를 수신하지 않고, 따라서, 특정된 데이터를 블록체인 내에 저장하지 않는다. 결과적으로, 특정된 데이터가 공개되지 않는다. 또한, 다이제스트는, 블록체인 내에 저장되지 않은 특정된 데이터가 조작되었는지의 여부를 검증하는데 사용될 수 있다.

Description

합의 검증 방법 및 디바이스
본 출원은 블록체인 기술들의 분야, 특히 합의 검증 방법 및 디바이스에 관한 것이다.
블록체인 네트워크는 분산 원장 네트워크(distributed ledger network)로도 지칭되며, 분권(decentralization), 개방성(openness), 및 투명성(transparency)으로 특징된다. 각각의 블록체인 노드는 블록체인과 동기화된다. 블록체인 네트워크는 블록체인 노드들을 포함한다. 각각의 블록체인 노드는 트랜잭션 요청(transaction request)을 개시하는 것 및 트랜잭션 요청에 대한 합의 검증에 참여하는 것 둘 다 가능하다.
기존의 합의 검증 방법은 다음과 같다: 트랜잭션에 참여한 블록체인 노드가 블록체인 네트워크 내의 각각의 합의 노드에게 트랜잭션에 대한 트랜잭션 요청을 브로드캐스팅함. 합의 노드는 합의 검증을 담당하는 블록체인 노드이며, 트랜잭션 요청은 트랜잭션의 트랜잭션 데이터를 포함함. 각각의 합의 노드는, 트랜잭션 요청에 대해 각각의 합의 노드에 의해 수행되는 합의 검증이 성공한 후, 블록체인 내에 트랜잭션 데이터를 저장함.
그러나, 각각의 블록체인 노드는 블록체인 내에 저장되는 각각의 트랜잭션의 트랜잭션 데이터를 획득하기 위해 블록체인과 동기화될 수 있다. 결론적으로, 트랜잭션에 참여한 블록체인 노드의 트랜잭션 데이터 내에 포함되는 프라이버시가 노출되기 쉽다.
본 출원의 구현예들은, 기존의 합의 검증 방법을 사용할 때 트랜잭션에 참여한 블록체인 노드의 프라이버시가 노출되기 쉬운 문제를 완화하기 위해, 합의 검증 방법 및 디바이스를 제공한다.
이전의 기술적 문제를 완화하기 위해, 본 출원의 구현예들은 다음과 같이 구현된다:
본 출원의 구현예는 합의 검증 방법을 제공하고, 방법은 다음을 포함한다: 규제 노드(regulatory node)에 의해, 트랜잭션 요청 - 트랜잭션 요청은 트랜잭션 데이터 및 적어도 하나의 트랜잭션 노드의 서명을 포함함 - 을 획득하는 단계; 트랜잭션 데이터 및 각각의 트랜잭션 노드의 서명에 기반하여 트랜잭션 요청이 유효한지의 여부를 결정하는 단계; 트랜잭션 요청이 유효하면, 트랜잭션 데이터 내에 포함된 특정된 데이터에 기반하여 다이제스트(digest)를 생성하는 단계; 및 각각의 합의 노드가 합의 검증을 수행하도록, 다이제스트 및 트랜잭션 데이터 내에 포함된 비특정된 데이터를 각각의 합의 노드에 송신하는 단계.
본 출원의 구현예는 합의 검증 디바이스를 제공하고, 디바이스는 다음을 포함한다: 트랜잭션 요청 - 트랜잭션 요청은 트랜잭션 데이터 및 적어도 하나의 트랜잭션 노드의 서명을 포함함 - 을 획득하도록 구성된 제 1 취득 모듈; 및 트랜잭션 데이터 및 각각의 트랜잭션 노드의 서명에 기반하여 트랜잭션 요청이 유효한지의 여부를 결정하도록; 그리고 트랜잭션 요청이 유효하면, 트랜잭션 데이터 내에 포함된 특정된 데이터에 기반하여 다이제스트를 생성하고, 각각의 합의 노드가 합의 검증을 수행하도록, 다이제스트 및 트랜잭션 내에 포함된 비특정된 데이터를 각각의 합의 노드에 송신하도록 구성된 결정 및 프로세싱 모듈.
본 출원의 구현예들에서 제공되는 기술적 솔루션들로부터, 본 출원의 구현예들에서, 규제 노드가 트랜잭션 요청이 유효한지의 여부를 검증하는 것을 담당한다는 점을 알 수 있다. 트랜잭션 요청이 유효하면, 규제 노드는 트랜잭션 데이터 내의 특정된 데이터에 기반하여 다이제스트를 생성하고, 다이제스트 및 트랜잭션 데이터 내에 포함된 비특정된 데이터를 합의 검증을 위해 각각의 합의 노드에 송신한다. 각각의 합의 노드는 합의 검증이 성공한 후 블록체인 내에 다이제스트 및 비특정된 데이터를 저장한다. 이와 같이, 합의 노드는 특정된 데이터를 수신하지 않고, 따라서, 특정된 데이터를 블록체인 내에 저장하지 않는다. 결과적으로, 특정된 데이터가 공개되지 않는다. 또한, 다이제스트는, 블록체인 내에 저장되지 않은 특정된 데이터가 조작되었는지의 여부를 검증하는데 사용될 수 있다.
본 출원의 구현예들 내의 또는 기존 기술 내의 기술적 솔루션들을 더 명확히 설명하기 위해, 다음은 구현예들 또는 기존 기술을 설명하기 위해 필요되는 첨부 도면들을 간략히 설명한다. 명백하게, 다음의 설명에서 첨부 도면들은 단지 본 출원의 일부 구현예들을 도시하며, 당업자는 창의적인 노력없이 이들 첨부 도면들로부터 다른 도면들을 여전히 유도할 수 있다.
도 1은 본 출원의 구현예에 따른, 합의 검증 방법을 예시하는 흐름도이다.
도 2는 본 출원의 구현예에 따른, 블록체인 네트워크를 예시하는 개략도이다.
도 3은 본 출원의 구현예에 따른, 블록체인 네트워크를 예시하는 개략도이다.
도 4는 본 출원의 구현예에 따른, 합의 검증 디바이스를 예시하는 개략도이다.
본 출원의 구현예들은 합의 검증 방법 및 디바이스를 제공한다.
당업자가 본 출원에서의 기술적 솔루션들을 더 잘 이해하도록 하기 위해, 다음은 본 출원의 구현예들에서 첨부 도면들을 참조하여 본 출원의 구현예들에서의 기술적 솔루션들을 명확하고 철저히 설명한다. 명백하게, 설명되는 구현예들은 본 출원의 구현예들 중 일부일 뿐이며 모두는 아니다. 창의적인 노력없이 본 출원의 구현예들에 기반하여 당업자에 의해 획득되는 모든 다른 구현예들은 본 출원의 보호 범위 내에 있을 것이다.
본 출원의 구현예들에서 제공되는 기술적 솔루션들이 첨부 도면들을 참조하여 아래에서 상세히 설명된다.
도 1은 본 출원의 구현예에 따른, 합의 검증 방법을 예시하는 흐름도이다. 방법은 다음의 단계들을 포함한다.
단계(S101). 규제 노드가 트랜잭션 요청을 획득함.
방법은 규제 노드에 의해 수행된다. 규제 노드는 트랜잭션들을 규제하는 것을 담당하는 블록체인 노드이다. 규제 노드는 공익 신탁(public trust)을 갖고, 규제 노드에 의해 검증되는 아이템들은 전체 네트워크에서 블록체인 노드들에 의해 인식(acknowledge)된다.
블록체인 네트워크에서, 트랜잭션에 참여한 블록체인 노드는 트랜잭션 노드이고, 합의에 참여한 블록체인 노드는 합의 노드이다. 블록체인 노드가 트랜잭션 노드 및 합의 노드 둘 다일 수 있고, 트랜잭션에 참여할 수 있을 뿐만 아니라 트랜잭션에 대한 합의 검증에도 참여할 수 있다는 점을 강조할 가치가 있다.
도 2는 본 출원의 구현예에 따른, 블록체인 네트워크를 예시하는 개략도이다. 도 2에 도시된 바와 같이, 블록체인 노드는 규제 노드이다. 흰색 블록체인 노드가 합의 노드이다. 음영진 노드가 트랜잭션 노드이며, 합의 검증에도 참여할 수 있다.
본 출원의 본 구현예에서, 트랜잭션 요청은 트랜잭션 데이터 및 적어도 하나의 트랜잭션 노드의 서명을 포함한다. 트랜잭션 노드는 트랜잭션에서 자산(asset)을 지불하는 블록체인 노드일 수 있다. 트랜잭션에서 자산을 수용하는 블록체인 노드는 본 출원에서 설명되는 트랜잭션 노드일 수도 있다. 설명의 용이성를 위해, 설명들은, 트랜잭션 노드가 트랜잭션에서 자산을 지불하는 블록체인 노드인 예시를 사용함으로써 아래에서 제공된다. 또한, 본 출원은 트랜잭션 노드가 동시에 합의 노드이기도 한지의 여부에 대한 제한을 설정하지 않는다.
트랜잭션 데이터는, 트랜잭션 노드의 아이덴티티(identity), 트랜잭션 내에 포함되는 자산의 상세한 컨텐츠, 트랜잭션 내에 포함되는 자산의 자산 번호(asset number), 및 트랜잭션 노드의 계좌 주소(account address)와 같은 트랜잭션의 상세한 데이터이다.
본 출원의 본 구현예에서, 트랜잭션 노드의 서명은 트랜잭션 데이터에 대해 트랜잭션 노드에 의해 생성되고, 트랜잭션 노드가 트랜잭션 데이터를 승인(approve)한다는 증명(proof) 및 기록(record)으로서 사용된다. 트랜잭션 노드가 참여한 트랜잭션의 트랜잭션 데이터를 트랜잭션 노드가 승인하면, 후속하여 트랜잭션의 증명 및 기록을 보유하기 위해, 트랜잭션 노드는 먼저 다이제스트 알고리즘에 기반하여 트랜잭션 데이터의 다이제스트를 구성할 수 있고, 또한 트랜잭션 노드의 서명을 생성하기 위해 서명 알고리즘 및 개인 키(private key)를 통해 트랜잭션 데이터의 다이제스트를 프로세싱할 수 있다.
복수의 다이제스트 알고리즘들이 있을 수 있지만, 다이제스트 알고리즘들의 공통 피처(common feature)는 이전의 평문(plaintext)이 평문을 계산함으로써 획득된 다이제스트로부터 역으로 유도될 수 없는 것임을 유념할 가치가 있다. 평문에 대한 임의의 수정(modification)이 있다면, 수정된 평문을 계산함으로써 획득된 다이제스트도 상이할 수 있다. 각각의 트랜잭션을 식별하기 위해 트랜잭션 데이터의 다이제스트가 트랜잭션 데이터의 고유 식별자로서 사용될 수 있다는 점을 알 수 있다. 따라서, 트랜잭션 노드가 트랜잭션 데이터에 서명하면, 이는 트랜잭션 노드가 트랜잭션 데이터를 승인했음을 나타낼 수 있고, 이에 따라 트랜잭션 노드가 이후에 트랜잭션 데이터를 부정하는 것(denying)이 방지될 수 있다.
본 출원의 본 구현예에서, 트랜잭션 요청시, 트랜잭션 노드의 서명은 트랜잭션 데이터에서 트랜잭션 노드에 의해 사용된 자산의 자산 번호에 대응한다. 트랜잭션 노드는 트랜잭션 노드에 의해 사용된 자산의 자산 번호를 선언하기(declare) 위해 서명을 사용한다. 트랜잭션 노드는, 트랜잭션 노드의 서명 및 트랜잭션 노드에 의해 사용된 자산 번호가 특정 데이터 구조, 예를 들어 “자산 번호 001(서명 A)”를 형성하도록 할 수 있거나; 또는 서명과, 트랜잭션 노드에 의해 사용된 자산 번호 사이의 맵핑 관계를 확립하기 위한 다른 방법을 사용할 수 있다. 물론, 트랜잭션 노드의 서명에 대응하는 자산 번호가 반드시 트랜잭션 노드가 실제 소유한 자산 번호인 것은 아니다. 환언하면, 트랜잭션 노드는 다른 노드가 소유한 자산 번호를 악의적으로 그리고 부정하게 사용할 수 있다. 위험을 어떻게 회피하는지가 트랜잭션 요청의 유효성(validity)을 검증하는 다음의 설명의 일부이다.
본 출원의 본 구현예에서, 하나의 트랜잭션 요청은 복수의 트랜잭션 노드들의 서명들을 포함할 수 있다. 즉, 임의의 트랜잭션 노드는 트랜잭션 노드들의 서명들을 수집할 수 있고, 트랜잭션 요청을 생성할 수 있으며, 트랜잭션 요청을 규제 노드에 송신할 수 있다. 서명들을 수집하기 위한 방법은 다음과 같을 수 있다: 트랜잭션 데이터가 순서대로 트랜잭션 노드들간에 전송되고, 각각의 트랜잭션 노드는 트랜잭션 데이터에 트랜잭션 노드의 서명을 첨부하며, 최종적으로, 트랜잭션 데이터가 전송되는 최종 트랜잭션 노드가 트랜잭션 요청을 생성한다. 대안적으로, 트랜잭션 노드는 각각의 다른 트랜잭션 노드에 의해 송신된 서명을 수신할 수 있고, 이어서 트랜잭션 요청을 생성할 수 있다. 설명의 용이성를 위해, 설명들은, 트랜잭션 요청이 복수의 트랜잭션 노드들의 서명들을 포함하는 예시를 사용함으로써 아래에서 제공된다.
단계(S102). 트랜잭션 데이터 및 각각의 트랜잭션 노드의 서명에 기반하여 트랜잭션 요청이 유효한지의 여부를 결정하고, 트랜잭션 요청이 유효하면 단계(S103)를 수행하거나, 또는 트랜잭션 요청이 유효하지 않으면 단계(S104)를 수행함.
본 출원의 본 구현예에서, 트랜잭션 요청의 유효성을 검증하기 위한 복수의 방법들이 있다. 예를 들어, 케이스(1)에서, 규제 노드는, 규제 노드에 의해 저장된 각각의 트랜잭션 노드의 신용 기록(credit record)에 기반하여, 서명한 각각의 트랜잭션 노드의 신용 능력(credit capability)에 대해 스코어를 매길 수 있고, 각각의 트랜잭션 노드의 신용 능력의 스코어가 미리결정된 스코어보다 작으면 트랜잭션 요청이 유효하지 않다고 결정할 수 있거나, 또는 각각의 트랜잭션 노드의 신용 능력의 스코어가 미리결정된 스코어보다 작지 않으면 트랜잭션 요청이 유효하다고 결정할 수 있다. 다른 예시로서, 케이스(2)에서, 규제 노드는, 트랜잭션 노드가 트랜잭션 데이터를 조작했거나(tamper) 또는 다른 사람의 자산을 부정하게 사용했는지의 여부를 검증하기 위해, 트랜잭션 데이터, 각각의 트랜잭션 노드의 서명, 및 각각의 트랜잭션 노드의 공개 키(public key)를 대안적으로 사용할 수 있다. 물론, 트랜잭션 요청의 유효성을 검증하는 다른 케이스들이 있을 수 있다. 단순화를 위해 상세사항들은 여기서 생략된다.
케이스(2)에서, 규제 노드가 각각의 트랜잭션 노드의 공개 키를 미리 홀딩할 수 있거나, 또는 트랜잭션 요청이 각각의 트랜잭션 노드의 공개 키를 포함할 수 있다. 각각의 트랜잭션 노드의 공개 키는 트랜잭션 데이터의 다이제스트를 획득하기 위해 트랜잭션 노드의 서명을 해독하는데(decrypt) 사용될 수 있고, 이에 의해 서명자가 트랜잭션 데이터를 조작했는지의 여부를 검증한다. 트랜잭션 노드에 의해 제공된 공개 키를 사용함으로써 트랜잭션 노드의 서명을 해독함으로써 규제 노드에 의해 획득된 해독 결과가 트랜잭션 데이터의 다이제스트와 일치하지 않으면, 이는 트랜잭션 노드가 다른 블록체인 노드의 공개 키를 부정하게 사용함으로써 서명을 생성했거나 또는 트랜잭션 노드가 트랜잭션 데이터를 조작했다는 것을 나타내며, 따라서 트랜잭션 요청은 유효하지 않다. 트랜잭션 요청의 유효성은, 트랜잭션 노드가 트랜잭션 데이터를 조작하지 않았으면 후속하여 더 검증될 수 있다.
본 출원의 본 구현예에서, 후속 유효성 검증은 다음을 포함할 수 있다: 트랜잭션 노드가 다른 사람의 자산을 부정하게 사용했는지의 여부를 검증함. 일반적인 블록체인 네트워크에서, 각각의 블록체인 노드가 소유한 자산의 자산 번호는 블록체인 노드의 공개 키와 연관되며, 블록체인 노드의 외부에 공개된 아이덴티티 피처로서 역할하는 공개 키는 블록체인 노드의 아이덴티티를 고유하게 식별할 수 있다. 환언하면, 블록체인 노드의 공개 키와 연관된 자산 번호는 블록체인 노드가 실제 소유한 자산 번호이다.
따라서, 본 출원의 본 구현예에서, 규제 노드는 각각의 트랜잭션 노드의 공개 키에 기반하여 각각의 트랜잭션 노드가 실제 소유한 자산의 자산 번호를 결정하고, 이어서 트랜잭션 노드가 다른 블록체인 노드가 소유한 자산 번호를 악의적으로 그리고 부정하게 사용했는지의 여부를 결정하기 위해, 트랜잭션에서 트랜잭션 노드의 서명에 대응하는 자산 번호(트랜잭션 노드에 의해 사용된 자산 번호)를 트랜잭션 노드가 실제 소유한 자산 번호와 비교한다. 트랜잭션 요청은, 적어도 하나의 트랜잭션 노드가 다른 블록체인 노드가 소유한 자산 번호를 악의적으로 그리고 부정하게 사용했다면, 유효하지 않다. 트랜잭션 요청은, 각각의 트랜잭션 노드에 의해 사용된 자산 번호가 트랜잭션 노드가 소유한 자산 번호이면, 유효하다.
결론적으로, 케이스(2)에서, 규제 노드가 트랜잭션 요청의 유효성을 검증하고, 진보적인 방식으로 검증이 수행되며, 트랜잭션 요청이 유효하다고 결정하기 위해 다음의 두가지 측면들이 연속적으로 확인될 필요가 있다는 점을 알 수 있다: 1. 트랜잭션 데이터가 조작되지 않았을 것. 2. 트랜잭션 노드가 다른 블록체인 노드가 소유한 자산 번호를 부정하게 사용하지 않았을 것.
단계(S103). 각각의 합의 노드가 합의 검증을 수행하도록, 트랜잭션 데이터 내의 프라이버시 데이터에 기반하여 프라이버시 다이제스트를 생성하고, 프라이버시 다이제스트 및 트랜잭션 데이터 내의 비프라이버시(non-privacy) 데이터를 각각의 합의 노드에 송신함.
본 출원의 본 구현예에서, 특정된 데이터는 프라이버시 데이터일 수 있고, 비특정된 데이터는 비프라이버시 데이터일 수 있다. 프라이버시 데이터는 트랜잭션 노드의 프라이버시를 포함하고, 트랜잭션 노드에 의해 특정될 수 있고 규제 노드에 통지될 수 있거나; 또는 규제 노드에 의해 특정될 수 있다. 예를 들어, 프라이버시 데이터는, 트랜잭션 노드의 프라이버시로서 간주되는, 트랜잭션 노드의 아이텐티티, 자산의 상세한 컨텐츠, 및 계좌 주소 등을 포함할 수 있다.
위에서 설명된 바와 같이, 평문은 평문의 다이제스트로부터 역으로 유도될 수 없다. 따라서, 프라이버시 데이터에 대해 다이제스트가 생성된 후, 다이제스트가 신뢰되는 블록체인 내에 저장될 수 있고, 프라이버시 데이터의 신뢰되는 증명 및 기록이 보유될 수 있도록 프라이버시 데이터가 은닉될 수 있으며, 프라이버시 데이터가 보호될 수 있다.
다이제스트 및 비프라이버시 데이터를 수신한 후, 각각의 합의 노드는 비프라이버시 데이터에 기반하여 합의 검증을 수행할 수 있는데, 예를 들어 비프라이버시 데이터 내의 자산 번호에 기반하여 이중 비용(duplicate expenses)이 있는지의 여부를 검증할 수 있다. 합의 검증이 성공하면, 프라이버시 다이제스트 및 비프라이버시 데이터가 블록체인 내에 저장된다. 트랜잭션 요청의 유효성은 규제 노드에 의해 미리 검증되고 보증된다(endorsed).
이와 같이, 트랜잭션에 대한 합의 검증이 완료된다. 블록체인 내에 저장된 다이제스트는 트랜잭션 노드들간의 분쟁(dispute)을 해결하기 위해, 트랜잭션 노드에 의해 주장된(claimed) 프라이버시 데이터가 트루(true)인지의 여부를 검증하는데 사용될 수 있다.
본 출원의 본 구현예에서, 규제 노드는, 트랜잭션에 대해 각각의 합의 노드에 의해 수행된 합의 검증이 성공한 후, 각각의 트랜잭션 노드가 후속하여 서명을 부정하는 것을 방지하기 위해, 블록체인 내의 각각의 트랜잭션 노드의 서명을 합의 노드가 또한 저장하도록, 각각의 트랜잭션 노드의 서명을 각각의 합의 노드에 또한 송신할 수 있다.
또한, 본 출원의 본 구현예에서, 규제 노드는 트랜잭션 요청이 유효하면 적어도 하나의 트랜잭션 노드에게 트랜잭션 데이터 또는 트랜잭션 데이터 내에 포함된 특정된 데이터를 저장할 것을 지시할 수 있다. 물론, 대안적으로, 규제 노드는 트랜잭션에 대해 각각의 합의 노드에 의해 수행된 합의 검증이 성공한 후 그리고 다이제스트가 블록체인 내에 저장된 후, 적어도 하나의 트랜잭션 노드에게 트랜잭션 데이터 또는 특정된 데이터를 트랜잭션 노드에 대응하는 개인 데이터베이스 내에 저장할 것을 지시할 수 있다. 결론적으로, 각각의 트랜잭션 노드는 특정된 데이터 또는 트랜잭션 데이터를 자체적으로 저장한다. 구현예들 본 출원에 제한되는 것은 아니다.
트랜잭션 노드가 트랜잭션 노드에 의해 저장된 특정된 데이터를 개인적으로 조작할 수 있지만, 블록체인 내에 저장된 다이제스트가, 특정된 데이터의 확실성(authenticity)을 검증하는데 언제라도 사용될 수 있고, 이에 의해, 특정된 데이터를 트랜잭션 노드가 개인적으로 조작하는 것에 의해 유발되는 위험을 회피한다.
도 3은 본 출원의 구현예에 따른, 블록체인 네트워크를 예시하는 개략도이다. 도면에 도시된 바와 같이, 블록체인 네트워크에서, 각각의 블록체인 노드가 블록체인을 유지하고, 블록체인 노드가 참여한 트랜잭션의 개인 데이터를 저장하기 위해 각각의 블록체인 노드가 자신의 개인 데이터베이스를 갖는다. 트랜잭션(A)에 대해, 트랜잭션(A)에 참여한 블록체인 노드(트랜잭션 노드)의 개인 데이터베이스만이 트랜잭션(A)에 대응하는 프라이버시 데이터를 저장하고, 트랜잭션(A)에 참여하지 않은 블록체인 노드(비트랜잭션 노드)의 개인 데이터베이스는 트랜잭션(A)에 대응하는 프라이버시 데이터를 저장하지 않는다.
단계(S104). 트랜잭션 요청을 거부함.
도 1에 도시된 합의 검증 방법에 따르면, 규제 노드는 트랜잭션 요청이 유효한지의 여부를 검증하는 것을 담당한다. 트랜잭션 요청이 유효하면, 규제 노드는 트랜잭션 데이터 내의 특정된 데이터에 기반하여 다이제스트를 생성하고, 다이제스트 및 트랜잭션 데이터 내에 포함된 비특정된 데이터를 합의 검증을 위해 각각의 합의 노드에 송신한다. 각각의 합의 노드는 합의 검증이 성공한 후 블록체인 내에 다이제스트 및 비특정된 데이터를 저장한다. 이와 같이, 합의 노드는 특정된 데이터를 수신하지 않고, 따라서, 특정된 데이터를 블록체인 내에 저장하지 않는다. 결과적으로, 특정된 데이터가 공개되지 않는다. 또한, 다이제스트는, 블록체인 내에 저장되지 않은 특정된 데이터가 조작되었는지의 여부를 검증하는데 사용될 수 있다.
또한, 컨소시엄 블록체인 네트워크와 같은 특정 블록체인 네트워크에 대해, 컨소시엄 블록체인 네트워크 내의 각각의 블록체인 노드는 인증 기관(certificate authority)에 의해 발행된 디지털 인증서를 갖고, 여기서 디지털 인증서는 블록체인 노드의 실질(real) 아이덴티티를 보증하는데 사용된다. 디지털 인증서는 블록체인 노드의 아이덴티티(identity; ID) 및 공개 키를 포함한다. 중요한 점은, 일반적인 블록체인 네트워크와 달리, 컨소시엄 블록체인 네트워크에서, 블록체인 노드가 소유한 자산 번호는 블록체인 노드의 ID와 연관된다.
컨소시엄 블록체인 네트워크의 응용 시나리오에서, 규제 노드는 트랜잭션 노드의 디지털 인증서를 획득할 수 있고, 트랜잭션 노드의 디지털 인증서, 각각의 트랜잭션 노드의 서명, 및 트랜잭션 데이터에 기반하여 트랜잭션 요청이 유효한지의 여부를 결정할 수 있다.
규제 노드는, 트랜잭션 노드의 디지털 인증서 내에 포함된 공개 키에 기반하여 각각의 트랜잭션 노드의 서명을 해독할 수 있고; 각각의 트랜잭션 노드에 대응하는 해독 결과가 트랜잭션 데이터의 다이제스트와 동일하다고 결정했을 때, 각각의 트랜잭션 노드의 디지털 인증서 내에 포함된 아이덴티티에 기반하여 아이덴티티에 대응하는 자산 번호를 결정할 수 있고, 이 자산 번호를 트랜잭션 노드가 소유한 자산 번호로서 사용할 수 있으며; 각각의 트랜잭션 노드가 소유한 자산 번호, 각각의 트랜잭션 노드의 서명, 및 트랜잭션 데이터에 기반하여 트랜잭션 요청이 유효한지의 여부를 결정하거나; 또는 적어도 하나의 트랜잭션 노드에 대응하는 해독 결과가 트랜잭션 데이터의 다이제스트와 상이하다고 결정했을 때 트랜잭션 요청이 유효하지 않다고 결정할 수 있다.
또한, 규제 노드는, 트랜잭션 노드의 서명에 기반하여 트랜잭션 데이터 내의 각각의 트랜잭션 노드의 서명에 대응하는 자산 번호를 결정할 수 있고, 이 자산 번호를 트랜잭션 노드에 의해 사용된 자산 번호로서 사용할 수 있으며; 트랜잭션 노드가 소유한 자산 번호가 트랜잭션 노드에 의해 사용된 적어도 하나의 자산 번호를 포함하지 않으면 트랜잭션 노드가 유효하지 않다고 결정할 수 있거나; 또는 트랜잭션 노드가 소유한 자산 번호가 트랜잭션 노드에 의해 사용된 모든 자산 번호들을 포함하면 트랜잭션 노드가 유효하다고 결정할 수 있으며; 적어도 하나의 트랜잭션 노드가 유효하지 않을 때 트랜잭션 요청이 유효하지 않다고 결정할 수 있거나; 또는 모든 트랜잭션 노드들이 유효할 때 트랜잭션 요청이 유효하다고 결정할 수 있다.
트랜잭션 노드가 유효하다는 것은, 트랜잭션 노드가 (다른 사람의 서명을 부정하게 사용하는 것 또는 다른 사람의 자산을 부정하게 사용하는 것과 같은) 악성 불법 액트(malicious illegal act)를 범하지 않았다는 것을 의미한다. 현재 트랜잭션에서 트랜잭션 노드에 의해 사용된 적어도 하나의 자산 번호가 트랜잭션 노드가 소유한 자산 번호가 아니라는 것이 결정되었을 때, 트랜잭션 노드가 다른 사람의 자산 번호를 부정하게 사용한 불법 액트를 범했고, 따라서 유효하지 않다고 간주될 수 있다.
환언하면, 컨소시엄 블록체인 네트워크의 응용 시나리오에서, 트랜잭션 노드는 트랜잭션 노드의 공개 키 대신, 트랜잭션 노드의 디지털 인증서를 규제 노드에 제공한다. 또한, 트랜잭션 노드가 실제 소유한 자산 번호가 트랜잭션 노드의 ID에 기반하여 확인될 필요가 있다. 이와 같이, 규제 노드가 트랜잭션 요청의 유효성을 검증하기 위해 확인할 필요가 있는 위에서 설명된 두가지 측면들(1. 트랜잭션 데이터가 조작되지 않았을 것 2. 트랜잭션 노드가 다른 블록체인 노드가 소유한 자산 번호를 부정하게 사용하지 않았을 것)에 있어서 근소한 차이가 있을 수 있다.
규제 노드는 먼저 트랜잭션 노드의 디지털 인증서 내에 포함된 공개 키에 기반하여 각각의 트랜잭션 노드의 서명을 해독하는 것을 시도한다. 해독 결과가 트랜잭션 데이터의 다이제스트와 일치하면, 이는 트랜잭션 노드가 트랜잭션 데이터를 조작하지 않았다는 것을 나타낸다. 모든 트랜잭션 노드들의 아이덴티티들이 트루라고 결정한 후, 규제 노드는, 트랜잭션 노드의 디지털 인증서 내에 포함된 ID에 대응하는 자산 번호(즉, 트랜잭션 노드가 실제 소유한 자산 번호)에 기반하여, 트랜잭션 데이터 내의 각각의 트랜잭션 노드의 서명에 대응하는 자산 번호(즉, 트랜잭션에서 각각의 트랜잭션 노드에 의해 사용된 자산 번호)가 트랜잭션 노드의 자산 번호인지의 여부를 결정하는 것으로 이어갈 수 있다. 이는 트랜잭션 노드가 다른 사람의 자산 번호를 부정하게 사용하지 않았으면 트랜잭션 요청이 유효하다는 것을 나타낸다.
컨소시엄 블록체인 네트워크의 응용 시나리오에서, 트랜잭션 노드의 디지털 인증서 내에 포함된 트랜잭션 노드의 ID가 실제로 트랜잭션 노드의 프라이버시라는 점을 강조할 가치가 있다. 본 출원의 본 구현예에서, 규제 노드는 트랜잭션 노드의 디지털 인증서를 합의 노드에 송신하지 않고, 이에 의해 트랜잭션 노드의 ID가 공개되지 않는 것을 보장한다.
도 1에 도시된 합의 검증 방법에 기반하여, 본 출원의 구현예는 또한 이에 대응하여 합의 검증 디바이스를 제공한다. 도 4에 도시된 바와 같이, 디바이스는 다음을 포함한다: 트랜잭션 요청 - 트랜잭션 요청은 트랜잭션 데이터 및 적어도 하나의 트랜잭션 노드의 서명을 포함함 - 을 획득하도록 구성된 제 1 취득 모듈(401); 및 트랜잭션 데이터 및 각각의 트랜잭션 노드의 서명에 기반하여 트랜잭션 요청이 유효한지의 여부를 결정하도록; 그리고 트랜잭션 요청이 유효하면, 트랜잭션 데이터 내에 포함된 특정된 데이터에 기반하여 다이제스트를 생성하고, 각각의 합의 노드가 합의 검증을 수행하도록, 다이제스트 및 트랜잭션 내에 포함된 비특정된 데이터를 각각의 합의 노드에 송신하도록 구성된 결정 및 프로세싱 모듈(402).
디바이스는 트랜잭션 요청이 유효하지 않으면 트랜잭션 요청을 거부하도록 구성된 거부 모듈(403)을 더 포함한다.
디바이스는, 트랜잭션 데이터 및 각각의 트랜잭션 노드의 서명에 기반하여 트랜잭션 요청이 유효한지의 여부가 결정되기 전에, 각각의 트랜잭션 노드의 디지털 인증서를 획득하도록 구성된 제 2 취득 모듈(404)을 더 포함한다.
결정 및 프로세싱 모듈(402)은 트랜잭션 데이터, 각각의 트랜잭션 노드의 서명, 및 각각의 트랜잭션 노드의 디지털 인증서에 기반하여 트랜잭션 요청이 유효한지의 여부를 결정하도록 구성된다.
결정 및 프로세싱 모듈(402)은, 트랜잭션 노드의 디지털 인증서 내에 포함된 공개 키에 기반하여 각각의 트랜잭션 노드의 서명을 해독하도록; 각각의 트랜잭션 노드에 대응하는 해독 결과가 트랜잭션 데이터의 다이제스트와 동일하다고 결정했을 때, 각각의 트랜잭션 노드의 디지털 인증서 내에 포함된 아이덴티티에 기반하여 아이덴티티에 대응하는 자산 번호를 결정하도록, 이 자산 번호를 트랜잭션 노드가 소유한 자산 번호로서 사용하도록; 각각의 트랜잭션 노드가 소유한 자산 번호, 각각의 트랜잭션 노드의 서명, 및 트랜잭션 데이터에 기반하여 트랜잭션 요청이 유효한지의 여부를 결정하거나; 또는 적어도 하나의 트랜잭션 노드에 대응하는 해독 결과가 트랜잭션 데이터의 다이제스트와 상이하다고 결정했을 때 트랜잭션 요청이 유효하지 않다고 결정하도록 구성된다.
결정 및 프로세싱 모듈(402)은, 트랜잭션 노드의 서명에 기반하여 트랜잭션 데이터 내의 각각의 트랜잭션 노드의 서명에 대응하는 자산 번호를 결정하도록, 이 자산 번호를 트랜잭션 노드에 의해 사용된 자산 번호로서 사용하도록; 트랜잭션 노드가 소유한 자산 번호가 트랜잭션 노드에 의해 사용된 적어도 하나의 자산 번호를 포함하지 않으면 트랜잭션 노드가 유효하지 않다고 결정하거나; 또는 트랜잭션 노드가 소유한 자산 번호가 트랜잭션 노드에 의해 사용된 모든 자산 번호들을 포함하면 트랜잭션 노드가 유효하다고 결정하도록; 적어도 하나의 트랜잭션 노드가 유효하지 않을 때 트랜잭션 요청이 유효하지 않다고 결정하도록; 또는 모든 트랜잭션 노드들이 유효할 때 트랜잭션 요청이 유효하다고 결정하도록 구성된다.
디바이스는 트랜잭션 요청이 유효하면 적어도 하나의 트랜잭션 노드에게 트랜잭션 데이터 또는 트랜잭션 데이터 내에 포함된 특정된 데이터를 저장할 것을 지시하도록 구성된 통지 모듈(405)을 더 포함한다.
1990년대에는, 기술적 향상이 하드웨어적 향상(예를 들어, 다이오드, 트랜지스터, 또는 스위치와 같은 회로 구조물에 대한 향상)인지 또는 소프트웨어적 향상(방법 절차에 대한 향상)인지의 여부가 명확히 구분될 수 있었다. 그러나, 기술들이 발전함에 따라, 많은 방법 절차들에 대한 현재의 향상들은 하드웨어 회로 구조물들에 대한 직접적인 향상들로 간주될 수 있다. 설계자들은 보통, 향상된 방법 절차를 대응하는 하드웨어 회로 구조물을 획득하기 위해 하드웨어 회로에 프로그래밍한다. 따라서, 방법 절차는 하드웨어 엔티티 모듈(hardware entity module)을 사용함으로써 향상될 수 있다. 예를 들어, 프로그래밍가능 논리 디바이스(programmable logic device; PLD)[예를 들어, 필드 프로그래밍가능 게이트 어레이(field programmable gate array; FPGA)]가 그러한 집적 회로이며, PLD의 논리 함수가 디바이스 프로그래밍을 통해 사용자에 의해 결정된다. 설계자는, 칩 제조자가 주문형 집적 회로 칩(application-specific integrated circuit chip)을 설계하고 제조하도록 요청하지 않고 PLD에 디지털 시스템을 “집적”하기 위해 프로그래밍을 수행한다. 또한, 현재, 집적 회로 칩을 수동으로 제조하는 대신, 그러한 프로그래밍은 대부분 “논리 컴파일러” 소프트웨어를 사용함으로써 구현된다. 논리 컴파일러 소프트웨어는 프로그램을 개발하고 작성하는데 사용되는 소프트웨어 컴파일러와 유사하다. 오리지널 코드는 컴파일을 위한 특정 프로그래밍 언어로 작성될 필요가 있다. 언어는 하드웨어 기술 언어(hardware description language; HDL)로 지칭된다. ABEL(Advanced Boolean Expression Language), AHDL(Altera Hardware Description Language), Confluence, CUPL(Cornell University Programming Language), HDCal, JHDL(Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, 및 RHDL(Ruby Hardware Description Language)와 같은 많은 HDL들이 있다. VHDL(very-high-speed integrated circuit hardware description language) 및 Verilog가 가장 일반적으로 사용된다. 당업자는 또한, 방법 절차가 몇몇 설명된 하드웨어 기술 언어들을 사용함으로써 논리적으로 프로그래밍되고 집적 회로에 프로그래밍되면, 논리적 방법 절차를 구현하는 하드웨어 회로가 쉽게 획득될 수 있다는 점을 이해해야 한다.
임의의 적절한 방법을 사용함으로써 컨트롤러가 구현될 수 있다. 예를 들어, 컨트롤러는, 마이크로프로세서 또는 프로세서, 및 마이크로프로세서 또는 프로세서, 논리 게이트, 스위치, 주문형 집적 회로(application-specific integrated circuit; ASIC), 프로그래밍가능 논리 컨트롤러, 또는 빌트인 마이크로컨트롤러(built-in microcontroller)에 의해 실행될 수 있는 (소프트웨어 또는 펌웨어와 같은) 컴퓨터 판독가능 프로그램 코드를 저장하는 컴퓨터 판독가능 매체일 수 있다. 컨트롤러의 예시들은 다음의 마이크로프로세서들을 포함하지만 이에 제한되는 것은 아니다: ARC 625D, Atmel AT91SAM, 마이크로칩 PIC18F26K20, 및 실리콘 랩스 C8051F320. 메모리의 제어 논리부의 일부로서 메모리 컨트롤러가 또한 구현될 수 있다. 당업자는 또한, 컴퓨터 판독가능 프로그램 코드를 사용함으로써 컨트롤러를 구현하는 것에 추가하여, 컨트롤러가 논리 게이트, 스위치, 주문형 집적 회로, 프로그래밍가능 논리 컨트롤러, 및 빌트인 마이크로컨트롤러의 형태들로 동일한 기능을 구현하게 하도록 방법 단계들에 논리 프로그래밍이 수행될 수 있다는 점을 알고 있다. 따라서, 컨트롤러는 하드웨어 컴포넌트로서 간주될 수 있고, 컨트롤러 내에 포함되고 다양한 기능들을 구현하도록 구성된 디바이스는 또한 하드웨어 컴포넌트 내의 구조물로서 간주될 수 있다. 또는 다양한 기능들을 구현하도록 구성된 디바이스도 방법을 구현하는 소프트웨어 모듈 및 하드웨어 컴포넌트 내의 구조물 둘 다로서 간주될 수 있다.
이전의 구현예들에서 예시된 시스템, 디바이스, 모듈, 또는 유닛은 컴퓨터 칩 또는 엔티티를 사용함으로써 구현될 수 있거나, 또는 특정 기능을 갖는 제품을 사용함으로써 구현될 수 있다. 일반적인 구현 디바이스는 컴퓨터이다. 컴퓨터는, 예를 들어 개인용 컴퓨터, 랩탑 컴퓨터, 셀룰러 폰, 카메라 폰, 스마트폰, 개인용 디지털 보조기, 미디어 플레이어, 내비게이션 디바이스, 이메일 디바이스, 게임 콘솔, 태블릿 컴퓨터, 웨어러블 디바이스, 또는 이 디바이스들 중 임의의 디바이스들의 조합일 수 있다.
설명의 용이성을 위해, 위의 디바이스는 기능들을 다양한 유닛들로 분할하는 것으로 설명된다. 물론, 본 출원이 구현될 때, 유닛들의 기능들은 하나 이상의 피스(piece)의 소프트웨어 및/또는 하드웨어로 구현될 수 있다.
당업자는 본 개시의 구현예가 방법, 시스템, 또는 컴퓨터 프로그램 제품으로서 제공될 수 있다는 점을 이해해야 한다. 따라서, 본 개시는 하드웨어만 있는 구현예들, 소프트웨어만 있는 구현예들, 또는 소프트웨어 및 하드웨어의 조합이 있는 구현예들의 형태를 사용할 수 있다. 또한, 본 개시는 컴퓨터 사용가능 프로그램 코드를 포함하는 하나 이상의 컴퓨터 사용가능 스토리지 매체(디스크 메모리, CD-ROM, 광학 메모리 등을 포함하지만 이들에 제한되는 것은 아님) 상에서 구현되는 컴퓨터 프로그램 제품의 형태를 사용할 수 있다.
본 개시는 본 개시의 구현예들에 기반하여 방법, 디바이스(시스템), 및 컴퓨터 프로그램 제품의 흐름도들 및/또는 블록도들을 참조하여 설명된다. 흐름도들 및/또는 블록도들 내의 각각의 프로세스 및/또는 각각의 블록, 및 흐름도들 및/또는 블록도들 내의 프로세스 및/또는 블록의 조합을 구현하기 위해 컴퓨터 프로그램 명령어들이 사용될 수 있다는 점을 유념할 가치가 있다. 컴퓨터 또는 다른 프로그래밍가능 데이터 프로세싱 디바이스의 프로세서에 의해 실행되는 명령어들이 흐름도들 내의 하나 이상의 프로세스 및/또는 블록도들 내의 하나 이상의 블록 내의 특정 기능을 구현하기 위한 디바이스를 생성하도록, 이들 컴퓨터 프로그램 명령어들은, 범용 컴퓨터, 전용 컴퓨터, 빌트인 프로세서, 또는 머신을 생성하기 위한 다른 프로그래밍가능 데이터 프로세싱 디바이스의 프로세서용으로 제공될 수 있다.
컴퓨터 판독가능 메모리에 저장된 명령어들이 명령어 디바이스를 포함하는 아티팩트(artifact)를 생성하도록, 이들 컴퓨터 프로그램 명령어들은, 컴퓨터 또는 다른 프로그래밍가능 데이터 프로세싱 디바이스를 특정 방식으로 작동하도록 지시할 수 있는 컴퓨터 판독가능 메모리에 저장될 수 있다. 명령어 디바이스는 흐름도들 내의 하나 이상의 프로세스 및/또는 블록도들 내의 하나 이상의 블록 내의 특정 기능을 구현한다.
일련의 동작들과 동작들 및 단계들이 컴퓨터 또는 다른 프로그래밍가능 디바이스 상에서 수행되고, 이에 의해 컴퓨터로 구현되는 프로세싱을 생성하도록, 이들 컴퓨터 프로그램 명령어들은, 컴퓨터 또는 다른 프로그래밍가능 데이터 프로세싱 디바이스에 로딩될 수 있다. 따라서, 컴퓨터 또는 다른 프로그래밍가능 디바이스 상에서 실행되는 명령어들은 흐름도들 내의 하나 이상의 프로세스 및/또는 블록도들 내의 하나 이상의 블록 내의 특정 기능을 구현하기 위한 단계들을 제공한다.
일반적인 구성에서, 컴퓨팅 디바이스는 하나 이상의 프로세서(CPU), 하나 이상의 입력/출력 인터페이스, 하나 이상의 네트워크 인터페이스, 및 하나 이상의 메모리를 포함한다.
메모리는 비지속성 메모리, 랜덤 액세스 메모리(random access memory; RAM), 비휘발성 메모리, 및/또는 컴퓨터 판독가능 매체, 예를 들어 판독 전용 메모리(read-only memory; ROM) 또는 플래시 메모리(플래시 RAM) 내에 있는 다른 형태를 포함할 수 있다. 메모리는 컴퓨터 판독가능 매체의 예시이다.
컴퓨터 판독가능 매체는 임의의 방법 또는 기술을 사용함으로써 정보를 저장할 수 있는 지속성, 비지속성, 가동(movable), 및 비가동 매체들을 포함한다. 정보는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 다른 데이터일 수 있다. 컴퓨터 저장 매체의 예시들은, 파라미터 랜덤 액세스 메모리(parameter random access memory; PRAM), 정적 랜덤 액세스 메모리(static random access memory; SRAM), 동적 랜덤 액세스 메모리(dynamic random access memory; DRAM), 다른 유형의 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 전기적으로 소거가능한 프로그래밍가능 판독 전용 메모리(electrically erasable programmable read-only memory; EEPROM), 플래시 메모리 또는 다른 메모리 기술, 컴팩트 디스크 판독 전용 메모리(compact disc read-only memory; CD-ROM), 디지털 다기능 디스크(digital versatile disc; DVD) 또는 다른 광학 저장소, 카세트 자기 테이프, 자기 테이프/자기 디스크 저장소, 다른 자기 저장 디바이스, 또는 임의의 다른 비전송 매체를 포함하지만, 이에 제한되는 것은 아니다. 컴퓨터 저장 매체는 컴퓨팅 디바이스에 의해 액세스가능한 정보를 저장하는데 사용될 수 있다. 본 명세서 내의 정의에 기반하면, 컴퓨터 판독가능 매체는 변조된 데이터 신호 또는 캐리어와 같은 일시적 컴퓨터 판독가능 매체들(일시적 매체)을 포함하지 않는다.
용어들 “포함한다”, “구비한다”, 또는 이들의 임의의 다른 변형들이 비배타적 포함을 커버하도록 의도되어, 엘리먼트들의 리스트를 포함하는 프로세스, 방법, 제품 또는 디바이스가 이 엘리먼트들을 포함할 뿐만 아니라 명확히 리스트되지 않은 다른 엘리먼트들을 포함할 수 있거나, 또는 그러한 프로세스, 방법, 제품 또는 디바이스에 내재되는 엘리먼트들을 포함할 수 있다는 것을 또한 유념할 가치가 있다. 더 이상의 제한 없이, “포함한다” 앞에 오는 엘리먼트는 엘리먼트를 포함하는 프로세스, 방법, 제품 또는 디바이스 내의 추가적 동일 엘리먼트들의 존재를 배제하는 것은 아니다.
당업자는 본 출원의 구현예가 방법, 시스템, 또는 컴퓨터 프로그램 제품으로서 제공될 수 있다는 점을 이해해야 한다. 따라서, 본 출원은 하드웨어만 있는 구현예들, 소프트웨어만 있는 구현예들, 또는 소프트웨어 및 하드웨어의 조합이 있는 구현예들의 형태를 사용할 수 있다. 또한, 본 출원은 컴퓨터 사용가능 프로그램 코드를 포함하는 하나 이상의 컴퓨터 사용가능 스토리지 매체(자기 디스크 메모리, CD-ROM, 광학 메모리 등을 포함하지만 이들에 제한되는 것은 아님) 상에서 구현되는 컴퓨터 프로그램 제품의 형태를 사용할 수 있다.
본 출원은 컴퓨터, 예를 들어 프로그램 모듈에 의해 실행되는 컴퓨터 실행가능 명령어들의 일반적인 컨텍스트로 설명될 수 있다. 일반적으로, 프로그램 모듈은 특정 태스크(task)를 실행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등을 포함한다. 본 출원은 또한 분산 컴퓨팅 환경들에서 실시될 수 있다. 분산 컴퓨팅 환경들에서, 태스크들은 통신 네트워크를 통해 연결된 원격 프로세싱 디바이스들에 의해 수행된다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 저장 디바이스들을 포함하는 로컬 및 원격 컴퓨터 저장 매체 둘 다 내에 위치될 수 있다.
본 명세서 내의 구현예들이 진보적인 방식으로 설명된다. 구현예들의 동일하거나 유사한 부분들에 대해, 구현예들에 대한 참조들이 이루어질 수 있다. 각각의 구현예는 다른 구현예들과의 차이점에 초점을 둔다. 특히, 시스템 구현예는 기본적으로 방법 구현예와 유사하고, 따라서 간략히 설명된다. 관련된 부분들에 대해, 방법 구현예에서 관련된 설명들에 대한 참조들이 이루어질 수 있다.
이전의 구현예들은 본 출원의 구현예들이며, 본 출원을 제한하도록 의도되는 것은 아니다. 당업자는 본 출원에 다양한 변형들 및 변경들을 행할 수 있다. 본 출원의 사상 및 원리로부터 벗어나지 않고 이루어진 임의의 변형물, 균등한 대체물, 또는 향상물은 본 출원 내의 청구항들의 범위 내에 있을 것이다.

Claims (12)

  1. 합의 검증(consensus verification)을 위한 방법에 있어서,
    규제 노드(regulatory node)에 의해, 트랜잭션 요청(transaction request) - 상기 트랜잭션 요청은 트랜잭션 데이터 및 적어도 하나의 트랜잭션 노드의 서명을 포함하고, 상기 트랜잭션 데이터는 특정된 데이터 및 비특정된 데이터를 포함하고, 상기 특정된 데이터는 프라이버시 데이터를 포함함 - 을 수신하는 단계;
    상기 서명에 기반하여 상기 트랜잭션 데이터 내의 상기 적어도 하나의 트랜잭션 노드의 서명에 대응하는 자산 번호(asset number)를 결정하는 단계;
    상기 자산 번호를 상기 적어도 하나의 트랜잭션 노드에 의해 사용된 선언된(declared) 자산 번호로 결정하는 단계;
    상기 트랜잭션 데이터, 상기 서명, 및 상기 자산 번호에 기반하여 상기 트랜잭션 요청이 유효한지의 여부를 결정하는 단계 - 상기 트랜잭션 데이터, 상기 서명, 및 상기 자산 번호에 기반하여 상기 트랜잭션 요청이 유효한지의 여부를 결정하는 단계는, 상기 적어도 하나의 트랜잭션 노드에 의해 사용된 상기 선언된 자산 번호를 상기 적어도 하나의 트랜잭션 노드가 실제 소유하는지의 여부를 결정하는 것에 기반하여 상기 트랜잭션 요청이 유효한지의 여부를 결정하는 단계를 포함함 - ;
    상기 트랜잭션 요청이 유효하다고 결정한 것에 응답하여, 상기 트랜잭션 데이터 내에 포함된 상기 특정된 데이터에 기반하여 상기 특정된 데이터의 다이제스트를 생성하는 단계; 및
    상기 비특정된 데이터에 기반하여 상기 트랜잭션 데이터의 합의 검증이 수행되도록, 상기 특정된 데이터의 다이제스트 및 상기 비특정된 데이터를 상기 각각의 합의 노드에 송신하고, 상기 트랜잭션 데이터 내의 상기 특정된 데이터는 상기 각각의 합의 노드에 송신하지 않는 단계를 포함하는, 합의 검증을 위한 방법.
  2. 제 1 항에 있어서,
    상기 트랜잭션 요청이 유효하지 않다고 결정한 것에 응답하여 상기 트랜잭션 요청을 거부하는(rejecting) 단계를 더 포함하는, 방법.
  3. 제 1 항에 있어서, 상기 트랜잭션 요청이 유효한지의 여부를 결정하는 단계 전에,
    상기 적어도 하나의 트랜잭션 노드의 디지털 인증서(digital certificate)를 획득하는 단계를 더 포함하는, 방법.
  4. 제 3 항에 있어서, 상기 트랜잭션 요청이 유효한지의 여부를 결정하는 단계는,
    상기 트랜잭션 데이터, 상기 적어도 하나의 트랜잭션 노드의 서명, 및 상기 적어도 하나의 트랜잭션 노드의 디지털 인증서에 기반하여 상기 트랜잭션 요청이 유효한지의 여부를 결정하는 단계를 포함하는 것인, 방법.
  5. 제 3 항에 있어서, 상기 트랜잭션 요청이 유효한지의 여부를 결정하는 단계는,
    상기 적어도 하나의 트랜잭션 노드의 디지털 인증서 내에 포함된 공개 키(public key)에 기반하여 상기 적어도 하나의 트랜잭션 노드의 서명을 해독하는(decrypting) 단계;
    상기 적어도 하나의 트랜잭션 노드에 대응하는 해독 결과가 상기 트랜잭션 데이터의 다이제스트에 대응하는지의 여부를 결정하는 단계;
    상기 적어도 하나의 트랜잭션 노드에 대응하는 해독 결과가 상기 트랜잭션 데이터의 다이제스트에 대응한다고 결정한 것에 응답하여, 상기 적어도 하나의 트랜잭션 노드의 디지털 인증서 내에 포함된 아이덴티티(identity)에 기반하여, 상기 아이덴티티에 대응하는 하나 이상의 자산 번호를 결정하는 단계; 및
    상기 하나 이상의 자산 번호를 상기 트랜잭션 노드가 실제 소유한 하나 이상의 자산 번호로서 결정하는 단계를 포함하는 것인, 방법.
  6. 제 5 항에 있어서,
    상기 적어도 하나의 트랜잭션 노드가 소유한 하나 이상의 자산 번호, 상기 적어도 하나의 트랜잭션 노드의 서명, 및 상기 트랜잭션 데이터에 기반하여 상기 트랜잭션 요청이 유효한지의 여부를 결정하는 단계; 또는
    상기 적어도 하나의 트랜잭션 노드에 대응하는 해독 결과가 상기 트랜잭션 데이터의 다이제스트와 상이하다고 결정한 것에 응답하여 상기 트랜잭션 요청이 유효하지 않다고 결정하는 단계를 더 포함하는, 방법.
  7. 제 6 항에 있어서, 상기 트랜잭션 요청이 유효한지의 여부를 결정하는 단계는,
    상기 트랜잭션 노드가 소유한 하나 이상의 자산 번호가 상기 트랜잭션 노드에 의해 사용된 상기 선언된 자산 번호를 포함하지 않는다고 결정한 것에 응답하여 상기 트랜잭션 노드가 유효하지 않다고 결정하는 단계; 또는
    상기 트랜잭션 노드가 소유한 하나 이상의 자산 번호가 상기 트랜잭션 노드에 의해 사용된 모든 선언된 자산 번호들을 포함한다고 결정한 것에 응답하여 상기 트랜잭션 노드가 유효하다고 결정하는 단계를 포함하는 것인, 방법.
  8. 제 1 항에 있어서, 상기 트랜잭션 요청이 유효한지의 여부를 결정하는 단계는,
    상기 적어도 하나의 트랜잭션 노드가 유효하지 않다고 결정한 것에 응답하여 상기 트랜잭션 요청이 유효하지 않다고 결정하는 단계; 또는
    트랜잭션 요청에서 식별된 모든 트랜잭션 노드들이 유효하다고 결정한 것에 응답하여 상기 트랜잭션 요청이 유효하다고 결정하는 단계를 포함하는 것인, 방법.
  9. 제 1 항에 있어서,
    상기 트랜잭션 요청이 유효하다고 결정한 것에 응답하여 상기 적어도 하나의 트랜잭션 노드에게 상기 트랜잭션 데이터 또는 상기 트랜잭션 데이터 내에 포함된 특정된 데이터를 저장할 것을 지시하는 단계를 더 포함하는, 방법.
  10. 제 1 항에 있어서, 상기 규제 노드는 아이템들을 검증함으로써 트랜잭션들을 규제하도록 구성된 블록체인 네트워크의 노드이며, 상기 규제 노드에 의해 검증된 아이템들은 상기 블록체인 네트워크의 복수의 블록체인 노드들에 의해 인식(acknowledge)되는 것인, 방법.
  11. 제 10 항에 있어서, 상기 블록체인 네트워크는 컨소시엄 블록체인 네트워크를 포함하는 것인, 방법.
  12. 합의 검증을 위한 디바이스에 있어서, 상기 디바이스는 제 1 항 내지 제 11 항 중 어느 한 항의 방법을 수행하도록 구성되는 것인, 디바이스.
KR1020197018706A 2017-04-28 2018-04-26 합의 검증 방법 및 디바이스 KR102281558B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020217019308A KR102541219B1 (ko) 2017-04-28 2018-04-26 합의 검증 방법 및 디바이스

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710292517.6A CN107392040B (zh) 2017-04-28 2017-04-28 一种共识验证的方法及装置
CN201710292517.6 2017-04-28
PCT/CN2018/084624 WO2018196813A1 (zh) 2017-04-28 2018-04-26 一种共识验证的方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020217019308A Division KR102541219B1 (ko) 2017-04-28 2018-04-26 합의 검증 방법 및 디바이스

Publications (2)

Publication Number Publication Date
KR20190090832A KR20190090832A (ko) 2019-08-02
KR102281558B1 true KR102281558B1 (ko) 2021-07-27

Family

ID=60338454

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020217019308A KR102541219B1 (ko) 2017-04-28 2018-04-26 합의 검증 방법 및 디바이스
KR1020197018706A KR102281558B1 (ko) 2017-04-28 2018-04-26 합의 검증 방법 및 디바이스

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020217019308A KR102541219B1 (ko) 2017-04-28 2018-04-26 합의 검증 방법 및 디바이스

Country Status (14)

Country Link
US (1) US20190354977A1 (ko)
EP (1) EP3547199B1 (ko)
JP (1) JP6789397B2 (ko)
KR (2) KR102541219B1 (ko)
CN (1) CN107392040B (ko)
AU (1) AU2018257226B2 (ko)
BR (1) BR112019013367B1 (ko)
CA (1) CA3048743A1 (ko)
MX (1) MX2019007807A (ko)
PH (1) PH12019501503A1 (ko)
RU (1) RU2728524C1 (ko)
TW (1) TWI698820B (ko)
WO (1) WO2018196813A1 (ko)
ZA (1) ZA201904221B (ko)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107392040B (zh) * 2017-04-28 2019-08-09 阿里巴巴集团控股有限公司 一种共识验证的方法及装置
CN107395665B (zh) * 2017-05-22 2020-04-24 创新先进技术有限公司 一种区块链业务受理及业务共识方法及装置
CN107592293A (zh) * 2017-07-26 2018-01-16 阿里巴巴集团控股有限公司 区块链节点间通讯方法、数字证书管理方法、装置和电子设备
WO2019142884A1 (ja) * 2018-01-19 2019-07-25 日本電信電話株式会社 ブロック検証装置、ブロック検証方法、及びプログラム
CN110070428B (zh) * 2018-01-19 2021-11-02 创新先进技术有限公司 监管检查方法及装置和电子设备
CN110084068B (zh) * 2018-01-26 2023-09-29 阿里巴巴集团控股有限公司 区块链***及用于区块链***的数据处理方法
CN108389129B (zh) * 2018-02-27 2020-12-04 创新先进技术有限公司 基于区块链的交易执行方法及装置、电子设备
GB201806448D0 (en) * 2018-04-20 2018-06-06 Nchain Holdings Ltd Computer-implemented methods and systems
CN108648081B (zh) * 2018-05-07 2020-08-18 北京柏链基石科技有限公司 一种基于区块链的交易处理方法、装置和电子设备
CN108711052B (zh) * 2018-05-18 2021-04-30 电子科技大学 一种基于区块链的信息验证***
CN109067539B (zh) * 2018-06-13 2021-09-28 深圳前海微众银行股份有限公司 联盟链交易方法、设备及计算机可读存储介质
CN109011584A (zh) * 2018-06-22 2018-12-18 深圳市摩掌信息技术有限公司 一种基于游戏的虚拟资产的交易方法、装置及终端设备
CN109087098A (zh) * 2018-07-27 2018-12-25 杭州复杂美科技有限公司 一种许可链的交易处理方法、***、设备和存储介质
CN109242483A (zh) 2018-08-07 2019-01-18 阿里巴巴集团控股有限公司 一种基于中心化与去中心化的双重交易方法及***
CN109040271B (zh) * 2018-08-15 2020-12-29 深圳市引方科技有限公司 一种分布式环境下的网络设备完整性保护方法
CN109213806B (zh) * 2018-09-12 2023-09-05 国际商业机器(中国)投资有限公司 基于区块链的企业排污数据处理方法及***
CN109391480A (zh) * 2018-10-19 2019-02-26 微梦创科网络科技(中国)有限公司 一种数据存储方法、装置及电子设备
US11847249B2 (en) 2018-10-25 2023-12-19 Sony Corporation Privacy-preserving mobility as a service supported by blockchain
CN112492006B (zh) * 2018-10-31 2023-12-05 创新先进技术有限公司 一种基于区块链的节点管理方法和装置
CN109584066B (zh) * 2018-10-31 2020-09-01 阿里巴巴集团控股有限公司 基于区块链的隐私交易及其应用方法和装置
BR112019008174A2 (pt) * 2018-11-07 2019-09-10 Alibaba Group Holding Ltd método implementado por computador, meio de armazenamento legível por computador, não transitório e sistema
WO2019072270A2 (en) * 2018-11-07 2019-04-18 Alibaba Group Holding Limited MANAGING PRIVATE TRANSACTIONS ON BLOCK CHAIN NETWORKS BASED ON A WORKFLOW
CN109598149B (zh) * 2018-11-20 2020-04-07 阿里巴巴集团控股有限公司 业务处理的方法和装置
CN110020854B (zh) * 2018-11-27 2020-11-17 创新先进技术有限公司 一种基于多个区块链网络的数据存证方法及***
CN110060151B (zh) 2018-11-27 2020-07-17 阿里巴巴集团控股有限公司 一种业务执行方法及装置
CN113793151A (zh) * 2018-11-28 2021-12-14 创新先进技术有限公司 基于区块链的数据存证方法及装置、电子设备
CA3041211C (en) * 2018-11-30 2020-05-05 Alibaba Group Holding Limited Utilizing nonce table to resolve concurrent blockchain transaction failure
CN111327564B (zh) * 2018-12-13 2022-03-08 航天信息股份有限公司 一种联盟链的准入方法及装置
CN109886712A (zh) * 2019-02-25 2019-06-14 众安信息技术服务有限公司 基于区块链的数据处理方法与装置
CN111614708B (zh) * 2019-02-26 2021-06-08 傲为信息技术(江苏)有限公司 一种基于区块链的交易***
SG11201908651SA (en) * 2019-03-01 2019-10-30 Alibaba Group Holding Ltd Methods and devices for protecting sensitive data of transaction activity based on smart contract in blockchain
SG11201908552RA (en) * 2019-03-04 2019-10-30 Alibaba Group Holding Ltd Methods and devices for testing signature verification for blockchain system
CN112348514A (zh) * 2019-03-19 2021-02-09 创新先进技术有限公司 基于区块链的数据核对***、方法、计算设备及存储介质
CN110009353A (zh) * 2019-04-01 2019-07-12 北京柏链基石科技有限公司 一种基于区块链的账号注册方法、装置及电子设备
CN110222529A (zh) * 2019-05-21 2019-09-10 平安普惠企业管理有限公司 基于联盟链的资产管理方法、电子设备及计算机存储介质
CN111767337B (zh) * 2019-05-24 2024-04-05 北京沃东天骏信息技术有限公司 区块的验证方法、装置及设备
TW202143136A (zh) * 2019-08-09 2021-11-16 英商路昂有限公司 使用者媒體平台伺服器系統
EP4055774A1 (en) * 2019-12-05 2022-09-14 Huawei Technologies Co., Ltd. System and method of establishing a trusted relationship in a distributed system
CN111325585A (zh) * 2020-01-17 2020-06-23 腾讯科技(深圳)有限公司 一种资产转移方法、装置及计算机可读存储介质
CN111444211B (zh) * 2020-03-26 2021-07-13 腾讯科技(深圳)有限公司 区块链共识节点校验方法、装置、设备以及存储介质
CN111415161B (zh) * 2020-04-27 2024-03-19 财付通支付科技有限公司 基于区块链的数据验证方法、装置及计算机可读存储介质
CN111667268B (zh) * 2020-05-29 2024-01-23 中国工商银行股份有限公司 基于区块链的交易方法、节点及***
CN111724153B (zh) * 2020-06-08 2023-02-03 交通银行股份有限公司 一种基于区块链的预付式消费监管***、方法及存储介质
EP3957025B1 (en) * 2020-07-03 2022-12-28 Alipay (Hangzhou) Information Technology Co., Ltd. System and method for providing privacy and security protection in blockchain-based private transactions
CN112235379B (zh) * 2020-09-30 2021-09-24 电子科技大学 一种区块链底层共享存储方法
CN112600672B (zh) * 2020-11-30 2022-02-25 清华大学 基于真实身份的域间可信度共识方法和装置
CN112650735B (zh) * 2020-12-28 2022-05-24 杭州趣链科技有限公司 联盟链的丢失区块确定方法、装置、设备及存储介质
CN112865959B (zh) * 2020-12-30 2022-05-31 杭州趣链科技有限公司 分布式节点设备的共识方法、节点设备及分布式网络
CN112884579A (zh) * 2021-02-08 2021-06-01 京东数科海益信息科技有限公司 区块链交易共识方法和装置
CN113114634A (zh) * 2021-03-24 2021-07-13 武汉卓尔信息科技有限公司 一种基于联盟链的可信数据管理方法及联盟链
CN113240418B (zh) * 2021-04-23 2024-01-12 上海和数软件有限公司 基于区块链的隐私数据智能访问控制方法和设备
CN113761071B (zh) * 2021-10-09 2023-07-11 支付宝(杭州)信息技术有限公司 一种共识方法、区块链***和共识节点
CN113821474A (zh) * 2021-11-22 2021-12-21 武汉龙津科技有限公司 一种数据处理方法、装置、设备和存储介质
CN114338053B (zh) * 2022-03-16 2022-05-13 成都信息工程大学 一种动态的基于信誉的区块链共识方法和***

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016202952A1 (en) * 2015-06-16 2016-12-22 The Provost, Fellows, Foundation Scholars, & The Other Members Of Board, Of The College Of The Holy & Undiv. Trinity Of Queen Elizabeth, Near Dublin Digital token exchange system
CN106503098A (zh) * 2016-10-14 2017-03-15 中金云金融(北京)大数据科技股份有限公司 内置于Paas服务层的区块链云服务框架***

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3622789B2 (ja) * 2002-06-11 2005-02-23 株式会社帝国データバンク 汎用的組織内個人認証システム
GB0229894D0 (en) * 2002-12-21 2003-01-29 Ibm Methods, apparatus and computer programs for generating and/or using conditional electronic signatures and/or for reporting status changes
US20180253727A1 (en) * 2016-07-02 2018-09-06 Royal Bank Of Canada Secure funding of electronic payments
GB2509055B (en) * 2012-12-11 2016-03-23 Gurulogic Microsystems Oy Encoder and method
JP6304076B2 (ja) * 2015-03-05 2018-04-04 ブラザー工業株式会社 情報処理装置、コンテンツ配信システム、情報処理方法、及びプログラム
SG11201708295XA (en) * 2015-04-06 2017-11-29 Bitmark Inc System and method for decentralized title recordation and authentication
US20160342977A1 (en) * 2015-05-20 2016-11-24 Vennd.io Pty Ltd Device, method and system for virtual asset transactions
AU2016288644A1 (en) * 2015-07-02 2018-02-22 Nasdaq, Inc. Systems and methods of secure provenance for distributed transaction databases
US20170085555A1 (en) * 2015-07-14 2017-03-23 Fmr Llc Point-to-Point Transaction Guidance Apparatuses, Methods and Systems
AU2015403302A1 (en) * 2015-07-28 2018-02-22 Razer (Asia-Pacific) Pte. Ltd. Servers for a reward-generating distributed digital resource farm and methods for controlling a server for a reward-generating distributed digital resource farm
AU2016100059A4 (en) * 2016-01-24 2016-03-03 The Trustee For The Mckeon Family Trust integratedCONTRACT is a process of embedding dynamic data characteristics into financial and other instruments using Blockchain technology and a unique method for transacting on online peer to peer and marketplace exchanges.
US9849364B2 (en) * 2016-02-02 2017-12-26 Bao Tran Smart device
WO2017173271A1 (en) * 2016-04-01 2017-10-05 Jpmorgan Chase Bank, N.A. Systems and methods for providing data privacy in a private distributed ledger
US10204341B2 (en) * 2016-05-24 2019-02-12 Mastercard International Incorporated Method and system for an efficient consensus mechanism for permissioned blockchains using bloom filters and audit guarantees
CN105976232B (zh) * 2016-06-24 2020-04-28 深圳前海微众银行股份有限公司 资产交易方法和装置
WO2018004527A1 (en) * 2016-06-28 2018-01-04 Intel Corporation Cell for n-negative differential resistance (ndr) latch
CN106385315B (zh) * 2016-08-30 2019-05-17 北京三未信安科技发展有限公司 一种数字证书管理方法及***
CN106375317A (zh) * 2016-08-31 2017-02-01 北京明朝万达科技股份有限公司 一种基于区块链的大数据安全认证方法和***
CN106411901B (zh) * 2016-10-08 2018-01-23 北京三未信安科技发展有限公司 一种数字身份标识管理方法及***
US10484346B2 (en) * 2017-02-07 2019-11-19 Microsoft Technology Licensing, Llc Establishment of consortium blockchain network
CN107392040B (zh) * 2017-04-28 2019-08-09 阿里巴巴集团控股有限公司 一种共识验证的方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016202952A1 (en) * 2015-06-16 2016-12-22 The Provost, Fellows, Foundation Scholars, & The Other Members Of Board, Of The College Of The Holy & Undiv. Trinity Of Queen Elizabeth, Near Dublin Digital token exchange system
CN106503098A (zh) * 2016-10-14 2017-03-15 中金云金融(北京)大数据科技股份有限公司 内置于Paas服务层的区块链云服务框架***

Also Published As

Publication number Publication date
EP3547199B1 (en) 2021-09-22
TWI698820B (zh) 2020-07-11
BR112019013367A2 (pt) 2019-12-31
KR20210081444A (ko) 2021-07-01
KR102541219B1 (ko) 2023-06-08
WO2018196813A1 (zh) 2018-11-01
JP2020508593A (ja) 2020-03-19
CN107392040A (zh) 2017-11-24
TW201839682A (zh) 2018-11-01
KR20190090832A (ko) 2019-08-02
AU2018257226A1 (en) 2019-07-11
BR112019013367B1 (pt) 2022-03-03
RU2728524C1 (ru) 2020-07-30
CA3048743A1 (en) 2018-11-01
US20190354977A1 (en) 2019-11-21
MX2019007807A (es) 2019-09-06
AU2018257226B2 (en) 2021-06-24
EP3547199A1 (en) 2019-10-02
EP3547199A4 (en) 2020-01-01
ZA201904221B (en) 2022-06-29
CN107392040B (zh) 2019-08-09
JP6789397B2 (ja) 2020-11-25
PH12019501503A1 (en) 2020-06-08

Similar Documents

Publication Publication Date Title
KR102281558B1 (ko) 합의 검증 방법 및 디바이스
US11438165B2 (en) Method and apparatus for processing transaction requests
WO2021068636A1 (zh) 基于区块链的可验证声明的创建方法、装置、设备及***
KR102068349B1 (ko) 블록체인 시스템과 데이터 저장 방법 및 장치
WO2021239104A1 (zh) 基于区块链的业务处理
US11288371B2 (en) Blockchain-based data processing method, apparatus, and device
WO2018233536A1 (zh) 一种认证方法、基于区块链的认证数据处理方法及设备
US11265174B2 (en) Method, apparatus, and device for processing blockchain data
EP3945696B1 (en) Blockchain data processing method, apparatus, and device

Legal Events

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