一种信息处理方法和名字映射服务器与流程

文档序号:12478159阅读:381来源:国知局
一种信息处理方法和名字映射服务器与流程

技术领域

本发明涉及网络通信领域,尤其涉及一种信息处理方法和名字映射服务器。



背景技术:

在传输控制协议(TCP)/网际协议(IP)体系中,最为核心的是网络层的IP协议,通过IP地址实现用户之间的相互访问。各种应用,如网络浏览、邮件收发、即时通讯等,都承载在应用层协议之上。

用户在使用这些业务之前必须通过电信运营商提供的基础网络接入互联网,不同的用户可能有不同的接入方式,如各种类型数字用户线路(xDSL)、光纤、移动接入等等。一般情况下,用户终端都会获取到一个IP地址,用户此后就通过这个IP地址访问互联网上的各种应用,这个IP地址就相当于用户的临时身份。

由于IP地址的前缀部分表示用户当前所在的子网,当用户位置发生变化时,必须分配不同的IP地址,否则路由器无法正确地把数据包转发给用户。而因为IP地址具有身份和位置的双重属性,同时用户每次获取到的IP地址不一定相同,从而无法作为用户的长期身份标识,因此互联网上的应用系统必须自建一套用户身份标识系统,即通常所说的用户账号系统。

由此可见,用户在访问互联网上的应用时存在二次认证的情况,运营商在用户接入互联网时进行一次认证,互联网上的应用系统在用户访问时进行自身的认证。

随着信息技术和网络技术的迅猛发展,互联网上的应用系统也越来越多。由于这些应用系统相互独立,用户在使用每一个系统之前必须先进行注册登记,并按照相应的身份进行登录,为此用户必须记住每个应用系统的用户名和密码,这给用户带来了很大的麻烦。在这种情况下,单点登录的概念被提了出来,并得到应用。

单点登录(SSO,Single-Sign On)是一种方便用户访问多个应用系统的技术,用户只需要在登录时进行一次认证,就可以在多个应用系统之间自由访问,不必重复输入用户名和密码来确认身份。

现有的互联网单点登录体系中,用户在使用单点登录之前,必须在身份提供商(IdP,Identity Provider)处进行注册登记,业务提供商(SP,Service Provider)的业务提供服务器依赖于身份提供商IdP的身份提供服务器的认证结果向用户提供业务。此外由于互联网的身份提供商IdP通常是分散部署的,因而,如果业务提供商SP采用单点登录方式,那么它的业务发展规模将很大程度上取决于它所依赖的IdP注册用户的数量。单点登录涉及的主要技术有:开放身份(OpenID)、Passport(通行证)、Liberty Alliance(自由联盟)等。这里,OpenID易于使用,但存在安全隐患,不能很好地防范“钓鱼”攻击;Passport易于使用,安全性稍高,但目前仅适用于业务提供商SP内部使用;Liberty Alliance有一定的安全性,但部署不易,用户使用也不方便。

由于用户在访问互联网应用之前,需要接入运营商网络,因而可以将运营商作为身份提供商IdP。运营商作为身份提供商IdP具有如下优势:通过运营商的接入认证,能够很好的保证安全性,同时,运营商作为身份提供商IdP,将不需要用户重新进行注册登记,易于使用,并且运营商作为身份提供商IdP,相对于互联网的身份提供商IdP,有一个优质成熟的用户消费群体。

当前,IP地址具有双重属性的缺陷,带来了移动性和安全性问题,已经成为了制约互联网产业进一步发展的瓶颈。为了解决这个问题,业界提出了HIP(Host Identity Protocol,主机标识协议)和LISP(Locator/Identifier Separation Protocol,位置/标识分离协议)技术等。这些技术的共同点是引入了两类编码:代表用户身份的身份编码和代表用户位置的位置编码,每个用户都既有一个身份编码又有一个位置编码,用户基于身份编码和对端发生通信,当用户位置发生变化时,用户的身份编码保持不变,而用户的位置编码将随之变化。这样,通过用户身份编码就可以始终对应到用户,而不会存在IP地址二义性的问题。

但在现有的身份位置分离网络技术中,用户身份编码只用于在网络层标识用户身份,因而用户访问互联网应用系统仍然需要多次注册认证。另一方面,由于用户在大量不同的互联网应用系统中注册账号,通常为了方便起见,用户注册的账号具有一定的规律性,那么很容易就导致用户的身份隐私信息被泄露。



技术实现要素:

本发明提供了一种信息处理方法和名字映射服务器,以解决用户访问互联网应用系统需进行多次注册认证的问题。

本文提供了一种信息处理方法,该方法包括:

名字映射服务器(NMS)接收身份提供服务器发送的匿名身份请求,所述匿名身份请求中携带有用户的身份标识;

所述NMS根据所述匿名身份请求生成与该身份标识对应的用户的假名及与所述假名对应的生存期,并向所述身份提供服务器返回所述用户的假名及与所述假名对应的生存期。

可选地,上述方法中,所述NMS向所述身份提供服务器发送所述用户的假名及与所述假名对应的生存期之后,所述方法还包括:

所述NMS接收所述身份提供服务器发送的来自所述用户的携带指定用户名及相应生存期的匿名更新请求,根据匿名更新请求进行更新处理,并返回更新结果。

本文还公开了一种名字映射服务器(NMS),该NMS包括:

接收模块,用于接收身份提供服务器发送的匿名身份请求,所述匿名身份请求中携带有用户的身份标识;

生成发送模块,用于根据所述接收模块接收的所述匿名身份请求生成与该身份标识对应的用户的假名及与所述假名对应的生存期,并向所述身份提供服务器返回所述用户的假名及与所述假名对应的生存期。

可选地,上述NMS中,所述生成发送模块,还用于接收所述身份提供服务器发送的来自所述用户的携带指定用户名及相应生存期的匿名更新请求,根据匿名更新请求进行更新处理,并返回更新结果。

本发明实施例,通过重利用接入认证,很好地解决了用户访问互联网多次注册认证的问题,通过生成假名对用户隐私起到了保护的作用,避免了用户隐私的泄露。

附图说明

图1为本发明实施例所涉及的网元架构示意图;

图2为本发明单点登录方法实施例的流程图;

图3为本发明由业务提供服务器发起的单点登录方法实施例的信令流程图;

图4为本发明由身份提供服务器发起的单点登录方法实施例的信令流程图;

图5为本发明身份提供服务器实施例的结构示意图;

图6为本发明业务提供服务器实施例的结构示意图;

图7为本发明名字映射服务器实施例的结构示意图;

图8为本发明信息处理装置实施例的结构示意图;

图9为本发明单点登录系统实施例的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

为了更好地理解本发明,首先介绍一下本发明实施例所涉及的网元架构,如图1所示,该架构包括用户终端(Mobile Node,MN)101、接入服务节点(Access Service Node,ASN)102、认证中心103、身份提供商(Identity Provider,IdP)的身份提供服务器104、名字映射服务器(Name Mapping Server,NMS)105、互联服务节点(Interconnect Service Node,ISN)106和业务提供商(Service Provider,SP)的业务提供服务器107,其中:

接入网络的MN可以是移动终端、固定终端中的一种或多种,如手机、固定电话、电脑和应用服务器等;

ASN,用于为用户终端提供接入服务、维护终端与网络的连接,为终端分配路由标识(Routing Identifier,RID),并到身份位置寄存器(ILR)/报文转发功能实体(PTF)登记注册和查询终端的RID,维护接入标识(Access Identifier,AID)-RID映射信息,以及实现数据报文的路由和转发;

认证中心,用于记录本网络用户的属性信息如用户类别、认证信息和用户服务等级等,完成对终端的接入认证和授权,还可具有计费功能。认证中心支持终端与网络间的双向认证,可产生用于认证、完整性保护和机密性保护的用户安全信息;

身份提供服务器向业务提供服务器提供对用户的断言信息,并对业务提供服务器进行认证,检查业务提供服务器的合法性;通过与认证中心的接口查询用户相应的属性信息,通过与NMS的接口,提供用户的假名服务;

NMS根据身份提供服务器提供的用户身份产生假名,作为用户的替代身份,并创建假名和用户身份信息、业务提供服务器统一资源定位符(URL)、生存期(lifetime)对应的条目,如果用户修改假名以及假名的lifetime,则NMS在接收到身份提供服务器的匿名更新请求后,也将此信息进行更新;

其中,NMS和身份提供服务器可以分别单独部署,也可以将NMS作为身份提供服务器的功能模块进行部署;

ISN,用于查询、维护本网络终端的AID-RID映射信息,封装、路由和转发本网络与传统IP网络之间往来的数据报文、实现本网络与传统IP网络之间的互联互通功能,其中包括格式转换模块,用于将传统IP网络发来的数据报文中包含的本网络终端的IPv4/IPv6地址转换成对应的AID,以及将本网络终端的AID转换成IPv4/IPv6地址格式后,再发送到传统IP网络的终端;

业务提供服务器,是互联网上为用户提供业务的应用系统。

本发明实施例提供了一种单点登录的方法,该方法从身份提供服务器侧进行描述,该方法包括:

步骤11、身份提供服务器确认用户通过接入认证;

身份提供服务器根据用户的身份标识确认用户通过接入认证;

步骤12、所述身份提供服务器根据自身和所述用户欲访问的业务提供服务器间的共享密钥生成对用户的断言信息,并向所述业务提供服务器发送所述断言信息。

本发明实施例还提供了一种单点登录的方法,该方法从业务提供服务器侧进行描述,该方法包括:

步骤21、业务提供服务器接收身份提供服务器发送的对欲访问所述业务提供服务器的用户的断言信息;

步骤22、所述业务提供服务器根据自身和所述身份提供服务器之间的共享密钥验证所述断言信息。

上述业务提供服务器利用身份提供服务器发送的断言信息进行认证,使得用户访问互联网应用系统不需要进行多次注册认证,同时,为了避免用户隐私泄露,本发明实施例又提供了一种信息处理方法,该方法从名字映射服务器侧进行描述,该方法包括:

步骤31、名字映射服务器(NMS)接收身份提供服务器发送的匿名身份请求,所述匿名身份请求中携带有用户的身份标识;

步骤32、所述NMS根据所述匿名身份请求生成与该身份标识对应的用户的假名及与所述假名对应的生存期,并向所述身份提供服务器返回所述用户的假名及与所述假名对应的生存期。

为了更清楚地描述本发明实施例的单点登录方法,下面从身份提供服务器、业务提供服务器和名字映射服务器三者交互的角度进行描述,如图2所示,为本发明单点登录方法实施例的流程图,所述方法包括以下步骤:

步骤201、身份提供服务器在接收到业务提供服务器的认证请求或者用户的业务访问请求后,检查是否存在它自身和业务提供服务器间的共享密钥Ks,如果不存在,则认证业务提供服务器,认证成功后,生成共享密钥Ks;

进一步地,所述认证方法包括但不限于:预共享密钥、TLS、公钥基础结构(PKI)、协议安全性(IPsec)等技术,由于其均为现有技术,这里不再赘述。

步骤202、身份提供服务器确认用户通过接入认证,并根据用户的匿名服务请求通过名字映射服务器产生假名的方式对用户身份进行保护,同时为业务提供服务器生成对该用户的断言信息;

步骤203、业务提供服务器接收到身份提供服务器发送的断言信息后,对断言信息进行验证,如果验证通过,则创建用户假名对应的条目,并向用户提供业务。

上述单点登录方法,通过重利用接入认证和假名,很好地解决了用户访问互联网应用系统需多次注册认证和身份隐私泄露的问题。

如图3所示,为本发明由业务提供服务器发起的单点登录方法实施例的信令流程图,所述方法包括:

步骤301、MN、ASN以及认证中心之间进行接入认证,认证通过后,身份位置分离网络为用户分配接入标识AID;

此后,用户终端发送的报文通过AID进行传输,ASN为用户分配RID,并通过RID进行路由选路找到ISN,ISN从报文中获取用户的AID,并转换成IPv4/IPv6地址发送到传统IP网络。

步骤302、MN向业务提供服务器发起业务访问请求;

步骤303、用户在业务提供服务器页面上选择身份提供服务器,业务提供服务器根据当前时间戳生成随机数nonce,作为用户在业务提供服务器的临时标识,并构建认证请求消息,消息中携带业务提供服务器URL、身份提供服务器URL和随机数nonce;

步骤304、业务提供服务器将认证请求消息通过超文本传输协议(HTTP)重定向到身份提供服务器;

步骤305、用户通过终端向身份提供服务器发送匿名服务请求;

步骤306、身份提供服务器从报文中获取用户的接入标识AID,确认用户通过接入认证;并检查它自身和业务提供服务器间是否存在共享密钥Ks,如果不存在,则认证业务提供服务器,认证成功后,生成共享密钥Ks;确定不存在用户对应的假名或对应的假名生存期(lifetime)过期;

其中,身份提供服务器认证业务提供服务器的方式包括但不限于预共享密钥、PKI、TLS或者IPsec等等认证方式。由于其均为现有技术,因此这里不再赘述;

步骤307、身份提供服务器向NMS发送匿名身份请求消息,请求消息中携带用户的AID、业务提供服务器的URL;

步骤308、NMS接收到匿名身份请求消息后,生成随机数Rand以及默认的lifetime,Rand作为相应用户的假名,并构建一条MN的AID、业务提供服务器URL和Rand、lifetime对应的条目,如表1所示;

表1 MN对应的条目

步骤309、NMS向身份提供服务器发送匿名身份响应消息,响应消息中携带用户的AID、业务提供服务器URL和随机数Rand以及lifetime;

步骤310、身份提供服务器向用户终端发送匿名服务响应消息,响应消息中携带业务提供服务器URL、随机数Rand和lifetime;

步骤311、用户通过终端向身份提供服务器发送指定的用户名及其lifetime;

用户可将随机数Rand修改为指定的用户名即期望展现的用户名,并指定期望的lifetime;

步骤312、身份提供服务器向NMS发送匿名更新请求消息,消息中携带用户的AID、随机数Rand、用户指定的假名和lifetime;

步骤313、NMS在添加用户指定的假名和更新lifetime后,向身份提供服务器发送匿名更新响应消息,消息中携带更新成功或失败的结果;

步骤314、身份提供服务器构建认证响应消息,认证响应消息中包含断言信息,该断言信息中携带随机数nonce、业务提供服务器URL、身份提供服务器URL、NMS生成的假名Rand或者用户指定的用户名、签名算法、以及Ks的签名结果;

此处的签名结果为身份提供服务器根据业务提供服务器URL、身份提供服务器URL、NMS生成的假名Rand或者用户指定的用户名、共享密钥使用签名算法计算出的签名结果;

本实施例中的身份提供服务器URL代表身份提供服务器的身份信息;业务提供服务器URL代表业务提供服务器的身份信息;NMS生成的假名Rand或者用户指定的用户名代表用户的身份信息;随机数nonce用于防止重放攻击;

步骤315、身份提供服务器通过HTTP重定向将认证响应消息发送到业务提供服务器;

步骤316、业务提供服务器通过和身份提供服务器之间的共享密钥Ks验证断言的完整性,以及检查nonce是否是最近生成,是否重复等;

业务提供服务器根据断言信息中携带的业务提供服务器URL、身份提供服务器URL、NMS生成的假名Rand或者用户指定的用户名和与身份提供服务器协商的共享密钥使用断言信息中携带的签名算法计算出签名结果,并将该签名结果和断言信息中携带的签名结果进行比较,若二者一致,则断言完整;同时,根据nonce的生成时间判断其是否是最近生成且是否重复;若是最近生成且不重复,则验证通过。

步骤317、在上述验证通过后,业务提供服务器为用户MN创建随机数Rand或者指定用户名的条目;

步骤318、业务提供服务器向用户返回业务访问响应,以Rand或者用户名作为用户在业务提供服务器的标识向用户提供业务。

如图4所示,为本发明由身份提供服务器发起的单点登录方法实施例的信令流程图,该方法包括以下步骤:

步骤401、MN、ASN以及认证中心之间进行接入认证,认证通过后,身份位置分离网络为用户分配接入标识AID;

此后,用户终端发送的报文通过AID进行传输,ASN为用户分配RID,并通过RID进行路由选路找到ISN,ISN从报文中获取用户的AID,并转换成IPv4/IPv6地址发送到传统IP网络。

步骤402、MN向身份提供服务器发起业务访问请求;

步骤403、MN在身份提供服务器页面上选择将要访问的业务,并向身份提供服务器发送匿名服务请求;

步骤404、身份提供服务器从报文中获取到用户的接入标识AID,确认用户通过接入认证;并检查它自身和业务提供服务器间是否存在共享密钥Ks,如果不存在,则认证业务提供服务器,认证通过后,生成共享密钥Ks。检查不存在AID对应的假名或对应的假名lifetime过期;

步骤405、身份提供服务器根据用户的匿名服务请求,向NMS发送匿名身份请求消息,请求消息中携带用户的AID、业务提供服务器URL;

步骤406、NMS接收到匿名身份请求消息后,生成随机数Rand以及默认的lifetime,作为相应用户的假名,并构建一条MN的AID、业务提供服务器URL和Rand、lifetime对应的条目,如表1所示;

步骤407、NMS向身份提供服务器发送匿名身份响应消息,响应消息中携带用户的AID、业务提供服务器URL、随机数Rand以及lifetime;

步骤408、身份提供服务器向用户发送匿名服务响应消息,响应消息中携带业务提供服务器URL、随机数Rand和lifetime;

步骤409、用户通过终端向身份提供服务器发送指定的用户名及其lifetime;

用户可将随机数Rand修改为指定的用户名即期望展现的用户名,并指定期望的lifetime;

步骤410、身份提供服务器向NMS发送匿名更新请求消息,消息中携带用户的AID、随机数Rand、用户指定的假名和lifetime;

步骤411、NMS在添加用户指定的假名和更新完lifetime后,向身份提供服务器发送匿名更新响应消息,消息中携带更新成功或失败的结果;

步骤412、身份提供服务器根据当前时间戳生成随机数nonce,构建认证响应消息,认证响应消息中包含断言信息,该断言信息中携带随机数nonce、业务提供服务器URL、身份提供服务器URL、NMS生成的假名Rand或者用户指定的用户名、签名算法、以及Ks的签名结果;

步骤413、身份提供服务器通过HTTP重定向将认证响应消息发送到业务提供服务器;

步骤414、业务提供服务器通过和身份提供服务器之间的共享密钥Ks验证断言的完整性,以及检查nonce是否是最近生成,是否重复等;

步骤415、在上述验证通过后,业务提供服务器为用户MN创建随机数Rand或者指定用户名的条目;

步骤416、业务提供服务器向用户返回业务访问响应,以Rand或者用户名作为用户在业务提供服务器的标识向用户提供业务。

由于本实施例中的步骤403-416和上述实施例中的步骤305-318的处理相似,因此本实施例中不再赘述。

如图5所示,为本发明身份提供服务器实施例的结构示意图,该身份提供服务器包括确认模块51和断言信息处理模块52,其中:

确认模块,用于确认用户通过接入认证;

断言信息处理模块,用于在所述确认模块确认用户通过接入认证后,根据所述身份提供服务器和所述用户欲访问的业务提供服务器间的共享密钥生成对用户的断言信息,并向所述业务提供服务器发送所述断言信息。

另外,所述身份提供服务器还包括:密钥生成模块,用于在断言信息处理模块生成对用户的断言信息之前,在接收到所述业务提供服务器发送的认证请求或所述用户发送的业务访问请求后,检查是否存在所述共享密钥,若不存在,则在所述业务提供服务器通过认证后,生成所述共享密钥。

为了避免用户的身份信息泄露,所述身份提供服务器还包括:获得模块,用于在所述确认模块确认所述用户通过接入认证之后,所述断言信息处理模块生成对用户的断言信息之前,为所述用户获得假名及与所述假名对应的生存期。具体地,所述获得模块,是用于根据所述用户的匿名服务请求向名字映射服务器(NMS)发送匿名身份请求,以及接收所述NMS返回的根据所述匿名身份请求生成的该用户的假名及与所述假名对应的生存期。另外,用户还可以修改用户名,故所述获得模块,还用于接收所述用户发送的携带指定用户名及相应生存期的匿名更新请求,并向所述NMS发送所述匿名更新请求,以及接收所述NMS返回的更新结果。

其中,所述断言信息中携带有随机数、所述身份提供服务器的身份信息、所述业务提供服务器的身份信息、所述用户的身份信息、签名算法以及所述身份提供服务器根据所述共享密钥计算出的签名结果;其中,所述用户的身份信息包括所述假名或所述指定用户名。

上述业务提供服务器在确认用户通过接入认证后,向业务提供服务器提供对该用户的断言信息,使得用户在访问业务提供服务器时,不需要输入认证信息成为可能。

如图6所示,为本发明业务提供服务器实施例的结构示意图,该业务提供服务器包括接收模块61和验证模块62,其中:

接收模块,用于接收身份提供服务器发送的对欲访问所述业务提供服务器的用户的断言信息;

验证模块,用于根据所述业务提供服务器和所述身份提供服务器之间的共享密钥验证所述断言信息。

另外,所述业务提供服务器还包括:业务提供模块,用于所述验证模块验证通过所述断言信息后,创建与所述断言信息中包含的用户的身份信息对应的条目,并向所述用户提供业务。

上述验证模块根据断言信息中携带的业务提供服务器URL、身份提供服务器URL、NMS生成的假名Rand或者用户指定的用户名和与身份提供服务器协商的共享密钥使用断言信息中携带的签名算法计算出签名结果,并将该签名结果和断言信息中携带的签名结果进行比较,若二者一致,则断言完整;同时,根据nonce的生成时间判断其是否是最近生成且是否重复;若是最近生成且不重复,则验证通过。

上述业务提供服务器,根据身份提供服务器发送的对用户的断言信息完成用户的单点登录,且有效保护了用户的隐私。

如图7所示,为本发明名字映射服务器实施例的结构示意图,该NMS包括接收模块71和生成发送模块72,其中:

接收模块,用于接收身份提供服务器发送的匿名身份请求,所述匿名身份请求中携带有用户的身份标识;

生成发送模块,用于根据所述接收模块接收的所述匿名身份请求生成与该身份标识对应的用户的假名及与所述假名对应的生存期,并向所述身份提供服务器返回所述用户的假名及与所述假名对应的生存期。

另外,为了可以对用户的假名进行修改,所述生成发送模块,还用于接收所述身份提供服务器发送的来自所述用户的携带指定用户名及相应生存期的匿名更新请求,根据匿名更新请求进行更新处理,并返回更新结果。

进一步地,图7所示的名字映射服务器和图5所示的身份提供服务器可以合设,二者合设后的装置如图8所示,该装置中相关模块的功能与图5和图7中相应模块的功能相同,此处不再赘述。

对应上述隐私增强的单点登录方法,本发明实施例还提供了一种单点登录系统,如图9所示,该系统包括业务提供服务器91、身份提供服务器92和名字映射服务器93,该系统中相关模块的功能与图5-图7中相应模块的功能相同,此处不再赘述。

总之,本发明实施例中,身份提供服务器在接收到业务提供服务器的认证请求或者用户的业务访问请求后,检查是否存在共享密钥Ks,如果不存在,则认证业务提供服务器,认证通过后,生成共享密钥Ks,身份提供服务器根据用户的身份标识确认用户通过接入认证,并根据用户的匿名服务请求通过名字映射服务器(NMS,Name Mapping Server)产生假名的方式对用户身份进行保护,同时为业务提供服务器生成该用户的断言信息,业务提供服务器接收到身份提供服务器的断言信息后,验证断言信息的合法性,如果验证通过,则创建假名对应的条目,并向用户提供业务。

当然,如果只需要解决多次认证的问题,上述系统中可以不包含名字映射服务器,相应地,身份提供服务器中也不需要包含获得模块。

本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,上述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。

以上实施例仅用以说明本发明的技术方案而非限制,仅仅参照较佳实施例对本发明进行了详细说明。本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1