KR20180112061A - 블록체인 집행의 스마트 계약을 위한 레지스트리 및 자동화 관리 방법 - Google Patents

블록체인 집행의 스마트 계약을 위한 레지스트리 및 자동화 관리 방법 Download PDF

Info

Publication number
KR20180112061A
KR20180112061A KR1020187027478A KR20187027478A KR20180112061A KR 20180112061 A KR20180112061 A KR 20180112061A KR 1020187027478 A KR1020187027478 A KR 1020187027478A KR 20187027478 A KR20187027478 A KR 20187027478A KR 20180112061 A KR20180112061 A KR 20180112061A
Authority
KR
South Korea
Prior art keywords
contract
transaction
block chain
node
utxo
Prior art date
Application number
KR1020187027478A
Other languages
English (en)
Other versions
KR101987692B1 (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
Priority claimed from GBGB1603125.4A external-priority patent/GB201603125D0/en
Priority claimed from GBGB1603117.1A external-priority patent/GB201603117D0/en
Priority claimed from GBGB1603114.8A external-priority patent/GB201603114D0/en
Priority claimed from GBGB1603123.9A external-priority patent/GB201603123D0/en
Application filed by 엔체인 홀딩스 리미티드 filed Critical 엔체인 홀딩스 리미티드
Publication of KR20180112061A publication Critical patent/KR20180112061A/ko
Application granted granted Critical
Publication of KR101987692B1 publication Critical patent/KR101987692B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • G06Q20/0655Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed centrally
    • 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/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3678Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes e-cash details, e.g. blinded, divisible or detecting double spending
    • 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/3827Use of message hashing
    • 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/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • 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
    • G06Q30/00Commerce
    • G06Q30/018Certifying business or products
    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • 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/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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • 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/321Cryptographic 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 a third party or a trusted authority
    • 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
    • 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/3242Cryptographic 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 keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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
    • 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
    • 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
    • G06Q2220/10Usage protection of distributed data files
    • G06Q2220/12Usage or charge determination
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Power Engineering (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
  • Electrotherapy Devices (AREA)
  • Lock And Its Accessories (AREA)

Abstract

블록체인 집행의 스마트 계약을 위한 레지스트리 및 자동화 관리 방법.
본 발명은 토큰화, 블록체인 및 스마트 계약 기술 분야에 관련된다. 계약의 자동화 관리를 단순화 하는 기술 구성을 제공한다. 본 발명은 계약의 저장을 위해 컴퓨터 기반 저장소를 이용하는 시스템 및 방법을 포함한다. 계약은 블록체인 상에 거래에 의해 표현된다. 거래 스크립트 내 메타데이터는 계약의 해시 및 저장소 내 그 위치를 식별하는 수단을 포함한다. 거래는 또한 열린(즉 종결되지 않은) 계약으로서 그 상태를 나타내는 미사용 출력(UTXO)을 포함한다. 계약은 예를 들어, nLockTime + CheckLockTimeVerify (CLTV)를 이용하여, 나중에 출력을 소비함으로써 종결된다. 다른 기술과 컴퓨팅 요소를 가지는 이 컨셉을 결합함으로써, 본 발명은 계약 만기 연장 및 갱신과 같은 다양한 작업을 수행하거나 이를 서브 계약이나 조건으로 분할하기 위한 강력한 메커니즘을 제공할 수 있다. 더욱이, 계약의 상태 및 존재가 블록체인을 통해 증명되므로, 계약의 영구적, 공개 가시적 및 변경할 수 없는 기록을 제공한다.

Description

블록체인 집행의 스마트 계약을 위한 레지스트리 및 자동화 관리 방법
본 발명은 일반적인 컴퓨터 프로토콜에 관한 것으로, 더 구체적으로, 예를 들어, 계약과 관련한 것들과 같은 조건 제어 프로세스의 집행, 강화 및/또는 수행에 관한 것이다. 본 발명은 블록체인 네트워크를 이용하기에 특히 적합하며, 스마트 계약에 유리하게 이용될 수 있다.
블록체인은 결과적으로 거래로 이루어지는 변경이 불가능한 블록으로 형성된 분산, 분배 컴퓨터 시스템이다. 각 블록은 이전 블록의 해시를 포함하고, 따라서 블록은 그 시작부터 블록체인에 기록된 모든 거래의 기록을 생성하기 위해 서로 연결된다. 거래는 입력 및 출력에 포함된 스크립트로 알려진 작은 프로그램을 포함하며, 이는 어떻게 또는 누구에 의해 거래의 출력이 접근될 수 있는지를 특정한다. 각 미사용 거래(UTXO로 지칭되는)는 새로운 거래에 입력으로서 소비될 수 있다.
다른 블록체인 구현이 제안되고 개발되었지만, 가장 널리 알려진 블록체인 기술의 애플리케이션은 비트코인 원장이다. 비트코인은 편의와 설명의 목적으로 여기서 언급되지만, 본 발명은 비트코인 블록체인을 이용하는 것에 제한되지 않으며 다른 블록체인 구현은 본 발명의 범위 내에 있다는 점에 유의해야 한다.
블록체인 기술은 암호화폐 구현의 용도로 알려져 있다. 그러나, 더 최근에는, 디지털 기업이 새로운 시스템을 구현하기 위해 비트코인이 기반하는 암호화 보안 시스템의 용도 및 블록체인 상에 저장될 수 있는 데이터를 탐구하기 시작했다. 이는 다음을 포함하지만 이에 제한되지 않는다.
Figure pct00001
메타데이터 저장하기
Figure pct00002
디지털 토큰 구현하기
Figure pct00003
계약 이행 및 관리하기
현대 계약 관리의 주요 문제점 중 하나는 수동으로 유지 관리되는 계약 사본 및 지역 상점을 통한 임시방편인 경향이 있다는 것이다. 그 결과, "스마트 계약"으로 알려진 컴퓨터 프로토콜은 부분적으로 또는 전체적으로 계약의 자동 집행 또는 수행을 가능하게 할 수 있어 주목을 끌기 시작했다. 스마트 계약은 보안 강화 및 거래 비용 감소와 같은 이점을 제공할 수 있다. 그러나, 이러한 계약이 일단 저장되면 수정할 수 없도록 하는 것을 목표로 하는 알려진 기술 솔루션이 있지만, 일반적으로 계약의 정당성(예를 들어, 계약이 여전히 유효한지 종결되었는지)을 확인하기 위해 공개 레지스트리를 채택하지 않는다.
따라서, 계약의 존재에 대한 대중적 가시성을 제어할 수 있고, 자동화된 방식(즉, 인간 관리보다는 기계에 의한)의 계약과 같은 이행 기반 프로세스를 관리, 집행 및 유지하기 위한 관련 당사자들의 능력을 촉진할 수 있는 컴퓨터 구현 메커니즘을 제공하는 것이 바람직하다. 중요한 것은, 이러한 메커니즘은 계약에서 정의된 행동에 대한 트리거(trigger) 및 제어 조건을 명시하는 기술 능력을 제공할 수 있다.
여기서 정의되고 설명된 본 발명은 단어의 법적 의미에서의 계약으로 사용이 제한되지 않는다는 점을 알아야 한다. 계약은 문서, 파일 또는 명시된 조건 하에서 트리거될 수 있는 일련의 행동을 정의하는 다른 메커니즘일 수 있다. 제어 조건은 공개적으로 충족될 수 있다. 본 발명은 법적 또는 상업상의 상황 내에서의 사용으로 제한되는 것으로 간주되어서는 안되며, '계약'이라는 단어는 제한적 의미로 해석되어서는 안된다.
따라서, 본 발명은 첨부된 청구항에 정의된 바와 같이 제공된다.
본 발명의 일 측면에 따르면, 계약의 이행 및/또는 가시성을 제어하는 컴퓨터 구현 방법에 있어서, 상기 방법은
(a) 컴퓨터 기반 저장소에 계약을 저장하는 단계,
(b) 블록체인에 거래를 브로드캐스팅하는 단계,
상기 거래는,
i) 적어도 하나의 UTXO, 그리고
ii) 상기 계약이 저장된 위치를 나타내는 식별자를 포함하는 메타데이터를 포함하고,
(c) 아래에 의해 계약을 갱신 또는 연장하는 단계를 포함하는 방법:
상기 계약에 연관된 이전 키에 관한 데이터를 사용하여 새로운 키를 생성하는 것,
상기 새로운 키, 상기 계약의 위치 및 상기 계약의 해시를 포함하는 스크립트를 생성하는 것, 그리고
상기 스크립트에 통화량을 지불하는 것이다.
계약과 관련된 이전 키에 관한 데이터를 이용하여 새로운 키를 생성하고, 새로운 키, 계약의 위치 및 계약의 해시를 포함하는 스크립트를 생성하고, 스크립트에 통화량을 지불하는 것에 의해 계약을 갱신 또는 연장함으로써, 이것은 새로운 키가 이전 키와 연관되기 때문에 승인된 당사자는 갱신 또는 연장된 계약과의 연결에 의하여 원천 계약을 볼 수 있고, 이에 따라 확실성이나 프라이버시의 손실 없이 연장된 계약을 확인할 수 있다는 이점을 제공한다. 추가 이점은 갱신 또는 연장된 계약에 관한 키는 원천 계약의 키에 연관되기 때문에 확실성이나 프라이버시의 손실 없이 컴퓨터 기반 오프-체인 저장소에 계약을 저장함으로써(즉, 블록체인의 일부를 형성하지 않음) 메모리 및 프로세서 용량을 줄일 수 있다는 것이다.
만기 연장 상황에서, UTXO는 새로이 연장된 계약에 이를 보낼 수 있다. 그러나, 잠금 시간 이전에 출력을 소비하여 전체 계약을 취소함으로써 기존 계약을 취소할 수 있다.
본 발명은 계약의 수행 및/또는 가시성을 제어하기 위한 컴퓨터 구현 방법 및 시스템을 제공할 수 있다. 가시성은 어떻게 그리고 누구에 의해 계약의 내용 및/또는 존재가 이용가능하거나 접근가능한지를 의미할 수 있다. 계약은 '스마트 계약'일 수 있다. 방법은 자동화된 스마트 계약 방법일 수 있다. 계약의 수행, 검증 및/또는 존재를 모니터링하는 프로세스를 자동화하기 위한 방법일 수 있다. 계약은 블록체인 거래의 적어도 일부의 형태로 표현될 수 있으므로, 본 발명은 토큰화 방법/시스템으로 언급될 수 있다. 거래의 메타데이터는 계약을 표현 및/또는 접근하는데 이용되는 블록체인 구현 토큰을 제공할 수 있다.
본 발명은 저장소(레지스트리)에 계약의 저장을 가능하게 하는 방법/시스템을 제공할 수 있고, 여기서 계약의 해시는 계약을 찾기 위한 룩업키로서 이용될 수 있다.
방법은 컴퓨터 기반 저장소에 계약을 저장하는 단계, 블록체인에 거래를 브로드캐스팅하는 단계를 포함할 수 있고,
상기 거래는 적어도 하나의 UTXO, 그리고 상기 계약이 저장된 위치를 나타내는 식별자를 포함하는 메타데이터를 포함한다.
계약은 블록체인에서 UTXO가 소비될 때까지 열린 또는 유효한 것으로 해석될 수 있다. 블록체인은 비트코인 블록체인이거나 아닐 수 있다. UTXO에 의해 표현되는 블록체인 상의 계약 유효성 또는 상태를 표현하기 위한 새로운 메커니즘의 이점을 제공한다.
방법은 블록체인의 상태를 관찰하고 출력이 현재 미사용인지 아닌지에 기초하여 특정 방법으로 행동하기 위하여 오프-체인 컴퓨터 구현 프로세스, 에이전트 또는 다른 독립체를 이용하는 단계를 포함할 수 있다. 프로세스는 계약 상태의 지표로서 미사용 출력을 해석하도록 구성될 수 있다. 다시 말해, 블록체인 상의 UTXO 목록 내에 출력이 남아 있는 동안(즉, 거래가 아직 미사용), 메타데이터에 의해 언급되거나 지시된 계약의 '열린' 상태 또는 유효성을 나타내기 위해 사용될 수 있다. 계약은 UTXO가 소비되면 완료(종결)된 것으로 간주될 수 있다. 이 조건은 계약 내 언급될 수 있다. 그러나 UTXO가 소비되면, 메타데이터는 계약에 대한 포인터 또는 참조 및 계약의 해시를 계속 포함할 수 있고 따라서 계약은 그 기능을 유지할 수 있다.
방법은 계약의 존재를 공개하는 단계를 더 포함할 수 있다. 이는 아래의 단계에 의해 수행될 수 있다.
Figure pct00004
계약 발급자는 새로운 계약 문서를 생성할 수 있고 저장소에 이를 공개할 수 있다. 해당 문서의 보안 해시 및 저장 위치는 이후 사용을 위해 저장될 수 있다.
Figure pct00005
n개의 다중 서명 구조 중 m개에서 보안된 계약 문서를 다루는 리딤 스크립트를 생성한다. 여기서,
o m은 적어도 하나이고,
o n은 m에 메타데이터 블록의 수를 더한 것이다.
Figure pct00006
스크립트에 적어도 하나의 공개키를 포함한다. 이는 계약 발급자의 공개키일 수 있다. 그러나, 다른 서명이 필요할 수 있다.
Figure pct00007
바람직하게는 P2SH 거래를 통해, 스크립트에 통화량(예를 들어, 비트코인)을 지불한다.
Figure pct00008
거래가 블록체인에 공개될때까지 기다리고 공개 거래에 대한 거래 ID를 추출한다.
Figure pct00009
계약 만료 시간 설정된 잠금 시간을 통해 다시 공개키 해시에 거래의 출력을 지불하는 새로운 거래를 생성한다. 또는, 연장 기간 계약의 경우. 블록체인 상의 거래를 검출하고 새로운 계약으로 연장하기 위해 코드를 트리거하기 전 계약 만료 시간까지 기다리기 위해 자동화된 컴퓨팅 에이전트를 이용한다.. 또는, 완료 기반 계약(여기서 y개 독립체 중 x개는 계약이 충족되었다는 것에 동의함)의 경우, n개의 다중 서명 거래 중 m개를 생성하고 완료시 공동 서명하도록 독립체에 이를 발행한다.
저장소는 오프-블록 저장소 자원일 수 있다. 다시 말해, 저장소는 블록체인 자체의 일부를 형성하지 않을 수 있다. 컴퓨터 기반 저장소는 서버이거나 이를 포함할 수 있다. 저장소는 데이터베이스 또는 컴퓨터 기반 자원상에 제공되는 다른 저장 시설일 수 있다. 저장소는 검색되도록 하기 위해 인덱스될 수 있다. 저장소는 분산 해시 테이블을 포함할 수 있다. 계약은 분산 해시 테이블(DHT)과 연관되거나 분산 해시 테이블에 저장될 수 있다.
거래는 결정성 리딤 또는 잠금 스크립트 주소를 더 포함할 수 있다. 주소는 페이 투 스크립트 해시(P2SH) 주소일 수 있다. 따라서 계약의 존재(또는 계약 내 정의된 요소)는 계약의 발급자 및/또는 계약의 메타데이터에 의해 제공되거나 결정될 수 있는 페이 투 스크립트 해시 주소를 이용하여 블록체인에 공개된 거래를 이용하여 공개될 수 있다.
방법은 출력(UTXO)을 소비하기 위해 블록체인에 (추가) 거래를 브로드캐스팅함으로써 계약을 종결시키는 단계를 더 포함할 수 있다. 추가 거래는 출력(UTXO)인 입력, 그리고 서명, 메타데이터 및 공개키를 포함하는 해제 스크립트를 포함할 수 있다.
이는 출력을 소비하기 위한 블록체인 거래의 이용을 통해 계약의 자동 종결 이점을 제공할 수 있다.
계약은, i)적어도 하나의 조건, 그리고 ii) 조건의 평가에 따라 수행이 달라지는 적어도 하나의 실행을 정의할 수 있다. 조건은 참 또는 거짓으로 평가될 수 있는 테스트일 수 있다. 조건은 계약의 일부(예를 들어, 조항)일 수 있다. 조건의 수행 또는 완료는 계약의 실현을 위해 요구될 수 있다. 계약은 참으로 평가되면 완료될 수 있다.
메타데이터는 i) 컴퓨터 기반 저장소에 저장된 계약의 주소 표현 또는 주소, 및/또는 ii) 계약의 해시를 포함할 수 있다.
방법은 블록체인 상태를 관찰하는 단계를 포함할 수 있다. UTXO를 포함하는 거래를 찾기 위해 블록체인을 검색하는 단계를 포함할 수 있다. 미사용 거래 UTXO가 블록체인에 대한 미사용 거래 출력 목록에 있는지 결정하는 것에 의해 계약이 종결되었는지 여부를 확인하는 단계를 포함할 수 있다. 이 모니터링 또는 확인 단계는 자동화 될 수 있다. 니는 적합하게 프로그램된 컴퓨팅 에이전트 또는 자원에 의해 수행될 수 있다. “본 발명과 함께 사용하기 위한 예시적인 컴퓨팅 에이전트”라는 제목의 섹션에서 실질적으로 설명될 수 있다. 에이전트는 UTXO의 사용 또는 미사용 상태에 기초하여 실행을 수행할 수 있다. 따라서, UTXO의 상태는 오프-블록 컴퓨팅 에이전트의 동작에 영향을 미치거나 이를 제어할 수 있다.
방법은 명시된 날짜 및/또는 시간에서 상기 출력을 소비하는 명령어를 포함하는 블록체인에 거래를 브로드캐스팅하는 단계를 포함할 수 있다. 명령어는, CheckLockTimeVerify 명령어일 수 있다.
계약의 내용의 일부 또는 전부에 대한 접근은 적어도 하나의 지정된 권한 당사자로 제한될 수 있다. 다시 말해, 계약의 일부 또는 전부에 접근하거나 보기 위하여 권한이 요구될 수 있다. 몇몇 예에서, 보호 메커니즘은 계약 자체에 적용될 수 있다. 예를 들어, 파일의 하나 이상의 부분은 보호될 수 있지만 전체 내용을 공개될 수 있다. 이 부분적 보호는 계약 내 정보의 암호화 뿐만 아니라 그 내용의 변경을 감지하는 해시 모두에 적용될 수 있다.
계약은 계약을 이행하기 위한 결정성 유한 오토머턴(DFA)을 포함할 수 있다. 결정성 유한 오토머턴은 부호화 스키마를 이용하여 정의될 수 있다. 결정성 유한 오토머턴은, i) 적어도 하나의 블록체인 거래, 바람직하게는 스크립팅 언어를 이용하여, ii) 블록체인의 상태를 모니터링하도록 구성된 컴퓨팅 에이전트, 및/또는디지털 지갑에 대한 명령어 세트를 이용하여 구현될 수 있다.
본 발명의 다른 관점에 따르면, 계약의 이행 및/또는 가시성을 제어하는 컴퓨터 구현 방법에 있어서, (a) 컴퓨터 기반 저장소에 계약을 저장하는 단계, (b) 블록체인에 거래를 브로드캐스팅하는 단계, 거래는, i) 적어도 하나의 UTXO, 그리고 ii) 계약이 저장된 위치를 나타내는 식별자를 포함하는 메타데이터를 포함하고, (c) 계약으로부터 파생된 서브-계약을 생성하는 단계를 포함하고, 여기서, 서브 계약은, 결정성 주소(deterministic address)와 연관되거나, iii) 시드를 이용하여 파생된 새로운 공개키를 이용하는 것, iv) 상기 계약에 대한 참조로 상기 저장소에 서브-계약을 저장하고, 참조를 포함하는 스크립트를 포함하는 블록체인에 거래를 브로드캐스팅하는 것, 및/또는 v) 기존 계약의 메타데이터에 서브-계약에 대한 참조를 추가하는 것에 의해 생성되는 방법을 제공한다.
계약으로부터 파생된 서브 계약을 생성하고, 여기서 서브 계약은 결정성 주소와 관련되고 시드를 이용하여 파생된 새로운 공개키를 이용하여 생성되며, 계약과 관련 저장소에 서브 계약을 저장하고, 참조 및/또는 기존 계약의 메타데이터에 서브 계약에 대한 참조를 추가하는 것를 포함하는 스크립트를 포함하는 블록체인에 거래를 브로드캐스팅함으로써, 서브 계약이 원천 계약에 암호로 묶여 있기 때문에 확실성이나 프라이버시의 손실 없이 독립적으로 관리될 수 있는 이점을 제공한다. 또한, 메모리 및 프로세싱 자원은 오프-블록 저장소에 서브 계약을 저장함으로써 최소화될 수 있다.
방법은 블록체인을 모니터링 및/또는 계약 내용에 기초하여 실행을 수행하기 위한 컴퓨터 기반 에이전트의 이용을 포함할 수 있다. 에이전트는 아래의 "본 발명과 함께 이용되는 예시적인 컴퓨팅 에이전트"로 명명된 섹션에서 대체로 설명될 수 있다.
또한, 본 발명은 상기에서 언급된 모든 방법 단계 또는 여기서 설명된 방법의 모든 실시예를 수행하도록 구성된 컴퓨터 구현 시스템을 제공할 수 있다. 본 발명은 계약의 이행 및/또는 가시성을 제어하는 컴퓨터 구현 시스템을 제공하며, 시스템은 계약을 저정하도록 구성된 컴퓨터 기반 저장소, 거래를 포함하는 블록체인을 포함하고, 거래는 i) 적어도 하나의 미사용 출력(UTXO), 그리고 ii) 계약이 저장된 위치를 나타내는 식별자를 포함하는 메타데이터를 포함한다.
메타데이터는 또한 계약의 해시를 저장할 수 있다. 계약은 스마트 계약일 수 있다.
저장소는 데이터베이스를 포함할 수 있다. 이는 DHT를 포함할 수 있다. 이는 검색할 수 있도록 인덱스될 수 있다. 이는 계약에의 접근을 제어하기 위하여 적어도 하나의 보안 메커니즘을 포함할 수 있다.
시스템은 또한 적합하게 구성된 컴퓨팅 기반 독립체 또는 에이전트를 포함할 수 있다. 에이전트는 블록체인을 모니터링 및/또는 검색하도록 구성될 수 있다. 블록체인의 상태에 기초하여 적어도 하나의 실행을 수행하도록 구성될 수 있다. UTXO가 소비되었는지 아닌지를 결정하도록 구성될 수 있다. UTXO가 소비되었는지 아닌지에 기초하여 하나 이상의 실행을 수행하도록 구성될 수 있다.
하나의 실시예 또는 개념과 관련하여 여기서 설명된 어떤 특징은 또한 다른 실시예 또는 개념에 관련되어 이용될 수 있다. 예를 들어, 방법에 관련하여 설명된 어떤 특징은 또한 시스템에 관련하여 이용될 수 있고 그 반대도 가능하다.
본 발명에 의 해 제공될 수 있는 몇가지 이점의 비-한정적 목록이 제공된다.
본 발명은 여기서 계약으로 언급될 수 있는 구조 제어 조건의 자동 관리를 단순화하는 기술 구성을 제공할 수 있다. 이는 결과적으로 분쟁 발생시 계약 상태에 동의하는 것을 쉽게 만든다. 본 발명은 또한 컴퓨터에 의한 유효성의 자동 결정을 허용하는 방식으로 계약의 공개 기록을 안전하게 하고 유효성 확인시 승인된 독립체에 세부 정보를 공개하는 메커니즘을 제공할 수 있다. 따라서, 본 발명은 지능적인 방식으로 자원에 접근을 허용하거나 금지하는 보안 강화 제어 메커니즘을 제공할 수 있다.
본 발명은 계약의 세부 사항이 승인된 독립체에만 제한될 수 있어 컴퓨터 시스템을 통해 청중에게 계약을 공개할 수 있는 능력을 제공하며, 계약의 존재에 대한 지식은 공개적으로 알려진다. 다시 말해, A와 B 사이의 계약이 있다는 것은 공개적으로 알려질 수 있고, 공개적으로 검증될 수 있다. 그러나, 그것의 존재 이외에 다른 것은 승인된 당사자들에 제한된다(일반적으로 A 및 B일 수 있다).
또한, 계약이 시간부(즉, 주어진 날짜 또는 특적 시간 후에 만료됨), 조건부(즉, 계약 내 특정된 상품이 충족되면 만료됨), 또는 제한 없음(즉, 종결시키는 통지 기간을 통해 계속 연장됨)이 되도록 하는 컴퓨터 구현 메커니즘을 제공한다.
공개적인 방식으로 해당 계약을 종결시키는 통지를 제공할 수 있는 메커니즘을 제공할 수 있다. 예를 들어, 만기를 제정하기 위해 소비 거래에 nLockTime + CheckLockTimeVerify(CLTV)를 이용하는 것.
분할되는 계약의 다른 측면을 제어하기 위하여, 결정성 방식에서 서브 계약의 계층 구조를 구조화하는 메커니즘을 제공할 수 있다. 예를 들어, 기술 개발 프로세스에서, 요구 사항 단계는 개발 단계와는 다른 제어 트리거 세트를 가질 수 있다.
본 발명은 블록체인 플랫폼 상에서 구현될 수 있고, 기술적으로 상이한 방법에서 이용될 수 있어 블록체인의 기능을 확장할 수 있으므로, 본 발명은 개선된 블록체인 시스템 또는 플랫폼을 제공할 수 있다.
본 발명은 어떤 미사용 거래(UTXO)를 디지털 접근과 같은 스마트 계약으로 전환하는데 이용될 수 있다. 예를 들어, 소비자가 일정 시간 동안 거래에 접근하기 위해 판매자에게 비용을 지불하는 시나리오를 고려한다. 만약 판매자의 지불 주소가 스마트 계약으로 구현되면, 본 발명은 서비스에 대한 접근 제어 메커니즘을 구현하는데 이용될 수 있다. 돈이 지불되었는지를 확인하기 위해 점검이 될 수 있고, 기간 만료시 판매자의 계좌에 가치를 스윕(sweep)하는데 이용되는 자동화 프로세스를 수행할 수 있다.
본 발명의 이들 및 다른 양태는 본원에 기재된 실시예를 참조하여 명백하게 설명될 것이다. 본 발명의 실시 예는 첨부된 도면을 참조하여 예로서 만 설명될 것이다.
도 1은 다양한 계약 관련 작업을 수행하기 위해 본 발명의 실시예에 의해 어떻게 블록체인 거래가 사용될 수 있는지에 대한 개요를 보여준다.
도 2a는 두 개의 상태를 가지는 간단한 상태 머신을 보여준다 : (i) 계약이 개시된다 (ii) 계약이 종료된다
도 2b는 도 2a의 시나리오에 대한 메타데이터 정의를 보여준다. 메타데이터는 (비트코인) 거래 출력에 전달되며 (해시를 통해) 계약 위치 및 유효성 증명을 특정한다.
도 2c는 도2a 및 도 2b의 시나리오에 관한 '발행' 거래를 보여주며 처음에는 블록체인 상의 계약(의 해시)을 저장한다.
도 2d는 비트코인을 소비함으로써 도 2a 및 도 2c의 계약을 취소한다.
도 3a는 시나리오에 대한 예시적인 메타데이터를 보여주며, 여기서 숨겨진 소유권을 가진 자산이 블록체인에 생성되고 게시된다.
도 3b는 도 3a의 자산을 '운용'하기 위한 예시적인 거래를 보여준다. 즉, 자산의 공개키 내에 일부 비트코인을 넣어 자산이 그 거래(도 3c에 도시된 공개 거래와 같은)를 운용할 수 있도록 한다.
도 3c는 도 3a 및 도 3b의 자산의 발생에 대한 예시적인 블록체인 거래를 보여준다.
도 3d는 도 3a, 도 3b 및 도 3c에 관한 계약 종료에 대한 예시적인 거래를 보여준다. 계약 취소가 요청될 때, UTXO는 소비된다. 이 시나리오에서, 요청은 자산 및 서명할 자산의 숨은 소유자에 대한 것이다.
도 4a는 임대 계약을 포함하는 시나리오에 대한 예시적인 상태 머신 모델을 보여준다.
도 4b는 도 4a의 시나리오에 대한 예시적인 메타데이터를 보여준다.
도 4c는 블록체인 상에 도 4a 및 도 4b의 자산의 소유권을 공개하기 위한 예시적인 거래를 보여준다.
도 5a는 시나리오에 대한 예시적인 상태 머신 모델을 보여주며, 여기서 계약은 체결된다.
도 5b는 도 5a의 시나리오에 대한 예시적인 메타데이터를 보여준다.
도 5c는 블록체인 상에 계약의 최초 연장 및 도 5a 및 도 5b의 최초 계약을 공개하는데 이용될 수 있는 예시적인 거래를 보여준다.
도 5d는 도 5a 내지 도 5d의 계약 종결에 대한 예시적인 거래를 보여준다.
도 6a는 계약 조건을 포함하는 시나리오에 대한 예시적인 상태 머신 모델을 보여준다.
도 6b는 도 6a의 시나리오에 대한 예시적인 메타데이터를 보여준다.
도 6c는 최초 계약 및 두 개의 서브 계약을 생성하고 이들을 공개하기 위해 이용될 수 있는 예시적인 거래를 보여준다.
도 6d는 도 6a 내지 도 6c의 시나리오에 관련하여 사용하기 위한 예시적인 거래를 보여준다.
도 7 내지 도 13은 부모키로부터 서브키를 도출하기 위한 기술의 다양한 양상을 도시하며, 이 기술은 본 발명의 양상과 관련하여 사용하기에 적합하다.
블록체인에 내장된 스마트 계약은 외부 컴퓨터 기반 애플리케이션을 통해 및/또는 비트코인 거래 내(즉, 잠금/해제 스크립트 내)에 직접 내장된 로직을 통해 집행될 수 있다. 이러한 외부 컴퓨터 기반 애플리케이션은 '에이전트(agent)', '오라클(oracle)' 또는 '봇(bot)'으로 불릴 수 있다. 또한, 몇몇 계약 조건은 nLockTime 필드와 같은 다른 비트코인 거래 요소를 통해 집행될 수 있다.
본 발명은 여기서 계약을 나타내는 블록체인 상에 유효한 미사용 거래 출력 UTXO가 존재하는 한 계약이 유효한 것으로 해석되는 것으로 설명된다. 이러한 미사용 상태는 행동이 계약 자체의 약정 또는 조건에 의해 제어되는 다양한 메커니즘(예를 들어, 프로그램된 컴퓨팅 에이전트)의 결과로서 변경되고 영향을 받을 수 있음을 이해해야 한다. 예를 들어, 계약은 특정 날짜에 만료되거나 특정값이 특정된 임계값에 도달하여 만료될 것을 규정한다.
계약을 나타내기 위해 미사용 출력을 이용하는 원리는 암화화 기술과 같은, 다른 특징과 결합하여 사용될 수 있다. 이는 복잡한 시나리오 및 활동을 구현하도록 한다. 실제로, 그것이 사용될 수 있도록 하는 스크립트 내의 관련 메타데이터 및 서명되지 않은 거래 출력 UTXO 주변의 상황은 거래가 계약의 정식 세부 사항을 포함하는 오프-체인(off-chain) 저장소에 대한 참조 또는 포인터로서 실행하도록 한다. 여기서, '오프-체인'은 블록체인 자체의 일부가 아니라는 의미이다. 이는 누구나 블록체인을 검사함으로써 계약이 여전히 유효/개방인지 종결되었는지를 결정하기 위한 도구 또는 소프트웨어 기반 구성 요소를 이용할 수 있는 메커니즘을 제공한다. 계약이 종결되면, 이는 거래의 사용 출력으로서 블록체인 상에 기록될 수 있고, 이는 공개 검사가 가능하다. 블록체인 거래는 계약의 존재 및 현재 상태의 영구적, 불변적, 그리고 공개적 기록이 된다.
('레지스트리' 또는 '레지스터'라고 하는) 저장소는 예를 들어, 분산 해시 테이블(DHT)을 비롯한 다양한 방식으로 구현될 수 있다. 계약의 해시는 블록체인 거래 내 메타데이터로서 저장되고 생성될 수 있으며, 블록체인으로부터 계약을 참조하기 위한 룩업키 역할을 할 수 있다. 또한, 계약의 위치에 대한 참조는 거래 메타데이터 내에 제공된다. 예를 들어, 저장소에 대한 URL이 제공된다. 메타데이터가 공개적으로 볼 수 있도록 열려 있지만, 계약 자체는 부분적으로 보호되거나 그렇지 않을 수 있다.
CheckLockTimeVerify (CLTV)와 같은 표준 비트코인 특징은 계약이 향후 시점에서 공식적인 자동 만료가 되도록 할 수 있다. 블록체인의 사용은 사용 만료일이 안전한 (불변의) 공개 기록으로 간주될 수 있도록 한다. 아래에 설명된 다중 암호화 키의 사용과 결합되는 이 개념은 CLTV 모델이 명시적으로 취소하지 않는 한 계약을 자동적으로 체결 또는 갱신하도록 한다.
여기서 설명된 토큰화 메커니즘과 결합하는 결정성 서브키의 사용은 계약에 대한 일정 또는 서브 계약이 생성되도록 한다.
더욱이, 오프-블록 컴퓨팅 에이전트(오라클)의 사용은 계약 조건이 신뢰할 수 있는 제3자에 의해 수정되고 내장되도록 한다. 에이전트의 실행은 계약 정의 내에 제공된 조건(예를 들어, "IF"문)에 영향을 받을 수 있다는 것을 의미한다.
키 용어
다음 용어는 여기에 사용될 수 있다.
Figure pct00010
계약 발급자
이 독립체는 블록체인 상 계약의 공개에 대한 책임이 있는 관여자를 나타낸다.
Figure pct00011
이해 관계자
이 독립체는 특정 계약이 여전히 존재하는지 아닌지를 결정할 필요가 있을 수 있거나 계약의 특정을 결정할 필요가 있을 수 있는 관여자를 나타난다.
Figure pct00012
저장소
이 독립체는 블록체인 스마트 계약이 참조하는 계약의 구조화된 표현을 저장/보호하는 위치를 나타낸다.
Figure pct00013
계약 상대방
이 독립체는 특정 계약의 상대방을 나타낸다. 많은 경우에서, 이 독립체는 존재하지 않을 수 있음을 알아야 한다.
Figure pct00014
계약
이는 저장소 내에 저장된 구조화된 문서 또는 파일이고, 이는 블록체인에서 참조된다. 계약은 모든 유형의 계약 또는 합의일 수 있다. 예를 들어, 금융 계약, 부동산 권리증서, 서비스 계약 등이 포함될 수 있다. 계약은 내용 면에서 공개적 또는 개인적일 수 있다. 계약은 부호화 스키마를 이용하여 구조화된 방식으로 표현된다는 점에서 공식화된다.
계약 모델
Figure pct00015
계약 모델의 기본 요소는 아래와 같다.
계약의 어떠한 형태를 완전히 설명할 수 있는 부호화 스키마. 스키마는 XBRL, XML, JSON 등과 같은 기존 설비를 사용할 수 있거나 새로운 구조일 수 있다.
Figure pct00016
부호화 스키마 내에 전체로 정의될 수 있는 계약을 수행하기 위한DFA(결정성 유한 오토머턴). 이는 아래와 같이 구성된다.
o 파라미터의 세트, 그리고 그 파라미터를 공급하는 장소
o 상태 정의 세트
o 전환을 위한 트리거와 전환에 따른 규칙을 포함하는 상태 사이의 전환 세트
o 규칙 정의 테이블
Figure pct00017
계약의 인스턴스에 대한 특정 파라미터의 정의
Figure pct00018
계약을 보호하고 안전하게 하는 메커니즘
Figure pct00019
컨택(contact)을 공식 법률 언어로 사람이 읽을 수 있게 하는 '브라우저'
Figure pct00020
비트코인 스크립트와 같은 스크립트 및/또는 오라클 코드 내 부호화 스키마를 변환하는 '컴파일러'
계약 이행하기
계약이 저장소에 등록되면, 관련 주소(예를 들어, URL) 및 해시는 계약 자체의 제어와 함께 체인상 거래에 관련하여 블록체인 거래 내 메타데이터로서 이용될 수 있다. 이는 다양한 형태로 수행될 수 있지만, 적절한 부호화 스키마는 "부호화 스키마"로 명명된 섹션에서 완전성을 위해 아래에 제공된다.
계약 정의 내에 포함된 DFA가 어떻게 수행될 수 있는지에 대한 많은 상이한 방법이 있다.
Figure pct00021
블록체인 거래 또는 거래 시퀀스. DFA의 다양한 형태는 비트코인 스크립트 언어 내에서 직접 구현될 수 있다. 기술 분야의 당업자는 이를 이해할 것이며, 본 발명은 DFA가 블록체인 거래(s)를 통해 구현되는 방식과 관련하여 제한되지 않는다.
Figure pct00022
에이전트 기반(예를 들어, 오라클) 프로세스 또는 프로세스의 시퀀스. "본 발명과 함께 이용하기 위한 예시적인 컴퓨팅 에이전트"라고 아래에서 명명된 섹션은 적절한 에이전트가 블록체인 및 가능한 다른 외부 소스를 모니터링하도록 정의하고 실행하는 기본 프로세스를 설명한다.
Figure pct00023
스마트 지갑에 대한 명령어 세트. 이 콘텐츠에서, 스마트 지갑은 사실상 단순히 블록체인에 대한 거래 입력 할당과 같은 특정 계약 조건을 처라할 수 있는 로컬 오라클 프로세스이다.
주어진 계약 정의가 위의 3개 메커니즘의 혼합으로 구현될 수 있으며, 여기서 각 계약 상태 전환은 사실상 별도 구현이다. 관련 거래/코드를 수작업하는 것을 포함하여 계약 정의로부터 구현을 생성하는 여러가지 방법이 있다.
계약 존재 공개하기
계약 존재(또는 계약 내 정의된 요소)를 공개하기 위해, 거래 Tx는 페이 투 스크립트 해시 주소(P2SH)를 이용하여 블록체인에 공개된다. P2SH 거래는 거래가 소비되기 위해서, 스크립트 해시를 매칭하는 스크립트 및 스크립트를 참(true)으로 평가하는 데이터를 수령인이 제공해야 한다. 본 발명의 실시예와 관련하여, 페이 투 스트립트 해시(P2SH)는 다음으로부터 쉽게 결정될 수 있다.
- 계약의 발급자, 그리고
- 계약의 메타데이터
본 발명의 몇몇 실시예에 따르면, 미사용 거래는 계약 상태의 지표로서 해설될 수 있다. 오프-체인 프로세스는 블록체인을 모니터링하고 출력이 미사용인지 아닌지에 기초한 특정 방식으로 동작하도록 구성될 수 있다. 다시 말하면, 블록체인 상의 UTXO 목록 내에 출력이 남아있는 동안(즉, 거래가 여전히 미사용), 이것은 메타데이터에 의해 지시되거나 참조된 계약의 유효성을 나타낸다. 이 출력이 소비되면 계약은 완료된 것으로 간주된다. 이 조건(UTXO가 존재하는 한 계약이 유효(valid/open)한 상태로 유지됨)은 계약 자체의 조건일 수 있다. 그러나, 다른 예에서 대체 종결 조건이 준비되어 있는 것처럼 프로토콜의 필수 조건은 아니다. 거래가 소비된 후(그러므로 더 이상 UTXO 목록에 존재하지 않는)라도, 블록체인 상의 영구적으로 상주하고 계약의 해시 및 계약에 참조 또는 포인트를 여전히 보유하므로, 소비된 후에도 그 기능을 유지할 수 있다.
서브-계약/조건
서브 계약은 기존 계약에 직접 관련된 계약이다. 조건은 그 계약의 조건을 만족시키기 위해 성취되어야 할 기존 계약 내의 조항이다.
본 발명의 일 실시예에 따르면, 서브-계약 및 조건 모두 동일한 방식으로 구현될 수 있다(즉, 결정성 리딤 스크립트 주소를 가지는 UTXO로서 이행되는 계약으로서). 두 경우 모두, 독립체는 UTXO가 소비될 때 완료된 것으로 해석될 수 있다(조건의 경우에서, 이는 조건이 충족되었음을 나타낸다). 위에서 언급했듯이, 메타데이터는 저장소 및 그 해시 내에서 독립체의 위치에 대한 포인터 또는 참조를 여전히 포함할 것이다. 그러므로, 다른 실시예에서, 계약된 특정 조건에 따라, 서브-계약 또는 조건은 존재를 유지할 수 있고, 출력이 소비된 후에도 기능을 유지할 수 있다.
조건 또는 서브 계약에 대한 결정성 주소를 생성하는데 사용될 수 있는 여러 메커니즘이 있다.
- 시드 정보를 이용하여 새로운 공개키를 도출하는 것
- 주 계약을 참조하여 저장소 내에 서브 계약을 생성 및 공개하는 것 그리고 메타데이터 참조로서 이를 이용하는 것
- 기존 계약의 메타데이터에 대한 조건/서브 계약 참조를 추가하는 것
계약 보호하기
계약의 공식적인 표현(즉, 계약의 내용을 특정하는 파일 또는 문서)은 특정 계약의 공식적인 필요에 따라 다양한 방식으로 보호될 수 있으며, 모든 경우에 계약 존재의 공개 기록은 메타데이터 기록 내에 포함된 블록체인 상에 공개된다(특정 메타데이터 구조의 세부 사항에 "부호화 스키마"로 명명된 섹션을 참조).
블록체인 기록으로부터, 승인된 독립체는 거래가 공개된 이후에 공식 표현이 수정되지 않았다는 것을 결정하기 위해 해시와 함께 공식 표현의 위치를 학습할 수 있다.
그러나, 다양한 방법을 통해 공식 표현 자체를 더 안전하게 할 수 있다.
- 문서 저장소 자체는 접근 제어 메커니즘을 나타낼 수 있다. 그리고
- 계약 자체는 관련 암호해독키에 대한 접근 권한을 가진 독립체에 대한 접근을 제한하는 표준 암호화 기술을 통해 보호될 수 있다.
많은 경우에서, 계약 자체는 부분적으로 보호될 수 있다. 예를 들어, 전체 콘텐츠가 공개되는 반면 파일 내 몇몇 섹션은 보호될 수 있다(예를 들어, 어떻게 고정 금리 대출을 어떻게 구현하는지에 대한 세부 사항은 공개되나 누가 대출을 받는지, 얼마나 많이 그리고 이율이 어떤지는 계약 당사자에게만 알려진다.)
이러한 부분적인 보호는 그 콘텐츠 변경을 감지하는 해시 뿐만 아니라 계약 내 정보의 암호화 모두에 적용된다.
많은 계약에 대해, 계약의 세부 사항은 그 수명 동안 수정될 수 있으며 계약 자체의 재발급을 요구해서는 안된다. 계약의 서브 세트를 통해 해시의 범위를 결정함으로써 달성될 수 있다. 이것이 유용할 수 있는 예는 단위형 투자신탁의 구현에 있다. 단위형 투자신탁을 지지하는 계약은 변하지 않으나, 단위에 대한 수혜자는 계약의 제3자 매도를 통해 수정될 수 있다. 일 실시예에서, 변화를 기록하는 것은 서브 계약을 이용하여 달성될 수 있다.
계약 종료하기
블록체인은 거래의 영구적이고 불변의 기록을 제공하므로, 계약은 단순히 관련 계약 문서를 제거함으로써 종결될 수 없다. 이는 안전한 계약 저장소가 많은 표준 메커니즘을 통해 지원되는 블록체인 자체와 동일한 저장소 및 보존 규칙을 가져야 한다는 것을 의미한다. 이는 솔루션이 직접 블록체인 기록을 통해 계약 종료를 감지하는 메커니즘을 제시해야 한다는 것을 의미한다.
종료 방법은 계약에 조건으로서 정의되고 다양한 방법으로 수행될 수 있고 이들 모두는 본 발명에 의해 개념적으로 포함된다. 본 발명의 바람직한 실시예에서, 종료는 계약을 나타내는 UTXO의 소리를 통해 처리된다.
여러 계약 형태의 경우, 계약 종료는 계약 자체의 공개와 동시에 공개될 수 있따. 효과적으로 두 개의 거래는 생성되며, 하나는 계약을 공개하고 계약을 나타내는 거래 출력을 얻는 것이고, 둘은 그 출력을 소비하는 것이다. 이 두번째 거래는 주어진 미래 날짜(계약 종료를 나타냄)에 출력을 소비하기 위하여 CheckLockTimeVerify 세트를 가진다. 이전 내용에 따르면, 이것은 표준 방법이지만 유일한 것은 아니다. 이러한 자동 소비는 계약의 계속을 지원하기 위해 확장될 수 있다(예를 들어, 취소되지 않으면 12개월 더 자동 연장되는 계약). 이 상황에서, UTXO는 이를 '새로운' 계속 계약에 전송하는데 사용된다. 그러나, 잠금 시간 전에 출력을 소비하고 전체 계약을 취소하여 오래된 것을 취소할 수 있다.
사용 케이스 모델
도 1은 본 발명의 실시예에 따른 사용 케이스 모델의 개략을 보여준다. 이러한 예시적인 사용 케이스 모델은 어떻게 표준 비트코인 거래가 비트코인 스크립트 내 직접적으로 DFA의 요소를 구현하는데 이용될 수 있는지를 보여준다. 키 사용 케이스의 예는 설명의 목적을 위해 제공된다.
계약 생성하기
계약 발급자(본 예시의 주 관여자)는 공개 가시성을 위해 블록체인 상에 계약을 공개할 수 있다. 이 프로세스는 표 1에 요약된다.
단계 상세한 설명
100.10 계약 발급자는 새로운 계약 문서를 생성하고, 나중에 사용할 수 있도록 해당 문서의 보안 해시 및 저장 장소를 저장하는 저장소에 이를 공개한다. 이 저장소는 계약 문서 자체의 성질에 따라 공개적, 개인적 또는 반 개인적(semi-private)일 수 있다는 것에 유의해야 한다. 저장소는 다양한 속성에 의해 검색될 수 있도록 인덱스된다.
100.20 계약 발급자는 n개의 다중 서명 구조 중 m개에서 보안된 계약 문서를 다루는 리딤 스크립트를 생성한다. 여기서,
- m은 적어도 하나이고,
- n은 m에 메타데이터 블록의 수를 더한 것이다(적어도 2개가 됨).
이 스크립트에 항상 제공되어야 하는 하나의 공개키는 계약 발급자의 것이다. 그러나 계약의 조건에 따라 다른 서명이 필요할 수도 있다.
100.30 계약 발급자는 명목 통화량(예를 들어, 비트코인)을 표준 P2SH 거래를 통해 100.20 단계에서 계산되는 리딤 스크립트에 지불한다.
100.40 계약 발급자는 거래가 블록체인 상에 공개되고 공개 거래에 대한 거래 ID를 추출할때까지 기다린다.
100.50 고정 기간 계약의 경우, 계약 발급자는 100.40 단계로부터의 결과물을 계약의 만료 시간으로 설정된 잠금 시간을 통해 다시 계약 발급자의 공개키 해시에 지불하는 새로운 거래를 생성한다.
롤링(연장ing) 기간 계약의 경우, 컴퓨터 기반 에이전트는 표 3의 '연장(연장over)' 사용 케이스를 트리거 하기 전에 계약에서 이를 굴리기 위해 거래를 선택하고 계약 만료 시간까지 기다릴 수 있다.
완료 기반 계약의 경우(여기서, y개의 독립체 중 x개는 계약이 이행되었음에 동의함), n개의 다중 서명 거래 중 m개는 완료 후 공동 서명하기 위해 이러한 독립체에 발생되고 생성된다.
아래에서 상세하게 설명된 이 시나리오의 두 개의 주요한 구현예 및 변형예가 있다
Figure pct00024
기존 계약에서 서브 계약 생성
Figure pct00025
기존 계약을 새로운 계약으로 롤오버(갱신)
서브 계약 생성하기
이 상황에서, 계약 발급자는 기존 계약으로부터 서브 계약을 생성하기 원한다. 이러한 프로세스는 표 2에 요약된다.
단계 상세한 설명
150.10 계약 발급자는 부모 계약으로부터 서브키 정보를 도출하는데 시드값을 이용하여 부모 계약을 생성하는데 이용되는 그들의 공개키로부터 새로운 서브키를 생성한다. 이는 계약 발급자가 원하는(그리고 약속한) 어떠한 도출이 될 수 있지만 적절한 시드의 예는 다음을 포함할 수 있다.
- 거래 ID / 100.40 단계에서 생성된 계약 UTXO의 인덱스, 또는
- 100.20 단계에서 생성된 리딤 스크립트 해시
본 예에서는 상기에서 언급된 공개키가 계약 발급자의 공개키임을 가정한다. 그러나 당업자는 파생된 서브키(즉, 서브 계약의 서브 계약)인 이것을 막을 수 있는 방법이 없다는 것을 인식할 것이다.
150.20 생성되는 서브 계약의 성격에 따라 계약 발급자는 다음중 하나를 수행한다.
- 주 계약 문서의 해시 및 위치를 사용한다. 또는,
- 내장된 주 계약 문서에 대한 링크를 통해 새로운 계약 문서를 생성하고, 이후 사용을 위해 해당 문서의 보안 해시 및 문서의 위치를 저장한다.
- 내장된 주 계약 문서에 대한 링크를 통해 새로운 계약 문서를 생성하고, 다뤄진 원본 계약 문서로부터 필드 목록을 추가한다. 실제로, 이는 서브 계약이 원본 정보를 복제하는 것이 아니라 또 다른 문서의 특정 섹션을 다루는 것을 지정한 문서이다.
이 저장소는 계약 문서 자체의 성격에 따라 공개적, 개인적 또는 반 공개적일 수 있음에 유의해야 한다.
150.30 계약 발급자는 n개의 다중 서명 구조 중 m개에서 보안된 계약 문서를 다루는 리딤 스크립트를 생성한다. 여기서,
- m은 적어도 하나이고,
- n은 m에 메타데이터 블록의 수를 더한 것이다(적어도 2개가 됨).
이 스크립트에 항상 제공되어야 하는 하나의 공개키는 계약 발급자의 것이다. 그러나 계약의 조건에 따라 다른 서명이 필요할 수도 있다.
150.40 계약 발급자는 명목 통화량(예를 들어, 비트코인)을 표준 P2SH 거래를 통해 150.30 단계에서 계산되는 리딤 스크립트에 지불한다.
150.50 계약 발급자는 거래가 블록체인 상에 공개되고 공개 거래에 대한 거래 ID를 추출할때까지 기다린다.
150.60 고정 기간 계약의 경우, 계약 발급자는 150.50 단계로부터의 결과물을 계약의 만료 시간으로 설정된 잠금 시간을 통해 다시 계약 발급자의 공개키 해시에 지불하는 새로운 거래를 생성한다.
하나 이상의 실시예에 따르면, 서브 계약은 독립적으로 모니터링 될 수 있다. 예를 들어, 감정인으로부터 승인이 요청되고 계약이 '< x>의 승인 대상'을 명시하는 부동산 건설 계약을 고려한다. 이를 구현하기 위하여, 150.60 단계는 서명을 위해 <x>에게 배포되고 생성된다. 재지불 스크립트는 잠긴 시간이 아니지만 요청된 서명자가 <x>인 n개의 다중 서명 요소 중 m개로 생성된다. 일부 실시예에서, 거래는 두 개의 출력을 가질 것이다:<x>에 대한 수수료와 150.50 단계에서 생성된 UTXO의 지불금.
예시 사용 케이스 : 기존 계약 만기 연장
이 사용 케이스에서, 계약 발급자는 새로운 계약에서 기존 계약의 만기 연장을 원한다. 표 3에서 제공된 예시적인 프로세스:
단계 상세한 설명
175.10 계약 발급자는 이전 UTXO가 소비되었는 아닌지를 검증하는 것에 의해 계약이 취소되었는지 아닌지를 결정하기 위하여 블록체인을 체크할 것이다. 만약 소비되었다면, 프로세스는 종료된다.
175.20 계약 발급자는 부모 계약 시퀀스로부터 서브키 정보를 도출하는데 시드값으로 이를 이용하여, 부모 계약을 생성하는데 이용되는 그들의 공개키로부터 새로운 서브키를 생성한다. 이는 계약 발급자가 원하는(그리고 약속한) 어떠한 결정성 도출이 될 수 있지만 다음일 수 있다.
- 시퀀스 수(예를 들어, 연장된 인스턴스 '1'), 또는
- 연장된 계약에 대한 날짜 범위
위는 위에서 언급된 공개키가 계약 발급자의 공개키 일 수 있음을 가정하나, 실제로 파생된 서브키(즉, 서브 계약의 서브 계약)인 이것을 막을 수 있는 방법은 없다. 서브키가 어떻게 생성될 수 있는지에 대한 예시에 대해서는 “서브키 생성 방법”으로 명명된 섹션을 참조한다.
175.30 계약 발급자는 기존 계약 문서의 해시 및 위치를 가진다.
이 저장소는 계약 문서 자체의 성격에 따라 공개적, 개인적 또는 반 공개적일 수 있음에 유의해야 한다.
175.40 계약 발급자는 n개의 다중 서명 구조 중 m개에서 보안된 계약 문서를 다루는 리딤 스크립트를 생성한다. 여기서,
- m은 적어도 하나이고,
- n은 m에 메타데이터 블록의 수를 더한 것이다(적어도 2개가 됨).
이 스크립트에 항상 제공되어야 하는 하나의 공개키는 계약 발급자의 것이다. 그러나 계약의 조건에 따라 다른 서명이 필요할 수도 있다.
175.50 계약 발급자는 명목 통화량(예를 들어, 비트코인)을 표준 P2SH 거래를 통해 175.40 단계에서 계산되는 리딤 스크립트에 지불한다
175.60 계약 발급자는 거래가 블록체인 상에 공개되고 공개 거래에 대한 거래 ID를 추출할때까지 기다린다.
175.70 프로세스(봇 또는 오라클 기반 구현과 같은)는 취소되지 않은 경우 다시 시작하기 위해 표 3의 '연장' 프로세스를 재트리거 하기 전에 거래를 선택하고 계약 만료 시간까지 기다릴 것이다.
예 : 계약 확인하기
이 사용 케이스에서, 이해 당사자는 자신이 탐구하고 있는 활동을 다루기 위한 계약이 있음을 확인하기를 원한다. 이러한 프로세스는 표 4에 나와 있다.
단계 상세한 설명
200.10 관심 당사자는 그들이 관심을 가지고 있는 계약에 관한 UTXO가 소비되었는지 아닌지를 확인하기 위해 블록체인을 확인할 것이다. 여기서, UTXO가 여전히 소비되지 않은 경우, 계약은 유효하다. 여기서, UTXO가 여전히 소비되지 않은 경우, 그러나 보류 중인 잠금 시간이 있으면, 계약에 대한 만료 시간을 결정할 수 있다. 여기서 UTXO가 소비된 경우, 계약은 어떤 면에서 완료된다.
상기의 주요 변수는 이해 당사자가 몇몇 다른 루트를 통해 계약을 지배하는 거래를 알고 있다고 가정한다(일반적으로 계약 발급자 또는 계약 상대자 중 하나임). 그러나, 계약 발급자에 대한 지식 및 계약 문서에 접근할 수 있는 어떤 독립체는 다음에 의해 확인할 수 있을 것이다.
- UTXO 거래에 대한 리딤 스크립트를 도출하는 것, 그리고
- 리딤 스크립트 해시를 매칭하는 것을 통해 UTXO를 찾기 위하여 블록체인을 스캔하는 것.
예 : 계약 종료하기
이 사용 케이스에서, 계약 발급자 또는 계약 당사자는 기존 계약을 종료하길 원한다. 이 프로세스는 표 5에 도시된다.
단계 상세한 설명
300.10 종료의 주동자는 이전 UTXO가 소비되었는지 아닌지를 검증하는 것에 의해 계약이 취소되었는지 아닌지를 결정하기 위하여 블록체인을 확인할 것이다. 만약 소비되었다면, 프로세스는 계약이 이미 종료되었으므로 종료된다.
300.20 기존 종료 거래가 있다면, 주동자는 이 거래에 서명하고 블록체인 상에 제출할 것이다.
300.30 기존 종료 거래가 없다면, 주동자는 마지막 계약의 UTXO인 거래 입력, 그들의 서명인 해제 스크립트, 계약에 관한 메타데이터 그리고 그들의 공개키를 통해 거래를 생성할 것이다.
300.40 거래가 플록체인 상에서 수락되는 시점에서 계약이 종료되었음을 공개적으로 알 수 있다(비록 참가자만이 특정 이유를 알 수 있음).
계약 조건
위에서 설명된 동일한 메커니즘은 체크 포인트와 같은 주어진 계약 내 조건을 모니터링하는데 이용될 수 있다. 예를 들어, 계약이 100BTC의 가치가 있는 것으로 결정되고, 20 BTC가 1에서 5까지의 체크 포인트에서 지급되면, 위에서 설명된 서브 계약 모델은 하나의 주 계약과 5개의 서브 계약을 도출하는데 이용될 수 있다. 이들 서브 계약 각각은 동일 또는 상이한 서명자(예를 들어, 공증인 또는 이와 유사한 것)를 이용하여 완전한 것으로 표시할 수 있다. 이 방식에서, 공개 기록은 유지되고 계약에 첨부된 조건이 충족되었음을 보여줄 수 있다. 그러면 이 개념을 일단 계약이 완료로 표시되면 20 BTC 지불을 트리거하는데 사용할 수 있는 프로세스 또는 애플리케이션('봇')과 결합할 수 있다.
예시의 목적을 위해, 본 발명이 사용될 수 있는 몇몇 애플리케이션을 보여주는 몇몇 예시 시나리오가 아래에서 제공된다. 이러한 시나리오 모두에서, 계약 자체의 내용은 관련이 없으며 비제한적으로 간주된다.
예시 시나리오 1 : 자산의 공개 레지스트리
이 시나리오에서, 밥은 블록체인 상에 자산(예를 들어, 그의 집)의 소유권을 공개하기로 결정한다. 이 단계에서는 완료된 것이 없다. 단지 후속 거래에서 이용될 수 있는 자산이다. 이 상황에서, 계약에 대한 종료 날짜는 없다. 도 2a는 두 개 상태를 통해 단순 상태 머신을 보여준다. (i) 계약이 개시되고 (ii)계약이 종료된다. 도 2b는 비트코인 거래 출력에 전달된 메타데이터 정의를 보여주며 해시를 통해 유효성 증명 및 계약 위치를 지정한다. 도 2c는 블록체인 상 계약을 최초 저장하는 '발행' 거래를 보여준다(비록, 실제로는 실제 계약이 아닌 해시만 저장한다). 도 2d는 비트코인을 소비함으로써 계약을 취소한다.
예시 시나리오 2 : 숨겨진 소유권을 가진 자산의 레지스트리 및 생성
이는 시나리오 1의 약간 강화된 버전으로, 여기서 밥은 블록체인 상에 자산을 공개하길 원하나 그의 소유권을 직접 밝히길 원하진 않는다.
이 상황에서, 밥은 우선 자산을 나타내기 위해 그의 공개키로부터 서브키를 생성한다. 그러면, 이 서브키는 블록체인 상에 자산의 세부 정보의 일부로서 공개된다. 다시 한번, 이 상황에서, 자산에 대한 종료일은 없다(상세한 예는 서브키가 생성되는 하나의 방법에 대해 아래에서 제공된다. 아래에서 "서브키 생성 방법"으로 명명된 섹션을 참조한다).
이 시나리오의 상태 머신은 도 2a에 도시된 것처럼, 시나리오 1에 대한 것과 동일하다. 도 3a는 이 시나리오에 대한 메타데이터 정의를 보여준다. 메타데이터는 비트코인 거래 출력에 실리고, 계약 위치를 특정하고, 유효성을 증명한다(해시를 통해). 도 3b는 자산을 '운용'하기 위한 거래를 보여준다. 이는, 자산이 거래를 운용할 수 있도록 자산의 공개키에 일부 비트코인을 넣는 것이다(도 3c에서 공개 거래와 같은). 도 3b는 비트코인 거래가 아니므로 밥의 자산 서브키 생성을 보여주진 않는다.
도 3c는 자산의 공개에 대한 블록체인 거래를 보여준다. 도 3d는 계약의 종료에 대한 거래를 보여준다. 계약의 취소가 요청되면, UTXO는 소비된다. 이 상황에서, 요청은 자산과 자산의 숨겨진 소유자 모두가 서명하도록 요청된다.
예시 시나리오 3 : 임대 계약
이 예시적인 상황에서, 밥은 3년의 고정된 기간 동안 이브와 임대 계약을 체결한다. 계약 조건은 지불 횟수를 명시한다. 지불의 세부 사항은 본 발명과 관련이 없다. 그러나 계약은 중단 조항이 없는 고정된 기간을 가진다.
이것은 도 4a에 도시된 것처럼 단순한 상태 머신 모델이다. 도 4b는 이 시나리오에 대한 메타데이터를 보여준다. 도 4c는 블록체인 상에 자산의 소유권을 공개하기 위한 거래를 보여준다. 우선, 밥이 자산에 몇몇 자금을 제공하면, 자산은 스스로 공개한다.
예시 시나리오 4 : 연장 계약
이 예시적인 상황에서, 밥은 연장(rolling) 연간 기준으로 이브로부터 주택을 임대하고로 결정한다. 여기서 그는 갱신 날짜에 임대를 취소하기 위해 두 달의 통지를 제공할 필요가 있고 그렇지 않으면 자동적으로 연장(rolled-on)된다. 이는 도 5a에 도시된 단순한 상태 머신 모델을 가진다. 도 5b는 이 시나리오에 대한 메타데이터를 보여준다. 도 5c는 블록체인 상에 계약의 최초 만기 연장(rollover) 및 최초 계약을 공개하기 위한 거래를 보여준다.
첫해 이후, 밥은 임대를 계속했고 종료하지 않았다. EVE-S3-T2이 공개된 후 이는 바로 자동화된 컴퓨팅 에이전트에 의해 선택되고 다른 해에 연장된다. 그녀 자신의 내부 로직을 이용하는 EVE에 의해 완료될 가능성 또한 있음에 유의해야 한다.
두번째 해 후, 밥은 임대를 종료하기로 선택하고, EVE-S3-T3와 동일한 입력을 이용하여 거래를 제출한다. 그러나 이 거래는 아직 제출되지 않았기 때문에, 입력은 사용되지 않고, 밥의 거래가 블록체인에 먼저 공개되면 EVE-S3-T3를 무효로 할 것이다. 관련 금액은 사소하지만, 봇은 출력이 이브의 공개키 해시(또는 계약에 실제로 명시된 것)로 향하지 않는 한 거래를 부서하지 않을 것이다. 밥의 계약의 종료에 대한 거래는 도 5d에 도시된다.
예시 시나리오 5 : 계약 조건
이 예시적인 상황에서, 밥은 새로운 부동산을 인도하기 위해 건설업자 집단과 계약을 체결한다. 그리고 독립적인 승인(sign-off)을 요구하는 계약 내에 다수의 조건을 지정한다(첫번째는 지방 계획 당국으로부터의 계획 승인이다). 이는 도 6a에 도시된 것처럼 단순 상태 머신 모델을 가진다. 도 6b는 이 시나리오에 대한 메타데이터를 보여준다. 도 6c는 거래를 보여주며, 여기서 밥은 최초 계약 및 두 개의 서브 계약을 생성하고(아래에 설명된 서브키 생성 기술을 이용하여 관련 서브키를 파생한 후), 이들을 공개한다. 도 6d는 계획 허가가 언제 승인되었는지에 대한 거래를 보여준다.
부호화 스키마
계약을 참조하는데 이용되는 메타데이터는 다양한 방식으로 형식을 지정할 수 있다. 그러나 적합한 부호화 스키마는 아래에 설명된다.
계약은 정의한 권리가 계약의 소유자 또는 보유자에게 부여되면 양도가 가능하다. 비양도성 계약의 예시는 참가자가 지명된 계약, 즉 계약의 보유자가 아닌 특정 지명된 독립체에 권리가 부여되는 계약이다. 오직 양도가 가능한 계약이 이 부호화 스키마에서 논의된다.
토큰은 계약에 의해 부여된 권리를 상세히 설명하거나 정의하는 특정 계약을 나타낸다. 본 발명에 따르면, 토큰은 비트코인 거래의 형식에서 계약의 표현이다.
이 체계화 방법은 세 개의 파라미터 또는 데이터 아이템을 포함하는 메타데이터를 이용한다. 이 데이터는 다음으로 나타낼 수 있다.
i) 계약하에서 가능한 공유의 양
(이는 여기서 ' NumShares'일 수 있다.)
ii) 송신자로부터 적어도 하나의 수령인에게 전송되는 전송 유닛의 양
(이는 여기서 'ShareVal'일 수 있다.)
iii) 전송 유닛의 양에 대한 값을 계산하기 위한 요소
(이는 여기서 'pegging rate'일 수 있다.)
이 부호화 스키마의 이점은 위에서 설명된 세 개의 파라미터만 이용하여 블록체인 상에 토큰으로 계약을 표현하거나 캡슐화하는데 이용될 수 있다는 것이다. 결과적으로, 계약은 이러한 세 개의 데이터 아이템의 최소를 이용하여 특정될 수 있다. 부호화 스키마가 양도가능한 계약의 모든 형태에 대해 시용될 수 있으므로, 일반적인 알고리즘이 고안되고 적용될 수 있다. 이러한 메타데이터 아이템의 더 상세한 사항은 아래에서 제공된다.
분할 가능 토큰은 거래 출력 상의 값이 다중 토큰을 통해 할당된 더 작은 양으로 세분될 수 있다(즉, 다중 거래를 통해 할당됨). 원형은 신용 화폐로 토큰화된다. 분할가능한 계약은 0이 아닌 고정율(pegging rate)을 특정하는 것으로 정의된다. 분할가능한 계약의 경우, 거래 출력에 전송된 토큰화된 값은 고정율을 통해 기반 비트코인(BTC) 값에 연결된다. 이는 계약이 고정율에 관하여 보유자의 권리를 특정하는 것이다. 분할할 수 없는 토큰의 경우, 고정율이 없고 계약은 고정된 값에 관하여 보유자의 권리를 특정한다(예를 들어, 무기명 채권 : 정확히 1000달러의 상황이 가능하다 또는 '이 계약은 한번의 이발에 대한 상환이 가능하다'는 바우처). 분할할 수 없는 계약의 경우, 기반 거래 BTC 값은 계약값과 관련이 없다.
"기반 BTC 값"이라는 구절은 거래 출력에 첨부된 비트코인 양(BTC)을 나타낸다. 비트코인 프로토콜에서, 모든 거래 출력은 가치를 고려하여 0이 아닌 BTC 양을 가져야 한다. 사실, BTC 양은 작성 시점에서 현재 546 사토시로 설정된 세트 최소값('먼지(dust)'로 알려진)보다 커야 한다. 1 비트코인은 1억 사토시와 같은 것으로 정의된다. 비트코인 거래가 여기서 오직 소유권의 교환을 용이하게 하기 위한 수단으로서 이용되기 때문에, 실제 기반 BTC 양은 임의적이다. 실제 값은 계약 명세서에 있다. 이론상 모든 토큰은 먼지에 의해 운반될 수 있다.
본 부호화 스키마에 따르면, 특히 분할 가능한 토큰의 경우, 기반 BTC 값은 수단을 가진다: 고정율을 통해 계약값과의 관계를 유지. 고정율은 그 자체로 임의적이고 기반 BTC 양을 작게 유지하도록 선택된다. 먼지를 통한 모든 토큰 거래를 단순화하는 대신 고정율을 이용하는 이유는 본 발명의 프로토콜이 가분성을 용이하게 하기 때문이다. 토큰이 더 작은 수량의 몇몇 거래 출력에 나누어지면, 원본 계약을 조정할 필요가 없다. 각 세분화된 토큰의 계약값은 고정율과 세분화된 기반 BTC 값의 양에 기초하여 단순히 계산된다.
제한된 토큰은 NumShares로 불리는 양에 의해 정의된 고정된 0이 아닌 수에 의해 총 발행 수가 고정(제한)된 것이다. 그러므로, 제한된 계약 하에서 추가적인 주식(Shares)은 발생되지 않는다. 예를 들어, 경주마의 부분 소유권에 대한 계약이 경주마의 100%로 제한된다(예를 들어, 1% 당 100 주 또는 10%당 10 주 등). 무제한 계약은 발급자가 예를 들어, 그들의 지급 준비 계정(Reserve Account)에 신용 화폐의 요청량을 추가함으로써, 주식의 추가 발행을 기명할 수 있다는 것을 의미한다. NumShares는 모든 계약에 명시되어야 한다. 제한된 계약은 NumShares>0이어야 하고, 무제한 계약은 NumShares=0으로 설정하여 나타낸다.
전형예는 예금 은행 계좌가 보유한 총액이 현존하는 약속 어음의 총액과 일치시키는 것과 같은 통화 준비금(currency reserve)이다(금 보유와 유사). 기 개념은 통화 준비금을 넘어서 재고 목록을 포함한다. 예를 들어, 허가된 인쇄 티셔츠 토큰의 발급자는 재고가 있는 10000장의 티셔츠 목록을 가지고 시작할 수 있고, 10000장의 티셔츠를 나타내기 위해 분배가능한 토큰을 발행할 수 있다(여기서, 각 주식 = 1개의 티셔츠이다). 원본 토큰은 세분화될 수 있고 각 세분화된 토큰은 페깅률에 의해 정의된 출력의 기반 BTC 값에 따라 얼마간의 티셔츠에 대해 상환될 수 있다. 그러나 수요가 증가하면, 발급자는 추가 주식을 발행하기로 결정할 수 있다(즉, 또 다른 10000개에 의해 유통되는 주식의 수를 늘린다). 그러한 경우 추가 발생을 기명하기 위해서 발급자는 그의 지급 준비 계정(즉, 재고 창고)에 10000개의 티셔츠를 더 입금해야 한다. 따라서, 한번에 재고가 있는(여기서 재고는 '지급 준비 계정'으로서 역할한다) 티셔츠의 총 수 = 상황되지 않은 주식의 총 수 이다.
고정율은 오직 분할가능한 계약에만 적용되며, 여기서, 주식의 가치(ShareVal로 불리는 수량으로 표시된)는 기반 BTC 양에 고정된다. 예를 들어, 계약은 발급자가 매 기반 1 BTC에 대해 10000달러의 비율로 토큰을 상환하도록 명시될 수 있다. 예를 들어, 15400 사토시의 토큰화된 기반 출력값을 가진 거래는 1.54 달러로 상황될 수 있다. 고정율에 대한 0의 값은 계약이 분할되지 않는다는 것을 나타낸다(즉, 무기명 채권처럼 전체를 양도할 수 있음). 고정율이 0(토큰 분할이 안된다는 의미)이면, 기반 BTC 값은 계약 값에 관련이 없고 어떤 금액이든 설정될 수 있다. 일반적으로 이러한 경우에서, 기반 BTC 양은 운영 비용을 최소화하기 위해 가능한 작게(즉, 먼지로 설정된) 유지되는 것이 바람직하다.
NumShares는 (제한된) 계약 하에서 가능한 주식의 전체 (고정) 수이다. 제한된 계약의 경우, NumShares는 0보다 큰 전체 수를 가져야 한다. 무제한 계약의 경우, NumShares는 어떤 시점에 발행될 수 있는 주식보다 더 고정되지 않고(그들에 의해 기명되어 제공된), 이는 0의 값으로 설정되어 표시된다.
주식은 전송 단위로 정의되고, ShareVal은 해당 단위의 값이다. 예를 들어, 신용화폐에 대해, 전송 단위는 1 센트로 설정될 수 있다. 또는 예를 들어, 50센트로 설정할 수 있다. 이 경우 전송은 50센트의 'lots'로만 허용된다. ShareVal은 또한 백분율로 표시될 수 있다. 예를 들어, 만약 브리더가 10과 같은 주식으로 경주마를 팔기 원한다면 ShareVal =10%이다. ShareVal은 >0이어야 하고 계약상 정의되어야 한다.
TotalIssuance 은 발행된 주식의 전체 수이다. 이 값은 무제한 계약과 같이 제한된 계약에서만 관련되고, 발행이 고정되지 않고 더 많은 주식이 발행될 수 있다. 주식이 백분율로 표현되면 TotalIssuance = 100%로 정의된다.
제한 계약의 경우, NumShares, ShareVal, 및 TotalIssuance는 아래의 방법과 연관된다.
NumShares x ShareVal = TotalIssuance.
TotalIssuance에 대한 0의 값은 무제한 계약을 암시한다. 무제한 계약의 예는 신용 화폐이다(그래서 TotalIssuance는 0으로 설정된다). 제한 계약의 예는 다음과 같다. (i) 한정판 기념 동전(1000 주, 여기서 1주 = 1코인): TotalIssuance = 1000 x 1 = 1000 코인 (ii)티켓 발매소의 좌석, 여기서 TotalIssuance = 이용 가능한 전체 좌석 수
유통은 미사용 토큰의 전체 값으로 정의된다(즉, UTXO의 거래에 의해 결정됨 - 미사용 거래 출력). 모든 미사용 거래의 전체 세트는 모든 비트코인 노드에서 사용할 수 있는 목록에 보관된다. 예를 들어, 발급자가 신용 화폐 형태 토큰으로 10000달러를 발행하고 시간이 지남에 따라 5500달러 상당의 토큰을 상환하면, 유통 = 4500달러가 된다(상환된 토큰의 가치). 이 가치는 연관된 예비 계정의 잔액과 조정되어야 한다.
서브키 생성 방법
위에서, 표 3 및 예시 시나리오는 원본 (마스터)키로부터 서브키를 생성하는 것이 유리한 상황을 참조한다. 이를 획득하기 위한 방법은 이것이 수행되는 하나의 방법의 예시에 대해 제공된다.
도 7은 통신 네트워크(5)를 통해 제2 노드(7)과 통신하는 제1 노드(3)를 포함하는 시스템(1)을 도시한다. 제1 노드(3)는 제1 처리 장치(23)와 연관되고, 제2 노드(5)는 제2 처리 장치(27)와 연관된다. 제1 및 제2 노드(3, 7)는 컴퓨터, 폰, 태블릿 컴퓨터, 모바일 통신 장치, 컴퓨터 서버 등과 같은 전자 장치를 포함한다. 일 예에서, 제1 노드(3)는 클라이언트(사용자) 장치일 수 있고, 제2 노드(7)는 서버일 수 있다. 서버는 디지털 지갑 제공자의 서버일 수 있다.
제1 노드(3)는 제1 노드 마스터 개인키(V1C) 및 제1 노드 마스터 공개키 (P1C)를 가지는 제1 비대칭 암호쌍과 연관된다. 제2 노드 (7)는 제2 노드 마스터 개인키(V1S) 및 제2 노드 마스터 공개키(P1S)를 가지는 제2 비대칭 암호쌍과 연관된다. 다시 말해, 제1 및 제2 노드는 각각 각각의 공개-개인키 쌍을 소유한다.
제1 및 제2 노드(3, 7) 각각에 대한 제1 및 제2 비대칭 암호쌍은 지갑 등록과 같은 등록 절차 동안 생성된다. 각 노드에 대한 공개키는 통신 네트워크(5)를 통해 공개적으로 공유된다.
제1 노드(3) 및 제2 노드(7) 모두에 공통 비밀(C)을 결정하기 위해, 노드(3, 7)는 통신 네트워크(5)를 통해 개인키를 통신하지 않고 각 방법(300, 400)의 단계를 수행한다.
제1 노드(3)에 의해 수행되는 방법(300)은 적어도 제1 노드 마스터 개인키(V1C) 및 생성기 값(GV)에 기초하여 제1 노드 제2 개인키(V2C)를 결정하는 단계(330)를 포함한다. 생성기 값은 제1 및 제2 노드 사이에 공유된 메시지(M)에 기초할 수 있다. 이는 아래에서 추가 설명된 것처럼 통신 네트워크(5)를 통해 메시지를 공유하는 단계를 포함한다. 방법(300)은 또한 적어도 제2 노드 마스터 공개키 (P1S) 및 생성기 값(GV)에 기초하여 제2 노드 제2 공개키(P2S)를 결정하는 단계(370)를 포함한다. 방법(300)은 제1 노드 제2 개인키(V2C) 및 제2 노드 제2 공개키(P2S)에 기초하여 공통 비밀(CS)을 생성하는 단계(380)를 포함한다.
중요한 것은, 동일한 공통 비밀(CS)은 또한 방법(400)에 의해 제2 노드(7)에서 결정될 수 있다. 방법(400)은 제1 노드 마스터 공개키(P1C) 및 생성기 값(GV)에 기초하여 제1 노드 제2 공개키(P2C)를 결정하는 단계(430)를 포함한다. 방법(400)은 제2 노드 마스터 개인키(V1S) 및 생성기 값(GV)에 기초하여 제2 노드 제2 개인키(V2S)를 결정하는 단계(470)를 더 포함한다. 방법(400)은 제2 노드 제2 개인키(V2S) 및 제1 노드 제2 공개키(P2C)에 기초하여 공통 비밀(CS)을 결정하는 단계(480)를 포함한다.
통신 네트워크(5)는 근거리 네트워크, 광역 네트워크, 셀룰러 네트워크, 라디오 통신 네트워크, 인터넷 등을 포함한다. 데이터가 전선, 광섬유 또는 무선과 같은 통신 매체를 통해 전송될 수 있는 이러한 네트워크는 도청자(11)에 의한 것과 같이 도청에 취약할 수 있다. 방법(300, 400)은 제1 노드(3) 및 제2 노드(7) 둘다 통신 네트워크(5)를 통해 공통 비밀을 전송하지 않고 공통 비밀을 독립적으로 결정할 수 있도록 한다.
따라서, 공통 비밀(CS)이 잠재적 비보안 통신 네트워크(5)를 통해 개인키를 전송하지 않아도 각 노드에 의해 안전하고 독립적으로 결정될 수 있는 이점이 있다. 결과적으로, 공통 비밀은 비밀키(또는 비밀키의 기초)로서 이용될 수 있다.
방법(300, 400)은 추가적인 단계를 포함할 수 있다. 도 11을 참조한다. 방법(300)은 제1 노드(3)에서 메시지(M) 및 제1 노드 제2 개인키(V2C)에 기초하여 서명 메시지(SM1)을 생성하는 단계를 포함한다. 방법(300)은 통신 네트워크를 통해 제1 서명 메시지(SM1)를 제2 노드(7)로 전송하는 단계(360)를 더 포함한다. 결과적으로, 제2 노드(7)는 제1 서명 메시지(SM1)를 수신하는 단계(440)를 수행할 수 있다. 방법(400)은 또한 제1 노드 제2 공개키(P2C)를 통해 제1 서명 메시지(SM2)를 검증하는 단계(450) 및 제1 서명 메시지(SM1)을 검증한 결과에 기초하여 제1 노드(3)를 인증하는 단계(460)를 포함한다. 이점으로, 이는 제2 노드(7)가 지칭된 제1 노드(여기서 제1 서명 메시지는 생성되었음)는 제1 노드(3)인지 인증하도록 한다. 이것은 제1 노드(3)만이 제1 노드 마스터 개인키(V1C)에 접근할 수 있다는 가정에 기반하고, 따라서 오직 제1 노드(3)만이 제1 서명 메시지(SM1)를 생성하기 위해 제1 노드 제2 개인키(V2C)를 결정할 수 있다. 피어 투 피어 시나리오와 같이 제2 노드(3)가 제2 노드(7)를 인증할 수 있도록 제2 서명 메시지(SM2)가 제2 노드(7)에서 생성되고 제1 노드(3)에 전송될 수 있도록 하는 것과 유사할 수 있다.
제1 및 제2 노드 사이에 메시지를 공유하는 것은 다양한 방법에 의해 구현될 수 있다. 일 예로, 메시지는 제1 노드(3)에서 생성될 수 있고, 통신 네트워크(5)를 통해 제2 노드(7)로 전송될 수 있다. 대안적으로 메시지는 제2 노드(7)에서 생성될 수 있고, 그러면 통신 네트워크(5)를 통해 제2 노드(7)로 전송될 수 있다. 일부 예에서, 메시지(M)는 공개될 수 있고, 따라서 비보안 네트워크(5)를 통해 전송될 수 있다. 하나 이상의 메시지(M)는 데이터 저장소(13, 17, 19)에 저장될 수 있다. 당업자는 메시지 저장이 다양한 방법으로 구현될 수 있음을 이해할 것이다.
이점으로는, 공통 비밀(CS)의 재생성을 허용하기 위한 기록은 개인적으로 저장되거나 보안 전송되어야 하는 기록 없이 유지될 수 있다.
등록 방법(100, 200)
등록 방법(100,200)의 예는 도 3을 참조하여 설명되며, 여기서 방법(100)은 제1 노드(3)에 의해 수행되고, 방법(200)은 제2 노드(7)에 의해 수행된다. 이는 제1 및 제2 노드(3, 7) 각각에 대한 제1 및 제2 비대칭 암호쌍을 설정하는 것을 포함한다.
비대칭 암호쌍은 공개치 암호화에 이용되는 것과 같은 연관된 개인키 및 공개키를 포함한다. 이 예에서, 비대칭 암호쌍은 타원 곡선 암호화(ECC) 및 타원 곡선 연산의 속성을 이용하여 생성된다.
방법(100, 200)에서, 이는 공통의 ECC 시스템을 결정하고 베이스 포인트(G)를 사용하는(110, 210) 제1 및 제2 노드를 포함한다. (주의 : 베이스 포인트는 공통 생성기로 불릴 수 있으나, '베이스 포인트'라는 용어는 생성기 값(GV)과의 혼란을 피하기 위해 사용된다). 하나의 예에서, 공통의 ECC 시스템은 비트코인(Bitcoin)에 의해 사용된 ECC 시스템인 secp256K1에 기반할 수 있다. 베이스 포인트(G)는 선택되거나, 무작위로 생성되거나, 할당될 수 있다.
제1 노도(3)으로 돌아가면, 방법(100)은 공통의 ECC 시스템과 베이스 포인트(G)를 결정하는 단계를 포함한다. 이는 제2 노드(7) 또는 제3 노드(9)로부터 공통의 ECC 시스템 및 공통 생성기를 검색하는 단계를 포함할 수 있다. 대안적으로, 사용자 인터페이스(15)는 제1 노드(3)와 연관될 수 있고, 이에 의해 사용자는 공통의 ECC 시스템 및/또는 베이스 포인트(G)를 선택적으로 제공할 수 있다. 또 다른 대안에서, 공통의 ECC 시스템 및/또는 공통 생성기(G) 중 적어도 하나는 제1 노드(3)에 의해 무작위로 선택될 수 있다. 제1 노드(3)는 통신 네트워크(5)를 통해, 제2 노드(7)로 베이스 포인트(G)를 갖는 공통의 ECC 시스템을 사용하는 것을 나타내는 통지를 전송할 수 있다. 결과적으로, 제2 노드(7)는 공통의 ECC 시스템 및 베이스 포인트(G)를 사용하는 것에 대한 승인을 나타내는 통지를 전송함으로써 결정할 수 있다(210).
방법(100)은 또한 제1 노드 마스터 개인키(V1C) 및 제1 노드 마스터 공개키(P1C)를 포함하는 제1 비대칭 암호쌍을 생성하는(120) 제1 노드(3)를 포함한다. 이는 적어도 부분적으로, 공통 ECC 시스템에 규정된 허용 범위 내의 임의 정수에 기초한 제1 노드 마스터 개인키(V1C)를 생성하는 단계를 포함한다. 이는 또한 아래의 수학식에 따른 제1 노드 마스터 개인키(V1C) 및 공통 생성기(G)의 타원 곡선 점 합산에 기초한 제1 노드 마스터 공개키(P1C)를 결정하는 단계를 포함한다.
[수학식 1]
P1C = V1C x G
따라서 제1 비대칭 암호쌍은,
V1C : 제1 노드에 의해 비밀이 유지된 제1 노드 마스터 개인키
P1C: 공개적으로 알려진 제1 노드 마스터 공개키를 포함한다.
제1 노드(3)는 제1 노드(3)와 연관된 제1 데이터 저장소(13)에 제1 노드 마스터 개인키(V1C) 및 제1 노드 마스터 공개키(P1C)를 저장할 수 있다. 보안을 위해, 제1 노드 마스터 개인키(V1C)는 키를 개인적으로 유지하기 위해 제1 데이터 저장소(13)의 보안 부분에 저장될 수 있다.
방법(100)은 통신 네트워크(5)를 통해, 제2 노드(7)에 제1 노드 마스터 공개키(P1C)를 전송하는 단계(130)를 포함한다. 제2 노드(7)는 제1 노드 마스터 공개키(P1C)를 검색하는 단계에서, 제2 노드(7)와 연관된 제2 데이터 저장소(17)에 제1 노드 마스터 공개키(P1C)를 저장할 수 있다.
제1 노드(3)와 유사하게, 제2 노드(7)의 방법(200)은 제2 노드 마스터 개인키(V1S) 및 제2 노드 마스터 공개키(P1S)를 포함하는 제2 비대칭 암호쌍을 생성하는 단계(240)를 포함한다. 제2 노드 마스터 개인키(V1S)는 또한 허용 범위 내의 임의 정수이다. 결과적으로, 제2 노드 마스터 공개키(P1S)는 아래의 수학식에 의해 결정된다.
[수학식 2]
P1S = V1S x G
따라서 제2 비대칭 암호쌍은,
V1S : 제2 노드에 의해 비밀로 유지되는 제2 노드 마스터 개인키
P1S: 공개적으로 알려진 제2 노드 마스터 공개키을 포함한다.
제2 노드(7)는 제2 데이터 저장소(17)에 제2 비대칭 암호쌍을 저장할 수 있다. 방법(200)은 제1 노드(3)에 제2 노드 마스터 공개키(P1S)를 전송하는 단계(250)를 더 포함한다. 결과적으로, 제1 노드(3)는 제2 노드 마스터 공개키(P1S)를 수신하고(140) 저장할(150) 수 있다.
일부 대안에서, 각각의 공개 마스터키는 제3 노드(9, 신뢰할 수 있는 제3자와 같은)와 연관된 제3 데이터 저장소(19)에 수신되고 저장될 수 있다. 이는 인증 기관과 같은 공개 디렉터리(public directory) 역할을 하는 제3자를 포함할 수 있다. 따라서, 일부 예에서, 제1 노드 마스터 공개키(P1C)는 공통 비밀(CS)이 필요하다고 결정할 때만(그리고 그 반대의 경우) 제2 노드(7)에 의해 요청되고 수신될 수 있다.
등록 단계는 최초 설정으로 한 번만 발생할 필요가 있을 것이다.
세션 시작 및 제1 노드(3)에 의한 공통 비밀 결정
공통 비밀 (CS)을 결정하는 예시는 도 4를 참조하여 설명될 것이다. 공통 비밀(CS)은 특정 세션, 시간, 거래 또는 제1 노드(3)와 제2 노드(7) 사이의 다른 목적으로 이용될 수 있으며, 동일한 공통 비밀(CS)을 사용하는 것이 바람직하지 않거나 안전하지 않을 수 있다. 따라서, 공통 비밀(CS)은 다른 세션, 시간, 거래 등 사이에서 변경될 수 있다.
아래는 위에서 설명된 보안 전송 기술의 예시가 제공된다.
메시지 (M)를 생성하기(310)
본 예에서, 제1 노드(30)에 의해 수행되는 방법(300)은 메시지(M)를 생성하는 단계(310)를 포함한다. 메시지(M)는 랜덤, 의사 랜덤 또는 사용자 정의일 수 있다. 일 예에서, 메시지 (M)는 유닉스 타임(Unix time) 및 논스(nonce) (그리고 임의의 값)에 기초할 수 있다. 예를 들어, 메시지(M)는 다음과 같이 제공될 수 있다.
[수학식 3]
Message (M) = UnixTime + nonce
일부 예에서, 메시지(M)는 임의적이다. 그러나 메시지 (M)는 일부 어플리케이션에서 유용할 수 있는 선택 값(예를 들어 유닉스 타임 등)을 가질 수 있음을 이해해야 한다.
방법(300)은 통신 네트워크(3)를 통해, 제2 노드(7)로 메시지(M)를 전송하는 단계(315)를 포함한다. 메시지(M)는 개인키에 대한 정보를 포함하지 않으므로 메시지(M)는 비보안 네트워크를 통해 전송될 수 있다.
생성기 값( GV ) 결정하기(320)
방법(300)은 메시지(M)에 기초하여 생성기 값(GV)을 결정하는 단계(320)를 더 포함한다. 본 예에서, 이는 메시지의 암호화 해시를 결정하는 단계를 포함한다. 암호화 해시 알고리즘의 예는 256-bit 생성기 값(GV)을 생성하기 위한 SHA-256를 포함한다. 그건 아래와 같다.
[수학식 4]
GV = SHA-256(M)
다른 해시 알고리즘이 이용될 수 있음을 이해해야 한다. 이는 보안 해시 알고리즘(Secure Hash Algorithm, SHA) 제품군의 다른 알고리즘이 포함될 수 있다. 몇몇 특정 예는 SHA3-224, SHA3-256, SHA3-384, SHA3-512, SHAKE128, SHAKE256을 포함한 SHA-3 하위 집합의 인스턴스를 포함한다. 다른 해시 알고리즘은 RIPEMD(RACE Integrity Primitives Evaluation Message Digest) 제품군의 것들을 포함한다. 특정 예는 RIPEMD-160을 포함한다. 다른 해시 함수는 셰모르-틸리히(Zιmor-Tillich) 해시 함수 및 냅색 기반(knapsack-based) 해시 함수을 포함한다.
제1 노드 제2 개인키 결정하기(330)
방법(300)은 다음으로 제2 노드 마스터 개인키(V1C) 및 생성기 값(GV)에 기초하여 제1 노드 제2 개인키(V2C)를 결정하는 단계(330)를 포함한다. 이는 아래의 수학식에 따라, 제1 노드 마스터 개인키(V1C) 및 생성기 값(GV)의 스칼라 합산에 기초할 수 있다.
[수학식 5]
V2C = V1C + GV
따라서 제1 노드 제2 개인키(V2C)는 무작위 값이 아니라 제1 노드 마스터 개인키로부터 결정론적으로 파생된 것이다. 암호쌍에 대응하는 공개키, 즉, 제1 노드 제2 공개키(P2C)는 다음과 같은 관계를 가진다.
[수학식 6]
P2C = V2C x G
수학식 5로부터 수학식 6에 V2C 을 대입하면 다음과 같다.
[수학식 7]
P2C = (V1C + GV) x G
여기서, ' + ' 연산자는 스칼라 합산을 나타내고, 'x' 연산자는 타원 곡선 점 합산을 나타낸다. 타원 곡선 암호화 대수학이 분산적이라는 것을 주목하면, 수학식 7은 다음과 같이 표현될 수 있다.
[수학식 8]
P2C = V1C x G + GV x G
결론적으로, 수학식 1은 수학식 7에 대입되어 다음과 같이 나타날 수 있다.
[수학식 9.1]
P2C = P1C + GV x G
[수학식 9.2]
P2C = P1C + SHA-256(M) x G
수학식 8 내지 9.2에서, ' + ' 연산자는 타원 곡선 점 합산을 나타낸다. 그래서 대응하는 제1 노드 제2 공개키(P2C)는 제1 노드 마스터 공개키(P1C) 및 메시지(M)의 주어진 지식을 파생시킬 수 있다. 제2 노드(7)는 방법(400)과 관련하여 아래에서 더 상세히 설명되는 바와 같이, 제1 노드 제2 공개키(P2C)를 독립적으로 결정할 수 있는 그러한 지식을 가질 수 있다.
메시지 및 제1 노드 제2 개인키에 기초하여 제1 서명 메시지(SM1)을 생성하기(350)
방법(300)은 메시지(M) 및 결정된 제1 노드 제2 개인키(V2C)에 기초하여 제1 서명 메시지(SM1)를 생성하는 단계(350)를 더 포함한다. 서명 메시지를 생성하는 것은 메시지(M)에 디지털 서명을 하기 위해 디지털 서명 알고리즘을 적용하는 것을 포함한다. 일 예에서, 이는 제1 서명 메시지(SM1)를 획득하기 위해 타원 곡선 전자 서명 알고리즘(Elliptic Curve Digital Signature Algorithm, ECDSA)의 메시지에 제1 노드 제2 개인키(V2C)를 적용하는 것을 포함한다. ECDSA의 예는 secp256k1, secp256r1, secp384r1, se3cp521r1를 갖는 ECC 시스템에 기초하는 것들을 포함한다.
제1 서명 메시지(SM1)는 제2 노드(7)에서 대응하는 제1 노드 제2 공개키(P2C)로 확인될 수 있다. 이러한 제1 서명 메시지(SM1)의 확인은 제1 노드(3)를 인증하기 위해 제2 노드(7)에 의해 이용될 수 있으며, 이는 아래의 방법(400)에서 논의 될 것이다.
제2 노드 제2 공개키 결정하기(370')
그러면, 제1 노드(3)는 제2 노드 제2 공개키(P2S)를 결정할 수 있다(370). 위에서 논의된 것처럼, 제2 노드 제2 공개키(P2S)는 적어도 제2 노드 마스터 공개키(P1S) 및 생성기 값(GV)에 기초할 수 있다. 본 예에서, 공개키는 생성기(G)와 타원 곡선 점 곱셈을 갖는 개인키로서 결정되기 때문에(370`), 제2 노드 제2 공개키(P2S)는 수학식 6과 유사한 방식으로 표현될 수 있다.
[수학식 10.1]
P2S = V2S x G
[수학식 10.2]
P2S = P1S + DK x G
수학식 10.2에 대한 수학적 증명은 제1 노드 제2 공개키(P2C)에 대한 수학식 9.1을 유도하기 위해 위에서 설명된 것과 동일하다. 제1 노드(3)는 제2 노드(7)와 독립적으로 제2 노드 제2 공개키를 결정할 수 있음이(370) 인정되어야 한다.
제1 노드(3)에서 공통 비밀 결정하기(380)
그러면, 제1 노드(3)는 결정된 제1 노드 제2 개인키(V2C) 및 결정된 제2 노드 제2 공개키(P2S)에 기초하여 공통 비밀(CS)을 결정할 수 있다(380). 공통 비밀(CS)은 아래의 수학식에 따라, 제1 노드(3)에 의해 결정될 수 있다.
[수학식 11]
S = V2C x P2S
제2 노드(7)에서 수행되는 방법(400)
제2 노드(7)에서 수행되는 대응하는 방법(400)이 설명될 것이다. 이러한 단계들 중 몇몇은 제1 노드(3)에 의해 수행된 전술한 단계들과 유사하다는 것을 이해해야 한다.
방법(400)은 통신 네트워크(5)를 통해 제1 노드(3)로부터 메시지(M)를 수신하는 단계(410)를 포함한다. 이는 315 단계에서 제1 노드(3)에 의해 전송된 메시지(M)를 포함할 수 있다. 그러면, 제2 노드(7)는 메시지(M)에 기초하여 생성기 값(GV)를 결정한다(420). 제2 노드(7)에 의해 생성기 값(GV)를 결정하는 단계(420)는 위에서 설명된 제1 노드에 의해 수행되는 320 단계와 유사하다. 본 예에서, 제2 노드(7)는 제1 노드(3)와 독립적으로 이러한 결정 단계(420)를 수행한다.
다음 단계는 제1 노드 마스터 공개키(P1C) 및 생성기 값(GV)에 기초하여 제1 노드 제2 공개키(P2C)를 결정하는 단계(430)를 포함한다. 본 예에서, 공개키는 베이스 포인트(G)와 타원 곡선점 곱셈을 갖는 개인키로서 결정(430`)되기 때문에, 제1 노드 제2 공개키(P2C)는 수학식 9와 유사한 형태로 표현될 수 있다.
[수학식 12.1]
P2C = V2C x G
[수학식 12.2]
P2C = P1C + GV x G
수학식 12.1 및 12.2의 수학적 증명은 수학식 10.1 및 10.2를 위해 위에서 논의된 것과 동일하다.
제1 노드(3)를 인증하는 제2 노드(7)
방법(400)은 주장된 제1 노드(3)가 제1 노드(3)임을 인증하기 위해 제2 노드(7)에 의해 수행되는 단계를 포함할 수 있다. 이전에 논의된 것처럼, 제1 노드(3)로부터 제1 서명 메시지(SM1)를 수신하는 것(440)을 포함한다. 그러면, 제2 노드(7)는 430 단계에서 결정된 제1 노드 제2 공개키(P2C)를 통해 제1 서명 메시지(SM1)의 서명을 검증할 수 있다(450).
디지털 서명을 검증하는 것은 위에서 논의된 타원 곡선 전자 서명 알고리즘(ECDSA)에 따라 행해질 수 있다. 중요한 것은, 제1 노드 제2 개인키(V2C)로 서명된 제1 서명 메시지(SM1)는 V2C 및 P2C가 암호쌍을 형성하기 때문에, 대응하는 제1 노드 제2 공개키(P2C)와 정확하게 일치해야 한다. 이러한 키들은 제1 노드(3)의 등록시 생성되는 제1 노드 마스터 개인키(V1C) 및 제1 노드 마스터 공개키(P1C)에 대해 결정적으므로, 제1 서명 메시지(SM1)을 결정하는 것은 제1 서명 메시지(SM1)를 전송하는 주장된 제1 노드가 등록시 동일한 제1 노드(3)임을 인증하는 근거로 이용될 수 있다. 그래서 제2 노드(7)는 제1 서명 메시지를 검증하는 단계(450)의 결과에 기초하여 제1 노드(3)를 인증하는 단계(460)를 더 수행할 수 있다.
공통 비밀을 결정하는 제2 노드(7)
방법(400)은 제2 노드(7)가 제2 노드 마스터 개인키(V1S) 및 생성기 값(GV)에 기초하여 제2 노드 제2 개인키 (V2S)를 결정(470)하는 노드를 더 포함할 수 있다. 제1 노드(3)에 의해 수행되는 330 단계와 유사하게, 제2 노드 제2 개인키(V2S)는 아래의 수학식에 따라, 제2 노드 마스터 개인키(V1S) 및 생성기 값(GV)의 스칼라 합산에 기초할 수 있다.
[수학식 13.1]
V2S = V1S + DK
[수학식 13.2]
V2S = V1S + SHA-256(M)
그러면, 제2 노드(7)는 아래의 수학식에 기초하여, 제1 노드(3)와 독립적으로, 제2 노드 제2 개인키(V2S) 및 제1 노드 제2 공개키(P2C)에 기초한 공통 비밀(CS)을 결정(480)할 수 있다.
[수학식 14]
S = V2S x P2C
제1 노드(3) 및 제2 노드(7)에 의해 결정된 공통 비밀 ( CS )의 증명
제1 노드(3)에 의해 결정된 공통 비밀(CS)은 제2 노드(7)에서 결정된 공통 비밀(CS)과 동일하다. 수학식 11 및 수학식 14가 동일한 공통 비밀(CS)을 제공하는 것에 대한 수학적 증명을 이제 설명할 것이다.
제1 노드(3)에 의해 결정된 공통 비밀(CS)로 돌아가면, 수학식 10.1은 아래의 수학식 11에 대입될 수 있다.
[수학식 11]
S = V2C x P2S
S = V2C x (V2S x G)
[수학식 15]
S = (V2C x V2S) x G
제2 노드(7)에 의해 결정된 공통 비밀(CS)로 돌아가면, 수학식 12.1은 아래의 수학식 14에 대입될 수 있다.
[수학식 14]
S = V2S x P2C
S = V2S x (V2C x G)
[수학식 16]
S = (V2S x V2C) x G
ECC 대수학은 교환 가능하기 때문에, 수학식 15 및 수학식 16은 동일하다. 그러므로 아래와 같다.
[수학식 17]
S = (V2C x V2S) x G = (V2S x V2C) x G
공통 비밀 ( CS ) 및 비밀키
공통 비밀(CS)은 비밀키로서 또는 제1 노드(3) 및 제2 노드(7) 사이의 보안 통신을 위한 대칭키 알고리즘에서 비밀키의 근거로서 이용될 수 있다.
공통 비밀(CS)은 타원 곡선 점 (xS, yS)의 형태일 수 있다. 이는 노드(3, 7)에 의해 합의된 표준 공개 연산을 이용하여 표준키 포멧으로 변환될 수 있다. 예를 들어, xS 값은 AES256 암호화를 위한 키로서 이용될 수 있는 256-bit 정수일 수 있다. 또한, 이 길이키를 요구하는 어떤 어플리케이션을 위해 RIPEMD160을 사용하여 160-bit 정수로 변환될 수 있다.
공통 비밀(CS)은 필요에 따라 결정될 수 있다. 중요하게도, 제1 노드(3)는 메시지(M)에 기초하여 재결정될 수 있으므로 공통 비밀(CS)을 저장할 필요가 없다. 몇몇 예에서, 사용된 메시지(M)는 마스터 개인키에 대해 요구되는 것과 동일한 보안 레벨 없이 데이터 저장소(13, 17, 19)(또는 다른 데이터 저장소)에 저장될 수 있다. 몇몇 예에서, 메시지(M)는 공개적으로 이용 가능할 수 있다.
그러나 몇몇 어플리케이션에 따르면, 공통 비밀(CS)은 공통 비밀(CS)이 제1 노드 마스터 개인키(V1C)만큼 보안이 유지되는 것을 제공하는 제1 노드와 연관된 제1 데이터 저장소(X)에 저장될 수 있다.
이점으로는, 이 기법은 하나의 마스터키 암호화 쌍에 기초하여 다중 보안 비밀키에 대응할 수 있는 다중 공통 비밀을 결정하는데 이용될 수 있다.
생성기 값(키)의 계층 구조
일 예에서, 일련의 연속적인 생성기 값(GVs)이 결정될 수 있고, 여기서, 각각의 연속적인 GV는 이전 생성기 값(GV)에 기초하여 결정될 수 있다. 예를 들어, 연속적인 단일 목적 키를 생성하기 위해 310 내지 370 단계 및 410 내지 470 단계를 반복하는 대신, 노드 사이의 사전 합의에 의해, 이전에 사용된 생성기 값(GV)은 생성기 값의 계층 구조를 정하기 위해 양 당사자에 의해 반복적으로 재순환될 수 있다. 결과적으로, 메시지(M)의 해시에 기초한 결정키는 다음 생성 생성기 값(GV')를 위한 다음 생성 메시지(M')일 수 있다. 이를 통해 프로토콜 설정 전송, 특히 공통 비밀의 각 생성을 위한 다수 메시지의 전송을 더 필요로 하지 않고 계산되기 위하여 공유 비밀의 연속적인 생성을 허용할 수 있다. 다음 생성 공통 비밀(CS')은 아래와 같이 연산될 수 있다.
첫째로, 제1 노드(3) 및 제2 노드(7) 모두 생성기 값(GV')의 다음 생성을 독립적으로 결정한다. 이는 320 및 420 단계와 유사하지만 아래의 수학식으로 수정된다.
[수학식 18]
M' = SHA-256(M)
[수학식 19.1]
GV' = SHA-256(M')
[수학식 19.2]
GV' = SHA-256(SHA-256(M))
그러면, 제1 노드(3)는 위에서 설명된 370 및 330 단계와 유사하게 제2 노드 제2 공개키(P2S') 및 제1 노드 제2 개인키(V2C')의 다음 생성을 결정할 수 있지만, 아래의 수학식으로 수정된다.
[수학식 20.1]
P2S' = P1S + DK' x G
[수학식 20.2]
V2C' = V1C + DK'
그러면, 제2 노드(7)는 위에서 설명된 430 및 470 단계와 유사하게 제1 노드 제2 공개키(P2C') 및 제2 노드 제2 개인키(V2S')의 다음 생성을 결정할 수 있지만, 아래의 수학식으로 수정된다.
[수학식 21.1]
P2C' = P1C + DK' x G
[수학식 21.2]
V2S' = V1S + DK'
그러면, 제1 노드(3) 및 제2 노드(7)는 다음 생성 공통 비밀(CS')을 각각 결정할 수 있다. 특히, 제1 노드(3)는 수학식을 통해 다음 생성 공통 비밀(CS')를 결정한다.
[수학식 22]
CS' = V2C' x P2S'
제2 노드(7)는 수학식을 통해 다음 생성 공통 비밀(CS')을 결정한다.
[수학식 23]
CS' = V2S' x P2C'
추가적인 생성 (CS'', CS''', 등)은 체인 계층을 생성하기 위해 동일한 방법으로 계산될 수 있다. 이 기법은 제1 노드(3) 및 제2 노드(7) 모두가 원본 메시지(M) 또는 원본의 계산된 결정키(DK), 그리고 그것이 관련된 노드의 추적을 유지할 것을 요구한다. 이것은 공개적으로 알려진 정보이므로 이 정보의 보존에 관련된 보안 문제는 없다. 따라서, 이 정보는 '해시 테이블(hash table)'에 보관될 수 있으며(해시 값을 공개키에 연결), 네트워크(5)를 통해 자유롭게 배포될 수 있다(예를 들어, 토렌트를 사용). 또한, 계층의 어떤 개인적인 공통 비밀(CS)이 손상된다면, 개인키 V1C, V1S 가 안전하다는 전제하에 계층 내의 다른 공통 비밀의 보안에 영향을 미치지 않는다.
키의 트리 구조
위에서 설명된 체인(선형) 계층은 물론, 트리 구조의 형태에서 계층이 생성될 수 있다. 트리 구조를 통해, 인증키, 암호화키, 서명키, 지불키 등과 같은 상이한 목적을 위한 다양한 키들이 결정될 수 있으며, 이러한 키들은 하나의 안전하게 유지된 마스터키에 모두 연결된다. 이는 다양한 상이한 키들을 통한 트리 구조(901)를 나타내는 도 9에 가장 잘 도시되어 있다. 이들 각각은 다른 당사자와 공유된 비밀을 생성하는데 사용될 수 있다. 트리 분기는 몇 가지 방법으로 수행될 수 있으며, 그 중 3개가 아래에서 설명된다.
(i) 마스터키 생성
체인 계층에서, 각각의 새로운 '연결'(공개/개인키 쌍)은 원본 마스터키에 다수의 재해시된(rehashed) 메시지를 추가하여 생성된다. 예를 들어, (명료성을 위해 제1 노드(3)의 개인키만 표시하는 것).
[수학식 24]
V2C = V1C + SHA-256(M)
[수학식 25]
V2C' = V1C + SHA-256(SHA-256(M))
[수학식 26]
V2C'' = V1C + SHA-256(SHA-256(SHA-256(M)))
… 등.
분기를 생성하기 위해, 어떤 키는 서브 마스터키로서 이용될 수 있다. 예를 들어, V2C'는 일반 마스터키에 대해 수행되는 해시를 추가함으로써 서브 마스터키 (V3C)로서 사용될 수 있다.
[수학식 27]
V3C = V2C' + SHA-256(M)
서브 마스터키(V3C)는 자체로 다음 생성키(V3C')를 가질 수 있다. 예를 들어,
[수학식 28]
V3C' = V2C' + SHA-256(SHA-256(M))
이는 도 10에 도시된 마스터키 생성 방법을 이용하는 트리 구조(903)를 제공한다.
( ii ) 논리적 연합
본 방법에서, 트리(공개/개인 키 쌍)의 모든 노드들은 체인으로(또한 다른 방법으로) 생성되고, 트리에서 노드 사이의 논리적 관계는 트리의 각 노드가 포인터(pointer)를 사용하여 트리의 부모 노드와 단순히 연관된 테이블에 의해 유지된다. 그래서, 포인터는 세션에 대한 공통 비밀키(CS)를 결정하기 위한 관련 공개/개인키 쌍을 결정하는데 이용될 수 있다.
( iii ) 메시지 다중성
새로운 개인/공개키 쌍은 체인 또는 트리의 어떤 포인트에서 새로운 메시지를 소개하는 것에 의해 생성될 수 있다. 메시지 자체는 임의적이거나 어떤 의미 또는 기능을 포함할 수 있다(예, '실제' 은행 계좌 번호 등과 연관될 수 있음). 새로운 개인/공개키 쌍을 형성하기 위한 각각의 새로운 메시지는 안전하게 유지되는 것이 바람직할 수 있다.
본 발명과 함께 이용하기 위한 예시적인 컴퓨팅 에이전트
본 발명은 계약 프로세스의 자동화 개념을 수행하기 위해 컴퓨팅 자원 또는 에이전트를 활용할 수 있다. 적합한 에이전트의 예시는 아래에 제공되나, 다른 구현도 이용될 수 있다.
에이전트는 블록체인과 결합하여 작동할 수 있고, 튜링 머신의 구현에서 삭제할 수 없는 테이프로서 이를 이용한다. 에이전트는 블록체인에 병렬적으로 실행되고, (루프) 프로세스의 실행을 처리하고 감시한다. 루프 프로세스는 장치 또는 시스템의 제어 또는 처리의 자동화와 같은 주어진 작업을 수행하기 위해 설계된다. 병렬 자원은 블록체인의 상태를 모니터링하고 블록체인에 기록된 거래를 야기할 수 있다. 어떤 의미에서, 다음의 정의와 특징을 갖는 튜링 머신의 삭제할 수 없는 테이프로서 블록체인을 활용할 수 있다.
1. 블록체인은 튜링 머신의 테이프로서 동작한다. 블록체인의 각 거래는 테이프 상에 셀(cell)을 나타낸다. 이 셀은 유한 알파벳의 기호를 포함할 수 있다.
2. 테이프 헤드(tape head)는 블록체인상에 이미 기록된 블록으로부터 정보를 읽을 수 있다.
3. 테이프 헤드는 블록체인의 끝에 많은 거래를 포함하는 새로운 블록을 기록할 수 있다. 그러나, 이미 존재하는 블록 상에는 기록할 수 없다. 따라서, 블록체인 테이프는 삭제되지 않는다.
4. 각 거래의 메타데이터는 다중 서명 페이 투 스크립트 해시(signature pay-to-script-hash, P2SH) 거래 의 부분으로서 저장될 수 있다.
에이전트의 중요한 기능은 블록체인의 현재 상태를 모니터링하는 자동화된 독립체로서 동작하는 것이다. 또한 어떠한 오프 블록 소스로부터 신호 또는 입력을 수신할 수 있다. 블록체인 상태 및/또는 수신된 입력에 따라, 에이전트는 특정 작업을 수행할 수 있다. 에이전트는 어떠한 작업이 수행될 것인지를 결정한다. 이는 '실제 세상'(즉, 오프 블록)에서 작업 및/또는 블록체인 상의 작업(새로운 거래를 생성하고 브로드캐스팅하는 것과 같은)을 수반하거나 수반하지 않을 수 있다. 에이전트가 취하는 작업은 블록체인 상태 또는 어떠한 오프-블록 입력에 의해 작동될 수 있다. 에이전트는 또한 거래의 다음 세트가 비트코인 네트워크에 브로드캐스트되고 다음으로 블록체인에 기록될 수 있도록 결정할 수 있다.
에이전트의 작업은 블록체인(예를 들어, 비트코인)에 병렬적 및 동시적으로 실행한다. 어떤 의미에서, 블록체인(예를 들어, 비트코인) 스크립트의 기능을
튜링 머신은 두 개의 스택을 포함한다.
Figure pct00026
데이터 스택 : 이는 상기에서 설명한 것처럼 블록체인으로 표현된다.
Figure pct00027
제어 스택 : 이는 관리자 기능으로 표현된다. 이는 반복 제어 흐름 기능에 관련한 정보를 저장한다.
데이터 스택으로부터의 제어 스택 분리는 비트코인 코어 내에서 무한 루프가 발생하는 것을 방지할 수 있는 이점을 제공하며 서비스 거부 공격을 완화한다.
이에전트는 루프 구조의 어떠한 형태(예를 들어, FOR-NEXT; REPEAT UNTIL 등)를 통해 루프할 수 있는 서브 루틴을 관리하고 수행한다. 여기서 설명된 실시예는 '반복' 구조의 일 예를 사용하는 포로세스를 포함한다(도 2 참조). 사용자는 인덱스(i) 및 제한(J)을 특정한다. 이는 현재 반복 횟수(일반적으로 0으로부터 시작하여 카운트된) 및 반복 루프의 반복 총 횟수를 각각 나타낸다.
각 반복은 아래와 같다.
1. 인덱스는 1씩 증가한다. 종료 조건을 위해, 반복은 인덱스가 제한에 도달할 때 멈춘다.
2. ICTA 문(statement)을 포함하는 코드 블록은 실행된다; 실행은 블록체인 상 또는 밖의 어떠한 실행일 수 있다.
3. 이러한 서브루틴의 암호화 해시는 계산된다. 이는 거래(Tx)의 일부로서 블록체인에 저장될 수 있다. 각 코드 블록마다 해시는 고유하기 때문에, 해당 코드가 사용되었는지 검증할 수 있다.
따라서, 루프의 본체는 코드 블록을 포함한다. 각 코드 블록은 ICTA 문을 포함한다(도 3 참조). 이는 아래를 매칭하여 거래를 위한 블록체인의 현재 상태를 모니터링한다.
Figure pct00028
시작 또는 트리거 조건(즉, 특정 비트코인 주소가 10BTC에 도달한 경우)
Figure pct00029
반복 조건(즉, 이전 반복과 관련된 메타데이터 또는 해시)
Figure pct00030
중지 조건(즉, 루프의 마지막 반복)
ICTA 문은 블록체인의 현재 상태에 기초하여, 관리자가 다음 거래에서 생성하도록 결정될 수 있다. 다음 거래를 생성하는 것은 비트코인 네트워크상에 거래를 브로드캐스팅하는 것과 블록체인 상에 새로운 거래를 기록하는 것을 수반한다. 이는 이러한 반복이 실행되는 기록으로서 동작한다. 거래가 블록체인상에 기록되면, 관리자는 이전 반복이 블록체인 상에서 실행되고 기록된 것을 발견하고 다음 반복을 실행할 것이다. 후자는 인덱스(i)가 코드 블록에 지정된 제한(J)에 도달하여 반복 로프가 종료될 때까지 계속된다.
각 거래는 재사용될 수 있는 방법으로 블록체인에 저장된다. 비트코인 구현에서, 거래의 각 서명에는 SIGHASH 플래그가 추가된다. 이 플래그는 다른 값을 가질 수 있으며, 거래의 다른 부분인지를 나타내는 각각은 이 서명 소유자의 개입 없이 수정될 수 있다. 재사용 가능한 거래는 거래 입력의 하나에 SIGHASH 플래그 'SigHash_AnyoneCanPay'를 가진다. 이는 누구나 거래의 입력에 기여하도록 허용한다. 이 파라미터는 관리자의 ICTA 기능이 다른 입력과 함께 여러 번 실행되고 반복될 수 있도록 한다. 기능의 사용은 승인된 당사자로 제한될 수 있다(예를 들어, 재사용 가능한 거래의 저작권을 통해).
ICTA 코드 블록의 'If condition' 섹션은 조건의 어떤 형태를 모니터링할 수 있다. 이는 다른 프로그래밍 언어(예를 들어, C, C++, Java)와 유사하고 블록체인에 저장된 정보에 제한되지 않는다. 예를 들어, 날짜 및 시간을 모니터링 할 수 있거나(즉, 언제 특정 날짜 및 시간에 도달하는지) 날씨를 모니터링 할 수 있고(즉, 언제 온도가 10도 이하이고 비가 오는지), 신뢰 또는 계약의 조건을 모니터링 할 수 있다(즉, 언제 회사 A가 회사 B를 인수하는지).
ICTA 코드 블록의 'Then action' 섹션은 여러가지 실행을 수행할 수 있다. 본 발명은 취할 수 있는 실행의 횟수 또는 유형에 관련하여 제한되지 않는다. 비록 실행과 관련된 메타데이터를 포함하는 거래가 블록체인 상에 기록될 수 있지만, 실행은 블록체인 상의 거래에만 국한되지 않는다.
메타데이터는 어떠한 형태일 수 있다. 그러나, 본 발명의 실시예에 따르면, 메타데이터는 실행에 관련한 더 많은 데이터 또는 명령어를 포함하는 파일에 대한 하이퍼링크(hyperlink)를 저장할 수 있다. 메타데이터는 해시 테이블에 대한 룩업(look-up)키로서 동작하는 실행의 해시와 함께 실행에 관련한 더 많은 데이터 또는 명령어를 포함하는 해시 테이블에 대한 하이퍼링크를 저장할 수 있다.
에이전트의 제어 스택은 각 사용자의 요구에 따라 특정된 다양한 방법으로 구현될 수 있다. 예를 들어, 제어 스택의 반복 루프는 어떤 튜링 완전 언어에 기초할 수 있다. 한가지 가능한 언어 선택은 Forth 스타일 스택 기반 언어이다. 이 언어를 사용하는 이점은 이미 알려져 있고 널리 쓰이는 비트코인 스크립트를 통해 제어 스택을 프로그래밍 스타일에 일관되게 유지할 수 있다는 것이다.
데이터 저장 공간으로서 비트코인 스크립트의 대체 스택 이용
비트코인 스크립트는 연산 코드(op code)라고 불리는 명령을 포함하며, 이는 사용자가 알트 스택(alt stack)이라고 알려진 대체 스택에 데이터를 이동시킬 수 있도록 한다.
연산 코드는 다음과 같다.
Figure pct00031
OP_TOALTSTACK - 이는 메인 스택의 상부에서 알트 스택의 상부로 데이터를 이동시킨다.
Figure pct00032
OP_FROMALTSTACK - 이는 알트 스택의 상부에서 매인 스택의 상부로 데이터를 이동시킨다
이는 데이터가 계산기 상에 저장될 수 있도록 하는 '메모리' 기능과 유사하게, 계산 중간 단계의 데이터를 알트 스택에 저장할 수 있다. 일 실시예에서, 알트 스택은 비트코인 스크립트가 작은 계산 작업을 해결하도록 구성되고 계산 결과를 반환하는데 이용될 수 있다.
에이전트를 관리하기 위하여 코드 레지스터를 사용하기
에이전트는 또한 소유하고 수행하는 모든 코드의 레지스트리를 관리한다. 이러한 레지스트리는 특정키를 특정값에 매핑하는 룩업 테이블 또는 사전과 같이 구성된다. 키 및 값 쌍은 코드 블록 해시(H1) 및 코드가 각각 저장되는 IPv6 주소로 표시된다. 키 H1을 사용하여 코드 블록을 검색하기 위해, 룩업 테이블은 관련된 값(이는 코드가 저장된 위치이다)을 검색하는데 이용되고 그에 따라 소스 코드를 검색한다. 코드 레지스트리의 구현은 다양할 수 있다.
관리자 코드의 거래 메타데이터, 그리고 루프의 재생성(Re-Spawning)
특정 반복에서 관리자 루프를 재생성하기 위해 요구되는 정보는 블록체인 상에 기록된 거래에 메타데이터로 저장된다.
이러한 방법에서, 블록체인 상의 거래는 에이전트에서 실행중인 루프의 주어진 반복에 대한 정보를 저장하거나 정보로의 접근을 제공한다. 이 정보는 인덱스 i와 같은 루프에 관련한 어떤 변수값, 그리고 코드 블록 또는 더 요청된 정보에 접근할 수 있는 곳을 특정하는 위치 관련 데이터에 이용된 파라미터 값과 같은 다른 필수 정보를 포함한다.
메타데이터 자체는 거래의 다중 서명 P2SH의 부분으로서 저장된다. 거래와 함께 기록된 메타데이터는 또한 과거에 어떻게 코드가 실행되었는지에 대한 감사 추적을 기록할 수 있는 기능을 제공한다.
에이전트가 각 반복에서 반복 루프 코드 블록을 재생성할 수 있는 몇몇 방법이 있다. 코드 블록은 에이전트 자체에서 하드 코드(hard-code)되거나, 개인적 또는 공개적으로 사용가능한 파일에 저장되거나, 개인 또는 공개 해시 테이블 파일상에 항목으로서 저장되거나, 상기의 조합일 수 있다. 코드 블록은 하드 코드된 변수로 고정될 수 있고, 또는 고정될 수 있지만 덧붙일 수 있는 파라미터를 포함할 수 있다. 파라미터는 어떤 데이터 포멧의 단일 값이거나, 작은 코드 덩어리이거나, 상기의 조합일 수 있다. 파라미터는 거래(예를 들어, 비트코인 거래)의 메타데이터로부터 또는 내부 데이터 베이스 또는 개인/공개 파일 또는 해시 테이블 또는 상기의 조합과 같은 외부 소스로부터 직접 그것들을 검색함으로써 덧붙여질 수 있다. 파라미터 값의 외부 소스에 대한 포인터(pointer)는 거래의 메타데이터에 저장될 수 있다.
아래의 단계는 어떻게 에이전트가 i번째 반복에서 반복 루프 코드 블록을 재생성할 수 있는지에 대한 일례를 제공한다. 예를 들어, 코드 레지스트리는 해시 테이블이고 이로써 해시 값은 테이블에 대해 룩업키로서 동작하고 거래 상 메타데이터에 저장된다.
1. 에이전트는 코드 레지스트리의 항목과 매칭되는 코드 블록의 해시를 포함하는 거래에 대한 블록체인을 모니터링한다.
2. 에이전트는 대응하는 해시(H1)를 포함하는 거래를 찾는다.
3. 에이전트는 ‘메타데이터-코드해시(Metadata-CodeHash)를 읽고, H1을 획득하기 위하여 코드해시를 획득하고, 코드(C1)를 검색하기 위해 이를 사용한다. 만약 RIPEMD-160(SHA256(C1))과 H1이 동일하면, 코드는 변경되지 않고 다음 단계로 진행하는 것이 안전하다.
4. 에이전트는 인덱스 I를 저장하는 ‘메타데이터-코드해시’를 읽고, i번째 반복에서 코드를 재생성한다. 다시 말해, 루프는 적절한 반복에서 ‘리로드(reload)’된다.
5. 사용자 서명은 메타데이터의 출처를 확인하기 위해 P2SH 명령에 포함된다.
6. 에이전트는 루프의 반복에 이러한 데이터가 필요하다면, 이전 단계의 출력을 검색하기 위해 ‘메타데이터-출력해시(Metadata-OutputHash)’ 및 ‘메타데이터-출력포인터(Metadata-OutputPointer)’(도 6 참조)를 읽는다.
전술한 실시예들은 본 발명을 제한하기보다는 예시하고, 당업자는 첨부된 청구 범위에 의해 정의된 본 발명의 범위를 벗어나지 않고 많은 대안적인 실시예를 설계 할 수 있음을 알아야 한다. 청구 범위에서, 괄호 안의 임의의 참조 부호는 청구 범위를 제한하는 것으로 해석되어서는 안된다. 용어 "포함하는" 및 "포함하다" 등은 청구 범위 또는 명세서 전체에 열거 된 요소 또는 단계 이외의 요소의 존재를 배제하지 않는다. 본 명세서에서, "포함한다"는 "포함하거나 구성한다"를 의미하고 "포함하는"는 "포함하거나 구성하는"을 의미한다. 요소의 단일 참조는 이러한 요소의 복수 참조를 배제하지 않으며 그 반대도 마찬가지이다. 본 발명은 몇몇 별개의 요소들을 포함하는 하드웨어에 의해 그리고 적절하게 프로그래밍 된 컴퓨터에 의해 구현될 수 있다. 여러 수단들을 열거하는 장치 청구항에서, 이들 수단들 중 몇몇은 하나의 동일한 하드웨어 아이템에 의해 구현될 수 있다. 특정 측정 값이 서로 다른 종속 항에서 인용된다는 단순한 사실만으로 이 측정 값의 조합을 활용할 수 없다는 것을 의미하지는 않는다.

Claims (27)

  1. 계약의 이행 및/또는 가시성을 제어하는 컴퓨터 구현 방법에 있어서,
    (a) 컴퓨터 기반 저장소에 계약을 저장하는 단계,
    (b) 블록체인에 거래를 브로드캐스팅하는 단계,
    상기 거래는,
    i) 적어도 하나의 UTXO, 그리고
    ii) 상기 계약이 저장된 위치를 나타내는 식별자를 포함하는 메타데이터를 포함하고,
    (c) 아래에 의해 계약을 갱신 또는 연장하는 단계를 포함하는 방법:
    상기 계약에 연관된 이전 키에 관한 데이터를 사용하여 새로운 키를 생성하는 것,
    상기 새로운 키, 상기 계약의 위치 및 상기 계약의 해시를 포함하는 스크립트를 생성하는 것, 그리고
    상기 스크립트에 통화량을 지불하는 것.
  2. 제1항에 있어서,
    상기 거래는, 결정성 리딤 스크립트(redeem script) 주소를 더 포함하고,
    여기서, 상기 리딤 스크립트 주소는 페이 투 스크립트 해시(P2SH) 주소인 방법.
  3. 제2항에 있어서,
    상기 출력(UTXO)을 소비하기 위해 블록체인에 추가 거래를 브로드캐스트하여 상기 계약을 종결하는 단계를 더 포함하는 방법.
  4. 제1항 내지 제3항 중 어느 하나에 있어서,
    상기 추가 거래는,
    상기 출력(UTXO)인 입력, 그리고
    서명, 상기 메타데이터 및 공개키를 포함하는 해제 스크립트를 포함하는 방법.
  5. 제1항 내지 제4항 중 어느 하나에 있어서,
    상기 계약은,
    i) 적어도 하나의 조건, 그리고
    ii) 상기 조건의 평가에 따라 수행이 달라지는 적어도 하나의 실행(action)을 포함하는 방법.
  6. 제1항 내지 제5항 중 어느 하나에 있어서,
    상기 메타데이터는,
    i) 컴퓨터 기반 저장소에 저장된 상기 계약의 주소 표현 또는 주소, 및/또는
    ii) 상기 계약의 해시를 포함하는 방법.
  7. 제1항 내지 제6항 중 어느 하나에 있어서,
    상기 미사용 거래 UTXO가 상기 블록체인에 대한 미사용 거래 출력 목록에 있는지 결정하는 것에 의해 상기 계약이 종결되었는지 여부를 확인하는 단계를 포함하는 방법.
  8. 제1항 내지 제7항 중 어느 하나에 있어서,
    상기 계약은,
    분산 해시 테이블(DHT)에 저장되는 방법.
  9. 제1항 내지 제8항 중 어느 하나에 있어서,
    명시된 날짜 및/또는 시간에서 상기 출력을 소비하는 명령어를 포함하는 상기 블록체인에 거래를 브로드캐스팅하고,
    상기 명령어는,
    CheckLockTimeVerify 명령어인 방법.
  10. 제1항 내지 제9항 중 어느 하나에 있어서,
    상기 계약의 내용의 일부 또는 전부에 대한 접근은 적어도 하나의 지정된 권한 당사자로 제한되는 방법.
  11. 제1항 내지 제10항 중 어느 하나에 있어서,
    상기 계약은,
    상기 계약을 이행하기 위한 결정성 유한 오토머턴(DFA)을 포함하는 방법.
  12. 제11항에 있어서,
    상기 결정성 유한 오토머턴은,
    부호화 스키마(codification scheme)를 이용하여 정의되는 방법.
  13. 제11항 또는 제12항에 있어서,
    상기 결정성 유한 오토머턴은,
    i) 적어도 하나의 블록체인 거래, 바람직하게는 스크립팅 언어를 이용하여,
    ii) 상기 블록체인의 상태를 모니터링하도록 구성된 컴퓨팅 에이전트(agent), 및/또는
    디지털 지갑에 대한 명령어 세트를 이용하여 구현되는 방법.
  14. 계약의 이행 및/또는 가시성을 제어하는 컴퓨터 구현 방법에 있어서,
    (a) 컴퓨터 기반 저장소에 계약을 저장하는 단계,
    (b) 블록체인에 거래를 브로드캐스팅하는 단계,
    상기 거래는,
    i) 적어도 하나의 UTXO, 그리고
    ii) 상기 계약이 저장된 위치를 나타내는 식별자를 포함하는 메타데이터를 포함하고,
    (c) 상기 계약으로부터 파생된 서브-계약을 생성하는 단계를 포함하고,
    여기서, 상기 서브 계약은, 결정성 주소(deterministic address)와 연관되거나,
    iii) 시드를 이용하여 파생된 새로운 공개키를 이용하는 것,
    iv) 상기 계약에 대한 참조로 상기 저장소에 서브-계약을 저장하고, 상기 참조를 포함하는 스크립트를 포함하는 상기 블록체인에 거래를 브로드캐스팅하는 것, 및/또는
    v) 상기 기존 계약의 상기 메타데이터에 상기 서브-계약에 대한 참조를 추가하는 것에 의해 생성되는 방법.
  15. 제14항에 있어서,
    상기 거래는, 결정성 리딤 스크립트(redeem script) 주소를 더 포함하고,
    여기서, 상기 리딤 스크립트 주소는, 페이 투 스크립트 해시(P2SH) 주소인 방법.
  16. 제15항에 있어서,
    상기 출력(UTXO)을 소비하기 위해 상기 블록체인에 추가 거래를 브로드캐스팅함으로써 상기 계약을 완료하는 단계를 더 포함하는 방법.
  17. 제14항 내지 제16항 중 어느 하나에 있어서,
    상기 추가 거래는,
    상기 출력(UTXO)인 입력, 그리고
    서명, 상기 메타데이터 및 공개키를 포함하는 해제 스크립트를 포함하는 방법.
  18. 제14항 내지 제17항 중 어느 하나에 있어서,
    상기 계약은,
    i) 적어도 하나의 조건, 그리고
    ii) 상기 조건의 평가에 따라 수행이 달라지는 적어도 하나의 실행(action)을 포함하는 방법.
  19. 제14 내지 제18항 중 어느 하나에 있어서,
    상기 메타데이터는,
    i) 컴퓨터 기반 저장소에 저장된 상기 계약의 주소 표현 또는 주소, 및/또는
    ii) 상기 계약의 해시를 포함하는 방법.
  20. 제14항 내지 제19항 중 어느 하나에 있어서,
    상기 미사용 거래 UTXO가 상기 블록체인에 대한 미사용 거래 출력 목록에 있는지 결정하는 것에 의해 상기 계약이 종결되었는지 여부를 확인하는 단계를 포함하는 방법.
  21. 제14항 내지 제20항 중 어느 하나에 있어서,
    상기 계약은,
    분산 해시 테이블(DHT)에 저장되는 방법.
  22. 제14항 내지 제21항 중 어느 하나에 있어서,
    명시된 날짜 및/또는 시간에서 상기 출력을 소비하는 명령어를 포함하는 상기 블록체인에 거래를 브로드캐스팅하고,
    여기서, 상기 명령어는,
    CheckLockTimeVerify 명령어인 방법.
  23. 제14항 내지 제22항 중 어느 하나에 있어서,
    상기 계약의 내용의 일부 또는 전부에 대한 접근은 적어도 하나의 지정된 권한 당사자로 제한되는 방법.
  24. 제14항 내지 제23항 중 어느 하나에 있어서,
    상기 계약은,
    상기 계약을 이행하기 위한 결정성 유한 오토머턴(DFA)을 포함하는 방법.
  25. 제24항에 있어서,
    상기 결정성 유한 오토머턴은,
    부호화 스키마(codification scheme)를 이용하여 정의되는 방법.
  26. 제24항 또는 제25항에 있어서,
    상기 결정성 유한 오토머턴은,
    i) 적어도 하나의 블록체인 거래, 바람직하게는 스크립팅 언어를 이용하여,
    ii) 상기 블록체인의 상태를 모니터링하도록 구성된 컴퓨팅 에이전트(agent), 및/또는
    디지털 지갑에 대한 명령어 세트를 이용하여 구현되는 방법.
  27. 제1항 내지 제26항 중 어느 하나의 방법을 수행하도록 구성되는 시스템.
KR1020187027478A 2016-02-23 2017-02-16 블록체인 집행의 스마트 계약을 위한 레지스트리 및 자동화 관리 방법 KR101987692B1 (ko)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
GB1603125.4 2016-02-23
GBGB1603125.4A GB201603125D0 (en) 2016-02-23 2016-02-23 Universal tokenisation system for blockchain based cryptocurrencies
GB1603117.1 2016-02-23
GBGB1603117.1A GB201603117D0 (en) 2016-02-23 2016-02-23 Determining a common secret for two blockchain nodes for the secure exchange of information
GBGB1603114.8A GB201603114D0 (en) 2016-02-23 2016-02-23 Agent-based turing complete transactions integrating feedback within a blockchain system
GB1603114.8 2016-02-23
GBGB1603123.9A GB201603123D0 (en) 2016-02-23 2016-02-23 P2P cryptocurrency exchange with tokenisation
GB1603123.9 2016-02-23
GB201605571 2016-04-01
GB1605571.7 2016-04-01
GB1619301.3 2016-11-15
GB201619301 2016-11-15
PCT/IB2017/050865 WO2017145019A1 (en) 2016-02-23 2017-02-16 Registry and automated management method for blockchain-enforced smart contracts

Publications (2)

Publication Number Publication Date
KR20180112061A true KR20180112061A (ko) 2018-10-11
KR101987692B1 KR101987692B1 (ko) 2019-09-26

Family

ID=58213272

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187027478A KR101987692B1 (ko) 2016-02-23 2017-02-16 블록체인 집행의 스마트 계약을 위한 레지스트리 및 자동화 관리 방법

Country Status (20)

Country Link
US (3) US11120437B2 (ko)
EP (1) EP3257191B1 (ko)
JP (1) JP6511201B1 (ko)
KR (1) KR101987692B1 (ko)
CN (2) CN112686653B (ko)
AU (1) AU2017223136B2 (ko)
BR (1) BR112018016815A2 (ko)
CA (2) CA3015569C (ko)
DK (1) DK3257191T3 (ko)
EA (1) EA201891827A1 (ko)
ES (1) ES2680851T3 (ko)
GB (1) GB2562623A (ko)
IL (2) IL278834B2 (ko)
LT (1) LT3257191T (ko)
MX (1) MX2018010057A (ko)
PL (1) PL3257191T3 (ko)
SG (1) SG11201806781SA (ko)
SI (1) SI3257191T1 (ko)
TW (2) TWI817232B (ko)
WO (1) WO2017145019A1 (ko)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102095681B1 (ko) * 2019-09-03 2020-03-31 주식회사 에이콘이즈 블록체인 기반 로보어드바이저 수험 학습 시스템
WO2020080590A1 (ko) * 2018-10-15 2020-04-23 주식회사 모카테크 블록체인 기반의 기업투자 시스템 및 그 제어방법
KR20200044363A (ko) * 2018-10-19 2020-04-29 빅픽처랩 주식회사 블록체인 기반 신뢰도 정보 관리방법
KR20200047261A (ko) * 2018-10-23 2020-05-07 박기업 블록체인 기반의 콘텐츠 공유창작 서버, 콘텐츠 배급서버 및 이를 포함하는 시스템
KR102118715B1 (ko) 2019-04-25 2020-06-03 넷마블 주식회사 블록체인을 이용한 자동 송금
KR20200067116A (ko) * 2018-11-30 2020-06-11 알리바바 그룹 홀딩 리미티드 탈중앙화 결정을 사용하는 블록체인 스마트 계약 업데이트
WO2020145591A1 (ko) * 2019-01-08 2020-07-16 주식회사 에치에프알 자연 언어 기반 블록 체인 스마트 계약 생성방법 및 그를 위한 장치
KR20200086224A (ko) * 2019-01-08 2020-07-16 주식회사 에치에프알 자연 언어 기반 블록 체인 스마트 계약 생성방법 및 그를 위한 장치
KR20200101512A (ko) * 2019-01-30 2020-08-28 펜타시큐리티시스템 주식회사 블록체인을 이용한 빅데이터 공유 방법 및 장치
KR20200108757A (ko) * 2019-03-11 2020-09-21 순천향대학교 산학협력단 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 xgs 주입 방법
KR102160915B1 (ko) * 2019-10-08 2020-10-05 (주)드림시큐리티 무매체 신원 확인을 통한 상품 구매 서비스 제공 장치 및 방법
KR20200125534A (ko) 2020-05-28 2020-11-04 넷마블 주식회사 블록체인을 이용한 자동 송금
KR20210065852A (ko) * 2019-11-27 2021-06-04 한국전자통신연구원 정책기반 스마트 계약을 생성하기 위한 방법 및 그 장치
KR20210074081A (ko) * 2019-12-11 2021-06-21 두나무 주식회사 서로 다른 블록체인들 사이의 토큰 전송 방법, 언스펜트 집합 재구성 방법 및 이를 위한 장치
US11620722B2 (en) 2019-11-27 2023-04-04 Electronics And Telecommunications Research Institute Method and apparatus of generating policy-based smart contract
KR102590471B1 (ko) 2023-01-31 2023-10-19 주식회사 셀디코리아 블록체인을 기반으로 하는 유통거래 관리시스템 및 이를 이용한 방법

Families Citing this family (193)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10068228B1 (en) 2013-06-28 2018-09-04 Winklevoss Ip, Llc Systems and methods for storing digital math-based assets using a secure portal
US9892460B1 (en) 2013-06-28 2018-02-13 Winklevoss Ip, Llc Systems, methods, and program products for operating exchange traded products holding digital math-based assets
US10354325B1 (en) 2013-06-28 2019-07-16 Winklevoss Ip, Llc Computer-generated graphical user interface
US10521775B2 (en) 2016-04-18 2019-12-31 R3 Ltd. Secure processing of electronic transactions by a decentralized, distributed ledger system
CN116911835A (zh) * 2016-07-29 2023-10-20 区块链控股有限公司 区块链实现的方法和***
US10460118B2 (en) * 2016-08-30 2019-10-29 Workday, Inc. Secure storage audit verification system
US10185550B2 (en) 2016-09-28 2019-01-22 Mcafee, Inc. Device-driven auto-recovery using multiple recovery sources
EP3552343B1 (en) * 2016-12-08 2022-03-23 Telefonaktiebolaget LM Ericsson (PUBL) Method and apparatus for creating a finite blockchain
US10715331B2 (en) * 2016-12-28 2020-07-14 MasterCard International Incorported Method and system for providing validated, auditable, and immutable inputs to a smart contract
US11296935B2 (en) 2016-12-30 2022-04-05 Intel Corporation Service provision to IoT devices
US10419225B2 (en) 2017-01-30 2019-09-17 Factom, Inc. Validating documents via blockchain
US10411897B2 (en) 2017-02-17 2019-09-10 Factom, Inc. Secret sharing via blockchains
US11501365B1 (en) 2017-02-17 2022-11-15 State Farm Mutual Automobile Insurance Company Blockchain systems and methods for managing property loan information
CA3055210A1 (en) 2017-03-07 2018-09-13 Mastercard International Incorporated Method and system for recording point to point transaction processing
US10817873B2 (en) 2017-03-22 2020-10-27 Factom, Inc. Auditing of electronic documents
US11436597B1 (en) * 2017-05-01 2022-09-06 Wells Fargo Bank, N.A. Biometrics-based e-signatures for pre-authorization and acceptance transfer
US11165589B2 (en) * 2017-05-11 2021-11-02 Shapeshift Ag Trusted agent blockchain oracle
US10541886B2 (en) * 2017-05-24 2020-01-21 International Business Machines Corporation Decentralized change management based on peer devices using a blockchain
GB201709760D0 (en) * 2017-06-19 2017-08-02 Nchain Holdings Ltd Computer-Implemented system and method
US10140392B1 (en) 2017-06-29 2018-11-27 Best Apps, Llc Computer aided systems and methods for creating custom products
US11362834B2 (en) * 2017-07-24 2022-06-14 Comcast Cable Communications, Llc Systems and methods for managing digital rights
GB201712185D0 (en) * 2017-07-28 2017-09-13 Eygs Llp Apparatus and method for locating a mobile asset
US11978043B2 (en) 2017-09-08 2024-05-07 Nchain Licensing Ag Time lock technique for securing a resource on a blockchain
US20190080402A1 (en) * 2017-09-11 2019-03-14 Templum, Llc System and method for providing a regulatory-compliant token
EP3669282B1 (en) * 2017-09-20 2022-11-02 Samsung Electronics Co., Ltd. Method and apparatus for managing a service request in a blockchain network
US20190102833A1 (en) * 2017-09-29 2019-04-04 Laura Long Variable rate system
US10963400B2 (en) * 2017-10-11 2021-03-30 International Business Machines Corporation Smart contract creation and monitoring for event identification in a blockchain
US20190114706A1 (en) * 2017-10-17 2019-04-18 SALT Lending Holdings, Inc. Blockchain oracle for managing loans collateralized by digital assets
US11604890B2 (en) 2017-10-20 2023-03-14 Hewlett Packard Enterprise Development Lp Accessing information based on privileges
EP3698529A4 (en) * 2017-10-20 2021-04-07 Hewlett Packard Enterprise Development LP ENTITIES 'AUTHORIZATIONS TO ACCESS INFORMATION
WO2019078877A1 (en) 2017-10-20 2019-04-25 Hewlett Packard Enterprise Development Lp TRANSMITTING OR RECEIVING BLOCK CHAIN INFORMATION
US11403628B2 (en) 2017-10-20 2022-08-02 Hewlett Packard Enterprise Development Lp Authenticating and paying for services using blockchain
WO2019082146A1 (en) 2017-10-27 2019-05-02 Tata Consultancy Services Limited SYSTEM AND METHOD FOR EVENT DETERMINATION
WO2019092543A1 (en) * 2017-11-09 2019-05-16 nChain Holdings Limited System for securing verification key from alteration and verifying validity of a proof of correctness
CN107730384A (zh) * 2017-11-13 2018-02-23 深圳大学 基于区块链的艺术品交易方法及服务器、服务器端和***
US10567168B2 (en) 2017-11-16 2020-02-18 International Business Machines Corporation Blockchain transaction privacy enhancement through broadcast encryption
WO2019098895A1 (en) * 2017-11-17 2019-05-23 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for detecting digital content tampering
US11348120B2 (en) 2017-11-21 2022-05-31 International Business Machines Corporation Digital agreement management on digital twin ownership change
US11676098B2 (en) 2017-11-21 2023-06-13 International Business Machines Corporation Digital twin management in IoT systems
US11354615B2 (en) * 2017-11-21 2022-06-07 International Business Machines Corporation Blockchain-implemented digital agreement management for digital twin assets
JP2021505002A (ja) * 2017-11-30 2021-02-15 エヌチェーン ホールディングス リミテッドNchain Holdings Limited 強化されたビットコインウォレットのためのコンピュータ実装システム及び方法
TWI648680B (zh) * 2017-12-01 2019-01-21 鯨鏈科技股份有限公司 智能合約系統、合約制訂方法與電腦可讀取儲存裝置
GB201720767D0 (en) 2017-12-13 2018-01-24 Barker Trevor Computer-implemented system and method
EP3503595B1 (en) * 2017-12-19 2020-11-11 Nokia Technologies Oy Provision of location-specific user information
US10833844B2 (en) * 2017-12-20 2020-11-10 International Business Machines Corporation Blockchain lifecycle management
DE102017223522A1 (de) * 2017-12-21 2019-06-27 Siemens Aktiengesellschaft Verfahren zur Erstellung und Handhabung eines Smart Contracts
WO2019134005A1 (en) * 2017-12-26 2019-07-04 Cooner Jason Architecture, systems, and methods used in carbon credit and block chain systems
CN109978477B (zh) * 2017-12-27 2022-12-23 现代财富控股有限公司 基于区块链的智能合约版本控管***及其方法
US10817852B2 (en) 2018-01-12 2020-10-27 Bank Of America Corporation System for executing, securing, and non-repudiation of pooled conditional smart contracts over distributed blockchain network
US10298585B1 (en) * 2018-01-26 2019-05-21 Accenture Global Solutions Limited Blockchain interoperability
GB201802148D0 (en) * 2018-02-09 2018-03-28 Nchain Holdings Ltd Computer-implemented system and method
US10373129B1 (en) 2018-03-05 2019-08-06 Winklevoss Ip, Llc System, method and program product for generating and utilizing stable value digital assets
US10438290B1 (en) 2018-03-05 2019-10-08 Winklevoss Ip, Llc System, method and program product for generating and utilizing stable value digital assets
US20190251556A1 (en) * 2018-02-12 2019-08-15 Bank Of America Corporation Distributed ledger on-boarding system for standby guarantee resources
US10373158B1 (en) 2018-02-12 2019-08-06 Winklevoss Ip, Llc System, method and program product for modifying a supply of stable value digital asset tokens
US11475442B1 (en) 2018-02-12 2022-10-18 Gemini Ip, Llc System, method and program product for modifying a supply of stable value digital asset tokens
US11200569B1 (en) 2018-02-12 2021-12-14 Winklevoss Ip, Llc System, method and program product for making payments using fiat-backed digital assets
US11909860B1 (en) 2018-02-12 2024-02-20 Gemini Ip, Llc Systems, methods, and program products for loaning digital assets and for depositing, holding and/or distributing collateral as a token in the form of digital assets on an underlying blockchain
US11308487B1 (en) 2018-02-12 2022-04-19 Gemini Ip, Llc System, method and program product for obtaining digital assets
US10540654B1 (en) 2018-02-12 2020-01-21 Winklevoss Ip, Llc System, method and program product for generating and utilizing stable value digital assets
CN108335206B (zh) 2018-02-14 2020-12-22 创新先进技术有限公司 资产管理方法及装置、电子设备
CN108335207B (zh) 2018-02-14 2020-08-04 阿里巴巴集团控股有限公司 资产管理方法及装置、电子设备
CN108492180B (zh) 2018-02-14 2020-11-24 创新先进技术有限公司 资产管理方法及装置、电子设备
CN108416675A (zh) 2018-02-14 2018-08-17 阿里巴巴集团控股有限公司 资产管理方法及装置、电子设备
CN108389118B (zh) 2018-02-14 2020-05-29 阿里巴巴集团控股有限公司 资产管理***、方法及装置、电子设备
EP3531362A1 (en) 2018-02-22 2019-08-28 Banco Bilbao Vizcaya Argentaria, S.A. Method for validating a voucher
CN108460596B (zh) * 2018-02-27 2020-08-25 周伟 一种基于区块链的量化值分配转移方法
US10931457B2 (en) * 2018-03-09 2021-02-23 Igt Global Solutions Corporation Systems and methods for blockchain-based digital lottery ticket generation and distribution
KR102113265B1 (ko) 2018-03-14 2020-05-20 주식회사 아이시티코리아 블록체인 기반 스마트 계약시스템 및 그 방법
US10749687B2 (en) * 2018-03-15 2020-08-18 Microsoft Technology Licensing, Llc Binding version stamp for smart contracts
US10693637B2 (en) * 2018-03-23 2020-06-23 Belavadi Nagarajaswamy Ramesh System and method for composite-key based blockchain device control
EP3550534A1 (en) * 2018-03-23 2019-10-09 Panasonic Intellectual Property Corporation of America Control method, information processing device, management system, and program
CN108712257B (zh) * 2018-04-03 2020-04-17 阿里巴巴集团控股有限公司 跨区块链的认证方法及装置、电子设备
US11797988B2 (en) 2018-04-19 2023-10-24 Vechain Foundation Limited Transaction processing
GB201806448D0 (en) 2018-04-20 2018-06-06 Nchain Holdings Ltd Computer-implemented methods and systems
US20190325494A1 (en) 2018-04-23 2019-10-24 Bank Of America Corporation Wearable device coding for customer application and transitioning
US11563557B2 (en) * 2018-04-24 2023-01-24 International Business Machines Corporation Document transfer processing for blockchains
US11132707B2 (en) 2018-04-25 2021-09-28 At&T Intellectual Property I, L.P. Blockchain solution for an automated advertising marketplace
US20210272017A1 (en) * 2018-04-25 2021-09-02 Samsung Electronics Co., Ltd. Machine learning on a blockchain
JP2021522706A (ja) * 2018-04-27 2021-08-30 エヌチェーン ホールディングス リミテッドNchain Holdings Limited ブロックチェーンネットワークの分割
US10951398B2 (en) * 2018-05-03 2021-03-16 Avaya Inc. Regulating communication comprising access to protected data
CN108632045A (zh) 2018-05-10 2018-10-09 阿里巴巴集团控股有限公司 一种区块链数据处理方法、装置、处理设备及***
CN108647968A (zh) 2018-05-10 2018-10-12 阿里巴巴集团控股有限公司 一种区块链数据处理方法、装置、处理设备及***
CN108595709B (zh) * 2018-05-10 2020-02-18 阿里巴巴集团控股有限公司 基于区块链的音乐原创性分析方法和装置
CN108667618B (zh) 2018-05-10 2020-07-03 阿里巴巴集团控股有限公司 区块链成员管理的数据处理方法、装置、服务器及***
CN111898148A (zh) * 2018-05-11 2020-11-06 创新先进技术有限公司 一种基于区块链的信息监管方法及装置
US11170366B2 (en) 2018-05-18 2021-11-09 Inveniam Capital Partners, Inc. Private blockchain services
CN108681943B (zh) * 2018-05-18 2022-07-12 百度在线网络技术(北京)有限公司 一种区块链网络的数据处理方法、装置、设备及存储介质
US10783164B2 (en) 2018-05-18 2020-09-22 Factom, Inc. Import and export in blockchain environments
US11134120B2 (en) 2018-05-18 2021-09-28 Inveniam Capital Partners, Inc. Load balancing in blockchain environments
CN108805707A (zh) * 2018-05-21 2018-11-13 阿里巴巴集团控股有限公司 基于区块链的作品版权收益分配方法和装置
US11184171B2 (en) 2018-05-24 2021-11-23 Walmart Apollo, Llc System and methods for multi-variant tracking
US20190363890A1 (en) 2018-05-24 2019-11-28 Walmart Apollo, Llc Nested Blockchain System
CN108876572A (zh) 2018-05-29 2018-11-23 阿里巴巴集团控股有限公司 区块链交易的对账方法及装置、电子设备
US11423398B1 (en) * 2018-05-29 2022-08-23 Block, Inc. Recommending conditions for blockchain-enforced contracts
CN108898483A (zh) * 2018-05-29 2018-11-27 阿里巴巴集团控股有限公司 区块链资产的发布、兑换方法及其装置、电子设备
CA3101638C (en) 2018-06-04 2023-03-14 Noah RAFALKO Telecommunication system and method for settling session transactions
US10834062B2 (en) * 2018-06-20 2020-11-10 International Business Machines Corporation Unlinking ownership of successive asset transfers on a blockchain
CN108846494A (zh) * 2018-06-22 2018-11-20 四川华翼共享区块链科技有限公司 一种基于区块链的一体化云端机票预定***
WO2020003131A1 (en) * 2018-06-25 2020-01-02 Blocktest Global Systems and methods to automatically evaluate blockchain-based solution performance
US11068464B2 (en) 2018-06-26 2021-07-20 At&T Intellectual Property I, L.P. Cyber intelligence system and method
US20200013025A1 (en) * 2018-07-06 2020-01-09 International Business Machines Corporation Conditional deferred transactions for blockchain
GB201811263D0 (en) * 2018-07-10 2018-08-29 Netmaster Solutions Ltd A method and system for managing digital using a blockchain
CN109033855B (zh) * 2018-07-18 2020-02-11 腾讯科技(深圳)有限公司 一种基于区块链的数据传输方法、装置及存储介质
US11295296B2 (en) 2018-08-06 2022-04-05 Inveniam Capital Partners, Inc. Digital contracts in blockchain environments
EP3608866A1 (en) 2018-08-06 2020-02-12 Ernst & Young GmbH Wirtschaftsprüfungsgesellschaft System and method of determining tax liability of entity
US11989208B2 (en) 2018-08-06 2024-05-21 Inveniam Capital Partners, Inc. Transactional sharding of blockchain transactions
US20210174432A1 (en) 2018-08-07 2021-06-10 Perpetual Altruism Limited Computer implemented method and system for updating a database system for a blockchain version control system; computer implemented methods of auctioning an item for a seller, and computer implemented method of updating a smart contract
SG11202100708WA (en) 2018-08-10 2021-02-25 Tzero Group Inc Self-enforcing security token implementing smart-contract-based compliance rules consulting smart-contract-based global registry of investors
US11216802B2 (en) 2018-08-10 2022-01-04 Tzero Ip, Llc Self-enforcing security token implementing smart-contract-based compliance rules consulting smart-contract-based global registry of investors
TWI674543B (zh) * 2018-08-17 2019-10-11 郭谷彰 區塊鏈廣告投放與評估方法
WO2020046786A1 (en) * 2018-08-27 2020-03-05 Fireblocks Ltd. System and method for securing crypto-asset transactions
TWI713892B (zh) * 2018-09-06 2020-12-21 周詠珵 基於區塊鏈技術的文章發佈方法與系統
US10891823B2 (en) * 2018-09-13 2021-01-12 Jcm American Corporation Network architecture for gaming industry accounting
CN109272335A (zh) * 2018-09-17 2019-01-25 深圳市元征科技股份有限公司 一种智能合约管理方法、***、设备及计算机存储介质
CN112740242A (zh) * 2018-09-24 2021-04-30 松下知识产权经营株式会社 社区定义空间
US11803664B2 (en) * 2018-10-09 2023-10-31 Ebay Inc. Distributed application architectures using blockchain and distributed file systems
CN109583230A (zh) 2018-10-31 2019-04-05 阿里巴巴集团控股有限公司 基于区块链的数据存证方法及装置、电子设备
KR102178583B1 (ko) * 2018-11-13 2020-11-13 주식회사 싸이투코드 디지털 컨텐츠 원본 확인키를 이용한 블록체인 방식의 계약 단말 및 방법
CN111614656B (zh) 2018-11-16 2021-12-24 创新先进技术有限公司 跨链数据的可信管理方法及装置、电子设备
WO2019072283A2 (en) 2018-11-27 2019-04-18 Alibaba Group Holding Limited SYSTEM AND METHOD FOR ENHANCING THE SECURITY OF AN INTELLIGENT CONTRACT ON A BLOCK CHAIN
US11138597B2 (en) 2018-11-27 2021-10-05 Advanced New Technologies Co., Ltd. System and method for improving security of smart contract on blockchain
SG11201903527QA (en) * 2018-11-30 2019-05-30 Alibaba Group Holding Ltd Platform for atomic transfer of smart assets within blockchain networks
KR102121159B1 (ko) * 2018-12-13 2020-06-10 알리바바 그룹 홀딩 리미티드 이벤트-구동 블록체인 워크플로우 프로세싱
US11720545B2 (en) 2018-12-19 2023-08-08 International Business Machines Corporation Optimization of chaincode statements
US11348101B2 (en) 2018-12-19 2022-05-31 International Business Machines Corporation Post-settlement processes
WO2020133069A1 (zh) * 2018-12-27 2020-07-02 合肥达朴汇联科技有限公司 区块链的数据处理方法和装置
US20200211092A1 (en) * 2018-12-31 2020-07-02 Paypal, Inc. Adaptive product listing using blockchain inventory and smart contracts
CN113853578A (zh) * 2019-01-18 2021-12-28 泽乌科技公司 用于在区块链智能合约中生成随机数的方法
US11138600B2 (en) 2019-02-05 2021-10-05 Capital One Services, Llc Smart contract regulation
CN111553990A (zh) * 2019-02-11 2020-08-18 阿里巴巴集团控股有限公司 存储验票记录的方法、验票终端及***
US11010394B2 (en) * 2019-02-15 2021-05-18 Drfirst.Com, Inc. Efficient access of chainable records
US11699203B2 (en) 2019-02-20 2023-07-11 Aon Risk Services, Inc. Of Maryland Digital property authentication and management system
US11182866B2 (en) 2019-02-20 2021-11-23 Aon Risk Services, Inc. Of Maryland Digital property authentication and management system
US10425230B1 (en) * 2019-03-01 2019-09-24 Capital One Services, Llc Identity and electronic signature verification in blockchain
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
CN109768866B (zh) * 2019-03-05 2021-03-30 同济大学 基于椭圆曲线数字签名的区块链智能合约不可拆分签名方法
CN109768867A (zh) * 2019-03-08 2019-05-17 上海一健事信息科技有限公司 一种基于区块链技术的数据访问控制的方法
CN109921897B (zh) * 2019-03-13 2022-06-17 北京柏链基石科技有限公司 工作量证明计算的触发方法、装置、计算设备及存储介质
CN109978543B (zh) * 2019-04-03 2022-03-22 恒生电子股份有限公司 一种合同签署的方法、装置、电子设备及存储介质
US11108553B2 (en) * 2019-04-05 2021-08-31 International Business Machines Corporation Database transaction guaranteed commitment
US11537592B1 (en) 2019-04-22 2022-12-27 Wells Fargo Bank, N.A. Metadata management through blockchain technology
JP6650157B1 (ja) * 2019-05-08 2020-02-19 株式会社モールサービス 情報管理システム、情報管理方法及び情報管理プログラム
CN110084572A (zh) * 2019-05-09 2019-08-02 北京智签科技有限公司 一种基于区块链的电子合同自动履约处理方法
US11228446B2 (en) 2019-05-10 2022-01-18 Advanced New Technologies Co., Ltd. Blockchain-based reconciliation method and apparatus and electronic device
US11153621B2 (en) 2019-05-14 2021-10-19 At&T Intellectual Property I, L.P. System and method for managing dynamic pricing of media content through blockchain
GB201907344D0 (en) * 2019-05-24 2019-07-10 Nchain Holdings Ltd Multi-input transactions
CN110245518B (zh) * 2019-05-31 2024-05-17 创新先进技术有限公司 一种数据存储方法、装置及设备
CN111164594B (zh) 2019-07-02 2023-08-25 创新先进技术有限公司 用于将去中心化标识映射到真实实体的***和方法
CN111213147B (zh) 2019-07-02 2023-10-13 创新先进技术有限公司 用于基于区块链的交叉实体认证的***和方法
SG11202003757TA (en) 2019-07-02 2020-05-28 Advanced New Technologies Co Ltd System and method for issuing verifiable claims
SG11202003792QA (en) 2019-07-02 2020-05-28 Advanced New Technologies Co Ltd System and method for verifying verifiable claims
CN110471984B (zh) 2019-07-15 2020-08-25 阿里巴巴集团控股有限公司 基于区块链的业务处理方法及装置、电子设备
US10937096B2 (en) 2019-07-15 2021-03-02 Advanced New Technologies Co., Ltd. Transaction processing in a service blockchain
TWI725493B (zh) * 2019-07-26 2021-04-21 撼訊科技股份有限公司 供智能合約使用的安全運算系統與安全運算器
US11489854B2 (en) * 2019-07-30 2022-11-01 Nagravision S.A. Techniques for incentivized intrusion detection system
US11252166B2 (en) 2019-07-31 2022-02-15 Advanced New Technologies Co., Ltd. Providing data authorization based on blockchain
GB201912068D0 (en) 2019-08-22 2019-10-09 Nchain Holdings Ltd Computer-implemented system and method
CN110535660B (zh) * 2019-09-03 2021-11-05 杭州趣链科技有限公司 一种基于区块链的取证服务***
CA3096619A1 (en) * 2019-10-18 2021-04-18 2218716 Alberta Ltd. System and method for digitally tokenizing securities and managing subscription and distribution transactions
CN110807189B (zh) * 2019-11-15 2023-07-07 内蒙古大学 一种区块链访问控制中的权限分割方法
CN111047187B (zh) * 2019-12-12 2023-10-17 浙江大搜车软件技术有限公司 信息匹配处理方法、装置、计算机设备和存储介质
WO2021117406A1 (ja) * 2019-12-13 2021-06-17 a42株式会社 スマートコントラクトに基づいた利用権情報処理装置、利用権情報処理システム、および利用権情報処理方法
US11544252B2 (en) * 2019-12-17 2023-01-03 Akamai Technologies, Inc. High performance distributed system of record with extended transaction processing capability
CN111159197A (zh) * 2019-12-31 2020-05-15 深圳市网心科技有限公司 一种数据存储方法、装置、设备及可读存储介质
US11475453B2 (en) 2019-12-31 2022-10-18 Capital One Services, Llc System and techniques for utilizing a smart contracts library
US11444749B2 (en) 2020-01-17 2022-09-13 Inveniam Capital Partners, Inc. Separating hashing from proof-of-work in blockchain environments
CN111292190A (zh) * 2020-01-23 2020-06-16 腾讯科技(深圳)有限公司 交易生成方法、区块创建方法及相关装置、设备
CN111461813B (zh) * 2020-03-09 2023-06-20 成都商通时代数字科技有限公司 基于区块链的酒类新零售方法及***
US11301619B2 (en) 2020-03-13 2022-04-12 Zensar Technologies Limited System and method for transforming a contract into a digital contract
CN111431988B (zh) * 2020-03-19 2023-02-10 财付通支付科技有限公司 一种基于区块链的车辆信息存储方法、设备及存储介质
US11900347B2 (en) * 2020-03-27 2024-02-13 Hyland Software, Inc. Computing system for configurable off-chain storage for blockchains
US11856057B2 (en) * 2020-04-02 2023-12-26 International Business Machines Corporation Preservation of channel metadata
US11514203B2 (en) 2020-05-18 2022-11-29 Best Apps, Llc Computer aided systems and methods for creating custom products
US11481207B2 (en) 2020-05-29 2022-10-25 Santa Clara University Blockchain based secure software updates for IoT devices
GB202010177D0 (en) * 2020-07-02 2020-08-19 Nchain Holdings Ltd Electronic document signatures
US11368310B2 (en) 2020-07-11 2022-06-21 Bank Of America Corporation Data transfer between computing nodes of a distributed computing system
CN111563743B (zh) * 2020-07-15 2020-11-03 百度在线网络技术(北京)有限公司 一种区块链的转账处理方法、装置、设备和介质
US20220114578A1 (en) * 2020-10-14 2022-04-14 Blockchains, LLC Multisignature key custody, key customization, and privacy service
US11374755B1 (en) 2020-12-08 2022-06-28 International Business Machines Corporation Entangled token structure for blockchain networks
US11568393B2 (en) 2020-12-23 2023-01-31 Paypal, Inc. Methods and systems for transferring unspent transaction output (UTXO) tokens in a blockchain network
US11449938B2 (en) 2020-12-23 2022-09-20 Paypal, Inc. Methods and systems for tracking unspent transaction output (UTXO) tokens in a distributed ledger technology-based network
US12008526B2 (en) 2021-03-26 2024-06-11 Inveniam Capital Partners, Inc. Computer system and method for programmatic collateralization services
CN113094727A (zh) * 2021-04-12 2021-07-09 浙江永旗区块链科技有限公司 一种区块链节点及其数据传输方法
JP7361994B2 (ja) * 2021-05-14 2023-10-16 ゴールドマン サックス アンド カンパニー エルエルシー トークンに対する併合請求を伴うブロックチェーン
CN113220786B (zh) * 2021-05-25 2022-05-24 杭州复杂美科技有限公司 物流存证方法、计算机设备和存储介质
US12007972B2 (en) 2021-06-19 2024-06-11 Inveniam Capital Partners, Inc. Systems and methods for processing blockchain transactions
US20230079431A1 (en) * 2021-09-13 2023-03-16 M-One Inc. Solid modeling and non-fungible virtual and anti-counterfeiting integration system
WO2023137484A1 (en) * 2022-01-17 2023-07-20 Vital Eco Technology, Llc Sustainability management systems and methods
US20230267543A1 (en) * 2022-02-24 2023-08-24 SKUewy, LLC Trackable product interest system and method
CN114614991B (zh) * 2022-03-11 2023-12-26 国网浙江省电力有限公司电力科学研究院 适用于小微负荷聚合响应的区块链自动结算方法及***
WO2023205699A2 (en) * 2022-04-19 2023-10-26 Cyber Secure Mobile Payments, Inc. Systems and methods for attributing value to objects and user incentive points using blockchain monetization techniques
WO2024072730A1 (en) * 2022-09-30 2024-04-04 Mastercard International Incorporated Method and system for blockchain to apply sanctions

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050089802A (ko) * 2002-12-21 2005-09-08 인터내셔널 비지네스 머신즈 코포레이션 조건부 전자 서명의 생성 방법, 조건부 전자 서명의 검증방법, 상태 정보 배포 방법 및 이를 수행하는 데이터 처리장치 및 컴퓨터 프로그램
KR20080018182A (ko) * 2005-06-28 2008-02-27 마이크로소프트 코포레이션 보안 해시 함수의 강화
US20150213433A1 (en) 2014-01-28 2015-07-30 Apple Inc. Secure provisioning of credentials on an electronic device using elliptic curve cryptography
KR20180114939A (ko) * 2016-02-23 2018-10-19 엔체인 홀딩스 리미티드 블록 체인을 통해 자산 관련 활동을 제어하는 시스템 및 방법

Family Cites Families (395)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE187588T1 (de) 1993-08-17 1999-12-15 R3 Security Engineering Ag Verfahren zur digitalen unterschrift und verfahren zur schlüsselübereinkunft
US5535276A (en) 1994-11-09 1996-07-09 Bell Atlantic Network Services, Inc. Yaksha, an improved system and method for securing communications using split private key asymmetric cryptography
WO1996004602A1 (en) 1994-07-29 1996-02-15 Certicom Corp. Elliptic curve encryption systems
CN1912885B (zh) 1995-02-13 2010-12-22 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的***和方法
US6785813B1 (en) 1997-11-07 2004-08-31 Certicom Corp. Key agreement and transport protocol with implicit signatures
AU5266596A (en) 1995-04-21 1996-11-07 Certicom Corp. Method for signature and session key generation
US5761305A (en) 1995-04-21 1998-06-02 Certicom Corporation Key agreement and transport protocol with implicit signatures
CA2176972C (en) 1995-05-17 2008-11-25 Scott A. Vanstone Key agreement and transport protocol with implicit signatures
GB9510035D0 (en) 1995-05-18 1995-08-02 Cryptech Systems Inc Strengthened public key protocols
DE69638307D1 (de) 1995-06-05 2011-01-27 Cqrcert Llc Verfahren und Einrichtung zur digitalen Unterschrift in mehreren Schritten
US5999626A (en) 1996-04-16 1999-12-07 Certicom Corp. Digital signatures on a smartcard
US6078667A (en) 1996-10-10 2000-06-20 Certicom Corp. Generating unique and unpredictable values
US20010050990A1 (en) 1997-02-19 2001-12-13 Frank Wells Sudia Method for initiating a stream-oriented encrypted communication
US5920630A (en) 1997-02-25 1999-07-06 United States Of America Method of public key cryptography that includes key escrow
JP3656688B2 (ja) 1997-03-31 2005-06-08 栄司 岡本 暗号データ回復方法及び鍵登録システム
IL132961A0 (en) 1997-05-28 2001-03-19 Young Adam Lucas Auto-recoverable auto-certifiable cryptosystems
US6061449A (en) 1997-10-10 2000-05-09 General Instrument Corporation Secure processor with external memory using block chaining and block re-ordering
JPH11239124A (ja) 1998-02-23 1999-08-31 Nippon Telegr & Teleph Corp <Ntt> 秘密鍵回復方法および装置
CA2235359C (en) 1998-03-23 2012-04-10 Certicom Corp. Implicit certificate scheme with ca chaining
JPH11289324A (ja) 1998-04-03 1999-10-19 Matsushita Electric Ind Co Ltd 送受信装置および送受信方法
DE19822685A1 (de) 1998-05-20 2000-01-27 Deutsche Telekom Ag Verfahren zur gesicherten Übertragung von Nachrichten
US10326798B2 (en) 1998-07-16 2019-06-18 Grid7, LLC System and method for secure data transmission and storage
US6286098B1 (en) 1998-08-28 2001-09-04 Sap Aktiengesellschaft System and method for encrypting audit information in network applications
JP3796993B2 (ja) 1998-12-22 2006-07-12 株式会社日立製作所 楕円曲線暗号実行方法及び装置並びに記録媒体
US6490352B1 (en) 1999-03-05 2002-12-03 Richard Schroeppel Cryptographic elliptic curve apparatus and method
US7095851B1 (en) 1999-03-11 2006-08-22 Tecsec, Inc. Voice and data encryption method using a cryptographic key split combiner
CA2267395C (en) 1999-03-30 2002-07-09 Ibm Canada Limited-Ibm Canada Limitee Method and system for managing keys for encrypted data
US20020194081A1 (en) 1999-04-21 2002-12-19 Perkowski Thomas J. Internet-based consumer service brand marketing communication system which enables service-providers, retailers, and their respective agents and consumers to carry out service-related functions along the demand side of the retail chain in an integrated manner
US7006633B1 (en) 1999-07-16 2006-02-28 Global Encryption Standard Corporation Global encryption system
US7391865B2 (en) 1999-09-20 2008-06-24 Security First Corporation Secure data parser method and system
US6662299B1 (en) 1999-10-28 2003-12-09 Pgp Corporation Method and apparatus for reconstituting an encryption key based on multiple user responses
JP2001195479A (ja) 2000-01-07 2001-07-19 Sony Corp 独自通貨管理方法及び独自通貨管理システム、独自通貨と既存通貨間の為替レート算出方法及び為替レート算出システム、既存通貨の重み決定方法及び重み決定システム、プログラム記憶媒体、並びに、データ処理システム
CA2304433A1 (en) 2000-04-05 2001-10-05 Cloakware Corporation General purpose access recovery scheme
US20050071283A1 (en) 2000-05-25 2005-03-31 Randle William M. Quality assured secure and coordinated transmission of separate image and data records representing a transaction
US6669564B1 (en) 2000-06-27 2003-12-30 Electronic Arts Inc. Episodic delivery of content
JP2002026895A (ja) 2000-07-12 2002-01-25 Hagiwara Sys-Com:Kk 携帯端末用プリンタおよびプリントコンテンツ配信システム
AU2001281122A1 (en) 2000-08-05 2002-02-18 Okraa, Llc System and method for aligning data
US7181017B1 (en) 2001-03-23 2007-02-20 David Felsher System and method for secure three-party communications
US7257844B2 (en) 2001-07-31 2007-08-14 Marvell International Ltd. System and method for enhanced piracy protection in a wireless personal communication device
EP1425874B1 (en) 2001-08-13 2010-04-21 Board Of Trustees Of The Leland Stanford Junior University Systems and methods for identity-based encryption and related cryptographic techniques
US7187772B2 (en) 2001-08-31 2007-03-06 Hewlett-Packard Development Company, L.P. Anonymous transactions based on distributed processing
US20030046210A1 (en) 2001-08-31 2003-03-06 Vora Poorvi L. Anonymous acquisition of digital products based on secret splitting
US20030188153A1 (en) 2002-04-02 2003-10-02 Demoff Jeff S. System and method for mirroring data using a server
US7725730B2 (en) 2002-08-09 2010-05-25 Emc Corporation Cryptographic methods and apparatus for secure authentication
JP2004192587A (ja) 2002-12-07 2004-07-08 Gaitame.Com Co Ltd 定期積立型外国為替保証金取引システム
JP4505232B2 (ja) 2003-01-24 2010-07-21 中国電力株式会社 取引仲介システムおよび取引仲介方法
FR2850479B1 (fr) 2003-01-24 2005-04-29 France Telecom Procede cryptographique a cle publique pour la protection d'une puce contre la fraude
JP2004302818A (ja) 2003-03-31 2004-10-28 Clarion Co Ltd ハードディスク装置、情報処理方法及びプログラム
DE10315756A1 (de) 2003-04-04 2004-11-11 Technische Universität Darmstadt Ein dezentrales, token-basiertes Accountingsystem für verteilte, autonome Systeme
JP2005004048A (ja) 2003-06-13 2005-01-06 Oki Electric Ind Co Ltd 鍵拡張装置、鍵拡張方法および鍵拡張プログラム
ITRM20030341A1 (it) 2003-07-14 2005-01-15 Michele Giudilli Metodo per l'addebito dei costi di fruizione di contenuti
US7499544B2 (en) 2003-11-03 2009-03-03 Microsoft Corporation Use of isogenies for design of cryptosystems
US8139770B2 (en) 2003-12-23 2012-03-20 Wells Fargo Bank, N.A. Cryptographic key backup and escrow system
EP1548976B1 (en) * 2003-12-24 2007-08-22 STMicroelectronics S.r.l. A message deciphering method
US8050409B2 (en) 2004-04-02 2011-11-01 University Of Cincinnati Threshold and identity-based key management and authentication for wireless ad hoc networks
WO2005096542A1 (en) 2004-04-02 2005-10-13 Research In Motion Limited Deploying and provisioning wireless handheld devices
US11599873B2 (en) 2010-01-08 2023-03-07 Blackhawk Network, Inc. Systems and methods for proxy card and/or wallet redemption card transactions
CN1969501B (zh) 2004-04-30 2010-08-04 捷讯研究有限公司 安全地产生共享密钥的***和方法
JP4570626B2 (ja) 2004-05-03 2010-10-27 リサーチ イン モーション リミテッド 再生可能なセッションキーを生成するためのシステムおよび方法
US20060034494A1 (en) 2004-08-11 2006-02-16 National Background Data, Llc Personal identity data management
KR20070051338A (ko) 2004-08-19 2007-05-17 토마스 메레디쓰 전자 상거래를 위한 현금 및 현금 등가물을 제공하는 방법
US20060156013A1 (en) 2005-01-07 2006-07-13 Beeson Curtis L Digital signature software using ephemeral private key and system
US7869593B2 (en) 2005-01-07 2011-01-11 First Data Corporation Software for providing based on shared knowledge public keys having same private key
US7593527B2 (en) 2005-01-07 2009-09-22 First Data Corporation Providing digital signature and public key based on shared knowledge
US20060161485A1 (en) 2005-01-18 2006-07-20 Meldahl Robert A Financial analysis tree software engine
US7860802B2 (en) 2005-02-01 2010-12-28 Microsoft Corporation Flexible licensing architecture in content rights management systems
US7747865B2 (en) 2005-02-10 2010-06-29 International Business Machines Corporation Method and structure for challenge-response signatures and high-performance secure Diffie-Hellman protocols
CN1838140A (zh) * 2005-03-25 2006-09-27 威盛电子股份有限公司 运用加密功能以产生信息摘要的设备及方法
JP2006293764A (ja) 2005-04-12 2006-10-26 Pioneer Electronic Corp 情報処理装置、そのシステム、その方法、そのプログラム、および、そのプログラムを記録した記録媒体
JP4825199B2 (ja) 2005-04-27 2011-11-30 パナソニック株式会社 情報セキュリティ装置及び楕円曲線演算装置
US7657459B2 (en) 2005-04-27 2010-02-02 Apple Inc. Techniques for acquiring a media season of digital media assets
US7649999B2 (en) 2005-06-08 2010-01-19 Iris Anshel Method and apparatus for establishing a key agreement protocol
JP4526458B2 (ja) 2005-07-29 2010-08-18 富士通株式会社 パケット処理装置及びパケット処理プログラム
US8190895B2 (en) 2005-08-18 2012-05-29 Microsoft Corporation Authenticated key exchange with derived ephemeral keys
JP4490352B2 (ja) 2005-08-30 2010-06-23 Kddi株式会社 Vpnサーバホスティングシステム、およびvpn構築方法
US8989390B2 (en) 2005-12-12 2015-03-24 Qualcomm Incorporated Certify and split system and method for replacing cryptographic keys
US8180047B2 (en) 2006-01-13 2012-05-15 Microsoft Corporation Trapdoor pairings
US20140129844A1 (en) 2006-01-26 2014-05-08 Unisys Corporation Storage security using cryptographic splitting
US8201233B2 (en) 2006-02-06 2012-06-12 Cisco Technology, Inc. Secure extended authentication bypass
KR100706816B1 (ko) 2006-03-10 2007-04-12 삼성전자주식회사 프로그램 속도를 향상시킬 수 있는 불휘발성 메모리 장치및 그것의 프로그램 방법
GB2436668B (en) 2006-03-28 2011-03-16 Identum Ltd Electronic data communication system
WO2007113040A1 (en) 2006-03-31 2007-10-11 International Business Machines Corporation Method and systems using identifier tags and authenticity certificates for detecting counterfeited or stolen brand objects
US7860825B2 (en) 2006-05-08 2010-12-28 Palm, Inc. Method for synchronizing software application and user data for asynchronous client-server and peer to peer computer networks
US8775319B2 (en) * 2006-05-15 2014-07-08 The Directv Group, Inc. Secure content transfer systems and methods to operate the same
US20070269040A1 (en) 2006-05-16 2007-11-22 Microsoft Corporation Cryptographic Protocol for Commonly Controlled Devices
US8589238B2 (en) 2006-05-31 2013-11-19 Open Invention Network, Llc System and architecture for merchant integration of a biometric payment system
US7708194B2 (en) 2006-08-23 2010-05-04 Verizon Patent And Licensing Inc. Virtual wallet
CA2661922A1 (en) 2006-09-06 2008-03-13 Sslnext, Inc. Method and system for providing authentication service for internet users
JP4881119B2 (ja) 2006-09-29 2012-02-22 株式会社東芝 ユーザ認証方法、ユーザ側認証装置、および、プログラム
US7860246B2 (en) 2006-11-01 2010-12-28 International Business Machines Corporation System and method for protecting data in a secure system
EP2100404B1 (en) 2006-11-07 2016-01-27 Security First Corp. Systems and methods for distributing and securing data
US8023646B2 (en) 2006-11-08 2011-09-20 Voltage Security, Inc. Identity-based-encryption extensions formed using multiple instances of an identity based encryption scheme
EP2082524B1 (en) 2006-11-15 2013-08-07 Certicom Corp. Implicit certificate verification
JP2008136063A (ja) 2006-11-29 2008-06-12 Tadayuki Hattori 著作権を保護しながら著作物を効率的に情報通信網で流通させるp2pネットワーク・アプリケーション・ソフトウェア・プログラムとその配布技術
GB2446199A (en) 2006-12-01 2008-08-06 David Irvine Secure, decentralised and anonymous peer-to-peer network
US20080144836A1 (en) 2006-12-13 2008-06-19 Barry Sanders Distributed encryption authentication methods and systems
JP2008146601A (ja) 2006-12-13 2008-06-26 Canon Inc 情報処理装置及び情報処理方法
US20130030941A1 (en) 2007-02-08 2013-01-31 Thomas Meredith Method of providing cash and cash equivalent for electronic transactions
WO2008118079A1 (en) 2007-03-23 2008-10-02 Anoto Ab Printing of a position-coding pattern
CA2686498C (en) 2007-05-07 2016-01-26 Archivas, Inc. Method for data privacy in a fixed content distributed data storage
JP2009015824A (ja) 2007-05-14 2009-01-22 Shinsedai Kk 不正防止方法を実行するコンピュータプログラムを記録した記録媒体、そのコンピュータプログラム、及び不正防止方法
US8478988B2 (en) 2007-05-15 2013-07-02 At&T Intellectual Property I, L.P. System and method for authentication of a communication device
WO2009009868A1 (en) 2007-07-17 2009-01-22 Certicom Corp. Method of compressing a cryptographic value
US8160966B2 (en) 2007-08-17 2012-04-17 King Fahd University Of Petroleum And Minerals Token based new digital cash protocols
US9697171B2 (en) 2007-10-09 2017-07-04 Internaitonal Business Machines Corporation Multi-writer revision synchronization in a dispersed storage network
JP4897645B2 (ja) 2007-10-25 2012-03-14 日本電信電話株式会社 暗号化メッセージ送受信方法、送信者装置、受信者装置、暗号化メッセージ送受信システム及びプログラム
US8266430B1 (en) 2007-11-29 2012-09-11 Emc Corporation Selective shredding in a deduplication system
KR100918838B1 (ko) 2007-12-17 2009-09-28 한국전자통신연구원 유비쿼터스 환경에서의 아이덴티티 공유 장치 및 방법
US8452017B2 (en) 2007-12-21 2013-05-28 Research In Motion Limited Methods and systems for secure channel initialization transaction security based on a low entropy shared secret
US20140046792A1 (en) 2007-12-21 2014-02-13 Venkat Ganesan Method for coordinating messaging between motivated buyers and listed sellers
JP5525133B2 (ja) 2008-01-17 2014-06-18 株式会社日立製作所 デジタル署名及び認証のためのシステム及び方法
CN101499959B (zh) 2008-01-31 2012-08-08 华为技术有限公司 配置密钥的方法、装置及***
JP5063777B2 (ja) 2008-03-10 2012-10-31 三菱電機株式会社 秘密情報管理装置及び情報処理装置及び秘密情報管理システム
US8855318B1 (en) 2008-04-02 2014-10-07 Cisco Technology, Inc. Master key generation and distribution for storage area network devices
US8793497B2 (en) 2008-05-09 2014-07-29 Qualcomm Incorporated Puzzle-based authentication between a token and verifiers
US8839387B2 (en) 2009-01-28 2014-09-16 Headwater Partners I Llc Roaming services network and overlay networks
US8170216B2 (en) 2008-06-18 2012-05-01 Apple Inc. Techniques for validating and sharing secrets
US10007893B2 (en) 2008-06-30 2018-06-26 Blog Band, Llc Methods for online collaboration
US8302204B2 (en) 2008-07-30 2012-10-30 Sap Ag Secure distributed item-level discovery service using secret sharing
US9130757B2 (en) 2008-08-11 2015-09-08 International Business Machines Corporation Method for authenticated communication in dynamic federated environments
US8230219B2 (en) 2008-08-12 2012-07-24 Texas Instruments Incorporated Reduced computation for bit-by-bit password verification in mutual authentication
US8520854B2 (en) 2008-08-28 2013-08-27 Red Hat, Inc. Sharing a secret using polynomials over polynomials
US8675877B2 (en) 2008-08-29 2014-03-18 Red Hat, Inc. Sharing a secret via linear interpolation
JP5479474B2 (ja) 2008-09-10 2014-04-23 エルジー エレクトロニクス インコーポレイティド 選択的な制御信号暗号化方法
US8166481B2 (en) 2008-10-20 2012-04-24 Microsoft Corporation Transaction processing in transactional memory
US20100150341A1 (en) 2008-12-17 2010-06-17 David Dodgson Storage security using cryptographic splitting
US8151333B2 (en) 2008-11-24 2012-04-03 Microsoft Corporation Distributed single sign on technologies including privacy protection and proactive updating
US20100131752A1 (en) 2008-11-26 2010-05-27 Ulrich Flegel Method and system for invalidation of cryptographic shares in computer systems
US8266448B2 (en) 2008-12-09 2012-09-11 Nvidia Corporation Apparatus, system, method, and computer program product for generating and securing a program capable of being executed utilizing a processor to decrypt content
CN101447980B (zh) 2008-12-25 2012-04-11 中国电子科技集团公司第五十四研究所 抗碰撞的统一用户标识公私钥对映射方法
US20100172501A1 (en) 2009-01-06 2010-07-08 Tian Weicheng Secure key system
US20100199095A1 (en) 2009-01-30 2010-08-05 Texas Instruments Inc. Password-Authenticated Association Based on Public Key Scrambling
US8713329B2 (en) 2009-02-26 2014-04-29 Red Hat, Inc. Authenticated secret sharing
EP2401835A4 (en) 2009-02-27 2014-04-23 Certicom Corp SYSTEM AND METHOD FOR SECURE COMMUNICATION WITH ELECTRONIC COUNTERS
US8520855B1 (en) 2009-03-05 2013-08-27 University Of Washington Encapsulation and decapsulation for data disintegration
US8527773B1 (en) 2009-03-09 2013-09-03 Transunion Interactive, Inc. Identity verification systems and methods
JP2010219912A (ja) 2009-03-17 2010-09-30 Nec Access Technica Ltd 暗号鍵生成方法、ネットワークシステム及びプログラム
CN101616410B (zh) 2009-06-25 2011-08-10 中兴通讯股份有限公司 一种蜂窝移动通信网络的接入方法和***
ES2390796T3 (es) 2009-07-27 2012-11-16 Nagravision S.A. Método de implementación de un procesador para garantizar la integridad de un software
KR101063354B1 (ko) * 2009-07-29 2011-09-07 한국과학기술원 공개 키 기반의 프로토콜을 이용한 과금 시스템 및 그 방법
JP2011082662A (ja) 2009-10-05 2011-04-21 Mitsubishi Electric Corp 通信装置及び情報処理方法及びプログラム
JP5586436B2 (ja) 2009-12-03 2014-09-10 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 生活スタイル収集装置、ユーザインターフェース装置及び生活スタイル収集方法
US20150310497A1 (en) 2009-12-17 2015-10-29 David Valin Method and process for registration, creation and management of micro shares of real or intangible properties and advertisements in a network system
EP2348446B1 (en) 2009-12-18 2015-04-15 CompuGroup Medical AG A computer implemented method for authenticating a user
EP2526505B1 (en) 2010-01-20 2015-06-17 Intrinsic ID B.V. Device and method for obtaining a cryptographic key
US8401185B1 (en) 2010-02-01 2013-03-19 Symantec Corporation Systems and methods for securely deduplicating data owned by multiple entities
US8332651B2 (en) 2010-02-18 2012-12-11 King Fahd University Of Petroleum And Minerals Method of generating a password protocol using elliptic polynomial cryptography
DE102010002241B4 (de) 2010-02-23 2012-03-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zur effizienten einseitigen Authentifizierung
US8918648B2 (en) 2010-02-25 2014-12-23 Certicom Corp. Digital signature and key agreement schemes
JP4905575B2 (ja) 2010-03-30 2012-03-28 日本電気株式会社 情報処理システム、情報処理方法、複製元情報処理装置、複製先情報処理装置、及び、プログラム
EP2553904A2 (en) 2010-03-31 2013-02-06 Rick L. Orsini Systems and methods for securing data in motion
CN102882845B (zh) 2010-04-07 2016-07-13 苹果公司 实时或准实时流传输
US8429408B2 (en) 2010-06-11 2013-04-23 Certicom Corp. Masking the output of random number generators in key generation protocols
US9231768B2 (en) 2010-06-22 2016-01-05 International Business Machines Corporation Utilizing a deterministic all or nothing transformation in a dispersed storage network
US8990564B2 (en) 2010-07-08 2015-03-24 Certicom Corp. System and method for performing device authentication using key agreement
US8644515B2 (en) 2010-08-11 2014-02-04 Texas Instruments Incorporated Display authenticated security association
EP2606604A1 (en) 2010-08-17 2013-06-26 Hewlett-Packard Development Company, L.P. Encryption key management
JP5842819B2 (ja) 2010-09-22 2016-01-13 三菱瓦斯化学株式会社 ピロロキノリンキノンのカルシウム塩
WO2012054785A1 (en) 2010-10-20 2012-04-26 Playspan Inc. Latency payment settlement apparatuses, methods and systems
US9282085B2 (en) 2010-12-20 2016-03-08 Duo Security, Inc. System and method for digital user authentication
JP5420085B2 (ja) 2011-01-13 2014-02-19 三菱電機株式会社 データ処理装置及びデータ保管装置
US8806609B2 (en) 2011-03-08 2014-08-12 Cisco Technology, Inc. Security for remote access VPN
US8538029B2 (en) 2011-03-24 2013-09-17 Hewlett-Packard Development Company, L.P. Encryption key fragment distribution
US9754130B2 (en) 2011-05-02 2017-09-05 Architecture Technology Corporation Peer integrity checking system
US9219604B2 (en) 2011-05-09 2015-12-22 Cleversafe, Inc. Generating an encrypted message for storage
US20160055583A1 (en) 2011-06-03 2016-02-25 Mozido, Inc. Mobile global exchange platform
EP2538606B1 (en) 2011-06-21 2017-08-09 BlackBerry Limited Provisioning a shared secret to a portable electronic device and to a service entity
US20130198104A1 (en) * 2011-08-05 2013-08-01 Patricia S. Parker Systems and methods for managing electronic contracts and data
AU2012209043B2 (en) 2011-08-05 2015-09-24 Kraft Foods Group Brands Llc Ready-to-bake batter and methods of making the same
DE102011122767A1 (de) 2011-09-09 2013-03-14 Dr. Klein Gmbh & Co. Media Kgaa Verfahren zur Bezahlung mit mindestens einem elektronischen Zahlungsmittelschlüssel
US9621404B2 (en) 2011-09-24 2017-04-11 Elwha Llc Behavioral fingerprinting with social networking
EP2582085A1 (en) 2011-10-10 2013-04-17 Certicom Corp. Generating implicit certificates
US8769310B2 (en) 2011-10-21 2014-07-01 International Business Machines Corporation Encrypting data objects to back-up
CN102938036B (zh) 2011-11-29 2016-01-13 Ut斯达康(中国)有限公司 Windows动态链接库的分段双重加密及安全加载方法
US10949815B2 (en) 2011-12-13 2021-03-16 Visa International Service Association Integrated mobile trusted service manager
EP2795552A4 (en) 2011-12-22 2015-07-01 Intel Corp ELECTRONIC MULTIUSER WALLETS AND ADMINISTRATION THEREOF
US8613066B1 (en) 2011-12-30 2013-12-17 Amazon Technologies, Inc. Techniques for user authentication
US9065637B2 (en) 2012-01-25 2015-06-23 CertiVox Ltd. System and method for securing private keys issued from distributed private key generator (D-PKG) nodes
US11042870B2 (en) 2012-04-04 2021-06-22 Blackhawk Network, Inc. System and method for using intelligent codes to add a stored-value card to an electronic wallet
US9027102B2 (en) 2012-05-11 2015-05-05 Sprint Communications Company L.P. Web server bypass of backend process on near field communications and secure element chips
US8918651B2 (en) 2012-05-14 2014-12-23 International Business Machines Corporation Cryptographic erasure of selected encrypted data
US20130318578A1 (en) 2012-05-24 2013-11-28 Ca, Inc. Password management and smart honey pot system
FR2992509B1 (fr) 2012-06-21 2017-05-26 Commissariat Energie Atomique Dispositif et procede pour generer une cle de session
WO2014011453A2 (en) 2012-07-09 2014-01-16 Jvl Ventures, Llc Systems, methods, and computer program products for integrating third party services with a mobile wallet
US20150379510A1 (en) * 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.
WO2014027263A2 (en) 2012-08-17 2014-02-20 Koninklijke Philips N.V. Attribute-based encryption
US9129536B2 (en) 2012-08-31 2015-09-08 Freescale Semiconductor, Inc. Circuit for secure provisioning in an untrusted environment
US9582671B2 (en) 2014-03-06 2017-02-28 Sensity Systems Inc. Security and data privacy for lighting sensory networks
WO2014042701A1 (en) 2012-09-17 2014-03-20 Motorola Mobility Llc Efficient key generator for distribution of sensitive material from mulitple application service providers to a secure element such as a universal integrated circuit card (uicc)
JP2014068140A (ja) 2012-09-25 2014-04-17 Sony Corp 情報処理装置、情報処理方法及びプログラム
US8745415B2 (en) 2012-09-26 2014-06-03 Pure Storage, Inc. Multi-drive cooperation to generate an encryption key
ITTO20120896A1 (it) 2012-10-15 2014-04-16 Indesit Co Spa Piano cottura a induzione
US9152649B2 (en) * 2012-10-17 2015-10-06 Datadirect Networks, Inc. Maintaining order and fault-tolerance in a distributed hash table system
US20140129441A1 (en) 2012-11-02 2014-05-08 German Blanco Systems and methods for authorizing sensitive purchase transactions with a mobile device
WO2014074865A2 (en) 2012-11-09 2014-05-15 Timothy Mossbarger Entity network translation (ent)
US9876775B2 (en) 2012-11-09 2018-01-23 Ent Technologies, Inc. Generalized entity network translation (GENT)
KR102024531B1 (ko) 2012-12-14 2019-09-25 한국전자통신연구원 송신 메시지 연결성을 제공하는 익명 인증 및 키 합의 장치 및 방법
US9251531B2 (en) 2012-12-21 2016-02-02 Cortex Mcp, Inc. File format and platform for storage and verification of credentials
JP2016502377A (ja) 2013-01-08 2016-01-21 バーイラン ユニバーシティー 安全計算を用いて安全性を提供する方法
KR20140099126A (ko) 2013-02-01 2014-08-11 삼성전자주식회사 소프트웨어를 보안하기 위하여 해시 함수를 이용한 소프트웨어 처리 방법, 그 장치 및 그 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
JP2014153583A (ja) 2013-02-12 2014-08-25 Hitachi Ltd 署名文書の管理方法及び署名サーバ
WO2014151495A1 (en) 2013-03-15 2014-09-25 United States Postal Service System and method of identity verification
US20160337124A1 (en) 2013-04-10 2016-11-17 Michael Rozman Secure backup and recovery system for private sensitive data
WO2014201059A1 (en) 2013-06-10 2014-12-18 Certimix, Llc Secure storing and offline transfering of digitally transferable assets
US10068228B1 (en) 2013-06-28 2018-09-04 Winklevoss Ip, Llc Systems and methods for storing digital math-based assets using a secure portal
US20150006386A1 (en) 2013-06-28 2015-01-01 Sap Ag Offline mobile payment process
US10354325B1 (en) 2013-06-28 2019-07-16 Winklevoss Ip, Llc Computer-generated graphical user interface
CN103440209B (zh) 2013-07-19 2016-08-17 记忆科技(深圳)有限公司 一种固态硬盘数据加解密方法及固态硬盘***
US9519925B2 (en) 2013-08-01 2016-12-13 Omnibazaar, Inc. Decentralized internet shopping marketplaces
US9594698B2 (en) 2013-08-13 2017-03-14 Dell Products, Lp Local keying for self-encrypting drives (SED)
EP3036672A4 (en) * 2013-08-21 2017-04-26 Ascribe GmbH Method to securely establish, affirm, and transfer ownership of artworks
FR3010215B1 (fr) 2013-08-29 2016-12-30 Compagnie Ind Et Financiere Dingenierie Ingenico Procede de traitement de donnees transactionnelles, dispositifs et programmes d'ordinateur correspondants.
US11423370B2 (en) 2013-09-04 2022-08-23 Raise Marketplace, Llc Systems and methods for transferring value to and managing user selected accounts
US9350550B2 (en) 2013-09-10 2016-05-24 M2M And Iot Technologies, Llc Power management and security for wireless modules in “machine-to-machine” communications
US20150120569A1 (en) * 2013-10-31 2015-04-30 Bitgo, Inc. Virtual currency address security
US9124430B2 (en) 2013-09-23 2015-09-01 Venafi, Inc. Centralized policy management for security keys
US20150170112A1 (en) * 2013-10-04 2015-06-18 Erly Dalvo DeCastro Systems and methods for providing multi-currency platforms comprising means for exchanging and interconverting tangible and virtual currencies in various transactions, banking operations, and wealth management scenarios
US9595034B2 (en) 2013-10-25 2017-03-14 Stellenbosch University System and method for monitoring third party access to a restricted item
US9497185B2 (en) 2013-12-30 2016-11-15 Google Inc. Systems, methods, and computer program products for providing application validation
US20150206106A1 (en) * 2014-01-13 2015-07-23 Yaron Edan Yago Method for creating, issuing and redeeming payment assured contracts based on mathemematically and objectively verifiable criteria
US10002547B2 (en) 2014-01-17 2018-06-19 Nippon Telegraph And Telephone Corporation Secret calculation method, secret calculation system, random permutation device, and program
US10726098B2 (en) 2014-01-23 2020-07-28 Dror Samuel Brama Method, system and program product for transferring genetic and health data
US10574438B2 (en) 2014-02-18 2020-02-25 Nippon Telegraph And Telephone Corporation Security apparatus, method thereof, and program
CN103795529A (zh) 2014-02-26 2014-05-14 东南大学 基于密钥向量的无线传感器网络数据安全融合方法
CN103825733A (zh) 2014-02-28 2014-05-28 华为技术有限公司 基于组合公钥密码体制的通信方法、装置及***
CN104901931B (zh) 2014-03-05 2018-10-12 财团法人工业技术研究院 证书管理方法与装置
US20150254662A1 (en) 2014-03-05 2015-09-10 Mastercard International Incorporated Verifying transaction context data at wallet service provider
FR3018370A1 (fr) 2014-03-07 2015-09-11 Enrico Maim Procede et systeme de generation automatique de crypto-monnaies
FR3018379A1 (fr) 2014-03-07 2015-09-11 Enrico Maim Systeme et procedes transactionnels a architecture repartie fondes sur des transactions de transfert d'unites de compte entre adresses
FR3018378A1 (fr) * 2014-03-12 2015-09-11 Enrico Maim Systeme et procede transactionnels a architecture repartie fondees sur des transactions de transferts d'unites de compte entre adresses
FR3018377A1 (fr) 2014-03-07 2015-09-11 Enrico Maim Systeme et procede transactionnels a architecture repartie fondes sur des transactions de transfert d'unites de compte entre adresses
US20170178237A1 (en) 2014-03-11 2017-06-22 Dragonfly Fintech Pte Ltd Computer implemented frameworks and methods configured to create and manage a virtual currency
WO2015142765A1 (en) 2014-03-17 2015-09-24 Coinbase, Inc Bitcoin host computer system
US9858569B2 (en) 2014-03-21 2018-01-02 Ramanan Navaratnam Systems and methods in support of authentication of an item
US10713686B2 (en) 2014-03-22 2020-07-14 Retailmenot, Inc. Peer-to-peer geotargeting content with ad-hoc mesh networks
US20150278780A1 (en) 2014-03-31 2015-10-01 Ebay Inc. Shared Digital Wallets
US11232521B2 (en) 2014-04-14 2022-01-25 Lukka, Inc. Methods, systems, and tools for providing tax related services for virtual currency holdings
CN105095737B (zh) 2014-04-16 2019-03-01 阿里巴巴集团控股有限公司 检测弱密码的方法和装置
US20150302401A1 (en) 2014-04-18 2015-10-22 Ebay Inc. Distributed crypto currency unauthorized transfer monitoring system
CN103927656A (zh) 2014-05-05 2014-07-16 宋骊平 一种内嵌固定收款地址的比特币终端钱包及其比特币支付方法
CA2985040A1 (en) 2014-05-06 2015-12-03 Case Wallet, Inc. Cryptocurrency virtual wallet system and method
ZA201502969B (en) 2014-05-09 2016-01-27 Univ Stellenbosch Enabling a user to transact using cryptocurrency
JP6813477B2 (ja) 2014-05-09 2021-01-13 ヴェリタセウム アイエヌシー. 信頼度が低い、または信頼度が皆無の当事者間での価値転送を円滑化する装置、システム、または方法
US20160335628A1 (en) 2014-05-15 2016-11-17 Adam Mark Weigold System and method for digital currency storage, payment and credit
US9704143B2 (en) 2014-05-16 2017-07-11 Goldman Sachs & Co. LLC Cryptographic currency for securities settlement
US20150332224A1 (en) 2014-05-19 2015-11-19 OX Labs Inc. System and method for rendering virtual currency related services
US9621525B2 (en) 2014-06-02 2017-04-11 Qualcomm Incorporated Semi-deterministic digital signature generation
US20150348017A1 (en) 2014-06-03 2015-12-03 Jonathan Allmen Method for integrating cryptocurrency transfer on a social network interface
US10346814B2 (en) * 2014-06-04 2019-07-09 MONI Limited System and method for executing financial transactions
US9818092B2 (en) * 2014-06-04 2017-11-14 Antti Pennanen System and method for executing financial transactions
US9887839B2 (en) 2014-06-06 2018-02-06 Rainberry, Inc. Securely sharing information via a public key-value data store
US20150356523A1 (en) 2014-06-07 2015-12-10 ChainID LLC Decentralized identity verification systems and methods
US20150363770A1 (en) 2014-06-16 2015-12-17 Bank Of America Corporation Cryptocurrency Transaction Payment System
US10127552B2 (en) 2014-06-16 2018-11-13 Bank Of America Corporation Cryptocurrency aggregation system
US20150363777A1 (en) 2014-06-16 2015-12-17 Bank Of America Corporation Cryptocurrency suspicious user alert system
KR101626276B1 (ko) 2014-06-17 2016-06-01 어준선 디지털 화폐와 연동되어 디지털 컨텐츠를 생성, 제공, 재생하기 위한 방법, 이를 이용한 단말 및 컴퓨터 판독 가능한 기록 매체
WO2015198098A1 (en) 2014-06-26 2015-12-30 Telefonaktiebolaget L M Ericsson (Publ) Privacy-preserving querying mechanism on privately encrypted data on semi-trusted cloud
KR101579232B1 (ko) 2014-06-30 2016-01-05 주식회사 휴비스 신축성과 볼륨감이 우수한 폴리에스테르 복합사 및 그 제조방법
US9794341B2 (en) 2014-06-30 2017-10-17 Sandisk Technologies Llc Data storage verification in distributed storage system
EP2966802A1 (en) 2014-07-07 2016-01-13 Thomson Licensing Method for ciphering and deciphering digital data, based on an identity, in a multi-authorities context
EP2975570A1 (de) 2014-07-17 2016-01-20 draglet GmbH Verfahren und eine Vorrichtung zur Absicherung von Zugriffen auf Wallets in denen Kryptowährungen abgelegt sind
CN105306194B (zh) 2014-07-22 2018-04-17 柯呈翰 供加密档案和/或通讯协定的多重加密方法与***
US9608829B2 (en) 2014-07-25 2017-03-28 Blockchain Technologies Corporation System and method for creating a multi-branched blockchain with configurable protocol rules
US9836908B2 (en) 2014-07-25 2017-12-05 Blockchain Technologies Corporation System and method for securely receiving and counting votes in an election
US10218800B2 (en) 2014-07-28 2019-02-26 Oath Inc. Systems and methods for providing recommendations and explanations
AU2015296901B2 (en) 2014-08-01 2019-10-10 Commonwealth Scientific And Industrial Research Organisation Generating shares of secret data
WO2016022864A2 (en) 2014-08-06 2016-02-11 Blockchain Technologies Corporation System and method for securely receiving and counting votes in an election
US10147111B2 (en) 2014-08-21 2018-12-04 American Express Travel Related Services Company, Inc. System and method for transaction account owner acquisition
US10355797B2 (en) 2014-08-25 2019-07-16 Music Pocket, Llc Provisioning a service for capturing broadcast content to a user device via a network
CN111756533B (zh) 2014-08-29 2023-07-04 维萨国际服务协会 用于安全密码生成的***、方法和存储介质
US20160071108A1 (en) 2014-09-04 2016-03-10 Idm Global, Inc. Enhanced automated anti-fraud and anti-money-laundering payment system
US20160086175A1 (en) 2014-09-22 2016-03-24 Qualcomm Incorporated Peer-to-peer transaction system
WO2016046820A1 (en) 2014-09-23 2016-03-31 Spondoolies Tech Ltd. System and method for providing shared hash engines architecture for a bitcoin block chain
US10721062B2 (en) 2014-09-24 2020-07-21 Hewlett Packard Enterprise Development Lp Utilizing error correction for secure secret sharing
WO2016046949A1 (ja) 2014-09-26 2016-03-31 株式会社日立製作所 楕円曲線スカラー倍演算方法
US10510071B2 (en) 2014-09-29 2019-12-17 The Toronto-Dominion Bank Systems and methods for generating and administering mobile applications using pre-loaded tokens
WO2016053760A1 (en) 2014-09-30 2016-04-07 Raistone, Inc. Systems and methods for transferring digital assets using a de-centralized exchange
US20160098723A1 (en) 2014-10-01 2016-04-07 The Filing Cabinet, LLC System and method for block-chain verification of goods
CA2867765A1 (en) 2014-10-15 2016-04-15 John W. Swabey A trustless method of qualifying an individual for absence of medical symptoms at a checkpoint
ES2835741T3 (es) 2014-10-17 2021-06-23 Qubalt Gmbh Método y entidad receptora para la ejecución segura de software
CN104320262B (zh) 2014-11-05 2017-07-21 中国科学院合肥物质科学研究院 基于加密数字货币公开账本技术的用户公钥地址绑定、检索和校验的方法及***
GB2532039B (en) 2014-11-06 2016-09-21 Ibm Secure database backup and recovery
KR101544722B1 (ko) 2014-11-13 2015-08-18 주식회사 엘지씨엔에스 부인 방지 방법, 이를 위한 결제 관리 서버 및 사용자 단말기
US10061914B2 (en) 2014-11-14 2018-08-28 Mcafee, Llc Account recovery protocol
US9769133B2 (en) 2014-11-21 2017-09-19 Mcafee, Inc. Protecting user identity and personal information by sharing a secret between personal IoT devices
CN104331516B (zh) * 2014-11-26 2018-07-17 山东中创软件工程股份有限公司 一种合同类型管理***
US20160162897A1 (en) 2014-12-03 2016-06-09 The Filing Cabinet, LLC System and method for user authentication using crypto-currency transactions as access tokens
EP3032783A1 (en) 2014-12-11 2016-06-15 Hewlett-Packard Development Company, L.P. Fragmented packet processing resource determination
JPWO2016120975A1 (ja) 2015-01-26 2017-06-08 株式会社日立製作所 データ集計分析システム及びその方法
JP5860556B1 (ja) 2015-02-06 2016-02-16 日本電信電話株式会社 不整合検知方法、不整合検知システム、不整合検知装置、およびプログラム
KR102610487B1 (ko) 2015-02-09 2023-12-06 티제로 아이피, 엘엘씨 암호화 통합 플랫폼
US10594484B2 (en) 2015-02-13 2020-03-17 Yoti Holding Limited Digital identity system
US9436923B1 (en) 2015-02-26 2016-09-06 Skuchain, Inc. Tracking unitization occurring in a supply chain
WO2016135737A1 (en) 2015-02-27 2016-09-01 Dyadic Security Ltd A system and methods for protecting keys in computerized devices operating versus a server
RU2015106704A (ru) 2015-02-27 2016-09-20 Дмитрий Сергеевич Ермолаев Способ учёта имущественных и иных именованных единиц в одноуровневых средах типа bitcoin и next
CN107408232B (zh) * 2015-02-27 2020-12-01 特克斯图拉公司 变化管理
US9967334B2 (en) 2015-03-02 2018-05-08 Dell Products Lp Computing device configuration and management using a secure decentralized transaction ledger
US10592985B2 (en) 2015-03-02 2020-03-17 Dell Products L.P. Systems and methods for a commodity contracts market using a secure distributed transaction ledger
US10541811B2 (en) 2015-03-02 2020-01-21 Salesforce.Com, Inc. Systems and methods for securing data
US9813392B2 (en) 2015-03-06 2017-11-07 Qualcomm Incorporated Apparatus and method for providing a public key for authenticating an integrated circuit
RU2015108134A (ru) 2015-03-10 2016-10-10 Дмитрий Сергеевич Ермолаев Способ удостоверения обладателя счёта в одноуровневых средах типа bitcoin и next
US9641338B2 (en) 2015-03-12 2017-05-02 Skuchain, Inc. Method and apparatus for providing a universal deterministically reproducible cryptographic key-pair representation for all SKUs, shipping cartons, and items
US20160275294A1 (en) 2015-03-16 2016-09-22 The MaidSafe Foundation Data system and method
RU2015109271A (ru) 2015-03-17 2016-10-10 Дмитрий Сергеевич Ермолаев Способ сжатия книги учёта и контроля за включаемыми в неё записями в одноуровневых цифровых средах учёта наподобие bitcoin и next
US10685349B2 (en) 2015-03-18 2020-06-16 Google Llc Confirming physical possession of plastic NFC cards with a mobile digital wallet application
US20180240107A1 (en) 2015-03-27 2018-08-23 Black Gold Coin, Inc. Systems and methods for personal identification and verification
EP3767878A1 (en) 2015-03-27 2021-01-20 Black Gold Coin, Inc. A system and a method for personal identification and verification
EP3278287A4 (en) 2015-03-31 2018-08-22 Nasdaq, Inc. Systems and methods of blockchain transaction recordation
US9641341B2 (en) 2015-03-31 2017-05-02 Duo Security, Inc. Method for distributed trust authentication
CN107683488B (zh) 2015-04-05 2023-09-05 数字资产(瑞士)股份有限公司 数字资产中介电子结算平台
JP5858506B1 (ja) 2015-04-09 2016-02-10 株式会社Orb 仮想通貨管理プログラム、及び仮想通貨管理方法
US10516527B1 (en) 2015-04-17 2019-12-24 EMC IP Holding Company LLC Split-key based cryptography system for data protection and synchronization across multiple computing devices
US10630472B2 (en) 2015-04-29 2020-04-21 Nec Corporation Method and system for providing encrypted data on a client
US20160321435A1 (en) 2015-05-01 2016-11-03 Monegraph, Inc. Managing digital content via block chain registers
US9906505B2 (en) 2015-05-08 2018-02-27 Nxp B.V. RSA decryption using multiplicative secret sharing
JP5957120B1 (ja) 2015-05-12 2016-07-27 日本電信電話株式会社 秘密分散方法、秘密分散システム、分散装置、およびプログラム
US10635471B2 (en) 2015-05-15 2020-04-28 Joshua Paul Davis System and method for an autonomous entity
US9735958B2 (en) 2015-05-19 2017-08-15 Coinbase, Inc. Key ceremony of a security system forming part of a host computer for cryptographic transactions
US20160342984A1 (en) 2015-05-20 2016-11-24 402 Technologies S.A. Loop transfer in a resource transfer system
US20160342977A1 (en) 2015-05-20 2016-11-24 Vennd.io Pty Ltd Device, method and system for virtual asset transactions
US10963881B2 (en) 2015-05-21 2021-03-30 Mastercard International Incorporated Method and system for fraud control of blockchain-based transactions
KR102286959B1 (ko) 2015-05-26 2021-08-10 티제로 아이피, 엘엘씨 암호화 기술을 사용한 트랜잭션에서 의도의 난독화
US9842062B2 (en) 2015-05-31 2017-12-12 Apple Inc. Backup accessible by subset of related devices
US9961030B2 (en) 2015-06-24 2018-05-01 Private Giant Method and system for sender-controlled messaging and content sharing
US10997590B2 (en) 2015-06-26 2021-05-04 American Express Travel Related Services Company, Inc. Systems and methods for in-application and in-browser purchases
US9673975B1 (en) 2015-06-26 2017-06-06 EMC IP Holding Company LLC Cryptographic key splitting for offline and online data protection
US10009324B2 (en) 2015-06-29 2018-06-26 American Express Travel Related Services Company, Inc. Host card emulation systems and methods
US20180176222A1 (en) 2015-06-30 2018-06-21 Raghav Bhaskar User friendly two factor authentication
US10097356B2 (en) 2015-07-02 2018-10-09 Nasdaq, Inc. Systems and methods of secure provenance for distributed transaction databases
US9298806B1 (en) 2015-07-08 2016-03-29 Coinlab, Inc. System and method for analyzing transactions in a distributed ledger
GB201511964D0 (en) 2015-07-08 2015-08-19 Barclays Bank Plc Secure digital data operations
US11521203B2 (en) * 2015-07-09 2022-12-06 Cryptography Research, Inc. Generating a cryptographic key based on transaction data of mobile payments
US10339523B2 (en) 2015-07-14 2019-07-02 Fmr Llc Point-to-point transaction guidance apparatuses, methods and systems
US20170017936A1 (en) 2015-07-14 2017-01-19 Fmr Llc Point-to-Point Transaction Guidance Apparatuses, Methods and Systems
US10552904B2 (en) 2015-07-24 2020-02-04 Castor Pollux Holdings SARL Device, system, and method for transfer of commodities
JP6034927B1 (ja) 2015-07-27 2016-11-30 日本電信電話株式会社 秘密計算システム、秘密計算装置、およびプログラム
GB2540976A (en) * 2015-07-31 2017-02-08 British Telecomm Access control
US10402792B2 (en) 2015-08-13 2019-09-03 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
US20170046668A1 (en) 2015-08-16 2017-02-16 Google Inc. Comparing An Extracted User Name with Stored User Data
US11188907B1 (en) 2015-08-21 2021-11-30 United Services Automobile Association (Usaa) ACH authorization validation using public blockchains
CN105204802B (zh) 2015-09-10 2019-05-21 海信集团有限公司 一种控制信息处理方法及装置
US20170075877A1 (en) 2015-09-16 2017-03-16 Marie-Therese LEPELTIER Methods and systems of handling patent claims
US11651367B2 (en) 2015-09-18 2023-05-16 International Business Machines Corporation Security in a communication network
US10453059B2 (en) 2015-09-30 2019-10-22 Bank Of America Corporation Non-intrusive geo-location determination associated with transaction authorization
US20170109540A1 (en) 2015-10-16 2017-04-20 Bank Of America Corporation Tokenization of financial account information for use in transactions
US20170116608A1 (en) 2015-10-22 2017-04-27 Align Commerce Corporation System and method for payment processing using crypto currencies
US20170132620A1 (en) 2015-11-06 2017-05-11 SWFL, Inc., d/b/a "Filament" Systems and methods for autonomous device transacting
US10719816B1 (en) 2015-11-19 2020-07-21 Wells Fargo Bank, N.A. Systems and methods for math-based currency escrow transactions
US11562353B2 (en) 2015-11-24 2023-01-24 Mastercard International Incorporated Method and system for gross settlement by use of an opaque blockchain
US20170154391A1 (en) * 2015-11-30 2017-06-01 Bank Of America Corporation System for resource analysis and resolution of non-conforming attributes
CA3006495A1 (en) * 2015-11-30 2017-06-08 Shapeshift Ag Digital asset zero-custody switch
US11115196B1 (en) 2015-12-08 2021-09-07 EMC IP Holding Company LLC Methods and apparatus for secret sharing with verifiable reconstruction type
US10089609B2 (en) 2015-12-14 2018-10-02 Visa International Service Association System and methods for online/offline synchronization
US11423498B2 (en) 2015-12-16 2022-08-23 International Business Machines Corporation Multimedia content player with digital rights management while maintaining privacy of users
US11108748B2 (en) 2015-12-16 2021-08-31 Visa International Service Association Systems and methods for secure multi-party communications using a proxy
EP3394818A4 (en) 2015-12-21 2019-08-14 Kochava Inc. AUTOREGULATING TRANSACTION SYSTEM AND ASSOCIATED METHODS
WO2017107143A1 (en) 2015-12-24 2017-06-29 Nokia Technologies Oy Authentication and key agreement in communication network
US9971850B2 (en) 2015-12-29 2018-05-15 International Business Machines Corporation Hash table structures
US20170200137A1 (en) 2016-01-08 2017-07-13 The Western Union Company Combined security for electronic transfers
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.
GB2571390B (en) 2016-02-03 2022-07-20 Luther Systems Ltd Systems and method for secure management of digital contracts
US20170243193A1 (en) 2016-02-18 2017-08-24 Skuchain, Inc. Hybrid blockchain
US10387878B2 (en) 2016-02-22 2019-08-20 Bank Of America Corporation System for tracking transfer of resources in a process data network
EP4383643A2 (en) 2016-02-23 2024-06-12 nChain Licensing AG Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system
CN114679282A (zh) 2016-02-23 2022-06-28 区块链控股有限公司 用区块链实施的用于安全投票和分配的计数***和方法
EP4369273A3 (en) 2016-02-23 2024-07-17 nChain Licensing AG A method and system for securing computer software using a distributed hash table and a blockchain
WO2017163109A1 (en) 2016-03-23 2017-09-28 Telefonaktiebolaget Lm Ericsson (Publ) Cyber-physical context-dependent cryptography
US11720890B2 (en) 2016-04-22 2023-08-08 Micro Focus Llc Authorization of use of cryptographic keys
US20190149337A1 (en) 2016-04-29 2019-05-16 nChain Holdings Limited Implementing logic gate functionality using a blockchain
GB201607476D0 (en) 2016-04-29 2016-06-15 Eitc Holdings Ltd Operating system for blockchain IOT devices
US10333705B2 (en) 2016-04-30 2019-06-25 Civic Technologies, Inc. Methods and apparatus for providing attestation of information using a centralized or distributed ledger
US10277564B2 (en) 2016-05-04 2019-04-30 Nxp Usa, Inc. Light-weight key update mechanism with blacklisting based on secret sharing algorithm in wireless sensor networks
CN106022917A (zh) 2016-05-08 2016-10-12 杭州复杂美科技有限公司 区块链撮合交易所方案
CN116911835A (zh) 2016-07-29 2023-10-20 区块链控股有限公司 区块链实现的方法和***
CN107679045B (zh) 2016-08-01 2021-08-31 华为技术有限公司 版权授权管理方法及***
JP2018023029A (ja) 2016-08-04 2018-02-08 株式会社 エヌティーアイ 通信システム、通信用クライアント、通信用サーバ、通信方法、プログラム
JP7019697B2 (ja) 2016-08-30 2022-02-15 コモンウェルス サイエンティフィック アンド インダストリアル リサーチ オーガナイゼーション ブロックチェーン上の動的アクセス制御
US11663609B2 (en) * 2016-10-04 2023-05-30 International Business Machines Corporation Method and apparatus to enforce smart contract execution hierarchy on blockchain
CN107959656B (zh) 2016-10-14 2021-08-31 阿里巴巴集团控股有限公司 数据安全保障***及方法、装置
US10524119B2 (en) 2016-11-23 2019-12-31 Afero, Inc. Apparatus and method for sharing credentials in an internet of things (IoT) system
CN106411503B (zh) 2016-11-28 2019-11-08 中国银行股份有限公司 区块链投票记账模式的记账方法及***、投票及记账节点
US11296935B2 (en) 2016-12-30 2022-04-05 Intel Corporation Service provision to IoT devices
US20180247191A1 (en) 2017-02-03 2018-08-30 Milestone Entertainment Llc Architectures, systems and methods for program defined entertainment state system, decentralized cryptocurrency system and system with segregated secure functions and public functions
US20190080402A1 (en) 2017-09-11 2019-03-14 Templum, Llc System and method for providing a regulatory-compliant token
US11144893B2 (en) 2017-10-30 2021-10-12 Nec Corporation Method and system for securing smart contracts in blockchains
KR102083258B1 (ko) 2017-11-15 2020-03-02 한양대학교 산학협력단 시냅스소자에서 가중치에 대한 비대칭성을 최소화하는 펄스 구동 장치 및 그 방법
US20190034936A1 (en) 2017-12-29 2019-01-31 Intel Corporation Approving Transactions from Electronic Wallet Shares
KR20240093786A (ko) 2018-01-17 2024-06-24 티제로 아이피, 엘엘씨 고객 지갑을 복원하기 위해 n개의 키 중 m개를 사용하는 다중 승인 시스템
US20190340352A1 (en) 2018-05-03 2019-11-07 Ivan JC Peeters Method for producing dynamic password identification for users such as machines
US20190378139A1 (en) 2018-06-06 2019-12-12 The Bank Of New York Mellon Tracking and recovering transactions performed across multiple applications
US20190392118A1 (en) 2018-06-20 2019-12-26 Adp, Llc Blockchain Version Control
US20190392536A1 (en) 2018-06-26 2019-12-26 bootstrap legal Inc. Method and System for Creating and Managing a Smart Contract on a Distributed Ledger
US11204939B2 (en) 2018-07-18 2021-12-21 Bank Of America Corporation Data manifest as a blockchain service
US11886421B2 (en) 2019-01-31 2024-01-30 Salesforce, Inc. Systems, methods, and apparatuses for distributing a metadata driven application to customers and non-customers of a host organization using distributed ledger technology (DLT)
US11831710B2 (en) 2020-06-30 2023-11-28 ImageKeeper LLC Tracking and certification of digital media via distributed ledger

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050089802A (ko) * 2002-12-21 2005-09-08 인터내셔널 비지네스 머신즈 코포레이션 조건부 전자 서명의 생성 방법, 조건부 전자 서명의 검증방법, 상태 정보 배포 방법 및 이를 수행하는 데이터 처리장치 및 컴퓨터 프로그램
KR20080018182A (ko) * 2005-06-28 2008-02-27 마이크로소프트 코포레이션 보안 해시 함수의 강화
US20150213433A1 (en) 2014-01-28 2015-07-30 Apple Inc. Secure provisioning of credentials on an electronic device using elliptic curve cryptography
KR20180114939A (ko) * 2016-02-23 2018-10-19 엔체인 홀딩스 리미티드 블록 체인을 통해 자산 관련 활동을 제어하는 시스템 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
'[PRNewswire] 엔체인(nChain), 블록체인 기반의 스마트 계약 발명특허 첫 승인', 네이버뉴스(2018.04.14. 게재) *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020080590A1 (ko) * 2018-10-15 2020-04-23 주식회사 모카테크 블록체인 기반의 기업투자 시스템 및 그 제어방법
KR20200044363A (ko) * 2018-10-19 2020-04-29 빅픽처랩 주식회사 블록체인 기반 신뢰도 정보 관리방법
KR20200047261A (ko) * 2018-10-23 2020-05-07 박기업 블록체인 기반의 콘텐츠 공유창작 서버, 콘텐츠 배급서버 및 이를 포함하는 시스템
KR20200067116A (ko) * 2018-11-30 2020-06-11 알리바바 그룹 홀딩 리미티드 탈중앙화 결정을 사용하는 블록체인 스마트 계약 업데이트
WO2020145591A1 (ko) * 2019-01-08 2020-07-16 주식회사 에치에프알 자연 언어 기반 블록 체인 스마트 계약 생성방법 및 그를 위한 장치
KR20200086224A (ko) * 2019-01-08 2020-07-16 주식회사 에치에프알 자연 언어 기반 블록 체인 스마트 계약 생성방법 및 그를 위한 장치
KR20200101512A (ko) * 2019-01-30 2020-08-28 펜타시큐리티시스템 주식회사 블록체인을 이용한 빅데이터 공유 방법 및 장치
KR20200108757A (ko) * 2019-03-11 2020-09-21 순천향대학교 산학협력단 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 xgs 주입 방법
KR102118715B1 (ko) 2019-04-25 2020-06-03 넷마블 주식회사 블록체인을 이용한 자동 송금
KR102095681B1 (ko) * 2019-09-03 2020-03-31 주식회사 에이콘이즈 블록체인 기반 로보어드바이저 수험 학습 시스템
KR102160915B1 (ko) * 2019-10-08 2020-10-05 (주)드림시큐리티 무매체 신원 확인을 통한 상품 구매 서비스 제공 장치 및 방법
KR20210065852A (ko) * 2019-11-27 2021-06-04 한국전자통신연구원 정책기반 스마트 계약을 생성하기 위한 방법 및 그 장치
US11620722B2 (en) 2019-11-27 2023-04-04 Electronics And Telecommunications Research Institute Method and apparatus of generating policy-based smart contract
KR20210074081A (ko) * 2019-12-11 2021-06-21 두나무 주식회사 서로 다른 블록체인들 사이의 토큰 전송 방법, 언스펜트 집합 재구성 방법 및 이를 위한 장치
KR20200125534A (ko) 2020-05-28 2020-11-04 넷마블 주식회사 블록체인을 이용한 자동 송금
KR102590471B1 (ko) 2023-01-31 2023-10-19 주식회사 셀디코리아 블록체인을 기반으로 하는 유통거래 관리시스템 및 이를 이용한 방법

Also Published As

Publication number Publication date
ES2680851T3 (es) 2018-09-11
TWI747880B (zh) 2021-12-01
WO2017145019A1 (en) 2017-08-31
IL261209B (en) 2021-05-31
IL278834B1 (en) 2023-05-01
CA3227439A1 (en) 2017-08-31
JP6511201B1 (ja) 2019-05-15
US20190057382A1 (en) 2019-02-21
LT3257191T (lt) 2018-11-12
SI3257191T1 (sl) 2018-11-30
SG11201806781SA (en) 2018-09-27
MX2018010057A (es) 2019-01-21
IL261209A (en) 2018-10-31
CN112686653A (zh) 2021-04-20
GB2562623A (en) 2018-11-21
CN109417465A (zh) 2019-03-01
CN109417465B (zh) 2021-01-15
AU2017223136B2 (en) 2022-06-02
CN112686653B (zh) 2024-06-07
US20240220974A1 (en) 2024-07-04
CA3015569A1 (en) 2017-08-31
US11120437B2 (en) 2021-09-14
GB201806739D0 (en) 2018-06-06
AU2017223136A1 (en) 2018-08-30
IL278834A (en) 2021-01-31
US11972422B2 (en) 2024-04-30
IL278834B2 (en) 2023-09-01
DK3257191T3 (en) 2018-07-23
TWI817232B (zh) 2023-10-01
PL3257191T3 (pl) 2019-01-31
CA3015569C (en) 2024-04-02
TW201732706A (zh) 2017-09-16
TW202209211A (zh) 2022-03-01
KR101987692B1 (ko) 2019-09-26
EP3257191B1 (en) 2018-04-11
US20210090076A1 (en) 2021-03-25
EA201891827A1 (ru) 2019-02-28
JP2019514089A (ja) 2019-05-30
EP3257191A1 (en) 2017-12-20
BR112018016815A2 (pt) 2018-12-26

Similar Documents

Publication Publication Date Title
KR101987692B1 (ko) 블록체인 집행의 스마트 계약을 위한 레지스트리 및 자동화 관리 방법
US20230254168A1 (en) System and method for controlling asset-related actions via a block chain
KR102416506B1 (ko) 블록체인을 이용한 논리 게이트 기능 구현
KR20180115764A (ko) 블록체인에서 교환을 구현하기 위한 토큰화 방법 및 시스템
Gayvoronskaya et al. Blockchain
Yi et al. Blockchain Foundations and Applications
Yi et al. Bitcoin, Ethereum, Smart Contracts and Blockchain Types
Haga et al. IoT‐Based Autonomous Pay‐As‐You‐Go Payment System with the Contract Wallet

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant