CN1968086A - 用于通信网络的用户验证系统和方法 - Google Patents
用于通信网络的用户验证系统和方法 Download PDFInfo
- Publication number
- CN1968086A CN1968086A CNA2005101235433A CN200510123543A CN1968086A CN 1968086 A CN1968086 A CN 1968086A CN A2005101235433 A CNA2005101235433 A CN A2005101235433A CN 200510123543 A CN200510123543 A CN 200510123543A CN 1968086 A CN1968086 A CN 1968086A
- Authority
- CN
- China
- Prior art keywords
- polymerizer
- token
- voucher
- user
- verifier
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3234—Cryptographic 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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3218—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/42—Anonymization, e.g. involving pseudonyms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
提供了一种用于通信网络的用户验证系统和方法。凭证授权机构公布聚合器,并向被授权访问服务的用户授予令牌和凭证。用户基于凭证授权机构授予的凭证,自己计算导出凭证,并使用导出凭证向验证者进行证明。如果新的用户被授权,其他用户和验证者无需更新任何数据。如果曾经被授权的用户被禁止,即他/她的令牌被吊销,则凭证授权机构基于被禁止的用户的令牌,计算更新的聚合器,并公布吊销增量数据,其包括更新的聚合器和关于被吊销的令牌的增量数据。其他用户基于接收的更新的吊销增量数据,自己计算他们的更新的凭证。吊销增量数据可以多种形式公布,并在凭证授权机构、用户和验证者之间快速传播。
Description
技术领域
本发明涉及通信网络,更具体地,涉及用于在通信网络中验证用户同时保护用户隐私的装置和方法。
背景技术
现今,许多在线服务(例如电子商务网站提供的竞拍服务、因特网电子邮件服务器提供的电子邮件服务、即时消息服务器提供的P2P聊天服务等等)要求它们的用户为了访问这些服务而进行注册或者定购。通常,存在凭证授权机构(credential authority,CA)来帮助服务提供者处理用户验证。
假设一组用户已经被授权访问特定服务。这些用户的集合被称为“白名单(Whitelist)”。当用户A试图访问该服务(例如,P2P文件共享服务)时,某个验证者(例如,用户A希望从其检索文件的对端)必须确信用户A是处于白名单中的。要是验证者每次都需要联络凭证授权机构,对于验证者和凭证授权机构两者来说,计算和通信方面的开销都会相当高。并且,服务提供者更容易受到以凭证授权机构为目标的拒绝服务攻击(Denial of Service)的破坏。
验证者可以具有本地拷贝的白名单,并确信用户A在其上。但是,如果验证者不能使其本地拷贝与凭证授权机构的最新的白名单同步,真正的用户将会被验证者拒绝。需要同步的原因是在验证者已经建立其白名单的本地拷贝之后,可能有新的用户被凭证授权机构添加到被授权用户的集合中。直接的解决方案是要求验证者始终与凭证授权机构同步。但是,由于难以预测同步的间隔时间,所以这意味着整体性能变低。此外,在有大量验证者的情况中,他们将对凭证授权机构造成巨大负担。
更严重的是,有许多这样的情况,其中用户希望对验证者是匿名的。用户更希望向验证者隐藏已经在白名单中公布的用户的名字、标识符或者任何别的内容,即使他/她已经成功通过了向验证者的验证。很清楚,在希望保护用户隐私的情形中,供验证者查询的简单的白名单并非有效的解决方案。
另一个难题是由如下事实引起的:某些现存用户的对服务的访问权可能被凭证授权机构吊销。在任何实际应用系统中,许可被禁止的用户是明确不能接受的。乍看上去,解决方案可以只不过是一个由凭证授权机构维护的黑名单(Blacklist),其中列出了所有被禁止的用户。当用户A试图访问服务时,某个验证者必须确信该用户不在黑名单中。问题是,随着时间的流逝,黑名单将随着被禁止的用户的数量而线性增大。验证者必须投入越来越多的计算资源来将用户A与黑名单中公布的那些用户逐一比较。这样,效率会低得惊人。再者,验证者需要保持黑名单的本地拷贝,从而存白名单在验证者与凭证授权机构之间有效同步的问题。为了对付不断增加的黑名单,凭证授权机构可以在某个时刻更新其对于全部真正用户的设置,从而去除所有被禁止的用户,并重新得到空白的黑名单。这在某些程度上可能减轻了大白名单对验证者造成的性能问题。但是,如果凭证授权机构还剩余了大量的注册的真实用户,则对于凭证授权机构来说,更新其全部的真正用户是非常费力的。不只这些。当用户希望向验证者匿名验证时,无法使用简单的黑名单。因为在这种情况中,被禁止的用户没有可以被放入黑名单的唯一标识符,否则的话,将与匿名验证的要求相抵触。很明显用户的唯一标识符总是会暴露他/她的隐私。
学术上,用于隐私被保护的验证的白名单以及黑名单的问题已经被研究为对值的聚合(accumulate)。简单地说,一组值被聚合在一个聚合器(accumulator)中。这里,聚合一个值意思是计入该值的固有特性或者将该值放入一个池中。聚合器是指一个值,其将一组值考虑在内或者结合了一组值的固有特性。证明者可以向验证者证明一个特定的值被聚合在聚合器中,而根本不暴露被证明的这个值。可以想到,这类研究可以转换为白名单的实现。类似地,证明者可以向验证者证明他/她所持有的特定值没有被聚合在聚合器中,而根本不暴露被证明的这个值。可以想到,这类研究可以转换为黑名单的实现。数学上,虽然可以证明一个值不在聚合器中,但是这不如证明一个值被聚合在聚合器中的效率高。
J.Benaloh和M.de Mare在“One-way accumulators:A decentralizedalternative to digital signatures”,Advances in Cryptology-EUROCRYPT′93,volume 765 of LNCS,pages 274-285,Springer-Verlag,1994中首先引入了聚合器,作为这样一种方法,其将一组值组合为一个短的聚合器,使得有证据证明给定值被结合到了聚合器中。该思想被Benaloh和de Mare,N.Baric及B.Pfitzmann在″Collision-free accumulators and fail-stop signatureschemes without trees”,Advances in Cryptology-EUROCRYPT′97,volume1233 of LNCS,pages 480-494.Springer Verlag,1997中延伸,其提供了基于强RSA假设的所谓的抗冲突聚合器(collision-resistant accumulator)。所引用的文献中定义的聚合器的一个便利特性是:值可以以单位成本被逐个添加。但是,值从聚合器中的删除无法与所聚合的值的数量无关。J.Camenisch和A.Lysyanskaya作出了进一步的贡献。在他们的论文“Dynamic accumulators and application to efficient revocation of anonymouscredentials”,Advances in Cryptology-CRYPTO′2002,volume 2442 of LNCS,pages 61-76,2002中,提出了动态聚合器,这种聚合器允许动态地添加和删除输入,使得添加或者删除的开销与所聚合的值的数量无关。J.Camenisch和A.Lysyanskaya还为他们的动态聚合器递交了题为“Revocation of anonymous certificates,credentials,and access rights”的美国专利No.US200310177352。上述文献为了全部目的而通过引用结合于此。
现有技术的动态聚合器的优点在于添加或者删除的开销与所聚合的值的数量无关,换句话说,与被授权的用户的数量无关。但是,这种结论完全是从凭证授权机构的角度得出的。当一个用户被添加在聚合器中或者从聚合器中删除时,所有现存用户以及验证者必须更新他们已经持有的聚合器以及其他某些数据。值得注意的是,用户以及验证者更新这样的数据所不可避免的计算是由他们自己完成的(因此,从凭证授权机构的角度来看,是与所聚合的值的数量无关的)。但是对于每个用户以及验证者,时常向凭证授权机构查询最新的聚合的值和更新的聚合器带来了额外的开销。考虑到被删除的用户,验证者仍然必须不时地向凭证授权机构查询最近的聚合器,以便保护他/她不被新近删除的用户欺骗,而用户不必也这么做,以便降低用户在计算资源和网络资源消耗上的成本。此外,在某些情况中,真正用户的聚合的值可能被认为是秘密,应当永不公开。动态聚合器方案不能处理这种情况。
发明内容
本发明提供了一种能够在通信网络中保护用户隐私的高效用户验证系统和方法。
根据本发明的一个方面,提供了一种用于在通信网络中生成和更新用户验证数据的装置,包括:聚合器计算单元,适合于生成和更新用于聚合被授权用户的令牌的聚合器;与所述聚合器计算单元耦合的授权单元;和通信单元。授权单元包括令牌选择模块,适合于为要被授权的用户选择令牌;和与所述令牌选择模块耦合的凭证生成模块,适合于从所述令牌和所述聚合器生成凭证,其中所述凭证被用于用户证明所述令牌被聚合在所述聚合器中。通信单元与所述聚合器计算单元、所述授权单元和所述网络耦合,适合于在所述网络上公布所述聚合器以及将所述令牌和所述凭证传送给所述用户。
根据本发明的另一个方面,提供了一种用于在通信网络中生成和更新用户验证数据的方法,包括以下步骤:生成并公布用于聚合被授权用户的令牌的聚合器;为要被授权的用户选择令牌;从所述令牌和所述聚合器生成凭证,其中所述凭证被用于用户证明所述令牌被聚合在所述聚合器中;以及将所述凭证和所述令牌传送给所述被授权的用户。
根据本发明的另一个方面,提供了一种用于用户在通信网络中向验证者进行验证的终端。所述网络包括至少一个凭证授权机构。所述终端包括:耦合到所述网络的通信单元;与所述通信单元耦合的聚合器存储单元,适合于存储由所述凭证授权机构生成的聚合器;与所述通信单元耦合的令牌存储单元,适合于存储从所述凭证授权机构发出的令牌;与所述通信单元耦合的凭证存储单元,适合于存储由所述凭证授权机构从所述聚合器和所述令牌生成的凭证;与所述凭证存储单元耦合的导出凭证生成单元,适合于从存储在所述凭证存储单元中的凭证生成导出凭证;和与所述聚合器存储单元、所述令牌存储单元和所述导出凭证生成单元耦合的证明单元,适合于使用所述导出凭证与所述验证者执行知识证明,以证明所述令牌被聚合在所述聚合器中,而不暴露所述令牌。
根据本发明的另一个方面,提供了一种用于用户在通信网络中向验证者进行验证的方法。所述网络包括至少一个凭证授权机构。所述方法包括以下步骤:接收由所述凭证授权机构生成的聚合器;接收由所述凭证授权机构发出的令牌;接收由所述凭证授权机构从所述聚合器和所述令牌生成的凭证;从所述凭证计算导出凭证;以及使用所述导出凭证与所述验证者执行知识证明,以证明所述令牌被聚合在所述聚合器中,而不暴露所述令牌。
根据本发明的另一个方面,提供了一种通信系统,包括通过网络可操作地耦合的至少一个凭证授权机构装置、至少一个用户终端和至少一个验证者终端。凭证授权机构装置包括聚合器计算单元和与所述聚合器计算单元耦合的授权单元,其中,所述聚合器计算单元适合于生成和更新用于聚合被授权用户的令牌的聚合器,并且所述授权单元包括令牌选择模块和与所述令牌选择模块耦合的凭证生成模块。用户终端包括导出凭证生成单元和证明单元。验证者终端包括验证单元。当用户被授权时,所述令牌选择模块一个令牌,并且所述凭证生成模块从所述令牌和所述聚合器生成凭证,所述令牌和所述凭证被从所述凭证授权装置传送到所述用户终端;所述导出凭证生成单元适合于从所述凭证生成导出凭证;并且所述用户终端的证明单元与所述验证者终端的所述验证单元适合于使用所述导出凭证执行知识证明,以证明所述令牌被聚合在所述聚合器中,而不暴露所述令牌。
根据本发明的另一个方面,提供了一种用于在通信网络中验证用户的方法。所述网络包括至少一个凭证授权机构和至少一个验证者。所述方法包括以下步骤:由所述凭证授权机构生成并公布用于聚合被授权用户的令牌的聚合器;将由所述凭证授权机构发出的令牌和凭证传送给要被授权的用户,所述凭证是由所述凭证授权机构从所述令牌和所述聚合器生成的;由用户从所述凭证计算导出凭证;将所述导出凭证从所述用户传送到所述验证者;以及在所述用户与所述验证者之间使用所述导出凭证执行知识证明,以证明所述令牌被聚合在所述聚合器中,而不暴露所述令牌。
根据本发明的另一个方面,提供了一种具有机器可读介质的制品,所述机器可读介质上存储有指令,所述指令当被一个或多个处理器执行时,使得所述处理器:生成并公布用于聚合被授权用户的令牌的聚合器;为要被授权的用户选择令牌;从所述令牌和所述聚合器生成凭证,其中所述凭证被用于用户证明所述令牌被聚合在所述聚合器中;以及将所述凭证和所述令牌传送给所述被授权的用户。
根据本发明的另一个方面,提供了一种具有机器可读介质的制品,所述机器可读介质上存储有指令,所述指令当被一个或多个处理器执行时,使得所述处理器:接收由凭证授权机构生成的聚合器;接收由所述凭证授权机构发出的令牌;接收由所述凭证授权机构从所述聚合器和所述令牌生成的凭证;从所述凭证计算导出凭证;以及使用所述导出凭证与验证者执行知识证明,以证明所述令牌被聚合在所述聚合器中,而不暴露所述令牌。
根据本发明,所聚合的被授权用户的令牌可以是从不公开的秘密。当新的用户被CA授权的时候,用户和验证者不需要更新聚合器。这在低计算开销以及网络带宽消耗方面,对于CA、用户和验证者是有意义的。
此外,可以以压缩格式获取吊销更新信息,这在低计算开销以及网络带宽消耗方面是有利的。并且,可以以压缩格式公布吊销更新信息,这在低计算开销以及网络带宽消耗方面也是有利的。
此外,验证者可以从用户处代替从CA处接收最新的聚合器,并且用户可以从验证者处代替从CA处接收吊销更新信息,并从而同步到最新的聚合器。结果,CA的负担大大降低,而新近的用户验证数据可以迅速地传播。
附图说明
当结合附图一同阅读时,从下面的描述,可以更充分地理解本发明的上述以及其他目的、其各种特征以及本发明自身,附图中类似的参考标号指示类似的部分,附图中:
图1是示出了一个通信系统的示例的框图;
图2是示出了根据本发明的一个实施例,用户如何被凭证授权机构授权并且被验证者验证的过程的示图;
图3是示出了根据本发明的一个实施例,当曾经被授权的用户被禁止时的示例性过程的示图;
图4是示出了在两个吊销数据包(revocation packing)之间有两个吊销增量(revocation increment)的示例性情况的示图;
图5是示出了根据本发明的一个实施例,用户向凭证授权机构更新凭证和聚合器的示例性过程的流程图;
图6是示出了根据本发明的一个实施例,凭证授权机构、用户和验证者之间的示例性动作的示图;
图7是示出了根据本发明的一个实施例,凭证授权机构、用户和验证者之间的另一示例性动作的示图;
图8是示出了根据本发明的一个实施例,验证者向凭证授权机构进行更新的示例性过程的流程图;
图9是示出了根据本发明的一个实施例,当用户持有的聚合器过时的时候,用户向验证者进行验证的示例性过程的流程图;
图10是示出了根据本发明的一个实施例,当用户持有的聚合器过时的时候,验证者验证用户的示例性过程的流程图;
图11是示出了根据本发明的一个实施例的凭证授权机构的示例性装置的框图;
图12是示出了根据本发明的一个实施例的用户的示例性终端的框图;以及
图13是示出了根据本发明的一个实施例的验证者的示例性终端的框图。
具体实施方式
鉴于现有技术中的上述缺点作出了本发明。
参考附图,下面仅通过示例的方式详细描述本发明的优选实施例。
图1是示出了一个通信系统的示例的框图,其中有三种参与方,即凭证授权机构(CA)110、用户120和验证者130,他们通过网络100进行通信。
这里,网络100可以是任何类型的网络,包括但不限于任何计算机通信网络或者电信网络。用户可以是任何适合于连接到网络的客户端设备,例如计算机、手持设备、移动电话等。凭证授权机构CA可以是适合于连接到网络的设备,其管理服务的凭证。验证者可以是主机或者终端,其在正确验证了用户之后接受用户的请求。
具体地说,凭证授权机构CA是这样实体,其接受用户定购并向用户授予令牌和凭证以使得他们能够享受网络上的某种服务。验证者是服务中涉及的一方,当用户试图访问或者享受该服务时,验证者验证用户的授权数据,并接受或者拒绝用户的请求。
虽然没有示出,但是还可能有用于提供服务的服务提供者。逻辑上应当注意,CA可以是服务提供者外部的服务器或者主机,也可以是嵌入在服务提供者中的维护订户信息的模块。另外,验证者可以是服务的参与方的终端,也可以是服务提供者中的模块。现实中,验证者可以是提供诸如拍卖的在线服务的服务提供者,或者可以是P2P网络中的一个对端。例如,服务提供者是即时消息服务器,验证者是用户希望与之聊天的对端。当用户请求与该验证者聊天时,验证者判断用户是否被CA授权。在另一个示例中,验证者是在线数据库服务器。如果用户请求访问位于验证者终端上的数据库时,验证者在检查了用户的由CA授予的授权数据之后,接受用户的请求。在该示例中,验证者自身就是服务提供者。在某些情况中,CA和验证者可以在服务提供者内作为模块共存。也就是说,这里所说的CA、验证者和服务提供者可以被任意组合为一个或多个设备,或者被分为不同的设备。本领域的技术人员将指导本发明的这种概念以及实际的工程变化。
注意,为了简明,附图中只示出了一个凭证授权机构CA、一个用户和一个验证者。但是,每种参与方都可以有多个。
下面参考图2描述根据本发明的一个实施例,用户如何被凭证授权机构授权以及被验证者验证的方法。
首先,在初始化阶段(阶段1),CA使用模数n以及聚合器w对其自身进行初始化,其中模数n适合于作为强RSA假设的基础,聚合器w是Zn *中的随机数。优选地,n是两个安全素数的积,w属于QR(n),QR(n)是Zn *的二次剩余子群。另外,CA选择边界b<fi(n),其中fi(…)输出n的欧拉Φ值。CA随机的选择约定(commitment)z。并且,CA初始化空白的吊销数据,以供该服务的用户和可能的验证者查询。然后,CA通过安全方式公布n,w,b,z和吊销数据。例如,CA可以对n,w,z数字签名,其可以通过公知的公钥被验证。
然后,在授权阶段(阶段2),如果用户希望被CA授权,用户可以通过凭证授权机构的某种检验,例如,通过以面对面的方式出示他/她的社会保障卡,或者经由网络向凭证授权机构传送数字信息。此后,CA选择与fi(n)互质的适合的素数e,并计算c=w1/e(mod n)。二元组(c,e)将被交给用户,分别作为凭证和令牌。在强RSA假设下,给出w和在串通攻击情况中可能的这样的二元组的多项式有界集合,其他用户也难以找到二元组(c,e)。另外,CA将在其数据库中存储e。
在验证者希望验证任何用户之前,验证者应联系CA获取n,w,b和z。在验证阶段(阶段3),当用户要被验证者验证时,用户选择随机数t<b并计算c1=c*zt(mod n),c1被称为导出凭证。用户将导出凭证c1发送给验证者,并向验证者证明他/她知道表达式w=c1 x1*zx2。这里很明显,x1=e并且x2=-t*e,因此c1 e*z-t*e=(c*zt)e*z-t*e=ce=w(mod n)。可以通过传统手段有效地进行x1和x2的知识证明,而不暴露x1和x2,例如通过“D.Chaum,J.H.Evertse,J.van de Graaf,An Improved Protocol forDemonstrating Possession of Discrete Logarithms and SomeGeneralizations”,Advances in Cryptology-EUROCRYPTO’87,pp.127~141,1987中的方法,其通过引用结合于此。知识证明技术对于本领域的技术人员来说是公知的。
根据上述方法,可以发现,授权新的用户对于现存的真正用户没有任何影响。换句话说,其不仅与已经被聚合的值的数量无关,而且与要被聚合的值的数量无关。
下面将参考图3描述根据本发明的一个实施例,曾经被授权的用户如何被禁止(即,该用户的令牌被吊销)的方法。
假设拥有CA授予的(ca,ea)的用户A要被禁止,CA在其吊销数据中公布ea并将聚合器w更新为wa=w1/ea(mod n)。二元组(ea,wa)形成了吊销增量。看到吊销增量(ea,wa)后,除了用户A之外的现存用户(称为用户B,其拥有(cb,eb))将根据扩展欧几里得算法(Extended Euclidean Algorithm)计算u*eb+v*ea=1。只要CA为不同用户选择了不同素数e,就有唯一的u和v满足u*eb+v*ea=1。最终,用户B将其cb更新为cb1=wa u*cb v(mod n),用户B所持有的新的二元组是(cb1,eb),其中cb1是凭证,eb是令牌。很容易验证cb1 eb=wa u*eb*cb v*eb=wa u*eb*wv=wa u*eb*(wa ea)v=wa (u*eb+ v*ea)=wa(mod n),这意味着用户B自己计算了与更新的聚合器相对应的新的凭证。另一方面,如果RSA难题是困难的,则给出吊销增量(ea,wa),计算满足ca1 ea=wa(mod n)的ca1是不可能的。
很明显,在聚合器w已经被更新为wa之后,当新的用户要被凭证授权机构授权时,应使用wa来计算用于新用户的凭证和令牌。先前的w将不再使用。
概念上,本发明所使用的聚合器已经预先聚合了全部可能的令牌。但是,在现有技术中,任何时刻要授权一个新的用户,都明确需要更新聚合器。需要强调的是,虽然在本发明中已经预先聚合了所有可能的令牌,但是没有CA的帮助,是得不到凭证的。这一点通过强RSA假设而被保证。
除了上述基本的吊销方法之外,假设在用户B最后一次更新其凭证和聚合器(从而用户B拥有cb eb=w(mod n))之后,有k个用户已经被禁止,即CA公布了k个吊销增量(e1,w1),(e2,w2),…,(ek,wk)。现在,当用户B为了更新其凭证而联系CA时,用户B可以:1)从CA获取e1,e2,…,e(k-1)和(ek,wk);2)计算E=(e1*e2*…*ek);并且3)找到满足u*eb+v*E=1的u和v。只要CA为不同用户选择了不同的素数e,eb和E的最大公约数是1。因此,根据扩展欧几里得算法,有唯一的u和v满足u*eb+v*E=1。用户B将其cb更新为cb1=wk u*cb v(mod n)。注意,wk=(w(k- 1))1/e(k-1)=((w(k-2))1/e(k-2))1/e(k-1)=…=w1/E(mod n),很容易验证cb1 eb=wk u*eb*cb v*eb=wk u*eb*wv=wk u*eb*(wk E)v=wk (u*eb+v*E)=wk(mod n),这意味着用户B已经得到了与最新的聚合器相对应的凭证。
在网络带宽利用以及计算消耗方面,这种压缩的吊销增量方法的优点是显著的。代替根据传统技术从CA获取(e1,w1),(e2,w2),…,(ek,wk),用户B现在只需要获取e1,e2,…,ek和wk。显然,省略了(k-1)/2k%的数据传输。例如,k=10,则网络的使用节省了45%。考虑计算消耗,根据传统技术,由于每个吊销增量需要2个模指数运算,所以不可避免地有2k个模指数运算。而压缩的吊销增量方法恒定地需要2个模指数运算。显然,除去了(2k-2)/2k%,即(k-1)/k%的最为昂贵的模指数运算。例如,k=10,则计算消耗节省了90%。
根据CA的策略,CA可以公布如上面的(e,w)形式的吊销增量,其中e是被吊销的令牌,w是e被吊销后的更新的聚合器。或者CA可以公布(e1,e2,…,ek,w)的压缩形式的吊销增量,其中ei,i=1,2,…,k,是属于被禁止的k个用户的令牌,w是这些用户被禁止之后的更新的聚合器。
根据CA的策略,CA可以公布吊销数据包,其中在后的吊销数据包实际上是在在前的吊销数据包之后出现的吊销增量的压缩形式。具体地说,在后的吊销数据包包括更新的聚合器和在在前的吊销数据包之后出现的每个被吊销的令牌的乘积。假设在在后的吊销数据包Pi公布之后,k个用户被禁止,他们的令牌分别是ei,i=1,2,…,k。在后的吊销数据包P(i+1)是(E(i+1),w(i+1)),其中E(i+1)=e1*e2*…*ek,w(i+1)是在这些用户被禁止之后的更新的聚合器。与上述压缩的吊销增量方法相比,用户获取E(i+1)而不是e1,e2,…,ek,并且用于计算e1*e2*…*ek,w(i+1)的步骤被省略。
CA的策略可以例如是每周公布吊销数据包,或者每10个用户被禁止销时公布吊销数据包。
图4图示了在两个吊销数据包之间有两个吊销增量的情况。
由于在后的吊销数据包吸收了在在前的吊销数据包之后出现的全部吊销增量,所以可以推断出在图4中,E(i+1)=ej*e(j+1)并且w(i+1)=w(j+1)。这大大有益于网络利用。假设并不涉及关键服务的验证者选择了只利用吊销数据包进行更新的策略。如果验证者已经更新到吊销数据包Pi,当在时刻T他希望再次与CA更新时,他将更新到数据包P(i+1),这意味着他只需要从CA获取(E(i+1),w(i+1))。作为比较,利用压缩的吊销增量方法,用户需要获取ej,e(j+1)和w(j+1)。节省并非是直接的。因为E(i+1)=ej*e(j+1),所以用于E(i+1)的发送字节和用于ej加e(j+1)的发送字节是相同的。但是,由于CA必须以安全方式公布这些吊销信息,传输中确实省略了一些东西。例如,如果CA对吊销信息数字签名,则ej和e(j+1)将分别附带有数据签名。现在,很清楚,当引入吊销数据包时,传送E(i+1)而不是ej和e(j+1),节省了一个数字签名。在该示例中,就数字签名减少来说,节约了大约33%。通常,如果在两个吊销数据包之间出现k个吊销增量,与压缩的吊销增量的方法相比,节省了(k-1)/(k+1)%。例如,如果k=10,则要被传送的数字签名节省了约82%。
图5图示了为了向CA更新凭证和聚合器,用户将执行的流程。如图5所示,在框501,用户确定是否需要更新。如果是,则在框502,用户确定用于更新的策略。在框502,如果确定出策略是仅仅用吊销数据包进行更新,则在框503,用户获取在上一次更新之后CA公布的吊销数据包,然后在框505,根据所获取的吊销数据包,更新所持有的凭证和聚合器。否则,在框504,用户获取在上一次更新之后CA公布的吊销数据包和压缩的吊销增量,然后在框505,根据所获取的吊销数据包和压缩的吊销增量更新所持有的凭证和聚合器。
图6从系统体系结构的角度图示了根据本发明的一个实施例,CA、用户和验证者之间的动作和配合。
如图6所示,CA向用户授予凭证和令牌(601)。验证者只需要联系CA以获得最新的聚合器(603),而用户所需要的是吊销增量或者吊销数据包(602)。需要注意,只有当新近有用户被禁止时,才有被CA公布并且要被用户接收的吊销增量。类似地,只有当新近有用户被禁止时,才有被CA公布并且要被验证者接收的最新的聚合器。因为只有当有用户被禁止时才需要联系CA进行更新,所以较大的更新间隔是可能的,这自然得到高效的结论。在例如每天有10个用户被授权并且有一个用户被禁止的增长的系统中,优点是明显的。此外,可以仅仅依赖于吊销的历史来设计更新间隔。例如,验证者可以基于先前的令牌被吊销时的时间序列的历史,来预测下一次更新的时间。其中当新的用户被授权时必须联系CA进行更新的现有技术不能受益于简化的设计。
利用更新的数据,用户可以向验证者进行验证(604)。
如图6所示,除了从CA接收最近的聚合器之外,验证者可以从用户接收更新的聚合器(605)。例如当用户过去担当过验证者并且从CA获得了最近的聚合器时,可能发生该情况。当用户后来试图向不具有最新聚合器的验证者进行验证时,用户可以将这些信息发送给验证者。由于更新的聚合器被CA安全地公布,例如,被CA数字签名,因此对于验证者来说,接受不是来自CA而是来自要被验证的用户的更新的聚合器是安全的。
在其中验证者愿意缓存一定量的吊销数据的另一实施例中,用户可以更新他/她的凭证,其中,必要的吊销信息是从验证者处接收的,如图7所示。
例如当用户只更新到了CA在2005年1月1日公布的聚合器,而验证者更新到了CA在2005年1月10日公布的聚合器的时候,将发生这种情形。在1月1日与1月10日之间,有两个用户被CA禁止,即用户P和用户Q。因此,在1月1日之后有两个令牌ep和eq被吊销。假设验证者缓存了吊销增量(ep,wp)和(eq,wq)(703),当用户试图向验证者验证时,由于用户持有的聚合器过时了10天,如果验证者接受过时不超过15天的聚合器,则用户可以基于10天之前公布的聚合器,直接向验证者进行验证。另一方面,如果验证者接受过时不超过7天的聚合器,则验证者可以根据压缩的吊销增量方法,将ep、eq和wq发送给用户(705)。由于吊销增量是由CA安全地公布的,例如,由CA数字签名,所以用户可以接受它们,并相应地计算其凭证,并更新到最新的聚合器。此后,用户可以再次联系验证者,并基于最新的聚合器重新验证。此时,真正的用户无疑将通过验证。可以构建类似的示例,其中用户从验证者接收吊销数据包。
由于只有某个时间阈值之内的吊销信息会被验证者缓存,所以对于没有大量恶意用户的系统,验证者的存储成本相对较小并且能够负担。如果某些活跃的验证者向CA同步了最新的聚合器,并存储了适量的吊销信息(703),可以想象,这些信息将迅速传播给到用户和其他验证者,而不再需要这些用户和验证者联系CA。在降低CA负担方面,尤其是在P2P环境中,这相当高效。
图8示出了为了向CA更新,验证者将执行的示例流程。如图8所示,在框801,验证者确定是否需要更新。如果是,则在框802,验证者确定是否只需要更新聚合器。如果是,则在框803,验证者获取CA公布的更新的聚合器。否则,在框804,验证者获取在上一次更新之后CA公布的吊销数据包和压缩吊销增量。
图9示出了当用户由于所持有的聚合器过时而向验证者验证失败时,用户将执行的示例流程。当用户持有的聚合器过时,即比验证者持有的聚合器陈旧时,用户向验证者的验证将失败(框901)。如图9所示,在框902,用户检查是否他/她的聚合器过时了。如果是,则在框903,用户尝试从验证者获取适当的吊销更新信息,并在框904,更新所持有的凭证和聚合器。然后,用户将通过更新的数据向验证者进行验证(框905)。如果在框902,确定出用户所持有的聚合器并没有过时,则过程进行到后处理(框905),其中例如用户可以尝试从CA获取新的令牌和凭证,或者如果验证者所持有的数据过时,则等待验证者更新他的数据。
图10示出了当用户由于所持有的聚合器过时而向验证者验证失败时(框1001),验证者将执行的示例流程。对应于图9所示的过程,在框1002,如果确定出用户所持有的聚合器过时了,则在框1003,验证者检查其缓存的吊销更新信息。如果缓存的吊销更新信息适合用户进行更新,则在框1004,验证者将其发送给用户。在用户更新其数据之后,用户可以重新向验证者进行验证(框1005)。如果在框1002确定出用户所持有的聚合器没有过时,则处理进行到后处理(框905),其中例如验证可以拒绝用户,或者尝试更新其所持有的数据。
用户向验证者验证失败也可能是因为验证者所持有的聚合器过期,即比用户持有的聚合器陈旧。类似地,如果确定出验证者持有的聚合器过时了,则验证者可以将其所持有的聚合器更新为与用户持有的一样新,并且重新执行验证。在该情况中,如上所述,验证者可以从用户或者CA处接收更新的数据。
在本发明的另一个实施例中,除了最新更新的数据之外,用户还可以保存一定数量的旧数据(例如,过去的聚合器以及它们对应的凭证)。如果在验证期间确定出验证者持有的聚合器过时了,则用户可以使用与该验证者所持有的聚合器相对应的旧数据来重新执行验证。类似地,验证者也可以保存一定数量的过去的聚合器。如果在验证期间确定出用户持有的聚合器过时了,则验证者可以使用与该用户所持有的数据相对应的旧的聚合器来重新执行验证。例如,当验证者能够承担一定的风险,或者确信在所述旧的数据公布时刻之后的CA动作将不会影响对该用户的信任的时候,可以出现上述情况。
如上所述,如果用户向验证者验证失败,用户可以从验证者处获得更新的信息,或者验证者可以从用户处获得更新的信息。但是,当验证失败时,验证者和用户中的任一个都可以向CA进行更新。根据具体的环境,更新策略是灵活的。
根据本发明,被聚合的值可以是从不公开的秘密。当新的用户被CA授权的时候,用户和验证者不需要更新聚合器。这在低计算开销以及网络带宽消耗方面,对于CA、用户和验证者是有意义的。
此外,可以以压缩格式获取吊销更新信息,这在低计算开销以及网络带宽消耗方面是有利的。并且,可以以压缩格式公布吊销更新信息,这在低计算开销以及网络带宽消耗方面也是有利的。
此外,验证者可以从用户处代替从CA处接收最新的聚合器,并且用户可以从验证者处代替从CA处接收吊销更新信息,并从而同步到最新的聚合器。结果,CA的负担大大降低,而新近的用户验证数据可以迅速地传播。
图11示出了根据本发明一个实施例的示例性CA装置110。
装置110主要包括用于生成和更新聚合器的聚合器计算单元111、用于授权用户访问服务的授权单元112,以及通信单元114,通信单元114耦合到聚合器计算单元111和授权单元112,用于在网络上公布数据并与用户通信。
授权单元可以包括彼此耦合的令牌选择模块117和凭证生成模块118。当新的用户要被授权访问服务时,令牌选择模块117为该用户选择一个令牌,并且凭证生成模块118使用聚合器和令牌选择模块117所选择的令牌,计算用于该用户的凭证。然后,通信单元114将所选择的令牌和所计算的凭证传送给用户。
聚合器计算单元111可以包括用于生成初始聚合器的初始聚合器生成模块115,以及用于当一个或多个令牌被吊销时更新聚合器的聚合器更新模块116。
装置110还包括耦合到聚合器计算单元111的吊销增量单元113。当一个或多个令牌被吊销时,吊销增量单元113根据本发明的方法,生成吊销增量数据,并经由通信单元114公布该数据。例如,吊销增量单元113可以将吊销增量数据组装为如上所述的一组吊销增量、压缩的吊销增量或者吊销数据包。
如果用户在被授权访问服务之前必须经过某种检验,则CA装置110还可以包括用于执行这种检验的检验单元。
此外,装置110还可以包括存储单元119,用于存储CA所使用的数据,例如授予用户的令牌、系统参数、各个单元所使用的数据等等。
装置110还可以包括控制单元101,用于控制CA的策略以及每个单元或部件的整体操作。例如,控制单元101确定更新的时间和吊销增量数据的格式。根据具体应用,装置110还可以包括其他单元,例如用于接收和分析来自用户的授权请求的单元、用于选择了计算RSA参数或者其他系统参数的单元等等。由于本领域的技术人员可以容易地添加这样的单元或者部件,因此省略对其的详细描述。
装置110可以是连接到网络的独立装置,或者是服务器的一部分。它可以被实现为专用硬件,或者基于通用硬件功能的编程的功能模块。
图12示出了根据本发明一个实施例的示例性用户终端120。
用户终端120主要包括聚合器存储单元121、令牌存储单元123、凭证存储单元122、导出凭证生成单元125、证明单元126和通信单元127,其中聚合器存储单元121用于存储聚合器;令牌存储单元123用于存储CA授予的令牌;凭证存储单元122用于存储CA授予的凭证;导出凭证生成单元125耦合到凭证存储单元123;证明单元126耦合到聚合器存储单元121、令牌存储单元123和导出凭证生成单元125;通信单元127耦合到上述各单元,用于与CA和验证者通信。注意,根据本发明的一个实施例,聚合器存储单元121和凭证存储单元122分别只存储最新的聚合器和凭证。然而,在本发明的另一个实施例中,除了最新的聚合器和凭证之外,聚合器存储单元121和凭证存储单元122还存储一定数量的过去的聚合器和凭证。
在用户被CA授权访问服务之后,导出凭证生成单元125从存储在凭证存储单元122中的凭证生成导出凭证。通过导出凭证,证明单元126可以如上所述地与验证者执行知识证明。
用户终端120还包括与聚合器存储单元121和凭证存储单元122耦合的更新单元124。在经由通信单元127从CA或者验证者接收吊销增量数据之后,更新单元124基于吊销增量数据,计算更新的凭证,并更新存储在聚合器存储单元121中的聚合器以及存储在凭证存储单元122中的凭证。此后,导出凭证生成单元125将从更新的凭证计算出导出凭证。在与验证者的知识证明中,将使用新的导出凭证。
另外,用户终端120还可以包括用于控制各单元操作的控制单元128。例如,控制单元128确定是否到了该更新数据的时刻,并且确定是从CA还是从验证者接收更新的信息。除了上述存储单元之外,用户终端120可以包括其他存储单元,用于存储在终端操作期间所需的其他数据和信息。这些存储单元可以彼此独立,或者作为不同的存储区合并在单个存储器中。
图13示出了根据本发明一个实施例的示例性验证者终端130。
如图13所示,验证者终端130主要包括更新单元131、验证单元132、服务单元133、通信单元134、存储单元135和控制单元136。验证单元132耦合到通信单元134,并适合于通过知识证明对用户进行验证。如果验证单元132确定出用户是被CA授权的,即证明出用户的令牌被聚合在聚合器中,则它通知服务单元133。然后,服务单元133可以开始向用户提供服务,例如,允许用户访问验证者终端130的特定内容或者开始与用户的即时会话。更新单元131耦合到验证单元132。在控制单元136的控制下,更新单元131从CA或者用户处获取更新的聚合器或者吊销增量数据。更新的聚合器被验证单元132用于验证用户。存储单元135用于存储验证者终端130的操作所需的数据。根据本发明的一个实施例,存储单元135还存储由CA公布的吊销数据(例如吊销数据包或压缩的吊销增量)。此外,根据本发明的另一个实施例,除了最新的数据之外,存储单元135还存储一定数量的历史数据,例如,一系列过去的聚合器。控制单元136控制各个单元的操作。例如,控制单元136确定更新的时刻和方式。在本发明的一个实施例中,控制单元136确定是从用户还是从CA接收更新的聚合器,或者确定是否向用户提供缓存的吊销数据。
上面已经描述了CA装置以及用户和验证者的终端的示例。但是,它们的结构并不限于任何特定的实施例。可以有许多替换的结构或者对它们有许多修改。例如,所描述的两个或者更多个单元可以被组合为单个硬件(例如,图12所示的聚合器存储单元121、凭证存储单元122和令牌存储单元123可以是单个存储器)。一个单元也可以被分为不同的单元(例如,图13所示的存储单元135可以被分为分别建立在更新单元131、验证单元132、服务单元133、控制单元136等中的若干存储器件)。此外,用户终端120和验证者终端130可以被组合在一个终端中。这种情况发生在用户在网络中有时也担当验证者的时候。
CA装置、用户终端和验证者终端可以基于专用硬件实现,或者基于通用硬件实现。例如,如果终端被实现为通用计算机,终端还可以包括在通用计算机中出现的通用单元,例如键盘、显示器、数据总线等等。在这样的实现方式中,上述控制单元可以是计算机的中央处理单元(CPU),并且每个单元可以是软件模块,当被执行时,使得CPU执行预定的过程。
本发明可以实现为硬件、软件、固件或者它们的组合,并且可以用在它们的系统、子系统、部件或者子部件中。当以软件方式实现时,本发明的元素实质上是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
本发明可以以其他的具体形式实现,而不脱离其精神和本质特征。例如,特定实施例中所描述的算法可以被修改,而系统体系结构并不脱离本发明的基本精神。因此,当前的实施例在所有方面都被看作是示例性的而非限定性的,本发明的范围由所附权利要求而非上述描述定义,并且,落入权利要求的含义和等同物的范围内的全部改变从而都被包括在本发明的范围之中。
Claims (26)
1.一种用于在通信网络中生成和更新用户验证数据的装置,包括:
聚合器计算单元,适合于生成和更新用于聚合被授权用户的令牌的聚合器;
与所述聚合器计算单元耦合的授权单元,所述令牌选择单元包括令牌选择模块和与所述令牌选择模块耦合的凭证生成模块,所述令牌选择模块适合于为要被授权的用户选择令牌,并且所述凭证生成模块适合于从所述令牌和所述聚合器生成凭证,其中所述凭证被用于用户证明所述令牌被聚合在所述聚合器中;和
与所述聚合器计算单元、所述授权单元和所述网络耦合的通信单元,适合于在所述网络上公布所述聚合器以及将所述令牌和所述凭证传送给所述用户。
2.根据权利要求1所述的装置,其中
所述聚合器计算单元包括初始聚合器生成模块和聚合器更新模块,所述初始聚合器生成模块适合于生成初始聚合器,所述聚合器更新模块适合于基于一个或多个被吊销的令牌,更新所述聚合器,并且
所述装置还包括与所述聚合器计算单元耦合的吊销增量单元,适合于生成和公布吊销增量数据,所述吊销增量数据包括更新的聚合器以及关于所述被吊销的令牌的增量数据。
3.根据权利要求2所述的装置,其中,所述吊销增量单元将所述吊销增量数据生成为下列至少一种:
一组吊销增量,其中每个所述吊销增量包括所述被吊销的令牌中的一个,以及在该令牌被吊销之后计算的相应的聚合器;
压缩的吊销增量,包括所述更新的聚合器,以及每个所述被吊销的令牌;以及
吊销数据包,包括所述更新的聚合器,以及每个所述被吊销的令牌的乘积。
4.一种用于在通信网络中生成和更新用户验证数据的方法,包括以下步骤:
生成并公布用于聚合被授权用户的令牌的聚合器;
为要被授权的用户选择令牌;
从所述令牌和所述聚合器生成凭证,其中所述凭证被用于用户证明所述令牌被聚合在所述聚合器中;以及
将所述凭证和所述令牌传送给所述被授权的用户。
5.根据权利要求4所述的方法,还包括:当一个或多个令牌被吊销时,
基于所述被吊销的令牌,更新所述聚合器;以及
生成并公布从上一次更新的时刻开始计算的吊销增量数据,其中,所述吊销增量数据包括更新的聚合器以及关于从上一次更新的时刻开始的所述被吊销的令牌的增量数据。
6.根据权利要求5所述的方法,其中,所述吊销增量数据被公布为下列形式中的至少一种:
一组吊销增量,其中每个所述吊销增量包括所述被吊销的令牌中的一个,以及在所述令牌被吊销之后计算的相应的聚合器;
压缩的吊销增量,包括所述更新的聚合器,以及每个所述被吊销的令牌;以及
吊销数据包,包括所述更新的聚合器,以及每个所述被吊销的令牌的乘积。
7.一种用于用户在通信网络中向验证者进行验证的终端,所述网络包括至少一个凭证授权机构,所述终端包括:
耦合到所述网络的通信单元;
与所述通信单元耦合的聚合器存储单元,适合于存储由所述凭证授权机构生成的聚合器;
与所述通信单元耦合的令牌存储单元,适合于存储从所述凭证授权机构发出的令牌;
与所述通信单元耦合的凭证存储单元,适合于存储由所述凭证授权机构从所述聚合器和所述令牌生成的凭证;
与所述凭证存储单元耦合的导出凭证生成单元,适合于从存储在所述凭证存储单元中的凭证生成导出凭证;和
与所述聚合器存储单元、所述令牌存储单元和所述导出凭证生成单元耦合的证明单元,适合于使用所述导出凭证与所述验证者执行知识证明,以证明所述令牌被聚合在所述聚合器中,而不暴露所述令牌。
8.根据权利要求7所述的终端,还包括与所述聚合器存储单元和所述凭证存储单元耦合的更新单元,适合于基于从所述凭证授权机构和所述验证者中的一个接收的吊销增量数据,更新存储在所述聚合器存储单元中的聚合器和存储在所述凭证存储单元中的凭证。
9.根据权利要求8所述的终端,其中,所述聚合器存储单元除了最新更新的聚合器之外还存储预定量的过去的聚合器,并且所述凭证存储单元除了最新更新的凭证之外还存储预定量的过去的凭证。
10.一种用于用户在通信网络中向验证者进行验证的方法,所述网络包括至少一个凭证授权机构,所述方法包括以下步骤:
接收由所述凭证授权机构生成的聚合器;
接收由所述凭证授权机构发出的令牌;
接收由所述凭证授权机构从所述聚合器和所述令牌生成的凭证;
从所述凭证计算导出凭证;以及
使用所述导出凭证与所述验证者执行知识证明,以证明所述令牌被聚合在所述聚合器中,而不暴露所述令牌。
11.根据权利要求10所述的方法,还包括:
从所述凭证授权机构和所述验证者中的一个接收吊销增量数据;以及
基于所述吊销增量数据,更新所述聚合器和所述凭证。
12.根据权利要求11所述的方法,还包括
存储除了最新更新的聚合器和凭证之外的预定量的过去的聚合器和凭证,并且其中
所述执行知识证明的步骤包括使用从与所述验证者保持的聚合器相对应的凭证计算出的导出凭证,与所述验证者执行知识证明。
13.一种通信系统,包括通过网络可操作地耦合的至少一个凭证授权机构装置、至少一个用户终端和至少一个验证者终端,其中
所述凭证授权机构装置包括聚合器计算单元和与所述聚合器计算单元耦合的授权单元,其中,所述聚合器计算单元适合于生成和更新用于聚合被授权用户的令牌的聚合器,并且所述授权单元包括令牌选择模块和与所述令牌选择模块耦合的凭证生成模块;
所述用户终端包括导出凭证生成单元和证明单元;并且
所述验证者终端包括验证单元,并且其中
当所述用户被授权时,所述令牌选择模块一个令牌,并且所述凭证生成模块从所述令牌和所述聚合器生成凭证,所述令牌和所述凭证被从所述凭证授权装置传送到所述用户终端;
所述导出凭证生成单元适合于从所述凭证生成导出凭证;并且
所述用户终端的证明单元与所述验证者终端的所述验证单元适合于使用所述导出凭证执行知识证明,以证明所述令牌被聚合在所述聚合器中,而不暴露所述令牌。
14.根据权利要求13所述的系统,其中
所述凭证授权机构装置还包括吊销增量单元,并且
当一个或多个令牌被吊销时,所述聚合器计算单元基于所述被吊销的令牌,更新所述聚合器;并且所述吊销增量单元生成并公布吊销增量数据,所述吊销增量数据包括更新的聚合器以及关于所述被吊销的令牌的增量数据。
15.根据权利要求14所述的系统,其中,所述吊销增量数据被公布为下列形式中的至少一种:
一组吊销增量,其中每个所述吊销增量包括所述被吊销的令牌中的一个,以及在所述令牌被吊销之后计算的相应的聚合器;
压缩的吊销增量,包括所述更新的聚合器,以及每个所述被吊销的令牌;以及
吊销数据包,包括所述更新的聚合器,以及每个所述被吊销的令牌的乘积。
16.根据权利要求14所述的系统,其中,所述用户终端还包括更新单元,用于基于从所述凭证授权机构装置和所述验证者终端中的一个接收的所述吊销增量数据,更新所述用户终端保持的聚合器和所述凭证。
17.根据权利要求14所述的系统,其中,所述验证者终端还包括更新单元,用于通过从所述凭证授权机构装置和所述用户终端中的一个接收的更新的聚合器,更新所述验证者终端保持的聚合器。
18.一种用于在通信网络中验证用户的方法,所述网络包括至少一个凭证授权机构和至少一个验证者,所述方法包括以下步骤:
由所述凭证授权机构生成并公布用于聚合被授权用户的令牌的聚合器;
将由所述凭证授权机构发出的令牌和凭证传送给要被授权的用户,所述凭证是由所述凭证授权机构从所述令牌和所述聚合器生成的;
由用户从所述凭证计算导出凭证;
将所述导出凭证从所述用户传送到所述验证者;以及
在所述用户与所述验证者之间使用所述导出凭证执行知识证明,以证明所述令牌被聚合在所述聚合器中,而不暴露所述令牌。
19.根据权利要求18所述的方法,还包括:当一个或多个令牌被所述凭证授权机构吊销时,
由所述凭证授权机构基于所述被吊销的令牌,更新所述聚合器;以及
由所述凭证授权机构公布从上一次更新的时刻开始计算的吊销增量数据,其中,所述吊销增量数据包括更新的聚合器以及关于从上一次更新的时刻开始的所述被吊销的令牌的增量数据。
20.根据权利要求19所述的方法,其中,所述吊销增量数据被公布为下列形式中的至少一种:
一组吊销增量,其中每个所述吊销增量包括所述被吊销的令牌中的一个,以及在所述令牌被吊销之后计算的相应的聚合器;
压缩的吊销增量,包括所述更新的聚合器,以及每个所述被吊销的令牌;以及
吊销数据包,包括所述更新的聚合器,以及每个所述被吊销的令牌的乘积。
21.根据权利要求19所述的方法,还包括:用户基于从所述凭证授权机构和所述验证者中的一个接收的所述吊销增量数据,更新所保持的聚合器和凭证。
22.根据权利要求19所述的方法,还包括:验证者通过从所述凭证授权机构和所述用户中的一个接收的更新的聚合器,更新所保持的聚合器。
23.一种具有机器可读介质的制品,所述机器可读介质上存储有指令,所述指令当被一个或多个处理器执行时,使得所述处理器:
生成并公布用于聚合被授权用户的令牌的聚合器;
为要被授权的用户选择令牌;
从所述令牌和所述聚合器生成凭证,其中所述凭证被用于用户证明所述令牌被聚合在所述聚合器中;以及
将所述凭证和所述令牌传送给所述被授权的用户。
24.根据权利要求23所述的制品,其中,所述指令还使得所述处理器:
当一个或多个令牌被吊销时,基于所述被吊销的令牌更新所述聚合器;以及
生成并公布从上一次更新的时刻开始计算的吊销增量数据,其中,所述吊销增量数据包括更新的聚合器以及关于从上一次更新的时刻开始的所述被吊销的令牌的增量数据。
25.一种具有机器可读介质的制品,所述机器可读介质上存储有指令,所述指令当被一个或多个处理器执行时,使得所述处理器:
接收由凭证授权机构生成的聚合器;
接收由所述凭证授权机构发出的令牌;
接收由所述凭证授权机构从所述聚合器和所述令牌生成的凭证;
从所述凭证计算导出凭证;以及
使用所述导出凭证与验证者执行知识证明,以证明所述令牌被聚合在所述聚合器中,而不暴露所述令牌。
26.根据权利要求25所述的制品,其中,所述指令还使得所述处理器:
从所述凭证授权机构和所述验证者中的一个接收吊销增量数据;以及
基于所述吊销增量数据,更新所述聚合器和所述凭证。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2005101235433A CN1968086B (zh) | 2005-11-17 | 2005-11-17 | 用于通信网络的用户验证系统和方法 |
CA2568402A CA2568402C (en) | 2005-11-17 | 2006-11-16 | User authentication system and method for a communications network |
EP06124173A EP1788746A3 (en) | 2005-11-17 | 2006-11-16 | User authentication system and method for a communications network |
JP2006311091A JP2007143163A (ja) | 2005-11-17 | 2006-11-17 | 通信ネットワークにおける利用者認証システムおよびその方法 |
US11/561,330 US20070150944A1 (en) | 2005-11-17 | 2006-11-17 | User authentication system and method for a communications network |
KR1020060113877A KR100890078B1 (ko) | 2005-11-17 | 2006-11-17 | 통신 네트워크에 대한 사용자 인증 시스템 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2005101235433A CN1968086B (zh) | 2005-11-17 | 2005-11-17 | 用于通信网络的用户验证系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1968086A true CN1968086A (zh) | 2007-05-23 |
CN1968086B CN1968086B (zh) | 2011-11-09 |
Family
ID=37834232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005101235433A Expired - Fee Related CN1968086B (zh) | 2005-11-17 | 2005-11-17 | 用于通信网络的用户验证系统和方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20070150944A1 (zh) |
EP (1) | EP1788746A3 (zh) |
JP (1) | JP2007143163A (zh) |
KR (1) | KR100890078B1 (zh) |
CN (1) | CN1968086B (zh) |
CA (1) | CA2568402C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102611688A (zh) * | 2011-12-15 | 2012-07-25 | 天津市通卡公用网络系统有限公司 | 终端pos装置黑名单数据远程更新方法 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8060920B2 (en) * | 2008-06-20 | 2011-11-15 | Microsoft Corporation | Generating and changing credentials of a service account |
US8453258B2 (en) * | 2010-09-15 | 2013-05-28 | Bank Of America Corporation | Protecting an electronic document by embedding an executable script |
US8839381B2 (en) | 2010-12-07 | 2014-09-16 | Microsoft Corporation | Revoking delegatable anonymous credentials |
US8955084B2 (en) * | 2011-11-10 | 2015-02-10 | Blackberry Limited | Timestamp-based token revocation |
CN111581223B (zh) * | 2020-04-11 | 2023-08-22 | 北京城市网邻信息技术有限公司 | 一种数据更新方法、装置、终端设备及存储介质 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AUPQ291299A0 (en) * | 1999-09-17 | 1999-10-07 | Silverbrook Research Pty Ltd | A self mapping surface and related applications |
US20050160272A1 (en) * | 1999-10-28 | 2005-07-21 | Timecertain, Llc | System and method for providing trusted time in content of digital data files |
KR100319255B1 (ko) * | 1999-12-30 | 2002-01-05 | 서평원 | 이동통신 단말기의 개인 정보 데이터 및 일정 관리 데이터관리 방법 |
JP3588042B2 (ja) * | 2000-08-30 | 2004-11-10 | 株式会社日立製作所 | 証明書の有効性確認方法および装置 |
US7543139B2 (en) * | 2001-12-21 | 2009-06-02 | International Business Machines Corporation | Revocation of anonymous certificates, credentials, and access rights |
US20030233557A1 (en) * | 2002-06-13 | 2003-12-18 | Zimmerman Thomas Guthrie | Electronic signature verification method and apparatus |
US7221650B1 (en) * | 2002-12-23 | 2007-05-22 | Intel Corporation | System and method for checking data accumulators for consistency |
US7366906B2 (en) * | 2003-03-19 | 2008-04-29 | Ricoh Company, Ltd. | Digital certificate management system, digital certificate management apparatus, digital certificate management method, program and computer readable information recording medium |
JP4504099B2 (ja) * | 2003-06-25 | 2010-07-14 | 株式会社リコー | デジタル証明書管理システム、デジタル証明書管理装置、デジタル証明書管理方法、更新手順決定方法およびプログラム |
US7350003B2 (en) * | 2003-09-25 | 2008-03-25 | Intel Corporation | Method, system, and apparatus for an adaptive weighted arbiter |
US7623543B2 (en) * | 2004-03-19 | 2009-11-24 | Fujitsu Limited | Token-controlled data transmissions in communication networks |
US8938799B2 (en) * | 2004-06-28 | 2015-01-20 | Jen-Wei Kuo | Security protection apparatus and method for endpoint computing systems |
WO2006027723A1 (en) * | 2004-09-06 | 2006-03-16 | Koninklijke Philips Electronics N.V. | Portable storage device and method for exchanging data |
US7275124B2 (en) * | 2005-02-24 | 2007-09-25 | International Business Machines Corporation | Method and system for controlling forwarding or terminating of a request at a bus interface based on buffer availability |
-
2005
- 2005-11-17 CN CN2005101235433A patent/CN1968086B/zh not_active Expired - Fee Related
-
2006
- 2006-11-16 EP EP06124173A patent/EP1788746A3/en not_active Withdrawn
- 2006-11-16 CA CA2568402A patent/CA2568402C/en not_active Expired - Fee Related
- 2006-11-17 KR KR1020060113877A patent/KR100890078B1/ko not_active IP Right Cessation
- 2006-11-17 JP JP2006311091A patent/JP2007143163A/ja active Pending
- 2006-11-17 US US11/561,330 patent/US20070150944A1/en not_active Abandoned
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102611688A (zh) * | 2011-12-15 | 2012-07-25 | 天津市通卡公用网络系统有限公司 | 终端pos装置黑名单数据远程更新方法 |
CN102611688B (zh) * | 2011-12-15 | 2014-09-17 | 天津市通卡公用网络系统有限公司 | 终端pos装置黑名单数据远程更新方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2007143163A (ja) | 2007-06-07 |
KR100890078B1 (ko) | 2009-03-24 |
CA2568402A1 (en) | 2007-05-17 |
EP1788746A2 (en) | 2007-05-23 |
CA2568402C (en) | 2011-11-01 |
KR20070052679A (ko) | 2007-05-22 |
CN1968086B (zh) | 2011-11-09 |
EP1788746A3 (en) | 2007-08-01 |
US20070150944A1 (en) | 2007-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11563567B2 (en) | Secure shared key establishment for peer to peer communications | |
CN1324502C (zh) | 鉴别被邀请加入组的潜在成员的方法 | |
Miao et al. | Fair and dynamic data sharing framework in cloud-assisted internet of everything | |
US10992481B2 (en) | Two-dimensional code generation method, apparatus, data processing method, apparatus, and server | |
US10027481B2 (en) | Management of cryptographic keys | |
KR101575030B1 (ko) | 클라우드 상의 공유 데이터에 대한 다중 서명생성방법 | |
CN111355745A (zh) | 基于边缘计算网络架构的跨域身份认证方法 | |
CN110380862B (zh) | 基于隐式证书的签名验证方法、装置和计算机设备 | |
CN104012036B (zh) | 组合式数字证书 | |
Nie et al. | NCLAS: a novel and efficient certificateless aggregate signature scheme | |
Li et al. | Cryptanalysis and improvement for certificateless aggregate signature | |
CN1934823A (zh) | 匿名认证方法 | |
CN110336664B (zh) | 基于sm2密码算法的信息服务实体跨域认证方法 | |
CN1925393A (zh) | 一种点对点网络身份认证方法 | |
WO2014068427A1 (en) | Reissue of cryptographic credentials | |
CN1968086A (zh) | 用于通信网络的用户验证系统和方法 | |
CN1859097A (zh) | 一种基于通用鉴权框架的认证方法及系统 | |
Hosen et al. | SPTM-EC: A security and privacy-preserving task management in edge computing for IIoT | |
CN113824566A (zh) | 证书认证方法、码号下载方法、装置、服务器及存储介质 | |
Kathrine | A secure framework for enhancing user authentication in cloud environment using biometrics | |
CN111064580B (zh) | 隐式证书密钥扩展方法和装置 | |
Zarepour-Ahmadabadi et al. | A new gradual secret sharing scheme with diverse access structure | |
CN111181729B (zh) | 显式证书密钥扩展方法和装置 | |
KR102439195B1 (ko) | 다중 서명 생성 방법 및 시스템과 이를 수행하기 위한 컴퓨팅 장치 | |
CN113259103B (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20111109 Termination date: 20161117 |