IP Library Granted Patent US 7,570,765
Granted Patent B1
US 7,570,765 · App. 10/980,375 · Granted Aug 4, 2009

Method and an apparatus to perform secure real-time transport protocol-on-the-fly

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,570,765
App. No.
10/980,375
Granted
Aug 4, 2009
Kind
B1
Abstract

A method and an apparatus to perform Secure Real-time Transport Protocol-on-the-fly (SRTPoF) are disclosed. In one embodiment, the method includes monitoring negotiation between a first Voice-over-Internet-Protocol (VoIP) device and a second VoIP device after a call has been initiated between the first and the second VoIP devices, determining whether the first VoIP device is Secure Real-time Transport Protocol (SRTP)-capable and whether the second VoIP device is SRTP-capable, and performing SRTP-on-the-fly on a Real-time Transport Protocol (RTP) stream transmitted between the first and the second VoIP devices to make the call secure if the first VoIP device is not SRTP-capable and the second VoIP device is SRTP-capable. Other embodiments have been claimed and described.

Claims (75)

1. A method comprising:

monitoring negotiation between a first Voice-over-Internet-Protocol (VoIP) device and a second VoIP device during setup of a call between the first and the second VoIP devices;

determining whether the first VoIP device is Secure Real-time Transport Protocol (SRTP)-capable and whether the second VoIP device is SRTP-capable; and

performing SRTP-on-the-fly on a Real-time Transport Protocol (RTP) stream transmitted between the first and the second VoIP devices to make the call secure if the first VoIP device is not SRTP-capable and the second VoIP device is SRTP-capable, wherein performing SRTP-on-the-fly on the RTP stream comprises

encrypting the RTP stream using a firewall on the side of the first VoIP device as the RTP stream passes through the firewall if the first VoIP device sends the RTP stream to the second VoIP device, and

sending the encrypted RTP stream from the firewall to the second VoIP device.

2. The method of claim 1 , further comprising:

finding routing data from a VoIP transformation table, the routing data including at least one of an Internet Protocol (IP) address and a port number of each of the first and the second VoIP devices; and

using the routing data found and content of the negotiation to determine whether the first VoIP device is SRTP-capable and whether the second VoIP device is SRTP-capable.

3. The method of claim 1 , further comprises:

the firewall modifying one or more parameters in a message transmitted between the first and the second VoIP devices during the negotiation to indicate to the second VoIP device that the first VoIP device is SRTP-capable if the first VoIP device is not SRTP-capable and the second VoIP device is SRTP-capable.

4. The method of claim 3 , further comprising:

the firewall tearing down the encrypted RTP stream when the call is terminated.

5. The method of claim 4 , wherein the second VoIP device comprises a SRTP-capable firewall.

6. The method of claim 4 , wherein the second VoIP device comprises a SRTP-capable Internet Protocol (IP) phone.

7. The method of claim 1 , wherein performing SRTP-on-the-fly on the RTP stream comprises:

decrypting the RTP stream using a firewall on the side of the first VoIP device as the RTP stream passes through the firewall if the second VoIP device sends the RTP stream to the first VoIP device; and

sending the decrypted RTP stream from the firewall to the first VoIP device.

8. The method of claim 1 , wherein the RTP stream comprises at least one of voice and video data.

9. A machine-accessible medium that provides instructions that, if executed by a processor, will cause the processor to perform operations comprising:

monitoring negotiation between a first Voice-over-Internet-Protocol (VoIP) device and a second VoIP device during setup of a call between the first and the second VoIP devices;

determining whether the first VoIP device is Secure Real-time Transport Protocol (SRTP)-capable and whether the second VoIP device is SRTP-capable; and

performing SRTP-on-the-fly on a Real-time Transport Protocol (RTP) stream transmitted between the first and the second VoIP devices to make the call secure if the first VoIP device is not SRTP-capable and the second VoIP device is SRTP-capable, wherein performing SRTP-on-the-fly on the RTP stream comprises

encrypting the RTP stream using a firewall on the side of the first VoIP device as the RTP stream passes through the firewall if the first VoIP device sends the RTP stream to the second VoIP device, and

sending the encrypted RTP stream from the firewall to the second VoIP device.

10. The machine-accessible medium of claim 9 , wherein the operations further comprise:

finding routing data from a VoIP transformation table, the routing data including at least one of an Internet Port (IP) address and a port number of each of the first and the second VoIP devices; and

using the routing data found and content of the negotiation to determine whether the first VoIP device is SRTP-capable and whether the second VoIP device is SRTP-capable.

11. The machine-accessible medium of claim 9 , wherein the operations further comprise:

the firewall modifying one or more parameters in a message transmitted between the first and the second VoIP devices during the negotiation to indicate to the second VoIP device that the first VoIP device is SRTP-capable if the first VoIP device is not SRTP-capable and the second VoIP device is SRTP-capable.

12. The machine-accessible medium of claim 11 , wherein the operations further comprise:

the firewall tearing down the encrypted RTP stream when the call is terminated.

13. The machine-accessible medium of claim 12 , wherein the second VoIP device comprises a SRTP-capable firewall.

14. The machine-accessible medium of claim 12 , wherein the second VoIP device comprises a SRTP-capable Internet Protocol (IP) phone.

15. The machine-accessible medium of claim 9 , wherein performing SRTP-on-the-fly on the RTP stream comprises:

decrypting the RTP stream using a firewall on the side of the first VoIP device as the RTP stream passes through the firewall if the second VoIP device sends the RTP stream to the first VoIP device; and

sending the decrypted RTP stream from the firewall to the first VoIP device.

16. The machine-accessible medium of claim 9 , wherein the RTP stream comprises at least one of voice and video data.

17. An apparatus comprising:

a first interface to be coupled to a first Voice-over-Internet-Protocol (VoIP) device;

a second interface to be coupled to a second VoIP device via an internet;

a monitor to monitor negotiation between the first and the second VoIP devices during setup of a call between the first and the second VoIP devices; and

an encoder-decoder to perform Secure Real-time Transport Protocol (SRTP)-on-the-fly on a Real-time Transport Protocol (RTP) stream transmitted between the first and the second VoIP devices to make the call secure if the first VoIP device is not SRTP-capable and the second VoIP device is SRTP-capable, wherein the encoder-decoder comprises an encoder to encrypt the RTP stream on the side of the first VoIP device as the RTP stream arrives from the first VoIP device if the first VoIP device sends the RTP stream to the second VoIP device.

18. The apparatus of claim 17 , further comprising:

a storage device to store routing data, the routing data including at least one of an Internet Port (IP) address and a port number of each of the first and the second VoIP devices; and

processing logic to use the routing data and content of the negotiation to determine whether the first VoIP device is SRTP-capable and whether the second VoIP device is SRTP-capable.

19. The apparatus of claim 17 , wherein the encoder-decoder comprises a decoder to decrypt the RTP stream on the side of the first VoIP device as the RTP stream arrives from the second VoIP device if the second VoIP device sends the RTP stream to the first VoIP device.

20. The apparatus of claim 17 , wherein the RTP stream comprises at least one of voice and video data.

21. A system comprising:

a first Voice-over-Internet-Protocol (VoIP) device;

a local area network (LAN) coupled to the first VoIP device; and

a firewall coupled to the first VoIP device via the LAN, the firewall comprising:

a first interface coupled to the LAN;

a second interface coupled to a second VoIP device via an internet;

a monitor to monitor negotiation between the first and the second VoIP devices during setup of a call between the first and the second VoIP devices; and

an encoder-decoder to perform Secure Real-time Transport Protocol (SRTP)-on-the-fly on a Real-time Transport Protocol (RTP) stream transmitted between the first and the second VoIP devices to make the call secure if the first VoIP device is not SRTP-capable and the second VoIP device is SRTP-capable, wherein the encoder-decoder comprises an encoder to encrypt the RTP stream on the side of the first VoIP device as the RTP stream arrives from the first VoIP device if the first VoIP device sends the RTP stream to the second VoIP device.

22. The system of claim 21 , wherein the firewall further comprises:

a storage device to store routing data, the routing data including at least one of an Internet Port (IP) address and a port number of each of the first and the second VoIP devices; and

processing logic to use the routing data and content of the negotiation to determine whether the first VoIP device is SRTP-capable and whether the second VoIP device is SRTP-capable.

23. The system of claim 21 , wherein the encoder-decoder comprises a decoder to decrypt the RTP stream on the side of the first VoIP device as the RTP stream arrives from the second VoIP device if the second VoIP device sends the RTP stream to the first VoIP device.

24. The system of claim 21 , wherein the RTP stream comprises at least one of voice and video data.

25. A method comprising:

modifying one or more parameters in a message transmitted between a first and a second Voice-over-Internet-Protocol (VoIP) devices during negotiation of a VoIP call to establish a Real-time Transport Protocol (RTP) stream from the first VoIP device and a Secure RTP (SRTP) stream toward the second VoIP device;

encrypting packets of the VoIP call sent by the first VoIP device to the second VoIP device;

decrypting packets of the VoIP call sent by the second VoIP device to the first VoIP device; and

determining SRTP capability of the first VoIP device and SRTP capability of the second VoIP device, wherein modifying the one or more parameters in the message comprises modifying the one or more parameters in the message in response to the SRTP capability of the first VoIP device and the SRTP capability of the second VoIP device.

26. The method of claim 25 , further comprising:

finding routing data from a VoIP transformation table, the routing data including at least one of an Internet Port (IP) address and a port number of each of the first and the second VoIP devices, wherein determining the SRTP capability of the first VoIP device and SRTP capability of the second VoIP device comprises using the routing data found and content of the negotiation to determine the SRTP capability of the first VoIP device and the SRTP capability of the second VoIP device.

27. A machine-accessible medium that provides instructions that, if executed by a processor, will cause the processor to perform operations comprising:

modifying one or more parameters in a message transmitted between a first and a second Voice-over-Internet-Protocol (VoIP) devices during negotiation of a VoIP call to establish a Real-time Transport Protocol (RTP) stream from the first VoIP device and a Secure RTP (SRTP) stream toward the second VoIP device;

encrypting packets of the VoIP call sent by the first VoIP device to the second VoIP device;

decrypting packets of the VoIP call sent by the second VoIP device to the first VoIP device; and

determining SRTP capability of the first VoIP device and SRTP capability of the second VoIP device, wherein modifying the one or more parameters in the message comprises modifying the one or more parameters in the message in response to the SRTP capability of the first VoIP device and the SRTP capability of the second VoIP device.

28. The machine-accessible medium of claim 27 , wherein the operations further comprise:

finding routing data from a VoIP transformation table, the routing data including at least one of an Internet Port (IP) address and a port number of each of the first and the second VoIP devices, wherein determining the SRTP capability of the first VoIP device and SRTP capability of the second VoIP device comprises using the routing data found and content of the negotiation to determine the SRTP capability of the first VoIP device and the SRTP capability of the second VoIP device.

Assignments (23)
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS RECORDED AT RF 046321/0393 Recorded Jun 16, 2025
From: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
To: SONICWALL US HOLDINGS INC.
Reel/Frame 071625/0887 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: SONICWALL US HOLDINGS INC.
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 046321/0414 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: SONICWALL US HOLDINGS INC.
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 046321/0393 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS RECORDED AT R/F 040581/0850 Recorded May 22, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 046211/0735 →
CHANGE OF NAME Recorded Apr 30, 2018
From: DELL SOFTWARE INC.
To: QUEST SOFTWARE INC.
Reel/Frame 046040/0277 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 040587 FRAME: 0624. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 28, 2017
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 044811/0598 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THE NATURE OF CONVEYANCE PREVIOUSLY RECORDED AT REEL: 041073 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE INTELLECTUAL PROPERTY ASSIGNMENT.. Recorded Apr 5, 2017
From: QUEST SOFTWARE INC.
To: SONICWALL US HOLDINGS INC.
Reel/Frame 042168/0114 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jan 23, 2017
From: QUEST SOFTWARE INC.
To: SONICWALL US HOLDINGS, INC.
Reel/Frame 041073/0001 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Nov 10, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040587/0624 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Nov 9, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040581/0850 →
RELEASE OF SECURITY INTEREST Recorded Oct 31, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0467 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040039/0642) Recorded Oct 31, 2016
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0016 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040030/0187 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040039/0642 →
MERGER Recorded Dec 15, 2015
From: SONICWALL L.L.C.
To: DELL SOFTWARE INC.
Reel/Frame 037292/0422 →
CONVERSION AND NAME CHANGE Recorded Dec 15, 2015
From: SONICWALL, INC.
To: SONICWALL L.L.C.
Reel/Frame 037301/0604 →
RELEASE OF SECURITY INTEREST IN PATENTS RECORDED ON REEL/FRAME 024823/0280 Recorded May 8, 2012
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: AVENTAIL LLC; SONICWALL, INC.
Reel/Frame 028177/0126 →
RELEASE OF SECURITY INTEREST IN PATENTS RECORDED ON REEL/FRAME 024776/0337 Recorded May 8, 2012
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: AVENTAIL LLC; SONICWALL, INC.
Reel/Frame 028177/0115 →
SECURITY AGREEMENT Recorded Aug 3, 2010
From: AVENTAIL LLC; SONICWALL, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 024776/0337 →
PATENT SECURITY AGREEMENT (SECOND LIEN) Recorded Aug 3, 2010
From: AVENTAIL LLC; SONICWALL, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 024823/0280 →
MERGER Recorded Jul 28, 2010
From: SONICWALL, INC.
To: PSM MERGER SUB (DELAWARE), INC.
Reel/Frame 024755/0083 →
CHANGE OF NAME Recorded Jul 28, 2010
From: PSM MERGER SUB (DELAWARE), INC.
To: SONICWALL, INC.
Reel/Frame 024755/0091 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF THE ASSIGNEE, WHICH WAS INCORRECTLY RECORDED WITH A (SPACE) IN THE NAME AND PREVIOUSLY RECORDED ON REEL 015958 FRAME 0239. ASSIGNOR(S) HEREBY CONFIRMS THE NAME OF THE ASSIGNEE AS SONICWALL, INC. Recorded Jul 15, 2010
From: ESLAMBOLCHIZADEH, ARIA
To: SONICWALL, INC.
Reel/Frame 024686/0776 →