CN109274490B - Srtp码流主密钥更新方法、系统、设备及存储介质 - Google Patents
Srtp码流主密钥更新方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN109274490B CN109274490B CN201811121366.9A CN201811121366A CN109274490B CN 109274490 B CN109274490 B CN 109274490B CN 201811121366 A CN201811121366 A CN 201811121366A CN 109274490 B CN109274490 B CN 109274490B
- Authority
- CN
- China
- Prior art keywords
- master key
- communication party
- key
- updating
- identifier
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明提供了一种SRTP码流主密钥更新方法、系统、设备及存储介质,所述方法包括如下步骤:第一通信方与第二通信方协商得到第一主密钥和第二主密钥,其中,当主密钥标识符为第一预设值时,两个通信方之间采用第一主密钥加密码流,当主密钥标识符为第二预设值时,两个通信方之间采用第二主密钥加密码流;第一通信方生成新的主密钥,采用新的主密钥更新自身存储的第一主密钥,并将主密钥标识符置为第二预设值;第一通信方将新的主密钥发送至第二通信方;第一通信方接收到第二通信方的更新密钥成功通知时,将主密钥标识符置为第一预设值。本发明仅需要协商两个主密钥,通过切换主密钥实现更新主密钥的功能,且主密钥更新阶段不会影响正常数据传输。
Description
技术领域
本发明涉及数据传输技术领域,尤其涉及一种SRTP码流主密钥更新方法、系统、设备及存储介质。
背景技术
RTP(Real-time Transport Protocol,实时传输协议)提供了互联网上传递音频和视频的标准数据包格式,为数据提供了具有实时特征的端对端传送服务。SRTP(SecureReal-time Transport Protocol,安全实时传输协议)是在RTP基础上定义的一个更安全的传输协议,旨在为单播或多播应用程序中的实时传输协议的数据提供加密、消息认证、完整性保证和重放保护。主密钥(Master Key,MK)是SRTP密钥协商时通信双方约定的一个随机数,需要保密,是用来生成会话密钥重要参数。
SRTP可以用来传输视频会议数据,现有技术中,SRTP在进行密钥协商时仅协商出一个主密钥,如果视频会议持续时间较长则存在主密钥被破解的风险,造成视频会议数据意外泄露。还有一种方式,是SRTP在进行密钥协商时协商出多个主密钥,需要通过MKI(Master Key Identifier)指示器的标志位和MKI值来指定具体使用哪一个主密钥。此种方式也具有一些缺陷:密钥协商时,非对称加解密的信息变多(多个主密钥),增加密钥协商的时间,而且主密钥的个数也没有一个合理的值;需要在SRTP包中增加MKI字段(4字节),增加网络负载。
发明内容
针对现有技术中的问题,本发明的目的在于提供一种SRTP码流主密钥更新方法、系统、设备及存储介质,仅需要协商两个主密钥,通过切换主密钥实现更新主密钥的功能,且主密钥更新阶段不会影响正常数据传输。
本发明实施例提供一种SRTP码流主密钥更新方法,包括如下步骤:
第一通信方与第二通信方协商得到第一主密钥和第二主密钥,如果主密钥标识符为第一预设值,两个通信方之间采用第一主密钥加密码流,如果主密钥标识符为第二预设值,两个通信方之间采用第二主密钥加密码流;
第一通信方生成新的主密钥,采用新的主密钥更新自身存储的第一主密钥,并将主密钥标识符置为第二预设值;
第一通信方将新的主密钥发送至第二通信方;
第一通信方接收到第二通信方的更新密钥成功通知时,将主密钥标识符置为第一预设值。
可选地,所述第一通信方与第二通信方协商得到第一主密钥和第二主密钥,包括如下步骤:
所述第一通信方基于SSL/TLS协议与第二通信方协商得到第一主密钥和第二主密钥。
可选地,所述第一通信方将新的主密钥发送至第二通信方,包括如下步骤:
第一通信方采用第二主密钥加密所述新的主密钥,并根据加密后的新的主密钥生成更新主密钥报文;
第一通信方将所述更新主密钥报文发送至第二通信方。
可选地,所述第一通信方将新的主密钥发送至第二通信方,包括如下步骤:
第一通信方采用第二主密钥加密新的主密钥,得到加密后的新的主密钥;
第一通信方采用与第二通信方协商的认证算法计算新的主密钥的摘要,得到摘要值;
第一通信方根据加密后的新的主密钥和对应的摘要值生成更新主密钥报文;
第一通信方将所述更新主密钥报文发送至第二通信方。
可选地,所述第一通信方接收到第二通信方的更新密钥成功通知时,将主密钥标识符置为第一预设值,包括如下步骤:
第一通信方判断预设时间内是否接收到第二通信方的更新密钥成功通知;
如果是,则所述第一通信方将主密钥标识符置为第一预设值;
否则,所述第一通信方判断重发次数是否达到预设重发次数阈值,如果未达到预设重发次数阈值,则所述第一通信方重新发送新的主密钥至第二通信方。
可选地,如果第一通信方的重发次数已达到预设重发次数阈值且仍未接收到第二通信方的更新密钥成功通知,则第一通信方停止发送此次更新的主密钥,且主密钥标识符保持为第二预设值。
可选地,当前不存在正在进行中的主密钥更新任务,且当前不存在更新失败的主密钥更新任务时,所述主密钥标识符置为第一预设值。
本发明实施例还提供一种SRTP码流主密钥更新系统,所述系统包括第一通信方和第二通信方,其中,第一通信方和第二通信方协商得到第一主密钥和第二主密钥,第一主密钥和第二主密钥分别对应于主密钥标识符的第一预设值和第二预设值;
所述第一通信方包括:
主密钥存储模块,用于存储第一主密钥和第二主密钥;
主密钥生成模块,用于生成新的主密钥,采用新的主密钥更新自身存储的第一主密钥;
主密钥标识符变更模块,用于在生成新的主密钥时,将主密钥标识符置为第二预设值,以及接收到第二通信方的更新密钥成功通知时,将主密钥标识符置为第一预设值;
数据传输模块,用于将新的主密钥发送至第二通信方,且接收第二通信方返回的更新密钥状态通知。
本发明实施例还提供一种SRTP码流主密钥更新设备,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行所述的SRTP码流主密钥更新方法的步骤。
本发明实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被执行时实现所述的SRTP码流主密钥更新方法的步骤。
本发明所提供的SRTP码流主密钥更新方法、系统、设备及存储介质具有下列优点:
本发明仅需要协商两个主密钥即可,通过切换主密钥可以实现更新主密钥的功能,且不受协商时主密钥的数量影响;仅在更新主密钥阶段需要启动主密钥标识符字段,减小了网络负载;在第一主密钥更新时,采用第二主密钥负责正常的SRTP码流传输,保证主密钥更新阶段数据的正常传输;本发明可以应用于视频会议中不间断的视频码流传输,也可以更广泛地应用于其他领域中的数据端到端传输。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。
图1是本发明一实施例的SRTP码流主密钥更新方法的流程图;
图2是本发明一实施例的信令传输和SRTP码流传输的协议层分布示意图;
图3是本发明一具体实例的SRTP码流主密钥更新的流程图;
图4是本发明一实施例的SRTP码流主密钥更新系统的结构示意图;
图5是本发明一实施例的SRTP码流主密钥更新设备的结构示意图;
图6是本发明一实施例的计算机存储介质的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式;相反,提供这些实施方式使得本发明将全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的结构,因而将省略对它们的重复描述。
如图1所示,本发明实施例提供一种SRTP码流主密钥更新方法,包括如下步骤:
S100:第一通信方与第二通信方协商得到第一主密钥和第二主密钥,第一主密钥和第二主密钥分别对应于主密钥标识符的第一预设值和第二预设值,即如果主密钥标识符为第一预设值,两个通信方之间采用第一主密钥加密码流,如果主密钥标识符为第二预设值,两个通信方之间采用第二主密钥加密码流;
S200:第一通信方生成新的主密钥,采用新的主密钥更新自身存储的第一主密钥,并将主密钥标识符置为第二预设值,此时两个通信方之间采用第二主密钥加密码流;
S300:第一通信方将新的主密钥发送至第二通信方;
S400:第一通信方接收到第二通信方的更新密钥成功通知时,将主密钥标识符置为第一预设值,之后,两个通信方采用第一主密钥即刚刚更新成功的主密钥加密码流。
因此,本发明只需要协商两个主密钥:第一主密钥MK1和第二主密钥MK2即可,减少了协商主密钥时的数据,通过切换第一主密钥MK1和第二主密钥MK2即可以达到更新主密钥的功能,并且不受协商时主密钥的数量影响,仅在更新主密钥阶段需要启动主密钥标识符MKI字段,减小了网络负载。在第一主密钥MK1更新时,采用第二主密钥MK2保证第一通信方和第二通信方之间的正常通信,使得数据传输不受主密钥更新影响。
如图2所示,在该实施例中,所述第一通信方基于SSL/TLS协议与第二通信方协商得到第一主密钥和第二主密钥。具体地,在主密钥协商过程中,将主密钥封装在信令报文中,在SSL/TLS通道中进行协商。SSL/TLS通道产生会话密钥,保护信令报文的传输安全性。由于本发明仅需要协商两个主密钥,也减少了在SSL/TLS通道中协商主密钥时需要进行加解密的数据。其中,SSL是安全套接层(secure sockets layer),TLS是SSL的继任者,叫传输层安全(transport layer security)。SSL/TLS协议是为网络通信提供安全及数据完整性的一种安全协议。
SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层:SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持;SSL握手协议(SSLHandshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。因此,SSL/TLS可以很好地保障通信双方在主密钥协商过程中,主密钥传输的安全性和准确性,避免了现有技术中将加密算法和对面密钥直接以明文报文发送的危险性。
如图2所示,SSL/TLS协议位于信令传输的HTTP协议与TCP协议之间,SRTP报文通过HTTP协议和IP协议之间的UDP协议传输。
在第一通信方将新的主密钥发送给第二通信方时,采用了新的传输报文。原SRTP报文的格式如下:
UDP | SRTP | …… | payload |
而更新主密钥报文的格式如下:
UDP | ReConfer | …… | Msg |
第一通信方发起更新请求时:Msg=Encryptmk2(NewMK)
第二通信方在响应更新请求时,返还的更新密钥状态通知中:
Msg=Encryptmk2(更新成功或失败)
进一步地,在该实施例中,所述第一通信方将新的主密钥发送至第二通信方时,第一通信方首先采用第二主密钥MK2加密所述新的主密钥,并根据加密后的新的主密钥NewMK生成更新主密钥报文;第一通信方将所述更新主密钥报文发送至第二通信方。
更新主密钥报文的关键词为ReConfer(重协商),第二通信方接收到更新主密钥报文后,可以使用第二主密钥解密得到的新的主密钥。进一步地,在第一通信方采用第二主密钥加密新的主密钥,得到加密后的新的主密钥之后,第一通信方采用与第二通信方协商的认证算法计算新的主密钥的摘要,得到摘要值。
第一通信方根据加密后的新的主密钥和对应的摘要值生成更新主密钥报文,然后将所述更新主密钥报文发送至第二通信方。增加摘要值之后的更新主密钥报文的格式如下:
UDP | ReConfer | …… | Digest | Msg |
第二通信方在使用第二主密钥解密得到新的主密钥后,可以将解密得到的新的主密钥进行摘要计算,将计算出的摘要值与接收到的摘要值进行比对,验证第二通信方解密得到的新的主密钥是否正确,从而更好地保障新的主密钥传输的安全性和准确性。
在该实施例中,所述第一通信方接收到第二通信方的更新密钥成功通知时,将主密钥标识符置为第一预设值,包括如下步骤:
第一通信方判断预设时间内是否接收到第二通信方的更新密钥成功通知;
如果是,则所述第一通信方将主密钥标识符置为第一预设值;
否则,所述第一通信方判断重发次数是否达到预设重发次数阈值,如果未达到预设重发次数阈值,则所述第一通信方重新发送新的主密钥至第二通信方。
在该实施例中,如果第一通信方的重发次数已达到预设重发次数阈值且仍未接收到第二通信方的更新密钥成功通知,则第一通信方停止发送此次更新的主密钥,且主密钥标识符保持为第二预设值,直到下一次新的主密钥更新成功为止。
在该实施例中,当前不存在正在进行中的主密钥更新任务,且当前不存在更新失败的主密钥更新任务时,所述主密钥标识符置为第一预设值,即第一通信方和第二通信方之间采用第一主密钥加密码流。
如图3所示,为本发明一具体实例的SRTP码流主密钥更新方法的流程图。下面分别对各个步骤进行介绍:
S1:第一通信方和第二通信方协商得到第一主密钥和第二主密钥;
S2:此时,由于没有发起新的主密钥更新任务,也没有正在进行中的或更新失败的主密钥更新任务,将主密钥标识符MKI置为0,即第一通信方和第二通信方之间采用第一主密钥加密码流;
S3:第一通信方生成新的主密钥,将主密钥标识符置为1,即当前第一通信方发起了新的主密钥更新任务,两个通信方之间改为采用第二主密钥加密码流,第一通信方使用第二主密钥以及与第二通信方协商的加密算法和模式来加密新的主密钥,将加密后的主密钥放在更新密钥报文中的Msg字段,从而生成更新密钥报文;第一通信方加密新的主密钥时,有两种方法:
(1)加密的时候设置padding(加密中的填充),摘要值字段置空;
(2)第一通信方在发送更新密钥报文时,使用协商的认证算法(如SHA256、SM3等等)来对新的主密钥进行摘要计算,将摘要值放在Digest字段。
S4:第一通信方以更新密钥报文的形式,通过SRTP协议将新的主密钥发送至第二通信方,同时第一通信方设置一个定时器,第二通信方接收到更新密钥报文之后,使用第二主密钥和协商的加密算法和模式解密报文中的Msg字段得到新的主密钥,为了验证解密后的数据是否正确,有两种方法:
(1)Digest字段为空,通过padding的方式检查解密结果的正确性;
(2)Digest字段不为空,第二通信方将解密出来的新的主密钥使用同样的算法进行摘要计算,比较两个摘要值是否相同,如果相同则表示解密成功,否则表示解密失败;
第二通信方成功地解密得到新的主密钥后,使用新的主密钥替换第一主密钥,此时第二通信方发出响应更新主密钥消息,即更新密钥状态通知,Msg消息为成功;解密失败后,第一主密钥保持不变,第二通信方发出更新密钥状态通知,Msg消息为失败。
S5:第一通信方判断定时器设定的预设时间内是否接收到第二通信方返回的更新密钥状态通知;
S6:如果接收到,则第一通信方进一步判断更新密钥状态通知中Msg的值;
S7:如果是成功,则说明本轮主密钥更新成功,将主密钥标识符置为0,之后第一通信方和第二通信方继续使用第一主密钥即刚刚更新的主密钥加密码流;
S8:如果没有接收到,则说明发生了丢包,可能是第一通信方发送的更新密钥报文丢包,也可能是第二通信方返回的更新密钥状态通知丢包,判断是否达到重发次数阈值,如果没有达到,则继续步骤S4;
S9:如果达到重发次数阈值仍然没有接收到第二通信方返回的密钥更新成功的通知,或者第二通信方返回的更新密钥状态通知中为失败,则停止发送更新密钥报文,本轮密钥更新失败,后续还是指定第二主密钥来进行码流传输的保护,直到下一次主密钥更新成功为止。
第一通知方的定时器的时间和重新发送更新密钥报文的最大次数可以灵活设置。第一通信方发起主密钥更新任务的时间周期也可以根据需要灵活设置。进一步地,第二通信方不仅可以被动地接收主密钥更新任务,也可以根据需要主动发起主密钥更新任务,均属于本发明的保护范围之内。
如图4所示,本发明实施例还提供一种SRTP码流主密钥更新系统,所述系统包括第一通信方M100和第二通信方M200,其中,第一通信方和第二通信方协商得到第一主密钥和第二主密钥,第一主密钥和第二主密钥分别对应于主密钥标识符的第一预设值和第二预设值;
所述第一通信方包括:
主密钥存储模块M110,用于存储第一主密钥和第二主密钥;
主密钥生成模块M120,用于生成新的主密钥,采用新的主密钥更新自身存储的第一主密钥;
主密钥标识符变更模块M130,用于在生成新的主密钥时,将主密钥标识符置为第二预设值,以及接收到第二通信方的更新密钥成功通知时,将主密钥标识符置为第一预设值;
数据传输模块M140,用于将新的主密钥发送至第二通信方,且接收第二通信方返回的更新密钥状态通知,更新密钥状态通知包括两种情况:更新密钥成功通知和更新密钥失败通知。
与第一通信方对应地,第二通信方可以包括主密钥存储模块,用于存储第二通信方的第一主密钥和第二主密钥,并且根据第一通信方发送的更新密钥报文更新存储的第一主密钥,第二通信方还可以包括数据传输模块,接收更新密钥报文,并且将更新密钥状态通知返回给第一通信方。进一步地,第二通信方还可以包括主密钥生成模块和主密钥标识符变更模块,由第二通信方主动发起主密钥更新任务,而第一通信方被动接收主密钥更新任务进行第一主密钥更新,第二通信方在主动发起主密钥更新任务时,将主密钥标识符置为第二预设值,在接收到第一通信方返回的更新密钥成功通知时,将主密钥标识符置为第一预设值。
本发明实施例还提供一种SRTP码流主密钥更新设备,包括处理器;存储器,其中存储有所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行所述的SRTP码流主密钥更新方法的步骤。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图5来描述根据本发明的这种实施方式的电子设备600。图5显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的步骤。
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
本发明实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被执行时实现所述的SRTP码流主密钥更新方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。
参考图6所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上所述,与现有技术相比,本发明所提供的SRTP码流主密钥更新方法、系统、设备及存储介质具有下列优点:
本发明仅需要协商两个主密钥即可,通过切换主密钥可以实现更新主密钥的功能,且不受协商时主密钥的数量影响;仅在更新主密钥阶段需要启动主密钥标识符字段,减小了网络负载;在第一主密钥更新时,采用第二主密钥负责正常的SRTP码流传输,保证主密钥更新阶段数据的正常传输;本发明可以应用于视频会议中不间断的视频码流传输,也可以更广泛地应用于其他领域中的数据端到端传输。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (7)
1.一种SRTP码流主密钥更新方法,其特征在于,包括如下步骤:
第一通信方与第二通信方协商得到第一主密钥和第二主密钥,如果主密钥标识符为第一预设值,两个通信方之间采用第一主密钥加密码流,如果主密钥标识符为第二预设值,两个通信方之间采用第二主密钥加密码流;
第一通信方生成新的主密钥,采用新的主密钥更新自身存储的第一主密钥,并将主密钥标识符置为第二预设值;
第一通信方将新的主密钥发送至第二通信方;
第一通信方接收到第二通信方的更新密钥成功通知时,将主密钥标识符置为第一预设值;
所述第一通信方将新的主密钥发送至第二通信方,包括如下步骤:
第一通信方采用第二主密钥加密新的主密钥,得到加密后的新的主密钥;
第一通信方采用与第二通信方协商的认证算法计算新的主密钥的摘要,得到摘要值;
第一通信方根据加密后的新的主密钥和对应的摘要值生成更新主密钥报文;
第一通信方将所述更新主密钥报文发送至第二通信方;
其中,当前不存在正在进行中的主密钥更新任务,且当前不存在更新失败的主密钥更新任务时,所述主密钥标识符置为第一预设值,仅在更新主密钥阶段启动主密钥标识符字段。
2.根据权利要求1所述的SRTP码流主密钥更新方法,其特征在于,所述第一通信方与第二通信方协商得到第一主密钥和第二主密钥,包括如下步骤:
所述第一通信方基于SSL/TLS协议与第二通信方协商得到第一主密钥和第二主密钥。
3.根据权利要求1所述的SRTP码流主密钥更新方法,其特征在于,所述第一通信方接收到第二通信方的更新密钥成功通知时,将主密钥标识符置为第一预设值,包括如下步骤:
第一通信方判断预设时间内是否接收到第二通信方的更新密钥成功通知;
如果是,则所述第一通信方将主密钥标识符置为第一预设值;
否则,所述第一通信方判断重发次数是否达到预设重发次数阈值,如果未达到预设重发次数阈值,则所述第一通信方重新发送新的主密钥至第二通信方。
4.根据权利要求3所述的SRTP码流主密钥更新方法,其特征在于,如果第一通信方的重发次数已达到预设重发次数阈值且仍未接收到第二通信方的更新密钥成功通知,则第一通信方停止发送此次更新的主密钥,且主密钥标识符保持为第二预设值。
5.一种SRTP码流主密钥更新系统,其特征在于,应用于权利要求1至4中任一项所述的SRTP码流主密钥更新方法,所述系统包括第一通信方和第二通信方,其中,第一通信方和第二通信方协商得到第一主密钥和第二主密钥,第一主密钥和第二主密钥分别对应于主密钥标识符的第一预设值和第二预设值;
所述第一通信方包括:
主密钥存储模块,用于存储第一主密钥和第二主密钥;
主密钥生成模块,用于生成新的主密钥,采用新的主密钥更新自身存储的第一主密钥;
主密钥标识符变更模块,用于在生成新的主密钥时,将主密钥标识符置为第二预设值,以及接收到第二通信方的更新密钥成功通知时,将主密钥标识符置为第一预设值;
数据传输模块,用于将新的主密钥发送至第二通信方,且接收第二通信方返回的更新密钥状态通知。
6.一种SRTP码流主密钥更新设备,其特征在于,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至4中任一项所述的SRTP码流主密钥更新方法的步骤。
7.一种计算机可读存储介质,用于存储程序,其特征在于,所述程序被处理器执行时实现权利要求1至4中任一项所述的SRTP码流主密钥更新方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811121366.9A CN109274490B (zh) | 2018-09-25 | 2018-09-25 | Srtp码流主密钥更新方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811121366.9A CN109274490B (zh) | 2018-09-25 | 2018-09-25 | Srtp码流主密钥更新方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109274490A CN109274490A (zh) | 2019-01-25 |
CN109274490B true CN109274490B (zh) | 2021-12-17 |
Family
ID=65198936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811121366.9A Active CN109274490B (zh) | 2018-09-25 | 2018-09-25 | Srtp码流主密钥更新方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109274490B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051641A (zh) * | 2013-01-17 | 2013-04-17 | 中国银行股份有限公司 | 多客户端密钥更新方法和系统及信息安全传输方法 |
CN105610783A (zh) * | 2015-11-05 | 2016-05-25 | 珠海格力电器股份有限公司 | 一种数据传输方法及物联网系统 |
CN106658493A (zh) * | 2016-10-17 | 2017-05-10 | 东软集团股份有限公司 | 密钥管理方法、装置和系统 |
CN106803783A (zh) * | 2015-11-26 | 2017-06-06 | 深圳市中兴微电子技术有限公司 | 一种加密解密方法、加密解密装置及数据传输系统 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100591005C (zh) * | 2004-01-17 | 2010-02-17 | 神州亿品科技有限公司 | 无线局域网中组密钥的协商及更新方法 |
CN101162997B (zh) * | 2007-08-09 | 2010-06-02 | 四川长虹电器股份有限公司 | 一种电子设备接口间广播共享密钥的更新方法 |
CN101562521B (zh) * | 2009-05-27 | 2011-06-22 | 四川长虹电器股份有限公司 | 一种密钥更新方法 |
CN101938742A (zh) * | 2009-06-30 | 2011-01-05 | 华为技术有限公司 | 一种用户标识模块反克隆的方法、装置及系统 |
US8630416B2 (en) * | 2009-12-21 | 2014-01-14 | Intel Corporation | Wireless device and method for rekeying with reduced packet loss for high-throughput wireless communications |
CN106533659A (zh) * | 2015-09-14 | 2017-03-22 | 北京中质信维科技有限公司 | 一种密钥更新方法和系统 |
EP3229398A1 (en) * | 2016-04-08 | 2017-10-11 | Gemalto Sa | A method for updating a long-term key used to protect communications between a network and a remote device |
CN108270739B (zh) * | 2016-12-30 | 2021-01-29 | 华为技术有限公司 | 一种管理加密信息的方法及装置 |
CN106973310A (zh) * | 2017-04-13 | 2017-07-21 | 中国联合网络通信集团有限公司 | 一种iptv系统中流媒体的播放方法、epg服务器及cdn服务器 |
CN107017986B (zh) * | 2017-06-05 | 2020-05-22 | 深圳市成为信息技术有限公司 | 一种密钥更新方法及系统 |
CN107948676A (zh) * | 2017-12-08 | 2018-04-20 | 苏州科达科技股份有限公司 | 视频数据传输方法及装置 |
CN108494722A (zh) * | 2018-01-23 | 2018-09-04 | 国网浙江省电力有限公司电力科学研究院 | 智能变电站通信报文完整性保护方法 |
CN108449756B (zh) * | 2018-06-29 | 2020-06-05 | 北京邮电大学 | 一种网络密钥更新的系统、方法及装置 |
-
2018
- 2018-09-25 CN CN201811121366.9A patent/CN109274490B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051641A (zh) * | 2013-01-17 | 2013-04-17 | 中国银行股份有限公司 | 多客户端密钥更新方法和系统及信息安全传输方法 |
CN105610783A (zh) * | 2015-11-05 | 2016-05-25 | 珠海格力电器股份有限公司 | 一种数据传输方法及物联网系统 |
CN106803783A (zh) * | 2015-11-26 | 2017-06-06 | 深圳市中兴微电子技术有限公司 | 一种加密解密方法、加密解密装置及数据传输系统 |
CN106658493A (zh) * | 2016-10-17 | 2017-05-10 | 东软集团股份有限公司 | 密钥管理方法、装置和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109274490A (zh) | 2019-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8761401B2 (en) | System and method for secure key distribution to manufactured products | |
US7978858B2 (en) | Terminal device, group management server, network communication system, and method for generating encryption key | |
EP2056521A1 (en) | A method, system and device for achieving multi-party communication security | |
CN106357690B (zh) | 一种数据传输方法、数据发送装置及数据接收装置 | |
CN109981271B (zh) | 一种网络多媒体安全防护加密方法 | |
US20220103376A1 (en) | Method and apparatus for realizing secure signature | |
JP2014530554A (ja) | グループメンバによるグループ秘密の管理 | |
CN108667820B (zh) | 共享电子白板加密方法、系统、电子设备、存储介质 | |
US11716367B2 (en) | Apparatus for monitoring multicast group | |
JP2023533319A (ja) | ファームウェアデータ検証装置及び方法、並びにファームウェア更新装置、方法、及びシステム | |
CN114500064B (zh) | 一种通信安全验证方法、装置、存储介质及电子设备 | |
JP2012100206A (ja) | 暗号通信中継システム、暗号通信中継方法および暗号通信中継用プログラム | |
CN115567205A (zh) | 采用量子密钥分发实现网络会话数据流加解密方法及系统 | |
CN111277802B (zh) | 视频码流的处理方法、装置、设备及存储介质 | |
KR20190040443A (ko) | 스마트미터의 보안 세션 생성 장치 및 방법 | |
CN114205552A (zh) | 码流加密方法、码流解密方法、装置、电子设备和介质 | |
CN109274490B (zh) | Srtp码流主密钥更新方法、系统、设备及存储介质 | |
CN111884988A (zh) | 数据的安全传输方法 | |
EP2713576B1 (en) | Method and device for processing streaming media content | |
CN114124367B (zh) | 一种数据传输方法、装置及存储介质 | |
CN113660285A (zh) | 多媒体会议在网终端管控方法、装置、设备及存储介质 | |
CN108809632B (zh) | 一种量子安全套接层装置及系统 | |
JP2022012202A (ja) | 第1の通信装置、第2の通信装置、システム、方法、及びプログラム | |
CN114448609A (zh) | 组密钥的管理方法、装置、相关设备及存储介质 | |
WO2019200690A1 (zh) | 数据保护方法、服务器及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |