Claims
- 1. A system for protecting software executable on a computer machine, the system being of the type in which said software is associated with a memory card for insertion in a read/write device connected to said computer machine, and being characterized in that:said software comprises: means for storing a public key or value; means for periodically generating a pseudo-random number and for transmitting said pseudo-random number to said read/write device; means for implementing a first algorithm using said value or public key on receiving information from the read/write device; comparator means for comparing the result of implementing said first algorithm with said pseudo-random number; and means for interrupting the execution of said software in response to said comparison; and in that said card comprises: protected memory means for storing an associated private value or key; means for implementing a second algorithm associated with said first algorithm and using said private value or key on receiving information issued by said computer machine, thereby obtaining encoded information; and means for transmitting said encoded information to said computer machine.
- 2. A protection system according to claim 1, characterized in that said first and second algorithms are algorithms of the asymmetrical public key and private key type.
- 3. A protection system according to claim 2, characterized in that said card further comprises:means for generating an auxiliary pseudo-random number; means for applying said second encryption algorithm to said auxiliary pseudo-random number; means for combining the pseudo-random number and the auxiliary pseudo-random number; means for applying said second algorithm to said combination of the numbers; and means for transmitting the encrypted number and the encrypted combination to said computer machine; and in that said software comprises: means for applying said first encryption algorithm to said encrypted number and to said encrypted combination; and means for combining said pseudo-random number and the result of implementing said first algorithm on said encrypted auxiliary pseudo-random number.
- 4. A protection system according to claim 1, characterized in that said first and second algorithms are zero disclosure algorithms.
- 5. A protection system according to any one of claims 1 to 4, characterized in that the public and private keys or values are the same for all pieces of software.
- 6. A protection system according to any one of claims 1 to 4, characterized in that said public and private keys or values are specific to each piece of software.
- 7. A system for protecting software according to any one of claims 1 to 4, characterized in that it further comprises network means for downloading said software from a supplier and into the computer machine, means using said card to request said supplier to supply the private value or key associated with said software over the network, and means for receiving in return said private value or key in encrypted form and for decrypting it in the card so as to store it in decrypted form.
Priority Claims (1)
Number |
Date |
Country |
Kind |
98 07629 |
Jun 1998 |
FR |
|
Parent Case Info
This application is a continuation of international application number PCTFR99/01439, filed Jun. 15, 1999 (status, abandoned, pending, etc.).
US Referenced Citations (6)
Foreign Referenced Citations (1)
Number |
Date |
Country |
0 191 162 |
Aug 1986 |
EP |
Non-Patent Literature Citations (1)
Entry |
Menezes, Alfred. Handbook of Applied Cryptography, 1997, CRC Press LLC, p. 172. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
PCT/FR99/01439 |
Jun 1999 |
US |
Child |
09/739308 |
|
US |