CA2159645A1 - Methods and apparatus for scrambling and unscrambling compressed data streams - Google Patents

Methods and apparatus for scrambling and unscrambling compressed data streams

Info

Publication number
CA2159645A1
CA2159645A1 CA002159645A CA2159645A CA2159645A1 CA 2159645 A1 CA2159645 A1 CA 2159645A1 CA 002159645 A CA002159645 A CA 002159645A CA 2159645 A CA2159645 A CA 2159645A CA 2159645 A1 CA2159645 A1 CA 2159645A1
Authority
CA
Canada
Prior art keywords
data
codewords
encrypted
recited
seed
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.)
Abandoned
Application number
CA002159645A
Other languages
French (fr)
Inventor
William Bradford Thatcher Jr.
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.)
Scientific Atlanta LLC
Original Assignee
Scientific Atlanta LLC
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 Scientific Atlanta LLC filed Critical Scientific Atlanta LLC
Publication of CA2159645A1 publication Critical patent/CA2159645A1/en
Abandoned legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/30Compression, e.g. Merkle-Damgard construction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/34Encoding or coding, e.g. Huffman coding or error correction

Abstract

Methods and apparatus for encoding compressed data streams efficiently, and methods and apparatus for decoding the encrypted data streams are disclosed. In an encoder (10'), an incoming data stream is fed to a Huffman coding block (10) that performs data compression.
The output codewords are fed to a forward error correction block (30). The data blocks are fed to an error insertion block (32), which inserts a one-bit error in each data block. The parity data is fed to a first encryption block (34) that produces encrypted parity data. The output of the error insertion block (32), the encrypted parity data, and a synchronization word output by a sync generator (50) are fed to a multiplexer (48). A seed generator block (36) generates random numbers for use by the first encryption block (34) as seeds for encryption the parity data. A multisession key register (40) stores a multisession key employed as a seed in a second encryption block (38) to encrypt the random number seed. A secret serial number (SSN) read from a database (46) and stored in an SSN register (44) is employed by a third encryption block (42) as a seed for encrypting the multisession key. A decoder (14') receives the multiplex data and recovers the original data.

Description

2159fi4S
WO94/~511 ~ PCT~S94/03319 MET~OD8 AND APPARATU~ FOR ~CRAMBLING AND UN~CRAMBLING
COMPR~8QED DATA 8TREAM8 FI~LD OF T~E INVENTION
The present invention relates generally to the fields of data compression and data encryption. More particularly, the present invention relates to methods and apparatus for encrypting, or scrambling, digital data compressed into variable length codewords. The invention may advantageously be applied in digital video and audio systems to provide efficient and inexpensive encryption and decryption.

R~C~ ~ND OF T~ INVENTION
The background of the present invention is described herein in the context of pay television systems, such as cable television and direct broadcast satellite (DBS) systems, that distribute a variety of program services to subscribers, but the invention is by no means limited thereto except as expressly set forth in the accompanying claims.
~n the pay television industry, programmers produce programs for distribution to various remote locations. A "~LG~Lam" may consist of video, audio, and other related services, such as closed-captioning and teletext services. Typically, a ~IG~Lammer will supply these services via satellite to individual subscribers and/or cable television operators. In the case of cable television operators, the services transmitted via satellite are received at the operator's cable head-end WO94/~511 PCT~S~1~331s 2~S9~4~ 2 -installations. A cable operator typically receives programs and other services from many programmers and then selects the programs/services it wishes to distribute to its subscribers. In addition, a cable operator may insert locally produced services at the cable-head end. The selected services and locally produced services are then transmitted to the individual subscribers via a coaxial cable di6tribution network. In the case of DBS
subscribers, each subscriber is capable of receiving a satellite down-link from the programmers directly.
In the past, pay television systems, including cable and DBS systems, have operated in the analog domain.
Recently, however, the pay television industry has begun to move toward all digital systems wherein, prior to transmission, all analog signals are converted to digital signal~. Digital signal transmission offers the advantage that digital data can be proceæsed at both the transmission and reception ends to improve picture quality. Further, digital data compression techniques have been developed that achieve high signal compression ratios. Digital compression allows a larger number of individual services to be transmitted within a fixed bandwidth. Bandwidth limitations are imposed by both satellite transponders and co~Yi~l cable distribution networks, and therefore digital compres6ion is extremely advantageous. Further background on digital television can be found in U.S. patent application Serial No. 968,846, October 30, 1992, titled System and Method for Transmitting a Plurality of Digital Services, which is hereby incorporated by reference as if fully set forth herein.
Figure 1 schematically depicts a portion of a digital television system. This system comprises an encoder 10, a digital channel 12, and a deco~r 14. The encoder and decoder each have access to identical Huffman lookup tables (or code books) 16 for use in compressing and decompressing digital program data. Exemplary program data is represented by the sequence of numbers 18 at the input WO94/~511 2 1 S 9 6 ~ S PCT~S94103319 of the encoA~r lO and the output of the decoder 14. The compressed data (sequence of codewords) is represented by the sequence of bit patterns 20. Huffman coding is a variable length coding (VLC) process that encodes frequent events with fewer bits than it encodes infrequent events.
As illustrated in the following table (which is also shown in Figure l), variable length codéwords are preassigned to the symbols representable in the system in accordance with a Huffman code.
~nFFMAN TAB~E
8ymbol co~-wor~
O O

-2 lOl 15 +2 llO
-3 lllOO
+1 11101 +7 llllO

In a digital video system, identical code books, typically stored in read only memory, are employed at the data enco~r and decoder locations. The decoder is able to separate the received codewords to perform the decompression process, despite the fact that the codewords are of variable lengths, because only prescribed symbols are allowed. For example, if the bits "OlOOlOl" were received, the deco~er would be able to separate this received data stream into the codewords "O", "lOO", and "lOl". Typically, a synchronization pattern is employed to separate large groups of codewords. However, the decoder still must be able to separate the individual codewords between the synchronization patterns.

W094/~511 PCT~Ss4/03319 ?,'~S9~4S
- Thus, the most efficient compression is obtained when variable length coding (VLC) is used. However, because of the variable codeword lengths, if a single bit error occurs, the Huffman decoder will lose synchronization and be unable to recover any data following the error. For example, if the data stream "0100101" were changed to "1100101" due to an erroneous inversion of the first bit, the ~coAPr would be unable to decide whether the received data stream should be interpreted as "1100", "101" (two distinct codewolds), or "110", "0", "101" (three distinct codewords). In view of the problems associated with decoAing variable length codewords in most real world environments, where bit errors are likely, forward error correction (FEC) should be employed to detect and correct errors before Huffman coding is performed. For example, the Reed-Solomon algorithm is a well known FEC t~chni que whereby parity data is computed and transmitted with data blocks of a prescribed length. The parity data enables the ~ecoAPr to detect and correct errors in the codewords before decompressing the codewords to recover the original data.
Theft is also a ~erious problem in the pay television world. Thieves have been known to illegally decode ~oy~am data with home made or stolen decoders.
Highly sophisticated encryption techniques for scrambling the program data before it is distributed to cable television operators and individual subscribers are known.
For example, the Data Encryption St~nA~rd (DES), described in NBS, D~ta Encryption StAn~Ard (FIPS Publication 46J, National Bureau of StA~Ards, U.S. Department of Commerce, Washington, DC (January, 1977)), and the Rivest-Shamir-Adleman (RSA) scheme, described in R.L. Rivest, A. Shamir, and L. Adleman, A Method of ObtA i n i ng Digital Signatures and Public-key Cryptosystems, Communications of the ACM
21(2), pp. 120-126 (February 1978)), are well known.
However, decryption of high speed data requires complex, specially designed circuitry, usually in the form of 21596~
W094n3511 PCT~S94/03319 application specific integrated circuits (ASICs). The ASICs are e~pencive but are needed to perform decryption rapidly, in real time. Therefore, the benefit gained by employing encryption to deter program theft is offset by the cost in~l L ed by the decryption circuitry.
Accordingly, a primary goal of the present invention is to provide methods and apparatus for encrypting digital data streams in a manner that enables decryption in real time with inexpensive hardware.

8~NMARY OF T~ INVENTION
The present invention provides methods and apparatus for encoAing compressed data streams efficiently, and methods and apparatus for decoding the encrypted data streams efficiently and inexpensively. Methods for ~ncoAing data in accordance with the present invention comprise the steps of: compressing an incoming data stream into variable length codewords; generating error correction parity data for the codewords; illL~od~cing an error into the codcuoLds; encrypting the parity data; and transmitting the codewo~ds and encrypted parity data.
A preferred emhoA;ment of the present invention further comprises the steps of generating a seed for el.~Ly~Ling the parity data, encrypting the seed, and transmitting the encrypted seed as a system data packet (SDP).
In addition, embodiments of the invention may include the steps of employing a multisession key to encrypt the seed, encrypting the multisession key, and transmitting the encrypted multisession key as an addressable data packet (ADP).
Embodiments of the invention may also include the step of employing a secret serial number (SSN) to encrypt the multisession key.
The encrypted parity data may advantageously be transmitted before the codewords are transmitted. This provides the decoder more time to decrypt the parity data, WO941~511 PCT~S94/03319 ~ and is useful in that the decrypted parity data is required by the decoder when correcting the deliberate error in the ~oy~&m data. In addition, the step of generating error correction parity data may advantageously employ a Reed-Solomon forward error correction process, whereby parity words and associated data blocks are generated. The step of e..-Ly~Ling the parity data may comprise inserting one error per Reed-Solomon data block, and the step of compressing an incoming data stream into variable length codewords may employ Huffman coding to generate variable length Huffman codewords.
Preferred embodiments may also include the steps of generating a synchronization word; multiplexing the synchronization word with the codewords and encrypted parity data before transmitting the codewords and encrypted parity data; and transmitting the multiplexed data.
The present invention also provides encoders including means for carrying out the above-described methods. In one preferred emhoAiment, the first, second, and third decryption means, and the means for storing an SSN, are embodied in a secure microproce~or, making it extremely difficult for an unauthorized person to discover the SSN and decryption processes.
The present invention also provides methods and apparatus for APcoAing the encrypted data. According to the invention, a decoder receives an incoming data stream and demultiplexes the data stream into variable length codewords representing a compressed data stream, encrypted parity data, a system data packet (SDP) defining an e..~y~Led seed, and an addressable data packet (ADP) defining an encrypted multisession key. The ADP is then decrypted to derive the multisession key; the SDP is decrypted in accordance with the multisession key to derive the seed; the parity data is decrypted in accordance with the seed; errors in the codewords are corrected in accordance with the decrypted parity data; and a WO941~511 2 1 5 9 6 4 5 PCT~S94/03319 decompressed data stream is generated in accordance with the corrected codewords.
Thus, in preferred embodiments of the invention, a deliberate error is added to the Huffman codewords in the encoder and the associated FEC parity bytes are encrypted.
The parity bytes are much smaller than the coded data, and thus can be decrypted off-line in a microprocessor.
Consequently, decryption of high-speed p~Gy~am data is accomplished effectively by background decryption of the FEC parity bytes, enabling the FEC means in the decoder to correct the deliberate error. The present invention simplifies encryption and decryption of high-speed program data by employing the FEC system and hardware, which is typically used for correction of noise-induced errors, for an additional ~ ~e: to provide conditional access to the ~oy.~m data. Off-line (or background, or non-real time) hardware can be used to perform real time decryption of the high-speed ~ GYL am data. Decoder cost may therefore be significantly reduced. Other features and advantages of the present invention are disclosed below.

BRIEF D --DTPTION OF TB DRA~ING8 Figure l is a schematic representation of a digital television system comprising an encoder lO, a digital rh~n~el 12, and a decoder 14.
Figure 2 is a block diagram of an encoder lO' in accordance with the present invention.
Figure 3 is a block diagram of a decoder 14i in accordance with the present invention.

DET~T~ ~DTPTION OF PREFERRED ENBODIMENT8 Figure 2 schematically depicts one embodiment of an encoder lO' in accordance with the present invention.
As shown, an incoming data stream is fed to a Huffman co~i~g block l0 that performs data compression. The output codewo~ds of the Huffman coding block are fed to a Reed-Solomon forward error correction block 30, the output of wog4n3511 PCT~S94/03319 2~S 9~ 4~ - 8 -which is a series of data blocks and associated parity data. The data blocks are fed to an error insertion block 32, which inserts a one-bit error in each data block. The parity data is fed to a first encryption block 34 that employs a known encryption algorithm, e.g., the DES
algorithm, to produce encrypted parity data. The output of the error insertion block 32, the encrypted parity data, and a synchronization word output by a sync generator 50 are fed to a multiplexer 48. In addition, a seed generator block 36 generates random numbers for use by the first encryption block 34 as seeds for encrypting the parity data. A multisession key register 40 stores a multisession key employed as a seed in a second encryption block 38 to e..~L~ the random number seed. The encrypted random number seed is referred to herein as a system d~ta packet (SDP). A secret serial number (SSN) read from a database 46 and stored in an SSN register 44 is employed by a third encryption block 42 as a seed for encrypting the multi-^ccion key. The encrypted multisession key output by the third encryption block 42 is referred to herein as an addressabl e dat~ p~cket (ADP). As shown, the SDP and ADP
are also fed to the multiplexer 48. The multiplexer ou~ s a multiplex comprising the sync signal, SDP, ADP, and Reed-Solomon data blocks with their corresponding parity data. In one example of the present invention, the random number seed changes at a rate of eight times per second; the multisession key is changed at a rate of one time per month; and the secret serial number is a fixed number stored in the datAhA~e 46. There is a unique SSN
for each authorized decoder in the system.
Figure 3 schematically depicts one embodiment of a A~coAer in accordance with the present invention. As shown, multiplex data 52 is received and fed to a de-multiplexer 54, which separates out the Huffman data, encoAPA parity data, SDP, and ADP. The Huffman data blocks are fed to a Reed-Solomon FEC block 56, which outputs ~v~Le~-ted Huffman data. Since the FEC block 56 requires W094n3511 PCT~S94/03319 _ g _ decrypted parity data to perform error correction on the program data, the encrypted parity data is fed to a first decryption block 58, which decrypts the parity data in accordance with the decryption process corresponding to the encryption ~L G~e~S employed by the encoder. The first de_Ly~ion block 58 employs the random number seed generated by the random number generator of the encoder.
Thu~, the SDP (which is the encrypted version of the random number seed) must also be decrypted to obtain the random number ~eed. To decrypt the SDP, the ADP is decrypted to produce the multisession key, the latter being employed as a seed in a ~econ~ decryption block 60. The ADP is decrypted by employing the decoder's secret serial number, which i8 stored in memory 64 inside the decoder, as a seed for a third decryption block 62. The output of the Reed-Solomon FEC block 56 is a series of compressed but corrected Huffman codewords. The corrected Huffman codewords are fed to a Huffman decoder 14, which employs a lookup table 16 to produce the original compressed data.
In preferred embodiments of the invention, the first, r?conA and third decryption blocks, as well as the ~coAPr's secret ~erial number, are embodied in a secure microproces~or, for example, a Motorola SC21 or SC27 secure mi~G~-o--ecror. Such a microprocessor has a limited number of pins (e.g., six) and employs extraordinary measures to prevent an unauthorized person from discovering the SSN or the decryption ~lG~edures employed in the decoder.
It will be appreciated by those skilled in the art that changes could be made to the embodiments described herein without departing from the inventive concepts thereof. For example, the present invention is not limited to systems employing any particular encryption tec~n;que (e.g., DES) or compression technique (e.g., Huffman coding), although the invention is especially well suited for systems employing variable length coding, since the latter systems must employ forward error correction. In addition, emho~iments of the invention may introduce more q ~
PCT~S94103319 than one error into the codewords or introduce one or more errors into some but not all codewords. It is understood, therefore, that the scope of protection of the following claims is not limited to the particular embodiments disclo~ed, but is broad enough to encompass all modifications which are within the true-`scope and spirit of the invention. ~;~

Claims (31)

What is claimed is:
1. A method for encoding data, comprising the steps of:
(a) compressing an incoming data stream into variable length codewords;
(b) generating error correction parity data for said codewords;
(c) introducing an error into said codewords;
(d) encrypting said parity data; and (e) transmitting said codewords and encrypted parity data.
2. A method for encoding data as recited in claim 1, further comprising the steps of generating a seed for encrypting said parity data, encrypting said seed, and transmitting the encrypted seed as a system data packet (SDP).
3. A method for encoding data as recited in claim 2, further comprising the steps of employing a multisession key to encrypt said seed, encrypting said multisession key, and transmitting the encrypted multisession key as an addressable data packet (ADP).
4. A method for encoding data as recited in claim 3, comprising the step of employing a secret serial number (SSN) to encrypt said multisession key.
5. A method for encoding data as recited in claim 1, wherein said encrypted parity data is transmitted before said codewords are transmitted.
6. A method for encoding data as recited in claim 1, wherein the step of generating error correction parity data comprises employing a Reed-Solomon forward error correction process, whereby parity words and associated data blocks are generated; and the step of encrypting said parity data comprises inserting at least one error per data block.
7. A method for encoding data as recited in claim 1, wherein the step of compressing an incoming data stream into variable length codewords comprises employing Huffman coding to generate variable length Huffman codewords.
8. A method for encoding data as recited in claim 1, comprising the steps of generating a synchronization word; multiplexing said synchronization word with said codewords and encrypted parity data before transmitting said codewords and encrypted parity data; and transmitting the multiplexed data.
9. A method for encoding data as recited in claim 1, further comprising the steps of: generating a seed for encrypting said parity data; encrypting said seed by employing a multisession key; encrypting said multisession key by employing a secret serial number (SSN); generating a synchronization word; multiplexing said synchronization word, codewords, encrypted parity data, encrypted seed, and encrypted multisession key, before transmitting said codewords and encrypted parity data; and transmitting the multiplexed data.
10. A method for encoding data as recited in claim 9, wherein the step of generating error correction parity data comprises employing a Reed-Solomon forward error correction process, whereby parity words and associated data blocks are generated; the step of encrypting said parity data comprises inserting at least one error per data block; and the step of compressing an incoming data stream into variable length codewords comprises employing Huffman coding to generate variable length Huffman codewords.
11. An apparatus for encoding data, comprising:
(a) means for compressing an incoming data stream into variable length codewords;
(b) means for generating error correction parity data for said codewords;
(c) means for introducing an error into said codewords;
(d) means for encrypting said parity data; and (e) means for transmitting said codewords and encrypted parity data.
12. An apparatus for encoding data as recited in claim 11, further comprising means for generating a seed for encrypting said parity data, means for encrypting said seed, and means for transmitting the encrypted seed as a system data packet (SDP).
13. An apparatus for encoding data as recited in claim 12, further comprising means for employing a multisession key to encrypt said seed, means for encrypting said multisession key, and means for transmitting the encrypted multisession key as an addressable data packet (ADP).
14. An apparatus for encoding data as recited in claim 13, comprising means for employing a secret serial number (SSN) to encrypt said multisession key.
15. An apparatus for encoding data as recited in claim 11, comprising means for transmitting said encrypted parity data before transmitting said codewords.
16. An apparatus for encoding data as recited in claim 11, wherein the means for generating error correction parity data comprises means for employing a Reed-Solomon forward error correction process, whereby parity words and associated data blocks are generated; and the means for encrypting said parity data comprises means for inserting at least one error per data block.
17. An apparatus for encoding data as recited in claim 11, wherein the means for compressing an incoming data stream into variable length codewords comprises means for employing Huffman coding to generate variable length Huffman codewords.
18. An apparatus for encoding data as recited in claim 11, comprising means for generating a synchronization word; means for multiplexing said synchronization word with said codewords and encrypted parity data before transmitting said codewords and encrypted parity data; and means for transmitting the multiplexed data.
19. An apparatus for encoding data as recited in claim 11, further comprising: means for generating a seed for encrypting said parity data; means for encrypting said seed by employing a multisession key; means for encrypting said multisession key by employing a secret serial number (SSN); means for generating a synchronization word; means for multiplexing said synchronization word, codewords, encrypted parity data, encrypted seed, and encrypted multisession key, before transmitting said codewords and encrypted parity data; and means for transmitting the multiplexed data.
20. An apparatus for encoding data as recited in claim 19, wherein the means for generating error correction parity data comprises means for employing a Reed-Solomon forward error correction process, whereby parity words and associated data blocks are generated; the means for encrypting said parity data comprises means for inserting one error per data block; and the means for compressing an incoming data stream into variable length codewords comprises means for employing Huffman coding to generate variable length Huffman codewords.
21. An apparatus for decoding data, comprising:
(a) demultiplexor means for receiving an incoming data stream and demultiplexing said data stream into variable length codewords representing a compressed data stream, encrypted parity data, a system data packet (SDP) defining an encrypted seed, and an addressable data packet (ADP) defining an encrypted multisession key;
(b) first decryption means for decrypting said ADP to derive said multisession key;
(c) second decryption means for decrypting said SDP in accordance with said multisession key to derive said seed;
(d) third decryption means for decrypting said parity data in accordance with said seed;
(e) error correction means for correcting errors in said codewords in accordance with the decrypted parity data; and (f) decompression means for generating a decompressed data stream in accordance with the corrected codewords.
22. An apparatus for decoding data as recited in claim 21, further comprising means, coupled to said first decryption means, for storing a secret serial number (SSN) for use in decrypting said ADP.
23. An apparatus for decoding data as recited in claim 22, wherein said first, second, and third decryption means, and said means for storing an SSN, are embodied in a secure microprocessor.
24. An apparatus for decoding data as recited in claim 21, wherein said decompression means comprises a Huffman decoder and a look up table.
25. An apparatus for decoding data as recited in claim 21, wherein said error correction means comprises means for employing a Reed-Solomon forward error correction process to correct errors in said codewords.
26. An apparatus for decoding data as recited in claim 23, wherein said decompression means comprises a Huffman decoder and a look up table; and said error correction means comprises means for employing a Reed-Solomon forward error correction process to correct errors in said codewords.
27. A method for decoding data, comprising the steps of:
(a) receiving an incoming data stream and demultiplexing said data stream into variable length codewords representing a compressed data stream, encrypted parity data, a system data packet (SDP) defining an encrypted seed, and an addressable data packet (ADP) defining an encrypted multisession key;
(b) decrypting said ADP to derive said multisession key;
(c) decrypting said SDP in accordance with said multisession key to derive said seed;
(d) decrypting said parity data in accordance with said seed;
(e) correcting errors in said codewords in accordance with the decrypted parity data; and (f) generating a decompressed data stream in accordance with the corrected codewords.
28. A method for decoding data as recited in claim 27, comprising employing a secret serial number (SSN) to decrypt said ADP.
29. A method for decoding data as recited in claim 27, wherein the step of generating a decompressed data stream comprises employing a Huffman look up table to decompress said codewords.
30. A method for decoding data as recited in claim 27, wherein the step of correcting errors in said codewords comprises employing a Reed-Solomon forward error correction process to correct said errors.
31. A method for decoding data as recited in claim 27, wherein the step of generating a decompressed data stream comprises employing a Huffman look up table to decompress said codewords; and the step of correcting errors in said codewords comprises employing a Reed-Solomon forward error correction process to correct said errors.
CA002159645A 1993-04-01 1994-03-28 Methods and apparatus for scrambling and unscrambling compressed data streams Abandoned CA2159645A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/041,727 US5285497A (en) 1993-04-01 1993-04-01 Methods and apparatus for scrambling and unscrambling compressed data streams
US08/041,727 1993-04-01

Publications (1)

Publication Number Publication Date
CA2159645A1 true CA2159645A1 (en) 1994-10-13

Family

ID=21918013

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002159645A Abandoned CA2159645A1 (en) 1993-04-01 1994-03-28 Methods and apparatus for scrambling and unscrambling compressed data streams

Country Status (3)

Country Link
US (1) US5285497A (en)
CA (1) CA2159645A1 (en)
WO (1) WO1994023511A1 (en)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5479512A (en) * 1991-06-07 1995-12-26 Security Dynamics Technologies, Inc. Method and apparatus for performing concryption
US5477276A (en) * 1992-12-17 1995-12-19 Sony Corporation Digital signal processing apparatus for achieving fade-in and fade-out effects on digital video signals
KR100253473B1 (en) * 1993-10-12 2000-04-15 모리시타 요이찌 Scrambling apparatus, descrambling apparatus and scramble transmission apparatus
KR950013093A (en) * 1993-10-19 1995-05-17 모리시타 요이찌 Scramble Transfer Device and Random Number Generator
US5631693A (en) * 1993-10-25 1997-05-20 Antec Corporation Method and apparatus for providing on demand services in a subscriber system
WO1995012284A1 (en) * 1993-10-25 1995-05-04 Antec Corporation Method and apparatus for providing on demand services in a subscriber system
US5426699A (en) * 1993-10-25 1995-06-20 Antec Corporation Method and apparatus for digitizing a scrambled analog video signal
JPH09510592A (en) * 1994-03-18 1997-10-21 トムソン コンシューマ エレクトロニクス インコーポレイテッド Data decryption device for pay television signal receiving system
US5619501A (en) * 1994-04-22 1997-04-08 Thomson Consumer Electronics, Inc. Conditional access filter as for a packet video signal inverse transport system
US8548166B2 (en) 1995-04-03 2013-10-01 Anthony J. Wasilewski Method for partially encrypting program data
US20040136532A1 (en) * 1995-04-03 2004-07-15 Pinder Howard G. Partial dual-encrypted stream utilizing program map tables
US6252964B1 (en) 1995-04-03 2001-06-26 Scientific-Atlanta, Inc. Authorization of services in a conditional access system
US6246767B1 (en) 1995-04-03 2001-06-12 Scientific-Atlanta, Inc. Source authentication of download information in a conditional access system
US6937729B2 (en) 1995-04-03 2005-08-30 Scientific-Atlanta, Inc. Representing entitlements to service in a conditional access system
US7224798B2 (en) * 1995-04-03 2007-05-29 Scientific-Atlanta, Inc. Methods and apparatus for providing a partial dual-encrypted stream in a conditional access overlay system
US5600726A (en) * 1995-04-07 1997-02-04 Gemini Systems, L.L.C. Method for creating specific purpose rule-based n-bit virtual machines
EP1315092B1 (en) * 1995-06-30 2007-04-18 Sony Corporation Data recording method and apparatus, and data reproducing method and apparatus
EP0755055B1 (en) 1995-07-14 2002-01-16 Sony Corporation Transmitting recording and reproducing data
US5943421A (en) * 1995-09-11 1999-08-24 Norand Corporation Processor having compression and encryption circuitry
AU3484495A (en) * 1995-09-13 1997-04-01 Hitachi Limited Method and device for compressing and ciphering data
US6411714B1 (en) 1995-09-13 2002-06-25 Hitachi, Ltd. Data decompression/decryption method and system
US6571361B1 (en) * 1995-09-29 2003-05-27 Kabushiki Kaisha Toshiba Encoder and decoder
US6493838B1 (en) * 1995-09-29 2002-12-10 Kabushiki Kaisha Toshiba Coding apparatus and decoding apparatus for transmission/storage of information
JP3746098B2 (en) 1996-02-28 2006-02-15 株式会社日立製作所 Data encryption device
JP4147592B2 (en) * 1996-08-06 2008-09-10 ソニー株式会社 Packet processing method, recording method, and recording system
US5937067A (en) * 1996-11-12 1999-08-10 Scientific-Atlanta, Inc. Apparatus and method for local encryption control of a global transport data stream
US5917914A (en) * 1997-04-24 1999-06-29 Cirrus Logic, Inc. DVD data descrambler for host interface and MPEG interface
US6047069A (en) * 1997-07-17 2000-04-04 Hewlett-Packard Company Method and apparatus for preserving error correction capabilities during data encryption/decryption
US7515712B2 (en) * 1997-08-01 2009-04-07 Cisco Technology, Inc. Mechanism and apparatus for encapsulation of entitlement authorization in conditional access system
JPH11266243A (en) * 1997-12-09 1999-09-28 Canon Inc Device and method for processing information
US6408317B1 (en) 1999-02-19 2002-06-18 Integrated Device Technology, Inc. Random number conditioner
FI107487B (en) * 1999-03-08 2001-08-15 Nokia Mobile Phones Ltd Procedure for encrypting data transmission in a radio system
US7885340B2 (en) * 1999-04-27 2011-02-08 Realnetworks, Inc. System and method for generating multiple synchronized encoded representations of media data
US6728920B1 (en) 1999-05-24 2004-04-27 Adaptive Broadband Corporation Method for correcting errors in transfer of information
GB0004178D0 (en) * 2000-02-22 2000-04-12 Nokia Networks Oy Integrity check in a communication system
US7047420B2 (en) * 2001-01-17 2006-05-16 Microsoft Corporation Exclusive encryption
US20020114453A1 (en) * 2001-02-21 2002-08-22 Bartholet Thomas G. System and method for secure cryptographic data transport and storage
US6981138B2 (en) * 2001-03-26 2005-12-27 Microsoft Corporation Encrypted key cache
US7062490B2 (en) * 2001-03-26 2006-06-13 Microsoft Corporation Serverless distributed file system
US20030012372A1 (en) * 2001-04-25 2003-01-16 Cheng Siu Lung System and method for joint encryption and error-correcting coding
US7003111B2 (en) * 2001-10-11 2006-02-21 International Business Machines Corporation Method, system, and program, for encoding and decoding input data
US7865440B2 (en) * 2001-10-11 2011-01-04 International Business Machines Corporation Method, system, and program for securely providing keys to encode and decode data in a storage cartridge
GB2381426A (en) * 2001-10-29 2003-04-30 Roke Manor Research An encoding device which performs compression, FEC and encryption, in that order
US20030204718A1 (en) * 2002-04-29 2003-10-30 The Boeing Company Architecture containing embedded compression and encryption algorithms within a data file
US8438392B2 (en) 2002-06-20 2013-05-07 Krimmeni Technologies, Inc. Method and system for control of code execution on a general purpose computing device and control of code execution in a recursive security protocol
US7203844B1 (en) * 2002-06-20 2007-04-10 Oxford William V Method and system for a recursive security protocol for digital copyright control
EP1499061A1 (en) * 2003-07-17 2005-01-19 Deutsche Thomson-Brandt Gmbh Individual video encryption system and method
EP1499062B1 (en) * 2003-07-17 2007-12-12 Thomson Licensing Individual video encryption system and method
US7471795B2 (en) * 2003-09-12 2008-12-30 Victor Company Of Japan, Ltd. Information transmission system
US20050086528A1 (en) * 2003-10-21 2005-04-21 Aladdin Knowledge Systems Ltd. Method for hiding information on a computer
US8396216B2 (en) * 2003-11-21 2013-03-12 Howard G. Pinder Partial dual-encryption using program map tables
US20050196442A1 (en) * 2004-03-05 2005-09-08 Huang Hai Y. Polymeric compositions and dosage forms comprising the same
US8769311B2 (en) 2006-05-31 2014-07-01 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
WO2007138599A2 (en) 2006-05-31 2007-12-06 Storwize Ltd. Method and system for transformation of logical data objects for storage
US7917747B2 (en) * 2007-03-22 2011-03-29 Igt Multi-party encryption systems and methods
EP2091256A1 (en) * 2008-02-18 2009-08-19 Nagravision S.A. Method for the removal of artefacts from a transmitted digital audio/video signal
US8660261B2 (en) * 2009-06-04 2014-02-25 Mediatek Singapore Pte. Ltd. System and apparatus for integrated video/image encoding/decoding and encryption/decryption
US8712040B2 (en) * 2010-01-22 2014-04-29 Harlan J. Brothers Data-conditioned encryption method
US8904189B1 (en) 2010-07-15 2014-12-02 The Research Foundation For The State University Of New York System and method for validating program execution at run-time using control flow signatures
JP2015511050A (en) 2012-03-20 2015-04-13 クリメニ テクノロジーズ, インコーポレイテッド Method and system for process working set isolation
US9459955B2 (en) * 2012-05-24 2016-10-04 Sandisk Technologies Llc System and method to scramble data based on a scramble key
JP2016513825A (en) * 2013-03-14 2016-05-16 マサチューセッツ インスティテュート オブ テクノロジー Safety communication method and apparatus
CN106664203B (en) 2014-08-07 2021-02-12 帝威视有限公司 System and method for protecting a unit bit stream in combination with independently coded tiles
US9735921B2 (en) * 2015-04-24 2017-08-15 Nec Corporation Ultra-high speed optical transport employing LDPC-coded modulation with non-uniform signaling
US10476599B2 (en) * 2016-04-18 2019-11-12 Nec Corporation Joint source and LDPC coding based coding modulation for ultra-high-speed optical transport

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4301327A (en) * 1979-06-05 1981-11-17 Lee Lin Nan Reduction of message redundancy by multiple substitution: a message preprocessing scheme for secure communications
US4720861A (en) * 1985-12-24 1988-01-19 Itt Defense Communications A Division Of Itt Corporation Digital speech coding circuit
US5204899A (en) * 1991-11-19 1993-04-20 Scientific-Atlanta, Inc. Vector quantization method employing mirrored input vectors to search codebook
US5226082A (en) * 1992-07-02 1993-07-06 At&T Bell Laboratories Variable length decoder

Also Published As

Publication number Publication date
US5285497A (en) 1994-02-08
WO1994023511A1 (en) 1994-10-13

Similar Documents

Publication Publication Date Title
US5285497A (en) Methods and apparatus for scrambling and unscrambling compressed data streams
EP0713621B1 (en) Method and apparatus for uniquely encrypting a plurality of services at a transmission site
EP0194769B1 (en) Cryptographic system for a direct broadcast by satellite network
US4803725A (en) Cryptographic system using interchangeable key blocks and selectable key fragments
US20060269063A1 (en) Encryption system
US5243650A (en) Method and apparatus for encryption/decryption of digital multisound in television
JPH056398B2 (en)
CN1284818A (en) Full digital conditioned receiving method for video broadcost in cable TV network
EP0539473B1 (en) Error protection for vlc coded data
CA2868652C (en) Encryption/decryption of program data but not psi data
KR0176080B1 (en) Method of data coding for conditional access system in digital broadcasting system
US5848157A (en) System for the shifting of a television signal scrambler
CA2609505C (en) Encryption/decryption of program data but not psi data
CA2168748C (en) Method and apparatus for uniquely encrypting a plurality of services at a transmission site
KR100434254B1 (en) Method for processing audio data, realized by enabling a transmitting side to encipher audio signals in a method of changing areas of audio data in predetermined order, and enabling a receiving side to decipher the enciphered audio data by receiving decoding information from a smart card
JPH03239033A (en) Scramble system and receiver for scramble signal
WO1995026107A1 (en) Data decryption apparatus in a subscription television signal receiving system
JPH08202262A (en) Device and method for signal processing
JP2005079864A (en) Broadcast device, receiving device, broadcast method and receiving method
EP0750813A4 (en) Data decryption apparatus in a subscription television signal receiving system

Legal Events

Date Code Title Description
FZDE Dead