区块链数据传输方法、装置及电子设备与流程

文档序号:35667762发布日期:2023-10-07 11:51阅读:25来源:国知局
区块链数据传输方法、装置及电子设备与流程

本技术涉及区块链,尤其涉及一种区块链数据传输方法、装置及电子设备。


背景技术:

1、区块链技术作为一种分布式数字账本技术,借助密码技术,让人们可以在没有中央权威机构监督的情况下,对彼此协作建立起信心,实现在分布式网络里多边交易的去中心化。区块链中所有节点保存有相同的数字账本,账本内容对所有人公开,且数据一旦上链存入账本则不可篡改。

2、目前,进行区块链数据传输时,一般数据发送者和数据接收者之间进行交互,而数据发送者或数据接收者出现安全问题时,会影响区块链数据传输的安全性,因此,区块链数据传输的安全性有待进一步提高。


技术实现思路

1、本技术提供一种区块链数据传输方法、装置及电子设备,用以解决目前区块链数据传输的安全性有待进一步提高的问题。

2、本技术第一方面提供一种区块链数据传输方法,应用于数据接收方,所述数据接收方、数据发送方、智能合约三者之间相互通信,所述方法包括:

3、采用预设数据生成算法生成数据传输案例标识、确认消息参数和非对称加密密钥对;所述非对称加密密钥对包括临时公钥和临时私钥;

4、发送临时公钥、确认消息参数以及数据传输案例标识至所述数据发送方;

5、发送数据传输请求至智能合约,以使智能合约根据数据传输请求设置所述数据传输案例标识对应的数据传输案例状态为已请求;

6、在监听到智能合约设置数据传输案例标识对应的数据传输案例状态为已确定时,从智能合约处获取目标传输数据;所述目标传输数据由数据发送方在监听到数据传输案例状态为已请求时传输至智能合约;

7、对所述目标传输数据进行解密处理以及哈希处理,生成对应区块链交易信息,并传输所述区块链交易信息至智能合约,以使智能合约比对所述区块链交易信息和目标传输数据,并在所述区块链交易信息和目标传输数据相同时,修改数据传输案例状态为已完成。

8、进一步地,如上所述的方法,所述预设数据生成算法包括:预设随机数生成算法、预设确认参数生成算法和预设密钥生成算法;所述数据传输请求包括第一元组和数据传输保证金;所述第一元组包括数据传输案例标识、确认消息参数、所述非对称加密密钥对、数据接收方标识和数据发送方标识;

9、所述采用预设数据生成算法生成数据传输案例标识、确认消息参数和非对称加密密钥对,包括:

10、采用预设随机数生成算法生成数据传输案例标识;

11、采用预设确认参数生成算法生成确认消息参数;

12、采用预设密钥生成算法生成非对称加密密钥对;所述非对称加密密钥对包括临时公钥和临时私钥。

13、进一步地,如上所述的方法,所述目标传输数据包括:算法标识符和第二元组;所述第二元组包括数据传输案例标识、确认消息值和密文;

14、所述对所述目标传输数据进行解密处理以及哈希处理,生成对应区块链交易信息,包括:

15、采用所述临时私钥对所述密文进行解密处理,生成解密后的第一消息和第一随机数;

16、对第一消息和所述数据传输案例标识进行哈希处理,生成第一哈希值;

17、生成所述区块链交易信息;所述区块链交易信息包括第三元组;所述第三元组包括所述数据传输案例标识、确认消息值、第一哈希值和第一随机数。

18、进一步地,如上所述的方法,所述方法还包括:

19、在数据传输案例状态为已完成时,公开所述确认消息值。

20、本技术第二方面提供一种区块链数据传输方法,应用于数据发送方,所述数据发送方、数据接收方、智能合约三者之间相互通信,所述方法包括:

21、接收数据接收方发送的临时公钥、确认消息参数以及数据传输案例标识;

22、在监听到智能合约设置数据传输案例标识对应的数据传输案例状态为已请求时,根据待传输的第二消息、数据传输案例标识、确认消息参数和预设数据生成算法生成对应第二哈希值、第二随机数和确认消息值;

23、采用临时公钥对所述第二消息和所述第二随机数进行非对称加密,生成对应密文;

24、发送目标传输数据至智能合约,以使智能合约根据所述目标传输数据修改数据传输案例标识对应的数据传输案例状态为已确认;所述目标传输数据包括算法标识符和第二元组;所述第二元组包括数据传输案例标识、确认消息值和密文。

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、修改模块,用于接收数据发送方发送的目标传输数据,并根据所述目标传输数据修改数据传输案例标识对应的数据传输案例状态为已确认;

85、接收模块,用于接收数据接收方发送的区块链交易信息;

86、比对模块,用于比对所述区块链交易信息和目标传输数据,并在所述区块链交易信息和目标传输数据相同时修改数据传输案例状态为已完成。

87、进一步地,如上所述的装置,所述数据传输请求包括第一元组和数据传输保证金;所述第一元组包括数据传输案例标识、确认消息参数、非对称加密密钥、数据接收方标识和数据发送方标识;所述非对称加密密钥对包括临时公钥和临时私钥;

88、所述设置模块在根据所述数据传输请求设置对应的数据传输案例状态为已请求时,具体用于:

89、对数据接收方标识和数据发送方标识进行校验处理;若校验结果为通过,则设置所述数据传输案例标识对应的数据传输案例状态为已请求,并存储所述确认消息参数和所述非对称加密密钥对。

90、进一步地,如上所述的装置,所述目标传输数据包括算法标识符和第二元组;所述算法标识符包括预设随机数生成算法对应的标识符以及确认消息生成算法对应的标识符;所述第二元组包括数据传输案例标识、确认消息值和密文;所述区块链交易信息包括第三元组;所述第三元组包括所述数据传输案例标识、确认消息值、第一哈希值和第一随机数;

91、所述比对模块在比对所述区块链交易信息和目标传输数据时,具体用于:

92、采用所述临时私钥对所述密文进行解密处理,生成解密后的第二消息和第二随机数;根据算法标识符确定对应确认消息生成算法;根据确认消息生成算法、第二随机数、确认消息值以及确认消息参数确定对应第二哈希值;比对第一哈希值和第二哈希值是否相同,以及第一随机数和第二随机数是否相同;若都相同,则确定所述区块链交易信息和目标传输数据相同。

93、进一步地,如上所述的装置,所述装置还包括:

94、处理模块,用于接收数据接收方发送的案例抗诉请求;若数据传输案例状态为已完成,则确定是否满足下列条件:

95、所述临时私钥与密文不匹配;

96、根据所述临时私钥对密文解密后生成的第三消息为空;

97、根据所述临时私钥对密文解密后生成的第三随机数与第一随机数不同;

98、根据确认消息生成算法、第三随机数、确认消息值以及确认消息参数确定的第三哈希值与第一哈希值不同;

99、若确定上述条件不全满足,则确定数据接收方为恶意对象,将所述数据传输保证金发送至数据发送方;若确定上述条件全不满足,则确定数据发送方为恶意对象,将所述数据传输保证金发送至数据接收方,并将所述数据发送方标识添加至预设黑名单中。

100、本技术第七方面提供一种电子设备,包括:存储器和处理器;

101、所述存储器存储计算机执行指令;

102、所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面至第三方面任一项所述的区块链数据传输方法。

103、本技术第八方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现第一方面至第三方面任一项所述的区块链数据传输方法。

104、本技术第九方面提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面至第三方面任一项所述的区块链数据传输方法。

105、本技术提供的一种区块链数据传输方法、装置及电子设备,所述数据接收方、数据发送方、智能合约三者之间相互通信,所述方法包括:采用预设数据生成算法生成数据传输案例标识、确认消息参数和非对称加密密钥对;所述非对称加密密钥对包括临时公钥和临时私钥;发送临时公钥、确认消息参数以及数据传输案例标识至所述数据发送方;发送数据传输请求至智能合约,以使智能合约根据数据传输请求设置所述数据传输案例标识对应的数据传输案例状态为已请求;在监听到智能合约设置数据传输案例标识对应的数据传输案例状态为已确定时,从智能合约处获取目标传输数据;所述目标传输数据由数据发送方在监听到数据传输案例状态为已请求时传输至智能合约;对所述目标传输数据进行解密处理以及哈希处理,生成对应区块链交易信息,并传输所述区块链交易信息至智能合约,以使智能合约比对所述区块链交易信息和目标传输数据,并在所述区块链交易信息和目标传输数据相同时,修改数据传输案例状态为已完成。本技术的区块链数据传输方法,数据发送者和数据接收者之间通过智能合约第三方传输数据,由于智能合约可以通过特定逻辑,控制其内部函数触发条件而不受任何人管控,作为第三方提高了区块链数据传输的安全性。

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