CN101729854B - Method for distributing code stream encrypting and decrypting keys in SIP video monitoring system - Google Patents

Method for distributing code stream encrypting and decrypting keys in SIP video monitoring system Download PDF

Info

Publication number
CN101729854B
CN101729854B CN 200910260084 CN200910260084A CN101729854B CN 101729854 B CN101729854 B CN 101729854B CN 200910260084 CN200910260084 CN 200910260084 CN 200910260084 A CN200910260084 A CN 200910260084A CN 101729854 B CN101729854 B CN 101729854B
Authority
CN
China
Prior art keywords
key
value
sip server
seed
media server
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
Application number
CN 200910260084
Other languages
Chinese (zh)
Other versions
CN101729854A (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.)
Vimicro Corp
First Research Institute of Ministry of Public Security
Original Assignee
Vimicro Corp
First Research Institute of Ministry of Public Security
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 Vimicro Corp, First Research Institute of Ministry of Public Security filed Critical Vimicro Corp
Priority to CN 200910260084 priority Critical patent/CN101729854B/en
Publication of CN101729854A publication Critical patent/CN101729854A/en
Application granted granted Critical
Publication of CN101729854B publication Critical patent/CN101729854B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses a method for distributing code stream encrypting and decrypting keys in an SIP video monitoring system. In the method, in a process for calling a 3 pcc between code stream encrypting monitoring front end equipment and code stream decrypting customer premise equipment, or a process of calling a 3 pcc between the code stream encrypting monitoring front end equipment and a media server and a 3 pcc between code stream decrypting customer premise equipment and the media server, seeda, seedb and seedc, which are obtained by the monitoring front end equipment, the media server and the customer premise equipment in an identity authentication process during registration, are used as keys shared with an SIP server and identifiers, the content of an SIP signaling message body SDP is expanded to carry the encrypting and decrypting keys, and a symmetric algorithm or asymmetric algorithm is used to guarantee the safety of the transmission of the encrypting and decrypting keys. The method has the advantages of generating different keys at each time of broadcasting, greatly improving safety coefficient, resisting replay attack and eliminating the safety hazards of the storage of the keys at multiple places.

Description

A kind of SIP video monitoring system method for distributing code stream encrypting and decrypting keys
Technical field
The present invention relates to a kind of SIP video monitoring system method for distributing code stream encrypting and decrypting keys, belong to communication and technical field of video monitoring.
Technical background
Video monitoring is one of important means of modern management, monitoring, control, is widely used in multiple fields such as industry, commerce, finance, traffic, education, military affairs and security protection so that it is directly perceived, convenient, the information content is abundant.Realize that based on Session Initiation Protocol video monitoring system is digitlization, networking, intellectuality, multimedization video monitoring system Development Trend.Some key monitorings zones (for example national treasury) are arranged if video image do not add protection; Obtained by some, will produce very big loss, for guaranteeing the information security of video monitoring image; Need when transmission, encrypt, when retrieving for examination, video code flow deciphered video code flow.
Video monitoring image is carried out real-time encrypted arithmetic speed to encryption device have relatively high expectations, the general now general symmetry algorithms such as DES, 3DES that use.The fail safe of symmetry algorithm depends on the safety of key, leaks key and just means that anyone can both carry out enciphering/deciphering to video data.If symmetric key can not ensure in process safe such as generation, distributions, just can not ensure the safety of enciphered video data.Therefore the secure distribution of key is a key link.
Third party call control (Third Party Call Control is called for short 3pcc) refers to the operation that the third party effector initiated, set up session and discharge session other two sides or more in many ways, is responsible for the media negotiation between the session side.3pcc is the mechanism of often using in the Session Initiation Protocol.
In the SIP video monitoring system, there is not the encrypted video program request structure of media server, come down under the control of sip server, encrypted video to be transferred to the client with code stream decryption capabilities from the monitoring frontend with encrypted bit stream ability.This process has comprised a 3pcc process: under this third party effector's of sip server control, exhale the process of logical monitoring frontend and client.
In the SIP video monitoring system; Through the encrypted video program request structure of media server, come down under the control of sip server encrypted video from monitoring frontend with the encrypted bit stream ability transfer transmission through media server to client with code stream decryption capabilities.This process has comprised two 3pcc processes: one is under this third party effector's of sip server control, exhales the process of logical monitoring frontend and media server; One is under the control of sip server, exhales the process of logical media server and client.
It is normally a plurality of that front end has the equipment of encrypted bit stream function in the SIP video monitoring system; And each can produce the multichannel encrypted video; And it is also normally a plurality of to have the equipment of decipher function in client; And each has the multi-channel video decipher function, and monitoring frontend and client relation one to one not usually, when the behavior of user's order video takes place, just can determine to want which the decoded then broadcast of the video of program request in which client.Brought great difficulty for like this deciphering of encrypted video because key how secure distribution is a problem.
The distribution of present existing enciphering/deciphering code stream key mostly is not real-time, and lacks seasonings property, is difficult to the opposing Replay Attack.In order to guarantee safety; Key must be mutually different between per two equipment; And the client of playing encrypted video is uncertain in advance; The client device that has the decrypted video function so just must be stored the key of each front end encryption device, and in a large-scale video monitoring system, this quantity is very huge.This method has proposed very high requirement to the storage security of key, but client does not possess such security capabilities usually.When key is changed, have one and replace the phase, cause two keys to exist simultaneously, brought inconvenience to management, and this method is very poor for the adaptability of cross-domain application.
Summary of the invention
In the SIP video monitoring system; The equipment that front end has the encrypted bit stream function can produce the multichannel encrypted video usually; And also has the multi-channel video decipher function usually at the equipment that client has a decipher function; But the client device with decrypted video function can also should not be stored the key of each front end encryption device usually, the objective of the invention is in order to overcome the weak point of above-mentioned prior art, and a kind of SIP video monitoring system method for distributing code stream encrypting and decrypting keys is provided.
A kind of SIP video monitoring system method for distributing code stream encrypting and decrypting keys that the present invention proposes; Logical have the monitoring frontend of encrypted bit stream ability and have in the 3pcc process between the client device of code stream decryption capabilities exhaling; Perhaps exhaling logical the have monitoring frontend of encrypted bit stream ability and the 3pcc of media server; Exhale logical the have client device of code stream decryption capabilities and the 3pcc between the media server; In these two 3pcc processes; Utilize shared key and identify label between monitoring frontend, media server, client device the authentication process obtains when registration SEEDa, SEEDb, SEEDc conduct and the sip server; Content through expansion SIP signaling message body SDP is carried the enciphering/deciphering key, adopts symmetry algorithm or asymmetric arithmetic to ensure the safety of enciphering/deciphering key delivery, thereby in the real-time VOD process, accomplishes the secure distribution of enciphering/deciphering key.
The invention has the beneficial effects as follows that each program request all produces different keys, improved coefficient of safety greatly, can resist Replay Attack.Because distribute in real time in a sowing time, front monitoring front-end and client all do not need storage key, have eliminated the security risk of key many places storages.
Description of drawings
Fig. 1 is the two-way authentication register flow path sketch map based on digital certificate of a kind of SIP video monitoring system method for distributing code stream encrypting and decrypting keys according to the invention;
Fig. 2 is a 3pcc schematic flow sheet between logical front monitoring front-end of exhaling of a kind of SIP video monitoring system method for distributing code stream encrypting and decrypting keys according to the invention and the media server.
Embodiment
Below in conjunction with accompanying drawing and specific embodiment the present invention is done further detailed introduction,, the present invention includes following steps like Fig. 1, shown in 2:
1, obtains to share the process of key SEED based on the facility registration two-way authentication of digital certificate;
Obtain to share in the process of key in facility registration two-way authentication, adopted the REGISTER message that defines among the RFC3261 based on the verification process of challenging based on digital certificate.
When sip server was received the REGISTER message of equipment transmission, sip server produced a random number SEED, and calculates the value of nonce, through 401 error messages the nonce value is sent to equipment end.Nonce=A&B, wherein & is that character string connects decollator, A=E [PRs, H (From+To+Call-ID+Contact+SEED)]; B=E (PUd, SEED), wherein; E is a cryptographic calculation ,+be the character string connector, H is also referred to as the digital digest computing for the Hash computing; Sip server is s, and the PKI of sip server is PUs, and private key is PRs; Equipment is d, and the PKI of equipment is PUd, and the private key of equipment is PRd.
After equipment is received 401 message that sip server returns, decipher the B value with own private key, obtain SEED; Promptly through computing D (PRd, B)=D [PRd, E (PUd; SEED)] obtain the value of SEED, wherein D is a decrypt operation, calculates H (From+To+Call-ID+Contact+SEED) then; The D as a result [PUs, E [PRs, H (From+To+Call-ID+Contact+SEED)]] that utilizes result calculated again and decipher with the sip server PKI compares; If identical, prove that then the SEED value comes from the sip server that PKI is PUs just can carry out digital signature because only have the sip server of respective private keys to this SEED, thus authentication sip server.At this moment, equipment calculates the response value again, response=H (nonce+SEED), and the response value that will be worth as second REGISTER registration message sends to the sip server end.
When the sip server end was received second registration message from equipment, doing the digital digest computing with the nonce of SEED in message body of this equipment of own preservation was H (nonce+SEED), does comparison with the response value that this value and equipment are sent; If identical, explain that this message is the equipment of PUd from PKI, just can untie B=E (PUd SEED) obtains corresponding SEED because only have the equipment of PRd; So far sip server has also been done authentication to equipment, and after this sip server just can send message 200 OK that succeed in registration to equipment.
2, concrete signalling interactive process;
(1). the alignment sip server sends the REGISTER registration message on the equipment.
(2) the .SIP server is received REGISTER message, generates random number SEED.Calculate the nonce value, nonce=A&B, A=E [PRs, H (From+To+Call-ID+Contact+SEED)], B=E (PUd, SEED).Sip server is that the nonce value is sent 401 message to equipment with A&B.
(3). equipment is received 401 responses, at first calculate D (PRd, B)=D [PRd; E (PUd, SEED)] obtain SEED, and calculate H (From+To+Call-ID+Contact+SEED) and D (PUS; A)=D [PUS, E [PRs, H (From+Tc+Call-ID+Contact+SEED)]]; When both were identical, message had promptly been done authentication to sip server from corresponding sip server.Calculate the response value, response=H (nonce+SEED).Equipment is that the response value is sent REGISTER message with H (nonce+SEED) again.
(4) the .SIP server is received register requirement; The SEED that sends to this equipment that preserves with oneself calculates H (nonce+SEED); The response that result of calculation and equipment are sent does comparison, and both are identical, and then explanation is the signaling that relevant device is sent, and promptly equipment has been done authentication.If checking is passed through, sip server then sends 200 OK to equipment.So far, equipment is reached the standard grade and is succeeded in registration.
3, the real-time distribution procedure of key;
After the equipment identities authentication completion based on digital certificate; Shared key SEEDa has been arranged between monitoring frontend and the sip server; Shared key SEEDb has been arranged between media server and the sip server, shared key SEEDe has been arranged between client and the sip server, when the encrypted code of user's program request monitoring frontend flows to client terminal playing; Sip server is at first exhaled logical monitoring frontend; And then exhale client terminal equipment, and in two 3pcc processes, accomplish the real-time distribution of key, as shown in Figure 2; The present invention does following expansion to the signaling message body SDP that defines among the RFC4566:
1) value with the k among the Invite message SDP is divided into three parts; First: the algorithm of this use and pattern, a kind of is symmetry algorithm and digest algorithm, uses CSV between the two; A kind of in addition is asymmetric arithmetic and digest algorithm, uses CSV between the two; Second portion: shielded key cipher-text information; Third part: second portion ciphertext and equipment SEED are done the summary info that the digital digest computing obtains.Separate with & between every part.
2) value with the k among the 200 OK message SDP is divided into two parts; First: the algorithm of this use and pattern; Second portion: digital digest information.
4, exhale the process of 3pcc between logical monitoring frontend and the media server following with symmetry algorithm protected code stream encryption key:
(1) sip server sends the INVITE of band offer2 SDP to monitoring frontend; Sip server produces the key of a random number k ey as encrypted bit stream; Calculate the value of k, k=A&B&C, A=3DES/ECB/PKCS5V2.0; SHA1, A have indicated used AES and digital digest algorithm; B=E [SEEDa, key], B adopts symmetry algorithm 3DES/ECB/PKCS5V2.0 that key is done the value after encrypting for the SEEDa with monitoring frontend as key; C=H [B+SEEDa], C does the value behind the digital digest together for the seed SEEDa to the B as a result that encrypted just now and monitoring frontend.
(2) monitoring frontend is received after the INVITE, at first the k value is resolved into 3 part A through decollator & ', B '; C ', and resolve separately, use the digital digest algorithm SHA1 that obtains among the A ' that B '+SEEDa is done digital digest; The result and the C ' that obtain make comparisons; If unequal, prove the destroy integrity of B ', monitoring frontend returns the sip server mistake; If equate, because have only monitoring frontend to know SEEDa, so can prove the integrality of B '.Monitoring frontend also uses the algorithm 3DES/ECB/PKCS5V2.0 that obtains among the A ' that B ' is done deciphering with SEEDa as key; Obtain the value of key; Monitoring frontend is replied 200 responses that have offer3 SDP content, k=D&E among the SDP, D=SHA1 to sip server; E=H [key+SEEDa].
(3) sip server is received after 200 OK, and the k value is resolved into 2 part D ', E ' through decollator &; And resolve separately, use the digest algorithm of acquisition among the D ' that key+SEEDa is done digital digest, compare with the value of E '; If unequal, return the monitoring frontend error message; If equate then prove that sip server understands that monitoring frontend has obtained correct key.Arrive here, sip server with the notice of encryption key safety monitoring frontend.
Success is notified after the monitoring frontend, and sip server sends the INVITE that has offer3 SDP content to media server and calls out, and calculates the value of k; K=a&b&c; A=3DES/ECB/PKCS5V2.0, SHA1 has indicated used AES and digital digest algorithm; B=E [SEEDb, key], b adopts symmetry algorithm 3DES/ECB/PKCS5V2.0 that key is done the value after encrypting for the SEEDb with media server as key; C=H [b+SEEDb], c are the value of the seed SEEDb of b as a result that encrypted just now and monitoring frontend being done together digital digest.
(4) media server is received after the INVITE, at first the k value is resolved into 3 part a ', b ' through decollator &; C ', and resolve separately, use the digital digest algorithm SHA1 that obtains among a ' that b '+SEEDb is done digital digest; The result and the c ' that obtain make comparisons; If unequal, prove the destroy integrity of b ', media server returns the sip server mistake; If equate, because have only media server to know SEEDb, so can prove the integrality of b '.Media server also uses the algorithm 3DES/ECB/PKCS5V2.0 that obtains among a ' that b ' is done deciphering with SEEDb as key; Obtain the value of key; Media server is replied 200 responses that have answer2 SDP content, k=d&e among the SDP, d=SHA1 to sip server; E=H [key+SEEDb].
(5) sip server is received after the 200 OK response of media server; The k value is resolved into 2 part d ' through decollator &, e ', and resolve separately; Use the digital digest algorithm that obtains among the d ' that key+SEEDb is done digital digest; Compare with the value of e ',, return the media server error message if unequal; If equate then prove that sip server understands that media server has obtained correct encryption key key, reply ACK to media server.So far, sip server with the notice of encryption key safety media server.
(6) the sip server ACK that will have an answer2 SDP content replies to monitoring frontend.
(7) monitoring frontend uses the encrypted media streams of key as key to the media server transmission.
The process of exhaling 3pcc between client terminal and the media server with symmetry algorithm protection code stream decruption key is with exhaling the 3pcc between logical monitoring frontend and the media server very similar; Here just no longer describe; Different places are: when exhaling client terminal and media server; Sip server no longer produces key; But the key key when exhaling logical monitoring frontend with media server is delivered to client as decruption key from media server, and shared key has become SEEDc by SEEDa.
5, exhale the process of 3pcc between logical monitoring frontend and the media server following with asymmetric arithmetic protected code stream encryption key:
(1) sip server sends the INVITE of band offer2 SDP to monitoring frontend; Sip server produces the key of a random number k ey as encrypted bit stream; Calculate the value of k, k=A&B&C, A=RSA/ECB/PKCS1V2.1; SHA1, A have indicated used AES and digital digest algorithm; B=E [PUd, key], wherein, E is a cryptographic calculation, and H is the digital digest algorithm, and d is a monitoring frontend, and PUd is the PKI of monitoring frontend, and PRd is the private key of monitoring frontend, and B does the value after encrypting for the PKI with monitoring frontend to key; C=H [E [PUd, key]+SEEDa], C are the value of the seed SEEDa of result who encrypted just now and monitoring frontend being done together digital digest.
(2) monitoring frontend is received after the INVITE, at first the k value is resolved into 3 part A through decollator & ', B '; C ', and resolve separately, use the digest algorithm SHA1 that obtains among the A ' that B '+SEEDa is made an abstract; The result and the C ' that obtain make comparisons; If unequal, prove the destroy integrity of B ', monitoring frontend returns the sip server mistake; If equate, because have only monitoring frontend to know SEEDa, so can prove the integrality of B '.Monitoring frontend is done deciphering with the private key of oneself to B ', obtains the value of key.Because have only monitoring frontend to have the private key of oneself, so have only monitoring frontend could obtain the value of key.Be D [PRd, B ']=key.Monitoring frontend is replied 200 responses that have offer3 SDP content, k=D&E among the SDP, D=SHA1 to sip server; E=H [key+SEEDa].
(3) sip server is received after 200 OK, and the k value is resolved into 2 part D ', E ' through decollator &; And resolve separately, use the digital digest algorithm that obtains among the D ' that key+SEEDa is done digital digest, compare with E '; If unequal, return the monitoring frontend error message; If equate then prove that sip server understands that monitoring frontend has obtained correct key.So far, sip server with the notice of encryption key safety monitoring frontend.Success is notified after the monitoring frontend, and sip server sends the INVITE that has offer3 SDP content to media server and calls out, and calculates the value of k, k=a&b&c, and a=RSA/ECB/PKCS1, SHA1, a have indicated used AES and digest algorithm; B=E [PUs, key] (annotate: wherein E is a cryptographic calculation, and H is a digest algorithm, and s is a media server, and PUs is the PKI of media server, and PRs is the private key of media server), b does the value after encrypting for the PKI with media server to key; C=H [E [PUs, key]+SEEDb], the value that the value of c makes an abstract for the seed SEEDb to the result that encrypted just now and media server together.
(4) media server is received after the INVITE, at first the k value is resolved into 3 part a ', b ' through decollator &; C ', and resolve separately, use the digital digest algorithm SHA1 that obtains among a ' that b '+SEEDb is done digital digest; The result and the c ' that obtain make comparisons; If unequal, prove the destroy integrity of b ', media server returns the sip server mistake; If equate, because have only media server to know SEEDb, so can prove the integrality of b '.Media server is done deciphering with the private key of oneself to b ', obtains the value of key.Because have only media server to have the private key of oneself, so have only media server could obtain the value of key.Be D [PRs, b]=key.Media server is replied 200 responses that have the answer2SDP content, k=d&e among the SDP, d=SHA1 to sip server; E=H [key+SEEDb].
(5) sip server is received after the 200 OK response of media server; The k value is resolved into 2 part d ' through decollator &, e ', and resolve separately; Use the digital digest algorithm that obtains among the d ' that key+SEEDb is done digital digest; Compare with the value of e ',, return the media server error message if unequal; If equate then prove that sip server understands that media server has obtained correct encryption key key, reply ACK to media server.So far, sip server with the notice of encryption key safety media server.
(6) the sip server ACK that will have an answer2 SDP content replies to monitoring frontend.
(7) monitoring frontend is the encrypted media streams of key to the media server transmission with key.
The process of exhaling 3pcc between client terminal and the media server with asymmetric arithmetic protection code stream decruption key is with exhaling the 3pcc between logical monitoring frontend and the media server very similar; Here just no longer describe; Different places are: when exhaling client terminal and media server; Sip server no longer produces key, but the key key when exhaling logical monitoring frontend and media server is delivered to client as decruption key from media server.Share key and become SEEDc by SEEDa.Use the public and private key of client device rather than the public and private key of monitoring frontend.
Protect the key transmission can accomplish the real-time security transmission of key through above symmetry algorithm protection key or asymmetric arithmetic, the difference of fail safe depends on the security intensity with symmetry algorithm and asymmetric arithmetic itself.
The key distribution of a kind of SIP video monitoring system method for distributing code stream encrypting and decrypting keys according to the invention is distribution in real time when code stream is encrypted in user's program request; Key distribution is an one-time pad; Monitoring frontend with encrypted bit stream ability all need not stored the enciphering/deciphering key with the client device with code stream decryption capabilities; The SEED that obtains during based on the facility registration two-way authentication of digital certificate is as the wildcard between equipment and the sip server; Adopt symmetry algorithm or asymmetric arithmetic protection key processes in the 3pcc process of video request program.
A kind of SIP video monitoring system method for distributing code stream encrypting and decrypting keys according to the invention is launched and is defined as follows the key field of SDP message body:
1) value with the k among the INVITE SDP is divided into three parts.First: the algorithm of this use and pattern, a kind of is symmetry algorithm and digital digest algorithm, uses CSV between the two; A kind of in addition is asymmetric arithmetic and digital digest algorithm, uses CSV between the two; Second portion: shielded key cipher-text information; Third part: second portion ciphertext and equipment SEED are done the summary info that digital digest obtains.Separate with & between every part.
2) value with the k among the 200 OK message SDP is divided into two parts, and first is: the algorithm of this use and pattern; Second portion is: digital digest information.
A kind of SIP video monitoring system method for distributing code stream encrypting and decrypting keys according to the invention has adopted the dual key authentication mechanism based on digital certificate when facility registration; Transmit in the time of authentication and share key SEED, its security intensity is equal to the security intensity of the digital certificate that is adopted.This authentication is two-way authentication, because the assailant can't copy effective certificate in the certificate security intensity, thereby can resist counterfeit equipment or server registration attack.The shared key SEED that uses in two 3pcc processes during user's program request encrypted video is because obtaining by certificate of SEED ensure, so the secret intensity during the SEED exchange is equal to the certificate security intensity.In the process of symmetry algorithm protection key, B=E [SEED, key], because SEED is a secure private, the security intensity of B is equal to the security intensity of symmetry algorithm.Could obtain correct key owing to only know the equipment of SEED, so can resist the equipment bogus attack.C=H [E [SEED; Key]+SEED]; If assailant's attack of acting as a go-between is arranged, oneself has constructed enciphered data, and analyzes the data structure that has drawn the k field; But because do not know that so SEED will soon find the destroy integrity of enciphered data B through Digest Authentication, so can resist man-in-the-middle attack.When equipment returns sip server 200 OK; E=H [key+SEED], sip server can know clearly through the comparison to the digital digest result whether equipment has obtained correct code stream enciphering/deciphering key; Do not obtain if equipment is correct; This program request can not be play in the time of can not playing by the time just and finish to just finishing because of makeing mistakes here so, has improved systematic function.In the process of asymmetric arithmetic protection key, B=E [PUd, key]; The security intensity of B is the security intensity of digital certificate; Only have device private and just can decipher these data, and private key can not be forged in the digital certificate security intensity, therefore can resist the equipment bogus attack.C=H [E [PUd; Key]+SEED]; If assailant's attack of acting as a go-between is arranged, oneself has constructed enciphered data, and analyzes the data structure that has drawn the k field; So but because do not know that SEED will soon find the destroy integrity of enciphered data B through Digest Authentication, can resist man-in-the-middle attack.Equipment solves key value back when sip server returns 200 OK; E=H [key+SEED], sip server can know clearly through the comparison to the summary result whether equipment has obtained correct code stream enciphering/deciphering key; Do not obtain if equipment is correct; This program request can not be play in the time of can not playing by the time just and finish to just finishing because of makeing mistakes here so, has improved systematic function.In 3pcc call control procedure, add/decryption key as code stream with random number k ey, each program request all produces different keys, so accomplished the one-time pad of key in on-demand process, can resist Replay Attack.Because distribute in real time in a sowing time, front monitoring front-end and client all do not need storage key, have eliminated the security risk of key many places storages.
The invention is not restricted to the foregoing description, to those skilled in the art, any improvement that the above embodiment of the present invention is made or change can not exceed the embodiments of the invention that only illustrate by way of example and the protection range of accompanying claims.

Claims (3)

1. SIP video monitoring system method for distributing code stream encrypting and decrypting keys is characterized in that: may further comprise the steps:
(1), obtains to share the process of key SEED based on the facility registration two-way authentication of digital certificate;
Obtain to share in the process of key in facility registration two-way authentication, still adopted the REGISTER message that defines among the RFC3261 based on the verification process of challenging based on digital certificate;
When sip server is received the REGISTER message of equipment transmission, produce a random number SEED, and calculate the value of nonce, through 401 error messages the nonce value is sent to equipment end; Nonce=A&B, wherein & is that character string connects decollator, A=E [PRs; H (From+To+Call-ID+Contact+SEED)], and B=E (PUd, SEED); Wherein E is a cryptographic calculation ,+be the character string connector, H is also referred to as the digital digest computing for the Hash computing; Sip server is s, and the PKI of sip server is PUs, and private key is PRs; Equipment is d, and the PKI of equipment is PUd, and the private key of equipment is PRd;
After equipment is received 401 message that sip server returns, decipher the B value with own private key, obtain SEED; Promptly through computing D (PRd, B)=D [PRd, E (PUd; SEED)] obtain the value of SEED, wherein D is a decrypt operation, calculates H (From+To+Call-ID+Contact+SEED) then; The D as a result [PUs, E [PRs, H (From+To+Call-ID+Contact+SEED)]] that utilizes result calculated again and decipher with the sip server PKI compares; If identical, prove that then the SEED value comes from the sip server that PKI is PUs, just can carry out digital signature because only have the sip server of respective private keys to this SEED; Thereby authentication sip server, at this moment, equipment calculates the response value again; Response=H (nonce+SEED), and the response value that will be worth as second REGISTER registration message sends to the sip server end;
When the sip server end is received second registration message from equipment, do the digital digest computing with the nonce of SEED in message body of this equipment of own preservation, promptly H (nonce+SEED) does comparison with the response value that this value and equipment are sent; If identical, explain that this message is the equipment of PUd from PKI, just can untie B=E (PUd SEED) obtains corresponding SEED because only have the equipment of PRd; So far sip server has also been done authentication to equipment, and after this sip server just can send message 200 OK that succeed in registration to equipment;
(2), concrete signalling interactive process;
A). the alignment sip server sends the REGISTER registration message on the equipment;
B) the .SIP server is received REGISTER message, generates random number SEED, calculates the nonce value; Nonce=A&B, A=E [PRs, H (From+To+Call-ID+Contact+SEED)]; B=E (PUd, SEED), sip server is that the nonce value is sent 401 message to equipment with A&B;
C). equipment is received 401 responses, at first calculate D (PRd, B)=D [PRd, E (PUd; SEED)] obtain SEED, and calculate H (From+To+Call-ID+Contact+SEED) and D (PUS, A)=D [PUS, E [PRs; H (From+To+Call-ID+Contact+SEED)]], when both were identical, message was from corresponding sip server; Promptly sip server is done authentication, calculated the response value, response=H (nonce+SEED).Equipment is that the response value is sent REGISTER message with H (nonce+SEED) again;
D) the .SIP server is received register requirement, and with the own SEED calculating H (nonce+SEED) that sends to this equipment that preserves, the response that result of calculation and equipment are sent does comparison; Both are identical, and then explanation is the signaling that relevant device is sent; Promptly equipment has been done authentication, if checking is passed through, sip server then sends " 200 OK " to equipment; So far, equipment is reached the standard grade and is succeeded in registration;
(3), the real-time distribution procedure of key;
After the equipment identities authentication completion based on digital certificate; Shared key SEEDa has been arranged between monitoring frontend and the sip server; Shared key SEEDb has been arranged between media server and the sip server, shared key SEEDc has been arranged between client and the sip server, when the encrypted code of user's program request monitoring frontend flows to client terminal playing; Sip server is at first exhaled logical monitoring frontend; And then exhale client terminal equipment, and in two 3pcc processes, accomplish the real-time distribution of key, the signaling message body SDP that defines among the RFC4566 is done following expansion:
A) value with the k among the INVITE SDP is divided into three parts: first is the algorithm and the pattern of this use, and a kind of is symmetry algorithm and digital digest algorithm, uses CSV between the two; A kind of in addition is asymmetric arithmetic and digital digest algorithm, uses CSV between the two; Second portion is shielded key cipher-text information; Third part is that second portion ciphertext and equipment SEED are done the summary info that the digital digest computing obtains, and separates with & between every part;
B) value with the k among the 200 OK message SDP is divided into two parts, and first is the algorithm and the pattern of this use; Second portion is a digital digest information;
(4), exhale the process of 3pcc between logical monitoring frontend and the media server following with symmetry algorithm protected code stream encryption key:
A) sip server sends the INVITE of band offer2 SDP to monitoring frontend; Sip server produces the key of a random number k ey as encrypted bit stream; Calculate the value of k, k=A&B&C, A=3DES/ECB/PKCS5V2.0; SHA1, A have indicated used AES and digital digest algorithm; B=E [SEEDa, key], B adopts symmetry algorithm 3DES/ECB/PKCS5V2.0 that key is done the value after encrypting for the SEEDa with monitoring frontend as key; C=H [B+SEEDa], C does the value behind the digital digest together for the seed SEEDa to the B as a result that encrypted just now and monitoring frontend;
B) monitoring frontend is received after the INVITE, at first the k value is resolved into 3 part A through decollator & ', B '; C ', and resolve separately, use the digital digest algorithm SHA1 that obtains among the A ' that B '+SEEDa is done digital digest; The result and the C ' that obtain make comparisons; If unequal, prove the destroy integrity of B ', monitoring frontend returns the sip server mistake; If equate; Because have only monitoring frontend to know SEEDa, so can prove the integrality of B ', monitoring frontend also uses the algorithm 3DES/ECB/PKCS5V2.0 that obtains among the A ' that B ' is done deciphering with SEEDa as key; Obtain the value of key; Monitoring frontend is replied 200 responses that have offer3 SDP content, k=D&E among the SDP, D=SHA1 to sip server; E=H [key+SEEDa];
C) sip server is received after 200 OK, and the k value is resolved into 2 part D ', E ' through decollator &; And resolve separately, use the digest algorithm of acquisition among the D ' that key+SEEDa is done digital digest, compare with the value of E '; If unequal, return the monitoring frontend error message; If equate then prove that sip server understands that monitoring frontend has obtained correct key, to here, sip server with the notice of encryption key safety monitoring frontend;
Success is notified after the monitoring frontend, and sip server sends the INVITE that has offer3 SDP content to media server and calls out, and calculates the value of k; K=a&b&c; A=3DES/ECB/PKCS5V2.0, SHA1 has indicated used AES and digital digest algorithm; B=E [SEEDb, key], b adopts symmetry algorithm 3DES/ECB/PKCS5V2.0 that key is done the value after encrypting for the SEEDb with media server as key; C=H [b+SEEDb], c are the value of the seed SEEDb of b as a result that encrypted just now and monitoring frontend being done together digital digest;
D) media server is received after the INVITE, at first the k value is resolved into 3 part a ', b ' through decollator &; C ', and resolve separately, use the digital digest algorithm SHA1 that obtains among a ' that b '+SEEDb is done digital digest; The result and the c ' that obtain make comparisons; If unequal, prove the destroy integrity of b ', media server returns the sip server mistake; If equate; Because have only media server to know SEEDb, so can prove the integrality of b ', media server also uses the algorithm 3DES/ECB/PKCS5V2.0 that obtains among a ' that b ' is done deciphering with SEEDb as key; Obtain the value of key; Media server is replied 200 responses that have answer2 SDP content, k=d&e among the SDP, d=SHA1 to the SIF server; E=H [key+SEEDb];
E) sip server is received after the 200 OK response of media server; The k value is resolved into 2 part d ' through decollator &, e ', and resolve separately; Use the digital digest algorithm that obtains among the d ' that key+SEEDb is done digital digest; Compare with the value of e ',, return the media server error message if unequal; If equate then prove that sip server understands that media server has obtained correct encryption key key, reply ACK to media server; So far, sip server with the notice of encryption key safety media server;
F) the sip server ACK that will have an answer2 SDP content replies to monitoring frontend;
G) monitoring frontend uses the encrypted media streams of key as key to the media server transmission.
2. a kind of SIP video monitoring system method for distributing code stream encrypting and decrypting keys as claimed in claim 1; It is characterized in that: the also available asymmetric arithmetic protected code of described step (4) stream encryption key is exhaled 3pcc between logical monitoring frontend and the media server, and its step is following:
(1) sip server sends the INVITE of band offer2 SDP to monitoring frontend; Sip server produces the key of a random number k ey as encrypted bit stream; Calculate the value of k, k=A&B&C, A=RSA/ECB/PKCS1V2.1; SHA1, A have indicated used AES and digital digest algorithm; B=E [PUd, key], wherein E is a cryptographic calculation, and H is the digital digest algorithm, and d is a monitoring frontend, and PUd is the PKI of monitoring frontend, and PRd is the private key of monitoring frontend, and B does the value after encrypting for the PKI with monitoring frontend to key; C=H [E [PUd, key]+SEEDa], C are the value of the seed SEEDa of result who encrypted just now and monitoring frontend being done together digital digest;
(2) monitoring frontend is received after the INVITE, at first the k value is resolved into 3 part A through decollator & ', B '; C ', and resolve separately, use the digital digest algorithm SHA1 that obtains among the A ' that B '+SEEDa is done digital digest; The result and the C ' that obtain make comparisons; If unequal, prove the destroy integrity of B ', monitoring frontend returns the sip server mistake; If equate, because have only monitoring frontend to know SEEDa, so can prove the integrality of B '; Monitoring frontend is done deciphering with the private key of oneself to B ', obtains the value of key; Because have only monitoring frontend to have the private key of oneself, so have only monitoring frontend could obtain the value of key; Be D [PRd, B ']=key; Monitoring frontend is replied 200 responses that have offer3 SDP content, k=D&E among the SDP, D=SHA1 to sip server; E=H [key+SEEDa];
(3) sip server is received after the 200OK, and the k value is resolved into 2 part D ', E ' through decollator &; And resolve separately, use the digital digest algorithm that obtains among the D ' that key+SEEDa is done digital digest, compare with E '; If unequal, return the monitoring frontend error message; If equate then prove that sip server understands that monitoring frontend has obtained correct key, so far, sip server with the notice of encryption key safety monitoring frontend; Success is notified after the monitoring frontend, and sip server sends the INVITE that has offer3 SDP content to media server and calls out, and calculates the value of k; K=a&b&c; A=RSA/ECB/PKCS1V2.1, SHA1, a have indicated used AES and digital digest algorithm; B=E [PUs, key], wherein E is a cryptographic calculation, and H is the digital digest algorithm, and s is a media server, and PUs is the PKI of media server, PRs is the private key of media server), b does the value after encrypting for the PKI with media server to key; C=H [E [PUs, key]+SEEDb], the value of c is the seed SEEDb of result who encrypted just now and media server to be done together the value of digital digest;
(4) media server is received after the INVITE, at first the k value is resolved into 3 part a ', b ' through decollator &; C ', and resolve separately, use the digital digest algorithm SHA1 that obtains among a ' that b '+SEEDb is done digital digest; The result and the c ' that obtain make comparisons; If unequal, prove the destroy integrity of b ', media server returns the sip server mistake; If equate, because have only media server to know SEEDb, so can prove the integrality of b '; Media server is done deciphering with the private key of oneself to b '; Obtain the value of key, because have only media server to have the private key of oneself, so have only media server could obtain the value of key; Be D [PRs, b]=key.Media server is replied 200 responses that have answer2 SDP content, k=d&e among the SDP, d=SHA1 to sip server; E=H [key+SEEDb];
(5) sip server is received after the 200 OK response of media server; The k value is resolved into 2 part d ' through decollator &, e ', and resolve separately; Use the digital digest algorithm that obtains among the d ' that key+SEEDb is done digital digest; Compare with the value of e ',, return the media server error message if unequal; If equate then prove that sip server understands that media server has obtained correct encryption key key, reply ACK to media server.So far, sip server with the notice of encryption key safety media server;
(6) the sip server ACK that will have an answer2 SDP content replies to monitoring frontend;
(7) monitoring frontend is the encrypted media streams of key to the media server transmission with key.
3. a kind of SIP video monitoring system method for distributing code stream encrypting and decrypting keys as claimed in claim 1 is characterized in that: described key distribution is distribution in real time when code stream is encrypted in user's program request; Key distribution is an one-time pad; Monitoring frontend with encrypted bit stream ability all need not stored the enciphering/deciphering key with the client device with code stream decryption capabilities; The SEED that obtains during based on the facility registration two-way authentication of digital certificate is as the wildcard between equipment and the sip server; Adopt symmetry algorithm or asymmetric arithmetic protection key processes in the 3pcc process of video request program.
CN 200910260084 2009-12-24 2009-12-24 Method for distributing code stream encrypting and decrypting keys in SIP video monitoring system Active CN101729854B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200910260084 CN101729854B (en) 2009-12-24 2009-12-24 Method for distributing code stream encrypting and decrypting keys in SIP video monitoring system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910260084 CN101729854B (en) 2009-12-24 2009-12-24 Method for distributing code stream encrypting and decrypting keys in SIP video monitoring system

Publications (2)

Publication Number Publication Date
CN101729854A CN101729854A (en) 2010-06-09
CN101729854B true CN101729854B (en) 2012-12-12

Family

ID=42449936

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910260084 Active CN101729854B (en) 2009-12-24 2009-12-24 Method for distributing code stream encrypting and decrypting keys in SIP video monitoring system

Country Status (1)

Country Link
CN (1) CN101729854B (en)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102497581B (en) * 2011-12-14 2014-06-25 广州杰赛科技股份有限公司 Digital-certificate-based video monitoring data transmission method and system
CN103327374B (en) * 2012-10-26 2018-08-21 南京中兴软件有限责任公司 A kind of monitoring method and network television-set top-set-box
CN103596011B (en) * 2013-11-20 2017-07-04 北京中星微电子有限公司 The storage processing method and device of view data
CN104683291B (en) * 2013-11-27 2020-04-10 北京大唐高鸿数据网络技术有限公司 Session key negotiation method based on IMS system
CN104113409B (en) * 2014-07-23 2017-09-05 中国科学院信息工程研究所 The key management method and system of a kind of SIP video monitoring networkings system
CN105491567B (en) 2014-09-18 2020-06-16 中兴通讯股份有限公司 Method and device for acquiring SIP signaling decryption parameters
CN104270614B (en) * 2014-10-16 2017-07-14 浙江宇视科技有限公司 A kind of video-encryption decryption method and device
CN105262945A (en) * 2015-09-18 2016-01-20 北京奇虎科技有限公司 Signaling transmission method and device
CN105162797B (en) * 2015-09-24 2018-03-09 广东工业大学 A kind of mutual authentication method based on video monitoring system
CN105763571A (en) * 2016-04-27 2016-07-13 蓝盾信息安全技术有限公司 SIP-based asymmetric voice encryption
CN106131008B (en) * 2016-07-07 2020-05-05 北京仁信证科技有限公司 Video and audio monitoring equipment, security authentication method thereof and video and audio display equipment
CN106330898B (en) * 2016-08-23 2019-07-19 厦门唯网网络科技有限公司 A kind of video monitoring system and its equipment scheduling method and server
CN107948676A (en) * 2017-12-08 2018-04-20 苏州科达科技股份有限公司 Method of transmitting video data and device
CN111490876B (en) * 2020-04-03 2021-12-28 北京达龙上东文化艺术传播有限责任公司 Communication method based on USB KEY and USB KEY
CN111901568B (en) * 2020-08-10 2022-04-19 北京国泰网信科技有限公司 Data encryption system based on Internet of things monitoring terminal
CN112261239B (en) * 2020-09-18 2022-05-17 太原理工大学 Plaintext related image encryption method based on PUD adaptive decomposition
CN113179161B (en) * 2021-04-22 2022-11-08 平安消费金融有限公司 Method and device for replacing secret key, computer equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1913533A (en) * 2006-09-05 2007-02-14 北京天地互连信息技术有限公司 Remote video monitoring system based on session initialize protocol and its implementing method
CN1951096A (en) * 2004-03-13 2007-04-18 因特拉多公司 Bi-directional messaging for an emergency services network
EP1909456A3 (en) * 2006-10-04 2009-07-22 Alcatel Lucent Device and method for control and security of a multimedia subsystem

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1951096A (en) * 2004-03-13 2007-04-18 因特拉多公司 Bi-directional messaging for an emergency services network
CN1913533A (en) * 2006-09-05 2007-02-14 北京天地互连信息技术有限公司 Remote video monitoring system based on session initialize protocol and its implementing method
EP1909456A3 (en) * 2006-10-04 2009-07-22 Alcatel Lucent Device and method for control and security of a multimedia subsystem

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
石志强等.大规模可运营视频监控网络系统的安全机制.《北京邮电大学学报》.2009,第32卷 *

Also Published As

Publication number Publication date
CN101729854A (en) 2010-06-09

Similar Documents

Publication Publication Date Title
CN101729854B (en) Method for distributing code stream encrypting and decrypting keys in SIP video monitoring system
Otway et al. Efficient and timely mutual authentication
CN104618110B (en) A kind of VoIP security conferences session key transmission method
CN104486077B (en) A kind of end-to-end cryptographic key negotiation method of VoIP real time datas safe transmission
CN104683304B (en) A kind of processing method of secure traffic, equipment and system
WO2010150813A1 (en) Cryptogram-key distribution system
CN108199835A (en) A kind of multi-party joint private key decryption method and system
CN104735068A (en) SIP security authentication method based on commercial passwords
CN104243494B (en) A kind of data processing method
CN104168267A (en) Identity authentication method for accessing SIP security video monitoring system
CN109218825A (en) A kind of video encryption system
CN105847238A (en) Safe data transmission method based on Real-Time Messaging Protocol (RTMP) connections
CN109194656A (en) A kind of method of distribution wireless terminal secure accessing
CN102075802B (en) Method for realizing secure communication between set-top box and intelligent card
CN112702318A (en) Communication encryption method, decryption method, client and server
CN109151508A (en) A kind of video encryption method
CN104113409A (en) Secret key managing method and system of SIP (session initiation protocol) video monitoring networking system
CN101958907A (en) Method, system and device for transmitting key
CN112422276B (en) Method and system for realizing multi-party key agreement
CN116614599B (en) Video monitoring method, device and storage medium for secure encryption
US8488795B2 (en) Method for providing a symmetric key for protecting a key management protocol
CN114553441B (en) Electronic contract signing method and system
CN109104278A (en) A kind of encrypting and decrypting method
CN114531243B (en) Alliance chain transaction privacy protection method based on label encryption and zero knowledge proof
CN102917252B (en) IPTV (internet protocol television) program stream content protection system and method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant