IP Library Granted Patent US 7,310,423
Granted Patent B2
US 7,310,423 · App. 10/422,376 · Granted Dec 18, 2007

Processing multiple encrypted transport streams

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,310,423
App. No.
10/422,376
Granted
Dec 18, 2007
Kind
B2
Abstract

A single decryption engine is used for decrypting a plurality of encrypted transport streams. Packets in each of the plurality of encrypted transport streams are tagged with a tag value to indicate their origin stream. The tagged packets from the plurality of encrypted transport streams are merged into a merged transport stream. The packets in the merged transport stream are decrypted with the decryption engine to produce a decrypted merged transport stream. The decrypted merged transport stream is split into a plurality of decrypted transport streams, equal in number to the plurality of encrypted transport streams, by routing packets in the decrypted merged transport stream to specific decrypted transport streams according to their tag value. A null-packet padding technique, a gapped-clock technique and a multi-port static RAM controller technique are disclosed.

Claims (42)

1. A method for decrypting a plurality of encrypted transport streams, each transport stream comprising at least two elementary streams each containing a plurality of packets, with a single-stream decryption engine, comprising:

tagging packets of the elementary streams in each of the plurality of encrypted transport streams which are encrypted with a tag value to indicate their origin transport stream;

merging only the tagged packets from the plurality encrypted transport streams which are encrypted into a merged transport stream to be provided to a decryption unit;

decrypting packets in the merged transport stream with the decryption engine to produce a decrypted merged transport stream; and

splitting the decrypted merged transport stream into a plurality of decrypted transport streams equal in number to the plurality of encrypted transport streams by routing packets in the decrypted merged transport stream to specific decrypted transport streams according to their tag value,

wherein the step of merging only the tagged packets from the plurality encrypted transport streams which are encrypted is performed based on a packet identifier (PID) value within a packet tag, and

whereby packets of elementary streams which are not encrypted are passed to an output stream without being processed by the decryption engine.

2. A method according to claim 1 , wherein: the decryption engine is a single-chip device.

3. A method according to claim 1 , wherein: the encrypted transport streams are MPEG-2 transport streams.

4. A method according to claim 1 , further comprising: for each encrypted transport stream, determining a PID value for each encrypted packet, re-mapping the PID values according to a PID map table, and saving the original PID value.

5. A method according to claim 4 , wherein: the re-mapped PID values are the tag values.

6. A method according to claim 4 , wherein: a match between a PID map table entry and an original PID value indicates that the packet is to be decrypted.

7. A method according to claim 1 , wherein: the number of encrypted transport streams is two.

8. An apparatus for decrypting a plurality of encrypted transport streams, each transport stream comprising at least two elementary streams each containing a plurality of packets, with a single-stream decryption engine, comprising:

means for tagging packets of the elementary streams in each of the plurality of encrypted transport streams which are encrypted with a tag value to indicate their origin transport stream;

means for merging only the tagged packets from the plurality encrypted transport streams which are encrypted into a merged transport stream to be provided to a decryption unit;

means for decrypting packets in the merged transport stream with the decryption engine to produce a decrypted merged transport stream; and

means for splitting the decrypted merged transport stream into a plurality of decrypted transport streams equal in number to the plurality of encrypted transport streams by routing packets in the decrypted merged transport stream to specific decrypted transport streams according to their tag value,

wherein the means for merging only the tagged packets from the plurality encrypted transport streams which are encrypted merges only the tagged packets which are encrypted based on a packet identifier (PID) value within a packet tag, and

whereby packets of elementary streams which are not encrypted are passed to an output stream without being processed by the decryption engine.

9. Apparatus according to claim 8 , wherein: the decryption engine is a single-chip device.

10. Apparatus according to claim 8 , wherein: the encrypted transport streams are MPEG-2 transport streams.

11. Apparatus according to claim 8 , further comprising, for each encrypted transport stream: means for determining a PID value for each encrypted packet; means for re-mapping the PID values according to a PID map table; and means for saving the original PID value.

12. Apparatus according to claim 11 , wherein: the re-mapped PID values are the tag values.

13. Apparatus according to claim 11 , wherein: a match between a PID map table entry and an original PID value indicates that the packet is to be decrypted.

14. Apparatus according to claim 8 , wherein: the number of encrypted transport streams is two.

15. Apparatus according to claim 8 , wherein: the apparatus is implemented in an FPGA.

16. Apparatus according to claim 8 , wherein: the apparatus is implemented in an FPGA with external SRAM.

17. An apparatus for decrypting a plurality of encrypted transport streams, each transport stream comprising at least two elementary streams each containing a plurality of packets, with a single-stream decryption engine, comprising:

a receiver which receives the plurality of encrypted transport streams simultaneously and selects at least two transport streams to be provided to a user as selected transport streams;

a marking unit which tags encrypted packets of the elementary streams in each of the selected transport streams with a tag value to indicate their origin selected transport stream;

a merging unit which merges only the tagged packets from the plurality encrypted transport streams which are encrypted into a merged transport stream;

a decryption unit which decrypts packets in the merged transport stream with the decryption engine to produce a decrypted merged transport stream; and

a separating unit which separates the decrypted merged transport stream into a plurality of decrypted transport streams equal in number to the plurality of selected transport streams by routing packets in the decrypted merged transport stream to specific decrypted transport streams according to their tag value,

wherein the merging unit merges only the tagged packets from the plurality encrypted transport streams which are encrypted based on a packet identifier (PID) value within a packet tag, and

whereby a single decryption engine decrypts each of the selected transport streams, and packets of elementary streams which are not encrypted are passed to an output stream without being processed by the decryption engine.

18. Apparatus according to claim 17 , wherein: the decryption engine is a single-chip device.

19. Apparatus according to claim 17 , wherein each transport stream of the plurality of transport streams are from a different source.

20. Apparatus according to claim 17 , wherein: the encrypted transport streams are MPEG-2 transport streams.

21. Apparatus according to claim 17 , further comprising, for each encrypted transport stream: means for determining a PID value for each encrypted packet; means for re-mapping the PID values according to a PID map table; and means for saving the original PID value.

22. Apparatus according to claim 21 , wherein: the re-mapped PID values are the tag values.

23. Apparatus according to claim 21 , wherein: a match between a PID map table entry and an original PID value indicates that the packet is to be decrypted.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 26, 2014
From: MOTOROLA MOBILITY LLC
To: GOOGLE TECHNOLOGY HOLDINGS LLC
Reel/Frame 034472/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2013
From: GENERAL INSTRUMENT CORPORATION
To: GENERAL INSTRUMENT HOLDINGS, INC.
Reel/Frame 030764/0575 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2013
From: GENERAL INSTRUMENT HOLDINGS, INC.
To: MOTOROLA MOBILITY LLC
Reel/Frame 030866/0113 →