Claims
- 1. A method of providing secure digital communications between a customer's set top terminal and a video head end, comprising the steps of:
- generating a seed random number N at either the video head end or the customer's set top terminal for seeding a pseudo random number generator of the customer's set top terminal and a pseudo random number generator of the video head end;
- encrypting seed random number N using a public key algorithm and a public key P known to the customer's set top terminal and the video head end to yield encrypted seed random number E(N,P);
- providing the encrypted seed random number E(N,P) to the other of the customer's set top terminal and the video head end at which the seed random number N was not generated;
- decrypting the encrypted seed random number E(N,P) at the other of the customer's set top terminal and the video head end at which the seed random number N was not generated using a private key of the other of the customer's set top terminal and the video head end at which the seed random number N was not generated to yield seed random number N;
- initializing the pseudo random number generator of the customer's set top terminal and the pseudo random number generator of the video head end with seed random number N to generate pseudo random sequence K.sub.i at the customer's set top terminal and the video head end; and
- for each number i in random sequence K.sub.i, logically exclusive-ORing K.sub.i with a data stream P.sub.i to be transmitted to the video head end, thereby forming a data stream C.sub.i, sending the data stream C.sub.i from the customer's set top terminal to the video head end, and decrypting data stream C.sub.i at the video head end to yield a decrypted data stream P.sub.i by logically exclusive-ORing sequence K.sub.i with data stream C.sub.i.
- 2. A system for providing secure digital communications between a customer's set top terminal and a video head end, wherein said customer's set top terminal, comprises:
- means for receiving encrypted seed random number E(N,P), where N is an unencrypted seed random number and P is a public key known to the customer's set top terminal and the video head end;
- means for decrypting the encrypted seed random number E(N,P) using a private key of the customer's set top terminal to yield seed random number N;
- a pseudo random number generator initialized with seed random number N to generate pseudo random sequence K.sub.i at the customer's set top terminal;
- means for logically exclusive-ORing sequence K.sub.i with data stream P.sub.i to be transmitted to the video head end, thereby forming a data stream C.sub.i ; and
- means for sending the data stream C.sub.i from the customer's set top terminal to the video head end; and
- wherein said video head end comprises:
- a pseudo random number generator initialized with seed random number N to generate pseudo random sequence K.sub.i at the video head end;
- means for receiving data stream C.sub.i from the customer's set top terminal; and
- means for decrypting data stream C.sub.i to yield a decrypted data stream P.sub.i by logically exclusive-ORing sequence K.sub.i with data stream C.sub.i.
- 3. A method of providing secure digital communications between a video head end and a customer's set top terminal, comprising the steps of:
- generating a seed random number N at either the video head end or the customer's set top terminal for seeding a pseudo random number generator of the customer's set top terminal and a pseudo random number generator of the video head end;
- encrypting seed random number N using a public key algorithm and a public key P known to the customer's set top terminal and the video head end to yield encrypted seed random number E(N,P);
- providing the encrypted seed random number E(N,P) to the other of the customer's set top terminal and the video head end at which the seed random number N was not generated;
- decrypting the encrypted seed random number E(N,P) at the other of the customer's set top terminal and the video head end at which the seed random number N was not generated using a private key of the other of the customer's set top terminal and the video head end at which the seed random number N was not generated to yield seed random number N;
- initializing the pseudo random number generator of the customer's set top terminal and the pseudo random number generator of the video head end with seed random number N to generate pseudo random sequence K.sub.i at the customer's set top terminal and the video head end; and
- for each number i in random sequence K.sub.i, logically exclusive-ORing K.sub.i with a data stream P.sub.i to be transmitted to the customer's set top terminal, thereby forming a data stream C.sub.i, sending the data stream C.sub.i from the video head end to the customer's set top terminal, and decrypting data stream C.sub.i at the customer's set top terminal to yield a decrypted data stream P.sub.i by logically exclusive-ORing sequence K.sub.i with data stream C.sub.i.
- 4. A system for providing secure digital communications between a video head end and a customer's set top terminal, wherein said video head end, comprises:
- means for receiving encrypted seed random number E(N,P), where N is an unencrypted seed random number and P is a public key known to the customer's set top terminal and the video head end;
- means for decrypting the encrypted seed random number E(N,P) using a private key of the video head end to yield seed random number N; and
- a pseudo random number generator initialized with seed random number N to generate pseudo random sequence K.sub.i at the video head end;
- means for logically exclusive-ORing sequence K.sub.i with data stream P.sub.i to be transmitted to the customer's set top terminal, thereby forming a data stream C.sub.i ; and
- means for sending the data stream C.sub.i from the video head end to the customer's set top terminal; and
- wherein said customer's set top terminal comprises:
- a pseudo random number generator initialized with seed random number N to generate pseudo random sequence K.sub.i at the customer's set top terminal;
- means for receiving data stream C.sub.i from the video head end; and
- means for decrypting data stream C.sub.i to yield a decrypted data stream P.sub.i by logically exclusive-ORing sequence K.sub.i with data stream C.sub.i.
CROSS-REFERENCE TO RELATED APPLICATIONS
The present application is a continuation application of U.S. patent application Ser. No. 08/346,425, filed Nov. 29, 1994.
US Referenced Citations (11)
Non-Patent Literature Citations (2)
Entry |
B. Schneier; Applied Cryptography; pp. 177-178; John Wiley & Sons, Inc.; Oct. 1993. |
B. Schneier; Applied Cryptography, Second Edition; pp. 32-34; John Wiley & Sons, Inc.; Oct. 1995. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
346425 |
Nov 1994 |
|