一种文件存储方法、装置、设备及存储介质与流程

文档序号:16331583发布日期:2018-12-19 06:14阅读:112来源:国知局
一种文件存储方法、装置、设备及存储介质与流程

本发明涉及区块链领域,具体而言,涉及一种文件存储方法、装置、设备及存储介质。

背景技术

由于不动产数据涉及大量的图片及文件数据(合同、业务办理表格扫描件、测绘图纸、业务办理附件扫描件),而这些数据如果通过区块链进行共识,会导致区块链有以下几个问题:

a.单个区块文件过大,影响效率;

b.区块链节点数据膨胀速度过快;

然而,目前传统做法是将大文件/图片不存储到区块链上,存储在业务层,将文件的hash值存储上链进行存证,但是会导致文件在外部丢失,无法提供足够保护;以及缺乏在业务办理时,对文件的校验,仅仅做了存证,证明图片没有经过篡改以及缺乏对经过正常修改、替换的凭证文件修改记录追踪。



技术实现要素:

本发明实施例提供的一种文件存储方法、装置、设备及存储介质,可以解决现有技术中的存在的文件丢失无法加强对文件的保护的技术问题。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供的一种文件存储方法,包括:获取待存储文件在中转服务器的地址;根据所述地址将所述待存储文件从所述中转服务器同步到区块链文件服务器节点;对所述待存储文件进行预处理,生成签名数据;将所述签名数据进行上链存储,并在数据节点间完成共识;将所述待存储文件在所有文件节点进行共识与同步处理,并返回用于表征所述待存储文件上链成功的成功信息。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,所述的获取待存储文件在中转服务器的地址,包括:通过调用预设接口函数,获取待存储文件在中转服务器中的地址,所述中转服务器中存储有至少一个所述待存储文件。

结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,所述的对所述待存储文件进行预处理,生成签名数据,包括:对所述待存储文件进行格式转换与压缩处理,生成文件特征值与文件访问链接;根据所述文件特征值与所述文件访问链接生成签名数据。

结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,在将所述待存储文件在所有文件节点进行共识与同步处理,并返回用于表征所述待存储文件上链成功的成功信息之后,还包括:根据所述成功信息获取业务办理的合约数据;解析所述合约数据,得到所述文件访问链接;确定所述文件访问链接所对应的文件;将解压后的所述文件存储至所述中转服务器上,生成外部访问链接,以通过所述外部访问链接与业务办理数据共同在外部公示。

结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,在确定所述文件访问链接所对应的文件之前,还包括:根据所述合约数据确定所述签名数据、权限信息以及所述文件特征值;获取所述签名数据、权限信息以及所述文件特征值对应的验证信息;若所述验证信息满足预设要求,则确定所述文件访问链接所对应的文件。

第二方面,本发明实施例提供的一种文件存储装置,包括:获取单元,用于获取待存储文件在中转服务器的地址;同步单元,用于根据所述地址将所述待存储文件从所述中转服务器同步到区块链文件服务器节点;第一数据处理单元,用于对所述待存储文件进行预处理,生成签名数据;第二数据处理单元,用于将所述签名数据进行上链存储,并在数据节点间完成共识;第三数据处理单元,用于将所述待存储文件在所有文件节点进行共识与同步处理,并返回用于表征所述待存储文件上链成功的成功信息。

结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,所述获取单元还用于:通过调用预设接口函数,获取待存储文件在中转服务器中的地址,所述中转服务器中存储有至少一个所述待存储文件。

结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,所述第一数据处理单元还用于:对所述待存储文件进行格式转换与压缩处理,生成文件特征值与文件访问链接;根据所述文件特征值与所述文件访问链接生成签名数据。

第三方面,本发明实施例提供的一种终端设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述文件存储方法的步骤。

第四方面,本发明实施例提供的一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如第一方面任一项所述的文件存储方法。

与现有技术相比,本发明实施例带来了以下有益效果:

本发明实施例提供的文件存储方法、装置、设备及存储介质,通过获取待存储文件在中转服务器的地址;根据所述地址将所述待存储文件从所述中转服务器同步到区块链文件服务器节点;对所述待存储文件进行预处理,生成签名数据;将所述签名数据进行上链存储,并在数据节点间完成共识;将所述待存储文件在所有文件节点进行共识与同步处理,并返回用于表征所述待存储文件上链成功的成功信息。从而实现将不动产业务数据进行上链,从而保证文件不会在外部丢失,能够有效提高文件存储的安全性,从而解决了现有技术存在的技术问题。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明第一实施例提供的文件存储方法的流程图;

图2图1所示的文件存储方法中的网络拓扑示意图;

图3为本发明第二实施例提供的文件存储装置的功能模块示意图;

图4为本发明第三实施例提供的一种终端设备的示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1,是本发明第一实施例提供的文件存储方法的流程图。下面将对图1所示的具体流程进行详细阐述。

步骤s101,获取待存储文件在中转服务器的地址。

在本实施例中,所述中转服务器中存储有至少一个所述待存储文件。

可选地,所述待存储文件可以是不动产数据。其中,不动产数据包括大量的图片及文件数据(例如,合同、业务办理表格扫描件、测绘图纸、业务办理附件扫描件)。

如图2所示,在实际使用中,一般通过内网将不动产数据(即待存储文件)通过前置服务器上传到文件中转服务器。

作为一种实施方式,步骤s101包括:通过调用预设接口函数,获取待存储文件在中转服务器中的地址,所述中转服务器中存储有至少一个所述待存储文件。

可选地,预设接口函数为区块链接口(如转移登记),该接口中包含有所需文件(即待存储文件)在中转服务器中的地址。

步骤s102,根据所述地址将所述待存储文件从所述中转服务器同步到区块链文件服务器节点。

其中,区块链文件服务器节点即为区块链服务器。

在本实施例中,区块链服务器根据每个待存储文件对应的地址将中转服务器中的待存储文件进行同步,以同步到该区块链服务器中。

其中,区块链服务器中包括区块链数据节点和区块链文件节点,区块链数据节点用于与传统的区块链类似的功能,进行区块链数据的共识、存储、校验。区块链文件节点用于区块链图片、文件的存储,并计算文件的特征值以及提供文件的访问服务,例如用户通过外部网络访问存储在区块链服务器中的文件的服务。

步骤s103,对所述待存储文件进行预处理,生成签名数据。

作为一种实施方式,步骤s103包括:对所述待存储文件进行格式转换与压缩处理,生成文件特征值与文件访问链接;根据所述文件特征值与所述文件访问链接生成签名数据。

可选地,将待存储文件转换为预设格式后再进行压缩,得到文件特征值与文件访问链接。

其中,文件特征值为文件的指纹,通常为文件的md5(message-digestalgorithm5,消息摘要算法第五版)值。

文件访问链接用于供内部访问该待存储文件,即用户可以通过该文件访问链接在内网中访问该待存储文件。其中,内网通俗的说就是局域网,外网通俗的说就是与因特网相通的wan广域网或man城域网路。

在实际使用中,一般可以通过md5进行签名,以生成签名数据。

当然,在实际运用中,也可以采用其它算法对所述文件特征值与所述文件访问链接进行签名,生成签名数据,例如,其它算法可以是,但不限于crc(cyclicredundancycheck,循环冗余校验)算法、sha(securehashalgorithm,安全散列算法)、或ripemd(raceintegrityprimitivesevaluationmessagedigest,race原始完整性校验消息摘要)算法等。

步骤s104,将所述签名数据进行上链存储,并在数据节点间完成共识。

在实际使用中,区块链共识主要是通过:交易发起;通过p2p协议,进行广播;各节点对交易进行确认;交易确认完成以后,开始写入区块链;把写入的结果进行同步;返回交易结果。

步骤s105,将所述待存储文件在所有文件节点进行共识与同步处理,并返回用于表征所述待存储文件上链成功的成功信息。

在本实施例中,通过将文件特征值写入区块链,文件同步到所有的文件服务器(文件节点),以实现文件的共识与同步。

一般的,文件节点进行共识是通过文件写入,计算文件特征值;通过p2p协议,进行广播;各节点对文件的信息进行确认;确认完毕以后,将特征值写入;把写入的结果进行同步,将文件进行同步;返回文件写入结果(即返回用于表征所述待存储文件上链成功的成功信息)。

在本实施例中,成功信息包括存证地址,存证地址用于在数据公示或显示过程中使用,具体参照如下所示。

在一可能的实施例中,在步骤s105之后,该文件存储方法还包括:

根据所述成功信息获取业务办理的合约数据;解析所述合约数据,得到所述文件访问链接;确定所述文件访问链接所对应的文件;将解压后的所述文件存储至所述中转服务器上,生成外部访问链接,以通过所述外部访问链接与业务办理数据共同在外部公示。

可选地,在确定所述文件访问链接所对应的文件之前,还包括:根据所述合约数据确定所述签名数据、权限信息以及所述文件特征值;获取所述签名数据、权限信息以及所述文件特征值对应的验证信息;若所述验证信息满足预设要求,则确定所述文件访问链接所对应的文件。

其中,合约数据是指单笔不动产的交易(转移登记等)是以智能合约的形式进行存储的,根据办理的业务不同,合约的具体字段也有很大的区别,合约内部至少包含如下几大类的信息,以转移登记为例:转移登记的合约数据包括:转移登记双方信息、转移登记的流程审批信息、转移登记的税务信息、转移登记的贷款信息、转移登记的网签信息、其他与转移登记有关的信息。

在本实施例中,通过校验签名信息、权限信息以及文件特征值信息,从而在业务办理时,对文件的进行有效的校验,进而有效提高了存储的安全性,有效避免文件被篡改,并且还能够对正常修改、替换的凭证文件修改记录追踪,进一步提高文件存储的安全性。

本发明实施例提供的文件存储方法,通过获取待存储文件在中转服务器的地址;根据所述地址将所述待存储文件从所述中转服务器同步到区块链文件服务器节点;对所述待存储文件进行预处理,生成签名数据;将所述签名数据进行上链存储,并在数据节点间完成共识;将所述待存储文件在所有文件节点进行共识与同步处理,并返回用于表征所述待存储文件上链成功的成功信息。从而实现将不动产业务数据进行上链,从而保证文件不会在外部丢失,能够有效提高文件存储的安全性,从而解决了现有技术存在的技术问题。

第二实施例

对应于第一实施例中的文件存储方法,图3示出了采用第一实施例所示的文件存储方法一一对应的文件存储装置。如图3所示,所述文件存储装置400包括获取单元410、同步单元420、第一数据处理单元430、第二数据处理单元440和第三数据处理单元450。其中,获取单元410、同步单元420、第一数据处理单元430、第二数据处理单元440和第三数据处理单元450的实现功能与第一实施例中对应的步聚一一对应,为避免赘述,本实施例不一一详述。

获取单元410,用于获取待存储文件在中转服务器的地址。

可选地,所述获取单元410还用于:通过调用预设接口函数,获取待存储文件在中转服务器中的地址,所述中转服务器中存储有至少一个所述待存储文件。

同步单元420,用于根据所述地址将所述待存储文件从所述中转服务器同步到区块链文件服务器节点。

第一数据处理单元430,用于对所述待存储文件进行预处理,生成签名数据。

可选地,所述第一数据处理单元430还用于:对所述待存储文件进行格式转换与压缩处理,生成文件特征值与文件访问链接;根据所述文件特征值与所述文件访问链接生成签名数据。

第二数据处理单元440,用于将所述签名数据进行上链存储,并在数据节点间完成共识。

第三数据处理单元450,用于将所述待存储文件在所有文件节点进行共识与同步处理,并返回用于表征所述待存储文件上链成功的成功信息。

可选地,在第三数据处理单元450之后,文件存储装置400还包括:显示单元;

显示单元用于:根据所述成功信息获取业务办理的合约数据;解析所述合约数据,得到所述文件访问链接;确定所述文件访问链接所对应的文件;将解压后的所述文件存储至所述中转服务器上,生成外部访问链接,以通过所述外部访问链接与业务办理数据共同在外部公示。

可选地,在确定所述文件访问链接所对应的文件之前,还包括:根据所述合约数据确定所述签名数据、权限信息以及所述文件特征值;获取所述签名数据、权限信息以及所述文件特征值对应的验证信息;若所述验证信息满足预设要求,则确定所述文件访问链接所对应的文件。

第三实施例

如图4所示,是终端设备300的示意图。所述终端设备300包括存储器302、处理器304、存储在所述存储器302中并可在所述处理器304上运行的计算机程序303,所述计算机程序303被处理器304执行时实现第一实施例中的所述文件存储方法,为避免重复,此处不再赘述。或者,所述计算机程序303被处理器304执行时实现第二实施例所述文件存储装置中各模型/单元的功能,为避免重复,此处不再赘述。

示例性的,计算机程序303可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器302中,并由处理器304执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序303在终端设备300中的执行过程。例如,计算机程序303可以被分割成第二实施例中的获取单元410、同步单元420、第一数据处理单元430、第二数据处理单元440和第三数据处理单元450,各单元的具体功能如第一实施例或第二实施例所述,在此不一一赘述。

终端设备300可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。

其中,存储器302可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存储器302用于存储程序,所述处理器304在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流程定义的方法可以应用于处理器304中,或者由处理器304实现。

处理器304可能是一种集成电路芯片,具有信号的处理能力。上述的处理器304可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

可以理解的是,图4所示的结构仅为终端设备300的一种结构示意图,终端设备300还可以包括比图4所示更多或更少的组件。图4中所示的各组件可以采用硬件、软件或其组合实现。

第四实施例

本发明实施例还提供一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,所述计算机程序被处理器执行时实现第一实施例中的所述文件存储方法,为避免重复,此处不再赘述。或者,所述计算机程序被处理器执行时实现第二实施例所述文件存储装置中各模型/单元的功能,为避免重复,此处不再赘述。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现,基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景的方法。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1