专利名称:集群系统中实现端到端加密呼叫的方法
技术领域:
本发明涉及一种集群系统中实现加密呼叫的方法,尤其涉及一种集群系统中实现端到端加密呼叫的方法。
背景技术:
集群通信系统是移动通信系统的一个重要分支,集群通信也广泛的应用于医疗救生、交通运输、社会联动、市政管理、水利水电、厂矿企业、公共安全等领域。集群系统为专业集群用户提供的集群加密呼叫服务,在满足国家情报部门和军队的调度通信的特殊安全需要方面,就显得尤其重要。
在一般加密系统中,加密方式分为两种一种是分段加密方式,即在每个节点上都将加密信息解密成明文信息,然后再加密成密文传递到下一个网络节点。另一种就是端到端加密方式,即在所有的网络设备节点上,都是密文传输,仅仅只在发送和接收密文的地方,才解密成明文。现有集群系统中端到端加密技术主要存在以下不足在加密参数的分发范围上,现有技术中都是直接向服务区的用户广播分发加密参数,其范围太广,容易被窃取。
在集群加密呼叫建立的控制过程上,现有技术中都是用户先拥有加密参数,而在呼叫建立过程中,并不分发加密参数。这就容易导致每次加密呼叫的加密参数有可能相同,就不能很好地保证加密呼叫的安全性。与此同时,无论用户是否加密成功,都会被接入该加密呼叫,并向其转发语音,而不会对这种非法接入进行控制。非法接入的用户虽然能接收到语音,但是并不能对语音正常解密,导致一直听到噪音或听不到任何声音。从用户角度考虑,接收了不能识别的语音,从系统角度考虑,转发语音给不必要的用户,易导致泄密。在集群加密呼叫的建立过程中,并没有对用户的加密情况进行控制。
现有技术不进行加密参数的验证,通常是把加密参数或者密匙直接写在在终端,不需要通过加密参数计算得到,不会动态变化,终端直接利用加密参数或者密钥进行加解密。加密呼叫建立成功后,在整个加密呼叫过程中,终端存储的密钥保持不变,易导致密钥被恶意破解。
发明内容
本发明要解决的技术问题是提供一种控制集群加密呼叫建立的方法,以解决现有技术加密参数分发范围大,容易被窃取的技术问题。
为解决上述技术问题,本发明提供一种集群系统中实现端到端加密呼叫的方法,其包括以下步骤(a)主叫发起集群加密呼叫,集群归属寄存器在接收到该呼叫的鉴权请求时,向调度服务器返回携带本次呼叫的用户信息及加密参数的鉴权应答消息;(b)调度服务器向本次呼叫的用户终端发送寻呼请求;(c)用户终端向调度服务器返回寻呼响应消息,调度服务器仅向寻呼成功的用户终端分发携带加密参数的加密命令,并将接收到加密参数且生成密钥的用户终端接入加密呼叫中。
进一步地,鉴权应答消息中的加密参数是为本次呼叫生成的随机化加密参数。
进一步地,步骤(c)中,在用户终端收到加密命令后,验证是否能成功生成密钥并返回加密应答,将返回加密应答成功消息的用户终端接入加密呼叫。
进一步地,如主叫及至少一个被叫返回加密应答成功消息后,调度服务器向主叫发送授权消息,主叫收到授权信息后,打开声码器,并回授权应答消息,提示调度服务器主叫开始讲话。
进一步地,调度服务器接收用户的失败加密应答后,则判断该用户是否主叫,如果主叫加密失败,整个加密呼叫建立失败,加密呼叫被释放;若被叫加密失败,仅仅将加密失败的被叫退出加密呼叫,加密呼叫的建立过程不受影响。
进一步地,调度服务器接收加密成功应答消息后,执行以下步骤(A)判断是否是主叫发送的加密应答,如果是,则跳至步骤(B),否则跳至步骤(D);(B)调度服务器判断是否已经有被叫加密成功,假如有,则跳至步骤(G),否则跳至步骤(C);(C)调度服务器仅仅记录该主叫加密成功,并等待有被叫加密成功来促使整个加密呼叫建立成功,流程结束;(D)调度服务器判断该加密呼叫是否已经建立成功,如果是,则跳至步骤(F),否则跳至步骤(E);(E)调度服务器判断主叫是否已经加密成功,如果已经加密成功,记录该被叫加密成功,并跳至步骤(G),否则跳至步骤(F);(F)调度服务器记录该被叫加密成功,此次处理结束;(G)该加密呼叫建立成功,并开始对主叫通话授权。
进一步地,步骤(c)中调度服务器向寻呼成功的主叫发送携带加密参数的授权消息。
进一步地,向寻呼成功的主叫发送携带加密参数的授权消息后,进一步包括以下步骤(c1)主叫收到加密命令,并验证正确后打开声码器,并回授权应答消息给调度服务器并可以讲话,(c2)主叫开始讲话后,若还未有任何被叫加密成功,加密呼叫跃迁到预建立状态,系统缓存语音,待有被叫加密成功后,加密呼叫就跃迁到呼叫建立状态,系统开始向加密成功的被叫转发缓存的语音,此后,系统也不用再缓存语音,而是直接转发语音;若主叫加密成功时已经有被叫加密成功,加密呼叫就直接跃迁到呼叫建立状态,同时进入通话过程,系统直接转发语音。
进一步地,调度服务器为一次加密呼叫存储多个加密参数,这些加密参数在起呼鉴权时,由集群归属寄存器一次性产生,当符合加密参数更新条件时,调度服务器向加密呼叫中的所有用户发送新的加密参数。
进一步地,加密参数更新的条件是定时更新、固定时间间隔更新、某个特别成员说话成功后更新、某个特别成员或者调度员主动请求更新。
相对于现有技术,本发明加密呼叫建立过程中仅仅向该呼叫中的用户分发加密参数,避免广播分发,很好地控制了加密参数的分发范围,防止加密参数被窃取。另外,为每次加密呼叫提供不同的加密参数,加密不成功的用户将得不到加密服务,加密呼叫过程中可以动态调整密钥,为专业用户提供了很完善的安全保障。调度服务器可以把对主叫的授权和加密参数分发揉合在一起,并考虑缓存语音,降低由于分发加密参数的过程而增加的加密呼叫建立时长。
图1是数字集群通信系统的网络结构示意图。
图2是本发明实施例集群系统实现端到端加密呼叫的信令流程图。
图3是本发明集群加密呼叫过程中加密成功应答消息的处理流程图。
具体实施例方式
本发明对应的集群系统网络结构图如图1所示,各组成部分说明如下终端具备集群业务功能的终端设备,同时也具备电话互连业务、分组数据业务、短消息业务等多种业务能力。
基站子系统完成终端的各种业务的接入功能,并根据用户使用业务类型派发到相应的子系统处理;基站子系统由基站收发信机BTS和基站控制器BSC组成。
调度子系统完成对其服务区域内终端集群业务的控制和管理功能,是集群业务的控制中心。调度子系统由调度服务器(PDS,PTT Dispatch Server)、集群归属寄存器(PHR,PTT Home Register)及调度台服务器组成,其中,调度服务器实现集群呼叫的呼叫控制、话权管理,提供各种集群补充业务;集群归属寄存器保存集群用户和群组的注册信息和位置信息,实现对集群用户的鉴权、授权和计费功能,以及位置更新和群组管理功能;调度台服务器负责维护各调度台、管理台的会话,实现管理台和调度台对集群调度的管理和维护。
图2是本发明实施例集群系统实现端到端加密呼叫方法的信令流程图,其包括以下步骤步骤201主叫发起集群加密呼叫,其呼叫请求消息通过基站子系统转发到调度服务器;该集群加密呼叫可以是组呼,也可以是单呼。
步骤202调度服务器根据加密呼叫请求构造加密呼叫鉴权请求,发送到集群归属寄存器对该加密呼叫进行鉴权,同时对该加密呼叫的状态置为加密初始化状态;步骤203集群归属寄存器接收加密呼叫鉴权请求,验证该次呼叫是否合法,以及获取该呼叫相关信息,同时集群归属寄存器判断该次鉴权为加密呼叫的鉴权,则根据一定规则生成本次加密呼叫的随机化加密参数,最终这些信息都被封装在加密呼叫鉴权应答,发送到调度服务器;对组呼而言,需要获取群组信息和群组成员信息,对单呼来说,则需要获取主被叫用户信息。
该加密参数并不是真正的工作密钥,而是被发到终端,再由终端根据一定的规则生成真正的工作密钥。
步骤204调度服务器保存加密呼叫鉴权应答带回来的本次加密呼叫的相关信息,包括加密参数,同时,根据主叫相关信息,调度服务器通过基站子系统对主叫发送寻呼请求,目的就是为主叫建立业务信道进行信令和语音的传输;步骤205根据被叫的相关信息,调度服务器通过基站子系统开始对被叫发送寻呼请求,以便为其建立业务信道;步骤206主叫建立业务信道之后,发送寻呼成功消息给调度服务器,调度服务器记录主叫已经寻呼成功,并结束对主叫的寻呼;步骤207被叫建立业务信道之后,发送寻呼成功消息给调度服务器,调度服务器记录该被叫已经寻呼成功,并结束对该被叫的寻呼;步骤206和步骤207主被叫寻呼成功后,加密尚未成功。还需要向终端发送加密参数,终端根据加密参数生成密钥后,终端才算加密成功;无论主被叫,都是先寻呼成功,再发送加密参数的,如果没有寻呼应答,不会发送加密参数。
步骤208调度服务器在主叫的业务信道建立完成之后,通过业务信道对主叫分发加密参数,让主叫获取本次加密呼叫的加密参数,并做好加密的准备;步骤209调度服务器在被叫的业务信道建立完成之后,通过业务信道分发加密参数给被叫;步骤210主叫在接收到携带加密参数的加密命令后,保存加密参数,并由加密参数根据业界公知的算法生成真正的工作密钥,为此后的语音加解密做好准备,主叫发送加密应答消息给调度服务器,根据主叫是否成功生成密匙告知调度服务器该主叫是否加密成功;步骤211被叫在接收到携带加密参数的加密命令后,保存加密参数,并由加密参数根据一定规则生成真正的工作密钥,为此后的语音加解密做好准备,被叫发送加密应答消息给调度服务器,告知调度服务器该被叫是否加密成功;步骤212调度服务器根据该加密呼叫中用户加密成功的统计情况,判断整个加密呼叫是否建立成功,即主叫和至少一个被叫返回加密成功消息;若加密呼叫建立不成功,则继续等待直至满足加密呼叫建立成功的条件。
经过上述步骤后,整个集群加密呼叫的建立过程就完成了。之后呼叫进入通话过程,并开始对主叫通话授权发送授权消息,主叫接收到授权消息后,打开声码器,并回授权应答消息,提示调度服务器主叫开始讲话,该加密呼叫进入讲话状态,调度服务器开始转发语音。如加密呼叫建立超时则释放该呼叫。
图3是集群加密呼叫中调度服务器在收到一个加密成功应答消息的处理流程图。
步骤301调度服务器接收加密成功应答消息后,判断是否是主叫发送的加密应答,如果是,则跳至302,否则跳至304;步骤302调度服务器判断是否已经有被叫加密成功,假如有,则跳至307,否则跳至303;步骤303调度服务器仅仅记录该主叫加密成功,并等待有被叫加密成功来促使整个加密呼叫建立成功,流程结束;步骤304调度服务器判断该加密呼叫是否已经建立成功,如果是,则跳至306,否则跳至305;步骤305调度服务器判断主叫是否已经加密成功,如果已经加密成功,记录该被叫加密成功,并跳至307,否则跳至306;步骤306调度服务器记录该被叫加密成功,此次处理结束;步骤307该加密呼叫建立成功,并开始对主叫通话授权。
调度服务器如果接收到用户的加密呼叫失败应答消息,则判断该用户是否主叫,如果主叫加密失败,整个加密呼叫建立失败,加密呼叫被释放;若被叫加密失败,仅仅将加密失败的被叫退出加密呼叫,本次加密消息应答处理流程结束,加密呼叫的建立过程不受影响在对用户加密的过程中,系统设置定时器,如果在定时器设定的时间内未收到加密应答消息,则认为该用户加密失败,处理同收到加密失败应答消息。
从用户体验的角度,从发起呼叫到能够说话的这段时间长度被称为呼叫建立时长,这是集群服务的一个重要性能指标。为了缩短由于分发加密参数过程而增加的呼叫建立时长,可以把对主叫的分发加密参数过程和授权过程揉合在一起同时进行,减少信令交互的时间,相应的,集群系统实现端到端加密呼叫流程中,步骤208前的流程仍然为图2所示的步骤,之后执行以下步骤步骤A调度服务器收到主叫的寻呼成功消息后,向主叫发送携带加密参数的主叫授权消息;步骤B调度服务器收到被叫的寻呼成功消息后,向被叫发送携带加密参数的加密命令;步骤C主叫在接收到携带加密参数的授权消息后,提取加密参数,按照一定规则生成真正的工作密钥,为语音的加解密作好准备;步骤D主叫加密应答成功后打开声码器,并回授权应答消息,告知调度服务器主叫加密成功并可以讲话;步骤E主叫开始讲话后,若还未有任何被叫加密成功,加密呼叫跃迁到预建立状态,系统缓存语音,待有被叫加密成功后,加密呼叫就跃迁到呼叫建立状态,系统开始向加密成功的被叫转发缓存的语音,此后,系统也不用再缓存语音,而是直接转发语音;若主叫加密成功时已经有被叫加密成功,加密呼叫就直接跃迁到呼叫建立状态,同时进入通话过程,系统直接转发语音。
在集群加密呼叫的建立过程中,系统就很好地控制了呼叫建立时长。
对主叫的加密参数分发和授权消息合一,可以减少信令交互,主叫同时进行加密和讲话的处理,缩短了加密呼叫的建立时延。
为了避免同一密钥在一次加密呼叫中被长时间的使用,进一步的提高加密呼叫的可靠性、安全性,可以采用加密呼叫中动态调整加密参数的方法。调度服务器为一次加密呼叫存储多个加密参数,这些加密参数可以在起呼鉴权时,由集群归属寄存器一次性产生,并通过鉴权应答带给调度服务器,也可以在集群加密呼叫过程中,由调度服务器主动向集群归属寄存器索要,当然也可以是上述两种方式的混合;加密呼叫过程中,加密参数更新的条件可以是定时更新(13:00更新、13:15分更新)、固定时间间隔更新(呼叫中每隔30s更新一次)、某个特别成员说话成功后更新(组长或者起呼者获得话权后更新)、某个特别成员主动请求更新等等;在加密呼叫过程中,当满足加密参数更新条件时,调度服务器通过基站子系统在业务信道向加密呼叫中的所有成员发送新的加密参数,终端根据接收到的新的加密参数生成新密钥,并向调度服务器回应加密应答,此后,集群呼叫的语音将使用新密钥进行加密和解密;在加密参数转换过程中,调度服务器将对加密不成功的用户发送释放命令,将其清除出加密呼叫。
综上所述,本发明提出了一种数字集群通信系统中实现端到端加密呼叫的方法,本发明加密呼叫建立过程中仅仅向该呼叫中的用户分发加密参数,避免广播分发,很好地控制了加密参数的分发范围,防止加密参数被窃取,控制集群加密呼叫建立过程,为每次加密呼叫提供不同的加密参数,加密不成功的用户将被系统清除出加密呼叫,使得加密不成功的用户得不到加密服务,加密呼叫过程中可以动态调整密钥,为专业用户提供了很完善的安全保障。
进一步,调度服务器可以把对主叫的授权和加密参数分发揉合在一起,并考虑缓存语音,降低由于分发加密参数的过程而增加的加密呼叫建立时长。在集群加密呼叫过程中,为了进一步的加强保密性,密钥可以不断的改变,保证同一密钥不会被长时间的使用。
本发明的方法虽然针对移动终端涉及的集群加密呼叫提出,但对于调度员涉及的集群加密呼叫,如调度员发起集群加密呼叫,终端对调度员发起集群加密呼叫等,也同样适用。
权利要求
1.一种集群系统中实现端到端加密呼叫的方法,其包括以下步骤(a)主叫发起集群加密呼叫,集群归属寄存器在接收到该呼叫的鉴权请求时,向调度服务器返回携带本次呼叫的用户信息及加密参数的鉴权应答消息;(b)调度服务器向本次呼叫的用户终端发送寻呼请求;(c)用户终端向调度服务器返回寻呼响应消息,调度服务器仅向寻呼成功的用户终端分发携带加密参数的加密命令,并将接收到加密参数且生成密钥的用户终端接入加密呼叫中。
2.如权利要求1所述的方法,其特征在于鉴权应答消息中的加密参数是为本次呼叫生成的随机化加密参数。
3.如权利要求1所述的方法,其特征在于步骤(c)中,在用户终端收到加密命令后,验证是否能成功生成密钥并返回加密应答,将返回加密应答成功消息的用户终端接入加密呼叫。
4.如权利要求3所述的方法,其特征在于如主叫及至少一个被叫返回加密应答成功消息后,调度服务器向主叫发送授权消息,主叫收到授权信息后,打开声码器,并回授权应答消息,提示调度服务器主叫开始讲话。
5.如权利要求3或4所述的方法,其特征在于调度服务器接收用户的失败加密应答后,则判断该用户是否主叫,如果主叫加密失败,整个加密呼叫建立失败,加密呼叫被释放;若被叫加密失败,仅仅将加密失败的被叫退出加密呼叫,加密呼叫的建立过程不受影响。
6.如权利要求3或4所述的方法,其特征在于调度服务器接收加密成功应答消息后,执行以下步骤(A)判断是否是主叫发送的加密应答,如果是,则跳至步骤(B),否则跳至步骤(D);(B)调度服务器判断是否已经有被叫加密成功,假如有,则跳至步骤(G),否则跳至步骤(C);(C)调度服务器仅仅记录该主叫加密成功,并等待有被叫加密成功来促使整个加密呼叫建立成功,流程结束;(D)调度服务器判断该加密呼叫是否已经建立成功,如果是,则跳至步骤(F),否则跳至步骤(E);(E)调度服务器判断主叫是否已经加密成功,如果已经加密成功,记录该被叫加密成功,并跳至步骤(G),否则跳至步骤(F);(F)调度服务器记录该被叫加密成功,此次处理结束;(G)该加密呼叫建立成功,并开始对主叫通话授权。
7.如权利要求1所述的方法,其特征在于步骤(c)中调度服务器向寻呼成功的主叫发送携带加密参数的授权消息。
8.如权利要求7所述的方法,其特征在于向寻呼成功的主叫发送携带加密参数的授权消息后,进一步包括以下步骤(c1)主叫收到加密命令,并验证正确后打开声码器,并回授权应答消息给调度服务器并可以讲话,(c2)主叫开始讲话后,若还未有任何被叫加密成功,加密呼叫跃迁到预建立状态,系统缓存语音,待有被叫加密成功后,加密呼叫就跃迁到呼叫建立状态,系统开始向加密成功的被叫转发缓存的语音,此后,系统也不用再缓存语音,而是直接转发语音;若主叫加密成功时已经有被叫加密成功,加密呼叫就直接跃迁到呼叫建立状态,同时进入通话过程,系统直接转发语音。
9.如权利要求1所述的方法,其特征在于调度服务器为一次加密呼叫存储多个加密参数,这些加密参数在起呼鉴权时,由集群归属寄存器一次性产生,当符合加密参数更新条件时,调度服务器向加密呼叫中的所有用户发送新的加密参数。
10.如权利要求9所述的方法,其特征在于加密参数更新的条件是定时更新、固定时间间隔更新、某个特别成员说话成功后更新、某个特别成员或者调度员主动请求更新。
全文摘要
本发明提供一种集群系统中实现端到端加密呼叫的方法,其包括以下步骤(a)主叫发起集群加密呼叫,集群归属寄存器在接收到该呼叫的鉴权请求时,向调度服务器返回携带本次呼叫的用户信息及加密参数的鉴权应答消息;(b)调度服务器向本次呼叫的用户终端发送寻呼请求;(c)用户终端向调度服务器返回寻呼响应消息,调度服务器仅向寻呼成功的用户终端分发携带加密参数的加密命令,并将接收到加密参数的用户终端接入加密呼叫中。本发明加密呼叫建立过程中仅仅向该呼叫中的用户分发加密参数,避免广播分发,很好地控制了加密参数的分发范围,防止加密参数被窃取。
文档编号H04Q7/38GK101043660SQ20061006569
公开日2007年9月26日 申请日期2006年3月21日 优先权日2006年3月21日
发明者汪利标, 李立平, 王小平, 杜涛 申请人:中兴通讯股份有限公司