CN101453476B - 一种跨域认证方法和系统 - Google Patents
一种跨域认证方法和系统 Download PDFInfo
- Publication number
- CN101453476B CN101453476B CN2009100000528A CN200910000052A CN101453476B CN 101453476 B CN101453476 B CN 101453476B CN 2009100000528 A CN2009100000528 A CN 2009100000528A CN 200910000052 A CN200910000052 A CN 200910000052A CN 101453476 B CN101453476 B CN 101453476B
- Authority
- CN
- China
- Prior art keywords
- domain
- certificate server
- authentication
- cross
- entity
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种跨域认证方法和系统,属于网络安全领域。所述方法为:建立不同信任域中的认证服务器之间基于PKI认证体系的信任关系,当第一信任域的第一实体跨域访问第二信任域的第二实体时,第一信任域中的第一认证服务器对第一实体进行身份认证,并将认证结果发送给第二信任域中的第二认证服务器;第二认证服务器利用预先建立的信任关系验证第一认证服务器为合法时,判断接收到的认证结果为认证通过时,跨域认证成功。所述系统包括信任关系建立模块、第一域认证模块、PKI认证模块和跨域认证模块。本发明提供的方法和系统简化了跨域认证流程,提高了跨域认证效率;进一步,还实现了透明高效的跨域单点访问。
Description
技术领域
本发明涉及网络安全领域,特别涉及一种跨域认证方法和系统。
背景技术
当前大规模分布式网络环境中,处于不同域中的企业、机构之间出现了越来越多的业务往来,隶属于不同信任域的用户进行跨域信息交互和访问也越来越多。
目前,实体A在跨域访问其他信任域中的实体B时,跨域认证普遍采用的解决方法是由实体B所在信任域的认证服务器直接对实体A进行跨域身份认证。其中,同构域为采用同种认证体制的信任域,异构域为采用不同种认证体制的信任域。现有的认证体制包括PKI(Public Key Infrastructure,公开密钥基础设施)认证体制、Kerberos认证体制、IBC(Identity-BasedCryptography,基于身份的认证体制)认证体制等。
其中,对于跨同构域的认证中,比如基于PKI认证体制的信任域A向基于PKI认证体制的信任域B进行跨域认证时,需要建立从目标证书到认证方信任锚之间的一条或多条候选的证书路径(或称为证书链),证书路径中的每一个证书都需要被检查和验证,这种交叉证书路径处理的过程非常复杂,使得认证服务器在直接验证非本域用户证书的过程变得繁琐低效。
另外,对于跨异构域的认证中,由于不同信任域之间的认证体制互不兼容,导致用户的身份凭证形式不同,例如PKI中采用身份证书,Kerberos中采用票据形式等。所以认证服务器在直接验证非本域用户身份凭证时,认证服务器识别身份凭证时需要对身份凭证的形式进行转换,同样,也使得认证服务器在直接验证非本域用户凭证的过程变得繁琐低效。
发明内容
本发明提供的跨域认证的方法和系统,以解决跨域认证中认证服务器在直接验证非本域用户凭证时繁琐低效的问题。
一方面,提供了一种跨域认证方法,包括至少两个信任域,建立不同信任域中的认证服务器之间基于公开密钥基础设施PKI认证体系的信任关系,当第一信任域中的第一实体跨域访问第二信任域中的第二实体时,所述方法包括:
步骤A:所述第一信任域中的第一认证服务器对所述第一实体进行身份认证,并将认证结果发送给所述第二信任域中的第二认证服务器;
步骤B:所述第二认证服务器利用预先建立的所述基于PKI认证体系的信任关系验证所述第一认证服务器是否合法,合法则执行步骤C,否则结束;
步骤C:所述第二认证服务器判断接收到的所述认证结果是否为认证通过,是则跨域认证成功,否则跨域认证失败。
另一方面,还提供了一种跨域认证系统,包括至少两个信任域,所述系统包括:
信任关系建立模块,用于建立不同信任域中的认证服务器之间基于公开密钥基础设施PKI认证体系的信任关系;
第一域认证模块,用于当第一信任域中的第一实体跨域访问第二信任域中的第二实体时,所述第一信任域中的第一认证服务器对所述第一实体进行身份认证,并将认证结果发送给跨域认证模块;
PKI认证模块,用于所述第二认证服务器利用所述信任关系建立模块建立的所述基于PKI认证体系的信任关系验证所述第一认证服务器的合法性;
跨域认证模块,用于当所述PKI认证模块验证所述第一认证服务器为合法时,所述第二认证服务器判断接收到的所述认证结果是否为认证通过,是则跨域认证成功,否则跨域认证失败。
上述第一信任域、第二信任域,第一认证服务器、第二认证服务器,和第一实体、第二实体是为了区分不同的信任域、认证服务器和实体而进行的标识,与顺序先后没有关系。同理,对于第二信任域中的第二实体向第一信任域中的第一实体进行跨域访问时,是一样的。
本发明提供的跨域认证方法和系统的有益效果是:通过在不同信任域中的认证服务器之间建立基于PKI认证体系的信任关系,不同信任域中的两个认证服务器之间利用这种互相信任的关系传送认证结果实现跨域认证,从而解决了跨同构域认证中交叉证书路径处理复杂的问题,及跨异构域中认证服务器认证不同形式的身份凭证时需要对身份凭证的形式进行转换的问题,从而简化了跨域认证流程,提高了跨域认证效率;进一步的,本发明还可以在首次跨域访问成功后,将认证成功的信息记录在第二认证服务器上,这样当第一实体想再次跨域访问第二实体时,就可以直接进行跨域访问,而无需再进行跨域认证,实现了透明高效的跨域单点访问。
附图说明
图1是本发明实施例提供的一种跨域认证方法流程图;
图2是本发明实施例提供的另一种跨域认证方法流程图;
图3是本发明实施例提供的另一种跨域认证方法流程图;
图4是本发明实施例提供的另一种跨域认证方法流程图;
图4-1是本发明实施例4提供的一种优选的跨域认证方法流程图;
图5是本发明实施例提供的一种跨域认证系统结构图;
图5-1是本发明实施例5提供的一种跨域认证系统示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
参见图1,为本发明实施例提供了一种跨域认证方法,
首先,步骤101:建立不同信任域中的认证服务器之间基于PKI认证体系的信任关系。优选的方式为:将不同信任域中的认证服务器归属于基于PKI认证体系中的同一个信任认证中心CA,该信任认证中心CA为每个认证服务器颁发证书,根据PKI认证理论可知,一个CA的所有实体都自动信任该CA所签发的所有证书,这样就建立起认证服务器之间的信任关系了。这里,可以包含至少两个信任域,相应的,认证服务器的数量也有至少两个。其中实体可以是用户、应用服务器等。
当上述至少两个信任域中的域A的实体A要跨域访问域B的实体B时,跨域认证的方法包括如下步骤,
步骤102:实体A向实体B发送跨域访问请求;
步骤103:实体B将认证服务器B的标识发送给实体A;
步骤104:实体A向域A的认证服务器A发送包含认证服务器B的标识的认证请求;
步骤105:域A的认证服务器A对实体A进行身份认证,将认证结果依据上述认证服务器B的标识发送给域B的认证服务器B;
其中认证服务器对本域内实体进行身份认证时,由于各信任域采用的认证体制不同(如PKI,Kerberos等),认证服务器根据其所属域的认证体制对域内实体进行身份认证。
比如,域A采用的是PKI认证体制,则此时认证服务器A可以采用证书方式、口令方式,或证书方式与口令方式的结合的方式对实体A进行身份认证。其中,认证服务器A采用证书方式对实体A进行身份认证的过程举例说明如下:
第一步:实体A向认证服务器A发送认证请求消息{实体A身份证书,用认证服务器A公钥加密的临时密钥,由该临时密钥加密的实体A标识和随机数ru}。
第二步:认证服务器A收到消息后验证实体A身份证书有效性和证书路径,验证失败则拒绝。验证成功后查询用户是否已注册,未注册则拒绝,已经注册则读取实体A的用户信息,解密出临时密钥从而解密出随机数和实体A身份标识并与实体A的身份证书声明比较是否一致,若一致则向实体A发送消息{由实体A公钥加密的本次会话的会话密钥,由该会话密钥加密的认证服务器的身份标识,收到的随机数ru,认证服务器A产生的随机数ra}。
第三步:实体A收到消息后解密若看到自己发送出的随机数ru则信任认证服务器A,并发送消息{用本次会话密钥加密的由认证服务器A产生的随机数ra}。认证服务器A收到消息后解密若看到自己产生的随机数ra则信任实体A,认证结果为认证通过,否则认证结果为未通过。
认证服务器A采用口令方式对实体A进行身份认证的过程举例说明如下:
第一步:实体A向认证服务器A发送一个随机数ru作为挑战值。
第二步:认证服务器A收到实体A的挑战值ru后产生对用户的挑战值ra,然后对ru、ra和口令链接求散列值,向实体A发送消息{挑战值ra,散列值}。
第三步:实体A收到消息后按相同方法求散列值,与收到的散列值比较,不同则认证结果为未通过,相同则信任认证服务器A,用会话密钥对{认证服务器前后产生的随机数ra和口令链接后的散列值}加密后发送给认证服务器A,认证服务器A收到消息后做散列值验证,若匹配则信任实体A,认证结果为认证通过。
证书和口令相结合的认证方式可以是先进行证书方式认证通过后再进行口令方式认证,或先进行口令方式认证通过后再进行证书方式认证。
步骤106:认证服务器B利用预先建立的上述基于PKI认证体系的信任关系验证认证服务器A是否合法,合法则执行步骤107,否则结束;
验证的方法可以是认证服务器B通过验证认证服务器A的证书来验证认证服务器A的合法性,等等。
步骤107:认证服务器B判断接收到的认证结果是否为认证通过,是则跨域认证成功,否则跨域认证失败。
通过在不同信任域中的认证服务器之间建立基于PKI认证体系的信任关系,不同信任域中的两个认证服务器之间利用这种互相信任的关系传送认证结果实现跨域认证,从而解决了跨同构域认证中交叉证书路径处理复杂的问题,及跨异构域中认证服务器认证不同形式的身份凭证时需要对身份凭证的形式进行转换的问题,从而简化了跨域认证流程,提高了跨域认证效率。
为了进一步提高跨域认证的安全性,进一步的,还可以在步骤107之前增加认证服务器B对实体B进行身份认证的步骤。
本发明实施例中是利用认证服务器B的标识来识别认证服务器A将对实体A的认证结果发送给哪个认证服务器的,在实际应用中,不限于这种方法,还可以采用其他方法进行标识。
本发明实施例中上述域A、域B,认证服务器A、认证服务器B,和实体A、实体B是为了区分不同的信任域、认证服务器和实体而进行的标识,与顺序先后没有关系。同理,对于域B中的实体B向域A中的实体A进行跨域访问时,是一样的。
可以理解,上述域A、域B,认证服务器A、认证服务器B,实体A、实体B也可以被称为第一信任域,第二信任域,第一认证服务器、第二认证服务器,第一实体、第二实体。
实施例二
参见图2,为本发明实施例提供的另一种跨域认证的方法,
首先,步骤201:建立不同信任域中的认证服务器之间基于PKI认证体系的信任关系。优选的方式为:将不同信任域中的认证服务器归属于基于PKI认证体系中的同一个信任认证中心CA,该信任认证中心CA为每个认证服务器颁发证书,根据PKI认证理论可知,一个CA的所有实体都自动信任该CA所签发的所有证书,这样就建立起认证服务器之间的信任关系了。这里,可以包含至少两个信任域,相应的,认证服务器的数量也有至少两个。其中实体可以是用户、应用服务器等。
当上述至少两个信任域中的域A的实体A要跨域访问域B的实体B时,跨域认证的方法包括如下步骤,
步骤202:实体A向实体B发送跨域访问请求;
步骤203:实体B判断域B的认证服务器B上是否记录有实体A认证成功的信息,是则跨域认证成功,结束;否则执行步骤204;
步骤204:实体B将认证服务器B的标识提供给实体A;
步骤205:实体A向域A的认证服务器A发送包含认证服务器B的标识的认证请求;
步骤206:域A的认证服务器A对实体A进行身份认证,将认证结果依据上述认证服务器B的标识发送给域B的认证服务器B;
步骤207:认证服务器B利用预先建立的上述基于PKI认证体系的信任关系验证认证服务器A是否合法,合法则执行步骤208,否则结束;
验证的方法可以是认证服务器B通过验证认证服务器A的证书来验证认证服务器A的合法性,等等。
步骤208:认证服务器B判断接收到的认证结果是否为认证通过,是则跨域认证成功,将实体A认证成功的信息记录在认证服务器B上;否则跨域认证失败。
为了进一步提高跨域认证的安全性,进一步的,还可以在步骤208之前增加认证服务器B对实体B进行身份认证的步骤。
可见,通过在不同信任域中的认证服务器之间建立基于PKI认证体系的信任关系,不同信任域中的两个认证服务器之间利用这种互相信任的关系传送认证结果实现跨域认证,从而解决了跨同构域认证中交叉证书路径处理复杂的问题,及跨异构域中认证服务器认证不同形式的身份凭证时需要对身份凭证的形式进行转换的问题,从而简化了跨域认证流程,提高了跨域认证效率。进一步的,在首次跨域访问成功后,将认证成功的信息记录在认证服务器B上,这样当实体A想再次跨域访问实体B时,就可以直接进行跨域访问,而无需再进行跨域认证,实现了透明高效的跨域单点访问。
本发明实施例中是利用认证服务器B的标识来识别认证服务器A将对实体A的认证结果发送给哪个认证服务器的,在实际应用中,不限于这种方法,还可以采用其他方法进行标识。
本发明实施例中上述域A、域B,认证服务器A、认证服务器B,和实体A、实体B是为了区分不同的信任域、认证服务器和实体而进行的标识,与顺序先后没有关系。同理,对于域B中的实体B向域A中的实体A进行跨域访问时,是一样的。
可以理解,上述域A、域B,认证服务器A、认证服务器B,实体A、实体B也可以被称为第一信任域,第二信任域,第一认证服务器、第二认证服务器,第一实体、第二实体。
实施例三
参见图3,为本发明实施例提供的另一种跨域认证方法,
首先,步骤301:建立不同信任域中的认证服务器之间基于PKI认证体系的信任关系。优选的方式为:将不同信任域中的认证服务器归属于基于PKI认证体系中的同一个信任认证中心CA,该信任认证中心CA为每个认证服务器颁发证书,根据PKI认证理论可知,一个CA的所有实体都自动信任该CA所签发的所有证书,这样就建立起认证服务器之间的信任关系了。这里,可以包含至少两个信任域,相应的,认证服务器的数量也有至少两个。其中实体可以是用户、应用服务器等。
步骤302:利用上述信任关系在上述不同域的认证服务器之间建立会话密钥;
优选的,建立会话密钥的方法可以是,域A中的认证服务器A将上述建立信任关系时颁发的证书发送到域B中的认证服务器B,认证服务器B对该证书验证通过后,建立会话密钥,用上述证书中包含的认证服务器A的公钥加密上述会话密钥,发送给认证服务器A,认证服务器A用自己的私钥解密后得到会话密钥。当然,利用基于PKI认证机制在不同信任域的服务器之间建立会话密钥的方法不限于上述方法,还有其他多种方法都可以实现。
其中,在上述至少两个信任域中的域A和域B之间利用上述信任关系建立会话密钥,则当域A中的实体A要跨域访问域B中的实体B时,跨域认证的方法包括如下步骤,
步骤303:实体A向实体B发送跨域访问请求;
步骤304:实体B将认证服务器B的标识发送给实体A;
步骤305:实体A向域A的认证服务器A发送包含认证服务器B的标识的认证请求;
步骤306:域A的认证服务器A对实体A进行身份认证,将认证结果和认证服务器A的标识依据上述认证服务器B的标识发送给域B的认证服务器B;
步骤307:认证服务器B依据接收到的认证服务器A的标识查找是否有与认证服务器A的标识对应的会话密钥,是则说明认证服务器A和认证服务器B之间是信任的,则执行步骤308,否则结束;
步骤308:认证服务器B判断接收到的认证结果是否为认证通过,是则跨域认证成功,否则跨域认证失败。
通过在不同信任域中的认证服务器之间建立基于PKI认证体系的信任关系,不同信任域中的两个认证服务器之间利用这种互相信任的关系传送认证结果实现跨域认证,从而解决了跨同构域认证中交叉证书路径处理复杂的问题,及跨异构域中认证服务器认证不同形式的身份凭证时需要对身份凭证的形式进行转换的问题,从而简化了跨域认证流程,提高了跨域认证效率。
为了进一步提高跨域认证的安全性,进一步的,还可以在步骤308之前增加认证服务器B对实体B进行身份认证的步骤。
本发明实施例中是利用认证服务器B的标识来识别认证服务器A将对实体A的认证结果发送给哪个认证服务器的,在实际应用中,不限于这种方法,还可以采用其他方法进行标识。
本发明实施例中上述域A、域B,认证服务器A、认证服务器B,和实体A、实体B是为了区分不同的信任域、认证服务器和实体而进行的标识,与顺序先后没有关系。同理,对于域B中的实体B向域A中的实体A进行跨域访问时,是一样的。
可以理解,上述域A、域B,认证服务器A、认证服务器B,实体A、实体B也可以被称为第一信任域,第二信任域,第一认证服务器、第二认证服务器,第一实体、第二实体。
实施例四
参见图4,为本发明实施例提供的另一种跨域认证方法,
首先,步骤401:建立不同信任域中的认证服务器之间基于PKI认证体系的信任关系。优选的方式为:将不同信任域中的认证服务器归属于基于PKI认证体系中的同一个信任认证中心CA,该信任认证中心CA为每个认证服务器颁发证书,根据PKI认证理论可知,一个CA的所有实体都自动信任该CA所签发的所有证书,这样就建立起认证服务器之间的信任关系了。这里,可以包含至少两个信任域,相应的,认证服务器的数量也有至少两个。其中实体可以是用户、应用服务器等。
步骤402:利用上述信任关系在上述不同域的认证服务器之间建立会话密钥;
优选的,建立会话密钥的方法可以是,域A中的认证服务器A将上述建立信任关系时颁发的证书发送到域B中的认证服务器B,认证服务器B对该证书验证通过后,建立会话密钥,用上述证书中包含的认证服务器A的公钥加密上述会话密钥,发送给认证服务器A,认证服务器A用自己的私钥解密后得到会话密钥。当然,利用基于PKI认证机制在不同信任域的服务器之间建立会话密钥的方法不限于上述方法,还有其他多种方法都可以实现。
其中,在上述至少两个信任域中的域A和域B之间利用上述信任关系建立会话密钥,则当域A中的实体A要跨域访问域B中的实体B时,跨域认证的方法包括如下步骤,
步骤403:实体A向实体B发送跨域访问请求;
步骤404:实体B判断域B的认证服务器B上是否记录有实体A认证成功的信息,是则跨域认证成功,结束;否则执行步骤405;
步骤405:实体B将认证服务器B的标识发送给实体A;
步骤406:实体A向域A的认证服务器A发送包含认证服务器B的标识的认证请求;
步骤407:域A的认证服务器A对实体A进行身份认证,将认证结果和认证服务器A的标识依据上述认证服务器B的标识发送给域B的认证服务器B;
步骤408:认证服务器B依据接收到的认证服务器A的标识查找是否有与认证服务器A的标识对应的会话密钥,是则说明认证服务器A和认证服务器B之间是信任的,则执行步骤409,否则结束;
步骤409:认证服务器B判断接收到的认证结果是否为认证通过,是则跨域认证成功,否则跨域认证失败。
为了进一步提高跨域认证的安全性,进一步的,还可以在步骤409之前增加认证服务器B对实体B进行身份认证的步骤。
可见,通过在不同信任域中的认证服务器之间建立基于PKI认证体系的信任关系,不同信任域中的两个认证服务器之间利用这种互相信任的关系传送认证结果实现跨域认证,从而解决了跨同构域认证中交叉证书路径处理复杂的问题,及跨异构域中认证服务器认证不同形式的身份凭证时需要对身份凭证的形式进行转换的问题,从而简化了跨域认证流程,提高了跨域认证效率。进一步的,在首次跨域访问成功后,将认证成功的信息记录在认证服务器B上,这样当实体A想再次跨域访问实体B时,就可以直接进行跨域访问,而无需再进行跨域认证,实现了透明高效的跨域单点访问。
本发明实施例中是利用认证服务器B的标识来识别认证服务器A将对实体A的认证结果发送给哪个认证服务器的,在实际应用中,不限于这种方法,还可以采用其他方法进行标识。
本发明实施例中上述域A、域B,认证服务器A、认证服务器B,和实体A、实体B是为了区分不同的信任域、认证服务器和实体而进行的标识,与顺序先后没有关系。同理,对于域B中的实体B向域A中的实体A进行跨域访问时,是一样的。
可以理解,上述域A、域B,认证服务器A、认证服务器B,实体A、实体B也可以被称为第一信任域,第二信任域,第一认证服务器、第二认证服务器,第一实体、第二实体。
参见图4-1,为本方法的一个优选方案,首先,将不同信任域中的认证服务器归属于基于PKI认证体系中的同一个信任认证中心CA,该信任认证中心CA为每个认证服务器颁发证书,根据PKI认证理论可知,一个CA的所有实体都自动信任该CA所签发的所有证书,建立起认证服务器之间的信任关系了。然后,上述建立了互相之间信任关系的不同信任域中的域A和域B之间建立会话密钥key3,当上述域A中的用户u要跨域访问域B中的应用服务器App时,其中域A和域B都采用PKI认证机制,用户u在域A的认证服务器ASa认证通过后,建立二者之间建立会话密钥key1,应用服务器App在域B的认证服务器ASb注册后,建立二者之间建立会话密钥key2,然后执行下述步骤:
①用户u向应用服务器App发送跨域访问请求;
②应用服务器App验证认证服务器ASb是否记录有用户u的跨域认证成功的信息,若有则说明用户u为已经被域B的认证服务器ASb认证通过的,跨域认证成功,结束;否则应用服务器App向用户u发送消息串{ASb标识,App证书},其中App证书包含有App公钥信息;ASb标识为认证服务器B的标识;
③用户u收到上述消息串后,从其中的App证书中解析得到App公钥,并生成对应用服务器App的挑战值urc,用App公钥加密消息串{u标识,urc},将加密后的消息串发送给应用服务器App;u标识为用户u的标识;
④应用服务器App用App私钥解密接收到上述消息串,并生成对用户u的挑战值brc,再用认证服务器ASb的公钥加密消息串{App标识,brc,urc},得到消息M,发送给用户u;
⑤用户u收到消息后,向认证服务器ASa发送认证请求,认证请求包含{密文C,ASb标识,消息M},其中密文C用会话密钥key1加密{H(M),N}得到的;其中H(M)为用户u对消息M进行散列运算的结果,N为用户u与认证服务器ASa本次会话的流水号,这里不限于散列运算,可以选用其他的加密算法得到H(M),N也不限于流水号,比如还可以采用当前时间等;
⑥认证服务器ASa对用户u进行本域身份认证,从域A的授权服务器中查询用户u的访问权限等信息,生成用户消息串uM,向认证服务器ASb发送消息串{密文D,ASa标识,消息M},其中密文D为用会话密钥key3加密消息串{uM,R(Asa-u),H(M)}得到的;其中H(M)可以是认证服务器ASa从步骤⑤中接收到的消息串中得到的M散列值H(M),也可以是用会话密钥key1解密密文C得到消息M后,利用和用户u使用相同的散列算法对消息M进行散列运算,生成M的散列值H(M);R(Asa-u)表示认证服务器ASa对用户u的认证结果。可以但不限于用数字0和1分别代表认证失败和认证通过。
⑦认证服务器ASb根据ASa标识查找是否有与其对应的会话密钥key3,未找到则说明ASa与ASb之间并未建立信任关系,结束认证过程;有的话,说明ASa对ASb而言是可信的,即认证服务器ASa是合法的,ASb用会话密钥key3解密密文D得到H(M),ASb用与ASa端使用的相同的散列算法对收到的M进行散列运算,得到H(M)’,比对H(M)与H(M)’是否一致,一致则说明消息确实是由可信的认证服务器ASa发送的,且消息M未被第三方修改过,即消息M是完整的。解密密文D得出认证服务器ASa对用户u的认证结果R(Asa-u),根据R(Asa-u)判断是否对用户u认证通过,当R(Asa-u)为0时说明对用户u认证未通过,当R(Asa-u)为1时说明对用户u认证通过,此时向认证服务器ASa发送消息,允许用户u对应用服务器App进行跨域访问,步骤可以是:ASb查找是否有消息M中的APP标识,有则说明应用服务器App已经在认证服务器ASb上注册,则向认证服务器ASa发送消息串{密文E,密文F},其中密文E为利用会话密钥key3加密消息串{brc,u标识,R(Asb-u),uM}得到的,密文F为利用会话密钥key3加密消息串{urc,key2′}得到的;key2′为用应用服务器App的公钥加密key2得到的。
⑧认证服务器ASa用会话密钥key3解密密文F,根据urc判断是否为用户u生成的,是则向用户u发送消息串{密文E,密文G},其中密文G为用会话密钥key1加密{urc,key2′}得到的;
⑨用户u用会话密钥key1解密密文G,得到自己生成的挑战值urc,判断认证服务器ASb和应用服务器App的合法性,向应用服务器发送消息串{密文E,key2′},应用服务器App利用私钥解密key2′得到key2,利用key2解密密文E,得到brc,u标识,R(Asb-u),uM,来验证用户身份的合法性,完成跨域认证,之后便可以依据用户信息串uM进行跨域访问了。
实施例五
参见图5,为本发明实施例提供的一种跨域认证系统,包括至少两个信任域,所述系统包括:
信任关系建立模块,用于建立不同信任域中的认证服务器之间基于公开密钥基础设施PKI认证体系的信任关系;
第一域认证模块,用于当第一信任域中的第一实体跨域访问第二信任域中的第二实体时,所述第一信任域中的第一认证服务器对所述第一实体进行身份认证,并将认证结果发送给跨域认证模块;
PKI认证模块,用于第二认证服务器利用上述信任关系建立模块建立的基于PKI认证体系的信任关系验证第一认证服务器的合法性;
跨域认证模块,用于当上述PKI认证模块验证第一认证服务器为合法时,第二认证服务器判断接收到的认证结果是否为认证通过,是则跨域认证成功,否则跨域认证失败。
其中,信任关系建立模块具体用于将不同信任域中的认证服务器归属于基于PKI认证体系中的同一个信任认证中心CA,信任认证中心CA为认证服务器颁发证书。
进一步的,上述信任关系建立模块还包括会话密钥建立单元,用于利用上述信任关系在不同信任域中的认证服务器之间建立会话密钥,相应的,
第一域认证模块还包括标识发送单元,用于第一认证服务器将第一认证服务器标识发送给第二认证服务器;
PKI认证模块具体用于第二认证服务器依据标识发送单元发送来的第一认证服务器标识查找是否有与第一认证服务器标识对应的会话密钥,来验证第一认证服务器的合法性。
通过在不同信任域中的认证服务器之间建立基于PKI认证体系的信任关系,不同信任域中的两个认证服务器之间利用这种互相信任的关系传送认证结果实现跨域认证,从而解决了跨同构域认证中交叉证书路径处理复杂的问题,及跨异构域中认证服务器认证不同形式的身份凭证时需要对身份凭证的形式进行转换的问题,从而简化了跨域认证流程,提高了跨域认证效率。
进一步的,为了进一步提高跨域认证中的安全性,所述系统还包括第二域认证模块,用于第二认证服务器对第二实体进行身份认证。
再进一步的,上述跨域认证模块还包括记录单元,用于当跨域认证成功后,在第二认证服务器上记录第一实体被认证成功的信息;相应的,所述系统还包括判断模块,用于第二实体在接收到第一实体的跨域访问请求后,判断第二认证服务器上是否记录有该第一实体被认证成功的信息。这样当第一实体想再次跨域访问第二实体时,就可以直接进行跨域访问,而无需再进行跨域认证,实现了透明高效的跨域单点访问。
上述第一信任域、第二信任域,第一认证服务器、第二认证服务器,和第一实体、第二实体是为了区分不同的信任域、认证服务器和实体而进行的标识,与顺序先后没有关系。同理,对于第二信任域中的第二实体向第一信任域中的第一实体进行跨域访问时,是一样的。
参见图5-1,各信任域中的认证服务器根据需要依托PKI信任体系建立相互信任关系,形成一种域间分布式认证,域内集中式认证的分布式结构。
认证体系结构中包括两个或两个以上不同信任域之间的跨域认证,每个信任域可采用相同的认证体制,也可根据需要采用不同的认证体制。如图5-1中所示,认证体系结构中包括三个不同的信任域:域A、域B和域C,其中域A和域B均采用PKI认证体制,域C采用Kerberos认证体制。域A、B内实体分别信任认证中心CA1、CA2,认证中心为本域内实体(包括用户、应用服务器、认证服务器等)颁发公钥证书,具体为CA1向用户1、应用服务器1、认证服务器1颁发公钥证书,CA2与此类似。域C中实体均在认证服务器中注册,具体为应用服务器4的信息注册到认证服务器中。
根据采用的认证体制不同,分别设立认证服务器负责实体间的认证,其中域A和域B分别包括认证服务器1和2,域C包括认证服务器3和Kerberos服务器。
依托PKI信任体系建立各信任域中认证服务器的相互信任关系。为实现跨域认证,将各域的认证服务器建立在统一的PKI认证体系之下,由PKI体系中的CA为各认证服务器颁发证书,从而使得各域中的认证服务器属于同一个根CA,建立了各认证服务器之间的信任关系。如图5-1中PKI认证体系为认证服务器1、2和3分别颁发证书,通过同一个根CA建立三个认证服务器之间的相互信任关系。其中认证服务器的功能包括本域内集中认证和域间分布式认证。
域内采用集中式认证:各信任域内由认证服务器负责统一认证,其中域A和域B分别由认证服务器1和2负责本域内实体的统一身份认证,域C通过认证服务器3对域内实体实施统一身份认证。但是由于采用的认证体制不同,各域内认证服务器的认证过程不同,按照相应的认证方法对域内实体实施集中统一的身份认证,如认证服务器1和2,根据证书链的构建和验证,对本域实体进行认证;认证服务器3,同票据授权服务器一起,按照认证业务交换、授权票据业务交换和用户/服务器认证交换,对本域实体进行认证。
域间采用分布式认证:认证服务器验证非本信任域用户身份时,通过与用户所属域的认证服务器交互,完成分布式认证。当用户跨域访问应用服务器时,应用服务器要求用户到应用服务器所在域认证服务器身份认证。用户首先到本域认证服务器进行域内身份认证,由该认证服务器向应用服务器所属域的认证服务器发送用户身份认证的结果;应用服务器所属域的认证服务器根据接收到的认证结果,判断该实体是否通过身份认证。例如图5-1中,认证服务器2验证用户1的身份时,首先由用户1所属域A中的认证服务器对用户1进行身份认证,并将用户1在本域内的认证结果提交给认证服务器2,通知用户1身份是否认证通过,进而由认证服务器2决定用户1身份认证通过与否。
域A与域C,域B与域C之间的跨域认证过程与以上流程同理。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (8)
1.一种跨域认证的方法,包括至少两个信任域,其特征在于,建立不同信任域中的认证服务器之间基于公开密钥基础设施PKI认证体系的信任关系,
当第一信任域中的第一实体跨域访问第二信任域中的第二实体时,所述方法包括:
步骤A:所述第一信任域中的第一认证服务器对所述第一实体进行身份认证,并将认证结果发送给所述第二信任域中的第二认证服务器;
步骤B:所述第二认证服务器利用预先建立的所述基于PKI认证体系的信任关系验证所述第一认证服务器是否合法,合法则执行步骤C,否则结束;
步骤C:所述第二认证服务器判断接收到的所述认证结果是否为认证通过,是则跨域认证成功,否则跨域认证失败;
其中,所述建立不同信任域中的认证服务器之间基于PKI认证体系的信任关系具体为:将不同信任域中的认证服务器归属于基于PKI认证体系中的同一个信任认证中心CA,所述信任认证中心CA为所述认证服务器颁发证书。
2.如权利要求1所述的跨域认证方法,其特征在于,所述建立不同信任域中认证服务器之间基于PKI认证体系的信任关系之后还包括利用所述信任关系在属于不同信任域中的认证服务器之间建立会话密钥的步骤,相应的,
步骤A还包括:所述第一认证服务器将第一认证服务器标识发送给第二认证服务器;
步骤B中所述第二认证服务器利用预先建立的所述基于PKI认证体系的信任关系验证所述第一认证服务器是否合法的步骤具体为:所述第二认证服务器依据所述第一认证服务器标识查找是否有与所述第一认证服务器标识对应的会话密钥,是则所述第一认证服务器为合法。
3.如权利要求1-2中任一项所述的跨域认证方法,其特征在于,步骤C跨域认证成功后还包括在所述第二认证服务器上记录所述第一实体被认证成功的信息的步骤;
相应的,步骤A之前还包括:所述第二实体在接收到所述第一实体的跨域访问请求后,判断所述第二认证服务器上是否记录有所述第一实体被认证成功的信息的步骤,是则跨域认证成功,结束;否则执行步骤A。
4.如权利要求1-2中任一项所述的跨域认证方法,其特征在于,所述步骤B之前还包括所述第二认证服务器对所述第二实体进行身份认证的步骤。
5.一种跨域认证的系统,包括至少两个信任域,其特征在于,所述系统包括:
信任关系建立模块,用于建立不同信任域中的认证服务器之间基于公开密钥基础设施PKI认证体系的信任关系;
第一域认证模块,用于当第一信任域中的第一实体跨域访问第二信任域中的第二实体时,所述第一信任域中的第一认证服务器对所述第一实体进行身份认证,并将认证结果发送给跨域认证模块;
PKI认证模块,用于所述第二认证服务器利用所述信任关系建立模块建立的所述基于PKI认证体系的信任关系验证所述第一认证服务器的合法性;
跨域认证模块,用于当所述PKI认证模块验证所述第一认证服务器为合法时,所述第二认证服务器判断接收到的所述认证结果是否为认证通过,是则跨域认证成功,否则跨域认证失败;
其中,所述信任关系建立模块具体用于将不同信任域中的认证服务器归属于基于PKI认证体系中的同一个信任认证中心CA,所述信任认证中心CA为所述认证服务器颁发证书。
6.如权利要求5所述的跨域认证系统,其特征在于,所述信任关系建立模块还包括会话密钥建立单元,用于利用所述信任关系在所述不同信任域中的认证服务器之间建立会话密钥,相应的,
所述第一域认证模块还包括标识发送单元,用于所述第一认证服务器将第一认证服务器标识发送给第二认证服务器;
所述PKI认证模块具体用于所述第二认证服务器依据所述标识发送单元发送来的第一认证服务器标识查找是否有与所述第一认证服务器标识对应的会话密钥,来验证所述第一认证服务器的合法性。
7.如权利要求5-6中任一项所述的跨域认证系统,其特征在于,所述跨域认证模块还包括记录单元,用于当跨域认证成功后,在所述第二认证服务器上记录所述第一实体被认证成功的信息;
相应的,所述系统还包括判断模块,用于所述第二实体在接收到所述第一实体的跨域访问请求后,判断所述第二认证服务器上是否记录有所述第一实体被认证成功的信息。
8.如权利要求5-6中任一项所述的跨域认证系统,其特征在于,所述系统还包括第二域认证模块,用于所述第二认证服务器对所述第二实体进行身份认证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100000528A CN101453476B (zh) | 2009-01-06 | 2009-01-06 | 一种跨域认证方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100000528A CN101453476B (zh) | 2009-01-06 | 2009-01-06 | 一种跨域认证方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101453476A CN101453476A (zh) | 2009-06-10 |
CN101453476B true CN101453476B (zh) | 2011-12-07 |
Family
ID=40735499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100000528A Expired - Fee Related CN101453476B (zh) | 2009-01-06 | 2009-01-06 | 一种跨域认证方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101453476B (zh) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645900B (zh) * | 2009-08-31 | 2012-08-01 | 国家信息中心 | 一种跨域权限管理系统及方法 |
CN101888297A (zh) * | 2010-07-16 | 2010-11-17 | 浙江省人大常委会办公厅信息中心 | 一种基于信任的跨域认证方法 |
CN101984626B (zh) * | 2010-11-11 | 2013-10-23 | 北京海泰方圆科技有限公司 | 文件安全交换方法及系统 |
CN103312670A (zh) * | 2012-03-12 | 2013-09-18 | 西安西电捷通无线网络通信股份有限公司 | 一种认证方法及系统 |
CN103312499B (zh) | 2012-03-12 | 2018-07-03 | 西安西电捷通无线网络通信股份有限公司 | 一种身份认证方法及系统 |
CN103312672A (zh) * | 2012-03-12 | 2013-09-18 | 西安西电捷通无线网络通信股份有限公司 | 身份认证方法及系统 |
CN103795530B (zh) * | 2012-10-31 | 2017-11-03 | 华为技术有限公司 | 一种跨域控制器认证的方法、装置及主机 |
CN103078858B (zh) * | 2012-12-31 | 2015-08-26 | 上海同岩土木工程科技有限公司 | 基于web服务和签名证书的软件授权试用方法 |
CN103338194B (zh) * | 2013-03-06 | 2016-04-20 | 国家电网公司 | 一种基于信誉度评估的跨安全域访问控制系统和方法 |
CN104468532A (zh) * | 2014-11-19 | 2015-03-25 | 成都卫士通信息安全技术有限公司 | 一种跨多级网络边界的网络资源访问接入控制方法 |
CN105187426B (zh) * | 2015-09-06 | 2018-05-04 | 北京京东尚科信息技术有限公司 | 用于基于认证信息实现跨域访问的方法和系统 |
CN106571920B (zh) * | 2015-10-10 | 2019-09-27 | 西安西电捷通无线网络通信股份有限公司 | 一种多ttp参与的实体身份有效性验证方法及装置 |
CN105871880B (zh) * | 2016-05-10 | 2018-11-06 | 华中科技大学 | 一种云环境下基于信任模型的跨租户访问控制方法 |
CN107770192A (zh) * | 2017-11-13 | 2018-03-06 | 郑州云海信息技术有限公司 | 在多系统中身份认证的方法和计算机可读存储介质 |
CN108737436B (zh) * | 2018-05-31 | 2020-02-21 | 西安电子科技大学 | 基于信任联盟区块链的跨域服务器身份认证方法 |
CN109150897B (zh) * | 2018-09-18 | 2021-05-28 | 深圳市风云实业有限公司 | 一种端到端的通信加密方法及装置 |
CN109274694A (zh) * | 2018-11-14 | 2019-01-25 | 天津市国瑞数码安全系统股份有限公司 | 一种基于标识的通用跨域认证方法 |
CN109347857A (zh) * | 2018-11-14 | 2019-02-15 | 天津市国瑞数码安全系统股份有限公司 | 一种基于标识的通用跨网认证方法 |
CN110661816B (zh) * | 2019-10-22 | 2021-11-05 | 北京印刷学院 | 一种基于区块链的跨域认证方法与电子设备 |
CN111431850B (zh) * | 2020-02-18 | 2022-04-19 | 北京网聘咨询有限公司 | 云计算中跨域安全认证方法 |
CN111555885B (zh) * | 2020-03-18 | 2021-11-30 | 西安电子科技大学 | 一种可信身份认证方法、系统、存储介质、云计算终端 |
CN111447187A (zh) * | 2020-03-19 | 2020-07-24 | 重庆邮电大学 | 一种异构物联网的跨域认证方法 |
CN114036472B (zh) * | 2021-11-05 | 2024-03-29 | 西北工业大学 | 基于联盟链的Kerberos及PKI安全域间的跨域认证方法 |
CN114024749B (zh) * | 2021-11-05 | 2022-11-29 | 西北工业大学 | 一种基于中心节点域间协同的工业设备逻辑跨域接入认证方法 |
CN114218558A (zh) * | 2021-12-21 | 2022-03-22 | 联想(北京)有限公司 | 安全多方计算中的跨域身份验证方法及服务器 |
CN114500087A (zh) * | 2022-02-22 | 2022-05-13 | 中国人民解放军78111部队 | 一种基于用户信任度的跨域授权方法 |
CN117394973A (zh) * | 2022-07-04 | 2024-01-12 | 中兴通讯股份有限公司 | 协同验证方法、协同认证方法、运营商设备、企业设备 |
CN117641342A (zh) * | 2022-08-18 | 2024-03-01 | 华为技术有限公司 | 通信方法及装置 |
CN115776389B (zh) * | 2022-11-01 | 2023-11-07 | 龙应斌 | 一种基于可信认证链路的防窃取数据安全访问方法及系统 |
CN116055055A (zh) * | 2022-11-29 | 2023-05-02 | 北京笔新互联网科技有限公司 | 跨域认证方法及系统 |
CN117240595A (zh) * | 2023-10-31 | 2023-12-15 | 浙江大学 | 一种支持多类信任体系的跨域身份认证方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101242272A (zh) * | 2008-03-11 | 2008-08-13 | 南京邮电大学 | 基于移动代理和断言的网格跨域安全平台的实现方法 |
CN101286845A (zh) * | 2008-05-12 | 2008-10-15 | 华中科技大学 | 一种基于角色的域间访问控制系统 |
-
2009
- 2009-01-06 CN CN2009100000528A patent/CN101453476B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101242272A (zh) * | 2008-03-11 | 2008-08-13 | 南京邮电大学 | 基于移动代理和断言的网格跨域安全平台的实现方法 |
CN101286845A (zh) * | 2008-05-12 | 2008-10-15 | 华中科技大学 | 一种基于角色的域间访问控制系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101453476A (zh) | 2009-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101453476B (zh) | 一种跨域认证方法和系统 | |
Yang et al. | Delegating authentication to edge: A decentralized authentication architecture for vehicular networks | |
Feng et al. | Blockchain-based cross-domain authentication for intelligent 5G-enabled internet of drones | |
Xu et al. | An identity management and authentication scheme based on redactable blockchain for mobile networks | |
CN110537346B (zh) | 安全去中心化域名系统 | |
CN101189827B (zh) | 综合认证和管理服务提供者、终端和用户身份模块的方法以及使用该方法的系统和终端 | |
CN100580657C (zh) | 分布式单一注册服务 | |
US8281127B2 (en) | Method for digital identity authentication | |
CN101888297A (zh) | 一种基于信任的跨域认证方法 | |
CN103023911A (zh) | 可信网络设备接入可信网络认证方法 | |
Chuang et al. | PPAS: A privacy preservation authentication scheme for vehicle-to-infrastructure communication networks | |
Wang et al. | A practical authentication framework for VANETs | |
TWI526871B (zh) | Server, user device, and user device and server interaction method | |
JP2001186122A (ja) | 認証システム及び認証方法 | |
US20100223464A1 (en) | Public key based device authentication system and method | |
Hussain et al. | An improved authentication scheme for digital rights management system | |
CN107104804A (zh) | 一种平台完整性验证方法和装置 | |
Lyu et al. | A2UA: An auditable anonymous user authentication protocol based on blockchain for cloud services | |
Zhou et al. | Trusted channels with password-based authentication and TPM-based attestation | |
CN1859149A (zh) | 流媒体业务服务的实现方法 | |
Liou et al. | T-auth: A novel authentication mechanism for the IoT based on smart contracts and PUFs | |
CN111245611B (zh) | 基于秘密共享和可穿戴设备的抗量子计算身份认证方法及系统 | |
WO2017008556A1 (zh) | 一种无线接入点和管理平台鉴权的方法和装置 | |
CN113301026A (zh) | 一种服务器间进行通信的方法 | |
Jia et al. | A Critique of a Lightweight Identity Authentication Protocol for Vehicular Networks. |
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 |
Granted publication date: 20111207 Termination date: 20170106 |
|
CF01 | Termination of patent right due to non-payment of annual fee |