Method of software distribution protection
AssigneeSoftware Security, Inc.
InventorsWayne W. Chou, Joseph M. Kulinets, Laszlo Elteto, Frederik Engel
Life of this patent
Estimating the term…
Abstract
A method is provided for protecting distributed software which relies on a unique factor such as an accessible serial number or the generation of a profile or fingerprint of the computer of the user which is entered individually and/or with a random factor to generate a unique first key which will differ for different computers. The first key is sent to a processing center which then generates a second key. The user applies the second key which compares the unique and/or random factors. If the comparison matches, the first and second keys are used in an algorithm in the software to generate a decrypting key permitting the customer to purchase the selected program(s).
Claims6
A method of protecting distributed encrypted software of a distributor from unauthorized use by a user in a user's computer comprising the steps of
- generating data which describes a unique factor of the computer of the user,
- entering said data along with a random factor into a file of the computer of the user,
- generating a first key based on said data and said random factor,
- transmitting the first key to a processing center which controls the user of the distributed program,
- sending a second key from the processing center to the user which second key is related to said user's first key,
- entering the second key in the user's computer for regenerating said file in the user's computer,
- comparing said file in said user's computer with said regenerated file,
- denying access to said encrypted software when said comparison fails to produce a match, and
- combining said first and second key by means of an algorithm in said software when a match occurs for providing a decrypting key for decrypting the distributed software and
- decrypting said encrypted software thereby gaining access to said encrypted software.
A method of protecting distributed encrypted software of a distributor from unauthorized use of a user in the user's computer comprising the steps of
- selecting a unique factor of the computer of the user,
- generating a first key based on said unique factor,
- transmitting the first key to a processing center,
- deriving a second key at the processing center which is related to said first key,
- entering the second key in the user's computer,
- regenerating said unique factor of said first key in the user's computer using said second key,
- reading and comparing said unique factor with said regenerated unique factor,
- denying access to said encrypted software when a match is not provided by said comparing step,
- combining said first and second key by means of an algorithm in said software for generating a decrypting key for decrypting the distributed software, and
- decrypting said encrypted software thereby gaining access to said encrypted software.
The method of protecting mass distributed encrypted software of a distributor from unauthorized use of a user in a user's computer comprising the steps of
- selecting data which comprises a random factor for the user's computer,
- storing said data into a file of the user's computer,
- generating a first key based on said file,
- transmitting the first key to a processing center,
- deriving a second key at said processing center based on said first key,
- transmitting said second key from the processing center to the user,
- entering the second key in the user's computer,
- reading said file containing said random factor,
- regenerating said first key from said stored random factor,
- comparing said file with said regenerated first key,
- denying access to said encrypted software in the absence of a match in said comparison step, and
- combining said first and second key by means of an algorithm in said software for generating a decrypting key for decrypting the mass distributed software, and
- decrypting said encrypted software thereby permitting the user to gain access to said software.
Dependencies are inferred from the claim text.