TW202105283A - 用以控制或執行區塊鏈上處理轉移之效率的電腦實施系統及方法 - Google Patents

用以控制或執行區塊鏈上處理轉移之效率的電腦實施系統及方法 Download PDF

Info

Publication number
TW202105283A
TW202105283A TW108146704A TW108146704A TW202105283A TW 202105283 A TW202105283 A TW 202105283A TW 108146704 A TW108146704 A TW 108146704A TW 108146704 A TW108146704 A TW 108146704A TW 202105283 A TW202105283 A TW 202105283A
Authority
TW
Taiwan
Prior art keywords
script
blockchain
transaction
address
hash
Prior art date
Application number
TW108146704A
Other languages
English (en)
Inventor
克瑞格 S 萊特
Original Assignee
安地卡及巴布達商區塊鏈控股有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 安地卡及巴布達商區塊鏈控股有限公司 filed Critical 安地卡及巴布達商區塊鏈控股有限公司
Publication of TW202105283A publication Critical patent/TW202105283A/zh

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/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/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/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
    • 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/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • 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
    • 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/3823Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/405Establishing or using transaction specific rules
    • 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/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
    • 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

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Power Engineering (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本發明提供方法及系統,藉由其控制在區塊鏈(例如,比特幣區塊鏈)上轉移之一組商定的條件可被產生及執行。有利地是,藉由強制待接收該資產之另一方必須滿足一組商定的規則,該等條件可被使用來指定並影響他們的行為。在一個實施例中,一種電腦實施的方法包含向一接收者提供有關於要在一區塊鏈網路上進行轉移之至少一個規則(r) 之一表示的步驟。它還包含步驟來從一發送者接收:一贖回腳本(R) 其包含該表示(r) 及包含有該贖回腳本(R) 之一雜湊(HR) 的一腳本地址。它還包含步驟來產生該贖回腳本(R) 的一雜湊(H) 並把其與該腳本地址進行比較。如果該雜湊(H) 與該腳本地址匹配,則該發送者可以在與一區塊鏈交易(TX0 )之一輸出相關聯之一鎖定腳本中使用該腳本地址,前提是知道該等規則(r)將被強制執行以便解鎖該資產。

Description

用以控制或執行區塊鏈上處理轉移之效率的電腦實施系統及方法
發明領域
本發明總體上涉及分散式計算網路,並且更具體地係涉及分散式分類帳技術(區塊鏈)。本發明提供有關於在一區塊鏈網路上參與者間所進行轉移及通信之安全性、實現及控制的優點。它提供了一種解決方案用於強制在該網路上未來的轉移可如何被執行,從而解決了迄今為止在該領域內被視為無法解決的問題。它適合於,但不侷限於,與機器可執行的智慧型合約一起使用。
發明背景
在本文件中,我們使用術語「區塊鏈」來包括所有電子的、基於電腦的、分散式分類賬的形式。這些包括基於共識的區塊鏈及交易鏈技術、允許的及未允許的分類賬、共享的分類賬及其變型。雖然已經提出並開發了其他的區塊鏈實現方式,但區塊鏈技術最廣為人知的應用係比特幣分類帳。雖然在本文中為了方便及說明的目的參考到比特幣,但應被注意的是,本發明不侷限於使用比特幣區塊鏈,替代的區塊鏈實現方式及協定仍落入到本發明的範圍內。本文使用術語「比特幣」來指衍生自該比特幣協定之協定的任何版本或變型。在本文中術語「使用者」可以指基於人力或基於處理器的資源。
一區塊鏈係一對等式電子分類賬,其被實現作為一基於電腦之去中心化的分散式系統,其係由區塊組成,而該等區塊係由交易所組成。每一個交易係一種資料結構,該資料結構對在該區塊鏈系統中參與者之間的一數位資產控制權轉移進行編碼,並包括至少一個輸入及至少一個輸出。每一個區塊都包含前一個區塊的一雜湊使得這些區塊被鏈接在一起,以建立自該區塊鏈被創建以來一直被寫入到該區塊鏈之所有交易的一永久性、不變的記錄。交易包含被嵌入在其輸入及輸出中被稱為腳本的小程式,這些程式指定如何以及由誰存取該等交易的該等輸出。在該比特幣平台上,這些腳本係使用一基於堆疊的腳本語言來編寫的。
為了把一交易寫入到該區塊鏈,必須對其進行「驗證」。網路節點(礦工)執行工作以確保每一筆交易均為有效的,而無效交易則被該網路拒絕。安裝在該等節點上的軟體客戶端藉由執行其鎖定及解鎖腳本來在一未消費的交易(UTXO)上執行此驗證工作。如果該鎖定及解鎖腳本的執行評估為TRUE(真),則該交易有效,並將該交易寫入到該區塊鏈。因此,對於把一交易寫入到區塊鏈的順序來說,必須為:i)它由接收該交易的該第一節點進行驗證–如果該交易被驗證為真,則該節點把其中繼到在該網路中的其他節點;ii)它被添加到由一礦工所建構的一新區塊中;iii)挖到礦,即把它添加到過去交易的該公開分類帳中。
儘管區塊鏈技術最廣為人知的係使用於加密貨幣的實施,數位企業家已經開始探索使用比特幣所基於之加密安全性系統以及可被儲存在該區塊鏈上之該資料兩者來實現新的系統。如果區塊鏈可被使用在不侷限於加密貨幣領域的自動化任務及流程,那將會是非常有利的。這樣的解決方案將能夠利用區塊鏈的好處(例如,永久性的、事件的防篡改記錄、分散式處理等),同時在其應用中更具有通用性。例如,此類研究及關注的領域之一係使用區塊鏈來實施「智慧型合約」。
為了提供一更加通用的區塊鏈平台,在參與者愛麗絲(Alice)與鮑勃(Bob)之間進行一資產的初始轉移之後,能夠控制或影響在該網路上「之後」轉移的方式將會是有利的。在許多不同類型的場景中,並針對許多不同的原因,所欲的是把規則(即條件或標準)準備就緒,其會指導該資產從鮑勃到一或多個其他參與者的後續轉移,而不需要各方之間的信任。迄今為止,在該技術界內部一直認為不可能對未來的區塊鏈交易施加約束性約束。
發明概要
本申請人已經發明了至少解決這項需求的一發明。本發明被限定在本文所附的該等請求項中。
根據本發明的一實施例,可以提供一種電腦實施的方法,其包含有以下的步驟: 產生有關於將在一區塊鏈網路上進行轉移之至少一個規則(r) 的一表示; 產生一贖回腳本(R) 其包含該表示(r) 及包含該贖回腳本(R) 之一雜湊(HR) 的一腳本地址; 把該贖回腳本(R) 的一雜湊(H) 與(針對)該腳本地址進行比較;以及 如果該雜湊(H) 與該腳本地址匹配,則在與一區塊鏈交易(TX0 )之一輸出(UTXO)相關聯的一鎖定腳本中使用該腳本地址。
附加地或替代地,可以提供一種電腦實施的方法,其包含有以下的步驟: 向一接收者提供有關於將在一區塊鏈網路上進行轉移之至少一個規則(r) 的一表示; 從一發送者接收:一贖回腳本(R) 其包含該表示(r) 及包含有該贖回腳本(R) 之一雜湊(HR) 的一腳本地址; 產生該贖回腳本(R) 的一雜湊(H) 並把其與該腳本地址進行比較;以及 如果該雜湊(H) 與該腳本地址匹配,則在與一區塊鏈交易(TX0 )之一輸出相關聯的一鎖定腳本中使用該腳本地址。
附加地或替代地,可以提供一種電腦實施的方法,其包含有以下的步驟: 從一發送者接收至少一個有關於將在一區塊鏈網路上進行轉移之至少一個規則(r) 的一表示; 向該發送者發送一贖回腳本(R) 其包含該表示(r) 及包含該贖回腳本(R) 之一雜湊(HR) 的一腳本地址; 在一另外的區塊鏈交易(TX1 )中提供該贖回腳本(R),該交易被安排來解鎖被鎖定在該腳本地址上一區塊鏈交易(TX0 )中的一輸出。
該區塊鏈網路可以是該比特幣網路或其變型,或者是另一個(非比特幣)區塊鏈網路。該方法可以包含產生該贖回腳本之一雜湊的步驟。它可以包括產生、更新及/或完成該區塊鏈交易(TX0 )的步驟。
本發明的實施例更可包含被包括在圖1或被提供在以下描述中的任何步驟。
一或多個實施例更可包含以下的步驟: 產生及/或使用另外的區塊鏈交易(TX1 ),該交易包含有一解鎖腳本,該解鎖腳本被安排來使用該腳本地址來解鎖該交易(TX0 )的該鎖定腳本。
優選地是,該交易TX0 ,及/或該另外的交易TX1 ,係一個交易類型,該交易類型允許加密貨幣被發送到在一輸出之該鎖定腳本中的一腳本雜湊/允許加密貨幣與在一輸出之該鎖定腳本中的一腳本雜湊相關聯/允許加密貨幣係由在一輸出之該鎖定腳本中的一腳本雜湊來鎖定,並且該交易類型需要一使用者在一解鎖腳本中提供一腳本匹配該腳本雜湊及資料,使得該腳本評估為真,以獲得(解鎖)該加密貨幣。如果該區塊鏈網路係該比特幣網路或其之變型,這可能是一種向腳本雜湊付費(P2SH)交易。如果該區塊鏈網路不是該比特幣網路或其之一變型,則該交易可能是根據另一(非比特幣)區塊鏈協定在功能上等效/類似的一交易類型。
優選地是,該表示(r) 係一區塊鏈腳本或用一區塊鏈腳本語言所撰寫之代碼的一部分/片段、一文字檔案、一智慧型合約、一影像、及/或一位置的一參考或一識別碼由該位置該至少一條規則可被存取。
優選地是,該至少一個規則涉及在該區塊鏈網路上可以如何或向誰進行一後續的轉移。
優選地是,該至少一條規則的該表示(r) 作為一不完整區塊鏈交易的一部分被提供給該接收者,或作為區塊鏈腳本代碼的一片段來被提供。
優選地是,該腳本地址被提供作為一區塊鏈交易的一部分。
優選地是,該方法更包含把該交易提交給一區塊鏈網路的步驟。
優選地是,該至少一個規則指定必須被提供的一密碼簽名以解鎖在該區塊鏈上的一資產。
本發明還提供一種電腦實現的系統,其包含有: 一處理器;以及 包括有可執行指令的記憶體,該可執行指令由於該處理器的執行而致使該系統執行如在本文中所述之該電腦實施方法的任何實施例。
本發明還提供一種非暫時性的電腦可讀取儲存媒體,其具有儲存在其上可執行指令,當該可執行指令由一電腦系統的一處理器執行時,致使該電腦系統至少執行如在本文中所述之本發明的一實施例。
較佳實施例之詳細說明 本發明的實施例提供了一種新穎且有利的機制來控制經由一區塊鏈網路之電子轉移。傳統上,約束、強制、影響或控制在該區塊鏈網路上經由後續交易所做之後續(「下游」)的交換被認為是不可能的。例如,如果愛麗絲經由一區塊鏈交易做出一轉移給鮑勃,傳統上認為愛麗絲不可能支配或控制鮑勃(或在該轉移鏈之更為下游的其他接收者)所進行的該(等)傳輸。一旦鮑勃已經從愛麗絲那裡接收到了該(等)轉移的資產,他可以自由地選擇行動。在許多的情況下這係不所欲的,因為使用者希望以一特定的方式來安排他們的通信路徑,或希望在如何及/或由誰來處理其電子資產、資料及通信的轉移上施加約束並不是罕見的。
本發明藉由提供一種加密執行的機制來解決這項議題,藉由該機制,一方可以把條件、約束及規則注入到一初始轉移中用以影響後續的轉移。它藉由一種數學上強制的控制技術來做到這一點,該技術使得安全、不變、可見及可追溯的條件可以與尚未在該區塊鏈網路上執行之未來的動作相關聯。
在提供一實施例的詳細實例之前,我們僅藉由介紹技術背景的方式提供的一些已知技術的簡要總結,該等已知技術的使用有利於本發明。 向腳本雜湊付費(P2SH)
不像在比特幣協定中標準的區塊鏈交易,其啟用付費到一公鑰 的雜湊,一P2SH交易允許一發送者付費到一腳本 的一雜湊。在一傳統的交易中,該輸出包含一(鎖定)腳本,在進行一支付嘗試時,該腳本必須評估為TRUE(真)。該鎖定腳本將指定誰必須簽名才能解鎖該相關聯的輸出。另一方面,使用一P2SH交易,該輸出不包括該腳本本身,而僅包括該鎖定腳本的一雜湊。因此,一P2SH地址包含一經雜湊的腳本並且可被識別出,因為它始於一個3(而一公鑰雜湊地址始於一個1)。
並非要求資金之一可能接收者要提供一簽名而該簽名可匹配被指定在該未花費輸出(UTXO)之該鎖定腳本中的一公鑰,一P2SH交易要求該接受者提供一腳本 (被稱為贖回腳本,我們在本文中把其稱為R ),其在該鎖定腳本中會雜湊出該相同的雜湊值,並且還提供被要求要滿足在該鎖定腳本中所列出之任何條件的資料而該資料將致使該腳本評估為TRUE。如果該贖回腳本雜湊匹配,並提供了該正確的資料以使得該UTXO的鎖定腳本產出了一TRUE評估,則與輸出相關聯的該資金被被解鎖同時控制被轉移給該接收者。
應被注意的是,根據使用一不同的(基於非比特幣的)區塊鏈協定所實現之本發明的實施例,該交易類型可以被稱為「P2SH」以外的其他名稱。然而,該功能可能本質上是相同的,因為該交易之鎖定資金的該潛在接收者必須提供該腳本,該腳本在進行雜湊處理時與在該交易輸出的鎖定腳本中所提供的該雜湊匹配。但是,為了便於參考,我們將使用術語「P2SH」來指具有這種功能/特徵的一交易類型。 智慧型合約
一智慧型合約係一種電腦程式,其被設計成自動執行一機器可讀取合約或協定的該等條件。與以自然語言所撰寫的一傳統合約不同,一智慧型合約係一機器可讀取且可執行的程式,其包含可以處理輸入以產生結果的規則,然後可以根據這些結果致使行動被執行。提供本發明之一概述的一說明性實施例
假設愛麗絲(Alice)擁有一定數量的加密貨幣,或是在一區塊鏈上被代幣化的資產或其他的資源。她創建了一組條件或規則r ,這些條件或規則規定了她的資產將被轉移及/或存取的該等條件。該組規則以比特幣腳本語言、腳本、與比特幣相關的實現方式來被制定,但如果使用一不同區塊鏈協定的話,則可能以某種其他的語言來制定。
愛麗絲想把她的資產轉移給鮑勃(Bob),並確保當鮑勃解鎖在區塊鏈上的該資產時也遵循這些規則。例如,該(等)規則r 可能是她的資產只有在也提供伊芙(Eve)之簽名的情況下才能被解鎖。在比特幣腳本中,這種情況會被表示為:r = OP_DUP  OP_HASH160 >H(PE )> OP_EQUALVERIFY OP_CHECKSIGVERIFY (1) 這裡PE 係伊芙的公鑰。這個腳本將會在如果以下輸入被提供才評估為TRUE
Figure 02_image001
= >Sig
Figure 02_image003
>>
Figure 02_image003
> 現在考慮以下情形:
Figure 02_image005
愛麗絲在從她自己到鮑勃的該第一筆交易tx 1 上強制了該等規則r
愛麗絲可能強制從鮑勃到查理(Charlie)的下一筆交易也遵循相同的規則。也就是說,來自tx 1 之該輸出UTXO1 的該支付與輸出UTXO0 的該支付遵循相同的規則r 。這係以如下方式完成的。 1.              愛麗絲把該組規則r 發送給鮑勃。回想一下,該等規則被表示為一區塊鏈腳本代碼片段,例如,如以上在(1)中所示。 2.              鮑勃創建了一贖回腳本R ,該腳本包含該等規則r 及其自己的規則,例如他自己的簽名的要求。
Figure 02_image007
3.              鮑勃基於該贖回腳本RB 創建一「付費到腳本雜湊」(P2SH)地址P1 。 4.              鮑勃把他的P2SH地址P1 以及該贖回腳本RB 一起發送給愛麗絲。 5.              愛麗絲檢查鮑勃的P2SH地址P1 是否對應於該贖回腳本RB 的該雜湊。
現在,愛麗絲可以確定,當她創建一被鎖定到鮑勃之P2SH地址的一交易tx1 時,它將會受到該等規則r 的約束。為了使鮑勃藉由創建一另外的交易tx2 來解鎖該資產,該等規則r 必須被滿足在鮑勃的解鎖腳本中,否則結果將為FALSE(偽)且該輸出將不會被解鎖。使用本發明的逐步實例
為了使讀者易於理解,請參考圖1,我們現在提供本發明之一示例性實施例的一更詳細的逐步實例。
在步驟101中,複數個參與方,例如愛麗絲及鮑勃,決定一行動過程,該行動由一組條件、規則或準則(以下我們將簡單地稱為「規則」r )來支配。這可以是任何類型的行動,諸如加密貨幣或在區塊鏈上所持有之代幣的轉移,或某些設備、商品、或服務等等的購買/出租/提供。類似地,該等條件可以是在該行動執行上的任何約束,例如,愛麗絲將在確認一特定事件之後把區塊鏈上的一代幣化的實體轉移給鮑勃。
愛麗絲(或其他方)產生該等規則r 的一表示。該表示可以採用任何的形式,例如一文字檔案、一圖片、一聲音檔案、腳本、等等。從本質上講,它是該等約定的行動以及控制這些行動執行之條件/規則/標準的一記錄。在一些實施例中,它可以是一智慧型合約,如在本領域中所熟知並在上文中所解釋的。在一較佳的實施例中,該等條件以比特幣腳本語言腳本或以某種其他與區塊鏈相容且可執行的語言來表示。因此,r 可以是代碼片段或(區塊鏈腳本)代碼的一部分。
在步驟102,鮑勃使用愛麗絲的腳本代碼片段r 以產生一贖回腳本R 因此,該贖回腳本R 包含該等規則r 。鮑勃還可能包括他自己的一些其他規則。
在步驟103中,鮑勃使用該贖回腳本R 來產生一雜湊H(R) ,他可以把其當作他的P2SH地址。
在步驟104,鮑勃發送他的P2SH地址及該贖回腳本R 給愛麗絲。這可以以任何合適的方式來執行。然後,愛麗絲可以確認該贖回腳本R 包括她的規則r
在步驟105及106中,愛麗絲檢查由鮑勃所提供的該P2SH是否係鮑勃之贖回腳本的該雜湊。這是一快速且運算上簡單的程序。如果它們不匹配,那麼愛麗絲可以選擇要終止該交易或查詢它。然而,如果它們確實匹配的話,則她可以在知道她自己的規則已被包括並且將被強制執行的情況下繼續進行操作,因此她產生一區塊鏈交易TX0 其在步驟107中發送出給該網路以進行驗證,並將被挖礦到一區塊中。
在步驟108中,當鮑勃希望存取在TX0 由愛麗絲鎖定的該資產時,他產生一支付交易TX1 ,該支付交易包括一輸出(UTXO)其將向TX0 的該鎖定腳本提供該所需的贖回腳本R 以釋放該資產。為了使這種情況發生,該代碼片段r 必須評估為TRUE,其確保了最初由愛麗絲所指定的該等規則r 已經被強制執行。
在一替代實施例中,可以藉由產生一不完整的部分交易來執行以上的過程。這可以由愛麗絲把該代碼片段r 插入到一部分完成之P2SH交易TX0 的該鎖定腳本中來完成。該鎖定腳本係以TX0 之一未花費的輸出UTXO相關聯,並確定該UTXO如何可由一另外、隨後的交易TX1 來解鎖。TX0 不完整係因為它尚未包含該P2SH地址。這將由鮑勃來提供。
按照步驟103,該部分交易TX0 (包括該代碼片段r )被傳送給鮑勃。這可以通過多種方式來實現。鮑勃能夠檢查在r 中的該等規則匹配愛麗絲及鮑勃在步驟101中所商定的那些。
按照步驟103,鮑勃產生一贖回腳本R ,其包括該等規則r ,然後產生R 的一雜湊以產生他的P2SH地址。在步驟104中,藉由鮑勃把他的P2SH地址插入到交易TX0 中並將其發送回給愛麗絲,鮑勃的贖回腳本R 及P2SH被傳遞給愛麗絲。R 可以通過任何合適的方法被發送。從鮑勃之TX0 的更新版本中,愛麗絲可以檢查他所提供的該P2SH地址是否與包含該等規則r 之該贖回腳本R 的該雜湊值匹配。
在步驟107中,愛麗絲如上所述把TX0 提交給該區塊鏈網路。根據已知的技術其被進行驗證並被挖礦成為一區塊。當然,鮑勃希望花費在TX0 中的該UTXO,因此必須在步驟108中對其進行解鎖。為了解鎖該UTXO,他必須要提供用於該UTXO之該贖回腳本之該必要的雜湊,所以他產生一支出交易TX1 ,其包括TX1 的解鎖腳本。TX1 然後被送出到該區塊鏈上、驗證及被挖礦,使得該雜湊將被呈現給在TX0 中的該贖回腳本,該輸出將被解鎖及該資產(例如加密貨幣的部分,代幣等等)的轉移發生。現在,鮑勃擁有該資產。
因此,本發明提供了先前被認為在本技術領域內無法解決問題的一種解決方案,並且經由使用數學及密碼技術,使得能夠控制、強制以及約束在一區塊鏈網路上各方之間的後續轉移。
現在參考圖2,圖2提供了可被使用來實踐本發明之至少一個實施例之一運算裝置2600的一說明性、簡化的方塊圖。在各種實施例中,該運算裝置2600可被使用來實現以上所示出及描述的任何系統。例如,該運算裝置2600可被組配成使用作為一資料伺服器、一網路伺服器、一可攜式運算裝置、一個人電腦、或任何的電子運算裝置。如在圖2中所示,該運算裝置2600可以包括具有一或多個級別之快取記憶體及一記憶體控制器的一或多個處理器(被統稱為2602),其可以被組配為與包括主記憶體2608及一持久性記憶體2610的一儲存子系統2606進行通信。該主記憶體2608可以包括如圖所示的動態隨機存取記憶體(DRAM) 2618及唯讀記憶體(ROM)2620。該儲存子系統2606及該快取記憶體2602可被使用來儲存資訊,諸如與本發明中所描述之交易及區塊相關聯的細節。該(等)處理器2602可被使用來提供在本發明中所描述之任何實施例的該等步驟或功能。
該(等)處理器2602還可以與一或多個使用者介面輸入裝置2612、一或多個使用者介面輸出裝置2614、以及一網路介面子系統2616進行通信。
一匯流排子系統2604可以提供使得運算裝置2600之各種組件及子系統能夠按預期彼此進行通信的機制。儘管該匯流排子系統2604被示意性地展示出為一單一匯流排,但是該匯流排子系統的替代實施例可以利用多個匯流排。
該網路介面子系統2616可以提供介接其他運算裝置及網路的一介面。該網路介面子系統2616可以當作用於從該運算裝置2600接收資料,以及向其他系統傳輸資料的一介面。例如,該網路介面子系統2616可以使一資料技術人員能夠把該裝置連接至一網路,使得該資料技術人員可能能夠在一遠程位置諸如一資料中心處把資料傳輸到該裝置並從該裝置接收資料。
該使用者介面輸入裝置2612可以包括一或多個使用者輸入裝置諸如一鍵盤;指向裝置諸如一整合式的滑鼠、軌跡球、觸控板、或圖形輸入板;一掃描器;一條碼掃描器;整合到該顯示器中的觸控螢幕;音訊輸入裝置諸如語音識別系統、麥克風;以及其他類型的輸入裝置。通常,術語「輸入裝置」的使用旨在包括用於把資訊輸入到該運算裝置2600之所有可能類型的裝置及機制。
該等一或多個使用者介面輸出裝置2614可以包括一顯示器子系統、一印表機、或諸如音訊輸出裝置之非可視的顯示器、等等。該顯示器子系統可以是一陰極射線管(CRT)、一平板裝置諸如一液晶顯示器(LCD)、發光二極體(LED)顯示器、或投影機或其他的顯示器裝置。通常,術語「輸出裝置」的使用旨在包括用來從該運算裝置2600輸出資訊之所有可能類型的裝置及機制。該等一或多個使用者介面輸出裝置2614可被使用來,例如,向使用者呈現使用者介面以有助於使用者與執行所描述之程序及其變化的應用程式互動,當這樣的互動可能是適當的時候。
該儲存子系統2606可以提供一種用於儲存可提供本發明之至少一個實施例之該功能的基本編程及資料結構的電腦可讀取儲存媒體。該等應用程式(程序、程式碼模組、指令),當由一或多個處理器2602執行,可以提供本發明之一或多個實施例的該功能,並且可被儲存在該儲存子系統2606中。這些應用程式模組指令可該等一或多個處理器來執行。該儲存子系統2606可以額外地提供用於儲存根據本發明所使用之資料的一儲存庫。例如,該主記憶體2608及快取記憶體2602可以為程式及資料提供依電性儲存。該永久性記憶體2610可以為程式及資料提供永久性(非依電性)儲存,並且可以包括快閃記憶體、一或多個固態碟、一或多個磁性硬碟、一或多個具有相關聯之可移動媒體的軟碟、一或多個具有相關聯之可移動媒體之光碟(例如CD-ROM或DVD或藍光)、以及其他類似儲存媒體。這樣的程式及資料可以包括用於執行如在本發明中所描述之一或多個實施例的步驟的程式,以及與如在本發明中所描述之與交易及區塊相關聯的資料。
該運算裝置2600可以是各種類型,包括一可攜式電腦裝置、平板電腦、一工作站、或以下描述之任何其他的裝置。另外,該運算裝置2600可以包括可以透過一或多個埠(例如,USB、一耳機插孔、Lightning連接器、等等)被連接到該運算裝置2600的另一裝置。可被連接至該運算裝置2600的該裝置可包括被組配成接受光纖連接器的複數個埠。因此,該裝置可以被組配成把光信號轉換為電氣信號,該電氣信號可以透過把該裝置連接至該運算裝置2600的該埠進行傳輸以進行處理。由於電腦及網路之不斷變化的性質,在圖2中所描繪之該運算裝置2600的描述僅旨在作為一特定示例用於說明該裝置之較佳實施例的說明。與在圖2中所描繪的系統相比,具有更多或更少組件之許多其他的組配是有可能的。
應被注意的是,該等上述實施例說明了本發明而不是限制了本發明,並且本領域的習知技藝者將能夠設計許多替代的實施例而不會脫離由所附請求項所限定之本發明的範圍。在該等請求項中,在括號內的任何附圖標記均不應被解釋為對該請求項的限制。詞語「包含有」及「包含」等等並不排除在任何請求項或整個說明書中所列出之元件或步驟之外存在有其他的元件或步驟。在本說明書中,「包含」係指「包括或由…組成」,「包含有」係指「包括有或由…組成」。元件的單數形式並不排除此類元件的複數形式,反之亦然。本發明可以通過包括幾個不同元件的硬體以及通過一適當規劃之電腦來實現。在列舉出數個構件的一裝置請求項中,這些構件中的一些可由一個及相同的硬體項目來體現。在互不相同之從屬請求項中所記載之某些措施的事實並不表示這些措施的一種組合不能被有利地使用。
101〜108:方塊 2600:運算裝置 2602:處理器 2604:匯流排子系統 2606:儲存子系統 2608:主記憶體 2610:檔案儲存子系統 2612:使用者介面輸入裝置 2614:使用者介面輸出裝置 2616:網路介面 2618:RAM 2620:ROM 2624:時鐘
參考本文所描述的實施例,本發明的這些及其他方面將變得顯而易見。現在將僅通過舉例的方式並參考附圖來描述本發明的實施例,其中:
圖1從一高階的觀點圖示出本發明之實施例的一流程圖。
圖2圖示出在其中可以實現各種實施例之一運算環境的一示意圖。
101~108:方塊

Claims (13)

  1. 一種電腦實施的方法,其包含有以下的步驟: 產生有關於要在一區塊鏈網路上進行一轉移之至少一個規則(r) 的一表示; 產生一贖回腳本(R) 其包含該表示(r) 及包含該贖回腳本(R) 之一雜湊(HR) 的一腳本地址; 把該贖回腳本(R) 的一雜湊(H) 與該腳本地址進行比較;以及 如果該雜湊(H) 與該腳本地址匹配,則在與一區塊鏈交易(TX0 )之一輸出相關聯的一鎖定腳本中使用該腳本地址。
  2. 如請求項1之方法並更包含有以下的步驟: 產生及/或使用一另外的區塊鏈交易(TX1 ),該交易包含有一解鎖腳本,該解鎖腳本被安排成使用該腳本地址來解鎖該交易(TX0 )的該鎖定腳本。
  3. 如請求項1或2之方法,其中該交易(TX0 ),及/或該另外的交易(TX1 ),係在該比特幣協定或其之變型中的一種向腳本雜湊付費(P2SH)交易,或係在另一區塊鏈協定中之功能上類似/等效的交易類型。
  4. 如任一前述請求項之方法,其中該表示(r) 係一區塊鏈腳本或用一區塊鏈腳本語言所撰寫之代碼的一部分、一文字檔案、一智慧型合約、一影像、一位置之一參考或識別碼,在該位置該至少一條規則可被存取。
  5. 如任一前述請求項之方法,其中: 該至少一條規則涉及在該區塊鏈網路上如何或向誰進行一後續的轉移。
  6. 如任一前述請求項之方法,其中該至少一條規則的該表示(r) 作為一不完整的區塊鏈交易的一部分被提供給該接收者,或作為區塊鏈腳本代碼的一片段來被提供。
  7. 如任一前述請求項之方法,其中該腳本地址被提供作為一區塊鏈交易的一部分。
  8. 如任一前述請求項之方法並且更包含有把該交易提交給該區塊鏈網路的該步驟。
  9. 如任一前述請求項之方法,其中該至少一個規則指定必須被提供的一密碼簽名以解鎖在該區塊鏈上的一資產。
  10. 一種電腦實施的方法,其包含有以下的步驟: 向一接收者提供有關於要在一區塊鏈網路上進行一轉移之至少一個規則(r) 的一表示; 從一發送者接收:一贖回腳本(R) 其包含該表示(r) 及包含有該贖回腳本(R) 之一雜湊(HR) 的一腳本地址; 產生該贖回腳本(R) 的一雜湊(H) 並把其與該腳本地址進行比較; 如果該雜湊(H) 與該腳本地址匹配,則在與一區塊鏈交易(TX0 )之一輸出相關聯的一鎖定腳本中使用該腳本地址。
  11. 一種電腦實施的方法,其包含有以下的步驟: 從一發送者接收有關於要在一區塊鏈網路上進行一轉移之至少一個規則(r) 的一表示; 向該發送者發送:一贖回腳本(R) 其包含該表示(r) 及包含該贖回腳本(R) 之一雜湊(HR) 的一腳本地址; 在一另外的區塊鏈交易(TX1 )中提供該贖回腳本(R),該交易被安排成解鎖被鎖定在該腳本地址之一區塊鏈交易(TX0 )中的一輸出。
  12. 一種電腦實施的系統,其包含有: 一處理器;以及 包括有可執行指令的記憶體,由於該可執行指令由該處理器來執行,致使該系統執行如請求項1至11任一之電腦實施方法的任一實施例。
  13. 一種非暫時性的電腦可讀取儲存媒體,其具有儲存在其上的可執行指令,由於該可執行指令由一電腦系統的一處理器來執行,致使該電腦系統至少執行如請求項1至11任一之方法的一實施例。
TW108146704A 2018-12-21 2019-12-19 用以控制或執行區塊鏈上處理轉移之效率的電腦實施系統及方法 TW202105283A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB1820947.8A GB201820947D0 (en) 2018-12-21 2018-12-21 Computer-implemented system and method
GB1820947.8 2018-12-21

Publications (1)

Publication Number Publication Date
TW202105283A true TW202105283A (zh) 2021-02-01

Family

ID=65364369

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108146704A TW202105283A (zh) 2018-12-21 2019-12-19 用以控制或執行區塊鏈上處理轉移之效率的電腦實施系統及方法

Country Status (8)

Country Link
US (1) US20220051236A1 (zh)
EP (1) EP3899837A1 (zh)
JP (1) JP2022511971A (zh)
KR (1) KR20210106532A (zh)
GB (1) GB201820947D0 (zh)
SG (1) SG11202105308UA (zh)
TW (1) TW202105283A (zh)
WO (1) WO2020128814A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI770933B (zh) * 2021-04-09 2022-07-11 重量科技股份有限公司 基於跨鏈架構的身份識別管理方法及身份識別管理系統

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11488145B2 (en) * 2020-03-17 2022-11-01 Mastercard International Incorporated Method and system for user-based distributed ledgers

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180240107A1 (en) * 2015-03-27 2018-08-23 Black Gold Coin, Inc. Systems and methods for personal identification and verification
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
EP3396608A1 (en) * 2017-04-24 2018-10-31 BlockSettle AB Method and system for settling a blockchain transaction
GB201709760D0 (en) * 2017-06-19 2017-08-02 Nchain Holdings Ltd Computer-Implemented system and method
KR20200104413A (ko) * 2018-01-17 2020-09-03 메디씨 벤쳐스, 인코포레이티드 거래 주소를 생성하기 위해 n개의 키 중 m개를 사용하는 다중 승인 시스템
US10693637B2 (en) * 2018-03-23 2020-06-23 Belavadi Nagarajaswamy Ramesh System and method for composite-key based blockchain device control

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI770933B (zh) * 2021-04-09 2022-07-11 重量科技股份有限公司 基於跨鏈架構的身份識別管理方法及身份識別管理系統

Also Published As

Publication number Publication date
SG11202105308UA (en) 2021-07-29
CN113228075A (zh) 2021-08-06
JP2022511971A (ja) 2022-02-01
KR20210106532A (ko) 2021-08-30
EP3899837A1 (en) 2021-10-27
US20220051236A1 (en) 2022-02-17
GB201820947D0 (en) 2019-02-06
WO2020128814A1 (en) 2020-06-25

Similar Documents

Publication Publication Date Title
TWI828857B (zh) 在區塊鏈網路上實施轉移之電腦實施系統及方法
JP2023029895A (ja) クラウドベースのコンピューティング環境において分散台帳技術のためのインテリジェントな合意、スマートな合意、及び重み付き合意のモデルを実現するシステム、方法、及び装置
JP7428704B2 (ja) デジタルリソースへのアクセスを移転するための、コンピュータにより実施されるシステム及び方法
JP2020516103A (ja) ブロックチェーンネットワークにおけるデータ分離
WO2021130586A1 (en) Destination addressing for transactions associated with a distributed ledger
US11038685B1 (en) Correcting blockchain transactions with cryptocurrency type mistakes
US20240086914A1 (en) Platform for a plurality of services associated with a blockchain
TW202105283A (zh) 用以控制或執行區塊鏈上處理轉移之效率的電腦實施系統及方法
JP2022532764A (ja) プルーフオブワークブロックチェーンネットワークにおける非並列化マイニングのためのシステムおよび方法
US20230316241A1 (en) Partitioning a request into transactions for a blockchain
CN113228075B (zh) 用于控制或强制执行在区块链上进行的转移的计算机实现的系统和方法
TW202135504A (zh) 平台服務驗證技術
RU2755672C1 (ru) Способ безопасного хранения и обновления данных в распределенном реестре с помощью сетей квантовых коммуникаций
JP7512294B2 (ja) ブロックチェーンネットワークを介した移転を実施するためのコンピュータで実施されるシステムおよび方法
US20230067629A1 (en) Cryptographic techniques for updating a distributed data structure
US20230093411A1 (en) Synchronising event streams