用于验证通信伙伴的标识的方法和系统的制作方法

文档序号:7942924阅读:183来源:国知局
专利名称:用于验证通信伙伴的标识的方法和系统的制作方法
技术领域
本发明涉及一种用于验证通信伙伴的标识的方法和系统,尤其用于实时通信中, 其中,主叫方向被叫方发送消息,并且主叫方将自签名的证书附着至所述消息。
背景技术
现代通信网络向用户提供了以许多不同方式互相通信的可能性。例如,用户可以 互相交换电子邮件消息或SMS(短消息服务),或者可以经由即时消息(IM)互相通信,这里 仅列举了通过文本消息进行的最普遍的通信服务。特别地,实时通信(例如VoIPdP语音)) 近年来已经变得越来越重要。尽管现在无数用户利用所有这些通信形式的多种益处,但是 仍涉及一些严重缺点。以下将以VoIP为例来描述一个特别问题,尽管该问题同样出现在其 他通信形式中。
VoIP协议(例如SIP,会话发起协议)容易受到多种类型的攻击。示例是中断服务 攻击(即,拒绝服务,DoQ和社会攻击(即因特网电话垃圾,SPIT)。为了防止这些攻击,需 要估计输入消息(例如SIP-Invite)是可信的还是恶意的。一个核心挑战在于验证输入呼 叫是由属于SIP消息中的主叫方标识(S卩,From(来自)首部中的URI (统一资源标识符)) 的用户所发起的。由于VoIP标识(例如SIP-URI)可以被欺骗,因此这一问题并不容易解 决。这使得检测如SPIT和非请求通信之类的社会攻击通常成为一个复杂的问题。
许多当前提出的、用于估计输入消息是否是由属于主叫方标识的用户发送的机制 依赖于所谓的“强标识”如果标识是由接收端所信任的集中式权威机构签名的,则认为从 该标识接收到的消息是非恶意的。对于SIP,该标识是SIP-URI,并且已经提出由主叫方的 域来对该标识进行签名。当主叫方进行呼叫时,该域使用认证请求来对被叫方进行质询。 仅在正确的认证之后,该域才对输出消息进行签名。当接收到呼叫时,被叫方的代理使用主 叫方的域的公共密钥来验证签名。这种技术在以下文献中描述RFC 4474 Enhancements for AuthenticatedIdentity Management in the Session Initiation Protocol (SIP), http://tools. ietf.org/html/rfc4474Draft SPIT.
然而,上述方法在多个方面被证明是不利的。首先,该方法要求存在一种在域间交 换公共密钥的机制。此外,需要一种机制来验证检索到的公共密钥与发送方的域的绑定,最 终,关于与标识的断言相关联的用户行为,不存在可信度。解决前两个问题的常用手段是使 用公共密钥基础设施O3KI)。使用证书权威机构(CA)的层级来在系统中任何两个实体之间 建立可密码验证的信任链。这意味着,系统中的所有实体信任该CA层级顶层的中心权威机 构(即,根CA)。根CA是这种系统中针对与标识的断言相关的所有信任的基础构建块。发明内容
因此,本发明的目的是改进并进一步开发一种最初描述类型的方法和系统,用于 验证通信伙伴的标识,以极大地避免上述问题,并且使得消息的可信度的评级成为可能。
根据本发明,上述目的是通过包括权利要求1的特征的方法来实现的。根据该权利要求,这种方法的特征在于,主叫方和被叫方是信任网的一部分,其中,所述信任网内的 用户的证书由一个或多个密钥服务器存储,其中,使用所述信任网内的用户之间的信任关 系,基于附着至所述消息的证书并基于被叫方的证书来计算主叫方和被叫方之间的信任 链,其中,对被叫方接收的所述消息的进一步处理基于所导出的信任链的长度。
此外,上述目的是通过包括独立权利要求17的特征在内的系统来实现的。根据该 权利要求,这种系统的特征在于,所述系统包括信任网,主叫方和被叫方是信任网的一部 分;一个或多个密钥服务器,用于存储所述信任网内的用户的证书;使用所述信任网内的 用户之间的信任关系,基于附着至所述消息的证书并基于被叫方的证书来计算主叫方和被 叫方之间的信任链的实体;以及消息处理单元,被配置为基于所导出的信任链的长度对被 叫方接收的所述消息执行进一步处理。
根据本发明,首先已经认识到,由于需要证书权威机构的层级结构,用于估计输入 消息是否是由属于主叫方标识的用户发送的现有机制相当复杂。与采用PKI的集中式方法 不同,本发明寻求一种分散式方法,使用信任网来验证签名的标识,而不是PKI。所述信任网 内的用户的证书由一个或多个密钥服务器存储。使用信任网内的用户之间的信任关系来计 算主叫方和被叫方(均为信任网的一部分)之间的信任链。两个标识A和B之间的信任链 是传递的证书链,其中,A对来自标识IDl的证书进行签名,IDl继而对来自标识ID2的证书 进行签名,……,IDn对标识B的证书进行签名。
为了验证消息确实是由属于消息中固有的标识的用户发送的,被叫方调用算法来 计算主叫方和被叫方之间的所述信任链。该算法的输入是附着至所接收消息的证书以及被 叫方的证书。根据所导出的主叫方与被叫方之间的信任链的长度,可以决定对消息的进一 步处理。
本发明的主要优点在于,在信任网中,终端用户不仅断言用户与公共密钥之间的 绑定,还断言所断言的标识的可信度(在先前交互中感知到)。相反,PKI通常基于技术认 证(例如,用户(或SIP用户代理)从技术上解决了认证请求)来对标识进行签名。另一 方面,根据本发明,不仅依赖于技术认证,还依赖于标识的实际行为(由其他用户观察到) 和潜在地现实生活可信度。为了检测非请求通信,使用信任网是有利的,因为它将信任与技 术断言相关联。此外,与基于PKI的方案不同,信任不依赖于中心权威机构;在信任网中,信 任是分散的。信任网利用了用户之间的社会关系。这可以是对抗如SPIT之类的非请求通 信的关键构建块。
应注意,短语“通信伙伴”、“主叫方”和“被叫方”应以宽泛的意义来理解,而不限 于具体的通信形式。除了例如基于SIP的VoIP应用(其中本发明被证明尤其有利)以外, 本发明可以同样应用于例如电子邮件通信或即时消息收发应用。在后一种情况下,主叫方 将与消息的源端相对应,而被叫方将与消息的接收端相对应。
此外,还必须注意,尽管根据本发明的方法和系统不需要在层级顶层具有中心权 威机构的层级结构,但是应用于具有CA层级的PKI设置也是可能的。在这种情况下,CA层 级中的证书权威机构可以对CA层级内发布的证书执行先验验证。这可以显著加快验证过 程,因为可以在实际呼叫之前验证主叫方的输出代理的签名。
根据具体实施例,规定了 主叫方使用其私有密钥对消息签名,并附加包含对应的 公共密钥在内的自签名的证书。与基于HiI的方法中一样,使用其私有密钥对消息签名可以通过对一些特定首部(例如包括From首部字段,并可能包括消息的主体)计算散列并通 过对得到的散列值进行签名来执行。附加自签名的证书可以经由S/MIME (安全/多用途因 特网邮件扩展)来执行。
有利地,规定了 用户将已经由其他用户签名的证书上载至所述一个或多个密钥 服务器。通过上载证书来参与的用户越多,系统对主叫方和被叫方之间的(短)信任链的 计算越有效。
根据具体实施例,信任网中的用户之间的信任关系是在呼叫时实时或至少近似实 时地导出的。甚至在实时通信的情况下,也可以基于所导出的用户之间的信任关系,计算主 叫方与被叫方之间的信任链而不影响呼叫。
然而,特别地,关于信任链的密码验证,在呼叫之前已知用户之间的信任关系被证 明是有利的。为此,可以规定所述一个或多个密钥服务器包括专用密钥服务器,对其从 用户或从另一服务器接收的每个证书中的签名进行验证。通过对信任关系进行包括密码验 证在内的预处理,可以实时进行对可信度的评级。
所述专用密钥服务器可以被配置为周期性地计算包含专用密钥服务器验证的所 有证书之间的信任关系在内的文件。专用密钥服务器可以使用该文件来提供计算两个标识 之间的信任链的服务。备选地或附加地,专用密钥服务器可以被配置为周期性地发布包含 信任关系的文件。在这种情况下,其他实体或设备可以利用该文件并且可以自己计算信任 链。关于计算文件和发布文件的周期,可以规定对专用密钥服务器接收证书的速率的动态 适配。通过这种方式,可以使用信任关系,始终尽可能最新地标识呼叫是否可信。然而,还 可以以预设长度来部署周期。
在该文件内,可以以压缩和机器可读的格式来包含所验证的证书之间的信任关 系,这进一步便于两个标识之间的信任链的实时计算。具体地,可以采用已知的.wot文件 格式。传统的PGP(相当好的隐私)密钥服务器已经使用和创建了以压缩方式来存储信任 路径的这种文件格式。然而,在类似PGP的信任网中,不信任密钥服务器,并且任何用户都 可以在密钥服务器上存储任何证书。具体地,传统的PGP密钥服务器不在创建信任路径文 件之前验证证书的签名。将这一任务留给用户完成。
关于基于所导出的信任链的长度对被叫方接收的消息进行进一步处理,定义阈值 是有益的。阈值可以由被叫方自身来定义,或者由附加的消息处理单元(例如可以是被叫 方的代理服务器)来定义。特别地,可以规定定义三个阈值。如果所导出的信任链的长度 低于预定的第一阈值,可以假定消息被接受。在实际(电话或VoIP)呼叫的情况下,这意味 着将建立与主叫方的呼叫。如果所导出的信任链的长度超过预定的第二阈值,则可以拒绝 该消息(即不建立与主叫方的呼叫)。最终,可以定义第三阈值。如果所导出的信任链的长 度超过该第三阈值,则可以规定将消息转发至专用服务。该服务可以调用另外的步骤来检 查消息的可信度。
在具有可能的大量用户的实际系统中,为了解决可缩放性问题,可以规定采用过 滤机制来限制预先验证的证书的数量。例如,对证书的限制可以基于域来进行。备选地或 附加地,可以通过使预先验证过程分布在多个专用密钥服务器之间来解决可缩放性问题。

关于如何以有利的方式设计和进一步改进本发明的教导,存在多种方式。为此,一 方面参照从属于专利权利要求1和17的专利权利要求,另一方面参照以附图方式示意的本 发明实施例的优选示例的以下解释。借助附图,结合本发明实施例的优选示例的解释,将大 体解释优选实施例和教导的进一步改进。附图中
图1是根据本发明的方法的实施例的具体应用场景的示意视图;以及
图2示意了根据本发明实施例的消息流。
具体实施方式
图1示出了根据本发明的方法的实施例的具体应用场景的总体架构。用户A(主 叫方)向用户B(作为被叫方)发送用于呼叫建立的消息(例如SIP INVITE消息)。通过 消息中继或代理1将来自用户A的消息转发至用户B。在通过将对SIP INVITE消息的响 应发送回用户A以建立呼叫之前,用户B想要确保呼叫不构成非请求呼叫,并且确保输入呼 叫是由属于主叫方的标识(在这种情况下,为SIP INVITE消息的From首部中的用户A的 URI)的用户发起的。
用于验证主叫方A的身份的架构包括密钥服务器网络2,密钥服务器网络2包括多 个优选具有冗余的密钥服务器3 (以示例方式示出了其中3个)。密钥服务器3存储密钥和 /或用户的证书。具体地,用户将已经由其他用户签名的证书上载至密钥服务器3。密钥服 务器3使用其间的专用通信协议来互相更新密钥数据库。
在传统的类似PGP的信任网中,不信任密钥服务器,任何用户都可以在密钥服务 器上存储任何证书。具体地,证书的签名不由密钥服务器来验证。将这一任务留给用户来 进行。相反,根据图1中所示的实施例,提供了作为密钥服务器联盟2的一部分的专用密钥 服务器4 (图1下部的密钥服务器),专用密钥服务器4通常在联盟2中操作,但是还进行以 下操作
对于专用密钥服务器4从用户或者从另一服务器接收到的每个证书,专用密钥服 务器4对证书中的签名进行验证。该服务器可以进行这种操作是因为作为密钥服务器,它 拥有与对证书签名的私有密钥相对应的公共密钥。此外,专用密钥服务器4周期性地计算 信任关系文件,该信任关系文件包含该服务器验证的所有证书之间的信任关系。使用该文 件,专用密钥服务器4可以提供对两个标识之间的信任链进行计算的服务。因此,实现了实 时的信任链的计算和密码验证。
应当注意,根据备选实施例,还可以由专用密钥服务器4周期性地发布信任关系 文件以由其他服务器使用。然而,在图1示意的示例中,接收从A至B的消息的消息中继或 代理1使用专用密钥服务器4提供的服务来找出A与B之间的信任链长度。为此,被叫方 B例如通过对与主叫方A的密钥ID —起转发至代理1的公共密钥进行散列处理来计算密 钥ID。基于该信息,代理1联系专用密钥服务器4。在该示例中,专用密钥服务器4检测到 A信任标识C,标识C继而信任标识B。由于专用密钥服务器4已经对A、B和C的对应证书 中的所有签名进行了先验验证,因此不仅计算信任链,也验证了信任链。这是很重要的,因 为计算A与B之间的信任链可以实时进行,但是对应的验证不可能实时进行。因此,它必须 由服务器先验地进行。
图2示意了根据本发明实施例,用作主叫方的用户A与用作被叫方的用户B之间 的消息流。在该示例中,代理服务器1(例如SIP代理)使用外部服务5。外部服务5可以 是一种特殊的信任网密钥服务器,如结合图1描述的专用密钥服务器,或者备选地,可以是 如上所述从专用密钥服务器中周期性地取回信任网信息的独立服务。代理服务器1还可以 自己进行信任链的计算。在这种情况下,代理服务器1和服务5位于相同的设备/实体中。
在根据图2所示的实施例的消息流中,代理服务器1接收由用户A签名的、以用户 B为目的地的消息。为了确定该消息是否可信,代理服务器1将A的自签名的证书和B的 标识(例如在SIP消息的情况下,在To首部中出现的标识)转发至服务5。服务5向代理 服务器1返回信任网中A与B之间的信任链的长度(如果这种链存在),或者向代理服务 器1返回错误消息(如果这种链不存在)。然后,代理服务器1将签名的消息转发至B,该 消息包括所导出的信任链的长度。现在B可以根据信任链的长度,对于如何处理消息进行 本地判定。应注意,尽管在图2中未显式示出,但是代理服务器1(取代用户B)还可以根据 信任链的长度来采取不同动作。具体地,可以规定用户B可以在代理服务器1上设置定制 配置,通过该定制配置,根据用户B的需要来指定代理服务器1对呼叫的处理。
这里,对于受益于以上描述和相关联附图中呈现的教导的、本发明所属领域的技 术人员而言,可以想到对所阐述的本发明的许多修改和其他实施例。因此,应理解,本发明 不限于所公开的具体实施例,修改和其他实施例应当被包括在所附权利要求的范围之内。 尽管这里采用了具体术语,但是仅在一般和描述性意义上使用这些术语,而不是为了限制 目的。
权利要求
1.一种用于验证通信伙伴的标识的方法,尤其用于实时通信中,其中,主叫方(A)向被 叫方(B)发送消息,并且主叫方(A)将自签名的证书附着至所述消息,所述方法的特征在 于,主叫方(A)和被叫方(B)是信任网的一部分,其中,所述信任网内的用户的证书由一个 或多个密钥服务器( 存储,其中,使用所述信任网内的用户之间的信任关系,基于附着至所述消息的证书并基于 被叫方的证书来计算主叫方(A)和被叫方(B)之间的信任链,以及其中,对被叫方(B)接收的所述消息的进一步处理基于所导出的信任链的长度。
2.根据权利要求1所述的方法,其中,主叫方㈧使用其私有密钥对所述消息签名,并 将包含对应的公共密钥在内的自签名的证书附加至所述消息。
3.根据权利要求1或2所述的方法,其中,用户将已经由其他用户签名的证书上载至所 述一个或多个密钥服务器(3)。
4.根据权利要求1至3中任一项所述的方法,其中,所述信任网中的用户之间的信任关 系是在呼叫时实时或至少近似实时地导出的。
5.根据权利要求1至4中任一项所述的方法,其中,所述一个或多个密钥服务器(3)包 括专用密钥服务器G),对其接收的每个证书中的签名进行验证。
6.根据权利要求5所述的方法,其中,所述专用密钥服务器(4)周期性地计算包含所述 专用密钥服务器已验证的所有证书之间的信任关系在内的文件。
7.根据权利要求6所述的方法,其中,所述文件由所述专用密钥服务器(4)周期性地发布。
8.根据权利要求6或7所述的方法,其中,计算和/或发布所述文件的周期与所述专用 密钥服务器(4)接收证书的速率动态适配。
9.根据权利要求6至9中任一项所述的方法,其中,已验证的证书之间的信任关系以压 缩、机器可读的格式包含在所述文件中。
10.根据权利要求1至9中任一项所述的方法,其中,如果所导出的信任链的长度低于 预定的第一阈值,则被叫方⑶接受所述消息。
11.根据权利要求1至10中任一项所述的方法,其中,如果所导出的信任链的长度超过 预定的第二阈值,则被叫方⑶拒绝所述消息。
12.根据权利要求1至11中任一项所述的方法,其中,如果所导出的信任链的长度超过 预定的第三阈值,则被叫方(B)调用其他步骤来检查所述消息的可信度。
13.根据权利要求1至12中任一项所述的方法,其中,所采用的信任网是相当好的隐私 PGP信任网。
14.根据权利要求5至13中任一项所述的方法,其中,采用过滤来限制预先验证的证书的数量。
15.根据权利要求14所述的方法,其中,对预先验证的证书的限制是基于域来进行的。
16.根据权利要求5至15中任一项所述的方法,其中,预先验证过程分布在多个专用密 钥服务器中。
17.一种用于验证通信伙伴的标识的系统,尤其用于实时通信中,其中,主叫方(A)向 被叫方⑶发送消息,并且主叫方㈧将自签名的证书附着至所述消息,所述系统的特征在于,所述系统包括信任网,主叫方(A)和被叫方(B)是所述信任网的一部分; 一个或多个密钥服务器(3),用于存储所述信任网内的用户的证书; 使用所述信任网内的用户之间的信任关系,基于附着至所述消息的证书并基于被叫方 的证书来计算主叫方(A)和被叫方(B)之间的信任链的实体;以及消息处理单元,被配置为基于所导出的信任链的长度,对被叫方(B)接收的所述消息 执行进一步处理。
18.根据权利要求17所述的系统,其中,所述一个或多个密钥服务器(3)构成密钥服务器联盟⑵。
19.根据权利要求18所述的系统,其中,所述密钥服务器联盟(2)中的密钥服务器(3) 被配置为对彼此的密钥数据库进行更新。
20.根据权利要求17至19中任一项所述的系统,其中,所述一个或多个密钥服务器 (3)包括专用密钥服务器G),被配置为对其接收的每个证书中的签名进行验证。
21.根据权利要求20所述的系统,其中,专用密钥服务器(4)被配置为周期性地发布包 含其存储的所有证书之间的信任关系在内的文件。
22.根据权利要求17至21中任一项所述的系统,其中,所述消息处理单元被配置为 如果所导出的信任链的长度低于预定的第一阈值,则接受所述消息。
23.根据权利要求17至22中任一项所述的系统,其中,所述消息处理单元被配置为 如果所导出的信任链的长度超过预定的第二阈值,则拒绝所述消息。
24.根据权利要求17至23中任一项所述的系统,其中,所述消息处理单元被配置为 如果所导出的信任链的长度超过预定的第三阈值,则将所述消息转发至专用服务,所述专 用服务用于调用其他步骤来检查所述消息的可信度。
全文摘要
本发明提供了一种用于验证通信伙伴的标识的方法,尤其用于实时通信中,其中,主叫方(A)向被叫方(B)发送消息,并且主叫方(A)将自签名的证书附着至所述消息。所述方法的特征在于,主叫方(A)和被叫方(B)是信任网的一部分,其中,所述信任网内的用户的证书由一个或多个密钥服务器(3)存储,其中,使用所述信任网内的用户之间的信任关系,基于附着至所述消息的证书并基于被叫方的证书来计算主叫方(A)和被叫方(B)之间的信任链,其中,对被叫方(B)接收的所述消息的进一步处理基于所导出的信任链的长度。此外,描述了一种对应的系统。
文档编号H04L29/06GK102037701SQ200880128902
公开日2011年4月27日 申请日期2008年4月30日 优先权日2008年4月30日
发明者尼科·德修里尤斯, 简·西德罗夫, 萨韦里奥·尼科利尼 申请人:Nec欧洲有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1