1. A method for executing encrypted software comprising:
receiving an encrypted program from a host configured to store the encrypted program, wherein the host corresponds to a first hardware device and is further configured to receive a disc storing encrypted content, and wherein the encrypted program is embedded with a device key;
receiving information contained on the disc;
decrypting the encrypted program on a secure coprocessor via a processing unit, wherein the secure coprocessor corresponds to a second hardware device;
storing the decrypted program into a restricted access RAM, wherein the restricted access RAM is coupled to the processing unit and is accessible only by the processing unit;
executing the decrypted program stored in the restricted access RAM to generate an output comprising at least one key calculated from the device key;
transmitting the output to the host; and
utilizing the key of the output generated by the decrypted program to decrypt the encrypted content stored on the disc.
2. The method of claim 1, wherein generating the output comprises using the device key embedded in the program to calculate the at least one key from the received information contained on the disc.
3. The method of claim 1, wherein generating the output comprises:
receiving a predetermined amount of data from the host;
calculating a checksum associated with the received data in order to validate the data; and
using the device key embedded in the program to calculate the at least one key from the data embedded on the disc only if the data is validated.
4. The method of claim 3, wherein generating the output further comprises displaying a watermark on a display while receiving the predetermined amount of data from the host and while calculating the checksum associated with the received data.
5. The method of claim 1, further comprising
monitoring the step of using the output to decrypt the encrypted content stored on the disc such that the output is automatically deleted if the step of using the output to decrypt the encrypted content stored on the disc is suspended.
6. A non-transitory computer readable medium having a computer program stored thereon for performing the computer executable method of:
transmitting an encrypted program from a host configured to store the encrypted program, wherein the host corresponds to a first hardware device and is further configured to receive a disc storing encrypted content, and wherein the encrypted program is embedded with a device key;
transmitting content contained on the disc;
decrypting the encrypted program via a processing unit, wherein the processing unit corresponds to a second hardware device;
storing the decrypted program into a restricted access RAM, wherein the restricted access RAM is coupled to the processing unit and is accessible only by the processing unit;
executing the decrypted program stored in the restricted access RAM to generate an output comprising at least one key calculated from the device key;
communicating the output to the host; and
utilizing the key of the output generated by the decrypted program to decrypt the encrypted content stored on the disc.
7. A system for securely executing software comprising:
a host configured to accept a disc containing encrypted content to be accessed and store an encrypted program used to access the content on the disc;
a secure coprocessor communicatively coupled to the host and configured to receive the encrypted program, decrypt and execute the encrypted program, and generate an output comprising at least one key used to decrypt the encrypted content stored on the disc, wherein the encrypted program contains a device key used to calculate the at least one key; and
wherein the host corresponds to a first hardware device and the secure coprocessor corresponds to a second hardware device.
8. The system of claim 7, wherein the output comprises the content of the disc, wherein the content has been decrypted and decoded by the secure coprocessor.
9. The system of claim 7, wherein the at least one key comprises a volume key sent to the host, and wherein the host uses the volume key to decrypt the encrypted content stored on the disc.
10. The system of claim 9, wherein the secure coprocessor monitors the host decrypting the content stored on the disc such that the secure coprocessor detects if the host is suspended while decrypting the data, wherein upon detection that the host has been suspended, the secure coprocessor erases the output used by the host to decrypt the content.
11. The system of claim 7, wherein the secure coprocessor is comprised of a processing unit and a restricted access RAM coupled to the processing unit, wherein the restricted access RAM is operative to store the decrypted program, and wherein the restricted access RAM is accessible only by the processing unit.
12. The system of claim 11, wherein the processing unit of the secure coprocessor executes a proprietary instruction set.
13. The system of claim 7, wherein the encrypted program incorporates the Advanced Access Content System (AACS) standard for content distribution, and wherein the device key is used by the secure coprocessor to retrieve information from the disc and generate an encrypted volume key, wherein the volume key is used to decrypt the content of the disc.
14. The system of claim 13, wherein the secure coprocessor generates the volume key only if the secure coprocessor detects that the host complies with the High-bandwidth Digital Content Protection (HDCP) standard.
15. The system of claim 7, wherein the secure coprocessor is configured to receive a predetermined amount of data from the host,
wherein the program is configured to calculate a checksum associated with the received data in order to validate the data,
wherein the encrypted program continues to execute only if the checksum matches a checksum embedded into the encrypted program, and
wherein the encrypted program ceases execution if the checksum does not match the checksum embedded into the encrypted program such that access to the content stored on the disc is denied.
16. The system of claim 15, wherein the program is configured to generate a predefined watermark on a display while receiving and validating the predetermined amount of data received from the host.
17. The system of claim 7, wherein the secure coprocessor is further configured to decrypt the encrypted content stored on the disc and transmit the content to a display, wherein transmission of the content is performed according to the HDCP standard.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1-20. (canceled)
21. A computer system comprising:
a console comprising a power supply, a first coupling site and a second coupling site, each coupling site comprising a connector and a slot, the console being a first enclosure housing the coupling sites,
a serial communication controller powered by the power supply, and
a plurality of computer modules; each computer module coupled to one of the coupling site through the connector and the slot, comprising
a second enclosure,
a processing unit,
a main memory coupled to the processing unit,
a graphics controller, and
a flash memory device being configurable to store a password for preventing unauthorized access to the computer module;
wherein each of the computer modules is substantially similar in design to each other and operates fully independent of each other.
22. The computer system of claim 21 wherein each computer module further comprises a communication controller coupled to the serial communication controller in the console adapted to transfer data between any two of the computer modules and to an external network.
23. The computer system of claim 21 wherein the computer module further comprises a mass storage unit storing a security program.
24. The computer system of claim 21 wherein the console further comprises a video switch coupled to the graphics controller of the computer module.
25. The computer system of claim 21 wherein the computer module further comprises an interface controller that communicates to the console.
26. A computer system comprising:
a console comprising a power supply, a first coupling site and a second coupling site, each coupling site comprising a connector and a slot, the console being an enclosure housing the coupling sites,
an Ethernet controller coupled to an external network and powered by the power supply, and
a plurality of computer modules; each computer module coupled to one of the coupling site through the connector and the slot, comprising
a processing unit,
a main memory coupled to the processing unit,
a flash memory device being configurable to store a password for preventing unauthorized access to the computer module, and
a network controller coupled to the Ethernet controller through the connector of the coupling site,
wherein each of the computer modules is substantially similar in design to each other, and wherein one of the computer modules is configured to provide protection against failure of another of the computer modules.
27. The computer system of claim 25 wherein the computer module further comprises a mass storage unit storing a security program.
28. The computer system of claim 25 wherein the console further comprises a video switch coupled to the graphics controller of the computer module.
29. The computer system of claim 26 wherein the flash memory device further comprises codes to provide password protection for the computer module.
30. The computer system of claim 26 wherein the Ethernet controller adapted to transfer data between any two of the computer modules and to the external network.
31. A computer system comprising:
a console comprising an Ethernet hub controller, a first coupling site and a second coupling site, each coupling site comprising a connector and a slot, the console being a first enclosure housing the Ethernet hub controller, each coupling site, and
a plurality of computer modules, each coupled to one of the coupling sites through the connector and the slot; each computer module comprising
a second enclosure,
a processing unit,
a graphics subsystem,
a main memory coupled to the processing unit,
a flash memory device being configurable to store a password for preventing unauthorized access to the computer module, and
an Ethernet controller coupled to the Ethernet hub controller through the connector of the coupling site for communication between the computer modules;
and wherein each of the computer modules operates fully independent of each other.
32. The computer system of claim 31 wherein the computer module further comprises a mass storage unit storing a security program.
33. The computer system of claim 31 wherein the console further comprises a video switch coupled to the graphics controller of the computer module.
34. The computer system of claim 31 wherein the flash memory device further comprises codes to provide password protection for the computer module.
35. The computer system of claim 31 wherein the Ethernet controller adapted to transfer data between any two of the computer modules and to the external network.
36. A computer system comprising:
a console comprising a power supply, a first coupling site and a second coupling site, each coupling site comprising a connector and a slot, the console being an enclosure housing the coupling sites,
a serial communication controller powered by the power supply, and
a plurality of computer modules; each computer module coupled to one of the coupling site through the connector and the slot, comprising
a processing unit,
a main memory coupled to the processing unit,
a communication controller coupled to the serial communication controller through the connector of the coupling site, and
a flash memory device being configurable to store a password for preventing unauthorized access to the computer module;
wherein each of the computer modules operates fully independent of each other, and wherein one of the computer modules can replace another one of the computer modules in operation.
37. The computer system of claim 36 wherein the computer module further comprises a mass storage unit storing a security program.
38. The computer system of claim 36 wherein the console further comprises a video switch coupled to the graphics controller of the computer module.
39. The computer system of claim 36 further comprises a hard disk drive coupled to the computer module.
40. The computer system of claim 36 wherein the flash memory device further comprises codes to provide password protection for the computer module.
41. A computer system comprising:
a console comprising a video switch, a first coupling site and a second coupling site, each coupling site comprising a connector and a slot; the console being an enclosure housing the video switch, each coupling site,
an Ethernet controller coupled to an external network, and
a plurality of computer modules; each computer module coupled to one of the coupling sites through the connector and the slot, and comprising
a processing unit,
a main memory coupled to the processing unit,
a graphics controller coupled to the video switch, and
a mass storage device with a security program;
wherein each of the computer modules operates fully independent of each other; and wherein the security program provides password protection of the computer module.
42. The computer system of claim 41 wherein each computer module further comprises a network controller coupled to the Ethernet controller in the console adapted to transfer data between any two of the computer modules and to an external network.
43. The computer system of claim 41 wherein the computer module further comprises an enclosure.
44. The computer system of claim 41 wherein the computer module further comprises a flash memory device being configurable to store a password for preventing unauthorized access to the computer module.
45. The computer system of claim 41 wherein the computer module further comprises a permanent password or user identification to identify the computer module.
46. A computer system comprising:
a console comprising an Ethernet hub controller, a first coupling site and a second coupling site, each coupling site comprising a connector and a slot, the console being an enclosure housing the Ethernet hub controller, each coupling site, and
a plurality of computer modules, each coupled to one of the coupling sites through the connector and the slot; each computer module comprising
a processing unit,
a graphics controller,
a main memory coupled to the processing unit,
a SCSI hard disk drive with a security program, and
an Ethernet controller coupled to the Ethernet hub controller through the connector of the coupling site for communication between the computer modules;
wherein each of the computer modules operates independent of each other, and wherein one of the computer modules can replace another one of the computer modules in operation.
47. The computer system of claim 46 wherein the security program provides password protection of the computer module.
48. The computer system of claim 46 wherein the SCSI hard disk drive is removable while the computer module is in operation.
49. The computer system of claim 46 wherein the console further comprises a video switch coupled to the video output of the computer module.
50. The computer system of claim 46 wherein the computer module further comprises a permanent password or user identification to identify the computer module.
51. A computer system comprising:
a console comprising a first coupling site, and a second coupling site, each coupling site comprising a connector and a slot; the console being an enclosure housing each coupling site,
an Ethernet hub controller, and
a plurality of computer modules; each computer module coupled to the coupling site through the connector and the slot, and comprising
a processing unit,
a main memory coupled to the processing unit,
a graphics controller,
an Ethernet controller coupled to the Ethernet hub controller through the connector of the coupling site for communication between the computer modules,
a hard disk drive, and
a security program in combination with a password is configured to provide lock out of the hard disk drive;
wherein each of the computer modules is substantially similar in design to each other, and wherein one of the computer modules can provide protection against failure of another one of the computer modules.
52. The computer system of claim 51 wherein the computer module further comprises a flash memory device being configurable to store a password for preventing unauthorized access to the computer module.
53. The computer system of claim 51 wherein the hard disk drive is removable while the computer module is in operation.
54. The computer system of claim 51 wherein the console further comprises a video switch coupled to the video output of the computer module.
55. The computer system of claim 51 wherein the computer module further comprises a permanent password or user identification to identify the computer module.
56. A computer system comprising:
a console comprising an Ethernet controller coupled to an external network, a keyboardmouse multi-port switch, a first coupling site and a second coupling site, each coupling site comprising a connector and a slot, the console being an enclosure housing the Ethernet controller, each coupling site, and
a plurality of computer modules, each coupled to one of the coupling sites through the connector and the slot; each computer module comprising
a processing unit,
a main memory coupled to the processing unit,
a security program to provide password protection for the computer module, and
a network controller coupled to the Ethernet controller through the connector of the coupling site for communication between the computer modules;
wherein each of the computer modules operates fully independent of each other; and wherein the keyboardmouse multi-port switch switches between keyboardmouse connection of the computer modules based on a command from a user.
57. The computer system of claim 56 wherein the computer module further comprises a flash memory device being configurable to store a password for preventing unauthorized access to the computer module.
58. The computer system of claim 56 wherein the computer module further comprises a mass storage unit storing the security program.
59. The computer system of claim 56 wherein the computer module further comprises a permanent password or user identification to identify the computer module.
60. The computer system of claim 56 wherein the command from the user is in the form of either a key on the keyboard or an icon on the screen that the mouse can click on.
61. A computer system comprising:
a console comprising a first coupling site, a second coupling site, each coupling site comprising a connector, the console being an enclosure that is capable of housing each coupling site,
a serial communication hub controller coupled to an external network, and
a plurality of computer modules inserted into said console; each computer module coupled to one of the connectors of the console and comprising,
a processing unit,
a communication controller coupled to the serial communication hub controller through the connector of the coupling site to support communication with the other modules,
a main memory coupled to the processing unit,
a permanent password or identification code for allowing data access of the computer module, and
a graphics controller coupled to the processing unit;
wherein each of the computer modules provide independent processing in the computer system; and wherein one of the computer modules is configured to provide protection against failure of another of the plurality of computer modules.
62. The computer system of claim 61 wherein the computer module further comprises a flash memory device being configurable to store a password for preventing unauthorized access to the computer module.
63. The computer system of claim 61 wherein the computer module further comprises a mass storage unit storing a security program.
64. The computer system of claim 61 wherein the console further comprises a video switch coupled to the video output of the computer module.
65. The computer system of claim 61 wherein the permanent password is stored in the central processing unit.
66. A computer system comprising:
a console comprising an Ethernet hub controller, a first coupling site and a second coupling site, each coupling site comprising a connector and a slot, the console being an enclosure housing the Ethernet hub controller, the coupling sites, and
a plurality of computer modules, each coupled to one of the coupling sites through the connector and the slot; each computer module comprising
a processing unit,
a main memory coupled to the processing unit,
a permanent password or identification code for allowing data access of the computer module, and
an Ethernet controller coupled to the Ethernet hub controller through the connector of the coupling site for communication to another computer module;
wherein each of the computer modules operates fully independent of each other.
67. The computer system of claim 66 wherein the computer module further comprises a flash memory device being configurable to store a password for preventing unauthorized access to the computer module.
68. The computer system of claim 66 wherein the enclosure houses a hard disk drive coupled to the computer module.
69. The computer system of claim 66 wherein the computer module further comprises a mass storage unit storing a security program.
70. The computer system of claim 66 wherein the permanent password is stored in the central processing unit.
71. A method for operating a computer system, said method comprising:
inserting a computer module into a coupling site of a console comprising
an Ethernet controller, a first coupling site, and a second coupling site, each coupling site comprising a connector and a slot;
the computer module comprising an enclosure, a processing unit coupled to a mass storage device, and a network controller coupled to the Ethernet controller through the connector of the coupling site;
applying power to said computer module to execute a security program, said security program being stored in said mass storage device; and
prompting for a user password from a user on a display coupled to the console; and
wherein said user password has to be electrically communicated to the computer module from the console.
72. The method of claim 71 further comprises providing the user password to the security program for controlling access to the data in the mass storage device.
73. The method of claim 71 further comprises sending the user password through a keyboard switch in the console.
74. The method of claim 71 further comprises locking out the mass storage device if tampering is detected.
75. The method of claim 71 further comprises:
inserting a second computer module into a coupling site of the console; and
wherein each of the computer modules operates fully independent of each other.
76. A method for operating a computer system, said method comprising:
providing a console comprising an Ethernet hub controller, a first coupling site, and a second coupling site, each coupling site comprising a connector and a slot;
inserting a first computer module into the first coupling site of the console; said computer module comprising a microprocessor unit coupled to a mass memory storage device;
applying power to said computer module to execute a security program, said security program being stored in said mass storage device; and
prompting for a user password from a user on a display coupled to the console;
sending the user password to the security program for access control to the computer module;
inserting a second computer module into the second coupling site of the console; the second computer module is substantially similar in design to the fist computer module;
providing communication between the computer modules through the Ethernet hub controller;
wherein the computer modules operate fully independent of each other; and one of the computer modules can be configured to provide protection against failure of the other computer module.
77. The method of claim 76 further comprises providing the user password to the security program for controlling access to the data in the mass storage device.
78. The method of claim 76 further comprises sending the user password through a keyboard switch in the console.
79. The method of claim 76 further comprises locking out the mass storage device if tampering is detected.
80. The method of claim 76 further comprises providing a permanent password or user identification code to identify the computer module.
81. A method for operating a computer system, said method comprising:
providing a console comprising an serial communication controller coupled to an external network, a first coupling site, and a second coupling site, each coupling site comprising a connector and a slot;
inserting a first computer module into the first coupling site of the console; said computer module comprising a microprocessor unit coupled to a mass memory storage device;
applying power to said computer module to execute a security program, said security program being stored in said mass storage device; and
prompting for a user password from a user on a display coupled to the console;
providing the user password to the security program for access control to the computer module;
inserting a second computer module into the second coupling site of the console; the second computer module is substantially similar in design to the fist computer module;
providing communication between the computer modules through the serial communication controller and to the external network;
wherein the computer modules operate fully independent of each other; and one of the computer modules can replace another one of the computer modules in operation.
82. The method of claim 81 further comprises providing the user password to the security program for controlling access to the data in the mass storage device.
83. The method of claim 81 further comprises sending the user password through a keyboard switch in the console.
84. The method of claim 81 further comprises locking out the mass storage device if tampering is detected.
85. The method of claim 81 further comprises providing a permanent password or user identification code to identify the computer module.
86. A method for operating a computer system, said method comprising:
providing a console comprising an Ethernet controller coupled to an external network, a video switch a first coupling site, and a second coupling site, each coupling site comprising a connector and a slot;
inserting a first computer module into the first coupling site of the console; said computer module comprising a microprocessor unit coupled to a mass memory storage device;
applying power to said computer module to execute a security program, said security program being stored in said mass storage device; and
prompting for a user password from a user on a display coupled to the video switch;
providing the user password to the security program for access control to the computer module;
inserting a second computer module into the second coupling site of the console; the second computer module is substantially similar in design to the fist computer module;
providing communication of the computer modules to the external network through the connectors of the console and the Ethernet controller;
wherein the computer modules operate fully independent of each other.
87. The method of claim 86 further comprises providing the user password to the security program for controlling access to the data in the mass storage device.
88. The method of claim 86 further comprises sending the user password to a keyboard switch in the console.
89. The method of claim 86 further comprises locking out the mass storage device if tampering is detected.
90. The method of claim 86 further comprises providing a permanent password or user identification code to identify the computer module.
91. A method for operating a computer system, said method comprising:
inserting a computer module into a coupling site of a console comprising
an Ethernet controller, a first coupling site, and a second coupling site, each coupling site comprising a connector and a slot;
the computer module comprising a processing unit, a mass storage device, a flash memory device configured to store a password for preventing unauthorized access to the computer module, and a network controller coupled to the Ethernet controller through the connector of the coupling site;
applying power to said computer module; and
prompting for the password from a user on a display coupled to the console; wherein
said password is electrically communicated to the computer module from the console.
92. The method of claim 91 further comprises providing the password to a security program in the computer module for controlling access to the computer module.
93. The method of claim 91 further comprises sending the user password to a keyboard switch in the console.
94. The method of claim 91 further comprises locking out the mass storage device if tampering is detected.
95. The method of claim 91 further comprises:
inserting a second computer module into a coupling site of the console; and
wherein each of the computer modules operates fully independent of each other.
96. A method for operating a computer system, said method comprising:
providing a console comprising an Ethernet hub controller, a first coupling site, and a second coupling site, each coupling site comprising a connector and a slot;
inserting a first computer module into the first coupling site of the console; said computer module comprising a microprocessor unit, a security program, and a flash memory device configured to store a password for preventing unauthorized access to the computer module;
applying power to said computer module; and
prompting for the password from a user on a display coupled to the console;
sending the password to the security program for access control to the computer module;
inserting a second computer module into the second coupling site of the console; the second computer module is substantially similar in design to the fist computer module;
providing communication between the computer modules through the Ethernet hub controller;
wherein the computer modules operate fully independent of each other; and one of the computer modules can be configured to provide protection against failure of the other computer module.
97. The method of claim 96 further comprises storing the security program in the flash memory.
98. The method of claim 96 further comprises sending the password to a keyboard switch in the console.
99. The method of claim 96 further comprises storing the security program in a mass storage device.
100. The method of claim 96 further comprises providing a permanent password or user identification code to identify the computer module.
101. A method for operating a computer system, said method comprising:
providing a console comprising an serial communication controller coupled to an external network, a first coupling site, and a second coupling site, each coupling site comprising a connector and a slot;
inserting a first computer module into the first coupling site of the console; said computer module comprising a microprocessor unit, a security program configured to store a password for preventing unauthorized access to the computer module;
applying power to said computer module; and
prompting for the password from a user on a display coupled to the console;
providing the password to the security program for access control to the computer module;
inserting a second computer module into the second coupling site of the console; the second computer module is substantially similar in design to the fist computer module;
providing communication between the computer modules through the serial communication controller and to the external network;
wherein the computer modules operate fully independent of each other; and one of the computer modules can replace another one of the computer modules in operation.
102. The method of claim 101 further comprises storing the security program in the flash memory.
103. The method of claim 101 further comprises sending the password to a keyboard switch in the console.
104. The method of claim 101 further comprises storing the security program in a mass storage device.
105. The method of claim 101 further comprises providing a permanent password or user identification code to identify the computer module.
106. A method for operating a computer system, said method comprising:
providing a console comprising an Ethernet controller coupled to an external network, a video switch, a first coupling site, and a second coupling site, each coupling site comprising a connector and a slot;
inserting a first computer module into the first coupling site of the console; said computer module comprising a microprocessor unit, a security program, and a flash memory device;
applying power to said computer module to execute the security program; and
prompting for the password from a user on a display coupled to the video switch;
providing the password to the security program for access control to the computer module;
inserting a second computer module into the second coupling site of the console; the second computer module is substantially similar in design to the fist computer module;
providing communication of the computer modules to the external network through the connectors of the console and the Ethernet controller;
wherein the computer modules operate fully independent of each other; and one of the computer modules can replace another one of the computer modules in operation.
107. The method of claim 106 further comprises storing the security program in the flash memory.
108. The method of claim 106 further comprises sending the password to a keyboard switch in the console.
109. The method of claim 106 further comprises storing the security program in a mass storage device.
110. The method of claim 106 further comprises providing a permanent password or user identification code to identify the computer module.