一种基于区块链的存证交易方法、装置、设备以及介质与流程

文档序号:36932828发布日期:2024-02-02 21:58阅读:16来源:国知局
一种基于区块链的存证交易方法、装置、设备以及介质与流程

本技术涉及区块链,尤其涉及一种基于区块链的存证交易方法、装置、设备以及介质。


背景技术:

1、存证用户(例如,用户u1)在将某笔存证交易(例如,交易x)上链至某个区块链(例如,区块链a)时,需要向该区块链a支付链上资源对该交易x进行存证处理。现有的存证处理方式是存证业务方在预收取到该用户u1所支付的资源之后,可以在获取到该用户u1发送的交易x时,直接使用自己的密钥(例如,用户u1的私钥信息)对该交易x进行交易签名,得到已签名的交易x,进而可以由该存证业务方向区块链节点提交该已签名的交易x。这样,区块链节点在通过该用户u1的私钥信息所对应的公钥信息对该已签名的交易x中携带的签名信息进行交易验签,且在交易验签成功之后,就可以通过存证合约直接将该存证交易(例如,交易x)上链至区块链。

2、然而,发明人发现在实践中发现,由于上述已签名的交易x中携带的签名信息是由存证业务方通过该用户u1的私钥信息进行交易签名所得到的,这意味着上链至区块链的这笔存证交易(例如,交易x)并未经过该用户u1进行签名的。那么,一旦非法对象非法获取到该存证业务方的私钥信息,将导致提交给该区块链节点的已签名的交易x中的存证信息存在数据泄露风险,进而在通过该区块链节点对存证信息进行存证时,会降低信息存证的安全性。此外,区块链节点在对存在数据泄露风险的存证信息进行存证时,会通过存证合约从该用户u1的链上账户地址中获取业务提供方为该用户u1所预存储的链上资源进行存证支付,以至于存在对该用户u1的链上账户地址中的链上资源进行非法转移的现象,从而降低了链上账户地址中的链上资源的存储安全性。


技术实现思路

1、本技术实施例提供一种基于区块链的存证交易方法、装置、设备以及介质,可以提升信息存证的安全性和可靠性,并确保信息存证时所支付的链上资源的存储安全性和可靠性。

2、本技术实施例一方面提供了一种基于区块链的存证交易方法,方法由区块链节点执行,包括:

3、获取存证对象针对存证信息发送的存证交易;存证交易中包含与存证合约相关联的第一合约调用参数和与代付合约相关联的第二合约调用参数;

4、基于第一合约调用参数获取存证合约,在调用存证合约确定存证对象具备信息存证权限时,通过存证合约预估用于存证存证信息所需的存证预估消耗资源;存证预估消耗资源的资源类型为第一资源类型;

5、基于第二合约调用参数,获取代付合约,在通过存证合约调用代付合约时,从代付合约的代付账户地址中获取与存证对象相关联的存证配置资源,将存证配置资源转移至存证合约的第一对象账户地址,得到存储在第一对象账户地址中的存证映射资源;存证配置资源为存证提供对象在获取到存证对象提交的链下资源配置请求时,通过代付合约为存证对象所配置的;存证配置资源的资源类型为第二资源类型;第一对象账户地址和代付账户地址均是通过存证对象的公钥信息所确定的;

6、在第一资源类型不同于第二资源类型时,通过存证合约对存证映射资源进行资源转换,得到与存证映射资源对应的存证转换资源,将存证转换资源转移至存证合约中的第二对象账户地址;第二对象账户地址为存证合约中不同于第一对象账户地址的地址;

7、若存证转换资源的资源额度大于存证预估消耗资源的资源额度,则调用存证合约从第二对象账户地址中扣除用于执行存证交易的第一存证支付资源,基于第一存证支付资源对存证信息进行存证处理;第一存证支付资源是由存证预估消耗资源所确定的。

8、本技术实施例一方面提供了一种数据处理装置,装置运行在区块链节点上,包括:

9、存证交易获取模块,用于获取存证对象针对存证信息发送的存证交易;存证交易中包含与存证合约相关联的第一合约调用参数和与代付合约相关联的第二合约调用参数;

10、存证配置资源转移模块,用于基于第一合约调用参数获取存证合约,在调用存证合约确定存证对象具备信息存证权限时,通过存证合约预估用于存证存证信息所需的存证预估消耗资源;存证预估消耗资源的资源类型为第一资源类型;

11、存证配置资源转移模块,用于基于第二合约调用参数,获取代付合约,在通过存证合约调用代付合约时,从代付合约的代付账户地址中获取与存证对象相关联的存证配置资源,将存证配置资源转移至存证合约的第一对象账户地址,得到存储在第一对象账户地址中的存证映射资源;存证配置资源为存证提供对象在获取到存证对象提交的链下资源配置请求时,通过代付合约为存证对象所配置的;存证配置资源的资源类型为第二资源类型;第一对象账户地址和代付账户地址均是通过存证对象的公钥信息所确定的;

12、存证映射资源转换模块,用于在第一资源类型不同于第二资源类型时,通过存证合约对存证映射资源进行资源转换,得到与存证映射资源对应的存证转换资源,将存证转换资源转移至存证合约中的第二对象账户地址;第二对象账户地址为存证合约中不同于第一对象账户地址的地址;

13、存证处理支付模块,用于若存证转换资源的资源额度大于存证预估消耗资源的资源额度,则调用存证合约从第二对象账户地址中扣除用于执行存证交易的第一存证支付资源,基于第一存证支付资源对存证信息进行存证处理;第一存证支付资源是由存证预估消耗资源所确定的。

14、其中,存证交易的交易参数中携带存证对象的存证地址和待存入存证地址的存证信息;

15、存证配置资源转移模块,包括:

16、准入地址查找单元,用于获取存证交易中的存证地址,在基于第一合约调用参数获取到存证合约时,在存证合约所维护的准入地址列表中,查找与存证地址相匹配的准入地址,得到第一查找结果;

17、存证对象鉴权单元,用于在第一查找结果指示查找到与存证地址相匹配的准入地址时,则在确定存证对象为存证授权对象时,确定存证对象具备由存证合约所关联的权限合约所授权的信息存证权限;

18、待存证信息确定单元,用于在存证对象具备信息存证权限时,将从存证交易中获取到的存证信息,确定为待存证信息;

19、存证消耗资源预估单元,用于通过存证合约预估用于存证待存证信息所需的存证预估消耗资源。

20、其中,存证合约中包括第一存证处理方法,第一存证处理方法用于指示将审批通过后的目标存证信息写入存证地址;

21、存证消耗资源预估单元,包括:

22、信息数据量确定子单元,用于调用存证合约确定待存证信息的信息数据量;

23、审批请求预估子单元,用于若信息数据量大于信息数据量阈值,则通过存证合约中的第一存证处理方法获取用于进行数据审批的数据审批方法,基于数据审批方法预估生成用于向n个审批对象发送针对待存证信息的审批请求,记录存证合约预估生成审批请求的第一预估消耗资源;n为正整数;

24、审批响应信息预估子单元,用于通过存证合约中的审批统计方法,预估得到n个审批对象针对审批请求返回的审批响应信息,记录存证合约预估得到审批响应信息的第二预估消耗资源;

25、第一信息预存证子单元,用于通过存证合约中的数据存证方法,将信息数据量大于信息数据量阈值的待存证信息作为目标存证信息,在将目标存证信息预存证至存证地址时,记录预存证目标存证信息时所消耗的第三预估消耗资源;

26、第一资源预估子单元,具体用于基于第一预估消耗资源、第二预估消耗资源以及第三预估消耗资源,确定用于存证待存证信息所需的存证预估消耗资源。

27、其中,区块链节点的节点内存用于存储记录到的第一预估消耗资源、第二预估消耗资源以及第三预估消耗资源;存证合约中包含资源浮动处理方法;资源浮动处理方法为用于对存证待存证信息所需的累计资源进行资源叠加处理的合约方法;

28、第一资源预估子单元,还具体用于从节点内存中获取第一预估消耗资源、第二预估消耗资源以及第三预估消耗资源,将第一预估消耗资源、第二预估消耗资源以及第三预估消耗资源进行资源累计,得到预估消耗累计资源;

29、第一资源预估子单元,还具体用于通过资源浮动处理方法获取用于对预估消耗累计资源进行资源叠加处理的资源浮动比率,基于资源浮动比率对预估消耗累计资源进行资源叠加处理,得到资源叠加消耗资源;资源叠加消耗资源的资源额度大于预估消耗累计资源的资源额度;

30、第一资源预估子单元,还具体用于将资源叠加消耗资源作为用于存证待存证信息所需的存证预估消耗资源。

31、其中,存证合约中包括第二存证处理方法,第二存证处理方法用于指示在待存证信息的信息数据量小于信息数据量阈值时,将待存证信息写入存证地址;

32、存证消耗资源预估单元,包括:

33、第二信息预存证子单元,用于通过存证合约中的第二存证处理方法,获取用于存证待存证信息的数据存证方法,通过数据存证方法在将待存证信息预存证至存证地址时,记录预存证待存证信息时所消耗的目标预估消耗资源;

34、第二资源预估子单元,用于将目标预估消耗资源确定为用于存证待存证信息的存证预估消耗资源。

35、其中,存证合约中包含第一资源转换处理方法,第一资源转换处理方法为用于在第一转换时刻将存证映射资源转换为存证转换资源的合约方法;

36、存证映射资源转换模块,包括:

37、转换比率确定单元,用于通过存证合约中第一资源转换处理方法获取用于在第一转换时刻将存证映射资源转换为存证转换资源时的第一资源转换关系,基于第一资源转换关系确定第一转换时刻的第一转换比率;

38、资源转换单元,用于基于第一转换比率对存证映射资源进行资源转换,得到与存证映射资源对应的存证转换资源。

39、其中,第二对象账户地址的存证资源包括存证转换资源和原始存证资源;原始存证资源为在将存证转换资源转移至存证合约中的第二对象账户地址之前,存储在第二对象账户地址中的资源;

40、存证处理支付模块,包括:

41、资源优先级确定单元,用于在存证转换资源的资源额度大于存证预估消耗资源的资源额度时,将存证转换资源的资源优先级确定为第一资源优先级,且将原始存证资源的资源优先级确定为第二资源优先级;

42、第一存证支付资源扣除单元,用于在第一资源优先级高于第二资源优先级时,调用存证合约从第二对象账户地址的存证资源所包含的存证转换资源中扣除用于执行存证交易的第一存证支付资源,基于第一存证支付资源对存证信息进行存证处理。

43、可选地,其中,第二对象账户地址中的存证资源为存证累计资源;存证累计资源是对存证转换资源和原始存证资源进行资源累计所得到的;原始存证资源为在将存证转换资源转移至存证合约中的第二对象账户地址之前,存储在第二对象账户地址中的资源;

44、装置还包括:

45、第一资源额度比对模块,用于若存证转换资源的资源额度小于存证预估消耗资源的资源额度,则将存证累计资源与存证预估消耗资源进行资源额度比对,得到第一资源额度对比结果;

46、第二存证支付资源扣除模块,用于若第一资源额度对比结果指示存证累计资源的资源额度大于存证预估消耗资源的资源额度,则调用存证合约从存证累计资源中扣除用于执行存证交易的第二存证支付资源,基于第二存证支付资源对存证信息进行存证处理。

47、其中,第二存证支付资源扣除模块,包括:

48、第一差额确定单元,用于调用存证合约确定存证转换资源与存证预估消耗资源之间的差额,将差额作为第一存证差额资源;

49、第一资源扣除单元,用于调用存证合约从第二对象账户地址中扣除存证转换资源,且从第二对象账户地址中的原始存证资源中扣除与第一存证差额资源的资源额度相同的原始存证资源;

50、第一资源确定单元,用于将在第二对象账户地址中扣除的存证转换资源和与第一存证差额资源的资源额度相同的原始存证资源,确定为第二存证支付资源。

51、其中,装置还包括:

52、报错信息生成模块,用于若第一资源额度对比结果指示存证累计资源的资源额度小于存证预估消耗资源的资源额度,则通过存证合约通知代付合约生成针对存证交易的报错信息;报错信息用于指示存证累计资源不足以支付存证预估消耗资源;

53、存证处理结束模块,用于在通过存证合约接收到代付合约返回的报错信息时,结束调用存证合约从存证累计资源中扣除用于执行存证交易的第二存证支付资源。

54、其中,装置还包括:

55、第二差额确定模块,用于若第一资源额度对比结果指示存证累计资源的资源额度小于存证预估消耗资源的资源额度,则确定存证累计资源与存证预估消耗资源之间的差额,将差额作为第二存证差额资源,将第二存证差额资源发送给存证对象所对应的业务终端;

56、配置交易接收模块,用于接收存证对象通过业务终端发送的针对第二存证差额资源的链上资源配置交易;

57、存证补充资源获取模块,用于调用存证合约执行链上资源配置交易时,通过存证合约访问代付合约的链上业务接口,得到与第二存证差额资源相关联的存证补充资源,在通过存证合约接收到由代付合约返回的存证补充资源时,将接收到的存证补充资源,确定为链上资源配置交易的交易执行结果;

58、资源更新模块,用于基于交易执行结果,对第二对象账户地址中的存证累计资源进行资源更新,得到用于对存证信息进行存证处理的存证更新累计资源。

59、可选地,其中,在存证补充资源的资源额度等于第二存证差额资源的资源额度时;

60、装置还包括:

61、第二资源确定模块,用于将存证更新累计资源作为用于执行存证交易的第三存证支付资源;

62、第二资源扣除模块,用于在第三存证支付资源的资源额度等于存证预估消耗资源的资源额度时,调用存证合约从存证更新累计资源中扣除第三存证支付资源。

63、可选地,其中,代付合约中包含资源退回接口,代付合约的代付账户地址中的代付资源包括第一剩余存证配置资源;第一剩余存证配置资源为代付账户地址中的代付资源中除存证配置资源之外的资源;

64、在存证补充资源的资源额度大于第二存证差额资源的资源额度时,装置还包括:

65、第三差额确定模块,用于调用存证合约从存证更新累计资源中扣除用于执行存证交易的第四存证支付资源,将存证更新累计资源与第四存证支付资源之间的差额,确定为待处理资源;第四存证支付资源是由存证预估消耗资源所确定的;

66、第一反向转换比率确定模块,用于调用存证合约获取在第一转换时刻将存证映射资源转换为存证转换资源时的第一资源转换关系,以及在第一转换时刻时,用于将存证转换资源反向转换为存证映射资源的第一资源反向转换关系,基于第一资源反向转换关系确定第一转换时刻的第一反向转换比率;

67、第二反向转换比率确定模块,用于调用存证合约获取在第二转换时刻与待处理资源相关联的第二资源反向转换关系,基于第二资源反向转换关系确定第二转换时刻的第二反向转换比率;

68、第一资源反向转换模块,用于若第二反向转换比率高于或者等于第一反向转换比率,则基于第二反向转换比率对待处理资源进行反向资源转换,得到待处理资源对应的第一反向转换资源;

69、第一资源累计模块,用于通过存证合约调用资源退回接口,在将第一反向转换资源添加至代付账户地址时,对代付账户地址中的第一剩余存证配置资源进行资源累计。

70、其中,装置还包括:

71、资源维持存储模块,用于若第二反向转换比率低于第一反向转换比率,则将待处理资源维持存储在第二对象账户地址中。

72、可选地,其中,代付合约中包含资源退回接口,代付合约的代付账户地址中的代付资源包括第二剩余存证配置资源;第二剩余存证配置资源为代付账户地址中的代付资源中除存证配置资源之外的资源;

73、装置还包括:

74、待退回资源确定模块,用于将第二对象账户地址中的存证转换资源余额作为待退回资源;存证转换资源余额是由存证转换资源与第一存证支付资源之间的差额所确定的;

75、第二资源累计模块,用于通过存证合约调用资源退回接口,确定待退回资源对应的第二反向转换资源,在将第二反向转换资源添加至代付账户地址时,对代付账户地址中的第二剩余存证配置资源进行资源累计。

76、其中,第二资源累计模块,包括:

77、第三反向转换比率确定单元,用于调用存证合约获取在第三转换时刻与待退回资源相关联的第三资源反向转换关系,基于第三资源反向转换关系确定第三转换时刻的第三反向转换比率;

78、第二资源反向转换单元,用于基于第三反向转换比率对待退回资源进行反向资源转换,得到待退回资源对应的第二反向转换资源,将第二反向转换资源转移至第一对象账户地址中;

79、资源退回接口调用单元,用于通过存证合约调用资源退回接口,将第一对象账户地址中的第二反向转换资源转移至代付账户地址中;

80、存证累计配置资源确定单元,用于将第二反向转换资源与第二剩余存证配置资源进行资源累计,得到存证累计配置资源,将存证累计配置资源存储在代付账户地址中。

81、本技术实施例一方面提供了一种计算机设备,包括存储器和处理器,存储器与处理器相连,存储器用于存储计算机程序,处理器用于调用计算机程序,以使得该计算机设备执行本技术实施例中上述一方面提供的方法。

82、本技术实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序适于由处理器加载并执行,以使得具有处理器的计算机设备执行本技术实施例中上述一方面提供的方法。

83、根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面提供的方法。

84、本技术实施例中,区块链节点可以在获取到存证对象针对存证信息发送的存证交易时,基于第一合约调用参数获取存证合约,在调用存证合约确定存证对象具备信息存证权限时,通过存证合约预估用于存证存证信息所需的预估消耗资源;应当理解,这里的存证交易中包含与存证合约相关联的第一合约调用参数和第二合约调用参数;这里的预估存证消耗资源的资源类型为第一资源类型;进一步的,区块链节点可以基于第二合约调用参数获取代付合约,在通过存证合约调用代付合约时,从代付合约的代付账户地址获取与存证对象相关联的存证配置资源,将存证配置资源转移至存证合约的第一对象账户地址,得到存储在第一对象账户地址中的存证映射资源;应当理解,这里的存证配置资源为存证提供对象在获取到存证对象提交的链下资源配置请求时,通过代付合约为存证对象所配置的;这里的存证配置资源的资源类型为第二资源类型;这里的第一对象账户地址和代付账户地址均是通过存证对象的公钥信息所确定的;进一步的,区块链节点可以在第一资源类型不同于第二资源类型时,通过存证合约对存证映射资源进行资源转换,得到与存证映射资源对应的存证转换资源,将存证转换资源转移至存证合约中的第二对象账户地址;应当理解,这里的第二对象账户地址为存证合约中不同于第一对象账户地址的地址;这样,若存证转换资源的资源额度大于存证预估消耗资源的资源额度,则该区块链节点可以调用存证合约从第二对象账户地址中扣除用于执行存证交易的第一存证支付资源,基于第一存证支付资源对存证信息进行存证处理;这里的第一存证支付资源是由存证预估消耗资源所确定的。由此可见,本技术实施例可以在对存证对象发送的存证交易中的存证信息进行存证处理时,通过调用存证合约对存证对象进行权限验证,进而可以在确定存证对象具有信息存证权限时,进一步预估存证存证信息的所需的存证预估消耗资源。应当理解,本技术实施例通过该信息存证权限可以有效地识别出合法的存证对象,从而可以避免不具备信息存证权限的非法对象进行信息存证,进而可以从根源上提升信息存证的安全性。比如,区块链节点可以进一步通过存证合约调用代付合约,获取存证提供对象针对存证对象提交的链下资源配置请求为存证对象配置的存证配置资源,并将存证配置资源转入存证合约中的第一对象账户地址,得到存证映射资源,进而对存证映射资源进行资源转换,得到存证转换资源,并转移至存证合约中的第二对象账户地址。其中,第二对象账户地址中存储的资源为链上资源,换言之,上述从第一对象账户地址中转入第二对象账户地址中的存证转换资源为链上资源。这意味着本技术实施例在通过第一对象账户地址进行资源中转的情况下,该第二对象账户地址中可以无需预先存储大量用于进行存证支付的链上资源,进而可以有效地确保当前用于进行存证支付的该第二对象账号地址中的链上资源的安全性。进一步的,区块链节点可以在存证转换资源大于存证预估消耗资源时,调用存证合约扣除执行存证交易的第一支付资源,进而可以在对存证信息进行存证处理时,不仅可以提升信息存证的安全性和可靠性,还可以确保信息存证时所支付的链上资源的存储安全性和可靠性。

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