×

Methods for controlling software usage

  • US 9,792,417 B2
  • Filed: 06/14/2013
  • Issued: 10/17/2017
  • Est. Priority Date: 06/15/2012
  • Status: Active Grant
First Claim
Patent Images

1. A computer implemented method for controlling software usage, the method comprising:

  • receiving a request for at least one software application license for a software application by a computing apparatus comprising at least one processor and a readably coupled memory, wherein the request comprises a user count upper limit;

    generating, by the computing apparatus, one or more sets of license data in response to the request, wherein the one or more sets of license data comprise the user count upper limit, a security certificate associated with the software application, and a corresponding sequence number;

    signing each of the one or more sets of license data digitally with a private key;

    embedding the one or more sets of signed license data into the software application;

    performing registration for user identification data comprising a user identification string and a password string, wherein registration comprises (a)-(d);

    (a) validating the license data, wherein validating the license data comprises validating the signed license data embedded into the software application;

    (b) maintaining an active user count;

    (c) checking availability of a license, wherein checking availability comprises comparing the active user count against the user count upper limit; and

    (d) associating the user identification data with the corresponding sequence number in the signed license data;

    receiving a request to access the software application, wherein receiving the request comprises receiving registered user identification data through an input interface associated with the computing apparatus and signed license data;

    validating the registered user identification data, wherein validating comprises (e)-(g);

    (e) identifying the sequence number associated with the registered user identification data;

    (f) comparing the corresponding sequence number associated with the registered user identification data with the corresponding sequence number in the signed license data; and

    (g) authenticating the registered user identification data, wherein authenticating comprises authenticating only if the corresponding sequence number associated with the registered user identification data and the corresponding sequence number in the signed license data match; and

    responsive to successfully validating the registered user identification data, providing access to the software application by the user identification string.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×