专利名称:在分布式终端组件之间进行连接控制和安全验证的方法
技术领域:
本发明涉及一种功能组件分布式移动终端系统的安全保护机制,尤其涉及一种在分布式终端组件之间建立信任关系和使用服务鉴权过程的方法。
背景技术:
在移动通信领域,随着技术和应用的发展,开放的业务接口技术使得下一代网络是一个能够提供丰富的个性化业务的网络,未来的移动终端也就必须具备开放的体系结构。但是从目前看来,移动终端对业务的支撑能力相对滞后,已经成为未来移动通信业务发展的瓶颈,即能力单一,结构体系封闭,可扩展性不强,不能最大限度的满足未来多媒体业务的应用。
为了适应多媒体应用发展的需要,为用户提供更具个性化的业务服务,未来的移动终端功能将会具有很强的计算、通信、显示和存储等业务支撑能力,并以网络接入、终端输入、显示输出、数据处理等功能模块以相互独立的组件分布式存在。终端功能组件分布式的存在,使各功能组件的接口标准化以及协议分层化,具有从整体终端中组合和分离出来的可能。
移动终端理念和技术的革新必将对通信领域的各个方面产生积极的影响,用户可以根据自己的喜好灵活的选择终端组件,并能够有效的节约成本和升级终端组件;终端组件协议的分层结构以及不同终端功能的分级,大大增加了终端对网络,对业务的支撑能力,为在不同的底层网络上各类业务的展开、用户市场的进一步开拓奠定了基础;终端制造的分工将会细化,这种分工必然使得设备制造商改善经营模式,调整经营策略,获取更多的经济利润。
既然未来的移动终端是组件分布式的业务终端,组件间通过标准统一的接口相互通信,那么安全问题也随之而来。目前在网络通信领域中,主要通过设置代理网关、设置防火墙,密钥管理等种种措施,使得整个通信网络安全有了更多保障。那么对于分布式移动终端,在终端组件通信过程中,如何安全有效的预防密码破解、网络窃听、数据篡改、地址欺骗、非法入侵等等一系列的恶意破坏,保障移动终端通信过程的安全可靠,都成为首要解决的问题。
发明内容
本发明的目的在于提供一种分布式移动终端组件之间进行连接和安全验证的解决方案。
根据本发明,提供了一种在分布式终端组件之间进行连接控制和安全验证的方法,该分布式终端组件包括控制单元、安全模块以及服务模块,并且该安全模块包括票据中心,该方法包括步骤(1)对分布式终端组件进行初始化,将具有最高控制级别的分布式终端组件的控制单元确定为主控单元;(2)该包含主控单元的分布式终端组件向其它分布式终端组件的控制单元发起连接请求;(3)通过双向三次握手的方式,建立该包含主控单元的分布式终端组件与其他分布式终端组件之间的信任关系,从而这些建立了信任关系的各个分布式终端组件即构成了一个整体移动终端;(4)当该整体终端发起业务时,该包含主控单元的分布式终端组件从其他分布式终端组件的票据中心获取使用某项服务的票据,然后根据所获取的票据向其它分布式终端组件发起使用服务的请求。
根据本发明的技术方案,分布式移动终端可以随时随地安全可靠的为用户提供最佳的业务服务,实现简单,并且具有较强的可操作性。
图1是分布式终端的控制和安全验证的方框图。
具体实施例方式
本发明公开了一种分布式移动终端组件之间进行连接和安全验证的解决方案。在本发明中,将分布式终端组件的业务支撑能力分为接入、计算、存储、输入、显示等不同类别,每项能力称为终端组件的一项服务,并且一个终端组件可以提供一项或多项服务。
每个分布式终端组件的逻辑构成如图1所示,包括控制单元、安全模块以及一项或者多项服务模块,其中安全模块又分为信任关系验证、票据中心和服务鉴权三部分。其中控制单元的功能主要是在分布式终端组件之间的连接请求和服务请求的发起、协商和控制。安全模块的功能主要是在控制单元的控制下完成分布式终端组件之间的信任关系验证和服务使用的鉴权。服务模块的功能是为其他终端组件提供相应的服务功能。其中控制单元和安全模块共同实现终端组件之间的连接控制和安全验证的过程,使各个终端组件组合成一个整体终端为用户提供服务。
在本发明中,安全模块中的信任关系验证部分的功能主要是在主控单元的控制下完成分布式终端组件之间的信任关系验证,票据中心向包含主控单元的的分布式终端组件提供了使用某项服务的票据,而服务鉴权部分对包含主控单元的分布式终端组件是否能够使用某项服务进行鉴权。
每个分布式终端组件都具有其自己的简表,在该简表中存储着用户所有可用来提供业务支撑的分布式终端组件的ID编号、具有的服务项目、是否可以作为主控单元以及控制单元的控制级别的优先级等信息。
下面详细描述根据本发明的分布式终端组件之间的安全验证过程。
首先对分布式终端组件进行初始化,并且确定某个分布式终端组件的控制单元为主控单元。在分布式终端的连接范围内,每个分布式终端组件提供各自的简表,根据这些分布式终端组件的控制单元的优先级,动态地确定具有最高控制级别的分布式终端组件的控制单元作为主控单元,并最终由包含主控单元的分布式终端组件来负责之后的连接和服务请求控制。
接着,该包含主控单元的分布式终端组件向其它分布式终端组件的控制单元发起连接请求。其中,该包含主控单元的终端组件作为发起连接请求的终端组件称为起始器,其它终端组件作为响应连接请求的终端组件称为接收器。
随后,通过双向三次握手的方式,建立该包含主控单元的分布式终端组件与其他分布式终端组件之间的信任关系,从而建立了信任关系的各个分布式终端组件即构成了一个整体移动终端。
在本发明中,通过双向三次握手方式建立信任关系的步骤还包括(1)该包含主控单元的分布式终端组件产生一个随机码Rand,发送给其他分布式终端组件,并且该包含主控单元的分布式终端组件通过鉴权算法生成对应于该随机码Rand的密钥Key;(2)其他分布式终端组件使用该随机码Rand,利用相同的鉴权算法生成密钥Key′,并将该密钥Key′返回给该包含主控单元的分布式终端组件;(3)该包含主控单元的分布式终端组件根据接收到的Key′,比较Key′和Key是否相等,如果Key′等于Key,该包含主控单元的分布式终端组件向其它分布式终端组件发送确认Ack消息,从而建立该包含主控单元的分布式终端组件对其他分布式终端组件的信任关系;(4)其他分布式终端组件接收到该确认Ack消息后,使用同样的步骤和该包含主控单元的分布式终端组件建立信任关系。
而且,该步骤还可能包含以下步骤该包含主控单元的分布式终端组件和其他分布式终端组件利用该随机码rand,通过加密算法生成共享的会话密钥SessionKey,用于以后组件间通信时加解密。
最后,当该整体终端发起业务时,该包含主控单元的分布式终端组件从其他分布式终端组件的票据中心获取使用某项服务的票据,然后根据所获取的票据向其它分布式终端组件发起使用服务的请求。该步骤进一步增加了分布式终端组件之间使用服务的安全性。
在本发明中,该包含主控单元的分布式终端组件从其他分布式终端组件获取使用服务的票据的步骤还包括该包含主控单元的分布式终端组件向其它分布式终端组件发出请求“TICKET_REQUEST”以索取票据,其中该请求经该会话密钥SessionKey加密,并且该请求包含服务名,即接受器提供的服务的名称。如果接受器不能提供该服务,则返回相应的出错信息。
其他分布式终端组件利用该会话密钥SessionKey解密该请求,并根据该请求返回相应的服务票据“TICKET_RESPONSE”。其中该响应应该包含服务ID以及有效期,服务ID是唯一标识服务的标志,而有效期由接受器决定,以防止票据被截获后重复使用。
该包含主控单元的分布式终端组件根据所获取的票据发起服务请求的步骤还包括该包含主控单元的分布式终端组件根据自身的参数生成子会话密钥SubSessionKey,利用该会话密钥SessionKey加密该子会话密钥SubSessionKey和票据信息,并且将加密后的子会话密钥SubSessionKey和票据信息以“SERVICE_REQUEST”形式发送给其他分布式终端组件。在该请求中,包含服务ID、有效期、时间戳以及SubSessionKey信息。其中服务ID和有效期是接受器传来的票据信息,时间戳是起始器发出该请求的时间,以便接受器根据时间戳判断票据是否过期。
其它分布式终端组件利用共享的该会话密钥SessionKey解密“SERVICE_REQUEST”,向该包含主控单元的分布式终端组件返回“SERVICE_RESPONSE”,并且取出该子会话密钥SubSessionKey,用于服务时的会话加解密。
需要说明的是,发起器向接受器获取使用服务的票据的方法和发起器根据持有的票据向接受器请求服务的方法的具体实现方式可以有多种,上述实例仅用于示意的目的。
权利要求
1.一种在分布式终端组件之间进行连接控制和安全验证的方法,所述分布式终端组件包括控制单元、安全模块以及服务模块,并且所述安全模块包括票据中心,所述方法包括步骤(1)对分布式终端组件进行初始化,将具有最高控制级别的分布式终端组件的控制单元确定为主控单元;(2)所述包含主控单元的分布式终端组件向其它分布式终端组件的控制单元发起连接请求;(3)通过双向三次握手的方式,建立所述包含主控单元的分布式终端组件与其他分布式终端组件之间的信任关系,从而这些建立了信任关系的各个分布式终端组件即构成了一个整体移动终端;(4)当所述整体终端发起业务时,所述包含主控单元的分布式终端组件从其他分布式终端组件的票据中心获取使用某项服务的票据,然后根据所获取的票据向其它分布式终端组件发起使用服务的请求。
2.根据权利要求1所述的方法,其中步骤(1)还包括步骤在分布式终端的连接范围内,每个分布式终端组件提供各自的简表,根据这些分布式终端组件的控制单元的优先级,动态地确定具有最高控制级别的分布式终端组件的控制单元作为主控单元。
3.根据权利要求1的方法,其中所述步骤(3)还包括步骤(1)所述包含主控单元的分布式终端组件产生一个随机码Rand,发送给其他分布式终端组件,并且所述包含主控单元的分布式终端组件通过鉴权算法生成对应于所述随机码Rand的密钥Key;(2)其他分布式终端组件使用所述随机码Rand,利用相同的鉴权算法生成密钥Key′,并将所述密钥Key′返回给所述包含主控单元的分布式终端组件;(3)所述包含主控单元的分布式终端组件根据接收到的Key′,比较Key′和Key是否相等,如果Key′等于Key,所述包含主控单元的分布式终端组件向其它分布式终端组件发送确认Ack消息,从而建立所述包含主控单元的分布式终端组件对其他分布式终端组件的信任关系;(4)其他分布式终端组件接收到所述确认Ack消息后,使用同样的步骤和所述包含主控单元的分布式终端组件建立信任关系。
4.根据权利要求3所述的方法,还包括步骤所述包含主控单元的分布式终端组件和其他分布式终端组件利用所述随机码rand,通过加密算法生成共享的会话密钥SessionKey,用于以后组件间通信时加解密。
5.根据权利要求4所述的方法,其中步骤(4)中所述包含主控单元的分布式终端组件从其他分布式终端组件获取使用服务的票据的步骤还包括所述包含主控单元的分布式终端组件向其它分布式终端组件发出请求“TICKET_REQUEST”以索取票据,其中所述请求经所述会话密钥SessionKey加密;其他分布式终端组件利用所述会话密钥SessionKey解密所述请求,并根据所述请求返回相应的服务票据“TICKET_RESPONSE”。
6.根据权利要求5所述的方法,其中步骤(4)中所述包含主控单元的分布式终端组件根据所获取的票据发起服务请求的步骤还包括所述包含主控单元的分布式终端组件根据自身的参数生成子会话密钥SubSessionKey,利用所述会话密钥SessionKey加密所述子会话密钥SubSessionKey和票据信息,并且将加密后的子会话密钥SubSessionKey和票据信息以“SERVICE_REQUEST”形式发送给其他分布式终端组件;其它分布式终端组件利用共享的所述会话密钥SessionKey解密“SERVICE_REQUEST”,向所述包含主控单元的分布式终端组件返回“SERVICE_RESPONSE”,并且取出所述子会话密钥SubSessionKey,用于服务时的会话加解密。
全文摘要
本发明提供了一种在分布式终端组件之间进行连接控制和安全验证的方法,包括步骤(1)对分布式终端组件进行初始化,将具有最高控制级别的分布式终端组件的控制单元确定为主控单元;(2)该包含主控单元的分布式终端组件向其它分布式终端组件的控制单元发起连接请求;(3)通过双向三次握手的方式,建立该包含主控单元的分布式终端组件与其他分布式终端组件之间的信任关系,从而建立了信任关系的各个分布式终端组件即构成了一个整体移动终端;(4)当该整体终端发起业务时,该包含主控单元的分布式终端组件从其他分布式终端组件的票据中心获取使用某项服务的票据,然后根据所获取的票据向其它分布式终端组件发起使用服务的请求。
文档编号H04L9/32GK1750491SQ20041007872
公开日2006年3月22日 申请日期2004年9月17日 优先权日2004年9月17日
发明者范瑞俊, 柴慧娟, 纪阳, 张平 申请人:北京邮电大学