CN111967875A - 基于区块链的文件上链存证方法、装置 - Google Patents
基于区块链的文件上链存证方法、装置 Download PDFInfo
- Publication number
- CN111967875A CN111967875A CN202010836756.5A CN202010836756A CN111967875A CN 111967875 A CN111967875 A CN 111967875A CN 202010836756 A CN202010836756 A CN 202010836756A CN 111967875 A CN111967875 A CN 111967875A
- Authority
- CN
- China
- Prior art keywords
- file
- hash value
- information
- block chain
- transaction
- 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
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000004590 computer program Methods 0.000 claims description 25
- 238000004422 calculation algorithm Methods 0.000 claims description 18
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000012795 verification Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/137—Hash-based
-
- 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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Finance (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本方案涉及一种基于区块链的文件上链存证方法。所述方法包括:通过获取待上链文件的文件信息,并根据文件信息计算得到文件哈希值;接收交易请求,交易请求用于请求将文件写入区块链中;执行交易请求中的交易指令,交易指令中包含有文件哈希值及文件编号信息;根据交易指令,将文件信息写入区块链。无需采用智能合约技术,通过执行交易请求中的交易指令,就可以将文件信息写入区块链,从而完成文件上链,即通过执行区块链上最低成本的一次交易命令,就可以实现将文件哈希值记录在数据块中,提高了文件上链的效率,降低了成本。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种基于区块链的文件上链存证方法、装置、计算机设备及存储介质。
背景技术
随着计算机技术的发展,区块链技术得到了广泛的应用。其中,区块链是一个信息技术领域的术语,从本质上讲,它是一个共享数据库,存储于其中的数据或信息,具有不可伪造、全程留痕、可以追溯、公开透明、集体维护等特征。传统数字文件由各CA签发,可以通过LDAP协议或HTTP协议方式发布,第三方通过访问LDAP或HTTP服务获取公钥文件,通常使用用户DN或用户唯一标识或文件序列号作为检索条件,应用需要根据终端文件的颁发者连接不同CA的LDAP服务或HTTP服务。把各种文件信息记录到区块链上,利用区块链的分布式存储和数据的不可篡改性,实现数字文件的上链,是文件数字存证的有效措施。
现有的文件上链手段,一般的文件上链存证方法都是通过编写智能合约,执行智能合约代码将文件加密后写进区块链数据块。然而,传统的文件上链方法存在效率较低的问题。
发明内容
基于此,为了解决上述技术问题,提供一种基于区块链的文件上链存证方法、装置、计算机设备和存储介质,可以提高文件上链的效率。
一种基于区块链的文件上链存证方法,所述方法包括:
获取待上链文件的文件信息,并根据所述文件信息计算得到文件哈希值;
接收交易请求,所述交易请求用于请求将文件写入区块链中;
执行所述交易请求中的交易指令,所述交易指令中包含有所述文件哈希值及文件编号信息;
根据所述交易指令,将所述文件信息写入所述区块链。
在其中一个实施例中,所述根据所述文件信息计算得到文件哈希值,包括:
根据所述文件信息,采用哈希算法生成所述文件哈希值;
根据所述文件哈希值生成与所述文件哈希值对应的管理秘钥。
在其中一个实施例中,所述管理秘钥包括公钥和私钥;所述根据所述文件哈希值生成与所述文件哈希值对应的管理秘钥,包括:
通过加密算法对所述文件哈希值进行计算,得到所述管理秘钥。
在其中一个实施例中,所述区块链为以太坊兼容的私有链或者联盟链;所述执行所述交易请求中的交易指令,包括:
根据所述交易指令,向所述区块链中的任意地址发送所述以太坊。
在其中一个实施例中,所述交易指令中还包含有发送地址、接收地址、交易数量、附加信息;所述附件信息中包含有所述文件哈希值;所述方法还包括:
在所述附加信息中,通过转换指令将所述文件哈希值转换成十六进制信息。
在其中一个实施例中,在根据所述文件信息计算得到文件哈希值之后,所述方法还包括:
将所述待上链文件进行链下保存。
在其中一个实施例中,所述方法还包括:
采用区块链浏览器读取所述区块链节点上的数据,得到所述区块链上记录的所述文件哈希值;
对链下保存的待上链文件进行哈希计算,得到参考哈希值;
根据所述文件哈希值、所述参考哈希值对所述区块链进行核验;
若所述文件哈希值与所述参考哈希值一致,则表示所述区块链节点上的数据未被改动;若所述文件哈希值与所述参考哈希值不一致,则表示所述区块链节点上的数据被改动。
一种基于区块链的文件上链存证装置,所述装置包括:
哈希值计算模块,用于获取待上链文件的文件信息,并根据所述文件信息计算得到文件哈希值;
请求接收模块,用于接收交易请求,所述交易请求用于请求将文件写入区块链中;
指令执行模块,用于执行所述交易请求中的交易指令,所述交易指令中包含有所述文件哈希值及文件编号信息;
信息写入模块,用于根据所述交易指令,将所述文件信息写入所述区块链。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待上链文件的文件信息,并根据所述文件信息计算得到文件哈希值;
接收交易请求,所述交易请求用于请求将文件写入区块链中;
执行所述交易请求中的交易指令,所述交易指令中包含有所述文件哈希值及文件编号信息;
根据所述交易指令,将所述文件信息写入所述区块链。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待上链文件的文件信息,并根据所述文件信息计算得到文件哈希值;
接收交易请求,所述交易请求用于请求将文件写入区块链中;
执行所述交易请求中的交易指令,所述交易指令中包含有所述文件哈希值及文件编号信息;
根据所述交易指令,将所述文件信息写入所述区块链。
上述基于区块链的文件上链存证方法、装置、计算机设备和存储介质,通过获取待上链文件的文件信息,并根据文件信息计算得到文件哈希值;接收交易请求,交易请求用于请求将文件写入区块链中;执行交易请求中的交易指令,交易指令中包含有文件哈希值及文件编号信息;根据交易指令,将文件信息写入区块链。无需采用智能合约技术,通过执行交易请求中的交易指令,就可以将文件信息写入区块链,从而完成文件上链,即通过执行区块链上最低成本的一次交易命令,就可以实现将文件哈希值记录在数据块中,提高了文件上链的效率,降低了成本。
附图说明
图1为一个实施例中基于区块链的文件上链存证方法的应用环境图;
图2为一个实施例中基于区块链的文件上链存证方法的流程示意图;
图3为一个实施例中基于区块链的文件上链存证装置的结构框图;
图4为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的基于区块链的文件上链存证方法,可以应用于如图1所示的应用环境中。如图1所示,该应用环境包括计算机设备110。计算机设备110可以通过获取待上链文件的文件信息,并根据文件信息计算得到文件哈希值;计算机设备110可以接收交易请求,交易请求用于请求将文件写入区块链中;计算机设备110可以执行交易请求中的交易指令,交易指令中包含有文件哈希值及文件编号信息;计算机设备110可以根据交易指令,将文件信息写入区块链。其中,计算机设备110可以但不限于是各种个人计算机、笔记本电脑、机器人、平板电脑等。
在一个实施例中,如图2所示,提供了一种基于区块链的文件上链存证方法,包括以下步骤:
步骤202,获取待上链文件的文件信息,并根据文件信息计算得到文件哈希值。
待上链文件为需要保存在区块链中的文件,文件信息可以包括文件文字内容、文件图像内容、文件的编号明文等信息。其中,待上链文件的文件形式可以包括图文、音视频等文件形式,还可以是及其它能进行哈希操作的文件形式,在此不做限定。计算机设备可以获取待上链文件的文件信息,并通过哈希算法将待上链文件的文件信息转换为哈希值,即文件哈希值。
步骤204,接收交易请求,交易请求用于请求将文件写入区块链中。
交易请求是在区块链上,从一个哈希地址发起的。其中,哈希地址可以是预先通过哈希算法在区块链上为所有用于建立的哈希地址中的一个。计算机设备可以根据交易请求将文件写入到区块链中。
步骤206,执行交易请求中的交易指令,交易指令中包含有文件哈希值及文件编号信息。
其中,交易指令可以是sendTransaction命令,交易指令中可以包含有文件哈希值及文件编号信息。
步骤208,根据交易指令,将文件信息写入区块链。
交易完成时,文件信息写入区块链。
在本实施例中,通过获取待上链文件的文件信息,并根据文件信息计算得到文件哈希值;接收交易请求,交易请求用于请求将文件写入区块链中;执行交易请求中的交易指令,交易指令中包含有文件哈希值;根据交易指令,将文件信息写入区块链。无需采用智能合约技术,通过执行交易请求中的交易指令,就可以将文件信息写入区块链,从而完成文件上链,即通过执行区块链上最低成本的一次交易命令,就可以实现将文件哈希值记录在数据块中,提高了文件上链的效率,降低了成本。
在一个实施例中,提供的一种基于区块链的文件上链存证方法还可以包括计算文件哈希值的过程,具体过程包括:根据文件信息,采用哈希算法生成文件哈希值;根据文件哈希值生成与文件哈希值对应的管理秘钥。
在一个实施例中,管理秘钥包括公钥和私钥;提供的一种基于区块链的文件上链存证方法还可以包括生成管理秘钥的过程,具体过程包括:通过加密算法对文件哈希值进行计算,得到管理秘钥。其中,加密算法可以是椭圆曲线加密算法,还可以是其它加密算法,在此不作限定。
在一个实施例中,区块链为以太坊兼容的私有链或者联盟链;提供的一种基于区块链的文件上链存证方法还可以包括执行交易指令的过程,具体过程包括:根据交易指令,向区块链中的任意地址发送以太坊。
其中,在区块链上执行交易命令时,计算机设备可以向区块链中任意用户地址发送任意数量的以太坊(ETH,Ethereum),其中,发送的ETH的数量可以是0个、1个等,在此不做限制。
在一个实施例中,交易指令中还包含有发送地址、接收地址、交易数量、附加信息;附件信息中包含有文件哈希值;提供的一种基于区块链的文件上链存证方法还可以包括转换文件哈希值的过程,具体过程包括:在附加信息中,通过转换指令将文件哈希值转换成十六进制信息。
在执行交易指令时,需要输入发送地址、接收地址、交易数量、附加信息等信息,其中,发送地址可以用于From表示;接收地址可以用于to表示、交易数量可以用于value表示、附加信息可以用于data表示。代码可以表示为:
web3.eth.sendTransaction({
from:_from,
to:address,
value:'0x01',
data:_data})
在附加信息data中,可以通过web3.toHex()命令将写入文件的编号明文、文件哈希值等信息转成十六进制信息;在本实施例中,还可以通过其他通用转换十六进制的方法进行信息转换。
在一个实施例中,提供的一种基于区块链的文件上链存证方法还可以包括链下保存文件的过程,具体包括:将待上链文件进行链下保存。
计算机设备可以将待上链文件的文件原文文件及文件图片文件等在链下进行保存。
在一个实施例中,提供的一种基于区块链的文件上链存证方法还可以包括核验区块链的过程,具体过程包括:采用区块链浏览器读取区块链节点上的数据,得到区块链上记录的文件哈希值;对链下保存的待上链文件进行哈希计算,得到参考哈希值;根据文件哈希值、参考哈希值对区块链进行核验;若文件哈希值与参考哈希值一致,则表示区块链节点上的数据未被改动;若文件哈希值与参考哈希值不一致,则表示区块链节点上的数据被改动。
计算机设备可以采用区块链浏览器或者Web3.js等区块链扫描工具读取区块链节点上的数据,从而得到区块链上记录的文件编号、文件哈希值、上链时间等基本数据。
计算机设备可以通过哈希算法对链下保存的待上链文件进行哈希计算,得到待上链文件的参考哈希值。当参考哈希值与文件哈希值一致时,表示文件内容没有进行过任何改动,即区块链的核验结果为存证可信;当参考哈希值与文件哈希值不一致时,表示文件内容经过了改动,即区块链的核验结果为存证不可信。
应该理解的是,虽然上述各个流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述各个流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图3所示,提供了一种基于区块链的文件上链存证装置,包括:哈希值计算模块310、请求接收模块320、指令执行模块330和信息写入模块340,其中:
哈希值计算模块310,用于获取待上链文件的文件信息,并根据文件信息计算得到文件哈希值。
请求接收模块320,用于接收交易请求,交易请求用于请求将文件写入区块链中。
指令执行模块330,用于执行交易请求中的交易指令,交易指令中包含有文件哈希值及文件编号信息。
信息写入模块340,用于根据交易指令,将文件信息写入区块链。
在一个实施例中,哈希值计算模块310还用于根据文件信息,采用哈希算法生成文件哈希值;根据文件哈希值生成与文件哈希值对应的管理秘钥。
在一个实施例中,管理秘钥包括公钥和私钥;哈希值计算模块310还用于通过加密算法对文件哈希值进行计算,得到管理秘钥。
在一个实施例中,区块链为以太坊兼容的私有链或者联盟链;指令执行模块330还用于根据交易指令,向区块链中的任意地址发送以太坊。
在一个实施例中,交易指令中还包含有发送地址、接收地址、交易数量、附加信息;附件信息中包含有文件哈希值;提供的一种基于区块链的文件上链存证装置还包括转换模块,用于在附加信息中,通过转换指令将文件哈希值转换成十六进制信息。
在一个实施例中,提供的一种基于区块链的文件上链存证装置还包括链下保存模块,用于将待上链文件进行链下保存。
在一个实施例中,提供的一种基于区块链的文件上链存证装置还包括核验模块,用于采用区块链浏览器读取区块链节点上的数据,得到区块链上记录的文件哈希值;对链下保存的待上链文件进行哈希计算,得到参考哈希值;根据文件哈希值、参考哈希值对区块链进行核验;若文件哈希值与参考哈希值一致,则表示区块链节点上的数据未被改动;若文件哈希值与参考哈希值不一致,则表示区块链节点上的数据被改动。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于区块链的文件上链存证方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取待上链文件的文件信息,并根据文件信息计算得到文件哈希值;
接收交易请求,交易请求用于请求将文件写入区块链中;
执行交易请求中的交易指令,交易指令中包含有文件哈希值及文件编号信息;
根据交易指令,将文件信息写入区块链。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据文件信息,采用哈希算法生成文件哈希值;根据文件哈希值生成与文件哈希值对应的管理秘钥。
在一个实施例中,管理秘钥包括公钥和私钥;处理器执行计算机程序时还实现以下步骤:通过加密算法对文件哈希值进行计算,得到管理秘钥。
在一个实施例中,区块链为以太坊兼容的私有链或者联盟链;处理器执行计算机程序时还实现以下步骤:根据交易指令,向区块链中的任意地址发送以太坊。
在一个实施例中,交易指令中还包含有发送地址、接收地址、交易数量、附加信息;附件信息中包含有文件哈希值;处理器执行计算机程序时还实现以下步骤:在附加信息中,通过转换指令将文件哈希值转换成十六进制信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:将待上链文件进行链下保存。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:采用区块链浏览器读取区块链节点上的数据,得到区块链上记录的文件哈希值;对链下保存的待上链文件进行哈希计算,得到参考哈希值;根据文件哈希值、参考哈希值对区块链进行核验;若文件哈希值与参考哈希值一致,则表示区块链节点上的数据未被改动;若文件哈希值与参考哈希值不一致,则表示区块链节点上的数据被改动。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取待上链文件的文件信息,并根据文件信息计算得到文件哈希值;
接收交易请求,交易请求用于请求将文件写入区块链中;
执行交易请求中的交易指令,交易指令中包含有文件哈希值及文件编号信息;
根据交易指令,将文件信息写入区块链。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据文件信息,采用哈希算法生成文件哈希值;根据文件哈希值生成与文件哈希值对应的管理秘钥。
在一个实施例中,管理秘钥包括公钥和私钥;计算机程序被处理器执行时还实现以下步骤:通过加密算法对文件哈希值进行计算,得到管理秘钥。
在一个实施例中,区块链为以太坊兼容的私有链或者联盟链;计算机程序被处理器执行时还实现以下步骤:根据交易指令,向区块链中的任意地址发送以太坊。
在一个实施例中,交易指令中还包含有发送地址、接收地址、交易数量、附加信息;附件信息中包含有文件哈希值;计算机程序被处理器执行时还实现以下步骤:在附加信息中,通过转换指令将文件哈希值转换成十六进制信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将待上链文件进行链下保存。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:采用区块链浏览器读取区块链节点上的数据,得到区块链上记录的文件哈希值;对链下保存的待上链文件进行哈希计算,得到参考哈希值;根据文件哈希值、参考哈希值对区块链进行核验;若文件哈希值与参考哈希值一致,则表示区块链节点上的数据未被改动;若文件哈希值与参考哈希值不一致,则表示区块链节点上的数据被改动。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于区块链的文件上链存证方法,其特征在于,所述方法包括:
获取待上链文件的文件信息,并根据所述文件信息计算得到文件哈希值;
接收交易请求,所述交易请求用于请求将文件写入区块链中;
执行所述交易请求中的交易指令,所述交易指令中包含有所述文件哈希值及文件编号信息;
根据所述交易指令,将所述文件信息写入所述区块链。
2.根据权利要求1所述的方法,其特征在于,所述根据所述文件信息计算得到文件哈希值,包括:
根据所述文件信息,采用哈希算法生成所述文件哈希值;
根据所述文件哈希值生成与所述文件哈希值对应的管理秘钥。
3.根据权利要求2所述的方法,其特征在于,所述管理秘钥包括公钥和私钥;所述根据所述文件哈希值生成与所述文件哈希值对应的管理秘钥,包括:
通过加密算法对所述文件哈希值进行计算,得到所述管理秘钥。
4.根据权利要求1所述的方法,其特征在于,所述区块链为以太坊兼容的私有链或者联盟链;所述执行所述交易请求中的交易指令,包括:
根据所述交易指令,向所述区块链中的任意地址发送所述以太坊。
5.根据权利要求1所述的方法,其特征在于,所述交易指令中还包含有发送地址、接收地址、交易数量、附加信息;所述附件信息中包含有所述文件哈希值;所述方法还包括:
在所述附加信息中,通过转换指令将所述文件哈希值转换成十六进制信息。
6.根据权利要求1所述的方法,其特征在于,在根据所述文件信息计算得到文件哈希值之后,所述方法还包括:
将所述待上链文件进行链下保存。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
采用区块链浏览器读取所述区块链节点上的数据,得到所述区块链上记录的所述文件哈希值;
对链下保存的待上链文件进行哈希计算,得到参考哈希值;
根据所述文件哈希值、所述参考哈希值对所述区块链进行核验;
若所述文件哈希值与所述参考哈希值一致,则表示所述区块链节点上的数据未被改动;若所述文件哈希值与所述参考哈希值不一致,则表示所述区块链节点上的数据被改动。
8.一种基于区块链的文件上链存证装置,其特征在于,所述装置包括:
哈希值计算模块,用于获取待上链文件的文件信息,并根据所述文件信息计算得到文件哈希值;
请求接收模块,用于接收交易请求,所述交易请求用于请求将文件写入区块链中;
指令执行模块,用于执行所述交易请求中的交易指令,所述交易指令中包含有所述文件哈希值及文件编号信息;
信息写入模块,用于根据所述交易指令,将所述文件信息写入所述区块链。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010836756.5A CN111967875A (zh) | 2020-08-19 | 2020-08-19 | 基于区块链的文件上链存证方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010836756.5A CN111967875A (zh) | 2020-08-19 | 2020-08-19 | 基于区块链的文件上链存证方法、装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111967875A true CN111967875A (zh) | 2020-11-20 |
Family
ID=73388537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010836756.5A Pending CN111967875A (zh) | 2020-08-19 | 2020-08-19 | 基于区块链的文件上链存证方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111967875A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112767110A (zh) * | 2021-01-20 | 2021-05-07 | 中国工商银行股份有限公司 | 大数据分散上链方法及系统 |
CN113468599A (zh) * | 2021-06-30 | 2021-10-01 | 网易(杭州)网络有限公司 | 文件存证方法、装置、系统、设备和存储介质 |
CN113938491A (zh) * | 2021-09-02 | 2022-01-14 | 中国科学院信息工程研究所 | 一种基于区块链技术的指令数据可溯源的防篡改方法和系统 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102236767A (zh) * | 2011-06-10 | 2011-11-09 | 上海市金山区青少年活动中心 | 结合哈希值的文件加密方法 |
CN107888375A (zh) * | 2017-11-08 | 2018-04-06 | 深圳市携网科技有限公司 | 一种基于区块链技术的电子证据保全系统及方法 |
CN109918925A (zh) * | 2019-02-19 | 2019-06-21 | 上海泉坤信息科技有限公司 | 数据存储方法、数据节点及存储介质 |
KR20190089506A (ko) * | 2018-01-23 | 2019-07-31 | 박동화 | 블록체인상에서 공유 분산장부와 외부 저장장치에 정보를 분리저장하여 구현한 안전한 전자계약시스템 |
CN110096901A (zh) * | 2019-05-08 | 2019-08-06 | 北京智签科技有限公司 | 电子合同数据加密存储方法及签约客户端 |
CN110113167A (zh) * | 2019-04-01 | 2019-08-09 | 广州杰赛科技股份有限公司 | 一种智能终端的信息保护方法、系统以及可读存储介质 |
CN110245511A (zh) * | 2019-06-24 | 2019-09-17 | 浪潮卓数大数据产业发展有限公司 | 一种基于区块链的文件加密存储方法 |
CN110601856A (zh) * | 2019-09-24 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种基于区块链网络的数据交互方法及装置 |
CN110598377A (zh) * | 2019-09-26 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 基于区块链的软件序列号管理方法以及装置 |
CN110912937A (zh) * | 2019-12-23 | 2020-03-24 | 杭州中科先进技术研究院有限公司 | 一种基于区块链的数字存证平台和存证方法 |
CN111541545A (zh) * | 2020-04-03 | 2020-08-14 | 上海七印信息科技有限公司 | 存证包生成方法、装置、计算机设备和存储介质 |
CN111552676A (zh) * | 2020-04-26 | 2020-08-18 | 北京众享比特科技有限公司 | 基于区块链的存证方法、装置、设备及介质 |
-
2020
- 2020-08-19 CN CN202010836756.5A patent/CN111967875A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102236767A (zh) * | 2011-06-10 | 2011-11-09 | 上海市金山区青少年活动中心 | 结合哈希值的文件加密方法 |
CN107888375A (zh) * | 2017-11-08 | 2018-04-06 | 深圳市携网科技有限公司 | 一种基于区块链技术的电子证据保全系统及方法 |
KR20190089506A (ko) * | 2018-01-23 | 2019-07-31 | 박동화 | 블록체인상에서 공유 분산장부와 외부 저장장치에 정보를 분리저장하여 구현한 안전한 전자계약시스템 |
CN109918925A (zh) * | 2019-02-19 | 2019-06-21 | 上海泉坤信息科技有限公司 | 数据存储方法、数据节点及存储介质 |
CN110113167A (zh) * | 2019-04-01 | 2019-08-09 | 广州杰赛科技股份有限公司 | 一种智能终端的信息保护方法、系统以及可读存储介质 |
CN110096901A (zh) * | 2019-05-08 | 2019-08-06 | 北京智签科技有限公司 | 电子合同数据加密存储方法及签约客户端 |
CN110245511A (zh) * | 2019-06-24 | 2019-09-17 | 浪潮卓数大数据产业发展有限公司 | 一种基于区块链的文件加密存储方法 |
CN110601856A (zh) * | 2019-09-24 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种基于区块链网络的数据交互方法及装置 |
CN110598377A (zh) * | 2019-09-26 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 基于区块链的软件序列号管理方法以及装置 |
CN110912937A (zh) * | 2019-12-23 | 2020-03-24 | 杭州中科先进技术研究院有限公司 | 一种基于区块链的数字存证平台和存证方法 |
CN111541545A (zh) * | 2020-04-03 | 2020-08-14 | 上海七印信息科技有限公司 | 存证包生成方法、装置、计算机设备和存储介质 |
CN111552676A (zh) * | 2020-04-26 | 2020-08-18 | 北京众享比特科技有限公司 | 基于区块链的存证方法、装置、设备及介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112767110A (zh) * | 2021-01-20 | 2021-05-07 | 中国工商银行股份有限公司 | 大数据分散上链方法及系统 |
CN113468599A (zh) * | 2021-06-30 | 2021-10-01 | 网易(杭州)网络有限公司 | 文件存证方法、装置、系统、设备和存储介质 |
CN113938491A (zh) * | 2021-09-02 | 2022-01-14 | 中国科学院信息工程研究所 | 一种基于区块链技术的指令数据可溯源的防篡改方法和系统 |
CN113938491B (zh) * | 2021-09-02 | 2022-10-14 | 中国科学院信息工程研究所 | 一种基于区块链技术的指令数据可溯源的防篡改方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111967875A (zh) | 基于区块链的文件上链存证方法、装置 | |
US10992481B2 (en) | Two-dimensional code generation method, apparatus, data processing method, apparatus, and server | |
CN109474619B (zh) | 数据加密上报方法及装置、数据解密方法及装置 | |
CN111475824B (zh) | 数据访问方法、装置、设备和存储介质 | |
CN111291392B (zh) | 电子签章方法、装置、电子设备及存储介质 | |
CN110543510B (zh) | 票据数据处理方法、装置、存储介质和计算机设备 | |
CN110768784B (zh) | 密码传输方法、装置、计算机设备和存储介质 | |
WO2021003977A1 (zh) | 违约信息查询方法、装置、计算机设备和存储介质 | |
CN108809655B (zh) | 数据处理方法、装置、设备和存储介质 | |
CN111683064A (zh) | 基于区块链的数据流转方法、装置、介质、设备及应用 | |
CN112100142A (zh) | 基于区块链的数字资产处理方法及系统 | |
CN114615031A (zh) | 文件存储方法、装置、电子设备及存储介质 | |
CN104484628A (zh) | 一种具有加密解密功能的多应用智能卡 | |
CN115470156A (zh) | 基于rdma的内存使用方法、系统、电子设备和存储介质 | |
CN111382425B (zh) | 多签名机制下的应用安装管理方法、智能终端及存储介质 | |
CN107133517B (zh) | 一种基于内存中数据加密和计算的数据还原方法 | |
CN110827959B (zh) | 医学影像处理方法、装置和存储介质 | |
CN112416350A (zh) | 视图页面构建方法、装置、计算机设备和存储介质 | |
CN114448722B (zh) | 跨浏览器登录方法、装置、计算机设备和存储介质 | |
JP6755539B2 (ja) | ネットワークに著作物を公開するための方法および装置 | |
CN114244519B (zh) | 密码的校验方法、装置、计算机设备和存储介质 | |
CN113645183B (zh) | 数据加密传输方法、系统、计算机设备及存储介质 | |
WO2019019675A1 (zh) | 网站模拟登录方法、装置、服务端和可读存储介质 | |
CN110995437B (zh) | 基于etc系统的用户信息录入方法、装置、设备和存储介质 | |
CN113360859B (zh) | 基于Python解释器的加密文件安全控制方法和装置 |
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 |