Software distribution system and software utilization scheme for improving security and user convenience
First Claim
1. A method for utilizing software, comprising the steps of:
- carrying out a user registration by generating a shared key at a user side and storing the shared key at both a software provider side and the user side before any request for a software is issued from the user to the software provider, the shared key having a guaranteed correspondence with an ID information regarding a payment of a software fee by the user;
requesting a desired software from the user to the software provider by using the shared key, and receiving the desired software in an encrypted form using the shared key from the software provider;
decrypting the desired software received from the software provider by using the shared key stored at the user side; and
utilizing the desired software in a decrypted form.
1 Assignment
0 Petitions
Accused Products
Abstract
A software distribution system and a software utilization scheme for effectively preventing an illegal copy or a software is difficult while improving a convenience of a user. At a user side, a shared key to be shared between a software provider and a user is stored, where the shared key has a guaranteed correspondence with an ID information regarding a payment of a software fee by the user. Then, a desired software is requested to the software provider, and the desired software is received in an encrypted form from the software provider. The desired software received from the software provider is then decrypted by using the shared key stored at the user side, and the desired software in a decrypted form is utilized at the user side.
192 Citations
20 Claims
-
1. A method for utilizing software, comprising the steps of:
-
carrying out a user registration by generating a shared key at a user side and storing the shared key at both a software provider side and the user side before any request for a software is issued from the user to the software provider, the shared key having a guaranteed correspondence with an ID information regarding a payment of a software fee by the user;
requesting a desired software from the user to the software provider by using the shared key, and receiving the desired software in an encrypted form using the shared key from the software provider;
decrypting the desired software received from the software provider by using the shared key stored at the user side; and
utilizing the desired software in a decrypted form. - View Dependent Claims (2, 3, 4, 5)
encrypting the shared key at the user side by using a public key corresponding to a secret key of the software provider and sending the shared key in an encrypted form from the user side to the software provider; and
encrypting the ID information at the user side by using the shared key and sending the ID information in an encrypted form from the user side to the software provider.
-
-
3. The method of claim 1, wherein the guaranteed correspondence between the shared key and the ID information is established by
encrypting the shared key and the ID information at the user side by using a public key corresponding to a secret key of the software provider and sending the shared key and the ID information in an encrypted form from the user side to the software provider. -
4. The method of claim 1, wherein the carrying out step stores the shared key at the user side by obtaining an auxiliary information regarding a software utilization, encrypting the shared key by using the auxiliary information, and storing the shared key in an encrypted form, and
the decrypting step decrypts the desired software by obtaining the auxiliary information, decrypting the shared key in an encrypted form by using the auxiliary information, and decrypting the desired software by using the shared key in a decrypted form. -
5. The method of claim 1, wherein the utilizing step utilizes the desired software in executing another already provided software.
-
6. A software distribution system in which a desired software is provided in an encrypted form from a software provider to a user, comprising:
-
a shared key generation unit provided at the user side and configured to generate a shared key, the shared key having a guaranteed correspondence with an ID information regarding a payment of a software fee by the user;
shared key storing units respectively provides at both a software provider side and a user side and configured to store the shared key before any request for a software is issued from the user to the software provider;
a request transmission unit provided at the user side and configured to transmit a request for the desired software to the software provider side by using the shared key stored in the shared key storage unit on the user side;
a software encryption unit provided at the software provider side and configured to encrypt the desired software by using the shared key stored in the shared key storage unit on the software provider side;
an encrypted software transmission unit provided at the software provider side and configured to transmit the desired software in an encrypted form to the user side; and
a software decryption unit provided at the user side and configured to receive the desired software in an encrypted form from the software provider, and to decrypt the desired software received from the software provider by using the shared key stored in the shared key storage unit on the user side, so as to obtain the desired software in a decrypted form that can be utilized at the user side. - View Dependent Claims (7, 8, 9, 10)
a request inspection unit provided at the software provider side and configured to inspect whether the request for the desired software is proper or not by using the shared key stored in the shared key storage unit on the software provider side; and
a software transmission command unit provided at the software provider side and configured to command an execution of an encryption by the software encryption unit and a transmission by the encrypted software transmission unit when the request inspection unit judges that the request for the desired software is proper.
-
-
8. The system of claim 6, further comprising:
-
a shared key encryption unit provided at the user side and configured to encrypt the shared key by using a public key corresponding to a secret key of the software provider and to send the shared key in an encrypted form to the software provider; and
an ID information encryption unit provided at the user side and configured to encrypt the ID information by using the shared key and to send the ID information in an encrypted form to the software provider, so as to establish the guaranteed correspondence between the shared key and the ID information.
-
-
9. The system of claim 6, further comprising:
a shared key and ID information encryption unit provided at the user side and configured to encrypt the shared key and the ID information by using a public key corresponding to a secret key of the software provider and to send the shared key and the ID information in an encrypted form to the software provider, so as to establish the guaranteed correspondence between the shared key and the ID information.
-
10. The system of claim 6, wherein the shared key storage unit on the user side stores the shared key by obtaining an auxiliary information regarding a software utilization, encrypting the shared key by using the auxiliary information, and storing the shared key in an encrypted form, and
the software decryption unit decrypts the desired software by obtaining the auxiliary information, decrypting the shared key in an encrypted form by using the auxiliary information, and decrypting the desired software by using the shared key in a decrypted form.
-
11. A software distribution system in which a desired software is provided from a software provider to a user through a network comprising:
-
a client terminal on a user side, which is connected with a server on a software provider side through the network, and including;
a registration unit configured to generate a shared key and register a user charging information and the shared key into the server such that the shared key is stored at both the software provider side and the user side before any request for a software is issued from the user to the software provider;
a request unit configured to send a request for a desired software to the server; and
an install unit configured to install each software downloaded from the server in response to the request sent by the request unit; and
a server on the software provider side, including;
a charging processing unit configured to carry out a charging processing according to the user charging information registered by the registration unit, when the desired software requested by the request is a fee charged software; and
a download unit configured to download software in response to the request sent by the request unit, the software to be download being encrypted by using the shared key registered by the registration unit when the software to be downloaded is required to be encrypted. - View Dependent Claims (12, 13, 14, 15, 16)
the charging processing unit carries out the charging processing when the request sent by the request unit is requesting the passive function portion. -
13. The system of claim 11, wherein each software provided by the software provider comprises an active function portion which is independently operable, and a passive function portion which becomes operable by being incorporated into the active function portion,
the downloading unit downloads the passive function portion in an encrypted form obtained by using the shared key; - and
the install unit installs the passive function portion and the active function portion so that, the passive function portion installed by the install unit is stored in an encrypted form, and the active function portion installed by the install unit decrypts the passive function portion in an encrypted form by using the shared key and incorporates the passive function form in a decrypted form, each time the active function portion is activated at the client terminal.
- and
-
14. The system of claim 11, wherein the client terminal further comprises:
a key management unit configured to encrypt the shared key by using a code information uniquely defined for the client terminal, and to store the shared key in an encrypted form.
-
15. The system of claim 11, wherein the download unit downloads a software which is selected according to an environment judgement result for the client terminal notified from the client terminal to the server in advance.
-
16. The system of claim 11, wherein the server further comprises:
a list providing unit configured to provide the user with a list information containing a version information for each software that can be provided to the user, in response to a request for the list information from the client terminal, so that the request sent by the request unit requests the desired software selected according to the list information.
-
-
17. A method of purchasing a software at a user-side computer, comprising the steps of:
-
carrying out a user registration by generating a shared key at a user side and storing the shared key at both a software provider side and the user side, the shared key being guaranteed to correspond to an ID information of the user regarding a payment of a software fee;
receiving, in response to a request for a desired software by the user using the shared key, the desired software in a form encrypted using the shared key from the software provider, without requiring the user to give the ID information to the software provider; and
decrypting the desired software received from the software provider using the shared key stored at the user side. - View Dependent Claims (18, 19)
receiving, in response to another request for another desired software by the user, the another desired software in a form encrypted using the shared key from the software provider.
-
-
19. The method of claim 17, further comprising the step of:
storing another shared key shared between another software provider and the user, the another shared key being guaranteed to correspond to the ID information, without storing the ID information in the user-side computer.
-
20. A method of selling a software at a provider-side computer, comprising the steps of:
-
registering a user at a software provider side by storing a shared key generated at a user side, the shared key being guaranteed to correspond to an ID information of the user regarding a payment of a software fee;
receiving a request of a desired software from the user using the shared key, where the request is not accompanied by the ID information; and
transmitting, in response to the request, the desired software in a form encrypted using the shared key stored at the software provider side.
-
Specification