CN103685181A - 一种基于srtp的密钥协商方法 - Google Patents

一种基于srtp的密钥协商方法 Download PDF

Info

Publication number
CN103685181A
CN103685181A CN201210339502.8A CN201210339502A CN103685181A CN 103685181 A CN103685181 A CN 103685181A CN 201210339502 A CN201210339502 A CN 201210339502A CN 103685181 A CN103685181 A CN 103685181A
Authority
CN
China
Prior art keywords
key
srtp
aes
aes algorithm
pattern
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201210339502.8A
Other languages
English (en)
Inventor
崔弘睿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING DATANG GOHIGH SOFTWARE TECHNOLOGY Co Ltd
Original Assignee
BEIJING DATANG GOHIGH SOFTWARE TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BEIJING DATANG GOHIGH SOFTWARE TECHNOLOGY Co Ltd filed Critical BEIJING DATANG GOHIGH SOFTWARE TECHNOLOGY Co Ltd
Priority to CN201210339502.8A priority Critical patent/CN103685181A/zh
Publication of CN103685181A publication Critical patent/CN103685181A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种基于SRTP的密钥协商方法,包括发送方检索其支持的AES算法模式,并按加密有效性排序;对各AES算法模式使用随机函数生成相应的密钥;将各AES算法模式及对应的密钥,按密钥协商帧格式封装成密钥协商请求消息数据包并发送给接收方;接收方按照协商请求消息中列出的AES算法模式的顺序,检测其是否支持其中一种模式;接收方将其支持的AES算法模式及对应的密钥,按密钥协商帧格式封装成回复消息数据包并发送给发送方;若回复消息中包含发送方支持的任何一种AES算法模式及对应的密钥,则密钥协商成功;否则密钥协商失败。本发明可提高SRTP的密钥安全性,进而提高SRTP的安全性和实用性。

Description

一种基于SRTP的密钥协商方法
技术领域
本发明涉及一种基于SRTP的密钥协商方法,属于信息安全技术领域。
背景技术
实时传输协议RTP(Real-time Transport Protocol)详细规定了互联网上实时传输音频、视频数据的标准数据包格式,满足了实时音频、视频的应用需求。随着网络安全问题的日益突出,为保证实时传输数据的安全性和完整性,安全实时传输协议SRTP(Secure Real-time Transport Protocol)应运而生,它是在RTP基础上定义的一个协议,旨在为单播和多播应用程序中的实时传输协议的数据提供加密、消息认证、完整性保证和重放保护。
SRTP的帧格式与RTP类似,只是在RTP数据包的最后增加了主密钥标识和认证标签,即增加了加密和认证功能。这样,SRTP一方面可以对RTP的有效负载进行AES加密以防止RTP有效负载的暴露,另一方面也可以对整个RTP数据包进行认证以防止重放攻击。
但是,由于SRTP的密钥一般是通过会话描述协议SDP(Session DescriptionProtocol)进行协商的,而SDP本身并没有得到保护,所以SRTP的密钥也就没有得到真正的保护,这也将导致SRTP的加密及认证失去意义。
发明内容
鉴于上述问题,本发明的目的在于提供一种基于SRTP的密钥协商方法,通过对SRTP的密钥协商过程进行保护,提高SRTP的密钥安全性,从而保证RTP数据包的安全性。
为实现上述目的,本发明采用以下技术方案:
一种基于SRTP的密钥协商方法,包括以下步骤:
1)发送方检索自身支持的AES算法模式,并对检索出的AES算法模式按照加密有效性进行排序;
2)针对排序好的AES算法模式,使用随机函数,产生出相应格式的密钥;
3)将排序好的AES算法模式及对应各模式产生出的密钥,按照密钥协商帧格式,封装成密钥协商请求消息数据包;
4)发送方向接收方发送该密钥协商请求消息;
5)接收方接收到该密钥协商请求消息,按照协商请求消息中列出的AES算法模式的顺序,检测其是否支持其中一种模式;
6)接收方将其支持的AES算法模式及对应生成的密钥,按照密钥协商帧格式封装成回复消息数据包,如果接收方不支持所述密钥协商请求消息中任何一种AES算法模式,则回复消息数据包中不包含任何算法和密钥的信息;
7)接收方向发送方发送该回复消息;
8)发送方接收到该回复消息,如果该回复消息中包含发送方所支持的任何一种AES算法模式及该模式对应的密钥,则密钥协商成功;否则密钥协商失败。
进一步地:
所述的基于SRTP的密钥协商方法,还包括步骤:
9)如果密钥协商成功,发送方和接收方使用协商好的AES算法模式,按照SRTP的协议流程进行通信;如果密钥协商失败,发送方和接收方可以按照RTP的协议流程进行通信,也可以结束通信。
所述AES算法是指AES加密算法及HMAC_SHA1认证算法。
所述AES算法模式包括AES_CM_128_HMAC_SHA1_80、AES_CM_128_HMAC_SHA1_32及F8_128_HMAC_SHA1_80。
所述密钥协商帧格式包括接收方IP地址、端口号,发送方IP地址、端口号、AES算法模式及密钥信息。
本发明的优点在于:
1、利用本发明可保证SRTP密钥协商过程的安全性,从而保证SRTP密钥的安全性;
2、由于提高了SRTP密钥的安全性,SRTP对RTP有效负载的加密及对整个RTP包的认证功能也就得到了保证,大大提高了SRTP的实用性;
3、由于保证了SRTP的加密及认证功能,从而最大程度的增加了RTP有效负载的保密性。
附图说明
图1是本发明基于SRTP的密钥协商方法的流程图;
图2是本发明基于SRTP的密钥协商过程的时序图;
图3是本发明的密钥协商帧格式;
图4是应用本发明的基本拓扑图。
具体实施方式
以下结合附图和实施例对本发明作进一步详细的说明。
图1是本发明基于SRTP的密钥协商方法的流程图,图2是本发明基于SRTP的密钥协商过程的时序图,如图所示,该密钥协商方法包括以下步骤:
S10:发送方检索自身支持的AES算法模式,并对检索出的AES算法模式按照加密有效性进行排序;
由于SRTP使用AES算法,所以本发明的基于SRTP的密钥协商方法同样遵从AES算法(这里的AES算法是指AES加密算法及HMAC_SHA1认证算法)。该AES算法包括三种模式:AES_CM_128_HMAC_SHA1_80、AES_CM_128_HMAC_SHA1_32及F8_128_HMAC_SHA1_80,根据密钥强度的不同,三种模式的加密有效性从高到低排序为:AES_CM_128_HMAC_SHA1_80,AES_CM_128_HMAC_SHA1_32,F8_128_HMAC_SHA1_80(其中,AES_CM_128_HMAC_SHA1_80表示使用带有128位AES的counter模式加密算法以及带有80位的HMAC-SHA1认证算法,AES_CM_128_HMAC_SHA1_32表示使用带有128位AES的counter模式加密算法以及带有32位的HMAC-SHA1认证算法,F8_128_HMAC_SHA1_80表示使用带有128位AES的f8模式加密算法以及带有80位的HMAC-SHA1认证算法)。
S11:针对排序好的AES算法模式,使用随机函数,产生出相应格式的密钥;
随机函数为可随机产生出字母、数字、其他字符及其组合字符串的函数,三种模式可使用相同的随机函数,只需设置不同的随机函数参数,即可产生出不同长度和格式的密钥字符串。
以AES_CM_128_HMAC_SHA1_80为例,对于AES_CM_128加密算法而言,利用随机函数可生成由128位主密钥和112位从密钥组成的240位(30个字节)密钥串,该密钥串经过base64编码后,形成40个字节的协商密钥;对于HMAC_SHA1_80认证算法来说,其中80是以80位为单位,对接收的或者发送的rtp包进行认证,并不产生密钥串,最终,本发明中所涉及到的三种模式的密钥串长度是一致的。
S12:将排序好的AES算法模式及对应各模式产生出的密钥,按照密钥协商帧格式,封装成密钥协商请求消息数据包;
图3是本发明的密钥协商帧格式,如图所示,按照该密钥协商帧格式,密钥协商请求消息中包括消息类型,接收方的IP地址、端口号,发送方的IP地址、端口号,发送方支持且已排序的AES算法模式及各模式对应的密钥。
S13:发送方向接收方发送该密钥协商请求消息;
S14:接收方接收到该密钥协商请求消息,按照协商请求消息中列出的AES算法模式的顺序,检测其是否支持其中一种模式;
检测某种模式时,若接收方同样支持该模式,则不再向下检测,直接按照该模式及随机函数生成相应的密钥;如果不支持该模式,则按照顺序继续检测下一种模式;如果不支持任何一种模式,则不产生任何密钥;
S15:接收方将其支持的AES算法模式及对应生成的密钥,按照密钥协商帧格式封装成回复消息数据包,如果接收方不支持任何AES算法模式,则回复消息数据包中不包含任何算法和密钥的信息;
S16:接收方向发送方发送该回复消息;
S17:发送方接收到该回复消息,如果该回复消息中包含发送方所支持的任何一种AES算法模式及该模式对应的密钥,则密钥协商成功;否则密钥协商失败;
S18:如果密钥协商成功,发送方和接收方使用协商好的AES算法模式,按照SRTP的协议流程进行通信;如果密钥协商失败,发送方和接收方可以按照RTP的协议流程进行通信,也可以结束通信。
以下结合一具体实施例对本发明的基于SRTP的密钥协商方法进行详细说明。
图4是应用本发明的基本拓扑图。如图所示,假设IP话机A与IP话机B要进行基于SRTP的会话。其中,IP话机A的IP地址为192.168.1.2,端口号为20000,其支持三种AES算法模式:即AES_CM_128_HMAC_SHA1_80、AES_CM_128_HMAC_SHA1_32及F8_128_HMAC_SHA1_80;
IP话机B的IP地址为192.168.1.3,端口号为30000,其仅支持一种AES算法模式,即AES_CM_128_HMAC_SHA1_80。
若IP话机A为主叫方,IP话机B为被叫方,按照本发明的密钥协商方法,IP话机A与IP话机B的密钥协商过程如下:
1)IP话机A检索到其共支持三种AES算法模式,并按加密有效性由高到低对这三种AES  算法模式进行排序:算法1为AES_CM_128_HMAC_SHA1_80,算法2为AES_CM_128_HMAC_SHA1_32,算法3为F8_128_HMAC_SHA1_80;
2)对于算法1:AES_CM_128_HMAC_SHA1_80,使用随机函数,产生出密钥1:WVNfX19zZW1jdGwgKCkgewkyMjA7fQp9CnVubGVz|2^20|1:4;
对于算法2:AES_CM_128_HMAC_SHA1_32,使用随机函数,产生出密钥2:MTIzNDU2Nzg5QUJDREUwMTIzNDU2Nzg5QUJjZGVm|2^20|1:4;
对于算法3:F8_128_HMAC_SHA1_80,使用随机函数,产生出密钥3:QUJjZGVmMTIzNDU2Nzg5QUJDREUwMTIzNDU2Nzg5|2^20|2:4。
3)按照密钥协商帧格式,IP话机A生成如下的密钥协商请求消息:
INVITE 192.168.1.330000192.168.1.220000
1AES_CM_128_HMAC_SHA1_80
WVNfX19zZW1jdGwgKCkgewkyMjA7fQp9CnVubGVz|2^20|1:4
2AES_CM_128_HMAC_SHA1_32
MTIzNDU2Nzg5QUJDREUwMTIzNDU2Nzg5QUJjZGVm|2^20|1:4
3F8_128_HMAC_SHA1_80
QUJjZGVmMTIzNDU2Nzg5QUJDREUwMTIzNDU2Nzg5|2^20|2:4
4)IP话机A向IP话机B发送步骤3)中生成的密钥协商请求消息;
5)IP话机B接收到该密钥协商请求消息,将按照算法1、算法2、算法3的顺序检测其支持哪种模式。检测算法1时发现其支持该模式,则不再检测算法2和算法3,而是直接按照算法1及随机函数产生出密钥4:
S1uQCVeeCFCanVmcjkpPywjNWhcYD0mXXtxaVBR|2^20|1:4;
6)按照密钥协商帧格式,IP话机B生成如下的回复消息:
ACK 192.168.1.220000192.168.1.330000
1AES_CM_128_HMAC_SHA1_80
S 1uQCVeeCFCanVmcjkpPywjNWhcYD0mXXtxaVBR|2^20|1:4
7)IP话机B向IP话机A发送步骤6)中生成的回复消息;
8)IP话机A接收到该回复消息,检测到该回复消息中包含其支持的算法1及密钥4,则密钥协商成功;
9)后续IP话机A与IP话机B使用协商好的AES算法模式,按照SRTP的协议流程进行通话。
本发明是通过通信双方对SRTP密钥进行协商,即发送方向接收方发送密钥协商请求消息,该请求消息中携带有发送方支持的AES算法模式及密钥,接收方收到该密钥协商请求消息,检测其支持的AES算法模式并生成相应的密钥,并向发送方发送回复消息,若通信双方有共同支持的算法模式,则密钥协商成功,后续使用协商好的AES算法模式按照SRTP流程通信。本发明可提高SRTP密钥的安全性,进而提高SRTP的安全性和实用性。
以上所述是本发明的较佳实施例及其所运用的技术原理,对于本领域的技术人员来说,在不背离本发明的精神和范围的情况下,任何基于本发明技术方案基础上的等效变换、简单替换等显而易见的改变,均属于本发明保护范围之内。

Claims (5)

1.一种基于SRTP的密钥协商方法,包括以下步骤:
1)发送方检索自身支持的AES算法模式,并对检索出的AES算法模式按照加密有效性进行排序;
2)针对排序好的AES算法模式,使用随机函数,产生出相应格式的密钥;
3)将排序好的AES算法模式及对应各模式产生出的密钥,按照密钥协商帧格式,封装成密钥协商请求消息数据包;
4)发送方向接收方发送该密钥协商请求消息;
5)接收方接收到该密钥协商请求消息,按照协商请求消息中列出的AES算法模式的顺序,检测其是否支持其中一种模式;
6)接收方将其支持的AES算法模式及对应生成的密钥,按照密钥协商帧格式封装成回复消息数据包,如果接收方不支持所述密钥协商请求消息中任何一种AES算法模式,则回复消息数据包中不包含任何算法和密钥的信息;
7)接收方向发送方发送该回复消息;
8)发送方接收到该回复消息,如果该回复消息中包含发送方所支持的任何一种AES算法模式及该模式对应的密钥,则密钥协商成功;否则密钥协商失败。
2.根据权利要求1所述的一种基于SRTP的密钥协商方法,其特征在于:所述的基于SRTP的密钥协商方法,还包括步骤:
9)如果密钥协商成功,发送方和接收方使用协商好的AES算法模式,按照SRTP的协议流程进行通信;如果密钥协商失败,发送方和接收方可以按照RTP的协议流程进行通信,也可以结束通信。
3.根据权利要求2所述的一种基于SRTP的密钥协商方法,其特征在于:所述AES算法是指AES加密算法及HMAC SHA1认证算法。
4.根据权利要求3所述的一种基于SRTP的密钥协商方法,其特征在于:所述AES  算法模式包括AES_CM_128_HMAC_SHA1_80、AES_CM_128_HMAC_SHA1_32及F8_128_HMAC_SHA1_80。
5.根据权利要求4所述的一种基于SRTP的密钥协商方法,其特征在于:所述密钥协商帧格式包括接收方IP地址、端口号,发送方IP地址、端口号、AES算法模式及密钥信息。
CN201210339502.8A 2012-09-13 2012-09-13 一种基于srtp的密钥协商方法 Pending CN103685181A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210339502.8A CN103685181A (zh) 2012-09-13 2012-09-13 一种基于srtp的密钥协商方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210339502.8A CN103685181A (zh) 2012-09-13 2012-09-13 一种基于srtp的密钥协商方法

Publications (1)

Publication Number Publication Date
CN103685181A true CN103685181A (zh) 2014-03-26

Family

ID=50321509

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210339502.8A Pending CN103685181A (zh) 2012-09-13 2012-09-13 一种基于srtp的密钥协商方法

Country Status (1)

Country Link
CN (1) CN103685181A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104135469A (zh) * 2014-07-04 2014-11-05 西南交通大学 一种提高rssp-ii协议安全性的改进方案
CN106131049A (zh) * 2016-08-15 2016-11-16 福建中金在线信息科技有限公司 一种数据传输加解密的方法
CN107846567A (zh) * 2017-11-02 2018-03-27 苏州科达科技股份有限公司 一种srtp能力协商方法及会议终端
CN107872462A (zh) * 2017-11-22 2018-04-03 苏州科达科技股份有限公司 视频会议呼叫方法及装置
CN108040071A (zh) * 2017-12-30 2018-05-15 深圳市潮流网络技术有限公司 一种VoIP音视频加密密钥动态切换方法
CN108833943A (zh) * 2018-04-24 2018-11-16 苏州科达科技股份有限公司 码流的加密协商方法、装置及会议终端

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1564514A (zh) * 2004-03-26 2005-01-12 中兴通讯股份有限公司 无线局域网自组网模式共享密钥认证和会话密钥协商方法
US20050063544A1 (en) * 2001-12-07 2005-03-24 Ilkka Uusitalo Lawful interception of end-to-end encrypted data traffic
CN101102463A (zh) * 2007-07-25 2008-01-09 中国网络通信集团公司 媒体流传输方法
US20080037775A1 (en) * 2006-03-31 2008-02-14 Avaya Technology Llc Verifiable generation of weak symmetric keys for strong algorithms
CN101150849A (zh) * 2006-09-18 2008-03-26 华为技术有限公司 生成绑定管理密钥的方法、系统、移动节点及通信节点
CN101175074A (zh) * 2006-11-01 2008-05-07 华为技术有限公司 一种实现端到端媒体流密钥协商的方法和系统
CN101207477A (zh) * 2006-12-19 2008-06-25 中兴通讯股份有限公司 一种跨域多网守端到端会话密钥协商方法
CN101222320A (zh) * 2007-01-11 2008-07-16 华为技术有限公司 一种媒体流安全上下文协商的方法、系统和装置
CN101267298A (zh) * 2008-05-05 2008-09-17 华为技术有限公司 一种基于媒体流业务的密钥协商方法、装置及系统
US20110010549A1 (en) * 2009-07-07 2011-01-13 Vladimir Kolesnikov Efficient key management system and method

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050063544A1 (en) * 2001-12-07 2005-03-24 Ilkka Uusitalo Lawful interception of end-to-end encrypted data traffic
CN1564514A (zh) * 2004-03-26 2005-01-12 中兴通讯股份有限公司 无线局域网自组网模式共享密钥认证和会话密钥协商方法
US20080037775A1 (en) * 2006-03-31 2008-02-14 Avaya Technology Llc Verifiable generation of weak symmetric keys for strong algorithms
CN101150849A (zh) * 2006-09-18 2008-03-26 华为技术有限公司 生成绑定管理密钥的方法、系统、移动节点及通信节点
CN101175074A (zh) * 2006-11-01 2008-05-07 华为技术有限公司 一种实现端到端媒体流密钥协商的方法和系统
CN101207477A (zh) * 2006-12-19 2008-06-25 中兴通讯股份有限公司 一种跨域多网守端到端会话密钥协商方法
CN101222320A (zh) * 2007-01-11 2008-07-16 华为技术有限公司 一种媒体流安全上下文协商的方法、系统和装置
CN101102463A (zh) * 2007-07-25 2008-01-09 中国网络通信集团公司 媒体流传输方法
CN101267298A (zh) * 2008-05-05 2008-09-17 华为技术有限公司 一种基于媒体流业务的密钥协商方法、装置及系统
US20110010549A1 (en) * 2009-07-07 2011-01-13 Vladimir Kolesnikov Efficient key management system and method

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104135469A (zh) * 2014-07-04 2014-11-05 西南交通大学 一种提高rssp-ii协议安全性的改进方案
CN104135469B (zh) * 2014-07-04 2017-11-24 闫连山 一种提高rssp‑ii协议安全性的方法
CN106131049A (zh) * 2016-08-15 2016-11-16 福建中金在线信息科技有限公司 一种数据传输加解密的方法
CN107846567A (zh) * 2017-11-02 2018-03-27 苏州科达科技股份有限公司 一种srtp能力协商方法及会议终端
CN107846567B (zh) * 2017-11-02 2020-12-29 苏州科达科技股份有限公司 一种srtp能力协商方法及会议终端
CN107872462A (zh) * 2017-11-22 2018-04-03 苏州科达科技股份有限公司 视频会议呼叫方法及装置
CN107872462B (zh) * 2017-11-22 2021-02-26 苏州科达科技股份有限公司 视频会议呼叫方法及装置
CN108040071A (zh) * 2017-12-30 2018-05-15 深圳市潮流网络技术有限公司 一种VoIP音视频加密密钥动态切换方法
CN108040071B (zh) * 2017-12-30 2023-02-17 深圳市潮流网络技术有限公司 一种VoIP音视频加密密钥动态切换方法
CN108833943A (zh) * 2018-04-24 2018-11-16 苏州科达科技股份有限公司 码流的加密协商方法、装置及会议终端

Similar Documents

Publication Publication Date Title
Zhang et al. Efficient and flexible password authenticated key agreement for voice over internet protocol session initiation protocol using smart card
CN104158653B (zh) 一种基于商密算法的安全通信方法
CN103338215B (zh) 基于国密算法建立tls通道的方法
US8639929B2 (en) Method, device and system for authenticating gateway, node and server
US9749318B2 (en) Key management in a communication network
CN104735068B (zh) 基于国密的sip安全认证的方法
US20160365982A1 (en) System and method for secure end-to-end messaging system
CN107888560B (zh) 一种移动智能终端邮件安全传输系统及方法
WO2015180654A1 (zh) 一种保密通信实现方法及装置
CN102065016B (zh) 报文发送和接收方法及装置、报文处理方法及系统
CN110048849B (zh) 一种多层保护的会话密钥协商方法
WO2022022009A1 (zh) 消息处理方法、装置、设备及存储介质
CN102868531B (zh) 一种网络交易认证系统和网络交易认证方法
IL202726A (en) A system and method for creating and sending scattered and multi-purpose information
CN103095696A (zh) 一种适用于用电信息采集系统的身份认证和密钥协商方法
CN103685181A (zh) 一种基于srtp的密钥协商方法
US11558361B2 (en) Communication method between mesh network and cloud server, mesh network system and node device thereof
CN102752269A (zh) 基于云计算的身份认证的方法、系统及云端服务器
CN101039181B (zh) 防止通用鉴权框架中服务功能实体受攻击的方法
CN101938500A (zh) 源地址验证方法及系统
CN101790160A (zh) 安全协商会话密钥的方法及装置
CN104753937A (zh) 基于sip的安全认证注册的方法
CN111970699A (zh) 一种基于ipk的终端wifi登陆认证方法以及系统
CN103220279A (zh) 数据安全传输的方法和系统
CN106549858A (zh) 一种基于标识密码的即时通信加密方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140326

WD01 Invention patent application deemed withdrawn after publication