呼叫处理系统中安全因特网协议通信的方法和设备的利记博彩app

文档序号:7928742阅读:260来源:国知局
专利名称:呼叫处理系统中安全因特网协议通信的方法和设备的利记博彩app
技术领域
本发明一般涉及呼叫处理系统,更具体地涉及一种系统,其中呼叫或其他通信由一个呼叫设备或其他交换机控导至或控导自电话机、呼叫集线器、媒体网关或其他类型的终端设备。
以上所述安全性问题已经在有限程度上被InternationalTelecommunication Union(ITU)在Draft ITU-T RecommendationH.235的“H系列(H.323和其他基于H.245)多媒体终端的安全性和加密”(1998年1月)所讨论,该资料在此处被引为参考。不幸的是,此ITU-T Recommendation具有一些缺点。例如,ITU-TRecommendation无法为一些功能例如密钥管理和分配、密钥设置和初始化及为一个给定呼叫增加或撤消参与者等提供合适的协议和其他技术。
虽然在因特网上数据传输的领域内知道很多不同安全性解决方案,但这些解决方案通常无法直接应用于电话呼叫处理系统领域。例如,这些现有的数据传输解决方案通常被配置为使用那些安排为对等网络形式的设备进行操作,因此不能提供用于将多方组织在一个给定安全信道中的会议或者将一个安全信道转接至另一个终端设备或应用程序的技术。
没有合适的安全性,配置为处理IP通信的传统呼叫处理系统将仍然处于遭受以上所述不同类型攻击的脆弱地位。
因此需要一种技术,用于改进与呼叫处理系统中呼叫设备和终端设备中的IP通信和其他通信的处理相关联的安全性。
根据本发明的一个方面,每个终端设备生成一组会话密钥清单,它包括每个与其相连的终端的基于堆栈的会话密钥清单。这些以安全方式从终端设备送至呼叫设备的多组会话密钥清单用作在终端设备与呼叫设备之间执行的相应的认证协议。更具体地,一个给定终端设备的一组会话密钥清单可以由该终端设备以加密形式提供给呼叫设备,作为在该终端设备与呼叫设备之间执行的认证协议的一部分。
一个给定组会话密钥清单可以用数据结构的形式存储于呼叫设备的存储器内,它至少包括一个第一会话密钥单元和多个基于堆栈会话密钥清单,其中每个基于堆栈会话密钥清单包括多个与一个连至始发终端设备的特定终端相关联的会话密钥。第一会话密钥单元能够优选地用于提供始发终端点与呼叫设备之间的安全通信。
在通过呼叫设备建立始发终端设备与一个或多个附加终端设备之间的安全通信时,呼叫设备从与始发终端设备相关联的各组会话密钥清单中的一个给定组中选择一个会话密钥,用作一个端单元到端单元的会话密钥。所选端单元到端单元的会话密钥用于通过呼叫设备提供始发终端设备与至少一个其他终端设备之间的安全通信。
根据本发明的另一个方面,同一端单元到端单元的会话密钥用于将任何附加终端设备随后加入在始发终端设备与特定目的地设备之间所建立的安全通信信道中的会议。例如,同一端单元到端单元的会话密钥能够用于与一个附加终端设备通信,该附加终端设备是加入在一个与始发终端设备相关联的特定终端处始发的并且随后接至与目的地终端设备相关联的目的地终端的呼叫中会议的。在加入呼叫中会议的附加终端设备随后被撤出呼叫之后,能够从与该特定终端相关联的会话密钥清单中选择一个新的端单元到端单元的密钥。
根据本发明的又一个方面,在结束一个安全通信信道之后,能够为起作用的终端生成一个或多个新的会话密钥以便为会话密钥清单保持所需最小堆栈尺寸。例如,在完成由一个特定终端所始发的安全通信之后,相应的始发终端设备能够生成至少一个附加会话密钥,以便加于该特定终端的基于堆栈会话密钥清单中,并且以安全方式被提供给呼叫设备以供存储。该附加会话密钥能够用于通过呼叫设备提供始发终端设备与至少一个其他终端之间的随后安全通信。
有利的是,本发明的安全通信技术保护呼叫处理系统的呼叫设备、终端设备和其他元件免受IP电子欺骗、拒绝服务和其他攻击。因此本发明允许在这类呼叫处理系统内以安全和有效方式实施IP通信。
图2是一个显示

图1呼叫设备的示例性实施例的框图。
图3显示本发明说明性实施例中的一个会话密钥清单数据结构。
图4是本发明说明性实施例中在呼叫设备与终端设备之间所执行的初始化过程的流程图。
图5是用于更详细地说明图4过程的一个认证部分的图。
图6A、6B、6C和6D是用于说明在使用本发明技术建立连至终端设备的各终端之间的安全通信中在呼叫设备与多个终端设备之间的交互作用。
因此此处所用“呼叫”一词意在不但包括传统电话呼叫而且包括其他通信例如IP网上通话、数据传输、传真等。
此处所用“交换机”一词应该理解为包括PBX、企业用交换机或其他类型的电信系统交换设备,还有其他类型的基于处理器的通信控制设备例如服务器、计算机、附属设备等。呼叫设备是一种类型交换机的例子。
图1显示一个用于实施本发明的示例性通信系统100。系统100包括一个呼叫设备102,它连至一个网络104和多个终端设备110-1、110-2、…110-N。终端设备110具有与其相关联的多个终端112。更具体地,与每个终端设备110-i,i=1、2、…N相关联的是一组终端,被标以分机i01、分机i02、…分机iXX。这些分机一般对应于由呼叫设备102所服务的终端点,例如呼叫设备102能够以传统方式将呼入控导至这些分机同时自它们接收呼出。
说明性实施例中的呼叫设备102也能够被实施为例如一个传统DEFINITYEnterprise Communication Service(ECS)通信系统交换机,它可从Avaya Inc.of Basking Ridge,New Jersey,USA购得。涉及此类型交换机的附加细节可以在例如DEFINITYECS,Release 9,Administration for Network Connectivity,Issue 2,DocumentNo.555-233-504,November 2000中找到,它在此处引为参考。其他类型的已知交换机可以被配置为根据本发明技术而操作。这类交换机的传统方面是技术中熟知的,因此此处不再详细描述。
终端设备110可以实施为媒体网关、远程集线器、呼叫中心、交互式语音应答(IVR)单元或这些和其他设备的一部分或其组合。
虽然图1说明性实施例中的每个终端设备110被显示为具有多个与其相关联的终端,但这只是例子而非限制。在其他实施例中,一个或多个终端设备本身可以是单个连至呼叫设备的终端点。例如,一个给定终端设备本身可以是一个IP电话终端或其他类型的有线或无线终端。
终端112可以是有线桌上电话终端或任何其他类型的能够与呼叫设备102通信的终端。因此此处所用“终端”一词应该被理解为不但包括有线或无线桌上电话终端,而且包括其他类型的基于处理器的通信设备,包括但不限于移动电话、个人计算机、个人数字助理(PDA)等。
呼叫设备102可以通过一个或多个中继线或其他合适的通信媒体连至网络104。网络104可以表示例如一个公共交换电话网(PSTN)、一个全球通信网例如因特网、一个宽域网、一个城区网、一个局域网、一个无线蜂窝式网络或一个卫星网以及这些或其他通信网络的一部分或组合。
应该注意到,本发明并不要求在呼叫设备102、网络104、终端设备110和终端112之间有任何特定类型的信息传输媒体,即本发明能够使用任何所需类型的传输媒体以及不同类型的传输媒体的组合加以实施。
如以下将更详细地描述的,本发明根据其一个方面,涉及将呼叫设备102和终端设备110配置为保证这些单元之间的安全通信。本发明特别适用于提供呼叫设备102与终端设备110之间的安全IP通信,同时也能用于其他类型的通信。
应该强调,图1中所示呼叫设备、终端设备和终端的配置只是为了说明目的,而不应该构成为将本发明限制于任何特定元件安排。
图2显示图1系统中呼叫设备102的一个可能的实施例的更详细的视图。此实施例中的呼叫设备102包括一个处理器200、一个存储器202、一个数据库204、一个或多个接口206、一个交换结构208和一组服务电路210。处理器200可以被实施为一个中央处理单元(CPU),微处理器,专用集成电路(ASIC)或其他类型的数字数据处理器元件或这些元件的不同部分或组合。存储器202可以是一个随机存取存储器(RAM)、一个只读存储器(ROM)或这些和其他类型的电子存储设备的一部分或组合。
处理器200与存储器202一起工作以便执行一个或多个软件程序,用于提供呼叫设备102内的安全通信和其他功能。以下将结合图3至6更详细地描述本发明的安全通信技术。这类程序可以存于存储器202或另一个能够由呼叫设备102接入的存储设备内并且由处理器200以传统方式加以执行。
数据库204可以是例如一个基于光盘或磁盘的存储设备或其他与呼叫设备102相关联的或可接入的传统存储设备。数据库204可用于存储例如特征管理信息、系统配置信息等。
服务电路210可以包括语音发生器、播音电路等。这些电路和接口206由处理器200控制而在呼叫设备102内实施呼叫处理功能。
呼叫设备102可以包括图2中为简化和说明清晰的目的而略去的附加元件。例如,呼叫设备可以包括每种类型的终端设备或与其相关联的终端的一个端口卡。此外,专业人员知道,呼叫设备102可以被配置为支持不同类型的多个终端设备和终端。例如有线桌上终端、无线桌上终端、个人计算机、视频电话或其他先进终端等。
与呼叫设备102相关联的还可能有一个管理终端(未示出),它用于在系统管理期间安排呼叫设备102的操作,例如系统的初始设置和配置或者随后系统级别或用户级别的重新配置。
图中未示出的其他设备可以与呼叫设备102相关联,例如一个附属特征服务器。这类附属设备可以在物理上包括于呼叫设备内,及可以使用其他呼叫设备元件例如处理器200和存储器202来部分地或全部地加以实施。
系统100的每个终端设备和终端可以使用类似于图2中所示方式进行配置,例如可以如上所述地包括一个处理器、一个相关联的存储器和一个或多个接口。
图3说明本发明说明性实施例中使用的一个会话密钥清单数据结构300,用于提供呼叫设备102与一个给定终端设备110之间的安全通信。假设此例中给定终端设备是具有与其相关联的分机101、分机102、…分机1XX的终端设备110-1,当然应该理解,类似结构也优选地配置于每个其他终端设备110内。
终端设备110-1的会话密钥清单数据结构300包括一组会话密钥清单310,其中每个清单包括一个或多个会话密钥单元。更具体地,在说明性实施例中,该组会话密钥清单包括标以SKLST
、SKLST[101]、SKLST[102]、…SKLST[1XX]的会话密钥清单。会话密钥清单SKLST
只包括所示单个单元,而其他对应于相应的终端分机101、分机102、…分机1XX的会话密钥清单SKLST[101]、SKLST[102]、…SKLST[1XX]分别包括M个会话密钥312-1、312-2、…312-XX的表。表312还在此处称为会话密钥“堆栈”。说明性实施例中M的合适值为10,当然也可使用其他值。会话密钥堆栈可以使用传统堆栈处理操作进行处理,例如下压或上托操作以及专业人员所知道的操作。
应该注意,虽然图3例子中每个表312包括相同数量的会话密钥,但这只是例子而不是限制。在其他实施例中,不同会话密钥表能够具有不同数量的单元。此外,第一会话密钥清单SKLST
可以包括多于单个会话密钥单元。例如可以包括M个会话密钥单元的表或堆栈,如同图3中其他会话密钥清单。
现在参照图4、5和6描述图3的会话密钥清单数据结构300用于提供呼叫设备102与一个或多个终端设备110之间的安全通信的方式。
根据本发明,呼叫设备100和每个终端设备110具有与其相关联的一个公共密钥加密密钥对。该呼叫设备密钥对可以看作一个主密钥对,而此主密钥对和每个终端设备密钥对是优选地非对称密钥对。关于传统公共密钥加密密钥对的附加细节可以在以下文献中找到例如A.J.Menezes等,“实用加密学的手册”,CRC Press,1997,它在此处引为参考。
以上所述呼叫设备102和终端设备110的密钥对可以由一个安装程序在系统100的安装阶段期间生成。所有密钥对的公共密钥单元都存于呼叫设备102内,及终端设备密钥对存于它们的相应终端设备内。
图4说明本发明说明性实施例中在呼叫设备102与一个给定终端设备110之间所执行的初始化过程。该初始化过程可以在呼叫设备与每个终端设备之间执行,例如在系统通电时或在系统范围内重新配置之后,或者可以在呼叫设备与一个特定终端设备例如一个加至早已配置的系统中的终端设备之间执行。该呼叫设备因此以类似于图4中所示方式优选地认证每个终端设备。
在图4的步骤400中,一个给定终端设备110为其相关联终端生成会话密钥清单。这些会话密钥清单优选地具有先前结合图3所描述的数据结构300的形式,即该终端设备110-1的一组会话密钥清单310包括标以SKLST
、SKLST[101]、SKLST[102]、…SKLST[1XX]的会话密钥清单。如上所述,会话密钥清单SKLST
只包括单个单元,而其他会话密钥清单则包括M个会话密钥的表。这些会话密钥能够使用已知技术从终端设备的非对称密钥对中生成。
在生成会话密钥清单之后,步骤402中的终端设备然后发送一个认证请求至呼叫设备,及在步骤404中呼叫设备试图通过判断它是否先前曾经为终端设备存储过密钥而证实该请求。如步骤406中所示,作为响应,该终端设备使用其相关联非对称密钥结构来发送其会话密钥清单至该呼叫设备。如果该呼叫设备无法为该终端设备找到该所存密钥,所有来自该终端设备的呼入消息将被立即取消。步骤408标示该终端设备使用来自会话密钥清单的单元SKLST
以便进一步与呼叫设备通信。
图5显示图4过程的认证部分的更详细例子。此认证协议允许呼叫设备确认终端设备的合法性,反之亦然。对图4的相应步骤的引用被包括于图5认证协议的以下描述中。
此实施例中的认证协议由终端设备即图1的终端设备110中的一个所启动。该终端设备生成一个作为一个随机数的终端设备会话密钥,然后使用终端设备私有密钥将终端设备会话密钥加密,从而生成单元ESKe。它还使用呼叫设备公共密钥加密一个终端设备识别码,从而生成单元EEUIDe。它然后发送一个认证请求至呼叫设备,如先前结合图4的步骤402所标示的。该认证请求包括单元EEUIDe和ESKe。
呼叫设备然后识别该请求,就是使该请求合法化,如先前结合图4的步骤404所标示的。如果该请求不合法,则它被取消。呼叫设备通过首先使用呼叫设备私有密钥将EEUIDe解密而确定该终端设备识别码以便使该请求合法化。如果所确定的终端设备识别码存在,即该终端设备识别码对应于被授权与呼叫设备通信的合法终端设备的识别码,则呼叫设备从存储器内检索该终端设备公共密钥。呼叫设备然后通过使用终端设备公共密钥将ESKe解密而确定终端设备会话密钥。
然后通过使用所确定的终端设备会话密钥将一个确认信息ACK加密而生成一个加密确认信息ACKe。呼叫设备然后使用终端设备IP地址和终端设备识别码建立会话信息。然后呼叫设备将该加密登记确认信息ACKe送回终端设备。
作为响应,终端设备通过使用终端设备会话密钥将一个先前生成的会话密钥清单SKLST加密而生成一个加密会话密钥清单SKLSTe。如先前结合图4的步骤400所标示的,生成会话密钥清单SKLST。作为例子,终端设备110-1的会话密钥清单SKLST可以包括如先前结合图3所描述的各单元SKLST
、SKLST[101]、SKLST[102]、…SKLST[1XX]。然后该加密会话密钥清单SKLSTe被送至呼叫设备,如先前结合图4的步骤406所标示的。
在从终端设备收到加密会话密钥清单SKLSTe之后,呼叫设备使用终端设备会话密钥将SKLSTe解密,并且将终端设备会话密钥复位为会话密钥清单中的第一单元即SKLST
。呼叫设备然后使用该新终端设备会话密钥SKLST
将一个确认信息ACK加密而生成一个加密确认信息ACKe。呼叫设备然后将加密登记确认信息ACKe送回终端设备。
终端设备将终端设备会话密钥设置为会话密钥清单中的第一单元即SKLST
。会话密钥SKLST
利用此会话密钥以便在指定会话期间进一步与呼叫设备通信,如先前结合图4的步骤408所标示的。
自以上例子中明显看出,在认证之后,每个终端设备利用它们会话密钥清单SKLST中的单元SKLST
以便进一步与呼叫设备通信。呼叫设备也在终端设备之间的会话密钥协商阶段期间提供在两个或多个终端设备之间的一个安全信道功能,如以下结合图6A至6D所说明的。在两个或多个终端设备之间建立会话密钥之后,这些终端设备使用建立的会话密钥以供它们之间的通信之用。如上所述,一个给定终端设备与呼叫设备之间的任何通信都是使用该终端设备的会话密钥清单的第一单元SKLSY
执行的。在一个给定终端设备与另一个终端设备之间的会话结束后,使用过的会话密钥将被毁掉,以及该给定终端设备的会话密钥清单的合适的基于堆栈单元中的下一个将被用于下一个会话。任何时候需要一个新的会话密钥清单时,该给定终端设备通过与呼叫设备的进一步交互作用而负责建立一个新会话密钥清单,其建立方式类似于先前结合图4和5所描述的方式。当该给定终端设备建立一个新的会话密钥清单及该终端设备再一次被呼叫设备认证时,新的SKLST
单元将被用于它们之间的进一步通信。任何终端设备因此能够重新启动图4的初始化过程以便重新建立它们的会话密钥清单。
应该注意到,一个给定终端设备的任何呼入消息使用一个以上述方式所确定的合适的会话密钥被加密。如果任何这类呼入消息无法被恰当地在终端设备进行解密,则这些将被立即取消。
图6A至6D说明由也称为图1系统的终端设备1的终端设备110-1所启动的呼叫过程的操作,更具体地,图6A显示终端设备1的一个终端(分机105)与另一个终端设备即也称为终端设备2的图1的终端设备110-2的一个终端(分机201)之间的安全通信的建立。图6B说明又一个终端设备即也称为终端设备3的图1的终端设备110-3的一个终端(分机311)被加入终端设备1与2的各终端之间正在进行中的安全通信会议中的方式。图6C说明终端设备1将终端设备3的终端从终端设备1与2的各终端之间正在进行中的安全通信会议中撤出的方式。图6D显示终端设备1与2的各终端之间正在进行的安全通信,及该安全通信被结束和通过终端设备1与呼叫设备之间的交互作用为始发终端(分机105)确定一个新的会话密钥的方式。这些图中的每一个图将在以下更详细地加以描述。
参照图6A,终端设备1启动一个来自其对应于分机105的终端的对于另一个对应于与终端设备2相关联的分机201的终端的呼叫请求。呼叫设备首先判断发出呼入请求的终端设备(终端设备1)的IP地址是否已经在先前例如使用图4的初始化过程向呼叫设备登记过。如果没有,则将该请求取消。否则该呼叫设备使用发出呼入请求的终端设备(终端设备1)的IP地址来确定合适的终端设备会话密钥。呼叫设备然后通过使用所确定的终端设备会话密钥将一个呼入缓冲区解密而获得呼叫请求数据。
在此实施例中,“呼入缓冲区”一词系指一个与呼叫设备存储器相关联的用于存储加密信息的缓冲区。这与“明语电文缓冲区”一词相反,后者系指一个也与呼叫设备存储器相关联的但用于存储明语电文信息即将呼入缓冲区中加密信息进行解密后所得未加密信息的缓冲区。然而应该知道,本发明不需要任何特定缓冲区配置。
所得呼叫请求数据以其未加密形式存在于以上所述明语电文缓冲区中。呼叫设备检查该明语电文缓冲区以便判断呼叫请求数据是否包括终端设备1的合适的终端设备登记名称例如图5的认证协议中涉及的终端设备识别码。如果不是,则将该呼叫请求取消。否则呼叫过程继续下去,其中该呼叫设备确定一个端单元到端单元的会话密钥EUEUSK,作为会话密钥清单SKLST[105]的堆栈312-5的顶部密钥。呼叫设备然后确定一个消息密钥,作为分机201的合适的会话密钥,例如将该会话密钥确定为一个与由终端设备2为分机201建立的会话密钥清单SKLST[201]相关联的堆栈的顶部密钥。
呼叫设备然后将具有加密形式的呼入请求送至终端设备2,如图6A中所示。送至终端设备2的请求使用以上所述消息密钥进行加密,以及优选地包括始发终端设备IP地址和实时协议(RTP)端口信息(集合地标以oIP)、目的地终端(分机201)和始发终端(分机105)的识别码及端单元到端单元的会话密钥EUEUSK。
关于RTP的附加信息能够在例如http//www.ietf.org./internet-drafts/draft-ietf-avt-rtp-new-03.txt中找到。应该注意到,电路切换流或其他类型的非RTP流能够间接地被如下控制,例如通常首先使用传统电路分组网关将它转换为一个RTP流。应该强调,这只是例子,而本发明能够使用其他协议和交换机和设备的其他配置加以实施。
在自呼叫设备接收呼入请求之后,终端设备2首先检查呼入请求的IP地址是否为呼叫设备的IP地址。如果不是,则取消该请求。否则过程继续,其中终端设备2以上述方式使用在终端设备2与呼叫设备之间建立的终端设备会话密钥SKLST
将包含呼入请求信息的呼入缓冲区解密。如果包含解密的呼叫请求信息的明语电文缓冲区不包括终端设备2的登记名称例如以上所述终端设备2的终端设备识别码,则取消该请求。否则终端设备2为呼入请求将会话密钥设置为端单元到端单元的会话密钥EUEUSK,及发送一个呼叫接受标示给终端设备1。该呼叫接受标示优选地包括使用端单元到端单元的会话密钥EUEUSK加密的终端设备2的RTP信息。
在自终端设备2收到呼叫接受标示后,终端设备1通过加密声音分组如上所述地与终端设备2通信。更具体地,终端设备1使用端单元到端单元的会话密钥EUEUSK将来自明语电文缓冲区的一个给定声音分组加密并且发送该加密的分组至终端设备2。终端设备2接收在其呼入缓冲区中的加密声音分组并且使用端单元到端单元的会话密钥EUEUSK将其解密。类似地,终端设备2使用端单元到端单元的会话密钥EUEUSK将来自明语电文缓冲区的一个给定声音分组加密并且发送该加密的分组至终端设备1。终端设备1接收在其呼入缓冲区中的加密声音分组并且使用端单元到端单元的会话密钥EUEUSK将其解密。在安全通信期间此过程能够继续下去。
如前所述,余下的图即图6B、6C和6D说明另一个终端(分机311)被加入正在进行中的安全通信中,随后该终端被从呼叫中撤出,及结束该安全通信和更新会话密钥清单以便容纳随后的涉及同一始发终端(分机105)的安全通信。
现在参照图6B,终端设备1发送一个会议请求至呼叫设备。该会议请求是一个把与终端设备110-3(终端设备3)相关联的分机311加入正在进行的由分机105始发的安全通信的会议中的请求。该会议请求使用先前被认证用于终端设备1与呼叫设备之间通信的终端设备1会话密钥SKLST
进行加密。呼叫设备在收到会议请求后首先判断发出会议请求的终端设备(终端设备1)的IP地址是否已经向呼叫设备登记过,例如使用图4的初始化过程。如果没有,则取消该请求。否则呼叫设备使用发出会议请求的终端设备(终端设备1)的IP地址来确定合适的终端设备会话密钥。呼叫设备然后使用确定的终端设备会话密钥即先前被认证用于终端设备1与呼叫设备之间通信的终端设备会话密钥SKLST
将一个呼入缓冲区解密从而获得会议请求数据。
所得会议请求数据以其未加密形式存在于呼叫设备的以上所述明语电文缓冲区中。呼叫设备检查该明语电文缓冲区以便判断会议请求数据是否包括终端设备1的合适的终端设备登记名称例如图5的认证协议中涉及的终端设备识别码。如果不是,则将该会议请求取消。否则呼叫过程继续下去,其中该呼叫设备确定一个端单元到端单元的会话密钥EUEUSK,作为会话密钥清单SKLST[105]的堆栈312-5的顶部密钥。呼叫设备然后确定一个消息密钥,作为分机311的合适的会话密钥,例如将该会话密钥确定为一个与由终端设备3为分机311建立的会话密钥清单SKLST[311]相关联的堆栈的顶部密钥。
呼叫设备然后将具有加密形式的呼入会议请求送至终端设备3,如图6B中所示。送至终端设备3的请求使用以上所述消息密钥进行加密,以及优选地包括始发终端设备IP地址和RTP端口信息(集合地标以oIP)、目的地终端(分机311)和始发终端(分机105)的识别码及端单元到端单元的会话密钥EUEUSK。
在自呼叫设备接收呼入会议请求之后,终端设备3首先检查呼入请求的IP地址是否为呼叫设备的IP地址。如果不是,则取消该请求。否则过程继续,其中终端设备3以上述方式使用在终端设备3与呼叫设备之间建立的终端设备会话密钥SKLST
将包含呼入会议请求信息的呼入缓冲区解密。如果包含解密的会议请求信息的明语电文缓冲区不包括终端设备3的登记名称例如以上所述终端设备3的终端设备识别码,则取消该请求。否则终端设备3为呼入会议请求将会话密钥设置为端单元到端单元的会话密钥EUEUSK,及发送一个会议接受标示给终端设备1。该会议接受标示优选地包括使用端单元到端单元的会话密钥EUEUSK加密的终端设备3的RTP信息。
在自终端设备3收到会议接受标示后,终端设备1通过加密声音分组如图中所示地与终端设备3通信。更具体地,终端设备1使用端单元到端单元的会话密钥EUEUSK将来自明语电文缓冲区的一个给定声音分组加密并且发送该加密的分组至终端设备3。终端设备3接收在其呼入缓冲区中的加密声音分组并且使用端单元到端单元的会话密钥EUEUSK将其解密。类似地,终端设备3使用端单元到端单元的会话密钥EUEUSK将来自其明语电文缓冲区的一个给定声音分组加密并且发送该加密的分组至终端设备1。终端设备1接收在其呼入缓冲区中的加密声音分组并且使用端单元到端单元的会话密钥EUEUSK将其解密。因此分机311即被加入分机105与201之间正在进行的安全通信的会议中。
图6C说明加入会议的分机311随后从分机105与201之间正在进行中的安全通信中撤出。终端设备1发送一个将分机311从会话中撤出的请求至呼叫设备。该请求使用先前被认证用于终端设备1与呼叫设备之间通信的终端设备会话密钥SKLST
被加密。呼叫设备在收到撤出请求后首先判断发出撤出请求的终端设备(终端设备1)的IP地址是否已经向呼叫设备登记过,例如使用图4的初始化过程。如果没有,则取消该请求。否则呼叫设备使用发出会议请求的终端设备(终端设备1)的IP地址来确定合适的终端设备会话密钥。呼叫设备然后使用确定的终端设备会话密钥即先前被认证用于终端设备1与呼叫设备之间通信的终端设备会话密钥SKLST
将呼入缓冲区解密从而获得撤出请求数据。
所得撤出请求数据以其未加密形式存在于呼叫设备的明语电文缓冲区中。呼叫设备检查该明语电文缓冲区以便判断撤出请求数据是否包括终端设备1的合适的终端设备登记名称例如图5的认证协议中涉及的终端设备识别码。如果不是,则将该撤出请求本身取消。否则呼叫过程继续下去,其中该呼叫设备控导终端设备3撤出会话。此撤出指令使用为在终端设备3与呼叫设备之间通信而建立的终端设备会话密钥SKLST
被加密。终端设备3然后启动一个如图中所示的清除过程。此标以CleanUp( )的示例性过程可以包括或否则涉及以下过程,例如取消会话密钥、删除会话密钥信息、传统电话相关“家务”操作等。
将分机311自分机105与分机201之间正在进行的呼叫中撤出的操作也涉及自SKLST[105]堆栈中获得一个新会话密钥的过程。此过程说明于图6D中。
如图6D中所示,呼叫设备通过自SKLST[105]堆栈中取得下一个密钥而生成一个新的端单元到端单元的会话密钥EUEUSK-NEW。呼叫设备然后将一个新消息密钥确定为分机201的合适会话密钥,例如将该会话密钥确定为一个与由终端设备2为分机201建立的会话密钥清单SKLST[201]相关联的堆栈中的下一个密钥。
呼叫设备然后将具有加密形式的新会话密钥请求送至终端设备2,如图6D中所示。送至终端设备2的请求使用以上所述消息密钥进行加密,以及优选地包括始发终端设备IP地址和RTP端口信息(集合地标以oIP)、目的地终端(分机201)和始发终端(分机105)的识别码及新的端单元到端单元的会话密钥EUEUSK-NEW。
在自呼叫设备接收呼入新会话密钥请求之后,终端设备2首先检查呼入请求的IP地址是否为呼叫设备的IP地址。如果不是,则取消该请求。否则过程继续,其中终端设备2以上述方式使用在终端设备2与呼叫设备之间建立的终端设备会话密钥SKLST
将包含呼入新会话密钥请求信息的呼入缓冲区解密。如果包含解密的呼入请求信息的明语电文缓冲区不包括终端设备2的登记名称例如以上所述终端设备2的终端设备识别码,则取消该请求。否则终端设备2为呼入请求将新会话密钥设置为端单元到端单元的会话密钥EUEUSK-NEW,及将一个新会话密钥确认信息送回给呼叫设备。该确认信息使用先前被认证用于终端设备1与呼叫设备之间通信的终端设备会话密钥SKLST
被加密。
终端设备1然后继续如前所述地通过加密声音分组与终端设备2通信,但使用新端单元到端单元的会话密钥EUEUSK-NEW替代先前的端单元到端单元的会话密钥EUEUSK。
当分机105与分机201之间的安全通信结束时,终端设备1发送一个使用新的端单元到端单元的会话密钥EUEUSK-NEW加密的会话结束指令给终端设备2。然后终端设备2启动一个如上所述的清除过程。
终端设备1然后为分机105建立一个第一新会话密钥,使用终端设备1私有密钥将第一新会话密钥和一个相应的终端设备副号EUSN进行加密,并且发送所得加密单元EUSKe至呼叫设备,作为一个要求提供新会话密钥的请求。呼叫设备在收到新会话密钥请求之后,首先判断发出新会话密钥请求的终端设备(终端设备1)的IP地址是否已经向呼叫设备登记过,例如使用图4的初始化过程。如果没有,则取消该请求。否则呼叫设备使用发出请求的终端设备(终端设备1)的IP地址来确定合适的终端设备会话密钥。呼叫设备然后使用确定的终端设备会话密钥即先前被认证用于终端设备1与呼叫设备之间通信的终端设备会话密钥SKLST
将一个呼入缓冲区解密从而获得新会话密钥请求数据。
所得新会话密钥请求数据以其未加密形式存在于呼叫设备的明语电文缓冲区中。呼叫设备检查该明语电文缓冲区以便判断新会话密钥请求数据是否包括终端设备1的合适的终端设备登记名称例如图5的认证协议中涉及的终端设备识别码。如果不是,则将该会议请求取消。否则呼叫过程继续下去,其中该呼叫设备通过把自终端设备1接收的新会话密钥作为顶部密钥增加至相应的堆栈上,从而更新分机105的会话密钥清单SKLST[105]。
图6D标示,然后由终端设备1和呼叫设备重复以上所述新会话密钥生成过程。虽然在图中只显示单次重复,但新会话密钥生成过程可以多次重复,例如它可以重复所需特定次数以便在堆栈中为分机105会话密钥清单SKLST[105]保持所需最小数量的密钥。
有利的是,以上所述安全通信技术能够保护系统100的呼叫设备102、终端设备110和中的112免受IP电子欺骗、拒绝服务和其他攻击。本发明因此允许以安全和有效方式在一个呼叫处理系统内进行上述IP通信。
如前所述,以上结合本发明说明性实施例描述的一个或多个呼叫处理功能可以全部或部分地实施于呼叫设备102内,例如实施于它的利用处理器200和存储器202的呼叫处理软件内。硬件和/或软件的其他合适组合可以用于实施本发明呼叫处理功能。
应该再一次强调,以上所述实施例只是说明性的。例如,替换实施例可以将不同交换机、网络、终端设备和终端配置、不同加密技术和不同协议用于增加、撤出、加入会议和其他呼叫处理功能。作为另一个例子,会话密钥可以根据规定的失效时期例如每15分钟、每1小时等在给定会话内改变会话密钥。在所附权利要求书的范围之内的这些和其他众多的替换实施例对于本领域的专业人员来说是显而易见的。
权利要求
1.用于在一个呼叫处理系统中通过该系统的通信交换机而提供系统的两个或多个终端设备之间的安全通信的方法,该方法包括以下步骤在一个与通信交换机相关联的存储器内存储多组会话密钥清单,这些会话密钥清单包括用于每个终端设备的一组会话密钥清单;从这些组会话密钥清单中与一个始发终端设备相关联的一个给定组内的一个会话密钥清单中选择一个会话密钥作为一个端单元到端单元的会话密钥,所选定的端单元到端单元的会话密钥能够用于通过通信交换机而提供始发终端设备与至少一个其他终端设备之间的安全通信。
2.权利要求1的方法,其中各组会话密钥清单中的一个给定组以数据结构的形式被存储,该数据结构包括至少一个第一会话密钥单元和多个基于堆栈会话密钥清单,每个基于堆栈会话密钥清单包括多个与一个连至始发终端设备的特定终端相关联的会话密钥。
3.权利要求2的方法,其中第一会话密钥单元能够用于提供始发终端点与通信交换机之间的安全通信。
4.权利要求2的方法,其中所选会话密钥选自对应于一个用于通过始发终端设备来始发安全通信的特定终端的多个基于堆栈会话密钥清单中被指定的一个。
5.权利要求4的方法,其中在完成由特定终端始发的安全通信之后,相应的始发终端设备生成至少一个附加会话密钥,它被加至该终端的基于堆栈会话密钥清单中并且被提供给通信交换机以供存储,该附加会话密钥能用于提供始发终端设备与至少一个其他终端设备之间的随后安全通信。
6.权利要求1的方法,其中一个给定终端设备的一组会话密钥清单被该终端设备以加密形式提供给通信交换机,作为在该终端设备与通信交换机之间执行的认证协议的一部分。
7.权利要求1的方法,其中该组会话密钥清单的第一会话密钥单元能够在完成认证协议之后被用于提供一个给定终端设备与通信交换机之间的安全通信。
8.权利要求1的方法,其中一个与连至始发终端设备的特定终端相关联的一个特定会话密钥清单被选择以便用于为由该特定终端始发的呼叫提供安全通信。
9.权利要求8的方法,其中至少一个连至另一个终端设备的附加终端利用所选会话密钥以便参加由该特定终端始发的呼叫。
10.权利要求9的方法,其中附加终端包括一个由该特定终端始发的呼叫的相应的目的地终端。
11.权利要求9的方法,其中附加终端包括一个呼叫目的地终端之外的附加终端,在将该呼叫接入至目的地终端之后,该附加终端被加入由特定终端始发的呼叫的会议中。
12.权利要求11的方法,其中在被加入呼叫的会议中的附加终端随后被从呼叫中撤出之后,从与该特定终端相关联的会话密钥清单中选择一个新会话密钥。
13.用于在一种呼叫处理系统中通过该系统的通信交换机而提供系统的两个或多个终端设备之间的安全通信的设备,该设备包括一个存储器,它与通信交换机相关联并用于存储包括用于每个终端设备的一组会话密钥清单的多组会话密钥清单;及一个连至该存储器的处理器,该处理器用于从这些组会话密钥清单中与一个始发终端设备相关联的一个给定组的一个会话密钥清单中选择一个会话密钥作为一个端单元到端单元的会话密钥,所选定的端单元到端单元的会话密钥能够用于通过通信交换机而提供始发终端设备与至少一个其他终端设备之间的安全通信。
14.权利要求13的设备,其中各组会话密钥清单中的一个给定组以数据结构的形式被存储,该数据结构包括至少一个第一会话密钥单元和多个基于堆栈会话密钥清单,每个基于堆栈会话密钥清单包括多个与一个连至始发终端设备的特定终端相关联的会话密钥。
15.权利要求14的设备,其中第一会话密钥单元能够用于提供始发终端点与通信交换机之间的安全通信。
16.权利要求14的设备,其中所选会话密钥选自对应于一个用于通过始发终端设备来始发安全通信的特定终端的多个基于堆栈会话密钥清单中被指定的一个。
17.权利要求16的设备,其中在完成由特定终端始发的安全通信之后,相应的始发终端设备生成至少一个附加会话密钥,它被加至该终端的基于堆栈会话密钥清单中并且被提供给通信交换机以供存储,该附加会话密钥能用于提供始发终端设备与至少一个其他终端设备之间的随后安全通信。
18.权利要求13的设备,其中一个给定终端设备的一组会话密钥清单被该终端设备以加密形式提供给通信交换机,作为在该终端设备与通信交换机之间执行的认证协议的一部分。
19.权利要求13的设备,其中该组会话密钥清单的第一会话密钥单元能够在完成认证协议之后被用于提供一个给定终端设备与通信交换机之间的安全通信。
20.权利要求13的设备,其中一个与连至始发终端设备的特定终端相关联的一个特定会话密钥清单被选择以便用于为由该特定终端始发的呼叫提供安全通信。
21.权利要求20的设备,其中至少一个连至另一个终端设备的附加终端利用所选会话密钥以便参加由该特定终端始发的呼叫。
22.权利要求21的设备,其中附加终端包括一个由该特定终端始发的呼叫的相应的目的地终端。
23.权利要求21的设备,其中附加终端包括一个呼叫目的地终端之外的附加终端,在将该呼叫接入至目的地终端之后,该附加终端被加入由特定终端始发的呼叫的会议中。
24.权利要求23的设备,其中在被加入呼叫的会议中的附加终端随后被从呼叫中撤出之后,从与该特定终端相关联的会话密钥清单中选择一个新会话密钥。
25.一种包括一个机器可读存储媒体的制造产品,该机器可读存储产品用于存储一个或多个在呼叫处理系统中用于通过该系统的通信交换机提供系统的两个或多个终端设备之间的安全通信的程序,其中一个或多个程序在运行时实施以下步骤在一个与通信交换机相关联的存储器内存储多组会话密钥清单,这些会话密钥清单包括用于每个终端设备的一组会话密钥清单;从这些组会话密钥清单中与一个始发终端设备相关联的一个给定组内的一个会话密钥清单中选择一个会话密钥作为一个端单元到端单元的会话密钥,所选定的端单元到端单元的会话密钥能够用于通过通信交换机而提供始发终端设备与至少一个其他终端设备之间的安全通信。
全文摘要
一种用于通过呼叫设备或其他通信系统交换机在呼叫处理系统的两个或多个终端设备之间提供安全通信的技术。每个终端设备生成一组会话密钥清单,它包括每个与其相连的终端的基于堆栈的一个会话密钥清单。这些以安全方式从终端设备送至呼叫设备的多组会话密钥清单用作在终端设备与呼叫设备之间执行的相应认证协议的一部分。在建立始发终端设备与一个或多个附加终端设备之间的安全通信时,呼叫设备自与一个始发终端设备相关联的各组会话密钥清单中的一个给定组的会话密钥清单中选择一个会话密钥作为端单元到端单元的会话密钥。所选端单元到端单元的会话密钥能够被用于通过呼叫设备提供始发终端设备与至少一个其他终端设备之间的安全通信。
文档编号H04L12/66GK1437350SQ0214217
公开日2003年8月20日 申请日期2002年8月29日 优先权日2002年1月10日
发明者莱温特·萨斯马兹尔 申请人:阿瓦雅技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1