×

Method and device for protecting software delivered to a user by a supplier

  • US 4,683,553 A
  • Filed: 02/05/1986
  • Issued: 07/28/1987
  • Est. Priority Date: 03/18/1982
  • Status: Expired due to Term
First Claim
Patent Images

1. A system for protecting software programs (Pl. . . , Pi, . . . Pn) adapted to be executed on a data processing machine (1) of a user of the software programs, said machine having at least one memory (M), control and processing circuits (2), and an input/output device (3), the system comprising:

  • a card (C), specific to the user, possessing at least one memory (M1) and processing circuits (4), anda card reader (LC) coupled with the input/output device (3) of the machine (1) and with the card (C) to enable data transfer therebetween;

    the memory (M) of the machine (1) containing at least one program (Pi) delivered by a supplier of the software programs, the one program including an identification parameter (ai) which identifies the one program and having a scrambled portion which renders the one program non-executable on the machine, containing a main validation key code (Vi), specific to the one program, issued by the supplier, and containing a master program (SPP);

    the memory (M1) of the card (C) containing at least one secret code (S) specific to the user and known only to the suppler, and identification arguments which identify the programs, at least one of said identification arguments (bi) identifying said one program, the card having means responsive to the identification parameter (ai) contained in the one program (Pi) for addressing said identification argument (bi), and the processing circuits (4) of the card having means for computing a supplementary validation key code (V'"'"'i) from the secret code (S) and the addressed identification argument (bi) of the program (Pi) and for transferring the supplementary validation key code to the machine; and

    wherein the master program (SPP) is formed to combine the supplementary validation key code (V'"'"'i) and the main validation key code (Vi) for unscrambling the scrambled portion of the program (Pi) and rendering the program executable.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×