Software delivery models
First Claim
1. A method, comprising:
- receiving a request, at a server from an end user system, to download at least one software application from a third party software provider to the end user system;
transmitting a software agent module from the server to the end user system, the software agent module configured to control user access to the at least one software application and configured to monitor the usage of the at least one software application;
transmitting a software encryption key from the server to be stored in a trusted platform module (TPM) of the end user system;
transmitting a software license encryption key from the server to be stored in the TPM on the end user system;
transmitting an encrypted software license corresponding to the at least one software application to be installed at the end user system, the encrypted software license encrypted using the software license encryption key;
transmitting, from the server to the end user system, the software application encrypted using the software encryption key to be installed at the end user system; and
receiving, at the server, information from the software agent module related to a state and user access of the at least one software application on the end user system.
1 Assignment
0 Petitions
Accused Products
Abstract
Generally, this disclosure describes software delivery systems (and methods). A server is provided that operates to provision software on a customer'"'"'s local machine. The server system, in response to a software purchase from an end user (customer), is configured to install the software on the customer'"'"'s machine, encrypt the software, and provision encryption keys to grant the customer access to the software. In addition, a software agent is installed on the customer'"'"'s machine that enables monitoring, by the server, of the customer'"'"'s installed software. The server system is configured to control customer access to the installed software, via the software agent, and to terminate customer access to the software (for example, for nonpayment of fees). Thus, the software provider can retain control over software that is remotely deployed at an end user location.
-
Citations
18 Claims
-
1. A method, comprising:
-
receiving a request, at a server from an end user system, to download at least one software application from a third party software provider to the end user system; transmitting a software agent module from the server to the end user system, the software agent module configured to control user access to the at least one software application and configured to monitor the usage of the at least one software application; transmitting a software encryption key from the server to be stored in a trusted platform module (TPM) of the end user system; transmitting a software license encryption key from the server to be stored in the TPM on the end user system; transmitting an encrypted software license corresponding to the at least one software application to be installed at the end user system, the encrypted software license encrypted using the software license encryption key; transmitting, from the server to the end user system, the software application encrypted using the software encryption key to be installed at the end user system; and receiving, at the server, information from the software agent module related to a state and user access of the at least one software application on the end user system. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A software distribution system, comprising:
a server, comprising one or more hardware processors, configured to communicate with an end user system;
the server further configured to;receive a request, from the end user system, to download at least one software application from a third party software provider to the end user system; transmit a software agent module from the server to the end user system, the software agent module configured to control user access to the at least one software application and configured to monitor the usage of the at least one software application; transmit a software encryption key to be stored in a trusted platform module (TPM) of the end user system; transmit a software license encryption key from the server to be stored in the TPM on the end user system; transmit an encrypted software license corresponding to the at least one software application to be installed at the end user system, the encrypted software license encrypted using the software license encryption key; transmit, to the end user system, the software application encrypted using the software encryption key to be installed at the end user system; and receiving, at the server, information from the software agent module related to a state and user access of the at least one software application on the end user system. - View Dependent Claims (8, 9, 10, 11, 12)
-
13. A non-transitory computer-readable storage medium having instructions stored thereon which when executed by a processor result in the following operations comprising:
-
receiving a request, at a server from an end user system, to download at least one software application from a third party software provider to the end user system; transmitting a software agent module from the server to the end user system, the software agent module configured to control user access to the at least one software application and configured to monitor the usage of the at least one software application; transmitting a software encryption key from the server to be stored in a trusted platform module (TPM) of the end user system; transmitting a software license encryption key from the server to be stored in the TPM on the end user system; transmitting an encrypted software license corresponding to the at least one software application to be installed at the end user system, the encrypted software license encrypted using the software license encryption key; transmitting, from the server to the end user system, the software application encrypted using the software encryption key to be installed at the end user system; and receiving, at the server, information from the software agent module related to a state and user access of the at least one software application on the end user system. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification