×

Method and system for copy-tracking distributed software featuring tokens containing a key field and a usage field

  • US 6,070,171 A
  • Filed: 05/15/1998
  • Issued: 05/30/2000
  • Est. Priority Date: 05/15/1998
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method of copy-tracking distributed software programs over a computer network after the programs are distributed to users comprising the steps of:

  • (a) encoding a plurality of a distributable computer-readable media with (1) a Software Payload to be tracked, (2) a Tracker Client program and (3) a Current Token readable by the Tracker Client program and including a Key field and a Usage field;

    (b) installing a Tracker Server program on a central computer in the network, the Tracker Server program including a database for storing Current Tokens received from the Tracker Client programs;

    (c) selectively installing the encoded media on respective user computers that are connectable to the network;

    (d) operating each one of the user computers to execute the Tracker Client program on the encoded medium installed thereon to access the Tracker Server program on the central computer via computer-to-computer communications over the network;

    (e) the user computer of step (d) executing the Tracker Client program to read the Current Token on the encoded medium installed thereon and to send the Current Token to the Tracker Server program;

    (f) the central computer executing the Tracker Server program to validate the Current Token of step (e);

    if the Current Token is invalid the Tracker Server program is executed to request a re-send or to inform the Tracker Client program to prevent access to the Software Payload;

    (g) if the Tracker Server program validates the Current Token in step (f) and the Usage field is set to zero to indicate that the Tracker Client program is initially communicating with the Tracker Server program, the Tracker Server program is executed by the central computer (1) to return a new Current Token with a new Key in the Key field to the Tracker Client program for use when the Tracker Client program next accesses the Tracker Server program, (2) to store at least the Key of the new Current Token in the Tracker Server database, (3) to set the Usage field to one, and (4) to indicate to the Tracker Client program to permit execution of the Software Payload;

    or(h) if the Tracker Server program validates the Current Token in step (f) and the Usage field is set to greater than zero to indicate that the Tracker Client program has previously communicated with the Tracker Server program, the Tracker Server program is executed by the central computer (1) to determine whether the Key in the Key field matches a Key in the Tracker Server database, and if there is a match, (2) to return a new Current Token with a new Key in the Key field to the Tracker Client program for use when the Tracker Client program next accesses the Tracker Server program, (3) to store at least the Key of the new Current Token in the Tracker Server database, (4) to increment the Usage field by one, and (5) to indicate to the Tracker Client program to permit execution of the Software Payload; and

    if in (1) above the Key in the Key field does not match a Key in the Tracker Server database, optionally informing the Tracker Client program to prevent access to the Software Payload; and

    (i) repeating steps (d) to (h) for the other user computers.

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