Protection of software using a challenge-response protocol...

Electrical computers and digital processing systems: support – Data processing protection using cryptography – By stored data protection

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C380S201000, C713S182000, C713S189000

Reexamination Certificate

active

06651169

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to mechanisms for protecting software against unauthorized use, in particular against unauthorized copying.
2. Description of the Related Art
The Business Software Alliance estimates the 1995 financial losses attributed to software piracy as US$ 8.1 Billion for business application software and US$ 15.2 Billion for all software.
Solutions have been proposed in two areas:
improved Intellectual Property Rights (IPR) legislation, and
enhanced electronic copy protection (ECP) mechanisms.
IPR legislation and enforcement are improving in many countries, but there are still significant difficulties in other parts of the world. As a result, some vendors are currently reassessing ECP.
Some example requirements that an ECP mechanism may potentially satisfy are listed below:
Unauthorized users or customers should be prohibited from executing protected software.
The customer should not be prohibited from making backups.
The ECP mechanism should have minimal impact upon the user interface. The visible impact should be limited to the first initial login to the operating system and/or smart card.
Only standard hardware and software assumptions should be made. For example, although hardware dongles provide copy protection services, many vendors do not wish to limit the sale of the software to the collection of customers who own or are willing to install a dongle.
The ECP mechanism should not limit execution of the protected software to a limited collection of machines. When a customer legitimately purchases software, the customer should be able to execute the software on any machine regardless of ownership. The customer should optionally be able to authorize simultaneous execution of the software in multiple machines.
The ECP mechanism should have no required network dependencies in order to execute an already purchased protected program.
The vendor should be permitted to distribute an identical version of the protected software to all customers. This requirement permits the protected software to be distributed through normal channels such as, for example, CD-ROMs, floppy disks, or network bulletin boards.
It should be excessively difficult and/or computationally infeasible for a potential software pirate to circumvent the ECP mechanism without modifying the protected program. This requirement serves as a virus-protection measure because a digital signature supplied by the vendor would not validate if a pirate distributes a modified version of the original program.
The ECP mechanism should not disclose the private keying material to the vendor, to any program produced by the vendor, or to any potential Trojan horse program. Though the primary functionality is to protect the software vendor, one must not do so at the expense of the customer.
The ECP mechanism should be available in a software-only version as well as in a hardware-assisted version, using a smart card, for example, to assure widespread market acceptance.
In the Choudhury et al. publication, “Copyright Protection for Electronic Publishing over Computer Networks”, a mechanism is proposed in which a protected document can be viewed only via a specially configured viewer program, which allows a customer to view the document only if the customer supplies to the viewer the customer's private keying material. This deters the customer from distributing unauthorized copies of the viewer program since that would require the customer to divulge his or her private keying material to others. However, because this mechanism requires that the viewer program obtain access to the private keying material, it violates one of the requirements described above. Furthermore, this mechanism may not be used in conjunction with a smart card that is configured to avoid releasing private keying material.
An overview of asymmetric cryptography, for example of the RSA (Rivest-Shamir-Adleman) scheme, and probabilistic encryption, for example the Blum-Goldwasser probabilistic public-key encryption scheme, can be found in a book by Menezes, et al., “Handbook of Applied Cryptography”.
The Chi-Square Test, the Kolmogorov-Smirnov Test, and the Serial Correlation Test are described in a publication by Knuth, “The Art of Computer Programming.”
An overview of digital signature schemes (e.g. Rivest-Shamir-Adleman (RSA), etc.,) can be found in the Menezes book.
In a publication by Fenstermacher et al., cryptographic randomness from air turbulence in disk drives is described.
An example of a message digest function (otherwise known as a one-way hash function) is MD5, see Rivest, “The MD5 Message-digest Algorithm.” It is computationally infeasible or very difficult to compute the inverse of a message digest.
SUMMARY OF THE INVENTION
An object of the present invention is to provide an improved ECP (electronic copy protection) mechanism that is able to satisfy most, if not all, of the example requirements described above.
The present invention makes use of an asymmetric confidentiality protocol. An asymmetric confidentiality protocol involves two parties, A and B. A possesses private keying material and B has no access to A's private keying material without disclosing the private keying material itself. At the beginning, A and B have no shared secret. During the method, a shared secret becomes known to A and B. A proves to B that A has access to the private keying material.
An example of an asymmetric confidentiality proof is public key encryption. As illustrated in the asymmetric confidentiality protocol below. A proves to B that A has access to the private keying material.
A←B: h(r), B, P
A
(r,B)
A→B: r
The protocol scheme described above uses the following notation:
A→B denotes that A sends a message to B; and B→A denotes that B sends a message to A.
r denotes a random number used as a nonce
h(r) is a message digest of the nonce
P
A
(r,B) is encryption of the nonce and B's identity using A's public keying material.
Here, B generates a nonce and encrypts the nonce (together with B's identity) using A's public keying material, i.e., P
A
(r,B).
Additionally B computes the message digest of the nonce, h(r).
B sends the information described above, along with a value representing B's identity, to A.
Next, A uses its private keying material to decrypt P
A
(r,B) obtaining r,B. A computes the message digest of the decrypted random value, r, and compares the result against h(r)obtained from B.
At this point, the random number is a shared secret known by both A and B.
In order to complete the protocol, A returns the random number to B in order to demonstrate that A knows the secret. Of course, once A provides the disclosure, the secrecy of the random number is lost. B validates A's proof by checking for equality A's returned secret against the one that B originally generated.
A second example of an asymmetric confidentiality protocol is a probabilistic encryption scheme, e.g. the Blum-Goldwasser probabilistic public key encryption scheme. Here, the encryption or decryption mechanism uses random numbers or other probabilistic means.
In all asymmetric confidentiality protocols, each customer may post his or her public keying material to a publicly accessed directory without compromising the corresponding private keying material. The customer usually should guard his or her private keying material as a close secret; otherwise, the cryptographic system may not guarantee correctness (in other words, secrecy). The best known mechanism for protecting one's private keying material is through the use of a smart card. In this case, the smart card is a device with no interface for releasing private keying material (in a non-cryptographically protected form).
Although smart cards provide the best protection, social factors of electronic commerce may provide a role in ensuring private keying material protection. One of the significant difficulties associated with asymmetric encryption services is authentication. For example, if A posts his

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Protection of software using a challenge-response protocol... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Protection of software using a challenge-response protocol..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Protection of software using a challenge-response protocol... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3143232

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.