CN116633578A - 保护身份隐私的方法、装置、终端设备和可读存储介质 - Google Patents

保护身份隐私的方法、装置、终端设备和可读存储介质 Download PDF

Info

Publication number
CN116633578A
CN116633578A CN202310096730.5A CN202310096730A CN116633578A CN 116633578 A CN116633578 A CN 116633578A CN 202310096730 A CN202310096730 A CN 202310096730A CN 116633578 A CN116633578 A CN 116633578A
Authority
CN
China
Prior art keywords
node
identification code
transaction
supervision
user
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
CN202310096730.5A
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.)
Hangzhou Qulian Technology Co Ltd
Original Assignee
Hangzhou Qulian Technology 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 Hangzhou Qulian Technology Co Ltd filed Critical Hangzhou Qulian Technology Co Ltd
Priority to CN202310096730.5A priority Critical patent/CN116633578A/zh
Publication of CN116633578A publication Critical patent/CN116633578A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • H04L63/0414Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden during transmission, i.e. party's identity is protected against eavesdropping, e.g. by using temporary identifiers, but is known to the other party or parties involved in the communication
    • 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/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Finance (AREA)
  • Bioethics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Accounting & Taxation (AREA)
  • Medical Informatics (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本申请属于区块链技术领域,尤其涉及一种保护身份隐私的方法、装置、终端设备和可读存储介质。在该方法中,用户节点向交易节点提供的监管交易凭证的第一证明,是基于监管节点发放的第一监管节点标识码和目标因子生成的,由于目标因子为M个第一因子中的一个,且M个第一因子均不相同,因此,同一用户在多次交易时可以通过第一监管节点标识码与多个第一因子生成包括第一证明在内的多个不同的证明,这样,多个不同的证明可以监管同一个交易凭证的合法性。这样多笔交易就不会被联系在一起,即使在多笔交易后,用户暴露了除账户地址以外的所有属性参数,第三方也无法获知这些属性参数是否来源于同一用户,保护了用户的身份隐私。

Description

保护身份隐私的方法、装置、终端设备和可读存储介质
技术领域
本申请属于区块链领域,尤其涉及一种保护身份隐私的方法、装置、终端设备和可读存储介质。
背景技术
现有的基于区块链的交易方法,为了防止非正常的交易的发生,通过监管节点对交易的合法性进行监管。
但是现有的监管方法,往往会出现用户节点的身份隐私被泄露的问题,存在极大的安全隐患。
发明内容
本申请实施例提供一种保护身份隐私的方法、装置、终端设备和存储介质,可以在监管交易的合法性的同时,保护用户的身份隐私。
第一方面,提供了一种保护身份隐私的方法,应用于监管节点,包括:
接收组织节点发送的交易凭证、第一监管节点标识码和M个第一因子,所述第一监管标识码用于在监管节点中标识所述用户节点的身份,所述M个第一因子不相同;
基于所述第一监管节点标识码和目标因子,生成第一证明,所述目标因子为所述M个第一因子中的一个第一因子;
向交易节点发送第一签名消息和所述第一证明,以使所述交易节点基于所述第一证明验证所述交易凭证是否具有合法性,所述第一签名消息是基于所述交易凭证和除用于表示所述用户节点的账户地址的属性参数以外的多个属性参数中的至少一个属性参数对待签名消息进行签名得到的,所述多个属性参数用于表征用户的不同属性。
本申请实施例中,用户节点在交易时向交易节点提供的监管交易凭证的第一证明,是基于第一监管节点标识码和目标因子生成的,由于目标因子为M个第一因子中的一个,且M个第一因子均不相同,因此,同一用户在多次交易时可以通过第一监管节点标识码与多个第一因子生成包括第一证明在内的多个不同的证明,这样,多个不同的证明可以监管同一个交易凭证的合法性。同一个用户可以利用多个不同的证明发送多笔交易,这样多笔交易就不会被联系在一起,即使在多笔交易后,用户暴露了除账户地址以外的所有属性参数,第三方也无法获知这些属性参数是否来源于同一用户,保护了用户的身份隐私。
在一个实施例中,所述方法还包括:
将所述目标因子存储在第一列表;
若所述第一列表中包括所述M个第一因子,则向所述监管节点发送更新消息,以使得所述监管节点更新所述M个第一因子;
接收所述监管节点通过所述组织节点发送的更新后的多个第一因子。
本申请实施例中,由于第一列表中包括所述M个第一因子,所以用户节点在利用同一交易凭证进行交易时,已经把可以生成不同的证明对应的M个第一因子用完了,因此向监管节点发送更新消息,以使得监管节点更新M个第一因子,用户基于更新后的多个第一因子生成不同的第一证明,这样,同一用户在进行多次交易时,可以用不同的第一证明去交易,保护了用户的身份隐私。
在一个实施例中,所述基于所述第一监管节点标识码和目标因子,生成第一证明,包括:
根据以下公式,基于所述第一监管节点标识码和目标因子,生成第一证明,所述公式为:
R=gi r
其中,R代表所述第一证明,gi代表所述目标因子,r代表所述第一监管节点生成码。
第二方面,提供了一种保护身份隐私的方法,应用于监管节点,包括:
接收组织节点发送的第一组织节点标识码,所述第一组织节点标识码用于在所述组织节点中标识用户节点的身份;
基于所述第一组织节点标识码,生成第一监管节点标识码和M个第一因子,所述第一监管节点标识码用于在所述监管节点中标识所述用户节点的身份,所述M个第一因子不相同;
向所述组织节点发送所述第一监管节点标识码和所述M个第一因子,以使所述组织节点基于所述第一监管节点标识码确定所述用户节点的交易凭证,并使所述用户节点在利用所述交易凭证进行交易时基于所述第一监管节点标识码和目标因子生成第一证明,所述目标因子为所述M个第一因子中的一个,所述第一证明用于监管所述交易凭证的合法性。
本申请实施例的有益效果可参见第一方面的相关描述,此处不再赘述。
在一个实施例中,所述方法还包括:
接收所述用户节点发送的更新消息;
根据所述更新消息更新所述M个第一因子;
通过所述组织节点向所述用户节点发送更新后的多个第一因子。
本申请实施例中,监管节点可以根据更新消息更新M个第一因子,用户节点基于更新后的多个第一因子生成不同第一证明,这样,同一用户在进行多次交易时,可以用不同的第一证明去交易,保护了用户的身份隐私。
在一个实施例中,所述方法还包括:
接收交易节点发送的验证请求;
基于第二列表中N个监管节点标识码中每个监管节点标识码和所述每个监管节点标识码对应的多个第一因子,确定所述每个监管节点标识码对应的多个证明,所述第二列表中存储有已被吊销的至少一个交易凭证对应的监管节点标识码,所述第一监管节点标识码是所述N个监管节点标识码中的一个;
向所述交易节点发送第三列表,以使所述交易节点基于所述第三列表对用户节点的交易凭证是否具有合法性进行验证,所述第三列表中包括所述多个证明。
在一个实施例中,所述监管节点中配置有第四列表,所述第四列表中包含至少一个监管节点标识码和至少一个组织节点标识码,所述至少一个监管节点标识码和所述至少一个组织节点标识码一一对应,所述方法还包括:
接收吊销证据和所述第一组织节点标识码;
若所述吊销证据通过验证,则在所述第四列表中确定与所述第一组织节点标识码对应的所述第一监管节点标识码;
将所述第一监管节点标识码存储在所述第二列表。
在一个实施例中,所述监管节点中配置有第四列表,所述第四列表中包含至少一个监管节点标识码和至少一个组织节点标识码,所述至少一个监管节点标识码和所述至少一个组织节点标识码一一对应,所述方法还包括:
接收吊销证据、所述第一证明和所述目标因子;
若所述吊销证据通过验证,则基于所述目标因子和所述第四列表中的所述至少一个监管节点标识码确定第二证明;
若所述第一证明与所述第二证明相同,则将所述第二证明对应的监管节点标识码存储在所述第二列表。
第三方面,提供了一种保护身份隐私的方法,应用于交易节点,包括:
接收用户节点发送的第一证明和第一签名信息,所述第一证明是基于第一监管节点标识码和目标因子得到的,所述第一监管节点标识码用于在监管节点中标识所述用户节点的身份,所述目标因子为M个第一因子中的一个第一因子,所述M个第一因子不相同,所述第一签名消息是基于所述交易凭证和除用于表示所述用户节点的账户地址的属性参数以外的多个属性参数中的至少一个属性参数对待签名消息进行签名得到的,所述多个属性参数用于表征用户的不同属性;
基于所述第一证明对所述交易凭证是否具有合法性进行验证。
本申请实施例的有益效果可参见第一方面的相关描述,此处不再赘述。
在一个实施例中,所述基于所述第一证明对所述交易凭证是否具有合法性进行验证,包括:
向所述监管节点发送验证请求;
接收所述监管节点发送的第三列表,所述第三列表中存储有被吊销的至少一个交易凭证对应的多个证明;
若所述用户节点发送的第一证明与所述第三列表中的任一证明相同,则所述交易凭证不具有合法性。
第四方面,提供了一种保护身份隐私的装置,应用于用户节点,包括:第一处理单元;
所述第一处理单元用于:
接收组织节点发送的交易凭证、第一监管节点标识码和M个第一因子,所述第一监管标识码用于在监管节点中标识所述用户节点的身份,所述M个第一因子不相同;
基于所述第一监管节点标识码和目标因子,生成第一证明,所述目标因子为所述M个第一因子中的一个第一因子;
向交易节点发送第一签名消息和所述第一证明,以使所述交易节点基于所述第一证明验证所述交易凭证是否具有合法性,所述第一签名消息是基于所述交易凭证和除用于表示所述用户节点的账户地址的属性参数以外的多个属性参数中的至少一个属性参数对待签名消息进行签名得到的,所述多个属性参数用于表征用户的不同属性。
可以理解的是,上述第四方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
第五方面,提供了一种保护身份隐私的装置,应用于监管节点,包括:第二处理单元;
所述第二处理单元用于:
接收组织节点发送的第一组织节点标识码,所述第一组织节点标识码用于在所述组织节点中标识用户节点的身份;
基于所述第一组织节点标识码,生成第一监管节点标识码和M个第一因子,所述第一监管节点标识码用于在所述监管节点中标识所述用户节点的身份,所述M个第一因子不相同;
向所述组织节点发送所述第一监管节点标识码和所述M个第一因子,以使所述组织节点基于所述第一监管节点标识码确定所述用户节点的交易凭证,并使所述用户节点在利用所述交易凭证进行交易时基于所述第一监管节点标识码和目标因子生成第一证明,所述目标因子为所述M个第一因子中的一个,所述第一证明用于监管所述交易凭证的合法性。
可以理解的是,上述第五方面的有益效果可以参见上述第二方面中的相关描述,在此不再赘述。
第六方面,提供了一种保护身份隐私的装置,应用于交易节点,包括:第三处理单元;
所述第三处理单元用于:
接收用户节点发送的第一证明和第一签名信息,所述第一证明是基于第一监管节点标识码和目标因子得到的,所述第一监管节点标识码用于在监管节点中标识所述用户节点的身份,所述目标因子为M个第一因子中的一个第一因子,所述M个第一因子不相同,所述第一签名消息是基于所述交易凭证和除用于表示所述用户节点的账户地址的属性参数以外的多个属性参数中的至少一个属性参数对待签名消息进行签名得到的,所述多个属性参数用于表征用户的不同属性;
基于所述第一证明对所述交易凭证是否具有合法性进行验证。
可以理解的是,上述第六方面的有益效果可以参见上述第三方面中的相关描述,在此不再赘述。
第七方面,提供了一种终端设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面、第二方面、或第三方面任一项所述的保护身份隐私的方法。
第八方面,提供了一种芯片,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面、第二方面、或第三方面任一项所述的保护身份隐私的方法。
第九方面,提供可一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面、第二方面、或第三方面任一项所述的保护身份隐私的方法。
可以理解的是,上述第七方面、第八方面八、第九方面的有益效果可以参见上述第一方面、第二方面、第三方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种保护身份隐私的方法的应用场景示意图。
图2是本申请实施例提供的一种保护身份隐私的方法的交互图。
图3是本申请实施例提供的一种更新第一因子的具体过程的交互图。
图4是本申请实施例提供的一种验证第一证明的具体过程的交互图。
图5是本申请实施例提供的一种保护身份隐私的装置的结构示意图。
图6是本申请实施例提供的另一种保护身份隐私的装置的结构示意图。
图7是本申请实施例提供的另一种保护身份隐私的装置的结构示意图。
图8是本申请一实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述,在其它情况中,各个实施例中的具体技术细节可以互相参考,在一个实施例中没有描述的具体系统可参考其它实施例。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
在本申请说明书中描述的参考“本申请实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在另一些实施例中”、“本申请一实施例”、“本申请其他实施例”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
为了更清楚地理解本申请实施例中的各种实现方式,以下首先对本申请实施例中涉及的技术术语进行定义或说明。
1、彼特森承诺:彼特森承诺可应用于审计验证等场景,可以达到匿名保密交易的目的,可以在其他人不知道数额和地址的情况下,保证这笔交易是有效的,任何人在区块链浏览器上都查不到数额和地址信息。彼特森承诺方案是一个二阶段交互协议,它分为两个阶段:在第一个阶段,承诺方随机选择盲因子r按照公式生成包含原始信息v的承诺值c,并将承诺值c发送给验证者;在第二个阶段,承诺揭露,承诺方发送原始信息v,盲因子r给验证者,之后验证者验证承诺者第一个阶段发送给验证者的承诺值c是否与验证者自己计算的值相等。
2、零知识证明:在密码学中,零知识证明或零知识协议是一种方法,通过该方法,一方可以向另一方证明他们知道值x,而无需传达任何信息。零知识证明思想的本质是,通过简单地揭示信息来证明某人具有某些信息的知识是微不足道的。面临的挑战是在不透露信息本身或任何其他信息的情况下证明拥有这种财产。
3、哈希算法:哈希算法又称摘要算法,它的作用是:对任意一组输入数据进行计算,得到一个固定长度的输出摘要。哈希算法最重要的特点就是:相同的输入一定得到相同的输出;不同的输入大概率得到不同的输出。哈希算法的目的就是为了验证原始数据是否被篡改,因此哈希算法可以检验信息是否是相同的,这样的优势可以节省重复文件传送的时间。除此之外,哈希算法还可以检验信息的拥有者是否真实。
4、有限域椭圆曲线算法:该算法中有限域椭圆曲线指的是方程y2=x3+ax+b的坐标(x,y)是有限域F中的元素,一般称有限域F为椭圆曲线的基域,基域F一般有两种情况,一种是阶为2m的有限域,称为二元扩域,用F2m表示;一种是阶为质数p的有限域,称为素域,用Fp表示。有限域椭圆曲线还有一个很重要的概念,称为生成元。简单来说,给定椭圆曲线上的一个点g,可以找到一个最小的n<p,使得对于任意k∈[1,n),且/>此时,g1,…,gn-1所得到的n个椭圆曲线点形成了有限域椭圆曲线群E(Fp,其中,/>定义为无穷远点,数学上将该无穷远点定义为椭圆曲线上的零元。在密码学中,我们实际使用的是给定生成元g的有限域椭圆曲线群E(Fp),此群的阶为n。一般将这个群E(Fp)简单地表示为G。
如背景技术所述,现有的监管方法,往往会出现用户节点的身份隐私被泄露的问题,存在极大的安全隐患。具体的原因在于,现有的监管方案中,组织节点为用户节点发放交易凭证,以及监管节点为用户节点发放一个监管交易凭证的合法性证明,该合法性证明用于监管该交易凭证的合法性。用户每次交易时,是基于用户节点的账户地址以外的其他多个属性参数中的至少一个属性参数和该交易凭证对待签名消息进行签名得到签名消息,基于签名消息和相同的合法性证明进行交易。同一个用户发送的多笔交易通过相同的合法性证明很容易被联系在一起,那么在多笔交易后,第三方很容易根据相同的合法性证明确定多笔交易来源于同一用户,然后通过一定的技术手段破解签名消息之后,即可能得到用户的除账户地址以外的所有属性参数,第三方通过这些属性参数可以推测出用户的身份信息,使用户的身份隐私被泄露。
为了解决上述缺陷,本申请的发明构思为:
用户节点在交易时向交易节点提供的监管交易凭证的第一证明,是基于第一监管节点标识码和目标因子生成的,由于目标因子为M个第一因子中的一个,且M个第一因子均不相同,同一用户在多次交易时可以通过第一监管节点标识码与多个第一因子生成包括第一证明在内的多个不同的证明,这样,多个不同的证明可以监管同一个交易凭证的合法性。同一个用户可以利用多个不同的证明发送多笔交易,这样多笔交易就不会被联系在一起,即使在多笔交易后,用户暴露了除账户地址以外的所有属性参数,第三方也无法获知这些属性参数是否来源于同一用户,保护了用户的身份隐私。
为了说明本申请的技术方案,下面通过具体实施例来进行说明。
请参考图1,如图1所示,图1为本申请实施例提供的一种保护身份隐私的方法的应用场景示意图。为了方便说明,仅示出与本申请相关的部分。该应用场景包括:监管节点10、组织节点20、多个用户节点30、交易节点40。其中,在一些实施例中,监管节点10、组织节点20、多个用户节点30可以是网络节点。具体的可以是终端设备的网络节点、服务的网络节点等。本申请实施例中,交易节点40可以是区块链系统中的区块链节点。
多个用户节点30在向交易节点40发起交易时,需要向组织节点20申请交易凭证。需要说明的是,多个用户节点30对应一个组织节点20,当多个用户节点30其中的一个用户节点30需要发起交易时,该用户节点30向该组织节点20申请交易凭证。当该用户节点30申请交易凭证的请求通过后,该用户节点30获取交易凭证,每个用户节点30具有与该用户节点30自身对应的交易凭证。其中,用户节点30具体可以是台式终端或者是移动终端,移动终端具体可以是手机、平板电脑、笔记本电脑等中的其中一种。
组织节点20对用户节点30的身份真实性以及身份合法性进行验证,当该用户节点30通过验证后,在组织节点20中生成第一组织节点标识码,第一组织节点标识码用于在组织节点中标识用户节点30的身份;组织节点20基于第一组织节点标识码向监管节点10申请第一监管节点标识码,第一监管节点标识码用于在监管节点中标识用户节点30的身份,组织节点20基于第一监管节点标识码生成用户节点30的交易凭证。
监管节点10接收到组织节点20的申请后,生成第一监管节点标识码和M个第一因子,并将第一监管节点标识码和M个第一因子发送给组织节点20,组织节点20将交易凭证、第一监管节点标识码和M个第一因子发送给用户节点30,用户节点30基于交易凭证对待签名消息进行签名得到第一签名消息。用户节点30基于第一监管节点标识码和M个第一因子中的一个目标因子生成第一证明,第一证明用于监管交易凭证的合法性,例如,在交易凭证未被吊销时,用户节点30利用交易凭证去交易就是合法的。在交易凭证已被吊销时,用户节点30利用交易凭证去交易就是非正常的。
交易节点40用于接收用户节点30发送的第一签名消息和第一证明,并对第一签名消息和第一证明进行验证,第一签名信息和第一证明均验证通过后才可以进行交易。
下面对本申请实施例提供的一种保护身份隐私的方法进行详细说明。
请参考图2,图2是本申请实施例提供的一种保护身份隐私的方法200的交互图。
S201、用户节点向组织节点申请交易凭证。
应理解,本申请实施例中用户节点在向组织节点申请交易凭证时,用户节点可以先向组织节点提供用户的多个属性参数以及用户的身份证明,其中,多个属性参数用于表征用户的不同属性,每个属性参数表征用户的一个属性。
本申请实施例中,用户的属性参数可以由用户节点所处的区块链系统确定。可以理解,区块链系统可以确定用户节点设置的属性参数的种类以及确定哪个属性参数用于标识用户的唯一身份。其中,用于表示用户的唯一身份的属性参数是唯一的,用户的多个属性参数可以指示出用户节点的身份。用户节点可以根据不同的区块链系统定义属性参数,例如,用户节点的属性参数可以设置为:账户地址、角色信息、公钥、或归属组织等。在本申请实施例中,账户地址为用于标识用户节点的唯一身份的属性参数,用户节点的账户地址可以是用户节点随机生成的字符串,本申请对账户地址的字符串长度以及用户节点生成字符串的方式不做限制。
需要说明的是,用户节点的归属组织为用户节点和组织节点所属的区块链系统,由于组织节点和用户节点是处于同一区块链系统中,因此组织节点对于用户节点来说是可以完全信任的一方,因此用户节点在向组织节点发送信息时,不需要将信息进行加密,用户节点直接以不加密的明文信息的形式将明文信息发送至组织节点。
本申请实施例中,用户节点在申请交易凭证时,会生成一对密钥对以及一个随机数,用户节点根据组织节点的公钥、用户节点自身的私钥以及该随机数,通过计算生成身份证明,示例地,用户节点计算身份证明的方法为通过密码学中的彼特森承诺完成的。
S202、组织节点对用户节点获取交易凭证的资格进行验证,验证通过后,向监管节点申请第一监管节点标识码。
本申请实施例中,组织节点对用户节点获取凭证的资格进行验证的过程可以包括:组织节点可以根据身份证明以及组织节点自身的公钥,通过密码学中的彼特森承诺计算出验证值,组织节点将验证值与身份证明的值进行对比;若验证值等于身份证明的值,则说明此次验证通过;若验证值不等于身份证明,则说明此次验证不通过。
本申请实施例中,在此次验证通过之后,组织节点会生成第一组织节点标识码。应理解,第一组织节点标识码可以是随机生成的字符串,用于在组织节点中标识用户节点的身份。本申请实施例对字符串的长度以及生成一随机数的方式不做限制。
S203、组织节点向监管节点申请第一监管节点标识码。
应理解,为了使组织节点发放的交易凭证得到监管节点的监管,组织节点向监管节点发送第一组织节点标识码,根据第一组织节点标识码申请第一监管节点标识码。
本申请实施例中第一监管节点标识码可以是随机生成的字符串,用于在监管节点中标识用户节点的身份。第一监管节点标识码和第一监管节点标识码一一对应。
S204、监管节点接收组织节点发送的第一组织节点标识码。
S205、监管节点基于第一组织节点标识码,生成第一监管节点标识码和M个第一因子。
本申请实施例中,监管节点接收到第一组织节点标识码之后,基于第一监管节点标识码,生成第一监管节点标识码和M个第一因子。M个第一因子均不相同。
应理解,监管节点基于第一组织节点标识码,生成第一监管节点标识码和M个第一因子的过程包括:对第一组织节点标识码进行计算,生成第一监管节点标识码。本申请实施例中可以利用哈希算法对第一组织节点标识码进行计算,生成第一监管节点标识码。本申请实施例可以在一个纪元内,利用有线域椭圆曲线算法对第一组织节点标识码进行计算,生成M个第一因子。本申请实施例将生成M个第一因子的事件长度成为纪元。
在一些实施例中,第一因子为生成元。
S206、监管节点向组织节点发送第一监管节点标识码和M个第一因子。
S207、组织节点基于第一监管节点标识码,生成交易凭证。
应理解,基于第一监管节点标识码,生成交易凭证的过程可以包括:将第一监管节点标识码输入C-L签名算法中得到交易凭证,其中C-L签名为Camenisch-Lysyanskaya签名,由作者的名字命名。利用C-L签名算法能够可以提高生成的交易凭证的匿名性。
本申请实施例中,交易凭证中包括针对用户的所有的属性参数生成的零知识证明,也就是说,用户的所有属性参数只对应同一个交易凭证。其中,零知识证明是组织节点根据零知识证明思想生成的。
应理解,相比于组织节点针对用户的每一个属性参数都计算生成一个对应的零知识证明的方式,本申请实施例提供的生成交易凭证的方式可以大大减少组织节点计算零知识证明的计算量。
S208、用户节点接收组织节点发送的交易凭证、第一监管节点标识码和M个第一因子。
应理解,用户节点接收的交易凭证是组织节点直接发送的,用户节点接收的第一监管节点标识码和M个第一因子是监管节点通过组织节点发送的。
S209、用户节点基于第一监管节点标识码和目标因子,生成第一证明。
应理解,第一证明用于监管交易凭证的合法性。
本申请实施例中,基于第一监管节点标识码和目标因子,生成第一证明,包括:
根据以下公式,基于第一监管节点标识码和目标因子,生成第一证明,该公式为:
R=gi r
其中,R代表第一证明,gi代表目标因子,r代表第一监管节点标识码。
本申请实施例中,目标因子为M个第一因子中的一个第一因子,M个第一因子均不相同。同一用户进行多次交易时,可利用上述公式,基于相同的第一监管节点标识码和不同的第一因子,生成不同的第一证明。
在用户节点中生成不同的第一证明的意义在于,多个不同的第一证明可以监管同一个交易凭证的合法性。同一个用户可以利用多个不同的第一证明发送多笔交易,这样多笔交易就不会被联系在一起,即使在多笔交易后,用户暴露了除账户地址以外的所有属性参数,第三方也无法获知这些属性参数是否来源于同一用户,保护了用户的身份隐私。
S210、用户节点向交易节点发送第一签名消息和第一证明。
应理解,用户节点在接收到组织节点发送的交易凭证、第一监管节点标识码和M个第一因子之后,基于交易凭证和除用于表示用户节点的账户地址的属性参数以外的多个属性参数中的至少一个属性参数对待签名消息进行签名,得到第一签名消息。
本申请实施例中,用户节点在对待签名消息进行签名时,只需要选择性地披露至少一个属性参数(披露的属性参数不能为账户地址),只披露某些特定属性参数的意义在于在交易节点进行交易时,只需要某些特定的属性参数就可以得到交易结果,因此用户节点就可以只披露某些特定的属性参数,并且披露的属性参数不会影响到用户节点个人的隐私。
示例性地,用户节点的属性参数包括:用户节点的账户地址、用户节点的公钥、用户节点的角色信息以及用户节点的归属组织。那么在用户节点对待签名消息进行签名时,用户节点可以只披露角色信息,而不必披露其他信息。其中,角色信息即为除用户节点的账户地址以外其他多个属性参数中的至少一个属性参数。
举例来说,用户节点不必披露用于标识用户节点的唯一身份的账户地址。如果披露了账户地址,就暴露了用户节点的身份隐私,用户节点在发送交易至交易节点时,交易节点可以通过账户地址追踪到用户节点,违背了本申请实施例对用户节点的身份隐私进行保护的初衷。其中,用户节点的账户地址为用于标识用户节点的唯一身份的属性参数,用户节点的账户地址可以是用户节点随机生成的字符串,本申请对账户地址的字符串长度以及用户节点生成字符串的方式不做限制。
在一些实施例中,第一签名消息是结合了C-L签名和零知识证明思想生成的一个签名。其中,C-L签名用于零知识证明的签名方案中,能够对一组数据进行签名,可以提高签名的匿名性,并降低签名的计算复杂度。需要说明的是,在零知识证明思想中,有两个参与方,两个参与方分别是证明者和验证者,证明者掌握着某个秘密,并且证明者要让验证者相信验证者掌握着秘密,但是又不想将秘密泄露给验证者,因此,证明者和验证者按照一个协议,通过一系列交互,最终验证者会在无法得知秘密的内容的前提下得出一个明确的结论,即证明者是否掌握这个秘密。
S211、交易节点接收用户节点发送的第一证明和第一签名信息。
S212、交易节点基于第一证明对交易凭证是否具有合法性进行验证。
应理解,本申请实施例中交易节点接收到用户节点发送的第一签名消息和第一证明之后,先验证第一证明,若第一证明验证未通过,则交易凭证不具有合法性,若第一证明验证通过,则交易凭证具有合法性。第一证明验证通过后再验证第一签名消息,若第一签名消息验证未通过,则交易失败,第一签名消息验证通过,则交易成功。
本申请实施例中,验证第一签名消息的过程包括:
交易节点通过C-L签名方案,根据组织节点的公钥和用户节点披露的除用于表示用户节点的账户地址的属性参数以外的多个属性参数中的至少一个属性参数计算出第二签名消息,并将第二签名消息与第一签名消息进行比对,如果第二签名消息与第一签名消息相同,则第一签名消息验证通过,否则第一签名消息验证未通过。
本申请实施例中,用户节点在交易时向交易节点提供的监管交易凭证的第一证明,是基于第一监管节点标识码和目标因子生成的,由于目标因子为M个第一因子中的一个,且M个第一因子均不相同,因此,同一用户在多次交易时可以通过第一监管节点标识码与多个第一因子生成包括第一证明在内的多个不同的证明,这样,多个不同的证明可以监管同一个交易凭证的合法性。同一个用户可以利用多个不同的证明发送多笔交易,这样多笔交易就不会被联系在一起,即使在多笔交易后,用户暴露了除账户地址以外的所有属性参数,第三方也无法获知这些属性参数是否来源于同一用户,保护了用户的身份隐私。
在一些实施例中,同一用户进行多次交易时,是基于第一监管节点标识码和不同的第一因子,生成不同的多个证明,但是,如果没有足够的第一因子生成不同的多个证明,例如,同一用户想要进行5次交易,但是只从监管节点接收到4个第一因子,那么,用户会通过用户节点通知监管节点更新第一因子。具体的更新过程请参考图3,图3是本申请实施例提供的一种更新第一因子的具体过程的交互图。
S301、用户节点将目标因子存储在第一列表。
应理解,用户节点中配置有第一列表,第一列表用于存储多个证明中每个证明对应的第一因子。在一些实施例中,为了节省用户节点的存储空间,第一列表中仅存储每个第一因子的标识。
S302、若第一列表中包括M个第一因子,则向监管节点发送更新消息。
本申请实施例中,用户节点在每次交易时,都会基于第一监管节点标识码和目标因子,生成第一证明,并将每次交易生成第一证明对应的目标因子存储在第一列表,如果第一列表中包括M个第一因子,证明用户节点在利用同一交易凭证进行交易时,已经把可以生成不同的证明对应的M个第一因子用完了,继续用M个第一因子中的任一个生成第一证明,就会出现用户在不同交易中,用的相同的第一证明去交易,容易造成身份隐私的泄露。
本申请实施例为了防止身份隐私的泄露,在第一列表中包括M个第一因子时,向监管节点发送更新消息,请求监管节点更新M个第一因子。
S303、监管节点接收用户节点发送的更新消息。
S304、监管节点根据更新消息更新M个第一因子。
应理解,在其他实施例中,可以在一个纪元内,利用有线域椭圆曲线算法对第一组织节点标识码进行计算,生成M个第一因子。那么,本申请实施例更新M个第一因子可以为:在不同纪元内,基于有线域椭圆曲线算法更新M个第一因子。本申请实施例对更新M个第一因子的方法不作限定。
S305、监管节点通过组织节点向用户节点发送更新后的多个第一因子。
S306、用户节点接收监管节点通过组织节点发送的更新后的多个第一因子。
本申请实施例中,用户节点接收到监管节点通过组织节点发送的更新后的多个第一因子后,基于更新后的多个第一因子生成不同的第一证明,这样,同一用户在进行多次交易时,总是用不同的第一证明去交易,保护了用户的身份隐私。
在一些实施例中,为了进一步保护用户的身份隐私,在第一列表中包括M个第一因子时,通知组织节点更新交易凭证,以及通知交易节点更新第一监管节点标识码。基于更新后的交易凭证和除用于表示用户节点的账户地址的属性参数以外的多个属性参数中的至少一个属性参数对待签名消息进行签名,得到更新后的签名消息;基于更新后的第一监管节点标识码和第一因子,生成更新后的第一证明,这样,同一用户在进行多次交易时,可以用不同的签名消息和第一证明去交易,进一步保护了用户的身份隐私。
在一些实施例中,交易节点验证第一证明的过程请参考图4,图4是本申请实施例提供的一种验证第一证明的具体过程的交互图。
S401、用户节点向交易节点发送第一证明。
S402、交易节点向监管节点发送验证请求。
S403、监管节点接收交易节点发送的验证请求。
S404、监管节点基于第二列表中N个监管节点标识码中每个监管节点标识码和每个监管节点标识码对应的多个第一因子,确定每个监管节点标识码对应的多个证明。
应理解,第二列表中存储有已被吊销的至少一个交易凭证对应的监管节点标识码,第一监管节点标识码是N个监管节点标识码中的一个。
S405、监管节点向交易节点发送第三列表。
应理解,第三列表中存储有已被吊销的至少一个交易凭证对应的多个证明。
示例性地,第三列表中的数据是通过以下方式得到的:
基于第二列表中存储的已被吊销的至少一个交易凭证对应的监管节点标识码和每个监管节点标识码对应的多个第一因子,得到已被吊销的至少一个交易凭证对应的多个证明。
示例性地,第二列表中存储的已被吊销的交易凭证对应的监管节点标识码有3个,分别为监管节点标识码A、监管节点标识码B和监管节点标识码C,监管节点标识码A对应3个第一因子,监管节点标识码B对应4个第一因子,监管节点标识码C对应5个第一因子,将监管节点标识码A和3个第一因子得代入公式R=gi r,得到3个证明。其中,R代表证明,gi代表第一因子,r代表监管节点标识码。
同样的,将监管节点标识码B和4个第一因子得代入公式R=gi r,得到4个证明,将监管节点标识码C和5个第一因子得代入公式R=gi r,得到5个证明,那么第三列表中就包含12个证明。
S406、交易节点接收监管节点发送的第三列表,若用户节点发送的第一证明与第三列表中的任一证明相同,则交易凭证不具有合法性。
应理解,第三列表中存储有已被吊销的至少一个交易凭证对应的多个证明,那么,在用户节点发送的第一证明与第三列表中的任一证明相同时,则证明用户节点发送的第一证明对应的交易凭证已被吊销,已被吊销的交易凭证不具有合法性,利用已被吊销的交易凭证进行交易时,该交易就不具有合法性,交易节点就会取消这次交易,使交易失败。
在用户节点发送的第一证明与第三列表中的任一证明均不相同时,则证明用户节点发送的第一证明对应的交易凭证未被吊销,该交易凭证具有合法性,利用未被吊销的交易凭证进行交易时,该交易就是合法的,交易节点不会取消这次交易。
本申请实施例中,交易节点利用第三列表中存储有已被吊销的至少一个交易凭证对应的多个证明对用户节点发送的第一证明进行验证,可以验证出第一证明对应的交易凭证是否已被吊销,在交易凭证已被吊销时,取消交易,防止了区块链中非正常的交易的发生,提升了区块链交易的安全性。
在一些实施例中,第二列表中的数据是通过以下方式得到的:
监管节点接收吊销证据和第一组织节点标识码;若吊销证据通过验证,则在第四列表中确定与第一组织节点标识码对应的第一监管节点标识码;将第一监管节点标识码存储在第二列表。
应理解,监管节点中配置有第四列表,第四列表中包含至少一个监管节点标识码和至少一个组织节点标识码,至少一个监管节点标识码和至少一个组织节点标识码一一对应。
本申请实施例中,每个用户通过用户节点申请交易凭证时,监管节点将从组织节点中接收的组织节点标识码和自身生成的与该组织节点标识码对应的监管节点标识码存储在第四列表中,因此,第四列表中包含至少一个监管节点标识码和至少一个组织节点标识码。示例性地,第四列表可以表示为:
表1
组织节点标识码 监管节点标识码
id1 rid1
id2 rid2
idi ridi
本申请实施例中提供的获取第二列表中的数据,是在众多吊销场景中的一个吊销场景中获取的,该吊销场景可以为:
组织节点发现用户本身或者第三方利用已经获得的交易凭证进行非正常的交易时,组织节点向监管节点发送吊销证据和该已经获得的交易凭证对应的组织节点标识码,监管节点对吊销证据进行验证,验证通过后,在第二列表中搜索与已经获得的交易凭证对应的组织节点标识码对应的监管节点标识码,并将与已经获得的交易凭证对应的组织节点标识码对应的监管节点标识码存储在第二列表中。
示例性地,吊销证据可以为组织节点自定义的声明,该声明是用于声明用户本身或者第三方利用已经获得的交易凭证进行的交易是非正常的交易。在对吊销证据验证时主要是验证该证据的真实性和充分性。
在一些实施例中,也可以在其他吊销场景中获取第二列表中的数据。示例性的,其他吊销场景可以为:其他用户发现已经获得交易凭证的用户本身或者第三方进行非正常的交易时,通过用户节点向监管节点发送吊销证据、第一证明和目标因子。在这种场景下,第二列表中的数据还可以通过以下方式得到:
监管节点接收吊销证据、第一证明和目标因子;若吊销证据通过验证,则基于目标因子和第四列表中的至少一个监管节点标识码确定第二证明;若第一证明与第二证明相同,则将第二证明对应的监管节点标识码存储在第二列表。
应理解,吊销证据可以是用户节点自定义的声明,该声明可以是用于声明用户本身或者第三方利用已经获得的交易凭证进行的交易是非正常的交易。该声明也可以是用于声明已经获得的交易凭证已丢失。
吊销证据验证通过时,首先,监管节点基于目标因子和第四列表中的所有监管节点标识码计算多个证明,具体可以通过公式R=gi r进行计算。
其次,在多个证明中搜索是否与第一证明相同的证明,若多个证明中有与第一证明相同的证明,则将与第一证明相同的证明对应的监管节点标识码存储在第二列表。本申请实施例中,多个证明中与第一证明相同的证明可称为第二证明。
在一些实施例中,其他吊销场景也可以为:监管节点自身发现用户节点利用已获得的交易凭证进行的是非正常的交易。在这种场景下,第二列表中的数据还可以通过以下方式得到:
监管节点确定与已获得的交易凭证对应的监管节点标识,将与已获得的交易凭证对应的监管节点标识存储在第二列表。
在一些实施中,其他吊销场景也可以为:已经获得交易凭证的用户丢失了交易凭证。在这种场景下,第二列表中的数据还可以通过以下方式得到:
通过用户节点向监管节点发送已经获得的交易凭证对应的监管节点标识和吊销证据,若吊销证据验证通过,则将与已获得的交易凭证对应的监管节点标识存储在第二列表。
应理解,吊销证据可以是用户节点自定义的声明,该声明也可以是用于声明已经获得的交易凭证已丢失。
应理解,图4中交易节点对第一证明进行验证时,是利用第三列表中存储的已被吊销的至少一个交易凭证对应的多个证明与第一证明进行对比来进行验证,在其他实施例中,也可以通过其他方式进行验证,示例性地:
交易节点向监管节点发送验证请求时,监管机构在第四列表中剔除已被吊销的至少一个交易凭证对应的监管节点标识码,得到第五列表,第五列表中包括的多个监管节点标识码对应的交易凭证均是未被吊销过的交易凭证。
监管机构基于第五列表中的多个监管节点标识码中每个监管节点标识码和每个监管节点标识码对应的多个第一因子,确定每个监管节点标识码对应的多个证明,并将每个监管节点标识码对应的多个证明存储在第六列表,第六列表中存储有未被吊销的至少一个交易凭证对应的多个证明。
监管节点向交易节点发送第五列表,交易节点接收监管节点发送的第六列表,若用户节点发送的第一证明与第六列表中的任一证明相同,则交易凭证具有合法性。
应理解,第六列表中存储有未被吊销的至少一个交易凭证对应的多个证明,那么,在用户节点发送的第一证明与第六列表中的任一证明相同时,则证明用户节点发送的第一证明对应的交易凭证未被吊销,未被吊销的交易凭证具有合法性。
在用户节点发送的第一证明与第六列表中的任一证明均不相同时,则证明用户节点发送的第一证明对应的交易凭证已被吊销,该交易凭证不具有合法性,利用已被吊销的交易凭证进行交易时,该交易就是非正常的,交易节点就会取消这次交易,使交易失败。
本申请实施例中,交易节点利用第六列表中存储有未被吊销的至少一个交易凭证对应的多个证明对用户节点发送的第一证明进行验证,可以验证出第一证明对应的交易凭证是否未被吊销,在交易凭证未被吊销时,交易正常进行,在交易凭证已被吊销时,取消交易,防止了区块链中非正常的交易的发生,提升了区块链交易的安全性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
请参考图5,图5是本申请实施例提供的一种保护身份隐私的装置50的结构示意图,该装置应用于用户节点,该装置包括:第一处理单元51。
第一处理单元51用于:
接收组织节点发送的交易凭证、第一监管节点标识码和M个第一因子,第一监管标识码用于在监管节点中标识用户节点的身份,M个第一因子不相同;
基于第一监管节点标识码和目标因子,生成第一证明,目标因子为M个第一因子中的一个第一因子;
向交易节点发送第一签名消息和第一证明,以使交易节点基于第一证明验证交易凭证是否具有合法性,第一签名消息是基于交易凭证和除用于表示用户节点的账户地址的属性参数以外的多个属性参数中的至少一个属性参数对待签名消息进行签名得到的,多个属性参数用于表征用户的不同属性。
其中,第一处理单元51还用于:
将目标因子存储在第一列表;
若第一列表中包括M个第一因子,则向监管节点发送更新消息,以使得监管节点更新M个第一因子;
接收监管节点通过组织节点发送的更新后的多个第一因子。
其中,第一处理单元51还用于:
根据以下公式,基于所述第一监管节点标识码和目标因子,生成第一证明,所述公式为:
R=gi r
其中,R代表第一证明,gi代表目标因子,r代表第一监管节点生成码。
请参考图6,图6是本申请实施例提供的另一种保护身份隐私的装置60的结构示意图,该装置应用于监管节点,该装置包括:第二处理单元61。
第二处理单元61用于:
接收组织节点发送的第一组织节点标识码,第一组织节点标识码用于在组织节点中标识用户节点的身份;
基于第一组织节点标识码,生成第一监管节点标识码和M个第一因子,第一监管节点标识码用于在监管节点中标识用户节点的身份,M个第一因子不相同;
向组织节点发送第一监管节点标识码和M个第一因子,以使组织节点基于第一监管节点标识码确定用户节点的交易凭证,并使用户节点在利用交易凭证进行交易时基于第一监管节点标识码和目标因子生成第一证明,目标因子为M个第一因子中的一个,第一证明用于监管交易凭证的合法性。
其中,第二处理单元61还用于:
接收用户节点发送的更新消息;
根据更新消息更新M个第一因子;
通过组织节点向用户节点发送更新后的多个第一因子。
其中,第二处理单元61还用于:
接收交易节点发送的验证请求;
基于第二列表中N个监管节点标识码中每个监管节点标识码和每个监管节点标识码对应的多个第一因子,确定每个监管节点标识码对应的多个证明,第二列表中存储有已被吊销的至少一个交易凭证对应的监管节点标识码,第一监管节点标识码是N个监管节点标识码中的一个;
向交易节点发送第三列表,以使交易节点基于第三列表对用户节点的交易凭证是否具有合法性进行验证,第三列表中包括多个证明。
其中,监管节点中配置有第四列表,第四列表中包含至少一个监管节点标识码和至少一个组织节点标识码,至少一个监管节点标识码和至少一个组织节点标识码一一对应,第二处理单元61还用于:
接收吊销证据和第一组织节点标识码;
若吊销证据通过验证,则在第四列表中确定与第一组织节点标识码对应的第一监管节点标识码;
将第一监管节点标识码存储在第二列表。
其中,监管节点中配置有第四列表,第四列表中包含至少一个监管节点标识码和至少一个组织节点标识码,至少一个监管节点标识码和至少一个组织节点标识码一一对应,第二处理单元61还用于:
接收吊销证据、第一证明和目标因子;
若吊销证据通过验证,则基于目标因子和第四列表中的至少一个监管节点标识码确定第二证明;
若第一证明与第二证明相同,则将第二证明对应的监管节点标识码存储在第二列表。
请参考图7,图7是本申请实施例提供的另一种保护身份隐私的装置70的结构示意图,该装置应用于交易节点,该装置包括:第三处理单元71。
第三处理单元71用于:
接收用户节点发送的第一证明和第一签名信息,第一证明是基于第一监管节点标识码和目标因子得到的,第一监管节点标识码用于在监管节点中标识用户节点的身份,目标因子为M个第一因子中的一个第一因子,M个第一因子不相同,第一签名消息是基于交易凭证和除用于表示用户节点的账户地址的属性参数以外的多个属性参数中的至少一个属性参数对待签名消息进行签名得到的,多个属性参数用于表征用户的不同属性;
基于第一证明对交易凭证是否具有合法性进行验证。
其中,第三处理单元71还用于:
向监管节点发送验证请求;
接收监管节点发送的第三列表,第三列表中存储有被吊销的至少一个交易凭证对应的多个证明;
若用户节点发送的第一证明与第三列表中的任一证明相同,则交易凭证不具有合法性。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
如图8所示,本申请实施例还提供一种终端设备80,包括存储器81、处理器82以及存储在存储器81中并可在处理器22上运行的计算机程序83,处理器82执行计算机程序83时实现上述各实施例的保护身份隐私的方法。
所述处理器82可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器81可以是终端设备80的内部存储单元。所述存储器81也可以是终端设备80的外部存储设备,例如终端设备80上配备的插接式硬盘,智能存储卡(Smart MediaCard,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器81还可以既包括终端设备80的内部存储单元也包括外部存储设备。存储器81用于存储计算机程序以及终端设备80所需的其他程序和数据。存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种芯片,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述各实施例的保护身份隐私的方法。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述各实施例的保护身份隐私的方法。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现上述各实施例的保护身份隐私的方法。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读存储介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (12)

1.一种保护身份隐私的方法,应用于用户节点,其特征在于,包括:
接收组织节点发送的交易凭证、第一监管节点标识码和M个第一因子,所述第一监管标识码用于在监管节点中标识所述用户节点的身份,所述M个第一因子不相同;
基于所述第一监管节点标识码和目标因子,生成第一证明,所述目标因子为所述M个第一因子中的一个第一因子;
向交易节点发送第一签名消息和所述第一证明,以使所述交易节点基于所述第一证明验证所述交易凭证是否具有合法性,所述第一签名消息是基于所述交易凭证和除用于表示所述用户节点的账户地址的属性参数以外的多个属性参数中的至少一个属性参数对待签名消息进行签名得到的,所述多个属性参数用于表征用户的不同属性。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述目标因子存储在第一列表;
若所述第一列表中包括所述M个第一因子,则向所述监管节点发送更新消息,以使得所述监管节点更新所述M个第一因子;
接收所述监管节点通过所述组织节点发送的更新后的多个第一因子。
3.根据权利要求1或2所述的方法,其特征在于,所述基于所述第一监管节点标识码和目标因子,生成第一证明,包括:
根据以下公式,基于所述第一监管节点标识码和目标因子,生成第一证明,所述公式为:
R=gi r
其中,R代表所述第一证明,gi代表所述目标因子,r代表所述第一监管节点生成码。
4.一种保护身份隐私的方法,应用于监管节点,其特征在于,包括:
接收组织节点发送的第一组织节点标识码,所述第一组织节点标识码用于在所述组织节点中标识用户节点的身份;
基于所述第一组织节点标识码,生成第一监管节点标识码和M个第一因子,所述第一监管节点标识码用于在所述监管节点中标识所述用户节点的身份,所述M个第一因子不相同;
向所述组织节点发送所述第一监管节点标识码和所述M个第一因子,以使所述组织节点基于所述第一监管节点标识码确定所述用户节点的交易凭证,并使所述用户节点在利用所述交易凭证进行交易时基于所述第一监管节点标识码和目标因子生成第一证明,所述目标因子为所述M个第一因子中的一个,所述第一证明用于监管所述交易凭证的合法性。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
接收所述用户节点发送的更新消息;
根据所述更新消息更新所述M个第一因子;
通过所述组织节点向所述用户节点发送更新后的多个第一因子。
6.根据权利要求4或5所述的方法,其特征在于,所述方法还包括:
接收交易节点发送的验证请求;
基于第二列表中N个监管节点标识码中每个监管节点标识码和所述每个监管节点标识码对应的多个第一因子,确定所述每个监管节点标识码对应的多个证明,所述第二列表中存储有已被吊销的至少一个交易凭证对应的监管节点标识码,所述第一监管节点标识码是所述N个监管节点标识码中的一个;
向所述交易节点发送第三列表,以使所述交易节点基于所述第三列表对用户节点的交易凭证是否具有合法性进行验证,所述第三列表中包括所述多个证明。
7.根据权利要求6所述的方法,其特征在于,所述监管节点中配置有第四列表,所述第四列表中包含至少一个监管节点标识码和至少一个组织节点标识码,所述至少一个监管节点标识码和所述至少一个组织节点标识码一一对应,所述方法还包括:
接收吊销证据和所述第一组织节点标识码;
若所述吊销证据通过验证,则在所述第四列表中确定与所述第一组织节点标识码对应的所述第一监管节点标识码;
将所述第一监管节点标识码存储在所述第二列表。
8.根据权利要求6所述的方法,其特征在于,所述监管节点中配置有第四列表,所述第四列表中包含至少一个监管节点标识码和至少一个组织节点标识码,所述至少一个监管节点标识码和所述至少一个组织节点标识码一一对应,所述方法还包括:
接收吊销证据、所述第一证明和所述目标因子;
若所述吊销证据通过验证,则基于所述目标因子和所述第四列表中的所述至少一个监管节点标识码确定第二证明;
若所述第一证明与所述第二证明相同,则将所述第二证明对应的监管节点标识码存储在所述第二列表。
9.一种保护身份隐私的方法,应用于交易节点,其特征在于,包括:
接收用户节点发送的第一证明和第一签名信息,所述第一证明是基于第一监管节点标识码和目标因子得到的,所述第一监管节点标识码用于在监管节点中标识所述用户节点的身份,所述目标因子为M个第一因子中的一个第一因子,所述M个第一因子不相同,所述第一签名消息是基于所述交易凭证和除用于表示所述用户节点的账户地址的属性参数以外的多个属性参数中的至少一个属性参数对待签名消息进行签名得到的,所述多个属性参数用于表征用户的不同属性;
基于所述第一证明对所述交易凭证是否具有合法性进行验证。
10.根据权利要求9所述的方法,其特征在于,所述基于所述第一证明对所述交易凭证是否具有合法性进行验证,包括:
向所述监管节点发送验证请求;
接收所述监管节点发送的第三列表,所述第三列表中存储有被吊销的至少一个交易凭证对应的多个证明;
若所述用户节点发送的第一证明与所述第三列表中的任一证明相同,则所述交易凭证不具有合法性。
11.一种终端设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至3、4至8、或9至10任一项所述的保护身份隐私的方法。
12.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3、4至8、或9至10任一项所述的保护身份隐私的方法。
CN202310096730.5A 2023-01-19 2023-01-19 保护身份隐私的方法、装置、终端设备和可读存储介质 Pending CN116633578A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310096730.5A CN116633578A (zh) 2023-01-19 2023-01-19 保护身份隐私的方法、装置、终端设备和可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310096730.5A CN116633578A (zh) 2023-01-19 2023-01-19 保护身份隐私的方法、装置、终端设备和可读存储介质

Publications (1)

Publication Number Publication Date
CN116633578A true CN116633578A (zh) 2023-08-22

Family

ID=87608764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310096730.5A Pending CN116633578A (zh) 2023-01-19 2023-01-19 保护身份隐私的方法、装置、终端设备和可读存储介质

Country Status (1)

Country Link
CN (1) CN116633578A (zh)

Similar Documents

Publication Publication Date Title
CN109714168B (zh) 可信远程证明方法、装置和系统
CN108933667B (zh) 一种基于区块链的公钥证书的管理方法及管理系统
US7958362B2 (en) User authentication based on asymmetric cryptography utilizing RSA with personalized secret
US8122245B2 (en) Anonymity revocation
CN111563261A (zh) 一种基于可信执行环境的隐私保护多方计算方法和系统
CN108696349A (zh) 将可信执行环境用作为证明提供隐私的可信第三方
CN109617692B (zh) 一种基于区块链的匿名登陆方法及系统
CN113569294B (zh) 一种零知识证明方法及装置、电子设备、存储介质
TW202029044A (zh) 區塊鏈交易的產生方法和裝置
KR101004829B1 (ko) 이선형 맵들로부터의 직접적인 익명의 증명을 위한 장치 및방법
CN112380584B (zh) 区块链数据更新方法、装置、电子设备和存储介质
CN111669271B (zh) 用于区块链的凭证管理方法、凭证验证方法以及相关装置
US20210241270A1 (en) System and method of blockchain transaction verification
CN113360943A (zh) 一种区块链隐私数据的保护方法及装置
CN111160908A (zh) 基于区块链的供应链交易隐私保护系统、方法及相关设备
CN112733121A (zh) 数据获取方法、装置、设备及存储介质
CN113779606A (zh) 一种降低隐私泄露风险的信息校验方法及系统
CN111161075B (zh) 区块链交易数据证明监管方法、系统及相关设备
CN117155549A (zh) 密钥分发方法、装置、计算机设备和存储介质
CN116633522A (zh) 一种基于区块链的两方隐私求交方法及系统
Riad et al. A blockchain‐based key‐revocation access control for open banking
CN117040765A (zh) 智能电网终端认证方法、装置、存储介质及计算机设备
CN113159774B (zh) 一种区块链中可监管零知识证明验证方法及系统
CN110943846B (zh) 基于环签名技术的异构身份联盟用户信誉值传递方法
CN116633578A (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