CN116933989A - 基于区块链的流程管控的方法、装置、电子设备及介质 - Google Patents

基于区块链的流程管控的方法、装置、电子设备及介质 Download PDF

Info

Publication number
CN116933989A
CN116933989A CN202210351262.7A CN202210351262A CN116933989A CN 116933989 A CN116933989 A CN 116933989A CN 202210351262 A CN202210351262 A CN 202210351262A CN 116933989 A CN116933989 A CN 116933989A
Authority
CN
China
Prior art keywords
approval
information
verified
key information
target
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
CN202210351262.7A
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.)
Jingdong Technology Information Technology Co Ltd
Original Assignee
Jingdong Technology Information Technology 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 Jingdong Technology Information Technology Co Ltd filed Critical Jingdong Technology Information Technology Co Ltd
Priority to CN202210351262.7A priority Critical patent/CN116933989A/zh
Publication of CN116933989A publication Critical patent/CN116933989A/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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • 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/602Providing cryptographic facilities or services
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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
    • H04L9/3255Cryptographic 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 using group based signatures, e.g. ring or threshold signatures
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Computer Security & Cryptography (AREA)
  • Strategic Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • General Engineering & Computer Science (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本公开涉及一种基于区块链的流程管控的方法、装置、电子设备及介质,将区块链技术和门限签名技术应用于流程审核,可应用于环境治理场景。应用于区块链网络中每个审核节点的方法包括:接收管理端发送的针对目标流程的秘钥信息组;将该秘钥信息组存储于区块链网络的账本中,并生成审批通知;接收用户对审批触发事件进行审批的审批结果;根据审批所针对的流程、审批账号信息、该审批结果和与当前节点的审批账号对应的匹配目标秘钥,生成审批信息;基于该审批信息向该区块链网络的智能合约发起提交请求;该智能合约根据该账本中存储的该秘钥信息组,对待验证节点提交的待验证审批信息进行门限签名验证,得到针对该审批触发事件的响应结果。

Description

基于区块链的流程管控的方法、装置、电子设备及介质
技术领域
本公开涉及区块链技术领域,尤其涉及一种基于区块链的流程管控的方法、装置、电子设备及介质。
背景技术
在一些流程审批的环节中,通常流程审批方集中于单一主体,该主体的权利过大,并且通常该主体只要依据账号和密码登录审批系统便能享有对应的审批权限。例如,在环境治理领域,决策权集中在单一的管理者手中,只要管理者通过账号进行登录并审批通过后即可。
然而,在实现本公开技术构思的过程中,发明人发现上述方式至少存在以下技术问题:审批系统仅通过账号密码的方式进行登录验证,如果流程审批方的账号密码被第三方盗用/冒用的话,第三方完全可以行使审批权限,导致出现问题后审批系统难以追溯责任。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开的实施例提供了一种基于区块链的流程管控的方法、装置、电子设备及介质。
第一方面,本公开的实施例提供了一种基于区块链的流程管控的方法。上述方法应用于审批节点,多个审批节点构成一个区块链网络,针对每个审批节点,上述方法包括:接收管理端发送的针对目标流程的秘钥信息组;将上述秘钥信息组存储于上述区块链网络的账本中,并生成审批通知;其中上述审批通知用于提示对上述目标流程的审批触发事件进行审批;接收用户对上述审批触发事件进行审批的审批结果;根据审批所针对的流程、审批账号信息、上述审批结果和与当前节点的审批账号对应的匹配目标秘钥,生成审批信息;基于上述审批信息向上述区块链网络的智能合约发起提交请求;上述智能合约根据上述账本中存储的上述秘钥信息组,对待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述审批触发事件的响应结果。
根据本公开的实施例,上述秘钥信息组包括:目标流程的流程标识,与上述目标流程对应的初始秘钥信息和审批账号的账号标识,以及根据上述初始秘钥信息生成的与上述审批账号对应的目标秘钥;上述目标秘钥是基于门限签名算法,根据上述审批账号的账号标识、账号总个数和目标门限阈值信息,对上述初始秘钥信息进行拆分处理得到的;其中上述目标门限阈值信息用于限定上述审批触发事件的最低批准个数。
根据本公开的实施例,根据上述账本中存储的上述秘钥信息组,对待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述审批触发事件的响应结果,包括:在接收到的审批信息的个数超过上述目标门限阈值信息的情况下,根据存储的秘钥信息组,对已有的待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述已有的待验证节点的综合验证结果;在上述综合验证结果为有效且验证通过的情况下,根据上述审批触发事件,对上述目标流程进行相应的处理;在处理成功的情况下,生成关于上述审批触发事件审批通过的响应结果;在上述综合验证结果为有效且验证不通过的情况下,生成关于上述审批触发事件审批不通过的响应结果,并提示审批不通过的原因;在上述综合验证结果为无效的情况下,将已经接收到的待验证审批信息进行存储,并继续接收待验证审批信息,并对继续接收到的待验证审批信息进行验证,生成关于上述审批触发事件处于审批过程中的响应结果。
根据本公开的一种实施例,上述待验证审批信息包括:审批所针对的流程、待验证节点的审批账号信息、待验证秘钥和待验证节点的审批结果。根据存储的秘钥信息组,对已有的待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述已有的待验证节点的综合验证结果,包括:确定上述已有的待验证节点中每个待验证节点的审批所针对的流程、待验证节点的审批账号信息和待验证秘钥之间的对应关系与上述秘钥信息组是否匹配;针对每个待验证节点,在当前待验证节点的上述对应关系与上述秘钥信息组匹配的情况下,确定上述当前待验证节点的待验证秘钥为已验证秘钥,并标记上述当前待验证节点的审批结果为有效状态;确定已有的待验证节点中处于有效状态的审批结果的个数是否超过上述目标门限阈值信息;在上述已有的待验证节点中处于有效状态的审批结果的个数超过上述目标门限阈值信息的情况下,根据审批结果为通过和不通过进行分类,对有效状态的审批结果为同一类所对应的所有已验证秘钥进行聚合处理,得到整合秘钥信息;确定上述整合秘钥信息与上述初始秘钥信息是否一致;在上述整合秘钥信息与上述初始秘钥信息一致的情况下,确定综合验证结果为有效且验证通过;在上述整合秘钥信息与上述初始秘钥信息不一致的情况下,确定综合验证结果为有效且验证不通过。
根据本公开的实施例,在上述一种实施例的基础上,根据存储的秘钥信息组,对已有的待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述已有的待验证节点的综合验证结果,还包括:针对每个待验证节点,在当前待验证节点的上述对应关系与上述秘钥信息组不匹配的情况下,确定上述当前待验证节点的待验证秘钥为验证不通过秘钥,并标记上述当前待验证节点的审批结果为无效状态;在上述已有的待验证节点中处于有效状态的审批结果的个数小于上述目标门限阈值信息的情况下,确定综合验证结果为无效。
根据本公开的另一种实施例,在上述基于上述审批信息向上述区块链网络的智能合约发起提交请求之后,还包括:上述智能合约根据发起提交请求的节点携带的秘钥信息与上述账本中存储的上述秘钥信息组是否匹配,得到接受或拒绝上述提交请求的提交结果。其中,当上述提交请求的节点携带的秘钥信息与上述秘钥信息组匹配时,上述智能合约接受上述提交请求;当上述提交请求的节点携带的秘钥信息与上述秘钥信息组不匹配时,上述智能合约拒绝上述提交请求。
根据本公开的实施例,在上述另一种实施例的基础上,上述待验证审批信息包括:已验证秘钥和待验证节点的审批结果。根据存储的秘钥信息组,对已有的待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述已有的待验证节点的综合验证结果,包括:确定已有的待验证节点提交的审批结果的个数是否超过上述目标门限阈值信息;在上述已有的待验证节点提交的审批结果的个数超过上述目标门限阈值信息的情况下,根据审批结果为通过和不通过进行分类,对上述审批结果为同一类所对应的所有待验证节点的已验证秘钥进行聚合处理,得到整合秘钥信息;确定上述整合秘钥信息与上述初始秘钥信息是否一致;在上述整合秘钥信息与上述初始秘钥信息一致的情况下,确定综合验证结果为有效且验证通过;在上述整合秘钥信息与上述初始秘钥信息不一致的情况下,确定综合验证结果为有效且验证不通过;在上述已有的待验证节点中处于有效状态的审批结果的个数小于上述目标门限阈值信息的情况下,确定综合验证结果为无效。
根据本公开的实施例,上述方法还包括:将上述提交请求和上述响应结果均存储于上述账本中。
第二方面,本公开的实施例提供了一种流程管控的方法。上述方法应用于管理端,上述管理端与包含多个审核节点的区块链网络通信连接。上述方法包括:检测是否发生针对目标流程的审批触发事件;获取与上述目标流程的审批触发事件对应的审批账号的账号标识、账号总个数和目标门限阈值信息;其中上述目标门限阈值信息用于限定上述审批触发事件的最低批准个数;基于秘钥算法库,生成初始秘钥信息;基于门限签名算法,根据上述审批账号的账号标识、账号总个数和上述目标门限阈值信息,对上述初始秘钥信息进行拆分处理,得到对应于每个账号标识的目标秘钥;根据上述目标秘钥与对应的账号标识、上述目标流程的流程标识、上述初始秘钥信息之间的关联关系,生成秘钥信息组;以及将上述秘钥信息组发送给上述区块链网络。上述秘钥信息组包括:目标流程的流程标识,与上述目标流程对应的初始秘钥信息和审批账号的账号标识,以及根据上述初始秘钥信息生成的与上述审批账号对应的目标秘钥。
根据本公开的实施例,基于门限签名算法,根据上述审批账号的账号标识、账号总个数和上述目标门限阈值信息,对上述初始秘钥信息进行拆分处理,得到对应于每个账号标识的目标秘钥,包括:根据上述审批账号的账号总个数和上述目标门限阈值信息,对上述初始秘钥信息进行拆分处理,得到预设数量个拆分后的中间秘钥片段;其中,上述预设数量等于上述账号总个数,至少基于上述目标门限阈值信息所对应数量的中间秘钥片段能够恢复初始秘钥信息;对每个中间秘钥片段分配各自对应的编号,上述编号与上述账号标识所关联;根据上述中间秘钥片段与对应的编号,生成字符串;其中,每个字符串为对应于相应的账号标识的目标秘钥。
第三方面,本公开的实施例提供了一种基于区块链的流程管控的装置。上述装置包括审批节点,多个上述审批节点构成一个区块链网络,每个上述审批节点包括:秘钥接收模块、记账模块、审批通知生成模块、审批结果接收模块、审批信息生成模块、审批提交模块和验证模块。上述秘钥接收模块用于接收管理端发送的针对目标流程的秘钥信息组。上述记账模块用于将上述秘钥信息组存储于上述区块链网络的账本中。上述审批通知生成模块用于生成审批通知。其中上述审批通知用于提示对上述目标流程的审批触发事件进行审批。上述审批结果接收模块用于接收用户对上述审批触发事件进行审批的审批结果。上述审批信息生成模块用于根据审批所针对的流程、审批账号信息、上述审批结果和与当前节点的审批账号对应的匹配目标秘钥,生成审批信息。上述审批提交模块用于基于上述审批信息向上述区块链网络的智能合约发起提交请求。上述验证模块用于基于上述智能合约,根据上述账本中存储的上述秘钥信息组,对待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述审批触发事件的响应结果。
第四方面,本公开的实施例提供了一种流程管控的装置。上述装置包括管理端,上述管理端与包含多个审核节点的区块链网络通信连接,上述管理端包括:检测模块、信息获取模块、初始秘钥生成模块、分片秘钥生成模块、秘钥信息组生成模块和发送模块。上述检测模块用于检测是否发生针对目标流程的审批触发事件。上述信息获取模块用于获取与上述目标流程的审批触发事件对应的审批账号的账号标识、账号总个数和目标门限阈值信息;其中上述目标门限阈值信息用于限定上述审批触发事件的最低批准个数。上述初始秘钥生成模块用于基于秘钥算法库,生成初始秘钥信息。上述分片秘钥生成模块用于基于门限签名算法,根据上述审批账号的账号标识、账号总个数和上述目标门限阈值信息,对上述初始秘钥信息进行拆分处理,得到对应于每个账号标识的目标秘钥。上述秘钥信息组生成模块用于根据上述目标秘钥与对应的账号标识、上述目标流程的流程标识、上述初始秘钥信息之间的关联关系,生成秘钥信息组。上述秘钥信息组包括:目标流程的流程标识,与上述目标流程对应的初始秘钥信息和审批账号的账号标识,以及根据上述初始秘钥信息生成的与上述审批账号对应的目标秘钥。上述发送模块用于将上述秘钥信息组发送给上述区块链网络。
第五方面,本公开的实施例提供了一种电子设备。上述电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现如上所述的基于区块链的流程管控的方法或如上所述的应用于管理端的流程管控的方法。
第六方面,本公开的实施例提供了一种计算机可读存储介质。上述计算机可读存储介质上存储有计算机程序,上述计算机程序被处理器执行时实现如上所述的基于区块链的流程管控的方法或如上所述的应用于管理端的流程管控的方法。
本公开实施例提供的基于区块链的流程管控的方法、装置、电子设备及介质,通过将接收的秘钥信息组存储于包含审核节点的区块链网络的账本中,并且各个审核节点在对目标流程进行审批时,需要根据审批所针对的流程、审批账号信息、上述审批结果和与当前节点的审批账号对应的匹配目标秘钥,生成审批信息;如此一来,在区块链的智能合约对待验证节点(可能是审批节点,也可能是其他仿冒审批节点的仿冒节点)进行验证时,可以通过存储的秘钥信息组来对各个待验证节点的身份进行验证,而且还基于门限签名验证的方式来对多个待验证节点反馈的审批信息的有效性进行验证,通过基于多方门限签名来控制流程的审批,对审批方的身份能够进行安全且高效的验证;该方案应用于环境治理领域,能够实现分布式治理,各个审批节点各自进行独立审批且各个节点运行的区块链的智能合约同时执行审批信息的验证,从而达成多方治理、审批责任明确且可追溯的效果;另外,根据不同的目标流程(例如环境治理流程)只需动态设置相应的审批成员(具体为审批成员对应的审批账号信息)和门限阈值信息即可,促进流程审批过程的智能化和责任可视化。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出了适用于本公开实施例的基于区块链的流程管控的方法和流程管控的方法的系统架构;
图2示意性示出了根据本公开一实施例的基于区块链的流程管控的方法的流程图;
图3示意性示出了根据本公开实施例的操作S206的详细实施过程图;
图4示意性示出了根据本公开一实施例的操作S310的详细实施流程图;
图5示意性示出了根据本公开另一实施例的操作S205对应的智能合约的执行方式以及操作S310的详细实施流程图;
图6示意性示出了根据本公开一实施例的流程管控的方法的流程图;
图7示意性示出了根据本公开实施例的基于区块链的流程管控的装置的结构框图;
图8示意性示出了根据本公开实施例的流程管控的装置的结构框图;以及
图9示意性示出了本公开实施例提供的电子设备的结构框图。
具体实施方式
本公开的实施例提供了一种基于区块链的流程管控的方法、装置、电子设备及介质,上述方法应用于审批节点,多个审批节点构成一个区块链网络,针对每个审批节点,上述方法包括:接收管理端发送的针对目标流程的秘钥信息组;将上述秘钥信息组存储于上述区块链网络的账本中,并生成审批通知;其中上述审批通知用于提示对上述目标流程的审批触发事件进行审批;接收用户对上述审批触发事件进行审批的审批结果;根据审批所针对的流程、审批账号信息、上述审批结果和与当前节点的审批账号对应的匹配目标秘钥,生成审批信息;基于上述审批信息向上述区块链网络的智能合约发起提交请求;上述智能合约根据上述账本中存储的上述秘钥信息组,对待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述审批触发事件的响应结果。
根据本公开的实施例,上述秘钥信息组包括:目标流程的流程标识,与上述目标流程对应的初始秘钥信息和审批账号的账号标识,以及根据上述初始秘钥信息生成的与上述审批账号对应的目标秘钥。上述目标秘钥是基于门限签名算法,根据上述审批账号的账号标识、账号总个数和目标门限阈值信息,对上述初始秘钥信息进行拆分处理得到的;其中上述目标门限阈值信息用于限定上述审批触发事件的最低批准个数。
根据本公开的实施例,上述审批触发事件包括目标流程(例如为环境治理流程)的更新事件,上述更新事件包括对目标流程的相关信息进行更新,例如为对目标流程的人员信息和/或流程信息进行更新。
上述方法通过基于多方门限签名来控制流程的审批,对审批方的身份能够进行安全且高效的验证,实现多方安全、高效审批以及有效的身份验证。该方案应用于环境治理领域,能够实现分布式治理,各个审批节点各自进行独立审批且各个节点运行的区块链的智能合约同时执行审批信息的验证,从而达成多方治理、审批责任明确且可追溯的效果。
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
图1示意性示出了适用于本公开实施例的基于区块链的流程管控的方法和流程管控的方法的系统架构。
参照图1所示,适用于本公开实施例的基于区块链的流程管控的方法和流程管控的方法的系统架构100包括:管理端110、多个审批节点120和审批请求节点130。
管理端110是指具有以下功能的电子设备:能够对流程的审核账号信息和门限阈值信息进行设置,并在接收到审批请求节点130发生目标流程的审批触发事件而触发的审批请求后,生成针对目标流程的各个审核账号的目标秘钥,并将关于上述目标秘钥的秘钥信息组发送给审核节点120对应的区块链网络。上述电子设备可以是终端设备或者是计算和/或存储服务所对应的服务器等。
例如在一实施场景中,管理员通过登录管理员账号后设置审核账号信息和门限阈值信息,即,管理员来指定审核人员和审批有效的最低人员个数。上述门限阈值信息用于限定针对审批触发事件的最低批准个数。在图1中以管理端110指定的审批节点120分别为节点1、节点2和节点3作为示例。
在一具体实施场景中,以环境治理场景为例,指定的审核人员可以是治理部门的相关人员,也可以是与该目标流程利益相关、公正性评分信息相对较高的人员,也可以是与目标流程无利益关系的第三方人员等。
参照图1所示,审核账号对应的节点分别为节点1~3,这里以一个节点对应于一个账号为例。用户A~用户C分别作为管理节点指定/设置的审批人员,用户A通过审批账号CA登录节点1,用户B通过审批账号CB登录节点2,用户C通过审批账号CC登录节点3。
例如门限阈值信息为M,M=2,表示在节点1~节点3中至少有两个节点(或者,可以理解为两个用户所对应的用户账号)进行审批(审批结果可以是通过或者不通过)的情况下,视为审批结果有效。如果节点1~节点3中只有一个节点进行审批(不论结果是通过还是不通过),其他两个节点对应的用户不投票,那么审批的结果是无效的。
审批节点120是指对流程的相关信息(例如流程的参与人员增减、某个流程的实施环节、实施参数修改等)进行审批的审批方在审批时采用的电子设备或者采用的相应计算和/或存储服务等。
在图1示例的系统架构中,以对目标流程的人员信息发生更新/变动作为审批触发事件的示例,图1中以节点4作为审批请求节点130的示例,节点4对应的用户D发起加入目标流程的请求,视为发生了审批触发事件。
审批触发事件可以是各种形式,例如为流程的申报、更新事件,包括对流程的相关信息进行更新,例如为对流程的人员信息和/或流程信息进行更新。以环境治理的场景为例,针对某个特定流程/环节(例如针对污水排放超标的治理流程),该流程的参与人员(例如为排污厂、监督方、污水指标检测方等)以及流程的实施方案等信息是需要提前报备进行审批的,参与人员的增减、流程信息的更改等也需要向环境治理相关部门进行报送审批。
参照图1所示,本公开的实施例中,多个审批节点120构成一区块链网络/系统,即各个审批节点作为区块链网络/系统中的最小执行载体(区块链节点),主要负责交易背书、验证、记账以及区块同步等功能。多个审批节点120构成的区块链网络与管理端110之间通信连接。
每个审批节点(例如节点1、节点2或节点3)中具有用于存储区块链网络中的各个节点(节点1~节点3)的提交事件和存储管理端发送的秘钥信息组的账本,在各个审批节点的账本记录/存储的内容是完全一致的,实际上,区块链中的账本是一种分布式账本,可以理解为在区块链网络的成员之间共享、复制和同步的数据库,记账的节点可以是区块链网络中的指定的成员。在每个审批节点(简称为节点)中还运行有智能合约,该智能合约用于接收待验证节点(上述待验证节点可能是审批节点,也可能是其他仿冒审批节点的仿冒节点)提交的审批信息,并对上述提交的审批信息进行门限签名验证。
需要说明的是,本公开后续第一个实施例描述的基于区块链的流程管控的方法一般可以由区块链网络中的每个审核节点120执行。第二个实施例描述的流程管控的方法一般可以由管理端110执行。从整体信息流而言,可以结合图1依序对管理端110与审批请求节点130的交互、管理端110与区块链网络中的审批节点120之间的交互来进行理解。
尽管上述实施场景是以环境治理为例,上述方法也可以拓展应用至其他需要进行流程审批的领域中,本公开的保护范围不局限于上述示例的场景。
本公开的第一个示例性实施例提供了一种基于区块链的流程管控的方法。上述方法能够应用于区块链网络中的每个审批节点。
图2示意性示出了根据本公开一实施例的基于区块链的流程管控的方法的流程图。
参照图2所示,本公开实施例提供的基于区块链的流程管控的方法,包括以下操作:S201、S202、S203、S204、S205和S206。操作S201~S206可以由图1中示例的每个审核节点120来执行,例如由节点1、节点2或节点3来执行。
在操作S201,接收管理端发送的针对目标流程的秘钥信息组。
上述秘钥信息组包括:目标流程的流程标识,与上述目标流程对应的初始秘钥信息和审批账号的账号标识,以及根据上述初始秘钥信息生成的与上述审批账号对应的目标秘钥。
在一实施场景中,参照图1所示,管理端110检测是否发生针对目标流程的审批触发事件。在检测到审批触发事件的情况下(例如管理端110接收到来自审批请求节点130(对应为节点4)发起的加入目标流程的请求,视为检测到审批触发事件),管理端110根据与上述目标流程的审批触发事件对应的目标审批账号信息和上述目标门限阈值信息来生成秘钥信息组,并将上述秘钥信息组发送给上述区块链网络。具体而言,可以是管理端110发送给区块链网络中的某个节点,例如为节点1,节点1在区块链网络中将接收到的秘钥信息组广播至节点2和节点3。相应的,在区块链网络/系统中的各个审核节点对应接收到上述秘钥信息组。
上述审批触发事件包括但不限于是:目标流程的申报事件、更新事件等,该更新事件包括对目标流程的相关信息进行更新。例如为对目标流程的人员信息(增减参与人员,参与人员例如为环境治理流程中的排污厂、污水指标检测方等相关负责人员)和/或流程信息(流程环节的更改、流程环节负责人的更改等)进行更新等。
在一实施场景中,参照图1所示,一新增的参与方(例如为监督方)需要加入到环境治理流程中,监督方的用户D通过所在电子设备对应的节点4(例如为一安装有环境治理应用的客户端设备)发起加入环境治理流程的请求,该请求需要审批节点进行审批,属于审批触发事件。节点4通过网络将用户D加入环境治理流程的请求发送给管理节点110,当管理节点110接收到上述用户D加入环境治理流程的请求时,视为检测到发生针对环境治理流程(目标流程的一个示例)的审批触发事件。
在操作S202,将上述秘钥信息组存储于上述区块链网络的账本中,并生成审批通知;其中上述审批通知用于提示对上述目标流程的审批触发事件进行审批。
将执行该方法的审核节点描述为当前节点,在接收到上述秘钥信息组的情况下,当前节点将上述秘钥信息组存储于区块链网络的账本中(可以描述为秘钥数据上链的过程)。例如在节点1在账本中存储上述秘钥信息组,同时节点2和3也在各自的账本中同步存储上述秘钥信息组。
在存储上述秘钥信息组之后,在当前节点中生成审批通知,以提示当前节点所对应的审核用户来对上述目标流程的审批触发事件(例如为用户D请求加入环境治理流程的事件)进行审批。
在操作S203,接收用户对上述审批触发事件进行审批的审批结果。
这里的用户可以是具有审批权限的用户,该用户通过登录审批账号后实施审批操作,从而在审批节点接收到通过或不通过(也可以描述为同意或不同意)的审批结果。
在操作S204,根据审批所针对的流程、审批账号信息、上述审批结果和与当前节点的审批账号对应的匹配目标秘钥,生成审批信息。
参照图1所示,上述秘钥信息组的形式例如为:{环境治理流程的流程ID,初始秘钥信息,审批账号CA-目标秘钥1,审批账号CB-目标秘钥2,审批账号CC-目标秘钥3},以当前节点为节点1进行示例,与节点1的审批账号CA对应的匹配目标秘钥为目标秘钥1。
在操作S205,基于上述审批信息向上述区块链网络的智能合约发起提交请求。
参照图1所示,节点1、节点2或节点3各自基于上述审批信息,向区块链网络的智能合约发起提交请求。
在操作S206,上述智能合约根据上述账本中存储的上述秘钥信息组,对待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述审批触发事件的响应结果。
基于上述操作S201~S206,通过将接收的秘钥信息组存储于包含审核节点的区块链网络的账本中,并且各个审核节点在对目标流程进行审批时,需要根据审批所针对的流程、审批账号信息、上述审批结果和与当前节点的审批账号对应的匹配目标秘钥,生成审批信息;如此一来,在区块链的智能合约对待验证节点(可能是审批节点,也可能是其他仿冒审批节点的仿冒节点)进行验证时,可以通过存储的秘钥信息组来对各个待验证节点的身份进行验证,而且还基于门限签名验证的方式来对多个待验证节点反馈的审批信息的有效性进行验证,通过基于多方门限签名来控制流程的审批,对审批方的身份能够进行安全且高效的验证;该方案应用于环境治理领域,能够实现分布式治理,各个审批节点各自进行独立审批且各个节点运行的区块链的智能合约同时执行审批信息的验证,从而达成多方治理、审批责任明确且可追溯的效果。
根据本公开的实施例,当前节点在执行上述操作S201之后,还可以执行以下操作:从上述秘钥信息组获取与当前节点的审批账号对应的匹配目标秘钥,并将上述匹配目标秘钥在上述当前节点的本地数据库进行存储。
其中,当前节点的本地数据库与当前节点与其他节点构成的区块链网络的账本所对应的数据库是具有不同访问权限的两种类型数据库,当前节点的本地数据库只能由当前节点访问,区块链内的其他节点对于当前节点的本地数据库是不具备访问权限的。
图3示意性示出了根据本公开实施例的操作S206的详细实施过程图。
根据本公开的实施例,上述目标秘钥是基于门限签名算法,根据上述审批账号的账号标识、账号总个数和目标门限阈值信息,对上述初始秘钥信息进行拆分处理得到的;其中上述目标门限阈值信息用于限定上述审批触发事件的最低批准个数。
参照图3所示,上述操作S206中,根据上述账本中存储的上述秘钥信息组,对待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述审批触发事件的响应结果,包括以下操作:S310,和以下操作组中的一组:{S320a,S330a}、{S320b}或{S320c}。
在接收到的审批信息的个数超过上述目标门限阈值信息的情况下,执行操作S310。例如在图3中示例了针对目标流程的目标用户账号总个数T=3,目标门限阈值信息M=2的实施例,先接收到的审批信息分别是来自待验证节点:节点NX1和节点NX2各自对应的审批信息X1和X2,当接收到审批信息的个数超过2个,便可以执行门限验证操作S310。在图3中采用单箭头和双箭头来示意不同的验证顺序,单箭头对应的审批信息的门限验证时间要早于双箭头示意的审批信息的验证时间。
在操作S310,根据存储的秘钥信息组,对已有的待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述已有的待验证节点的综合验证结果。
在上述综合验证结果为有效且验证通过的情况下,执行操作S320a对应的分支,在上述综合验证结果为有效且验证不通过的情况下,执行操作S320b对应的分支,在上述综合验证结果为无效的情况下,执行操作S320c的分支。
在操作S320a,根据上述审批触发事件,对上述目标流程进行相应的处理。
例如,在审批触发事件为对目标流程的人员信息进行增减的情况下,对上述目标流程进行相应的处理包括:对上述目标流程的参与权限进行更新,包括:新增目标参与权限,上述目标参与权限用于限定待加入节点所对应的用户能够参与上述目标流程,或者,删除已有的特定参与权限,上述已有的特定参与权限用于限定待退出节点所对应的用户能够参与上述目标流程。在审批触发事件为对目标流程的流程信息进行更新的情况下,对上述目标流程进行相应的处理包括:对上述目标流程的流程信息进行更新。
在操作S330a,在处理成功的情况下,生成关于上述审批触发事件审批通过的响应结果。
根据本公开的实施例,在处理失败的情况下,生成关于上述审批触发事件处于审批过程中的响应结果,并继续进行处理,直至处理成功后,生成对上述审批触发事件审批通过的响应结果。
在上述综合验证结果为有效且验证不通过的情况下,执行操作S320b,生成关于上述审批触发事件审批不通过的响应结果,并提示审批不通过的原因。
在上述综合验证结果为无效的情况下,执行操作S320c,将已经接收到的待验证审批信息进行存储,并继续接收待验证审批信息,并对继续接收到的待验证审批信息进行验证,生成关于上述审批触发事件处于审批过程中的响应结果。
参照图3中双箭头所示,继续接收来自待验证节点NX3对应的审批信息X3,并且继续对审批信息X1、X2和X3进行门限签名验证,可以理解的是,在具体实施时,根据操S310的具体实施过程可以得知X1、X2中的哪个审批信息是无效的,哪个审批信息是有效的,例如得知X1是有效的,X2是无效的,后续执行操作S320c时,可以直接利用已经验证过的有效的审批信息X1和后续接收到的审批信息X3来进行后续的门限签名验证。
任何节点(包括审核节点或者仿冒审核节点的仿冒节点)都可以基于审批信息向智能合约发起提交请求。根据本公开的一种实施例,只要节点发起提交请求,智能合约不对提交请求进行限制,直接接受任何节点发起的提交请求,即,在操作S205执行后,智能合约直接接收上述提交请求,这种情况下,在操作S206中,智能合约对提交后的待验证审核信息的验证具有两重的校验限制,首先是身份(携带的秘钥信息与存储的秘钥信息)一致性校验,其次是对多个审批结果的一致性校验。
根据本公开的另一种实施例,智能合约在对节点基于审批信息发起的提交请求进行响应时,会先进行身份(携带的秘钥信息与存储的秘钥信息)一致性校验,即,在操作S205执行后,智能合约通过校验待验证节点携带的秘钥信息与存储的秘钥信息组是否一致来得到接受或拒绝上述提交请求的提交结果(对应于后续描述的操作S510),在身份一致性校验通过的情况下,才会接受提交请求;当携带的秘钥信息与存储的秘钥信息组不一致时,智能合约会直接拒绝审批信息的提交。这种情况下,在操作S206中,智能合约对提交后的待验证审核信息的验证具有单重校验限制,对多个审批结果的一致性校验。
图4示意性示出了根据本公开一实施例的操作S310的详细实施流程图;图5示意性示出了根据本公开另一实施例的操作S205对应的智能合约的执行方式以及操作S310的详细实施流程图。
下面参照图4和图5来分别描述这两种实施例。
本公开的实施例中,为了区别描述操作S206中待验证节点提交的审批信息(可能是审核节点的审批信息,也可能是仿冒审核节点的仿冒节点的审批信息)与前述操作S204和S205中当前节点生成的审批信息,将操作S206中待验证节点提交的审批信息描述为待验证审批信息。
参照图4所示,根据本公开的一种实施例,上述待验证审批信息包括:审批所针对的流程、待验证节点的审批账号信息、待验证秘钥和待验证节点的审批结果。
上述操作S310中,根据存储的秘钥信息组,对已有的待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述已有的待验证节点的综合验证结果,包括以下操作:S410、S420a、S430、S440a、S450a和S460a/S460b;在其他实施例中,还可以进一步包括操作S420b和S440b。
在操作S410,确定上述已有的待验证节点中每个待验证节点的审批所针对的流程、待验证节点的审批账号信息和待验证秘钥之间的对应关系与上述秘钥信息组是否匹配。
在操作S420a,针对每个待验证节点,在当前待验证节点的上述对应关系与上述秘钥信息组匹配的情况下,确定上述当前待验证节点的待验证秘钥为已验证秘钥,并标记上述当前待验证节点的审批结果为有效状态。
在操作S420b,针对每个待验证节点,在当前待验证节点的上述对应关系与上述秘钥信息组不匹配的情况下,确定上述当前待验证节点的待验证秘钥为验证不通过秘钥,并标记上述当前待验证节点的审批结果为无效状态。
通过执行S410和以下操作中的一个:操作S420a或S420b,能够得到已有的待验证节点(例如为图5中示例的待验证节点NX1和NX2)中的每个待验证节点的待验证审批信息的有效性,即,对待验证节点的身份进行验证。例如在一实施例中,执行上述操作S410,S420a和S420b之后,得到待验证节点NX1的待验证秘钥为已验证秘钥,并标记上述待验证节点NX1的审批结果(例如审批结果为审批通过)为有效状态。待验证节点NX2的待验证秘钥为验证不通过秘钥,并标记上述待验证节点NX2的审批结果(例如审批结果为审批通过)为无效状态。
在操作S430,确定已有的待验证节点中处于有效状态的审批结果的个数是否超过上述目标门限阈值信息。
在上述已有的待验证节点中处于有效状态的审批结果的个数超过上述目标门限阈值信息的情况下,执行操作S440a所对应的分支;在上述已有的待验证节点中处于有效状态的审批结果的个数小于上述目标门限阈值信息的情况下,执行操作S440b对应的分支。
在操作S440a,根据审批结果为通过和不通过进行分类,对有效状态的审批结果为同一类所对应的所有已验证秘钥进行聚合处理,得到整合秘钥信息。
在操作S450a,确定上述整合秘钥信息与上述初始秘钥信息是否一致。
在操作S460a,在上述整合秘钥信息与上述初始秘钥信息一致的情况下,确定综合验证结果为有效且验证通过。
在操作S460b,在上述整合秘钥信息与上述初始秘钥信息不一致的情况下,确定综合验证结果为有效且验证不通过。
例如,接续上述待验证节点NX1和NX2对应的实施例,执行操作S430之后,待验证节点NX1和NX2处于有效状态的审批结果的个数为2个,等于目标门限阈值信息(M=2),则继续执行S440a对应的分支。假设待验证节点NX1对应的审批结果为通过,待验证节点NX2对应的审批结果为通过,则在上述已有的待验证节点中,审批结果为通过这一类对应的所有已验证秘钥的个数为2,审批结果为不通过这一类对应的所有已验证秘钥的个数为0;将待验证节点NX1和NX2二者的已验证秘钥进行聚合处理,得到整合秘钥信息。对应的,在操作S450a得到的结果为“是”,最终确定综合验证结果为有效且验证通过。
在另一实施例中,假设待验证节点NX1对应的审批结果为通过,待验证节点NX2对应的审批结果为不通过,则在上述已有的待验证节点中,审批结果为通过这一类对应的所有已验证秘钥的个数为1,审批结果为不通过这一类对应的所有已验证秘钥的个数为1;分别得到两个聚合秘钥,实际为待验证节点NX1和NX2各自的已验证秘钥。对应的,在操作S450a得到的结果为“否”,最终确定综合验证结果为有效且验证不通过。
在上述已有的待验证节点中处于有效状态的审批结果的个数小于上述目标门限阈值信息的情况下,执行操作S440b,确定综合验证结果为无效。
例如,接续上述待验证节点NX1和NX2对应的实施例,执行操作S430之后,待验证节点NX1和NX2对处于有效状态的审批结果的个数为1个,小于目标门限阈值信息(M=2),则确定目前已有的待验证节点NX1和NX2对应的综合验证结果为无效。
这种情况下,参照前述实施例中结合图3描述的操作可知,执行操作S320c。
根据本公开的另一种实施例,参照图5所示,在上述基于上述审批信息向上述区块链网络的智能合约发起提交请求所对应的操作S205之后,还包括操作S510,为了简化示意,仅示意操作S205、S510和操作S206中的操作S310所对应的具体实施操作:S520,S530a,S540a,S550a/S550b,S530b,其他操作与前述实施例相同,这里不再赘述。
在操作S510,上述智能合约根据发起提交请求的节点携带的秘钥信息与上述账本中存储的上述秘钥信息组是否匹配,得到接受或拒绝上述提交请求的提交结果。
其中,当上述提交请求的节点携带的秘钥信息与上述秘钥信息组匹配时,上述智能合约接受上述提交请求;当上述提交请求的节点携带的秘钥信息与上述秘钥信息组不匹配时,上述智能合约拒绝上述提交请求。
基于上述操作S510,在提交时进行身份验证,携带的秘钥信息与存储的秘钥信息不一致时,直接拒绝提交,如此能够保证接受提交的待验证节点都是有效的,接受提交的待验证节点所对应的待验证秘钥为已验证秘钥,接受提交的待验证节点所对应的审批结果为有效状态。
本实施例中,上述待验证审批信息包括:已验证秘钥和待验证节点的审批结果。
参照图5所示,上述操作S310中,根据存储的秘钥信息组,对已有的待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述已有的待验证节点的综合验证结果,包括以下操作:S520、S530a、S540a和S550a/S550b,在其他实施例中,还可以进一步包括:S530b。
在操作S520,确定已有的待验证节点提交的审批结果的个数是否超过上述目标门限阈值信息。
在上述已有的待验证节点提交的审批结果的个数超过上述目标门限阈值信息的情况下,执行操作S630a,S640a,以及S550a或S550b中的一种。
在操作S530a,根据审批结果为通过和不通过进行分类,对上述审批结果为同一类所对应的所有待验证节点的已验证秘钥进行聚合处理,得到整合秘钥信息。
在操作S540a,确定上述整合秘钥信息与上述初始秘钥信息是否一致。
在操作S550a,在上述整合秘钥信息与上述初始秘钥信息一致的情况下,确定综合验证结果为有效且验证通过。
在操作S550b,在上述整合秘钥信息与上述初始秘钥信息不一致的情况下,确定综合验证结果为有效且验证不通过。
在上述已有的待验证节点中处于有效状态的审批结果的个数小于上述目标门限阈值信息的情况下,执行操作S530b,确定综合验证结果为无效。
在上述各个实施例的基础上,上述方法还包括:将上述提交请求和上述响应结果均存储于上述账本中。不论响应结果是审批通过、审批不通过、处于审批过程中,均会将每次数据处理后得到的响应结果对应进行存储,通过对提交请求所对应的各个待验证节点和响应结果对应进行存储,能够实现责任追溯。此外,在包含上述操作S510的实施例中,还可以将接受或拒绝上述提交请求的提交结果存储于上述账本中。
本公开的第二个示例性实施例提供了一种流程管控的方法。上述方法能够应用于管理端,上述管理端与包含多个审核节点的区块链网络通信连接。
本实施例的方法可以视为是区块链链下的处理过程,通过与第一个实施例提供的基于区块链的流程管控的方法进行交互,能够实现链上-链下相结合的流程审核。
图6示意性示出了根据本公开一实施例的流程管控的方法的流程图。
参照图6所示,本实施例提供的流程管控的方法,包括以下操作:S601、S602、S603、S604、S605和S606。
在操作S601,检测是否发生针对目标流程的审批触发事件。
根据本公开的实施例,上述审批触发事件包括目标流程的更新事件,上述更新事件包括对目标流程的相关信息进行更新,例如为对目标流程的人员信息和/或流程信息进行更新。例如参照图1所示,审批请求节点130(节点4)通过发起加入目标流程的请求,相应的,管理端检测到审批触发事件。
在操作S602,获取与上述目标流程的审批触发事件对应的审批账号的账号标识、账号总个数和目标门限阈值信息;其中上述目标门限阈值信息用于限定上述审批触发事件的最低批准个数。
在操作S603,基于秘钥算法库,生成初始秘钥信息。
上述秘钥算法库例如为ecdsa(椭圆曲线数字签名算法,一种示例性的数字签名算法)算法库,生成的初始秘钥信息包括私钥信息、算法类型和公钥信息等。
在操作S604,基于门限签名算法,根据上述审批账号的账号标识、账号总个数和上述目标门限阈值信息,对上述初始秘钥信息进行拆分处理,得到对应于每个账号标识的目标秘钥。
根据本公开的实施例,上述操作S604包括以下子操作:S604a、S604b和S604c。
在子操作S604a,根据上述审批账号的账号总个数(例如T=3)和上述目标门限阈值信息(例如M=2),对上述初始秘钥信息进行拆分处理,得到预设数量个(3个)拆分后的中间秘钥片段。其中,上述预设数量等于上述账号总个数,至少基于上述目标门限阈值信息所对应数量的中间秘钥片段能够恢复初始秘钥信息(至少基于2个中间秘钥片段可以恢复初始秘钥信息)。
对于一个(M(门限阈值),T(总个数))门限签名算法,其典型的使用过程如下:在一个由T个参与方组成的群体中,群体中各参与方通过一定方法获得相应的签名私钥分片,群体中至少有M方使用各自的签名私钥分片对同一份数据进行签名,产生签名分片,然后将各方签名分片合并,才能产生最终有效的签名。其中,M为门限阈值,当签名方的个数小于M时,无法产生有效的签名。
在子操作S604b,对每个中间秘钥片段分配各自对应的编号,上述编号与上述账号标识所关联。
在子操作S604c,根据上述中间秘钥片段与对应的编号,生成字符串;其中,每个字符串为对应于相应的账号标识的目标秘钥。
在操作S605,根据上述目标秘钥与对应的账号标识、上述目标流程的流程标识、上述初始秘钥信息之间的关联关系,生成秘钥信息组。
上述秘钥信息组包括:目标流程的流程标识,与上述目标流程对应的初始秘钥信息和审批账号的账号标识,以及根据上述初始秘钥信息生成的与上述审批账号对应的目标秘钥。
在操作S606,将上述秘钥信息组发送给上述区块链网络。
参照图1所示,在管理端110执行上述操作S601~S505之后,得到秘钥信息组,然后,在操作S606,将上述秘钥信息组发送给区块链网络,对应的,由区块链网络中的审核节点120来执行上述操作S201~S206,得到关于审批触发事件的响应结果。该响应结果可以在区块链网络的账本中进行存储后,由审核节点发送给管理端,再由管理端通知给审批请求节点130。
在管理端执行的流程管控的方法中,根据不同的目标流程(例如环境治理流程)只需动态设置相应的审批成员(具体为审批成员对应的审批账号信息)和门限阈值信息即可,促进流程审批过程的智能化和责任可视化。
本公开的第三个示例性实施例提供了一种基于区块链的流程管控的装置。
图7示意性示出了根据本公开实施例的基于区块链的流程管控的装置的结构框图。
参照图7所示,本公开实施例提供的基于区块链的流程管控的装置700包括审批节点,多个上述审批节点构成一个区块链网络,每个上述审批节点包括:秘钥接收模块701、记账模块702、审批通知生成模块703、审批结果接收模块704、审批信息生成模块705、审批提交模块706和验证模块707。
上述秘钥接收模块701用于接收管理端发送的针对目标流程的秘钥信息组。
上述秘钥信息组包括目标流程的流程标识,与上述目标流程对应的初始秘钥信息和审批账号的账号标识,以及根据上述初始秘钥信息生成的与上述审批账号对应的目标秘钥。
上述记账模块702用于将上述秘钥信息组存储于上述区块链网络的账本中。
上述审批通知生成模块703用于生成审批通知。其中上述审批通知用于提示对上述目标流程的审批触发事件进行审批。
上述审批结果接收模块704用于接收用户对上述审批触发事件进行审批的审批结果。
上述审批信息生成模块705用于根据审批所针对的流程、审批账号信息、上述审批结果和与当前节点的审批账号对应的匹配目标秘钥,生成审批信息。
上述审批提交模块706用于基于上述审批信息向上述区块链网络的智能合约发起提交请求。
上述验证模块707用于基于上述智能合约,根据上述账本中存储的上述秘钥信息组,对待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述审批触发事件的响应结果。
本公开的第四个示例性实施例提供了一种流程管控的装置。
图8示意性示出了根据本公开实施例的流程管控的装置的结构框图。
参照图8所示,本公开实施例提供流程管控的装置800包括管理端,上述管理端与包含多个审核节点的区块链网络通信连接,上述管理端包括:检测模块801、信息获取模块802、初始秘钥生成模块803、分片秘钥生成模块804、秘钥信息组生成模块805和发送模块806。
上述检测模块801用于检测是否发生针对目标流程的审批触发事件。
上述信息获取模块802用于获取与上述目标流程的审批触发事件对应的审批账号的账号标识、账号总个数和目标门限阈值信息;其中上述目标门限阈值信息用于限定上述审批触发事件的最低批准个数。
上述初始秘钥生成模块803用于基于秘钥算法库,生成初始秘钥信息。
上述分片秘钥生成模块804用于基于门限签名算法,根据上述审批账号的账号标识、账号总个数和上述目标门限阈值信息,对初始秘钥信息进行拆分处理,得到对应于每个账号标识的目标秘钥。
上述秘钥信息组生成模块805用于根据上述目标秘钥与对应的账号标识、上述目标流程的流程标识和上述初始秘钥信息之间的关联关系,生成秘钥信息组。
上述秘钥信息组包括:目标流程的流程标识,与上述目标流程对应的初始秘钥信息和审批账号的账号标识,以及根据上述初始秘钥信息生成的与上述审批账号对应的目标秘钥。
上述发送模块806用于将上述秘钥信息组发送给上述区块链网络。
上述装置700或装置800所包含的各个模块中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。上述装置700或装置800所包含的各个模块中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,上述装置700或装置800所包含的各个模块中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
本公开的第五个示例性实施例提供了一种电子设备。
图9示意性示出了本公开实施例提供的电子设备的结构框图。
参照图9所示,本公开实施例提供的电子设备900包括处理器901、通信接口902、存储器903和通信总线904,其中,处理器901、通信接口902和存储器903通过通信总线904完成相互间的通信;存储器903,用于存放计算机程序;处理器901,用于执行存储器上所存放的程序时,实现如上所述的基于区块链的流程管控的方法或如上所述的流程管控的方法。
本公开的第六个示例性实施例还提供了一种计算机可读存储介质。上述计算机可读存储介质上存储有计算机程序,上述计算机程序被处理器执行时实现如上所述的基于区块链的流程管控的方法或如上所述的流程管控的方法。
该计算机可读存储介质可以是上述实施例中描述的设备/装置中所包含的;也可以是单独存在,而未装配入该设备/装置中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

Claims (14)

1.一种基于区块链的流程管控的方法,其特征在于,应用于审批节点,多个所述审批节点构成一个区块链网络,针对每个审批节点,所述方法包括:
接收管理端发送的针对目标流程的秘钥信息组;
将所述秘钥信息组存储于所述区块链网络的账本中,并生成审批通知;其中所述审批通知用于提示对所述目标流程的审批触发事件进行审批;
接收用户对所述审批触发事件进行审批的审批结果;
根据审批所针对的流程、审批账号信息、所述审批结果和与当前节点的审批账号对应的匹配目标秘钥,生成审批信息;
基于所述审批信息向所述区块链网络的智能合约发起提交请求;
所述智能合约根据所述账本中存储的所述秘钥信息组,对待验证节点提交的待验证审批信息进行门限签名验证,得到针对所述审批触发事件的响应结果。
2.根据权利要求1所述的方法,其特征在于,
所述秘钥信息组包括:所述目标流程的流程标识,与所述目标流程对应的初始秘钥信息和审批账号的账号标识,以及根据所述初始秘钥信息生成的与所述审批账号对应的目标秘钥
所述目标秘钥是基于门限签名算法,根据所述审批账号的账号标识、账号总个数和目标门限阈值信息,对所述初始秘钥信息进行拆分处理得到的;其中所述目标门限阈值信息用于限定所述审批触发事件的最低批准个数。
3.根据权利要求2所述的方法,其特征在于,所述根据所述账本中存储的所述秘钥信息组,对待验证节点提交的待验证审批信息进行门限签名验证,得到针对所述审批触发事件的响应结果,包括:
在接收到的审批信息的个数超过所述目标门限阈值信息的情况下,根据存储的秘钥信息组,对已有的待验证节点提交的待验证审批信息进行门限签名验证,得到针对所述已有的待验证节点的综合验证结果;
在所述综合验证结果为有效且验证通过的情况下,根据所述审批触发事件,对所述目标流程进行相应的处理;在处理成功的情况下,生成关于所述审批触发事件审批通过的响应结果;
在所述综合验证结果为有效且验证不通过的情况下,生成关于所述审批触发事件审批不通过的响应结果,并提示审批不通过的原因;
在所述综合验证结果为无效的情况下,将已经接收到的待验证审批信息进行存储,并继续接收待验证审批信息,并对继续接收到的待验证审批信息进行验证,生成关于所述审批触发事件处于审批过程中的响应结果。
4.根据权利要求3所述的方法,其特征在于,所述待验证审批信息包括:审批所针对的流程、待验证节点的审批账号信息、待验证秘钥和待验证节点的审批结果;
所述根据存储的秘钥信息组,对已有的待验证节点提交的待验证审批信息进行门限签名验证,得到针对所述已有的待验证节点的综合验证结果,包括:
确定所述已有的待验证节点中每个待验证节点的审批所针对的流程、待验证节点的审批账号信息和待验证秘钥之间的对应关系与所述秘钥信息组是否匹配;
针对每个待验证节点,在当前待验证节点的所述对应关系与所述秘钥信息组匹配的情况下,确定所述当前待验证节点的待验证秘钥为已验证秘钥,并标记所述当前待验证节点的审批结果为有效状态;
确定已有的待验证节点中处于有效状态的审批结果的个数是否超过所述目标门限阈值信息;
在所述已有的待验证节点中处于有效状态的审批结果的个数超过所述目标门限阈值信息的情况下,根据审批结果为通过和不通过进行分类,对有效状态的审批结果为同一类所对应的所有已验证秘钥进行聚合处理,得到整合秘钥信息;
确定所述整合秘钥信息与所述初始秘钥信息是否一致;
在所述整合秘钥信息与所述初始秘钥信息一致的情况下,确定综合验证结果为有效且验证通过;
在所述整合秘钥信息与所述初始秘钥信息不一致的情况下,确定综合验证结果为有效且验证不通过。
5.根据权利要求4所述的方法,其特征在于,所述根据存储的秘钥信息组,对已有的待验证节点提交的待验证审批信息进行门限签名验证,得到针对所述已有的待验证节点的综合验证结果,还包括:
针对每个待验证节点,在当前待验证节点的所述对应关系与所述秘钥信息组不匹配的情况下,确定所述当前待验证节点的待验证秘钥为验证不通过秘钥,并标记所述当前待验证节点的审批结果为无效状态;
在所述已有的待验证节点中处于有效状态的审批结果的个数小于所述目标门限阈值信息的情况下,确定综合验证结果为无效。
6.根据权利要求3所述的方法,其特征在于,在所述基于所述审批信息向所述区块链网络的智能合约发起提交请求之后,还包括:
所述智能合约根据发起提交请求的节点携带的秘钥信息与所述账本中存储的所述秘钥信息组是否匹配,得到接受或拒绝所述提交请求的提交结果;
其中,当所述提交请求的节点携带的秘钥信息与所述秘钥信息组匹配时,所述智能合约接受所述提交请求;当所述提交请求的节点携带的秘钥信息与所述秘钥信息组不匹配时,所述智能合约拒绝所述提交请求。
7.根据权利要求6所述的方法,其特征在于,所述待验证审批信息包括:已验证秘钥和待验证节点的审批结果;
所述根据存储的秘钥信息组,对已有的待验证节点提交的待验证审批信息进行门限签名验证,得到针对上述已有的待验证节点的综合验证结果,包括:
确定已有的待验证节点提交的审批结果的个数是否超过所述目标门限阈值信息;
在所述已有的待验证节点提交的审批结果的个数超过所述目标门限阈值信息的情况下,根据审批结果为通过和不通过进行分类,对所述审批结果为同一类所对应的所有待验证节点的已验证秘钥进行聚合处理,得到整合秘钥信息;
确定所述整合秘钥信息与所述初始秘钥信息是否一致;
在所述整合秘钥信息与所述初始秘钥信息一致的情况下,确定综合验证结果为有效且验证通过;
在所述整合秘钥信息与所述初始秘钥信息不一致的情况下,确定综合验证结果为有效且验证不通过;
在所述已有的待验证节点中处于有效状态的审批结果的个数小于所述目标门限阈值信息的情况下,确定综合验证结果为无效。
8.根据权利要求1所述的方法,其特征在于,还包括:
将所述提交请求和所述响应结果均存储于所述账本中。
9.一种流程管控的方法,其特征在于,应用于管理端,所述管理端与包含多个审核节点的区块链网络通信连接,所述方法包括:
检测是否发生针对目标流程的审批触发事件;
获取与所述目标流程的审批触发事件对应的审批账号的账号标识、账号总个数和目标门限阈值信息;其中所述目标门限阈值信息用于限定所述审批触发事件的最低批准个数;
基于秘钥算法库,生成初始秘钥信息;
基于门限签名算法,根据所述审批账号的账号标识、账号总个数和所述目标门限阈值信息,对所述初始秘钥信息进行拆分处理,得到对应于每个账号标识的目标秘钥;
根据所述目标秘钥与对应的账号标识、所述目标流程的流程标识、所述初始秘钥信息之间的关联关系,生成秘钥信息组;以及
将所述秘钥信息组发送给所述区块链网络。
10.根据权利要求9所述的方法,其特征在于,所述基于门限签名算法,根据所述审批账号的账号标识、账号总个数和所述目标门限阈值信息,对所述初始秘钥信息进行拆分处理,得到对应于每个账号标识的目标秘钥,包括:
根据所述审批账号的账号总个数和所述目标门限阈值信息,对所述初始秘钥信息进行拆分处理,得到预设数量个拆分后的中间秘钥片段;其中,所述预设数量等于所述账号总个数,至少基于所述目标门限阈值信息所对应数量的中间秘钥片段能够恢复初始秘钥信息;
对每个中间秘钥片段分配各自对应的编号,所述编号与所述账号标识所关联;
根据所述中间秘钥片段与对应的编号,生成字符串;其中,每个字符串为对应于相应的账号标识的目标秘钥。
11.一种基于区块链的流程管控的装置,所述装置包括审批节点,其特征在于,多个所述审批节点构成一个区块链网络,每个所述审批节点包括:
秘钥接收模块,用于接收管理端发送的针对目标流程的秘钥信息组;
记账模块,用于将所述秘钥信息组存储于所述区块链网络的账本中;
审批通知生成模块,用于生成审批通知;其中所述审批通知用于提示对所述目标流程的审批触发事件进行审批;
审批结果接收模块,用于接收用户对所述审批触发事件进行审批的审批结果;
审批信息生成模块,用于根据审批所针对的流程、审批账号信息、所述审批结果和与当前节点的审批账号对应的匹配目标秘钥,生成审批信息;
审批提交模块,用于基于所述审批信息向所述区块链网络的智能合约发起提交请求;
验证模块,用于基于所述智能合约,根据所述账本中存储的所述秘钥信息组,对待验证节点提交的待验证审批信息进行门限签名验证,得到针对所述审批触发事件的响应结果。
12.一种流程管控的装置,所述装置包括管理端,其特征在于,所述管理端与包含多个审核节点的区块链网络通信连接,所述管理端包括:
检测模块,用于检测是否发生针对目标流程的审批触发事件;
信息获取模块,用于获取与所述目标流程的审批触发事件对应的审批账号的账号标识、账号总个数和目标门限阈值信息;其中所述目标门限阈值信息用于限定所述审批触发事件的最低批准个数;
初始秘钥生成模块,用于基于秘钥算法库,生成初始秘钥信息;
分片秘钥生成模块,用于基于门限签名算法,根据所述审批账号的账号标识、账号总个数和所述目标门限阈值信息,对所述初始秘钥信息进行拆分处理,得到对应于每个账号标识的目标秘钥;
秘钥信息组生成模块,用于根据所述目标秘钥与对应的账号标识、所述目标流程的流程标识、所述初始秘钥信息之间的关联关系,生成秘钥信息组;以及
发送模块,用于将所述秘钥信息组发送给所述区块链网络。
13.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-10中任一项所述的方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-10中任一项所述的方法。
CN202210351262.7A 2022-04-02 2022-04-02 基于区块链的流程管控的方法、装置、电子设备及介质 Pending CN116933989A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210351262.7A CN116933989A (zh) 2022-04-02 2022-04-02 基于区块链的流程管控的方法、装置、电子设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210351262.7A CN116933989A (zh) 2022-04-02 2022-04-02 基于区块链的流程管控的方法、装置、电子设备及介质

Publications (1)

Publication Number Publication Date
CN116933989A true CN116933989A (zh) 2023-10-24

Family

ID=88377839

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210351262.7A Pending CN116933989A (zh) 2022-04-02 2022-04-02 基于区块链的流程管控的方法、装置、电子设备及介质

Country Status (1)

Country Link
CN (1) CN116933989A (zh)

Similar Documents

Publication Publication Date Title
CN111464518B (zh) 一种跨链通信数据的发送、验证方法及装置
CN109165944B (zh) 基于区块链的多方签名认证方法、装置、设备及存储介质
CN110351133A (zh) 用于区块链系统中的主节点切换处理的方法及装置
CN111163165A (zh) 一种基于Fabric联盟链的投票共识方法
CN111314067B (zh) 区块存储方法、装置、计算机设备及存储介质
CN109961287A (zh) 一种区块链的监管方法及监管系统
CN110599095A (zh) 基于区块链网络的危废处理方法及区块链网络的节点
CN112184442B (zh) 基于区块链的刑事案件证据流转记录的管理方法及系统
CN110868286B (zh) 一种基于区块链智能合约生成随机数的方法
CN112000744A (zh) 一种签名方法及相关设备
US20220309501A1 (en) Blockchain-based trusted transaction method for data product
CN110321730A (zh) 一种操作数据处理的方法、区块链节点及存储介质
CN111835514A (zh) 一种前后端分离数据安全交互的实现方法及系统
US11863689B1 (en) Security settlement using group signatures
CN112766896A (zh) 一种基于互联网的电子合同签署系统
JP2022051652A (ja) デジタル資産データパケットの信頼性検証システム
CN110727734B (zh) 基于区块链的信用信息同步方法及信用联合奖惩系统
CN112187471A (zh) 基于区块链与智能合约的数据抄送方法、系统及介质
CN115292684A (zh) 基于区块链的询证函数据处理的方法和区块链系统
CN111583041A (zh) 基于区块链的债券发行数据存储、核验处理方法及装置
Guo et al. Antitampering scheme of evidence transfer information in judicial system based on blockchain
CN113222601A (zh) 一种许可区块链匿名交易背书系统及方法
CN112950180A (zh) 一种基于联盟链的通证方法、系统、电子设备及存储介质
CN116934239A (zh) 流程管控的数据处理方法、装置
US11283623B1 (en) Systems and methods of using group functions certificate extension

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