TWI707573B - 資料上鏈裝置、資料驗證裝置及資料驗證方法 - Google Patents
資料上鏈裝置、資料驗證裝置及資料驗證方法 Download PDFInfo
- Publication number
- TWI707573B TWI707573B TW108141397A TW108141397A TWI707573B TW I707573 B TWI707573 B TW I707573B TW 108141397 A TW108141397 A TW 108141397A TW 108141397 A TW108141397 A TW 108141397A TW I707573 B TWI707573 B TW I707573B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- evidence
- hash
- blockchain
- algorithm
- Prior art date
Links
- 238000013524 data verification Methods 0.000 title claims abstract description 75
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000005540 biological transmission Effects 0.000 claims abstract description 41
- 238000012795 verification Methods 0.000 claims description 34
- 238000004804 winding Methods 0.000 claims description 29
- 239000000284 extract Substances 0.000 claims 1
- 239000003795 chemical substances by application Substances 0.000 description 41
- 239000008186 active pharmaceutical agent Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012550 audit Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000012545 processing 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/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]
-
- 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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- 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/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
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
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)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- Algebra (AREA)
- Mathematical Analysis (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
一種資料上鏈裝置、資料驗證裝置及資料驗證方法。該資料上鏈裝置包含一微控制器及一傳輸介面,且該傳輸介面電性連接至該微控制器。該微控制器依據一演算法對一設備的一原始資料產生一區塊鏈可讀取的一雜湊資料。該傳輸介面傳送該原始資料及該雜湊資料至一區塊鏈代理人平台。該傳輸介面還自該區塊鏈代理人平台接收該雜湊資料於一默克爾樹的一節點切片,其中該節點切片包含基於該雜湊資料所產生的一證據資料。
Description
本發明係關於一種資料上鏈裝置、資料驗證裝置及資料驗證方法。具體而言,本發明係關於一種用於物聯網的資料上鏈裝置、資料驗證裝置及資料驗證方法。
隨著科技及經濟的快速發展,許多產業的運作都涉及物聯網,透過物聯網將各項設備、裝置的資料傳送遠端儲存和分析,以供後續應用,例如:可用以驗證物聯網中的設備資料的正確性。舉例而言,製造業者往往會建構物聯網以蒐集生產線在製造產品時的環境因素(例如:溫度、壓力、溼度等),而這些環境因素所對應的資料需要被記錄下來以供稽核或/及驗證。再舉例而言,某些業者會將二手設備(例如:工業電池、工業馬達、汽車)重新投入交易市場,然而,目前並無機制能避免二手設備的資料(例如:工業電池的充放電次數、汽車的里程數)被竄改,衍生不少糾紛,因此非常需要一個資料的傳送和驗證機制。
有鑑於此,如何將物聯網中的設備的資料進行加密及儲存,並經由具有公信力的平台來查詢及驗證該些資料,以確保該些資料的可信度,為業界亟需克服的技術問題。
為解決上述技術問題,本發明提供一種資料上鏈裝置、資料驗證裝置及資料驗證方法。
本發明所提供的資料上鏈裝置包含一微控制器及一傳輸介面,其中該傳輸介面電性連接至該微控制器。該微控制器依據一演算法對一設備的一原始資料產生一區塊鏈可讀取的一雜湊資料。該傳輸介面傳送該原始資料及該雜湊資料至一區塊鏈代理人平台。該傳輸介面還自該區塊鏈代理人平台接收該雜湊資料於一默克爾樹(Merkle Tree)的一節點切片(Slice),其中該節點切片包含基於該雜湊資料所產生的一第一證據資料。
在本發明的某些實施態樣中,該資料上鏈裝置還包含一電性連接至該處理器的儲存器,且該儲存器儲存該微控制器的一識別碼。該傳輸介面還傳送該識別碼及該原始資料所對應的一時間戳記至一公有區塊鏈(Public Blockchain)的一區塊鏈節點。該傳輸介面還自該區塊鏈節點的一智能合約(Smart Contract)接收基於該識別碼及該時間戳記所擷取出的一第二證據資料。該微控制器還自該節點切片擷取出該第一證據資料,且藉由比對該第一證據資料及該第二證據資料以判斷該雜湊資料於該智能合約中的一上鏈結果。
本發明所提供的資料驗證裝置包含一儲存器、一傳輸介面及一處理器,其中該處理器電性連接至該儲存器及該傳輸介面。該儲存器儲存一雜湊鏈(Chain Hash)記錄,且該雜湊鏈記錄包含複數個證據切片。該傳輸介面傳送一微控制器的一識別碼及一時間戳記至一區塊鏈代理人平台,且自該區塊鏈代理人平台接收一第一證據資料與基於該識別碼及該時間戳
記所擷取出的一原始資料及一默克爾樹的一節點切片。該傳輸介面還自一公有區塊鏈的一區塊鏈節點的一智能合約接收一第二證據資料。該處理器藉由比對該第一證據資料及該第二證據資料以決定一第一驗證結果。當該第一驗證結果為該第一證據資料與該第二證據資料一致,該處理器還針對該原始資料產生一雜湊資料,根據該雜湊資料及該節點切片產生一第三證據資料,根據該第三證據資料及該等證據切片的至少其中之一產生一第四證據資料,且藉由比對該第一證據資料及該第四證據資料以決定一第二驗證結果。
本發明所提供的資料驗證方法適用於一電子計算裝置。該電子計算裝置儲存一雜湊鏈記錄,且該雜湊鏈記錄包含複數個證據切片。該資料驗證方法包含下列步驟:(a)傳送一微控制器的一識別碼及一時間戳記至一區塊鏈代理人平台,(b)自該區塊鏈代理人平台接收一第一證據資料與基於該識別碼及該時間戳記所擷取出的一原始資料及一默克爾樹的一節點切片,(c)自一公有區塊鏈的一區塊鏈節點的一智能合約接收一第二證據資料,(d)判斷該第一證據資料與該第二證據資料一致,(e)針對該原始資料產生一雜湊資料,(f)根據該雜湊資料及該節點切片產生一第三證據資料,(g)根據該第三證據資料及該等證據切片的至少其中之一產生一第四證據資料,以及(h)藉由比對該第一證據資料及該第四證據資料以決定一驗證結果。
由上述說明可知,本發明所提供的資料上鏈裝置會對應至一設備,且會利用區塊鏈代理人平台將其所對應的設備的雜湊資料進行上鏈。藉由前述的配置,解決了習知技術無法將物聯網中的大量的設備資料進行上鏈的技術問題。另外,本發明所提供的資料驗證裝置儲存了一份與公有區
塊鏈中相同的雜湊鏈記錄。每當有使用者欲查詢或/及驗證某一設備在某一時間的原始資料,資料驗證裝置不需從公有區塊鏈下載大量的資料才能進行驗證,僅需從公有區塊鏈的一區塊鏈節點的智能合約下載最新的證據資料,即能完成資料的認證。因此,資料驗證裝置在進行資料的驗證或/及查詢時,不會佔用公有區塊鏈的頻寬。
以下結合圖式闡述本發明的詳細技術及實施方式,俾使本發明所屬技術領域中具有通常知識者能理解所請求保護的發明的技術特徵。
DS‧‧‧資料驗證系統
1a、……、1b‧‧‧資料上鏈裝置
2‧‧‧資料驗證裝置
3‧‧‧區塊鏈代理人平台
4‧‧‧公有區塊鏈
10a、……、10b‧‧‧設備
11‧‧‧微控制器
13‧‧‧儲存器
15、19‧‧‧傳輸介面
RD‧‧‧原始資料
HD、HD’‧‧‧雜湊資料
MT‧‧‧默克爾樹
L1~L8‧‧‧葉節點
S10‧‧‧節點切片
ID‧‧‧識別碼
T‧‧‧時間戳記
140‧‧‧區塊鏈節點
R10、R10’‧‧‧證據資料
20‧‧‧雜湊鏈記錄
21‧‧‧處理器
23‧‧‧儲存器
25‧‧‧傳輸介面
CH0、CH1、……、CH100‧‧‧證據切片
R100、R100’‧‧‧證據資料
S201~S215‧‧‧步驟
第1A圖為第一實施方式的資料驗證系統DS的架構示意圖;
第1B圖描繪資料上鏈裝置1a的架構及運作的示意圖;
第1C圖描繪一默克爾樹的一具體範例;
第1D圖描繪資料驗證裝置2的架構及運作的示意圖;
第1E圖描繪根據雜湊資料HD’及節點切片S10產生證據資料R10’的示意圖;以及
第2圖描繪第二實施方式的資料驗證方法的流程圖。
以下將透過實施方式來解釋本發明所提供的資料上鏈裝置、資料驗證裝置及資料驗證方法。然而,該等實施方式並非用以限制本發明需在如該等實施方式所述的任何環境、應用或方式方能實施。因此,關於以下實施方式的說明僅在於闡釋本發明的目的,而非用以限制本發明的範圍。應理解,在以下實施方式及圖式中,與本發明非直接相關的元件已省略而未繪示,且圖式中各元件的尺寸以及元件間的尺寸比例僅為便於繪示及說明,而
非用以限制本發明的範圍。
本發明的第一實施方式為一資料驗證系統DS,其架構示意圖係描繪於第1A圖。資料驗證系統DS包含複數個資料上鏈裝置1a、……、1b、一資料驗證裝置2、一區塊鏈代理人平台3及一公有區塊鏈(Public Blockchain)4。資料上鏈裝置1a、……、1b一對一地對應至設備10a、……、10b。舉例而言,若資料驗證系統DS應用於一製造工廠,則該製造工廠的每一條生產線的每一感測器可以設置一個對應的資料上鏈裝置。再舉例而言,若資料驗證系統DS應用於二手交易市場,則每一個二手設備會有一對應的資料上鏈裝置。第1A圖中,公有區塊鏈4中的每一個黑點代表一區塊鏈節點。
資料驗證系統DS的運作可區分為二個面向,其中一個面向為資料上鏈,而另一個面向為資料驗證。茲先說明資料驗證系統DS中與資料上鏈相關的運作。由於資料上鏈裝置1a、……、1b採取雷同的運作請求區塊鏈代理人平台3協助為其資料上鏈,因此以下僅以資料上鏈裝置1a為例詳細說明。
請參第1B圖,其係描繪資料上鏈裝置1a的架構及運作的示意圖。資料上鏈裝置1a包含一微控制器(Microcontroller;MCU)11、一傳輸介面15及一傳輸介面19,其中傳輸介面15、19電性連接至微控制器11。微控制器11可為各種單晶片微控制器或本發明所屬技術領域中具有通常知識者所知悉的其他單晶片微電腦。傳輸介面15可為任何能與網路中的裝置進行通訊的介面,例如:藍牙介面、Wi-Fi介面,但不以此為限。傳輸介面19可為任何能與微控制器11搭配使用,且能傳輸訊號的介面,例如:串列通信介面(Serial Communication Interface;SCI)、通用異步收發器(Universal
Asynchronous Receiver/Transmitter;UART),但不以此為限。
於本實施方式中,資料上鏈裝置1a與設備10a(例如:生產線上的溫度感測器)搭配使用。傳輸介面19會定期地或不定期地自設備10a接收一原始資料RD。於不同時間點所接收到的原始資料RD的值可能相同,亦可能不同。於其他實施方式中,資料上鏈裝置1a可與搭配使用的設備整合在同一裝置中,因而可不設置自外界接收原始資料RD的傳輸介面19。
於本實施方式中,資料上鏈裝置1a的微控制器11依據一演算法對設備10a的原始資料RD產生一區塊鏈可讀取的雜湊資料HD。舉例而言,微控制器11可採用一演算法將原始資料RD及原始資料RD所對應的一時間戳記T加密為雜湊資料HD。前述的演算法可為一加密演算法,例如:一進階加密標準(Advanced Encryption Standard;AES)演算法、一保全散列演算法(Secure Hash Algorithm;SHA)、一橢圓曲線密碼學(Elliptic Curve Cryptography;ECC)演算法及一Base演算法其中之一,但不以此為限。需說明者,本發明所屬技術領域中具有通常知識者應熟知如何以一演算法將原始資料RD及其對應的時間戳記T加密為雜湊資料HD,茲不贅言。
之後,資料上鏈裝置1a的傳輸介面15傳送原始資料RD及雜湊資料HD至區塊鏈代理人平台3。於本實施方式中,區塊鏈代理人平台3可由美商亞馬遜公司(Amazon.com,Inc.)所提供的亞馬遜託管區塊鏈(Amazon Managed Blockchain)來實現、由國際信任機器股份有限公司(International Trust Machines Corporation;ITM)所開發的區塊鏈信任技術來實現或由美商微軟公司(Microsoft Corporation)所開發的Azure區塊鏈工作台(Azure Blockchain Workbench)來實現,但不以此為限。
區塊鏈代理人平台3會接收資料上鏈裝置1a所傳來的原始資料RD及雜湊資料HD,且會儲存原始資料RD。此外,針對雜湊資料HD,區塊鏈代理人平台3會等到自資料上鏈裝置1a、……、1b接收到二的冪次方個雜湊資料後,建立一默克爾樹(Merkle Tree)MT。默克爾樹MT的根節點所儲存的資料即是區塊鏈代理人平台3基於原始資料RD所對應的雜湊資料HD所產生的證據資料(Forensic Data)R10。
為便於理解,請參第1C圖所示的默克爾樹MT的一具體範例,但該具體範例並非用以限制本發明的範圍。於該具體範例中,默克爾樹MT具有八個葉節點L1~L8,且葉節點L1~L8各自儲存了來自於資料上鏈裝置1a、……、1b任一個的雜湊資料,其中葉節點L3儲存了前述的雜湊資料HD。區塊鏈代理人平台3收集到二的冪次方個雜湊資料後便建立了默克爾樹MT。需說明者,本發明所屬技術領域中具有通常知識者應能理解區塊鏈代理人平台3如何根據二的冪次方個雜湊資料建立一默克爾樹,故不贅言。
區塊鏈代理人平台3會儲存此默克爾樹MT。區塊鏈代理人平台3還會將默克爾樹MT所對應的證據資料R10(亦即,默克爾樹MT的根節點的資料)傳送至公有區塊鏈4,使公有區塊鏈4中的每一個區塊鏈節點(包含區塊鏈節點140)的智能合約(Smart Contract)皆儲存證據資料R10。此外,區塊鏈代理人平台3還會傳送雜湊資料HD於默克爾樹MT的節點切片S10至資料上鏈裝置1a,而資料上鏈裝置1a則由傳輸介面15接收節點切片S10。此節點切片S10包含基於雜湊資料HD所產生的證據資料R10,如第1C圖所示。
藉由前述運作,資料上鏈裝置1a便透過區塊鏈代理人平台3
完成了原始資料RD所對應的雜湊資料HD的上鏈。
需說明者,區塊鏈代理人平台3會不斷地接收資料上鏈裝置1a、……、1b所傳來的原始資料及雜湊資料。區塊鏈代理人平台3會儲存這些原始資料。另外,每當區塊鏈代理人平台3收集到二的冪次方個雜湊資料,便會建立一默克爾樹並將之儲存,因此區塊鏈代理人平台3會儲存多棵默克爾樹。區塊鏈代理人平台3還會將每一棵默克爾樹所對應的證據資料(亦即,根節點的資料)傳送至公有區塊鏈4。公有區塊鏈4中的每一個區塊鏈節點的智能合約皆以區塊鏈的形式儲存這些證據資料(容後說明)。
在某些實施方式中,資料上鏈裝置1a還可進一步地確認原始資料RD所對應的雜湊資料HD是否被正確地上鏈。於該等實施方式中,資料上鏈裝置1a還包含一儲存器13,且儲存器13電性連接至微控制器11。儲存器13可為一記憶體,例如:一唯讀記憶體(Read-Only Memory;ROM)、一隨機存取記憶體(Random Access Memory;RAM),但不以此為限。儲存器13儲存微控制器11的一識別碼ID。
傳輸介面15傳送識別碼ID及原始資料RD所對應的時間戳記T至公有區塊鏈4的一區塊鏈節點140。區塊鏈節點140會根據識別碼ID及時間戳記T自智能合約擷取出證據資料R10’。接著,傳輸介面15再自區塊鏈節點140接收基於識別碼ID及時間戳記T所擷取出的證據資料R10’。
資料上鏈裝置1a的微控制器11自節點切片S10擷取出證據資料R10,且藉由比對從節點切片S10擷取出來的證據資料R10及從區塊鏈節點140接收到的證據資料R10’,判斷雜湊資料HD於該智能合約的一上鏈結果。若微控制器11判斷證據資料R10與證據資料R10’相同,表示該上鏈結果為雜
湊資料HD已被正確地上鏈於該智能合約。若微控制器11判斷證據資料R10與證據資料R10’相異,表示該上鏈結果為雜湊資料HD未被正確地上鏈於該智能合約。藉此,資料上鏈裝置1a便能確認區塊鏈代理人平台3是否正確地將原始資料RD所對應的雜湊資料HD上鏈。
接著說明資料驗證系統DS中與資料驗證相關的運作。請參閱第1D圖,其係描繪資料驗證裝置2的架構及運作的示意圖。資料驗證裝置2包含一處理器21、一儲存器23及一傳輸介面25,其中處理器21電性連接至儲存器23及傳輸介面25。處理器21可為各種處理器、中央處理單元(Central Processing Unit;CPU)、微處理器或本發明所屬技術領域中具有通常知識者所知悉的其他計算裝置。儲存器23可為一記憶體、一硬碟(Hard Disk Drive;HDD)、一通用串列匯流排(Universal Serial Bus;USB)碟、一光碟(Compact Disk;CD)或本發明所屬技術領域中具有通常知識者所知的任何其他能儲存數位資料的非暫態儲存媒體或裝置。傳輸介面25可為任何能與網路中的裝置進行通訊的有線介面或無線介面。
儲存器23儲存一雜湊鏈(chain hash)記錄20,且雜湊鏈記錄20包含複數個證據切片CH0、CH1、……、CH100。證據切片CH0、CH1、……、CH100的每一個為區塊鏈中的一個區塊,其中各區塊包含一區塊頭及一區塊體,且各區塊體儲存一個由區塊鏈代理人平台3產生的證據資料。證據切片CH0、CH1、……、CH100依序地串成一個鏈,其中證據切片CH100為最新的證據切片。公有區塊鏈4中的每一個區塊鏈節點都儲存著相同的雜湊鏈記錄20。本發明所屬技術領域中具有通常知識者應熟知區塊鏈的架構,故不贅言。
茲假設有一使用者欲查詢設備10a在某一時間(對應至時間戳記T)的原始資料。設備10a的擁有者會提供設備10a所對應的資料上鏈裝置1a所儲存的識別碼ID及時間戳記T給該使用者,俾使用者透過資料驗證裝置2查詢。
使用者將識別碼ID及時間戳記T輸入至資料驗證裝置2。資料驗證裝置2透過傳輸介面25傳送識別碼ID及時間戳記T至區塊鏈代理人平台3。傳輸介面25再自區塊鏈代理人平台3接收最新的證據資料R100以及基於識別碼ID與時間戳記T所擷取出的原始資料RD及默克爾樹MT的節點切片S10。另外,傳輸介面25自公有區塊鏈4的一區塊鏈節點的智能合約接收最新的證據資料R100’。
接著,資料驗證裝置2的處理器21藉由比對自區塊鏈代理人平台3所接收的最新的證據資料R100及自公有區塊鏈4的區塊鏈節點的智能合約所接收的最新的證據資料R100’以決定一第一驗證結果。資料驗證裝置2會依據該第一驗證結果,決定是否繼續執行後續的驗證。若第一驗證結果為證據資料R100與證據資料R100’不一致,則處理器21不會進行後續的驗證。
若第一驗證結果為證據資料R100與證據資料R100’一致,則處理器21會進行後續的驗證。具體而言,處理器21會依據同樣的演算法對原始資料RD產生一雜湊資料HD’,再根據雜湊資料HD’及節點切片S10產生一證據資料R10’(亦即,將雜湊資料HD’代入節點切片S10中對應至葉節點L3的節點,即可由其他的節點推出根節點的數據作為證據資料R10’,如第1E圖所示)。接著,處理器21再根據證據資料R10’及雜湊鏈記錄20中該等證據
切片的至少其中之一(亦即,包含證據資料R10’的證據切片至最新的證據切片CH100)產生另一最新的證據資料(未繪示)。之後,處理器21藉由比對證據資料R100(或證據資料R100’)及處理器21所產生的最新的證據資料以決定一第二驗證結果。若第二驗證結果為證據資料R100(或證據資料R100’)與處理器21所產生的最新的證據資料相同,表示區塊鏈代理人平台3所傳來的原始資料RD為正確的。若第二驗證結果為證據資料R100(或證據資料R100’)與處理器21所產生的最新的證據資料相異,表示區塊鏈代理人平台3所傳來的原始資料RD為錯誤的。
綜上所述,在資料驗證系統DS中,資料上鏈裝置1a、……、1b一對一地對應至設備10a、……、10b。資料上鏈裝置1a、……、1b的每一個可利用區塊鏈代理人平台3將其所對應的設備的雜湊資料進行上鏈。藉由前述的配置,解決了習知技術無法將物聯網中的大量的設備資料進行上鏈的技術問題。另外,資料驗證系統DS中的資料驗證裝置2儲存了一份與公有區塊鏈4中相同的雜湊鏈記錄20。每當有使用者欲查詢或/及驗證某一設備在某一時間的原始資料,資料驗證裝置2不需從公有區塊鏈4下載大量的資料才能進行驗證,僅需從公有區塊鏈4的一區塊鏈節點的智能合約下載最新的證據資料,即能完成資料的認證。因此,資料驗證裝置2在進行資料的驗證或/及查詢時,不會佔用公有區塊鏈4的頻寬。
本發明的第二實施方式為一種資料驗證方法,其主要流程圖係描繪於第2圖。該資料驗證方法適用於一電子計算裝置(例如:第一實施方式中的資料驗證裝置2)。該電子計算裝置儲存一雜湊鏈記錄,其中該雜湊鏈記錄包含複數個證據切片。該資料驗證方法包含步驟S201至步驟S215。
具體而言,於步驟S201,由該電子計算裝置傳送一微控制器的一識別碼及一時間戳記至一區塊鏈代理人平台。於步驟S203,由該電子計算裝置自該區塊鏈代理人平台接收一第一證據資料與基於該識別碼及該時間戳記所擷取出的一原始資料及一默克爾樹的一節點切片。接著,於步驟S205,由該電子計算裝置自一公有區塊鏈的一區塊鏈節點的一智能合約接收一第二證據資料。
於本實施方式中,資料驗證方法於步驟S207,由該電子計算裝置判斷該第一證據資料與該第二證據資料一致。需說明者,若驗證結果為該第一證據資料與該第二證據資料不一致,則資料驗證方法不會進行後續的驗證步驟。於本實施方式中,因步驟S207判斷該第一證據資料與該第二證據資料一致,因此資料驗證方法會進行後續的驗證步驟。
於步驟S209,由該電子計算裝置針對該原始資料產生一雜湊資料。在某些實施方式中,步驟S209係由該電子計算裝置採用一演算法將該原始資料及該時間戳記加密為該雜湊資料。該演算法可為一加密演算法,例如:一進階加密標準演算法、一保全散列演算法、一橢圓曲線密碼學演算法及一Base演算法其中之一,但不以此為限。
另外,於步驟S211,由該電子計算裝置根據該雜湊資料及該節點切片產生一第三證據資料。接著,於步驟S213,由該電子計算裝置根據該第三證據資料及該等證據切片的至少其中之一產生一第四證據資料。之後,於步驟S215,由該電子計算裝置藉由比對該第一證據資料及該第四證據資料以決定一驗證結果。
若步驟S215所決定的該驗證結果為該第一證據資料(或該
第二證據資料)及該第四證據資料相同,表示該區塊鏈代理人平台所傳來的該原始資料為正確的。若步驟S215所決定的該驗證結果為該第一證據資料(或該第二證據資料)及該第四證據資料相異,表示該區塊鏈代理人平台所傳來的該原始資料為錯誤的。
除了上述步驟,第二實施方式能執行第一實施方式所描述的資料驗證裝置2的所有運作及步驟,具有同樣的功能,且達到同樣的技術效果。本發明所屬技術領域中具有通常知識者可直接瞭解第二實施方式如何基於上述第一實施方式以執行此等運作及步驟,具有同樣的功能,並達到同樣的技術效果,故不贅述。
需說明者,於本案的說明書及申請專利範圍中,某些用語(包含:傳輸介面、證據資料、驗證結果等)前被冠以「第一」、「第二」、「第三」及「第四」,該等數字僅用來區分該等用語係指不同項目。
綜上所述,本發明所提供的資料上鏈裝置及資料驗證裝置可搭配區塊鏈代理人平台及公有區塊鏈而形成一資料驗證系統。在資料驗證系統中,複數個資料上鏈裝置會一對一地對應至物聯網中的複數個設備,且各個資料上鏈裝置會利用區塊鏈代理人平台將其所對應的設備的雜湊資料進行上鏈。本發明藉由前述的配置,解決了習知技術無法將物聯網中大量的設備資料進行上鏈的技術問題。另外,資料驗證系統中的資料驗證裝置會儲存一份與公有區塊鏈中相同的雜湊鏈記錄。每當有使用者欲查詢或/及驗證某一設備在某一時間的原始資料,資料驗證裝置不需於公有區塊鏈下載大量的資料才能進行驗證,僅需從公有區塊鏈的一個區塊鏈節點的智能合約下載最新的證據資料,即能完成資料的認證。因此,資料驗證裝置在進行資
料的驗證或/及查詢時,不會佔用公有區塊鏈的頻寬。
上述實施方式僅為例示性說明本發明之部分實施態樣,以及闡釋本發明之技術特徵,而非用來限制本發明之保護範疇及範圍。任何熟悉此技藝之人士可輕易完成之改變或均等性之安排均屬於本發明所主張之範圍,本發明之權利保護範圍應以申請專利範圍為準。
DS‧‧‧資料驗證系統
1a、……、1b‧‧‧資料上鏈裝置
2‧‧‧資料驗證裝置
3‧‧‧區塊鏈代理人平台
4‧‧‧公有區塊鏈
10a、……、10b‧‧‧設備
Claims (17)
- 一種資料上鏈裝置,包含:一微控制器(Microcontroller),依據一演算法對一設備的一原始資料及該原始資料所對應的一時間戳記產生一區塊鏈可讀取的一雜湊資料;以及一第一傳輸介面,電性連接至該微控制器,傳送該原始資料及該雜湊資料至一區塊鏈代理人平台,俾該區塊鏈代理人平台協助將該原始資料所對應的該雜湊資料上鏈,其中,該第一傳輸介面還自該區塊鏈代理人平台接收該雜湊資料於一默克爾樹(Merkle Tree)的一節點切片(Slice),且該節點切片包含基於該雜湊資料所產生的一第一證據資料。
- 如請求項1所述的資料上鏈裝置,還包含:一儲存器,電性連接至該微控制器,且儲存該微控制器的一識別碼;其中,該第一傳輸介面還傳送該識別碼及該原始資料所對應的該時間戳記至一公有區塊鏈(Public Blockchain)的一區塊鏈節點,且自該區塊鏈節點的一智能合約(Smart Contract)接收基於該識別碼及該時間戳記所擷取出的一第二證據資料,其中,該微控制器還自該節點切片擷取出該第一證據資料,且藉由比對該第一證據資料及該第二證據資料以判斷該雜湊資料於該智能合約中的一上鏈結果。
- 如請求項2所述的資料上鏈裝置,其中當該微控制器判斷該第一證據資料與該第二證據資料相同時,該上鏈結果為該雜湊資料已被正確地上鏈 於該智能合約。
- 如請求項2所述的資料上鏈裝置,其中當該微控制器判斷該第一證據資料與該第二證據資料相異時,該上鏈結果為該雜湊資料未被正確地上鏈於該智能合約。
- 如請求項1所述的資料上鏈裝置,其中該微控制器係依據該演算法將該原始資料及該原始資料所對應的該時間戳記加密為該雜湊資料。
- 如請求項5所述的資料上鏈裝置,其中該演算法為一進階加密標準(Advanced Encryption Standard;AES)演算法、一保全散列演算法(Secure Hash Algorithm;SHA)、一橢圓曲線密碼學(Elliptic Curve Cryptography;ECC)演算法及一Base演算法其中之一。
- 如請求項1所述的資料上鏈裝置,還包含:一第二傳輸介面,電性連接至該微控制器,且自該設備接收該原始資料。
- 一種資料驗證裝置,包含:一儲存器,儲存一雜湊鏈(Chain Hash)記錄,該雜湊鏈記錄包含複數個證據切片;一傳輸介面,傳送一微控制器的一識別碼及一時間戳記至一區塊鏈代理人平台,自該區塊鏈代理人平台接收一第一證據資料與基於該識別碼及該時間戳記所擷取出的一原始資料及一默克爾樹的一節點切片,且自一公有區塊鏈的一區塊鏈節點的一智能合約接收一第二證據資料;以及一處理器,電性連接至該儲存器及該傳輸介面,且藉由比對該第一 證據資料及該第二證據資料以決定一第一驗證結果,其中,當該第一驗證結果為該第一證據資料與該第二證據資料一致,該處理器還針對該原始資料產生一雜湊資料,根據該雜湊資料及該節點切片產生一第三證據資料,根據該第三證據資料及該等證據切片的至少其中之一產生一第四證據資料,且藉由比對該第一證據資料及該第四證據資料以決定一第二驗證結果。
- 如請求項8所述的資料驗證裝置,其中當該處理器判斷該第四證據資料與該第一證據資料相同時,該第二驗證結果為該原始資料為正確的。
- 如請求項8所述的資料驗證裝置,其中當該處理器判斷該第四證據資料與該第一證據資料相異時,該第二驗證結果為該原始資料為錯誤的。
- 如請求項8所述的資料驗證裝置,其中該處理器係以一演算法將該原始資料及該時間戳記加密為該雜湊資料。
- 如請求項11所述的資料驗證裝置,其中該演算法為一進階加密標準演算法、一保全散列演算法、一橢圓曲線密碼學演算法及一Base演算法其中之一。
- 一種資料驗證方法,適用於一電子計算裝置,該電子計算裝置儲存一雜湊鏈記錄,該雜湊鏈記錄包含複數個證據切片,該資料驗證方法包含下列步驟:傳送一微控制器的一識別碼及一時間戳記至一區塊鏈代理人平台;自該區塊鏈代理人平台接收一第一證據資料與基於該識別碼及該時間戳記所擷取出的一原始資料及一默克爾樹的一節點切片;自一公有區塊鏈的一區塊鏈節點的一智能合約接收一第二證據資 料;判斷該第一證據資料與該第二證據資料一致;針對該原始資料產生一雜湊資料;根據該雜湊資料及該節點切片產生一第三證據資料;根據該第三證據資料及該等證據切片的至少其中之一產生一第四證據資料;以及藉由比對該第一證據資料及該第四證據資料以決定一驗證結果。
- 如請求項13所述的資料驗證方法,其中當該第一證據資料與該第四證據資料相同時,該驗證結果為該原始資料為正確的。
- 如請求項13所述的資料驗證方法,其中當該第一證據資料與該第四證據資料相異時,該驗證結果為該原始資料為錯誤的。
- 如請求項13所述的資料驗證方法,其中該產生該雜湊資料的步驟係以一演算法將該原始資料及該時間戳記加密為該雜湊資料。
- 如請求項16所述的資料驗證方法,其中該演算法為一進階加密標準演算法、一保全散列演算法、一橢圓曲線密碼學演算法及一Base演算法其中之一。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108141397A TWI707573B (zh) | 2019-11-14 | 2019-11-14 | 資料上鏈裝置、資料驗證裝置及資料驗證方法 |
CN201911163749.7A CN112804284A (zh) | 2019-11-14 | 2019-11-25 | 数据上链装置、数据验证装置及数据验证方法 |
US16/706,569 US20210152332A1 (en) | 2019-11-14 | 2019-12-06 | Apparatus for adding data to blockchain, data verification apparatus, and data verification method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108141397A TWI707573B (zh) | 2019-11-14 | 2019-11-14 | 資料上鏈裝置、資料驗證裝置及資料驗證方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI707573B true TWI707573B (zh) | 2020-10-11 |
TW202119789A TW202119789A (zh) | 2021-05-16 |
Family
ID=74091773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108141397A TWI707573B (zh) | 2019-11-14 | 2019-11-14 | 資料上鏈裝置、資料驗證裝置及資料驗證方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210152332A1 (zh) |
CN (1) | CN112804284A (zh) |
TW (1) | TWI707573B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI727799B (zh) * | 2020-05-15 | 2021-05-11 | 國立虎尾科技大學 | 樞合式區塊鏈節點裝置及其樞合方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114154606B (zh) * | 2021-12-02 | 2024-03-15 | 杭州复杂美科技有限公司 | 标识码生成方法、计算机设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201820241A (zh) * | 2016-10-28 | 2018-06-01 | 安地卡及巴布達商區塊鏈控股有限公司 | 用於經由區塊鏈實施確定性有限自動機(dfa)之系統及方法 |
US20180227130A1 (en) * | 2017-02-06 | 2018-08-09 | ShoCard, Inc. | Electronic identification verification methods and systems |
US20180241565A1 (en) * | 2017-02-17 | 2018-08-23 | Factom | Secret Sharing via Blockchains |
US20180316502A1 (en) * | 2017-04-27 | 2018-11-01 | Factom | Data Reproducibility Using Blockchains |
WO2019113495A1 (en) * | 2017-12-08 | 2019-06-13 | Solana Labs, Inc. | Systems and methods for cryptographic provision of synchronized clocks in distributed systems |
CN110086605A (zh) * | 2018-01-26 | 2019-08-02 | 北京数盾信息科技有限公司 | 一种区块链应用中链上数据的加密保护及密文检索方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2561465B (en) * | 2016-02-23 | 2021-12-08 | Nchain Holdings Ltd | A method and system for securing computer software using a distributed hash table and a blockchain |
WO2018143983A1 (en) * | 2017-02-01 | 2018-08-09 | Equifax, Inc. | Verifying an identity based on multiple distributed data sources using a blockchain to safeguard the identity |
TW201935299A (zh) * | 2018-02-12 | 2019-09-01 | 林俊良 | 用於處理金融資產之策略模型腳本之區塊鏈系統、節點伺服器及其方法 |
TWM586416U (zh) * | 2019-06-05 | 2019-11-11 | 陳志誠 | 基於區塊鏈技術實現交易的多中心分散驗證系統 |
-
2019
- 2019-11-14 TW TW108141397A patent/TWI707573B/zh active
- 2019-11-25 CN CN201911163749.7A patent/CN112804284A/zh active Pending
- 2019-12-06 US US16/706,569 patent/US20210152332A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201820241A (zh) * | 2016-10-28 | 2018-06-01 | 安地卡及巴布達商區塊鏈控股有限公司 | 用於經由區塊鏈實施確定性有限自動機(dfa)之系統及方法 |
US20180227130A1 (en) * | 2017-02-06 | 2018-08-09 | ShoCard, Inc. | Electronic identification verification methods and systems |
US20180241565A1 (en) * | 2017-02-17 | 2018-08-23 | Factom | Secret Sharing via Blockchains |
US20180316502A1 (en) * | 2017-04-27 | 2018-11-01 | Factom | Data Reproducibility Using Blockchains |
WO2019113495A1 (en) * | 2017-12-08 | 2019-06-13 | Solana Labs, Inc. | Systems and methods for cryptographic provision of synchronized clocks in distributed systems |
CN110086605A (zh) * | 2018-01-26 | 2019-08-02 | 北京数盾信息科技有限公司 | 一种区块链应用中链上数据的加密保护及密文检索方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI727799B (zh) * | 2020-05-15 | 2021-05-11 | 國立虎尾科技大學 | 樞合式區塊鏈節點裝置及其樞合方法 |
Also Published As
Publication number | Publication date |
---|---|
TW202119789A (zh) | 2021-05-16 |
CN112804284A (zh) | 2021-05-14 |
US20210152332A1 (en) | 2021-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7139424B2 (ja) | 車両搭載機器アップグレード方法および関連機器 | |
US11501533B2 (en) | Media authentication using distributed ledger | |
US10459990B1 (en) | Data processing method and device, medium and terminal thereof | |
CN110460439A (zh) | 信息传输方法、装置、客户端、服务端及存储介质 | |
CN107925660A (zh) | 数据访问和所有权管理 | |
CN108809630A (zh) | 一种遗嘱保存方法、系统、设备及计算机可读存储介质 | |
TWI707573B (zh) | 資料上鏈裝置、資料驗證裝置及資料驗證方法 | |
CN111125737A (zh) | 基于区块链的环境监测系统 | |
CN108256354B (zh) | 一种基于试验数据的存储方法及存储介质 | |
CN101305359A (zh) | 用于确定数字证书是否已被撤消的服务 | |
CN110633575A (zh) | 数据加密方法、装置、设备及存储介质 | |
CN112163036A (zh) | 区块链信息的构建和查询方法及相关装置 | |
CN115242413A (zh) | 物联网设备固件安全升级方法、装置、电子设备及介质 | |
CN111414418B (zh) | 一种基于区块链的数据存储方法及装置 | |
CN110232570B (zh) | 一种信息监管方法及装置 | |
CN109150813A (zh) | 一种设备的验证方法及装置 | |
WO2023103316A1 (zh) | 应用管理方法及相关产品 | |
US20200314073A1 (en) | Secure communication between an intermediary device and a network | |
CN115023910B (zh) | 串行命令协议封装线传输协议 | |
JP5490101B2 (ja) | ディジタル形式で伝送される情報を訂正する方法と装置 | |
CN110825918B (zh) | 一种数字证书的获取方法、存储方法及装置 | |
CN111950031A (zh) | 基于区块链的分布式数据管理方法、终端设备和存储介质 | |
CN116048585B (zh) | 工控安全防护系统及其软件更新方法、装置、设备和介质 | |
CN117440019B (zh) | 一种基于区块链的实验室物联网方法与系统 | |
CN116301958B (zh) | 一种电缆监测装置固件更新方法和系统 |