CN108537540A - 一种电子数据保全方法和设备 - Google Patents

一种电子数据保全方法和设备 Download PDF

Info

Publication number
CN108537540A
CN108537540A CN201810243051.5A CN201810243051A CN108537540A CN 108537540 A CN108537540 A CN 108537540A CN 201810243051 A CN201810243051 A CN 201810243051A CN 108537540 A CN108537540 A CN 108537540A
Authority
CN
China
Prior art keywords
electronic data
data
time point
cryptographic hash
chain
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
CN201810243051.5A
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.)
Beijing Ultra Thunder Technology Center (limited Partnership)
Original Assignee
Beijing Ultra Thunder Technology Center (limited Partnership)
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 Beijing Ultra Thunder Technology Center (limited Partnership) filed Critical Beijing Ultra Thunder Technology Center (limited Partnership)
Priority to CN201810243051.5A priority Critical patent/CN108537540A/zh
Publication of CN108537540A publication Critical patent/CN108537540A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • 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

Abstract

本发明涉及一种利用区块链技术对电子数据进行存证或保全的方法和存储并可执行该方法的设备,对多个电子数据进行排序;将所述电子数据按所述排序逐个进行处理,形成与之对应的结合数据;对与最后一个电子数据对应的结合数据进行哈希计算,得到其哈希值,将该哈希值写入区块链操作的特定位置,记录位置和时间点信息。于是大大降低了挂链成本,保证了时间点的不可篡改性。

Description

一种电子数据保全方法和设备
技术领域
本发明涉及电子数据保全领域,具体涉及一种利用区块链技术对电子数据进行存证或保全的方法和存储并可执行该方法的设备,尤其提供一种快速简单且灵活的电子数据打包和挂链(区块链)方法,在保证数据不可篡改的前提下较大程度地降低区块链挂链费用。
背景技术
电子数据(或称为“数据原文”)的内容存证、保全或固化,也称为电子数据的完整性,系指该数据原文自某一固化之时间点起,即未被篡改过。电子数据的载体指的是由二进制编码(Binary Code)所组成的任何电子文件,格式不拘,大小不限。
传统的电子数据存证、保全或固化过程为:
(1)将该数据原文经由哈希运算(即使用哈希算法或哈希函数,Hash Algorithm 或Hash Function,例如,SHA-1,SHA-2,SHA-256,SHA-512等算法或函数)计算出固定长度的哈希值(称为“原文哈希值”)或数据摘要(Message Digest)、数据指纹(DigitalFingerprint),该数据原文与原文哈希值形成概率上的一对一映射关系,也就是说,不同的数据原文经过哈希运算所产生的原文哈希值不会相同(准确的说,相同的概率非常小,在实务中,小到可以忽略),反之亦然;
(2)就此原文哈希值与当时计算哈希值的时间点(称为“固化时间点”或“保全时间点”)结合(结合的方式可以是简单的前后串联形成一个新的电子数据,或者可以以相对复杂的混联或衍生方式形成一个新的电子数据,但是结合方式的输入与输出得是1对1映射关系)后再次进行哈希运算而得到新的哈希值,称之为“原文时间戳”。
利用该原文时间戳即可于后期验证该数据原文自该固化时间点起至验证时是否被篡改过。后期验证时,仅需将待证数据原文与待证时间点,按原来固化的方式重新计算出新的原文时间戳,然后与原先的原文时间戳对比,如果二者一致,就证实了待证数据原文自待证时间点起至验证时未曾被篡改过,即该数据原文的完整性得以核实。但是,由于计算机(或,智能设备与系统)上的时钟(即,时间点)可被人为重新设置,换言之,此时间点是人为可变的,其可信度容易受到质疑,如何提供绝对可信的时间点是技术人员面临的挑战。
如今,利用区块链进行电子数据存证、保全或固化是一种较为可靠的方式。区块链(Blockchain,例如,比特链)上的区块(Block),由区块头(Block Header)和区块体(BlockBody)和交易数据(Transaction Data)所组成,按区块生成的时间(称之为“区块时间点”,记录于区块头中)先后经由区块头里的哈希指针(即前个区块中部分区块头数据的哈希值)而排序成链,并且一旦经过共识机制确认之后,区块中的数据(含“区块时间点”)即具有概率上的不可篡改性。交易数据包含多个交易(或操作),每笔交易(或操作)中,除了交易主体和交易金额(依据区块链的不同,或许是其他客体,不一定是金额)以及相关的数据之外,还包含了一段由交易发起主体任意填写的数据空间(称之为“交易附言”、“备注栏”、“自定义栏”或“状态(State)”等),换言之,只要该交易附言的空间大于哈希值的长度,则该交易附言即可用来记录任何电子数据的哈希值或时间戳(此过程称之为“数据挂链”或“数据锚定”,简称为“挂链”或“锚定”)。但是,每笔交易(或操作)得支付相应的“交易费”(或称“矿工费”),如果用户需要保全或固化的电子数据很多,每份电子数据都单独进行一次挂链,所需的交易费就会很高。
发明内容
本发明要解决的技术问题:
1.实践中,不同民事主体就同一数据原文(例如,价值不菲的电影剧本,其载体为电子文件)均主张所有权,并均提供原文时间戳作为证据,就法律而言,如无其他相反证据或佐证,则以原文时间戳中的固化时间点的先后为准,在先固化的即为所有权人。换言之,就数据原文所有权而言,固化时间点的重要性绝不亚于数据原文本身。但是,众所周知,除了少数的例外,大多数计算机(或,智能设备与系统)的时间点是可以人为改变或重新设置的(称为“可变时间点”或“相对可信时间点”),其可信度往往受到质疑,所以,如何保证时间点的不可篡改性(称为“不可变时间点”或“绝对可信时间点”)即为本发明所要解决的技术问题之一。
2.“挂链”是指将哈希值(或时间戳)通过交易写入区块链交易数据(或操作数据)中的某个位置里而达到永久固化的目的,换言之,经由挂链,永久固化原文哈希值(或原文时间戳)并且以区块时间点作为永久固化的时间点,但是,因为每次挂链(即,每笔交易或操作)须支付相应的交易费用,为了减少挂链的总体成本(即,多次交易费用),也是本发明要解决的技术问题。
本发明的技术方案:
本发明提供一种快速简单且灵活的电子数据打包(或称“封装”、“聚合”等)方式,可以将多个原文哈希值(或原文时间戳)打包后一起挂链,不但能一次性永久固化多个原文哈希值(或原文时间戳),从而节省交易费,同时利用区块时间点作为永久固化时间点,从而提供了不可变时间点的技术解决方案。
本发明技术方案提供一种电子数据保全方法,包括以下步骤:
对多个电子数据进行排序;
将所述电子数据逐个进行处理,形成与之对应的结合数据;
对与最后一个电子数据对应的结合数据进行哈希计算,得到其哈希值,将该哈希值写入区块链操作的特定位置,记录位置和时间点信息。
该方法还包括验证步骤,将待验证的电子数据重复上述步骤,将所新获得的与最后一个电子数据对应的结合数据的哈希值与原哈希值对比,如果一致,则全体电子数据均未被篡改过,反之,则至少有一个电子数据被篡改过。
用字母代表数据表示如下:
假设有N个待挂链电子数据,本发明技术方案提供一种电子数据保全(打包和挂链)方法,其中:Mk表示第k个电子数据,Jk表示Mk与Jk-1的哈希值以一一对应的方式结合形成的数据,包括以下步骤:
S0: 对N个电子数据排序,表示为M1,M2,……,MN
按照k由1到N顺序,对电子数据Mk逐个进行下列步骤:
S1: k=1, 设定Jk-1的哈希值HVk-1初始值即HV0为0,将电子数据M1与哈希值HV0结合得到J1,计算出J1的哈希值HV1
……
SK: k=k, 将电子数据Mk与Jk-1的哈希值HVk-1按照与上一步骤中同样的结合方式结合得到Jk,计算出Jk的哈希值HVk
……
SN: k=N, 将电子数据MN与JN-1的哈希值HVN-1按照与上一步骤中同样的结合方式结合得到JN,计算出JN的哈希值HVN
ST:将HVN写入区块链操作的特定位置,记录下该位置数据与时间点。
验证时,将待验证的电子数据重复步骤S0-SN,将所获得的HVN与步骤ST所记录的挂链位置指针所指向的区块链交易的链上数值(即,先前写入的HVN)对比,如果一致,则全体电子数据(即整个序列的电子数据)均未被篡改过,反之,则至少有一个电子数据被篡改过。
优选的,所述步骤S0中的排序方式为,按照电子数据的生成时间点进行排序,更优选的,可以精确到毫秒,甚至于微秒或更小的时间单位。
优选的,所述方法中Mk与Jk-1的哈希值一一对应的结合方式,是通过串连运算将两个数据前后顺序连接。
优选的,所述步骤ST中的区块链可以是比特链、以太坊链或其他具有数据不可篡改性的区块链。
优选的,所述步骤ST中的特定位置,是比特链中的“交易附言”内;所述位置数据,是比特链中的交易代号,还可以包括区块高度;所述时间点,是比特链中的“时间戳(Timestamp)”,精确到秒。
本发明技术方案还提供一种电子数据保全设备,该设备能够存储多条指令,并可以通过处理器执行指令来执行上述方法。
发明创新点及实施效果:
通常的利用区块链技术进行电子数据存证的方法和设备,都是对N个电子数据逐个挂到区块链上,挂每一个电子数据的一次挂链操作均需要支付一笔交易费用,而利用本发明的方案,先将多个电子数据按照本发明的方法进行打包,只需将最后一个数据(哈希值或时间戳)进行挂链操作,只需要支付一笔交易费用就可以完成N个电子数据的挂链操作,大大降低了挂链成本。
而且经由挂链,永久固化原文哈希值(或原文时间戳)并且以区块时间点作为永久固化的时间点,保证了时间点的不可篡改性。
附图说明
图1为本发明实施例1的示意图。
具体实施方式
本发明优选实施例提供的技术方案及步骤如下:
其中:
假设有N个待挂链电子数据(每个电子数据可以是任何一个由二进制编码构成的数据文件),每个电子数据赋予唯一的标识(称为“数据标识”),并依据该标识将电子数据由低到高予以排序(称之为“电子数据序列”),典型的标识即为该电子数据的生成时间点,可以精确到毫秒,甚至于微秒或更小的时间单位,以确保其序列性和唯一性(排序后,首个电子数据称之为M1,次个电子数据称之为M2,第k个电子数据为Mk,以此类推,最后一个电子数据称之为MN);
Jk表示第k个电子数据Mk与第k-1个电子数据的哈希值HVk-1结合(Join)后的数据,结合的方式有多种,只要能保证两者1对1的映射关系,换言之,以函数的方式表示,Jk = f(Mk,HVk-1, ...), 其中f()为结合函数,则其输入必须包含Mk与HVk-1, 并且该函数为1对1映射函数,即,不同的输入产生不同的输出,不同的输出其输入也必定不同。
优选为串连,较为简单,即Jk = Mk|| HVk-1或Jk = HVk-1||Mk, 其中 || 为串连运算(Concatenate), 即将二个数据按前后顺序连接在一起形成一个新的数据。
或者,结合方式还可是Jk= Hash(Mk) || HVk-1或Jk = HVk-1|| Hash(Mk),其中Hash()为任何哈希函数,典型的为Hash256函数;
或者其他任何结合Mk(甚至可以包含其他数据)与HVk-1的方式,只要能保证两者是1对1的映射关系。
HVk为Jk的哈希值,例如,HVk = Hash256(Jk)
依照先前电子数据的排序,就Mk逐个进行下列步骤;
S1: k=1, 设定哈希值HVk-1即HV0的初始值为0,就待挂链的电子数据M1与哈希值HV0(也称之为哈希指针)按照一选定的方式结合后得到J1,计算出J1的哈希值HV1
S2: k=2,就待挂链的电子数据M2与J1的哈希值HV1,按照与上步骤中同样的方式结合后得到J2,计算出J2的哈希值HV2
……
SK: k=k, 就待挂链的电子数据Mk与Jk-1的哈希值HVk-1,按照与上步骤中同样的方式结合后得到Jk,计算出Jk的哈希值HVk
……
SN: k=N,就待挂链的电子数据MN与JN-1的哈希值HVN-1,按照与上步骤中同样的方式结合后得到JN,计算出JN的哈希值HVN
ST:进行一笔区块链操作(或“交易”,不同的区块链或许有不同的名称,比特链中称之为“交易”),将HVN写入该操作的特定位置内(比特链中,是写到“交易附言”内),并记录下该“操作纪录位置数据”(或称“挂链位置指针”,“比特链”中为:交易代号、区块高度,其中,区块高度不是必须的)与“挂链时间点”(即,区块生成时的时间点,“比特链”中称之为“时间戳(Timestamp)”,精确到秒);
一旦操作确认完成,HVN(称之为“链上数值”)即被写入(或固化到)区块链上的区块内的交易记录内,其位置则被记录在挂链位置指针,同时挂链时间点即为该区块的生成时间,换言之,挂链位置指针和挂链时间点与HVN的“对应关系”即被建立与确认(即被“固化”在区块链上),以供后期验证所需。
验证时,将待验证的电子数据序列,重复步骤S1-SN,将所获得的HVN与步骤ST所记录的挂链位置指针所指向的区块链交易的链上数值(即,先前写入的HVN)对比,如果一致,则全体电子数据(即整个序列的电子数据)均未被篡改过,反之,则至少有一个电子数据被篡改过。此外,全体电子数据的固化时间点即为挂链时间点,而该挂链时间点即为区块链上存储该区块链交易的区块时间点,是无法被篡改的,换言之,该固化时间点为不可变时间点。
另外,本实施例中的方法可以通过执行存储在设备中的指令来实现,本实施例中的设备可以是电脑终端,也可以是移动终端中的APP等。
最后应说明的是:以上所述的实施例仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或全部技术特征进行等同替换;而这些修改或替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (18)

1.一种电子数据保全方法,其特征在于包括以下步骤:
对多个电子数据进行排序;
将所述电子数据按所述排序逐个进行处理,形成与之对应的结合数据;
对与最后一个电子数据对应的结合数据进行哈希计算,得到其哈希值,将该哈希值写入区块链操作的特定位置,记录位置和时间点信息。
2.根据权利要求1所述的电子数据保全方法,其特征在于还包括验证步骤,将待验证的电子数据重复上述步骤,将所新获得的与最后一个电子数据对应的结合数据的哈希值与原哈希值对比,如果一致,则全体电子数据均未被篡改过,反之,则至少有一个电子数据被篡改过。
3.根据权利要求1所述的电子数据保全方法,其特征在于所述排序方法为按照电子数据的生成时间点进行排序。
4.根据权利要求3所述的电子数据保全方法,其特征在于,所述生成时间点精确到毫秒、微秒或更小的时间单位。
5.根据权利要求1所述的电子数据保全方法,其特征在于,所述结合数据的形成方式,是通过串连运算将所述电子数据与前一个结合数据的哈希值前后顺序连接。
6.根据权利要求1所述的电子数据保全方法,其特征在于,所述步骤中的区块链为比特链或以太坊链或其他具有数据不可篡改性的区块链。
7.根据权利要求6所述的电子数据保全方法,其特征在于,所述步骤中的特定位置为比特链中的“交易附言”;所述位置数据为比特链中的交易代号。
8.根据权利要求7所述的电子数据保全方法,其特征在于,所述时间点为区块生成时的时间点。
9.根据权利要求8所述的电子数据保全方法,其特征在于,所述区块生成时的时间点精确到秒,所述位置数据还包括区块高度。
10.一种电子数据保全设备,其特征在于所述设备存储有多条指令,所述指令适于由处理器加载并执行以下步骤:
对多个电子数据进行排序;
将所述电子数据按所述排序逐个进行处理,形成与之对应的结合数据;
对与最后一个电子数据对应的结合数据进行哈希计算,得到其哈希值,将该哈希值写入区块链操作的特定位置,记录位置和时间点信息。
11.根据权利要求10所述的电子数据保全设备,其特征在于还包括验证步骤,将待验证的电子数据重复上述步骤,将所新获得的与最后一个电子数据对应的结合数据的哈希值与原哈希值对比,如果一致,则全体电子数据均未被篡改过,反之,则至少有一个电子数据被篡改过。
12.根据权利要求10所述的电子数据保全设备,其特征在于所述排序方法为按照电子数据的生成时间点进行排序。
13.根据权利要求12所述的电子数据保全设备,其特征在于,所述生成时间点精确到毫秒、微秒或更小的时间单位。
14.根据权利要求10所述的电子数据保全设备,其特征在于,所述结合数据的形成方式,是通过串连运算将所述电子数据与前一个结合数据的哈希值前后顺序连接。
15.根据权利要求10所述的电子数据保全设备,其特征在于,所述步骤中的区块链为比特链或以太坊链或其他具有数据不可篡改性的区块链。
16.根据权利要求15所述的电子数据保全设备,其特征在于,所述步骤中的特定位置为比特链中的“交易附言”;所述位置数据为比特币链中的交易代号。
17.根据权利要求16所述的电子数据保全设备,其特征在于,所述时间点为区块生成时的时间点。
18.根据权利要求17所述的电子数据保全设备,其特征在于,所述区块生成时的时间点精确到秒,所述位置数据还包括区块高度。
CN201810243051.5A 2018-03-23 2018-03-23 一种电子数据保全方法和设备 Pending CN108537540A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810243051.5A CN108537540A (zh) 2018-03-23 2018-03-23 一种电子数据保全方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810243051.5A CN108537540A (zh) 2018-03-23 2018-03-23 一种电子数据保全方法和设备

Publications (1)

Publication Number Publication Date
CN108537540A true CN108537540A (zh) 2018-09-14

Family

ID=63483667

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810243051.5A Pending CN108537540A (zh) 2018-03-23 2018-03-23 一种电子数据保全方法和设备

Country Status (1)

Country Link
CN (1) CN108537540A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006060722A (ja) * 2004-08-24 2006-03-02 Hitachi Ltd 電子文書の真正性保証方法および電子文書の公開システム
WO2011150845A1 (zh) * 2010-11-01 2011-12-08 华为技术有限公司 验证流媒体内容完整性的方法、设备以及系统
EP3182318A1 (de) * 2015-12-16 2017-06-21 Bundesdruckerei GmbH Signaturgenerierung durch ein sicherheitstoken
CN106980488A (zh) * 2017-03-14 2017-07-25 腾讯科技(深圳)有限公司 随机数生成方法及装置
CN107169055A (zh) * 2017-04-27 2017-09-15 北京众享比特科技有限公司 一种数据库表的操作方法和操作系统
CN107248074A (zh) * 2017-03-29 2017-10-13 阿里巴巴集团控股有限公司 一种基于区块链的业务处理方法及设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006060722A (ja) * 2004-08-24 2006-03-02 Hitachi Ltd 電子文書の真正性保証方法および電子文書の公開システム
WO2011150845A1 (zh) * 2010-11-01 2011-12-08 华为技术有限公司 验证流媒体内容完整性的方法、设备以及系统
EP3182318A1 (de) * 2015-12-16 2017-06-21 Bundesdruckerei GmbH Signaturgenerierung durch ein sicherheitstoken
CN106980488A (zh) * 2017-03-14 2017-07-25 腾讯科技(深圳)有限公司 随机数生成方法及装置
CN107248074A (zh) * 2017-03-29 2017-10-13 阿里巴巴集团控股有限公司 一种基于区块链的业务处理方法及设备
CN107169055A (zh) * 2017-04-27 2017-09-15 北京众享比特科技有限公司 一种数据库表的操作方法和操作系统

Similar Documents

Publication Publication Date Title
US20230092477A1 (en) Trustless deterministic state machine
US20210049715A1 (en) Blockchain-based data procesing method, apparatus, and electronic device
CN112395300B (zh) 基于区块链的数据处理方法、装置、设备及可读存储介质
CN101853190B (zh) 一种适用于嵌入式处理器的数据完整性验证方法
CN109951290B (zh) 一种链式账本的授时认证方法、装置及设备
CN107171812A (zh) 一种基于区块链的无密钥签名基础设施构建方法
CN111209591B (zh) 一种按时间排序的存储结构与快速查询的方法
CN111444196B (zh) 块链式账本中全局状态的哈希的生成方法、装置及设备
CN111461751B (zh) 基于区块链的房产信息链上组织方法、历史状态追溯方法及装置
CN112347521A (zh) 一种基于医疗区块链的医疗数据管理方法及系统
CN110059084B (zh) 一种数据存储方法、装置及设备
CN110061843B (zh) 一种链式账本中的块高创建方法、装置及设备
CN113112252B (zh) 基于区块链的资源转移方法、装置、电子设备及存储介质
CN111198888A (zh) 一种数字货币冠字号码动态生成及监管的方法和系统
CN112286963A (zh) 一种区块链终端数据可信查询系统及其实现方法
CN110188572A (zh) 一种应用于区块链的可消耗凭证的验证方法和装置
CN115840787A (zh) 基于区块链的供应链数据共享方法、装置、设备及介质
CN107526817A (zh) 一种业务员编码智能生成方法、设备及存储介质
CN113362068A (zh) 一种轻节点验证区块链状态转移的方法
CN108537540A (zh) 一种电子数据保全方法和设备
CN110008210B (zh) 一种索引创建方法、装置及设备
CN112600898B (zh) 一种基于区块链技术的电子档案存储方法
CN109285043A (zh) 一种产品模块化的配置方法、终端设备及存储介质
CN114462998A (zh) 一种日志防篡改方法、系统及存储介质
CN117271528B (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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180914

WD01 Invention patent application deemed withdrawn after publication