TWI782970B - 基於未判定資料保證區塊鏈交易的安全之電腦實施方法、電子裝置及電腦可讀儲存媒體 - Google Patents
基於未判定資料保證區塊鏈交易的安全之電腦實施方法、電子裝置及電腦可讀儲存媒體 Download PDFInfo
- Publication number
- TWI782970B TWI782970B TW107111791A TW107111791A TWI782970B TW I782970 B TWI782970 B TW I782970B TW 107111791 A TW107111791 A TW 107111791A TW 107111791 A TW107111791 A TW 107111791A TW I782970 B TWI782970 B TW I782970B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- script
- computer
- node
- transaction
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000013515 script Methods 0.000 claims abstract description 199
- 238000012795 verification Methods 0.000 claims description 36
- 230000006870 function Effects 0.000 claims description 8
- 238000012546 transfer Methods 0.000 description 8
- 238000007792 addition Methods 0.000 description 6
- 230000000717 retained effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000002427 irreversible effect Effects 0.000 description 2
- 238000005065 mining Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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/3239—Cryptographic 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/724—Finite field arithmetic
- G06F7/725—Finite field arithmetic over elliptic curves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
- G06Q20/0655—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed centrally
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment 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/3674—Payment 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 involving authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Business processing using cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computing Systems (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Computational Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Algebra (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
- Hardware Redundancy (AREA)
- Peptides Or Proteins (AREA)
Abstract
本發明提供用於基於未判定資料鎖定一區塊鏈交易之電腦實施方法。本發明係使用一區塊鏈網路來實施。一鎖定節點可將一鎖定指令碼包括於一區塊鏈交易中以鎖定一數位資產。該鎖定指令碼包括用於一經判定資料源之一公用密鑰及指令以使執行該鎖定指令碼之一驗證節點藉由進行以下操作來檢驗提供於一解除鎖定指令碼中之資料源,a)基於用於該經判定資料源之該公用密鑰且基於定義於該解除鎖定指令碼中之資料而產生一經修改公用密鑰;及b)基於該經修改公用密鑰而評估該解除鎖定指令碼中之一密碼編譯簽名。
Description
本發明大體上係關於數位鎖定,且更特定而言,係關於用於基於來自一經判定資料源之未判定資料鎖定一數位資產的方法及系統。本發明尤其適合但不限於用於基於在鎖定數位資產時不可用於鎖定方之資料而提供區塊鏈網路上之數位資產的條件性解除鎖定。
在此文件中,吾人使用術語「區塊鏈」來包括所有形式的基於電腦之電子分散式總帳。此等總帳包括但不限於區塊鏈及交易鏈技術、許可及未許可總帳、共用總帳及其變化。區塊鏈技術之最廣泛已知之應用係比特幣總帳,但其他區塊鏈實施也經提議並開發出。雖然可出於便利及說明之目的而在本文中提及比特幣,但應注意,本發明不限於與比特幣區塊鏈一起使用,且替代區塊鏈實施及協定處於本發明之範圍內。舉例而言,本發明可用於具有與比特幣類似的在簽名檢驗上之限制的其他區塊鏈實施。
區塊鏈係基於共識之電子總帳,其經實施為由區塊組成的基
於電腦的去中心化分散式系統,區塊又由交易及其他資訊組成。在比特幣之狀況下,在區塊鏈系統中之參與者之間傳送數位資產之控制的每一交易包括至少一個輸入及至少一個輸出。每一區塊含有先前區塊之散列,使得區塊變得鏈接在一起以創建自一開始就已寫入至區塊鏈之所有交易的永久性不可變記錄。交易含有嵌入至其輸入及輸出中的被稱為指令碼的小型程式,其指定可如何及由誰存取交易之輸出。在比特幣平台上,此等指令碼係使用基於堆疊之指令碼處理語言來撰寫。
為了使交易被寫入至區塊鏈,交易必須經「驗證」。有效性係藉由節點基於由具有區塊產生能力之大多數節點使用的規則之共同集合而判定。舉例而言,在一些比特幣協定中,一些網路節點充當挖掘者(miner)且執行工作以確保每一交易有效,其中無效交易被網路拒絕。舉例而言,安裝於節點上之軟體用戶端對參考未用交易輸出(UTXO)之交易執行此驗證工作。驗證可藉由執行其鎖定及解除鎖定指令碼來執行。若鎖定及解除鎖定指令碼之執行評估為真且若滿足某些其他條件,則交易有效且可將交易寫入至區塊鏈。因此,為了使交易寫入至區塊鏈,該交易必須i)藉由在交易經驗證之情況下接收該交易的第一節點驗證,該節點將該交易中繼傳輸至網路中之其他節點;及ii)新增至藉由挖掘者建置之新區塊;及iii)經挖掘,亦即,新增至過去交易之公用總帳。當足夠數目個區塊經新增至區塊鏈以使交易實際上不可反轉時,該交易被視為經確認。
交易輸出包括諸如比特幣之數位資產及亦可被稱作保留數(encumbrance)或鎖定者之鎖定指令碼。鎖定指令碼藉由指定需要滿足以便花費輸出之條件來鎖定數位資產。舉例而言,鎖定指令碼可需要提供於解除鎖定指令碼中之某些資料來解除鎖定相關聯之數位資產。需要鎖定方提供資料以解除鎖定數位資產之傳統技術涉及將資料之散列嵌入鎖定指令碼內
部。然而,鎖定及解除鎖定之此技術需要資料在創建此鎖定指令碼時經判定(亦即,已知及固定)。
因此,需要提供在此等態樣中之一或多者中改良區塊鏈技術的改良方法及裝置。
因此,根據本發明,提供一種如隨附申請專利範圍所定義之方法。
如下文將更詳細地描述經組態以用於基於未判定資料鎖定一交易之電腦實施方法及電子裝置。
因此,根據本發明,可提供一種電腦實施方法(及對應系統)。該方法可描述為一安全性或控制方法。其可經配置以控制可如何或由誰經由區塊鏈網路解除鎖定及花費區塊鏈交易(TX)中之輸出。該輸出之花費使得密碼貨幣之一傳送能夠發生。本發明可提供一種方法(及對應系統),其經配置以藉由提供於另一交易之一解除鎖定指令碼中的未判定資料來修改嵌入於一區塊鏈交易(Tx)之鎖定指令碼中的一密碼編譯公用密鑰。本發明可允許基於未判定資料保證一區塊鏈交易之安全。亦即,本發明可允許基於在鎖定應用於區塊鏈交易時不可用但預期在未來可用之資料而鎖定區塊鏈交易。
根據本發明之實施例的一種方法可包含:i)藉由一區塊鏈網路中之一節點將一鎖定指令碼包括於一交易(亦即,一區塊鏈交易)中以保留(亦即,鎖定)與該交易(亦即,該區塊鏈交易)相關聯之一數位資產,該鎖定指令碼包括用於一經判定資料源之一公用密鑰且包括指令以使執行該鎖定指令碼之一驗證節點藉由進行以下操作來檢驗提供於一解除鎖定指令碼中之資料源:a)基於用於該經判定資料源之該公用密鑰且基於定義於該解除鎖
定指令碼中之資料而產生一經修改公用密鑰;及b)基於該經修改公用密鑰而評估該解除鎖定指令碼中之一簽名(亦即,一密碼編譯簽名);及ii)藉由該節點將該交易(亦即,該區塊鏈交易)發送至該區塊鏈網路。
在一些實施中,該鎖定指令碼進一步定義一或多個資料約束(data constraint),且該鎖定指令碼進一步包括指令以使該驗證節點在該資料不滿足該一或多個資料約束時使包括該解除鎖定指令碼之一交易(亦即,一區塊鏈交易)無效。在一些實施中,該一或多個資料約束定義一或多個值及基於該資料及該一或多個值執行一比較之一比較功能。
在一些實施中,組態該驗證節點以基於該經修改公用密鑰而評估該解除鎖定指令碼中之該簽名(亦即,一密碼編譯簽名)的該等指令經組態以使該驗證節點在尚未使用與該經判定資料源相關聯之一經修改私用密鑰產生該簽名(亦即,該密碼編譯簽名)時使包括該解除鎖定指令碼之該交易(亦即,該區塊鏈交易)無效。該經修改私用密鑰可藉由該經判定資料源基於用於該經判定資料源之一私用密鑰且基於該資料而產生。
在一些實施中,該鎖定指令碼經組態以使該驗證節點藉由執行對應於用以產生該經修改私用密鑰之一運算的一運算來產生該經修改公用密鑰。
在一些實施中,該經修改私用密鑰係已藉由基於該資料及用於該經判定資料源之該私用密鑰執行一有限域算術運算而產生的一密鑰。
在一些實施中,該等指令經組態以使執行該鎖定指令碼之該驗證節點藉由基於該資料及用於該經判定資料源之該公用密鑰執行一橢圓曲線有限域算術運算而產生該經修改公用密鑰。在一些實施中,該橢圓曲線有限域算術運算以純量執行橢圓曲線乘法。
在一些實施中,該鎖定指令碼經進一步組態以包括用於在一
所定義時間段之後移除由該節點對該等數位資產之該保留(亦即,該鎖定)的指令。
根據本發明,可提供一種電腦實施方法,其包含:a)藉由一節點基於資料及一私用密鑰產生一經修改私用密鑰;b)使用該經修改私用密鑰產生用於參考由一鎖定指令碼保留(亦即,鎖定)之數位資產之一交易的一簽名(亦即,一密碼編譯簽名);c)將該(密碼編譯)簽名及該資料新增至該(區塊鏈)交易;及d)將該(區塊鏈)交易傳達至另一節點。
在一些實施中,產生一經修改私用密鑰包含對該資料及該私用密鑰執行一有限域算術運算。在一些實施中,該有限域算術運算執行乘法。
在一些實施中,該鎖定指令碼指定用於一經判定資料源之一公用密鑰,且包括指令以使執行該鎖定指令碼之一驗證節點藉由進行以下操作來評估提供於一解除鎖定指令碼中之資料源:a)基於用於該經判定資料源之該公用密鑰且基於定義於該解除鎖定指令碼中之資料而產生一經修改公用密鑰;及b)基於該經修改公用密鑰而評估該解除鎖定指令碼中之一簽名(亦即,一密碼編譯簽名)。
根據本發明,可提供一種電子裝置。該電子裝置包括一介面裝置、耦接至該介面裝置之一處理器,及耦接至該處理器之一記憶體。該記憶體具有儲存於其上之電腦可執行指令,該等指令在經執行時組態該處理器以執行本文中所描述之方法。
根據本發明,可提供一種電腦可讀儲存媒體。該電腦可讀儲存媒體包括電腦可執行指令,該等指令在經執行時組態該處理器以執行本文中所描述之方法。
根據本發明,可提供一種電腦可讀儲存媒體,其包括一鎖定
指令碼,該鎖定指令碼包含在經執行時組態一處理器以執行本文中所描述之一鎖定指令碼之功能的電腦可執行指令。
100:區塊鏈網路
102:節點
104:挖掘者
200:電子裝置
210:處理器
220:記憶體
230:介面裝置
240:匯流排
300:鎖定區塊鏈網路上之數位資產的方法
302:操作
304:操作
306:操作
308:操作
400:促進區塊鏈網路上之數位資產之解除鎖定的方法
402:操作
404:操作
406:操作
408:操作
410:操作
500:方法
502:操作
504:操作
506:操作
508:操作
圖1說明實例區塊鏈網路之方塊圖。
圖2說明可充當區塊鏈網路中之節點的實例電子裝置之方塊圖。
圖3係使交易組態有鎖定指令碼之實例方法的流程圖。
圖4係使所提議交易組態有鎖定指令碼所需之簽名的實例方法之流程圖。
圖5係驗證與由鎖定指令碼鎖定之數位資產相關聯之交易的實例方法之流程圖。
首先參看圖1,其以方塊圖形式說明與區塊鏈相關聯的實例區塊鏈網路100。運行區塊鏈網路100操作所依據的區塊鏈協定之執行個體的分散式電子裝置可參與區塊鏈網路100。此類分散式電子裝置可被稱作節點102。舉例而言,區塊鏈協定可係比特幣協定。
運行區塊鏈協定且形成區塊鏈網路100之節點102的電子裝置可屬於各種類型,包括例如電腦,諸如桌上型電腦、膝上型電腦、平板電腦;伺服器;行動裝置,諸如智慧型手機;可穿戴式電腦,諸如智慧型手錶;或其他電子裝置。
區塊鏈網路100之節點102可使用包括有線及無線通信技術之合適通信技術彼此耦接。此通信遵守與區塊鏈相關聯之協定。舉例而言,在區塊鏈係比特幣區塊鏈之情況下,可使用比特幣協定。
節點102維持區塊鏈上之所有交易之全域總帳。因此,全域總帳係分散式總帳。每一節點102可儲存全域總帳之完整複本或部分複本。由節點102進行的影響全域總帳之交易係藉由其他節點102檢驗,使得維持全域總帳之有效性。當區塊鏈係基於工作證明之區塊鏈時,區塊亦藉由檢查隨區塊提交之工作證明來檢驗。
節點102中之至少一些係作為區塊鏈網路100之挖掘者104而操作。圖1之區塊鏈網路100係工作證明(proof-of-work)區塊鏈,其中挖掘者104執行昂貴計算以便促進區塊鏈上之交易。舉例而言,工作證明區塊鏈可能需要挖掘者解決密碼編譯問題。在比特幣中,挖掘者104找到臨時亂數,使得區塊標頭藉由雙SHA-256散列至小於由當前難度定義之值的數。工作證明演算法所需之散列能力意謂已在交易上挖掘某數目個區塊之後,該交易被視為實際上不可反轉。解決密碼編譯問題之挖掘者104創建用於區塊鏈之新區塊且將新區塊廣播至其他節點102。其他節點102檢驗挖掘者104實際上已解決密碼編譯問題,且因此在接受將區塊新增至區塊鏈之前已表明足夠工作證明。其他節點102亦在接受將區塊新增至區塊鏈之前檢驗區塊本身有效(例如,交易及區塊之區塊標頭有效)。該區塊係藉由節點102之共識來新增至區塊鏈(亦即,至分散式全域總帳)。
由挖掘者104創建之區塊包括已由節點102廣播至區塊鏈之交易。舉例而言,該區塊可包括自與節點102中之一者相關聯的位址至與節點102中之另一者相關聯的位址的交易。以此方式,該區塊充當自一個位址至另一位址之交易的記錄。請求交易包括於區塊中之一方藉由使用對應於其公用密鑰之私用密鑰對請求進行簽名來證明其經授權以起始傳送(例如,在比特幣之狀況下,花費比特幣)。僅在該請求經有效簽名之情況下將傳送新增至區塊。
在比特幣之狀況下,存在公用密鑰與位址之間的一對一對應。亦即,每一公用密鑰係與單一位址相關聯。因此,本文中對將數位資產傳送至公用密鑰及自公用密鑰傳送數位資產(例如,支付至公用密鑰中)以及將數位資產傳送至與彼公用密鑰相關聯之位址或自與彼公用密鑰相關聯之位址傳送數位資產的任何參考都稱為共同操作。
節點102中之一些可能不作為挖掘者而操作,且可替代地作為驗證節點而參與。交易驗證可涉及檢查簽名(其在本文中亦可被稱作密碼編譯簽名)或指定於鎖定指令碼中之其他條件,確認參考有效UTXO等。
圖1之實例包括5個節點102,其中2個作為挖掘者104而參與。實務上,節點102或挖掘者104之數目可不同。在許多區塊鏈網路中,節點102及挖掘者104之數目可遠大於圖1中所說明之數目。
圖2係說明可充當同級間區塊鏈網路100(圖1)中之節點102(圖1)的實例電子裝置200之組件的方塊圖。實例電子裝置200亦可被稱作處理裝置。電子裝置可採取各種形式,包括例如桌上型電腦、膝上型電腦、平板電腦、伺服器、諸如智慧型手機之行動裝置、諸如智慧型手錶之可穿戴式電腦或另一類型之形式。
電子裝置200包括處理器210、記憶體220及介面裝置230。此等組件可直接地或間接地耦接至彼此,且可彼此通信。舉例而言,處理器210、記憶體220及介面裝置230可經由匯流排240彼此通信。記憶體220儲存包含用於執行本文中所描述之功能之機器可讀指令及資料的電腦軟體程式。舉例而言,記憶體可包括處理器可執行指令,該等指令在由處理器210執行時使電子裝置執行本文中所描述之方法。處理器可執行指令可包括在由處理器210執行時使電子裝置實施與區塊鏈網路100(圖1)相關聯之協定的指令。舉例而言,該等指令可包括用於實施比特幣協定之指令。
記憶體220可儲存區塊鏈網路100(圖1)或其部分之全域總帳。亦即,記憶體220可儲存區塊鏈之所有區塊或該等區塊之一部分,諸如最近區塊,或一些區塊中之資訊之一部分。
雖然記憶體220在圖2中藉由單一區塊說明,但實務上,電子裝置200可包括多個記憶體組件。記憶體組件可屬於各種類型,包括例如RAM、HDD、SSD、隨身碟等。不同類型之記憶體可適合於不同目的。另外,雖然記憶體220說明為與處理器210分離,但處理器210可包括嵌入式記憶體。
本發明可提供經配置以使用提供於另一交易之解除鎖定指令碼中的未判定資料修改嵌入於區塊鏈交易(Tx)之鎖定指令碼中之密碼編譯公用密鑰的方法(及對應系統)。當在例如使用交易位元組碼作為訊息之比特幣協定中結合簽名檢查作業碼(例如,OP_CHECKSIG)使用時,交易及資料兩者需要來自公用密鑰之擁有者的批准或授權。此保證其安全以免更改。因此,本發明提供與安全性、密碼學、授權及傳送控制有關之優點。
現參看圖3,說明鎖定區塊鏈網路上之數位資產的方法300。本方法可藉由區塊鏈網路100(圖1)之節點102執行以基於安全的未判定資料而鎖定數位資產。資料未判定係因為組態鎖定之節點在組態鎖定時無需知曉該資料,且資料安全係因為該鎖定經組態使得藉由未經授權方對資料進行之任何修改將導致交易無效。為易於參考,執行方法300之節點102在本文中可被稱作鎖定節點。該鎖定節點可組態有在由鎖定節點之處理器執行時執行方法300的處理器可執行指令。
因此,用以鎖定數位資產之未判定資料可係鎖定節點在鎖定時尚未知曉之資料。此資料可係尚未建立之資料(諸如,預期在未來創建但尚未創建之資料)或另一節點已知但尚不可用於鎖定節點之資料。然而,該
資料係預期自經判定資料源可得(目前或在未來)之資料。資料源經判定係因為資料源之識別碼在產生鎖定指令碼時已知。在鎖定指令碼經組態以依賴於來自單一資料源之資料的一些實施(相對於鎖定指令碼將接受來自多個資料源之資料且判定將依賴於哪些資料源的實施)中,彼資料源可被稱作受信任資料源。
鎖定區塊鏈網路上之數位資產的方法300包括在操作302處準備鎖定指令碼以基於未判定資料鎖定數位資產。鎖定指令碼係置放於交易之輸出上的呈電腦可執行程式碼或指令之形式的保留數,其指定必須滿足以便在未來花費輸出之條件。更特定而言,鎖定指令碼經組態以接受來自解除鎖定指令碼之資料,且基於該資料執行某些操作使得驗證節點可判定解除鎖定指令碼是否成功地解除鎖定該鎖定指令碼。
鎖定指令碼可定義一或多個資料約束。資料約束係提供於解除鎖定指令碼中之資料必須滿足以成功地評估鎖定指令碼(例如,在比特幣之狀況下評估為真)的要求。因此,鎖定指令碼可在操作302處經組態有指令以使執行鎖定指令碼之驗證節點對照資料約束來評估提供於解除鎖定指令碼中之資料。鎖定指令碼之資料約束可定義臨限值或值以及資料與所定義值或臨限值之間的必需的關係。比較功能可用以使基於提供於解除鎖定指令碼中之資料執行鎖定指令碼之驗證節點基於資料及一或多個值執行比較。藉由實例,資料約束可要求資料等於在鎖定指令碼中指定之值,大於在鎖定指令碼中指定之值,小於在鎖定指令碼中指定之值,不等於在鎖定指令碼中指定之值等等。亦可定義眾多其他可能的資料約束。
藉由實例,在比特幣中,以下係可包括於鎖定指令碼之資料約束部分中以檢查資料滿足某些條件的可能實例操作碼中之一些。應注意,其他操作亦係可能的且指令碼可在使用後續比較功能中之一者之前在某種
程度上修改資料(例如,經由乘法、減法、除法、加法或另一運算)。
OP_GREATERTHAN,其在堆疊中之第二項目大於堆疊中之頂部項目的情況下傳回真值(TRUE)。
OP_LESSTHANOREQUAL,其在堆疊中之第二項目小於或等於頂部項目之情況下傳回真值(TRUE)。
OP_GREATERTHANOREQUAL,其在堆疊中之第二項目大於或等於頂部項目之情況下傳回真值(TRUE)。
OP_WITHIN,其在堆疊中之第三項目介於第二項目與第一項目之間的情況下傳回真值(TRUE)。
OP_NUMEQUAL,其在堆疊中之頂部項目係相同數字的情況下傳回真值(TRUE)。
OP_NUMNOTEQUAL,其在頂部兩個項目並非相同數字之情況下傳回真值(TRUE)。
OP_LESSTHAN,其在堆疊中之第二項目小於頂部項目的情況下傳回真值(TRUE)。
該鎖定指令碼亦可包括諸如檢驗功能之指令,其在資料不滿足資料約束之情況下使含有聲稱解除鎖定該鎖定指令碼之解除鎖定指令碼的交易無效。藉由實例,在區塊鏈網路係比特幣之情況下,可在比較功能之後包括OP_VERIFY操作碼。OP_VERIFY碼檢查堆疊之頂部且在堆疊之頂部的值並非真(TRUE)的情況下暫停交易且使交易無效。
因此,在至少一些實施例中,鎖定指令碼之資料約束部分可呈以下格式:<Script to Check Constraints>OP_VERIFY,其中<Script to Check Constraints>係評估解除鎖定指令碼中之資料是否
滿足一或多個所定義約束且基於此評估傳回真(TRUE)或假(FALSE)的任何指令碼。
鎖定指令碼亦可包括使執行鎖定指令碼之驗證節點評估資料源的電腦可執行指令。舉例而言,鎖定指令碼可要求資料由諸如經判定節點之經判定資料源提供而不由其他節點竄改。亦即,鎖定指令碼經組態使得任何此竄改將使聲稱解除鎖定該鎖定指令碼之交易無效。
鎖定指令碼可使執行鎖定指令碼之驗證節點使用橢圓曲線有限域算術來檢驗資料源(提供於聲稱解除鎖定該鎖定指令碼之解除鎖定指令碼中)。更特定而言,鎖定指令碼可經組態以在經執行時使節點基於資料及經判定資料源之公用密鑰執行橢圓曲線有限域算術,該公用密鑰藉由鎖定節點包括於鎖定指令碼中。亦即,鎖定指令碼可經組態以使執行鎖定指令碼之節點基於定義於鎖定指令碼中之用於經判定資料源的公用密鑰且基於定義於解除鎖定指令碼中之資料,而產生用於經判定資料源之經修改公用密鑰。經修改公用密鑰係藉由基於嵌入於鎖定指令碼中之用於經判定資料源的公用密鑰且基於提供於解除鎖定指令碼中之資料而執行橢圓曲線有限域算術運算來判定。亦可使用多個運算(例如,資料×資料×公用密鑰等)判定經修改公用密鑰。
為解鎖鎖定該鎖定指令碼,經判定資料源必須藉由基於資料源之私用密鑰及資料而執行有限域算術運算來獲得經修改私用密鑰。更具體而言,對私用密鑰執行之運算對應於鎖定指令碼經組態以對公用密鑰執行之運算。如同公用密鑰,可對私用密鑰執行多個運算以獲得經修改私用密鑰(例如,資料×資料×私用密鑰等)。經修改私用密鑰由經判定資料源用以產生可包括於解除鎖定指令碼中之簽名。此簽名在本文中可被稱作來自經修改私用密鑰之簽名。
為理解藉由資料類似地修改私用密鑰及公用密鑰如何允許檢驗資料源,考慮私用密鑰與公用密鑰之間的關係係有用的。更特定而言,如下計算橢圓曲線公用密鑰:D=d×G,
其中d係私用密鑰,D係對應公用密鑰,且G係橢圓曲線有限域產生器元素。
歸因於私用密鑰與公用密鑰之間的關係,當藉由資料對公用密鑰進行改變時,需要對私用密鑰進行對應改變。任何數目種方式可用以藉由資料修改私用密鑰及公用密鑰,只要操作可分解成有限域加法即可。
藉由實例,若d係原始私用密鑰,d'係經修改私用密鑰,D係原始公用密鑰且D'係經修改公用密鑰,則經修改公用密鑰及經修改私用密鑰可判定為:d'=d?data
D'=d'×G=d×data×G=data×D
或者,經修改公用密鑰及經修改私用密鑰可判定為:d'=d+data
D'=d'×G=(d+data)×G=D+DATA,其中DATA係橢圓曲線點。
雖然一些現存區塊鏈網路可能不包含用於執行橢圓曲線有限域算術運算之特定操作碼,但可在控制區塊鏈網路100(圖1)之操作的協定中提供操作碼以提供此運算。藉由實例,可定義操作碼OP_ECPMULT,其獲取經編碼橢圓曲線點及數字且以純量執行橢圓曲線乘法。其輸出經編碼橢圓曲線點作為結果。
為進行橢圓曲線有限域算術,可使用兩個特定橢圓曲線運
算:點相加(P+Q)用以將橢圓曲線上之新點計算為曲線之交點的求反值(negation)。此可描述為R=P+Q。
點倍增(P+P)使用點相加以計算P之2倍的點。此可描述為R=P+P=2P。
可如下表達此等運算。
x 3=s 2-x 1-x 2 mod p
y 3=s(x 1-x 3)-y 1 mod p
可對任意數字使用此等運算,以導出橢圓曲線算術,諸如以純量進行之橢圓曲線點乘法。
因此,在方法300之操作302處準備的鎖定指令碼可經組態以使執行鎖定指令碼之驗證節點藉由使用上文所描述之技術獲得用於資料源之經修改公用密鑰來檢查提供於對應解除鎖定指令碼中之資料是否已由經判定資料源提供。鎖定指令碼可經組態以使驗證節點接著評估來自經修改私用密鑰之簽名(亦即,自已基於資料修改之私用密鑰產生的簽名)。更特定而言,簽名檢查操作碼可包括於鎖定指令碼中,該簽名檢查操作碼檢查來自經修改私用密鑰之簽名是否對應於經修改公用密鑰且因此是否係有效簽名。藉由實例,可使用OP_CHECKSIG操作碼。OP_CHECKSIG自堆疊拿取公用密鑰及簽名且驗證用於交易之散列資料的簽名。若值匹配,則OP_CHECKSIG傳回真。因此,鎖定指令碼中的組態驗證節點基於經修改公
用密鑰評估解除鎖定指令碼中之簽名的指令可經組態以使驗證節點在尚未使用與經判定資料源相關聯之經修改私用密鑰產生含於彼解除鎖定指令碼中之簽名時,使包括解除鎖定指令碼之交易無效。亦即,若簽名並非藉由經修改私用密鑰產生,則藉由驗證節點使含有所聲稱解除鎖定指令碼之交易無效,該經修改私用密鑰係藉由經判定資料源基於用於經判定資料源之私用密鑰且基於資料而產生。
藉由實例,可如下連同鎖定指令碼中之橢圓曲線有限域算術運算使用OP_CHECKSIG:<PubKey D>OP_ECPMULT OP_CHECKSIG
其中PubKey D係將提供資料之經判定資料源的公用密鑰。
將成功地驗證鎖定指令碼之此部分的解除鎖定指令碼之對應部分將係:<Sig'><Data>
其中<Data>係資料且<Sig'>係藉由經修改私用密鑰(亦即,藉由已基於資料修改之私用密鑰)產生之簽名。
可反轉鎖定指令碼之資料約束部分及鎖定指令碼之資料源檢查部分的次序。舉例而言,鎖定指令碼可在考慮資料是否滿足資料約束之前首先使驗證節點確認資料由經判定資料源提供。
除上文所提到之彼等外,鎖定指令碼亦可包括其他鎖定特徵。舉例而言,鎖定指令碼亦可需要新增另一節點之簽名。舉例而言,鎖定指令碼可需要交易之接收者(亦即,將接收與交易相關聯之數位資產的一方)提交有效簽名以解除鎖定該鎖定指令碼。舉例而言,鎖定指令碼可包括:<PubKey B>OP_CHECKSIG,其中PubKey B係作為由鎖定指令碼保留之數位資產之接收者的節點
之公用密鑰。
鎖定指令碼亦可經組態以需要在鎖定指令碼可驗證為真使得數位資產不再由鎖定指令碼保留之前新增與鎖定節點本身相關聯之簽名。舉例而言,鎖定指令碼可包括:<PubKey A>OP_CHECKSIGVERIFY
其中PubKey A係作為由鎖定指令碼保留之數位資產之接收者的節點之公用密鑰。OP_CHECKSIGVERIFY類似於OP_CHECKSIG操作,但其接著使用OP_VERIFY以在OP_CHECKSIG不評估為真之情況下暫停。
此外,在操作302處準備之鎖定指令碼可經組態以包括用於在所定義時間段之後移除由鎖定指令碼置放於數位資產上之保留的指令。亦即,鎖定指令碼可組態有允許鎖定方在某些條件下回收數位資產之一或多個條件。舉例而言,若資料一旦經判定便不能滿足鎖定指令碼所需之資料約束,則鎖定指令碼可允許鎖定節點回收數位資產。舉例而言,鎖定指令碼可經組態以:若在指定於鎖定指令碼中之時間段期間不以其他方式回收數位資產,則允許鎖定節點(或由其公用密鑰指定之任何其他方)在此時間段經過之後回收此等數位資產。
其中<time limit>係嵌入於鎖定指令碼中之時間段,且OP_CHECKSEQUENCEVERIFY係僅允許在所花費輸出至少長如指定時間段之情況下執行某路徑。若例如<time limit>經設定為十(10)天,則鎖定節點(其具有對應於公用密鑰<PubKey A>之私用密鑰可在10天過去之後藉由提供使用用於鎖定節點之私用密鑰進行簽名之簽名來回收輸出。
實例鎖定指令碼允許鎖定節點A要求來自經判定資料源C之資料大於90。另外,鎖定指令碼要求經判定資料源藉由提供自經修改私用密鑰(亦即,自基於資料修改之私用密鑰)產生之簽名來認證資料源。實例鎖定指令碼亦要求可作為傳送中之數位資產之接收者的鎖定節點A及另一節點B兩者皆在解除鎖定指令碼中提供有效簽名。
實例鎖定指令碼包括多個分支,其中之一者允許鎖定節點A在由鎖定指令碼保留之數位資產在10天內不以其他方式被主張的情況下回收該等數位資產。
舉例而言,實例鎖定指令碼可由與一方相關聯之鎖定節點A使用以獎勵與另一方相關聯之另一節點B,從而在經判定資料源C提供超過90之資料的情況下獎勵彼節點B。舉例而言,資料可係呈評分或級別之形式的測試結果,且該經判定資料源可係教師。在此類狀況下,節點B可
與接收討論中之評分或級別的一方相關聯,且節點A可與在評分或級別令人滿意之情況下希望獎勵接收評分或級別之該方的一方相關聯。
藉由鎖定節點將在操作302處準備之鎖定指令碼包括於區塊鏈交易中。亦即,鎖定節點可將鎖定指令碼嵌入至區塊鏈交易之輸出中(在操作304處)以保留(亦即,鎖定)與交易相關聯之數位資產。藉由鎖定節點將交易發送至區塊鏈網路100(圖1)。亦即,可將包括鎖定指令碼之交易廣播至區塊鏈網路100(圖1)。若諸如包括足夠挖掘費用之某些準則滿足,則將交易(其可被稱作第一交易或第一區塊鏈交易)新增至由區塊鏈網路100(圖1)上之挖掘者104(圖1)產生的區塊。鎖定節點可等待直至區塊經挖掘至區塊鏈上且經確認。
在操作306處,鎖定節點可準備用於另一區塊鏈交易(其可被稱作第二交易或第二區塊鏈交易)之交易輸入,該另一區塊鏈交易花費作為第一交易中之輸出而包括的數位資產。亦即,該交易可包括與第一交易相關聯之UTXO作為至第二交易之輸入。鎖定節點可基於鎖定節點之私用密鑰產生簽名,且可將彼簽名包括於第二交易之解除鎖定指令碼中。鎖定節點亦可包括分支觸發項作為至交易之輸入,該分支觸發項用以觸發鎖定指令碼中之條件性分支中之特定者的操作。舉例而言,上文所描述之實例鎖定指令碼包括2個條件性分支,第一條件性分支允許另一方B主張第一交易中所涉及之數位資產,且第二條件性分支在此等數位資產在指定時間段內不以其他方式由B主張的情況下允許鎖定節點回收此等數位資產。為使第二交易之解除鎖定指令碼觸發第一分支而非第二分支,鎖定節點可包括「1」作為至交易之輸入使得OP_IF評估為真,從而使得執行第一分支。
以允許其他節點新增至交易而無需鎖定節點之批准的方式新增用於鎖定節點之簽名。舉例而言,簽名可作為
SIGHASH_NONE|SIGHASH_ANYONECANPAY新增。SIGHASH_ANYONECANPAY係僅對當前輸入進行簽名之簽名散列類型,且SIGHASH_NONE係僅對輸入進行簽名之散列類型,從而允許任何人改變輸出而無需鎖定節點之許可。
因此,在操作306處,鎖定節點可產生簽名且將其新增至交易,組態交易以允許另一方新增輸入及輸出,且將分支觸發項新增至交易以觸發鎖定指令碼之特定條件性分支的操作。
鎖定節點可(在操作308處)將在操作306處準備之第二交易提供至用於諸如B方之另一方的另一節點或提供至經判定資料源C。
現參看圖4,說明促進區塊鏈網路上之數位資產之解除鎖定的方法400。本方法可藉由區塊鏈網路100(圖1)之節點102或藉由可能未參加區塊鏈網路100之另一電子裝置執行。促進區塊鏈網路上之數位資產之解除鎖定的方法400之節點102可被稱作經判定資料源。該經判定資料源可組態在由該經判定資料源之處理器執行時執行促進區塊鏈網路上之數位資產之解除鎖定的方法400的處理器可執行指令。
在操作402處,該經判定資料源可接收所提議交易,其可係由鎖定區塊鏈網路上之數位資產的方法300之操作306處準備的交易。亦即,該交易係參考由鎖定指令碼保留(亦即,鎖定)之一或多個數位資產的交易。
在操作404處,經判定資料源基於用於經判定資料源之私用密鑰及將由經判定資料源在區塊鏈交易中提供之資料而產生經修改私用密鑰。使用上文所描述之技術產生該經修改私用密鑰。舉例而言,可藉由使用對應於定義於鎖定指令碼中之運算利用資料修改私用密鑰來以產生經修改私用密鑰的運算,來產生經修改私用密鑰。因此,操作404可屬於上文參看
圖3所描述之類型。可藉由對私用密鑰及資料執行有限域算術運算來判定經修改私用密鑰。舉例而言,該有限域算術運算可執行乘法。
在操作406處,使用經修改私用密鑰產生用於所提議交易之簽名。在操作408處,將此簽名連同資料本身新增至交易。以允許其他節點新增至交易而無需經判定資料源之批准的方式新增該簽名。舉例而言,簽名可作為SIGHASH_NONE|SIGHASH_ANYONECANPAY新增。
在操作410處,經判定資料源將交易傳達至另一節點。舉例而言,經判定資料源可將所提議交易傳遞至與指定於鎖定指令碼中之公用密鑰相關聯的另一節點B,交易之解除鎖定指令碼意欲解除鎖定該鎖定指令碼。此另一節點可新增基於私用密鑰而產生以用於此另一節點之另一簽名,且亦可新增指定如何花費與交易相關聯之數位資產的輸出。此另一節點可將交易(其可被稱作第二交易)廣播至區塊鏈網路100(圖1)。
對於待新增經接受至區塊鏈中之區塊的區塊鏈交易(其可被稱作第二交易),包含交易之解除鎖定指令碼的交易之輸入必須成功地解除鎖定第一交易(亦即,操作304處準備的交易)之鎖定指令碼。
現將參看圖5,其以流程圖形式說明可藉由區塊鏈網路100之節點102執行的實例方法500。執行該方法之節點可被稱作驗證節點,此係因為節點驗證區塊鏈交易(亦即,第二交易,其係含有聲稱解除鎖定第一交易之鎖定指令碼的解除鎖定指令碼的交易)以判定是否應將該交易新增至區塊鏈分散式總帳。驗證節點可係挖掘者104,或其可係不進行挖掘而僅驗證由挖掘者104提議之區塊或尚未挖掘至區塊中之交易的驗證節點。
驗證節點執行解除鎖定指令碼(定義於第二交易中)連同對應鎖定指令碼(定義於第一交易中)以判定區塊鏈交易(亦即,第二交易)是否有效。更特定而言,交易之每一輸入中的解除鎖定指令碼可與鎖定指令碼一
起經執行以判定其是否滿足由鎖定指令碼定義之花費條件。
舉例而言,可首先堆疊執行引擎執行解除鎖定指令碼。當解除鎖定指令碼成功地執行而無錯誤時,可藉由驗證節點複製主堆疊且可接著執行鎖定指令碼。若解除鎖定指令碼評估為真(TRUE),則解除鎖定指令碼已滿足由鎖定指令碼定義之花費條件。接著判定區塊鏈交易有效且若滿足某些其他條件(諸如,挖掘費用足以使交易藉由挖掘者包括於新區塊中),則可將交易寫入至區塊鏈。
因此,藉由鎖定指令碼中之電腦可執行指令定義方法500之操作。因此,方法500可包括上文所描述之鎖定指令碼的任何特徵。
在操作502處,驗證節點評估提供於解除鎖定指令碼中之資料以判定資料是否滿足定義於鎖定指令碼中之一或多個約束。上文參看圖3描述實例資料約束。
若驗證節點判定資料不滿足必需的資料約束,則在操作504處,驗證節點判定解除鎖定指令碼並非鎖定指令碼之有效解決方案。驗證節點接著用以阻止將含有解除鎖定指令碼之區塊鏈交易(亦即,第二交易)新增至區塊鏈。舉例而言,若節點係挖掘者104(圖1),則節點將交易自藉由彼挖掘者104準備之下一區塊排除。
在操作506處,驗證節點評估資料源。更特定而言,由驗證節點執行之鎖定指令碼使節點判定用於經判定資料源之經修改公用密鑰。經修改公用密鑰係藉由基於嵌入於鎖定指令碼中之用於經判定資料源的公用密鑰以及基於提供於解除鎖定指令碼中之資料而執行橢圓曲線有限域算術運算來判定。接著,呼叫簽名檢查功能以判定經修改公用密鑰是否對應於基於經修改私用密鑰產生之簽名。上文在鎖定指令碼之描述中更詳細地描述了此操作。該簽名提供於解除鎖定指令碼中。若該簽名判定為無效,則驗
證節點在操作504處判定解除鎖定指令碼並非鎖定指令碼之有效解決方案。
若判定資料滿足資料約束且若判定資料有效(亦即,若判定其已由經判定資料源產生或提供而無後續竄改),則可在操作508處判定交易有效(其限制條件為鎖定指令碼之任何其他可能要求亦滿足)。可接著將該交易挖掘至區塊鏈上。
雖然圖5之方法500說明一般確認資料滿足一或多個所定義約束且資料尚未被篡改之檢驗方法,但檢驗方法可包括在鎖定指令碼評估為真(TRUE)之前(亦即,在判定交易有效)之前評估的其他準則。
可執行其他操作,諸如描述於上文所論述之實例鎖定指令碼中的彼等操作。舉例而言,驗證節點可判定與指定於鎖定指令碼中之公用密鑰相關聯的其他節點是否已對包括解除鎖定指令碼之鎖定交易有效地進行簽名。如上文在圖4之論述中所提到,此等其他節點可係例如鎖定節點(亦即,產生鎖定指令碼之節點)、接收者節點(亦即,意欲作為在包括鎖定指令碼之交易中參考的數位資產之接收者的節點)或另一節點。此等驗證操作中之任一者的任何失敗可使驗證失敗。
方法500亦可包括在執行操作502及操作506之前判定分支觸發項已包括於解除鎖定指令碼中,該分支觸發項觸發鎖定指令碼之定義操作502及操作506的分支。可僅在由分支觸發項觸發時執行操作502及操作506。
亦可注意,可反轉操作502及操作506之次序。亦即,可藉由驗證節點在確認資料滿足所定義約束之前確認資料源。
應注意,上文所提及之實施例說明而非限制本發明,且熟習此項技術者將能夠設計許多替代實施例而不背離本發明之如由所附申請專利範圍定義的範圍。在申請專利範圍中,置放於圓括號中之任何參考符號不
應被視為限制申請專利範圍。詞「包含(comprising及comprises)」及其類似者並不排除除任何請求項或說明書中整體列出之彼等元件或步驟外的元件或步驟之存在。在本說明書中,「包含(comprises及comprising)」意謂「包括或由……組成」。對元件之單數參考並不排除對此等元件之複數參考,且反之亦然。本發明可藉助於包含若干相異元件之硬體且藉助於經合適程式化之電腦實施。在列舉若干構件之裝置請求項中,此等構件中之若干構件可由硬體之同一個項目體現。在相互不同之附屬請求項中敍述某些措施之純粹實情並不指示不能有利地使用此等措施之組合。
300:鎖定區塊鏈網路上之數位資產的方法
302:操作
304:操作
306:操作
308:操作
Claims (14)
- 一種電腦實施方法,包含:藉由一區塊鏈網路中之一節點將一鎖定指令碼包括於一區塊鏈交易中以鎖定與該區塊鏈交易相關聯之一數位資產,該鎖定指令碼包括用於一經判定資料源之一公用密鑰且包括指令以使執行該鎖定指令碼之一驗證節點藉由進行以下操作來檢驗該驗證節點是提供於一解除鎖定指令碼中之資料源,其中,該資料係關於產生該鎖定指令碼時之未判定資料:a)基於用於該經判定資料源之該公用密鑰且基於定義於該解除鎖定指令碼中之資料而產生一經修改公用密鑰;及b)基於該經修改公用密鑰而評估該解除鎖定指令碼中之一密碼編譯簽名;及藉由該節點將該區塊鏈交易發送至該區塊鏈網路。
- 如申請專利範圍第1項所述之電腦實施方法,其中該鎖定指令碼進一步定義一或多個資料約束,且其中該鎖定指令碼進一步包括指令以使該驗證節點在該資料不滿足該一或多個資料約束時使包括該解除鎖定指令碼之一區塊鏈交易無效。
- 如申請專利範圍第2項所述之電腦實施方法,其中該一或多個資料約束定義一或多個值及基於該資料及該一或多個值執行一比較之一比較功能。
- 如申請專利範圍第1項至第3項中任一項所述之電腦實施方法,其中組態該驗證節點基於該經修改公用密鑰而評估該解除鎖定指令碼中之該密碼編譯簽名的該等指令係經組態以使該驗證節點在尚未使用與該經判定資料源相關聯之一經修改私用密鑰產生該密碼編譯簽名時使包括該解除鎖定指令碼之該區塊鏈交易無效,且其中該經修改私用密鑰係藉由該經判定資料源基於用於該經判定資料源之一私用密鑰且基於 該資料而產生。
- 如申請專利範圍第4項所述之電腦實施方法,其中該等指令組態該驗證節點藉由執行對應於用以產生該經修改私用密鑰之一運算的一運算來產生該經修改公用密鑰。
- 如申請專利範圍第4項所述之電腦實施方法,其中該經修改私用密鑰係藉由基於該資料及用於該經判定資料源之該私用密鑰執行一有限域算術運算而產生的一密鑰。
- 如申請專利範圍第6項所述之電腦實施方法,其中該等指令經組態以使執行該鎖定指令碼之該驗證節點藉由基於該資料及用於該經判定資料源之該公用密鑰執行一橢圓曲線有限域算術運算而產生該經修改公用密鑰。
- 如申請專利範圍第7項所述之電腦實施方法,其中該橢圓曲線有限域算術運算以純量執行橢圓曲線乘法。
- 如申請專利範圍第1項所述之電腦實施方法,其中該鎖定指令碼經進一步組態以包括用於在一所定義時間段之後移除由該節點對該等數位資產之該鎖定的指令。
- 一種電腦可讀儲存媒體,其包含電腦可執行指令,該等電腦可執行指令在經執行時組態一處理器執行如申請專利範圍第1項至第9項中任一項所述之方法。
- 一種電子裝置,其包含:一介面裝置;一處理器,其耦接至該介面裝置;及一記憶體,其耦接至該處理器,該記憶體具有儲存於其上之電腦可執行指令,該等電腦可執行指令在經執行時組態該處理器執行如申請專利 範圍第1項至第9項中任一項所述之方法。
- 一種電腦實施方法,其包含:藉由一節點基於資料及一私用密鑰產生一經修改私用密鑰;使用該經修改私用密鑰產生用於參考由一鎖定指令碼鎖定之數位資產之一區塊鏈交易的一密碼編譯簽名;將該密碼編譯簽名及該資料新增至該區塊鏈交易;及將該區塊鏈交易傳達至另一節點;其中該鎖定指令碼指定用於一經判定資料源之一公用密鑰,且包括指令以使執行該鎖定指令碼之一驗證節點藉由進行以下操作來檢驗該驗證節點是提供於一解除鎖定指令碼中之資料源,其中,該資料係關於產生該鎖定指令碼時之未判定資料:a)基於用於該經判定資料源之該公用密鑰且基於定義於該解除鎖定指令碼中之資料而產生一經修改公用密鑰;及b)基於該經修改公用密鑰而評估該解除鎖定指令碼中之一密碼編譯簽名。
- 如申請專利範圍第12項所述之電腦實施方法,其中產生一經修改私用密鑰包含對該資料及該私用密鑰執行一有限域算術運算。
- 如申請專利範圍第13項所述之電腦實施方法,其中該有限域算術運算執行乘法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB1705749.8A GB201705749D0 (en) | 2017-04-10 | 2017-04-10 | Computer-implemented system and method |
GB1705749.8 | 2017-04-10 | ||
??1705749.8 | 2017-04-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201837805A TW201837805A (zh) | 2018-10-16 |
TWI782970B true TWI782970B (zh) | 2022-11-11 |
Family
ID=58744780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107111791A TWI782970B (zh) | 2017-04-10 | 2018-04-03 | 基於未判定資料保證區塊鏈交易的安全之電腦實施方法、電子裝置及電腦可讀儲存媒體 |
Country Status (9)
Country | Link |
---|---|
US (2) | US11695567B2 (zh) |
EP (1) | EP3610368A1 (zh) |
JP (3) | JP7019717B2 (zh) |
KR (2) | KR20230165886A (zh) |
CN (1) | CN110546604B (zh) |
GB (1) | GB201705749D0 (zh) |
SG (2) | SG11201908732YA (zh) |
TW (1) | TWI782970B (zh) |
WO (1) | WO2018189634A1 (zh) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210176251A1 (en) * | 2017-05-30 | 2021-06-10 | Siemens Aktiengesellschaft | Access Control Method and Industrial Network Using a Blockchain for Access Control |
US20190066205A1 (en) * | 2017-08-30 | 2019-02-28 | StartEngine Crowdfunding, Inc. | Peer-to-peer trading with blockchain technology |
CN111095861A (zh) * | 2017-09-08 | 2020-05-01 | 区块链控股有限公司 | 用于保护区块链上资源的改进时间锁技术 |
US10298585B1 (en) * | 2018-01-26 | 2019-05-21 | Accenture Global Solutions Limited | Blockchain interoperability |
US20190295049A1 (en) * | 2018-03-22 | 2019-09-26 | NEC Laboratories Europe GmbH | System and method for secure transaction verification in a distributed ledger system |
US11315369B2 (en) | 2018-03-23 | 2022-04-26 | The Boeing Company | Blockchain configuration history for vehicle maintenance, modification, and activity tracking |
CN109377215B (zh) | 2018-08-06 | 2020-04-21 | 阿里巴巴集团控股有限公司 | 区块链交易方法及装置、电子设备 |
CN109345392B (zh) * | 2018-10-26 | 2020-06-23 | 阿里巴巴集团控股有限公司 | 编程题目发布、解答代码发布、解答代码检验方法及*** |
CN109586912B (zh) * | 2018-11-09 | 2020-04-07 | 天津海泰方圆科技有限公司 | 一种sm2数字签名的生成方法、***、设备及介质 |
PL3552158T3 (pl) | 2018-11-27 | 2021-07-26 | Advanced New Technologies Co., Ltd. | System i sposób ochrony informacji |
US10700850B2 (en) | 2018-11-27 | 2020-06-30 | Alibaba Group Holding Limited | System and method for information protection |
KR102139897B1 (ko) | 2018-11-27 | 2020-07-31 | 알리바바 그룹 홀딩 리미티드 | 정보 보호를 위한 시스템 및 방법 |
PL3545644T3 (pl) | 2018-11-27 | 2021-06-28 | Advanced New Technologies Co., Ltd. | System i sposób ochrony informacji |
ES2879855T3 (es) | 2018-11-27 | 2021-11-23 | Advanced New Technologies Co Ltd | Sistema y método para la protección de información |
RU2719423C1 (ru) | 2018-11-27 | 2020-04-17 | Алибаба Груп Холдинг Лимитед | Система и способ защиты информации |
US11151512B2 (en) * | 2018-12-14 | 2021-10-19 | The Boeing Company | Interlocking blockchains for aircraft part history and current aircraft configuration |
CN111340481B (zh) * | 2018-12-19 | 2023-05-12 | 北京沃东天骏信息技术有限公司 | 基于多链区块链网络的数据处理方法、装置和设备 |
JP6811339B2 (ja) | 2019-03-27 | 2021-01-13 | アドバンスド ニュー テクノロジーズ カンパニー リミテッド | 高可用な高信頼実行環境を使用したブロックチェーンネットワークのためのパブリックデータの読み出し |
CN110999255B (zh) | 2019-03-29 | 2021-12-21 | 创新先进技术有限公司 | 检索区块链网络的访问数据的方法及装置 |
US11546350B2 (en) * | 2019-05-07 | 2023-01-03 | Qualcomm Incorporated | Data provenance |
US10937096B2 (en) | 2019-07-15 | 2021-03-02 | Advanced New Technologies Co., Ltd. | Transaction processing in a service blockchain |
CN110471984B (zh) * | 2019-07-15 | 2020-08-25 | 阿里巴巴集团控股有限公司 | 基于区块链的业务处理方法及装置、电子设备 |
CN112445792B (zh) * | 2019-09-04 | 2024-05-24 | 中移物联网有限公司 | 区块链区块数据存储方法、装置、电子设备及存储介质 |
GB2587202A (en) * | 2019-09-17 | 2021-03-24 | Nchain Holdings Ltd | Allocation of a digital asset using blockchain transactions |
GB2592626A (en) * | 2020-03-04 | 2021-09-08 | Nchain Holdings Ltd | Method of generating a public key |
GB2592627A (en) * | 2020-03-04 | 2021-09-08 | Nchain Holdings Ltd | Method of generating a hash-based message authentication code |
US20230055584A1 (en) * | 2021-08-17 | 2023-02-23 | Darrion Vinh Nguyen | Cryptocurrency using digitally locked coins |
CN117478301B (zh) * | 2023-12-27 | 2024-04-09 | 湖南天河国云科技有限公司 | 基于有向无环图的区块链共识达成方法及装置 |
CN117892333B (zh) * | 2024-03-14 | 2024-05-14 | 快页信息技术有限公司 | 一种基于区块链的信息******及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104463001A (zh) * | 2014-12-19 | 2015-03-25 | 比特卡国际有限公司 | 一种独立生成和保存加密数字货币私钥的方法及承载加密数字货币私钥的装置 |
CN106411506A (zh) * | 2016-08-31 | 2017-02-15 | 飞天诚信科技股份有限公司 | 适用于数字货币的密钥派生方法及装置 |
US20170220815A1 (en) * | 2016-01-28 | 2017-08-03 | Nasdaq, Inc. | Systems and methods for securing and disseminating time sensitive information using a blockchain |
US20170288867A1 (en) * | 2016-03-30 | 2017-10-05 | Intel Corporation | Authenticating a system to enable access to a diagnostic interface in a storage device |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4655358B2 (ja) | 2000-11-21 | 2011-03-23 | 沖電気工業株式会社 | 提供者確認システムおよび提供者確認方法 |
JP4067818B2 (ja) * | 2001-12-10 | 2008-03-26 | 富士通株式会社 | 楕円曲線暗号装置、楕円曲線暗号プログラム及び楕円曲線暗号の演算方法 |
GB0215590D0 (en) * | 2002-07-05 | 2002-08-14 | Hewlett Packard Co | Method and apparatus for generating a cryptographic key |
US7552341B2 (en) * | 2004-09-01 | 2009-06-23 | Microsoft Corporation | Licensing the use of software on a particular CPU |
CN102346460B (zh) * | 2011-05-27 | 2013-11-13 | 运软网络科技(上海)有限公司 | 一种基于事务的服务控制***及其控制方法 |
WO2014201059A1 (en) | 2013-06-10 | 2014-12-18 | Certimix, Llc | Secure storing and offline transfering of digitally transferable assets |
EP4148642A1 (en) | 2014-05-09 | 2023-03-15 | Veritaseum, Inc. | Devices, systems, and methods for facilitating low trust and zero trust value transfers |
US20160098730A1 (en) * | 2014-10-01 | 2016-04-07 | The Filing Cabinet, LLC | System and Method for Block-Chain Verification of Goods |
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 |
US9654978B2 (en) | 2015-02-03 | 2017-05-16 | Qualcomm Incorporated | Asset accessibility with continuous authentication for mobile devices |
US9654294B2 (en) * | 2015-02-26 | 2017-05-16 | Red Hat, Inc. | Non-repudiable atomic commit |
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 |
JP6704985B2 (ja) | 2015-04-05 | 2020-06-03 | デジタル・アセット・ホールディングス・エルエルシー | デジタル資産仲介電子決済プラットフォーム |
US11062303B2 (en) | 2015-06-08 | 2021-07-13 | Blockstream Corporation | Cryptographically concealing amounts transacted on a ledger while preserving a network's ability to verify the transaction |
CA2991211C (en) | 2015-07-02 | 2024-02-20 | Nasdaq, Inc. | Systems and methods of secure provenance for distributed transaction databases |
GB201511963D0 (en) | 2015-07-08 | 2015-08-19 | Barclays Bank Plc | Secure digital data operations |
US20170085545A1 (en) * | 2015-07-14 | 2017-03-23 | Fmr Llc | Smart Rules and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems |
CN105681301B (zh) * | 2016-01-16 | 2019-03-12 | 杭州复杂美科技有限公司 | 区块链上的结算方法 |
CN105956923B (zh) * | 2016-04-20 | 2022-04-29 | 上海如鸽投资有限公司 | 资产交易***以及资产的数字化认证和交易方法 |
CN106100847B (zh) * | 2016-06-14 | 2021-10-26 | 惠众商务顾问(北京)有限公司 | 非对称加密区块链身份信息验证方法及装置 |
US20180012037A1 (en) * | 2016-07-05 | 2018-01-11 | Nxp B.V. | Secure operation apparatuses and methods therefor |
CN106385319B (zh) * | 2016-09-29 | 2020-11-27 | 江苏通付盾科技有限公司 | 区块链网络中信息的验证方法及*** |
CN106504094B (zh) * | 2016-11-25 | 2021-06-15 | 中国银行股份有限公司 | 基于区块链技术的分布式总账***的交易撮合方法及*** |
US10891384B2 (en) * | 2017-10-19 | 2021-01-12 | Koninklijke Kpn N.V. | Blockchain transaction device and method |
US10250708B1 (en) * | 2017-12-26 | 2019-04-02 | Akamai Technologies, Inc. | High performance distributed system of record |
FR3076422B1 (fr) * | 2017-12-29 | 2020-09-25 | Commissariat Energie Atomique | Methode d'echange de cles authentifie par chaine de blocs |
-
2017
- 2017-04-10 GB GBGB1705749.8A patent/GB201705749D0/en not_active Ceased
-
2018
- 2018-04-03 TW TW107111791A patent/TWI782970B/zh active
- 2018-04-06 WO PCT/IB2018/052407 patent/WO2018189634A1/en unknown
- 2018-04-06 KR KR1020237041113A patent/KR20230165886A/ko not_active Application Discontinuation
- 2018-04-06 CN CN201880024000.1A patent/CN110546604B/zh active Active
- 2018-04-06 JP JP2019554329A patent/JP7019717B2/ja active Active
- 2018-04-06 SG SG11201908732Y patent/SG11201908732YA/en unknown
- 2018-04-06 KR KR1020197030794A patent/KR102609061B1/ko active IP Right Grant
- 2018-04-06 EP EP18718227.4A patent/EP3610368A1/en active Pending
- 2018-04-06 SG SG10202110664SA patent/SG10202110664SA/en unknown
- 2018-04-06 US US16/604,534 patent/US11695567B2/en active Active
-
2022
- 2022-02-02 JP JP2022014597A patent/JP7343630B2/ja active Active
-
2023
- 2023-05-19 US US18/199,822 patent/US20230370283A1/en active Pending
- 2023-08-31 JP JP2023140800A patent/JP2023155441A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104463001A (zh) * | 2014-12-19 | 2015-03-25 | 比特卡国际有限公司 | 一种独立生成和保存加密数字货币私钥的方法及承载加密数字货币私钥的装置 |
US20170220815A1 (en) * | 2016-01-28 | 2017-08-03 | Nasdaq, Inc. | Systems and methods for securing and disseminating time sensitive information using a blockchain |
US20170288867A1 (en) * | 2016-03-30 | 2017-10-05 | Intel Corporation | Authenticating a system to enable access to a diagnostic interface in a storage device |
CN106411506A (zh) * | 2016-08-31 | 2017-02-15 | 飞天诚信科技股份有限公司 | 适用于数字货币的密钥派生方法及装置 |
Non-Patent Citations (1)
Title |
---|
Mastering Bitcoin by Andreas M. Antonopoulos,December 2014: First Edition. * |
Also Published As
Publication number | Publication date |
---|---|
US11695567B2 (en) | 2023-07-04 |
JP2020513178A (ja) | 2020-04-30 |
JP2022048299A (ja) | 2022-03-25 |
GB201705749D0 (en) | 2017-05-24 |
JP2023155441A (ja) | 2023-10-20 |
JP7019717B2 (ja) | 2022-02-15 |
WO2018189634A1 (en) | 2018-10-18 |
EP3610368A1 (en) | 2020-02-19 |
JP7343630B2 (ja) | 2023-09-12 |
CN110546604B (zh) | 2024-06-28 |
CN110546604A (zh) | 2019-12-06 |
US20200186360A1 (en) | 2020-06-11 |
KR20190137103A (ko) | 2019-12-10 |
SG11201908732YA (en) | 2019-10-30 |
TW201837805A (zh) | 2018-10-16 |
US20230370283A1 (en) | 2023-11-16 |
KR20230165886A (ko) | 2023-12-05 |
SG10202110664SA (en) | 2021-11-29 |
KR102609061B1 (ko) | 2023-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI782970B (zh) | 基於未判定資料保證區塊鏈交易的安全之電腦實施方法、電子裝置及電腦可讀儲存媒體 | |
Lin et al. | A survey of blockchain security issues and challenges. | |
EP3613189B1 (en) | Secure blockchain-based consensus | |
KR101974075B1 (ko) | 분산 해시 테이블과 피어투피어 분산 원장을 사용하여 디지털 자산의 소유권을 검증하기 위한 방법 및 시스템 | |
US11917051B2 (en) | Systems and methods for storage, generation and verification of tokens used to control access to a resource | |
CN108111314B (zh) | 数字证书的生成和校验方法及设备 | |
JP7208930B2 (ja) | 制御された暗号化秘密鍵の開放 | |
EP4297339A2 (en) | Systems and methods for avoiding or reducing cryptographically stranded resources on a blockchain network | |
US11689356B2 (en) | Approximate hash verification of unused blockchain output | |
US20200379856A1 (en) | Peer node recovery via approximate hash verification | |
US20200382310A1 (en) | Reduced-step blockchain verification of media file | |
JP2020532169A (ja) | ブロックチェーンにおける擬似乱数生成 | |
CN111345005A (zh) | 在区块链上记录验证密钥的*** | |
EP3966998B1 (en) | Hash function attacks | |
KR20200013680A (ko) | 스크립트 기반 블록체인 상호작용 | |
US20200382309A1 (en) | Approximate hash verification for blockchain | |
JP2021530173A (ja) | コンピュータネットワークの間のタスクの分配のためのアキュムレータに基づくプロトコルのためのコンピュータ実施システム及び方法 | |
US20230208648A1 (en) | Htlc with proof of elapsed time |