System and method for software licensing

Data processing: software development – installation – and managem – Software program development tool – Translation of code

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C380S001000, C380S029000

Reexamination Certificate

active

06189146

ABSTRACT:

TECHNICAL FIELD
This invention relates to systems and methods for licensing software. This invention further relates to systems and methods for enforcing software licenses.
BACKGROUND
Software licensing has historically been based on a “trust” model in which the user (i.e., licensee) is presumed to be honest and trustworthy and to abide by the legal requirements of the license. Under the trust model, a software license typically accompanies a software product to explain the terms of use. For instance, the software license might dictate that the program code is to be installed on only one computer, and may be used to make one backup copy.
Common types of licenses include “shrink wrap” licenses, “online” licenses, and “site” licenses. A “shrink wrap” license is a license that accompanies each software product that is sold individually in a shrink-wrapped package through retail stores. The user is typically assumed to accept the terms of the shrink wrap license upon breaking the seal of the package, or the container that holds the disk itself.
An “online” license is one that accompanies software products that are downloaded online, such as from the Internet. The license is typically presented to the user prior to downloading the code. The user is presented with a choice to accept or reject the license. If the user accepts the license (e.g., by clicking an “Accept” button on the screen), the user is presumed to have accepted the terms of the license and the code is downloaded to the user's computer.
A “site” license is a single license that allows installation of multiple copies of software on many different computers at a particular site or many sites. It is commonly used to sell software to corporations, firms, or other entities having many computers. The purchaser pays for a certain number of copies (e.g., hundreds or thousands), and the site license enables the purchaser to install that many copies on its computers. The site license is beneficial because the software vendor need not supply a large number of program disks, but merely supplies one or a few copies of the software and lets the purchaser install the copies without violating the agreement.
Each of the above license arrangements assumes that the purchaser is honest. The software purchaser must abide by the license terms in order to legally use the software. If the purchaser fails to abide by the provisions, the purchaser can be charged with civil and criminal violations.
However, enforcement of such licenses is impractical, if not impossible. Unscrupulous users might make multiple copies of the software code and install it on more computers than the license allows. Yet, software vendors cannot begin to monitor these abuses because they occur in the privacy of the home or company. Thus, it is believed that the software industry loses a large percentage of revenues each year simply due to illegitimate use of software by the licensees. This loss does not even account for the problems of overseas pirating.
Another problem with conventional software licensing practices concerns internal monitoring and bookkeeping on the part of large-site licensees. In most cases, the licensees want to comply with the terms of the software licenses, but are unable to adequately track the software as it is used throughout the site. For example, a large corporation might purchase several thousand copies of the software and begin installing the copies. However, computers and personnel change over time and it is difficult to centrally monitor how many copies have been installed, whether the copies have expired, whether they need upgrading, and SO forth.
Accordingly, there is a need to develop a new approach to licensing software in a manner that assures that the terms are being meet and assists the licensee with monitoring whether it is in compliance with the software license.
SUMMARY
This invention concerns a system and method for licensing software. The system and method provides confidence to the vendor that the software license is being complied with, while also assisting the purchaser in monitoring its own compliance with the license.
According to one aspect of this invention, computer software licenses are electronically issued as digital certificates that can be distributed in one-to-one correlation with individual client computers and traced to an issuing authority.
According to another aspect, the system includes a license generator located at a licensing clearinghouse and at least one license server and multiple clients located at or affiliated with a company or other entity. Because the clients might not have network connectivity to the license server, one or more intermediate servers may act as an intermediary for the clients. These intermediate servers are otherwise common servers that provide resources to clients, but with the added ability to facilitate connectivity to the license server for purposes of distributing software licenses to the clients.
When a company wants a software license, it sends a purchase request (and an appropriate fee) to the licensing clearinghouse. The license generator at the licensing clearinghouse creates a license pack containing a set of one or more individual software licenses. To prevent the license pack from being copied and installed on multiple license servers, the license generator assigns a unique license pack ID to the license pack and associates the license pack ID with the license server in a master license database kept at the licensing clearinghouse. The license generator also digitally signs the license pack and encrypts it with the license server's public key. The license generator sends the license pack to the license server using standard communications, such as over a data communication network (e.g., Internet) or via a portable data medium (e.g., floppy diskette, CD-ROM, etc.).
The license server verifies the license generator's digital signature on the license pack and if valid, installs the license pack for subsequent distribution of licenses. The license server maintains an inventory of software licenses that have been purchased from the licensing clearinghouse. The license server is responsible for distributing the software licenses contained in the license pack to individual clients. It monitors the software licenses that have been granted to clients and continues to distribute licenses as long as non-assigned licenses remain available. Once the supply of non-assigned licenses is exhausted, however, the license server can no longer grant licenses to the clients and the customer must purchase a new pack from the license clearinghouse.
When a client connects to a server, the client presents a valid license (if it has one). If the client does not have an appropriate license, the server assists the client in obtaining a license from the license server. This provides an automated mechanism for clients to obtain and license server to distribute licenses to clients.
When a license is requested, the license server initially checks if the requesting client has already been issued a license. When this situation is detected, the license server issues the existing license to the client. This is actually reissuing of the same license that was previously issued. This allows the client to gracefully recover licenses when they are lost.
In one implementation, the license server determines an appropriate type of license based in part on the client's operating system platform. The license server derives the platform information by establishing a trust relationship with the client and then querying its platform type. If a software license is available for allocation, the license server grants a software license that is appropriate for the client's platform.
To prevent an issued license from being copied from one client machine to another, the software license is assigned to a specific client by including its client ID within the license. The software license also has a corresponding license ID that is associated with the client ID in a database record kept at the licen

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

System and method for software licensing does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with System and method for software licensing, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method for software licensing will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2579853

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