CN111984725A - 分布式数据库中的测量数据集的验证 - Google Patents
分布式数据库中的测量数据集的验证 Download PDFInfo
- Publication number
- CN111984725A CN111984725A CN202010439704.4A CN202010439704A CN111984725A CN 111984725 A CN111984725 A CN 111984725A CN 202010439704 A CN202010439704 A CN 202010439704A CN 111984725 A CN111984725 A CN 111984725A
- Authority
- CN
- China
- Prior art keywords
- data set
- measurement data
- data
- distributed database
- comparison
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000005259 measurement Methods 0.000 title claims abstract description 207
- 238000010200 validation analysis Methods 0.000 title claims abstract description 32
- 238000005065 mining Methods 0.000 claims abstract description 54
- 238000000034 method Methods 0.000 claims description 58
- 238000004422 calculation algorithm Methods 0.000 claims description 37
- 238000012545 processing Methods 0.000 claims description 33
- 238000012795 verification Methods 0.000 abstract description 9
- 230000006870 function Effects 0.000 description 23
- 238000004891 communication Methods 0.000 description 17
- 239000012530 fluid Substances 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 230000001960 triggered effect Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 241000712062 Patricia Species 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 239000000654 additive Substances 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 239000000126 substance Substances 0.000 description 4
- 102100031920 Dihydrolipoyllysine-residue succinyltransferase component of 2-oxoglutarate dehydrogenase complex, mitochondrial Human genes 0.000 description 3
- 101000992065 Homo sapiens Dihydrolipoyllysine-residue succinyltransferase component of 2-oxoglutarate dehydrogenase complex, mitochondrial Proteins 0.000 description 3
- 230000000996 additive effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000001773 deep-level transient spectroscopy Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 125000002015 acyclic group Chemical group 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000013170 computed tomography imaging Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000002595 magnetic resonance imaging Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000001845 vibrational spectrum Methods 0.000 description 1
Images
Classifications
-
- 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/24—Querying
- G06F16/245—Query processing
-
- 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/2365—Ensuring data consistency and integrity
-
- 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
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24568—Data stream processing; Continuous queries
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- 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/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2216/00—Indexing scheme relating to additional aspects of information retrieval not explicitly covered by G06F16/00 and subgroups
- G06F2216/03—Data mining
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及分布式数据库中的测量数据集的验证。本发明涉及一种分布式数据库的基础架构的挖掘节点,挖掘节点包括控制电路,控制电路被配置为用于:获得测量数据集,测量数据集指示事件的一个或多个可观测量,测量数据集包括处理后的原始数据样本;并且在测量数据集与参考数据集之间进行比较,参考数据集包括与事件相关联的一个或多个预先定义的约束或者另一个测量数据集中的至少一个,另一个测量数据集指示事件的一个或多个另外的可观测量;并且根据比较的结果,选择性地触发针对测量数据集的一个或多个验证措施,在分布式数据库处实现一个或多个验证措施。
Description
技术领域
本发明的各种示例一般地涉及对测量数据集进行验证的技术。本发明的各种示例尤其是涉及使用在诸如区块链的分布式数据库处实现的一个或多个验证措施,来对测量数据集进行验证。
背景技术
分布式数据库、例如区块链,针对对数据的操纵提供提高的安全性。因此,各种功能,例如工业环境中的感测和控制功能、电网的控制、运输系统等,依赖于存储在分布式数据库中的数据。
依赖于存储在分布式数据库中的数据的各种功能可以是事件驱动的。即,一个或多个功能可以由分布式数据库外部的事件和/或依据分布式数据库外部的事件来触发,即基于外部数据来触发。为此,已知测量节点,其有时也称为oracle(启示器)。oracle可以提供指示事件的一个或多个可观测量的测量数据集。然后,可以将测量数据集存储在分布式数据库中。逻辑功能可以与这些测量数据集有关。
测量数据集的有效性/完整性有时可能受到损害。这例如可能由于发生故障的oracle或者舞弊。测量数据集的这种有限的有效性,也可能损害存储在分布式数据库中的数据的完整性或者与测量数据集有关的任意功能。
发明内容
相应地,需要对测量数据集进行验证的技术。特别是,需要克服或者减轻上面提到的限制和缺点中的至少一些的技术。
这种需要通过本发明的特征来满足。下面的描述定义实施例。
分布式数据库的基础架构的挖掘节点包括控制电路。控制电路被配置为用于,获得测量数据集,测量数据集指示事件的一个或多个可观测量。测量数据集包括处理后的原始数据样本。控制电路还被配置为用于,在测量数据集与参考数据集之间进行比较。参考数据集包括一个或多个预先定义的约束。一个或多个预先定义的约束与事件相关联。作为包括一个或多个预先定义的约束的参考数据集的替换或者附加,参考数据集也可以包括另一个测量数据集。该另一个测量数据集指示事件的一个或多个另外的可观测量。控制电路还被配置为用于,依据比较的结果,来选择性地触发针对测量数据集的一个或多个验证措施。在分布式数据库处实现该一个或多个验证措施。
在分布式数据库的基础架构的挖掘节点处以计算机实现的方法包括:获得测量数据集,测量数据集指示事件的一个或多个可观测量。测量数据集包括处理后的原始数据样本。所述方法还包括:在测量数据集与参考数据集之间进行比较。参考数据集包括如下内容中的至少一个:与事件相关联的一个或多个预先定义的约束;或者另一个测量数据集,该另一个测量数据集指示事件的一个或多个另外的可观测量。所述方法还包括:依据比较的结果,来选择性地触发针对测量数据集的一个或多个验证措施。在分布式数据库处实现该一个或多个验证措施。
计算机程序产品或者计算机程序或者计算机可读存储介质包括程序代码。程序代码可以由处理器加载并执行。在执行程序代码时,处理器执行方法。所述方法包括:获得测量数据集,测量数据集指示事件的一个或多个可观测量,测量数据集包括处理后的原始数据样本;以及在测量数据集与参考数据集之间进行比较,参考数据集包括如下内容中的至少一个:与事件相关联的一个或多个预先定义的约束,或者另一个测量数据集,该另一个测量数据集指示事件的一个或多个另外的可观测量;以及依据比较的结果,来选择性地触发针对测量数据集的一个或多个验证措施,在分布式数据库处实现该一个或多个验证措施。
除非另外明确指出,否则术语“执行”、“计算”、“计算机实现的”、“计算”、“建立”、“生成”、“配置”、“重建”等,优选涉及修改数据和/或生成数据和/或将数据变换为其它数据的动作和/或过程和/或处理步骤。数据可以用物理量表示,或者可以作为物理量、例如作为电脉冲存在。特别是,术语“计算机”应当广义地解释为覆盖具有数据处理能力的所有电子设备。因此,计算机可以由个人计算机、服务器、存储器可编程的控制器、手持式计算机系统、掌上PC设备、无线通信设备和可以处理数据的其它通信设备、处理器以及用于处理数据的其它电子设备来实现。
在本公开的上下文中,“计算机实现的”可能涉及处理器执行至少一个方法步骤的方法的实现。
本公开的上下文中的处理器可以是机器或者电子电路。处理器具体地可以由中央处理单元(central processing unit,CPU)或者微处理器或者微控制器、例如专用集成电路(application-specific integrated circuit,ASIC)或者数字信号处理器,可能与用于存储程序代码的存储单元等组合来实现。替换地或者附加地,处理器可以由集成电路(integrated circuit,IC)、尤其是现场可编程门阵列(field programmable gate array,FPGA)、ASIC或者数字信号处理器(digital signal processor,DSP)或者图形处理单元(graphic processing unit,GPU)来实现。替换地或者附加地,处理器可以由虚拟处理器或者虚拟机或者软CPU来实现。处理器可以由具有方便这里描述的各种技术的配置的配置接口的可编程处理器来实现。可编程处理器可以被配置为用于实现这里描述的方法步骤、部件、模块或者这里描述的技术的其它方面。
“存储器”或者“存储单元”或者“存储模块”等可以由随机存取存储器(randomaccess memory,RAM)形式的易失性存储器或者诸如硬盘或者数据载体的非易失性存储器来实现。
在本公开的上下文中,术语“包括”(尤其是针对数据和/或信息)可能涉及相应的信息或者相应的数据在数据结构/数据集(其例如继而也存储在存储单元中)中的(计算机实现的)存储。
术语“提供”(特别是关于数据和/或信息)可能涉及结合本公开的计算机实现的提供。所述提供可以通过接口、例如数据库接口、网络接口、到存储单元的接口来实现。当经由接口提供时,可以对相应的数据和/或信息进行传送和/或传输和/或取回和/或接收。
在本公开的上下文中,术语“提供”还可能涉及与相应的数据一起的对例如交易的加载或者保存。例如,这可以在存储模块上或者由存储模块来实现。
在本公开的上下文中,术语“提供”还可能涉及相应的数据从(相应地对应的基础架构的)分布式数据库基础架构的一个节点向另一个节点的传送(或者传输或者接收或者转移)。
“智能合约”或者“智能合约过程”或者“智能合约功能”可能是指在过程中,借助分布式数据库或者相应的基础架构,对程序代码、例如控制指令的执行。
在本公开的上下文中,“校验和”、例如数据区块校验和、数据校验和、节点校验和、交易校验和、链接校验和等,可能涉及加密校验和或者加密哈希或者哈希值。特别是可以在数据集和/或数据和/或一个或多个交易和/或数据区块的子部分、例如区块链的区块的区块头或者数据区块的数据区块头或者仅数据区块交易的一部分上,确定这种校验和。校验和具体地可以通过一个校验和或者多个校验和或者哈希树(例如Merkle树、Patricia树)的一个哈希值或者多个哈希值来实现。此外,“校验和”也可以通过数字签名或者加密消息认证码来实现。借助校验和,可以实现在分布式数据库的各种级别针对对交易以及相关联的数据和数据集的操纵的加密保护/保护。例如,如果需要提高安全级别,则可以在交易级别创建并且验证校验和。例如,如果需要降低安全级别,则可以在区块级别,例如在整个区块上,或者仅在一部分数据区块和/或一部分交易上,创建并且验证校验和。
在本公开的上下文中,“数据区块校验和”可能涉及在数据区块的部分或者全部交易上计算的校验和。节点可以借助数据区块校验和,来验证/确定数据区块的相应的部分的完整性/真实性。替换地或者附加地,也可以在前一数据区块/先前的数据区块的交易上形成数据区块校验和。特别是,可以借助哈希树、例如Merkle树[1]或者Patricia树来实现数据区块校验和。在此,数据区块校验和可以是Merkle树、Patricia树或者其它二进制哈希树的根校验和。可以分别借助来自Merkle树或者Patricia树的其它校验和,例如通过使用交易校验和,来保存交易,其中,特别是其它校验和可能分别涉及Merkle树或者Patricia树的叶子。由此,数据区块校验和可以通过由其它校验和形成根校验和,来保护交易。特别是可以针对数据区块中的特定数据区块的交易,计算数据区块校验和。特别是,这种数据区块校验和可以包含在给定数据区块的后续数据区块中,例如用于链接该后续数据区块与先前的数据区块,特别是用于使分布式数据库基础架构的完整性可测试。由此,数据区块校验和可以实现链接校验和,或者至少进入链接校验和。数据区块(例如新的数据区块或者确定数据区块校验和的数据区块)的头可以包括数据区块校验和。
“交易校验和”可能涉及结合本公开在数据区块的交易上确定的校验和。此外,可以加速相应的数据区块的数据区块校验和的计算,因为对此,已经计算的交易校验和可以容易地用作Merkle树的叶子。
本公开的上下文中的“链接校验和”可能涉及如下校验和,对于区块链的相应的数据区块,该校验和指示或者引用区块链的前一数据区块,其在文献[1]中经常称为“先前的区块哈希(previous block hash)”。对此,特别是针对该前一数据区块确定相应的链接校验和。链接校验和例如可以通过区块链的数据区块、即已有的数据区块的交易校验和或者数据区块校验和来实现;以由此链接区块链的新的数据区块与(已有的)数据区块。例如,也可以在前一数据区块的头上或者在整个前一数据区块上确定校验和,来用作链接校验和。例如,这也可以针对多个或者所有先前的数据区块来计算。例如,链接校验和也可以通过数据区块校验和中的、在数据区块的头上确定的校验和来实现。然而,区块链的相应的数据区块优选包括已经计算的链接校验和或者如下链接校验和,该链接校验和涉及先前的数据区块、具体地为与相应的数据区块直接相邻的紧邻的前一数据区块。例如,也可以仅在相应的数据区块(例如前一数据区块)的一部分上确定相应的链接校验和。由此,可以实现具有完整性保护部分和非保护部分的数据区块。由此,可以实现具有不可改变的完整性保护部分并且具有稍后可以进行修改的非保护部分的数据区块。完整性保护可以意为,可以借助校验和,来检测完整性受保护的数据的改变。
接下来,描述交易的示例实现。
可以以各种方式来提供数据,即例如存储在数据区块的交易中或者写入数据区块的交易的数据。代替数据(例如诸如测量数据或者关于ASIC的数据/所有权结构的用户数据),数据区块的交易可以包括这种数据的校验和。相应的校验和可以以各种方式来实现。例如,可以使用另一个数据库或者分布式数据库的例如包括相应的数据的数据区块的相应的数据区块校验和,例如分布式数据库或者另一个数据库的相应的数据的数据区块的交易校验和,或者在数据上确定的数据校验和。
此外,相应的交易可选地可以包括到存储位置的链接或者存储位置的指示(例如文件服务器的地址,以及在文件服务器上在哪里可以找到相应的数据的指示,即涉及链下存储的指示);或者包括数据的另一个分布式数据库的地址。例如也可以在区块链的另一个数据区块的另一个交易中提供相应的数据,例如如果相应的数据和相关联的校验和包含在不同的数据区块中。也可以经由另一个通信通道,例如经由另一个数据库和/或加密保护的通信通道,提供这些数据。
就这一点而言,从分布式数据库中读取数据集,一般地可以对应于从分布式数据库中读取整个数据集,或者从分布式数据库中读取数据集的校验和,以及从非分布式数据库中读取数据集的有效载荷数据。
此外,除了校验和之外,在相应的交易中还可以提供附加数据集、例如到存储位置的链接或者指示。附加数据集特别是可以指示可以在哪里取回数据。这可以有助于限制区块链的数据量。
术语“安全保护”具体地可能涉及可以通过加密方法实现的保护。例如,这可以通过使用分布式数据库基础架构来实现,以提供或者传送或者传输相应的数据/交易。这可以通过校验和之间的适当的协同交互,通过各种校验和的组合(例如加密)来实现,以便例如提高交易数据的安全性或者加密安全性。换句话说,本公开的上下文中的“安全保护”也可能涉及“加密保护”和/或“针对操纵保护”,其中,“针对操纵保护”也可以称为“完整性保护”。
将交易插入分布式数据库基础架构中,可以包括链接区块链的数据区块。结合本公开的术语“链接数据区块”可能涉及分别包括链接到另一个数据区块或者多个其它的数据区块的信息(例如链接校验和)的数据区块[1],[4],[5]。
将交易插入分布式数据库中,可以包括将交易保存在区块链的一个或多个数据区块中。
交易的插入可以包括验证和/或确认交易。
术语“将交易插入分布式数据库中”或者“将数据写入分布式数据库中”等,可能涉及将一个或多个交易或者包括交易的数据区块,传送到分布式数据库基础架构的一个或多个节点。如果例如借助该一个或多个节点成功地对那些交易进行了验证,则可以将这些交易作为新的数据区块,链接到至少一个已有的数据区块[1],[4],[5]。为此,将相应的交易存储在新的数据区块中。特别是,这种验证和/或链接可以由受信任的节点、例如挖掘节点、区块链启示器(blockchain oracle)或者区块链平台来实现。
特别是,区块链可能涉及作为服务(例如由Microsoft或者IBM提出的服务)的区块链。特别是,受信任的节点和/或其它节点可以将节点校验和、例如数字签名,存储在数据区块中,例如存储在如下数据区块中,该数据区块已经由相应的节点进行了验证,然后进行链接,特别是以便方便识别数据区块的创建者和/或识别节点。在此,节点校验和指示哪个节点将相应的数据区块链接到了区块链的至少一个其它的数据区块。
结合本公开的“交易”或者“多个交易”可能涉及智能合约[4],[5]、数据结构或者交易数据集,它们特别是分别包括一个交易或者多个交易。结合本公开,术语“交易”或者“多个交易”也可能涉及区块链的数据区块的交易的数据。交易例如可以包括例如实现智能合约的程序代码。例如,在本公开的上下文中,交易也可能涉及控制交易和/或确认交易。替换地,也可以通过保存数据(例如控制指令和/或合约数据和/或其它数据、例如视频数据、用户数据、测量数据等)的数据结构来实现交易。
特别是,术语“将交易保存或者写入或者存储在数据区块中”、“保存交易”等,可能涉及直接保存或者间接保存。直接保存可能涉及区块链的相应的数据区块或者区块链的相应的交易,包括相应的数据。间接保存可能涉及相应的数据区块或者相应的交易、包括校验和,并且可选地涉及附加数据集、例如到相应的数据的存储位置的链接或者相应的数据的存储位置的指示;因此,相应的数据不直接保存在数据区块(或者交易)中。而是在数据区块中为这些数据提供校验和。特别是,当将交易保存在数据区块中(例如上面关于“插入分布式数据库中”所说明的“将交易保存在数据区块中”)时,可以对这些校验和进行验证。
结合本公开,诸如智能合约的“程序代码”可能涉及在一个或多个交易中保存的程序指令或者多个程序指令。程序代码可以是可执行的,并且例如可以由分布式数据库执行。这例如可以通过例如虚拟机的运行时环境来实现,其中,运行时环境或者程序代码优选是图灵完备的(Turing complete)。程序代码优选由分布式数据库的基础设施执行[4],[5]。在此,虚拟机由分布式数据库的基础设施来实现。可以在验证对应的交易时,执行程序代码。
结合本公开[4],[5],“智能合约”可能涉及可执行的程序代码,特别是参见上面提供的关于“程序代码”的说明。智能合约优选保存在分布式数据库的交易中,例如区块链中,例如数据区块中。例如,可以以与结合“程序代码”的定义、特别是结合本公开所描述的相同的方式,来执行智能合约。
结合本公开[1],[4],[5],术语“工作证明”可能涉及特别是依据数据区块的内容或者特定交易的内容来解决计算量大的任务。这种计算量大的任务也可以称为加密难题(cryptographic puzzle)。
在本公开的上下文中,术语“分布式数据库”一般可能涉及分散的分布式数据库、区块链、分布式账本、分布式存储系统、基于分布式账本技术(distributed ledgertechnology,DLT)的系统(distributed ledger technology(DLT)based system,DLTS)、修订安全数据库系统、云、云服务、云中的区块链或者对等(peer-to-peer)数据库系统。此外,可以使用区块链或者DLTS的各种实现方式,例如借助有向无环图(directed acyclicgraph,DAG)、加密难题、哈希图或者这些变形方案的组合实现的区块链或者DLTS[6],[7]。也可以实现不同的共识算法(consensus algorithm)。例如,可以借助加密难题、互相传播(gossip about gossip)、虚拟投票或者这些技术的组合(例如与虚拟投票组合的互相传播)来实现共识算法[6],[7]。例如,如果使用区块链,则这特别是可以通过基于比特币的实现或者基于以太坊的(Ethereum-based)实现来实现[1],[4],[5]。术语“分布式数据库”也可能涉及如下分布式数据库基础设施,该分布式数据库基础架构具有由云实现的其节点和/或设备和/或基础设施的至少一部分。例如,相应的部件可以作为云中的节点/设备(例如作为虚拟机中的虚拟节点)来实现。这可以通过WMware、Amazon Web服务或者MicrosoftAzure来实现。由于所描述的实现场景的灵活性提高,因此特别是例如可以通过使用哈希图作为区块链,将所描述的实现场景的部分方面彼此组合,其中,区块链本身也可以是一个区块批次(block batch)。
例如,如果使用有向无环图(DAG)(例如IOTA或者Tangle),则图的交易或者区块或者节点经由有向边彼此连接。即,(所有)边(总是)具有相同的方向、例如与针对时间观察的方向相同的方向。换句话说,特别是不能向后(即与共同的统一方向相反)传播通过或者访问图的交易或者区块或者节点。无环特别是意味着在穿过图时不存在循环或者闭环。例如,分布式数据库基础架构可能涉及公共分布式数据库基础架构(例如公共区块链)或者封闭的(私有)分布式数据库系统(例如私有区块链)。
例如,在公共分布式数据库基础架构的情况下,节点和/或设备可以在没有授权或者认证或者登录凭证的证明情况下加入分布式数据库基础架构,在没有这些信息的情况下相应地被分布式数据库基础架构接受。特别是,在这种情况下,节点和/或设备的操作者可以保持匿名。
例如,在通过封闭的数据库系统实现分布式数据库基础架构的情况下,新的节点和/或设备可能需要有效的授权证明和/或有效的认证信息和/或有效的凭证和/或有效的登录信息,来加入分布式数据库基础架构或者被分布式数据库基础架构接受。
分布式数据库基础架构也可以由分布式通信系统实现,以进行数据交换。例如,这可以是网络或者对等网络。
在本公开的上下文中,术语“数据区块”(依据上下文和实现,其也可以称为“组成部分”或者“区块”)可能涉及分布式数据库、例如区块链或者对等数据库的数据区块,其特别是作为数据结构来实现,并且优选包括交易中的一个或者交易中的多个。在一种实现中,数据库或者数据库系统可以是基于DLT的系统(DLTS)或者区块链,并且数据区块可以是区块链或者DLTS的区块。
作为一般规则,数据区块例如可以包括数据区块的大小的指示、例如以字节为单位的数据量、数据区块头(区块头)、交易计数器和一个或多个交易[1]。数据区块头可以包括版本、链接校验和、数据区块校验和、时间戳、工作证明、Nonce(随机数)、即唯一的值、随机值或者用于工作证明的计数器[1],[4],[5]。数据区块例如还可能简单地涉及存储在分布式数据库中的数据整体的相应的存储范围或者地址范围。由此,可以实现无区块分布式数据库基础架构、例如IOT链(ITCA)、IOTA、Byteball(字节球)等。在此,区块链的区块和交易的功能以如下方式相互组合,即,例如交易本身确保分布式数据库的交易的序列或者链的安全,使得特别是以安全的方式对其进行保存。为此,可以借助链接校验和,例如通过使用单独的校验和或者一个或多个交易的交易校验和作为链接校验和,来链接交易,在将新的交易存储在分布式数据库中时,将链接校验和保存在分布式数据库基础架构中的新的交易中。在这种场景下,数据区块例如也可以包括一个或多个交易,其中,在简单的场景下,数据区块涉及单个交易。
结合本公开,术语“Nonce”可能涉及加密nonce(nonce是“used only once(仅使用一次)”[2]或者“number used once(使用一次的数字)”[3]的缩写)。特别是,Nonce指示个体的数字或者优选在相应的上下文、例如交易、数据通信中仅使用一次的字母组合。
结合本公开,术语“区块链的(给定)数据区块的先前的数据区块”例如可能涉及紧接在(给定)数据区块之前的区块链的数据区块。替换地,术语“分布式数据库的(给定)数据区块的先前的数据区块”也可能涉及给定数据区块之前的区块链的所有数据区块。由此,可以在直接在前的数据区块(或者其交易)或者给定数据区块之前的所有数据区块(或者相应的交易)上,确定链接校验和或者交易校验和。
在本公开的上下文中,术语“区块链节点”、“节点”、“分布式数据库的基础架构的节点”、“挖掘节点”等,可能涉及设备、例如移动设备、无线通信设备、计算机、智能电话、客户端或者进行与分布式数据库、例如区块链相关联的操作的参与者[1],[4],[5]。这种节点例如可以执行分布式数据库或者相应的数据区块的交易,或者可以借助新的数据区块,将包括新的交易的新的数据区块插入分布式数据库中。特别是,可以由受信任的节点(例如挖掘节点)或者仅由受信任的节点来实现这种验证和/或链接。受信任的节点是如下节点,该节点具有附加的安全措施(例如防火墙、对节点的访问限制等),以避免对节点进行操纵。替换地或者附加地,在链接新的数据区块时,受信任的节点例如可以将节点校验和(例如数字签名或者证书)保存在新的数据区块中。由此,可以提供指示相应的数据区块由特定节点插入或者指示发起者的证明。
作为一般规则,设备或者多个设备可以由技术系统和/或工业工厂和/或自动化网络和/或制造工厂的设备来实现,这些设备也可以是分布式数据库的基础架构的节点。由此,设备可以是移动设备或者物联网的设备,这些设备也可以是分布式数据库的基础架构的节点。节点例如可以包括至少一个处理器,例如用于执行其以计算机实现的功能。
在本公开的上下文中,术语“区块链启示器(oracle)”等可能涉及包括安全模块的节点、设备或者计算机,安全模块具有软件保护机制(例如加密方法)、机械保护机构(例如可锁定的壳体)或者电气保护措施、例如篡改保护或者如下保护系统,在未经授权使用/修改区块链启示器的情况下,该保护系统将安全模块的数据删除。安全模块例如可以包括计算校验和、例如交易校验和或者节点校验和所需的加密密钥。
术语“计算机”或者“设备”可能涉及计算机(系统)、客户端、智能电话、设备或者服务器,其分别布置在区块链外部,或者不是分布式数据库基础架构的参与者,即不执行分布式数据库的操作,或者简单地在不执行交易、插入数据区块的情况下取回这些操作,或者计算工作证明。替换地,术语“计算机”或者“设备”也可能涉及分布式数据库的基础架构的节点。换句话说,设备特别是分别可以实现分布式数据库基础架构的节点或者区块链和分布式数据库外部的设备。分布式数据库基础架构外部的设备例如可以访问分布式数据库的数据、例如交易或者控制交易。分布式数据库基础架构外部的设备可以由节点例如借助智能合约和/或区块链启示器来控制。例如,如果通过节点来实现对设备、例如作为节点或者分布式数据库基础架构外部的设备实现的设备的控制,则这可以经由特别是保存在分布式数据库的交易中的智能合约来进行。
引用文献列表
[1]Andreas M.Antonopoulos“Mastering Bitcoin:Unlocking DigitalCryptocurrencies”,O'Reilly Media,December 2014
[2]Roger M.Needham,Michael D.Schroeder“Using encryption forauthentication in large networks of computers”ACM:Communications of theACM.Vol 21,Nr.12Dec.1978,
[3]Ross Anderson“Security Engineering.A Guide to Building DependableDistributed Systems”Wiley,2001
[4]Henning Diedrich,,Ethereum:Blockchains,Digital Assets,SmartContracts,Decentralized Autonomous Organizations”,CreateSpace IndependentPublishing Platform,2016
[5]“The Ethereum Book Project/Mastering Ethereum”https://github.com/ethereumbook/ethereumbook,5.10.2017
[6]Leemon Baird“The Swirlds Hashgraph Consensus Algorithm:Fair,Fast,Byzantine Fault Tolerance”,
Swirlds Tech Report SWIRLDS-TR-2016-01,31.5.2016
[7]Leemon Baird“Overview of Swirlds Hashgraph”,31.5.2016
[8]Blockchain Oracles,https://blockchainhub.net/blockchain-oracles/
(2018年7月12日检索)
应当理解,上面提到的特征以及下面还要说明的特征,不仅可以在所指出的各个组合中使用,而且可以在其它组合中或者单独使用,而不脱离本发明的范围。
附图说明
图1示意性地示出了根据各种示例的包括区块链基础设施和诸如oracle的各种节点的系统。
图2是根据各种示例的方法的流程图。
图3是根据各种示例的方法的流程图。
图4示意性地示出了根据各种示例的第一地理位置与第二地理位置之间的比较。
图5示意性地示出了根据各种示例的一个或多个时间戳与一个或多个时序约束之间的比较。
图6示意性地示出了根据各种示例的多个测量数据集的处理后的原始数据样本之间的比较。
图7是示出根据各种示例的图1的系统的运行的功能流程图。
图8是根据各种示例的方法的流程图。
具体实施方式
本公开的一些示例一般地提供多个电路或者其它电气设备。对电路和其它电气设备以及它们各自提供的功能的所有引用,不旨在局限于仅涵盖这里示出并且描述的内容。虽然可能对所公开的各种电路或者其它电气设备分配了特定的标记,但是这些标记不旨在限制对电路和其它电气设备的操作的范围。这些电路和其它电气设备可以基于期望的电气实现的特定类型,以任意方式彼此组合和/或分离。应当认识到,这里公开的任意电路或者其它电气设备可以包括任意数量的微控制器、图形处理器单元(graphics processorunit,GPU)、集成电路、存储设备(例如闪存(FLASH)、随机存取存储器(RAM)、只读存储器(read only memory,ROM))、电可编程只读存储器(electrically programmable readonly memory,EPROM)、电可擦除可编程只读存储器(electrically erasableprogrammable read only memory,EEPROM)或者它们的其它合适的变体)以及彼此协作以执行这里公开的操作的软件。此外,电气设备中的一个或多个可以被配置为执行在非暂时性计算机可读介质中实施的程序代码,非暂时性计算机可读介质被编程为执行所公开的任意数量的功能。
下面,将参考附图详细描述本发明的实施例。应当理解,下面对实施例的描述不应当视为限制性的。本发明的范围不旨在由下面描述的实施例或者由附图来限制,附图应当视为仅仅是说明性的。
附图应当视为是示意性的表示,并且在附图中示出的元素不一定是按比例示出的。相反,表示不同的元素,使得它们的功能和一般目的对于本领域技术人员是显而易见的。在附图中示出或者这里描述的功能块和/或框、设备、部件或者其它物理或功能单元之间的任意的连接或者耦合,也可以通过间接的连接或者耦合来实现。也可以通过无线连接来建立部件之间的耦合。可以以硬件、固件、软件或者其组合来实现功能块和/或框。
下面,描述有助于由oracle提供的验证测量数据集的技术。作为一般规则,oracle可以通过硬件oracle和/或软件oracle来实现。硬件oracle可以(例如使用传感器)测量物理事件的一个或多个物理可观测量。示例包括:测量电气特性、例如电流或者电压、流体流量或者流体体积、压力、温度、工业机械的操作活动(例如换油)、操作模式、打开/关闭等;物流、例如派遣、经过航路点(waypoint passing,)、投递等。软件oracle可以提供指示软件定义事件的测量数据,例如网站更新、数据可用性、服务中断等。
作为一般规则,可以将测量数据集与工业现场设备相关联。更具体地,可以将测量数据集与工业现场设备的操作的事件(例如硬件和/或软件事件)相关联。各种种类的工业现场设备可以受益于这里描述的技术。举几个示例来说,例如诸如火车或者飞机或者轮船的车辆、涡轮机、海底设备、诸如磁共振成像或者计算机断层成像的医疗设备、机器人装配线、机器人操纵器等工业现场设备,都可以受益于这里描述的技术。工业现场设备的特定的种类和类型与这里描述技术的操作无关。
这里描述的各种示例有助于基于(i)与给定事件相关联的给定的测量数据集和(ii)参考数据集之间的一致性,来验证给定的测量数据集。参考数据集可以提供针对测量数据集的交叉检查。作为一般规则,存在各种选项可用于实现参考数据集。参考数据集可以实施为或者包括另一个测量数据集。例如,参考数据集可以包括也与同一给定事件相关联的一个或多个另外的测量数据集的一个或多个可观测量。替换地或者附加地,参考数据集可以包括一个或多个预先定义的约束。由此,可以获得关于同一个事件和/或事件的上下文(context)的独立的或者在很大程度上独立的信息,并且可以触发相应的比较。(i)测量数据集和(ii)参考数据集之间的比较,来检查关于所观察的事件的一致性。然后,基于比较的结果,可以触发或者不触发(选择性地触发)针对测量数据集的一个或多个验证措施。可以在分布式数据库处实现该一个或多个验证措施。
这些技术基于如下发现:通过针对同一个给定事件使用独立或者在很大程度上独立的措施,即测量数据集和参考数据集,可以识别与oracle相关联的故障或者舞弊。因此,可以提高针对测量数据集的信任等级。
作为一般规则,可以使用各种选项来实现验证措施。举几个示例来说,验证措施可以包括对测量数据集进行验证或者使测量数据集无效。例如,可以在分布式数据库中存储变量,其中,变量指示比较的肯定或者否定结果。变量也可以指示基础测量数据集,即,可以依据比较的结果,选择性地将测量数据集存储在分布式数据库中。此外,在缺乏一致性的情况下,可以相应地通知所涉及的利益相关方、即依赖于测量数据集的一个或多个节点。
各种示例基于如下发现:如果在区块链基础架构的挖掘节点处实现(i)给定的测量数据集与(ii)参考数据集之间的比较,即,如果比较逻辑至少部分驻留在区块链基础架构处,则可以提高验证措施中的信任等级。特别是,如果与在区块链基础架构外部的节点处检查这种一致性的参考实现相比,则可以实现信任等级的提高。一般来说,如果与分布式数据库基础架构外部的节点相比,则分布式数据库基础架构的节点可以具有更高的安全级别。替换地或者附加地,可以安全地跟踪由驻留在分布式数据库结构的挖掘节点处的逻辑实现的过程,以方便稍后进行审核。对这种逻辑的操纵可能很难或者难以掩饰。例如,在稍后检查测量数据集的有效性的情况下,可以检查作为针对有效性的检查的基础的度量(metric)的有效性。根据各种示例,也可以考虑已经进行了比较的测量数据集,或者甚至在检查比较的有效性时作为基础的原始数据样本。
根据各种示例,即使在分布式数据库的基础架构的挖掘节点处进行比较,也可以在作为基础的原始数据样本的起源地(origin)附近,即在oracle附近或者在oracle处,对测量数据集进行数字签名。更具体地,在各种示例中,测量数据集可以包括基于原始数据样本确定的数字签名(如果与基于处理后的原始数据样本确定的数字签名相比)。因此,跟踪作为基础的原始数据样本的有效性。借助包括数字签名的测量数据集,来防止后续对测量数据集进行操纵。为了提供数字签名,可以使用私-公密钥材料。然后,可以基于私-公密钥材料中的公钥,来检查数字签名的有效性,而使用公-私密钥材料中的私钥,来创建数字签名。
各种技术基于如下发现:对于各种种类和类型的原始数据样本,可以确定性能指示(indicator)。事件可以指示工业现场设备的操作特性。可以确定性能指示,其中,性能指示指定操作特性的一个或多个品质因数。因此,性能指示可以对应于处理后的原始数据样本。品质因数可以总结工业现场设备的操作。品质因数可以描述操作的异常。品质因数可以描述操作特性的平均值。
作为一般规则,测量数据集可以包括性能指示或者可以由性能指示来实现。更具体地,包含在测量数据集中的处理后的原始数据样本可以对应于性能指示。
作为一般规则,可以基于原始数据样本,考虑与工业现场设备相关联的一个或多个操作约束,来确定性能指示。例如,依据特定类型的工业现场设备,不同的操作约束可以规定什么信息对于工业现场设备的性能是重要的。举例来说:对于立体照相机,从图像传感器获得图像的刷新率中的死区时间,可以是重要的性能指示;而另一方面,对于火车车厢的盘式制动器,振动频谱的特定部分内的频谱功率密度,可以是重要的性能指示。换句话说,更一般地来说:性能指示对于工业现场设备的类型可以是唯一的,并且可以将性能指示与工业现场设备的操作特性相关联。
性能指示一般可以包括关于工业现场设备的操作特性的人类可理解的应用层数据。也就是说,可以经由人机接口直接输出的处理后的信息,可以包含在性能指示中。
作为一般规则,性能指示可以小于原始数据样本。性能指示可以浓缩或者总结一般地包含在原始数据样本中的信息。例如,确定性能指示可以包括应用低通滤波器、识别最大值或者最小值、检测原始数据样本中的事件等。
举几个示例来说,性能指示可以包括以下内容中的至少一个:测量数据集的时间平均数据样本;测量数据集的峰值数据样本;测量数据集的事件特性;或者工业现场设备的时间平均使用特性。
各种技术采用分布式数据库来存储与工业现场设备相关联的数据。一般来说,可以将数据在分布式数据库中的存储,称为链上存储。特别是,各种技术采用区块链来实现分布式数据库。虽然将结合由区块链实现分布式数据库的场景来描述各种技术,但是类似的技术可以应用于其它种类和类型的分布式数据库、例如无区块数据库、DLTS等。为了简单起见,将在所有这些种类的分布式数据库中的存储,称为链上存储(但是这不局限于区块链)。
根据各种示例,可以有助于测量数据集的链上存储,即存储在区块链或者另一个分布式数据库上。根据各种示例,可以有助于原始数据样本的链下存储,即存储在非分布式数据库上。可以以交叉引用的方式,来存储测量数据集和原始数据样本。由于一般来说原始数据样本的大小相对大,因此不必在链上存储原始数据样本,有助于放宽对区块链基础架构施加的计算要求。同时,通过在链上存储性能指示,可以提供针对操纵的高的安全性。例如,如果原始数据样本被操纵,则这种操纵也可能导致测量数据集改变(否则操纵将没有意义)。通过将对应的原始数据样本与在链上存储的测量数据集进行比较,这可以有助于识别操纵。特别是,测量数据集可以包括性能指标;然后可以在链上存储该性能指标,而可以在链下存储原始数据样本。
图1示意性地示出了系统70。在图1的示例中,系统70包括两个oracle 101、102,但是一般来说可以仅包括一个oracle或者包括三个或者更多个oracle。oracle 101、102中的每一个都包括相应的控制电路105。例如,控制电路105可以包括处理器和非易失性存储器。处理器可以从非易失性存储器加载程序代码并执行程序代码,以执行各种功能,例如:对用于测量数据集的数据进行测量,测量数据集指示事件的一个或多个物理可观测量;传输测量数据集;处理测量数据集的原始数据;触发测量数据集与参考数据集之间的比较,以便由此对测量数据集进行验证;例如使用公私加密密钥材料,来确定测量数据集的(例如处理后的原始数据样本、例如性能指示的、甚至原始数据样本的)数字签名;等。
更详细地,如图1所示,oracle 101、102中的每一个包括输入接口106,例如用于硬件oracle的传感器设备或者用于软件实现的输入接口的通信接口。oracle 101、102的输入接口106被配置为用于测量或者确定事件81的可观测量85、86。
作为一般规则,事件81可以是物理事件,并且可观测量85、86可以是物理可观测量。事件81也可以是软件事件,可观测量85、86将对应于软件可观测量85、86。
oracle 101、102可以向网络71、例如因特网,提供相应的测量数据集91、92。由oracle 101提供的测量数据集91指示事件81的可观测量85;而由oracle 102提供的测量数据集92指示事件81的可观测量86。特别是,可观测量85可以与可观测量86不同。更一般地来说,不同的oracle可以提供指示不同的可观测量的测量数据集。仅举一个示例来说,第一oracle可以提供指示温度的测量数据集;而第二oracle提供指示压力的测量数据集。由此,可以获得事件81的独立信息和多个措施。这有助于对测量数据集91、92进行可靠的验证。
有时,将原始数据样本包括在测量数据集91、92中是不可行或者不需要的。相反,可以在向通信网络71传输测量数据集91、92之前,分别在oracle101、102处实现一些数据压缩或者数据预处理。因此,测量数据集91、92可以包括处理后的原始数据样本。举例来说,测量数据集91、92可以包括相应的性能指示,这些性能指示对应于或者指示事件81的操作特性的一个或多个品质因数。
对原始数据样本进行预处理(使得经由接口107输出的测量数据集91、92包括处理后的原始数据样本)的优点在于,减少在数据处理管道的下游需要的计算资源,例如在区块链基础设施(架构)150的挖掘节点151-153处需要的计算资源,或者在网络71处需要的网络资源。例如,在挖掘节点151-153中的一个处实现相应的测量数据集91、92(包括已经处理后的原始数据样本、例如性能指示)与相应的参考数据集的比较,可能需要更少的计算资源。特别是,如在上面所提到的,如果与原始数据样本相比,则对原始数据样本进行预处理可以使测量数据集91、92的数据大小减小,并且对原始数据样本进行预处理例如丢弃冗余或者不必要的信息。因此,在实现测量数据集91、92与参考数据集的比较时需要处理的数据的量减小。
作为一般规则,原始数据样本可以对应于(包括多个层的处理堆栈中的)传感器设备的低层输出;而原始数据样本可以对应于oracle或者传感器设备的输出;而处理后的测量数据可以对应于根据处理算法进行了一些处理之后的原始数据样本。如果与原始数据样本相比,可能存在处理后的原始数据样本更小的趋势。举例来说:2D立体照相机可以输出具有像素的2D图像,每个像素具有特定的颜色或者亮度值。然后,可以对原始数据样本进行处理,以便例如使用对象识别来标识2D图像中的对象。可以利用边框或者位置标签以及指示对象的类型(例如车辆、人、树等)的类别标签来标识对象。这可以实现原始数据样本。处理后的原始数据样本也可以包括通过给定帧的多个2D图像的比较获得的对象的距离。在这种场景下,如果与原始数据样本相比,处理后的原始数据样本可能大大减小。例如,如果与像素的集合(例如几百万像素)、每个像素具有指示其亮度等的n位值相比,具有相关联的类别和距离的对象的列表可能大大减少。虽然结合使用2D立体照相机作为测量数据集的来源的实现,描述了上述示例,但是这里描述的技术不局限于这种示例。可以想到测量数据集的各种其它种类和类型的来源。
可以对经由oracle 101、102的通信接口107输出的测量数据集91、92可以进行数字签名。因此,测量数据集91、92可以包括数字签名。在一些示例中,可以基于原始数据样本,来确定数字签名,使得测量数据集包括原始数据样本的数字签名。例如,oracle 101、102的控制电路105可以被配置为用于确定签名。通过在原始数据样本的起源地(origin)附近和/或甚至基于原始数据样本,例如在输入接口106旁边,确定签名,可以保护对测量数据集91、92的操纵。由于在原始数据样本的起源地附近,即在数据处理路径的非常上游的点处,确定数字签名,因此可以减轻数据处理路径下游的许多攻击向量。
在图1的示例中,通信网络71还连接到区块链基础设施150。区块链基础设施150包括多个挖掘节点151-153,挖掘节点151-153持有并且访问区块链159。挖掘节点151-153中的每一个都可以尝试将变量作为交易存储在区块链159中,即写入区块链159。例如,可以在区块链159上实现智能合约90。智能合约90可以定义可自执行的程序代码;为此,挖掘节点151-153可以提供主机环境来执行这种程序代码。
图1的插图还示出了关于区块链基础设施150的挖掘节点151-153的细节(图1中的插图用虚线示出)。挖掘节点151-153中的每一个包括处理器155。处理器155可以从存储器157加载程序代码,并且可以执行程序代码。处理器155可以经由接口156例如与网络71通信。挖掘节点151-153中的每一个可以存储区块链159的复制品。例如,在从存储器157加载程序代码时,处理器155可以被配置为执行以下内容中的一个或多个:例如通过比较测量数据集与参考数据集,来检查多个数据集之间的一致性;例如依据比较的结果,选择性地触发一个或多个验证措施;检查测量数据集的数字签名;对原始数据样本进行处理,以获得测量数据集;等。
系统70还包括利益相关方节点111、112。每个利益相关方节点111、112包括处理器115,处理器115可以加载并执行由相应的非易失性存储器117存储的程序代码。利益相关方节点111、112经由相应的接口116连接到网络71。利益相关方节点111、112中的每一个可以由相应的操作者操作。操作者可能依赖于例如由区块链159的智能合约90实现的功能。操作者可能依赖于测量数据集91和/或测量数据集92的有效性。因此,利益相关方节点111-112中的每一个,与对测量数据集91和/或测量数据集92的验证感兴趣的操作者相关联。
系统70还包括非分布式数据库72。不在多个节点上复制非分布式数据库72。其不同于区块链159。其可以实现链下存储。
接下来,结合下面的附图,来说明关于系统70的运行的细节。
图2是根据各种示例的方法的流程图。例如,图2的方法可以由oracle 101,例如通过控制电路105的处理器从控制电路的存储器加载相应的程序代码来执行。根据图2的方法也可以由区块链基础设施150的挖掘节点151,例如在从存储器157加载程序代码时由处理器155来执行。在一些示例中,根据图2的方法的一部分可以由oracle 101执行,而其它部分可以由挖掘节点151执行。
在框5501中,获得原始数据样本。原始数据样本指示工业现场设备的一个或多个操作特性。例如,可以从一个或多个传感器设备,接收原始数据样本。可以从软件oracle获得原始数据样本的至少一部分。
接下来,在框5502处,对原始数据样本进行处理。作为框5502的输出,获得测量数据集。作为一般规则,可以使用各种选项来进行处理。在一些示例中,基于原始数据样本,来确定性能指示。性能指示可以对应于工业现场设备的一个或多个操作特性的一个或多个品质因数。
作为一般规则,在框5502中,可以使用各种选项来确定性能指示。举例来说,可以使用性能度量算法(performance metric algorithm)来确定性能指示。性能度量算法可以将原始数据样本变换为性能指示。例如,性能度量算法对于特定的工业现场设备或者特定类型的工业现场设备可以是唯一的。性能度量算法可以减小数据的量,使得包括性能指示的测量数据集的数据大小,小于原始测量样本的数据大小。
在框5503中,触发包括处理后的原始数据样本的测量数据集的存储。可以将测量数据集存储在分布式数据库、例如区块链159中。框5503中的触发存储例如可以包括:将测量数据集传输到区块链基础设施150,例如传输到适当的挖掘节点,并且请求存储在区块链159中。
图3是根据各种示例的方法的流程图。图3的方法可以在从存储器157加载相应的程序代码时,由挖掘节点151-153中的一个的处理器155来执行。
在框5001处,获得测量数据集。例如,可以从诸如oracle 101的oracle获得测量数据集。
根据一些示例,框5001可以包括对原始数据样本进行(预)处理。这可以对应于或者包括上面参考框5502所说明的技术(参见:图2)。可以从oracle、例如oracle 101接收原始数据样本。作为一般规则,可以通过智能合约、例如智能合约90来,实现在框5001处的处理。
根据各种示例,在框5001处对原始数据样本的这种处理,可以基于预先定义的算法。有时,这种算法可以具有相关联的有效期。例如,算法可以由利益相关方节点111、112的操作者商定。对应的协议可以定义有效期。在这种场景中,如果原始数据样本的一个或多个时间戳与预先定义的算法的有效期一致,则可以在框5001中选择性地执行对原始数据样本的处理。例如,可以检查原始数据样本的时间戳是否在有效期内。这有助于避免使用过时的算法来进行处理。这在利益相关方随着时间的经过商定不同的算法或者算法的不同的参数的场景中可能有所帮助。
然后,在框5001处,可以将测量数据集与处理的时间戳相关联。替换地或者附加地,也可以将从框5001获得的测量数据集,与指示预先定义的算法和/或预先定义的算法的有效期的指示相关联。通过这些技术,可以方便框5001处的处理的后续审查/有效性检查。特别是,可以检查是否使用了适当的算法。这在利益相关方随着时间的经过商定不同的算法或者算法的不同的参数的场景中可能有所帮助。
在框5002处,获得参考数据集。例如,可以获得另一个测量数据集。该另一个测量数据集指示事件、即在框5001处获得测量数据的同一事件的一个或多个另外的可观测量。由另一个oracle提供该另一个测量数据。例如,可以从oracle 102获得测量数据集92,其中,测量数据集92指示事件81的可观测量86(参见图1)。
作为该另一个测量数据集的替换或者附加,也可以获得与事件相关联的一个或多个约束。
接下来,在框5003处,在框5001处获得的测量数据集与在框5003处获得的参考数据集之间进行比较。框5003可以包括:发送触发或者请求消息,以执行比较。框5003还可以包括:局部地、例如在相应的挖掘节点151-153处执行比较。例如,框5003可以包括:调用区块链的智能合约的对应的功能,例如调用区块链159的智能合约90的对应的功能(参见图1)。换句话说,在这种场景中,由智能合约提供该比较。该比较检查框5001的测量数据集与框5002的参考数据集之间的一致性。
作为一般规则,可以使用各种选项来实现框5003处的比较。比较可以与测量数据集的类型一起变化,更具体地,可以随着在框5001中获得的测量数据集所指示的可观测量的类型变化。举例来说,比较可以基于预先定义的协议,预先定义的协议指示比较的度量。度量可以定义用于比较所涉及的各种数据集的规则集。特别是,使用适当的度量,甚至可以对不同的可观测量进行比较,举几个示例来说,例如对温度与压力进行比较,或者对现场设备的操作统计与电力消耗进行比较。在一些示例中,可以通过机器学习算法来实现比较,对机器学习算法进行训练,以检测多个物理可观测量的行为中的异常。在其它示例中,可以以解析的方式来定义预先定义的规则集。
例如,可以通过度量来定义公差范围。公差范围可以指定测量数据集与参考数据集之间的偏差的特定的可接受范围。
根据各种示例,用于实现框5003处的比较的度量可以具有有效期。在框5003处使用的比较的度量的有效期,可以与在框5001处的处理的处理算法的有效期相当。例如,可以再一次检查与测量数据集相关联和/或与要进行比较的参考数据集相关联的一个或多个时间戳,是否与度量的有效期一致。这防止将过时的度量应用于测量数据集和参考数据集,来进行比较。例如,利益相关方可以不时地(重新)协商或者改变度量。特别是,在通过智能合约实现框5003中的比较的场景中,于是可以有助于检查测量数据集和/或参考数据集的一个或多个时间戳是否与有效期一致。例如,可以根据一个或多个时间戳,并且根据与智能合约或者智能合约的功能相关联的有效期,来选择实现比较的合适的智能合约或者智能合约的合适的功能。有时,在通过智能合约实现比较的场景中,无法简单地在不影响区块链的完整性的情况下从区块链中移除智能合约。因此,通过实现对有效期的检查,智能合约(或者更具体地,包括智能合约的交易或者区块)可以保留在区块链中;但是在有效期到期后不能用于进行比较。
此外,可以将比较的结果,与比较的时间戳和度量或者更具体地度量的有效期一起,存储在分布式数据库中。然后,可以进行是否应用了适当的有效的度量来实现比较的后续检查。
在一些示例中,可能发生如下场景,在该场景中,在框5003处检测到度量的有效期已经到期。在有效期到期时,可以例如通过向利益相关方节点111-112传输相应的请求,来触发利益相关方节点111-112之间的度量的重新协商。由此,可以连续确保在框5003处采用有效并且最新的度量来实现比较。
接下来,给出指示与事件相关联的一个或多个预先定义的约束的参考数据集的示例实现的几个示例。例如,约束可以是基于位置的。举例来说,测量数据集可以包括第一地理位置,并且一个或多个预先定义的约束可以包括第二地理位置。参考图4:例如,与测量数据集相关联的第一地理位置可以定义对应的oracle的位置的纬度和经度。第二地理位置702可以定义地理围栏或者地理区域。然后,框5003处的比较(参见图3)可以基于第一地理位置701与第二地理位置702之间的空间距离。在图4的示例中,第一地理位置701的纬度和经度在第二地理位置702的地理围栏内,由此第一地理位置701和第二地理位置702之间的空间距离为零。相应地,框5003处的比较(参见图3)可以产生肯定的结果。
在另一个示例中,比较可以考虑时域参数。在图5中示出了这种示例。在图5中,测量数据集包括例如与作为基础的原始数据样本相关联的多个时间戳711。例如,时间戳可以指示事件发生的时间。图5还示出了参考数据集的一个或多个预先定义的约束可以包括时序(timing)约束712。在图5的示例中,通过定义,时序约束712涉及如下时间窗,在该时间窗期间,允许/预计发生事件。然后,框5003中的比较可以基于一个或多个时间戳711与时序约束712之间的时域距离。在图5的场景中,时间戳711指示在时序约束712的时序窗内的时间,并且相应地,距离为0。相应地,框5003中的比较产生肯定的结果。
在图5中示出的使用时间窗的时序约束的这种实现仅仅是示例。可以想到其它示例。例如,时序约束可以定义阈值重复率。阈值重复率可以定义测量数据集所指示的事件重复的上限。在图5中,指出了指示事件发生的时间戳711之间的相关联的重复率713。例如,然后,可以将该测量重复率713与阈值重复率进行比较。
并非在所有场景中都需要使用依赖于一个或多个预先定义的约束的参考数据集的实现。如在上面所提到的,也可以基于多个测量数据集91、92之间的一致性,来实现框5003中的比较。在图6中示出了这种场景。在图6中,测量数据集91、92包括数据点的时间序列。数据点可以对应于处理后的原始数据样本、例如低通滤波后的原始数据样本等。例如,测量数据集91的数据样本可以指示压力,而测量数据集92的数据样本可以指示流体流量。如图6所示,在某个时间点,测量数据集91所指示的压力升高到预先定义的阈值761以上;而测量数据集92的流体流量下降到另一个预先定义的阈值762以下。比较可以检查在相关联的时间点处是否满足两个标准(即测量数据集91所指示的压力上升到阈值761以上,并且测量数据集92所指示的流体流速下降到阈值762以下),以便验证相关联的工业现场设备的流体流动路径的事件堵塞/阻塞。度量可以例如使用布尔(Boolean)逻辑等来,定义对应的规则集。度量可以定义阈值761、762。
从对图1至图4的描述中将认识到,在框5003处可以使用各种选项来实现比较。
再次转向图3,在框5004处,检查框5003的比较的结果。依据比较的结果,分别在框5005或者5006处选择性地触发一个或多个(肯定或者否定的)验证措施。一个或多个验证措施涉及测量数据集。特别是,可以在区块链处、例如在区块链159处,实现该一个或多个验证措施。
具体来说,如果在框5004处判断为比较产生了肯定的结果,即肯定地获得了对测量数据集和参考数据集的(交叉)验证,则可以在框5005处采取肯定的验证措施;否则,可以在框5006处采取否定的验证措施。因此,在比较产生肯定的结果的情况下,选择性地执行肯定的验证措施。
作为一般规则,例如结合框5005和5006,可以使用各种选项来实现肯定和否定的验证措施。举几个示例来说,可以作为执行框5005的一部分的肯定的验证措施,可以涉及将测量数据存储在区块链中、例如区块链159中。也可以适当地设置标志指示,将标志指示存储在区块链中、例如区块链159中。标志指示可以指示(交叉)验证是否成功。又一个验证措施可以包括将对应的报告消息传输到利益相关方节点111、112中的至少一个。由此,可以适当地通知对验证感兴趣的各方。
在比较产生否定的结果的情况下,作为框5006的执行的一部分,可以触发结算(settlement)过程。对于在第一测量数据集与第二测量数据集之间存在偏差的情况,结算过程可以包括预先定义的规则集或者工作流程。例如,结算可以与提供第一测量数据集的第一oracle(参见图1中的oracle 101)的信任等级和/或提供第二测量数据集的第二oracle(参见图1中的oracle 102)的信任等级相关联。然后,如果在第一测量数据集与第二测量数据集之间存在偏差,则具有较大的相关联的信任等级的特定测量数据集可能占上风。作为框5006的一部分,可以通知利益相关方节点111、112。
图7是示出系统70的操作和功能的功能流程图。特别是,图7示出了关于区块链基础设施150的挖掘节点151的操作的细节。
在3001处,挖掘节点151例如经由相应的接口156接收第一测量数据集91。例如,可以经由广域网或者有线通信线路(参见图1,网络71)进行通信。通信也可以包括无线传输。为了方便进行通信,可以在区块链基础设施150处记录对应的oracle 101。更具体地,可以在挖掘节点151处记录oracle 101。可以使用相应的唯一的凭证。
此外,在挖掘节点151处记录oracle 102。相应地,在3002处,挖掘节点151接收测量数据集92。
如图7所示,相应地,挖掘节点151获得指示事件81的一个或多个可观测量85的测量数据集91,此外获得指示事件81的一个或多个另外的可观测量86的测量数据集92。作为一般规则,虽然在图7的场景中,挖掘节点151接收多个测量数据集91、92,但是在其它示例中,挖掘节点也可以仅接收单个测量数据集(例如测量数据集91),此外接收参考数据集,参考数据集包括与事件81相关联的一个或多个预先定义的约束(在图7中未示出该场景)。
接下来,在3003处,将测量数据集91馈送到智能合约61(更具体地,例如通过相应的函数调用定义的智能合约61的相应的实例),并且在3004处,将测量数据集92馈送到智能合约61的另一个实例。在此,实现切换点(switch point)功能。特别是,智能合约61可以检查相应的测量数据集91、92是包括处理后的原始数据样本,还是包括(未处理的)原始数据样本。原始数据样本可以是相应的传感器设备的原始的未经预处理的输出。另一方面,利用相应的处理算法对处理后的数据样本进行了处理,例如以便将信息浓缩到更小或者更大的程度。在这里描述的各种示例中,处理后的原始数据样本可以对应于如下性能指示,该性能指示包括相关联的工业现场设备的操作特性的一个或多个品质因数。事件81可以与这些操作特性对应或者相关联。
因此,由智能合约61实现的切换点功能,检查相应的测量数据集91、92是包括原始数据样本,还是包括处理后的原始数据样本。在测量数据集91、92包括处理后的原始数据样本的情况下,在3005和3006处将处理后的原始数据样本分别转发到另一个智能合约65。另一方面,在3007和3008处,将原始数据样本转发到智能合约62的相应的实例。智能合约62实现对原始数据样本的处理。
作为一般规则,智能合约61、62、65中的每一个可以与有效期相关联。有效期可以指示相应的智能合约61、62、65的到期时间。这使得能够实现相应的输入数据的一个或多个时间戳是否与有效期一致的检查。如果不是,则可以检查是否存在具有另一个有效期的更新后的智能合约。此外,稍后可以检查是否使用了适当的智能合约,来实现各种功能。例如,可以将相应地执行的智能合约的标识存储在区块链159中,以方便进行这种审核。测量数据集91、92和/或参考数据集也可以包括时间戳,可以将时间戳与有效期进行比较。
作为一般规则,测量数据集91和/或92可以包括相应的传感器设备的标识。
作为另外的一般规则,测量数据集91和/或92可以包括相应的传感器设备的地理位置、例如纬度和经度。
作为另外的一般规则,在测量数据集91、92包括已经经过预处理的原始数据样本的情况下,测量数据集91和/或92可以包括相应的配置数据集,该相应的配置数据集指示用于对原始数据样本进行(预)处理的处理算法。
作为另外的一般规则,测量数据集91和/或92可以包括相应的数字签名。例如,可以基于公私加密密钥材料中的私钥来确定数字签名。在一些示例中,基于原始数据样本,来确定数字签名。
接下来,进一步详细说明智能合约62的功能。智能合约62实现用于对原始数据样本进行处理的逻辑。智能合约62还实现用于触发原始数据样本在非分布式数据库72中的存储的逻辑。特别是,在3009和3010处,例如利用相应的正确的命令,将原始数据样本传输至非分布式数据库72。智能合约62可以再一次实现切换点功能。
可以使用智能合约62的对应的功能63、64,来对原始数据样本进行处理。这可以与预先定义的算法一致。预先定义的算法可以具有相关联的有效期。可以将有效期与原始数据样本的时间戳进行比较,以检查是否使用了例如由利益相关方商定的适当的功能63、64。在区块链基础设施150处实现的这种处理的优点在于,例如结合所采用的用于处理的算法,可以提供更高的信任等级。另一方面,可能必须观察与所需要的计算资源和/或通信网络71相关联的特定的限制。就这一点而言,从图7将认识到,仅在原始数据样本包含在测量数据集91、92中的情况下,调用智能合约62;否则,在3005和3006处绕过智能合约62的执行。这种绕过可以减少所需要的计算资源、例如网络71上的带宽和数据流量以及挖掘节点151处的处理/存储器资源。
根据各种示例,可以通过定义有效期的开始时间和有效期的停止时间的两个时间戳,来定义智能合约61、62、65中的任意一个的有效期。由此,可以确定测量数据集91、92的相应的时间戳与有效期之间的时域距离。可以检查是否使用了有效的智能合约61-62、65。也可以实现如下检查,即,在稍后的时间点是否使用了适当的智能合约61-62、65。
接下来,说明关于在3011处执行的智能合约65的细节。为了创建高的信任度,例如通过在框5005(参见图3)处执行适当的验证措施来对测量数据集91以及可选地对测量数据集92进行验证,应当基于多个独立的数据源之间的一致性。特别是,可以依赖于从不同的oracle 101、102获得的测量数据集91、92。根据各种示例,oracle 101、102可以由不同的利益相关方来操作。例如,可观测量85可以涉及输入到作为工业现场设备的泵的可变功率;可观测量86可以涉及泵的流体流速。可观测量的其它示例可以包括添加到由泵处理的流体中的化学添加剂的质量或者体积的变化。然后,由泵处理的流体的流体流动路径的堵塞/阻塞可以与以下可观测量相关联:可观测量85指示输入功率超过特定的阈值;可观测量86指示流体流速下降到特定的阈值以下;并且与化学添加剂的质量或者体积相关联的另一个可观测量,可以指示化学添加剂没有消耗。
可以在用于比较在智能合约65处使用的各种测量数据集的度量中,考虑这种相关等,以实现比较。举一个明确的示例:
IF“输入功率最大”AND“没有流速”AND“化学添加剂没有消耗”AND“各种可观测量的时间戳具有阈值以下的时域距离”,THEN在时间“时间戳”处“事件等于堵塞/阻塞”。
基于同一事件的多个可观测量之间的这种一致性,从本质上防止操纵各个oracle的攻击向量,因为成功的攻击将必须操纵所有数据源。
虽然在上面说明的示例中使用了多个测量数据集,但是一般来说,可以在单个测量数据集与一个或多个预先定义的约束之间实现比较。可以在时域中定义预先定义的约束的示例。例如,在此,仅可以获得测量数据集91。时序约束可以包括阈值重复率。例如,可以指定事件“堵塞/阻塞”每周只能发生一次。替换地或者附加地,时序约束可以包括时序窗。例如,可以定义事件“堵塞/阻塞”仅在早晨或者晚上发生。在此,即使基于单个测量数据集进行操作,也可以实现有意义的比较。
除了这种时域约束,也可以使用空间域约束。例如,可以使用诸如来自GPS接收器/GPS设备的纬度/经度的地理信息。在此,oracle 101可以提供测量数据集91(可选地,其在时间戳中的标识)以及其地理位置。所有这些信息都可以包含在数字签名中。然后,挖掘节点151可以基于oracle 101的地理位置和预先定义的参考地理位置,来实现比较。
作为一般规则,可以从非分布式数据库72获得参考数据集,特别是当包括一个或多个预先定义的约束时。替换地或者附加地,例如也可以将参考数据集与智能合约相关联地存储在区块链中。
在比较的结果是肯定的情况下,在3012处,可以将测量数据集91和/或测量数据集92,或者更具体地处理后的原始数据样本,存储在区块链159中(参见图3:框5005)。如图7所示,然后,在3013处,在区块链基础设施150的各种挖掘节点151-152之间,复制区块链159。利益相关方节点111-112可以访问相应的挖掘节点151-152。
如在上面所提到的,各种智能合约、特别是智能合约65可以与有效期相关联。在有效期到期时,可以触发在各种利益相关方节点111-112之间在智能合约65处用于进行比较的度量的重新协商。例如,如果利益相关方同意在用于比较的度量中使用的某些标准太严格或者太宽松,则可能发生度量的这种改变。一旦对相应的智能合约65进行了更新,则在区块链基础设施150的各种挖掘节点151-152之间,对包含在包括新的智能合约65的区块链159中的对应的交易进行同步。对有效期进行更新。也可以对上游的智能合约61、62进行更新,使得智能合约61、62调用智能合约65的正确的更新后的版本。智能合约61、62也可以配备有逻辑,用于例如基于包含在测量数据集91、92中的时间戳与智能合约65中的变量所指示的有效期之间的比较,来自主地识别智能合约65的适当的版本。
图8是根据各种示例的方法的流程图。
在框5011处,在挖掘节点151处记录oracle 101,在挖掘节点151处记录oracle102。
在框5012处,oracle 101将测量数据集91提供给挖掘节点151。在框5013处,oracle 102将测量数据集92提供给挖掘节点151。
现在,仅结合在框5012处提供的测量数据集91,示出了框5015-5017;但是对于在5013处提供的测量数据集92,也可以执行类似的框(在图8中未示出)。
在框5015处,检查在框5012处获得的测量数据集91包括原始数据样本、还是处理后的原始数据样本。在测量数据集91包括原始数据样本的情况下,则所述方法在框5016处继续。在此,对原始数据样本进行处理,以获得处理后的原始数据样本。也可以触发原始数据样本在非分布式数据库72中的存储。
框5016中的对原始数据样本的处理可以基于预先定义的算法。特别是,如果原始数据样本的一个或多个时间戳与预先定义的算法的有效期一致,则可以选择性地执行处理。可以将预先定义的算法存储在区块链159中。也可以将指示预先定义的算法的有效期的指示,存储在区块链159中。也可以将原始数据样本的时间戳,或者至少测量数据集的推导出的时间戳,存储在区块链159中。
在框5017处,检查预先定义的协议是否肯定地确认各种利益相关方已经商定了在区块链基础设施150处对原始数据样本进行处理(即,如果合法地执行了框5016)。
如果在框5015处确定测量数据集91包括处理后的原始数据样本(而不是原始数据样本),则执行框5018。在框5018处,检查各种利益相关方是否已经商定在区块链外部,即在数据处理流的上游,对原始数据样本进行处理。
在框5017处的检查或者框5018处的检查成功的情况下,所述方法在框5019处继续。
框5019作为输入,获得测量数据集91、92的各种处理后的原始数据样本。在框5019处,实现多个测量数据集之间的比较,或者更一般地,实现测量数据集与参考数据集之间的比较。
在框5020处,如果达到框5019的比较的肯定的结果,则实现一个或多个肯定的验证措施。例如,可以将一个或多个测量数据集存储在区块链159中。也可以将框5019的比较结果存储在区块链159中。框5020可以包括:将相应的数据写入交易,并且将交易链接至区块链的新的区块中。可以在多个挖掘节点151-153上同步并且复制区块链。
总之,描述了方便在区块链基础架构中的测量数据集与参考数据集之间实现比较的技术。这有助于以可以由各种利益相关方进行审核的方式,来实现有效性检查。比较是透明的,并且可以在稍后的时间点重建比较。
虽然针对特定的优选实施例示出和描述了本发明,但是其它本领域技术人员在阅读并且理解说明书时,容易想到等同方案和变形方案。本发明包括所有这些等同方案和变形方案,并且本发明仅由所附的权利要求的范围来限制。
为了进行说明,虽然结合基于原始数据样本确定性能指示,描述了各种示例,但是在其它示例中,可以想到其它类型的对原始数据样本的处理。
为了进一步进行说明,虽然描述了使用区块链来实现分布式数据库的各种示例,但是在其它场景中,可以想到其它种类和类型的分布式数据库。
Claims (13)
1.一种分布式数据库(159)的基础架构(150)的挖掘节点(151-153),所述挖掘节点(151-153)包括控制电路(155-157),所述控制电路被配置为用于:
-获得(5001)测量数据集(91),所述测量数据集指示事件(81)的一个或多个可观测量(85),所述测量数据集(91)包括处理后的原始数据样本,
-在所述测量数据集与参考数据集之间进行(5003)比较,所述参考数据集包括与所述事件(81)相关联的一个或多个预先定义的约束(702、711、712)或者另一个测量数据集(92)中的至少一个,所述另一个测量数据集指示所述事件(81)的一个或多个另外的可观测量(86),并且
-根据所述比较的结果:选择性地触发针对所述测量数据集(91)的一个或多个验证措施(5005、5006),在所述分布式数据库处实现所述一个或多个验证措施。
2.根据权利要求1所述的挖掘节点,
其中,所述测量数据集包括第一地理位置(701),
其中,所述一个或多个预先定义的约束包括第二地理位置(702),
其中,所述比较基于所述第一地理位置与所述第二地理位置之间的空间距离。
3.根据权利要求1或2所述的挖掘节点,
其中,所述测量数据集包括一个或多个时间戳(711),
其中,所述一个或多个预先定义的约束包括时序约束(712、73),
其中,所述比较基于所述一个或多个时间戳与所述时序约束之间的时域距离。
4.根据权利要求3所述的挖掘节点,
其中,所述时序约束包括所述事件的阈值重复率。
5.根据前述权利要求中任一项所述的挖掘节点,其中,所述控制电路还被配置为用于:
-从oracle(101)接收原始数据样本,并且
-对所述原始数据样本进行处理,以获得包括所述处理后的原始数据样本的所述测量数据集。
6.根据权利要求5所述的挖掘节点,
其中,所述处理基于具有有效期的预先定义的算法,
其中,如果所述原始数据样本的一个或多个时间戳与所述预先定义的算法的有效期一致,则选择性地对所述原始数据样本进行处理,
其中,可选地将所述测量数据集与以下内容中的至少一个相关联:所述处理的时间戳,或者指示所述预先定义的算法的指示,或者所述预先定义的算法的有效期。
7.根据前述权利要求中任一项所述的挖掘节点,
其中,所述事件与工业现场设备的一个或多个操作特性相关联,
其中,所述处理后的原始数据样本对应于所述一个或多个操作特性的一个或多个品质因数。
8.根据前述权利要求中任一项所述的挖掘节点,其中,所述控制电路还被配置为用于:
-触发所述原始数据样本在非分布式数据库中的存储。
9.根据前述权利要求中任一项所述的挖掘节点,
其中,所述比较基于具有有效期的预先定义的度量,
其中,所述一个或多个验证措施包括:将所述比较的结果存储在所述分布式数据库中,并且将所述比较的时间戳存储在所述分布式数据库中,并且所述将预先定义的度量存储在所述分布式数据库中。
10.根据权利要求9所述的挖掘节点,其中,所述控制电路还被配置为用于:
-在所述预先定义的度量的有效期到期时,在多个利益相关方节点之间触发所述预先定义的度量的重新协商。
11.根据前述权利要求中任一项所述的挖掘节点,
其中,所述测量数据集包括所述原始数据样本的数字签名。
12.一种以计算机实现的方法,所述方法由分布式数据库(159)的基础架构(150)的挖掘节点(151-153)执行,所述方法包括:
-获得测量数据集(91),所述测量数据集指示事件(81)的一个或多个可观测量(85),所述测量数据集(91)包括处理后的原始数据样本,
-在所述测量数据集与参考数据集之间进行比较,所述参考数据集包括与所述事件(81)相关联的一个或多个预先定义的约束(702、711、712)或者另一个测量数据集(92)中的至少一个,所述另一个测量数据集指示所述事件(81)的一个或多个另外的可观测量(86),以及
-依据所述比较的结果:选择性地触发针对所述测量数据集(91)的一个或多个验证措施(5005、5006),在所述分布式数据库处实现所述一个或多个验证措施。
13.根据权利要求12所述的方法,其中,所述方法由根据权利要求1至11中任一项所述的挖掘节点执行。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19175903.4 | 2019-05-22 | ||
EP19175903.4A EP3742304B1 (en) | 2019-05-22 | 2019-05-22 | Validation of measurement datasets in a distributed database |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111984725A true CN111984725A (zh) | 2020-11-24 |
CN111984725B CN111984725B (zh) | 2024-10-25 |
Family
ID=
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113779641A (zh) * | 2021-09-02 | 2021-12-10 | 新奥数能科技有限公司 | 数据配置方法、装置、计算机设备及计算机可读存储介质 |
CN114071561A (zh) * | 2021-12-07 | 2022-02-18 | 中国联合网络通信集团有限公司 | 一种数据上报方法、装置、设备及存储介质 |
CN114463010A (zh) * | 2022-04-13 | 2022-05-10 | 南京金宁汇科技有限公司 | 基于双层链的本地节点区块数据完整性检测方法及系统 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120197868A1 (en) * | 2009-08-24 | 2012-08-02 | Dietmar Fauser | Continuous Full Scan Data Store Table And Distributed Data Store Featuring Predictable Answer Time For Unpredictable Workload |
CN204731786U (zh) * | 2015-07-09 | 2015-10-28 | 乐山师范学院 | 采用计算机验证码技术的大数据分析系统 |
CN105354238A (zh) * | 2015-10-10 | 2016-02-24 | 成都博元时代软件有限公司 | 基于分布式的大数据挖掘方法 |
CN105653579A (zh) * | 2015-12-18 | 2016-06-08 | 北京百度网讯科技有限公司 | 一种对分布式事务进行测试的方法和装置 |
CN106934302A (zh) * | 2016-12-23 | 2017-07-07 | 航天星图科技(北京)有限公司 | 一种数据有效性检验方法 |
WO2017191472A1 (en) * | 2016-05-05 | 2017-11-09 | Invasec Ltd. | A verification system and method |
US20180063139A1 (en) * | 2016-08-23 | 2018-03-01 | Guardtime Ip Holdings Limited | System and Method for Secure Transmission of Streamed Data Frames |
US20180091596A1 (en) * | 2016-09-27 | 2018-03-29 | Intel Corporation | Trusted vehicle telematics using blockchain data analytics |
CN107943870A (zh) * | 2017-11-10 | 2018-04-20 | 顺丰科技有限公司 | 用于提高分布式数据库中间件稳定性的方法及其设备 |
US20190087571A1 (en) * | 2017-09-19 | 2019-03-21 | Palo Alto Research Center Incorporated | Method and system for detecting attacks on cyber-physical systems using redundant devices and smart contracts |
WO2019064658A1 (en) * | 2017-09-28 | 2019-04-04 | Yokogawa Electric Corporation | SYSTEMS AND METHODS FOR SECURING FLUID DISTRIBUTION SYSTEMS |
US10261846B1 (en) * | 2018-02-09 | 2019-04-16 | Banjo, Inc. | Storing and verifying the integrity of event related data |
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120197868A1 (en) * | 2009-08-24 | 2012-08-02 | Dietmar Fauser | Continuous Full Scan Data Store Table And Distributed Data Store Featuring Predictable Answer Time For Unpredictable Workload |
CN204731786U (zh) * | 2015-07-09 | 2015-10-28 | 乐山师范学院 | 采用计算机验证码技术的大数据分析系统 |
CN105354238A (zh) * | 2015-10-10 | 2016-02-24 | 成都博元时代软件有限公司 | 基于分布式的大数据挖掘方法 |
CN105653579A (zh) * | 2015-12-18 | 2016-06-08 | 北京百度网讯科技有限公司 | 一种对分布式事务进行测试的方法和装置 |
WO2017191472A1 (en) * | 2016-05-05 | 2017-11-09 | Invasec Ltd. | A verification system and method |
US20180063139A1 (en) * | 2016-08-23 | 2018-03-01 | Guardtime Ip Holdings Limited | System and Method for Secure Transmission of Streamed Data Frames |
US20180091596A1 (en) * | 2016-09-27 | 2018-03-29 | Intel Corporation | Trusted vehicle telematics using blockchain data analytics |
CN106934302A (zh) * | 2016-12-23 | 2017-07-07 | 航天星图科技(北京)有限公司 | 一种数据有效性检验方法 |
US20190087571A1 (en) * | 2017-09-19 | 2019-03-21 | Palo Alto Research Center Incorporated | Method and system for detecting attacks on cyber-physical systems using redundant devices and smart contracts |
WO2019064658A1 (en) * | 2017-09-28 | 2019-04-04 | Yokogawa Electric Corporation | SYSTEMS AND METHODS FOR SECURING FLUID DISTRIBUTION SYSTEMS |
CN107943870A (zh) * | 2017-11-10 | 2018-04-20 | 顺丰科技有限公司 | 用于提高分布式数据库中间件稳定性的方法及其设备 |
US10261846B1 (en) * | 2018-02-09 | 2019-04-16 | Banjo, Inc. | Storing and verifying the integrity of event related data |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113779641A (zh) * | 2021-09-02 | 2021-12-10 | 新奥数能科技有限公司 | 数据配置方法、装置、计算机设备及计算机可读存储介质 |
CN113779641B (zh) * | 2021-09-02 | 2024-03-05 | 新奥数能科技有限公司 | 数据配置方法、装置、计算机设备及计算机可读存储介质 |
CN114071561A (zh) * | 2021-12-07 | 2022-02-18 | 中国联合网络通信集团有限公司 | 一种数据上报方法、装置、设备及存储介质 |
CN114071561B (zh) * | 2021-12-07 | 2023-06-23 | 中国联合网络通信集团有限公司 | 一种数据上报方法、装置、设备及存储介质 |
CN114463010A (zh) * | 2022-04-13 | 2022-05-10 | 南京金宁汇科技有限公司 | 基于双层链的本地节点区块数据完整性检测方法及系统 |
CN114463010B (zh) * | 2022-04-13 | 2022-06-17 | 南京金宁汇科技有限公司 | 基于双层链的本地节点区块数据完整性检测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3742304A1 (en) | 2020-11-25 |
EP3742304B1 (en) | 2024-10-02 |
US20200372006A1 (en) | 2020-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112968764B (zh) | 多链路密码逻辑区块链 | |
US11429738B2 (en) | Blockchain endorsement with approximate hash verification | |
US12003647B2 (en) | Reduced-step blockchain verification of media file | |
US11360963B2 (en) | Tracking and verification of physical assets | |
US11694110B2 (en) | Aggregated machine learning verification for database | |
US11539527B2 (en) | Peer node recovery via approximate hash verification | |
US11711202B2 (en) | Committing data to blockchain based on approximate hash verification | |
US20210091960A1 (en) | Tracking and verification of physical assets | |
US11689356B2 (en) | Approximate hash verification of unused blockchain output | |
US11983608B2 (en) | Efficient verification of machine learning applications | |
CN111984726A (zh) | 测量数据集的存储和分布式数据库 | |
US20200382309A1 (en) | Approximate hash verification for blockchain | |
US11251938B2 (en) | Blockchain verification using non-consecutive blocks | |
US11379472B2 (en) | Schema-based pruning of blockchain data | |
CN111984724A (zh) | 工业现场设备的操作策略和分布式数据库 | |
US11861558B2 (en) | Upstream visibility in supply-chain | |
CN113950679A (zh) | 使用预言机共识来验证测量数据集 | |
US20230208638A1 (en) | Future asset reclamation via blockchain | |
US20230342717A1 (en) | Upstream visibility in supply-chain | |
CA3180249A1 (en) | Permissioned eventing in a decentralized database | |
EP3742304B1 (en) | Validation of measurement datasets in a distributed database | |
CN111984725B (zh) | 分布式数据库中的测量数据集的验证 | |
US12126730B2 (en) | Peer node recovery via approximate hash verification | |
CN116938965A (zh) | 从分布式账本中删除交易 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |