CN115567545A - 基于区块链的数据存证方法及装置和电子设备 - Google Patents
基于区块链的数据存证方法及装置和电子设备 Download PDFInfo
- Publication number
- CN115567545A CN115567545A CN202211242813.2A CN202211242813A CN115567545A CN 115567545 A CN115567545 A CN 115567545A CN 202211242813 A CN202211242813 A CN 202211242813A CN 115567545 A CN115567545 A CN 115567545A
- Authority
- CN
- China
- Prior art keywords
- event
- data
- physical
- block chain
- result
- 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.)
- Pending
Links
Images
Classifications
-
- 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/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1076—Resource dissemination mechanisms or network resource keeping policies for optimal resource availability in the overlay network
-
- 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
-
- 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/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本说明书实施例提供一种基于区块链的数据存证方法及装置和电子设备。所述方法包括:接收多个智能设备协同感知到同一物理事件发生后上传的多维数据;其中,所述多维数据包括所述多个智能设备针对所述物理事件采集的事件数据;将所述物理事件的事件结果和所述多维数据存证到区块链后,调用部署在区块链的智能合约中声明的事件结果判断逻辑,确定所述多维数据中的各个事件数据与所述事件结果是否存在冲突;如果是,进一步基于预设的共识协议对所述各个事件数据进行计算确定所述物理事件的最终结果;根据所述最终结果对所述区块链中存证的所述物理事件进行标记。
Description
技术领域
本说明书实施例涉及区块链技术领域,尤其涉及一种基于区块链的数据存证方法及装置和电子设备。
背景技术
在相关技术中,当需要记录现实世界中发生的物理事件时,通常需要采集发生该物理事件时相关的事件数据。
由于相关技术大多采用中心化的存储系统来存储事件数据,由于中心化的存储系统不对外公开数据,因此存储的事件数据缺乏可信性,从而导致其记录的物理事件缺乏可信性和真实性。
发明内容
本说明书实施例提供的一种基于区块链的数据存证方法及装置和电子设备。
根据本说明书实施例的第一方面,提供一种基于区块链的数据存证方法,所述方法包括:
接收多个智能设备协同感知到同一物理事件发生后上传的多维数据;其中,所述多维数据包括所述多个智能设备针对所述物理事件采集的事件数据;
将所述物理事件的事件结果和所述多维数据存证到区块链后,调用部署在区块链的智能合约中声明的事件结果判断逻辑,确定所述多维数据中的各个事件数据与所述事件结果是否存在冲突;
如果是,进一步基于预设的共识协议对所述各个事件数据进行计算确定所述物理事件的最终结果;
根据所述最终结果对所述区块链中存证的所述物理事件进行标记。
可选的,所述基于预设的共识协议对所述各个事件数据进行计算确定所述物理事件的最终结果,包括:
将各个事件数据进行数值化处理,得到数值化的事件数据;
根据各个数值化的事件数据以及采集所述事件数据的智能设备对应的权重,计算所述事件结果的准确度;
根据所述准确度,确定所述物理事件的最终结果。
可选的,所述方法还包括:
如果无法确定所述物理事件的最终结果,则向其它智能设备获取针对所述物理事件采集到的辅助数据,
基于所述预设的共识协议对所述各个事件数据和辅助数据进行计算,确定所述物理事件的最终结果。
可选的,所述向其它智能设备获取针对所述物理事件采集到的辅助数据,包括:
调用区块链的智能合约中声明的数据增补逻辑,生成针对所述物理事件的数据增补事件,以使其它智能设备在获取到所述数据增补事件时,将针对所述物理事件采集到的辅助数据发送给所述智能合约。
可选的,所述方法应用于区块链中的节点设备或者与区块链对应的区块链即服务。
可选的,所述智能设备的类型包括传感器设备、图像采集设备、射频识别设备中的至少一种。
可选的,所述物理事件包括车辆超速事件;所述智能设备包括测速设备;所述事件数据包括车辆速度。
根据本说明书实施例的第二方面,提供一种基于区块链的数据存证装置,所述装置包括:
接收单元,接收多个智能设备协同感知到同一物理事件发生后上传的多维数据;其中,所述多维数据包括所述多个智能设备针对所述物理事件采集的事件数据;
判断单元,将所述物理事件的事件结果和所述多维数据存证到区块链后,调用部署在区块链的智能合约中声明的事件结果判断逻辑,确定所述多维数据中的各个事件数据与所述事件结果是否存在冲突;
计算单元,如果是,进一步基于预设的共识协议对所述各个事件数据进行计算确定所述物理事件的最终结果;
标记单元,根据所述最终结果对所述区块链中存证的所述物理事件进行标记。
可选的,所述计算单元,包括:
处理子单元,将各个事件数据进行数值化处理,得到数值化的事件数据;
计算子单元,根据各个数值化的事件数据以及采集所述事件数据的智能设备对应的权重,计算所述事件结果的准确度;
确定子单元,根据所述准确度,确定所述物理事件的最终结果。
可选的,所述装置还包括:
获取子单元,如果无法确定所述物理事件的最终结果,则向其它智能设备获取针对所述物理事件采集到的辅助数据,
所述计算单元,还用于基于所述预设的共识协议对所述各个事件数据和辅助数据进行计算,确定所述物理事件的最终结果。
可选的,所述获取子单元,进一步用于调用区块链的智能合约中声明的数据增补逻辑,生成针对所述物理事件的数据增补事件,以使其它智能设备在获取到所述数据增补事件时,将针对所述物理事件采集到的辅助数据发送给所述智能合约。
可选的,所述装置应用于区块链中的节点设备或者与区块链对应的区块链即服务。
可选的,所述智能设备的类型包括传感器设备、图像采集设备、射频识别设备中的至少一种。
可选的,所述物理事件包括车辆超速事件;所述智能设备包括测速设备;所述事件数据包括车辆速度。
根据本说明书实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为上述任一项基于区块链的数据存证方法。
根据本说明书实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行上述任一项基于区块链的数据存证方法。
本说明书实施例,提供了一种基于区块链的数据存证方案,一方面,将多个智能设备提供的与物理事件相关的事件数据以及事件结果存证到区块链,基于区块链不可篡改的特征,保障原始的事件数据不被篡改,从而提高存证的事件数据的可信度。
另一方面,利用智能合约基于多个智能设备提供的多源数据确定物理事件的事件结果的准确性,并可以及时纠正异常的事件结果,以及基于纠正后的最终结果标记区块链上存证的物理事件。
附图说明
图1是本说明书一实施例提供的适用于基于区块链的数据存证系统的架构示意图;
图2是本说明书一实施例提供的基于区块链的数据存证方法的流程图;
图3是本说明书一实施例提供的区块结构的示意图;
图4是本说明书一实施例提供的应用于智慧交通场景的示意图;
图5是本说明书一实施例提供的基于区块链的数据存证装置的硬件结构图;
图6是本说明书一实施例提供的基于区块链的数据存证装置的模块。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
区块链技术,也被称之为分布式账本技术,是一种由若干台计算设备共同参与“记账”,共同维护一份完整的分布式数据库的新兴技术。由于区块链技术具有去中心化、公开透明、每台计算设备可以参与数据库记录、并且各计算设备之间可以快速的进行数据同步的特性,使得区块链技术在众多的领域中广泛的进行应用。
在本说明书所描述的区块链,具体可以包括私有链、共有链以及联盟链等,在本说明书中不进行特别限定。所述区块链中的节点设备可以无限制的添加,各个节点设备可以同步一个系统时间,以保障智能合约执行的时效性。
请参考图1,图1是本说明书示出的一种与区块链相关的网络环境的示意图。
在如图1所示的网络环境中,可以包括智能设备端101、服务器端102,以及至少一个区块链系统;例如,区块链系统103、区块链系统104和区块链系统105。
在一种实施方式中,智能设备端101,可以包括各种不同类型的智能设备;例如可以包括诸如移动终端设备、物联网设备、图像采集设备,以及其它形式的具有一定的数据采集能力的智能设备,等等。
在一种实施方式中,智能设备端101中的至少部分智能设备,可以通过各种通信网络耦接到服务器端102;例如,图1中示出的设备3与服务器端102进行了耦接。
不难理解,智能设备端101中的部分智能设备,也可以不与服务器端102进行耦接,而是作为区块链节点通过各种通信网络直接耦接到区块链系统;例如,图1中示出的设备4,可以作为区块链节点耦接到区块链系统。
其中,上述通信网络可以包括有线和/或无线通信网络;例如,可以是基于运营商提供的有线接入网络或者无线接入网络(比如移动蜂窝网络)实现的局域网(Local AreaNetwork,LAN)、广域网(Wide Area Network,WAN)、因特网或其组合。
在一种实施方式中,智能设备端101,还可以包括一个或多个设备端服务器;例如,图1中示出的设备5。智能设备端101中的至少部分智能设备,可以耦接到该设备端服务器,而该设备端服务器可以进一步与上述服务端102进行耦接;例如,图1中示出的设备1和设备2耦接到设备5,设备5进一步耦接服务器端102。
同样的,设备端服务器可以不与服务器端102进行耦接,而是作为区块链节点通过各种通信网络直接耦接到区块链系统。
在一种实施方式中,服务器端102也可以通过各种通信网络耦接到一个或者多个区块链系统;例如,图1中示出的服务器端102可以分别耦接到区块链系统103、区块链系统104和区块链系统105,等等。
在一种实施方式中,每个区块链系统都可以维护一个或多个区块链(例如,公有区块链、私有区块链、联盟区块链等),并包括用于承载上述一个或多个区块链的多个区块链节点;例如,如图1中示出的区块链节点1、区块链节点2、区块链节点3、区块链节点4、区块链节点i等可以共同承载一个或者多个区块链。各个区块链系统包含的区块链之间,以及各个区块链系统之间,还可以进行跨链的数据访问。
在一种实施方式中,区块链节点可以包括全节点和轻节点。全节点可以全量下载区块链中的每个区块所包含的区块链交易,并可以根据搭载的区块链共识算法,对每个区块链中所包含的区块链交易进行共识验证。
而轻节点可以不下载完整的区块链,而是可以只下载区块链中的每个区块的区块头数据,并将区块头所包含的数据作为验证根,用于以验证区块链交易的真实性。轻节点可以依附于全节点来访问区块链的更多功能。
例如,图1中示出的区块链系统103中的各个区块链节点都可以作为全节点;而图1中示出的直接耦接到区块链系统的设备4,就可以作为轻节点,依附于区块链系统103中的各个全节点。
在一种实施方式中,区块链节点可以是物理设备,也可以是在服务器或者服务器集群中实现的虚拟设备;例如,区块链节点设备可以是服务器集群中的一台物理主机,也可以是基于虚拟化技术对服务器或者服务器集群搭载的硬件资源进行虚拟化后,创建的虚拟机。每个区块链节点之间,可以通过各种类型的通信方法(比如TCP/IP)耦接在一起形成网络,来承载一个或者多个区块链。
在一种实施方式中,服务器端102可以包括用于提供区块链即服务(BaaS,Blockchain as a Service)的BaaS平台(也称之为BaaS云)。BaaS平台可以通过为区块链上发生的活动(诸如订阅和通知、数据存证、数据校验和事件更新等),提供预先编写的软件的方式,面向与BaaS平台耦接的智能设备,提供简单易用,一键部署,快速验证,灵活可定制的区块链服务,进而可以加速区块链业务应用开发、测试、上线,助力各行业区块链商业应用场景的落地。
例如,在一个例子中,与BaaS平台可以提供诸如MQ(Message Queue,消息队列)服务之类的软件;与BaaS平台耦接的智能设备,可以订阅BaaS平台耦接的区块链系统中某一区块链上部署的智能合约,在触发执行后在区块链上产生的合约事件;而BaaS平台可以监听该智能合约在触发执行后在区块链上产生的事件,再基于MQ服务相关的软件,将该合约事件以通知消息的形式添加到消息队列中,使得订阅该消息队列的智能设备,能够得到与上述合约事件相关的通知。
在一种实施方式中,BaaS平台还可以提供基于区块链技术的企业级平台服务,以帮助企业级客户构建安全且稳定的区块链环境,并轻松管理区块链的部署、操作、维护和开发。
例如,在一个例子中,BaaS平台可以基于云技术实现丰富的安全策略和多租户的隔离环境、基于芯片加密技术来提供高级的安全保护、基于高度可靠的数据存储,提供可以快速扩展,而不会中断的端到端的高可用性服务;
在另一个例子中,还可以提供增强的管理功能,以帮助客户构建企业级区块链网络环境;以及,还可以为标准区块链应用和数据提供本地支持,支持例如HyperledgerFabric和Enterprise Ethereum-Quorum的主流开源区块链技术,以构建开放且包容的技术生态系统。
在介绍了与区块链相关的技术内容后,接下来将结合图2所示的本说明书提供的基于区块链的数据存证方法的流程图来介绍相关实施例,所述方法包括:
步骤210,接收多个智能设备协同感知到同一物理事件发生后上传的多维数据;其中,所述多维数据包括所述多个智能设备针对所述物理事件采集的事件数据。
在现实世界中,多个智能设备协同感知到同一物理事件发生时,这些智能设备可以通过多设备协同感知事件算法从多个维度采集与该物理事件相关的事件数据,并将采集到的这些多维数据作为多个智能设备的多维数据进行上传。
其中,所述多设备协同感知事件算法可以用于在复杂场景环境下由在同一时间或者在同一时间段内感知到同一物理事件发生的多个智能设备(可以是分布式的智能设备),从多方面、多角度协同记录与物理事件发生相关的事件数据。
本说明书中,所述智能设备的类型包括但不限于IoT(Internet of Things,物联网)设备、图像采集设备、短距离通信设备、激光雷达设备等。
其中,所述IoT设备包括不限于传感器设备。
所述传感器设备可以包括但不限于温度传感器、湿度传感器、红外传感器、烟雾传感器、光敏传感器等等。
所述图像采集设备可以包括但不限于视频摄像头、红外摄像头、全景摄像头等。
所述短距离通信设备可以包括但不限于包括射频识别(Radio FrequencyIdentification,RFID)设备、近场通信(Near Field Communication,NFC)设备、蓝牙设备等。
在不同的应用场景中,可以采用不同的智能设备来监测不同物理事件发生时的事件数据。
本说明书提供的实施例可以应用于区块链中的节点设备,即节点设备直接接收智能设备上传的多维数据;此时可以对应前述图1中示出的设备4(智能设备)作为区块链的节点设备耦接到区块链系统。
另外,本说明书提供的实施例也可以应用在与区块链对应的区块链即服务(BaaS),即智能设备通过该BaaS与区块链连接,智能设备采集的事件数据先发生给该BaaS,然后由BaaS将事件数据上传到区块链;此时可以对应前述图1中示出的设备3与服务器端102进行了耦接,服务器端102进一步耦接区块链系统。或者可以对应前述图1中示出的设备1和设备2耦接到设备5,设备5进一步耦接服务器端102,服务器端102进一步耦接区块链系统。
在下面的实施例中将以应用于区块链的节点设备为例加以说明,需要说明的是在相关内容中也可以将节点设备替换为区块链即服务。
步骤220,将所述物理事件的事件结果和所述多维数据存证到区块链后,调用部署在区块链的智能合约中声明的事件结果判断逻辑,确定所述多维数据中的各个事件数据与所述事件结果是否存在冲突。
节点设备在接收到前述多个智能设备上传的物理事件的事件结果以及与物理事件相关的多维数据之后,首先可以将事件结果和多维数据作为区块数据存证到区块链。
如图3所示的区块结构示意图,所述区块数据具体可以是存储在区块的区块体中。每个区块的区块体中可以记录物理事件对应的区块数据;例如事件1对应的区块数据可以包括事件1的事件发生时间(图3中的时间戳)、事件结果、多个智能设备采集的多个事件数据(图3中的设备1和设备2对应的相关数据)等。
在存证了与物理事件对应相关数据之后,节点设备可以通过调用智能合约来判断多维数据中的各个事件数据是否与事件结果存在冲突。
这里的冲突可以是指,事件数据表示的事件结果与存证的事件结果不一致的情况。以道路交通为例,假设某个路段限速80km/h,针对某辆汽车在该路段超速事件的多个事件数据中即包括大于80km/h的事件数据,也包括小于80km/h的事件数据;那么其中小于80km/h的事件数据就与超速事件这一事件结果存在冲突。
在实际应用中,事件数据与事件结果存在冲突的情况时有发生,原因可能多种多样,例如智能设备受到客观环境影响采集的事件数据异常、智能设备故障造成事件数据异常、事件数据被恶意篡改等等。
为了确保物理事件的事件结果的准确性和真实性,在本说明书中可以通过调用部署在区块链的智能合约中声明的事件结果判断逻辑,判断事件结果是否异常;如果存在与事件结果冲突的事件数据,则确定事件结果异常,则执行后续步骤230;如果不存在与事件结果冲突的事件数据,则确定事件结果正常,则流程结束。
在实际应用中,节点设备可以在存证事件结果和多维数据之后,实时对该存证的事件结果进行判断,从而及时发现异常的事件结果。此外,节点设备也可以周期性调用上述智能合约,以对该周期内上链存证的事件结果进行判断。
步骤230,如果是,进一步基于预设的共识协议对所述各个事件数据进行计算确定所述物理事件的最终结果。
在本说明书中,所述预设的共识协议中可以写入预设规则,从而对多源数据进行事件结果的判定。
在一示例性的实施例中,所述基于预设的共识协议对所述各个事件数据进行计算确定所述物理事件的最终结果,可以包括:
将各个事件数据进行数值化处理,得到数值化的事件数据;
根据各个数值化的事件数据以及采集所述事件数据的智能设备对应的权重,计算所述事件结果的准确度;
根据所述准确度,确定所述物理事件的最终结果。
在实际应用中,根据智能设备的重要程度可以为不同的智能设备设置不同的权重,例如重要程度越高的智能设备对应的权重也越大,反之亦然。
前述预设规则具体可以包括用于计算事件结果准确度的计算模型,一般的所述计算模型可以是以函数、方程或公式的形式使用。
在实现时,通过设置合理的函数,可以借助已有的大数据处理技术从这些大数据中找出规律。例如逻辑回归(logistic回归),GBDT(Gradient Boosting Decision Tree),甚至深度学习等机器学习方法,都可以被用于针对这些大数据进行建模,从而得出函数中各个参数的权重,进而可以得到统一的方程或者计算公式。
例如,得到统一的方程如下:
Y_准确度=a*X_事件数据1+b*X_事件数据2+c*X_事件数据3 公式1
并且,上述X_事件数据1、上述X_事件数据2、上述X_事件数据3即为智能设备上传的事件数据,上述a,b,c等即为各个智能设备对应的权重。需要说明的是,上述公式1仅是示例,在实际应用中可以包含更多的事件数据和权重,或者更为复杂的计算公式以实现更为准确地计算事件结果的准确度。
这样,对于步骤210接收到的多维数据,可以利用上述公式1计算事件结果的准确性,所述准确性可以为位于0和1之间的值。例如越接近1表示结果越准确,越接近0表示结果越不准确。
继续以上述公式1为例,假设计算得到的准确度大于阈值,则可以认为事件结果准确,最终结果与存证的事件结果一致;反之,如果准确度小于阈值,则可以认为事件结果不准确,最终结果将与存证的时间结果相反。
另外,还可以设置阈值范围,例如当准确度处于0-0.4范围时认为是不准确,处于0.4-0.7范围时认为是无法确定的,处于0.7-1范围时认为是准确的。
在一示例性的实施例中,如果无法确定所述物理事件的最终结果,则向其它智能设备获取针对所述物理事件采集到的辅助数据,
基于所述预设的共识协议对所述各个事件数据和辅助数据进行计算,确定所述物理事件的最终结果。
在实际应用中,可能存在无法确定所述物理事件的最终结果的情况,例如事件结果无法判定、错误或恶意的事件数据造成判定冲突、共识协议判定出现多种事件结果等情况;为此本说明书还提供了辅助验证机制。
其中,所述辅助验证机制具体是指通过向其它智能设备获取针对所述物理事件采集到的辅助数据,在已有的事件数据基础上增加辅助数据,重新计算物理事件的最终结果。
在一示例性的实施例中,所述向其它智能设备获取针对所述物理事件采集到的辅助数据,包括:
调用区块链的智能合约中声明的数据增补逻辑,生成针对所述物理事件的数据增补事件,以使其它智能设备在获取到所述数据增补事件时,将针对所述物理事件采集到的辅助数据发送给所述智能合约。
在本说明书中,向其它智能设备获取针对所述物理事件采集到的辅助数据,可以借助智能合约的事件机制。
其中,智能合约的事件机制,是智能合约与链外实体进行交互的一种方式。对于区块链上部署的智能合约来说,通常无法直接与链外实体进行交互;例如,智能合约在调用完成后,通常无法将智能合约的调用结果,点对点的发送给智能合约的调用发起方。
智能合约在调用的过程中产生的调用结果(包括中间结果和最终的调用结果),通常都会以事件(Event)的形式,记录到调用该智能合约的那笔交易的交易日志(transaction logs),在节点设备的存储空间中进行存储。而需要与智能合约进行交互的链外实体,则可以通过监听节点设备的存储空间中存储的上述交易日志的方式,来获取智能合约的调用结果;
交易日志最终会作为智能合约调用交易的收据(receipt)的一部分内容,存储在MPT收据树中。而在本说明书中,与智能合约进行交互的链外实体即其它智能设备,可以监听节点设备的存储空间中存储的MPT收据树上的交易收据,并从监听到的交易收据中,来获取针对物理事件的数据增补事件。所述其它智能设备基于数据增补事件将与物理事件相关的辅助数据上传给智能核验,从而使得智能核验获取到所需的辅助数据。进一步所述智能合约就可以基于前述共识协议对所述各个事件数据和辅助数据进行计算,确定所述物理事件的最终结果。
除了上述通过交易日志监听智能合约的数据增补事件之外,上述其它智能合约还可以通过订阅租赁合约的方式,来获取数据增补事件。在智能合约生成数据增补事件后,可以主动将该数据增补事件推送给所述其它智能核验,后续过程与上述示例相同。
步骤240,根据所述最终结果对所述区块链中存证的所述物理事件进行标记。
在计算出物理事件的最终结构之后,智能合约可以根据所述最终结果对所述区块链中存证的所述物理事件进行标记,从而纠正原本异常的事件结果。
综上所述,本说明书提供的基于区块链的数据存证方案,一方面,将多个智能设备提供的与物理事件相关的事件数据以及事件结果存证到区块链,基于区块链不可篡改的特征,保障原始的事件数据不被篡改,从而提高存证的事件数据的可信度。
另一方面,利用智能合约基于多个智能设备提供的多源数据确定物理事件的事件结果的准确性,并可以及时纠正异常的事件结果,以及基于纠正后的最终结果标记区块链上存证的物理事件。
以下请参考图4所示的应用于智慧交通场景的示意图来进一步介绍上述方法实施例。
如图4所示,在智慧交通中针对行驶的车辆,可以通过各种智能设备监控车辆的行驶数据,并发现车辆行驶过程中的物理事件,包括非违章事件(如加速事件、减速事件等)和违章事件;其中,所述违章事件可以包括车辆超速事件、闯红灯事件、实线变道事件、违章掉头事件、禁停区域停车事件、驶入禁行区域事件等。
所述智能设备可以包括路侧单元(Road Side Unit,RSU),所述路侧单元主要功能包括采集当前的道路状况、交通状况等信息,并通过通讯网络与路侧感知设备、交通信号灯、电子标牌等终端通信,实现车路联通、交通信号实时交互等功能,辅助驾驶员进行驾驶,保障整个交通领域。
所述路侧单元还与移动边缘节点(Mobile Edge Computing,MEC)耦接。所述移动边缘计算节点可以利用无线接入网络就近提供电信用户IT所需服务和云端计算功能,从而创造出一个具备高性能、低延迟与高带宽的电信级服务环境,加速网络中各项内容、服务及应用的快速下载,让使用者享有不间断的高质量网络体验。在本说明书中,MEC可以作为RSU的设备端服务器进一步与区块链或区块链即服务进行耦接。
步骤1,正在行驶的车辆(下文称为车辆A)进行降速。
步骤2,此时身边存在邻车,且邻车感知到车辆A降速,但是邻车错误或者是恶意地上报了与车辆A不相符的事件结果和事件数据,例如邻车提交给RSU的是车辆A的提速事件,以及对应的事件数据(例如车辆A行驶的车辆速度)。
步骤3,所述RSU向MEC上报道路侧多源智能设备所采集的车辆A的事件数据、以及邻车提交的车辆A的提速事件和事件数据。
步骤4,所述MEC将获取到的包括多个事件数据的多源数据和事件结果(提速事件)上传到区块链,并调用智能合约将事件上链存证。
步骤5,智能合约执行事件结果判断逻辑,确定各个事件数据与事件结果是否存在冲突,若无则不作处理;若有则执行步骤6。由于路侧多源智能设备的事件数据与提速事件冲突,因此选择执行步骤6。
步骤6,智能合约基于共识协议若能依据现有事件数据计算最终结果则跳转步骤8,若不能依据现有事件数据计算最终结果则执行步骤7。
步骤7,智能合约触发辅助验证机制,向其它智能设备(如RSU、摄像头等感知设备)请求获取辅助数据,数据返回后智能合约基于共识协议再次计算最终结果。
步骤8,智能合约将最终结果对区块链存证的物理事件进行标记。
通过上述步骤可以将邻车上报的与车辆A不相符的提速事件纠正为减速事件,从而提高区块链存证的物理事件的准确性和可信度。
与前述基于区块链的数据存证方法实施例相对应,本说明书还提供了基于区块链的数据存证装置的实施例。所述装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序读取到内存中运行形成的。从硬件层面而言,如图5所示,为本说明书基于区块链的数据存证装置所在设备的一种硬件结构图,除了图5所示的处理器、网络接口、内存以及非易失性存储器之外,实施例中装置所在的设备通常根据基于区块链的数据存证实际功能,还可以包括其他硬件,对此不再赘述。
请参见图6,为本说明书一实施例提供的基于区块链的数据存证装置的模块图,所述装置对应了图2所示实施例,所述装置包括:
接收单元610,接收多个智能设备协同感知到同一物理事件发生后上传的多维数据;其中,所述多维数据包括所述多个智能设备针对所述物理事件采集的事件数据;
判断单元620,将所述物理事件的事件结果和所述多维数据存证到区块链后,调用部署在区块链的智能合约中声明的事件结果判断逻辑,确定所述多维数据中的各个事件数据与所述事件结果是否存在冲突;
计算单元630,如果是,进一步基于预设的共识协议对所述各个事件数据进行计算确定所述物理事件的最终结果;
标记单元640,根据所述最终结果对所述区块链中存证的所述物理事件进行标记。
可选的,所述计算单元630,包括:
处理子单元,将各个事件数据进行数值化处理,得到数值化的事件数据;
计算子单元,根据各个数值化的事件数据以及采集所述事件数据的智能设备对应的权重,计算所述事件结果的准确度;
确定子单元,根据所述准确度,确定所述物理事件的最终结果。
可选的,所述装置还包括:
获取子单元,如果无法确定所述物理事件的最终结果,则向其它智能设备获取针对所述物理事件采集到的辅助数据,
所述计算单元,还用于基于所述预设的共识协议对所述各个事件数据和辅助数据进行计算,确定所述物理事件的最终结果。
可选的,所述获取子单元,进一步用于调用区块链的智能合约中声明的数据增补逻辑,生成针对所述物理事件的数据增补事件,以使其它智能设备在获取到所述数据增补事件时,将针对所述物理事件采集到的辅助数据发送给所述智能合约。
可选的,所述装置应用于区块链中的节点设备或者与区块链对应的区块链即服务。
可选的,所述智能设备的类型包括传感器设备、图像采集设备、射频识别设备中的至少一种。
可选的,所述物理事件包括车辆超速事件;所述智能设备包括测速设备;所述事件数据包括车辆速度。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上图6描述了基于区块链的数据存证装置的内部功能模块和结构示意,其实质上的执行主体可以为一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述任一基于区块链的数据存证方法的实施例。
在上述电子设备的实施例中,应理解,该处理器可以是CPU,还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,而前述的存储器可以是只读存储器(英文:read-only memory,缩写:ROM)、随机存取存储器(英文:random access memory,简称:RAM)、快闪存储器、硬盘或者固态硬盘。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
另外,本说明书还提供有一种计算机可读存储介质,所述计算机可读存储介质中的指令由电子设备的处理器执行时,可以使得所述电子设备能够执行上述任一基于区块链的数据存证方法的实施例。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
Claims (10)
1.一种基于区块链的数据存证方法,其特征在于,所述方法包括:
接收多个智能设备协同感知到同一物理事件发生后上传的多维数据;其中,所述多维数据包括所述多个智能设备针对所述物理事件采集的事件数据;
将所述物理事件的事件结果和所述多维数据存证到区块链后,调用部署在区块链的智能合约中声明的事件结果判断逻辑,确定所述多维数据中的各个事件数据与所述事件结果是否存在冲突;
如果是,进一步基于预设的共识协议对所述各个事件数据进行计算确定所述物理事件的最终结果;
根据所述最终结果对所述区块链中存证的所述物理事件进行标记。
2.根据权利要求1所述的方法,其特征在于,所述基于预设的共识协议对所述各个事件数据进行计算确定所述物理事件的最终结果,包括:
将各个事件数据进行数值化处理,得到数值化的事件数据;
根据各个数值化的事件数据以及采集所述事件数据的智能设备对应的权重,计算所述事件结果的准确度;
根据所述准确度,确定所述物理事件的最终结果。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果无法确定所述物理事件的最终结果,则向其它智能设备获取针对所述物理事件采集到的辅助数据,
基于所述预设的共识协议对所述各个事件数据和辅助数据进行计算,确定所述物理事件的最终结果。
4.根据权利要求3所述的方法,其特征在于,所述向其它智能设备获取针对所述物理事件采集到的辅助数据,包括:
调用区块链的智能合约中声明的数据增补逻辑,生成针对所述物理事件的数据增补事件,以使其它智能设备在获取到所述数据增补事件时,将针对所述物理事件采集到的辅助数据发送给所述智能合约。
5.根据权利要求1所述的方法,其特征在于,所述智能设备的类型包括传感器设备、图像采集设备、射频识别设备的至少一种。
6.根据权利要求1所述的方法,其特征在于,所述方法应用于区块链中的节点设备或者与区块链对应的区块链即服务。
7.根据权利要求1所述的方法,其特征在于,所述物理事件包括车辆超速事件;所述智能设备包括测速设备;所述事件数据包括车辆速度。
8.一种基于区块链的数据存证装置,其特征在于,所述装置包括:
接收单元,接收多个智能设备协同感知到同一物理事件发生后上传的多维数据;其中,所述多维数据包括所述多个智能设备针对所述物理事件采集的事件数据;
判断单元,将所述物理事件的事件结果和所述多维数据存证到区块链后,调用部署在区块链的智能合约中声明的事件结果判断逻辑,确定所述多维数据中的各个事件数据与所述事件结果是否存在冲突;
计算单元,如果是,进一步基于预设的共识协议对所述各个事件数据进行计算确定所述物理事件的最终结果;
标记单元,根据所述最终结果对所述区块链中存证的所述物理事件进行标记。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述权利要求1-6中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211242813.2A CN115567545A (zh) | 2022-10-11 | 2022-10-11 | 基于区块链的数据存证方法及装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211242813.2A CN115567545A (zh) | 2022-10-11 | 2022-10-11 | 基于区块链的数据存证方法及装置和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115567545A true CN115567545A (zh) | 2023-01-03 |
Family
ID=84745022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211242813.2A Pending CN115567545A (zh) | 2022-10-11 | 2022-10-11 | 基于区块链的数据存证方法及装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115567545A (zh) |
-
2022
- 2022-10-11 CN CN202211242813.2A patent/CN115567545A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111462484B (zh) | 拥堵状态的确定方法、装置、设备及计算机可读存储介质 | |
US10960893B2 (en) | System and method for driver profiling corresponding to automobile trip | |
CN106982230B (zh) | 一种流量检测方法及系统 | |
US9652349B2 (en) | Quality of information assessment in dynamic sensor networks | |
CN108810155B (zh) | 一种车联网车辆位置信息可信度评价方法及系统 | |
CN109088722B (zh) | 区块链节点演进方法及区块链节点 | |
CN110659441A (zh) | 一种基于区块链的信息发布管理方法及装置 | |
CN110634303A (zh) | 一种交通违法监测及校验的方法和装置 | |
Alswailim et al. | A reputation system to evaluate participants for participatory sensing | |
CN112822267A (zh) | 基于区块链的数据处理方法和装置 | |
CN110660466A (zh) | 结合区块链的物联网的个人健康数据上链方法及系统 | |
CN113763211A (zh) | 基于区块链的侵权检测方法及装置和电子设备 | |
CN110533906B (zh) | 一种路况信息的获取方法及相关装置 | |
CN107302518B (zh) | 基于加权相似度的域间路由系统安全状态感知方法和装置 | |
Philip et al. | Smart contract based digital evidence management framework over blockchain for vehicle accident investigation in IoV era | |
US20140031061A1 (en) | Systems And Methods For Monitoring Device And Vehicle | |
CN113850544A (zh) | 基于区块链的数字仓单管理方法及装置、电子设备 | |
CN110139278B (zh) | 车联网下安全型防御合谋攻击的系统的方法 | |
Ramachandran et al. | Trinity: a distributed publish/subscribe broker with blockchain-based immutability | |
CN109327349B (zh) | 区块链账户创建时的限制方法、介质、装置及系统 | |
CN115567545A (zh) | 基于区块链的数据存证方法及装置和电子设备 | |
CN107835174B (zh) | 一种基于物联网的账本反欺诈系统及方法 | |
JP6066877B2 (ja) | 認証サーバ、認証方法及び認証プログラム | |
CN111162929B (zh) | 一种分级管理方法和系统 | |
Agate et al. | Reliable Reputation-Based Event Detection in V2V Networks |
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 |