Claims
- 1. A method for identifying the existence of one or more unknown programs in a system, said method comprising the steps of:
attempting to write a predetermined number of bits to a memory in the system, wherein the predetermined number of bits is based on size of the memory; determining if any of the bits attempted to be written to the memory are transmitted to someplace other than the memory; reading from the memory a number of bits equal to the predetermined number of bits attempted to be written to the memory; determining if the bits read from the memory match the bits attempted to be written to the memory; and determining that no unknown program is resident in the memory if the read bits match the bits attempted to be written and that none of the bits attempted to be written were transmitted to someplace other than the memory.
- 2. The method of claim 1, further comprising the step of:
executing an application program if it is determined that no unknown program is resident in the memory.
- 3. The method of claim 2, further comprising the steps of:
receiving video data from a server; and displaying the video data using the application program.
- 4. The method of claim 2, further comprising the steps of:
receiving information regarding reading material from a server; and displaying the reading material using the application program.
- 5. The method of claim 2, further comprising the steps of:
receiving, from a server, a stream of bits for use by the application program; determining if any of the bits are improperly transmitted to someplace other than for use by the application program; and transmitting a message to the server if it is determined that any of the bits are improperly transmitted.
- 6. The method of claim 1, further comprising the steps of:
assuring that an application program is signed; executing the application program if it is determined no unknown program is resident in the memory; and delivering a stream of bits to the system for use by the application program.
- 7. The method of claim 1, wherein the method is repeated a predetermined number of times.
- 8. The method of claim 1, wherein the predetermined number of bits that are attempted to be written to the memory include a pseudo-random sequence of bits.
- 9. A system, comprising:
at least one processor; a memory; at least one storage device, wherein the at least one storage device stores a program that the at least one processor executes to perform a method comprising the steps of:
attempting to write a predetermined number of bits to the memory, where the predetermined number is based on size of the memory; reading a number of bits from the memory that is equal to the predetermined number of bits attempted to be written to the memory, and determining if the bits read from the memory match the bits attempted to be written to the memory; and a circuit that determines if any of the bits attempted to be written to the memory are transmitted to someplace other than the memory.
- 10. The system of claim 9, wherein the at least one storage device stores an application program that the at least one processor executes to perform a method comprising the steps of:
receiving video data from a server; and displaying the video data, wherein the application program is only executed if it determined that the bits read from the memory match the bits attempted to be written to the memory and that none of the bits attempted to be written to the memory are transmitted someplace other than the memory.
- 11. The system of claim 9, wherein the at least one storage device stores an application program that the at least one processor executes to perform a method comprising the steps of:
receiving information regarding reading material from a server; and displaying the reading material; wherein the application program is executed if it is determined that the bits read from the memory match the bits attempted to be written to the memory and that none of the bits attempted to be written to the memory are transmitted to someplace other than the memory.
- 12. The system of claim 9, wherein the at least one processor executes the application program if it is determined that no unknown program is resident in the memory, and wherein the system receives a stream of bits that are used by the application program.
- 13. The system of claim 12, wherein the application program is executed if it is determined that the application program is signed.
- 14. The system of claim 12, wherein the circuit further determines if any of the stream of bits received are improperly transmitted to someplace other than for use by the application program.
- 15. The system of claim 9, wherein the at least one storage device storing the program and the circuit are included on a board in the system, and wherein a bus interconnects the board, the memory, and the at least one processor.
- 16. The system of claim 9, wherein the at least one storage device storing the program and the circuit are included on a Personal Computer (PC) card.
- 17. An apparatus for identifying one or more unknown programs in a system, said apparatus comprising:
a storage device storing a program that a processor executes to perform a method comprising the steps of:
attempting to write a predetermined number of bits to a memory in the system, reading a number of bits from the memory that is equal to the predetermined number of bits attempted to be written to the memory, and determining if the bits read from the memory match the bits attempted to be written to the memory; and a circuit that determines if any of the bits attempted to be written to the memory are transmitted to someplace other than the memory.
- 18. The apparatus of claim 17, wherein the apparatus is a Personal Computer (PC) card for use in a computer.
- 19. The apparatus of claim 17, wherein the apparatus is a board for use in a computer.
- 20. An apparatus for identifying one or more unknown programs in a system, said apparatus comprising:
a circuit that attempts to write a predetermined number of bits to a memory in the system, reads a number of bits from the memory that is equal to the predetermined number of bits attempted to be written to the memory, determines if the bits read from the memory match the bits attempted to be written to the memory, and determines if any of the bits attempted to be written to the memory are transmitted to someplace other than the memory.
- 21. A system, comprising:
means for attempting to write a predetermined number of bits to a memory in the system, wherein the predetermined number of bits is based on size of the memory; means for determining if any of the bits attempted to be written to memory are transmitted to someplace other than the memory; means for reading from the memory a number of bits that is equal to the predetermined number of bits attempted to be written to the memory; means for determining if the bits read from the memory match the bits attempted to be written to the memory; and means for determining that no unknown program is resident in the memory if the read bits match the bits attempted to be written to the memory and that none of the bits attempted to be written to the memory are transmitted to someplace other than the memory.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application No. 60/176,696, filed Jan. 18, 2000, the contents of which are hereby incorporated by reference. Additionally, the application of Richard Lipton and Dimitrios Serpanos, entitled “Method and Systems for Data Security,” Attorney Docket No. APP-1360 US, contains subject matter related to the present application, and is assigned to the assignee hereof and has been filed on the same date as the present application.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60176696 |
Jan 2000 |
US |