CN110730187A - 基于区块链的交易验证方法、记账节点及介质 - Google Patents

基于区块链的交易验证方法、记账节点及介质 Download PDF

Info

Publication number
CN110730187A
CN110730187A CN201911010112.4A CN201911010112A CN110730187A CN 110730187 A CN110730187 A CN 110730187A CN 201911010112 A CN201911010112 A CN 201911010112A CN 110730187 A CN110730187 A CN 110730187A
Authority
CN
China
Prior art keywords
encrypted data
user node
token
node
random number
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
CN201911010112.4A
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.)
Iallchain Co Ltd
Original Assignee
Iallchain 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 Iallchain Co Ltd filed Critical Iallchain Co Ltd
Priority to CN201911010112.4A priority Critical patent/CN110730187A/zh
Publication of CN110730187A publication Critical patent/CN110730187A/zh
Pending legal-status Critical Current

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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • 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
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

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

Abstract

本发明实施例提供一种基于区块链的交易验证方法、记账节点及介质,该方法包括:记账节点接收第二用户节点发送的交易信息并从区块链的账本中获取第一用户节点对应的第二加密数据,在得到第一加密数据和第二加密数据后,在第一加密数据和第二加密数据之间进行数值比较处理,并在第一加密数据和第二加密数据中对应随机数的部分相同,且第一加密数据中对应的Token数的部分小于或等于第二加密数据中对应的Token数的部分时,确定验证通过,否则验证失败。本发明实施例提升了区块链中的Token数据的保密性,保护了用户隐私。

Description

基于区块链的交易验证方法、记账节点及介质
技术领域
本发明实施例涉及区块链技术领域,尤其涉及一种基于区块链的交易验证方法、记账节点及介质。
背景技术
在相关技术中,Token(“令牌”)可以采用同态加密算法加密后记录在区块链中,同时可以采用同态加密机制对区块链中的交易进行验证,但是在该机制下,攻击者仍旧可以通过多次尝试验证比较,大致确定用户节点拥有的Token数的范围,甚至可以碰撞尝试出所有区块链用户节点的Token数,对区块链中用户节点的隐私构成威胁。
发明内容
本发明实施例提供一种基于区块链的交易验证方法、记账节点及介质,用以提升区块链中的Token数据的保密性,保护用户隐私。
本发明实施例第一方面提供一种基于区块链的交易验证方法,在该方法中,区块链中各节点拥有的Token数与各节点自身生成的随机数构成字符串,该字符串采用预设的同态加密算法以及各节点自身的公钥加密后,记录在所述区块链的账本中,该方法包括:
记账节点接收第二用户节点发送的交易信息,所述交易信息包括第一加密数据,其中,所述第一加密数据为所述第二用户节点采用所述同态加密算法对第一字符串加密得到的,所述第一字符串由所述第一用户节点向所述第二用户节点发送的随机数和所述第一用户节点目标向所述第二用户节点转移的Token数构成;
所述记账节点从所述区块链的账本中获取所述第一用户节点对应的第二加密数据,所述第二加密数据为采用所述同态加密算法对第二字符串加密得到的,所述第二字符串由所述随机数和所述第一用户节点拥有的Token数构成;
所述记账节点在所述第一加密数据和所述第二加密数据之间进行数值比较处理,若所述第一加密数据和所述第二加密数据中对应所述随机数的部分相同,所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分,则验证通过,否则验证失败。
在一种实施方式中,所述记账节点在所述第一加密数据和所述第二加密数据之间进行数值比较处理,包括:
将所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分进行异或处理,若所述异或处理的结果为零,则确定所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分相同。
在一种实施方式中,所述记账节点在所述第一加密数据和所述第二加密数据之间进行数值比较处理,包括:
计算所述第一加密数据中对应的Token数的部分与所述第二加密数据中对应的Token数的部分的差值,若所述差值小于或等于零,则确定所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分。
在一种实施方式中,所述同态加密算法为全同态加密算法。
在一种实施方式中,所述方法还包括:
若验证失败,向所述第一用户节点发送用于指示数额不足的通知消息。
本发明实施例第二方面提供一种记账节点,该记账节点适用于一种区块链,所述区块链中各节点拥有的Token数与各节点自身生成的随机数构成字符串,该字符串采用预设的同态加密算法以及各节点自身的公钥加密后,记录在所述区块链的账本中,所述记账节点包括:处理器和存储器,所述存储器中存储有指令,当所述处理器执行所述指令时执行如下操作:
接收第二用户节点发送的交易信息,所述交易信息包括第一加密数据,其中,所述第一加密数据为所述第二用户节点采用所述同态加密算法对第一字符串加密得到的,所述第一字符串由所述第一用户节点向所述第二用户节点发送的随机数和所述第一用户节点目标向所述第二用户节点转移的Token数构成;
从所述区块链的账本中获取所述第一用户节点对应的第二加密数据,所述第二加密数据为采用所述同态加密算法对第二字符串加密得到的,所述第二字符串由所述随机数和所述第一用户节点拥有的Token数构成;
在所述第一加密数据和所述第二加密数据之间进行数值比较处理,若所述第一加密数据和所述第二加密数据中对应所述随机数的部分相同,所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分,则验证通过,否则验证失败。
在一种实施方式中,所述处理器在所述第一加密数据和所述第二加密数据之间进行数值比较处理时,用于:
将所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分进行异或处理,若所述异或处理的结果为零,则确定所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分相同。
在一种实施方式中,所述处理器在所述第一加密数据和所述第二加密数据之间进行数值比较处理时,还用于:
计算所述第一加密数据中对应的Token数的部分与所述第二加密数据中对应的Token数的部分的差值,若所述差值小于或等于零,则确定所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分。
在一种实施方式中,所述同态加密算法为全同态加密算法。
本发明实施例第三方面提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的方法。
在本发明实施例中,区块链中各节点拥有的Token数与各节点自身生成的随机数构成字符串,该字符串采用预设的同态加密算法以及各节点自身的公钥加密并记录在区块链的账本上,在第一用户节点与第二用户节点执行交易时,记账节点接收第二用户节点发送的交易信息并从区块链的账本中获取第一用户节点对应的第二加密数据,其中,该交易信息包括第一加密数据,第一加密数据为第二用户节点采用同态加密算法对第一字符串加密得到的,第一字符串由第一用户节点向第二用户节点发送的随机数和第一用户节点目标向第二用户节点转移的Token数构成;第二加密数据为采用同态加密算法对第二字符串加密得到的,第二字符串由随机数和第一用户节点拥有的Token数构成;记账节点在得到第一加密数据和第二加密数据后,在第一加密数据和第二加密数据之间进行数值比较处理,并在第一加密数据和第二加密数据中对应随机数的部分相同,且第一加密数据中对应的Token数的部分小于或等于第二加密数据中对应的Token数的部分时,确定验证通过,否则验证失败。由于本发明实施例在对用户节点的Token数进行加密时,不仅仅对Token数加密还要增加一个随机数,该随机数只有在进行交易时才会被用户节点发送给交易对象,除了交易双方其他节点无法获知该随机数,因而交易中除交易双方之外,其他节点无法获知交易双方的Token数,攻击端在无法获得该随机数据的情况下,不易通过碰撞尝试的方式获知用户节点的Token数,提升了区块链中的Token数据的保密性,保护了用户隐私。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种应用场景的示意图;
图2是本发明实施例提供的一种基于区块链的交易验证方法的流程图;
图3是本发明实施例提供的另一种基于区块链的交易验证方法的流程图;
图4是本发明实施例提供的一种记账节点的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤的过程或结构的装置不必限于清楚地列出的那些结构或步骤而是可包括没有清楚地列出的或对于这些过程或装置固有的其它步骤或结构。
本发明实施例提供的基于区块链的交易验证方法,旨在解决现有技术中存在的Token数据的安全性问题,该方法可以适用于图1所示的通信系统。如图1所示,该通信系统包括:用户节点11、用户节点12和记账节点13、记账节点14,其中,用户节点11、用户节点12、记账节点13、记账节点14属于同一区块链网络,用户节点11、用户节点12具体可以是终端设备、服务器等设备,记账节点13和记账节点14具体可以是具有记账能力的计算机设备。记账节点13和记账节点14在区块链网络中争夺记账权,取得记账权的记账节点13或记账节点14可以在区块链网络上对用户节点11、用户节点12的交易进行验证和记录。另外,此处只是示意性说明,并不限定该区块链网络的结构和该区块链网络中的节点个数。
下面以具体地实施例对本发明的技术方案以及本发明的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
图2是本发明实施例提供的一种基于区块链的交易验证方法的流程图,在该方法中区块链中各节点拥有的Token数与各节点自身生成的随机数构成字符串,该字符串采用预设的同态加密算法以及各节点自身的公钥加密后,记录在区块链的账本中,以保证区块链中Token数据的保密性。具体的,如图2所示,该方法包括如下步骤:
步骤101、记账节点接收第二用户节点发送的交易信息,所述交易信息包括第一加密数据,其中,所述第一加密数据为所述第二用户节点采用所述同态加密算法对第一字符串加密得到的,所述第一字符串由所述第一用户节点向所述第二用户节点发送的随机数和所述第一用户节点目标向所述第二用户节点转移的Token数构成。
本实施例中所称的记账节点可以示例性的理解为图1场景中的记账节点13或记账节点14,第一用户节点可示例性的理解为图1场景中的用户节点11或用户节点12,当第一用户节点理解为用户节点11时,第二用户节点可示例性的理解为图1场景中的用户节点12,反之当第一节点理解为用户节点12时,第二用户节点可示例性的理解为用户节点11。在本实施例中假设第一用户节点在交易中向第二用户节点转移Token。
在第一用户节点与第二用户节点执行交易时,第一用户节点将其目标转移给第二用户节点的Token的数量广播到区块链中,并通过移动交换网例如短信、P2P等方式将自身生成的有效的随机数发送给第二用户节点,第二用户节点接收到该随机数,以及获知第一用户节点目标转移的Token数后,将接收到的随机数与第一用户节点目标转移的Token数量进行组合构成第一字符串,然后基于第一用户节点的公钥,采用预设的同态加密算法对第一字符串进行加密,得到第一加密数据,并将第一加密数据和第一用户节点的区块链标识发送给记账节点。
例如,当第一用户节点要转移n个Token给第二用户节点,则第一用户节点通过移动交换网络的方式将自身的随机数RandA和数量n告知第二用户节点,第二用户节点基于随机数RandA和数量n生成的字符串为RandA_n,则基于第一用户节点的公钥,采用同态加密算法生成的加密数据为C(RandA_n).当然这里仅为示例说明并不是对本发明实施例的唯一限定。
本实施例中涉及的同态加密算法可以是任意一种同态加密算法,比如全同态加密算法、加法同态加密算法等。
步骤102、所述记账节点从所述区块链的账本中获取所述第一用户节点对应的第二加密数据,所述第二加密数据为采用所述同态加密算法对第二字符串加密得到的,所述第二字符串由所述随机数和所述第一用户节点拥有的Token数构成。
示例的,假设第一用户节点当前的随机数为RandA,拥有的Token数为TokenA,随机数RandA和TokenA构成的字符串为RandA_TokenA,基于第一用户节点的公钥采用同态加密算法对RandA_TokenA加密得到的加密数据为C(RandA_TokenA)。
可选的,在一些实施例中为了进一步提高随机数的保密性,区块链中的各节点可以定期对自身生成的随机数进行更新,比如间隔预设时间长度生成一个新的随机数,用新的随机数替换旧的随机数,并采用新生成的随机数据重新对节点自身拥有的Token进行加密。
示例的,假设在上例中第一用户节点更新后的随机数为RandA1,随机数RandA1和TokenA构成的字符串为RandA1_TokenA,基于第一用户节点的公钥采用同态加密算法对RandA1_TokenA加密得到的加密数据为C(RandA1_TokenA),即更新后的加密数据为C(RandA1_TokenA)。
步骤103、所述记账节点在所述第一加密数据和所述第二加密数据之间进行数值比较处理,若所述第一加密数据和所述第二加密数据中对应所述随机数的部分相同,所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分,则验证通过,否则验证失败。
在本实施例中对第一加密数据和第二加密数据进行比较的目的在于,验证第一用户节点是否有足够的支付能力,即验证第一用户节点用有的Token数是否大于或等于目标转移的Token数n。
可选的,在本实施例中可以通过预设的比较模型来对第一用户节点的支付能力进行验证,具体的,可以将第一加密数据和第二加密数据作为比较模型的输入,当模型的输出值为预设数值比如“1”时,确定第一加密数据和第二加密数据中对应随机数的部分相同,且第一加密数据中对应的Token数的部分小于或等于第二加密数据中对应的Token数的部分,验证通过,否则验证失败。其中,在验证失败时,记账节点可以向第一用户节点发送用于指示数额不足的通知消息,以使第一用户节点尽快补足数额。
在本实施例中,区块链中各节点拥有的Token数与各节点自身生成的随机数构成字符串,该字符串采用预设的同态加密算法以及各节点自身的公钥加密并记录在区块链的账本上,在第一用户节点与第二用户节点执行交易时,记账节点接收第二用户节点发送的交易信息并从区块链的账本中获取第一用户节点对应的第二加密数据,其中,该交易信息包括第一加密数据,第一加密数据为第二用户节点采用同态加密算法对第一字符串加密得到的,第一字符串由第一用户节点向第二用户节点发送的随机数和第一用户节点目标向第二用户节点转移的Token数构成;第二加密数据为采用同态加密算法对第二字符串加密得到的,第二字符串由随机数和第一用户节点拥有的Token数构成;记账节点在得到第一加密数据和第二加密数据后,在第一加密数据和第二加密数据之间进行数值比较处理,并在第一加密数据和第二加密数据中对应随机数的部分相同,且第一加密数据中对应的Token数的部分小于或等于第二加密数据中对应的Token数的部分时,确定验证通过,否则验证失败。由于本实施例在对用户节点的Token数进行加密时,不仅仅对Token数加密还要增加一个随机数,该随机数只有在进行交易时才会被用户节点发送给交易对象,除了交易双方其他节点无法获知该随机数,因而交易中除交易双方之外,其他节点无法获知交易双方的Token数,攻击端在无法获得该随机数据的情况下,不易通过碰撞尝试的方式获知用户节点的Token数,提升了区块链中的Token数据的保密性,保护了用户隐私。
图3是本发明实施例提供的另一种基于区块链的交易验证方法的流程图,如图3所示,在图2实施例的基础上,该方法包括:
步骤201、记账节点接收第二用户节点发送的交易信息,所述交易信息包括第一加密数据,其中,所述第一加密数据为所述第二用户节点采用所述同态加密算法对第一字符串加密得到的,所述第一字符串由所述第一用户节点向所述第二用户节点发送的随机数和所述第一用户节点目标向所述第二用户节点转移的Token数构成。
步骤202、所述记账节点从所述区块链的账本中获取所述第一用户节点对应的第二加密数据,所述第二加密数据为采用所述同态加密算法对第二字符串加密得到的,所述第二字符串由所述随机数和所述第一用户节点拥有的Token数构成。
步骤203、将所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分进行异或处理,若所述异或处理的结果为零,则确定所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分相同。
步骤204、计算所述第一加密数据中对应的Token数的部分与所述第二加密数据中对应的Token数的部分的差值,若所述差值小于或等于零,则确定所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分。
其中,步骤204和步骤203可以并行执行。
步骤205、若所述第一加密数据和所述第二加密数据中对应所述随机数的部分相同,所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分,则验证通过,否则验证失败。
本实施例的有益效果与图2实施例类似,在这里不再赘述。
图4是本发明实施例提供的一种记账节点的结构示意图,该记账节点适用于一种区块链,所述区块链中各节点拥有的Token数与各节点自身生成的随机数构成字符串,该字符串采用预设的同态加密算法以及各节点自身的公钥加密后,记录在所述区块链的账本中,如图4所示,记账节点40包括:
处理器41和存储器42,所述存储器42中存储有指令,当所述处理器41执行所述指令时执行如下操作:
接收第二用户节点发送的交易信息,所述交易信息包括第一加密数据,其中,所述第一加密数据为所述第二用户节点采用所述同态加密算法对第一字符串加密得到的,所述第一字符串由所述第一用户节点向所述第二用户节点发送的随机数和所述第一用户节点目标向所述第二用户节点转移的Token数构成;
从所述区块链的账本中获取所述第一用户节点对应的第二加密数据,所述第二加密数据为采用所述同态加密算法对第二字符串加密得到的,所述第二字符串由所述随机数和所述第一用户节点拥有的Token数构成;
在所述第一加密数据和所述第二加密数据之间进行数值比较处理,若所述第一加密数据和所述第二加密数据中对应所述随机数的部分相同,所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分,则验证通过,否则验证失败。
在一种实施方式中,所述处理器在所述第一加密数据和所述第二加密数据之间进行数值比较处理时,用于:
将所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分进行异或处理,若所述异或处理的结果为零,则确定所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分相同。
在一种实施方式中,所述处理器在所述第一加密数据和所述第二加密数据之间进行数值比较处理时,还用于:
计算所述第一加密数据中对应的Token数的部分与所述第二加密数据中对应的Token数的部分的差值,若所述差值小于或等于零,则确定所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分。
在一种实施方式中,所述同态加密算法为全同态加密算法。
本实施例提供的记账节点能够执行图2或图3实施例的方法,其执行方和有益效果类似,在这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述图2或图3提供的方法。
最后需要说明的是,本领域普通技术人员可以理解上述实施例方法中的全部或者部分流程,是可以通过计算机程序来指令相关的硬件完成,所述的程序可存储于一计算机可读存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可以为磁盘、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。
本发明实施例中的各个功能单元可以集成在一个处理模块中,也可以是各个单元单独的物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现,并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。上述提到的存储介质可以是只读存储器、磁盘或光盘等。
以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.一种基于区块链的交易验证方法,其特征在于,区块链中各节点拥有的Token数与各节点自身生成的随机数构成字符串,该字符串采用预设的同态加密算法以及各节点自身的公钥加密后,记录在所述区块链的账本中,所述方法包括:
记账节点接收第二用户节点发送的交易信息,所述交易信息包括第一加密数据,其中,所述第一加密数据为所述第二用户节点采用所述同态加密算法对第一字符串加密得到的,所述第一字符串由所述第一用户节点向所述第二用户节点发送的随机数和所述第一用户节点目标向所述第二用户节点转移的Token数构成;
所述记账节点从所述区块链的账本中获取所述第一用户节点对应的第二加密数据,所述第二加密数据为采用所述同态加密算法对第二字符串加密得到的,所述第二字符串由所述随机数和所述第一用户节点拥有的Token数构成;
所述记账节点在所述第一加密数据和所述第二加密数据之间进行数值比较处理,若所述第一加密数据和所述第二加密数据中对应所述随机数的部分相同,所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分,则验证通过,否则验证失败。
2.根据权利要求1所述的方法,其特征在于,所述记账节点在所述第一加密数据和所述第二加密数据之间进行数值比较处理,包括:
将所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分进行异或处理,若所述异或处理的结果为零,则确定所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分相同。
3.根据权利要求2所述的方法,其特征在于,所述记账节点在所述第一加密数据和所述第二加密数据之间进行数值比较处理,包括:
计算所述第一加密数据中对应的Token数的部分与所述第二加密数据中对应的Token数的部分的差值,若所述差值小于或等于零,则确定所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述同态加密算法为全同态加密算法。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若验证失败,向所述第一用户节点发送用于指示数额不足的通知消息。
6.一种记账节点,该记账节点适用于一种区块链,其特征在于,所述区块链中各节点拥有的Token数与各节点自身生成的随机数构成字符串,该字符串采用预设的同态加密算法以及各节点自身的公钥加密后,记录在所述区块链的账本中,所述记账节点包括:处理器和存储器,所述存储器中存储有指令,当所述处理器执行所述指令时执行如下操作:
接收第二用户节点发送的交易信息,所述交易信息包括第一加密数据,其中,所述第一加密数据为所述第二用户节点采用所述同态加密算法对第一字符串加密得到的,所述第一字符串由所述第一用户节点向所述第二用户节点发送的随机数和所述第一用户节点目标向所述第二用户节点转移的Token数构成;
从所述区块链的账本中获取所述第一用户节点对应的第二加密数据,所述第二加密数据为采用所述同态加密算法对第二字符串加密得到的,所述第二字符串由所述随机数和所述第一用户节点拥有的Token数构成;
在所述第一加密数据和所述第二加密数据之间进行数值比较处理,若所述第一加密数据和所述第二加密数据中对应所述随机数的部分相同,所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分,则验证通过,否则验证失败。
7.根据权利要求6所述的记账节点,其特征在于,所述处理器在所述第一加密数据和所述第二加密数据之间进行数值比较处理时,用于:
将所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分进行异或处理,若所述异或处理的结果为零,则确定所述第一加密数据中对应随机数的部分与所述第二加密数据中对应随机数的部分相同。
8.根据权利要求7所述的记账节点,其特征在于,所述处理器在所述第一加密数据和所述第二加密数据之间进行数值比较处理时,还用于:
计算所述第一加密数据中对应的Token数的部分与所述第二加密数据中对应的Token数的部分的差值,若所述差值小于或等于零,则确定所述第一加密数据中对应的Token数的部分小于或等于所述第二加密数据中对应的Token数的部分。
9.根据权利要求6-8中任一项所述的记账节点,其特征在于,所述同态加密算法为全同态加密算法。
10.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-5中任一项所述的方法。
CN201911010112.4A 2019-10-22 2019-10-22 基于区块链的交易验证方法、记账节点及介质 Pending CN110730187A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911010112.4A CN110730187A (zh) 2019-10-22 2019-10-22 基于区块链的交易验证方法、记账节点及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911010112.4A CN110730187A (zh) 2019-10-22 2019-10-22 基于区块链的交易验证方法、记账节点及介质

Publications (1)

Publication Number Publication Date
CN110730187A true CN110730187A (zh) 2020-01-24

Family

ID=69222876

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911010112.4A Pending CN110730187A (zh) 2019-10-22 2019-10-22 基于区块链的交易验证方法、记账节点及介质

Country Status (1)

Country Link
CN (1) CN110730187A (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170244553A1 (en) * 2016-02-24 2017-08-24 Commissariat A L'energie Atomique Et Aux Energies Alternatives Method for confidential execution of a program operating on data encrypted by a homomorphic encryption
CN107666388A (zh) * 2016-07-28 2018-02-06 郑珂威 基于完全同态加密方法的区块链信息加密方法
CN108418783A (zh) * 2017-09-01 2018-08-17 矩阵元技术(深圳)有限公司 一种保护区块链智能合约隐私的方法、介质
CN108833095A (zh) * 2018-06-25 2018-11-16 北京奇虎科技有限公司 区块链中的行为验证方法、节点、系统及电子设备
CN109039578A (zh) * 2018-09-04 2018-12-18 重庆第二师范学院 基于同态加密的隐私保护加密方法、信息数据处理终端
CN109242485A (zh) * 2018-08-13 2019-01-18 阿里巴巴集团控股有限公司 区块链交易方法及装置、电子设备
CN109359971A (zh) * 2018-08-06 2019-02-19 阿里巴巴集团控股有限公司 区块链交易方法及装置、电子设备
CN109359974A (zh) * 2018-08-30 2019-02-19 阿里巴巴集团控股有限公司 区块链交易方法及装置、电子设备
CN109544129A (zh) * 2018-10-26 2019-03-29 阿里巴巴集团控股有限公司 区块链交易方法及装置、电子设备
CN110073633A (zh) * 2018-11-07 2019-07-30 阿里巴巴集团控股有限公司 使用同态加密的区块链数据保护
CN110176983A (zh) * 2019-05-22 2019-08-27 西安电子科技大学 基于全同态加密的隐私保护关联规则挖掘方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170244553A1 (en) * 2016-02-24 2017-08-24 Commissariat A L'energie Atomique Et Aux Energies Alternatives Method for confidential execution of a program operating on data encrypted by a homomorphic encryption
CN107666388A (zh) * 2016-07-28 2018-02-06 郑珂威 基于完全同态加密方法的区块链信息加密方法
CN108418783A (zh) * 2017-09-01 2018-08-17 矩阵元技术(深圳)有限公司 一种保护区块链智能合约隐私的方法、介质
CN108833095A (zh) * 2018-06-25 2018-11-16 北京奇虎科技有限公司 区块链中的行为验证方法、节点、系统及电子设备
CN109359971A (zh) * 2018-08-06 2019-02-19 阿里巴巴集团控股有限公司 区块链交易方法及装置、电子设备
CN109242485A (zh) * 2018-08-13 2019-01-18 阿里巴巴集团控股有限公司 区块链交易方法及装置、电子设备
CN109359974A (zh) * 2018-08-30 2019-02-19 阿里巴巴集团控股有限公司 区块链交易方法及装置、电子设备
CN109039578A (zh) * 2018-09-04 2018-12-18 重庆第二师范学院 基于同态加密的隐私保护加密方法、信息数据处理终端
CN109544129A (zh) * 2018-10-26 2019-03-29 阿里巴巴集团控股有限公司 区块链交易方法及装置、电子设备
CN110073633A (zh) * 2018-11-07 2019-07-30 阿里巴巴集团控股有限公司 使用同态加密的区块链数据保护
CN110176983A (zh) * 2019-05-22 2019-08-27 西安电子科技大学 基于全同态加密的隐私保护关联规则挖掘方法

Similar Documents

Publication Publication Date Title
CN112970236B (zh) 协作风险感知认证
CN111209334B (zh) 基于区块链的电力终端数据安全管理方法
US20170208049A1 (en) Key agreement method and device for verification information
US20070220271A1 (en) Online creation and delivery of cryptographically verifiable one-time password tokens
CN108243176B (zh) 数据传输方法和装置
MX2007009790A (es) Secreto compartido de contexto limitado.
CN110545285B (zh) 一种基于安全芯片的物联网终端安全认证方法
CN111130798B (zh) 一种请求鉴权方法及相关设备
CN105447715A (zh) 用于与第三方合作的防盗刷电子优惠券的方法和装置
CN112968910B (zh) 一种防重放攻击方法和装置
CN111148094A (zh) 5g用户终端的注册方法、用户终端设备及介质
CN112989426A (zh) 授权认证方法及装置、资源访问令牌的获取方法
CN104243452B (zh) 一种云计算访问控制方法及系统
CN110557246A (zh) 基于一次性非对称密钥对和可移动身份识别装置的抗量子计算门禁方法和系统
JP2017524306A (ja) 暗号化操作における悪意のある変更に対する保護
CN109302442B (zh) 一种数据存储证明方法及相关设备
CN115242553A (zh) 一种支持安全多方计算的数据交换方法及系统
CN108900595B (zh) 访问云存储服务器数据的方法、装置、设备及计算介质
JP2002529778A (ja) 共有無作為性の分散暗号化への組み込み
CN110572392A (zh) 一种基于Hyperledger网络的身份认证方法
CN111901312A (zh) 一种网络访问控制的方法、系统、设备及可读存储介质
CN111132149A (zh) 5g用户终端的注册方法、用户终端设备及介质
CN111148213A (zh) 5g用户终端的注册方法、用户终端设备及介质
CN105100030B (zh) 访问控制方法、系统和装置
CN110766400B (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200124