CN101958907A - 一种传输密钥的方法、系统和装置 - Google Patents
一种传输密钥的方法、系统和装置 Download PDFInfo
- Publication number
- CN101958907A CN101958907A CN2010105055892A CN201010505589A CN101958907A CN 101958907 A CN101958907 A CN 101958907A CN 2010105055892 A CN2010105055892 A CN 2010105055892A CN 201010505589 A CN201010505589 A CN 201010505589A CN 101958907 A CN101958907 A CN 101958907A
- Authority
- CN
- China
- Prior art keywords
- video monitoring
- client terminal
- key
- pki
- monitoring client
- 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
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例公开了一种传输密钥的方法、系统和装置,用以解决现有技术中存在的在网络化视频监控系统中,密钥传输的安全性比较低,从而降低了视频监控数据的安全性的问题。该方法包括:视频监控前端接收来自视频监控客户端的公钥,其中公钥是视频监控客户端根据不对称加密算法生成的;视频监控前端使用公钥对用于加密视频监控数据的对称密钥进行加密,得到密钥密文,并将密钥密文发送给视频监控客户端。采用本发明实施例的方法,非法用户即使在传输过程中截获密钥密文,也很难解密得到对称密钥。因此能够提高了传输密钥的安全性,也就提高了在网络化视频监控系统中传输视频监控数据的安全性。
Description
技术领域
本发明涉及多媒体通信领域,特别涉及一种传输密钥的方法、系统和装置。
背景技术
随着数字化和网络化步伐的加快,视频监控系统已经逐步从单纯的闭路监控系统转移到分布式的网络化视频监控系统(IP Video Surveillance:IPVS)。IPVS以标准Internet(因特网)为传输媒介,基于国际标准的传输控制协议(Transmission Control Protocol:TCP)/网际协议(Internet Protocol:IP),覆盖范围广,适应目前视频监控系统针对远程、实时、集中的控制需求,且在多媒体应用中数字化、网络化、智能化、系统化及超大规模组网能力等方面,优势也相当突出。
由于Internet是一个高度开放的网络,也是一个不安全的网络,任何个人或组织都可以接入到该网络中,这使得视频监控数据面临非法截获和非法访问的危险,对视频监控数据的安全传输提出了严峻的挑战。为了提高视频监控数据的安全性,人们想到对视频监控数据进行加密后再传输。
对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密的密钥一起经过特殊加密算法处理后,使其变成复杂的密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,即发信方使用这个密钥对数据进行加密,收信方使用这个密钥对数据进行解密,这就要求解密方事先必须知道加密的密钥。对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。不足之处是,交易双方都使用同样密钥,安全性不是很高。此外,用户每次使用对称加密算法时,都需要使用其他人不知道的惟一密钥,这会使得发收信双方所拥有的密钥数量成几何级数增长,密钥管理成为视频监控系统的负担。对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。在计算机专网系统中广泛使用的对称加密算法有数据加密算法(Data Encryption Algorithm,DEA)、国际数据加密算法(International Data Encryption Algorithm,IDEA)和高级加密标准算法(Advanced Encryption Standard,AES)。
目前,在网络化视频监控系统中,一种传输视频监控数据的方法是由视频监控前端(发信方)将视频监控数据采用对称加密算法加密后,将加密后的视频监控数据和密钥一起传给视频监控客户端(收信方),这种传输方法的不足在于:虽然传输的视频监控数据进行了加密,却忽略了对密钥的安全传输,即采用明文传输密钥,一旦密钥被截获,则视频监控数据的加密变得毫无意义。
综上所述,在网络化视频监控系统中,密钥传输的安全性比较低,从而降低了视频监控数据的安全性。
发明内容
本发明实施例提供一种传输密钥的方法、系统和装置,用以解决现有技术中存在的在网络化视频监控系统中,密钥传输的安全性比较低,从而降低了视频监控数据的安全性的问题。
本发明实施提供的一种传输密钥的方法,包括:
视频监控前端接收来自视频监控客户端的公钥(publickey),其中所述公钥是视频监控客户端根据不对称加密算法生成的;
所述视频监控前端使用公钥对用于加密视频监控数据的对称密钥进行加密,得到密钥密文,并将密钥密文发送给所述视频监控客户端。
所述视频监控前端将密钥密文发送给视频监控客户端之前,还包括:
所述视频监控前端通过Digest(摘要)认证确定所述视频监控客户端是合法视频监控客户端。
所述视频监控前端接收来自视频监控客户端的公钥的同时,对所述视频监控客户端进行Digest认证;
其中,在所述Digest认证过程中用于计算Response(响应)值的认证密码是根据所述视频监控客户端的用户登录密码和所述公钥生成的。
本发明实施例提供的另一种传输密钥的方法,包括:
视频监控客户端根据不对称加密算法生成公钥和私钥,将所述公钥发送给视频监控前端;
所述视频监控客户端接收来自所述视频监控前端的密钥密文,用与公钥对应的私钥解密密钥密文,得到对称密钥;
其中,所述密钥密文是所述视频监控前端对用于加密视频监控数据的对称密钥进行加密后得到的。
所述视频监控客户端接收所述密钥密文之前,还包括:
所述视频监控客户端与所述视频监控前端进行Digest认证。
所述视频监控客户端向所述视频监控前端发送公钥的同时,与视频监控前端进行Digest认证;
其中,在所述Digest认证过程中用于计算Response值的认证密码是根据所述视频监控客户端的用户登录密码和所述公钥生成的。
本发明实施提供的一种传输密钥的系统,包括:
视频监控前端,用于使用接收的公钥对用于加密视频监控数据的对称密钥进行加密,得到密钥密文,并发送所述密钥密文;
视频监控客户端,用于根据不对称加密算法产生公钥和私钥,将所述公钥发送给所述视频监控前端,在收到来自所述视频监控前端的密钥密文后,用与所述公钥对应的私钥解密密钥密文,得到对称密钥。
所述视频监控前端还用于:
对所述视频监控客户端进行Digest认证,并且在所述视频监控客户端通过Digest认证后,确定所述视频监控客户端为合法视频监控客户端,发送所述密钥密文;
所述视频监控客户端还用于:
与所述视频监控前端进行Digest认证。
所述视频监控前端具体用于:
在接收所述公钥的同时,对所述视频监控客户端进行Digest认证;
其中,在所述Digest认证过程中用于计算Response值的认证密码是根据所述视频监控客户端的用户登录密码和所述公钥生成的。
本发明实施提供的第一种传输密钥的装置,所述装置包括:
公钥接收模块,用于接收来自视频监控客户端的公钥,其中所述公钥是视频监控客户端根据不对称加密算法产生的;
公钥加密模块,用于使用公钥对用于加密视频监控数据的对称密钥进行加密,得到密钥密文;
发送模块,用于将所述密钥密文发送给视频监控客户端。
所述装置还包括:
第一认证模块,用于对所述视频监控客户端进行Digest认证,并且在所述视频监控客户端通过Digest认证后,确定所述视频监控客户端为合法视频监控客户端,触发所述发送模块将所述密钥密文发送给视频监控客户端。
所述第一认证模块具体用于:
在接收来自视频监控客户端的公钥的同时,对所述视频监控客户端进行Digest认证;
其中,在所述Digest认证过程中用于计算Response值的认证密码是根据所述视频监控客户端的用户登录密码和所述公钥生成的。
本发明实施提供的第二种传输密钥的装置,所述装置包括:
公钥发送模块,用于根据不对称加密算法生成公钥和私钥,将所述公钥发送给视频监控前端;
接收模块,用于接收来自所述视频监控前端的密钥密文,用与公钥对应的私钥解密密钥密文得到对称密钥;
其中,密钥密文是所述视频监控前端对用于加密视频监控数据的对称密钥进行加密后得到的。
所述装置还包括:
第二认证模块,用于与所述视频监控前端进行Digest认证。
所述第二认证模块具体用于:
在公钥发送模块将公钥发送给所述视频监控前端的同时,与所述视频监控前端进行Digest认证;
其中,在所述Digest认证过程中用于计算Response值的认证密码是根据所述装置的用户登录密码和所述公钥生成的。
本发明实施例提供的一种视频监控前端,包括上述第一种传输密钥的装置。
本发明实施例提供的一种视频监控客户端,包括上述第二种传输密钥的装置。
本发明的有益效果如下:
由于视频监控前端使用视频监控客户端提供的公钥,对用于加密视频监控数据的对称密钥进行加密后得到密钥密文,并将密钥密文发送给视频监控客户端,视频监控客户端收到密钥密文后,采用唯有自己知道的公钥对应的私钥解密密钥密文,获取对称密钥。非法用户即使在传输过程中截获密钥密文,也很难解密得到对称密钥。因此能够提高传输密钥的安全性,也就提高了在网络化视频监控系统中传输视频监控数据的安全性。
此外,由于视频监控客户端通过私钥解密密钥密文可以获取对称密钥,所以不用事先知道对称密钥,因此视频监控系统可以不用管理对称密钥,减轻了视频监控系统的负担。
附图说明
图1为本发明实施例中Digest认证的方法示意图;
图2为本发明实施例中传输密钥的系统示意图;
图3为本发明实施例中第一种传输密钥的装置示意图;
图4为本发明实施例中第二种传输密钥的装置示意图;
图5为本发明实施例中第一种传输密钥的方法示意图;
图6为本发明实施例中第二种传输密钥的方法示意图;
图7为本发明实施例中第三种传输密钥的方法示意图;
图8为本发明实施例中第四种传输密钥的方法示意图;
图9为本发明实施例中第五种传输密钥的方法示意图。
具体实施方式
本发明实施例中视频监控客户端根据不对称加密算法生成公钥和私钥,将公钥发送给视频监控前端,视频监控前端使用公钥,对用于加密视频监控数据的对称密钥进行加密,得到密钥密文,并发送给视频监控客户端。视频监控客户端收到密钥密文后,采用唯有自己知道的与公钥对应的私钥解密密钥密文,得到对称密钥。非法用户即使在传输过程中截获密钥密文,也很难解密得到对称密钥。因此能够提高了传输密钥的安全性,也就提高了在网络化视频监控系统中传输视频监控数据的安全性。
其中,不对称加密算法可以生成两把完全不同但又完全匹配的一对密钥(公钥和私钥),其中公钥用于加密数据,私钥用于解密密文,只有使用匹配的一对公钥和私钥,才能完成对数据的加密和解密过程。而且发信方(加密者)只知道收信方的公钥,而唯一知道私钥的人就是收信方(解密者)。采用不对称加密算法,收发信双方在通信之前,收信方必须将自己早已生成的公钥发送给发信方,而自己保存私钥。
由于不对称加密算法拥有两个密钥,因而适用于分布式系统中的数据加密。目前广泛应用的不对称加密算法有RSA算法和美国国家标准局提出的DSA(Digital Signature Algorithm,数字签名算法)。
相比对称加密算法,不对称加密算法更加复杂,因而解密更难,加密后的数据安全性更高。因此本发明实施例中用不对称加密算法加密密钥,能够提高密钥的安全性。
其中,视频监控数据可以是视频数据、音频数据或音视频数据。
下面先介绍一下Digest认证的原理,以便在本发明实施例中用到。
如图1所示,Digest认证过程如下:
步骤101、客户端Client向服务器Server发送一个请求,请求中没有携带认证信息。
步骤102、Server收到该请求,发现该请求中未携带认证信息,返回401错误消息(表示Client未进行会话前Digest认证),其中携带了realm和nonce等值,向Client发起挑战。
步骤103、Client收到401错误消息,解析其中的realm和nonce等值,如果用户未登录,Client提示用户输入用户名(username)和用户登录密码(password,文中出现的小写password均表示用户登录密码),如果用户已经登录,由于Client已保存了用户的username和password,则Client自动匹配realm对应的username和password,并根据协议规则产生Digest认证需要的第一Response值,然后重新向Server发起请求,在该请求中携带认证信息,包括计算出的第一Response值,以及nonce、realm、username和password等。
步骤104、Server收到携带认证信息的请求,计算第二Response值,如果Server计算的第二Response值和Client计算的第一Response值相同,则确认Client符合认证条件,向Client返回200OK(表示通过Digest认证),同时,在该返回中携带可供Client下一次请求使用的nonce值,该值用nextnonce表示。
步骤105、Client再次向Server发起请求时,携带由nextnonce计算出来的第一Response值。
其中,步骤101-步骤104是一次请求过程,步骤105是另一次请求的开始(类似步骤103),如果在后续过程中,Server确定Client通过验证,返回200OK时携带可供Client下一次请求使用的nextnonce,如此循环下去,避免所有Digest认证请求都要多做一次消息交互。
具体的,Digest认证过程中Client计算第一Response值的方法如下:
一、如果Server的挑战中携带了qop字段,则:
第一Response值=MD5(HA1:nonce:nonceCount:ClientNonce:qop:HA2)。
其中,HA1的计算方法为:
HA1=MD5(A1)=MD5(username:realm:PASSWORD);
其中,认证密码PASSWORD(文中出现的大写PASSWORD均表示认证密码)在计算时使用password。
HA2的计算方法为:
(1)如果qop选项的值为auth,那么HA2为
HA2=MD5(A2)=MD5(method:digestURI)
(2)如果qop选项的值为auth-int,那么HA2为
HA2=MD5(A2)=MD5(method:digestURI:H(entity-body))。
其中,H(entity-body)=MD5(entity-body)。
二、如果Server的挑战中没有qop字段,则默认qop选项的值为auth:
第一Response值=MD5(HA1:nonce:HA2)。
其中,HA1=MD5(username:realm:PASSWORD);
其中,PASSWORD在计算时使用password。
HA2=MD5(method:digestURI)。
在上述计算中,MD5(Message-Digest Algorithm 5,信息-摘要算法第五版)表示对字符串进行MD5计算后的结果。
Server计算第二Response值的方法与Client计算第一Response值的方法相同。第一Response值和第二Response值可以统称为Response值。
本发明实施例中,可以在每次信令交互时先进行Digest认证,以确保公钥的完整性和正确性,然后再从信令中获取公钥或其它信息。
下面结合说明书附图对本发明实施例作进一步详细介绍。
参见图2,本发明实施例提供的一种传输密钥的系统,包括:视频监控前端10和视频监控客户端20。
视频监控前端10,用于使用接收的公钥对用于加密视频监控数据的对称密钥进行加密,得到密钥密文,并将密钥密文发送给视频监控客户端20。
视频监控客户端20,用于根据不对称加密算法产生公钥和私钥,将公钥发送给视频监控前端10,在收到来自视频监控前端10的密钥密文后,用与公钥对应的私钥解密密钥密文,得到对称密钥。
较佳的,为了避免非法用户伪造公钥和私钥骗取实际的视频监控数据,在视频监控前端10向视频监控客户端20传输数据之前,先对视频监控客户端20进行Digest认证,视频监控客户端20只有通过视频监控前端10的Digest认证之后,视频监控前端10才能向视频监控客户端20传输数据。
相应的,视频监控前端10还用于对视频监控客户端20进行Digest认证,并且在视频监控客户端20通过Digest认证后,确定视频监控客户端20为合法视频监控客户端,将密钥密文发送给视频监控客户端20。
视频监控客户端20还用于与所述视频监控前端进行Digest认证。
具体实施中,视频监控客户端20执行图1中Client执行的步骤(下同),视频监控前端10执行图1中Server执行的步骤(下同)。视频监控客户端20与视频监控前端10之间的Digest认证过程具体参见图1中Digest认证的相关内容,在此不再赘述。
较佳的,为了进一步提高密钥传输的安全性,在Digest认证过程中,用于计算Response值的PASSWORD不是单独使用password,而是根据password和公钥生成,较佳的,视频监控前端10在接收视频监控客户端20发送的公钥的同时,对视频监控客户端20进行Digest认证。
需要说明的是,视频监控前端10接收视频监控客户端发送的公钥,与视频监控前端10对视频监控客户端20进行Digest认证这两个过程可以同时进行,但是在Digest认证过程中,视频监控前端10需要用到公钥的时候,如果已经成功接收到视频监控客户端20发送公钥,则可以马上用该公钥,如果没有成功接收到视频监控客户端20发送公钥,比如处于正在接收过程,则需要等到公钥成功接收后用该公钥。
具体的,password和公钥可以经过MD5算法后得到PASSWORD,也可以通过其它算法得到PASSWORD,比如MD2和MD4算法。具体使用何种算法得到PASSWORD,可以由视频监控前端10和视频监控客户端20事先约定。
用于计算Response值的PASSWORD根据password和公钥生成,可以防范窃密者(非法客户端)在路由设备上通过修改数据包的方式直接在RTSP(Real Time Streaming Protocol,实时流协议)信令中使用自己产生的公钥替换合法客户端携带的公钥,从而获得对称密钥的风险。原因在于:非法客户端不知道本次Digest认证计算Response值的PASSWORD根据password和公钥生成,仍然直接用password计算第一Response值,这样与视频监控前端用password和公钥计算出来的第二Response值肯定不同,所以视频监控前端就能马上发现这是一个非法客户端。
进一步地,视频监控前端10还用于根据对称加密算法生成对称密钥,用对称密钥加密视频监控数据得到数据密文,将数据密文发送给视频监控客户端20。
视频监控客户端20还用于在接收数据密文之后,使用对称密钥解密数据密文得到视频监控数据。
参见图3,本发明实施例提供的第一种传输密钥的装置,包括:
公钥接收模块301,用于接收来自视频监控客户端的公钥,其中所述公钥是视频监控客户端根据不对称加密算法产生的。
公钥加密模块302,用于使用公钥接收模块301接收的公钥对用于加密视频监控数据的对称密钥进行加密,得到密钥密文。
发送模块303,用于将公钥加密模块302得到的密钥密文发送给视频监控客户端。
较佳的,为了避免非法用户伪造公钥和私钥骗取实际的视频监控数据,在发送模块303向视频监控客户端传输数据之前,本发明实施例传输密钥的装置先对视频监控客户端进行Digest认证,视频监控客户端只有通过Digest认证之后,发送模块303才能向视频监控客户端传输数据。
相应的,本发明实施例传输密钥的装置还包括:
第一认证模块304,用于对视频监控客户端进行Digest认证,并且在视频监控客户端通过Digest认证后,确定视频监控客户端为合法视频监控客户端,触发发送模块303将密钥密文发送给视频监控客户端。
具体实施中,视频监控客户端执行图1中的Client执行的步骤,本发明实施例传输密钥的装置执行图1中的Server执行的步骤。本发明实施例传输密钥的装置中的第一认证模块304对视频监控客户端进行Digest认证的过程具体参见图1中Digest认证的相关内容,在此不再赘述。
较佳的,为了进一步提高密钥传输的安全性,在Digest认证过程中,用于计算Response值的PASSWORD不是单独使用password,而是根据password和公钥生成,较佳的,在公钥接收模块301接收视频监控客户端发送的公钥的同时,触发第一认证模块304对视频监控客户端进行Digest认证。
具体的,password和公钥可以经过MD5算法后得到PASSWORD,也可以通过其它算法得到PASSWORD,比如MD2和MD4算法。具体使用何种算法得到PASSWORD,可以由本发明实施例传输密钥的装置和视频监控客户端事先约定。
进一步的,本发明实施例传输密钥的装置还包括:
对称加密模块,用于根据对称加密算法产生对称密钥,以及使用对称密钥加密视频监控数据得到数据密文。
本发明实施例还提供了一种视频监控前端,其中本发明实施例的视频监控前端包括图3中传输密钥的装置,其中视频监控前端中的各模块可以以硬件形式实现。
参见图4,本发明实施例提供的第二种传输密钥的装置,包括:
公钥发送模块401,用于根据不对称加密算法成生公钥和私钥,并将公钥发送给视频监控前端。
接收模块402,用于接收来自视频监控前端的密钥密文,用公钥发送模块401生成的与公钥对应的私钥解密密钥密文得到对称密钥。
其中,密钥密文是视频监控前端对用于加密视频监控数据的对称密钥进行加密后得到的。
本发明实施例传输密钥的装置还包括:
第二认证模块403,用于与视频监控前端进行Digest认证。
具体实施中,本发明实施例传输密钥的装置执行图1中的Client执行的步骤,视频监控前端执行图1中的Server执行的步骤。本发明实施例传输密钥的装置的第二认证模块403与视频监控前端之间的Digest认证过程具体参见图1中Digest认证的相关内容,在此不再赘述。
相应的,本发明实施例传输密钥的装置在通过视频监控前端的Digest认证之后,接收模块402会接收到来自视频监控前端传输的数据,使用对称密钥解密数据密文得到视频监控数据。
较佳的,为了进一步提高密钥传输的安全性,在Digest认证过程中,用于计算Response值的PASSWORD不是单独使用password,而是根据password和公钥生成,较佳的,在公钥发送模块401向视频监控前端发送公钥的同时,第二认证模块403与视频监控前端进行Digest认证。
具体的,password和公钥可以经过MD5算法后得到PASSWORD,也可以通过其它算法得到PASSWORD,比如MD2和MD4算法。具体使用何种算法得到PASSWORD,可以由视频监控前端和本发明实施例的传输密钥的装置事先约定。
本发明实施例还提供了一种视频监控客户端,其中本发明实施例的视频监控客户端包括图4中传输密钥的装置,其中视频监控客户端中的各模块可以以硬件形式实现。
参见图5,本发明实施例提供的第一种传输密钥的方法,包括如下步骤:
步骤501、视频监控前端接收来自视频监控客户端的公钥。
其中,公钥是视频监控客户端根据不对称加密算法生成的。
步骤502、视频监控前端使用公钥对用于加密视频监控数据的对称密钥进行加密,得到密钥密文,并将密钥密文发送给视频监控客户端。
较佳的,为了避免非法用户伪造公钥和私钥骗取实际的视频监控数据,步骤502之前还可以包括:视频监控前端确定所述视频监控客户端通过Digest认证,为合法的视频监控客户端。
较佳的,在步骤501之后,步骤502之前,视频监控前端对视频监控客户端进行Digest认证,确定视频监控客户端通过Digest认证。
具体实施中,在视频监控前端接收来自视频监控客户端的携带公钥的请求,发现请求中没有Digest认证信息,返回401错误消息给视频监控客户端,要求视频监控客户端进行Digest认证。具体认证过程参见图1中的相关内容,在此不再赘述。
较佳的,在Digest认证过程中,用于计算Response值的PASSWORD不是单独使用password,而是根据password和公钥生成。
具体的,password和公钥可以经过MD5算法后得到PASSWORD,也可以通过其它算法得到PASSWORD,比如MD2和MD4算法。具体使用何种算法得到PASSWORD,可以由视频监控前端和视频监控客户端事先约定。
参见图6,本发明实施例提供的第二种传输密钥的方法,包括如下步骤:
步骤601、视频监控客户端根据不对称加密算法生成公钥和私钥,将公钥发送给视频监控前端。
步骤602、视频监控客户端接收来自视频监控前端的密钥密文,用与公钥对应的私钥解密密钥密文,得到对称密钥;
其中,密钥密文是视频监控前端对用于加密视频监控数据的对称密钥进行加密后得到的。
步骤602之前还可以包括:视频监控客户端与视频监控前端进行Digest认证。
较佳的,在步骤601之后,步骤602之前,视频监控客户端与视频监控前端进行Digest认证。
具体实施中,视频监控客户端将携带公钥的请求发送给视频监控前端,在接到视频监控前端返回的401错误消息之后,视频监控客户端与视频监控前端进行Digest认证。具体认证过程参见图1中的相关内容,在此不再赘述。
较佳的,在Digest认证过程中,用于计算Response值的PASSWORD不是单独使用password,而是根据password和公钥生成。
具体的,password和公钥可以经过MD5算法后得到PASSWORD,也可以通过其它算法得到PASSWORD,比如MD2和MD4算法。具体使用何种算法得到PASSWORD,可以由视频监控前端和视频监控客户端事先约定。
参见图7,本发明实施例提供的第三种传输密钥的方法,包括如下步骤:
步骤700、视频监控客户端根据不对称加密算法生成公钥和私钥,并将公钥发送给视频监控前端。
步骤701、视频监控前端根据对称加密算法产生对称密钥。
其中,对称密钥用于加密视频监控数据得到数据密文,也用于解密数据密文得到视频监控数据。
步骤702、视频监控前端使用公钥加密对称密钥得到密钥密文。
步骤703、视频监控前端将密钥密文发送给视频监控客户端。
步骤704、视频监控客户端收到密钥密文后,用与公钥对应的私钥解密密钥密文得到对称密钥。
步骤705、视频监控客户端发送请求给视频监控前端,请求提供视频监控数据。
步骤705是一个可选的步骤,在具体实施中也可以不执行步骤705。
步骤706、视频监控前端用对称密钥加密视频监控数据得到数据密文,并将数据密文发送给视频监控客户端。
步骤706之后,还可以包括:
步骤707、视频监控客户端收到数据密文,用对称密钥解密数据密文,得到视频监控数据。
参见图8,本发明实施例提供的第四种传输密钥的方法中,将图6中的方法与Digest认证过程结合,在视频监控前端向视频监控客户端传输密钥之前,需确定视频监控客户端通过Digest认证,以避免非法用户伪造公钥和私钥骗取实际的视频监控数据,提高密钥传输的安全性。
本实施例中该方法包括如下步骤:
步骤801、视频监控客户端根据不对称加密算法产生公钥和私钥。
步骤802、视频监控客户端向视频监控前端发送请求,要求提供视频监控数据。
较佳的,在请求中携带公钥。
较佳的,视频监控客户端和视频监控前端可以事先约定,如果请求中携带公钥,则视频监控客户端计算第一Response值和视频监控前端计算第二Response值时都根据password和公钥生成PASSWORD,如果请求中没有携带公钥,则视频监控客户端计算第一Response值和视频监控前端计算第二Response值时只使用password作为PASSWORD。
步骤803、视频监控前端收到请求后,发现请求中没有携带认证信息,返回401错误消息,要求视频监控客户端进行Digest认证。
步骤804、视频监控客户端计算第一Response值后,向视频监控前端发送认证请求,其中携带第一Response值和公钥。
具体视频监控客户端计算第一Response值的方法参见图1中相关内容,在此不再赘述。
如果步骤802的请求中携带公钥,视频监控客户端计算第一Response值时,PASSWORD不是单独使用password,而是根据password和公钥生成。
步骤805、视频监控前端从请求中提取第一Response值和公钥,计算第二Response值。
视频监控前端计算第二Response值的方法与视频监控客户端计算第一Response值的方法相同。如果步骤802的请求中携带公钥,视频监控前端计算第二Response值根据password和公钥生成。
比如:如果视频监控客户端计算第一Response值时,采用的PASSWORD=MD5(password:publickey),则视频监控前端计算第二Response值,也采用PASSWORD=MD5(password:publickey)。这样的话,若明文传输的公钥被伪造,则无法通过Digest认证。
步骤806、视频监控前端确定第二Response值与第一Response值相同,确定视频监控客户端通过Digest认证。
其中,视频监控前端确定视频监控客户端通过Digest认证后,向视频监控客户端返回200OK,并携带可供视频监控客户端下一次认证请求的nextnonce。
步骤807、视频监控前端根据对称加密算法产生对称密钥。
步骤808、视频监控前端用公钥加密对称密钥得到密钥密文,并发送给视频监控客户端。
步骤809、视频监控客户端收到密钥密文后,用与公钥对应的私钥解密密钥密文得到对称密钥。
步骤810、视频监控客户端再次发送请求给视频监控前端,请求提供视频监控数据。
步骤810是一个可选的步骤,在具体实施中也可以不执行步骤810。
如果执行步骤810,在视频监控客户端发起请求的同时,与视频监控前端进行一次Digest认证,其中计算Response值时采用视频监控前端上一次返回200OK时携带的nextnonce。如果视频监控客户端通过此次Digest认证,视频监控前端在返回200OK时也携带nextnonce。
步骤811、视频监控前端用对称密钥加密视频监控数据得到数据密文,并将数据密文发送给视频监控客户端。
步骤812、视频监控客户端收到数据密文之后,用对称密钥解密数据密文得到视频监控数据。
参见图9,本发明实施例以具体的应用场景说明第五种传输密钥的方法。在本实施例中,以实时流协议RTSP和实时传送协议(Real-time Transport Protocol:RTP)作为音视频数据控制、传输标准协议。且RTSP/RTP支持Digest认证。
在本实施例中,视频监控客户端向视频监控前端发送RTSP请求,在RTSP请求头中增加一个字段,该字段填入视频监控客户端产生的公钥,视频监控前端返回RTSP响应,响应中增加WWW-Authenticate头,携带服务器生成的nonce值和realm值。
本实施例的方法包括如下步骤:
步骤901、视频监控客户端根据不对称加密算法生成公钥和私钥。
其中,不对称加密算法可以是RSA算法或DSA算法。本实施例中,使用RSA算法。
步骤902、视频监控客户端发送Describe(描述)请求消息给视频监控前端,请求中携带公钥。
其中,Describe请求是RTSP协议中的一种请求消息。RTSP协议中的其他请求消息也同样适用于本发明实施例。
步骤903、视频监控前端收到Describe请求消息,返回401错误消息(401UnAuthorized),并在返回字段中增加WWW-Authenticate头,携带视频监控前端生成的nonce值和realm值。
步骤904、视频监控客户端收到401UnAuthorized,解析WWW-Authenticate头,获取nonce值和realm值,按照Digest认证的协议规则计算第一Response值,在计算的时候,使用MD5(password:publickey)作为PASSWORD。
步骤905、视频监控客户端重新向视频监控前端发送Describe请求消息,在请求中携带第一Response值和公钥,请求Digest认证。
步骤906、视频监控前端接收到Describe请求消息,获取公钥,按照规则计算第二Response值。其中,第二Response值的计算方法与第一Response值计算方法相同。
步骤907、视频监控前端确定第二Response值和第一Response值相同,确定视频监控客户端通过Digest认证,返回200OK消息。
步骤908、视频监控前端根据对称加密算法产生对称密钥,并使用视频监控客户端提供的公钥,根据RSA算法加密对称密钥得到密钥密文。
步骤909、视频监控前端在Describe的响应消息中携带密钥密文发送给视频监控客户端。
步骤910、视频监控客户端收到密钥密文,用公钥对应的私钥解密密钥密文,得到对称密钥。
步骤911、视频监控前端和视频监控客户端按照正常的RTSP流程,进行Setup请求、响应和Play请求、响应。
步骤912、视频监控前端使用对称密钥加密视频监控数据得到数据密文,并发送给视频监控客户端。
步骤913、视频监控客户端收到数据密文,使用对称密钥解密数据密文得到视频监控数据。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
从上述实施例可以看出:由于视频监控前端使用视频监控客户端提供的公钥,对用于加密视频监控数据的对称密钥进行加密后得到密钥密文,并将密钥密文发送给视频监控客户端,视频监控客户端收到密钥密文后,采用唯有自己知道的公钥对应的私钥解密密钥密文,获取对称密钥。非法用户即使在传输过程中截获密钥密文,也很难解密得到对称密钥。因此能够提高了传输密钥的安全性,也就提高了在网络化视频监控系统中传输视频监控数据的安全性。进一步的,由于视频监控客户端通过私钥解密密钥密文可以获取对称密钥,所以不用事先知道对称密钥,因此视频监控系统可以不用管理对称密钥,减轻了视频监控系统的负担。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (17)
1.一种传输密钥的方法,其特征在于,该方法包括:
视频监控前端接收来自视频监控客户端的公钥,其中所述公钥是视频监控客户端根据不对称加密算法生成的;
所述视频监控前端使用公钥对用于加密视频监控数据的对称密钥进行加密,得到密钥密文,并将密钥密文发送给所述视频监控客户端。
2.如权利要求1所述的方法,其特征在于,所述视频监控前端将密钥密文发送给视频监控客户端之前,还包括:
所述视频监控前端通过摘要Digest认证确定所述视频监控客户端是合法视频监控客户端。
3.如权利要求2所述的方法,其特征在于,所述视频监控前端接收来自视频监控客户端的公钥的同时,对所述视频监控客户端进行Digest认证;
其中,在所述Digest认证过程中用于计算响应Response值的认证密码是根据所述视频监控客户端的用户登录密码和所述公钥生成的。
4.一种传输密钥的方法,其特征在于,该方法包括:
视频监控客户端根据不对称加密算法生成公钥和私钥,将所述公钥发送给视频监控前端;
所述视频监控客户端接收来自所述视频监控前端的密钥密文,用与公钥对应的私钥解密密钥密文,得到对称密钥;
其中,所述密钥密文是所述视频监控前端对用于加密视频监控数据的对称密钥进行加密后得到的。
5.如权利要求4所示的方法,其特征在于,所述视频监控客户端接收所述密钥密文之前,还包括:
所述视频监控客户端与所述视频监控前端进行Digest认证。
6.如权利要求5所示的方法,其特征在于,所述视频监控客户端向所述视频监控前端发送公钥的同时,与视频监控前端进行Digest认证;
其中,在所述Digest认证过程中用于计算Response值的认证密码是根据所述视频监控客户端的用户登录密码和所述公钥生成的。
7.一种传输密钥的系统,其特征在于,该系统包括:
视频监控前端,用于使用接收的公钥对用于加密视频监控数据的对称密钥进行加密,得到密钥密文,并发送所述密钥密文;
视频监控客户端,用于根据不对称加密算法产生公钥和私钥,将所述公钥发送给所述视频监控前端,在收到来自所述视频监控前端的密钥密文后,用与所述公钥对应的私钥解密密钥密文,得到对称密钥。
8.如权利要求7所述的系统,其特征在于,所述视频监控前端还用于:
对所述视频监控客户端进行Digest认证,并且在所述视频监控客户端通过Digest认证后,确定所述视频监控客户端为合法视频监控客户端,发送所述密钥密文;
所述视频监控客户端还用于:
与所述视频监控前端进行Digest认证。
9.如权利要求8所述的系统,其特征在于,所述视频监控前端具体用于:
在接收所述公钥的同时,对所述视频监控客户端进行Digest认证;
其中,在所述Digest认证过程中用于计算Response值的认证密码是根据所述视频监控客户端的用户登录密码和所述公钥生成的。
10.一种传输密钥的装置,其特征在于,所述装置包括:
公钥接收模块,用于接收来自视频监控客户端的公钥,其中所述公钥是视频监控客户端根据不对称加密算法产生的;
公钥加密模块,用于使用公钥对用于加密视频监控数据的对称密钥进行加密,得到密钥密文;
发送模块,用于将所述密钥密文发送给视频监控客户端。
11.如权利要求10所述的装置,其特征在于,所述装置还包括:
第一认证模块,用于对所述视频监控客户端进行Digest认证,并且在所述视频监控客户端通过Digest认证后,确定所述视频监控客户端为合法视频监控客户端,触发所述发送模块将所述密钥密文发送给视频监控客户端。
12.如权利要求11所述的装置,其特征在于,所述第一认证模块具体用于:
在接收来自视频监控客户端的公钥的同时,对所述视频监控客户端进行Digest认证;
其中,在所述Digest认证过程中用于计算Response值的认证密码是根据所述视频监控客户端的用户登录密码和所述公钥生成的。
13.一种传输密钥的装置,其特征在于,所述装置包括:
公钥发送模块,用于根据不对称加密算法生成公钥和私钥,将所述公钥发送给视频监控前端;
接收模块,用于接收来自所述视频监控前端的密钥密文,用与公钥对应的私钥解密密钥密文得到对称密钥;
其中,密钥密文是所述视频监控前端对用于加密视频监控数据的对称密钥进行加密后得到的。
14.如权利要求13所述的装置,其特征在于,所述装置还包括:
第二认证模块,用于与所述视频监控前端进行Digest认证。
15.如权利要求14所述的装置,其特征在于,所述第二认证模块具体用于:
在公钥发送模块将公钥发送给所述视频监控前端的同时,与所述视频监控前端进行Digest认证;
其中,在所述Digest认证过程中用于计算Response值的认证密码是根据所述装置的用户登录密码和所述公钥生成的。
16.一种视频监控前端,其特征在于,包括如权利要求10~12中的装置。
17.一种视频监控客户端,其特征在于,包括如权利要求13~15中的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105055892A CN101958907A (zh) | 2010-09-30 | 2010-09-30 | 一种传输密钥的方法、系统和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105055892A CN101958907A (zh) | 2010-09-30 | 2010-09-30 | 一种传输密钥的方法、系统和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101958907A true CN101958907A (zh) | 2011-01-26 |
Family
ID=43486013
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105055892A Pending CN101958907A (zh) | 2010-09-30 | 2010-09-30 | 一种传输密钥的方法、系统和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101958907A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624741A (zh) * | 2012-03-30 | 2012-08-01 | 奇智软件(北京)有限公司 | 一种基于tlv的数据传输方法及系统 |
CN102724563A (zh) * | 2012-06-15 | 2012-10-10 | 深圳市汇海威视科技有限公司 | 监控前端及终端、监控系统及音视频信号加密与解密方法 |
CN103763469A (zh) * | 2014-01-03 | 2014-04-30 | 浙江宇视科技有限公司 | 模拟摄像机及其参数配置方法 |
CN103795966A (zh) * | 2014-01-15 | 2014-05-14 | 北京明朝万达科技有限公司 | 一种基于数字证书的安全视频通话实现方法及系统 |
CN106059757A (zh) * | 2016-07-07 | 2016-10-26 | 北京信长城技术研究院 | 视音频监控设备及其数据加解密方法、视音频展示设备 |
CN107493253A (zh) * | 2016-06-13 | 2017-12-19 | 上海复旦微电子集团股份有限公司 | 无线射频设备、服务器及无线射频通信系统 |
CN107566324A (zh) * | 2016-06-30 | 2018-01-09 | 南京中兴新软件有限责任公司 | 加密方法、解密方法及装置 |
CN108599946A (zh) * | 2018-06-22 | 2018-09-28 | 深圳合纵富科技有限公司 | 一种基于摄像头系统的安全加密方法及摄像头系统 |
CN108737334A (zh) * | 2017-04-17 | 2018-11-02 | 中国科学院微电子研究所 | 一种心电检测数据上传系统及方法 |
CN109698935A (zh) * | 2017-10-24 | 2019-04-30 | 中国移动通信有限公司研究院 | 监控视频加密解密方法及装置、设备、存储介质、系统 |
CN111356125A (zh) * | 2014-05-23 | 2020-06-30 | 苹果公司 | 电子用户身份模块配置 |
CN111372056A (zh) * | 2020-03-26 | 2020-07-03 | 浙江大华技术股份有限公司 | 一种视频数据加密、解密处理方法及装置 |
CN113285927A (zh) * | 2021-04-28 | 2021-08-20 | 深圳市联洲国际技术有限公司 | 一种嵌入式网络设备的文件运行方法、嵌入式网络设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1859093A (zh) * | 2005-04-30 | 2006-11-08 | 华为技术有限公司 | 在ip多媒体子系统中认证用户终端的方法 |
CN101127604A (zh) * | 2007-09-25 | 2008-02-20 | 中兴通讯股份有限公司 | 信息安全传输方法和系统 |
CN101783800A (zh) * | 2010-01-27 | 2010-07-21 | 华为终端有限公司 | 一种嵌入式系统安全通信方法、装置及系统 |
-
2010
- 2010-09-30 CN CN2010105055892A patent/CN101958907A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1859093A (zh) * | 2005-04-30 | 2006-11-08 | 华为技术有限公司 | 在ip多媒体子系统中认证用户终端的方法 |
CN101127604A (zh) * | 2007-09-25 | 2008-02-20 | 中兴通讯股份有限公司 | 信息安全传输方法和系统 |
CN101783800A (zh) * | 2010-01-27 | 2010-07-21 | 华为终端有限公司 | 一种嵌入式系统安全通信方法、装置及系统 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624741A (zh) * | 2012-03-30 | 2012-08-01 | 奇智软件(北京)有限公司 | 一种基于tlv的数据传输方法及系统 |
CN102724563A (zh) * | 2012-06-15 | 2012-10-10 | 深圳市汇海威视科技有限公司 | 监控前端及终端、监控系统及音视频信号加密与解密方法 |
CN103763469A (zh) * | 2014-01-03 | 2014-04-30 | 浙江宇视科技有限公司 | 模拟摄像机及其参数配置方法 |
CN103795966B (zh) * | 2014-01-15 | 2017-12-26 | 北京明朝万达科技股份有限公司 | 一种基于数字证书的安全视频通话实现方法及系统 |
CN103795966A (zh) * | 2014-01-15 | 2014-05-14 | 北京明朝万达科技有限公司 | 一种基于数字证书的安全视频通话实现方法及系统 |
CN111356125A (zh) * | 2014-05-23 | 2020-06-30 | 苹果公司 | 电子用户身份模块配置 |
CN111356125B (zh) * | 2014-05-23 | 2023-04-04 | 苹果公司 | 电子用户身份模块配置 |
CN107493253A (zh) * | 2016-06-13 | 2017-12-19 | 上海复旦微电子集团股份有限公司 | 无线射频设备、服务器及无线射频通信系统 |
CN107493253B (zh) * | 2016-06-13 | 2020-09-22 | 上海复旦微电子集团股份有限公司 | 无线射频设备、服务器及无线射频通信系统 |
CN107566324A (zh) * | 2016-06-30 | 2018-01-09 | 南京中兴新软件有限责任公司 | 加密方法、解密方法及装置 |
CN106059757A (zh) * | 2016-07-07 | 2016-10-26 | 北京信长城技术研究院 | 视音频监控设备及其数据加解密方法、视音频展示设备 |
CN108737334A (zh) * | 2017-04-17 | 2018-11-02 | 中国科学院微电子研究所 | 一种心电检测数据上传系统及方法 |
CN109698935A (zh) * | 2017-10-24 | 2019-04-30 | 中国移动通信有限公司研究院 | 监控视频加密解密方法及装置、设备、存储介质、系统 |
CN108599946A (zh) * | 2018-06-22 | 2018-09-28 | 深圳合纵富科技有限公司 | 一种基于摄像头系统的安全加密方法及摄像头系统 |
CN111372056A (zh) * | 2020-03-26 | 2020-07-03 | 浙江大华技术股份有限公司 | 一种视频数据加密、解密处理方法及装置 |
CN113285927A (zh) * | 2021-04-28 | 2021-08-20 | 深圳市联洲国际技术有限公司 | 一种嵌入式网络设备的文件运行方法、嵌入式网络设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106506470B (zh) | 网络数据安全传输方法 | |
CN101958907A (zh) | 一种传输密钥的方法、系统和装置 | |
CN108599925B (zh) | 一种基于量子通信网络的改进型aka身份认证系统和方法 | |
KR102068367B1 (ko) | 사물인터넷을 위한 데이터그램 전송에서 경량 인증을 위한 컴퓨터 구현 시스템 및 방법 | |
CN107947913B (zh) | 一种基于身份的匿名认证方法与系统 | |
JP5307191B2 (ja) | 無線通信機器とサーバとの間でのデータの安全なトランザクションのためのシステムおよび方法 | |
Juang | Efficient multi-server password authenticated key agreement using smart cards | |
US7269730B2 (en) | Method and apparatus for providing peer authentication for an internet key exchange | |
US8670563B2 (en) | System and method for designing secure client-server communication protocols based on certificateless public key infrastructure | |
CN110048849B (zh) | 一种多层保护的会话密钥协商方法 | |
CN103763356A (zh) | 一种安全套接层连接的建立方法、装置及系统 | |
CN108599926B (zh) | 一种基于对称密钥池的HTTP-Digest改进型AKA身份认证系统和方法 | |
JP2009296190A (ja) | 秘匿通信方法 | |
CN106941404B (zh) | 密钥保护方法及装置 | |
US12010216B2 (en) | Computer-implemented system and method for highly secure, high speed encryption and transmission of data | |
KR20170035665A (ko) | 키 교환 장치 및 방법 | |
CN112637136A (zh) | 加密通信方法及系统 | |
WO2010124482A1 (zh) | Ip多媒体子系统中实现安全分叉呼叫会话的方法及系统 | |
JP2012235214A (ja) | 暗号通信装置および暗号通信システム | |
CN104618110A (zh) | 一种VoIP安全会议会话密钥传输方法 | |
Claeys et al. | Securing complex IoT platforms with token based access control and authenticated key establishment | |
US11528127B2 (en) | Computer-implemented system and method for highly secure, high speed encryption and transmission of data | |
JP2016514913A (ja) | セッション鍵を確立する方法および装置 | |
KR101704540B1 (ko) | M2m 환경의 다중 디바이스 데이터 공유를 위한 그룹키 관리 방법 | |
CN115766119A (zh) | 通信方法、装置、通信系统及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C05 | Deemed withdrawal (patent law before 1993) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110126 |