安全算法选择处理方法与装置、网络实体及通信系统 |
|||||||
申请号 | CN200910081161.7 | 申请日 | 2009-04-03 | 公开(公告)号 | CN101854625A | 公开(公告)日 | 2010-10-06 |
申请人 | 华为技术有限公司; | 发明人 | 张爱琴; 陈璟; 杨义; | ||||
摘要 | 本 发明 实施例 公开了一种安全 算法 选择处理方法与装置、网络实体及通信系统,其中,方法包括:接收用户终端发送的业务 请求 消息;根据业务请求消息的安全保护需求,从用户终端与网络实体都支持的安全算法列表中选择安全算法;用户终端和/或网络实体支持的安全算法列表基于不同的安全保护需求分别设置,或者,用户终端与网络实体支持的安全算法列表分别用于表示用户终端与网络实体的安全能 力 。本发明实施例可以根据不同业务请求消息的安全保护需求选择不同的安全算法,以对相应的业务进行不同的安全保护,提高了业务的安全性,综合考虑了通信系统中各算法的复杂度与占用的开销,在对业务进行有效安全保护的同时提高通信系统的性能。 | ||||||
权利要求 | 1.一种安全算法选择处理方法,其特征在于,包括: |
||||||
说明书全文 | 安全算法选择处理方法与装置、网络实体及通信系统技术领域[0001] 本发明涉及通信技术,尤其是一种安全算法选择处理方法与装置、网络实体及通信系统。 背景技术[0002] 长期演进(Long Term Evolve,以下简称:LTE)是由第三代合作伙伴计划(Third Generation Partnership Project,以下简称:3GPP)定义的移动宽带网络标准的下一个演进目标,支持在成对频谱和非成对频谱上的运行,可实现对现有和未来的无线频带的高效利用。如图1所示,为作为LTE系统中接入网部分的演进的通用移动电信系统陆地无线接入网(Evolved UMTSTerrestrial Radio Access Network,以下简称:E-UTRAN)的结构示意图。演进基站(Evolved NodeB,以下简称:eNB)之间通过X2接口实现数据和信令的交互。eNB通过S1接口连接到演变分组核心(Evolved Packet Core,以下简称:EPC)网络中的移动性管理实体(Mobility Management Entity,以下简称:MME)。eNB通过S1接口连接到服务网关(Serving Gateway,以下简称:S-GW)。 [0003] 如图2所示,为LTE系统架构演进(LTE System Architecture Evolution,以下简称:LTE-SAE)系统的安全架构示意图。该LTE-SAE系统中,具有如下两层安全保护:一层是用户终端(User Equipment,以下简称:UE)与eNB之间的接入层(Access Stratum,以下简称:AS),主要用于对UE与eNB之间的无线资源控制(Radio Resource Control,以下简称:RRC)信令和用户面(User Plane,以下简称:UP)的用户数据进行安全保护,包括RRC信令的加密保护和完整性保护以及UP的用户数据的加密;另一层是UE和MME之间的非接入层(Non Access Stratum,以下简称:NAS),主要用于对UE和MME之间的NAS信令进行安全保护,包括:NAS信令的加密保护和完整性保护。 [0004] 在LTE-SAE系统中,UE的能力包括UE空口能力(UE radio capability)和UE网络能力(UE network capability)。其中,UE空口能力使用在UE与eNB之间,主要体现在UE对于AS所支持的AS安全算法列表,假设该AS安全算法列表中算法的集合表示为{A}。UE网络能力使用在UE与MME之间,包含了UE在NAS的安全能力,体现在对于NAS所支持的NAS安全算法的列表,假设该NAS安全算法列表中算法的集合表示为{B}。从AS与NAS的安全模式启动成功后启动对数据和信令的安全保护。启动AS与NAS的安全模式时,UE分别向网络实体eNB、MME上报AS安全算法{A}与NAS安全算法{B};假设表示eNB自身安全算法支持能力的安全算法列表为{a},表示MME自身安全算法支持能力的安全算法列表为{b},eNB从{{A}∩{a}}中选择AS的安全算法,包括:RRC加密算法,即:演进的分组系统(EvolvedPacket System,以下简称:EPS)AS信令加密算法(EPS AS EncryptionAlgorithm,以下简称:EAEA),RRC完整性保护算法,即:EPS AS信令完整性保护算法(EPS AS Integrity Algorithm,以下简称:EAIA),和用户面加密算法,即:EPS用户面加密算法(EPS User-plan EncryPtion Algorithm,以下简称:EUEA),MME从{{B}∩{b}}中选择NAS的安全算法,包括EPSNAS加密算法(EPS NAS Encryption Algorithm,以下简称:ENEA),和EPSNAS完整性保护算法(EPS NAS Integrity Algorithm,以下简称:ENIA)。 [0006] UE中的AS安全算法列表与NAS安全算法列表相同,也即:集合{A}=集合{B},当UE中的AS安全算法列表包含eNB的安全算法列表、UE中的NAS安全算法列表包含MME的安全算法列表时,也即:{a}包含于{A}、集合{b}包含于{B}时,eNB选择的AS的安全算法与MME选择的NAS的安全算法可能相同;并且,UE中的AS安全算法列表包括了RRC信令的安全算法和UP的安全算法,因此,根据现有技术选择的RRC信令的安全算法和UP的安全算法完全相同。在LTE-SAE系统中,UE与网络实体支持的安全算法可能会有多种,不同安全算法的复杂度与开销有所不同。一般而言,安全级别越高的算法其复杂度与开销越大。不同的数据类型、业务类型与用户需求可能需要不同的安全算法,甚至不需要进行安全保护,因此,没必要针对所有的业务均采用相同的安全算法。但是,现有技术中网络实体eNB、MME无法基于不同的数据类型、业务类型与用户需求来选择相应的AS的安全算法与NAS的安全算法,因此,无法根据不同的数据类型、业务类型与用户需求对相应的业务进行不同的安全保护。 发明内容[0007] 本发明实施例的目的是:提供一种安全算法选择处理方法与装置、网络实体及通信系统,以针对不同的业务选择不同的安全算法进行安全保护。 [0008] 本发明实施例提供的一种安全算法选择处理方法,包括: [0010] 根据该业务请求消息的安全保护需求,从该用户终端与网络实体都支持的安全算法列表中选择安全算法; [0011] 其中,该用户终端和/或该网络实体支持的安全算法列表基于不同的安全保护需求分别设置,或者,该用户终端与该网络实体支持的安全算法列表分别用于表示该用户终端与该网络实体的安全能力。 [0012] 本发明实施例提供的一种安全算法选择处理装置,包括: [0013] 第一获取模块,用于获取用户终端发送的业务请求消息的安全保护需求; [0014] 第一选择模块,用于根据该业务请求消息的安全保护需求,从该用户终端与网络实体都支持的安全算法列表中选择安全算法;该用户终端和/或该网络实体支持的安全算法列表基于不同的安全保护需求分别设置,或者,该用户终端与该网络实体支持的安全算法列表分别用于表示该用户终端与该网络实体的安全能力。 [0015] 本发明实施例提供的一种通信系统,包括网络实体,还包括安全算法选择处理装置,用于获取该用户终端发送的业务请求消息的安全保护需求,并根据该业务请求消息对应的安全保护需求,从该用户终端与该网络实体都支持的安全算法列表中选择安全算法;该用户终端和/或该网络实体支持的安全算法列表基于不同的安全保护需求分别设置,或者,该用户终端与该网络实体支持的安全算法列表分别用于表示该用户终端与该网络实体的安全能力。 [0016] 基于本发明上述实施例提供的安全算法选择处理方法、安全算法选择处理装置与通信系统,由于用户终端和/或网络实体,例如:eNB、MME,支持的安全算法列表基于不同的安全保护需求分别设置,可以根据不同业务请求消息的安全保护需求选择不同的安全算法,以对相应的业务进行不同的安全保护,不但提高了业务的安全性,还可以综合考虑通信系统中各算法的复杂度与占用的开销,在对业务进行有效安全保护的同时提高通信系统的性能。 [0017] 本发明实施例提供的一种用户终端,包括: [0018] 第一存储模块,用于存储该用户终端支持的安全算法列表,该安全算法列表基于不同的安全保护需求分别设置或者用于表示该用户终端的安全能力; [0019] 第二获取模块,用于从该第一存储模块中获取安全算法列表,或查询该业务请求消息的安全保护需求,从该第一存储模块中获取该安全保护需求对应的安全算法列表; [0020] 第一发送模块,用于生成并向网络实体发送业务请求消息,该业务请求消息中包括该第二获取模块获取的安全算法列表; [0021] 第一接收模块,用于接收该网络实体返回的安全算法,该安全算法根据该业务请求消息的安全保护需求,从该用户终端与网络实体都支持的安全算法列表中选择。 [0022] 本发明实施例提供的一种网络实体,包括: [0023] 第二存储模块,用于存储该网络实体支持的安全算法列表或安全算法选择策略,该安全算法列表基于不同的安全保护需求分别设置或者用于表示该网络实体的安全能力,该安全算法选择策略基于该网络实体支持的安全算法列表设置; [0024] 第二接收模块,用于接收用户终端发送的业务请求消息,该业务请求消息中包括该用户终端支持的安全算法列表; [0025] 第二选择模块,用于根据该第二存储模块中存储的安全算法列表或安全算法选择策略,与该业务请求消息中的安全算法列表,从该用户终端与该网络实体都支持的安全算法列表中选择该安全保护需求对应的安全算法; [0026] 第二发送模块,用于将该第二选择模块选择的安全算法发送给该用户终端。 [0027] 本发明实施例提供的另一种通信系统,包括网络实体,该网络实体中存储有该网络实体支持的安全算法列表或安全算法选择策略,该安全算法列表基于不同的安全保护需求分别设置或用于表示该网络实体的安全能力,该安全算法选择策略基于该网络实体支持的安全算法列表设置; [0028] 该网络实体用于接收该用户终端发送的业务请求消息,该业务请求消息中包括该用户终端支持的安全算法列表或该业务请求消息的安全保护需求所对应的安全算法列表,根据该网络实体支持的安全算法列表或安全算法选择策略,与该业务请求消息中携带的安全算法列表,从该用户终端与该网络实体都支持的安全算法列表中选择该安全保护需求对应的安全算法,并将选择的安全算法发送给该用户终端。 [0029] 基于本发明上述实施例提供的用户终端、网络实体与另一种通信系统,由于用户终端和/或网络实体,支持的安全算法列表基于不同的安全保护需求分别设置,用户终端将其支持的全部安全算法列表或与业务请求消息的安全保护需求相应的安全算法列表发送给网络实体后,网络实体就可以从用户终端与该网络实体支持的安全算法中选择业务请求消息的安全保护需求相应的安全算法,以便后续对该业务进行相应的安全保护,提高了业务的安全性;另外,还可以综合考虑通信系统中各算法的复杂度与占用的开销,在对业务进行有效安全保护的同时提高通信系统的性能。 [0030] 本发明实施例提供的另一种用户终端,包括: [0031] 第一存储模块,用于存储该用户终端支持的安全算法列表,该安全算法列表基于不同的安全保护需求分别设置或用于表示该用户终端的安全能力; [0032] 第一发送模块,用于生成并向网络实体发送业务请求消息; [0033] 第一接收模块,用于接收该网络实体返回的安全算法列表、安全算法选择策略或安全算法选择策略标识,该安全算法列表为该网络实体支持的安全算法列表或该安全算法列表中与该业务请求消息的安全保护需求对应的安全算法列表,该安全算法选择策略基于该网络实体支持的安全算法列表设置; [0034] 第三选择模块,用于根据该第一存储模块中存储的安全算法列表,与该第一接收模块接收到的安全算法列表,从该用户终端与该网络实体都支持的安全算法列表中选择该安全保护需求对应的安全算法。 [0035] 本发明实施例提供的另一种网络实体,包括: [0036] 第二存储模块,用于存储该网络实体支持的安全算法列表、安全算法选择策略或安全算法选择策略标识,该安全算法列表基于不同的安全保护需求分别设置或用于表示该网络实体的安全能力,该安全算法选择策略基于该网络实体支持的安全算法列表设置; [0037] 第二接收模块,用于接收用户终端发送的业务请求消息; [0038] 第四发送模块,用于将该第二存储模块中存储的安全算法列表、该业务请求消息的安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略标识发送给该用户终端。 [0039] 本发明实施例提供的又一种通信系统,包括网络实体,该网络实体中存储有该网络实体支持的安全算法列表、安全算法选择策略或安全算法选择策略标识,该安全算法列表基于不同的安全保护需求分别设置相应表示该用户终端或该网络实体的安全能力,该安全算法选择策略基于该网络实体支持的安全算法列表设置; [0040] 该网络实体用于接收该用户终端发送的业务请求消息,将该网络实体存储的安全算法列表、该安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略标识发送给该用户终端,以便该用户终端根据该用户终端存储的安全算法列表,与该网络实体返回的安全算法列表、安全算法选择策略或安全算法选择策略标识,选择该安全保护需求对应的安全算法。 [0041] 基于本发明上述实施例提供的另一种用户终端、另一种网络实体与又一种通信系统,由于用户终端和/或网络实体,支持的安全算法列表基于不同的安全保护需求分别设置,网络实体接收到用户终端发送的业务请求消息后,可以将其支持的全部安全算法列表或与业务请求消息的安全保护需求相应的安全算法列表返回给用户终端,以便用户终端从该用户终端与网络实体支持的安全算法中选择业务请求消息的安全保护需求相应的安全算法,从而在后续对该业务进行相应的安全保护,提高了业务的安全性;另外,还可以综合考虑通信系统中各算法的复杂度与占用的开销,在对业务进行有效安全保护的同时提高通信系统的性能。 附图说明[0043] 图1为作为LTE系统中接入网部分的E-UTRAN的结构示意图; [0044] 图2为LTE-SAE系统的安全架构示意图; [0045] 图3为本发明实施例的一种安全算法选择处理方法流程图; [0046] 图4为本发明安全算法选择处理方法一个实施例的流程图; [0047] 图5为本发明安全算法选择处理方法另一个实施例的流程图; [0048] 图6为本发明安全算法选择处理方法又一个实施例的流程图; [0049] 图7为本发明安全算法选择处理方法再一个实施例的流程图; [0050] 图8为本发明安全算法选择处理方法还一个实施例的流程图; [0051] 图9为本发明安全算法选择处理方法又一个实施例的流程图; [0052] 图10为本发明安全算法选择处理装置一个实施例的结构示意图; [0053] 图11为本发明安全算法选择处理装置另一个实施例的结构示意图; [0054] 图12为本发明通信系统一个实施例的结构示意图; [0055] 图13为本发明UE一个实施例的结构示意图; [0056] 图14为本发明UE另一个实施例的结构示意图; [0057] 图15为本发明UE又一个实施例的结构示意图; [0058] 图16为本发明网络实体一个实施例的结构示意图; [0059] 图17为本发明网络实体另一个实施例的结构示意图; [0060] 图18为本发明应用服务器一个实施例的结构示意图; [0061] 图19为本发明通信系统另一个实施例的结构示意图; [0062] 图20为本发明通信系统又一个实施例的结构示意图; [0063] 图21为本发明UE再一个实施例的结构示意图; [0064] 图22为本发明UE还一个实施例的结构示意图; [0065] 图23为本发明网络实体又一个实施例的结构示意图; [0066] 图24为本发明网络实体再一个实施例的结构示意图; [0067] 图25为本发明通信系统再一个实施例的结构示意图; [0068] 图26为本发明通信系统还一个实施例的结构示意图。 具体实施方式[0069] 如图3所示,本发明实施例的一种安全算法选择处理方法,包括:S1,接收UE发送的业务请求消息;S2,根据业务请求消息的安全保护需求,从UE与网络实体都支持的安全算法列表中选择安全算法。其中,UE和/或网络实体支持的安全算法列表基于不同的安全保护需求分别设置,或者,UE与网络实体支持的安全算法列表分别用于表示UE与网络实体的安全能力。由于用户终端和/或网络实体,支持的安全算法列表基于不同的安全保护需求分别设置,可以根据不同业务请求消息的安全保护需求选择不同的安全算法,以对相应的业务进行不同的安全保护,不但提高了业务的安全性,还可以综合考虑通信系统中各算法的复杂度与占用的开销,在对业务进行有效安全保护的同时提高通信系统的性能。 [0070] 其中的安全保护需求可以包括数据类型、业务类型与用户需求中的任意一种或多种。例如:数据类型对应的安全保护级别需求或安全算法列表,业务类型对应的安全保护级别需求或安全算法列表或安全算法策略,其中,业务类型对应的安全算法策略用于表示该业务类型在不同条件下的安全保护级别需求。具体地,数据类型可以是RRC信令、UP的用户数据或NAS信令。安全算法可以是RRC加密算法、RRC完整性保护算法、UP加密算法、UP完整性保护算法、NAS加密算法或NAS完整性算法。 [0071] 作为本发明的一个实施例,UE支持的安全算法列表包括该UE的空口安全能力Radio Capability算法列表与网络安全保护能力NetworkCapability算法列表。UE发送的业务请求消息具体可以是服务请求消息Service Request或者附着请求消息Attach Request。 [0072] 本发明的实施例中,UE的安全能力,例如:算法能力集,可以按照不同数据类型安全保护需求的不同,例如:区分信令与用户面数据,来分别定义不同的算法能力集,为不同数据类型或者不同安全保护层次提供该用UE支持的、不同的安全保护算法列表。其中的安全保护层次包括AS与NAS。网络实体的安全能力具体可以为不同数据类型或者不同安全保护层次提供该网络实体支持的、不同的安全保护算法列表。由于不同安全算法的复杂度不同,占用的开销与加解密、完整性验证码的计算和校验的效率也不同,不同数据类型的数据包以及流量的特点是不一样的,对于安全保护需求也不同,例如:信令和用户数据为不同的数据类型。本发明实施例中,UE的安全能力基于不同的数据类型、业务类型或用户需求的安全保护需求,在UE和/或网络实体中设置不同的安全算法能力集,这样,UE或网络实体就可以根据不同的安全保护需求选择不同的安全算法来相应的业务进行安全保护,不但提高了业务的安全性,还可以综合考虑通信系统中各算法的复杂度与占用的开销,在对业务进行有效安全保护的同时提高通信系统的性能。 [0073] 由于数据量大,完整性算法占用的开销太大,对于系统的性能影响太大,现有技术中,对于UP的用户数据,并没有进行完整性保护。但是在某些场合,例如:在安全级别要求较高的防篡改、需要准确保证数据正常传输的场合,也有实际的数据完整性保护的需求。或者,基于高安全级别安全算法性能的局限性,本发明实施例中可以根据安全算法本身的特点,例如:复杂度、占用的开销等,来根据用户订阅的安全保护需求预先设置相应的安全算法列表,从而可以采用较为适合和完整性保护算法,例如:采用较低计算量的完整性算法,或者特定部分数据完整性校验的方法,来对相应的UP的用户数据进行完整性保护。 [0074] 在本发明的实施例中,网络实体具体可以是eNB,也可以是MME。网络实体为演进基站eNB时,相应的业务请求消息为RRC请求消息或UP的用户数据,接收UE发送的业务请求消息具体为:eNB接收UE发送的RRC请求消息或UP的用户数据。网络实体为MME时,相应的业务请求消息为NAS请求消息,接收UE发送的业务请求消息具体为:MME接收由eNB转发的、由UE发送的NAS请求消息。 [0075] 具体从UE与网络实体都支持的安全算法列表中选择业务请求消息的安全保护需求对应的安全算法时,若UE与网络实体都支持的安全算法列表中与业务请求消息的安全保护需求对应的安全算法有多种,则可以根据预先设定的优先级顺序,从符合条件的算法中选择用于业务保护的安全算法。该预先设定的优先级顺序可以包含在安全算法列表本身中,也可以在安全算法列表以外的位置存储安全算法列表中各安全算法的优先级顺序。 [0076] 本发明实施例的安全算法选择处理方法之前,可以在UE和/或网络实体中,根据不同的安全保护需求分别设置不同的安全算法列表,并可以根据实际需求,对UE的和/或网络实体中安全算法列表进行增加、删除或更新。 [0077] 通过本发明实施例,从UE与网络实体都支持的安全算法列表中选择业务请求消息的安全保护需求对应的安全算法后,UE与网络实体之间,例如:UE与eNB之间,UE与MME之间,就可以根据选择的安全算法对业务进行安全保护。 [0078] 具体地,在LTE-SAE系统中,eNB从该eNB自身与UE都支持的安全算法列表中选择出RRC加密算法、RRC完整性保护算法、UP加密算法、UP完整性保护算法后,eNB向UE发送经过完整性保护的AS安全模式命令,其中携带有密钥标识KSIasme、EAEA、EAIA、EUEA和AS消息完整性保护的认证码(AS Message Authentication Codes,以下简称:AS-MAC),UE进入AS安全模式并向eNB返回经过完整性保护的AS安全模式响应,其中携带有AS-MAC,从而启动AS的安全模式,从AS的安全模式启动成功后,通过eNB选择的安全保护算法对数据和信令进行安全保护。MME从该MME自身与UE都支持的安全算法列表中选择出ENEA与ENIA后,向UE发送经过完整性保护的NAS安全模式命令,其中携带有密钥标识KSIasme、ENEA、ENIA与NAS消息完整性保护的认证码(NAS Message Authentication Codes,以下简称:NAS-MAC),UE进入NAS安全模式并向MME返回经过完整性保护的NAS安全模式响应,其中携带有NAS-MAC,从而启动NAS的安全模式,从NAS的安全模式启动成功后,通过MME选择的安全保护算法对数据和信令进行安全保护。 [0079] 如图4所示,为本发明安全算法选择处理方法一个实施例的流程图,其包括以下步骤: [0080] 步骤101,网络实体接收UE发送的业务请求消息,该业务请求消息中包括UE支持的安全算法列表。 [0081] 其中的网络实体可以是eNB或者MME。若网络实体是eNB,则eNB可以与UE进行信息交互,直接从UE获得UE支持的安全算法列表。另外,UE也可以将其支持的安全算法列表发送给MME,eNB从MME获取UE支持的安全算法列表。若网络实体是MME,由于MME通过eNB与UE进行信息交互,UE先将业务请求消息发送给eNB,再由eNB将该业务请求消息转发给MME。其它实施例中的消息发送流程同理,不再赘述。 [0082] 另外,步骤101中的业务请求消息中也可以不包括UE支持的安全算法列表,而由网络实体预先存储UE支持的安全算法列表,或者由应用服务器中存储的关于UE的安全能力信息提供。 [0083] 步骤102,网络实体根据预先设置的业务请求消息与安全保护需求之间的对应关系信息,获取UE发送的业务请求消息的安全保护需求。 [0084] 步骤103,网络实体获取自己支持的安全算法列表中与安全保护需求对应的安全算法列表,以及获取UE支持的安全算法列表中与安全保护需求对应的安全算法列表。 [0085] 具体地,若网络实体与UE中只有一个安全算法列表基于不同的安全保护需求分别设置,则仅对基于不同的安全保护需求分别设置安全算法列表的UE或网络实体执行该步骤103的操作,而认为未基于不同的安全保护需求分别设置的安全算法列表中的安全算法适用于所有的安全保护需求,也就是说,不论安全保护需求是什么,针对该安全保护需求,从该未基于不同的安全保护需求分别设置安全算法列表的UE或网络实体中获取的安全算法都是该UE或网络实体中的所有安全算法列表。其它实施例同理。例如:假设UE支持的安全算法列表包括A、B、C三种算法,且该安全算法列表未基于不同的安全保护需求分别设置,而网络实体支持的安全算法列表包括A、B、D、E、F五种算法,该安全算法列表中,与第一用户需求对应的安全算法为A与B,与第二用户需求对应的安全算法为D、E与F,则若用户终端发送的业务请求消息的安全保护需求为第一用户需求,则从UE获取的与该第一用户需求对应的安全算法UE支持的安全算法列表中的所有安全算法,即:A、B与C,从网络实体获取的与该第一用户需求对应的安全算法为A与B。 [0086] 步骤104,网络实体从获取的安全算法列表中,UE与网络实体都支持的安全算法列表中选择一种作为该业务请求消息所请求业务的安全保护算法。 [0087] 根据步骤103中的实例,可以选择A或B作为该业务请求消息所请求业务的安全保护算法。若预先设置了A安全算法与B安全算法的优先级顺序,则根据优先级顺序选择A或B作为该业务请求消息所请求业务的安全保护算法。否则,可以根据其它规则或随机选择A或B作为该业务请求消息所请求业务的安全保护算法。 [0088] 在上述图4所示的实施例中,由UE在发送给网络实体的业务请求消息时携带UE支持的安全算法列表,由网络实体直接根据UE支持的安全算法列表与网络实体支持的安全算法列表中选择相应的安全保护算法,对现有技术的流程改动较小,并且流程简单,易于实现。 [0089] 本发明实施例中的步骤103与步骤104可以没有时间顺序关系,例如:步骤104也可以先于或同时与步骤103执行。例如:可以先通过步骤104选择UE和网络实体都支持的安全算法,则从中选择出与业务请求消息的安全保护需求对应的安全算法。还是基于步骤103的实施例,从UE的安全算法列表和网络实体的安全算法列表中选择出二者都支持的安全算法为A与B,再从A与B中选择出与第一用户需求对应的安全算法:A与B,之后可以根据优先级顺序或随机选择A或B作为该业务请求消息所请求业务的安全保护算法。作为本发明实施例的一个具体应用,假设UE支持的安全算法列表如下表1所示。其中,在信令协议中的标识包括该安全算法支持的密钥长度-安全算法名称缩写,例如:“128-EEA0”表示名称为Null ciphering algorithm的安全算法支持的密钥长度为128,该安全算法名称缩写为EEA0。“√”表示该安全算法适用于某项业务,“√”表示该安全算法不适用于某项业务,根据表1,安全算法Null ciphering与AES适用于RRC加密业务,安全算法SNOW 3G不适用于RRC加密业务,也就是说:对于RRC加密算法,UE支持Null ciphering与AES安全算法。进一步地,可以按照安全算法被选择的优先级顺序来为安全算法分配安全算法编号,也就是说,在某一安全保护需求对应的各种算法中,可以优先选择编号较小或者编号较大的算法作为对相应业务进行安全保护的算法。 [0090] 表1UE支持的安全算法列表 [0091] [0092] eNB支持的安全算法列表如下表2所示,eNB支持的安全算法适用于所有业务的安全保护需求,也就是说,eNB支持的安全算法列表未基于不同的安全保护需求分别设置。 [0093] 表2eNB支持的安全算法列表 [0094]安全算法编号 在信令协议中的标识 安全算法名称 00002″ 128-EEA0 Null ciphering algorithm ″00012″ 128-EEA1 SNOW 3G ″00102″ 128-EEA2 AES [0095] 表1与表2中的安全保护需求仅以数据类型为例。若网络实体接收到UE发送的业务请求消息为RRC请求消息,则确定其数据类型为RRC信令,根据步骤103,从RRC请求消息中UE支持的安全算法列表中选择的安全算法列表包括安全算法Null ciphering与AES,从eNB支持的安全算法列表中选择的安全算法列表包括安全算法Null ciphering、SNOW3G与AES,因此,eNB可从Null ciphering与AES中选择一种安全算法作为RRC信令的加密算法。若表1与表2中的安全算法按照从高到低的优先级顺序排列,则eNB选择Null ciphering与AES中优先级较高的Null ciphering作为RRC信令的加密算法。而针对UP的用户数据选择SNOW 3G安全算法,这样,对UP的用户数据与RRC信令就选择了不同多个安全算法。在本发明的各实施例中,若网络实体与UE中对安全算法的优先级排列顺序冲突,可以根据预先设定,按照UE或网络实体中的优先级顺序选择,或者优先级顺序冲突的安全算法都不选择,或者直接结束本次安全算法选择。 [0096] 另外,在步骤101之前,UE可以根据其将要发送的业务请求消息的安全保护需求,从该UE支持的安全算法列表中选择该安全保护需求对应的安全算法列表;相应的,步骤101中,业务请求消息中包括的是该UE支持的、安全保护需求对应的安全算法列表;步骤 103中,仅需网络实体获取自己支持的安全算法列表中与获取的安全保护需求对应的安全算法即可,若网络实体中的安全算法列表未基于不同的安全保护需求分别设置,则网络实体获取自己支持的安全算法列表。 [0097] 如图5所示,为本发明安全算法选择处理方法另一个实施例的流程图,其包括以下步骤: [0098] 步骤201,网络实体接收UE发送的业务请求消息。 [0099] 步骤202,网络实体获取自己支持的向安全算法列表,并发送给UE。 [0100] 步骤203,UE根据预先设置的业务请求消息与安全保护需求之间的对应关系信息,获取UE发送的业务请求消息的安全保护需求。 [0101] 其中,步骤203与步骤202之间没有严格的时间关系限制,步骤203也可以与步骤202同时执行或先于步骤202执行。 [0102] 步骤204,UE从该UE与网络实体都支持的安全算法列表中选择安全保护需求对应的安全算法。 [0103] 具体地,UE可以参考步骤103-104的方式选择从该UE与网络实体都支持的安全算法列表中选择安全保护需求对应的安全算法。 [0104] 在上述图5所示的实施例中,网络实体在接收到UE发送的业务请求消息后,向UE反馈该网络实体支持的安全算法列表,由UE直接根据UE支持的安全算法列表与网络实体支持的安全算法列表中选择相应的安全保护算法,不需要UE向网络实体上报其支持的安全算法列表,因此,可以较为快速的选择出安全保护需求对应的安全算法。 [0105] 或者,在步骤201之后,网络实体可以根据预先设置的业务请求消息与安全保护需求之间的对应关系信息,获取UE发送的业务请求消息的安全保护需求,并从自己支持的安全算法列表中与获取的安全保护需求对应的安全算法列表。相应的,步骤202中,网络实体仅将获取的安全保护需求对应的安全算法列表发送给UE。步骤204中,UE从网络实体发送的安全保护需求对应的安全算法列表与UE自身中与通过步骤203获取的安全保护需求对应的安全算法列表中,选择一种安全算法作为业务消息所请求业务的安全保护算法。 [0106] 若UE中的安全算法列表未基于不同的安全保护需求分别设置,则不需要执行步骤203。相应的,步骤204中,UE从网络实体发送的安全保护需求对应的安全算法列表与UE自身支持的安全算法列表中,选择一种安全算法作为业务消息所请求业务的安全保护算法。 [0107] 或者,在网络实体中存储有安全算法选择策略时,步骤201之后,向UE返回网络实体支持的安全算法选择策略,该安全算法选择策略基于网络实体支持的安全算法列表设置,例如:安全算法选择策略可以是在网络实体支持的安全算法列表中,各种数据类型、业务类型与用户需求具体对应的安全算法,或进一步包括安全算法的优先级顺序。相应的,步骤204中,UE根据网络实体发送的安全算法选择策略,从UE与网络实体都支持的安全算法列表中选择安全保护需求对应的安全算法。 [0108] 网络实体中可以存储多个安全算法选择策略,这些安全算法选择策略的相关信息,例如:策略名称、策略标识(identifier,以下简称:ID)、安全保护需求应用的安全算法在终端与网络实体都是同步的,或者,网络实体与UE对对方所能支持的安全算法选择策略是可知的。当网络实体启用安全算法的时候,可以将安全算法选择策略通过安全保护的消息传递给UE,指示UE采用相应的安全算法保护后续的通信业务。如下表3、表4所示,分别为网络实体中存储的安全算法策略一和安全算法策略二。安全算法策略给出了针对不同的数据类型、业务类型与用户需求具体应用的安全算法。 [0109] 表3安全算法策略一 [0110]安全保护需求 应用的安全算法 数据类型一/业务类型一 算法A 数据类型二/业务类型二 算法B 数据类型三/业务类型三 算法C 数据类型四/业务类型四 算法D [0111] 表4安全算法策略二 [0112]安全保护需求 应用的安全算法 数据类型一/用户AAAAAAA 算法D 数据类型二/用户CCCCCCC 算法C 数据类型三/用户EEEEEEEE 算法B 数据类型四/用户XXXXXXX 算法A [0113] [0114] 进一步地,若UE中也存储有与网络实体中相同的安全算法选择策略,并且UE与网络实体都存储有安全算法选择策略与安全算法选择策略ID时,为了减少网络流量,尽可能少地占用有限的网络带宽资源,网络实体可以仅将与用户终端发送的业务请求消息对应的安全算法选择策略的安全算法选择策略ID发送给UE。在步骤204中,UE确定网络实体发送的安全算法选择策略ID所标识的安全算法选择策略,并根据该安全算法选择策略,从UE与网络实体都支持的安全算法列表中选择安全保护需求对应的安全算法。 [0115] 为了进一步对不同安全保护需求的安全算法进行限制,便于对安全算法的选择进行统一管理和更新,可以在通信网络中设置一个应用服务器,在其中基于不同的安全保护需求分别设置安全算法列表、安全算法选择策略或安全算法选择策略ID,其中的安全算法选择策略基于安全保护需求设置,其设置方法可以参考网络实体中安全算法选择策略的设置方法。具体选择业务请求消息所请求业务的安全算法时,从UE与网络实体都支持且应用服务器存储的安全算法列表中选择安全算法。可以预先设定,在UE或网络实体选择的安全算法与应用服务器选择的安全算法冲突时,以应用服务器选择的安全算法为准。 [0116] 如图6所示,为本发明安全算法选择处理方法又一个实施例的流程图,其包括以下步骤: [0117] 步骤301,UE向应用服务器发送获取请求消息,获取该应用服务器存储的安全算法列表,或该安全算法列表中与将要发送的业务请求消息的安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID。 [0118] 步骤302,UE根据自身支持的安全算法列表,与从应用服务器获取的安全算法列表、安全算法选择策略或安全算法选择策略ID,相应选择该UE支持且应用服务器存储的安全算法列表,或选择该UE支持且应用服务器存储的、业务请求消息的安全保护需求对应的安全算法列表。 [0119] 若UE从应用服务器获取的是安全算法选择策略ID,UE先根据安全算法选择策略与安全算法选择策略ID之间的对应关系获取相应的安全算法选择策略。 [0120] UE选择的安全算法列表具体是UE支持且应用服务器存储的、且与业务请求消息的安全保护需求对应的安全算法列表,还是UE支持且应用服务器存储的安全算法列表,可以根据通信需求预先设定。 [0121] 步骤303,UE向网络实体发送业务请求消息,该业务请求消息中包括UE选择的安全算法列表,具体为UE支持且应用服务器存储的安全算法列表,或UE支持且应用服务器存储的、且与业务请求消息的安全保护需求对应的安全算法列表。 [0122] 步骤304,网络实体根据预先设置的业务请求消息与安全保护需求之间的对应关系信息,获取UE发送的业务请求消息的安全保护需求。 [0123] 步骤305,若业务请求消息中包括的是UE支持且应用服务器存储的、且与业务请求消息的安全保护需求对应的安全算法列表,网络实体获取自己支持的安全算法列表中与获取的安全保护需求对应的安全算法列表。 [0124] 若业务请求消息中包括的是UE支持且应用服务器存储的安全算法列表,则该步骤305中,网络实体还从该安全算法列表中选择出安全保护需求对应的安全算法列表。 [0125] 具体业务请求消息中包括的安全算法列表是UE支持且应用服务器存储的、且与业务请求消息的安全保护需求对应的安全算法列表,还是UE支持且应用服务器存储的安全算法列表,可以根据通信需求预先设定。 [0126] 步骤306,网络实体从自己支持的、且与业务请求消息的安全保护需求对应的安全算法列表,与业务请求消息中UE选择的安全算法列表中,选择一种作为该业务请求消息所请求业务的安全保护算法。 [0127] 在上述图6所示的实施例中,UE先选择出该UE支持且应用服务器存储的安全算法列表,或选择该UE支持且应用服务器存储的、业务请求消息的安全保护需求对应的安全算法列表,再发送给网络实体,减少了UE发送全部该UE支持的全算法列表与应用服务器存储的全算法列表的网络流量。并且,网络实体选择安全算法列表时还考虑了应用服务器存储的安全算法列表,进一步限制了不同安全保护需求的安全算法,便于对安全算法的选择进行统一管理和更新。 [0128] 如图7所示,为本发明安全算法选择处理方法再一个实施例的流程图,其包括以下步骤: [0129] 步骤401,UE向应用服务器发送获取请求消息,获取该应用服务器存储的安全算法列表,或该安全算法列表中与将要发送的业务请求消息的安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID。 [0130] 步骤402,UE向网络实体发送业务请求消息,该业务请求消息中包括UE支持的安全算法列表,或该安全算法列表中与将要发送的业务请求消息的安全保护需求对应的安全算法列表,与获取的应用服务器存储的安全算法列表,或该安全算法列表中与安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID。 [0131] 该业务请求消息中的安全算法列表具体是UE支持的安全算法列表,还是该安全算法列表中与将要发送的业务请求消息的安全保护需求对应的安全算法列表,是应用服务器存储的安全算法列表,还是该安全算法列表中与安全保护需求对应的安全算法列表,可以根据通信需求预先设定。 [0132] 步骤403,网络实体根据预先设置的业务请求消息与安全保护需求之间的对应关系信息,获取UE发送的业务请求消息的安全保护需求。 [0133] 步骤404,若业务请求消息中包括的是UE支持且应用服务器存储的、与该安全保护需求对应的安全算法列表,网络实体获取自己支持的安全算法列表中与获取的安全保护需求对应的安全算法列表。 [0134] 若业务请求消息中包括的是UE支持的安全算法列表,与应用服务器存储的安全算法列表、安全算法选择策略或安全算法选择策略ID,则该步骤404中,网络实体还分别选择出UE支持且应用服务器存储的、与该安全保护需求对应的安全算法列表。 [0135] 如果业务请求消息中包括应用服务器的安全算法选择策略ID,则需要预先在网络实体与应用服务器中设置相同的安全算法选择策略与安全算法选择策略ID之间的对应关系,网络实体根据安全算法选择策略ID获取相应的安全算法选择策略。 [0136] 具体业务请求消息中包括的安全算法列表是UE支持且应用服务器存储的、且与该安全保护需求对应的安全算法列表,还是UE支持且应用服务器存储的安全算法列表、安全算法选择策略或安全算法选择策略ID,可以根据通信需求预先设定。 [0137] 步骤405,网络实体从自己支持的、且与该安全保护需求对应的安全算法列表,和UE支持且应用服务器存储的、与该安全保护需求对应的安全算法列表中,选择一种作为该业务请求消息所请求业务的安全保护算法。 [0138] 在上述图7所示的实施例中,UE将该UE支持的安全算法列表与应用服务器存储的安全算法列表,或该安全算法列表中与安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID,发送给网络实体,网络实体选择安全算法列表时还考虑了应用服务器存储的安全算法列表,进一步限制了不同安全保护需求的安全算法,便于对安全算法的选择进行统一管理和更新。 [0139] 如图8所示,为本发明安全算法选择处理方法还一个实施例的流程图,其包括以下步骤: [0140] 步骤501,UE向网络实体发送业务请求消息,该业务请求消息中包括UE支持的安全算法列表,或UE根据该业务请求消息的安全保护需求,从自己支持的安全算法列表选择出来的与安全保护需求对应的安全算法列表。 [0141] 业务请求消息中的安全算法列表具体是UE支持的、且与业务请求消息的安全保护需求对应的安全算法列表,还是UE支持的安全算法列表,可以根据通信需求预先设定。 [0142] 步骤502,网络实体接收到UE发送的业务请求消息之后,获取应用服务器存储的安全算法列表、该应用服务器存储的且与该安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID。 [0143] 步骤503,网络实体根据预先设置的业务请求消息与安全保护需求之间的对应关系信息,获取UE发送的业务请求消息的安全保护需求。 [0144] 步骤504,若网络实体通过步骤501与步骤502获得的是UE与应用服务器都支持的、业务请求消息的安全保护需求对应的安全算法列表,网络实体获取自己支持的安全算法列表中与获取的安全保护需求对应的安全算法列表。 [0145] 若网络实体通过步骤501与步骤502获得的是UE支持的安全算法列表,与应用服务器存储的安全算法列表、安全算法选择策略或安全算法选择策略ID,则该步骤504中,网络实体还分别选择出UE支持且应用服务器存储的、与安全保护需求对应的安全算法列表。 [0146] 如果业务请求消息中包括应用服务器的安全算法选择策略ID,则需要预先在网络实体与应用服务器中设置相同的安全算法选择策略与安全算法选择策略ID之间的对应关系,网络实体根据安全算法选择策略ID获取相应的安全算法选择策略。 [0147] 步骤505,网络实体从自己支持的、且与该安全保护需求对应的安全算法列表,与UE支持且应用服务器存储的、与该安全保护需求对应的安全算法列表中,选择一种作为该业务请求消息所请求业务的安全保护算法。 [0148] 在上述图8所示的实施例中,网络实体接收到UE发送的业务请求消息后,自己获取而不需要UE获取再发送应用服务器存储的安全算法列表,或该安全算法列表中与安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID,减少了UE发送应用服务器的安全算法列表,或安全算法选择策略,或安全算法选择策略ID所占用的网络带宽;另外,网络实体选择安全算法列表时还考虑了应用服务器存储的安全算法列表,进一步限制了不同安全保护需求的安全算法,便于对安全算法的选择进行统一管理和更新。 [0149] 通过图4中的步骤104,图6中的步骤306,图7中的步骤405,与图8中的步骤505,网络实体选择出安全算法之后,可以通过安全模式命令将该选择的安全算法发送给UE,以便于UE与网络实体通过该安全算法对相应的业务进行安全保护。具体地,若网络实体是eNB,则eNB可以直接将选择的安全算法发送给UE;若网络实体是MME,则MME可以将选择的安全算法发送给eNB,由eNB将该安全算法转发给UE,网络实体向UE发送的其它消息流程类同,不再赘述。 [0150] 如图9所示,为本发明安全算法选择处理方法又一个实施例的流程图,其包括以下步骤: [0151] 步骤601,UE向应用服务器发送获取请求消息,获取该应用服务器存储的安全算法列表,或该安全算法列表中与将要发送的业务请求消息的安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID。 [0152] 若从应用服务器获取的是安全算法选择策略ID,UE需要根据安全算法选择策略与安全算法选择策略ID之间的对应关系获取相应的安全算法选择策略。 [0153] 步骤602,UE向网络实体发送业务请求消息。 [0154] 另外,步骤602也可以与步骤601同时执行或先于步骤601执行。 [0155] 步骤603,网络实体接收到UE发送的业务请求消息之后,向UE返回该网络实体支持的安全算法列表,或其中与安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID,该安全算法选择策略基于网络实体支持的安全算法列表设置。 [0156] 若网络实体返回的是安全算法选择策略ID,UE需要根据安全算法选择策略与安全算法选择策略ID之间的对应关系获取相应的安全算法选择策略。 [0157] 网络实体返回的具体是其支持的安全算法列表,还是其中安全保护需求对应的安全算法列表,还是安全算法选择策略,还安全算法选择策略ID,可以根据通信需求预先设定。 [0158] 步骤604,UE根据自己支持的安全算法列表,与应用服务器存储的安全算法列表或安全算法选择策略,与网络实体的安全算法列表或安全算法选择策略,选择出与该业务请求消息的安全保护需求对应的安全算法。 [0159] 具体地,该步骤604中,UE可以先分别选择出UE与网络实体都支持且应用服务器存储的、与安全保护需求对应的安全算法列表,如果网络实体或应用服务器本身返回的就是其支持的、且与安全保护需求对应的安全算法列表,则无需执行该操作。然后,再进一步从三个安全算法列表中选择出一个共有的安全算法。具体实现可以参考图4-图8中的相应步骤。另外,如果网络实体或应用服务器本身返回的都是其支持的安全算法列表、安全算法选择策略或安全算法选择策略ID,UE也可以先选择出UE与网络实体都支持且应用服务器存储的安全算法列表,再从中选择出一个与安全保护需求对应的安全算法。 [0160] 在上述图9所示的实施例中,由UE获取网络实体支持的安全算法列表与应用服务器存储的安全算法列表,或该安全算法列表中与安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID,据此选择UE与网络实体都支持且应用服务器存储的与安全保护需求对应的安全算法列表,对现有技术的流程改动较小;另外,UE选择安全算法列表时还考虑了应用服务器存储的安全算法列表,进一步限制了不同安全保护需求的安全算法,便于对安全算法的选择进行统一管理和更新。 [0161] 如图10所示,为本发明安全算法选择处理装置一个实施例的结构示意图,其包括第一获取模块701与第一选择模块702。其中,第一获取模块701用于获取UE发送的业务请求消息的安全保护需求。第一选择模块702用于根据业务请求消息的安全保护需求,从UE与网络实体都支持的安全算法列表中选择安全算法。其中,UE和/或网络实体支持的安全算法列表基于不同的安全保护需求分别设置,或者,UE与网络实体支持的安全算法列表分别用于表示UE与网络实体的安全能力。 [0162] 如图11所示,为本发明安全算法选择处理装置另一个实施例的结构示意图,与图10所示的实施例相比,该实施例中的第一选择模块702包括第一获取单元7021与第一选择单元7022。其中,第一获取单元7021用于获取UE支持的安全算法列表,或UE支持的、且与该UE发送的业务请求消息的安全保护需求对应的安全算法列表,与网络实体支持的安全算法列表、该安全算法列表中与该业务请求消息的安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID,该安全算法选择策略基于网络实体支持的安全算法列表设置。第一选择单元7022用于根据第一获取单元7021从UE获取的安全算法列表,与从网络实体获取的安全算法列表、安全算法选择策略或安全算法选择策略ID,选择该安全保护需求对应的安全算法。 [0163] 进一步地,在图11所示的实施例中,第一获取单元7021还可以获取应用服务器存储的安全算法列表、该安全算法列表中与该业务请求消息的安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID,该安全算法选择策略基于安全保护需求设置,应用服务器存储的安全算法列表基于不同的安全保护需求分别设置。相应的,第一选择单元7022用于根据第一获取单元7021从UE获取的安全算法列表,与分别从网络实体和应用服务器获取的安全算法列表、安全算法选择策略或安全算法选择策略ID,选择UE、网络实体与应用服务器都支持的、且与该安全保护需求对应的安全算法。 [0164] 由于UE、网络实体和/或应用服务器的安全算法列表基于不同的安全保护需求分别设置,本发明实施例的安全算法选择处理装置可以根据不同业务请求消息的安全保护需求选择不同的安全算法,以对UE与网络实体之间相应的业务进行不同的安全保护,不但提高了业务的安全性,还可以综合考虑通信系统中各算法的复杂度与占用的开销,在对业务进行有效安全保护的同时提高通信系统的性能。 [0165] 本发明上述各实施例提供的安全算法选择处理装置可用于实现本发明上述实施例中各安全算法选择处理的相应流程。 [0166] 本发明实施例提供的一种通信系统,包括网络实体1与安全算法选择处理装置2。其中,安全算法选择处理装置2用于获取UE发送的业务请求消息的安全保护需求,并根据该业务请求消息对应的安全保护需求,从UE与网络实体1都支持的安全算法列表中选择安全算法。其中,UE和/或网络实体1支持的安全算法列表基于不同的安全保护需求分别设置,或者,UE与网络实体1支持的安全算法列表分别用于表示该UE与网络实体1的安全能力。该实施例中的安全算法选择处理装置2可基于图10或图11所示实施例的安全算法选择处理装置实现。 [0167] 进一步地,通信系统中还可以包括应用服务器3,用于存储该应用服务器3存储的安全算法列表、安全算法选择策略或安全算法选择策略标识,其中的安全算法选择策略基于安全保护需求设置,应用服务器3存储的安全算法列表基于不同的安全保护需求分别设置。相应的,安全算法选择处理装置2还可以获取应用服务器3存储的安全算法列表、安全算法选择策略或安全算法选择策略ID,根据从UE获取的安全算法列表,与分别从网络实体1和应用服务器3获取的安全算法列表、安全算法选择策略或安全算法选择策略ID,选择与UE发送的业务请求消息的安全保护需求对应的安全算法。其中,网络实体1的安全算法选择策略基于该网络实体1支持的安全算法列表设置。该实施例中的安全算法选择处理装置 2可基于图11所示实施例的安全算法选择处理装置实现。如图12所示,为本发明通信系统一个实施例的结构示意图,该实施例的安全算法选择处理装置2采用图11所示实施例的安全算法选择处理装置。 [0168] 如图13所示,为本发明UE一个实施例的结构示意图,该实施例的UE可以实现本发明图4与图8所示实施例中的相应流程,其包括第一存储模块801、第二获取模块802、第一发送模块803与第一接收模块804。其中,第一存储模块801用于存储UE支持的安全算法列表,该安全算法列表基于不同的安全保护需求分别设置或者用于表示该UE的安全能力。第二获取模块802用于从第一存储模块801中获取安全算法列表,或查询业务请求消息的安全保护需求,从第一存储模块801中获取该安全保护需求对应的安全算法列表。第一发送模块803用于生成并向网络实体发送业务请求消息,业务请求消息中包括第二获取模块802获取的安全算法列表。第一接收模块804用于接收网络实体根据该业务请求消息返回的安全算法,该安全算法根据业务请求消息的安全保护需求,从UE与网络实体都支持的安全算法列表中选择。 [0169] 如图14所示,为本发明UE另一个实施例的结构示意图,该实施例的UE可以实现本发明图7所示实施例中的相应流程。与图13所示的实施例相比,该实施例的UE还包括第三获取模块805,用于获取应用服务器存储的安全算法列表,或其中与安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID,该安全算法选择策略基于安全保护需求设置,应用服务器存储的安全算法列表基于不同的安全保护需求分别设置。相应的,第一发送模块803向网络实体发送的业务请求消息中包括第二获取模块802从第一存储模块801中获取的安全算法列表和第三获取模块805从应用服务器获取的安全算法列表、安全算法选择策略、或安全算法选择策略ID。 [0170] 如图15所示,为本发明UE又一个实施例的结构示意图,该实施例的UE可以实现本发明图6所示实施例中的相应流程。与图13所示的实施例相比,该实施例的UE还包括第三获取模块805,用于获取应用服务器存储的安全算法列表,或其中与UE发送的业务请求消息的安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID,该安全算法选择策略基于安全保护需求设置。相应的,第二获取模块802包括第二获取单元8021与第二选择单元8022。其中,第二获取单元8021用于从第一存储模块801中获取安全算法列表,或查询业务请求消息的安全保护需求,从第一存储模块801中获取该安全保护需求对应的安全算法列表。第二选择单元8022用于根据第二获取单元8021从第一存储模块801中存储的安全算法列表,与第三获取模块805从应用服务器获取的安全算法列表、安全算法选择策略、或安全算法选择策略ID,选择UE支持且应用服务器存储的安全算法列表,或UE支持且应用服务器存储的、且与UE发送的业务请求消息的安全保护需求对应的安全算法列表。相应的,UE向网络实体发送的业务请求消息中的安全算法列表具体为第二选择单元8022选择的安全算法列表。 [0171] 如图16所示,为本发明网络实体一个实施例的结构示意图,该实施例的网络实体可用于实现本发明图4所示实施例中的相应流程,其包括第二存储模块901、第二接收模块902、第二选择模块903与第二发送模块904。其中,第二存储模块901用于存储网络实体支持的安全算法列表或安全算法选择策略,其中的安全算法列表基于不同的安全保护需求分别设置或者用于表示该网络实体的安全能力,安全算法选择策略基于网络实体支持的安全算法列表设置。第二接收模块902用于接收UE发送的业务请求消息,该业务请求消息中包括UE支持的安全算法列表。第二选择模块903用于根据第二存储模块901中存储的安全算法列表或安全算法选择策略,与第二接收模块902接收到的业务请求消息中的安全算法列表,从UE与网络实体都支持的安全算法列表中选择安全保护需求对应的安全算法。第二发送模块904用于将第二选择模块903选择的安全算法发送给UE。 [0172] 与图7所示实施例中的流程相应,在图16所示实施例的网络实体中,第二接收模块902接收到的业务请求消息中的安全算法列表具体可以是UE支持且应用服务器存储的安全算法列表,或UE支持且应用服务器存储的、且与业务请求消息的安全保护需求对应的安全算法列表。相应的,第二选择模块903从第二存储模块901中存储的安全算法列表或安全算法选择策略,与业务请求消息中的安全算法列表中,选择该安全保护需求对应的安全算法。 [0173] 与图6所示实施例中的流程相应,在图16所示实施例的网络实体中,第二接收模块902接收到的业务请求消息中还可以包括应用服务器存储的安全算法列表,或该安全算法列表中与业务请求消息的安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID,其中的安全算法选择策略基于安全保护需求设置,应用服务器存储的安全算法列表基于不同的安全保护需求分别设置。相应的,第二选择模块903根据第二存储模块901中存储的安全算法列表或安全算法选择策略,与业务请求消息中UE的安全算法列表,和应用服务器存储的安全算法列表、与安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID,选择安全保护需求对应的安全算法。 [0174] 如图17所示,为本发明网络实体另一个实施例的结构示意图。与图8所示实施例中的流程相应,与图16所示实施例的网络实体相比,第二接收模块902接收到的业务请求消息中的安全算法列表具体为UE支持的、且与UE发送的业务请求消息的安全保护需求对应的安全算法列表。相应的,网络实体还包括第四获取模块905,用于获取应用服务器存储的安全算法列表,或该安全算法列表中与安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID,其中的安全算法选择策略基于安全保护需求设置,应用服务器存储的安全算法列表基于不同的安全保护需求分别设置。相应的,第二选择模块903根据第二存储模块901中存储的安全算法列表或安全算法选择策略,与第二接收模块902接收到的业务请求消息中的安全算法列表,与第四获取模块905获取到的应用服务器存储的安全算法列表、安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID,选择安全保护需求对应的安全算法。 [0175] 如图18所示,为本发明应用服务器一个实施例的结构示意图,该实施例的应用服务器包括第三存储模块1001、第三接收模块1002与第三发送模块1003。其中,第三存储模块1001用于存储应用服务器的安全算法列表、安全算法选择策略或安全算法选择策略ID,其中的安全算法选择策略基于安全保护需求设置。第三接收模块1002用于接收UE或网络实体发送的获取请求消息。第三发送模块1003用于向发送获取请求消息的相应UE返回第三存储模块1001中存储的安全算法列表、安全算法选择策略或安全算法选择策略ID。 [0176] 本发明提供的另一个实施例的通信系统包括网络实体1。该实施例的通信系统中,UE中存储有该UE支持的安全算法列表,该安全算法列表基于不同的安全保护需求分别设置。网络实体1中存储有该网络实体1支持的安全算法列表或安全算法选择策略,其中的安全算法列表基于不同的安全保护需求分别设置,安全算法选择策略基于该网络实体1支持的安全算法列表设置。UE生成并向网络实体1发送业务请求消息,该业务请求消息中包括UE支持的安全算法列表或其中与业务请求消息的安全保护需求对应的安全算法列表,以及接收网络实体1返回的安全算法,该安全算法由网络实体1根据业务请求消息的安全保护需求,从UE与网络实体1都支持的安全算法列表中选择得到。网络实体1接收UE发送的业务请求消息,根据网络实体1支持的安全算法列表或安全算法选择策略,与业务请求消息中携带的安全算法列表,从UE与网络实体1都支持的安全算法列表中选择与UE发送的业务请求消息的安全保护需求对应的安全算法,并将该选择的安全算法发送给UE。该实施例的通信系统可用于实现如本发明图4所示实施例的流程,其中的UE可以采用图13所示实施例的UE,网络实体1可以采用图16所示实施例的网络实体。如图19所示,为本发明通信系统另一个实施例的结构示意图。 [0177] 进一步地,本发明实施例的通信系统还可以包括应用服务器3,用于存储该应用服务器3的安全算法列表、安全算法选择策略或安全算法选择策略ID,其中的安全算法选择策略基于安全保护需求设置,应用服务器3存储的安全算法列表基于不同的安全保护需求分别设置,根据UE发送的获取请求消息,向UE返回该应用服务器3存储的安全算法列表、安全算法选择策略或安全算法选择策略标识。相应的,UE还可以用于获取应用服务器3存储的安全算法列表、或其中与该安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID,并通过业务请求消息发送给网络实体1,或者,选择UE支持且应用服务器3存储的安全算法列表,或其中与安全保护需求对应的安全算法列表,并通过业务请求消息发送给网络实体1。网络实体1根据该网络实体1支持的安全算法列表或安全算法选择策略,与业务请求消息中携带的安全算法列表,选择UE与网络实体1都支持且应用服务器3存储的、且与该安全保护需求对应的安全算法。该实施例的通信系统可用于实现如本发明图6与图7所示实施例的流程,其中的UE可以采用图15与图14所示实施例的UE,网络是实体1可以采用图16所示实施例中的相应网络实体。如图20所示,为本发明通信系统又一个实施例的结构示意图。 [0178] 如图21所示,为本发明UE再一个实施例的结构示意图,该实施例的UE可以实现本发明图5与图8所示实施例中的相应流程。其包括第一存储模块801、第一发送模块803、第一接收模块804与第三选择模块806。其中,第一存储模块801用于存储该UE支持的安全算法列表,该安全算法列表基于不同的安全保护需求分别设置或用于表示该UE的安全能力。第一发送模块803用于生成并向网络实体发送业务请求消息。第一接收模块804用于接收网络实体返回的安全算法列表、安全算法选择策略或安全算法选择策略ID,该安全算法列表为网络实体支持的安全算法列表,或其中与UE发送的业务请求消息的安全保护需求对应的安全算法列表,其中的安全算法选择策略基于网络实体支持的安全算法列表设置。第三选择模块806用于根据第一存储模块801中存储的安全算法列表,与第一接收模块804接收到的安全算法列表,从UE与网络实体都支持的安全算法列表中选择安全保护需求对应的安全算法。 [0179] 如图22所示,为本发明UE还一个实施例的结构示意图,该实施例的UE可以实现本发明图9所示实施例中的相应流程。与图21所示的实施例相比,该实施例的UE还包括第三获取模块805,用于获取应用服务器存储的安全算法列表,或其中与UE发送的业务请求消息的安全保护需求对应的安全算法列表,或安全算法选择策略,或安全算法选择策略ID,其中的安全算法选择策略基于安全保护需求设置。相应的,第三选择模块806根据第一存储模块801中存储的安全算法列表,与第三获取模块805从应用服务器获取到的安全算法列表、安全算法选择策略或安全算法选择策略ID,与第一接收模块804接收到的网络实体的安全算法列表、安全算法选择策略或安全算法选择策略ID,选择UE与网络实体都支持且应用服务器存储的、与UE发送的业务请求消息的安全保护需求对应的安全算法。 [0180] 如图23所示,为本发明网络实体又一个实施例的结构示意图,该实施例的网络实体可以实现本发明图5所示实施例中的相应流程。该实施例的网络实体包括第二存储模块901、第二接收模块902与第四发送模块907。其中,第二存储模块901用于存储网络实体支持的安全算法列表、安全算法选择策略或安全算法选择策略ID,其中的安全算法列表基于不同的安全保护需求分别设置或用于表示该网络实体的安全能力,安全算法选择策略基于网络实体支持的安全算法列表设置。第二接收模块902用于接收UE发送的业务请求消息。 第四发送模块907用于将第二存储模块901中存储的安全算法列表、其中与业务请求消息的安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID发送给UE。 [0181] 如图24所示,为本发明网络实体再一个实施例的结构示意图,该实施例的网络实体可以实现本发明图9所示实施例中的相应流程。与图23所示的实施例相比,该实施例的网络实体还包括第四获取模块905与第二选择模块903。其中,第四获取模块905用于获取应用服务器存储的安全算法列表、该安全算法列表中与安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID,其中的安全算法选择策略基于安全保护需求设置,应用服务器存储的安全算法列表基于不同的安全保护需求分别设置。第二选择模块903用于根据第二存储模块901中存储的安全算法列表或安全算法选择策略,与第四获取模块905获取的应用服务器存储的安全算法列表、安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID,或者进一步选择网络实体支持且应用服务器存储的安全算法列表、安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID。第四发送模块907将第二存储模块901中存储的安全算法列表或安全算法选择策略,与第四获取模块905获取的应用服务器存储的安全算法列表、安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID发送给UE,或者将第二选择模块903选择的安全算法列表、安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID发送给UE。 [0182] 本发明再一个实施例提供的通信系统中,UE中存储有该UE支持的安全算法列表,该安全算法列表基于不同的安全保护需求分别设置。网络实体1中存储有该网络实体1支持的安全算法列表、安全算法选择策略或安全算法选择策略ID,其中的安全算法列表基于不同的安全保护需求分别设置或相应表示UE或网络实体1的安全能力,安全算法选择策略基于网络实体1支持的安全算法列表设置。UE生成并向网络实体1发送业务请求消息,以及接收网络实体1返回的安全算法列表、安全算法选择策略或安全算法选择策略ID,其中的安全算法列表为网络实体1支持的安全算法列表或其中与业务请求消息的安全保护需求对应的安全算法列表,并根据UE存储的安全算法列表,与网络实体1返回的安全算法列表、安全算法选择策略或安全算法选择策略ID,选择UE发送的业务请求消息的安全保护需求对应的安全算法。网络实体1用于接收UE发送的业务请求消息,将该网络实体1存储的安全算法列表、其中与业务请求消息的安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID发送给UE。该实施例的通信系统可用于实现如本发明图5所示实施例的流程,其中的UE可以采用图21所示实施例的UE,网络是实体1可以采用图23所示实施例中的相应网络实体。如图25所示,为本发明通信系统再一个实施例的结构示意图。 [0183] 进一步地,在上述通信系统中,还可以包括应用服务器3,用于存储该应用服务器3的安全算法列表、安全算法选择策略或安全算法选择策略ID,其中的安全算法选择策略基于安全保护需求设置,并根据UE发送的获取请求消息,向UE返回应用服务器3存储的安全算法列表、与UE发送的业务请求消息的安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID,相应的,网络实体1还用于通过获取请求消息获取应用服务器3存储的安全算法列表、或其中与安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID,并发送给UE,或者选择网络实体1支持且应用服务器3存储的安全算法列表、安全保护需求对应的安全算法列表、安全算法选择策略或安全算法选择策略ID,并发送给UE。UE根据UE存储的安全算法列表,和网络实体1返回的安全算法列表、安全算法选择策略或安全算法选择策略ID,选择UE与网络实体1都支持且应用服务器 3存储的、且与业务请求消息的安全保护需求对应的安全算法。该实施例的通信系统可用于实现如本发明图9所示实施例的流程,其中的UE可以采用图22所示实施例的UE,网络实体1可以采用图24所示实施例中的相应网络实体。如图26所示,为本发明通信系统还一个实施例的结构示意图。 [0184] 本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。 [0185] 本发明实施例可以根据不同业务请求消息的安全保护需求选择不同的安全算法,以对相应的业务进行不同的安全保护,不但提高了业务的安全性,还可以综合考虑通信系统中各算法的复杂度与占用的开销,在对业务进行有效安全保护的同时提高通信系统的性能。 [0186] 最后所应说明的是:以上实施例仅用以说明本发明的技术方案,而非对本发明作限制性理解。尽管参照上述较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这种修改或者等同替换并不脱离本发明技术方案的精神和范围。 |