CN113434592A - 基于区块链的数据存证方法及装置、电子设备 - Google Patents

基于区块链的数据存证方法及装置、电子设备 Download PDF

Info

Publication number
CN113434592A
CN113434592A CN202110615669.1A CN202110615669A CN113434592A CN 113434592 A CN113434592 A CN 113434592A CN 202110615669 A CN202110615669 A CN 202110615669A CN 113434592 A CN113434592 A CN 113434592A
Authority
CN
China
Prior art keywords
data
abstract
block chain
target data
stored
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
Application number
CN202110615669.1A
Other languages
English (en)
Inventor
湛宗儒
王林青
翁欣雨
蒋海滔
张鸿
李富强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Advanced New Technologies Co Ltd
Original Assignee
Advanced New Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Priority to CN202110615669.1A priority Critical patent/CN113434592A/zh
Publication of CN113434592A publication Critical patent/CN113434592A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • G06F21/645Protecting data integrity, e.g. using checksums, certificates or signatures using a third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3236Cryptographic 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/3239Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

公开一种基于区块链的数据验证方法,所述区块链中存证了由终端设备采集到的目标数据的数据摘要;所述方法包括:获取数据提交方提交的目标数据;计算所述目标数据的数据摘要,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要是否匹配;如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据;如果计算出的数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配,确定所述数据提交方提交的所述目标数据为非法数据。

Description

基于区块链的数据存证方法及装置、电子设备
技术领域
本说明书一个或多个实施例涉及区块链技术领域,尤其涉及一种基于区块链的数据存证方法及装置、电子设备。
背景技术
区块链技术,也被称之为分布式账本技术,是一种由若干台计算设备共同参与“记账”,共同维护一份完整的分布式数据库的新兴技术。由于区块链技术具有去中心化、公开透明、每台计算设备可以参与数据库记录、并且各计算设备之间可以快速的进行数据同步的特性,使得区块链技术已在众多的领域中广泛的进行应用。
发明内容
本说明书提出一种基于区块链的数据验证方法,所述区块链中存证了由终端设备采集到的目标数据的数据摘要;所述方法包括:
获取数据提交方提交的目标数据;
计算所述目标数据的数据摘要,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要是否匹配;
如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据;如果计算出的数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配,确定所述数据提交方提交的所述目标数据为非法数据。
可选的,所述终端设备搭载了安全运算环境,所述安全运算环境中存储了与所述终端设备对应的私钥;
所述方法还包括:
获取所述终端设备在所述区块链发布的所述目标数据的数据摘要;其中,所述数据摘要在所述安全运算环境中基于与所述终端设备对应的私钥进行了签名;
基于与所述私钥对应的公钥对所述数据摘要的签名进行验证;
如果所述签名验证通过,将所述目标数据的数据摘要在所述区块链中进行存证。
可选的,所述确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要是否匹配,包括:
基于预设的验证算法验证计算出的所述数据摘要是否已在所述区块链中进行存证;如果验证出所述数据摘要已在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果验证出所述数据摘要未在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
可选的,所述确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要是否匹配,包括:
获取在所述区块链中存储的所述目标数据的数据摘要;
确定获取到的所述目标数据的数据摘要与计算出的所述数据摘要是否相同;
如果相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果不相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
可选的,所述区块链中还存证了所述目标数据的描述数据;
所述如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据,包括:
如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,进一步确定所述数据提供方提交的所述目标数据的描述数据,与所述区块链中存证的所述目标数据的描述数据是否匹配;如果是,确定所述数据提交方提交的所述目标数据为合法数据。
可选的,所述描述数据包括:所述目标数据的采集时刻、采集地点、以及所述目标数据相关的对象中的一个或者多个的组合。
可选的,所述终端设备包括执法记录仪或者行车记录仪;所述目标数据包括由执法记录仪或者行车记录仪采集到的作为证据文件的视频数据、音频数据、图像数据中的一种或者多种的组合。
本说明书还提出一种基于区块链的数据验证装置,所述区块链中存证了由终端设备采集到的目标数据的数据摘要;所述装置包括:
获取模块,获取数据提交方提交的目标数据;
计算模块,计算所述目标数据的数据摘要,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要是否匹配;
检测模块,如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据;如果计算出的数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配,确定所述数据提交方提交的所述目标数据为非法数据。
可选的,所述终端设备搭载了安全运算环境,所述安全运算环境中存储了与所述终端设备对应的私钥;
所述获取模块进一步:
获取所述终端设备在所述区块链发布的所述目标数据的数据摘要;其中,所述数据摘要在所述安全运算环境中基于与所述终端设备对应的私钥进行了签名;
所述装置还包括:
存证模块,基于与所述私钥对应的公钥对所述数据摘要的签名进行验证;如果所述签名验证通过,将所述目标数据的数据摘要在所述区块链中进行存证。
可选的,所述检测模块:
基于预设的验证算法验证计算出的所述数据摘要是否已在所述区块链中进行存证;如果验证出所述数据摘要已在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果验证出所述数据摘要未在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
可选的,所述检测模块:
获取在所述区块链中存储的所述目标数据的数据摘要;
确定获取到的所述目标数据的数据摘要与计算出的所述数据摘要是否相同;
如果相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果不相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
可选的,所述区块链中还存证了所述目标数据的描述数据;
所述检测模块进一步:
如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,进一步确定所述数据提供方提交的所述目标数据的描述数据,与所述区块链中存证的所述目标数据的描述数据是否匹配;如果是,确定所述数据提交方提交的所述目标数据为合法数据。
可选的,所述描述数据包括:所述目标数据的采集时刻、采集地点、以及所述目标数据相关的对象中的一个或者多个的组合。
可选的,所述终端设备包括执法记录仪或者行车记录仪;所述目标数据包括由执法记录仪或者行车记录仪采集到的作为证据文件的视频数据、音频数据、图像数据中的一种或者多种的组合。
本说明书还提出一种电子设备,包括:
处理器;
用于存储机器可执行指令的存储器;
其中,通过读取并执行所述存储器存储的与基于区块链的基于区块链的数据存证的控制逻辑对应的机器可执行指令,所述处理器被促使:
获取数据提交方提交的目标数据;
计算所述目标数据的数据摘要,确定计算出的所述数据摘要与区块链中存证的所述目标数据的数据摘要是否匹配;
如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据;如果计算出的数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配,确定所述数据提交方提交的所述目标数据为非法数据。
在以上技术方案中,一方面,通过对区块链上进行数据存证的流程进行改进,终端设备不再需要将采集到的数据的原始内容在区块链上存证,而是将采集到的数据的原始内容在本地存储,并将原始内容的数据摘要在区块链上存证,使得终端设备可以作为物理世界和链上世界的枢纽,更加便捷的将采集到的数据在区块链上进行存证;
另一方面,对于获取到终端采集到的数据的数据验证方而言,通过将获得的数据的数据摘要,与在区块链上存证的该数据的数据摘要进行匹配,就可以便捷的对获得的数据进行合法性验证;因此,使得终端设备采集到的数据将可以作为证据提交给数据验证方,可以显著的提升终端设备采集到的数据的可用性。
附图说明
图1是一示例性实施例提供的一种基于区块链的数据存证方法的流程图。
图2是一示例性实施例提供的一种电子设备的结构示意图。
图3是一示例性实施例提供的一种基于区块链的数据存证装置的框图。
具体实施方式
由于在区块链存储的数据具有不可篡改的特性,因此将数据存储在区块链上来做数据存证,是业界目前的主流趋势。
然而,在实际应用中,对于一些流数据;比如,执法记录仪或者行车记录仪采集到的视频流、音频流等数据;由于其自身所需占用的存储空间较大,则通常无法直接存储到区块链上进行存证。
但在一些场景下,这类流数据却又存在着强烈的存证需求;比如,在司法存证的场景,对于执法记录仪或者行车记录仪采集到的视频流,可能会作为证据提交给司法部门。
由于缺乏数据认证手段,这类流数据作为证据的合法性,通常会存在广泛质疑。因此,对于这类流数据,最好的处理方式还是存储在区块链上进行数据局存证;同时,还需要能够更加便捷的验证这些存证的数据作为司法证据的合法性。
基于以上需求,本说明书提出一种将终端设备作为物理世界和链上世界的枢纽,来更加便捷的将其采集到的数据在区块链上进行存证;以及,快捷的对存证的数据进行合法性验证的技术方案。
在实现时,终端设备在采集到需要在区块链上存证的数据之后,可以将采集到的数据在本地存储,并计算采集到的数据的数据摘要,然后将计算出的该数据的数据摘要发布至区块链,在区块链中进行数据存证;
例如,在一种实现方式中,可以对终端设备的硬件环境进行改进,在终端设备的硬件环境中搭建安全运算环境,并在安全运算环境中存储和维护与终端设备对应的私钥。当终端设备计算出采集到的数据的数据摘要之后,可以在安全运算环境中基于与终端设备对应的私钥,对计算出的数据摘要进行签名处理,然后将签名后的数据摘要发布至区块链。区块链中的节点设备在收到终端设备发布的签名后的数据摘要之后,可以获取与该终端设备的私钥对应的公钥,然后基于该公钥对该数据摘要的签名进行验证;如果签名验证通过,可以将该数据摘要存储到区块链中进行数据存证。
当终端设备将采集到的数据在区块链上完成数据存证后,数据提交方可以将终端设备本地存储的该数据的原始内容作为证据文件提交给数据验证方。
而数据验证方在收到数据提供方提交的数据后,再次计算该数据的数据摘要,并确定计算出的数据摘要,与区块链中已经存证的该数据的数据摘要是否匹配;
如果计算出的数据摘要,与区块链中已经存证的该数据的数据摘要匹配,数据验证方可以确认数据提交方提交的数据为合法数据;反之,如果计算出的数据摘要,与区块链中已经存证的该数据的数据摘要不匹配,数据验证方可以确认数据提交方提交的数据为非法数据。
在以上技术方案中,一方面,通过对区块链上进行数据存证的流程进行改进,终端设备不再需要将采集到的数据的原始内容在区块链上存证,而是将采集到的数据的原始内容在本地存储,并将原始内容的数据摘要在区块链上存证,使得终端设备可以作为物理世界和链上世界的枢纽,更加便捷的将采集到的数据在区块链上进行存证;
另一方面,对于获取到终端采集到的数据的数据验证方而言,通过将获得的数据的数据摘要,与在区块链上存证的该数据的数据摘要进行匹配,就可以便捷的对获得的数据进行合法性验证;因此,使得终端设备采集到的数据将可以作为证据提交给数据验证方,可以显著的提升终端设备采集到的数据的可用性。
下面通过具体实施例并结合具体的应用场景对本说明书进行描述。
请参考图1,图1是本说明书一实施例提供的一种基于区块链的数据存证方法,应用于数据验证方;其中,所述区块链中存证了由终端设备采集到的目标数据的数据摘要;执行以下步骤:
步骤102,获取数据提交方提交的目标数据;
步骤104,计算所述目标数据的数据摘要,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要是否匹配;
步骤106,如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据;如果计算出的数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配,确定所述数据提交方提交的所述目标数据为非法数据。
在本说明书所描述的区块链,具体可以包括私有链、共有链以及联盟链等,在本说明书中不进行特别限定。
例如,在一个场景中,上述区块链具体可以是由第三方支付平台的服务器、境内银行服务器、境外银行服务器、以及若干用户节点设备作为成员设备组成的一个联盟链。该联盟链的运营方可以依托于该联盟链,来在线部署诸如基于联盟链的跨境转账、资产转移等在线业务。
上述终端设备,可以包括能够作为节点设备加入区块链,并将采集到的数据在区块链上进行存证的任意形式的终端设备;
例如,在实际应用中,上述终端设备具体可以包括执法记录仪或者行车记录仪等。执法记录仪或者行车记录仪可以作为节点加入区块链,并将采集到的诸如视频数据、音频数据等流数据,在区块链上进行存证。
其中,将数据在区块链上进行存证,是指将数据作为证据在区块链中进行持久化存储。
上述目标数据,包括由终端设备采集到的,需要在区块链的分布式数据库中完成数据存证的任意类型的数据;
例如,上述目标数据具体可以是诸如执法记录仪或者行车记录仪等终端设备采集到的视频数据、音频数据、图像数据等流数据。
在本说明书,可以对终端设备的硬件环境进行改造,在终端设备的硬件环境中搭建安全运算环境,并利用搭建的安全运算环境,来存储和维护与终端设备对应的私钥,并面向终端设备提供安全的运算环境。
其中,在终端设备的硬件环境中搭建安全运算环境的具体方式,在本说明书中不进行特别限定。
在实际应用中,可以通过在终端设备的硬件环境中引入新的硬件来搭建安全运算环境,也可以对终端设备的硬件环境中已有的硬件的软件环境进行改造来搭建安全运算环境;或者,也可以将在终端设备的硬件环境中引入新的硬件,以及对终端设备的硬件环境中已有的硬件的软件环境进行改造的搭建方式进行结合的方式,来为终端设备搭建安全运算环境。
例如,在一种实施方式中,可以采用基于SE(Secure Element,安全元件)的解决方案,为终端设备搭建安全运算环境。在这种解决方案下,可以在终端设备的硬件环境中引入SE硬件(可以是内置于终端的硬件环境中的硬件,也可以是通过接口外接在终端上的硬件),利用SE硬件来存储和维护终端设备的私钥,并面向终端设备提供安全运算环境。
在示出的另一种实施方式中,可以采用基于TEE(Trusted ExecutionEnvironment,可信执行环境)的解决方案,为终端设备搭建安全运算环境。在这种解决方案下,可以对终端设备的硬件环境中已有的硬件(比如主芯片)的软件环境进行改造,在该软件环境中来搭建可信执行环境,利用该可信执行环境来存储和维护终端设备的私钥,并面向终端设备提供安全运算环境。
在示出的第三种实施方式,可以采用基于SE+TEE的解决方案,为终端设备搭建安全运算环境。在这种解决方案下,可以利用SE硬件来存储和维护终端设备的私钥,利用TEE来面向终端设备提供安全运算环境。
需要说明的是,以上列举出的为终端设备搭建安全运算环境的实施方式,进为示例性的。在实际应用中,显然也可以通过以上列举出的其它实施手段,为终端设备搭建安全运算环境,在本说明书中不在进行一一列举。
在本说明书中,上述终端设备可以作为节点设备加入到区块链(也称之为设备上链),并将与该终端设备对应的私钥,在为该终端设备搭建的安全运算环境中进行存储和维护。
其中,与终端设备对应的私钥,具体可以是由终端设备持有的私钥,也可以是终端设备的使用用户所持有的私钥。
也即,本说明书中描述的“与终端设备对应的私钥”,具体可以是终端设备的设备生产商在设备生产阶段,为该终端设备生成的,并由终端设备持有的私钥;也可以是由终端设备在用户使用该终端设备时,由终端设备自主的为该用户生成的,并由该用户个人持有的私钥。
在示出的一种实施方式中,终端设备持有的私钥以及公钥,可以由设备生产商在设备生产阶段为终端设备生成,并由设备生产商预先将该私钥写入该终端设备的安全运算环境中进行存储和维护。
在这种情况下,终端设备持有的私钥以及公钥,则与终端设备的使用用户的身份并不关联。对于该终端设备的不同的使用用户而言,可以共用由设备生产商默认写入该终端设备的安全运算环境中的同一个私钥。
在示出的一种实施方式中,终端设备持有的私钥以及公钥,也可以由终端设备自主的为该终端设备的使用用户生成,并由终端设备自主的将该私钥写入该终端设备的安全运算环境。
在这种情况下,终端设备自主的生成的私钥以及公钥,可以与终端设备的使用用户的身份相关联,终端设备可以基于不同的使用用户的身份信息,为不同的使用用户分别生成一对私钥和公钥,并将生成的私钥与各使用用户的身份信息分别进行绑定,然后将绑定关系在安全运算环境中进行存储和维护。
例如,在实现时,终端设备的生产商可以预先将密钥生成算法写入该终端设备的安全运算环境。当终端设备的使用用户在使用终端设备时,终端设备可以提示使用用户输入身份信息进行身份认证;
其中,使用用户输入的身份信息的数据类型,以及终端设备所采用的身份认证方式,在本说明书中均不进行特别的限定;例如,可以采用诸如输入密码或者口令的传统认证方式,也可以采用诸如基于指纹或者人脸等生理特征的认证方式。
当终端设备获取到使用用户输入的身份信息后,可以确定安全运算环境中是否存储了与该身份信息绑定的私钥;如果安全运算环境中并未存储与该身份信息绑定的私钥,表明该使用用户为首次使用该终端设备的新用户,此时终端设备可以基于获取到的该身份信息对该使用用户进行身份认证;如果针对该使用用户身份认证通过,则终端设备可以在上述安全运算环境中调用上述密钥生成算法生成一对私钥以及公钥,并将生成的私钥与该使用用户的身份信息进行绑定,然后将绑定关系在上述安全运算环境中进行存储和维护。
在本说明书中,用户可以使用终端设备进行数据采集,并通过终端设备将采集到的数据在区块链上进行存证。
其中,在本说明书中,终端设备仅需要将采集到的数据在本地存储,并将采集到的数据的数据摘要在区块链上进行存证即可,不再需要将采集到的数据的原始内容在区块链上进行存证。
需要说明的是,如果终端设备采集到的目标数据为诸如视频数据、音频数据等流数据,这类流数据在区块链上进行存证时,终端设备可以按照预设的时间周期,对流数据进行分片存证的方式;
例如,以视频数据为例,终端设备可以将每N分钟的视频数据作为一个分片,计算该分片的数据摘要,然后将该分片的数据摘要在区块链中进行存证,并严格保证在区块链上存证的各分片的数据摘要在时间上的顺序,以便于进行回溯。
在本说明书中,终端设备在需要将采集到的目标数据在区块链上进行存证时,首先可以计算该目标数据的数据摘要;比如,该数据摘要具体可以是基于特定的哈希算法计算该目标数据的hash值;然后,终端设备可以在安全运算环境中,基于安全运算环境中存储的私钥,对该数据摘要进行签名处理。
在示出的一种实施方式中,在上述终端设备的安全运算环境中,还可以存储和维护,基于该终端设备的生产商持有的私钥进行签名后的设备认证信息;例如,该设备认证信息,可以在设备生成阶段有设备生产商基于持有的私钥进行签名处理后,写入安全运算环境进行存储和维护。
其中,上述设备认证信息,具体可以是用于对终端设备进行合法性认证的任意形式的信息;例如,上述设备认证信息具体可以是诸如终端设备的生产编号或者其它形式的防伪信息。
在这种情况下,终端设备可以在安全运算环境中,基于安全运算环境中存储的私钥,对该数据摘要进行签名处理之前,可以获取与该终端设备的生厂商持有的私钥对应的公钥,并基于获取到的该公钥,对该设备认证信息的签名进行验证;如果验证通过,可以确定该终端设备为该生产商生产的合法终端设备;此时,终端设备再进一步执行,在安全运算环境中,基于该安全运算环境中存储的私钥,对该数据摘要进行签名的处理过程。
通过这种方式,可以在基于安全运算环境中存储的私钥,对上链的摘要数据进行签名处理之前,引入终端设备的合法验证,及时终止一些非法设备(比如伪造设备,或者被恶意改造后的合法设备)的数据上链行为,可以提升上链数据的安全等级。
在示出的一种实施方式中,如果终端设备的安全运算环境中存储和维护的私钥,为设备生产商在设备生产阶段为终端设备生成的,由终端设备持有的私钥;在这种情况下,可以引入对终端设备的使用用户的身份认证机制,提示使用用户输入身份信息进行身份认证;当终端设备获取到使用用户输入的身份信息后,可以基于获取到的身份信息对该使用用户进行身份认证;如果针对该使用用户的身份认证通过,终端设备可以在安全运算环境中,基于该安全运算环境中存储和维护的由该终端设备持有的私钥,对该数据摘要进行签名处理。
在示出的一种实施方式中,如果终端设备的安全运算环境中存储和维护的私钥,终端设备自主的为使用用户生成的,由使用用户持有的私钥;此时,安全运算环境中预先存储和维护了使用用户的身份信息与私钥的绑定关系。
在这种情况下,当终端设备获取到该使用用户输入的身份信息后,可以查询安全运算环境中维护的绑定关系,确定安全运算环境中是否存储了与该身份信息绑定的私钥;如果安全运算环境中存储了该身份信息绑定的私钥,终端设备可以在安全运算环境中,基于查询到的该私钥,对该数据摘要进行签名处理。
当然,如果安全运算环境中并未存储与该身份信息绑定的私钥,表明该使用用户为首次使用该终端设备的新用户,此时终端设备可以基于获取到的该身份信息对该使用用户进行身份认证,并在身份认证通过后,调用安全运算环境中存储的密钥生成算法,为该使用用户生成私钥和公钥,并使用生成的私钥,对该数据摘要进行签名处理;以及,将生成的私钥与该使用用户的身份信息进行绑定,然后将绑定关系在安全运算环境中进行存储和维护。
在本说明书中,当终端设备在安全运算环境中,基于安全运算环境中存储的私钥,对采集到的目标数据的数据摘要进行签名处理完成之后,可以将签名后的数据摘要,在区块链中进行发布;
例如,可以基于签名后的数据摘要构建一笔区块链交易(Transact ion),将该交易向其它各节点设备进行广播扩散。
区块链中的节点设备在收到该签名后的数据摘要后,可以获取与安全运算环境中存储的私钥对应的公钥,然后基于获取到的公钥对该数据摘要的签名进行验证;如果该数据摘要的签名验证通过,该节点设备可以在区块链中发起对该数据摘要的共识处理,并在该数据摘要共识处理通过后,将该数据摘要打包进区块在区块链中进行存储,以完成针对该数据摘要的数据存证。
其中,需要说明的是,本说明书中所描述的区块链所采用的共识机制,在本说明书中不进行特别限定,在实际应用中,区块链的运营方可以基于实际的需求来灵活的选择。
在示出的另一种实施方式中,终端设备在将采集到的目标数据时,在区块链上进行存证时,还可以将该目标数据的描述数据与该目标数据的数据摘要,一并在区块链上进行存证。
这种情况下,终端设备在安全运算环境中,基于安全运算环境中存储的私钥,对该目标数据的数据摘要进行签名处理时,可以将该数据摘要和该目标数据的描述信息进行整体签名;即将数据摘要和该目标数据的描述信息进行打包后作为一个整体进行签名;然后,将签名后的数据摘要和上述目标数据的描述数据,发布至区块链进行数据存证。
例如,终端设备可以基于签名后的数据摘要和上述目标数据的描述数据构建一笔区块链交易,将该交易向其它各节点设备进行广播扩散。
或者,在另一种情况下,终端设备在安全运算环境中,基于安全运算环境中存储的私钥,对该目标数据的数据摘要进行签名处理时,也可以仅针对该数据摘要进行签名;然后,将上述目标数据的描述数据,和将签名后的数据摘要,发布至区块链进行数据存证。
例如,终端设备可以基于上述目标数据的描述数据,和签名后的数据摘要来构建一笔区块链交易,将该交易向其它各节点设备进行广播扩散。
其中,上述目标数据的描述信息所包含的具体内容,在本说明书中不进行特别限定,在实际应用中,可以涵盖与上述目标数据相关的任意内容;
在示出的一种实施方式中,由于数据的采集时刻、采集地点和数据相关的对象,通常为数据作为证据文件的极其重要的属性;因此,在本说明书中,上述目标数据的描述信息,具体可以包括上述目标数据的采集时刻、采集地点、以及上述目标数据相关的对象中的一个或者多个的组合。
其中,在示出的一种实施方式中,目标数据的采集时刻,具体可以是终端设备在采集到目标数据时,与时间认证中心进行交互,从时间认证中心获取到的经过认证的权威时刻(时间戳)。目标数据的采集地点,可以是终端设备采集到目标数据时,实时调用终端设备搭载的定位模块(比如GPS模块)获取到的精确采集地点。而与上述目标数据相关的对象,可以是终端设备在采集到目标数据后,由该终端设备的合法使用者手动输入的相关对象。
例如,以执法记录仪采集到的与车祸事件的取证视频数据为例,该视频数据的描述信息,具体可以包括采集到该视频数据的时刻从时间认证中心获取到的经过认证的权威时刻、采集到该视频数据的时刻执法记录仪实时调用定位模块获取到的精确采集地点、以及由执法者输入的与该视频数据相关的车辆信息、驾驶者信息等。
在本说明书中,当终端设备将采集到的目标数据的数据摘要在区块链上完成数据存证之后,区块链中的节点设备可以向该终端返回一个该目标数据的数据摘要已经在区块链中完成存证的通知消息(即存证回执);
其中,在该通知消息中可以携带该目标数据的数据摘要在区块链中存证的相关描述信息;比如,在该通知消息中可以携带该目标数据的数据摘要所在交易的交易ID、该目标数据的数据摘要所在的区块号,等等。
后续,数据提交方可以将终端设备本地存储的目标数据的原始内容作为证据文件提交给数据验证方。
其中,上述数据提交方,可以是上述终端设备的使用用户(也即数据采集者),也可以具有上述终端设备本地存储的数据的使用权限的第三方用户,在本说明书中不进行特别限定。而上述数据验证方,则可以是证据文件的使用方和验证方。
例如,在示出的一种场景下,以上述终端设备为行车记录仪为例,用户在车辆遭遇车祸需要向保险公司理赔时,可以将行车记录仪采集到的车辆行驶过程中的视频数据,作为证据文件提交给保险公司,由保险公司对该证据文件进行合法性验证,并基于该证据文件的合法性验证结果,来决策是否向用户进行理赔。
又如,在示出的另一种场景下,以上述终端设备为执法记录仪为例,执法者在配合司法机构进行取证时,可以将执法过程中由执法记录仪采集到的执法过程相关的视频数据,作为证据文件提交给司法记录,由司法机构对该证据文件进行合法性验证,并基于该证据文件的合法性验证结果,来决策该证据文件是否可以用于司法用途。
在本说明书中,当数据验证方获取到数据提供方提交的目标数据后,由于该目标数据的数据摘要,已由终端设备在区块链上完成数据存证;因此,数据验证方可以再次计算数据提供方提交的目标数据的数据摘要,并进一步确定计算出的数据摘要,与在区块链上已经存证的该目标数据的数据摘要是否匹配,来针对数据提交方提交的目标数据进行合法性验证。
在示出的一种实施方式中,数据验证方在确定计算出的数据摘要,与在区块链上已经存证的该目标数据的数据摘要是否匹配时,首先可以获取在区块链中存储的所述目标数据的数据摘要;
例如,在实现时,数据提交方可以将该目标数据的数据摘要所在的交易的交易ID,以及该目标数据的数据摘要所在的区块号(即存证回执中携带的信息),一并提交给数据验证方。而数据验证方可以将该目标数据的数据摘要所在的交易的交易ID和区块号作为查询索引,在区块链的区块中查找该目标数据的数据摘要。
当数据验证方获取到在区块链中存储的该目标数据的数据摘要之后,可以将计算出的数据摘要,与获取到的在区块链中存储的该目标数据的数据摘要进行匹配,来确定二者是否相同;如果相同,可以确定计算出的数据摘要与区块链中存储的该目标数据的数据摘要匹配;如果不相同,可以确定计算出的数据摘要与区块链中存储的目标数据的数据摘要不匹配。
在示出的一种实施方式中,数据验证方也可以在不需要获取在区块链中存储的该目标数据的数据摘要的前提下,来确定计算出的数据摘要,与在区块链上已经存证的该目标数据的数据摘要是否匹配。
在这种情况下,数据验证方可以搭载特定的验证算法,该验证算法具体用于验证计算出的数据摘要,是否已经在区块链中完成存证。数据验证方可以通过执行该验证算法,并基于该验证算法的执行结果(执行结果通常为true或者false),来验证计算出的数据摘要,是否已经在区块链中完成存证。
如果上述验证算法的执行结果,指示计算出的数据摘要已经在区块链中完成存证,此时可以确定计算出的数据摘要与区块链中存储的该目标数据的数据摘要匹配;如果上述验证算法的执行结果,指示计算出的数据摘要并未在区块链中完成存证,则可以确定计算出的数据摘要与区块链中存储的目标数据的数据摘要不匹配。
在本说明书中,当数据验证方经过验证,确定计算出的数据摘要与区块链中存储的目标数据的数据摘要不匹配,可以直接确定数据提交方提交的该目标数据为非法数据;反之,当数据验证方经过验证,确定计算出的数据摘要与区块链中存储的目标数据的数据摘要匹配,则可以直接确定数据提交方提交的该目标数据为合法数据。
在示出的一种实施方式中,如果在数据存证阶段,终端设备采用了将目标数据的描述数据,与目标数据的数据摘要一起在区块链中进行存证的存证方式,那么数据提交方在向数据验证方提交目标数据时,也可以将该目标数据的描述数据,也一并提交给数据验证放。
在这种情况下,当数据验证方通过以上的合法性验证过程,确定计算出的由数据提交方提交的目标数据的数据摘要,与区块链中存证的该目标数据的数据摘要匹配,此时可以进一步确定数据提供方提交的目标数据的描述数据,与区块链中存证的该目标数据的描述数据是否匹配;
例如,数据验证方可以分别验证数据提交方提交的目标数据的采集时刻、采集地点、与目标数据相关的对象,与区块链上存证的该目标数据的采集时刻、采集地点、与该目标数据相关的对象是否一致。
如果经过验证,确定数据提供方提交的目标数据的描述数据,与区块链中存证的该目标数据的描述数据匹配,此时再认定数据提交方提交的该目标数据为合法数据;反之,如果经过验证,确定数据提供方提交的目标数据的描述数据,与区块链中存证的该目标数据的描述数据匹配,此时可以认证数据提交方提交的该目标数据为非法数据。
通过这种方式,可以在以上方案中描述的合法性验证流程中,进一步引入数据提供方提交的目标数据的描述数据,与区块链上存证的该目标数据的描述数据是否一致的验证,只有数据提供方提交的目标数据的数据摘要和描述数据,与区块链上存证的该目标数据的数据摘要和描述数据均匹配的情况下,才会认定数据提交方提交的目标数据为合法数据,因此可以降低合法性验证时的误判率;
例如,以上述目标数据为视频数据为例,在实际应用中,数据提供方可能会为一段视频数据伪造采集时刻、采集地点、与视频数据相关的对象的信息,然后将这些伪造的信息与视频数据一起作为证据文件提交给数据验证方。因此,在以上方案中描述的合法性验证流程中,进一步引入数据提供方提交的目标数据的描述数据,与区块链上存证的该目标数据的描述数据是否一致的验证,可以及时的发现和避免这种情况,最大程度的降低将该视频数据判定为合法数据的可能性。
一方面,通过对区块链上进行数据存证的流程进行改进,终端设备不再需要将采集到的数据的原始内容在区块链上存证,而是将采集到的数据的原始内容在本地存储,并将原始内容的数据摘要在区块链上存证,使得终端设备可以作为物理世界和链上世界的枢纽,更加便捷的将采集到的数据在区块链上进行存证;
另一方面,对于获取到终端采集到的数据的数据验证方而言,通过将获得的数据的数据摘要,与在区块链上存证的该数据的数据摘要进行匹配,就可以便捷的对获得的数据进行合法性验证;因此,使得终端设备采集到的数据将可以作为证据提交给数据验证方,可以显著的提升终端设备采集到的数据的可用性。
例如,用户在将执法记录仪或者行车记录仪采集到的流数据作为证据提交给第三方机构(比如司法机构或者保险公司)时,第三方机构只需要重新计算获得的数据的数据摘要,将该数据的数据摘要与在区块链上存证的该数据的数据摘要进行匹配,就可以便捷的对获得的数据进行合法性验证,从而通过这种方式,可以显著提升执法记录仪或者行车记录仪采集到的数据作为合法证据文件的高可用性。
与上述方法实施例相对应,本说明书还提供了一种基于区块链的数据存证装置的实施例。本说明书的基于区块链的数据存证装置的实施例可以应用在电子设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图2所示,为本说明书的基于区块链的数据存证装置所在电子设备的一种硬件结构图,除了图2所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常根据该电子设备的实际功能,还可以包括其他硬件,对此不再赘述。
图3是本说明书一示例性实施例示出的一种基于区块链的数据存证装置的框图。
请参考图3,所述基于区块链的数据存证装置30可以应用在前述图2所示的电子设备中,包括有:获取模块301、计算模块302和检测模块303。
获取模块301,获取数据提交方提交的目标数据;
计算模块302,计算所述目标数据的数据摘要,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要是否匹配;
检测模块303,如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据;如果计算出的数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配,确定所述数据提交方提交的所述目标数据为非法数据。
在本实施例中,所述终端设备搭载了安全运算环境,所述安全运算环境中存储了与所述终端设备对应的私钥;
所述获取模块301进一步:
获取所述终端设备在所述区块链发布的所述目标数据的数据摘要;其中,所述数据摘要在所述安全运算环境中基于与所述终端设备对应的私钥进行了签名;
所述装置30还包括:
存证模块304(图3中未示出),基于与所述私钥对应的公钥对所述数据摘要的签名进行验证;如果所述签名验证通过,将所述目标数据的数据摘要在所述区块链中进行存证。
在本实施例中,所述检测模块303:
基于预设的验证算法验证计算出的所述数据摘要是否已在所述区块链中进行存证;如果验证出所述数据摘要已在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果验证出所述数据摘要未在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
在本实施例中,所述检测模块303:
获取在所述区块链中存储的所述目标数据的数据摘要;
确定获取到的所述目标数据的数据摘要与计算出的所述数据摘要是否相同;
如果相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果不相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
在本实施例中,所述区块链中还存证了所述目标数据的描述数据;
所述检测模块303进一步:
如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,进一步确定所述数据提供方提交的所述目标数据的描述数据,与所述区块链中存证的所述目标数据的描述数据是否匹配;如果是,确定所述数据提交方提交的所述目标数据为合法数据。
在本实施例中,所述描述数据包括:所述目标数据的采集时刻、采集地点、以及所述目标数据相关的对象中的一个或者多个的组合。
在本实施例中,所述终端设备包括执法记录仪或者行车记录仪;所述目标数据包括由执法记录仪或者行车记录仪采集到的作为证据文件的视频数据、音频数据、图像数据中的一种或者多种的组合。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述实施例阐明的系统、装置、模块或模块,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
与上述方法实施例相对应,本说明书还提供了一种电子设备的实施例。该电子设备包括:处理器以及用于存储机器可执行指令的存储器;其中,处理器和存储器通常通过内部总线相互连接。在其他可能的实现方式中,所述设备还可能包括外部接口,以能够与其他设备或者部件进行通信。
在本实施例中,通过读取并执行所述存储器存储的与基于区块链的数据存证的控制逻辑对应的机器可执行指令,所述处理器被促使:
获取数据提交方提交的目标数据;
计算所述目标数据的数据摘要,确定计算出的所述数据摘要与区块链中存证的所述目标数据的数据摘要是否匹配;
如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据;如果计算出的数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配,确定所述数据提交方提交的所述目标数据为非法数据。
在本实施例中,所述终端设备搭载了安全运算环境,所述安全运算环境中存储了与所述终端设备对应的私钥;
通过读取并执行所述存储器存储的与基于区块链的数据存证的控制逻辑对应的机器可执行指令,所述处理器被促使:
获取所述终端设备在所述区块链发布的所述目标数据的数据摘要;其中,所述数据摘要在所述安全运算环境中基于与所述终端设备对应的私钥进行了签名;
基于与所述私钥对应的公钥对所述数据摘要的签名进行验证;
如果所述签名验证通过,将所述目标数据的数据摘要在所述区块链中进行存证。
在本实施例中,通过读取并执行所述存储器存储的与基于区块链的数据存证的控制逻辑对应的机器可执行指令,所述处理器被促使:
基于预设的验证算法验证计算出的所述数据摘要是否已在所述区块链中进行存证;如果验证出所述数据摘要已在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果验证出所述数据摘要未在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
在本实施例中,通过读取并执行所述存储器存储的与基于区块链的数据存证的控制逻辑对应的机器可执行指令,所述处理器被促使:
获取在所述区块链中存储的所述目标数据的数据摘要;
确定获取到的所述目标数据的数据摘要与计算出的所述数据摘要是否相同;
如果相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果不相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
在本实施例中,所述区块链中还存证了所述目标数据的描述数据;
通过读取并执行所述存储器存储的与基于区块链的数据存证的控制逻辑对应的机器可执行指令,所述处理器被促使:
如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,进一步确定所述数据提供方提交的所述目标数据的描述数据,与所述区块链中存证的所述目标数据的描述数据是否匹配;如果是,确定所述数据提交方提交的所述目标数据为合法数据。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。

Claims (15)

1.一种基于区块链的数据验证方法,所述区块链中存证了由终端设备采集到的目标数据的数据摘要;所述终端设备作为节点已预先加入所述区块链,所述方法包括:
获取数据提交方提交的目标数据;
计算所述目标数据的数据摘要,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要是否匹配;
如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据;否则,确定所述数据提交方提交的所述目标数据为非法数据;
其中,所述目标数据为流数据,所述目标数据的数据摘要包括按照预设的时间周期对所述流数据进行分片得到的,按时间先后顺序进行排序的各个分片的数据摘要。
2.根据权利要求1所述的方法,所述确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要是否匹配,包括:
基于预设的验证算法验证计算出的所述数据摘要是否已在所述区块链中进行存证;如果验证出所述数据摘要已在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果验证出所述数据摘要未在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
3.根据权利要求1所述的方法,所述确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要是否匹配,包括:
获取在所述区块链中存储的所述目标数据的数据摘要;
确定获取到的所述目标数据的数据摘要与计算出的所述数据摘要是否相同;
如果相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果不相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
4.根据权利要求1所述的方法,所述描述数据包括:所述目标数据的采集时刻、采集地点、以及所述目标数据相关的对象中的一个或者多个的组合。
5.根据权利要求1所述的方法,所述终端设备搭载了安全运算环境,所述安全运算环境中存储了与所述终端设备对应的私钥;
所述方法还包括:
获取所述终端设备在所述区块链发布的所述目标数据的数据摘要;其中,所述数据摘要在所述安全运算环境中基于与所述终端设备对应的私钥进行了签名;
基于与所述私钥对应的公钥对所述数据摘要的签名进行验证;
如果所述签名验证通过,将所述目标数据的数据摘要在所述区块链中进行存证。
6.根据权利要求1所述的方法,所述区块链中还存证了所述目标数据的描述数据;
所述如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据,包括:
如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,进一步确定所述数据提供方提交的所述目标数据的描述数据,与所述区块链中存证的所述目标数据的描述数据是否匹配;如果是,确定所述数据提交方提交的所述目标数据为合法数据。
7.根据权利要求1所述的方法,所述终端设备包括执法记录仪或者行车记录仪;所述流数据包括由执法记录仪或者行车记录仪采集到的作为证据文件的视频数据、音频数据、图像数据中的一种或者多种的组合。
8.一种基于区块链的数据验证装置,所述区块链中存证了由终端设备采集到的目标数据的数据摘要;所述终端设备作为节点已预先加入所述区块链,所述装置包括:
获取模块,获取数据提交方提交的目标数据;
计算模块,计算所述目标数据的数据摘要,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要是否匹配;
检测模块,如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据;否则,确定所述数据提交方提交的所述目标数据为非法数据;
其中,所述目标数据为流数据,所述目标数据的数据摘要包括按照预设的时间周期对所述流数据进行分片得到的,按时间先后顺序进行排序的各个分片的数据摘要。
9.根据权利要求8所述的装置,所述检测模块:
基于预设的验证算法验证计算出的所述数据摘要是否已在所述区块链中进行存证;如果验证出所述数据摘要已在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果验证出所述数据摘要未在所述区块链中进行存证,确定计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
10.根据权利要求8所述的装置,所述检测模块:
获取在所述区块链中存储的所述目标数据的数据摘要;
确定获取到的所述目标数据的数据摘要与计算出的所述数据摘要是否相同;
如果相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配;如果不相同,确定所述计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要不匹配。
11.根据权利要求8所述的装置,所述描述数据包括:所述目标数据的采集时刻、采集地点、以及所述目标数据相关的对象中的一个或者多个的组合。
12.根据权利要求8所述的装置,所述终端设备搭载了安全运算环境,所述安全运算环境中存储了与所述终端设备对应的私钥;
所述获取模块进一步:
获取所述终端设备在所述区块链发布的所述目标数据的数据摘要;其中,所述数据摘要在所述安全运算环境中基于与所述终端设备对应的私钥进行了签名;
所述装置还包括:
存证模块,基于与所述私钥对应的公钥对所述数据摘要的签名进行验证;如果所述签名验证通过,将所述目标数据的数据摘要在所述区块链中进行存证。
13.根据权利要求8所述的装置,所述区块链中还存证了所述目标数据的描述数据;
所述检测模块进一步:
如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,进一步确定所述数据提供方提交的所述目标数据的描述数据,与所述区块链中存证的所述目标数据的描述数据是否匹配;如果是,确定所述数据提交方提交的所述目标数据为合法数据。
14.根据权利要求8所述的装置,所述终端设备包括执法记录仪或者行车记录仪;所述流数据包括由执法记录仪或者行车记录仪采集到的作为证据文件的视频数据、音频数据、图像数据中的一种或者多种的组合。
15.一种电子设备,包括:
处理器;
用于存储机器可执行指令的存储器;
其中,所述处理器通过读取并执行所述存储器存储的与基于区块链的数据存证的控制逻辑对应的机器可执行指令,所述区块链中存证了由终端设备采集到的目标数据的数据摘要;所述终端设备作为节点已预先加入所述区块链,所述处理器被促使:
获取数据提交方提交的目标数据;
计算所述目标数据的数据摘要,确定计算出的所述数据摘要与区块链中存证的所述目标数据的数据摘要是否匹配;
如果计算出的所述数据摘要与所述区块链中存证的所述目标数据的数据摘要匹配,确定所述数据提交方提交的所述目标数据为合法数据;否则,确定所述数据提交方提交的所述目标数据为非法数据;
其中,所述目标数据为流数据,所述目标数据的数据摘要包括按照预设的时间周期对所述流数据进行分片得到的,按时间先后顺序进行排序的各个分片的数据摘要。
CN202110615669.1A 2018-10-31 2018-10-31 基于区块链的数据存证方法及装置、电子设备 Pending CN113434592A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110615669.1A CN113434592A (zh) 2018-10-31 2018-10-31 基于区块链的数据存证方法及装置、电子设备

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110615669.1A CN113434592A (zh) 2018-10-31 2018-10-31 基于区块链的数据存证方法及装置、电子设备
CN201811289523.7A CN109639410B (zh) 2018-10-31 2018-10-31 基于区块链的数据存证方法及装置、电子设备

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201811289523.7A Division CN109639410B (zh) 2018-10-31 2018-10-31 基于区块链的数据存证方法及装置、电子设备

Publications (1)

Publication Number Publication Date
CN113434592A true CN113434592A (zh) 2021-09-24

Family

ID=66067002

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202110615669.1A Pending CN113434592A (zh) 2018-10-31 2018-10-31 基于区块链的数据存证方法及装置、电子设备
CN201811289523.7A Active CN109639410B (zh) 2018-10-31 2018-10-31 基于区块链的数据存证方法及装置、电子设备

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201811289523.7A Active CN109639410B (zh) 2018-10-31 2018-10-31 基于区块链的数据存证方法及装置、电子设备

Country Status (6)

Country Link
US (2) US11258612B2 (zh)
EP (1) EP3824403B1 (zh)
CN (2) CN113434592A (zh)
SG (1) SG11202101514SA (zh)
TW (1) TWI741314B (zh)
WO (1) WO2020092094A1 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113793151A (zh) * 2018-11-28 2021-12-14 创新先进技术有限公司 基于区块链的数据存证方法及装置、电子设备
US20220083654A1 (en) * 2019-01-09 2022-03-17 British Telecommunications Public Limited Company Anomalous behavior detection in a distributed transactional database
US11469904B1 (en) * 2019-03-21 2022-10-11 NortonLifeLock Inc. Systems and methods for authenticating digital media content
CN110210243A (zh) * 2019-04-30 2019-09-06 江苏亿鸿信息工程有限公司 一种基于区块链的监控视频取证系统及其取证方法
CN110263583B (zh) * 2019-05-17 2020-09-08 阿里巴巴集团控股有限公司 一种基于区块链的侵权存证方法、装置及电子设备
JP2021048546A (ja) * 2019-09-20 2021-03-25 富士通株式会社 通信装置、通信方法、通信システム、およびプログラム
CN110941840B (zh) * 2019-11-19 2023-07-25 腾讯科技(深圳)有限公司 一种数据处理方法、系统及终端
CN111459932A (zh) * 2020-03-05 2020-07-28 深圳市元征科技股份有限公司 基于区块链的数据存证方法、装置及存储介质
WO2021174499A1 (zh) * 2020-03-05 2021-09-10 合肥达朴汇联科技有限公司 一种基于区块链的数据验证方法、装置及系统
CN111414649B (zh) * 2020-03-05 2023-03-24 合肥达朴汇联科技有限公司 一种基于区块链的数据验证方法及系统
CN111429136B (zh) * 2020-03-05 2023-04-28 合肥达朴汇联科技有限公司 一种基于区块链的数据审计方法及装置
TWI742716B (zh) * 2020-06-09 2021-10-11 樹德科技大學 分散式車輛行駛歷程記錄方法及系統
CN111884808B (zh) * 2020-07-20 2023-06-23 杭州溪塔科技有限公司 一种防止交易跨链重放的方法、装置及电子设备
CN112699414B (zh) * 2020-08-14 2024-03-15 武汉乾云软件开发中心(有限合伙) 一种基于区块链的机器学习数据存证方法和系统
CN111737522B (zh) 2020-08-14 2021-03-02 支付宝(杭州)信息技术有限公司 视频匹配方法、基于区块链的侵权存证方法和装置
DE102020215135A1 (de) * 2020-12-01 2022-06-02 Robert Bosch Gesellschaft mit beschränkter Haftung Intelligenter Messzähler und Verfahren zur vertrauenswürdigen Bereitstellung von Messdaten in einer dezentralen Transaktionsdatenbank
CN113037496B (zh) * 2021-03-15 2022-11-04 承德石油高等专科学校 一种基于区块链技术视频采集装置及其方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107169125A (zh) * 2017-05-31 2017-09-15 北京小米移动软件有限公司 多媒体资源的投放统计数据获取方法及装置
CN107292621A (zh) * 2017-06-22 2017-10-24 丁江 海量数据确权存证方法和节点
CN107888375A (zh) * 2017-11-08 2018-04-06 深圳市携网科技有限公司 一种基于区块链技术的电子证据保全系统及方法
CN108389129A (zh) * 2018-02-27 2018-08-10 阿里巴巴集团控股有限公司 基于区块链的交易执行方法及装置、电子设备
CN108632381A (zh) * 2018-05-14 2018-10-09 济南浪潮高新科技投资发展有限公司 一种基于区块链的环境监督方法及系统
CN108717431A (zh) * 2018-05-11 2018-10-30 中国科学院软件研究所 一种基于区块链的电子证据存证、验证方法及系统

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7028184B2 (en) 2001-01-17 2006-04-11 International Business Machines Corporation Technique for digitally notarizing a collection of data streams
US7043637B2 (en) 2001-03-21 2006-05-09 Microsoft Corporation On-disk file format for a serverless distributed file system
US20050255154A1 (en) 2004-05-11 2005-11-17 Lena Pereswetoff-Morath Method and composition for treating rhinitis
US7908389B2 (en) 2006-06-20 2011-03-15 Patentvc Ltd. Methods and systems for retrieving fragments from peer clients and servers
US8612305B2 (en) 2008-10-31 2013-12-17 Visa International Service Association User enhanced authentication system for online purchases
KR20120053398A (ko) 2010-11-17 2012-05-25 삼성전자주식회사 컨텐츠를 검증하기 위한 서명 장치와 검증 장치를 포함하는 검증 시스템 및 검증 방법
US9876775B2 (en) 2012-11-09 2018-01-23 Ent Technologies, Inc. Generalized entity network translation (GENT)
US11159318B2 (en) 2015-01-30 2021-10-26 Enrico Maim Methods and systems implemented in a network architecture with nodes capable of performing message-based transactions
WO2016154001A1 (en) 2015-03-20 2016-09-29 Rivetz Corp. Automated attestation of device integrity using the block chain
US20180240107A1 (en) 2015-03-27 2018-08-23 Black Gold Coin, Inc. Systems and methods for personal identification and verification
US10504179B1 (en) 2015-12-08 2019-12-10 Fmr Llc Social aggregated fractional equity transaction partitioned acquisition apparatuses, methods and systems
WO2017027484A1 (en) 2015-08-09 2017-02-16 Ramasamy Celambarasan System and method for microshare based content funding and distribution
US10402792B2 (en) * 2015-08-13 2019-09-03 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
US20170070778A1 (en) * 2015-09-04 2017-03-09 Joshua Ryan Zerlan Personal Secure Event Recording Device
US10318746B2 (en) * 2015-09-25 2019-06-11 Mcafee, Llc Provable traceability
WO2017090041A1 (en) 2015-11-24 2017-06-01 Ben-Ari Adi A system and method for blockchain smart contract data privacy
US9948467B2 (en) 2015-12-21 2018-04-17 Mastercard International Incorporated Method and system for blockchain variant using digital signatures
EP3424179B1 (en) 2016-03-04 2022-02-16 Ping Identity Corporation Method and system for authenticated login using static or dynamic codes
US20170331896A1 (en) 2016-05-13 2017-11-16 De La Rue International Limited Methods and systems for processing assets
US10764067B2 (en) 2016-05-23 2020-09-01 Pomian & Corella, Llc Operation of a certificate authority on a distributed ledger
US10447478B2 (en) * 2016-06-06 2019-10-15 Microsoft Technology Licensing, Llc Cryptographic applications for a blockchain system
GB201611948D0 (en) 2016-07-08 2016-08-24 Kalypton Int Ltd Distributed transcation processing and authentication system
US20180018738A1 (en) 2016-07-14 2018-01-18 Digital Asset Holdings Digital asset platform
GB201613233D0 (en) 2016-08-01 2016-09-14 10Am Ltd Data protection system and method
US10592639B2 (en) 2016-09-06 2020-03-17 Intel Corporation Blockchain-based shadow images to facilitate copyright protection of digital content
US20180216946A1 (en) * 2016-09-30 2018-08-02 Mamadou Mande Gueye Method and system for facilitating provisioning of social activity data to a mobile device based on user preferences
JP6828383B2 (ja) 2016-11-02 2021-02-10 富士通株式会社 表示制御プログラム、表示制御方法および情報処理装置
CN106503995A (zh) * 2016-11-17 2017-03-15 中国银行股份有限公司 一种数据分享方法、源节点、目标节点及系统
CN110050474A (zh) 2016-12-30 2019-07-23 英特尔公司 用于物联网网络中的复合对象的子对象的类型命名和区块链
EP3568794B1 (fr) 2017-01-16 2024-03-13 Enrico Maim Procédés et systèmes pour l'exécution de contrats intelligents dans des environnements sécurisés
US10419225B2 (en) * 2017-01-30 2019-09-17 Factom, Inc. Validating documents via blockchain
US10484346B2 (en) 2017-02-07 2019-11-19 Microsoft Technology Licensing, Llc Establishment of consortium blockchain network
US10102526B1 (en) 2017-03-31 2018-10-16 Vijay K. Madisetti Method and system for blockchain-based combined identity, ownership, integrity and custody management
US10102265B1 (en) 2017-04-12 2018-10-16 Vijay K. Madisetti Method and system for tuning blockchain scalability for fast and low-cost payment and transaction processing
US10944546B2 (en) 2017-07-07 2021-03-09 Microsoft Technology Licensing, Llc Blockchain object interface
CN107659410A (zh) * 2017-08-30 2018-02-02 湖南众享政联科技有限公司 基于区块链防篡改公文传输和存储方法
US20190109877A1 (en) * 2017-10-11 2019-04-11 Microsoft Technology Licensing, Llc Secure application metering
WO2019084908A1 (en) 2017-11-03 2019-05-09 Nokia Technologies Oy Method and apparatus for trusted computing
CN108521590B (zh) * 2018-04-10 2022-08-26 北京息通网络技术有限公司 一种防止虚假视频数据中继的方法与系统
CN108667811A (zh) * 2018-04-18 2018-10-16 成都零光量子科技有限公司 一种自主构建电子证据的方法和监控设备
CN108512653A (zh) * 2018-04-18 2018-09-07 成都零光量子科技有限公司 一种基于区块链的电子证据采集和服务方法
US20200028691A1 (en) 2018-07-20 2020-01-23 Honeywell International Inc. System and method for a blockchain based automated certifiable workflow process
US10656936B2 (en) * 2018-08-30 2020-05-19 Dell Products L.P. Systems and methods for software integrity validation using blockchain

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107169125A (zh) * 2017-05-31 2017-09-15 北京小米移动软件有限公司 多媒体资源的投放统计数据获取方法及装置
CN107292621A (zh) * 2017-06-22 2017-10-24 丁江 海量数据确权存证方法和节点
CN107888375A (zh) * 2017-11-08 2018-04-06 深圳市携网科技有限公司 一种基于区块链技术的电子证据保全系统及方法
CN108389129A (zh) * 2018-02-27 2018-08-10 阿里巴巴集团控股有限公司 基于区块链的交易执行方法及装置、电子设备
CN108717431A (zh) * 2018-05-11 2018-10-30 中国科学院软件研究所 一种基于区块链的电子证据存证、验证方法及系统
CN108632381A (zh) * 2018-05-14 2018-10-09 济南浪潮高新科技投资发展有限公司 一种基于区块链的环境监督方法及系统

Also Published As

Publication number Publication date
WO2020092094A1 (en) 2020-05-07
SG11202101514SA (en) 2021-03-30
US20200136832A1 (en) 2020-04-30
CN109639410B (zh) 2021-04-06
CN109639410A (zh) 2019-04-16
US20200274715A1 (en) 2020-08-27
TW202018557A (zh) 2020-05-16
EP3824403A1 (en) 2021-05-26
EP3824403B1 (en) 2022-01-12
US10958438B2 (en) 2021-03-23
TWI741314B (zh) 2021-10-01
US11258612B2 (en) 2022-02-22

Similar Documents

Publication Publication Date Title
CN109639410B (zh) 基于区块链的数据存证方法及装置、电子设备
TWI701573B (zh) 基於區塊鏈的資料存證方法及裝置、電子設備
TW202018571A (zh) 基於區塊鏈的資料存證方法及裝置、電子設備
CN108898389B (zh) 基于区块链的内容验证方法及装置、电子设备
CN110022298B (zh) 基于区块链的证据验证的方法、装置、电子设备
CN110033259B (zh) 基于区块链的数据存证方法及装置、电子设备
CN109768983B (zh) 基于区块链的多维动态身份识别方法、装置及系统
CN110958319B (zh) 一种基于区块链的侵权存证管理方法及装置
CN113472720B (zh) 数字证书密钥处理方法、装置、终端设备及存储介质
WO2020108130A1 (zh) 基于区块链的业务处理方法及装置、电子设备
CN111737675A (zh) 一种基于区块链的电子签名方法及装置
CN106559433B (zh) 利用数字证书固定电子证据和用户身份的方法及系统
CN109167665B (zh) 一种机器人竞赛规则管理系统
US20230224309A1 (en) Method and system for digital identity and transaction verification
CN117155553A (zh) 一种存证方法、装置、介质和设备
CN112507370A (zh) 一种基于区块链网络的电子证照核验方法
CN113761496A (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