TW202025665A - 用以移轉數位資源存取權之電腦實施系統及方法 - Google Patents

用以移轉數位資源存取權之電腦實施系統及方法 Download PDF

Info

Publication number
TW202025665A
TW202025665A TW108134022A TW108134022A TW202025665A TW 202025665 A TW202025665 A TW 202025665A TW 108134022 A TW108134022 A TW 108134022A TW 108134022 A TW108134022 A TW 108134022A TW 202025665 A TW202025665 A TW 202025665A
Authority
TW
Taiwan
Prior art keywords
blockchain
transaction
value
key
private key
Prior art date
Application number
TW108134022A
Other languages
English (en)
Inventor
歐文 沃恩
Original Assignee
安地卡及巴布達商區塊鏈控股有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 安地卡及巴布達商區塊鏈控股有限公司 filed Critical 安地卡及巴布達商區塊鏈控股有限公司
Publication of TW202025665A publication Critical patent/TW202025665A/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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
    • H04L9/3073Public 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 involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • 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
    • 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)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Storage Device Security (AREA)

Abstract

本發明提供一種用於移轉資源存取權或資源控制權的電腦實施方法。該方法包含以下步驟:藉由將一資料項(
Figure 108134022-11-0001
)提供至第一區塊鏈交易來提供可兌換以移轉對一資源之控制的一區塊鏈交易,其中能夠僅藉由一可展現值(
Figure 108134022-11-0002
)及一秘密值(

Description

用以移轉數位資源存取權之電腦實施系統及方法
發明領域 本揭露內容大體上係關於資源存取權或資源控制權之安全移轉,且更特定而言,係關於此類存取或控制之經由使用一或多個區塊鏈交易傳輸之密碼密鑰進行之原子移轉。本揭露內容尤其適用於(但不限於)比特幣協定之任何變化。
發明背景 在此文件中,吾人使用術語「區塊鏈」來包括所有形式的基於電腦之電子分散式總帳。此等總帳包括基於共識之區塊鏈及交易鏈技術、許可及未許可總帳、共用總帳及其變化。儘管已提議並開發了其他區塊鏈實施方案,但區塊鏈技術之最廣泛已知之應用為比特幣總帳。雖然本文中出於方便及說明的目的可提及比特幣,但應注意,本揭露內容不限於與比特幣區塊鏈一起使用,且替代區塊鏈實施方案及協定屬於本揭露內容之範疇。術語「使用者」在本文中可指人類或基於處理器之資源。
區塊鏈為點對點電子總帳,其經實施為由區塊構成的基於電腦之非集中式分散系統,該等區塊又由交易構成。每一交易為一資料結構,且包括至少一個輸入及至少一個輸出,該資料結構編碼區塊鏈系統中之參與者之間的數位資產之控制的移轉。每一區塊含有先前區塊之散列,使得該等區塊變為鏈接在一起以創建自一開始就已寫入至區塊鏈之所有交易的永久性不可變更之記錄。交易含有嵌入至其輸入及輸出中的稱為腳本的小程式,其指定可如何及由誰存取交易之輸出。在比特幣平台上,此等腳本係使用基於堆疊之腳本語言來撰寫。
對於交易而言,為了寫入至區塊鏈,交易必須經「驗證」。網路節點(挖掘者(miner))執行工作以確保每一交易有效,其中由網路拒絕無效交易。安裝於節點上之軟體用戶端藉由執行其鎖定及解除鎖定腳本來對未用交易(UTXO)執行此驗證工作。若鎖定及解除鎖定腳本的執行評估為真(TRUE),則交易為有效的且交易經寫入至區塊鏈。因此,為了將交易寫入至區塊鏈,該交易必須:i)由接收交易之第一節點進行驗證,若交易經驗證,則節點將該交易轉送至網路中之其他節點;且ii)添加至由挖掘者建構之新區塊;且iii)經挖掘,即,添加至過去交易之公用總帳。
雖然區塊鏈技術由於密碼貨幣實施方案之使用而為最廣泛已知的,但數位企業家已開始探索比特幣所基於之密碼安全系統及可儲存於區塊鏈上以實施新系統之資料二者的使用。區塊鏈技術在區塊鏈可用於不限於密碼貨幣範圍之自動任務及程序時將非常有利。此類解決方案將能夠利用區塊鏈的益處(例如,事件的永久性防篡改記錄、分散式處理等),同時在其應用中變得更通用。
發明概要 當前研究之一個領域係使用區塊鏈用於實施「智慧型合約」。此等智慧型合約係經設計以使機器可讀合約或協議之條款之執行自動化的電腦程式。不同於將以自然語言撰寫之傳統合約,智慧型合約係包含可處理輸入以產生結果之規則的機器可執行程式,該等規則接著可取決於彼等結果而使得執行動作。
區塊鏈相關關注之另一領域係使用「符記」 (或「彩色幣」)來表示真實世界實體及經由區塊鏈移轉真實世界實體。潛在地敏感或秘密之物件可由符記表示,符記不具有可辨別之含義或值。符記因此充當允許自區塊鏈引用真實世界物件之識別符。
先前已在密碼貨幣團體中論述了原子交換(swap)之概念。各方之間的交換(exchange)在所有參與者接收其所需資源(例如,密碼貨幣符記或幣)或無一者如此之意義上為「原子的」。在撰寫時,維基百科(Wikipedia)將原子交換描述為「在密碼貨幣中提出的允許一個密碼貨幣交換另一密碼貨幣而無需可信第三方之特徵。在傳統密碼貨幣中,可信第三方(諸如密碼貨幣交換)必需執行密碼貨幣之交換以便防止一方發送貨幣而不接收回報之貨幣。原子交換系統使用散列時間鎖定之智慧型合約,使得一方必須在指定時間內遞送待交換之貨幣,否則交易將取消。此保持原子性,其中要麼將發生交換,要麼將不交換貨幣」 - https://en.wikipedia.org/wiki/Atomic_swap。
因此,原子交換提供對於區塊鏈上進行之移轉而言的增強安全性,此係因為消除對可信第三方之需求消除利用及惡意干預(對於密碼貨幣交換(諸如Mount Gox)而言已進行許多安全破壞或「侵入(hack)」)之風險。
因此,期望提供原子交換資源之密碼強制資源交換方法,該方法具有由區塊鏈技術提供之去信任性及不變性,且對於區塊鏈實施網路上進行之交換而言增強安全性。
現已設計出此類經改良解決方案。
因此,根據本揭露內容,提供一種如隨附申請專利範圍中所界定之方法。
根據本揭露內容,可提供一種電腦實施方法。其可經描述為一種用於移轉對資源之控制的方法。其可跨區塊鏈網路或經由區塊鏈網路來控制資源之移轉。另外或替代地,該方法可經描述為一種安全移轉方法。另外或替代地,該方法可經描述為一種用於控制可在何時及/或由誰存取受控制資源之安全方法。資源可為儲存於區塊鏈上或自區塊鏈引用之資源,諸如密碼貨幣的一部分或符記化物件/資產/實體。
方法可包含以下步驟:藉由將至少一資料項提供至第一區塊鏈交易來提供可兌換以啟用第一資源存取權之第一區塊鏈交易,其中可僅藉由可展現值及秘密值二者之控制器來判定資料項;及將可展現值提供至秘密值之控制器以使該控制器能夠判定資料項。在本揭露內容之上下文中,「啟用存取」包括但不限於移轉資源(諸如一定量之密碼貨幣)控制權,或啟用對文件、線上資源或安全存取程式碼之存取。
此方法使得能夠使用一或多個區塊鏈安全地移轉資源存取權或資源控制權而無需彼等區塊鏈之協定共用一或多個公共散列函數,籍此提供增大可跨其實現移轉之區塊鏈的數目的優勢。此類控制或存取之移轉的安全性及效率因此得以保留,同時提高移轉之通用性。該方法亦允許跨另外不相容網路/區塊鏈協定之移轉。
資料項可包含第一密碼密鑰對之第一私用密鑰。
第一區塊鏈交易可進一步要求提供第二密碼密鑰對之第二私用密鑰可兌換,其中第二密碼密鑰對與第一資源之預期接收者相關聯。
此提供以下優勢:藉由防止對第一私用密鑰有不合需要之瞭解的任何人員兌換第一交易來提高方法之安全性。
第一私用密鑰可為確定性密碼密鑰對之確定性私用密鑰,其中使用第一密碼密鑰對之第一公用密鑰及第二密碼密鑰對之第二公用密鑰來導出該確定性密碼密鑰對之確定性公用密鑰。
此藉由以下來進一步提高方法之安全性:提供一定程度之混淆,使得第一私用密鑰之不合需要之揭示並不損害第一交易,同時維持預期接收者兌換第一交易之能力。
向該控制器提供可展現值之步驟可包含:藉由將至少資料項提供至第二區塊鏈交易來提供可兌換以啟用第二資源存取權之第二區塊鏈交易,其中第二區塊鏈交易之兌換使得將可展現值提供至該控制器;及兌換該第二區塊鏈交易。
此使得能夠執行資源存取或控制之原子交換而無需使用散列函數,籍此提供一種用於執行安全及同步之數位交換而不限制共用公共散列函數之彼等區塊鏈協定的機制。
區塊鏈交易上之任一者之兌換可包含計算對應於資料項之密碼簽名及將儲存於交易中之值與所計算簽名之至少一部分進行比較。
此使得能夠在區塊外執行顯著比例之密碼算法,籍此將維持一定程度密碼安全性之必要任務自區塊鏈分散開且提供減小第一交易之大小(且因此減少儲存要求)的相關優勢且提高方法之效率。
秘密值可為數位簽名程序中所用之暫時性密鑰。
本揭露內容亦提供一種系統,其包含:處理器;及記憶體,其包括可執行指令,該等可執行指令因由處理器執行而使得系統執行本文中所描述的電腦實施方法之任何實施例。
本揭露內容亦提供其上儲存有可執行指令之非暫時性電腦可讀儲存媒體,該等可執行指令因由電腦系統之處理器執行而使得電腦系統至少執行本文中所描述的電腦實施方法之實施例。
較佳實施例之詳細說明 典型散列函數(例如,SHA-256)採用資料結構
Figure 02_image007
且輸出256位元數字
Figure 02_image009
。其為單向確定性函數
Figure 02_image011
在密碼貨幣之上下文中,散列函數可用於創建散列謎題 。此為函數>Solve
Figure 02_image013
>,該函數在且僅在原像
Figure 02_image007
提供於對函數之輸入中時評估為真(TRUE)。亦即 >
Figure 02_image007
>>Solve
Figure 02_image013
> = TRUE。
對於SHA-256,此類函數在比特幣腳本中由以下給出 >Solve
Figure 02_image013
> = OP_HASH256 >
Figure 02_image013
> OP_EQUALVERIFY。
散列謎題可用於區塊鏈交易之腳本,諸如兌換腳本,以確保若兌換該交易,則原像
Figure 02_image007
必須曝露於兌換腳本之輸入中,且因此在區塊鏈上可見。
輸入 兌換腳本
>
Figure 02_image015
>
>Solve
Figure 02_image017
>
根據ECDSA協定,按以下方式創建私用密鑰
Figure 02_image019
及訊息散列
Figure 02_image021
的簽名(應注意,訊息散列為每個人所知,但私用密鑰僅為對訊息簽名之人所知):
第一步驟為產生稱為暫時性密鑰 之隨機數
Figure 02_image023
。由此導出值
Figure 02_image025
,該值為暫時性密鑰乘以產生器點之x座標
Figure 02_image027
Figure 02_image025
形成一半簽名。第二半
Figure 02_image029
由以下等式限定
Figure 02_image031
組合
Figure 02_image033
為ECDSA簽名。
ECDSA之一個重要特徵為若暫時性密鑰
Figure 02_image035
為已知,則私用密鑰可如下計算:
Figure 02_image037
簽名
Figure 02_image039
之資料結構含有經一些額外編碼資料串接之
Figure 02_image025
Figure 02_image029
之整數值。
根據可辨別編碼規則(Distinguished Encoding Rule;DER) [S. Blake-Wilson, D. Brown, P. Lambert,橢圓曲線密碼學(ECC)算法在密碼訊息語法(CMS)中之使用,網路工作組(2002);https://tools.ietf.org/html/rfc3278],ECDSA簽名
Figure 02_image039
之資料結構之特定編碼由圖1中所展示之表給出(應注意,使用虛設
Figure 02_image025
Figure 02_image029
資料值)。
參考圖1,應注意,表示簽名散列類型之最後一個位元組不為標準DER編碼但用於比特幣簽名編碼。簽名之第4位元組表示
Figure 02_image025
之長度。此在
Figure 02_image025
之二進位表示中之前導位為0之情況下為任一32位元組,或在前導位為1之情況下為33位元組,在此情況下額外零值位元組添加至位元組串。簽名之第5位元組至第36或第37位元組表示自身的值或
Figure 02_image025
現將描述用於創建私用密鑰謎題之方法。
私用密鑰謎題為兌換腳本中之函數,若提供輸入使得能夠計算所給公用密鑰
Figure 02_image041
之私用密鑰
Figure 02_image019
,則該函數將評估為真。
此形式之謎題使得能夠在資源存取及控制之實施方案中利用橢圓曲線密碼學(ECC)公用/私用密鑰對之代數特性。若計算出二個公用密鑰之總和,則對應私用密鑰將為個別私用密鑰之總和:
Figure 02_image043
將此與散列函數進行比較:若計算出二個值之散列之總和,則對應原像通常不為個別原像之總和:
Figure 02_image045
散列函數存在(稱為同態散列函數),對其而言,個別原像之散列值之總和等於原像之總和之散列值,但此等函數通常不切實可行。另外,公用/私用密鑰對允許資料之加密/解密及使用橢圓曲線數位簽名算法(Elliptic Curve Digital Signature Algorithm;ECDSA)對訊息進行簽名。
下文揭露私用密鑰謎題在實施原子交換中之實例。此等實例使得本文中所揭露之方法之使用者對並不共用公共散列函數之區塊鏈執行交叉鏈交換。實例包括由公用/私用密鑰對控制之對資源控制權或資源存取權之移轉。
貫穿本申請,依據ECC密鑰對及ECDSA協定來製定私用密鑰謎題。然而,本揭露內容不限於此等標準。舉例而言,方法亦適用於Schnorr簽名,及具有DSA協定之RSA密鑰對。
如上文所提及,私用密鑰謎題 為函數>Solve
Figure 02_image041
>,該函數在作用於對應私用密鑰>
Figure 02_image019
>時將評估為真。亦即: >
Figure 02_image019
>>Solve
Figure 02_image041
> = TRUE。
此類函數目前並不存在。在交易兌換腳本中包括>Solve
Figure 02_image041
>將確保為了兌換交易,提供至兌換腳本之輸入必須包括對應私用密鑰
Figure 02_image019
,此意謂
Figure 02_image019
在區塊鏈上公開曝露。然而,在至少其中兌換腳本為比特幣區塊鏈上之區塊鏈交易之兌換腳本的情況中,此類函數將需要出奇大數量之運算子,此將防止構造及使用該交易。下文更詳細地描述此問題。
假設存在執行橢圓曲線點乘法之運算子OP_ECMULT。此意謂橢圓曲線上之點(例如,產生器點
Figure 02_image047
)乘以正整數,例如
Figure 02_image049
。亦即: >
Figure 02_image019
> >
Figure 02_image047
> OP_ECMULT = >
Figure 02_image041
>。
在此情況下,私用密鑰謎題將由以下給出: >Solve
Figure 02_image041
> = >
Figure 02_image019
> >
Figure 02_image047
> OP_ECMULT >
Figure 02_image041
> OP_EQUALVERIFY。
然而,目前,在比特幣腳本中不存在此類橢圓曲線運算子。
在比特幣2018年5月分叉中之一些先前淘汰之作業碼(諸如,OP_MOD)的復原後,技術上所有運算子需要在比特幣腳本內執行橢圓曲線乘法,即使用其他運算子來構造OP_ECMULT。然而,出於實際原因,此為不可能的。
此類函數將需要最少256次迭代,每一迭代含有若干複雜操作線。最值得注意地,每一迭代將需要應用擴展歐幾里得算法以便獲取模倒數。因此,所需腳本之此大小將遠超出201個作業碼或10KB之限制。
相比之下,下文所呈現之方法僅使用少量作業碼線。
下文揭露用於創建及利用私用密鑰謎題之方法的實施例,該方法包括在區塊外計算私用密鑰。在實施例中,私用密鑰自身不曝露於兌換腳本之輸入中,相反曝露簽名之組成部分。
密鑰理想應需要解除鎖定腳本含有與特定暫時性密鑰有關的簽名。隨後可藉由知曉暫時性密鑰之任何者根據簽名來計算對應私用密鑰。
參照比特幣腳本描述之實施例並不使用任何非標準腳本操作。
構造函數>Solve
Figure 02_image051
>,其中
Figure 02_image041
為公用密鑰,且
Figure 02_image053
由特定暫時性密鑰導出
Figure 02_image055
。此函數在且僅在其在輸入>Sig
Figure 02_image041
,
Figure 02_image057
> >
Figure 02_image041
> 上操作時評估為真,其中 >Sig
Figure 02_image041
,
Figure 02_image057
>表示使用特定暫時性密鑰
Figure 02_image055
Figure 02_image041
之簽名。由於具有已知暫時性密鑰之簽名曝露對應私用密鑰,在>Sig
Figure 02_image041
,
Figure 02_image057
>變成公用後,私用密鑰可由知曉
Figure 02_image055
之任何者計算。
參看圖2,揭露提取簽名之
Figure 02_image025
部分的比特幣腳本。根據上文給出之簽名之DER編碼,為了提取
Figure 02_image025
部分,吾等需要拆分第5位元組直至第36或第37位元組為止上之簽名,其取決於第4位元組之值。此藉由以下比特幣腳本來達成: OP_3 OP_SPLIT OP_NIP OP_1 OP_SPLIT OP_SWAP OP_SPLIT OP_DROP。
考量公用密鑰
Figure 02_image041
。如上文所提及,揭露用於創建鎖定腳本使得對應解除鎖定腳本曝露足夠資訊以供暫時性密鑰之控制器判定
Figure 02_image041
之私用密鑰之方法。
方法包含迫使解除鎖定腳本含有
Figure 02_image041
之簽名,該簽名使用特定暫時性密鑰,其表示為
Figure 02_image055
。可藉由任何知曉暫時性密鑰者根據簽名來計算表示為
Figure 02_image019
之對應私用密鑰。方法之使用者同意使用
Figure 02_image055
之值。使用者可使用適當安全之已知方法將此值傳達至彼此。
如上文所描述,ECDSA簽名由二個組成部分構成,即:Sig
Figure 02_image059
,其中
Figure 02_image025
直接與暫時性密鑰
Figure 02_image055
有關且可由該暫時性密鑰計算。
對應於暫時性密鑰
Figure 02_image055
Figure 02_image061
之值藉由以下等式(在區塊外)計算:
Figure 02_image063
隨後創建兌換腳本,其需要使用特定暫時性密鑰
Figure 02_image055
Figure 02_image041
之簽名作為輸入。
所需輸入 兌換腳本
此包含
Figure 02_image065
之簽名
Figure 02_image067
。使用預先判定之暫時性密鑰
Figure 02_image069
來計算此簽名。其自身亦含有公用密鑰
Figure 02_image065
。  
此包含進行二個步驟之運算子: 1.檢查預先判定之正確暫時性密鑰
Figure 02_image069
已用於簽名中的操作。此可藉由使用操作OP_SPLIT來達成,該操作自簽名讀出
Figure 02_image071
之值且檢查其與使用暫時性密鑰
Figure 02_image069
計算之值
Figure 02_image073
匹配。 2.檢查簽名已由
Figure 02_image065
簽署的操作。此僅為標準操作OP_CHECKSIG。
下文給出與比特幣區塊鏈相容的兌換腳本之實例:
輸入 兌換腳本
>Sig
Figure 02_image065
,
Figure 02_image075
>>
Figure 02_image065
>
>Solve
Figure 02_image077
>
其中用於密鑰謎題之腳本>Solve
Figure 02_image051
> =
OP_TOALTSTACK OP_DUP
OP_3 OP_SPLIT OP_NIP OP_1 OP_SPLIT OP_SWAP OP_SPLIT OP_DROP >
Figure 02_image073
> OP_EQUALVERIFY
OP_FROMALTSTACK OP_DUP OP_HASH160 >
Figure 02_image079
> OP_EQUALVERIFY OP_CHECKSIG
在上表中,第一列將公用密鑰
Figure 02_image041
置放在交替堆疊(alt-stack)上且複製簽名。第二列檢查已使用正確之暫時性密鑰。第三列自交替堆疊檢索公用密鑰且檢查簽名為有效的。上文所用之比特幣腳本操作(即OP_DUP、OP_TOALTSTACK及OP_FROMALTSTACK)不係嚴格需求,且若一者複製且重新排序輸入變量,則可降低。
應注意,存在製定比特幣腳本中之私用密鑰謎題的替代方式。特定而言,一者可使用OP_CAT操作替代OP_SPLIT。在此情況下,對兌換腳本之輸入將為僅含有
Figure 02_image029
組成部分之部分簽名(其將使用預先判定之暫時性密鑰
Figure 02_image081
及私用密鑰
Figure 02_image019
來計算。兌換腳本將隨後將
Figure 02_image025
之預先判定之值與部分簽名串接以便產生完整簽名
Figure 02_image083
。此簽名將藉由構造來具有所需
Figure 02_image025
。其將隨後經保留以執行標準checksig操作。
原子交換係指二個交易,一個交易自Alice至Bob,且另一個交易自Bob至Alice。原子交換確保二個交易中之任一個可兌換或均不可兌換。允許此發生之機制為兌換腳本內之散列謎題。原子交換之優勢包括: ‧ 不同區塊鏈上之密碼貨幣可交換。舉例而言,Alice可將BCH發送至Bob且自Bob接收BTC。 ‧ 相同區塊鏈上之彩色幣或其他符記形式可交換。
應注意,目前,跨不同區塊鏈之原子交換需要區塊鏈均共用其腳本語言中之公共散列函數。本揭露內容之一優勢為區塊鏈不再需要公共散列函數,籍此能夠跨較多種區塊鏈來移轉資源控制權或資源存取權。另外,藉由使原子交換基於數位簽名,有可能驗證數位簽名與對應公用密鑰相一致,籍此改良交換之安全性。
在下文描述已知方法來提供用於本揭露內容之實施例之後續描述的內容背景。
Figure 02_image085
Figure 02_image087
分別表示Alice及Bob之ECDSA公用密鑰。 1.   Alice選擇僅她自己知曉之秘密
Figure 02_image089
(
Figure 02_image091
為橢圓曲線產生器點之次序
Figure 02_image047
)。 2.   Alice將用以下兌換腳本鎖定之資金移轉至Bob >CheckSig
Figure 02_image087
> >Solve
Figure 02_image093
> 在此階段,Bob不能花費資金,此係由於他不知曉
Figure 02_image093
之原像。 3.   Bob將用以下兌換腳本鎖定之資金移轉至Alice >CheckSig
Figure 02_image085
> >Solve
Figure 02_image093
> 4.   由於Alice知曉
Figure 02_image095
,故她可花費她的資金。此在區塊鏈上展現
Figure 02_image095
作為對Alice之兌換腳本之輸入。
Bob現知曉
Figure 02_image095
且可花費他的資金。
稍早描述的本揭露內容之私用密鑰謎題可用於實現一或多個區塊鏈之使用者之間的原子交換而無共用散列函數之需求。在下文描述用於實施此類原子交換之方法。
使用下文揭露之私用密鑰謎題來替代在原子交換中使用散列謎題。此保留已知原子交換之所有功能,同時實現有利一般化,其包括: ‧ 並不共用公共散列函數之跨區塊鏈之原子交換;及 ‧ 由公用/私用密鑰對控制之對資源控制權或資源存取權之原子交換。
如上文所描述,當使用私用密鑰謎題而非散列謎題時,當Alice兌換一交易而非展現散列之原像時,她使得能夠判定已知公用密鑰之私用密鑰。此對比說明於下表中:
  機制
標準原子交換 散列謎題>Solve
Figure 02_image097
>
一般化原子交換 私用密鑰謎題>Solve
Figure 02_image077
>
下文依據以下方法步驟參看圖3來描述本揭露內容之實施例: 1.   (110) Alice選擇暫時性密鑰
Figure 02_image055
且經由適當安全通道將其發送至Bob。或者,Alice及Bob可對
Figure 02_image055
達成一致意見。 2.   (120) Alice選擇僅為她自己知曉之私用密鑰
Figure 02_image049
。她計算對應公用密鑰
Figure 02_image099
。 3.    (130) Alice創建具有以下兌換腳本之交易TxA >CheckSig
Figure 02_image087
> >Solve
Figure 02_image051
> 其中
Figure 02_image087
為Bob之公用密鑰,且>Solve
Figure 02_image051
>為上文所引入之私用密鑰謎題。在此階段,Bob不能兌換交易,此係由於他不知曉對應於公用密鑰
Figure 02_image041
之私用密鑰,即
Figure 02_image019
。Alice將TxA提交至區塊鏈。 4.    (140) Bob創建具有以下兌換腳本之交易TxB >CheckSig
Figure 02_image085
> >Solve
Figure 02_image051
> 其中
Figure 02_image085
為Alice之公用密鑰。Bob將TxB提交至區塊鏈。 5.   (150)由於Alice知曉
Figure 02_image019
,故她可兌換TxB。作為對TxB之兌換腳本的輸入,Alice必須使用特定暫時性密鑰
Figure 02_image055
來提供
Figure 02_image041
之簽名。藉由將呈現對TxB之解除鎖定腳本的兌換交易提交至區塊鏈來兌換TxB必需使
Figure 02_image029
之值成為公用。鑒於他已知曉暫時性密鑰
Figure 02_image055
之值,
Figure 02_image029
之此展現允許Bob計算私用密鑰
Figure 02_image101
。(160)可或不可使用時間鎖函數對TxA及TxB之兌換施加時間約束,該時間鎖函數在時間到期時經組配以藉助於Alice及Bob將適合之退款交易提交至區塊鏈來使對TxA及TxB之控制返回至Alice及Bob。 6.   (170)若Alice兌換TxB,則(180) Bob能夠計算
Figure 02_image019
,且(190)藉由藉助於兌換交易之解除鎖定腳本向其提供對應於
Figure 02_image019
之簽名來可兌換Tx1。
由於此方法並不依賴於散列謎題,故其可用於形成並不在其腳本語言中共用公共散列函數之跨區塊鏈之原子交換。所有需要的係腳本語言含有足夠功能性以創建私用密鑰謎題。此為較不具限定性之需求設置。
參看圖4,在另一實施例中,Alice及Bob各自選擇其自身暫時性密鑰
Figure 02_image103
Figure 02_image105
以及其自身私用密鑰
Figure 02_image107
Figure 02_image109
。他們以其如何傳達上文所描述的異步實施例之暫時性密鑰
Figure 02_image055
之類似方式來交換其暫時性密鑰。Alice及Bob可隨後計算簽名組成部分
Figure 02_image111
,其為點之x分量
Figure 02_image113
Figure 02_image115
,點
Figure 02_image117
之x分量。使用
Figure 02_image107
Figure 02_image109
計算之簽名之其餘簽名組成部分分別表示為
Figure 02_image119
Figure 02_image121
,使得簽名
Figure 02_image107
=
Figure 02_image123
且簽名
Figure 02_image109
=
Figure 02_image125
。應注意,
Figure 02_image103
Figure 02_image105
在這個實施例中可相同或可不同,即可代替地使用公共
Figure 02_image055
根據以下步驟實行此實施例: 1.      (210A、210B) Alice及Bob選擇其自身暫時性密鑰
Figure 02_image103
Figure 02_image127
,且將其傳達至彼此。 2.      (220A) Alice選擇僅為她自己知曉之私用密鑰
Figure 02_image129
。她計算對應公用密鑰
Figure 02_image131
。 3.       (230) Alice創建具有以下兌換腳本之交易Tx1A >CheckSig
Figure 02_image087
> >Solve
Figure 02_image133
> 其中
Figure 02_image087
為Bob之公用密鑰,且>Solve
Figure 02_image133
>為需要提供對應於私用密鑰之簽名的私用密鑰謎題
Figure 02_image107
Figure 02_image109
。在此階段,Bob不能兌換交易,此係由於他不知曉對應於公用密鑰
Figure 02_image135
之私用密鑰,即
Figure 02_image107
。 4.      (220B) Bob選擇僅為他自己知曉之私用密鑰
Figure 02_image137
。他計算對應公用密鑰
Figure 02_image139
。 5.       (240) Bob創建具有以下兌換腳本之交易Tx1B >CheckSig
Figure 02_image085
> >Solve
Figure 02_image133
> 其中
Figure 02_image085
為Alice之公用密鑰。 應注意,Tx1A及Tx1B之腳本之密鑰謎題部分相同。密鑰謎題>Solve
Figure 02_image133
>,需要向其呈現對應於私用密鑰
Figure 02_image107
Figure 02_image109
之簽名,即簽名
Figure 02_image141
Figure 02_image125
。 (250)此時,Alice並不知曉
Figure 02_image109
,她亦不可對其進行計算,此係由於她並不知曉
Figure 02_image143
。類似地,Bob並不知曉
Figure 02_image107
Figure 02_image119
。因此Alice及Bob均不具有足夠資訊來兌換Tx1A或Tx1B。Alice及Bob均可藉由將其相應簽名組成部分
Figure 02_image119
/
Figure 02_image121
或私用密鑰
Figure 02_image107
/
Figure 02_image109
各自傳達至另一方來誠實地操作,或僅其中之一方可誠實地操作,或任一方均不可誠實地操作。以下結果中之一者可因此出現: 6A. 1)假定Alice向Bob發送
Figure 02_image119
Figure 02_image145
,且Bob向Alice發送
Figure 02_image143
Figure 02_image107
,(即,二方均誠實地操作)。(295)隨後,Alice及Bob二者具有足夠資訊來將簽名提供至解決其中之密鑰謎題的交易Tx1A及Tx1B之兌換腳本。Tx1A及Tx1B可因此分別藉由提交呈現對Tx1A及Tx1B之相應解除鎖定腳本的花費交易來由Bob及Alice兌換。 6B. 2)假定藉由向Bob發送
Figure 02_image119
Figure 02_image107
,僅Alice誠實地操作,且藉由既不向Alice發送正確
Figure 02_image143
Figure 02_image109
或藉由根本亦不發送任何東西,Bob誠實地操作。(270) Bob隨後能夠藉由提交提供對應於
Figure 02_image107
之其解除鎖定腳本中之簽名的兌換交易以解決Tx1A之兌換腳本中所含有之密鑰謎題來兌換Tx1A。在Bob已將含有經配置以兌換Tx1A之解除鎖定腳本的兌換交易提交至區塊鏈後,簽名
Figure 02_image147
成為可公用的。(280) Alice籍此瞭解到值
Figure 02_image143
,由於她知曉暫時性密鑰
Figure 02_image105
,,故該值使得她能夠計算密鑰
Figure 02_image109
,且因此能夠具有足夠資訊來兌換Tx1B。(290) Alice隨後提交提供對應於
Figure 02_image109
之其解除鎖定腳本中之簽名的兌換交易,以解決Tx1B之兌換腳本中所含有之密鑰謎題。 6C. 3)假定Alice及Bob均不向彼此發送
Figure 02_image149
Figure 02_image107
/
Figure 02_image109
。(260)在此情況下,交易Tx1A及Tx1B保持不可兌換,直至諸如時間鎖(若起作用)之時間到期以藉助於相應所有者將適合之兌換交易提交至區塊鏈來使得對交易之控制返回至其相應所有者為止。
如以上實施例中所描述之交易之對稱組配使用經組配有密鑰謎題之交易來使得同步原子交換能夠發生。此使得交易Tx1A及Tx1B二者能夠同時將相應資源存取權或資源控制權移轉至另一方,而非一方必須等待挖掘出區塊以展現必要資訊以供取決於該必要資訊來兌換交易。
現將參考圖5描述本揭露內容之實施例,其啟用一或多個資源之存取權或控制權的原子交換。
在此實施例中,Alice經由ECC公用/私用密鑰對來控制資源存取權。此資源可為一種密碼貨幣類型之資金,其可為多個密碼貨幣類型中之資金,或其可為對網頁應用(webapp)、租賃汽車(rental car)或經加密文件之存取或對物聯網智慧型裝置(諸如網路攝影機或門鎖)之控制。下文,呈現一種方法,該方法用於使用比特幣協定使Bob自Alice獲得此資源存取權。此交換為原子的:Alice兌換她已自Bob接收之BCH且Bob獲得資源存取權或資源控制權,或均不發生。
作為一實例,考量Bob將BCH中之資金移轉至Alice且Alice將BCH、以太坊(Ethereum;ETH)及DASH中之資金移轉至Bob。
此方法確保當原子交換完整時,暫時性密鑰之控制器所需之用以計算私用密鑰的資訊經曝露,該私用密鑰控制資源。此消除對授與受控制資源存取權之一方之信任的需求。
方法包括以下步驟: 1.    (310) Alice選擇暫時性密鑰
Figure 02_image055
且將其移轉至Bob。 2.   (320) Alice選擇僅為她自己知曉之私用密鑰
Figure 02_image049
。她計算對應公用密鑰
Figure 02_image099
。此公用密鑰控制資源存取權,且經公開播送。 (在此實施例中,資源為用公用密鑰
Figure 02_image041
鎖定之BCH、ETH及DASH中之資金。) 3.   (325) Alice使用Bob之公用密鑰
Figure 02_image087
來計算確定性公用密鑰
Figure 02_image151
,且(330)使得公用密鑰
Figure 02_image153
之私用密鑰
Figure 02_image155
之持有者能夠獲得資源存取權。舉例而言,此可藉由創建交易Tx'或藉由用公用密鑰
Figure 02_image157
對文件進行加密且隨後在公開論壇上播送該文件來達成,該交易將一定量之密碼貨幣發送至位址
Figure 02_image153
。 (在此實施例中,Alice在公共位址上進行BCH、ETH及DASH交易,每一公共位址經公共公用密鑰
Figure 02_image153
鎖定。) 4.   (340) Bob提交用以下兌換腳本鎖定之交易TxB >CheckSig
Figure 02_image085
> >Solve
Figure 02_image051
> 5.    (370)由於Alice知曉
Figure 02_image019
,故她能夠兌換TxB。在此實施例中,此在BCH區塊鏈上完成。如上文所描述,此允許Bob根據在對Alice之兌換腳本之輸入中提供的資訊來計算
Figure 02_image019
。(360)可或不可使用時間鎖函數來對Tx'及TxB之兌換施加時間約束,若時間到期,則該時間鎖函數經組配以使得對Tx'及TxB之控制能夠返回至Alice及Bob。 6.    (370) Alice藉由提交提供解除鎖定腳本中之對應於
Figure 02_image019
之簽名的兌換交易、向Bob展現簽名之
Figure 02_image029
部分來兌換交易TxB。 7.    (380) Bob現計算
Figure 02_image019
且因此能夠(385)計算私用密鑰
Figure 02_image159
of
Figure 02_image153
。他籍此獲得由
Figure 02_image153
控制之資源存取權。 (在此實施例中,Bob現可花費用公用密鑰
Figure 02_image153
鎖定之BCH、ETH及DASH中之資金。)
應注意,即使私用密鑰
Figure 02_image019
在區塊鏈上或其他處公開曝露,但僅Bob可存取或控制在
Figure 02_image153
處鎖定之資源。此係因為資源經
Figure 02_image019
與Bob之私用密鑰的組合鎖定。在此意義上,
Figure 02_image019
充當確定性密鑰。
在此實施例中,可見不再需要Bob購買之密碼貨幣含有其腳本語言中之某些操作。僅需要Bob支付BCH中之密碼貨幣之集合且使用ECDSA簽名來控制交易。
為了避免Bob之資源由Alice永久鎖定,時間鎖定返回可引入至該方法中。此為自Alice至Bob之BCH交易,其在自他與Alice的第一交易已過去某一相對時間(例如24小時)後,將資源返回至Bob。
類似地,Alice可在已過去一定量時間後將她的受控制資源存取權返回至她自身。在多個密碼貨幣之實例中,此亦將為類似於Bob之一返回交易。
若交換未完成,則在已過去一定量時間後,將對資源之控制返回至Alice自身對Alice而言可能係不必要或不實際的。舉例而言,若資源為經加密文件,Bob經授與該經加密文件之存取權,則無限期地留下經密鑰
Figure 02_image153
加密之文件對Alice而言沒有妨害。
現轉而參看圖6,提供計算裝置2600之說明性簡化框圖,該計算裝置可用於實踐本揭露內容之至少一個實施例。在各種實施例中,計算裝置2600可用以實施上文所說明及描述之系統中之任一者。舉例而言,計算裝置2600可經組配以用作資料伺服器、網頁伺服器、攜帶型計算裝置、個人電腦或任何電子計算裝置。如圖6中所示,計算裝置2600可包括具有一或多個層級之快取記憶體及記憶體控制器的一或多個處理器(共同地標記為2602),該等處理器可經組配以與包括主記憶體2608及持久性儲存器2610之儲存子系統2606通信。主記憶體2608可包括如所示之動態隨機存取記憶體(dynamic random-access memory;DRAM) 2618及唯讀記憶體(read-only memory;ROM) 2620。儲存子系統2606及快取記憶體2602可用於儲存資訊,諸如與如本揭露內容中所描述之交易及區塊相關聯的細節。一或多個處理器2602可用以提供如本揭露內容中所描述之任何實施例的步驟或功能性。
一或多個處理器2602亦可與一或多個使用者介面輸入裝置2612、一或多個使用者介面輸出裝置2614及網路介面子系統2616通信。
匯流排子系統2604可提供用於使計算裝置2600之各個組件及子系統能夠按預期彼此通信之機制。儘管匯流排子系統2604經示意性地展示為單一匯流排,但匯流排子系統之替代實施例可利用多個匯流排。
網路介面子系統2616可提供至其他計算裝置及網路之介面。網路介面子系統2616可充當用於自其他系統接收資料及將資料自計算裝置2600傳輸至其他系統之介面。舉例而言,網路介面子系統2616可使資料技術員能夠將裝置連接至網路,使得資料技術員可能夠在處於諸如資料中心之遠端位置中時將資料傳輸至裝置及自裝置接收資料。
使用者介面輸入裝置2612可包括:一或多個使用者輸入裝置,諸如鍵盤;指標裝置,諸如整合式滑鼠、軌跡球、觸控板或圖形平板電腦;掃描器;條形碼掃描器;觸控螢幕,其併入至顯示器中;音訊輸入裝置,諸如語音辨識系統、麥克風;及其他類型之輸入裝置。一般而言,使用術語「輸入裝置」意欲包括用於將資訊輸入至計算裝置2600之所有可能類型的裝置及機制。
一或多個使用者介面輸出裝置2614可包括顯示子系統、印表機或諸如音訊輸出裝置之非視覺顯示器等。顯示子系統可為陰極射線管(cathode ray tube;CRT)、諸如液晶顯示器(liquid crystal display;LCD)之平板裝置、發光二極體(light emitting diode;LED)顯示器或投影裝置或其他顯示裝置。一般而言,術語「輸出裝置」之使用意欲包括用於自計算裝置2600輸出資訊的所有可能類型之裝置及機制。一或多個使用者介面輸出裝置2614可用以(例如)呈現使用者介面以有助於使用者與執行所描述之過程及其變化之應用程式互動(當此類互動可為適當時)。
儲存子系統2606可提供電腦可讀儲存媒體,該電腦可讀儲存媒體用於儲存可提供本揭露內容之至少一個實施例之功能性的基本程式設計及資料構造。應用程式(程式、程式碼模組、指令)在由一或多個處理器執行時可提供本揭露內容之一或多個實施例的功能性,且可儲存於儲存子系統2606中。此等應用程式模組或指令可由一或多個處理器2602執行。儲存子系統2606可另外提供用於儲存根據本揭露內容所使用之資料的儲存庫。舉例而言,主記憶體2608及快取記憶體2602可提供用於程式及資料之揮發性儲存器。持久性儲存器2610可提供用於程式及資料之持久性(非揮發性)儲存器且可包括快閃記憶體、一或多個固態驅動機、一或多個磁性硬碟驅動機、具有相關聯抽取式媒體之一或多個軟碟驅動機、具有相關聯抽取式媒體之一或多個光學驅動機(例如CD-ROM或DVD或藍光光碟(Blue-Ray))驅動機及其他類似儲存媒體。此類程式及資料可包括用於進行如本揭露內容中所描述之一或多個實施例之步驟的程式以及與如本揭露內容中所描述之交易及區塊相關聯的資料。
計算裝置2600可具有各種類型,包括攜帶型電腦裝置、平板電腦、工作站或下文所描述之任何其他裝置。另外,計算裝置2600可包括可經由一或多個端口(例如USB、頭戴式耳機插口、雷電型連接器等)連接至計算裝置2600的另一裝置。可連接至計算裝置2600之裝置可包括經組配以接受光纖連接器之多個端口。因此,此裝置可經組配以將光學信號轉換成可經由將裝置連接至計算裝置2600之端口傳輸的電信號以供處理。歸因於電腦及網路不斷改變之本質,出於說明裝置之較佳實施例之目的,圖6中所描繪之計算裝置2600之描述僅意欲作為特定實例。具有比圖6中所描繪之系統更多或更少組件的許多其他組配係可能的。
應注意,上文所提及之實施例說明而非限制本揭露內容,且熟習此項技術者將能夠設計許多替換性實施例而不偏離本揭露內容之如由所附申請專利範圍定義的範疇。在申請專利範圍中,置放於圓括號中的任何參考符號不應被認為限制申請專利範圍。詞「包含(comprising及comprises)」及其類似者並不排除除任何技術方案或說明書中整體列出之彼等元件或步驟外的元件或步驟之存在。在本說明書中,「包含」意謂「包括或由…組成」。元件之單數參考並不排除此等元件之複數參考,且反之亦然。本揭露內容可藉助於包含若干獨特元件之硬體且藉助於經合適程式化之電腦來實施。在枚舉若干構件之裝置技術方案中,此等構件中之若干者可由硬體之同一物件實施。在相互不同之附屬技術方案中列舉某些措施之純粹事實並不指示不能有利地使用此等措施之組合。
110~190、210A、210B、220A、220B、230~290、295、310、320、325、340、360、370、380、385:步驟 2600:計算裝置 2602:處理器 2604:匯流排子系統 2606:儲存子系統 2608:主記憶體 2610:持久性儲存器 2612:使用者介面輸入裝置 2614:使用者介面輸出裝置 2616:網路介面子系統 2618:動態隨機存取記憶體 2620:唯獨記憶體
本揭露內容之此等及其他態樣將自本文中所描述之實施例顯而易見且參考本文中所描述之實施例進行闡明。現將僅藉助於實例且參考附圖描述本揭露內容之實施例,在附圖中: 圖1說明先前技術之可辨別編碼規則表; 圖2說明含有用於提取簽名之一部分之腳本的表; 圖3說明本揭露內容之實施例之含有步驟之流程圖; 圖4說明本揭露內容之實施例之含有步驟之流程圖; 圖5說明本揭露內容之實施例之含有步驟之流程圖;及 圖6為說明各種實施例可實施於其中之計算環境的示意圖。
110~190:步驟

Claims (9)

  1. 一種電腦實施方法,該方法包含以下步驟: 藉由將至少一資料項提供至一第一區塊鏈交易來提供可兌換以啟用一第一資源存取權之該第一區塊鏈交易,其中能夠僅藉由一可展現值及一秘密值二者之一控制器來判定該資料項;及 將該可展現值提供至該秘密值之一控制器以使該控制器能夠判定該資料項。
  2. 如請求項1之方法,其中該資料項包含一第一密碼密鑰對之一第一私用密鑰。
  3. 如請求項2之方法,其中該第一區塊鏈交易進一步要求提供一第二密碼密鑰對之一第二私用密鑰可兌換,其中該第二密碼密鑰對與該第一資源之一預期接收者相關聯。
  4. 如請求項3之方法,其中該第一私用密鑰為一確定性密碼密鑰對之一確定性私用密鑰,其中使用該第一密碼密鑰對之一第一公用密鑰及該第二密碼密鑰對之一第二公用密鑰來導出該確定性密碼密鑰對之確定性公用密鑰。
  5. 如請求項1至4中任一項之方法,其中將該可展現值提供至該控制器之該步驟包含: 藉由將至少該資料項提供至一第二區塊鏈交易來提供可兌換以啟用一第二資源存取權之該第二區塊鏈交易,其中該第二區塊鏈交易之兌換使得將該可展現值提供至該控制器;及 兌換該第二區塊鏈交易。
  6. 如請求項1至5中任一項之方法,其中如請求項1至5中任一項之一區塊鏈交易之兌換包含計算對應於該資料項之一密碼簽名及將儲存於該交易中之一值與所計算簽名之至少一部分進行比較。
  7. 如請求項1至6中任一項之方法,其中該秘密值為一數位簽名程序中所用之一暫時性密鑰。
  8. 一種系統,其包含: 一處理器;及 記憶體,其包括因由該處理器執行而使得該系統執行如請求項1至7中任一項之方法的可執行指令。
  9. 一種非暫時性電腦可讀儲存媒體,其具有儲存於其上之可執行指令,該等可執行指令因由一電腦系統之一處理器執行而使得該電腦系統至少執行如請求項1至7中任一項之方法。
TW108134022A 2018-09-28 2019-09-20 用以移轉數位資源存取權之電腦實施系統及方法 TW202025665A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB1815816.2 2018-09-28
GBGB1815816.2A GB201815816D0 (en) 2018-09-28 2018-09-28 Computer-implemented system and method

Publications (1)

Publication Number Publication Date
TW202025665A true TW202025665A (zh) 2020-07-01

Family

ID=64109009

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108134022A TW202025665A (zh) 2018-09-28 2019-09-20 用以移轉數位資源存取權之電腦實施系統及方法

Country Status (9)

Country Link
US (1) US20210344500A1 (zh)
EP (1) EP3857814A1 (zh)
JP (2) JP7428704B2 (zh)
KR (1) KR20210065995A (zh)
CN (1) CN112789825A (zh)
GB (1) GB201815816D0 (zh)
SG (1) SG11202102277TA (zh)
TW (1) TW202025665A (zh)
WO (1) WO2020065460A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2578168A (en) * 2018-10-19 2020-04-22 Star Hat Solutions Ltd Computer-implemented method and system for digital signing of transactions
JP6759468B2 (ja) * 2019-04-08 2020-09-23 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited ブロックチェーンネットワーク内でスマート・コントラクトを使用する製品プロモーション
GB2584154A (en) 2019-05-24 2020-11-25 Nchain Holdings Ltd Knowledge proof
DE102019005116A1 (de) * 2019-07-23 2021-01-28 Daimler Ag Verfahren zum Handeln von Kryptowährungen
GB2596096A (en) 2020-06-17 2021-12-22 Nchain Holdings Ltd Agreements on the blockchain
US11741083B2 (en) * 2020-07-24 2023-08-29 International Business Machines Corporation Cross-shard private atomic commit
WO2022125532A1 (en) * 2020-12-07 2022-06-16 Meredith Ii Thomas T Systems and methods thereof for exchanging different digital currencies on different blockchains
US11315113B1 (en) * 2021-11-08 2022-04-26 Tangem AG Systems and methods for authorizing a transaction conventionally incompatible with a technical protocol
GB2621858A (en) * 2022-08-24 2024-02-28 Nchain Licensing Ag Blockchain transaction

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
SG10202107633XA (en) 2016-07-29 2021-08-30 Nchain Holdings Ltd Blockchain-implemented method and system
GB201613176D0 (en) 2016-07-29 2016-09-14 Eitc Holdings Ltd Computer-implemented method and system
US11704400B2 (en) * 2016-08-11 2023-07-18 Sony Corporation Authentication method, wearable device and mobile device
US11082412B2 (en) * 2017-07-12 2021-08-03 Wickr Inc. Sending secure communications using a local ephemeral key pool
US11429968B2 (en) * 2017-12-12 2022-08-30 Lenovo (Singapore) Pte. Ltd. Providing network access using blockchain payments

Also Published As

Publication number Publication date
JP2024028608A (ja) 2024-03-04
EP3857814A1 (en) 2021-08-04
GB201815816D0 (en) 2018-11-14
SG11202102277TA (en) 2021-04-29
JP2022501887A (ja) 2022-01-06
CN112789825A (zh) 2021-05-11
JP7428704B2 (ja) 2024-02-06
KR20210065995A (ko) 2021-06-04
WO2020065460A1 (en) 2020-04-02
US20210344500A1 (en) 2021-11-04

Similar Documents

Publication Publication Date Title
TW202025665A (zh) 用以移轉數位資源存取權之電腦實施系統及方法
JP6877448B2 (ja) 分散ハッシュテーブル及びブロックチェーンを用いてコンピュータソフトウェアを保証する方法及びシステム
CN108781161B (zh) 用于控制和分发数字内容的区块链实现的方法
KR20180137022A (ko) 분산 해시 테이블과 피어투피어 분산 원장을 사용하여 디지털 자산의 소유권을 검증하기 위한 방법 및 시스템
CN112154626A (zh) 使用区块链执行原子交换的计算机实现的系统和方法
TW202040391A (zh) 在區塊鏈網路上實施轉移之電腦實施系統及方法
CN111066283A (zh) 对区块链网络上实体提供的数据进行通信、存储和处理的系统和方法
JP7231630B2 (ja) ブラインド化された帰結選択のためのブロックチェーンで実装されるセキュリティー・システムおよび方法
JP2023065602A (ja) コンピュータにより実施される意思決定システム及び方法
TW202131659A (zh) 用以儲存已認證資料於區塊鏈上之電腦實行方法及系統
EP3806385A1 (en) Cryptologic blockchain interoperability membership system
JP2023184657A (ja) 公開鍵結合検証を含む、コンピュータにより実施されるシステム及び方法
TW202139669A (zh) 用於與區塊鏈相關聯之事件序列之事件串流
US20220278843A1 (en) Computer implemented method and system for knowledge proof in blockchain transactions
TW202105283A (zh) 用以控制或執行區塊鏈上處理轉移之效率的電腦實施系統及方法
CN112384939B (zh) 用于分布式分类账相关交易的链外交换的计算机实现的系统和方法
TWI834741B (zh) 包括公鑰組合驗證之電腦實行系統及方法
TWI838514B (zh) 區塊鏈交易中知識證明之電腦實行方法及系統
RU2755672C1 (ru) Способ безопасного хранения и обновления данных в распределенном реестре с помощью сетей квантовых коммуникаций