基于sip通信系统的密钥分发方法

文档序号:10626583阅读:557来源:国知局
基于sip通信系统的密钥分发方法
【专利摘要】本发明公开了一种基于SIP通信系统的密钥分发方法,基于VOIP服务器、密钥分发服务器、若干终端架构而成的通信系统实现,终端向VOIP服务器发送呼叫请求消息,VOIP服务器向密钥分发服务器发送获取密钥请求消息,密钥分发服务器利用终端的公钥,生成终端的密钥数据,并将密钥数据通过VOIP服务器分发给终端,终端收到相应的密钥数据后,利用自身的私钥对密钥数据解密后得到会话密钥,主被叫终端利用会话密钥实现保密通信。本发明简化了密钥分发过程,将密钥数据通过建立通信连接的SIP消息传输给终端,无需额外增加消息数量,实时性较强,可实现终端的保密通信。
【专利说明】
基于SIP通信系统的密钥分发方法
技术领域
[0001]本发明涉及一种基于SIP通信系统的密钥分发方法,属于信息安全技术领域。
【背景技术】
[0002]SIP (Sess1n Initiat1n Protocol)是一个会话层的信令控制协议,用于创建、修改和释放一个或多个参与者的会话,主、被叫终端通过VOIP服务器建立通信连接,主、被叫终端交互的语音内容基于RTP实时传输协议,语音数据包被封装成IP包,在IP网络上传输,传输过程中,若不对数据包进行任何处理,就存在明文形式的通话内容数据被窃听而导致信息泄露的隐患。
[0003]为保证通信双方通信内容的安全性、完整性,普遍使用PKI系统,利用数字证书、非对称加密、数字签名等技术分发密钥,保证密钥的机密性、完整性和不可抵赖性,终端利用得到的密钥对数据包加密后传输,然而基于PKI系统架构的SIP通信系统具有实现复杂、成本高、实时性较差的问题。

【发明内容】

[0004]鉴于上述原因,本发明的目的在于提供一种基于SIP通信系统的密钥分发方法,该方法由主叫终端通过VOIP服务器触发密钥分发服务器为通信双方分发密钥,不仅能够保证通信双方通信内容数据的安全性,且实现较为简单、实时性强。
[0005]为实现上述目的,本发明采用以下技术方案:
[0006]一种基于SIP通信系统的密钥分发方法,基于VOIP服务器、密钥分发服务器、若干终端架构而成的通信系统实现,该方法为,
[0007]密钥分发服务器利用终端的公钥,生成终端的密钥数据,并将该密钥数据通过VOIP服务器分发给终端。
[0008]该方法包括以下步骤:
[0009]S1:主叫终端向VOIP服务器发送呼叫请求消息;
[0010]S2 =VOIP服务器收到该呼叫请求消息后,向密钥分发服务器发送获取密钥请求消息,该获取密钥请求消息中包含主、被叫终端的身份标识;
[0011]S3:密钥分发服务器收到该获取密钥请求消息,根据主、被叫终端的信息生成相应的密钥数据,并将生成的密钥数据以获取密钥响应消息发送给VOIP服务器;
[0012]S4:V0IP服务器收到该获取密钥响应消息后,向被叫终端发送呼叫请求消息,该呼叫请求消息中包含被叫终端的密钥数据Ckb;
[0013]S5:被叫终端收到VOIP服务器发送的呼叫请求消息后,向VOIP服务器发送振铃消息;
[0014]S6 =VOIP服务器收到被叫终端的振铃消息后,向主叫终端发送振铃消息,该振铃消息中包含主叫终端的密钥数据cKA。
[0015]进一步的,
[0016]所述步骤S3中,密钥分发服务器先利用随机函数生成随机数作为会话密钥,然后利用主、被叫终端的公钥对会话密钥进行加密生成加密的会话密钥,之后在加密的会话密钥基础上添加认证数据生成主、被叫终端的密钥数据。
[0017]所述步骤S2中,所述获取密钥请求消息中包含主、被叫终端的公开数据,该公开数据为终端的公钥、数字证书,密钥分发服务器利用终端的公钥对所述会话密钥进行加密。
[0018]所述获取密钥请求消息中未包含所述公开数据,密钥分发服务器利用终端的身份标识查找自身建立的关于终端身份标识与公开数据对应关系的数据库,获得终端的公开数据。
[0019]密钥分发服务器利用终端的身份标识,从CA中心获取终端的公开数据。
[0020]主、被叫终端收到所述密钥数据后,先利用所述公开数据对密钥数据进行校验,校验通过后,利用已有的私钥对密钥数据进行解密后得到所述会话密钥
[0021]本发明的优点是:
[0022]本发明可简化密钥分发过程,将密钥数据通过建立通信连接的SIP消息传输给终端,无需额外增加消息数量,实时性较强,可实现终端的保密通信。
【附图说明】
[0023]图1是本发明的SIP通信系统的组成框图。
[0024]图2是本发明的信号流向示意图。
【具体实施方式】
[0025]以下结合附图和实施例对本发明作进一步详细的说明。
[0026]图1是本发明的SIP通信系统的组成框图,如图1所示,本发明公开的基于SIP通信系统的密钥分发方法,基于由VOIP服务器、密钥分发服务器(KDS:Key Distribut1nServer)、若干终端(SIP终端)等架构而成,终端通过VOIP服务器建立通信连接,VOIP服务器通过网络与密钥分发服务器相连接,可从密钥分发服务器获取密钥,并将获取的密钥分发给终端。
[0027]如图2所示,本发明的基于SIP通信系统的密钥分发方法,包括以下步骤:
[0028]S1:主叫终端向VOIP服务器发送呼叫请求消息(INVITE消息);
[0029]S2 =VOIP服务器收到该呼叫请求消息后,向密钥分发服务器发送获取密钥请求消息,该获取密钥请求消息中包含主、被叫终端的身份标识及公开数据;
[0030]终端的身份标识可以是终端的通信号码、硬件密码设备标识、数字证书序列号等可以唯一标识终端身份的标识数据。
[0031]终端保存有CA中心(证书授权机构)已经为终端分配的公钥、私钥及数字证书等,终端的公开数据包括终端已有的公钥、数字证书等。
[0032]S3:密钥分发服务器收到该获取密钥请求消息,根据主、被叫终端的信息生成相应的密钥数据,并将生成的主、被叫终端的密钥数据以获取密钥响应消息发送给VOIP服务器;
[0033]密钥分发服务器生成的密钥数据的方法是:
[0034]S31:生成会话密钥;
[0035]可利用随机函数或硬件随机数发生器生成随机数作为会话密钥。
[0036]S32:利用主、被叫终端的公开数据对会话密钥处理后,生成主、被叫终端的密钥数据;
[0037]密钥分发服务器可以通过以下方法获取主、被叫终端的公开数据:从VOIP服务器向密钥分发服务器发送的获取密钥请求消息中获取;若获取密钥请求消息中未携带终端的公开数据,密钥分发服务器依据主、被叫终端的身份标识,查找自身建立的数据库,该数据库中保存了终端的身份标识及对应的公开数据等信息;若密钥分发服务器未建立相关的数据库,则可从CA中心获取主、被叫终端的公开数据。
[0038]密钥分发服务器利用主叫终端的公开数据PKa对会话密钥进行公钥加密后得到加密的会话密钥(即利用主叫终端的公钥对会话密钥进行加密后得到加密的会话密钥),进一步的,为防止密钥数据被篡改或伪造,在加密的会话密钥基础上添加认证数据(即进行数字签名)生成主叫终端的密钥数据Cka;
[0039]同理,密钥分发服务器利用被叫终端的公开数据PKb对会话密钥进行公钥加密后得到加密的会话密钥,进一步的,为防止密钥数据被篡改或伪造,在加密的会话密钥基础上添加认证数据后生成被叫终端的密钥数据CKB。
[0040]S4:V0IP服务器收到该获取密钥响应消息后,向被叫终端发送呼叫请求消息,该呼叫请求消息中包含被叫终端的密钥数据Ckb;
[0041]S5:被叫终端收到VOIP服务器发送的呼叫请求消息后,响应并向VOIP服务器发送振铃消息;
[0042]被叫终端收到该呼叫请求消息后,首先对密钥数据Ckb中的认证数据进行验证,验证方法是终端利用公开数据对认证数据进行签名验证;验证通过后,利用已有的私钥对密钥数据进行解密后得到会话密钥,后续通信过程中,主叫终端可直接利用该会话密钥对数据包进行加解密处理,也可以利用该会话密钥与不同的参数进行运算(运算方式包括杂凑运算、加密运算、掩盖运算等)后生成数据加密密钥、数据认证密钥等应用密钥,然后再使用生成的应用密钥对数据包进行加解密处理或认证处理。需要注意的是,对于会话密钥的使用方法,主、被叫终端需保持一致。
[0043]S6 =VOIP服务器收到被叫终端的振铃消息后,向主叫终端发送振铃消息,该振铃消息中包含主叫终端的密钥数据Cka;
[0044]主叫终端收到该振铃消息后,首先对密钥数据Cka进行校验,校验通过后,利用已有的私钥对密钥数据进行解密后得到会话密钥,后续通信过程中,主叫终端直接利用该会话密钥对数据包进行加解密处理,或是与被叫终端采用相同的方式利用该会话密钥生成应用密钥后,再使用应用密钥对数据包进行加解密处理或认证处理。
[0045]S7:被叫终端通过VOIP服务器向主叫终端发送接听响应消息(2000K);
[0046]S8:主叫终端通过VOIP服务器向被叫终端发送确认消息(ACK)。
[0047]本发明的基于SIP通信系统的密钥分发方法,主叫终端欲与被叫终端通信时,通过VOIP服务器触发密钥分发服务器进行密钥分发,密钥分发服务器利用主、被叫终端的身份标识及公开数据生成二者的密钥数据,并通过VOIP服务器将密钥数据分发给主、被叫终端,之后,主被叫终端即可利用密钥数据实现保密通信。本发明可简化密钥分发过程,将密钥数据通过建立通信连接的SIP消息传输给终端,无需额外增加消息数量,实时性较强。
[0048]以上所述是本发明的较佳实施例及其所运用的技术原理,对于本领域的技术人员来说,在不背离本发明的精神和范围的情况下,任何基于本发明技术方案基础上的等效变换、简单替换等显而易见的改变,均属于本发明保护范围之内。
【主权项】
1.基于SIP通信系统的密钥分发方法,基于VOIP服务器、密钥分发服务器、若干终端架构而成的通信系统实现,其特征在于, 密钥分发服务器利用终端的公钥,生成终端的密钥数据,并将该密钥数据通过VOIP服务器分发给终端。2.如权利要求1所述的基于SIP通信系统的密钥分发方法,其特征在于,包括以下步骤: 51:主叫终端向VOIP服务器发送呼叫请求消息; 52=VOIP服务器收到该呼叫请求消息后,向密钥分发服务器发送获取密钥请求消息,该获取密钥请求消息中包含主、被叫终端的身份标识; 53:密钥分发服务器收到该获取密钥请求消息,根据主、被叫终端的信息生成相应的密钥数据,并将生成的密钥数据以获取密钥响应消息发送给VOIP服务器; 54=VOIP服务器收到该获取密钥响应消息后,向被叫终端发送呼叫请求消息,该呼叫请求消息中包含被叫终端的密钥数据Ckb; 55:被叫终端收到VOIP服务器发送的呼叫请求消息后,向VOIP服务器发送振铃消息; 56=VOIP服务器收到被叫终端的振铃消息后,向主叫终端发送振铃消息,该振铃消息中包含主叫终端的密钥数据CKA。3.如权利要求2所述的基于SIP通信系统的密钥分发方法,其特征在于,所述步骤S3中,密钥分发服务器先利用随机函数生成随机数作为会话密钥,然后利用主、被叫终端的公钥对会话密钥进行加密生成加密的会话密钥,之后在加密的会话密钥基础上添加认证数据生成主、被叫终端的密钥数据。4.如权利要求3所述的基于SIP通信系统的密钥分发方法,其特征在于,所述步骤S2中,所述获取密钥请求消息中包含主、被叫终端的公开数据,该公开数据为终端的公钥、数字证书,密钥分发服务器利用终端的公钥对所述会话密钥进行加密。5.如权利要求4所述的基于SIP通信系统的密钥分发方法,其特征在于,所述获取密钥请求消息中未包含所述公开数据,密钥分发服务器利用终端的身份标识查找自身建立的关于终端身份标识与公开数据对应关系的数据库,获得终端的公开数据。6.如权利要求5所述的基于SIP通信系统的密钥分发方法,其特征在于,密钥分发服务器利用终端的身份标识,从CA中心获取终端的公开数据。7.如权利要求6所述的基于SIP通信系统的密钥分发方法,其特征在于,主、被叫终端收到所述密钥数据后,先利用所述公开数据对密钥数据进行校验,校验通过后,利用已有的私钥对密钥数据进行解密后得到所述会话密钥。
【文档编号】H04L9/08GK105991277SQ201510046565
【公开日】2016年10月5日
【申请日】2015年1月29日
【发明人】付景林, 李耀龙, 王允升, 王志刚
【申请人】北京大唐高鸿数据网络技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1