A method of managing software use in a desired mode and with ease of
handling upgrades or other changes includes a sales company or other
software provider adding a password to software, inserting identification
information into a dongle, and distributing the same to users. A secret
key and an open key are prepared and the open key is transmitted to the
user. When the user tries to obtain a license, the password is sent to
the sales company. The sales company detects identification information
based on the password, encodes the same by using the secret key, and
sends the same to the user as encoded license information. The user
decodes the encoded license information by the open key and matches the
same against the identification information included in the dongle. If
the information match, the software effectively starts up, while if not,
the execution of the software is stopped.