CN116112293B - 基于区块链的数据可信交易方法和装置、设备和介质 - Google Patents

基于区块链的数据可信交易方法和装置、设备和介质 Download PDF

Info

Publication number
CN116112293B
CN116112293B CN202310383325.1A CN202310383325A CN116112293B CN 116112293 B CN116112293 B CN 116112293B CN 202310383325 A CN202310383325 A CN 202310383325A CN 116112293 B CN116112293 B CN 116112293B
Authority
CN
China
Prior art keywords
data
party
transaction
data party
encrypted
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
Application number
CN202310383325.1A
Other languages
English (en)
Other versions
CN116112293A (zh
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.)
China Academy of Information and Communications Technology CAICT
Original Assignee
China Academy of Information and Communications Technology CAICT
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 China Academy of Information and Communications Technology CAICT filed Critical China Academy of Information and Communications Technology CAICT
Priority to CN202310383325.1A priority Critical patent/CN116112293B/zh
Publication of CN116112293A publication Critical patent/CN116112293A/zh
Application granted granted Critical
Publication of CN116112293B publication Critical patent/CN116112293B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0838Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
    • 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
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本公开实施例公开了一种基于区块链的数据可信交易方法和装置、设备和介质,其中,方法包括:第一数据方根据第一数据方的初始数据,确定初始业务规则;当第二数据方同意初始业务规则,将初始业务规则确定为交易业务规则;第一数据方从区块链中获取第一验证码,第二数据方从区块链中获取第二验证码;第一数据方根据交易业务规则和预设加密方法,确定加密的第一交易数据,第二数据方根据交易业务规则和预设加密方法,确定加密的第二交易数据;当第二验证码通过第一数据方的验证,且第一验证码通过第二数据方的验证,第一数据方和第二数据方对加密的第一交易数据和加密的第二交易数据进行处理,以完成第一数据方与第二数据方的交易。

Description

基于区块链的数据可信交易方法和装置、设备和介质
技术领域
本公开涉及区块链技术、数据交易技术,尤其是一种基于区块链的数据可信交易方法和装置、设备和介质。
背景技术
随着区块链的广泛应用,区块链中的数据量也不断增加。在现有技术中,区块链中数据在进行数据交易时,被交易的数据通常对所有参与该数据交易的参与方均公开可见。但是在大量商用场景中,数据直接暴露在所有参与数据交易的参与方时,会使被交易的数据存在较大的泄露风险,影响被交易的数据的数据安全。
发明内容
本公开实施例提供一种基于区块链的数据可信交易方法和装置、设备和介质,以解决上述问题。
本公开实施例的一个方面,提供了一种基于区块链的数据可信交易方法,包括:第一数据方根据所述第一数据方的初始数据,确定初始业务规则,并将所述初始业务规则发送第二数据方;响应于所述第二数据方同意所述初始业务规则,将所述初始业务规则确定为所述第一数据方和所述第二数据方交易的交易业务规则;所述第一数据方从区块链中获取第一验证码,所述第二数据方从所述区块链中获取第二验证码;所述第一数据方根据所述交易业务规则和预设加密方法,确定加密的第一交易数据,所述第二数据方根据所述交易业务规则和所述预设加密方法,确定加密的第二交易数据;所述第一数据方向所述第二数据方发送所述第一验证码和所述加密的第一交易数据,所述第二数据方向所述第一数据方发送所述第二验证码和所述加密的第二交易数据;响应于所述第二验证码通过所述第一数据方的验证,且所述第一验证码通过所述第二数据方的验证,所述第一数据方和所述第二数据方对所述加密的第一交易数据和所述加密的第二交易数据进行处理,以完成所述第一数据方与所述第二数据方的交易。
可选地,在本公开上述任一实施例的方法中,还包括:所述第一数据方根据所述初始业务规则,确定所述初始业务规则的验证信息,并将所述验证信息存储到所述区块链;所述第二数据方从所述区块链中获取所述验证信息,并利用所述验证信息验证所述初始业务规则;所述响应于所述第二数据方同意所述初始业务规则,将所述初始业务规则确定为所述第一数据方和所述第二数据方交易的交易业务规则,还包括:响应于所述初始业务规则通过所述验证信息的验证,且所述第二数据方同意所述初始业务规则,将所述初始业务规则确定为所述第一数据方和所述第二数据方交易的交易业务规则。
可选地,在本公开上述任一实施例的方法中,还包括:所述第一数据方生成所述第二验证码,并将所述第二验证码存储到所述区块链;所述第二数据方生成所述第一验证码,并将所述第一验证码存储到所述区块链。
可选地,在本公开上述任一实施例的方法中,还包括:响应于所述第二数据方未同意所述初始业务规则,所述第二数据方调用所述区块链中预设业务规则修改逻辑,创建业务规则修改事件,以使所述第一数据方和所述第二数据方基于所述业务规则修改事件对所述初始业务规则进行磋商,得到所述初始业务规则的修改信息;根据所述初始业务规则的修改信息和所述初始业务规则,确定所述第一数据方和所述第二数据方交易的交易业务规则。
可选地,在本公开上述任一实施例的方法中,所述第一数据方根据所述第一数据方的初始数据确定初始业务规则,包括:所述第一数据方根据所述第一数据方的初始数据的类型和所述第一数据方的初始数据,基于历史业务规则或预设业务规则模板,确定所述初始业务规则,其中,所述初始业务规则包括所述第一数据方和所述第二数据方交易的初始交易信息,所述初始交易信息基于所述初始数据获得。
可选地,在本公开上述任一实施例的方法中,所述交易业务规则包括:合同生成信息;所述预设加密方法包括同态加密算法;所述第一数据方根据所述交易业务规则和预设加密方法,确定加密的第一交易数据,所述第二数据方根据所述交易业务规则和所述预设加密方法,确定加密的第二交易数据,包括:所述第一数据方根据所述合同生成信息,生成所述第一数据方的合同;所述第一数据方利用所述同态加密算法对所述第一数据方的合同加密,得到所述加密的第一交易数据;所述第二数据方根据所述合同生成信息,生成所述第二数据方的合同;所述第二数据方利用所述同态加密算法对所述第二数据方的合同加密,得到所述加密的第二交易数据。
可选地,在本公开上述任一实施例的方法中,所述第一数据方和所述第二数据方对所述加密的第一交易数据和所述加密的第二交易数据进行处理,以完成所述第一数据方与所述第二数据方的交易,包括:所述第一数据方和所述第二数据方分别生成签字页;所述第一数据方根据所述签字页和所述加密的第二交易数据生成待签字加密的第二交易数据,所述第二数据方根据所述签字页和所述加密的第一交易数据生成待签字加密的第一交易数据;所述第一数据方和所述第二数据方对所述待签字加密的第一交易数据的签字页进行签字,得到签字第一交易数据,所述第一数据方和所述第二数据方对所述待签字加密的第二交易数据的签字页进行签字,得到签字第二交易数据。
可选地,在本公开上述任一实施例的方法中,还包括:所述第一数据方利用所述同态加密算法对所述第一数据方的初始数据和所述签字第一交易数据进行加密,并将加密后的所述第一数据方的初始数据和加密后的所述签字第一交易数据存储到所述区块链进行存证;所述第二数据方利用所述同态加密算法对所述第二数据方的初始数据和所述签字第二交易数据进行加密,并将加密后的所述第二数据方的初始数据和加密后的所述签字第二交易数据存储到所述区块链进行存证。
本公开实施例的另一个方面,提供了一种基于区块链的数据可信交易装置,包括:规则生成模块,用于第一数据方根据所述第一数据方的初始数据,确定初始业务规则,并将所述初始业务规则发送第二数据方;第一确定模块,用于响应于所述第二数据方同意所述初始业务规则,将所述初始业务规则确定为所述第一数据方和所述第二数据方交易的交易业务规则;获取模块,用于所述第一数据方从区块链中获取第一验证码,所述第二数据方从所述区块链中获取第二验证码;第二确定模块,用于所述第一数据方根据所述交易业务规则和预设加密方法,确定加密的第一交易数据,所述第二数据方根据所述交易业务规则和所述预设加密方法,确定加密的第二交易数据;第一发送模块,用于所述第一数据方向所述第二数据方发送所述第一验证码和所述加密的第一交易数据,所述第二数据方向所述第一数据方发送所述第二验证码和所述加密的第二交易数据;交易模块,用于响应于所述第二验证码通过所述第一数据方的验证,且所述第一验证码通过所述第二数据方的验证,所述第一数据方和所述第二数据方对所述加密的第一交易数据和所述加密的第二交易数据进行处理,以完成所述第一数据方与所述第二数据方的交易。
本公开实施例的一个方面,提供、一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现上述的基于区块链的数据可信交易方法。
本公开实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述的基于区块链的数据可信交易方法。
本公开实施例中基于区块链的数据可信交易方法和装置、设备和介质。本公开实施例中,第一数据方和第二数据方先制定第一数据方和第二数据方交易的交易业务规则,之后第一数据方和第二数据方分别根据交易业务规则,生成加密的第一交易数据和加密的第二交易数据,当第一数据方的第一验证码通过第二数据方的验证,并且第二数据方的第二验证码通过第一数据方的验证,第一数据方和第二数据方对加密的第一交易数据和加密的第二交易数据进行交易。由此,实现了在完成交易的同时,第一数据方和第二数据方仅可以对自身的交易数据可见,避免了交易数据的泄漏,提高了交易数据的数据安全。另外,本公开实施例中,在第一数据方和第二数据方对加密的第一交易数据和加密的第二交易数据进行交易之前,第一数据方对第二数据方的第二验证码验证,以及第二数据方对第一数据方的第一验证码验证,从而实现对第一数据方和第二数据方身份的验证,确保了交易的安全性,从而进一步提高了交易数据的数据安全。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同描述一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1示出本公开实施例的基于区块链的数据可信交易方法一个实施例的流程图;
图2示出本公开实施例的基于区块链的数据可信交易方法另一个实施例的流程图;
图3示出本公开实施例的基于区块链的数据可信交易方法又一个实施例的流程图;
图4示出本公开实施例的步骤S140的一个实施例的流程图;
图5示出本公开实施例的步骤S160的一个实施例的流程图;
图6是本公开一示例性实施例提供的应用实例的流程示意图;
图7为本公开实施例的基于区块链的数据可信交易装置一个实施例的结构示意图;
图8为本公开电子设备一个应用实施例的结构示意图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本公开实施例可以应用于终端设备、计算机系统、服务器等电子设备,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统、服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
区块链(Block Chain)是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证数据不可篡改和不可伪造的分布式账本。
图1示出本公开实施例中基于区块链的数据可信交易方法的流程示意图。本实施例可应用在电子设备上,如图1所示,本实施例的基于区块链的数据可信交易方法包括如下步骤:
步骤S110,第一数据方根据第一数据方的初始数据,确定初始业务规则,并将初始业务规则发送第二数据方。
其中,该初始业务规则包括:第一数据方与第二数据方交易的初始交易信息。该交易信息为基于第一数据方的初始数据生成,即初始交易信息可以为第一数据方和第二数据方待交易的数据,例如,初始交易信息可以包括:初始合同生成信息、初始票据生成信息等。例如,当第一数据方的初始数据为合同的初始数据时,初始业务规则中的初始交易信息可以为初始合同生成信息,初始合同生成信息可以包括:合同的条款、付款方式、签约方信息、合同期限等。
第一数据方的初始数据可以为任意交易数据的初始数据,例如,第一数据方的初始数据可以为合同的初始数据或票务的初始数据,如,合同的初始数据可以为:合同所要约定的事项或物品的具体信息,或者,合同的初始数据为合同的初始版本。例如,合同中约定的事项或物品的性质、交易金额、合同期限、付款方式、第二数据方的身份信息等。
在一种实施方式中,第一数据方和第二数据方的交易可以为合同签署、票务交易等。第一数据方和第二数据方可以为企业、个人等。第一数据方和第二数据方分别具有客户端,第一数据方的客户端和第二数据方的客户端连接,第一数据方的客户端和第二数据方的客户端与区块链连接。第一数据方的客户端和第二数据方的客户端可以为计算机、服务器等。
在一种实施方式中,第一数据方可以在第一数据方的客户端根据第一数据方的初始数据,确定初始业务规则,并将该初始业务规则发送第二数据方的客户端。
步骤S120,响应于第二数据方同意初始业务规则,将初始业务规则确定为第一数据方和第二数据方交易的交易业务规则。
其中,该交易业务规则可以用于第一数据方和第二数据方交易,该交易业务规则可以包括:第一数据方和第二数据方交易的交易信息。第二数据方具有第二数据方的初始数据,该第二数据方的初始数据可以为任意交易数据的初始数据,例如,第二数据方的初始数据可以为合同的初始数据或票务的初始数据等,如,合同的初始数据可以为:合同所要约定的事项或物品的具体信息,或者,合同的初始数据为合同的初始版本。例如,合同中约定的事项或物品的性质、交易金额、合同期限、付款方式、第二数据方的身份信息等。第二数据方可以基于第二数据方的初始数据对初始业务规则中的初始交易信息进行审核,确定是否同意初始业务规则。
在一种实施方式中,当第二数据方同意初始业务规则,将初始业务规则确定为第一数据方和第二数据方交易的交易业务规则,将初始业务规则中的初始交易信息确定为第一数据方和第二数据方交易的交易信息。
示例性的,当第一数据方和第二数据方的交易为合同签署时,初始业务规则中的初始交易信息可以包括初始合同生成信息,当将初始业务规则确定为第一数据方和第二数据方交易的交易业务规则时,将初始业务规则中的初始合同生成信息确定为合同生成信息。
在一种实施方式中,当第二数据方的客户端接收到第一数据方的客户端发送的初始业务规则时,第二数据方可以在第二数据方的客户端审核初始业务规则,当第二数据方同意初始业务规则时,第二数据方可以将初始业务规则确定为交易业务规则,并向第一数据方的客户端发送同意初始业务信息的消息,或者,第二数据方的客户端向第一数据方的客户端发送同意初始业务信息的消息,第一数据方将初始业务规则确定为交易业务规则。
步骤S130,第一数据方从区块链中获取第一验证码,第二数据方从区块链中获取第二验证码。
其中,第一验证码和第二验证码可以为数字组合、数字与字母组合等,第一验证码用于证明第一数据方的身份,第二验证码用于证明第二数据方的身份。
在一种实施方式中,在将初始业务规则确定为第一数据方和第二数据方交易的交易业务规则之后,第一数据方和第二数据方可以向第三方机构申请验证码,第三方机构可以生成第一验证码和第二验证码,并将第一验证码和第二验证码存储在区块链中,并将第一验证码在区块链中的存储地址发送第一数据方,以及将第二验证码在区块链中的存储地址发送第二数据方。其中,第三方机构可以为任意具有验证码生成资质的机构,例如,第三方机构可以为合同监管机构、工商管理机构等。
步骤S140,第一数据方根据交易业务规则和预设加密方法,确定加密的第一交易数据,第二数据方根据交易业务规则和预设加密方法,确定加密的第二交易数据。
其中,预设加密方法可以为对称加密算法、非对称加密算法等。第一数据方可以根据交易业务规则中的交易信息生成第一交易数据,第一数据方可以利用预设加密方法对第一交易数据进行加密,得到加密的第一交易数据。第二数据方可以根据交易业务规则中的交易信息生成第二交易数据,第二数据方可以利用预设加密方法对第二交易数据进行加密,得到加密的第二交易数据。
示例性的,以第一数据方和第二数据方的交易为合同签署为例,交易业务规则中的交易信息可以包括:合同生成信息,如,合同生成信息可以包括:合同的条款或内容、合同的签约方、合同的期限、合同的格式、付款账号信息、合同的付款方式、交易金额等。第一数据方根据交易业务规则中的交易信息生成第一数据方的合同(第一交易数据),第一数据方可以利用预设加密方法对第一数据方的合同进行加密,得到加密的第一交易数据,同理第二数据方得到加密的第二交易数据。
步骤S150,第一数据方向第二数据方发送第一验证码和加密的第一交易数据,第二数据方向第一数据方发送第二验证码和加密的第二交易数据。
其中,第一数据方接收第二数据方发送的第二验证码和加密的第二交易数据,并对第二验证码进行验证。第二数据方接收第一数据方发送的第一验证码和加密的第一交易数据,并对第一验证码进行验证。
在一种实施方式中,第一数据方可以通过第一数据方的客户端向第二数据方的客户端发送第一验证码和加密的第一交易数据,以及第二数据方可以通过第二数据方的客户端向第一数据方的客户端发送第二验证码和加密的第二交易数据。第一数据方的客户端可以对第二验证码进行验证,第二数据方的客户端可以对第一验证码进行验证。示例性的,在第一验证码和第二验证码为第三方机构生成时,第一数据方的客户端可以从第三方机构获取第二验证码,并将从第三验证机构获取的第二验证码与接收到的第二验证码比对,当从第三验证机构获取的第二验证码与接收到的第二验证码相同时,确定第二验证码通过第一数据方的验证,同理,第二数据方的客户端可以从第三方机构获取第一验证码,并将从第三验证机构获取的第一验证码与接收到的第一验证码比对,当从第三验证机构获取的第一验证码与接收到的第一验证码相同时,确定第一验证码通过第二数据方的验证。
步骤S160,响应于第二验证码通过第一数据方的验证,且第一验证码通过第二数据方的验证,第一数据方和第二数据方对加密的第一交易数据和加密的第二交易数据进行处理,以完成第一数据方与第二数据方的交易。
其中,第一数据方和第二数据方对加密的第一交易数据和加密的第二交易数据的处理可以根据第一数据方和第二数据方的交易确定。
例如,当第一数据方和第二数据方的交易为合同签署时,第一数据方和第二数据方对加密的第一交易数据和加密的第二交易数据的处理可以为对加密的第一交易数据和加密的第二交易数据进行签字。
在一种实施方式中,响应于第二验证码未通过第一数据方的验证,和/或,第一验证码未通过第二数据方的验证,确定第一数据方和第二数据方交易失败。
本公开实施例中,第一数据方和第二数据方先制定第一数据方和第二数据方交易的交易业务规则,之后第一数据方和第二数据方分别根据交易业务规则,生成加密的第一交易数据和加密的第二交易数据,当第一数据方的第一验证码通过第二数据方的验证,并且第二数据方的第二验证码通过第一数据方的验证,第一数据方和第二数据方对加密的第一交易数据和加密的第二交易数据进行交易。由此,实现了在完成交易的同时,第一数据方和第二数据方仅可以对自身的交易数据可见,避免了交易数据的泄漏,提高了交易数据的数据安全。另外,本公开实施例中,在第一数据方和第二数据方对加密的第一交易数据和加密的第二交易数据进行交易之前,第一数据方对第二数据方的第二验证码验证,以及第二数据方对第一数据方的第一验证码验证,从而实现对第一数据方和第二数据方身份的验证,确保了交易的安全性,从而进一步提高了交易数据的数据安全。
在一个可选实施例中,如图2所示,本公开实施例中的方法还包括如下步骤:
步骤S210,第一数据方根据初始业务规则,确定初始业务规则的验证信息,并将验证信息存储到区块链。
其中,在步骤S120之前,第一数据方确定初始业务规则之后,第一数据方可以通过任意校验算法生成用于校验初始业务规则的验证信息。例如,校验算法可以为哈希(Hash)算法、循环冗余校验(Cyclic Redundancy Checksum,CRC)算法等。示例性的,第一数据方可以对初始业务规则进行哈希计算,相应的,初始业务规则的验证信息为初始业务规则的哈希值。
在一种实施方式中,第一数据方可以将验证信息存储到区块链中。
步骤S220,第二数据方从区块链中获取验证信息,并利用验证信息验证初始业务规则。
在一种实施方式中,当第一数据方向第二数据方发送初始业务规则时,第一数据方还将初始业务信息的验证信息在区块链中的存储地址发送第二数据方,第二数据方可以根据该存储地址获取验证信息。
示例性的,当验证信息为初始业务规则的哈希值时,第二数据方计算接收到的初始业务规则的哈希值,并将计算的哈希值与验证信息比对,若计算的哈希值和验证信息相同,则确定初始业务规则通过验证信息的验证,否则,确定初始业务规则未通过验证信息的验证。
在一个可选实施例中,本公开实施例中的步骤S120还可以包括:响应于初始业务规则通过验证信息的验证,且第二数据方同意初始业务规则,将初始业务规则确定为第一数据方和第二数据方交易的交易业务规则。
在一种实施方式中,当初始业务规则未通过验证信息的验证,确定交易失败。当初始业务规则通过验证信息的验证,且第二数据方未同意初始业务规则,第一数据方和第二数据方可以对初始业务规则进行磋商,根据磋商结果确定第一数据方和第二数据方交易的交易业务规则。
在一个可选实施例中,本公开实施例中的方法还包括:第一数据方生成第二验证码,并将第二验证码存储到区块链;第二数据方生成第一验证码,并将第一验证码存储到区块链。
在一种实施方式中,第一数据方可以随机生成第二验证码,或者,第一数据方可以自定义验证码生成规则,并根据自定义验证码生成规则生成第二验证码,例如,自定义验证码生成规则包括:验证码的位数、验证码由数字和字母组成等;同理,第二数据方可以随机生成第一验证码,或者,第二数据方可以自定义验证码生成规则,并根据自定义验证码生成规则生成第一验证码。示例性的,第一验证码和第二验证码可以为数字组合,预设验证码生成规则可以包括:随机生成5位数的验证码。
在一种实施方式中,在步骤S130之前,当确定交易业务规则之后,第一数据方生成第二验证码,并将第二验证码存储到区块链中,之后第一数据方将第二验证码在区块链中的存储地址发送第二数据方;第二数据方生成第一验证码,并将第一验证码存储到区块链中,之后第二数据方将第一验证码在区块链中的存储地址发送第一数据方。步骤S130还包括:第一数据方根据第一验证码在区块链中的存储地址获取第一验证码,以及第二数据方根据第二验证码在区块链中的存储地址获取第二验证码。
在一种实施方式中,第一数据方对第二验证码的验证可以包括:第一数据方在生成第二验证码之后,第一数据方还对该第二验证码进行存储,当第一数据方接收到第二数据方发送的第二验证码时,第一数据方将接收到的第二验证码与存储的第二验证码进行比较,若相同,则确定第二验证码通过第一数据方的验证,否则,确定第二验证码未通过第一数据方的验证。
第二数据方对第一验证码的验证可以包括:第二数据方在生成第一验证码之后,第二数据方还对该第一验证码进行存储,当第二数据方接收到第一数据方发送的第一验证码时,第二数据方将接收到的第一验证码与存储的第一验证码进行比较,若相同,则确定第一验证码通过第二数据方的验证,否则,确定第一验证码未通过第二数据方的验证。
在一个可选实施例中,如图3所示,本公开实施例中的方法还包括如下步骤:
步骤S310,响应于第二数据方未同意初始业务规则,第二数据方调用区块链中预设业务规则修改逻辑,创建业务规则修改事件,以使第一数据方和第二数据方基于业务规则修改事件对初始业务规则进行磋商,得到初始业务规则的修改信息。
其中,在步骤S110之后,执行步骤S310或步骤S120。
在一种实施方式中,可以预先设置用于对初始业务规则修改的预设业务规则修改逻辑。示例性的,预设业务规则修改逻辑可以包括:用于填写修改信息的信息框,第一数据方和第二数据方进行线下协商,得到初始修改信息,由第二数据方在信息框填写初始修改信息,并向第一数据方发送初始修改信息,当第一数据方同意初始修改信息,第二数据方将初始修改信息确定为初始业务规则的修改信息,第一数据方和第二数据方完成对初始业务规则的修改。
示例性的,第一数据方和第二数据方的交易为合同签署时,初始业务规则包括的初始交易信息为合同生成信息。当第二数据方不同意初始业务规则时,第二数据方可以在第二数据方的客户端调用区块链中预设业务规则修改逻辑,创建业务规则修改事件,第一数据方和第二数据方可以在线下协商对初始业务规则的修改,得到初始修改信息,该修改信息可以为合同条款的修改信息、合同期限的修改信息等,第二数据方通过第二数据方的客户端在创建业务规则修改事件中的信息框中填写初始修改信息,并将该初始修改信息发送第一数据方,当第一数据方同意初始修改信息时,第二数据方将初始修改信息确定为初始业务规则的修改信息。
步骤S320,根据初始业务规则的修改信息和初始业务规则,确定第一数据方和第二数据方交易的交易业务规则。
其中,可以将修改信息替换初始业务规则中的被修改的内容,得到第一数据方和第二数据方交易的交易业务规则。
在一种实施方式中,第二数据方可以根据初始业务规则的修改信息和初始业务规则,确定第一数据方和第二数据方交易的交易业务规则,并将该交易业务规则同步第一数据方。
在一个可选实施例中,本公开实施例中的步骤S110还包括:第一数据方根据第一数据方的初始数据的类型和第一数据方的初始数据,基于历史业务规则或预设业务规则模板,确定初始业务规则。
其中,该初始业务规则包括第一数据方和第二数据方交易的初始交易信息,初始交易信息基于初始数据获得。该初始数据的类型用于表示对初始数据的分类。例如,初始数据的类型可以为合同、票务等。初始业务规则对应有初始业务规则的类型,初始业务规则的类型用于表示对初始业务规则的分类,例如,初始业务规则的类型可以为合同、票务等。预设业务规则模板对应有预设业务规则模板的类型,预设业务规则模板的类型用于表示对预设业务规则模板的分类,例如,预设业务规则模板的类型可以为合同、票务等,预设业务规则模板中包括初始业务规则所需的信息,例如,预设业务规则模板的类型为合同时,该预设业务规则模板规定初始业务规则需要包括合同条款、合同期限、合同签订方、付款方式等。第一数据方的客户端可以存储有多个历史业务规则和多个预设业务规则模板。在一种实施方式中,当将初始业务规则确定为第一数据方和第二数据方交易的业务规则之后,第一数据方的客户端可以将生成该业务规则的第一数据方的初始数据的类型确定为该业务规则的类型,并将该业务规则作为新的历史业务规则进行存储。
在一种实施方式中,第一数据方可以遍历与第一数据方的初始数据具有相同类型的历史业务规则,确定是否存在可用的历史业务规则,当确定存在可用的历史业务规则,第一数据方可以根据第一数据方的初始数据对该历史业务规则调整,得到初始业务规则。当确定不存在可用的历史业务规则,第一数据方可以选取与第一数据方的初始数据具有相同类型的预设业务规则模板,之后根据该预设业务规则模板和第一数据方的初始数据创建初始业务规则。
示例性的,当第一数据方的初始数据的类型为合同时,第一数据方在类型为合同的历史业务规则中确定是否存在可用的历史业务规则,当确定存在可用的历史业务规则,第一数据方可以根据第一数据方的初始数据对该历史业务规则调整,得到初始业务规则;当确定不存在可用的历史业务规则,第一数据方可以选取类型为合同的预设业务规则模板,根据该预设业务规则模板和第一数据方的初始数据创建初始业务规则。
在一个可选实施例中,本公开实施例中的业务规则包括合同生成信息;预设加密方法包括同态加密算法。如图4所示,本公开实施例中的步骤S140可以包括如下步骤:
步骤S141,第一数据方根据合同生成信息,生成第一数据方的合同;第一数据方利用同态加密算法对第一数据方的合同加密,得到加密的第一交易数据。
其中,合同生成信息包括用于生成合同的信息。例如,合同生成信息可以包括:合同的条款、付款方式、第一数据方的身份信息、第二数据方的身份信息、合同期限、合同中约定交易物品的信息等。同态加密(Homomorphic Encryption,HE)算法是指满足密文同态运算性质的加密算法,即数据经过同态加密之后,对密文进行特定的计算,得到的密文计算结果在进行对应的同态解密后的明文等同于对明文数据直接进行相同的计算,实现数据的“可算不可见”。
在一种实施方式中,第一数据方可以在第一数据方的客户端根据合同生成信息生成第一数据方的合同。该第一数据方的合同包括合同生成信息。第一数据方在第一数据方的客户端利用同态加密算法对第一数据方的合同进行加密,得到加密的第一交易数据。
步骤S142,第二数据方根据合同生成信息,生成第二数据方的合同;第二数据方利用同态加密算法对第二数据方的合同加密,得到加密的第二交易数据。
在一种实施方式中,第二数据方可以在第二数据方的客户端根据合同生成信息生成第二数据方的合同。该第二数据方的合同包括合同生成信息。第二数据方在第为数据方的客户端利用同态加密算法对第二数据方的合同进行加密,得到加密的第二交易数据。
需要说明是,第一数据方的合同与第二数据方的合同相同。
在一个可选实施例中,如图5所示,本公开实施例中的步骤S160可以包括如下步骤:
步骤S161,第一数据方和第二数据方分别生成签字页。
其中,签字页用于第一数据方和第二数据方进行签字。该签字页可以包括:签字位置和日期,第一数据方和第二数据可以在签字位置处签字。
在一种实施方式中,当第二验证码通过第一数据方的验证,第一数据方可以在第一数据方的客户端生成签字页;当第一验证码通过第二数据方的验证,第二数据方可以在第二数据方的客户端生成签字页。
步骤S162,第一数据方根据签字页和加密的第二交易数据生成待签字加密的第二交易数据,第二数据方根据签字页和加密的第一交易数据生成待签字加密的第一交易数据。
在一种实施方式中,当第一数据方生成加密的第一交易数据之后,第一数据方可以通过第一数据方的客户端将加密的第一交易数据和第一验证码发送第二数据方的客户端,当第一验证码通过验证,第二数据方的客户端生成签字页,第二数据方的客户端将加密的第一交易数据和签字页合并,得到待签字加密的第一交易数据。
当第二数据方生成加密的第二交易数据之后,第二数据方可以通过第二数据方的客户端将加密的第二交易数据和第二验证码发送第一数据方的客户端,当第二验证码通过验证,第一数据方的客户端生成签字页,第一数据方的客户端将加密的第二交易数据和签字页合并,得到待签字加密的第二交易数据。
步骤S163,第一数据方和第二数据方对待签字加密的第一交易数据的签字页进行签字,得到签字第一交易数据,第一数据方和第二数据方对待签字加密的第二交易数据的签字页进行签字,得到签字第二交易数据。
其中,第一数据方和第二数据方可以利用任意签字方式对待签字加密的第一交易数据的签字页以及待签字加密的第二交易数据的签字页进行签字。签字第一交易数据包括:第一数据方的合同、第一数据方的签字和第二数据方的签字。签字第二交易数据包括:第二数据方的合同、第一数据方的签字和第二数据方的签字。需要说明的是,签字第一交易数据和签字第二交易数据相同。
示例性的,第一数据方的客户端存储有第一数据方的签字图片,第二数据方的客户端存储有第二数据方的签字图片。对于待签字加密的第一交易数据,第二数据方的客户端在生成待签字加密的第一交易数据之后,第二数据方将第二数据方的签字图片插入到待签字加密的第一交易数据的签字页中,以使待签字加密的第一交易数据具有第二数据方的签字,第二数据方将具有第二数据方的签字的待签字加密的第一交易数据发送第一数据方的客户端,第一数据方的客户端将第一数据方的签字图片插入具有第二数据方的签字的待签字加密的第一交易数据的签字页中,以使待签字加密的第一交易数据具有第一数据方的签字,同时第一数据方可以对具有第一数据方的签字和第二数据方的签字的待签字加密的第一交易数据中的加密的第一交易数据进行解密,得到签字第一交易数据。
对于待签字加密的第二交易数据,第一数据方的客户端在生成待签字加密的第二交易数据之后,第一数据方的客户端将第一数据方的签字图片插入到待签字加密的第二交易数据的签字页中,以使待签字加密的第二交易数据具有第一数据方的签字,第一数据方将具有第一数据方的签字的待签字加密的第二交易数据发送第二数据方的客户端,第二数据方的客户端将第二数据方的签字图片插入具有第一数据方的签字的待签字加密的第二交易数据的签字页中,以使待签字加密的第二交易数据具有第二数据方的签字,同时第二数据方可以对具有第一数据方的签字和第二数据方的签字的待签字加密的第二交易数据中的加密的第二交易数据进行解密,得到签字第二交易数据。
在一个可选实施例中,本公开实施例中的方法还包括:第一数据方利用同态加密算法对第一数据方的初始数据和签字第一交易数据进行加密,并将加密后的第一数据方的初始数据和加密后的签字第一交易数据存储到区块链进行存证;
第二数据方利用同态加密算法对第二数据方的初始数据和签字第二交易数据进行加密,并将加密后的第二数据方的初始数据和加密后的签字第二交易数据存储到区块链进行存证。
在一种实施方式中,第一数据方可以在第一数据方的客户端利用同态加密算法对第一数据方的初始数据和签字第一交易数据分别进行加密,得到加密后的第一数据方的初始数据和加密后的签字第一交易数据,第一数据方将加密后的第一数据方的初始数据和加密后的签字第一交易数据存储到区块链中进行存证。
第二数据方可以在第二数据方的客户端利用同态加密算法对第二数据方的初始数据和签字第二交易数据分别进行加密,得到加密后的第二数据方的初始数据和加密后的签字第二交易数据,第二数据方将加密后的第二数据方的初始数据和加密后的签字第二交易数据存储到区块链中进行存证。
以下为本公开实施例中基于区块链的数据可信交易方法的一个应用实施例,在本实施例中以第一数据方和第二数据方的交易为合同签署为例进行说明。如图6所示,上述的方法包括如下步骤:
S1,第一数据方根据第一数据方的初始数据确定初始业务规则,该初始业务规则包括初始合同生成信息(初始交易信息)。
S2,第一数据方对初始业务规则进行哈希计算,得到初始业务规则的验证信息,并将初始业务规则的验证信息存储到区块链中,第一数据方将初始业务规则和验证信息的存储地址发送第二数据方。
S3,第二数据方根据验证信息的存储地址在区块链中获取验证信息,第二数据方对初始业务规则进行哈希计算,得到初始业务规则的哈希值,根据初始业务规则的哈希值和验证信息,对初始业务规则进行验证,当初始业务规则的哈希值与验证信息相同,确定初始业务规则通过验证信息的验证。
S4,当初始业务规则通过验证信息的验证,第二数据方对初始业务规则进行审核,确定第一数据方和第二数据方交易的交易业务规则,该交易业务规则包括:合同生成信息(交易信息);第二数据方对初始业务规则进行审核具体地包括:当第二数据方同意初始业务规则,将初始业务规则确定为第一数据方和第二数据方交易的交易业务规则,并向第一数据方发送同意初始业务规则的消息;当第二数据方未同意初始业务规则,第二数据方调用区块链中预设业务规则修改逻辑,创建业务规则修改事件,以使第一数据方和第二数据方基于业务规则修改事件对初始业务规则进行磋商,得到初始业务规则的修改信息,第二数据方根据初始业务规则的修改信息和初始业务规则,确定第一数据方和第二数据方交易的交易业务规则,并向第一数据方发送交易业务规则。
S5,当第一数据方接收到同意初始业务规则的消息或交易业务规则,第一数据方生成第二验证码,并将第二验证码存储到区块链,将第二验证码在区块链中的存储地址发送第二数据方;第二数据方生成第一验证码,并将第一验证码存储到区块链,将第一验证码在区块链中的存储地址发送第一数据方;
S6,第一数据方根据第一验证码的存储地址,从区块链中获取第一验证码,第一数据方根据合同生成信息,生成第一数据方的合同,第一数据方利用同态加密算法对第一数据方的合同加密,得到加密的第一交易数据;第二数据方根据第二验证码的存储地址,从区块链中获取第二验证码,第二数据方根据合同生成信息,生成第二数据方的合同,第二数据方利用同态加密算法对第二数据方的合同加密,得到加密的第二交易数据。
S7,第一数据方将第一验证码和加密的第一交易数据发送第二数据方;第二数据方将第二验证码和加密的第二交易数据发送第一数据方。
S8,第一数据方对第二验证码进行验证,当第二验证码通过验证,第一数据方生成签字页,并根据签字页和加密的第二交易数据生成待签字加密的第二交易数据,对待签字加密的第二交易数据的签字页进行签字;第二数据方对第一验证码进行验证,当第一验证码通过验证,第二数据方生成签字页,并根据签字页和加密的第一交易数据生成待签字加密的第一交易数据,对待签字加密的第一交易数据的签字页进行签字。
S9,第一数据方将具有第一数据方的签字的待签字加密的第二交易数据发送第二数据方;第二数据方将具有第二数据方的签字的待签字加密的第一交易数据发送第一数据方。
S10,第一数据方对具有第二数据方的签字的待签字加密的第一交易数据的签字页进行签字,之后对待签字加密的第一交易数据中的加密的第一交易数据进行解密,得到签字第一交易数据;第二数据方对具有第一数据方的签字的待签字加密的第二交易数据的签字页进行签字,之后对待签字加密的第二交易数据中的加密的第二交易数据进行解密,得到签字第二交易数据。
S11,第一数据方利用同态加密算法对第一数据方的初始数据和签字第一交易数据进行同态加密,并将加密后的第一数据方的初始数据和加密后的签字第一交易数据存储到区块链进行存证;第二数据方利用同态加密算法对第二数据方的初始数据和签字第二交易数据进行同态加密,并将加密后的第二数据方的初始数据和加密后的签字第二交易数据存储到区块链进行存证。
图7示出本公开实施例中基于区块链的数据可信交易装置的框图。如图7所示,该实施例基于区块链的数据可信交易装置包括:
规则生成模块410,用于第一数据方根据所述第一数据方的初始数据,确定初始业务规则,并将所述初始业务规则发送第二数据方;
第一确定模块420,用于响应于所述第二数据方同意所述初始业务规则,将所述初始业务规则确定为所述第一数据方和所述第二数据方交易的交易业务规则;
获取模块430,用于所述第一数据方从区块链中获取第一验证码,所述第二数据方从所述区块链中获取第二验证码;
第二确定模块440,用于所述第一数据方根据所述交易业务规则和预设加密方法,确定加密的第一交易数据,所述第二数据方根据所述交易业务规则和所述预设加密方法,确定加密的第二交易数据;
第一发送模块450,用于所述第一数据方向所述第二数据方发送所述第一验证码和所述加密的第一交易数据,所述第二数据方向所述第一数据方发送所述第二验证码和所述加密的第二交易数据;
交易模块460,用于响应于所述第二验证码通过所述第一数据方的验证,且所述第一验证码通过所述第二数据方的验证,所述第一数据方和所述第二数据方对所述加密的第一交易数据和所述加密的第二交易数据进行处理,以完成所述第一数据方与所述第二数据方的交易。
在一个可选实施例方式中,本公开实施例中的基于区块链的数据可信交易装置还包括:
第三确定模块,用于所述第一数据方根据所述初始业务规则,确定所述初始业务规则的验证信息,并将所述验证信息存储到所述区块链;
验证模块,用于所述第二数据方从所述区块链中获取所述验证信息,并利用所述验证信息验证所述初始业务规则;
所述第一确定模块420还用于:响应于所述初始业务规则通过所述验证信息的验证,且所述第二数据方同意所述初始业务规则,将所述初始业务规则确定为所述第一数据方和所述第二数据方交易的交易业务规则。
在一个可选实施例方式中,本公开实施例中的基于区块链的数据可信交易装置还包括:
第一验证码生成模块,用于所述第一数据方生成所述第二验证码,并将所述第二验证码存储到所述区块链;
第二验证码生成模块,用于所述第二数据方生成所述第一验证码,并将所述第一验证码存储到所述区块链。
在一个可选实施例方式中,本公开实施例中的基于区块链的数据可信交易装置还包括:
修改模块,用于响应于所述第二数据方未同意所述初始业务规则,所述第二数据方调用所述区块链中预设业务规则修改逻辑,创建业务规则修改事件,以使所述第一数据方和所述第二数据方基于所述业务规则修改事件对所述初始业务规则进行磋商,得到所述初始业务规则的修改信息;
第四确定模块,用于根据所述初始业务规则的修改信息和所述初始业务规则,确定所述第一数据方和所述第二数据方交易的交易业务规则。
在一个可选实施例方式中,本公开实施例中的所述规则生成模块410还用于:所述第一数据方根据所述第一数据方的初始数据的类型和所述第一数据方的初始数据,基于历史业务规则或预设业务规则模板,确定所述初始业务规则,其中,所述初始业务规则包括所述第一数据方和所述第二数据方交易的初始交易信息,所述初始交易信息基于所述初始数据获得。
在一个可选实施例方式中,本公开实施例中的基于区块链的数据可信交易装置中所述业务规则包括合同生成信息;所述预设加密方法包括同态加密算法;本公开实施例中的所述第二确定模块440,包括:
第一合同生成子模块,用于所述第一数据方根据所述合同生成信息,生成所述第一数据方的合同;所述第一数据方利用所述同态加密算法对所述第一数据方的合同加密,得到所述加密的第一交易数据;
第二合同生成子模块,用于所述第二数据方根据所述合同生成信息,生成所述第二数据方的合同;所述第二数据方利用所述同态加密算法对所述第二数据方的合同加密,得到所述加密的第二交易数据。
在一个可选实施例方式中,本公开实施例中的所述交易模块460,包括:
签字页生成子模块,用于所述第一数据方和所述第二数据方分别生成签字页;
合成子模块,用于所述第一数据方根据所述签字页和所述加密的第二交易数据生成待签字加密的第二交易数据,所述第二数据方根据所述签字页和所述加密的第一交易数据生成待签字加密的第一交易数据;
签字子模块,用于所述第一数据方和所述第二数据方对所述待签字加密的第一交易数据的签字页进行签字,得到签字第一交易数据,所述第一数据方和所述第二数据方对所述待签字加密的第二交易数据的签字页进行签字,得到签字第二交易数据。
在一个可选实施例方式中,本公开实施例中的基于区块链的数据可信交易装置还包括:
第一加密存储模块,用于所述第一数据方利用所述同态加密算法对所述第一数据方的初始数据和所述签字第一交易数据进行加密,并将加密后的所述第一数据方的初始数据和加密后的所述签字第一交易数据存储到所述区块链进行存证;
第二加密存储模块,用于所述第二数据方利用所述同态加密算法对所述第二数据方的初始数据和所述签字第二交易数据进行加密,并将加密后的所述第二数据方的初始数据和加密后的所述签字第二交易数据存储到所述区块链进行存证。
另外,本公开实施例还提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现本公开上述任一实施例所述的基于区块链的数据可信交易方法。
图8为本公开电子设备一个应用实施例的结构示意图。下面,参考图8来描述根据本公开实施例的电子设备。该电子设备可以是第一设备和第二设备中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。
如图8所示,电子设备包括一个或多个处理器和存储器。
处理器可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备中的其他组件以执行期望的功能。
存储器可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器可以运行所述程序指令,以实现上文所述的本公开的各个实施例的基于区块链的数据可信交易方法以及/或者其他期望的功能。
在一个示例中,电子设备还可以包括:输入装置和输出装置,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
此外,该输入装置还可以包括例如键盘、鼠标等等。
该输出装置可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出装置可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图8中仅示出了该电子设备中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备还可以包括任何其他适当的组件。
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述部分中描述的根据本公开各种实施例的基于区块链的数据可信交易方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述部分中描述的根据本公开各种实施例的基于区块链的数据可信交易方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

Claims (10)

1.一种基于区块链的数据可信交易方法,其特征在于,包括:
第一数据方根据所述第一数据方的初始数据,确定初始业务规则,并将所述初始业务规则发送第二数据方;
响应于所述第二数据方同意所述初始业务规则,将所述初始业务规则确定为所述第一数据方和所述第二数据方交易的交易业务规则;
所述第一数据方从区块链中获取第一验证码,所述第二数据方从所述区块链中获取第二验证码;
所述第一数据方根据所述交易业务规则和预设加密方法,确定加密的第一交易数据,所述第二数据方根据所述交易业务规则和所述预设加密方法,确定加密的第二交易数据;
所述第一数据方向所述第二数据方发送所述第一验证码和所述加密的第一交易数据,所述第二数据方向所述第一数据方发送所述第二验证码和所述加密的第二交易数据;
响应于所述第二验证码通过所述第一数据方的验证,且所述第一验证码通过所述第二数据方的验证,所述第一数据方和所述第二数据方对所述加密的第一交易数据和所述加密的第二交易数据进行处理,以完成所述第一数据方与所述第二数据方的交易;
其中,所述第一数据方和所述第二数据方对所述加密的第一交易数据和所述加密的第二交易数据进行处理,以完成所述第一数据方与所述第二数据方的交易,包括:所述第一数据方和所述第二数据方分别生成签字页;所述第一数据方根据所述签字页和所述加密的第二交易数据生成待签字加密的第二交易数据,所述第二数据方根据所述签字页和所述加密的第一交易数据生成待签字加密的第一交易数据;所述第一数据方和所述第二数据方对所述待签字加密的第一交易数据的签字页进行签字,得到签字第一交易数据,所述第一数据方和所述第二数据方对所述待签字加密的第二交易数据的签字页进行签字,得到签字第二交易数据。
2.根据权利要求1所述的方法,其特征在于,还包括:
所述第一数据方根据所述初始业务规则,确定所述初始业务规则的验证信息,并将所述验证信息存储到所述区块链;
所述第二数据方从所述区块链中获取所述验证信息,并利用所述验证信息验证所述初始业务规则;
所述响应于所述第二数据方同意所述初始业务规则,将所述初始业务规则确定为所述第一数据方和所述第二数据方交易的交易业务规则,还包括:
响应于所述初始业务规则通过所述验证信息的验证,且所述第二数据方同意所述初始业务规则,将所述初始业务规则确定为所述第一数据方和所述第二数据方交易的交易业务规则。
3.根据权利要求1或2所述的方法,其特征在于,还包括:
所述第一数据方生成所述第二验证码,并将所述第二验证码存储到所述区块链;
所述第二数据方生成所述第一验证码,并将所述第一验证码存储到所述区块链。
4.根据权利要求3所述的方法,其特征在于,还包括:
响应于所述第二数据方未同意所述初始业务规则,所述第二数据方调用所述区块链中预设业务规则修改逻辑,创建业务规则修改事件,以使所述第一数据方和所述第二数据方基于所述业务规则修改事件对所述初始业务规则进行磋商,得到所述初始业务规则的修改信息;
根据所述初始业务规则的修改信息和所述初始业务规则,确定所述第一数据方和所述第二数据方交易的交易业务规则。
5.根据权利要求4所述的方法,其特征在于,所述第一数据方根据所述第一数据方的初始数据确定初始业务规则,包括:
所述第一数据方根据所述第一数据方的初始数据的类型和所述第一数据方的初始数据,基于历史业务规则或预设业务规则模板,确定所述初始业务规则,其中,所述初始业务规则包括所述第一数据方和所述第二数据方交易的初始交易信息,所述初始交易信息基于所述初始数据获得。
6.根据权利要求5所述的方法,其特征在于,所述交易业务规则包括:合同生成信息;所述预设加密方法包括同态加密算法;
所述第一数据方根据所述交易业务规则和预设加密方法,确定加密的第一交易数据,所述第二数据方根据所述交易业务规则和所述预设加密方法,确定加密的第二交易数据,包括:
所述第一数据方根据所述合同生成信息,生成所述第一数据方的合同;所述第一数据方利用所述同态加密算法对所述第一数据方的合同加密,得到所述加密的第一交易数据;
所述第二数据方根据所述合同生成信息,生成所述第二数据方的合同;所述第二数据方利用所述同态加密算法对所述第二数据方的合同加密,得到所述加密的第二交易数据。
7.根据权利要求6所述的方法,其特征在于,还包括:
所述第一数据方利用所述同态加密算法对所述第一数据方的初始数据和所述签字第一交易数据进行加密,并将加密后的所述第一数据方的初始数据和加密后的所述签字第一交易数据存储到所述区块链进行存证;
所述第二数据方利用所述同态加密算法对所述第二数据方的初始数据和所述签字第二交易数据进行加密,并将加密后的所述第二数据方的初始数据和加密后的所述签字第二交易数据存储到所述区块链进行存证。
8.一种基于区块链的数据可信交易装置,其特征在于,包括:
规则生成模块,用于第一数据方根据所述第一数据方的初始数据,确定初始业务规则,并将所述初始业务规则发送第二数据方;
第一确定模块,用于响应于所述第二数据方同意所述初始业务规则,将所述初始业务规则确定为所述第一数据方和所述第二数据方交易的交易业务规则;
获取模块,用于所述第一数据方从区块链中获取第一验证码,所述第二数据方从所述区块链中获取第二验证码;
第二确定模块,用于所述第一数据方根据所述交易业务规则和预设加密方法,确定加密的第一交易数据,所述第二数据方根据所述交易业务规则和所述预设加密方法,确定加密的第二交易数据;
第一发送模块,用于所述第一数据方向所述第二数据方发送所述第一验证码和所述加密的第一交易数据,所述第二数据方向所述第一数据方发送所述第二验证码和所述加密的第二交易数据;
交易模块,用于响应于所述第二验证码通过所述第一数据方的验证,且所述第一验证码通过所述第二数据方的验证,所述第一数据方和所述第二数据方对所述加密的第一交易数据和所述加密的第二交易数据进行处理,以完成所述第一数据方与所述第二数据方的交易;
其中,所述交易模块,包括:
签字页生成子模块,用于所述第一数据方和所述第二数据方分别生成签字页;
合成子模块,用于所述第一数据方根据所述签字页和所述加密的第二交易数据生成待签字加密的第二交易数据,所述第二数据方根据所述签字页和所述加密的第一交易数据生成待签字加密的第一交易数据;
签字子模块,用于所述第一数据方和所述第二数据方对所述待签字加密的第一交易数据的签字页进行签字,得到签字第一交易数据,所述第一数据方和所述第二数据方对所述待签字加密的第二交易数据的签字页进行签字,得到签字第二交易数据。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现上述权利要求1-7任一所述基于区块链的数据可信交易方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时,实现上述权利要求1-7任一所述基于区块链的数据可信交易方法。
CN202310383325.1A 2023-04-12 2023-04-12 基于区块链的数据可信交易方法和装置、设备和介质 Active CN116112293B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310383325.1A CN116112293B (zh) 2023-04-12 2023-04-12 基于区块链的数据可信交易方法和装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310383325.1A CN116112293B (zh) 2023-04-12 2023-04-12 基于区块链的数据可信交易方法和装置、设备和介质

Publications (2)

Publication Number Publication Date
CN116112293A CN116112293A (zh) 2023-05-12
CN116112293B true CN116112293B (zh) 2023-06-23

Family

ID=86258279

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310383325.1A Active CN116112293B (zh) 2023-04-12 2023-04-12 基于区块链的数据可信交易方法和装置、设备和介质

Country Status (1)

Country Link
CN (1) CN116112293B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109389500A (zh) * 2018-09-29 2019-02-26 重庆邮电大学 基于以太坊的数据交易平台
CN110458554A (zh) * 2019-03-31 2019-11-15 西安电子科技大学 区块链上基于身份的数据快速交易方法
CN110740044A (zh) * 2019-10-30 2020-01-31 北京海益同展信息科技有限公司 数据处理方法、装置、系统和存储介质
CN111027972A (zh) * 2019-11-25 2020-04-17 杭州隐知科技有限公司 一种基于区块链的数据验证方法、装置及电子设备
CN111311258A (zh) * 2020-01-20 2020-06-19 布比(北京)网络技术有限公司 基于区块链的可信交易方法、装置、系统、设备及介质
CN111915302A (zh) * 2020-08-05 2020-11-10 腾讯科技(深圳)有限公司 关联数据处理方法、装置、电子设备及计算机可读介质
CN113162915A (zh) * 2021-03-16 2021-07-23 中国工商银行股份有限公司 基于区块链的交易方法、节点、电子设备、介质和系统
CN115567326A (zh) * 2022-11-21 2023-01-03 北京邮电大学 一种基于区块链的数据交易方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109389500A (zh) * 2018-09-29 2019-02-26 重庆邮电大学 基于以太坊的数据交易平台
CN110458554A (zh) * 2019-03-31 2019-11-15 西安电子科技大学 区块链上基于身份的数据快速交易方法
CN110740044A (zh) * 2019-10-30 2020-01-31 北京海益同展信息科技有限公司 数据处理方法、装置、系统和存储介质
CN111027972A (zh) * 2019-11-25 2020-04-17 杭州隐知科技有限公司 一种基于区块链的数据验证方法、装置及电子设备
CN111311258A (zh) * 2020-01-20 2020-06-19 布比(北京)网络技术有限公司 基于区块链的可信交易方法、装置、系统、设备及介质
CN111915302A (zh) * 2020-08-05 2020-11-10 腾讯科技(深圳)有限公司 关联数据处理方法、装置、电子设备及计算机可读介质
CN113162915A (zh) * 2021-03-16 2021-07-23 中国工商银行股份有限公司 基于区块链的交易方法、节点、电子设备、介质和系统
CN115567326A (zh) * 2022-11-21 2023-01-03 北京邮电大学 一种基于区块链的数据交易方法及装置

Also Published As

Publication number Publication date
CN116112293A (zh) 2023-05-12

Similar Documents

Publication Publication Date Title
US11050549B2 (en) Blockchain-based transaction method and apparatus, and remitter device
US10911231B2 (en) Method for restoring public key based on SM2 signature
CN111080295B (zh) 一种基于区块链的电子合同处理方法以及设备
US11341466B2 (en) Transferring digital tickets based on blockchain networks
EP3607483B1 (en) Authentication based on a recoverd public key
CN110458560B (zh) 用于进行交易验证的方法及装置
EP3673640B1 (en) Processing data elements stored in blockchain networks
CN111464315B (zh) 数字签名处理方法、装置、计算机设备以及存储介质
CN110189184B (zh) 一种电子发票存储方法和装置
CN115460019B (zh) 基于数字身份的目标应用提供方法和装置、设备和介质
CN113032837A (zh) 开放平台匿名鉴权方法及系统
CN111245594B (zh) 一种基于同态运算的协同签名方法及系统
CN110827034B (zh) 用于发起区块链交易的方法及装置
CN115982247B (zh) 基于区块链的账户信息查询方法和装置、设备和介质
CN114514550A (zh) 将请求分区成区块链的交易
CN116112293B (zh) 基于区块链的数据可信交易方法和装置、设备和介质
US10608997B1 (en) Context-based data access control
CN115375303A (zh) 智能合约的调用方法、装置、计算机可读介质及电子设备
CN115345760B (zh) 基于区块链的多方签约方法和装置、电子设备和存储介质
CN115664861B (zh) 基于区块链的身份信息验证方法和装置、设备和介质
CN116405319B (zh) 基于区块链的碳金融凭证共享方法和装置、设备和介质
CN116896440B (zh) 基于区块链的声明数据的验证方法和装置、设备和介质
CN116975936B (zh) 金融资质证明方法、金融资质验证方法
CN116975937B (zh) 匿名证明方法、匿名验证方法
CN115545977A (zh) 基于区块链的电子合同签署方法和装置、设备和介质

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