一种基于区块链进行项目审批的方法、设备以及存储介质与流程

文档序号:31620531发布日期:2022-09-23 23:07阅读:218来源:国知局
一种基于区块链进行项目审批的方法、设备以及存储介质与流程

1.本公开一般地涉及区块链技术领域。更具体地,本公开涉及一种基于区块链进行项目审批的方法、设备以及计算机可读存储介质。


背景技术:

2.为适应经济社会发展的需要,我国大力发展“互联网+政务服务”建设。各地政府在企业办事、民生服务、社会治理等方面积极探索与互联网的结合方式,并取得了明显的成效。基于“互联网+政务服务”的结合方式,能够有效促进政务公开、简化审批流程、降低行政成本、提高行政效率并规范政府行为。在投资项目审批领域虽也有不少创新,但多体现为流程优化,却较少在审批过程数字化再造上进行规划和实践。这既有投资项目本身具有项目类型多、专业程度高、投资规模大等客观因素影响,也和审批要求杂、跨部门协同多、沟通效率低等人为因素有关,结果导致审批效率见顶、结果失准、监管有隙。
3.相较于传统政府投资项目审批流程,线上审批将审批内容数字化,解决了线下审批的空间局限性和查阅困难等难题,促进了审批流程的公开化、审批信息在各部门的流通共享。然而,作为数字资源先天具有易复制、易篡改等特性,例如不对存储、共享过程严加监管控制,将会出现机密信息外漏、审批信息篡改等违法犯罪行为。因此,需要构建一套公开、透明、可验证,不可篡改可追溯的技术体系来支撑政府投资项目的线上审批流程。


技术实现要素:

4.为了至少部分地解决背景技术中提到的技术问题,本公开的方案提供了一种基于区块链进行项目审批的方案。利用本公开的方案,可以简化项目审批流程,提高审批效率。为此,本公开在如下的多个方面提供解决方案。
5.在一个方面中,本公开提供一种基于区块链进行项目审批的方法,包括:在区块链上部署预先设定的与进行项目审批流程相关的智能合约;响应于所述项目审批流程中的项目审批任务请求,调用所述智能合约执行所述项目审批任务请求对应的任务操作,以获得对应的操作结果;基于所述对应的操作结果生成与项目审批流程相关的账本数据;以及基于所述账本数据,利用共识算法获得所述项目审批流程的最终共识结果,以实现项目审批。
6.在一个实施例中,所述方法还包括通过执行以下操作来在区块链上部署预先设定的与进行项目审批流程相关的智能合约:在所述区块链上的任意一个节点处提交部署交易指令,以部署预先设定的与所述项目审批流程相关的智能合约代码;以及利用对等网络协议将所述智能合约代码传递并且缓存至所述区块链上的其他节点。
7.在另一个实施例中,其中所述项目审批任务至少包括项目审批的发布、提交以及审批,所述任务操作至少包括针对所述项目审批任务执行以下的一种或者多种操作:增加、删除、修改、查询、验证、流转、下载以及统计。
8.在又一个实施例中,其中基于所述账本数据,利用共识算法获得所述项目审批流程的最终共识结果,以实现项目审批包括:基于所述账本数据,利用共识算法确定目标账本
数据;以及根据所述目标账本数据获得所述项目审批流程的最终共识结果,以实现项目审批。
9.在又一个实施例中,其中基于所述账本数据,利用共识算法确定目标账本数据包括:响应于所述账本数据的数量满足预设数量或者处理所述账本数据的时间窗满足预设时间窗,触发所述区块链上的共识层封装处理所述账本数据对应的任务操作指令;以及利用共识算法将封装后的对应的任务操作指令传递至所述区块链上的各个节点;以及基于所述封装后的对应的任务操作指令确定目标账本数据。
10.在又一个实施例中,其中根据所述目标账本数据获得所述项目审批流程的最终共识结果,以实现项目审批包括:对所述目标账本数据进行校验;以及基于校验结果获得所述项目审批流程的最终共识结果,以实现项目审批。
11.在又一个实施例中,其中基于校验结果获得所述项目审批流程的最终共识结果包括:基于通过校验的目标账本数据形成对应的数据区块;利用门限加密算法对所述对应的数据区块进行加密并且将加密后对应的数据区块加载至所述区块链上,以获得所述项目审批流程的最终共识结果。
12.在又一个实施例中,所述方法还包括:将所述区块链中的上一个数据区块的hash签名嵌入下一个数据区块中,以使得所述最终共识结果形成块链式结构。
13.在另一个方面,本公开还提供一种基于区块链进行项目审批的设备,包括:处理器;以及存储器,其存储有基于区块链进行项目审批的程序指令,当所述程序指令由所述处理器执行时,使得所述设备实现前述多个实施例。
14.在又一个方面,本公开还提供一种计算机可读存储介质,其上存储有基于区块链进行项目审批的计算机可读指令,该计算机可读指令被一个或多个处理器执行时,实现前述多个实施例。
15.通过本公开的方案,通过利用区块链技术,并且在区块链上部署智能合约,以基于预定的智能合约来执行项目审批任务请求对应的任务操作。也即,本公开的方案由预定的智能合约来执行审批流程的处理和数据的加工。基于此,使得审批流程的处理和数据的加工不再受限于传统后端服务器的弊端,有效地简化了审批流程,提高了项目审批效率。进一步地,本公开方案基于区块链技术,实现了公开、透明、可验证,不可篡改并且可追溯的技术体系来支撑“数据结构化”的线上项目审批流程。此外,本公开实施例采用门限加密算法来对数据进行加密,提升了线上项目审批的安全性。
附图说明
16.通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,并且相同或对应的标号表示相同或对应的部分其中:
17.图1是示出区块链的系统架构的示例性示意图;
18.图2是示出根据本公开实施例的基于区块链进行项目审批的方法的示例性示意图;
19.图3是示出根据本公开实施例的确定目标账本数据的示例性流程框图;
20.图4是示出根据本公开实施例的区块链的结构的示例性结构框图;
21.图5是示出根据本公开实施例的基于区块链进行项目审批的整体的示例性结构框图;以及
22.图6是示出根据本公开实施例的基于区块链进行项目审批的设备的框图。
具体实施方式
23.下面将结合附图对本公开实施例中的技术方案进行清楚和完整地描述。应当理解的是本说明书所描述的实施例仅是本公开为了便于对方案的清晰理解和符合法律的要求而提供的部分实施例,而并非可以实现本公开的所有实施例。基于本说明书公开的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
24.如本领域技术人员所知,区块链是指利用块链式数据结构验证与存储数据,利用分布式节点共识算法生成和更新数据,利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约,编程和操作数据的全新的分布式基础架构与计算范式。由此,使得区块链具有去中心化、开放性、独立性、安全性以及匿名性等多个特征。
25.图1是示出区块链的系统架构100的示例性示意图。如图1中所示,该区块链的系统架构100可以包括数据层101、网络层102、共识层103、激励层104、合约层105和应用层106。其中,数据层封装了底层数据区块以及相关的数据加密和时间戳等基础数据和基本算法;网络层则包括分布式组网机制、数据传播机制和数据验证机制等;共识层主要封装网络节点的各类共识算法;激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等;合约层主要封装各类脚本、算法和智能合约,是区块链可编程特性的基础;应用层则封装了区块链的各种应用场景和案例。在该模型中,基于时间戳的链式区块结构、分布式节点的共识机制、基于共识算力的经济激励和灵活可编程的智能合约是区块链技术最具代表性的创新点。
26.可以理解,现有区块链的每一个区块中保存了一定的信息,它们按照各自产生的时间顺序连接成链条。这个链条被保存在所有的服务器中,只要整个系统中有一台服务器可以工作,整条区块链就是安全的。这些服务器在区块链系统中被称为节点,它们为整个区块链系统提供存储空间和算力支持。也就是说,传统的基于区块链运作的系统,其是将逻辑处理部分交由后端服务器,区块链技术仅相当于数据库的替代,以此来达到区块链部分优点的体现。在这种方式下,智能合约也仅负责对数据的增删改查等操作,其数据的逻辑加工阶段受限于传统后端服务器的弊端。
27.鉴于此,在本公开的方案中,打破了上述限制,提出了经由智能合约处理数据的逻辑加工,以简化审批流程,提高项目审批效率,实现“数据结构化”的线上项目审批流程。
28.下面将结合图2-图6详细描述本公开的方案。
29.图2是示出根据本公开实施例的基于区块链进行项目审批的方法200的示例性示意图。如图2中所示,在步骤s202处,在区块链上部署预先设定的与进行项目审批流程相关的智能合约。在一个实施例中,可以通过执行以下操作来在区块链上部署预先设定的与进行项目审批流程相关的智能合约:首先在区块链上的任意一个节点处提交部署交易指令,以部署预先设定的与项目审批流程相关的智能合约代码,接着利用对等网络(peer-to-peer,“p2p”)协议将智能合约代码传递并且缓存至区块链上的其他节点。可以理解,前述智
能合约代码的部署即为通过webservice接口,在区块链上的任意一个节点处提交类型为部署(“deploy”)的交易指令。接着,通过p2p协议将该交易指令传递至区块链上的其他节点,经由区块链上的其他节点接收并且缓存该交易指令,从而实现了在区块链上的所有节点部署预先设定的智能合约。
30.基于上述部署的智能合约,在步骤s204处,响应于项目审批流程中的项目审批任务请求,调用智能合约执行项目审批任务请求对应的任务操作,以获得对应的操作结果。在一个实施例中,前述项目审批任务至少包括项目审批的发布、提交以及审批,前述任务操作至少包括针对项目审批任务执行以下的一种或者多种操作:增加、删除、修改、查询、验证、流转、下载以及统计。在一个实现场景中,前述项目审批的发布、提交以及审批包括多方参与,例如项目审批的发布由决策方执行、项目审批的提交由建设单位执行以及项目审批的审批由审批部门执行。当项目审批通过时,还涉及执行方(或者施工方)。在实现场景中,前述多方可以通过客户端分别发起项目审批任务(包括项目审批的发布、提交以及审批)请求。
31.响应于客户端发起的上述项目审批任务请求,可以调用智能合约执行项目审批任务请求对应的任务操作,以获得对应的操作结果。在该场景下,经由客户端发起的每一个项目审批任务请求,会通过执行智能合约提交一个类型为调用(“invoke”)的交易执行指令。例如当决策方经由客户端发布项目审批后,可以调用智能合约执行存证操作,即由智能合约进行存储,以供各方执行后续的操作。与之类似地,当建设单位、审批部门经由客户端发起项目审批的提交和项目审批的审批时,可以调用智能合约执行例如增加、删除、修改、查询、验证、流转、下载以及统计等操作,并且获得对应的操作结果。也即,在本公开实施例中,智能合约不仅可以执行数据的增删改查等操作,还执行数据的逻辑加工阶段。换句话说,本公开实施例的智能合约不只是存储数据,还可以处理数据。
32.进一步地,在步骤s206处,基于上述对应的操作结果生成与项目审批流程相关的账本数据。也即,通过上述对智能合约的调用,会形成区块链的账本结构。该账本结构在分布式节点中保持一致,并通过节点同步功能定时同步,从而保证数据的一致性、透明性。需要理解的是,由于查询交易(或者操作)并不改变系统状态,所以查询交易并不会记录在区块链中,而是记录在系统日志中。在生成账本数据后,在步骤s208处,基于账本数据,利用共识算法获得项目审批流程的最终共识结果,以实现项目审批。在一个实施例中,首先可以基于账本数据,利用共识算法确定目标账本数据,接着根据目标账本数据获得项目审批流程的最终共识结果,以实现项目审批。
33.在一个实施场景中,可以通过预先设置账本数据的数量或者处理该账本数据的时间窗来触发共识过程,以确定目标账本数据。稍后将结合图3详细描述如何确定目标账本数据。进一步地,在获得目标账本数据后,首先对目标账本数据进行校验,以保证账本数据的合法性。接着,基于校验结果获得目审批流程的最终共识结果,以实现项目审批。具体地,基于通过校验的目标账本数据形成对应的区块,并且利用门限加密算法对对应的区块进行加密并且将加密后对应的区块加载至区块链上,以获得项目审批流程的最终共识结果。基于此,最终能够达成一致的交易执行序列,相同的交易条目和相同的执行顺序,以完成项目审批流程。
34.结合上述图2的描述可知,本公开实施例通过区块链技术来进行项目审批,并且通
过调用区块链上的智能合约来基于不同的项目审批任务请求执行对应的任务操作。由此,打破了数据的逻辑加工阶段受限于传统后端服务器的弊端的限制,并且简化了审批流程,提高项目审批效率,实现了“数据结构化”的线上项目审批流程。进一步地,本公开实施例采用门限加密算法进行加密,极大地提升了数据的安全性。
35.图3是示出根据本公开实施例的确定目标账本数据的示例性流程框图。如图3中所示,在步骤s302处,响应于账本数据的数量满足预设数量或者处理账本数据的时间窗满足预设时间窗,触发区块链上的共识层封装处理账本数据对应的任务操作指令。也即,经由共识层封装满足预设条件(例如预设数量和预设时间窗)的指令和账本数据。进一步地,在步骤s304处,利用共识算法将封装后的对应的任务操作指令传递至区块链上的各个节点。在一些实施例中,前述共识算法可以例如是工作量证明、权益证明、使用时间证明、容量证明或者空间证明。也即,依据所选择的共识算法,与各个节点进行通信,使得最终达成一致的交易执行序列,相同的交易条目和相同的执行顺序。进一步地,在步骤s306处,基于封装后的对应的任务操作指令确定目标账本数据。也就是说,将封装后的交易指令所对应的账本数据确定为目标账本数据。基于上文描述可知,通过对目标账本数据进行合法性校验,并将通过校验后的账本数据形成的区块加载至区块链上,以完成项目审批流程。
36.图4是示出根据本公开实施例的区块链的结构的示例性结构框图。如图4中所示,本公开实施例的区块链的结构可以包括智能合约401、共识层402以及数据账本层403。在一个实施例中,该智能合约401可以通过webservice接口,在区块链上的任一节点处提交类型为deploy的交易指令,并且通过p2p协议传递至并缓存至区块链上的其他节点来进行部署。其中,该智能合约401中预先设定了与项目审批流程相关的智能合约代码,以执行项目审批任务请求对应的任务操作。在实现场景中,响应于项目审批的各方(决策方、建设单位、审批部门以及执行方)发起的项目审批任务请求,可以调用智能合约执行对应的任务操作(例如增加、删除、修改、查询、验证、流转、下载和/或统计),并且获得对应的操作结果。
37.在一个实施例中,上述获得对应的操作结果可以存储至数据账本层403,以生成与项目审批流程相关的账本数据。如前所述,可以通过预先设置账本数据的数量或者处理该账本数据的时间窗来触发共识层402的共识过程,以确定目标账本数据。关于确定目标账本数据的更多细节可以参考上述图3的描述,本公开在此不再赘述。进一步地,通过数据账本层403对目标账本数据进行校验,基于通过校验的目标账本数据生成对应的数据区块,并且将对应的数据区块加载至区块链上,以获得项目审批流程的最终共识结果。也即,数据账本层403将经由共识层402达成共识的账本数据进行打包形成数据区块,进而将数据区块加载到区块链上,以获得项目审批流程的最终共识结果。
38.根据前文知,可以利用门限加密算法对前述对应的数据区块进行加密,以提升线上项目审批的安全性。在一个示例性场景中,门限密码算法可以采用(n,k)的形式表示。其中,n表示项目审批流程中的参与者的个数,k表示门限值(也被称为阈值),其表示要完成秘密运算时最少需要的参与者的个数。在加密阶段,可以由n个参与者约定设置门限值k,以进行初始化操作,初始化后参与者首先获取各自的私钥分片,接着联合计算数据加密公钥并且将其公开。进一步地,数据贡献者使用公钥对数据明文进行加密,生成密文。在解密阶段,参与者分别使用各自的私钥分片对前述密文进行解密,生成解密分片。接着,参与者需要将解密分片聚合,并且只有获得不小于k个不同的解密分片之后,才可以完成聚合解密,获得
数据明文。基于此,能够防止项目审批流程中的恶意篡改。
39.在一个实施例中,本公开实施例还提出将区块链中的上一个区块的哈希(“hash”)签名嵌入下一个区块中,以使得最终共识结果形成块链式结构,以便保证项目审批流程中数据的完整性、真实性以及可追溯性,从而防止项目审批流程中的恶意篡改。此外,采用按时间顺序存储的块链式数据结构以及基于数据资产的模型存储方式,通过以审批项目为核心进行建模,记录项目的各阶段处理人、所属部门(即所有权是数据资产的一个字段),从而方便记录、查询项目流程相关信息且适应高并发场景。
40.图5是示出根据本公开实施例的基于区块链进行项目审批的整体的示例性结构框图。如图5中示出,该项目审批涉及决策方501、建设单位502、审批部门503以及执行方504。在实现场景中,首先由决策方501发布项目审批任务请求,接着由建设单位502发起提交任务请求,再由审批部门503发起审批任务请求,审批通过后由执行方504执行。其中,前述各方均是通过客户端来发起项目审批任务请求。在一些实施例中,客户端是通过例如html、html5、js等技术构建浏览器端和移动端的应用,并且利用springmvc技术实现消息在业务服务之间的转发和路由,进而通过对外暴露web service接口,利用java url包开发针对于区块链web service调用的客户端。
41.如前所述,响应于各方发起的项目审批任务请求,通过调用部署在区块链上的预先设定的智能合约505(也即上述图4所示出的智能合约401)来执行对应的操作(例如增加、删除、修改、查询、验证、流转、下载以及统计等操作),并且获得对应的操作结果。接着,对应的操作结果生成账本数据506并且存储在数据账本层507(也即上述图4所示出的数据账本层403)中。在实现场景中,当账本数据506的数量满足预设数量或者处理账本数据的时间窗满足预设时间窗,触发区块链上的共识层执行共识过程,从而确定目标账本数据。在确定目标账本数据后,经由数据账本层507进行校验,并将通过校验的目标账本数据形成的数据区块508加载至区块链上,以获得项目审批流程的最终共识结果,从而完成项目审批。
42.基于上述描述可知,本公开实施例通过区块链上部署、执行智能合约来实现项目审批的发布、提交以及审批的过程,简化了应用程序的构建,提高了审批效率,也在很大程度上避免了敏感信息造假等行为。进一步地,通过整个项目新建、报告提交及审批流程的全过程和所属部门、处理人的变更的记录和查询,能够实现项目流程线上审批时的权限审核查验和整个项目的生命周期管理。此外,区块链存储数据的多点同步、全程留痕、不可篡改等特点,将项目审批过程中的大量机密信息安全可信的存储至区块链上,解决了各部门间的信任问题。
43.图6是示出根据本公开实施例的基于区块链进行项目审批的设备600的框图。可以理解的是,实现本公开方案的设备可以是单一的设备(例如计算设备)或包括各种外围设备的多功能设备。
44.如图6中所示,本公开的设备可以包括中央处理器或中央处理单元(“cpu”)611,其可以是通用cpu、专用cpu或者其他信息处理以及程序运行的执行单元。进一步,设备600还可以包括大容量存储器612和只读存储器(“rom”)613,其中大容量存储器612可以配置用于存储各类指令、算法数据、中间结果和运行设备600所需要的各种程序。rom613可以配置成存储对于设备600的加电自检、系统中各功能模块的初始化、系统的基本输入/输出的驱动程序及引导操作系统所需的数据和指令。
45.可选地,设备600还可以包括其他的硬件平台或组件,例如示出的张量处理单元(“tpu”)614、图形处理单元(“gpu”)615、现场可编程门阵列(“fpga”)616和机器学习单元(“mlu”)617。可以理解的是,尽管在设备600中示出了多种硬件平台或组件,但这里仅仅是示例性的而非限制性的,本领域技术人员可以根据实际需要增加或移除相应的硬件。例如,设备600可以仅包括cpu、相关存储设备和接口设备来实现本公开的基于区块链进行项目审批的方法。
46.在一些实施例中,为了便于数据与外部网络的传递和交互,本公开的设备600还包括通信接口618,从而可以通过该通信接口618连接到局域网/无线局域网(“lan/wlan”)605,进而可以通过该lan/wlan连接到本地服务器606或连接到因特网(“internet”)607。替代地或附加地,本公开的设备600还可以通过通信接口618基于无线通信技术直接连接到因特网或蜂窝网络,例如基于第3代(“3g”)、第4代(“4g”)或第5代(“5g”)的无线通信技术。在一些应用场景中,本公开的设备600还可以根据需要访问外部网络的服务器608和数据库609,以便获得各种已知的图像模型、数据和模块,并且可以远程地存储各种数据,例如用于呈现各类数据或指令。
47.设备600的外围设备可以包括显示装置602、输入装置603和数据传输接口604。在一个实施例中,显示装置602可以例如包括一个或多个扬声器和/或一个或多个视觉显示器,其配置用于对本公开的显示对项目审批流程进行语音提示和/或图像视频显示。输入装置603可以包括例如键盘、鼠标、麦克风、姿势捕捉相机等其他输入按钮或控件,其配置用于输入和/或用户指令。数据传输接口604可以包括例如串行接口、并行接口或通用串行总线接口(“usb”)、小型计算机系统接口(“scsi”)、串行ata、火线(“firewire”)、pci express和高清多媒体接口(“hdmi”)等,其配置用于与其他设备或系统的数据传输和交互。根据本公开的方案,该数据传输接口604可以接收项目审批任务,并且向设备600传送项目审批任务或各种其他类型的数据或结果。
48.本公开的设备600的上述cpu 611、大容量存储器612、rom 613、tpu 614、gpu 615、fpga 616、mlu 617和通信接口618可以通过总线619相互连接,并且通过该总线与外围设备实现数据交互。在一个实施例中,通过该总线619,cpu 611可以控制设备600中的其他硬件组件及其外围设备。
49.以上结合图6描述了可以用于执行本公开的基于区块链进行项目审批的设备。需要理解的是这里的设备结构或架构仅仅是示例性的,本公开的实现方式和实现实体并不受其限制,而是可以在不偏离本公开的精神下做出改变。
50.根据上述结合附图的描述,本领域技术人员也可以理解本公开的实施例还可以通过软件程序来实现。由此本公开还提供了一种计算机程序产品。该计算机程序产品可以用于实现本公开结合附图2-图5所描述的基于区块链进行项目审批的方法。
51.应当注意,尽管在附图中以特定顺序描述了本公开方法的操作,但是这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
52.应当理解,当本公开的权利要求、当说明书及附图中使用到术语“第一”、“第二”、“第三”和“第四”等时,其仅用于区别不同对象,而不是用于描述特定顺序。本公开的说明书
和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
53.还应当理解,在此本公开说明书中所使用的术语仅仅是出于描述特定实施例的目的,而并不意在限定本公开。如在本公开说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本公开说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
54.虽然本公开的实施方式如上,但所述内容只是为便于理解本公开而采用的实施例,并非用以限定本公开的范围和应用场景。任何本公开所述技术领域内的技术人员,在不脱离本公开所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本公开的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1