CN110555319B - 基于区块链的资源预期结果审核方法、装置和计算机设备 - Google Patents
基于区块链的资源预期结果审核方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN110555319B CN110555319B CN201910662222.2A CN201910662222A CN110555319B CN 110555319 B CN110555319 B CN 110555319B CN 201910662222 A CN201910662222 A CN 201910662222A CN 110555319 B CN110555319 B CN 110555319B
- Authority
- CN
- China
- Prior art keywords
- resource
- block chain
- expected result
- preset
- auditing
- 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.)
- Active
Links
Images
Classifications
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请揭示了一种基于区块链的资源预期结果审核方法、装置、计算机设备和存储介质,所述方法包括:从预设的第一区块链网络中提取第一数据;获取实时采集的所述资源的第二数据,并根据公式:H(t)=min(G(t),m),其中E(t)=F(t)‑f(t),获取函数H(t);并根据公式:正常时间占比=所述第一时间长度/(所述第一时间长度+所述第二时间长度);若所述正常时间占比大于预设占比阈值,则生成资源预期结果;将资源预期结果发送给多个审核区块链节点;接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息;若满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。从而提高资源预期结果审核的效率、安全性、可靠性和审核过程的透明性。
Description
技术领域
本申请涉及到计算机领域,特别是涉及到一种基于区块链的资源预期结果审核方法、装置、计算机设备和存储介质。
背景技术
资源预期例如预算是现代生产中经常使用的技术手段,用以预计将来一段时间的收入与支出。传统技术中对于预算的生成与审核,一般采用人工手段进行制定预算计划与人工审核预算是否合适,在具体的预算的生成与审核过程中需要耗费大量的人力与物力,并且因为传统技术的方式不能实现信息的透明化、数据容易受到篡改。并且传统技术对于生成预算的对象没有有效地判断其数据是否正常,是否存在异常或者伪造数据的能力。因此传统技术具有效率低、过程不透明并且信息安全性低、可靠性低等缺陷。
发明内容
本申请的主要目的为提供一种基于区块链的资源预期结果审核方法、装置、计算机设备和存储介质,旨在提高资源预期结果审核的效率、安全性、可靠性和审核过程的透明性。
为了实现上述发明目的,本申请提出一种基于区块链的资源预期结果审核方法,应用于指定终端,包括:
从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点;
获取实时采集的所述资源的第二数据,并根据公式:
H(t)=min(G(t),m),其中E(t)=F(t)-f(t),获取函数H(t),其中F(t)为所述资源的第二数据随时间变化的函数,f(t)为预设的标准第二数据变化函数,E(t)为所述函数F(t)与所述标准第二数据变化函数f(t)的差值函数,为所述差值函数对时间的微分函数,min指最小值函数,t为时间,m为预设的大于0的误差参数值;获取所述函数H(t)在时间轴上不等于m时的第一时间长度和等于m时的第二时间长度,并根据公式:正常时间占比=所述第一时间长度/(所述第一时间长度+所述第二时间长度),计算出所述正常时间占比,并判断所述正常时间占比是否大于预设占比阈值;若所述正常时间占比大于预设占比阈值,则根据所述第一数据,利用预设的资源预期算法,生成资源预期结果;
将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核;
接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息,其中所述返回信息包括审核通过或者审核未通过;
判断所述返回信息是否满足预设的区块链记录条件;
若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。
本申请还提供一种基于区块链的资源预期结果审核装置。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
本申请提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
本申请的基于区块链的资源预期结果审核方法、装置、计算机设备和存储介质,从预设的第一区块链网络中提取第一数据;获取第二数据并根据第二数据判断资源是否正常,再根据所述第一数据,生成资源预期结果;接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息;若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。从而解决了传统技术效率低、过程不透明并且信息安全性低等缺陷。
附图说明
图1为本申请一实施例的基于区块链的资源预期结果审核方法的流程示意图;
图2为本申请一实施例的基于区块链的资源预期结果审核装置的结构示意框图;
图3为本申请一实施例的计算机设备的结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请实施例提供一种基于区块链的资源预期结果审核方法,应用于指定终端,包括以下步骤:
S1、从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点;
S2、获取实时采集的所述资源的第二数据,并根据公式:
H(t)=min(G(t),m),其中E(t)=F(t)-f(t),获取函数H(t),其中F(t)为所述资源的第二数据随时间变化的函数,f(t)为预设的标准第二数据变化函数,E(t)为所述函数F(t)与所述标准第二数据变化函数f(t)的差值函数,为所述差值函数对时间的微分函数,min指最小值函数,t为时间,m为预设的大于0的误差参数值;获取所述函数H(t)在时间轴上不等于m时的第一时间长度和等于m时的第二时间长度,并根据公式:正常时间占比=所述第一时间长度/(所述第一时间长度+所述第二时间长度),计算出所述正常时间占比,并判断所述正常时间占比是否大于预设占比阈值;若所述正常时间占比大于预设占比阈值,则根据所述第一数据,利用预设的资源预期算法,生成资源预期结果;
S3、将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核;
S4、接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息,其中所述返回信息包括审核通过或者审核未通过;
S5、判断所述返回信息是否满足预设的区块链记录条件;
S6、若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。
本申请通过采用区块链的设计,将指定终端同时设置为第一区块链网络与第二区块链网络的区块链节点,从而使得生成资源预期结果的第一数据可以从第一区块链网络的公共账本中提取,保证第一数据的可靠性(利用区块链的数据不易篡改的特性),又利用第二区块链网络审核并记录资源预期结果,保证审核过程透明并提高效率,更进一步地采用区块链的设计,将提供资源预期计算使用数据与审核资源预期结果二者分割开来,更利于分级别地管理与可能的错误追溯。并且通过对第二数据的处理,以判断所述资源是否存在异常或者伪造数据的可能,从而提高了预期结果的可靠性。
如上述步骤S1所述,从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点。其中所述资源例如为财务、金融,所述资源预期例如为预算。其中第一区块链网络和第二区块链网络可以为公有链、联盟链或者私有链。第一区块链网络的公共账本用于保存提供资源预期计算使用数据,例如部门制定的部门开支计划等。第二区块链网络的公共账本用于保存审核通过的资源预期结果。所述指定终端由于同时处于第一区块链网络和第二区块链网络中,因此同时具有第一区块链网络的公共账本和第二区块链网络的公共账本,从而使第一数据-生成资源预期结果-资源预期结果审核的整个流程的数据来源均真实可信,提高了信息安全性。其中,第一区块链网络的区块链节点可以将用于生成资源预期结果的数据记录入第一区块链网络的公共账本中。因此,在本申请的基于区块链的资源预期结果审核方法中,由于第一数据来源于第一区块链网络的公共账本,难以被篡改,从而克服了传统技术中数据可靠性待商榷的问题;并使资源预期结果的审核在第二区块链网络中实现并在第二区块链网络中记载,实现了资源预期结果可信、以及分级别地管理与可能的错误追溯的技术效果。
如上述步骤S2所述,获取实时采集的所述资源的第二数据,并根据公式:
H(t)=min(G(t),m),其中E(t)=F(t)-f(t),获取函数H(t),其中F(t)为所述资源的第二数据随时间变化的函数,f(t)为预设的标准第二数据变化函数,E(t)为所述函数F(t)与所述标准第二数据变化函数f(t)的差值函数,为所述差值函数对时间的微分函数,min指最小值函数,t为时间,m为预设的大于0的误差参数值;获取所述函数H(t)在时间轴上不等于m时的第一时间长度和等于m时的第二时间长度,并根据公式:正常时间占比=所述第一时间长度/(所述第一时间长度+所述第二时间长度),计算出所述正常时间占比,并判断所述正常时间占比是否大于预设占比阈值;若所述正常时间占比大于预设占比阈值,则根据所述第一数据,利用预设的资源预期算法,生成资源预期结果。其中函数H(t)用以表征所述第二数据的状况,当函数H(t)取值为m时,表示第二数据的数值过大,处于异常状态;当函数H(t)取值不为m时,表示第二数据的数值正常,处于正常状态,据此计算出所述正常时间占比,并判断所述正常时间占比是否大于预设阈值;若所述正常时间占比大于预设占比阈值,则根据所述第一数据,利用预设的资源预期算法,生成资源预期结果。其中第一数据是用于生成资源预期结果的,因此可以生成资源预期结果。其中根据所述第一数据,利用预设的资源预期算法,生成资源预期结果可采用任意方式,例如为:从所述第一数据中划分出收入数据与支出数据;判断所述收入数据与支出数据是否可信;若所述收入数据与支出数据可信,则分别记为可信收入与可信支出;统计所述可信收入与可信支出,从而得到可信总收入与可信总支出;生成包括所述可信总收入与可信总支出的资源预期结果。
进一步地,所述第一数据与所述第二数据可以相互关联,也可以没有关系。所述第二数据用以侧面判断所述资源的数据是否存在异常或者伪造的可能。可以使用任意方式确定第二数据,例如从预设的数据表格中获取所述第二数据,其中所述数据表格记载有多个数据类别。获取所述第二数据的方式例如为随机提取等。
如上述步骤S3所述,将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核。其中资源预期结果审核区块链节点可以是第二区块链网络中的所有区块链节点,也可以是部分区块链节点。将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核的过程,例如包括:在所述第二区块链网络中,获取根据预设的股份授权证明机制投选出的多个资源预期结果审核区块链节点;向所有所述资源预期结果审核区块链节点发送审核请求,并要求所述资源预期结果审核区块链节点发送回复信息;接收所述资源预期结果审核区块链节点发送的回复信息,并将所述回复信息为愿意审核的资源预期结果审核区块链节点记为最终资源预期结果审核区块链节点;将所述资源预期结果发送给多个所述最终资源预期结果审核区块链节点,并要求多个所述最终资源预期结果审核区块链节点对所述资源预期结果进行审核。
如上述步骤S4所述,接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息,其中所述返回信息包括审核通过或者审核未通过。不同的资源预期结果审核区块链节点采用的审核方式不一定相同,因此审核结果可能不同,分别为审核通过或者审核未通过。为了避免误判,本申请接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息,并综合考虑,以确定是否将资源预期结果记录入第二区块链网络的公共账本中。
如上述步骤S5所述,判断所述返回信息是否满足预设的区块链记录条件。判断所述返回信息是否满足预设的区块链记录条件的方式可为任意方式,例如当审核通过的返回信息的数量达到预定阈值的条件,则判定满足预设的区块链记录条件;或者,当审核通过的返回信息的数量占所有返回信息数量的占比值大于预设占比阈值时,则判定满足预设的区块链记录条件。
如上述步骤S6所述,若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。若所述返回信息满足预设的区块链记录条件,表明第二区块链网络中的大部分审核区块链节点均认同所述资源预期结果,因此将所述资源预期结果记录入所述第二区块链网络中。从而第二区块链网络中的区块链节点可从所述第二区块链网络中获知所述资源预期结果。
在一个实施方式中,所述资源为指定对象的资源,所述第一数据包括所述指定对象的多个子对象的预计资源增加量与预计资源损耗量,所述根据所述第一数据,利用预设的资源预期算法,生成资源预期结果的步骤S2,包括:
S201、统计多个所述子对象的预计资源增加量与预计资源损耗量,从而得到第一个子对象至第n个子对象的预计资源增加量A1、A2…、An和第一个子对象至第n个子对象的预计资源损耗量B1、B2…、Bn,并从预存的子对象重要程度关系表中获取第一个子对象至第n个子对象的重要程度参数p1、p2…、pn;
S203、判断所述敏感因子M是否大于预设的敏感阈值;
S204、若所述敏感因子M不大于预设的敏感阈值,则生成资源预期结果,其中所述资源预期结果至少包括多个子对象的预计资源增加量与预计资源损耗量。
如上所述,实现了生成资源预期结果。本申请的第一数据例如包括多个部门的部门预计收入与部门预计支出,根据部门预计收入与部门预计支出可以生成资源预期结果。其中,由于不同部门的重要性不同,相应的部门预算也因此受到影响。据此,本申请采用重要程度参数p1、p2…、pn以表示部门的重要程度,并根据公式:计算出敏感因子M,若所述敏感因子M不大于预设的敏感阈值,则生成资源预期结果,其中所述资源预期结果至少包括所述多个部门的部门预计收入与部门预计支出。其中第一个部门至第n个部门的预计收入为A1、A2…、An,第一个部门至第n个部门的预计支出为B1、B2…、Bn。从而使资源预期更有针对性,以便保证重要部门的资源预期。
在一个实施方式中,所述将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核的步骤S3,包括:
S301、在所述第二区块链网络中,获取根据预设的共识机制投选出的多个资源预期结果审核区块链节点;
S302、向所有所述资源预期结果审核区块链节点发送审核请求,并要求所述资源预期结果审核区块链节点发送回复信息;
S303、接收所述资源预期结果审核区块链节点发送的回复信息,并将所述回复信息为愿意审核的资源预期结果审核区块链节点记为最终资源预期结果审核区块链节点;
S304、将所述资源预期结果发送给多个所述最终资源预期结果审核区块链节点,并要求多个所述最终资源预期结果审核区块链节点对所述资源预期结果进行审核。
如上所述,实现了发送给多个审核区块链节点。本实施方式优选采用股份授权证明机制作为区块链网络的共识机制。其中股份授权证明机制是指,所有区块链节点投选出多个委托区块链节点,从而多个委托区块链节点代表所有区块链节点对是否将数据(例如交易)记录入公共账本做出判断,从而避免当区块链节点数量过多时区块链运作缓慢的缺点。据此,根据所述股份授权证明机制投选出的多个资源预期结果审核区块链节点能够做出是否将所述资源预期结果加入区块链网络的决定。并且,为了防止部分资源预期结果审核区块链节点不能参与审核(例如部分资源预期结果审核区块链节点未开机,或者通讯故障等原因)而导致最终决定不准确,本实施方式还采用预先发送审核请求的方式,以确定愿意审核的审核区块链节点,并记为最终资源预期结果审核区块链节点,将预先设置的指定换乘路线发送给多个所述最终审核区块链节点,从而既减少了不必要的网络开销(发送审核请求的开销远小于发送资源预期结果的开销),又能保证后续判断的准确性(排除了不能参与审核的节点)。
在一个实施方式中,所述判断所述返回信息是否满足预设的区块链记录条件的步骤S5,包括:
S501、统计所述返回信息,从而得到接收到的所述返回信息的总数量,以及审核通过的返回信息的数量;
S502、计算所述审核通过的返回信息的数量除以所述返回信息的总数量的商值;
S503、判断所述商值是否大于预设的区块链记录参数阈值;
S504、若所述商值大于预设的区块链记录参数阈值,则判定所述返回信息满足预设的区块链记录条件。
如上所述,实现了判断所述返回信息是否满足预设的区块链记录条件。本申请采用所述审核通过的返回信息的数量除以所述返回信息的总数量的商值,作为判断所述返回信息是否满足预设的区块链记录条件的依据。若所述商值大于预设的区块链记录参数阈值,表明认可所述资源预期结果的资源预期结果审核区块链节点在所有资源预期结果审核区块链节点中的占比够大,据此判定所述返回信息满足预设的区块链记录条件;若所述商值不大于预设的区块链记录参数阈值,表明认可所述资源预期结果的资源预期结果审核区块链节点在所有资源预期结果审核区块链节点中的占比较少,据此判定所述返回信息不满足预设的区块链记录条件。而本申请采用判断所述审核通过的返回信息的数量除以所述返回信息的总数量的商值的方式,相较仅判断所述审核通过的返回信息的数量的方式,更准确,可以防止当大量资源预期结果审核区块链节点出现故障(例如审核区块链节点与外界的通讯接口被劫持)不能参与审核时造成的误判。
在一个实施方式中,所述判断所述返回信息是否满足预设的区块链记录条件的步骤S5之后,包括:
S51、若所述返回信息不满足预设的区块链记录条件,则向返回信息为审核未通过的资源预期结果审核区块链节点发送原因获取指令,所述原因获取指令用于指示所述资源预期结果审核区块链节点将审核未通过的原因发送给所述指定终端;
S52、接收资源预期结果审核区块链节点发送的审核未通过的原因;
S53、判断所述审核未通过的原因是否存在于预设的原因列表中;
S54、若所述审核未通过的原因存在于预设的原因列表中,则不允许将所述资源预期结果记录入所述第二区块链网络中,并生成审核不通过的提醒信息,并在所述提醒信息中附上所述审核未通过的原因。
如上所述,实现了不允许将所述资源预期结果记录入所述第二区块链网络中。若所述返回信息不满足预设的区块链记录条件,表明所述资源预期结果不被认可,不能记录入所述第二区块链网络中。但是,为了利用错误追溯,以明确不被通过的原因以及时纠正,本申请还采用向返回信息为审核未通过的资源预期结果审核区块链节点发送原因获取指令;接收资源预期结果审核区块链节点发送的审核未通过的原因;生成审核不通过的提醒信息,并在所述提醒信息中附上所述审核未通过的原因的方式,以利于纠正未通过的资源预期结果。
在一个实施方式中,所述从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点的步骤S1之前,包括:
S001、利用Go语言创建区块链类,并赋予所述区块链类指定参数,从而获得创世区块,并在所述创世区块中将前一区块的哈希值设为0;
S002、基于所述创世区块,生成其他区块,其中所述其他区块记载有前一区块的哈希值;
S003、以预设终端作为第二区块链网络的区块链节点,从而搭建所述第二区块链网络。
如上所述,实现了搭建所述区块链网络。其中创建区块链类的语言可以为任意可行语言,例如JAVA、C++、Go语言等,本实施方式优选C++、Go语言,从而优化区块链类。其中区块链类(class)是对区块链的定义,将所述区块链类实例化即是确定区块链的具体参数,从而获得第一个区块(创世区块),从而作为其他区块的生成依据。由于创世区块是第一个区块,实际上没有之前的区块,因此在创世区块中将前一区块的哈希值设置为0。并基于所述创世区块,生成其他区块,其中所述其他区块记载有前一区块的哈希值,从而所有区块紧密相连,防止数据被篡改。所述第二区块链网络的预设共识机制可为任意共识机制,例如为工作量证明机制、权益证明机制、拜占庭容错机制、股份授权证明机制等,本实施方式优选股份授权证明机制。进一步地,所述第一区块链网络的搭建方法可以与第二区块链网络的搭建方法相同,也可以与第二区块链网络的搭建方法不相同。
在一个实施方式中,所述指定终端预存有虚拟机镜像和区块链节点容器镜像,所述从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点的步骤S1之前,包括:
S011、接收申请终端发送的加入第二区块链网络的请求,所述加入第二区块链网络的请求附带有所述申请终端的身份信息;
S012、判断所述申请终端的身份信息是否处于预设的允许加入列表中;
S013、若所述申请终端的身份信息处于预设的允许加入列表中,则向所述申请终端发送所述虚拟机镜像和区块链节点容器镜像;
S014、获取所述申请终端的IP地址与通信端口;
S015、向所述申请终端发送预存的第二区块链网络的所有区块链节点的IP地址和通信端口的信息,以及向第二区块链网络的所有区块链节点发送所述申请终端的IP地址和通信端口的信息,从而将所述申请终端加入所述第二区块链网络,其中所述申请终端已在所述虚拟机镜像中安装并启动所述区块链节点容器镜像。
如上所述,实现了利用虚拟机镜像和区块链节点容器镜像,快速部署第二区块链网络。其中,虚拟机镜像用于提供基础运行环境,例如运行区块链节点容器镜像的环境、编程程序语言运行环境或者基础工具包等。区块链节点容器镜像保存有公共账本(例如将所述当前审批***的已有审批记录转作为公共账本)等数据,用于在安装并启动区块链节点容器镜像后,使所述终端具有成为区块链节点的基础条件(例如还需要获取其他区块链节点的IP地址等信息,以及告知其他区块链节点本终端的IP地址等信息,才能完成加入所述区块链网络)。再将所述申请终端的IP地址与通信端口告知第二区块链网络的所有区块链节点,以及向第二区块链网络的所有区块链节点发送所述申请终端的IP地址和通信端口的信息,从而实现了快速将所述申请终端加入所述第二区块链网络。本申请通过预设虚拟机镜像和区块链节点容器镜像的方式,加快了节块链部署的速度,并维持了区块链的去中心化。进一步地,所述第一区块链网络新增区块链节点的方法可以与第二区块链网络相同,也可以与第二区块链网络不相同。
本申请的基于区块链的资源预期结果审核方法,从预设的第一区块链网络中提取第一数据;获取第二数据并根据第二数据判断资源是否正常,再根据所述第一数据,生成资源预期结果;接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息;若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。从而解决了传统技术效率低、过程不透明并且信息安全性低等缺陷。
参照图2,本申请实施例提供一种基于区块链的资源预期结果审核装置,应用于指定终端,包括:
第一数据提取单元10,用于从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点;
资源预期结果获取单元20,用于获取实时采集的所述资源的第二数据,并根据公式:
H(t)=min(G(t),m),其中E(t)=F(t)-f(t),获取函数H(t),其中F(t)为所述资源的第二数据随时间变化的函数,f(t)为预设的标准第二数据变化函数,E(t)为所述函数F(t)与所述标准第二数据变化函数f(t)的差值函数,为所述差值函数对时间的微分函数,min指最小值函数,t为时间,m为预设的大于0的误差参数值;获取所述函数H(t)在时间轴上不等于m时的第一时间长度和等于m时的第二时间长度,并根据公式:正常时间占比=所述第一时间长度/(所述第一时间长度+所述第二时间长度),计算出所述正常时间占比,并判断所述正常时间占比是否大于预设占比阈值;若所述正常时间占比大于预设占比阈值,则根据所述第一数据,利用预设的资源预期算法,生成资源预期结果;
资源预期结果发送单元30,用于将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核;
返回信息接收单元40,用于接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息,其中所述返回信息包括审核通过或者审核未通过;
区块链记录条件判断单元50,用于判断所述返回信息是否满足预设的区块链记录条件;
资源预期结果记录单元60,用于若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。
本申请通过采用区块链的设计,将指定终端同时设置为第一区块链网络与第二区块链网络的区块链节点,从而使得生成资源预期结果的第一数据可以从第一区块链网络的公共账本中提取,保证第一数据的可靠性(利用区块链的数据不易篡改的特性),又利用第二区块链网络审核并记录资源预期结果,保证审核过程透明并提高效率,更进一步地采用区块链的设计,将提供资源预期计算使用数据与审核资源预期结果二者分割开来,更利于分级别地管理与可能的错误追溯。并且通过对第二数据的处理,以判断所述资源是否存在异常或者伪造数据的可能,从而提高了预期结果的可靠性。
如上述单元10所述,从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点。其中所述资源例如为财务、金融,所述资源预期例如为预算。其中第一区块链网络和第二区块链网络可以为公有链、联盟链或者私有链。第一区块链网络的公共账本用于保存提供资源预期计算使用数据,例如部门制定的部门开支计划等。第二区块链网络的公共账本用于保存审核通过的资源预期结果。所述指定终端由于同时处于第一区块链网络和第二区块链网络中,因此同时具有第一区块链网络的公共账本和第二区块链网络的公共账本,从而使第一数据-生成资源预期结果-资源预期结果审核的整个流程的数据来源均真实可信,提高了信息安全性。其中,第一区块链网络的区块链节点可以将用于生成资源预期结果的数据记录入第一区块链网络的公共账本中。因此,在本申请的基于区块链的资源预期结果审核方法中,由于第一数据来源于第一区块链网络的公共账本,难以被篡改,从而克服了传统技术中数据可靠性待商榷的问题;并使资源预期结果的审核在第二区块链网络中实现并在第二区块链网络中记载,实现了资源预期结果可信、以及分级别地管理与可能的错误追溯的技术效果。
如上述单元20所述,获取实时采集的所述资源的第二数据,并根据公式:
H(t)=min(G(t),m),其中E(t)=F(t)-f(t),获取函数H(t),其中F(t)为所述资源的第二数据随时间变化的函数,f(t)为预设的标准第二数据变化函数,E(t)为所述函数F(t)与所述标准第二数据变化函数f(t)的差值函数,为所述差值函数对时间的微分函数,min指最小值函数,t为时间,m为预设的大于0的误差参数值;获取所述函数H(t)在时间轴上不等于m时的第一时间长度和等于m时的第二时间长度,并根据公式:正常时间占比=所述第一时间长度/(所述第一时间长度+所述第二时间长度),计算出所述正常时间占比,并判断所述正常时间占比是否大于预设占比阈值;若所述正常时间占比大于预设占比阈值,则根据所述第一数据,利用预设的资源预期算法,生成资源预期结果。其中函数H(t)用以表征所述第二数据的状况,当函数H(t)取值为m时,表示第二数据的数值过大,处于异常状态;当函数H(t)取值不为m时,表示第二数据的数值正常,处于正常状态,据此计算出所述正常时间占比,并判断所述正常时间占比是否大于预设阈值;若所述正常时间占比大于预设占比阈值,则根据所述第一数据,利用预设的资源预期算法,生成资源预期结果。其中第一数据是用于生成资源预期结果的,因此可以生成资源预期结果。其中根据所述第一数据,利用预设的资源预期算法,生成资源预期结果可采用任意方式,例如为:从所述第一数据中划分出收入数据与支出数据;判断所述收入数据与支出数据是否可信;若所述收入数据与支出数据可信,则分别记为可信收入与可信支出;统计所述可信收入与可信支出,从而得到可信总收入与可信总支出;生成包括所述可信总收入与可信总支出的资源预期结果。
进一步地,所述第一数据与所述第二数据可以相互关联,也可以没有关系。所述第二数据用以侧面判断所述资源的数据是否存在异常或者伪造的可能。可以使用任意方式确定第二数据,例如从预设的数据表格中获取所述第二数据,其中所述数据表格记载有多个数据类别。获取所述第二数据的方式例如为随机提取等。
如上述单元30所述,将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核。其中资源预期结果审核区块链节点可以是第二区块链网络中的所有区块链节点,也可以是部分区块链节点。将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核的过程,例如包括:在所述第二区块链网络中,获取根据预设的股份授权证明机制投选出的多个资源预期结果审核区块链节点;向所有所述资源预期结果审核区块链节点发送审核请求,并要求所述资源预期结果审核区块链节点发送回复信息;接收所述资源预期结果审核区块链节点发送的回复信息,并将所述回复信息为愿意审核的资源预期结果审核区块链节点记为最终资源预期结果审核区块链节点;将所述资源预期结果发送给多个所述最终资源预期结果审核区块链节点,并要求多个所述最终资源预期结果审核区块链节点对所述资源预期结果进行审核。
如上述单元40所述,接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息,其中所述返回信息包括审核通过或者审核未通过。不同的资源预期结果审核区块链节点采用的审核方式不一定相同,因此审核结果可能不同,分别为审核通过或者审核未通过。为了避免误判,本申请接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息,并综合考虑,以确定是否将资源预期结果记录入第二区块链网络的公共账本中。
如上述单元50所述,判断所述返回信息是否满足预设的区块链记录条件。判断所述返回信息是否满足预设的区块链记录条件的方式可为任意方式,例如当审核通过的返回信息的数量达到预定阈值的条件,则判定满足预设的区块链记录条件;或者,当审核通过的返回信息的数量占所有返回信息数量的占比值大于预设占比阈值时,则判定满足预设的区块链记录条件。
如上述单元60所述,若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。若所述返回信息满足预设的区块链记录条件,表明第二区块链网络中的大部分审核区块链节点均认同所述资源预期结果,因此将所述资源预期结果记录入所述第二区块链网络中。从而第二区块链网络中的区块链节点可从所述第二区块链网络中获知所述资源预期结果。
在一个实施方式中,所述资源为指定对象的资源,所述第一数据包括所述指定对象的多个子对象的预计资源增加量与预计资源损耗量,所述资源预期结果获取单元20,包括:
统计子单元,用于统计多个所述子对象的预计资源增加量与预计资源损耗量,从而得到第一个子对象至第n个子对象的预计资源增加量A1、A2…、An和第一个子对象至第n个子对象的预计资源损耗量B1、B2…、Bn,并从预存的子对象重要程度关系表中获取第一个子对象至第n个子对象的重要程度参数p1、p2…、pn;
敏感阈值判断子单元,用于判断所述敏感因子M是否大于预设的敏感阈值;
资源预期结果生成子单元,用于若所述敏感因子M不大于预设的敏感阈值,则生成资源预期结果,其中所述资源预期结果至少包括多个子对象的预计资源增加量与预计资源损耗量。
如上所述,实现了生成资源预期结果。本申请的第一数据例如包括多个部门的部门预计收入与部门预计支出,根据部门预计收入与部门预计支出可以生成资源预期结果。其中,由于不同部门的重要性不同,相应的部门预算也因此受到影响。据此,本申请采用重要程度参数p1、p2…、pn以表示部门的重要程度,并根据公式:计算出敏感因子M,若所述敏感因子M不大于预设的敏感阈值,则生成资源预期结果,其中所述资源预期结果至少包括所述多个部门的部门预计收入与部门预计支出。其中第一个部门至第n个部门的预计收入为A1、A2…、An,第一个部门至第n个部门的预计支出为B1、B2…、Bn。从而使资源预期更有针对性,以便保证重要部门的资源预期。
在一个实施方式中,所述资源预期结果发送单元30,包括:
审核区块链节点获取子单元,用于在所述第二区块链网络中,获取根据预设的共识机制投选出的多个资源预期结果审核区块链节点;
审核请求发送子单元,用于向所有所述资源预期结果审核区块链节点发送审核请求,并要求所述资源预期结果审核区块链节点发送回复信息;
回复信息接收子单元,用于接收所述资源预期结果审核区块链节点发送的回复信息,并将所述回复信息为愿意审核的资源预期结果审核区块链节点记为最终资源预期结果审核区块链节点;
资源预期结果发送子单元,用于将所述资源预期结果发送给多个所述最终资源预期结果审核区块链节点,并要求多个所述最终资源预期结果审核区块链节点对所述资源预期结果进行审核。
如上所述,实现了发送给多个审核区块链节点。本实施方式优选采用股份授权证明机制作为区块链网络的共识机制。其中股份授权证明机制是指,所有区块链节点投选出多个委托区块链节点,从而多个委托区块链节点代表所有区块链节点对是否将数据(例如交易)记录入公共账本做出判断,从而避免当区块链节点数量过多时区块链运作缓慢的缺点。据此,根据所述股份授权证明机制投选出的多个资源预期结果审核区块链节点能够做出是否将所述资源预期结果加入区块链网络的决定。并且,为了防止部分资源预期结果审核区块链节点不能参与审核(例如部分资源预期结果审核区块链节点未开机,或者通讯故障等原因)而导致最终决定不准确,本实施方式还采用预先发送审核请求的方式,以确定愿意审核的审核区块链节点,并记为最终资源预期结果审核区块链节点,将预先设置的指定换乘路线发送给多个所述最终审核区块链节点,从而既减少了不必要的网络开销(发送审核请求的开销远小于发送资源预期结果的开销),又能保证后续判断的准确性(排除了不能参与审核的节点)。
在一个实施方式中,所述区块链记录条件判断单元50,包括:
返回信息统计子单元,用于统计所述返回信息,从而得到接收到的所述返回信息的总数量,以及审核通过的返回信息的数量;
商值计算子单元,用于计算所述审核通过的返回信息的数量除以所述返回信息的总数量的商值;
参数阈值判断子单元,用于判断所述商值是否大于预设的区块链记录参数阈值;
条件满足判定子单元,用于若所述商值大于预设的区块链记录参数阈值,则判定所述返回信息满足预设的区块链记录条件。
如上所述,实现了判断所述返回信息是否满足预设的区块链记录条件。本申请采用所述审核通过的返回信息的数量除以所述返回信息的总数量的商值,作为判断所述返回信息是否满足预设的区块链记录条件的依据。若所述商值大于预设的区块链记录参数阈值,表明认可所述资源预期结果的资源预期结果审核区块链节点在所有资源预期结果审核区块链节点中的占比够大,据此判定所述返回信息满足预设的区块链记录条件;若所述商值不大于预设的区块链记录参数阈值,表明认可所述资源预期结果的资源预期结果审核区块链节点在所有资源预期结果审核区块链节点中的占比较少,据此判定所述返回信息不满足预设的区块链记录条件。而本申请采用判断所述审核通过的返回信息的数量除以所述返回信息的总数量的商值的方式,相较仅判断所述审核通过的返回信息的数量的方式,更准确,可以防止当大量资源预期结果审核区块链节点出现故障(例如审核区块链节点与外界的通讯接口被劫持)不能参与审核时造成的误判。
在一个实施方式中,所述装置,包括:
原因获取指令发送单元,用于若所述返回信息不满足预设的区块链记录条件,则向返回信息为审核未通过的资源预期结果审核区块链节点发送原因获取指令,所述原因获取指令用于指示所述资源预期结果审核区块链节点将审核未通过的原因发送给所述指定终端;
原因接收单元,用于接收资源预期结果审核区块链节点发送的审核未通过的原因;
原因列表判断单元,用于判断所述审核未通过的原因是否存在于预设的原因列表中;
不允许记录单元,用于若所述审核未通过的原因存在于预设的原因列表中,则不允许将所述资源预期结果记录入所述第二区块链网络中,并生成审核不通过的提醒信息,并在所述提醒信息中附上所述审核未通过的原因。
如上所述,实现了不允许将所述资源预期结果记录入所述第二区块链网络中。若所述返回信息不满足预设的区块链记录条件,表明所述资源预期结果不被认可,不能记录入所述第二区块链网络中。但是,为了利用错误追溯,以明确不被通过的原因以及时纠正,本申请还采用向返回信息为审核未通过的资源预期结果审核区块链节点发送原因获取指令;接收资源预期结果审核区块链节点发送的审核未通过的原因;生成审核不通过的提醒信息,并在所述提醒信息中附上所述审核未通过的原因的方式,以利于纠正未通过的资源预期结果。
在一个实施方式中,所述装置,包括:
区块链类创建单元,用于利用Go语言创建区块链类,并赋予所述区块链类指定参数,从而获得创世区块,并在所述创世区块中将前一区块的哈希值设为0;
其他区块生成单元,用于基于所述创世区块,生成其他区块,其中所述其他区块记载有前一区块的哈希值;
第二区块链网络搭建单元,用于以预设终端作为第二区块链网络的区块链节点,从而搭建所述第二区块链网络。
如上所述,实现了搭建所述区块链网络。其中创建区块链类的语言可以为任意可行语言,例如JAVA、C++、Go语言等,本实施方式优选C++、Go语言,从而优化区块链类。其中区块链类(class)是对区块链的定义,将所述区块链类实例化即是确定区块链的具体参数,从而获得第一个区块(创世区块),从而作为其他区块的生成依据。由于创世区块是第一个区块,实际上没有之前的区块,因此在创世区块中将前一区块的哈希值设置为0。并基于所述创世区块,生成其他区块,其中所述其他区块记载有前一区块的哈希值,从而所有区块紧密相连,防止数据被篡改。所述第二区块链网络的预设共识机制可为任意共识机制,例如为工作量证明机制、权益证明机制、拜占庭容错机制、股份授权证明机制等,本实施方式优选股份授权证明机制。进一步地,所述第一区块链网络的搭建方法可以与第二区块链网络的搭建方法相同,也可以与第二区块链网络的搭建方法不相同。
在一个实施方式中,所述指定终端预存有虚拟机镜像和区块链节点容器镜像,所述装置,包括:
加入请求接收单元,用于接收申请终端发送的加入第二区块链网络的请求,所述加入第二区块链网络的请求附带有所述申请终端的身份信息;
允许加入列表判断单元,用于判断所述申请终端的身份信息是否处于预设的允许加入列表中;
镜像发送单元,用于若所述申请终端的身份信息处于预设的允许加入列表中,则向所述申请终端发送所述虚拟机镜像和区块链节点容器镜像;
IP地址与通信端口获取单元,用于获取所述申请终端的IP地址与通信端口;
IP地址与通信端口发送单元,用于向所述申请终端发送预存的第二区块链网络的所有区块链节点的IP地址和通信端口的信息,以及向第二区块链网络的所有区块链节点发送所述申请终端的IP地址和通信端口的信息,从而将所述申请终端加入所述第二区块链网络,其中所述申请终端已在所述虚拟机镜像中安装并启动所述区块链节点容器镜像。
如上所述,实现了利用虚拟机镜像和区块链节点容器镜像,快速部署第二区块链网络。其中,虚拟机镜像用于提供基础运行环境,例如运行区块链节点容器镜像的环境、编程程序语言运行环境或者基础工具包等。区块链节点容器镜像保存有公共账本(例如将所述当前审批***的已有审批记录转作为公共账本)等数据,用于在安装并启动区块链节点容器镜像后,使所述终端具有成为区块链节点的基础条件(例如还需要获取其他区块链节点的IP地址等信息,以及告知其他区块链节点本终端的IP地址等信息,才能完成加入所述区块链网络)。再将所述申请终端的IP地址与通信端口告知第二区块链网络的所有区块链节点,以及向第二区块链网络的所有区块链节点发送所述申请终端的IP地址和通信端口的信息,从而实现了快速将所述申请终端加入所述第二区块链网络。本申请通过预设虚拟机镜像和区块链节点容器镜像的方式,加快了节块链部署的速度,并维持了区块链的去中心化。进一步地,所述第一区块链网络新增区块链节点的方法可以与第二区块链网络相同,也可以与第二区块链网络不相同。
本申请的基于区块链的资源预期结果审核装置,从预设的第一区块链网络中提取第一数据;获取第二数据并根据第二数据判断资源是否正常,再根据所述第一数据,生成资源预期结果;接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息;若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。从而解决了传统技术效率低、过程不透明并且信息安全性低等缺陷。
参照图3,本发明实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储基于区块链的资源预期结果审核方法所用数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于区块链的资源预期结果审核方法。
上述处理器执行上述基于区块链的资源预期结果审核方法,应用于指定终端,包括:从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点;获取实时采集的所述资源的第二数据,并根据公式:H(t)=min(G(t),m),其中E(t)=F(t)-f(t),获取函数H(t),其中F(t)为所述资源的第二数据随时间变化的函数,f(t)为预设的标准第二数据变化函数,E(t)为所述函数F(t)与所述标准第二数据变化函数f(t)的差值函数,为所述差值函数对时间的微分函数,min指最小值函数,t为时间,m为预设的大于0的误差参数值;获取所述函数H(t)在时间轴上不等于m时的第一时间长度和等于m时的第二时间长度,并根据公式:正常时间占比=所述第一时间长度/(所述第一时间长度+所述第二时间长度),计算出所述正常时间占比,并判断所述正常时间占比是否大于预设占比阈值;若所述正常时间占比大于预设占比阈值,则根据所述第一数据,利用预设的资源预期算法,生成资源预期结果;将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核;接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息,其中所述返回信息包括审核通过或者审核未通过;判断所述返回信息是否满足预设的区块链记录条件;若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。
在一个实施方式中,所述资源为指定对象的资源,所述第一数据包括所述指定对象的多个子对象的预计资源增加量与预计资源损耗量,所述根据所述第一数据,利用预设的资源预期算法,生成资源预期结果的步骤,包括:统计多个所述子对象的预计资源增加量与预计资源损耗量,从而得到第一个子对象至第n个子对象的预计资源增加量A1、A2…、An和第一个子对象至第n个子对象的预计资源损耗量B1、B2…、Bn,并从预存的子对象重要程度关系表中获取第一个子对象至第n个子对象的重要程度参数p1、p2…、pn;根据公式:计算出敏感因子M;判断所述敏感因子M是否大于预设的敏感阈值;若所述敏感因子M不大于预设的敏感阈值,则生成资源预期结果,其中所述资源预期结果至少包括多个子对象的预计资源增加量与预计资源损耗量。
在一个实施方式中,所述将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核的步骤,包括:在所述第二区块链网络中,获取根据预设的共识机制投选出的多个资源预期结果审核区块链节点;向所有所述资源预期结果审核区块链节点发送审核请求,并要求所述资源预期结果审核区块链节点发送回复信息;接收所述资源预期结果审核区块链节点发送的回复信息,并将所述回复信息为愿意审核的资源预期结果审核区块链节点记为最终资源预期结果审核区块链节点;将所述资源预期结果发送给多个所述最终资源预期结果审核区块链节点,并要求多个所述最终资源预期结果审核区块链节点对所述资源预期结果进行审核。
在一个实施方式中,所述判断所述返回信息是否满足预设的区块链记录条件的步骤,包括:统计所述返回信息,从而得到接收到的所述返回信息的总数量,以及审核通过的返回信息的数量;计算所述审核通过的返回信息的数量除以所述返回信息的总数量的商值;判断所述商值是否大于预设的区块链记录参数阈值;若所述商值大于预设的区块链记录参数阈值,则判定所述返回信息满足预设的区块链记录条件。
在一个实施方式中,所述判断所述返回信息是否满足预设的区块链记录条件的步骤之后,包括:若所述返回信息不满足预设的区块链记录条件,则向返回信息为审核未通过的资源预期结果审核区块链节点发送原因获取指令,所述原因获取指令用于指示所述资源预期结果审核区块链节点将审核未通过的原因发送给所述指定终端;接收资源预期结果审核区块链节点发送的审核未通过的原因;判断所述审核未通过的原因是否存在于预设的原因列表中;若所述审核未通过的原因存在于预设的原因列表中,则不允许将所述资源预期结果记录入所述第二区块链网络中,并生成审核不通过的提醒信息,并在所述提醒信息中附上所述审核未通过的原因。
在一个实施方式中,所述从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点的步骤之前,包括:利用Go语言创建区块链类,并赋予所述区块链类指定参数,从而获得创世区块,并在所述创世区块中将前一区块的哈希值设为0;基于所述创世区块,生成其他区块,其中所述其他区块记载有前一区块的哈希值;以预设终端作为第二区块链网络的区块链节点,从而搭建所述第二区块链网络。
在一个实施方式中,所述指定终端预存有虚拟机镜像和区块链节点容器镜像,所述从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点的步骤之前,包括:接收申请终端发送的加入第二区块链网络的请求,所述加入第二区块链网络的请求附带有所述申请终端的身份信息;判断所述申请终端的身份信息是否处于预设的允许加入列表中;若所述申请终端的身份信息处于预设的允许加入列表中,则向所述申请终端发送所述虚拟机镜像和区块链节点容器镜像;获取所述申请终端的IP地址与通信端口;向所述申请终端发送预存的第二区块链网络的所有区块链节点的IP地址和通信端口的信息,以及向第二区块链网络的所有区块链节点发送所述申请终端的IP地址和通信端口的信息,从而将所述申请终端加入所述第二区块链网络,其中所述申请终端已在所述虚拟机镜像中安装并启动所述区块链节点容器镜像。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现基于区块链的资源预期结果审核方法,应用于指定终端,包括:从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点;获取实时采集的所述资源的第二数据,并根据公式:H(t)=min(G(t),m),其中E(t)=F(t)-f(t),获取函数H(t),其中F(t)为所述资源的第二数据随时间变化的函数,f(t)为预设的标准第二数据变化函数,E(t)为所述函数F(t)与所述标准第二数据变化函数f(t)的差值函数,为所述差值函数对时间的微分函数,min指最小值函数,t为时间,m为预设的大于0的误差参数值;获取所述函数H(t)在时间轴上不等于m时的第一时间长度和等于m时的第二时间长度,并根据公式:正常时间占比=所述第一时间长度/(所述第一时间长度+所述第二时间长度),计算出所述正常时间占比,并判断所述正常时间占比是否大于预设占比阈值;若所述正常时间占比大于预设占比阈值,则根据所述第一数据,利用预设的资源预期算法,生成资源预期结果;将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核;接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息,其中所述返回信息包括审核通过或者审核未通过;判断所述返回信息是否满足预设的区块链记录条件;若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。
在一个实施方式中,所述资源为指定对象的资源,所述第一数据包括所述指定对象的多个子对象的预计资源增加量与预计资源损耗量,所述根据所述第一数据,利用预设的资源预期算法,生成资源预期结果的步骤,包括:统计多个所述子对象的预计资源增加量与预计资源损耗量,从而得到第一个子对象至第n个子对象的预计资源增加量A1、A2…、An和第一个子对象至第n个子对象的预计资源损耗量B1、B2…、Bn,并从预存的子对象重要程度关系表中获取第一个子对象至第n个子对象的重要程度参数p1、p2…、pn;根据公式:计算出敏感因子M;判断所述敏感因子M是否大于预设的敏感阈值;若所述敏感因子M不大于预设的敏感阈值,则生成资源预期结果,其中所述资源预期结果至少包括多个子对象的预计资源增加量与预计资源损耗量。
在一个实施方式中,所述将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核的步骤,包括:在所述第二区块链网络中,获取根据预设的共识机制投选出的多个资源预期结果审核区块链节点;向所有所述资源预期结果审核区块链节点发送审核请求,并要求所述资源预期结果审核区块链节点发送回复信息;接收所述资源预期结果审核区块链节点发送的回复信息,并将所述回复信息为愿意审核的资源预期结果审核区块链节点记为最终资源预期结果审核区块链节点;将所述资源预期结果发送给多个所述最终资源预期结果审核区块链节点,并要求多个所述最终资源预期结果审核区块链节点对所述资源预期结果进行审核。
在一个实施方式中,所述判断所述返回信息是否满足预设的区块链记录条件的步骤,包括:统计所述返回信息,从而得到接收到的所述返回信息的总数量,以及审核通过的返回信息的数量;计算所述审核通过的返回信息的数量除以所述返回信息的总数量的商值;判断所述商值是否大于预设的区块链记录参数阈值;若所述商值大于预设的区块链记录参数阈值,则判定所述返回信息满足预设的区块链记录条件。
在一个实施方式中,所述判断所述返回信息是否满足预设的区块链记录条件的步骤之后,包括:若所述返回信息不满足预设的区块链记录条件,则向返回信息为审核未通过的资源预期结果审核区块链节点发送原因获取指令,所述原因获取指令用于指示所述资源预期结果审核区块链节点将审核未通过的原因发送给所述指定终端;接收资源预期结果审核区块链节点发送的审核未通过的原因;判断所述审核未通过的原因是否存在于预设的原因列表中;若所述审核未通过的原因存在于预设的原因列表中,则不允许将所述资源预期结果记录入所述第二区块链网络中,并生成审核不通过的提醒信息,并在所述提醒信息中附上所述审核未通过的原因。
在一个实施方式中,所述从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点的步骤之前,包括:利用Go语言创建区块链类,并赋予所述区块链类指定参数,从而获得创世区块,并在所述创世区块中将前一区块的哈希值设为0;基于所述创世区块,生成其他区块,其中所述其他区块记载有前一区块的哈希值;以预设终端作为第二区块链网络的区块链节点,从而搭建所述第二区块链网络。
在一个实施方式中,所述指定终端预存有虚拟机镜像和区块链节点容器镜像,所述从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点的步骤之前,包括:接收申请终端发送的加入第二区块链网络的请求,所述加入第二区块链网络的请求附带有所述申请终端的身份信息;判断所述申请终端的身份信息是否处于预设的允许加入列表中;若所述申请终端的身份信息处于预设的允许加入列表中,则向所述申请终端发送所述虚拟机镜像和区块链节点容器镜像;获取所述申请终端的IP地址与通信端口;向所述申请终端发送预存的第二区块链网络的所有区块链节点的IP地址和通信端口的信息,以及向第二区块链网络的所有区块链节点发送所述申请终端的IP地址和通信端口的信息,从而将所述申请终端加入所述第二区块链网络,其中所述申请终端已在所述虚拟机镜像中安装并启动所述区块链节点容器镜像。
本申请的计算机可读存储介质,从预设的第一区块链网络中提取第一数据;获取第二数据并根据第二数据判断资源是否正常,再根据所述第一数据,生成资源预期结果;接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息;若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。从而解决了传统技术效率低、过程不透明并且信息安全性低等缺陷。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种基于区块链的资源预期结果审核方法,应用于指定终端,其特征在于,包括:
从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点;
获取实时采集的所述资源的第二数据,并根据公式:
H(t)=min(G(t),m),其中E(t)=F(t)-f(t),获取函数H(t),其中F(t)为所述资源的第二数据随时间变化的函数,f(t)为预设的标准第二数据变化函数,E(t)为所述函数F(t)与所述标准第二数据变化函数f(t)的差值函数,为所述差值函数对时间的微分函数,min指最小值函数,t为时间,m为预设的大于0的误差参数值;获取所述函数H(t)在时间轴上不等于m时的第一时间长度和等于m时的第二时间长度,并根据公式:正常时间占比=所述第一时间长度/(所述第一时间长度+所述第二时间长度),计算出所述正常时间占比,并判断所述正常时间占比是否大于预设占比阈值;若所述正常时间占比大于预设占比阈值,则根据所述第一数据,利用预设的资源预期算法,生成资源预期结果;
将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核;
接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息,其中所述返回信息包括审核通过或者审核未通过;
判断所述返回信息是否满足预设的区块链记录条件;
若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。
2.根据权利要求1所述的基于区块链的资源预期结果审核方法,其特征在于,所述资源为指定对象的资源,所述第一数据包括所述指定对象的多个子对象的预计资源增加量与预计资源损耗量,所述根据所述第一数据,利用预设的资源预期算法,生成资源预期结果的步骤,包括:
统计多个所述子对象的预计资源增加量与预计资源损耗量,从而得到第一个子对象至第n个子对象的预计资源增加量A1、A2…、An和第一个子对象至第n个子对象的预计资源损耗量B1、B2…、Bn,并从预存的子对象重要程度关系表中获取第一个子对象至第n个子对象的重要程度参数p1、p2…、pn;
判断所述敏感因子M是否大于预设的敏感阈值;
若所述敏感因子M不大于预设的敏感阈值,则生成资源预期结果,其中所述资源预期结果至少包括多个子对象的预计资源增加量与预计资源损耗量。
3.根据权利要求1所述的基于区块链的资源预期结果审核方法,其特征在于,所述将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核的步骤,包括:
在所述第二区块链网络中,获取根据预设的共识机制投选出的多个资源预期结果审核区块链节点;
向所有所述资源预期结果审核区块链节点发送审核请求,并要求所述资源预期结果审核区块链节点发送回复信息;
接收所述资源预期结果审核区块链节点发送的回复信息,并将所述回复信息为愿意审核的资源预期结果审核区块链节点记为最终资源预期结果审核区块链节点;
将所述资源预期结果发送给多个所述最终资源预期结果审核区块链节点,并要求多个所述最终资源预期结果审核区块链节点对所述资源预期结果进行审核。
4.根据权利要求1所述的基于区块链的资源预期结果审核方法,其特征在于,所述判断所述返回信息是否满足预设的区块链记录条件的步骤,包括:
统计所述返回信息,从而得到接收到的所述返回信息的总数量,以及审核通过的返回信息的数量;
计算所述审核通过的返回信息的数量除以所述返回信息的总数量的商值;
判断所述商值是否大于预设的区块链记录参数阈值;
若所述商值大于预设的区块链记录参数阈值,则判定所述返回信息满足预设的区块链记录条件。
5.根据权利要求1所述的基于区块链的资源预期结果审核方法,其特征在于,所述判断所述返回信息是否满足预设的区块链记录条件的步骤之后,包括:
若所述返回信息不满足预设的区块链记录条件,则向返回信息为审核未通过的资源预期结果审核区块链节点发送原因获取指令,所述原因获取指令用于指示所述资源预期结果审核区块链节点将审核未通过的原因发送给所述指定终端;
接收资源预期结果审核区块链节点发送的审核未通过的原因;
判断所述审核未通过的原因是否存在于预设的原因列表中;
若所述审核未通过的原因存在于预设的原因列表中,则不允许将所述资源预期结果记录入所述第二区块链网络中,并生成审核不通过的提醒信息,并在所述提醒信息中附上所述审核未通过的原因。
6.根据权利要求1所述的基于区块链的资源预期结果审核方法,其特征在于,所述从预设的第一区块链网络中提取第一数据的步骤之前,包括:
利用Go语言创建区块链类,并赋予所述区块链类指定参数,从而获得创世区块,并在所述创世区块中将前一区块的哈希值设为0;
基于所述创世区块,生成其他区块,其中所述其他区块记载有前一区块的哈希值;
以预设终端作为第二区块链网络的区块链节点,从而搭建所述第二区块链网络。
7.根据权利要求1所述的基于区块链的资源预期结果审核方法,其特征在于,所述指定终端预存有虚拟机镜像和区块链节点容器镜像,所述从预设的第一区块链网络中提取第一数据的步骤之前,包括:
接收申请终端发送的加入第二区块链网络的请求,所述加入第二区块链网络的请求附带有所述申请终端的身份信息;
判断所述申请终端的身份信息是否处于预设的允许加入列表中;
若所述申请终端的身份信息处于预设的允许加入列表中,则向所述申请终端发送所述虚拟机镜像和区块链节点容器镜像;
获取所述申请终端的IP地址与通信端口;
向所述申请终端发送预存的第二区块链网络的所有区块链节点的IP地址和通信端口的信息,以及向第二区块链网络的所有区块链节点发送所述申请终端的IP地址和通信端口的信息,从而将所述申请终端加入所述第二区块链网络,其中所述申请终端已在所述虚拟机镜像中安装并启动所述区块链节点容器镜像。
8.一种基于区块链的资源预期结果审核装置,应用于指定终端,其特征在于,包括:
第一数据提取单元,用于从预设的第一区块链网络中提取第一数据,其中所述指定终端既是预先构建的第一区块链网络的一个区块链节点,又是预先构建的第二区块链网络的一个区块链节点,所述第一区块链网络至少包括提供资源预期计算使用数据的区块链节点,所述第二区块链网络至少包括资源预期结果审核区块链节点;
资源预期结果获取单元,用于获取实时采集的所述资源的第二数据,并根据公式:
H(t)=min(G(t),m),其中E(t)=F(t)-f(t),获取函数H(t),其中F(t)为所述资源的第二数据随时间变化的函数,f(t)为预设的标准第二数据变化函数,E(t)为所述函数F(t)与所述标准第二数据变化函数f(t)的差值函数,为所述差值函数对时间的微分函数,min指最小值函数,t为时间,m为预设的大于0的误差参数值;获取所述函数H(t)在时间轴上不等于m时的第一时间长度和等于m时的第二时间长度,并根据公式:正常时间占比=所述第一时间长度/(所述第一时间长度+所述第二时间长度),计算出所述正常时间占比,并判断所述正常时间占比是否大于预设占比阈值;若所述正常时间占比大于预设占比阈值,则根据所述第一数据,利用预设的资源预期算法,生成资源预期结果;
资源预期结果发送单元,用于将所述资源预期结果发送给所述第二区块链网络中的多个资源预期结果审核区块链节点,并要求多个资源预期结果审核区块链节点对所述资源预期结果进行审核;
返回信息接收单元,用于接收多个资源预期结果审核区块链节点对所述资源预期结果进行审核的返回信息,其中所述返回信息包括审核通过或者审核未通过;
区块链记录条件判断单元,用于判断所述返回信息是否满足预设的区块链记录条件;
资源预期结果记录单元,用于若所述返回信息满足预设的区块链记录条件,则将所述资源预期结果记录入所述第二区块链网络中。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910662222.2A CN110555319B (zh) | 2019-07-22 | 2019-07-22 | 基于区块链的资源预期结果审核方法、装置和计算机设备 |
PCT/CN2020/099436 WO2021012911A1 (zh) | 2019-07-22 | 2020-06-30 | 基于区块链的资源预期结果审核方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910662222.2A CN110555319B (zh) | 2019-07-22 | 2019-07-22 | 基于区块链的资源预期结果审核方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110555319A CN110555319A (zh) | 2019-12-10 |
CN110555319B true CN110555319B (zh) | 2022-12-27 |
Family
ID=68735673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910662222.2A Active CN110555319B (zh) | 2019-07-22 | 2019-07-22 | 基于区块链的资源预期结果审核方法、装置和计算机设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110555319B (zh) |
WO (1) | WO2021012911A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110378691A (zh) * | 2019-06-18 | 2019-10-25 | 重庆金融资产交易所有限责任公司 | 基于部署中心的区块链部署方法、装置和计算机设备 |
CN110555319B (zh) * | 2019-07-22 | 2022-12-27 | 平安科技(深圳)有限公司 | 基于区块链的资源预期结果审核方法、装置和计算机设备 |
CN111399987B (zh) * | 2020-03-26 | 2023-04-18 | 海口海辰宇信息科技有限公司 | 一种通用区块链沙盒监管技术 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130036047A1 (en) * | 2011-08-03 | 2013-02-07 | Nxsystems, Inc. | Method, system and process for centralized management and control of a budget and electronic mass distribution of funds |
US10169614B2 (en) * | 2016-11-17 | 2019-01-01 | International Business Machines Corporation | Container update system |
CN108876380B (zh) * | 2018-08-07 | 2021-03-23 | 创新先进技术有限公司 | 一种基于中心化结算与区块链存证的交易方法及*** |
CN109284974A (zh) * | 2018-08-30 | 2019-01-29 | 西交利物浦大学 | 一种基于区块链的审核方法、装置、审核设备及存储介质 |
CN109493203A (zh) * | 2018-09-30 | 2019-03-19 | 咪咕文化科技有限公司 | 一种数据核算方法、装置及存储介质 |
CN109325852A (zh) * | 2018-10-25 | 2019-02-12 | 平安科技(深圳)有限公司 | 基于区块链的贷款数据处理方法、装置、设备及存储介质 |
CN109481936B (zh) * | 2018-10-26 | 2022-04-29 | 咪咕文化科技有限公司 | 一种区块链记账节点选择方法、装置及计算机可读存储介质 |
CN109727040B (zh) * | 2019-01-28 | 2020-09-15 | 杭州复杂美科技有限公司 | 数据发布方法、数据调用方法、设备和存储介质 |
CN110555319B (zh) * | 2019-07-22 | 2022-12-27 | 平安科技(深圳)有限公司 | 基于区块链的资源预期结果审核方法、装置和计算机设备 |
-
2019
- 2019-07-22 CN CN201910662222.2A patent/CN110555319B/zh active Active
-
2020
- 2020-06-30 WO PCT/CN2020/099436 patent/WO2021012911A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2021012911A1 (zh) | 2021-01-28 |
CN110555319A (zh) | 2019-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110555319B (zh) | 基于区块链的资源预期结果审核方法、装置和计算机设备 | |
US11102001B2 (en) | Trust management system and trust management method | |
CN108964924A (zh) | 数字证书校验方法、装置、计算机设备和存储介质 | |
CN109614262B (zh) | 业务校验方法、装置及计算机可读存储介质 | |
EP3549050B1 (en) | Method and computer product and methods for generation and selection of access rules | |
CN110866289B (zh) | 基于区块链的数据处理方法、装置、服务器及存储介质 | |
JP2019200556A (ja) | 利用管理方法、利用管理システム、および、ノード | |
CN109543984A (zh) | 风险控制方法、装置、电子设备及介质 | |
CN110851877B (zh) | 一种数据处理方法、装置及区块链节点设备、存储介质 | |
CN108829838A (zh) | 一种账户信息批量处理方法及服务器 | |
Zalewski et al. | Threat modeling for security assessment in cyberphysical systems | |
US20200394162A1 (en) | Operation management method for distributed ledger system, operation management system for distributed ledger system, and operation management program for distributed ledger system | |
JP2021528705A (ja) | 人工知能に基づくメール管理方法及びその装置 | |
CN111095863A (zh) | 在区块链网络上通信、存储和处理数据的基于区块链的***和方法 | |
CN111090581A (zh) | 智能合约测试方法、装置、计算机设备和存储介质 | |
CN113221163B (zh) | 一种训练模型的方法及*** | |
CN111178894A (zh) | 资产类型注册、交易记录验证方法及*** | |
CN111078797B (zh) | 通证分配方法、装置、计算机设备和存储介质 | |
CN111489175A (zh) | 在线身份认证方法、装置、***及存储介质 | |
CN113177396B (zh) | 报表生成方法、装置、计算机设备和存储介质 | |
KR102055748B1 (ko) | 블록체인 기반의 네트워크 자가진단 제어 장치 | |
CN113468276A (zh) | 链上预言机的可信数据获取方法、装置及电子设备 | |
CN112115507B (zh) | 基于云计算和信息数字化的云业务交互方法及大数据平台 | |
CN112702410B (zh) | 一种基于区块链网络的评估***、方法及相关设备 | |
US20220139122A1 (en) | Method for monitoring a functionality of a vehicle information system of a motor vehicle, and electronic computing device, computer program and data carrier |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |