CN105284074A - 用于最小披露凭证的身份托管管理 - Google Patents

用于最小披露凭证的身份托管管理 Download PDF

Info

Publication number
CN105284074A
CN105284074A CN201480015756.1A CN201480015756A CN105284074A CN 105284074 A CN105284074 A CN 105284074A CN 201480015756 A CN201480015756 A CN 201480015756A CN 105284074 A CN105284074 A CN 105284074A
Authority
CN
China
Prior art keywords
identity
trustship
voucher
user
assumed name
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
CN201480015756.1A
Other languages
English (en)
Inventor
G·扎弗鲁查
C·帕奎恩
M·蔡斯
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN105284074A publication Critical patent/CN105284074A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/321Cryptographic 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 a third party or a trusted authority
    • 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/0421Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
    • 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/3218Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • H04L9/3221Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/42Anonymization, e.g. involving pseudonyms

Landscapes

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

Abstract

本公开涉及身份托管管理,其中如果满足某些条件可将匿名在线用户解除匿名。审计者被配置成使用基于素数阶密码群的加密方案来控制用户的匿名性。经由认证组件,审计者验证与用户的身份对应的假名是被正确加密的。如果有效,则审计者基于该素数阶密码群使用私有密码密钥来解密经加密的密码数据。

Description

用于最小披露凭证的身份托管管理
背景
各组织越来越关注安全地标识在因特网上以及离线地访问并利用其服务和资源的用户,同时保持这些用户的信息对其他任何人的私密性。这些用户认证和数据共享需求被成本和效率考虑、被利用个人信息的新业务模型、以及被钓鱼、身份盗窃以及其他安全威胁的爆炸性增长所驱动。用于用户认证和数据共享的传统机制(诸如塑料卡和纸质凭证)是昂贵的、易于伪造的、且难以在线使用的。
结果,存在对于可以软件和/或硬件实现并被用来防护因特网上的货币或财务交易的机制(例如,X.509证书)的快速增长的兴趣。然而,这些机制受到限制,因为例如这些机制不能在不披露与用户相关联的至少一部分信息的情况下被使用。在验证手续期间,为了确定给定凭证是否有效,用户必须提供至少一些身份数据以便被认证。
即使一些传统机制能够保持匿名,也存在导致这些传统机制的使用出现问题的其他关注点。在一些情况下,依赖方(诸如商品/服务的提供商)可能期望标识其凭证非法的特定用户,诸如当该用户可能不再有资格使用先前颁发的凭证、其中包含的属性已经变得临时或永久无效、或该用户违反了与该服务提供商相关联的策略时。在服务提供商例如期望能够标识用户以阻止欺诈的同时,这些用户寻求通过控制/最小化所披露的关于他们的信息来限制公开暴露。
概述
提供本概述以便以简化形式介绍将在以下的详细描述中进一步描述的一些代表性概念的选集。本概述不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在以限制所要求保护的主题的范围的任何方式来使用。
简言之,本文公开的主题的各方面涉及经由身份托管管理来实现数据安全和隐私。在一个方面,实现身份托管管理的技术允许受信用户匿名访问在线服务/资源,同时向这些服务/资源的提供者(例如,依赖方)保证在线交易不受用户不当行为(包括欺诈)的危害。然而,要领会,这种不当行为不限于欺诈且可涉及任何不恰当的请求/活动,诸如违反服务条款。如果用户在某个方面行为不当,则审计者组件将该用户解除匿名(de-anonymize),并且必要时阻止对任何在线资源/服务的未来访问。
在一个方面,身份管理系统和审计者被配置成通过实现密码加密方案(cryptographicencryptionscheme)来提供身份托管管理。使用此加密方案,根据一个方面,身份管理系统的一个或多个组件选择一个或多个凭证作为能够解析用户的身份的假名(pseudonym)。一个组件(身份托管证明者)基于素数阶密码群(prime-ordercryptographicgroup)使用私有密码密钥来对每个假名加密。为了阻止用户加密垃圾数据而不是实际的假名,身份证明者生成对假名的承诺和加密形式的假名之间的一致性证据(proofofconsistency)。
在一个方面,另一组件(身份托管验证者)证实此证据以及假名的真实性。如果此证据有效,则该假名是根据密码加密方案被正确加密的。当与用于最小披露凭证的证实的呈递证据相组合时,可证明密码加密方案针对密文延展性(ciphertextmalleability)是安全的。当审计者在解密之前检查呈递证据时,对经加密的假名的任何打击将被检测到,从而导致失败。
结合附图阅读以下详细描述,本发明的其他优点会变得显而易见。
附图简述
作为示例而非限制,在附图中示出了本发明,附图中相同的附图标记指示相同或相似的元素,附图中:
图1是解说根据一个示例实现的示例身份托管管理架构的框图。
图2是解说根据一个或多个示例实现的用于身份托管管理的示例协议的框图。
图3是解说根据一个示例实现的用于用假名来保护最小披露凭证的示例步骤的流程图。
图4是解说根据一个示例实现的用于将最小披露凭证解除匿名的示例步骤的流程图。
图5是解说根据一个示例实现的用于颁发配置有用于身份托管管理的假名的最小披露凭证的示例步骤的流程图。
图6是表示示例非限制联网环境的框图,其中可实现本文所描述的各种实施例。
图7是表示其中可实现本文所描述各实施例的一个或多个方面的示例非限制计算系统或操作环境的框图。
详细描述
本文描述的技术的各方面一般涉及计算环境中的身份托管管理。身份托管管理可在以下计算环境中实现:其中需要端到端交易审计和/或其中用户跟踪被规章禁止或者因其他原因是不期望的。身份托管管理平衡了期望标识被怀疑从事欺诈的用户的依赖方(例如,服务提供商)和期望限制对其在线活动的跟踪并最小化其信息的披露的用户之间的相对立的关注点。身份托管管理的示例实现允许用户匿名性,但是在适当时,准许向某些实体(诸如执法机构和/或依赖方)披露该用户的身份。披露通常在适当的情况下发生,诸如系统滥用或来自执法机构的请求。
在一个或多个示例实现中,身份托管管理涉及通过对凭证持有者的身份托管假名加密并向依赖方呈递加密形式的假名而使得凭证能够被匿名呈递给依赖方。如果需要,可以通过将凭证持有者的假名解密并且访问与该假名相对应的标识信息来将凭证持有者的身份解除匿名。审计者管理用于将凭证持有者的身份解密的私有密钥并且阻止其他硬件/软件组件访问该私有密钥,从而保护凭证持有者的身份不受滥用/误用的危害。
数个密码加密方案可被配置成为安全凭证的各个实施例提供身份托管管理,所述安全凭证包括最小披露或匿名凭证。这些凭证一般使得用户能够发起安全交易,同时几乎不披露关于该用户的标识信息。即使向依赖方隐瞒某些信息(诸如属性),基于这种加密方案的呈递证据被配置成证明这些凭证正确地标识该用户并仍旧有效。实现用于此呈递证据的身份托管使得这些凭证与期望在在线执行交易时负有责任的服务提供商兼容。而且,将呈递证据和身份托管管理相组合导致语义安全的密码加密方案。
一个示例实施例将身份托管管理实现为“身份管理即服务”(IdMaaS)的组件,IdMaaS可以是被配置成提供私有/公共/混合云计算服务以管理组织的雇员、合作伙伴和顾客的身份关系以便高效地将该组织的社交图的各成员彼此连接并将这些成员与其应用和数据连接的平台。另一示例实施例采用微软AzureTMActive 来构建IdMaaS平台,该平台具有对该组织的内部用户(例如,雇员、成员、学生)的内置支持。一个示例微软AzureTMActive服务组件将IdMaaS扩展到外部用户(例如,顾客、服务提供商、供应商、合作伙伴和其他依赖方)、自动化联合信任管理、信息安全和用户隐私。
用于颁发/验证凭证的一个示例密码加密方案可被实现为其中用户跟踪被禁用的协议网关服务。为了阻止用户跟踪,微软AzureTMActive服务(其驻留于用户、依赖方和身份提供商之间并且担当颁发者和验证者)禁用对用户的动作的端到端可见性。审计者的角色由在微软AzureTMActive服务外部的一个或多个组件来执行。例如,微软AzureTMActive服务不应当能够看到某个人使用他/她的微软帐户(例如,身份提供者)来登录到web服务器(例如,担当依赖方的服务提供商)。当此人从身份提供者获得凭证时,微软AzureTMActive服务将此凭证映射到包括等效属性的最小披露凭证。
当该人利用其凭证时,拥有证据被生成并被发送至依赖方,依赖方进而将该证据转发到微软AzureTMActive服务以进行验证。最小披露凭证颁发和验证的不可链接性(unlinkability)确保了微软AzureTMActive服务不具有足够的信息来端到端地跟踪用户。微软AzureTMActive服务可确认该人从微软帐户曾获得凭证并稍后观察到某个用户登录了网站,但是微软AzureTMActive服务不能容易地将这两个事件正确地关联。
应当理解,本文中的任何示例均是非限制的。因此,本发明不限制于在此描述的任何具体的实施例、方面、概念、结构、功能或示例。相反,本文所描述的任何实施例、方面、概念、结构、功能或示例都是非限制性的,可以以一般而言在计算和计算安全性中提供好处和优点的各种方式来使用本发明。
图1是解说根据一个或多个示例实现的示例身份管理系统的框图。身份管理系统的一个示例组件包括证明者102,该证明者被配置成代表用户与颁发者104协商安全凭证,并随后通过经由针对验证者106的请求证明这些凭证的有效性来与依赖方交换交易相关数据。颁发者104一般是指用于由身份管理系统所管理的用户计算机的密码信息(包括公共/私有密码密钥和安全凭证)的权威来源。例如在用户计算机上运行的证明者向颁发者104提供各种数据,一旦被认证,所述数据作为编码在凭证108内的安全属性数据被返回,该凭证在本文中可被称为最小披露凭证。为了解说一个示例,凭证108可被存储在设备(例如,智能卡、移动电话、或在线服务器)内。
验证者106一般是指在向依赖方提供各种服务(包括凭证证实、身份托管管理等)的计算设备内运行的受信硬件/软件机制。验证者106可使用各种硬件/软件组件来实现这种身份托管管理,包括如本文所述的身份托管验证者。作为一个示例,为了保证与某个服务提供商发起的交易的安全,验证者106处理证明者102所提供的认证组件110,其被配置成证明凭证108的有效性并且如果适当,提供用于将提交凭证108的用户解除匿名的机制。
凭证108一般可包括经编码的属性数据,诸如身份数据(例如,全名、社保号(SSN)、和/或类似者),以及各种其他数据。证明者102可将凭证108配置成编码属性数据的不同部分以使得用户能选择性地披露某些属性,或者如果期望,根本不披露任何属性。根据一个示例实现,颁发者104使用各种数据来为凭证108配置一个或多个公共/私有密钥,所述各种数据诸如另一密码密钥(其可以被称为秘密密钥或私有密钥)、经编码的属性数据和/或素数阶循环群的元素。凭证108的一个示例实现包括身份托管假名(为了清楚在本文中可称其为假名),以及各种密码数据。
如本文所述,假名112是指作为不当用户活动的后果能够标识该用户的值。假名是使用编码在凭证108内的属性作为对除了审计者114之外任何人均不能解密的值来计算的。未披露的属性可包括唯一用户标识符或与用户的身份相对应的其他数据。该属性在本文中可被称为身份托管属性并可使用素数阶密码群的某一元素来编码。假名112的经由由审计者114生成的公共密码密钥加密的形式在本文中可被称为加密假名数据。要领会,凭证108内编码的任何属性可被加密且可被用作加密假名数据。
如本文所述的,如果该用户请求访问某个服务提供商,验证者106用认证组件110评估凭证108和/或其他数据来确定准许还是拒绝该用户的请求,同时保持该用户匿名并保持该用户对不当活动负责。凭证108不披露假名112(除了以加密形式外,加密形式可包括相当大的数学数字或构造),但是确实能够解除匿名,由此该用户或用户的组织或设备的身份被透露给验证者106。
认证组件110的一部分构成证明者102的私有密钥的拥有呈递证据以及该用户在交易相关数据上的数字签名,其中该数字签名能够经由数种密码机制来被验证,包括经由公共密钥或私有密钥的应用或经由与散列挑战的比较。从而,呈递证据担当交易相关数据(例如,消息)上的可验证数字签名。认证组件110还包括对假名112的承诺和假名112之间的身份托管一致性证据(或即一致性证据)。
根据一个示例实施例,颁发者104和证明者102根据不带双线性配对的素数阶群构造来协商公共参数;并且基于这些参数,颁发者104或一独立的权威机构生成凭证108,该凭证108具有包括标识符、编码属性数据的公共密钥以及包括签名值和响应值的数字签名的格式。
在颁发者104和证明者102之间建立的一个示例参数包括群g构造选择。如果示例参数指定子群构造,则群g的描述(p,q,g)指定阶p的有限域的素数阶q的子群。p和q两者都是素数,q能除尽p-1,且q是g的生成元(generator)。另一示例参数指定基于素数域上的椭圆曲线密码术的群构造,群g的描述(p,a,b,g,q,h)指定有限域上的椭圆曲线,其中p是素数,a和b是定义该椭圆曲线的两个域元素,g是素数阶q在该曲线上的基点(gx,gy)(以及gq的生成元),q是该群的阶,而h是该曲线的余因子。这些群构造可形成用于生成密码群和原语的基础。
下面的步骤描述了身份托管管理的一个示例实现。在初始设置步骤,审计者114生成密码数据116,包括公共/私有密钥的密码密钥对。审计者114的一个示例实现在设置阶段期间生成ElGamal加密密钥对。对密钥对的群参数应当匹配颁发者参数。该群由G表示,G的素数阶由q表示,而用于ElGgmal加密方案的生成元被由g表示。元素g将从群参数中被重用于颁发者104。审计者还建立定义该用户在什么条件下可被解除匿名的策略118。
颁发步骤是指执行颁发者104藉以颁发凭证108的协议。经由呈递步骤,审计者104将身份托管属性加密为假名112并使用证明假名112的有效性的对假名112的承诺来生成身份托管证据。在验证步骤期间,在确定呈递证据也有效之后,验证者106可验证假名112有效。如果发生最小披露凭证滥用,则审计者114在某些条件下代表验证者106解密假名112。
以下提供了用于将身份托管管理配置为一单独的独立计算机制的附加细节,该机制接受对属性xb的承诺(用表示)作为输入,并产生对假名加密的密文其中g是群生成元连同PE一致的身份托管证据。承诺包括呈递证据和身份托管属性xb的至少一部分。为了正确加密假名,证明者102采用审计者公共密码ElGamal密钥H的真实副本和策略118。注意,颁发者104不应当担当用于证明H的权威机构,因为目标就是将颁发者104和审计者114分开。可用例如证书权威机构(CA/PKI)来完成带有真实性的H分发,或者H可被嵌入证明者设备中,或作为与审计者114对接的软件包的一部分来分发。
证明者102和/或审计者114合作计算身份托管证据,其被如下定义:
密文E1和E2,连同以上证据,和呈递证据(其中属性xb不被披露)包括被传达给依赖方的认证组件110。认证组件110的身份托管证据向依赖方证明密文E2是此属性的加密,且密文E1是素数阶密码群基本元素或生成元g的加密。用这种方式将假名112加密可被称为可验证加密,因为依赖方可验证假名112的某个性质,而无需拥有用于解密的私有密码密钥。例如,验证者106可确定因为密文是被正确计算的且该凭证是最小披露凭证的某一属性所以该凭证是有效的。验证者106可在任何解密之前使用审计者114来检查假名112的身份托管一致性证据以确定经加密的假名112是否被不利地损害/修改。
图2是解说根据一个或多个示例实现的用于身份托管管理的示例协议的框图。该示例系统是关于图1描述的示例性系统的替换实现。示例协议中涉及的各方包括身份管理系统202、审计者204、用户计算设备206和身份提供者208。要领会,在该示例协议所规定的任何操作处可补充任何其他方。
身份管理系统202可被实现为网络或云计算资源,其中颁发者生成各种密码数据,包括基于素数阶循环群的密码密钥和其他密码原语。身份管理系统202的示例架构包括微软LiveId和微软AzureTMActiveFederationService(联合服务),其中受信安全令牌服务(STS)认证用户并随后颁发用于访问其他依赖服务的凭证。身份管理系统202的一个实施例可以是网络或云计算资源上的集成服务,诸如微软AzureTMActive
身份管理系统202还可实现用于管理分别包括被撤销的和/或有效的最小披露凭证的黑名单和/或白名单的撤销权威机构。通过操作用于基于累加器的密码方案的指定验证者撤销权威机构,根据一个示例实现,身份管理系统202的指定验证者特性提供另一级别的私密性。
服务提供商包括各种在线(即,因特网)特性,所述特性可采用最小披露凭证技术来保护存储在计算机数据中的信息。身份管理系统202配置验证机制(在本文中被称为验证者)以在服务提供商的系统上运行并证实用户提交的凭证。验证者通过评估数字签名来确定该凭证是否是使用颁发者的密码密钥生成的来执行最小披露凭证证实。此外,该数字签名还可用来确定在被撤销用户身份组或有效用户身份组中的成员资格或非成员资格。
用户采用最小披露凭证技术以便选择性地披露属性信息,且仍旧被准许对某一依赖方所提供的服务的访问。身份提供者208可包括创建用户身份的许可部门。结合身份管理系统202,身份提供者208使用各种用户数据生成最小披露凭证并向该用户颁发该最小披露凭证。如本文所述,可以诸如采用经编码属性(诸如车辆标识号(VIN))、汽车制造商/型号、凭证标识符、拥有者名称、驾驶证号和/或类似者形式的用户数据的任何组合来呈递最小披露凭证。不管用户期望披露哪个属性(如果有),许可部门用所有这些属性的编码来配置该凭证。
根据一个或多个示例实现,身份管理系统202与一个或多个审计者组件(诸如身份托管验证者210和身份托管证明者212)可通信地耦合,审计者204使用所述审计者组件来将最小披露凭证解除匿名并经由解密经加密的假名数据来标识该用户。身份托管验证者210在服务提供商的系统上运行并与身份管理系统202的验证者相结合地操作,如本文所述。身份托管证明者212在用户计算设备212上运行并与身份管理系统202的证明者相结合地操作,如本文所述。
如在图2中所描绘的,示例协议的一个示例实现执行至少八个身份托管管理操作的序列,其中每个操作对应于特定顺序时间点。每个操作的标签是表示该操作的序列位置的加圈数字。
操作一(1)表示示例协议的设置阶段,其中身份管理系统202生成密码群,诸如素数阶循环群,其被定义为群G,其中G的素数阶由q表示,且被称为生成元的元素由g表示并被用于审计者的加密方案。身份管理系统202的一个示例实现生成不带任何配对(诸如双线性配对)的密码群G。元素g可被存储在颁发者的参数数据214中并从该参数数据被访问。
根据操作一(1)的一个示例实现,身份管理系统202的颁发者组件通过生成参数数据214(包括用于保护交易数据的密码数据)来发起该示例协议。生成设置参数导致至少一组密码群元素(g0,g1,…,gb,¨,gn,gt),其中1≤b≤n。所述设置参数还包括用于颁发最小披露凭证的公共/私有密码密钥,在下文中其被称为颁发密钥。颁发者组件例如生成私有密钥以及相应的公共密钥(g0,g1,…,gb,…,gn,gt),其中
使用参数数据214,根据一个示例实现,身份托管证明者210从素数阶群随机生成私有密钥x,计算公共密钥H=ge x,并指定该私有和公共密码密钥用于身份托管管理。要领会,本公开可将私有密钥x称为审计者私有密码密钥,反之亦然。尽管以上密钥对可构成ElGamal密码密钥对,然而要领会,本公开构想了其他加密方案。由于身份托管证明者加密每个用户的假名数据,操作一(1)的一个示例实现记录描绘每个假名且标识针对每个假名用户的信息的身份托管数据216。身份管理系统202可代表身份托管证明者210来保存身份托管数据216,或替换地,身份托管证明者210可保存身份托管数据216的一单独的独立副本。身份托管证明者210可保持对身份托管数据216的完全单独控制。
审计者204的一个示例实现创建描述准许将最小披露凭证解除匿名以及披露用户信息的条件的策略。当验证者请求这种解除匿名时,验证者还可传达展示满足这些条件中的至少一个条件的信息。该策略还建立用于身份托管验证者212在确定假名的有效性时使用的某些设置和/或密文值。例如,该策略可建立哪些组件要被包括在针对该假名的一致性证据中。
在操作二(2),经由用户计算设备206,用户获得来自身份提供者208的某些凭证。为了解说一个示例,该用户可通过使用有效口令来登录到与身份提供者208相关联的web服务器中。该用户可在被从身份托管验证者210重定向之后执行这种认证。例如,当浏览商业web特性并发起交易时,身份托管验证者210可通过将该用户转移到身份管理系统202来保护这些交易,而身份管理系统进而将该用户重定向到身份提供者208以进行认证。
身份提供者208向用户计算设备206指派各种数据(包括唯一标识符),且在操作三(3),将每个值(包括该唯一标识符的值)与身份管理系统202共享。身份提供者208可提交这种数据作为对最小披露凭证颁发的主张。该唯一标识符可被用作被配置成用于在解除匿名之后标识用户的身份托管属性218。
用于身份管理系统202的一个示例证明者组件(被称为证明者212)可将该唯一标识符选择为身份托管属性218。身份管理系统202可将该唯一标识符存储在身份托管数据216中。作为替换机制,身份提供者208不向身份管理系统204披露该唯一标识符;相反,证明者212的一个示例实现传达身份托管假名220用于最小披露凭证颁发。
在操作四(4),身份管理系统的颁发者组件使用由身份提供者208和/或证明者212所提供的信息来为用户计算设备206生成并颁发最小披露凭证。该颁发者组件将该信息编码为每个最小披露凭证中的属性。作为示例,该颁发者组件利用密码散列函数来计算散列值,该散列值表示用户能够征用以获得对身份托管验证者210的访问的一个示例身份托管假名220。作为另一示例,该颁发者将身份托管假名220的值变换为采用big-endian(大端法)字节次序的无符号整数的二进制编码,其必须小于q以作为乘法子群的有效元素。
根据一个示例实现,证明者212保留最小披露凭证属性之一用于身份托管,即,身份托管属性218,其被表示为xb。证明者212可随机选择值xb并将身份托管假名220定义为在操作四(4),用户接收将PE编码为假名的最小披露凭证,并将该最小披露凭证存储在用户计算设备206中。可任选地,该最小披露凭证可被存储在耦合至用户计算设备206的分开的设备中。
尽管身份托管属性218涉及该用户或该用户的组织,然而身份管理系统202不能从被标记为PE的身份托管假名220中容易地解密该用户的身份。因此,身份托管假名220为身份托管属性218提供了匿名性。不考虑用户计算设备206,审计者210能够解析该用户的身份。
为每个最小披露凭证选择不同的属性xb值限制了审计者妥协所导致的损失,因为交易将仅能被颁发者链接。如果单一值xb被用于该用户的各最小披露凭证中的每一个,则PE对于所有呈递证据都相同,在给定审计者的秘密密码密钥的情况下,允许它们被链接。为了简化对每凭证一个xb值的存储和管理,可根据最小披露凭证的秘密密码密钥(以及其他因凭证而异的信息,比如索引/计数)来计算xb。颁发者可维护与给定身份相对应的所有PE值的数据库。
颁发者组件可能知道PE,但是可能或者可能不知道xb。例如,通过使用协作颁发特征或通过针对属性i贡献而不是xi。这阻止了不诚实颁发者在该颁发者知道属性xb的情况下冒充证明者220。颁发者维护(PE,ID)的身份托管表,以使得当被身份托管验证者212稍后呈递PE值时,颁发者可查找与该假名相关联的真实身份。在其中颁发者不存储这样的表的替换实现中,从唯一标识该用户的相对小(例如,小于260的大小)的可能值(诸如社保号)的集合中选择属性xb。这允许计算loggPE,从而揭露xb并标识该用户。
在操作五(5)的一个示例实现期间,身份托管证明者210处理身份托管假名220,并使用对身份托管假名220的承诺222,用审计者的公共密钥H加密身份托管假名220以生成经加密的假名数据。身份托管证明者210还计算散列挑战和响应用于生成一致性证据224,该一致性证据被配置成验证承诺222是使用身份托管假名220计算的,这证明了经加密的假名数据的完整性和真实性。
证明者212的一个示例实现在最小披露凭证呈递证据生成之后执行操作五(5),其中xb除了是身份托管属性218之外还是所承诺的未披露属性。证明者212可将承诺222定义为其中开运算Ob和属性xb连同呈递证据和参数数据214被输入到审计证明者210用于生成一致性证据224。以下表示了操作五(5)的示例步骤:
1.加密
a.从Zq随机选择r
b.生成密文 E 1 = g r , E 2 = g x b H r
2.生成一致性证据
a.从Zq随机选择xb’、r’和Ob
b.计算 C x b ′ = g o x b ′ g 1 o b ′ , E1′=gr′ E 2 ′ = g e x b ′ H r ′
c.计算散列挑战 c = H ( UID p , g 0 , UID T , H , C x b , E 1 , E 2 , C x b , , E 1 , , E 2 , )
d.计算响应: r x b = xb , - c x b , r r = r , - c r , r o b = ob , - c o b (全部模q)
3.输出: ( E 1 , E 2 , c , r x b , r r , r o b )
散列挑战c的前三个字段UIDP,g0,UIDT(分别)用于唯一标识参数数据214的颁发者参数、颁发者组件以及最小披露凭证。一个示例实现用要被认证的附加信息生成散列挑战c。这种附加信息的示例可包括整个呈递证据、针对公共密钥H的证书、和/或类似者。
早操作六(6),用户向身份托管验证者210呈递最小披露凭证,以及针对身份托管假名220的呈递证据和一致性证据,诸如一致性证据224。
在操作七(7),身份托管验证者210向身份管理系统202传达最小披露凭证和证据224以用于验证和在恰当时解密。操作八(8)的一个示例实现在呈递证据被身份管理系统202在操作七(7)期间成功验证之后被运行。到身份托管验证者212的输入包括凭证T、颁发者参数IP、包含承诺222的呈递证据、以及一致性证据224因为该呈递证据被确定为有效,所以身份托管验证者212可假定是对xb的有效承诺。以下步骤表示用于确定承诺222是否与身份托管假名220一致的一个示例实现。
1.验证经加密的假名数据(密文E1,E2)是群G的有效元素。
2.验证c和响应值具有正确长度。
3.计算 C x b , , = ( g 0 r x b g 1 r o b ) ( c x b ) c , E 1 , , = ( g r r ) ( E 1 ) c , 以及
E 2 , , = ( g r x b H r r ) ( E 2 ) c .
4.计算 c , = H ( UID p , g 0 , UID T , H , C x b , E 1 , E 2 , C x b , , , E 1 , , , E 2 , , )
5.如果c’=c则输出有效,否则无效。
注意,步骤号3使用响应来证明同一值在计算密文E2和承诺222时被使用。
为了将该用户解除匿名,验证者组件向身份托管验证者212发送呈递证据、最小披露凭证、以及一致性证据222。至少,身份托管验证者212可确定该证据何时被创建以及向哪个依赖方呈递了此证据。
不是信任身份托管验证者210来决定何时解除匿名(这留下了开放滥用的可能),解密策略规定何时解密经加密的假名数据是恰当的情形。如果呈递证据有效,且请求满足解密策略,则身份托管验证者212执行以下步骤来确保密文有效并与证据224一致。如果有效,则身份托管验证者212解密经加密的假名数据(由密文(E1,E2)表示),并通过计算下式来获得身份托管假名220:
P E = E 2 E 1 x
图3是解说根据一个示例实现的用于用假名来保护最小披露凭证的示例步骤的流程图。各种硬件/软件组件(例如,图1的审计者114的组件)可被配置成执行示例步骤。步骤302开始示例步骤并前进至步骤304,在该步骤身份托管数据被清除且发布参数被处理。基于审计者的解除匿名策略,颁发者可有定期地清除旧的身份托管假名。例如,如果该策略指明身份可在使用该凭证之后被揭露达至多一个月的时间段,且凭证在一个月后过期,则颁发者应当在两个月之后删除该表格条目。
步骤306确定颁发者参数是否定义具有配对或不具有配对的素数阶密码群。如果例如密码群指代密码群构造的特定集合,诸如基于离散对数假设的非双线性素数阶循环子群,则步骤306前进至步骤308。如果密码群指代具有配对(诸如双线性配对)的群构造,则步骤306前进至步骤314。
步骤308涉及基于素数阶密码群来配置ElGamal密钥对。如本文所述,一个示例颁发参数指的是将密码群G定义为具有素数阶q和生成元g的素数阶循环子群。ElGamal密码密钥对是(x,H=gx),其中x是秘密的而H是公共的。一种替换的基于ElGamal的加密方案支持k阈值中k解密(k-of-kthresholddecryption),其中密码密钥x是作为x=x1+…+xk被加性共享的,而公共密钥变成H1H2…Hk=H,其中
作为身份托管的替代或补充,ElGamal密码密钥对可被用于小值的广义可验证加密。例如,邮政编码或短时间戳可用这些密钥来加密,并通过求解离散对数(discretelog)来解密。如果颁发者仅颁发具有小型属性的最小披露凭证,则解密在有界时间量内也许是可能的。
步骤308涉及使用审计者私有密码密钥生成经加密的假名数据,该经加密的假名数据可被称为密文。一般而言,为了加密G中的消息m,审计者随机选择Zq中的r,并计算密文(E1,E2)=(gr,mHr)。当m是假名PE时,m具有形式其中g是公共基本元素,而xb是加密假名的一方(例如,用户和/或审计者)已知的私有值以及是一最小披露凭证中的属性,诸如U-证明(U-Prove)凭证。
如果在步骤306,确定密码加密方案基于具有配对的密码群构造,则步骤314被执行。步骤314涉及使用具有配对的密码群来生成密码密钥对。使用具有配对的密码群的方案的一个示例实现假定DDH在具有不对称配对的群G1中是困难的。另一示例方案被配置成在决策线性假设(DLIN)中是安全的。当步骤314的执行完成时,步骤314前进至步骤310。
步骤310通过例如使用私有密钥来加密证明者所提供的身份托管假名来生成经加密的假名数据。私有密钥确保了仅审计者组件能够解密经加密的假名数据并产生身份托管假名。步骤312使用公共密钥和/或附加数据来计算散列挑战,其验证经加密的假名数据的真实性和/或完整性,并前进至步骤316。步骤316向证明者返回一致性证据并前进至步骤318,该一致性证据包括散列挑战和经加密的假名数据。此证据证明了用于经加密的假名数据的假名和与最小披露凭证相关联的假名之间的一致性。步骤318终止图3所描绘的示例步骤。
图4是解说根据一个示例实现的用于将最小披露凭证解除匿名的示例步骤的流程图。各种硬件/软件组件(例如,图1的审计者114的组件)可被配置成执行示例步骤。步骤402开始示例步骤并行进到步骤404,在该步骤处理请求。
步骤406确定具有身份托管的呈递证据的有效性,该呈递证据包括经加密的假名数据和对身份托管假名的承诺之间的一致性证据。在向该一致性证据应用审计者公共密码密钥之后,如果审计者验证该身份托管假名,则步骤406前进至步骤408。如果在步骤406确定最小披露密钥无效,因为具有身份托管的呈递证据不能被验证,则步骤420停止服务提供商和用户之间的任何待决交易。例如,审计者可指示服务提供商由于不当动作而取消用户所计划的购买。
步骤408涉及使用审计者私有密码密钥来解密经加密的假名数据。步骤410表示用于经解密的假名的披露协议选择,在该处步骤410可前进至步骤412、步骤414、步骤416和/或步骤418,包括这些步骤的任何组合。如果步骤410选择第一披露协议并执行步骤412,则审计者直接向颁发者发送PE,颁发者可执行对该用户的查找。如果步骤410选择第二披露协议并执行步骤414,则审计者直接向颁发者发送PE,该颁发者将该用户列入黑名单从而使该用户不能获得进一步的凭证并撤销颁发给此用户的任何现有凭证,但是不揭露该用户的身份。这种凭证撤销可使用基于动态累加器的技术执行。
如果步骤410选择第三披露协议并执行步骤416,则审计者将PE发送回依赖方(诸如服务提供商),该依赖方向颁发者请求该用户的身份。如果步骤410选择第四披露协议并执行步骤418,则审计者使用颁发者的关于(用户标识符,PE)值的数据库的副本返回该用户的身份。可任选地,审计者可具有对身份托管表的单独访问,在该表中,该用户向审计者提供(用户标识符,PE)对的值。步骤422终止图4所描绘的示例步骤。
图5是解说根据一个示例实现的用于颁发配置有用于身份托管管理的假名的最小披露凭证的示例步骤的流程图。各种硬件/软件组件(例如,图1的颁发者104和/或证明者102)可被配置成执行示例步骤。步骤502开始示例步骤并前进至步骤504,在该步骤生成参数数据并处理属性数据。参数数据可包括颁发者参数,诸如定义用于保护属性数据安全的素数阶循环群构造的密码群参数。一般而言,属性数据由期望安全凭证(例如,最小披露凭证)以执行电子交易的用户提供。
步骤506在颁发最小披露凭证时确定是否要随机化假名。如果要随机化假名,则步骤506前进至步骤508,在该步骤颁发者和/或证明者可随机选择用于计算假名的群生成元和/或属性。在一个示例实现中,证明者选择在向颁发者提供的属性数据中提供的属性中的任一个属性。证明者可针对每个凭证选择一不同属性。在另一示例实现中,证明者可通过计算凭证私有密钥和/或其他凭证信息(诸如属性索引或计数)的函数来确定哪个属性。
在其中颁发者不记录身份托管数据的替换实现中,从唯一标识该用户的可能值(诸如社保号)的有限集合(例如,小于260的大小)中选择属性xb。用于计算假名的生成元范围也可在范围上受到约束。任一种机制均允许计算loggPE,从而揭露xb并标识该用户。
替换地,为了实现与败坏的审计者的不可链接性,颁发者可为每个最小披露凭证采用新的基础生成元元素gb。一个身份托管属性xb针对一组所颁发的最小披露凭证可导致不同的身份托管假名。例如,颁发者可针对每个最小披露凭证选择新的属性yb,并且向用户提供审计者使用来加密属性xb可以跨多个最小披露凭证一致。
如果在步骤506确定假名未被随机化,则步骤508被省略且步骤510被执行。步骤510确定是否使用来自另一颁发者的第一凭证生成导出凭证。如果否,则步骤510省略步骤512并前进至步骤514,而如果是,则步骤510前进至步骤512,步骤512验证第一凭证。步骤514涉及访问身份托管假名这可通过计算身份托管假名的数学值或选择证明者所提供的身份托管假名来实现,以及生成最小披露凭证来实现。作为一个示例机制,用户可通过将假名跨至少两个实体(诸如颁发者和身份提供者)分割并托管来采用颁发者不知道的身份托管假名
如果步骤510决定生成导出凭证,则步骤512验证第一凭证的真实性和完整性。一个示例导出凭证对应于根据第一凭证的属性计算出的身份托管假名在验证第一凭证之后,步骤512前进至步骤514,步骤514基于身份托管假名和与第一凭证相对应的其他数据来生成导出凭证。步骤516结束针对图5描述的示例步骤。
在一个或多个示例实现中,身份托管假名可表示不是第二凭证的属性的用户标识符。在第一最小披露凭证被用来解密身份托管假名之后,审计者向生成具有该身份托管假名作为属性的第二最小披露凭证的颁发者揭露该值。例如,颁发者可颁发具有确认该用户具有有效驾驶证的凭证的最小披露凭证,以及随后颁发具有保证如果该用户行为不当则将撤销该用户的驾驶证的凭证另一最小披露凭证。身份提供者保持有效的驾驶证号且颁发者永远不知晓该号,除非用户违反审计者加密策略。而且,颁发者将不需要知道可能的驾驶证号的列表或依赖于身份提供者。
示例联网以及分布式环境
本领域技术人员可以理解,此处描述的各实施例和方法可结合任何计算机或其它客户机或服务器设备来实现,其可被部署为计算机网络的部分或在分布式计算环境中,并且可以被连接到任何类型一个或多个数据存储。在这一点上,此处描述的各实施例可在具有任何数量的存储器或存储单元的、并且任何数量的应用和进程跨任何数量的存储单元发生的任何计算机系统或环境中实现。这包括但不限于具有部署在具有远程或本地存储的网络环境或分布式计算环境中的服务器计算机和客户计算机的环境。
分布式计算通过计算设备和系统之间的通信交换来提供计算机资源和服务的共享。这些资源和服务包括信息的交换、对于诸如文件之类的对象的高速缓存存储和盘存储。这些资源和服务还包括多个处理单元之间的处理能力共享以便进行负载平衡、资源扩展、处理专门化等等。分布式计算利用网络连接,从而允许客户机利用其集体力量来使整个企业受益。就此,各种设备可具有可如参考本发明的各实施例描述地参与资源管理机制的应用、对象或资源。
图6提供了示例性的联网或分布式计算环境的示意图。该分布式计算环境包括计算对象610、612等以及计算对象或设备620、622、624、626、628等,这些计算对象或设备可包括如由示例应用630、632、634、636、638表示的程序、方法、数据存储、可编程逻辑等。可以理解,计算对象610、612等以及计算对象或设备620、622、624、626、628等可包括不同的设备,诸如个人数字助理(PDA)、音频/视频设备、移动电话、MP3播放器、个人计算机、膝上型计算机等。
每一个计算对象610、612等以及计算对象或设备620、622、624、626、628等可通过通信网络640直接或间接与一个或多个其他计算对象610、612等以及计算对象或设备620、622、624、626、628等进行通信。尽管在图6中被示为单个元素,但通信网络640可包括向图6的系统提供服务的其他计算对象和计算设备和/或可表示未示出的多个互连网络。每个计算对象610、612等或计算对象或设备620、622、624、626、628等还可以包含应用,诸如可以利用API或其他对象、软件、固件和/或硬件的、适于根据本公开的各实施例所提供的应用的实现或与其进行通信的应用630、632、634、636、638。
存在支持分布式计算环境的各种系统、组件和网络配置。例如,计算系统可由有线或无线系统、本地网络或广泛分布的网络连接在一起。当前,许多网络被耦合至因特网,因特网为广泛分布的计算提供了基础结构并包含许多不同的网络,但任何网络基础结构都可用于便于与如各实施例中所描述的系统的示例通信。
由此,可使用诸如客户机/服务器、对等、或混合架构之类的众多网络拓扑结构和网络基础结构。“客户机”是使用与其无关的另一类或组的服务的一类或组中的成员。客户机可以是进程,例如大致上是请求由另一程序或进程提供的服务的一组指令或任务。客户机进程使用所请求的服务,而无需“知道”关于其他程序或服务本身的任何工作细节。
在客户机/服务器架构中,尤其在联网系统中,客户机通常是访问另一计算机(例如,服务器)所提供的共享网络资源的计算机。在图6的图示中,作为非限制性示例,计算对象或设备620、622、624、626、628等可被认为是客户机,而计算对象610、612等可被认为是服务器,其中作为服务器的计算对象610、612等提供数据服务,诸如从客户机计算对象或设备620、622、624、626、628等接收数据、存储数据、处理数据、向客户机计算对象或设备620、622、624、626、628等发送数据,但取决于环境,任何计算机都可被认为是客户机、服务器、或两者。
服务器通常是可通过诸如因特网或无线网络基础结构之类的远程网络或本地网络访问的远程计算机系统。客户机进程可在第一计算机系统中活动,而服务器进程可在第二计算机系统中活动,它们通过通信介质相互通信,由此提供分布式功能性并允许多个客户机利用服务器的信息收集能力。
在通信网络640或总线是因特网的网络环境中,例如,计算对象610、612等可以是其他计算对象或设备620、622、624、626、628等经由诸如超文本传输协议(HTTP)之类的多种已知协议中的任一种与其通信的Web服务器。计算对象610、612等作为服务器还可用作例如计算对象或设备620、622、624、626、628等的客户机,分布式计算环境的特点就是如此。
示例计算设备
如上所述,有利地,本文所描述的技术可被应用于任何设备。因此,可理解,构想了结合各实施例使用的所有种类的手持式、便携式和其它计算设备和计算对象。因此,以下在图7中所述的通用远程计算机只是计算设备的一个示例。
各实施例可部分地经由操作系统来实现,以供设备或对象的服务开发者使用,和/或被包括在用于执行本文中所述的各实施例的一个或多个功能方面的应用软件内。软件可以在由诸如客户机工作站、服务器或其它设备等一个或多个计算机执行的诸如程序模块等计算机可执行指令的通用上下文中描述。本领域的技术人员将理解,计算机系统具有可用于传递数据的各种配置和协议,并且由此没有特定配置或协议应当被认为是限制性的。
图7由此示出了其中可实现本文所述的各实施例的一个或多个方面的合适的计算系统环境700的示例,尽管如上所述,计算系统环境700仅为合适的计算环境的一个示例且不旨在对使用或功能范围提出任何限制。另外,计算系统环境700也不旨在被解释为对在示例计算系统环境700中所例示的组件中的任何一个或其组合有任何依赖。
参考图7,用于实现一个或多个实施例的示例性远程设备包括计算机710形式的通用计算设备。计算机710的组件可包括但不限于:处理单元720、系统存储器730以及将包括系统存储器在内的各种系统组件耦合到处理单元720的系统总线722。
计算机710通常包括各种计算机可读介质,并且可以是可由计算机710访问的任何可用介质。系统存储器730可包括诸如只读存储器(ROM)和/或随机存取存储器(RAM)之类的易失性和/或非易失性存储器形式的计算机存储介质。作为示例而非限制,系统存储器730还可包括操作系统、应用程序、其他程序模块、以及程序数据。
用户可通过输入设备740向计算机710输入命令和信息。监视器或其他类型的显示设备也经由诸如输出接口750之类的接口连接到系统总线722。除监视器以外,计算机还可包括诸如扬声器和打印机之类的其他外围输出设备,它们可通过输出接口750连接。
计算机710可使用到一个或多个其他远程计算机(诸如远程计算机770)的逻辑连接在联网或分布式环境中操作。远程计算机770可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见网络节点、或者任何其他远程媒体消费或传输设备,并且可包括以上关于计算机710所述的任何或全部元件。图7所示的逻辑连接包括诸如局域网(LAN)或广域网(WAN)之类的网络772,但也可包括其他网络/总线。这些联网环境在家庭、办公室、企业范围的计算机网络、内联网和因特网中是常见的。
如上所述,尽管结合各种计算设备和网络架构描述了各示例性实施例,但基本概念可被应用于其中期望改进资源使用的效率的任何网络系统和任何计算设备或系统。
而且,存在实现相同或相似功能性的多种方法,例如适当的API、工具箱、驱动程序代码、操作系统、控件、独立或可下载软件对象等,它们使得应用和服务能够利用本文中提供的技术。由此,本文中的各实施例从API(或其他软件对象)的观点以及从实现如本文中描述的一个或多个实施例的软件或硬件对象构想。由此,本文中所述的各实施例可具有完全采用硬件、部分采用硬件并且部分采用软件、以及采用软件的方面。
本文中所使用的词语“示例性”意味着用作示例、实例、或说明。为避免疑惑,本文所公开的主题不限于这些示例。另外,在此所述的被描述为“示例性”的任意方面或设计并不一定要被解释为相比其它方面或设计更优选或有利,也不意味着排除本领域普通技术人员已知的等效示例性结构和技术。此外,就使用术语“包括”、“具有”、“包含”和其他类似词语而言,为避免疑惑,这些术语旨在以类似于术语“包括”在用于权利要求中时作为开放的过渡词的方式而是包含性的,而不排除任何附加或其他元素。
如所述的,本文中所述的各种技术可结合硬件或软件或,在适当时,以两者的组合来实现。如本文中所使用的,术语“组件”、“模块”、“系统”等同样旨在指计算机相关实体,或者是硬件、硬件和软件的组合、软件、或执行中的软件。例如,组件可以是但不限于在处理器上运行的进程、处理器、对象、可执行件、执行的线程、程序、和/或计算机。作为说明,在计算机上运行的应用和计算机都可以是组件。一个或多个组件可驻留在进程和/或执行的线程内,并且组件可位于一个计算机上和/或分布在两个或更多的计算机之间。
前述系统已经参考若干组件之间的交互被描述。可以理解,这些系统和组件可包括那些组件或指定的子组件、某些指定的组件或子组件、和/或附加的组件,并且根据上述内容的各种置换和组合。子组件还可作为通信地耦合到其他组件的组件来实现,而不是被包括在父组件内(分层的)。另外,可注意到一个或多个组件可被组合成提供聚集功能性的单个组件,或被分成若干单独的子组件,且诸如管理层等任何一个或多个中间层可被提供来通信地耦合到这样的子组件以便提供集成的功能性。本文中所述的任何组件也可与本文中未专门描述但本领域技术人员一般已知的一个或多个其他组件进行交互。
鉴于本文所述的示例系统,也可参考各附图的流程图来理解可根据所述主题实现的方法。尽管为了阐述简洁起见,这些方法被示为和描述为一系列框,但是要理解和领会各实施例不受框的次序的限制,因为一些框可以与本文中所描绘和描述的不同次序发生和/或与其他框并发地发生。尽管经由流程图示出了非顺序或分支的流程,但可以理解,可实现达到相同或类似结果的各种其他分支、流程路径和框的次序。此外,一些所示的框在实现下面所述的方法时是任选的。
结语
尽管本发明易于作出各种修改和替换构造,但其某些说明性实施例在附图中示出并在上面被详细地描述。然而应当了解,这不旨在将本发明限于所公开的具体形式,而是相反地,旨在覆盖落入本发明的精神和范围之内的所有修改、替换构造和等效方案。
除本文中所述的各实施例以外,要理解,可使用其他类似实施例,或者可对所述(诸)实施例作出修改和添加以便执行对应的(诸)实施例的相同或等效功能而不背离这些实施例。此外,多个处理芯片或多个设备可共享本文中所述的一个或多个功能的性能,并且类似地,存储可跨多个设备实现。因此,本发明不限于任何单个实施例,而是要根据所附权利要求书的广度、精神和范围来解释。

Claims (10)

1.在计算环境中,一种至少部分在至少一个处理器上执行的方法,包括使用密码方案来控制最小披露凭证的匿名性,包括:处理将与所述最小披露凭证相关联的信息解除匿名的请求,所述请求包括与经加密的属性数据相对应的认证组件,以及使用私有密码密钥和所述认证组件来解密所述经加密的属性数据。
2.如权利要求1所述的方法,其特征在于,进一步包括:使用公共密码密钥来证实所述认证组件,包括通过验证对所述最小披露凭证的身份托管属性的承诺和所述经加密的属性数据之间的一致性证据来证实所述承诺,计算用于与所述一致性证据进行比较的散列挑战,以及确定所述承诺是否被用于生成所述一致性证据。
3.如权利要求1所述的方法,其特征在于,处理所述请求进一步包括:解密所述经加密的属性数据来产生属性数据并验证所述属性数据是使用公共密码密钥加密的且被编码在所述最小披露凭证中,所述属性数据的大小受到约束。
4.如权利要求1所述的方法,其特征在于,进一步包括:生成包括私有密码密钥和公共密码密钥的ElGamal密码密钥对,将所述ElGamal密钥对在用户计算机上运行的多个身份托管证明者之间分发,以及加性地在多个审计者之间共享所述私有密码密钥和所述公共密码密钥。
5.在一种计算环境中,一种系统,包括:被配置成能验证地加密用户的假名并使用密码方案来控制用户匿名性的身份托管证明者,其中所述身份托管证明者被进一步配置成处理所述最小披露凭证的对应于假名的身份托管属性,访问审计者密码密钥,使用所述审计者密码密钥来加密所述身份托管属性,以及生成经加密的假名数据和所述身份托管属性之间的一致性证据。
6.如权利要求5所述的系统,其特征在于,所述身份托管证明者被进一步配置成使用素数阶密码群来加密所述身份托管属性,以及生成用于证实所述假名的散列挑战。
7.一个或多个具有计算机可执行指令的计算机可读介质,所述计算机可执行指令在被执行时执行以下步骤,包括:
处理至少一个身份托管假名;
使用所述至少一个身份托管假名来生成一组最小披露凭证;以及
将所述至少一个身份托管假名记录在身份托管数据中。
8.如权利要求7所述的一个或多个计算机可读介质,其特征在于,具有包括执行下列步骤的进一步的计算机可执行指令:
使用从用户标识符的有限集合中选择的身份托管属性来生成每个身份托管假名。
9.如权利要求7所述的一个或多个计算机可读介质,其特征在于,具有包括执行下列步骤的进一步的计算机可执行指令:
使用身份托管假名的第一部分来生成第一最小披露凭证;以及
使用所述身份托管假名的第二部分来生成第二最小披露凭证。
10.如权利要求7所述的一个或多个计算机可读介质,其特征在于,具有包括执行下列步骤的进一步的计算机可执行指令:
颁发针对与另一最小披露凭证的属性相对应的身份托管假名的导出凭证。
CN201480015756.1A 2013-03-15 2014-03-13 用于最小披露凭证的身份托管管理 Pending CN105284074A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/834,286 US20140281491A1 (en) 2013-03-15 2013-03-15 Identity escrow management for minimal disclosure credentials
US13/834,286 2013-03-15
PCT/US2014/026334 WO2014151730A2 (en) 2013-03-15 2014-03-13 Identity escrow management for minimal disclosure credentials

Publications (1)

Publication Number Publication Date
CN105284074A true CN105284074A (zh) 2016-01-27

Family

ID=50483568

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480015756.1A Pending CN105284074A (zh) 2013-03-15 2014-03-13 用于最小披露凭证的身份托管管理

Country Status (4)

Country Link
US (1) US20140281491A1 (zh)
EP (1) EP2974126A2 (zh)
CN (1) CN105284074A (zh)
WO (1) WO2014151730A2 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012147001A1 (en) * 2011-04-29 2012-11-01 International Business Machines Corporation Data encryption
US9288056B1 (en) * 2015-05-28 2016-03-15 Pearson Education, Inc. Data access and anonymity management
US20160042198A1 (en) 2012-10-19 2016-02-11 Pearson Education, Inc. Deidentified access of content
US8984650B2 (en) 2012-10-19 2015-03-17 Pearson Education, Inc. Privacy server for protecting personally identifiable information
US9436911B2 (en) 2012-10-19 2016-09-06 Pearson Education, Inc. Neural networking system and methods
US10440046B2 (en) * 2015-09-25 2019-10-08 Intel Corporation Technologies for anonymous context attestation and threat analytics
JP6264656B2 (ja) * 2014-05-08 2018-01-24 学校法人慶應義塾 匿名化システム、発行装置及びプログラム
US9710672B2 (en) * 2014-09-08 2017-07-18 Uri Jacob Braun System for and method of controllably disclosing sensitive data
US10305886B1 (en) * 2015-05-27 2019-05-28 Ravi Ganesan Triple blind identity exchange
EP3179670A1 (en) * 2015-12-11 2017-06-14 Gemalto Sa Secure electronic device with mechanism to provide unlinkable attribute assertion verifiable by a service provider
US10509574B2 (en) * 2016-02-08 2019-12-17 Microsoft Technology Licensing, Llc Container credentialing by host
US11210412B1 (en) * 2017-02-01 2021-12-28 Ionic Security Inc. Systems and methods for requiring cryptographic data protection as a precondition of system access
EP3379766B1 (en) * 2017-03-20 2019-06-26 Huawei Technologies Co., Ltd. A wireless communication device for communication in a wireless communication network
US10581808B2 (en) 2017-03-23 2020-03-03 Microsoft Technology Licensing, Llc Keyed hash contact table
US10841283B2 (en) * 2017-07-17 2020-11-17 Futurewei Technologies, Inc. Smart sender anonymization in identity enabled networks
US10396979B2 (en) 2017-09-01 2019-08-27 Honda Motor Co., Ltd. Methods and systems for creating a unique identification number to maintain customer privacy
US11477217B2 (en) 2018-09-18 2022-10-18 Cyral Inc. Intruder detection for a network
US11606358B2 (en) * 2018-09-18 2023-03-14 Cyral Inc. Tokenization and encryption of sensitive data
US11477197B2 (en) 2018-09-18 2022-10-18 Cyral Inc. Sidecar architecture for stateless proxying to databases
WO2020118044A1 (en) 2018-12-05 2020-06-11 Sidewalk Labs LLC Identity systems, methods, and media for auditing and notifying users concerning verifiable claims
WO2020117274A1 (en) * 2018-12-07 2020-06-11 Hewlett-Packard Development Company, L.P. Anonymous service access
US11936796B1 (en) * 2019-12-13 2024-03-19 Amazon Technologies, Inc. Privacy preserving account generation
CN113379415B (zh) * 2020-03-10 2022-09-20 深圳市迅雷网络技术有限公司 区块链系统及信息处理方法、系统、装置、计算机介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1507733A (zh) * 2002-01-17 2004-06-23 株式会社东芝 利用公开密钥加密的对称密钥的建立
CN101083530A (zh) * 2007-07-13 2007-12-05 北京工业大学 利用短消息实现的移动实体间的认证与密钥协商方法
US20100275015A1 (en) * 2009-04-22 2010-10-28 Sony Corporation Anonymous register system and method thereof

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5901227A (en) * 1996-06-20 1999-05-04 Novell, Inc. Method and apparatus for implementing partial and complete optional key escrow
US7747491B2 (en) * 2004-11-19 2010-06-29 Panasonic Corporation Anonymous information system, information registering device and information storing device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1507733A (zh) * 2002-01-17 2004-06-23 株式会社东芝 利用公开密钥加密的对称密钥的建立
CN101083530A (zh) * 2007-07-13 2007-12-05 北京工业大学 利用短消息实现的移动实体间的认证与密钥协商方法
US20100275015A1 (en) * 2009-04-22 2010-10-28 Sony Corporation Anonymous register system and method thereof

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JAN CAMENISCH, ANNA LYSYANSKAYA: "An efficient system for non-transferable anonymous credentials with optional anonymity revocation", 《SPRINGER》 *
JOE KILIAN, EREZ PETRANK: "Identity escrow", 《SPRINGER》 *

Also Published As

Publication number Publication date
EP2974126A2 (en) 2016-01-20
WO2014151730A2 (en) 2014-09-25
WO2014151730A3 (en) 2014-11-13
US20140281491A1 (en) 2014-09-18

Similar Documents

Publication Publication Date Title
CN105284074A (zh) 用于最小披露凭证的身份托管管理
US11900368B2 (en) Method and system for zero-knowledge and identity based key management for decentralized applications
EP3424176B1 (en) Systems and methods for distributed data sharing with asynchronous third-party attestation
US10623398B2 (en) Verifying requests for access to a service provider using an authentication component
Zhang et al. Secure and efficient data storage and sharing scheme for blockchain‐based mobile‐edge computing
US9768962B2 (en) Minimal disclosure credential verification and revocation
CN102318262B (zh) 受信云计算和服务框架
Sun et al. Outsourced decentralized multi-authority attribute based signature and its application in IoT
Rosenberg Handbook of financial cryptography and security
Li et al. Toward vehicular digital forensics from decentralized trust: An accountable, privacy-preserving, and secure realization
Hussein et al. A survey of cryptography cloud storage techniques
Singh et al. A novel credential protocol for protecting personal attributes in blockchain
Mittal et al. A novel two-level secure access control approach for blockchain platform in healthcare
Tang et al. Privacy‐Preserving Scheme in the Blockchain Based on Group Signature with Multiple Managers
Madhusudan Applying Smart Contracts to Secure CarSharing Systems
Guo et al. Random oracle-based anonymous credential system for efficient attributes proof on smart devices
CN108712380B (zh) 一种基于策略的混合身份认证方法
Song et al. Identity‐based storage management and integrity verify protocol for secure outsourcing in multi‐cloud
Knox et al. Digital credentials with privacy‐preserving delegation
Pillai et al. Blockchain broadcast proxy ReEncryption in cloud environment for secure data sharing
Zagade et al. Group user revocation and integrity auditing of shared data in cloud environment
Naudiyal et al. Secure Blockchain-based Framework for Smart City Applications
Devi et al. Security Concerns at Different Phases of Networks through Blockchain Technology
BINDU et al. Batch User Retraction and Integrity Auditing of Shared Data in Cloud Environment
CN117834151A (zh) 基于区块链的数据隐私保护方法、装置及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into 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: 20160127