TW202034251A - 對用於區塊鏈系統的簽章驗證進行測試的方法及裝置 - Google Patents
對用於區塊鏈系統的簽章驗證進行測試的方法及裝置 Download PDFInfo
- Publication number
- TW202034251A TW202034251A TW108144254A TW108144254A TW202034251A TW 202034251 A TW202034251 A TW 202034251A TW 108144254 A TW108144254 A TW 108144254A TW 108144254 A TW108144254 A TW 108144254A TW 202034251 A TW202034251 A TW 202034251A
- Authority
- TW
- Taiwan
- Prior art keywords
- private key
- blockchain system
- transaction
- execution result
- blockchain
- Prior art date
Links
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or 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/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/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/3827—Use of message hashing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- 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/06—Cryptographic 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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
-
- 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/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
- H04L9/3249—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 using RSA or related signature schemes, e.g. Rabin scheme
-
- 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/3297—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 time stamps, e.g. generation of time stamps
-
- 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
- G06Q2220/00—Business processing using cryptography
-
- 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/06—Cryptographic 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Power Engineering (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本發明揭露對用於區塊鏈系統的簽章驗證進行測試的方法、裝置和設備,包括儲存在電腦可讀媒體上的電腦程式。所述方法之一包括:從設定檔獲得測試配置,其中所述測試配置指定所述區塊鏈系統中使用的加密演算法、對應於加密演算法的包括一個或多個私密金鑰的私密金鑰組、以及基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組的預定執行結果;透過基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組對表示交易的資料進行加密來對所述交易簽章,以產生一個或多個簽章交易;將所述一個或多個簽章交易發送到所述區塊鏈系統並從所述區塊鏈系統接收執行結果;以及基於所述執行結果確定所述預定執行結果是否被滿足。
Description
本發明一般相關於電腦技術,更具體地,相關於對用於區塊鏈系統的簽章驗證進行測試的方法及裝置。
區塊鏈系統,也稱為分散式帳本系統(DLS)或共識系統,可以使參與實體安全且不可篡改地儲存資料。在不參考任何特定實例的情況下,區塊鏈系統可以包括任何DLS並且可以用於公有區塊鏈網路、私有區塊鏈網路和聯盟區塊鏈網路。公有區塊鏈網路向所有實體開放使用系統,並開放參與共識處理。私有區塊鏈網路針對特定實體提供,該實體集中控制讀寫許可權。聯盟區塊鏈網路針對選擇的實體組群提供,該實體組群控制共識過程,並且聯盟區塊鏈網路包括存取控制層。
區塊鏈系統維護一個或多個區塊鏈。區塊鏈是用於儲存諸如交易的資料的資料結構,其可以防止惡意方篡改和操縱資料。
區塊鏈的區塊中的資料可以表示交易。表示交易的資料通常被加密以用於認證目的,使得區塊鏈系統可以驗證交易的有效性。不同的加密演算法或相同加密演算法的不同私密金鑰可被用於對交易進行加密。因此,可能需要對加密演算法和用於對交易進行加密的相應私密金鑰進行測試的方法及裝置。
在一個實施例中,電腦實現的對用於區塊鏈系統的簽章驗證進行測試的方法包括:從設定檔獲得測試配置,其中所述測試配置指定在所述區塊鏈系統中使用的加密演算法、對應於所述加密演算法的包括一個或多個私密金鑰的私密金鑰組、以及基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組的預定執行結果;透過基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組對表示所述交易的資料進行加密來對所述交易進行簽章,以產生一個或多個簽章交易;將所述一個或多個簽章交易發送到所述區塊鏈系統並從所述區塊鏈系統接收執行結果,所述執行結果指示一個或多個簽章交易對應於有效交易或無效交易;以及基於從所述區塊鏈系統接收到的所述執行結果確定是否滿足所述預定執行結果。
在另一實施例中,對用於區塊鏈系統的簽章驗證進行測試的裝置包括:一個或多個處理器;和一個或多個電腦可讀記憶體,所述記憶體耦接到所述一個或多個處理器並且具有儲存在其上的指令,其中所述指令可由所述一個或多個處理器執行以:從設定檔獲得測試配置,其中所述測試配置指定在所述區塊鏈系統中使用的加密演算法、對應於所述加密演算法的包括一個或多個私密金鑰的私密金鑰組、以及基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組的預定執行結果;透過基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組對表示所述交易的資料進行加密來對所述交易進行簽章,以產生一個或多個簽章交易;將所述一個或多個簽章交易發送到所述區塊鏈系統並從所述區塊鏈系統接收執行結果,所述執行結果指示一個或多個簽章交易對應於有效交易或無效交易;以及基於從所述區塊鏈系統接收到的所述執行結果確定是否滿足所述預定執行結果。
在又一個實施例中,非暫態電腦可讀媒體具有儲存於其中的指令,所述指令當由裝置的處理器執行時,促使所述裝置執行對用於區塊鏈系統的簽章驗證進行測試的方法。所述方法包括:從設定檔獲得測試配置,其中所述測試配置指定在所述區塊鏈系統中使用的加密演算法,對應於所述加密演算法的包括一個或多個私密金鑰的私密金鑰組,以及基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組的預定執行結果;透過基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組對表示所述交易的資料進行加密來對所述交易進行簽章,以產生一個或多個簽章交易;將所述一個或多個簽章交易發送到所述區塊鏈系統並從所述區塊鏈系統接收執行結果,所述執行結果指示一個或多個簽章交易對應於有效交易或無效交易;以及基於從所述區塊鏈系統接收到的所述執行結果確定是否滿足所述預定執行結果。
本發明的實施例提供了對用於區塊鏈系統的簽章驗證進行測試的方法及裝置。所述方法及裝置可以從設定檔獲得測試配置。所述測試配置可以指定區塊鏈系統中使用的加密演算法、對應於加密演算法的包括一個或多個私密金鑰的私密金鑰組、以及基於該加密演算法和該包括一個或多個私密金鑰的私密金鑰組的預定執行結果。所述方法及裝置還可以透過基於加密演算法和包括一個或多個私密金鑰的私密金鑰組來對表示交易的資料進行加密,以對交易進行簽章,從而產生一個或多個簽章交易。所述方法及裝置還可以將一個或多個簽章交易發送到區塊鏈系統,並從區塊鏈系統接收執行結果。所述執行結果可以指示一個或多個簽章交易對應於有效交易或無效交易。所述方法及裝置還可以基於從區塊鏈系統接收的執行結果確定是否滿足預定執行結果。
本發明揭露的實施例具有一個或多個技術效果。在一些實施例中,所述方法及裝置從設定檔獲得測試配置,並為設定檔中的每個測試配置設定包括一個或多個私密金鑰的私密金鑰組。這允許自動產生測試配置,以在各種場景下驗證區塊鏈系統中的簽章交易。此外,當需要基於私密金鑰的新組合來測試簽章驗證時,這允許透過簡單地添加新組合來容易地更新設定檔。在其他實施例中,所述方法及裝置基於加密演算法和一個或多個私密金鑰對交易進行加密以產生一個或多個簽章交易。這允許私密金鑰的多個組合被測試。在其他實施例中,所述方法及裝置包括設定檔中的每個私密金鑰的表示,而不是私密金鑰本身,例如,透過基於對應關係將私密金鑰的表示映射到私密金鑰本身。這節省了設定檔的檔大小,從而便於使用者產生和查看設定檔。在其他實施例中,所述方法及裝置針對多個加密演算法和多組私密金鑰並行地執行測試。這允許多個加密演算法和多個私密金鑰基本上同時被測試。
以下描述提供了實施例的細節。在實施例中,區塊鏈是以交易可以是不可篡改且隨後被驗證的方式儲存例如交易的資料的資料結構。區塊鏈包括一個或多個區塊。每個區塊透過包括於區塊鏈中緊鄰其之前的前一區塊的加密雜湊值(cryptographic hash)連結到該前一區塊。每個區塊還可以包括時間戳記、自身的加密雜湊值以及一個或多個交易。通常已經由區塊鏈系統的節點驗證的交易可以經雜湊處理並編碼成例如默克爾(Merkle)樹的資料結構。在Merkle樹中,葉節點處的資料是經雜湊處理的,並且在該樹的每個分支中的所有雜湊值可以在該分支的根處連接。此過程沿著樹持續一直到整個樹的根,在整個樹的根處儲存了代表樹中所有資料的雜湊值。聲稱是儲存在樹中的交易的雜湊值可以透過確定其是否與樹的結構一致而被快速驗證。
區塊鏈系統包括管理、更新和維護一個或多個區塊鏈的計算節點的網路。所述網路可以是公有區塊鏈網路、私有區塊鏈網路或聯盟區塊鏈網路。例如,許多實體,諸如數百、數千或甚至數百萬實體可以在公有區塊鏈網路中操作,並且每個實體操作公有區塊鏈網路中的至少一個節點。因此,公有區塊鏈網路可以被認為是關於參與實體的公有網路。有時,大多數實體(節點)必須對每個區塊進行簽章,以對區塊進行驗證並將其添加到區塊鏈網路的區塊鏈中。示例性公有區塊鏈網路包括利用被稱為區塊鏈的分散式帳本的特定點對點(peer-to-peer)支付網路。
通常,公有區塊鏈網路可以支援公開交易。公開交易為公有區塊鏈網路內的所有節點共用,並儲存在全域區塊鏈中。全域區塊鏈是跨節點(例如,完整區塊鏈節點)複製的區塊鏈,並且節點相對於全域區塊鏈是處於共識的。為了達成共識(例如,同意向區塊鏈添加區塊),在公有區塊鏈網路內實施共識協定。共識協定的示例包括工作量證明(POW)(例如,在一些加密貨幣網路中實現)、權益證明(POS)和權威證明(POA)。
通常,為特定實體提供私有區塊鏈網路,該特定實體集中控制讀寫許可權。實體控制哪些節點能夠參與到區塊鏈網路中。因此,私有區塊鏈網路通常被稱為許可權網路,其限制允許誰參與網路,以及它們的參與級別(例如,僅在某些交易中)。可以使用各種類型的存取控制機制(例如,現有參與者投票添加新實體,監管機構可以控制許可權)。
通常,聯盟區塊鏈網路在參與實體之間是私有的。在聯盟區塊鏈網路中,共識過程由授權的節點集控制,一個或多個節點由對應實體(例如,金融機構、保險公司)操作。例如,由十(10)個實體(例如,金融機構、保險公司)組成的聯盟可以操作聯盟區塊鏈網路,每個實體可以操作聯盟區塊鏈網路中的至少一個節點。因此,聯盟區塊鏈網路可以被認為是與參與實體相關的私有網路。在一些示例中,每個實體(節點)必須對每個區塊簽章,以使區塊有效並將其添加到區塊鏈中。在一些示例中,至少實體(節點)的子集(例如,至少7個實體)必須對每個區塊簽章,以使區塊有效並將其添加到區塊鏈中。
圖1示出根據實施例的區塊鏈系統100的示意圖。參考圖1,區塊鏈系統100可以包括被配置為在區塊鏈120上操作的多個節點,例如節點102-110。節點102-110可以形成網路112,例如點對點(P2P)網路。節點102-110中的每一個可以是被配置為儲存區塊鏈120的副本的計算裝置,例如電腦或電腦系統,或者可以是在計算裝置上運行的軟體,諸如處理或應用程式。節點102-110中的每一個可以具有唯一識別碼。
在一些實施例中,區塊鏈120可以包括資料區塊形式的增長記錄清單,例如圖1中的區塊B1-B5。區塊B1-B5中的每一個可以包括時間戳記、前一區塊的加密雜湊值,以及當前區塊的資料,該資料可以是諸如貨幣交易的交易。例如,如圖1所示,區塊B5可以包括時間戳記、區塊B4的加密雜湊值和區塊B5的交易資料。此外,例如,可以對前一區塊執行雜湊操作以產生前一區塊的加密雜湊值。雜湊操作可以透過諸如SHA-256的雜湊演算法將各種長度的輸入轉換為固定長度的加密輸出。
在一些實施例中,節點102-110被配置為在區塊鏈120上執行操作。例如,當節點(例如,節點102)想要將新資料儲存到區塊鏈120上時,該節點產生要添加到區塊鏈120的新區塊並將新區塊廣播到網路112中的其他節點,例如節點104-110。基於新區塊的有效性,例如其簽章和交易的有效性,其他節點可以確定接受新區塊,使得節點102和其他節點可以將新區塊添加到它們各自的區塊鏈120的副本中。隨著該過程重複,可以將越來越多的資料區塊添加到區塊鏈120。
在一些實施例中,基於加密演算法在區塊鏈系統100中驗證交易。所述加密演算法可以提供包括私密金鑰和公用金鑰的金鑰對。所述私密金鑰與特定使用者相關聯,並且可以對表示例如由使用者發起的交易的資料進行加密。對表示交易的資料進行加密也可以稱為對交易進行簽章。所述公用金鑰被提供給區塊鏈系統100中的另一個使用者以對加密資料進行解密,從而驗證交易是否確實是由特定使用者授權的。所述解密也可以稱為簽章驗證。在一個實施例中,區塊鏈系統100可以支援多種加密演算法,例如RSA(Rivest-Shamir-Adleman)演算法、橢圓曲線數位簽章演算法(ECDSA)、SM2演算法等。
在一些實施例中,可以對區塊鏈系統100中的交易執行多簽章。所述多簽章是一種允許一組使用者以及因此允許私密金鑰組對同一交易進行簽章的技術。
圖2是根據實施例的用於例如區塊鏈系統100(圖1)的區塊鏈系統中的簽章方法200的流程圖。參考圖2,在步驟202中,透過對資料應用雜湊演算法來產生表示交易的資料的雜湊值。在一些實施例中,雜湊值也可以稱為雜湊摘要。在步驟204中,透過使用第一使用者(例如,發起交易的使用者)的私密金鑰和加密演算法來加密雜湊值,進一步產生交易的簽章。在步驟206中,將表示交易的資料和所產生的簽章組合為簽章交易。
圖3是根據實施例的用於例如區塊鏈系統100(圖1)的區塊鏈系統中的簽章驗證方法300的流程圖。參考圖3,在步驟302中,所述簽章交易由第二使用者接收並處理以獲得表示交易的資料和針對交易的簽章。在步驟304中,使用與加密演算法的私密金鑰相對應的公用金鑰來對交易的簽章進行解密,以獲得第一雜湊值。在步驟306中,透過使用與對交易進行簽章的雜湊演算法相同的雜湊演算法對所獲得的表示交易的資料進行加密來產生第二雜湊值。在步驟308中,比較第一雜湊值和第二雜湊值以確定簽章以及因此確定簽章交易是否有效。例如,如果第一個值與第二個值匹配,則表示用於加密的私密金鑰和用於解密的公用是一對,因此,該交易的簽章是有效的。因此,交易可以被驗證為有效交易。
在一些實施例中,區塊鏈系統可以驗證由與交易有關的一個或多個使用者簽章的交易。例如,每個使用者可以與一個或多個私密金鑰相關聯。相應地,可以產生用於交易的多個簽章,並且因此可以產生多個簽章交易。在一些實施例中,多個簽章可以分別對應於不同的權重。區塊鏈系統可以基於每個簽章的有效性和對應權重來驗證交易。在一個實施例中,“1”表示區塊鏈系統確定簽章(以及因此確定簽章交易)是有效的,“0”表示區塊鏈系統確定簽章無效。區塊鏈系統可以基於每個簽章的有效性的加權和來驗證交易。例如,如果加權和大於預定臨界值,例如70%,則區塊鏈系統驗證該交易為有效交易。
在一些實施例中,區塊鏈系統可以支援用於簽章驗證的一個或多個加密演算法。可以使用下面描述的方法及裝置來測試透過區塊鏈系統的簽章驗證。
圖4是根據一個實施例的對用於例如區塊鏈系統100(圖1)的區塊鏈系統的簽章驗證進行測試的方法400的流程圖。例如,方法400可以由電腦系統執行。參考圖4,方法400可以包括以下步驟。
在步驟402中,從設定檔獲得一個或多個測試配置。例如,所述設定檔可以由使用者產生或由電腦系統自動產生,並且所述設定檔可以載入到電腦系統中。此外,例如,所述設定檔中的每個測試配置可以指定在要測試簽章驗證的區塊鏈系統中使用的加密演算法、對應於加密演算法的包括一個或多個私密金鑰的私密金鑰組、以及基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組的預定執行結果。在一些實施例中,每個測試配置也可以被稱為實例或測試實例。
在一些實施例中,測試配置中的每個私密金鑰可以是有效私密金鑰或無效私密金鑰。例如,所述測試配置可以包含重複的私密金鑰,一個私密金鑰是有效的,另一個私密金鑰是無效的,以測試使用相同的私密金鑰對交易進行兩次簽章的情況。透過在設定檔中為每個測試配置設定私密金鑰,方法400可以在實際情況中使用的私密金鑰的不同組合下自動測試簽章驗證。
在一些實施例中,一個或多個私密金鑰中的每個私密金鑰的表示可以被包括在設定檔中。例如,私密金鑰通常是一系列數字,例如對於SM2演算法的256位元數。為了節省設定檔的檔大小並便於使用者產生和查看設定檔,所述設定檔可以包括私密金鑰的表示,而不是256位元私密金鑰本身。例如,私密金鑰的表示可以包括儲存私密金鑰的位址。此外,例如,私密金鑰的表示可以包括私密金鑰的別名,例如“prikey1”,使得對應私密金鑰可以被識別和檢索。
在一些實施例中,當測試配置中的對應的加密演算法和私密金鑰組用於對交易進行簽章時,測試配置的預定執行結果可以指示預期的結果。例如,如果不允許在區塊鏈系統中相同的私密金鑰對交易進行兩次簽章,則指定重複私密金鑰的測試配置的預定執行結果可以被設定為“無效”。
在一個實施例中,所述設定檔可以是表格的形式,例如下面的表1。
表1
在一個實施例中,測試配置1被設定用於測試簽章驗證,該簽章驗證需要透過ECDSA演算法用私密金鑰prikey1、prikey2和prikey3簽章的交易;測試配置2被設定用於測試簽章驗證,該簽章驗證不允許透過SM2演算法用重複的私密金鑰prikey2和prikey2簽章的交易;測試配置3被設定用於測試簽章驗證,該簽章驗證需要透過SM2演算法用私密金鑰prikey1、prikey2和prikey4簽章的交易。
在一些實施例中,可以預先確定用於針對需要由多個使用者進行簽章的交易的簽章驗證的臨界值。例如,臨界值可以設定為70%,以使交易的簽章驗證有效。因此,如果例如基於測試配置產生的每個簽章的有效性的加權和被假定大於70%,則可以將測試配置的預定執行結果設定為“有效”。
在一些實施例中,可以基於設定檔中的測試配置並行或順序地執行簽章驗證的測試。例如,可以在步驟404中針對設定檔中的測試配置產生多個電腦處理或執行緒,並且可以並存執行所述多個電腦處理或執行緒以提高測試效率。
在步驟406中,針對設定檔中的每個測試配置產生交易。在一些實施例中,可以產生不同類型的交易以基於測試配置執行測試。例如,可以產生用於註冊帳戶的交易和用於轉移加密貨幣的交易。透過產生不同類型的交易,測試配置中的加密演算法和私密金鑰可以在各種場景中被測試。
在步驟408中,如果測試配置包括私密金鑰的表示,則可以基於該表示來獲取私密金鑰。例如,如果測試配置包括儲存私密金鑰的位址,則可以從該位址檢索私密金鑰。此外,例如,測試配置包括私密金鑰的別名(例如,“prikey1”),可以例如透過檢查包括別名和私密金鑰之間的對應關係的查閱資料表來獲取私密金鑰。
在步驟410中,使用測試配置中的私密金鑰組對產生的交易進行簽章。例如,可以根據預定雜湊演算法產生所產生的交易的雜湊值。透過例如使用方法200(圖2)用所述組中的一個或多個私密金鑰對所產生的交易的雜湊值進行加密,所產生的交易的雜湊值可以進一步用於產生一個或多個簽章交易。
在步驟412中,將一個或多個簽章交易發送到區塊鏈系統,在該區塊鏈系統中測試簽章驗證被執行。區塊鏈系統可以例如使用方法300(圖3)接收用於驗證的一個或多個簽章交易,並返回對應於測試配置的執行結果。所述執行結果可以指示交易是有效或無效。
在步驟414中,從區塊鏈系統接收執行結果,在該區塊鏈系統中測試簽章驗證被執行。
在步驟416中,基於從區塊鏈系統接收到的執行結果,確定測試配置中的預定執行結果是否被滿足。例如,將接收到的執行結果與相應配置中的預定執行結果進行比較,以確定接收到的執行結果與預定執行結果是否匹配。可以為測試配置產生比較結果。例如,當接收到的執行結果指示交易有效並且測試配置中的預定執行結果也有效時,比較結果可以指示區塊鏈系統針對該測試配置的簽章驗證操作正常。在另一示例中,當接收到的執行結果指示交易無效但測試配置中的預定執行結果有效時,比較結果可以指示區塊鏈系統針對該測試配置的簽章驗證操作不正常。
在步驟418中,獲得設定檔中的每個測試配置的比較結果。例如,如果接收到的每個測試配置的執行結果與對應預定執行結果匹配,則可以確定區塊鏈系統的簽章驗證操作正常。
圖5示出根據實施例的對用於區塊鏈系統的簽章驗證進行測試的裝置500的方塊圖。例如,裝置500可以執行方法400(圖4)。參考圖5,裝置500可以包括獲得模組502、交易簽章模組504、收發模組506和確定模組508。
獲得模組502可以從設定檔獲得一個或多個測試配置。例如,獲得模組502可以包括設定檔載入單元512,用於將設定檔載入到裝置500中。此外,例如,設定檔中的每個測試配置可以指定要測試簽章驗證的區塊鏈系統中使用的加密演算法、對應於加密演算法的包括一個或多個私密金鑰的私密金鑰組、以及基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組的預定執行結果。每個測試配置也可以被稱為實例或測試實例。
在一些實施例中,測試配置中指定的每個私密金鑰可以是有效私密金鑰或無效私密金鑰。例如,測試配置可以包含重複的私密金鑰,一個私密金鑰是有效的,另一個私密金鑰是無效的,以測試使用相同的私密金鑰對交易進行兩次簽章的情況。透過在設定檔中為每個測試配置設定私密金鑰,裝置500可以在可以用於實際情況的私密金鑰的不同組合下自動測試簽章驗證。
在一些實施例中,當測試配置中的對應的加密演算法和私密金鑰組用於對交易進行簽章時,測試配置的預定執行結果可以指示預期的結果。例如,如果不允許相同的私密金鑰對交易進行兩次簽章,則指定重複私密金鑰的測試配置的預定執行結果可以被設定為“無效”。
交易簽章模組504可以透過基於加密演算法和每個測試配置中的包括一個或多個私密金鑰的私密金鑰組對表示交易的資料進行加密來對交易進行簽章,以產生一個或多個簽章交易。交易簽章模組504可以包括交易產生單元514、私密金鑰映射單元516和簽章單元518。
交易產生單元514可以為設定檔中的每個測試配置產生交易。如果測試配置包括私密金鑰的表示,例如私密金鑰的別名,則私密金鑰映射單元516可以透過檢查包括別名和私密金鑰之間的對應關係的查閱資料表將私密金鑰的表示映射到私密金鑰本身。簽章單元518可以使用測試配置中的所述包括一個或多個私密金鑰的私密金鑰組對所產生的交易進行簽章,以產生一個或多個簽章交易。
收發模組506可以將一個或多個簽章交易發送到區塊鏈系統,針對所述區塊鏈系統測試簽章驗證被執行。所述區塊鏈系統可以使用方法300(圖3)接收並驗證一個或多個簽章交易。收發模組506還可以從區塊鏈系統接收執行結果,所述執行結果指示交易有效或無效。
確定模組508可以基於從區塊鏈系統接收到的執行結果確定預定執行結果是否被滿足。例如,確定模組508可以包括比較單元520,用於將接收到的執行結果與測試配置中的預定執行結果進行比較,以確定所接收的執行結果與預定執行結果是否匹配。
裝置500可以為所述配置中的每個測試配置產生確定結果。在一個實施例中,如果接收到的每個測試配置的執行結果與對應的預定執行結果匹配,則裝置500可以確定區塊鏈系統的簽章驗證通過測試。
在一些實施例中,上述模組和單元中的每個可以被實現為軟體或硬體,或軟體和硬體的組合。例如,可以使用執行儲存在記憶體中的指令的處理器來實現上述模組和單元中的每個。而且,例如,上述模組和單元中的每個可以用特定應用積體電路(ASIC)、數位訊號處理器(DSP)、數位信號處理裝置(DSPD)、可程式設計邏輯裝置(PLD)、現場可程式設計閘陣列(FPGA)、控制器、微控制器、微處理器或其他電子元件中的一個或多個來實現,以用於執行下述方法。
圖6是根據另一實施例的對用於區塊鏈系統的簽章驗證進行測試的方法600的流程圖。方法600可以由電腦系統執行。所述電腦系統可以包括儲存一組指令的記憶體和至少一個處理器,所述處理器被配置為執行該組指令以促使所述電腦系統執行方法600。參考圖6,方法600可以包括以下步驟。
在步驟602中,所述電腦系統可以獲得包括多個測試配置的設定檔,每個測試配置指定包括一個或多個私密金鑰的私密金鑰組、對應的加密演算法、以及基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組的預定執行結果。所述加密演算法可以是RSA演算法、ECDSA演算法或SM2演算法。
在步驟604中,電腦系統可以基於設定檔中的每個測試配置產生待簽章的交易。
在步驟606中,所述電腦系統可以基於設定檔產生多個測試實例。所述多個測試實例中的每個對應於設定檔中的測試配置之一。例如,每個測試實例對應於包括一個或多個私密金鑰的私密金鑰組、對應的加密演算法、以及基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組的預定執行結果。
在步驟608中,電腦系統可以透過使用包括一個或多個私密金鑰的私密金鑰組和對應加密演算法對交易進行簽章並將一個或多個簽章交易發送到區塊鏈系統來執行多個測試實例。在一些實施例中,所述電腦系統可以產生交易的雜湊值,根據測試配置獲得一個或多個私密金鑰,並透過用每個所獲得的私密金鑰對雜湊值進行加密來對交易進行簽章。
電腦系統可以從區塊鏈系統接收執行結果,並將執行結果與預定執行結果進行比較。執行結果可以指示交易有效或無效。
在步驟610中,電腦系統可以確定接收到的執行結果與每個測試配置中的預定結果是否匹配,並產生比較結果。如果接收到的執行結果與設定檔中的每個測試配置中的預定結果匹配,則電腦系統還可以確定簽章驗證在區塊鏈系統中正確地操作。
圖7是根據一個實施例的對用於區塊鏈系統的簽章驗證進行測試的裝置700的方塊圖。例如,可以使用電腦系統來實現裝置700。參考圖7,裝置700可以包括處理器702、記憶體704、通信介面706和顯示器708。
在一些實施例中,處理器702可以執行指令以執行上述方法。處理器702可以包括便於測試的一個或多個模組。例如,處理器702可以包括獲得模組502、交易簽章模組504、收發模組506和確定模組508(圖5)。
在一些實施例中,記憶體704可以儲存用於執行上述方法的指令。記憶體704可以被實現為任何類型的揮發性或非揮發性記憶體裝置或其組合,諸如靜態隨機存取記憶體(SRAM)、電可抹除可程式設計唯讀記憶體(EEPROM)、可抹除可程式設計唯讀記憶體(EPROM)、可程式設計唯讀記憶體(PROM)、唯讀記憶體(ROM)、磁性記憶體、快閃記憶體或磁碟或光碟。
在一些實施例中,通信介面706可以促進裝置700和其他裝置之間的通信。通信介面706可以支援一個或多個通信標準,例如網際網路標準或協定、整合式服務數位網路(ISDN)標準等。
在一些實施例中,當執行上述方法時,顯示器708可以顯示測試結果。例如,顯示器708可以是液晶顯示器(LCD)。而且,例如,顯示器708可以包括用於接收使用者輸入的觸控式螢幕。
在一些實施例中,還提供了一種電腦程式產品。所述電腦程式產品可以包括非暫態電腦可讀儲存媒體,其上具有用於促使處理器執行上述方法的電腦可讀程式指令。
所述電腦可讀儲存媒體可以是實體裝置,其可以儲存供指令執行裝置使用的指令。所述電腦可讀儲存媒體可以是,例如,但不限於電子儲存裝置、磁性儲存裝置、光學儲存裝置、電磁儲存裝置、半導體儲存裝置或前述的任何合適組合。所述電腦可讀儲存媒體的更具體示例的非詳盡清單包括以下內容:可攜式電腦磁碟、硬碟、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、可抹除可程式設計唯讀記憶體(EPROM)、靜態隨機存取記憶體(SRAM)、可攜式光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)、隨身碟、軟磁碟、諸如在其上記錄有指令的凹槽中的穿孔卡或凸起結構的機械編碼裝置、以及前述的任何合適的組合。
用於執行上述方法的電腦可讀程式指令可以是組譯器指令、指令集架構(ISA)指令、機器指令、機器相關指令、微碼、韌體指令、狀態設定資料或以一種或多種程式設計語言的任意組合編寫的原始程式碼或物件碼,包括物件導向的程式設計語言和習知的程序性程式設計語言。所述電腦可讀程式指令可以在電腦系統上作為獨立套裝軟體完全執行,或者在第一電腦上部分執行並在遠離第一電腦的第二電腦上部分執行。在後一種情況下,第二遠端電腦可以透過包括區域網路(LAN)或廣域網路(WAN)的任何類型的網路連接到第一電腦。
所述電腦可讀程式指令可以被提供給通用或專用電腦的處理器或其他可程式設計資料處理設備以產生一種機器,使得經由電腦的處理器或其他可程式設計資料處理設備執行的指令創建用於實現上述方法的設備。
圖式中的流程圖和方塊圖示出根據本發明的各種實施例的裝置、方法和電腦程式產品的可能實現的架構、功能和操作。在這方面,流程圖或方塊圖中的方塊可以表示軟體程式、碼的段或部分,其包括用於實現特定功能的一個或多個可執行指令。還應注意,在一些替代實施方式中,方塊中提到的功能可以不按圖中所示的順序發生。例如,連續示出的兩個方塊實際上可以基本上同時執行,或者這些方塊有時可以以相反的循序執行,這取決於所涉及的功能。還應注意,方塊圖及/或流程圖的每個方塊以及方塊圖和流程圖中的方塊的組合可以由執行特定功能或動作的專用硬體基系統或者專用硬體和電腦指令的組合來實現。
應當理解,為了清楚起見,在單個實施例的上下文中描述的說明書的某些特徵也可以在單個實施例中組合提供。相反,為了簡潔起見,在單個實施例的上下文中描述的本發明的各種特徵也可以單獨提供或者以任何合適的子組合提供,或者在本發明的任何其他描述的實施例中合適地提供。除非另有說明,否則在各種實施例的上下文中描述的某些特徵不應被視為那些實施例的必要特徵。
儘管已經結合本發明的具體實施例描述了本發明,但顯然許多替代、修改和變化對於本領域技術人員來說是顯而易見的。因此,以下請求項包含落入所附申請專利範圍之範疇內的所有這些替代、修改和變化。
加密演算法 | 私密金鑰 | 預定執行結果 | |
測試配置1 | ECDSA | prikey1 prikey2 prikey3 | 有效 |
測試配置2 | SM2 | prikey1 prikey2 prikey2 | 無效 |
測試配置3 | SM2 | prikey1 prikey2 prikey4 | 有效 |
… | … | … | … |
100:區塊鏈系統
102:節點
104:節點
106:節點
108:節點
110:節點
112:網路
120:區塊鏈
B1:區塊
B2:區塊
B3:區塊
B4:區塊
B5:區塊
200:簽章驗證方法
202:步驟
204:步驟
206:步驟
300:簽章驗證方法
302:步驟
304:步驟
306:步驟
308:步驟
400:簽章驗證方法
402:步驟
404:步驟
406:步驟
408:步驟
410:步驟
412:步驟
414:步驟
416:步驟
418:步驟
500:簽章驗證裝置
502:獲得模組
504:交易簽章模組
506:收發模組
508:確定模組
512:設定檔載入單元
514:交易產生單元
516:私密金鑰映射單元
518:簽章單元
520:比較單元
600:簽章驗證方法
602:步驟
604:步驟
606:步驟
608:步驟
610:步驟
700:簽章驗證的裝置
702:處理器
704:記憶體
706:通信介面
708:顯示器
包含在本文中並構成其一部分的隨附圖式示出實施例。在參考圖式的以下描述中,除非另有說明,否則不同圖式中的相同數字表示相同或相似的元件。
[圖1]示出根據實施例的區塊鏈系統的示意圖。
[圖2]是根據實施例的簽章方法的流程圖。
[圖3]是根據實施例的簽章驗證方法的流程圖。
[圖4]是根據實施例的對用於區塊鏈系統的簽章驗證進行測試的方法的流程圖。
[圖5]是根據實施例的對用於區塊鏈系統的簽章驗證進行測試的裝置的方塊圖。
[圖6]是根據實施例的對用於區塊鏈系統的簽章驗證進行測試的方法的流程圖。
[圖7]是根據實施例的對用於區塊鏈系統的簽章驗證進行測試的裝置的方塊圖。
400:簽章驗證方法
Claims (12)
- 一種電腦實現的對用於區塊鏈系統的簽章驗證進行測試的方法,包括: 從設定檔獲得測試配置,其中,所述測試配置指定所述區塊鏈系統中使用的加密演算法、對應於所述加密演算法的包括一個或多個私密金鑰的私密金鑰組、以及基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組的預定執行結果; 透過基於所述加密演算法和所述包括一個或多個私密金鑰的私密金鑰組對表示交易的資料進行加密來對交易進行簽章,以產生一個或多個簽章交易; 將所述一個或多個簽章交易發送到所述區塊鏈系統並從所述區塊鏈系統接收執行結果,所述執行結果指示所述一個或多個簽章交易對應於有效交易或無效交易;以及 基於從所述區塊鏈系統接收到的所述執行結果確定所述預定執行結果是否被滿足。
- 如請求項1所述的方法,其中,所述包括一個或多個私密金鑰的私密金鑰組包括重複的私密金鑰。
- 如請求項1所述的方法,其中,在所述區塊鏈系統中使用的所述加密演算法包括RSA演算法、ECDSA演算法或SM2演算法中的至少一個。
- 如請求項1所述的方法,其中,所述測試配置包括所述包括一個或多個私密金鑰的私密金鑰組中的每個私密金鑰的表示,所述方法還包括: 將所述包括一個或多個私密金鑰的私密金鑰組中的每個私密金鑰的表示映射到對應私密金鑰;以及 獲得所述對應私密金鑰。
- 如請求項1所述的方法,還包括: 產生交易;以及 確定所產生的交易的雜湊值作為表示所述交易的資料。
- 如請求項1所述的方法,其中,確定所述預定執行結果是否被滿足,包括: 將從所述區塊鏈系統接收到的所述執行結果與所述預定執行結果進行比較以進行所述確定。
- 如請求項1所述的方法,還包括: 接收基於與所述包括一個或多個私密金鑰的私密金鑰組中的每個私密金鑰對應的權重的所述執行結果。
- 如請求項1所述的方法,還包括: 回應於確定所述預定執行結果被滿足,顯示指示所述區塊鏈系統中的簽章驗證操作正常的測試結果。
- 如請求項1所述的方法,還包括: 從所述設定檔獲得多個測試配置,其中,所述多個測試配置指定所述區塊鏈系統中使用的多個加密演算法、多個包括一個或多個私密金鑰的私密金鑰組、以及多個預定執行結果;以及 基於所述多個測試配置並行地執行測試。
- 一種對用於區塊鏈系統的簽章驗證進行測試的裝置,包括: 一個或多個處理器;和 耦接到所述一個或多個處理器並具有儲存在其上的指令的一個或多個電腦可讀記憶體,所述指令能由所述一個或多個處理器執行以執行如請求項1至9中任一項所述的方法。
- 一種對用於區塊鏈系統的簽章驗證進行測試的設備,所述設備包括用於執行如請求項1至9中任一項所述的方法的多個模組。
- 一種非暫態電腦可讀媒體,所述電腦可讀媒體中儲存有指令,所述指令當由裝置的處理器執行時,促使所述裝置執行如請求項1至9中任一項所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
WOPCT/CN2019/076884 | 2019-03-04 | ||
PCT/CN2019/076884 WO2019101235A2 (en) | 2019-03-04 | 2019-03-04 | Methods and devices for testing signature verification for blockchain system |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202034251A true TW202034251A (zh) | 2020-09-16 |
Family
ID=66631233
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108144254A TW202034251A (zh) | 2019-03-04 | 2019-12-04 | 對用於區塊鏈系統的簽章驗證進行測試的方法及裝置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11315111B2 (zh) |
EP (1) | EP3590084B1 (zh) |
CN (1) | CN110785783B (zh) |
SG (1) | SG11201908552RA (zh) |
TW (1) | TW202034251A (zh) |
WO (1) | WO2019101235A2 (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10970180B2 (en) * | 2019-03-29 | 2021-04-06 | Nakamoto & Turing Labs Inc | Methods and apparatus for verifying processing results and/or taking corrective actions in response to a detected invalid result |
CN110471827B (zh) * | 2019-08-09 | 2023-02-17 | 中国信息通信研究院 | 一种区块链性能基准测试方法和装置 |
CN110719165B (zh) * | 2019-10-12 | 2022-07-12 | 杭州云象网络技术有限公司 | 一种区块链分布式动态网络密钥生成和加密方法 |
CN111008827B (zh) * | 2019-11-25 | 2023-07-21 | 深圳前海微众银行股份有限公司 | 一种跨链交易签名方法及装置 |
CN113221157B (zh) * | 2020-02-04 | 2023-09-26 | 北京京东振世信息技术有限公司 | 一种设备升级方法和装置 |
CN111245617B (zh) * | 2020-03-11 | 2022-07-05 | 杭州泛链科技有限公司 | 一种基于ecdsa的双重门限签名方法 |
CN111523889B (zh) * | 2020-04-17 | 2023-09-01 | 昆明大棒客科技有限公司 | 多重签名实现方法、装置、设备和存储介质 |
CN111782537B (zh) * | 2020-07-08 | 2021-12-17 | 上海计算机软件技术开发中心 | 一种基于区块链技术的众测流程管理系统及方法 |
CN112404425A (zh) * | 2020-11-24 | 2021-02-26 | 福州大学 | 一种高强度12Cr钢及其制备方法 |
CN112507360A (zh) * | 2020-12-10 | 2021-03-16 | 浙商银行股份有限公司 | 基于门限签名和预言机的区块链数据上链方法及装置 |
CN112702323B (zh) * | 2020-12-14 | 2022-06-03 | 杭州溪塔科技有限公司 | 一种区块链软件的许可签发验证方法、装置和电子设备 |
CN112651835B (zh) * | 2020-12-30 | 2023-05-23 | 成都佳华物链云科技有限公司 | 联盟链的交易方法、装置、电子设备及存储介质 |
CN113240418B (zh) * | 2021-04-23 | 2024-01-12 | 上海和数软件有限公司 | 基于区块链的隐私数据智能访问控制方法和设备 |
CN113506104B (zh) * | 2021-05-07 | 2024-03-01 | 杭州宇链科技有限公司 | 一种软硬件结合的签名生成、验证方式和系统 |
CN117667676A (zh) * | 2023-11-21 | 2024-03-08 | 上海金仕达卫宁软件科技有限公司 | 基于aigc的区块链智能合约ide验证测试方法和系统 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1902853B (zh) * | 2003-10-28 | 2012-10-03 | 塞尔蒂卡姆公司 | 一种公开密钥的可验证生成的方法和设备 |
JP4827468B2 (ja) * | 2005-07-25 | 2011-11-30 | キヤノン株式会社 | 情報処理装置及び情報処理装置の制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
US7822206B2 (en) * | 2006-10-26 | 2010-10-26 | International Business Machines Corporation | Systems and methods for management and auto-generation of encryption keys |
US10572371B2 (en) * | 2012-09-07 | 2020-02-25 | Red Hat Israel, Ltd. | Generating valid use cases from a parsed configuration file describing use case options |
US10148441B2 (en) * | 2014-09-12 | 2018-12-04 | Verisign, Inc. | Systems, devices, and methods for detecting double signing in a one-time use signature scheme |
US10015017B2 (en) * | 2015-04-09 | 2018-07-03 | Qualcomm Incorporated | Proof of work based user identification system |
US10812274B2 (en) * | 2015-05-07 | 2020-10-20 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
WO2017049111A1 (en) * | 2015-09-18 | 2017-03-23 | Jung-Min Park | Group signatures with probabilistic revocation |
US9948467B2 (en) * | 2015-12-21 | 2018-04-17 | Mastercard International Incorporated | Method and system for blockchain variant using digital signatures |
CN106411503B (zh) * | 2016-11-28 | 2019-11-08 | 中国银行股份有限公司 | 区块链投票记账模式的记账方法及系统、投票及记账节点 |
MX2019007034A (es) * | 2016-12-14 | 2019-08-22 | Walmart Apollo Llc | Sistemas y metodos para controlar el acceso a un espacio bloqueado utilizando claves criptograficas almacenadas en una cadena de bloques. |
CN106651331B (zh) * | 2016-12-22 | 2019-11-29 | 飞天诚信科技股份有限公司 | 一种基于数字货币的电子交易方法及系统 |
CN107392040B (zh) * | 2017-04-28 | 2019-08-09 | 阿里巴巴集团控股有限公司 | 一种共识验证的方法及装置 |
US20180349896A1 (en) * | 2017-06-05 | 2018-12-06 | Mastercard International Incorporated | Method and system for anonymization of electronic transactions via blockchain |
CN108063758A (zh) * | 2017-11-27 | 2018-05-22 | 众安信息技术服务有限公司 | 用于区块链网络的签名验证方法及区块链网络中的节点 |
US20190295049A1 (en) * | 2018-03-22 | 2019-09-26 | NEC Laboratories Europe GmbH | System and method for secure transaction verification in a distributed ledger system |
US11263605B2 (en) * | 2018-03-22 | 2022-03-01 | R3 Llc | Weighted multiple authorizations |
CN108876369B (zh) * | 2018-06-05 | 2021-07-13 | 上海和数软件有限公司 | 基于区块链的数据通信方法、装置及计算机可读存储介质 |
CN109104287A (zh) * | 2018-07-27 | 2018-12-28 | 众安信息技术服务有限公司 | 在区块链中进行通信的方法和装置 |
EP3644558A1 (en) * | 2018-10-23 | 2020-04-29 | Siemens Aktiengesellschaft | Testing of network functions of a communication system |
-
2019
- 2019-03-04 EP EP19725907.0A patent/EP3590084B1/en active Active
- 2019-03-04 WO PCT/CN2019/076884 patent/WO2019101235A2/en unknown
- 2019-03-04 CN CN201980002994.1A patent/CN110785783B/zh active Active
- 2019-03-04 SG SG11201908552R patent/SG11201908552RA/en unknown
- 2019-12-04 TW TW108144254A patent/TW202034251A/zh unknown
- 2019-12-19 US US16/721,346 patent/US11315111B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN110785783A (zh) | 2020-02-11 |
EP3590084B1 (en) | 2022-05-11 |
US11315111B2 (en) | 2022-04-26 |
EP3590084A4 (en) | 2020-04-01 |
SG11201908552RA (en) | 2019-10-30 |
WO2019101235A3 (en) | 2019-07-18 |
EP3590084A2 (en) | 2020-01-08 |
CN110785783B (zh) | 2024-03-26 |
WO2019101235A2 (en) | 2019-05-31 |
US20200286087A1 (en) | 2020-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW202034251A (zh) | 對用於區塊鏈系統的簽章驗證進行測試的方法及裝置 | |
US20200344070A1 (en) | Methods and devices for validating transaction in blockchain system | |
WO2019072301A2 (en) | VERIFYING THE INTEGRITY OF STORED DATA IN A CONSORTIUM BLOCK CHAIN USING A PUBLIC SECONDARY CHAIN | |
TWI771634B (zh) | 向區塊鏈系統提供交易資料以進行處理的方法和設備 | |
CN110809876B (zh) | 对智能合约执行链外测试的方法和设备 | |
US20190207748A1 (en) | Blockchain storage device | |
TWI768403B (zh) | 基於區塊鏈系統之用於加密金鑰管理的方法和設備 | |
TWM589302U (zh) | 分配文件傳輸系統 | |
US20230237437A1 (en) | Apparatuses and methods for determining and processing dormant user data in a job resume immutable sequential listing | |
WO2018105038A1 (ja) | 通信装置及び分散型元帳システム | |
WO2021139605A1 (en) | Methods and devices for providing decentralized identity verification | |
WO2021088451A1 (en) | Methods and devices for preventing denial-of-service attack on blockchain system | |
CN114930372A (zh) | 促进拆分票据融资的方法和设备 | |
US20220327046A1 (en) | Testing system, testing method, and testing program | |
CN117573684A (zh) | 一种支持动态数据更新和外包计算的存储时间证明方法 | |
CN114945933A (zh) | 用于保护和验证记录的状态信息的方法和设备 | |
CN117997559A (zh) | 基于区块链的身份验证方法、装置和计算机设备 | |
WO2019006849A1 (zh) | 用于电子签名的方法和系统 |