一种VoIP音视频加密密钥动态切换方法技术

技术编号:17974323 阅读:88 留言:0更新日期:2018-05-16 13:55
本发明专利技术主要披露了一种VoIP音视频加密密钥动态切换方法,用于客户端和服务器端协商双方间的密钥协商,该方法包括:步骤a、客户端和服务器端之间通过媒体层套接字进行密钥的初次协商;步骤b、初次协商完成后得到一组SRTP加密密钥,保存客户端确认信息和所述服务器端确认信息,同时开始进行媒体数据加密传输;步骤c、媒体数据加密传输过程中,由客户端或者服务器端发起重协商,更新客户端确认信息和服务器端确认信息。本发明专利技术方案的密钥协商过程都通过媒体层套接字发送,并且支持通信双方以任何方式发起重协商,在加密密钥动态切换前后可以保持会话,无需重新销毁创建媒体通道。

【技术实现步骤摘要】
一种VoIP音视频加密密钥动态切换方法
本专利技术属于网络通讯技术,尤其涉及网络通讯中的音视频加密技术。
技术介绍
在VoIP媒体通信过程中,媒体数据的安全性显得尤为重要,在VoIP中媒体数据通常采用RTP的方式进行数据的互通,而SRTP(SecureReal-timeTransportProtocol)是RTP最为常用的安全传输机制,基于密钥加密RTP数据从而提升安全性。密钥对于SRTP协议至关重要,传输双方的数据都依赖于密钥进行加密,因此密钥的安全性与传输双方的数据安全密切相关。SRTP自身不提供密钥协商,通常采用信令的方式进行交换,并且在一次通话过程中,SRTP关联的密钥是固定不变的。通常信令的交互显的比较笨重及低效,且采用信令交换密钥的方式会影响当前媒体的互通连续性,导致用户体验及友好性欠佳。若以DTLS(DatagramTransportLayerSecurity)取代现有的密钥交换方式,可直接通过媒体传输的套接字完成SRTP密钥协商,并在整个通话过程中支持动态的密钥重协商。此密钥的重协商过程可在不影响媒体数据传输的前提下完成,并在重协商完成之后进行新旧密钥替换,从而较好地增强了音视频通信的安全性。在现有技术方案中,信令层完成SRTP密钥协商之后下发给媒体层,媒体层在创建会话之后用下发的密钥进行数据加密,如图1(a)所示。信令层一般是由发起方直接生成用于加密的密钥,通过SIP协议发送给对端,这种方式依赖于信令层其它数据保护机制,方案本身安全性较低。并且由于音视频SRTP加密在媒体层完成,信令层完成协商之后仍需下发密钥,每次需更换密钥时媒体层会话都会中断,需重新创建媒体通道。
技术实现思路
本专利技术的目的在于提供一种VoIP音视频加密密钥动态切换方法,该方法基于DTLS实现SRTP密钥协商与动态重协商,重协商过程中不影响媒体数据连续性。为了实现上述专利技术目的,本专利技术的技术方案如下:一种VoIP音视频加密密钥动态切换方法,用于客户端和服务器端协商双方间的密钥协商,该方法包括:步骤a、客户端和服务器端之间通过媒体层套接字进行密钥的初次协商;步骤b、初次协商完成后得到一组SRTP加密密钥,保存客户端确认信息和所述服务器端确认信息,同时开始进行媒体数据加密传输;步骤c、媒体数据加密传输过程中,由客户端或者服务器端发起重协商,更新客户端确认信息和服务器端确认信息。优选的,当客户端发起重协商时直接进入握手流程。优选的,当服务器端发起重协商时,发送重协商请求到所述客户端,然后进入等待重协商状态。优选的,初次协商和重协商均基于DLTS握手协议实现,同时对DTLS握手协议的record进行扩展,在起始record中增加“使用SRTP”字段。优选的,客户端的ClientHello扩展字段包含:标志位、SRTP列表长度和客户端所支持的SRTPsuites列表;服务器端的ServerHello的扩展字段包含:标志位、长度和服务器端选定的SRTPsuite。优选的,初次协商具体包括以下步骤:步骤a1、客户端通过媒体层套接字发送“第一握手请求”发起协商;步骤a2、服务器端通过媒体层套接字接收到“第一握手请求”解析生成cookie并“请求确认”发送至客户端;步骤a3、客户端收到“请求确认”,获取cookie添加生成“第二握手请求”;步骤a4服务器端收到“第二握手请求”后解析其中suites与本地实际条件匹配选择合适的suite发送给客户端;步骤a5、客户端分析确定是否支持重协商。优选的,加密密钥动态切换方法还进一步包括DTLS证书验证操作,服务器端在生成自签名证书后通过媒体层套接字发送自签名证书,同时生成第一hash指纹上传到信令层,通过SDP协议发给客户端。优选的,客户端收到hash指纹后下发到媒体层,并且媒体层接收到自签名证书,用相同hash算法生成第二hash指纹,对比第一hash指纹和第二hash指纹进行身份验证。优选的,初次协商和重协商过程中在第二握手请求中添加重协商信息,重协商信息包括:类型、长度、数据以及标志位。优选的,客户端和服务器端之间通过“握手完成”record确认握手过程结束,“握手完成”record是DTLS中第一个加密的数据包,加密密钥由DTLSsuite确定,客户端“握手完成”record包含12字节的客户端“确认信息”数据,服务器端则包含12字节服务器端“确认信息”数据。优选的,SRTP加密密钥根据预定算法结合初次协商的扩展部分计算所得,预定算法是包含在SRTP的套件中。优选的,重协商具体包括:客户端发送包含重协商信息的“握手请求”开始重新握手;服务器端收到包含重协商的“握手请求”后,直接返回发送“握手请求”;密钥协商完成后,通过“握手完成”record更新两端的“确认信息”,用于下一次重协商时的会话验证。优选的,重协商具体包括:服务器端发送重协商请求;客户端收到重协请求后验证,直接返回发送“握手请求”;密钥协商完成后,通过“握手完成”record更新两端的“确认信息”,用于下一次重协商时的会话验证。专利技术披露了一种VoIP音视频加密密钥动态切换方法,在不影响媒体互通连续性的情况下,完成加密密钥的重协商,进而提高媒体互通的安全性。动态密钥切换不中断通话状态及媒体互通连续性,提高了媒体互通的安全性。附图说明图1为现有技术与本专利技术技术方案的通讯架构示意图;图2为标准DTLS握手流程示意图;图3为本专利技术具体实施例中扩展后的协商流程示意图;图4为本专利技术具体实施例中重协商流程示意图。具体实施方式本专利技术的基本原理为:本方案在媒体层基于DTLS协议完成音视频加密密钥的动态切换,利用DLTS协议安全性保证加密密钥不易泄露,并且实现密钥动态切换时会话不中断。本方案整体结构包含三部分,分别是初次协商、SRTP加密传输和重协商,主要协商过程都在媒体传输层完成,与信令层相关性低。为了使本专利技术的目的、技术方案及优点更加清楚明白,下面举例说明,应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。图1为现有技术与本专利技术技术方案的通讯架构示意图。其中,图1(b)是本专利技术方案的基本结构。如该图所示,本方案初次协商完成后可得到SRTP加密密钥,此时开始进行媒体数据加密传输。在传输过程中,可由客户端(下文简称client)或服务器端(下文简称server)发起重协商,区别在于client直接进入握手流程,而server则是发送重协商请求到client,然后进入等待重协商状态。本专利技术实例提供一种VoIP音视频加密密钥动态切换方法,通过媒体层传输套接字完成SRTP加密密钥的动态切换,该方法基于DTLS握手协议完成密钥的初次协商与动态重协商,获取的密钥用于SRTP加密。DTLS是client/server模式,由client发起初次协商,而重协商可由任一方发起。图2为标准DTLS握手流程示意图。本专利技术在协商过程中,其核心是DTLS握手协议(handshakeprotocol),DLTS握手协议安全性高,完成时首先得到主密钥(masterkey),之后基于主密钥和算法套件(suite)导出用于数据加解密的密钥。client与server间需要多次通信才能协商出主密钥。握手相关的数据包称之为record。由于DTLS面向本文档来自技高网
...
一种VoIP音视频加密密钥动态切换方法

【技术保护点】
一种VoIP音视频加密密钥动态切换方法,用于客户端和服务器端协商双方间的密钥协商,其特征在于,该方法包括:步骤a、客户端和服务器端之间通过媒体层套接字进行密钥的初次协商;步骤b、所述初次协商完成后得到一组SRTP加密密钥,保存所述客户端确认信息和所述服务器端确认信息,同时开始进行媒体数据加密传输;步骤c、所述媒体数据加密传输过程中,由所述客户端或者所述服务器端发起重协商,更新所述客户端确认信息和所述服务器端确认信息。

【技术特征摘要】
1.一种VoIP音视频加密密钥动态切换方法,用于客户端和服务器端协商双方间的密钥协商,其特征在于,该方法包括:步骤a、客户端和服务器端之间通过媒体层套接字进行密钥的初次协商;步骤b、所述初次协商完成后得到一组SRTP加密密钥,保存所述客户端确认信息和所述服务器端确认信息,同时开始进行媒体数据加密传输;步骤c、所述媒体数据加密传输过程中,由所述客户端或者所述服务器端发起重协商,更新所述客户端确认信息和所述服务器端确认信息。2.根据权利要求1所述的方法,其特征在于,当所述客户端发起重协商时直接进入握手流程。3.根据权利要求2所述的方法,其特征在于,当所述服务器端发起重协商时,发送重协商请求到所述客户端,然后进入等待重协商状态。4.根据权利要求2或3所述的方法,其特征在于,所述初次协商和所述重协商均基于DLTS握手协议实现,同时对DTLS握手协议的record进行扩展,在起始record中增加“使用SRTP”字段。5.根据权利要求4所述的方法,其特征在于,所述客户端的ClientHello扩展字段包含:标志位、SRTP列表长度和所述客户端所支持的SRTPsuites列表;所述服务器端的ServerHello的扩展字段包含:标志位、长度和所述服务器端选定的SRTPsuite。6.根据权利要求5所述的方法,其特征在于,所述初次协商具体包括以下步骤:步骤a1、所述客户端通过媒体层套接字发送“第一握手请求”发起协商;步骤a2、所述服务器端通过媒体层套接字接收到所述“第一握手请求”解析生成cookie并“请求确认”发送至所述客户端;步骤a3、所述客户端收到所述“请求确认”,获取cookie添加生成“第二握手请求”;步骤a4所述服务器端收到所述“第二握手请求”后解析其中suites与本地实际条件匹配选择合适的suite发送给所述客户端;步骤a5、所述客户端分析确定是否支持所述重协商。7.根据权利要求6所述的方法...

【专利技术属性】
技术研发人员:陈超孙松山徐晓峰李夏宾
申请(专利权)人:深圳市潮流网络技术有限公司潮流网络有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1