US6735768B1 - Method and system for installing a software product to a computer with authorization - Google Patents
Method and system for installing a software product to a computer with authorization Download PDFInfo
- Publication number
- US6735768B1 US6735768B1 US09/545,567 US54556700A US6735768B1 US 6735768 B1 US6735768 B1 US 6735768B1 US 54556700 A US54556700 A US 54556700A US 6735768 B1 US6735768 B1 US 6735768B1
- Authority
- US
- United States
- Prior art keywords
- computer
- software product
- code
- registration information
- software
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
Definitions
- This invention relates to preventing unauthorized usage of a software product. This invention also relates to preventing usage of a software product by an unauthorized computer.
- the software supplier When a user who has used the trial version hopes to use the complete version, the user asks the software supplier to sell the right to use the software product. After receiving the price of the right, the software supplier cancels the limitation in some way.
- the ways for canceling the limitation are that: (1) the software supplier provides to users a complete version of which functions are partly inactive by locking a key as its trial version; (2) a user pays the price for the right to use the software product on one computer to the software supplier; (3) the user receives the key; and (4) the user unlocks the trial version by the key in order to cancel the limitation.
- a user who has received the key may cancel the limitation on plural computers and install the complete version into not only authorized computer but also unauthorized ones.
- Japanese Unexamined Patent Publication No. Hei 10-198569 namely, 198569/1998 shows a method that a host computer receives user information from a user computer and then generates, from the user information, a key available for resuming an installation into the user computer.
- the key is generated for each computer so that an unauthorized computer cannot resume the installation by the key.
- Japanese Unexamined Patent Publication No. Hei 8-84139 namely. 84139/1996 shows a method that: (1) a user computer generates a key B from a timestamp and sends the key B to a host computer; (2) the host computer generates a key C from the key B and sends the key C to the user computer; (3) the user inputs the key C into the user computer during an installation process; and (4) the user computer generates a key D which permits the installation from the key C.
- the key C is generated for each user computer and these methods restrict a user to install a software product into one computer.
- a user computer generates registration information that denotes an authorized software product installed into the user computer, and then verifies the registration information when the user directs the user computer to execute the software product.
- the registration information is composed of information about installed software products so that the registration information is easily analyzed and falsified as if a software product is installed into an authorized computer.
- a method of installing 2 software product S to first computer with authorization by second computer comprises the steps of: (1) generating a code C from registration information that designates information about software products having already been installed to the first computer and an Identifier that designates the software product S on both the first and the second computer; (2) comparing the code C 1 generated by the first computer with the code C 2 generated by the second computer, and (3) installing the software product 5 to the first computer if the code C 1 coincides with the code C 2 is provided.
- the software product S may be functionally limited by a lock unlocked by the use of a key code K and comprise; further generating a code D by performing an operation P which is determined from the code C 2 to the key code K at STEP ( 1 ); generating a code K′ by performing an operation Q which is the inverse operation of the operation P and determined from the code C 1 to the code D instead of STEP ( 2 ); and installing the software product S to the first computer if the key code K′ successfully unlocks the lock on the software product S instead of STEP ( 3 ).
- the software product S may be locked by encrypting a part or the whole of the software product.
- the encrypted software product is decrypted with the key code K.
- the registration information may comprise an identifier which is assigned to-a software product which has already been installed to the first computer, together with the code C generated for installing the software product
- the identifier may be a timestamp designating the time when the first computer is directed installation of the software product S.
- the first computer may be used by the buyer of the software product S and the second computer is used by the supplier of the software product S.
- a system for installing a software product S to first computer with authorization by second computer comprises: a first generator for generating a code C 1 from registration information that designates information about software products having already been installed to on the first computer and an identifier that designates the software product S in the first computer; a comparator for comparing the code C 1 generated by the first computer with the code C 2 generated by the second computer; and an installer for installing the software product S to the first computer if the comparator judges that the C 1 coincides with C 2 .
- the second computer comprises a second generator for generating a code C 2 from the registration information and the identifier in the second computer.
- the software product S may be functionally limited by a lock unlocked by the use of a key code K.
- the first generator further generates a code D by performing an operation P which is determined from the code C 2 to the key code K.
- the second generator generates a code K′ by performing an operation Q which is the inverse operation of the operation P and determined from the code C 1 to the code D.
- the installer installs the software product S to the first computer if the key code K′ successfully unlocks the lock on the software product S.
- the software product S may be locked by encrypting a part or the whole of the software product.
- the first computer further comprises a decryption unit for decrypting the encrypted software product with the key code K.
- the registration information may comprise an identifier.
- the identifier is assigned to a software product that has already been installed to the first computer, together with the code C generated for installing the software product.
- the identifier may be a timestamp designating the time when the first computer is directed installation of the software product S.
- FIG. 1 shows a software block diagram for use in describing a user computer and a software supplier computer of an embodiment of this invention
- FIG. 2 shows a hardware block diagram for use in describing the user computer 1 and the software supplier computer
- FIG. 3 shows a flow chart for use in describing procedure that the software supplier computer 14 authorizes the user computer.
- FIG. 4 shows a flow chart for use in describing procedure that the user computer 1 installs a software product
- FIG. 5 shows a flow chart for use in describing procedure that the user computer 1 starts the installed software product
- FIG. 6 shows an example of a registration information table
- FIG. 7 shows flow chart for use in describing procedure of the user computer 1 manages starting of an installed software product.
- this embodiment comprises a user computer 1 and a software supplier computer 14 and these computers are featured by software blocks in FIG. 1 .
- the user computer 1 is used by a user and comprises a registration information management portion 2 which manages registration information recorded in the user computer 1 , a software executing portion 5 which manages starting of software products, and installation portion 8 which manages installation of software products.
- the software supplier computer 14 is used by a software supplier and comprises key sending portion 15 .
- the user computer 1 is specified by and comprises a central processing unit (CPU) 21 , a memory 22 , a timer 23 , an input/output interface (I/O) 24 , a common bus 25 , a non-volatile storage device 26 , a reader device 27 , a communication device 28 , a keyboard 29 and a display unit 30 .
- the common bus connects with the CPU 21 , memory 22 , timer 23 and I/O 24 with each other to communicate between these blocks.
- the non-volatile storage device 26 , reader device 27 , communication device 28 , keyboard 29 and display unit 30 are connected with the I/O 24 .
- the CPU 21 , memory 22 , I/O 24 , common bus 25 , keyboard 29 and display unit 30 are generally known by one skilled in the art so that description about these blocks is omitted.
- a timestamp has a format composed of a fourteen-digit integral number (four-digit year, two-digit month, two-digit date, two-digit hour in the range 00 to 24, two-digit minute and two-digit second).
- the timestamp may have other format.
- the format may include five-digit second given in milliseconds. Otherwise, the format may include an integral number expressing elapsed time from a specific time, instead of local time of specific area.
- the non-volatile storage device 26 is a readable/writable non-volatile storage device such as a hard disk (HD) and a flash memory, and is installed with the software products.
- the reader device 27 such as a CD-ROM drive is to read a recording medium that stores a software product and is supplied by a software supplier.
- the non-volatile storage device 26 is referred to as a HD 26 and the reader device 27 is referred to as a CD-ROM drive 27 .
- the communication device 28 is connected with a communication device 38 of the software supplier computer 14 via a communication line 41 . This connection can serve to carry out data communication between the user computer 1 and the software supplier computer 14 .
- the programs shown in FIG. 1, corresponding to the registration information management portion 2 , the software execution portion 5 and the installation portion 8 are stored in the HD 26 .
- an operating system OS
- the programs are loaded from the HD 26 to memory 22 as resident programs.
- the registration information management portion 2 comprises a registration information protector 3 which protects registration information from falsification, and a registration information updating unit 4 which updates registration information if a software product has been installed to an authorized computer.
- the software executing portion 5 comprises a registration information checker 6 which analyzes registration information to check whether a software product is installed to an authorized computer or not before executing the software product.
- the installation portion 8 comprises a timestamper 9 , a registration information sender 10 , a registration information receiver 11 , a coefficient checker 12 and an installer 13 .
- the timestamper 9 acquires current timestamp relating to the start of installing a software product.
- the registration information sender 10 sends, to the software supplier computer 14 , software information comprising a name of a software product and a timestamp and registration information of the user computer 1 .
- the registration information receiver 11 receives registration information comprising a coefficient code that is generated for installation to an authorized computer.
- the software supplier computer 14 comprises a CPU 31 , a memory 32 , an I/O 34 , a common bus 35 , a non-volatile storage device (LD) 36 , a communication device 38 , a keyboard 39 , and a display 40 .
- the common bus 35 connects the CPU 31 , the memory 32 and the I/O 34 with each other to communicate between these blocks.
- the non-volatile storage device (HD) 36 , the communication device 38 , the keyboard 39 and the display 40 are connected to the I/O 34 .
- the non-volatile storage device 36 may be-a readable/writable non-volatile storage device such as a HD and a flash memory.
- the communication device 38 is connected with a communication device 28 of the user computer 1 via the communication line 41 This connection can serve to carry out data communication between the user computer 1 and the software supplier computer 14 .
- the programs shown in FIG. 1, corresponding to the key sending portion 15 are stored in the HD 36 .
- an OS is loaded from HD 36 to memory 32 and the OS starts.
- the program is loaded from the HD 36 to memory 32 as a resident program.
- the key sending portion 15 comprises a registration information receiver 16 , a coefficient generator 17 , a registration information updating unit 18 and a registration information sender 19 .
- the registration information receiver 16 receives the software information and the registration information from the user computer 1 .
- the coefficient generator 17 generates a coefficient code from the software information and the registration Information, and then merges the coefficient code with a key code which is used for canceling limitation on a software product.
- the registration information updating unit 18 records the received software information and the generated coefficient code in updated registration information.
- the registration information sender 19 sends the updated registration information to the user computer 1 .
- STEP S 1 A user intends to buy a software product stored in a recording medium and install the software product to a user computer 1 .
- the user sets the recording medium to CD-Rom Drive 27 and commands the user computer 1 to start installation of the software product.
- STEP S 2 The timestamper 9 acquires current timestamp from the timer 23 .
- STEP S 3 The registration information sender 10 sends the name of the software product input at STEP Si, the timestamp acquired at STEP S 2 and registration information currently stored in the HD 26 to the software supplier computer 14 .
- the current registration information includes a coefficient code for a software product that has already been installed into the user computer 1 .
- STEP S 4 The registration information receiver 16 receives the name of the software product, the timestamp and the registration information from the user computer 1 .
- the coefficient generator 17 analyzes the registration information received at STEP S 4 and retrieves predetermined part of the registration information.
- the predetermined part may be the coefficient code of the latest installed software product to the user computer 1 in the received registration information. And then, the coefficient generator 17 utilizes the latest coefficient code and the timestamp acquired at STEP S 2 to generate a new coefficient code corresponding to the software product designated at STEP S 1 . Further, the coefficient generator 17 merges the new coefficient code and the key code for unlocking the software product's function(s) into a code that is called mixture code below.
- STEP S 6 The registration information updating unit 18 adds the new coefficient code generated at STEP S 5 , the name of software product and the timestamp to the registration information stored in the HD 36 .
- STEP S 7 The registration information sender 19 sends the registration information updated at STEP S 6 to the registration information receiver 11 .
- STEP S 8 The registration information receiver 11 saves the received registration information at STEP S 7 as a temporary registration information to the HD 26 .
- the coefficient checker 12 analyzes the registration information recorded in the user computer 1 or the temporary registration information to acquire the timestamp of the objective software product and two coefficient codes.
- the first one of the coefficient codes is of the objective software product.
- the second one of the coefficient codes is generated from the timestamp and the first one of the coefficient codes.
- STEP S 12 The coefficient checker 12 confirms whether the user computer 1 has been authorized by the software supplier or not by referring to the timestamp and two coefficient codes acquired at STEP S 11 .
- STEP S 13 The coefficient checker 12 judges the result of STEP S 12 . If the user computer 1 is judged as an authorized one, STEP S 14 follows STEP 13 . If the user is judged as an unauthorized one, the process is aborted.
- STEP S 14 The installer 13 starts to install the software product to the HD 26 .
- STEP S 21 The registration information checker 6 analyzes the registration information or the temporary registration information to acquire the timestamp of the objective software product and two coefficient codes.
- the first one of the coefficient codes is of the objective software product.
- the second one of the coefficient codes is generated from the timestamp and the first one of the coefficient codes.
- STEP S 22 The registration information checker 6 confirms whether the user computer 1 has been authorized by the software supplier or not by referring to the timestamp and two coefficient codes acquired at STEP S 21 .
- STEP S 23 The registration information checker 6 judges the result of STEP S 22 . If the user computer 1 is judged as an authorized one, STEP S 24 follows. If the user is judged an unauthorized one, the process is aborted.
- FIG. 6 Shown in FIG. 6, is the registration information in temporary storage for the user computer 1 .
- a software product “GraphEdt” denoted by registration number M is installed into the user computer 1 .
- the user computer 1 and the software supplier computer 14 have already been connected with the communication line 41 .
- the software product “GraphEdt” is provided to its users with limitation on its functions. This limitation is cancelled with a key code corresponding to the software product. Without the key code, the user cannot use the software product partly or at all.
- a password is assigned and a part of the functions of the software product are locked with the password.
- the password is requested by the user computer 1 and provided by the supplier computer 14 .
- the password corresponds to the key code.
- the software product is encrypted with an encryption algorithm.
- the encryption algorithm is decrypted with a decryption key.
- the decryption key corresponds to the key code.
- STEP S 1 A user intends to buy a software product stored in a CD-ROM and install the software product to a user computer 1 .
- the user sets the CD-ROM to a CD-ROM drive 27 and commands the user computer 1 to start installation of the software product.
- STEP S 2 The timestamper 9 acquires current timestamp (AD1998, December 10th, 15:10:25) from the timer 23 .
- the registration information sender 10 sends current registration information, timestamp “19981210151025”, and software name “GraphEdt” to the software supplier computer 14 .
- the current registration information comprises the software names, timestamps and coefficient codes from registration number 1 to M- 1 .
- STEP S 4 The registration information receiver 16 receives the current registration information, timestamp “19981210151025”, and software name “GraphEdt” from the user computer 1 .
- the coefficient generator 17 analyzes the registration information received at STEP 84 and retrieves the coefficient code “XXXXXXXXXXXX” of the latest installed software product “WordProc”. Then, the coefficient generator 17 operates the coefficient code “XXXXXXXXXXXXXX” and the timestamp “19981210151025” to generate a new coefficient code “YYYYYYYYYYYYYYYY” corresponding to the registration number M. Addition, subtraction and other arithmetic/logical operation may be applicable for the operation to the coefficient code and the timestamp. Further, the coefficient generator 17 merges the new coefficient code and the key code of the software product into a mixture code.
- the registration information updating unit 18 adds the coefficient code “YYYYYYYYYYYYYYYYYY”, the name of software product “GraphEdt” and the timestamp “19981210151025” to the registration information stored in the HD 36 .
- the registration information sender 19 sends the registration information updated at STEP S 6 to the registration information receiver 11 .
- STEP S 8 The registration information receiver 11 saves the registration information received at STEP S 7 as a temporary registration information to the HD 26 .
- the coefficient checker 12 in the user computer 1 searches for the temporary registration information. If the temporary registration information exists in the user computer 1 , the coefficient checker 12 acquires the coefficient code “YYYYYYYYYYYYYY” of “GraphEdt” with reference to the registration number M from the temporary registration information if the temporary registration information does not exist in the user computer 1 , the coefficient checked 12 acquires these information from the registration information. To detect whether the software product “GraphEdt” is registered in the temporary/registration information or not, it may be able to search for either the name “GraphEdt” or to search for its registration number M.
- the coefficient checker 12 confirms whether the user computer 1 has been authorized by the software supplier or not. To confirm authorization, the coefficient-checker 12 process the coefficient code “YYYYYYYYYYYYYYYY” and the timestamp “19981210151025” to generate a code. This processing is inverse processing carried out at STEP S 5 to generate a new coefficient code. For examples when the operation at STEP S 5 is addition, the operation at STEP 12 is subtraction.
- STEP S 13 The coefficient checker 12 compares the key generated at STEP S 12 with the coefficient key “XXXXXXXXXXXX” of the registration number M- 1 in the temporary/registration Information.
- STEP S 14 When the key generated at STEP S 12 coincides with the coefficient key “XXXXXXXXXXXXXX”, the user computer 1 is judged as an authorized one and the installer 13 starts to install the software product to the HD 26 .
- the registration information checker 6 in the user computer 1 searches for the temporary registration information. If the temporary registration information is searched out, the registration information checker 6 acquires the coefficient code “YYYYYYYYYYYYYY” of “GraphEdt” from the temporary registration information with reference to its registration number M If the temporary registration information is not searched out, the registration information checker 6 acquires the code from the registration information, To detect whether the software product “GraphEdt” registers the temporary/registration information or not, it may be available either to search for the name “GraphEdt” or its registration number M.
- STEP S 22 The registration information checker 6 confirms whether the user computer 1 has been authorized by the software supplier or not. To confirm authorization, the coefficient checker 12 processes the coefficient code “YYYYYYYYYYYYYYY” and the timestamp “19981210151025” to generate a code. This processing is inverse processing carried out at STEP S 5 to generate a new coefficient code. For example, when the processing at STEP S 5 is addition, the processing at STEP 12 is subtraction.
- STEP S 23 The registration information checker 12 compares the key generated at STEP S 22 with the coefficient key “XXXXXXXXXXXXX” of the registration number M- 1 in the temporary/registration information.
- STEP S 24 When the key generated at STEP S 22 coincides with the coefficient key “XXXXXXXXXXXXXXXX”, the user computer 1 is judged as an authorized one and the software starter 7 starts to execute the software product “GraphEdt”.
- the communication line 41 connects the user computer 1 and the software supplier computer 14 with each other in order that the software supplier provides a coefficient code to the user.
- the present invention is not limited to this embodiment.
- it may be available for sending a coefficient code to the user that: (1) the user sends the recording medium on which is recorded the software information and the registration information to the software supplier; (2) the software supplier generates a new coefficient code and updates the registration information; and (3) the software supplier sends the recording medium recorded with the updated registration information back to the user.
- the software product is provided to the user via a recording medium storing the software product.
- the software product may be provided to the user via transmission medium.
- the software product may be transmitted from the software supplier computer 14 through the communication line 41 and directly installed by the software supplier computer 14 .
- a new coefficient code is generated from the latest coefficient code.
- a new coefficient code may be generated from plural coefficient codes in the registration information.
- a new coefficient code in updated registration information relates to one or plural coefficient codes in the latest registration information in order to generate the new coefficient code.
- This relationship in the user computer 1 should coincide with that in the software supplier computer 14 .
- a new coefficient code relates to the latest coefficient code in the latest registration information
- the software supplier computer 14 may designate the relationship and send it to the user computer 1 .
- the software supplier computer 14 merely executes generation and transmission of coefficient codes.
- the software supplier computer 14 may save updated registration information for reissuing registration information when the user computer 1 has lost its registration information.
- the software supplier computer 14 may register the user of the software product for customer management of the software product.
- STEP S 31 When the user turns on the user computer 1 , the user computer 1 starts its OS.
- STEP S 32 The programs corresponding to the registration information management portion 2 , the software execution portion 5 and the installation portion 8 are loaded from the HD 26 to memory 22 as resident programs.
- the registration information protector 3 reads the registration information of the user computer 1 from the HD 26 and the registration information resides on the OS. To reside on the OS, the registration information may have an implementation form in order to be available immediately after the OS starting. Otherwise, the registration information may be implemented a as part of the OS.
- STEP S 34 The user computer 1 executes various kinds of processes according to the direction of the user.
- STEP S 35 When the registration information protector 3 receives a direction for ending the OS, the registration information protector 3 unloads the registration information and overwrites the unloaded registration information onto the registration information recorded on the HD 26
- STEP S 36 The registration information updating unit 4 searches the HD 26 for temporary registration information.
- STEP 37 If the temporary registration information exists, STEP S 38 follows. If the temporary registration information does not exist, STEP S 39 follows.
- STEP S 38 The registration information on the HD 26 is deleted and the resident registration information is recorded on the HD 26 .
- the registration information management portion 2 , the software executing portion 5 and the installation portion 8 may be incorporated in the OS. In this case, it will be more difficult to find the way of unlocking restriction on the software product and to analyze registration information.
- STEP 39 The OS ends and the user computer 1 stops.
- the registration information of the unauthorized one does't include the software information and the coefficient code corresponding to the software product. As a result, the unauthorized computer cannot execute the software product.
- the copied registration information is incompatible with actually installed software products in the unauthorized computer. As a result, the unauthorized computer cannot execute the other software products.
- a user might acquire name of software product, timestamp and coefficient code corresponding to a target software product by analyzing the registration information of an authorized computer. And then, the user might add the name of software product, the timestamp and the coefficient code to the registration information of an unauthorized computer
- the user has to know the coefficient code which is related to the coefficient code of the target software product.
- the user has to falsify the related coefficient code Though it is hardly able to discover the relationship between coefficient codes.
- the user might discover the related coefficient code corresponding to another software product.
- the software product will be called a second target software product below.
- the user has to falsify the coefficient code related with that of the second target software product. Or else, the user cannot execute the second target software product.
- this invention is effective in preventing falsification of coefficient code, and consequently, unauthorized usage of software product.
- this invention is more effective because the module is unavailable and OS hardly works when registration information has been falsified. Consequently, a user who copies a software product to an unauthorized computer cannot execute the software product on the computer so that this invention prevents unauthorized usage of software product.
- a coefficient code of a new software product that Is to be installed to a user computer is related with that of other software product that has already installed to the user computer in order to generate the coefficient code of the new software product.
- the kinds of software products installed to computers are different from each other. Thus, one coefficient code generated for one computer is unavailable for installing the software product to the other computer.
- a coefficient code for a software product is recorded as registration information of the software product.
- the software product When the software product is executed, the software has to refer to the registration information. Consequently, a computer which is to execute a software product reliably judges whether the computer is authorized or not and stops executing the software product when the software product is unauthorized for the computer.
- a coefficient code of a software product is related with timestamp, which designates the time when the software product is installed, and singular/plural other coefficient codes.
- a software product whose registration information has been falsified becomes inoperable.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Storage Device Security (AREA)
Abstract
Description
Claims (11)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11-102368 | 1999-04-09 | ||
JP10236899A JP3444227B2 (en) | 1999-04-09 | 1999-04-09 | How to prevent unauthorized use of software |
Publications (1)
Publication Number | Publication Date |
---|---|
US6735768B1 true US6735768B1 (en) | 2004-05-11 |
Family
ID=14325525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/545,567 Expired - Fee Related US6735768B1 (en) | 1999-04-09 | 2000-04-07 | Method and system for installing a software product to a computer with authorization |
Country Status (2)
Country | Link |
---|---|
US (1) | US6735768B1 (en) |
JP (1) | JP3444227B2 (en) |
Cited By (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020053070A1 (en) * | 2000-10-27 | 2002-05-02 | Kabushiki Kaisha Toshiba | Application development system and method |
US20030037323A1 (en) * | 2001-08-18 | 2003-02-20 | Lg Electronics Inc. | Method for upgrading data |
US20040088279A1 (en) * | 2001-03-09 | 2004-05-06 | Clemens Atzmueller | Method for the remote control programming of machine controllers and machine controller for carrying out said method |
US20040088209A1 (en) * | 2002-10-30 | 2004-05-06 | Tatu Pitkanen | E-business method for selling or leasing out capacity upgrades for a process plant or machine |
US20040128374A1 (en) * | 2002-12-30 | 2004-07-01 | Hodges Donna K. | Systems and methods for the detection and management of network assets |
US20040148379A1 (en) * | 2002-09-24 | 2004-07-29 | Masaaki Ogura | Remote management system, intermediary apparatus therefor, and method of updating software in the intermediary apparatus |
US20040255292A1 (en) * | 2003-06-16 | 2004-12-16 | Microsoft Corporation | Delivering multiple installation images and computer-readable installation keys on installation media |
US20040267783A1 (en) * | 2003-03-31 | 2004-12-30 | Naoki Naruse | Information processing device and program |
US20050044401A1 (en) * | 2002-09-13 | 2005-02-24 | James Morrow | Rollback attack prevention system and method |
US20050083741A1 (en) * | 2003-04-11 | 2005-04-21 | Chang William H. | Autorun for integrated circuit memory component |
US20050172283A1 (en) * | 1998-09-21 | 2005-08-04 | Microsoft Corporation | Software installation and validation using custom actions |
US7181739B1 (en) * | 2003-03-14 | 2007-02-20 | Novell, Inc. | Installation relationship database |
US20080133972A1 (en) * | 2006-12-01 | 2008-06-05 | Microsoft Corporation | System Analysis and Management |
US20090031430A1 (en) * | 2005-05-10 | 2009-01-29 | Ward Scott Macdonald | Software activation control method |
US7516104B1 (en) | 2005-09-29 | 2009-04-07 | Qurio Holdings, Inc. | Methods of providing software over a network and related systems and computer program products |
US20110055904A1 (en) * | 2008-01-22 | 2011-03-03 | Hitachi Software Engineering Co., Ltd | License authentication system and authentication method |
US7908401B2 (en) | 2002-12-12 | 2011-03-15 | Flexiworld Technology, Inc. | Method and device for wireless communication between computing devices |
US20110191768A1 (en) * | 2010-02-03 | 2011-08-04 | Xobni Corporation | Systems and Methods to Identify Users Using an Automated Learning Process |
US8458098B1 (en) * | 2005-09-29 | 2013-06-04 | Qurio Holdings, Inc. | Methods of tracking remote software installations and registrations and related systems and computer program products |
US8776043B1 (en) | 2011-09-29 | 2014-07-08 | Amazon Technologies, Inc. | Service image notifications |
US9258371B1 (en) | 2012-03-23 | 2016-02-09 | Amazon Technologies, Inc. | Managing interaction with hosted services |
US9397987B1 (en) | 2012-03-23 | 2016-07-19 | Amazon Technologies, Inc. | Managing interaction with hosted services |
US9405524B1 (en) * | 2014-04-30 | 2016-08-02 | Allscripts Software, Llc | Software verification system and methods |
US9530156B2 (en) | 2011-09-29 | 2016-12-27 | Amazon Technologies, Inc. | Customizable uniform control user interface for hosted service images |
US9553787B1 (en) | 2013-04-29 | 2017-01-24 | Amazon Technologies, Inc. | Monitoring hosted service usage |
US9626700B1 (en) | 2011-09-29 | 2017-04-18 | Amazon Technologies, Inc. | Aggregation of operational data for merchandizing of network accessible services |
US9679279B1 (en) | 2012-02-27 | 2017-06-13 | Amazon Technologies Inc | Managing transfer of hosted service licenses |
US10147123B2 (en) | 2011-09-29 | 2018-12-04 | Amazon Technologies, Inc. | Electronic marketplace for hosted service images |
CN111224929A (en) * | 2018-11-27 | 2020-06-02 | 广达电脑股份有限公司 | Software connection management system and method |
US11467856B2 (en) | 2002-12-12 | 2022-10-11 | Flexiworld Technologies, Inc. | Portable USB device for internet access service |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7608219B2 (en) | 2021-03-10 | 2025-01-06 | 株式会社デンソーテン | Verification device and verification method |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0884139A (en) | 1994-09-09 | 1996-03-26 | Fujitsu Ltd | Decompression system for encryption software |
JPH10198569A (en) | 1997-01-14 | 1998-07-31 | Ricoh Co Ltd | Method for installing software and software installing recording medium |
US5923885A (en) * | 1996-10-31 | 1999-07-13 | Sun Microsystems, Inc. | Acquisition and operation of remotely loaded software using applet modification of browser software |
US5926631A (en) * | 1997-08-15 | 1999-07-20 | International Business Machines Corporation | Network computer emulator systems, methods and computer program products for personal computers |
US6044154A (en) * | 1994-10-31 | 2000-03-28 | Communications Devices, Inc. | Remote generated, device identifier key for use with a dual-key reflexive encryption security system |
US6092189A (en) * | 1998-04-30 | 2000-07-18 | Compaq Computer Corporation | Channel configuration program server architecture |
US6117188A (en) * | 1998-04-27 | 2000-09-12 | Cognet Corporation | System and method using token processing to control software distribution and desktop management in a computer network environment |
US6272536B1 (en) * | 1996-07-24 | 2001-08-07 | Marimba, Inc. | System and method for the distribution of code and data |
-
1999
- 1999-04-09 JP JP10236899A patent/JP3444227B2/en not_active Expired - Fee Related
-
2000
- 2000-04-07 US US09/545,567 patent/US6735768B1/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0884139A (en) | 1994-09-09 | 1996-03-26 | Fujitsu Ltd | Decompression system for encryption software |
US6044154A (en) * | 1994-10-31 | 2000-03-28 | Communications Devices, Inc. | Remote generated, device identifier key for use with a dual-key reflexive encryption security system |
US6272536B1 (en) * | 1996-07-24 | 2001-08-07 | Marimba, Inc. | System and method for the distribution of code and data |
US5923885A (en) * | 1996-10-31 | 1999-07-13 | Sun Microsystems, Inc. | Acquisition and operation of remotely loaded software using applet modification of browser software |
JPH10198569A (en) | 1997-01-14 | 1998-07-31 | Ricoh Co Ltd | Method for installing software and software installing recording medium |
US5926631A (en) * | 1997-08-15 | 1999-07-20 | International Business Machines Corporation | Network computer emulator systems, methods and computer program products for personal computers |
US6117188A (en) * | 1998-04-27 | 2000-09-12 | Cognet Corporation | System and method using token processing to control software distribution and desktop management in a computer network environment |
US6092189A (en) * | 1998-04-30 | 2000-07-18 | Compaq Computer Corporation | Channel configuration program server architecture |
Non-Patent Citations (3)
Title |
---|
Foster et al. The Installtion of Large-Scale EM Programs on Desktops. IEEE. 10/1-10/5.* * |
Rebello. How to Distribute Your Software Over the Web. IEEE. 1999. pp. 79-81. * |
Sommerville et al. Configuration Language Support for Software Installation. IEEE. 1994. p. 209.* * |
Cited By (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7047529B2 (en) | 1998-09-21 | 2006-05-16 | Microsoft Corporation | Software installation and validation using custom actions |
US20050172283A1 (en) * | 1998-09-21 | 2005-08-04 | Microsoft Corporation | Software installation and validation using custom actions |
US20020053070A1 (en) * | 2000-10-27 | 2002-05-02 | Kabushiki Kaisha Toshiba | Application development system and method |
US7127702B2 (en) * | 2000-10-27 | 2006-10-24 | Kabushiki Kaisha Toshiba | Application development system and method |
US10359957B2 (en) | 2000-11-01 | 2019-07-23 | Flexiworld Technologies, Inc. | Integrated circuit device that includes a secure element and a wireless component for transmitting protected data over short range wireless point-to-point communications |
US7818717B2 (en) * | 2001-03-09 | 2010-10-19 | Rexroth Indramat Gmbh | Method for the remote control programming of machine controllers and machine controller for carrying out said method |
US20040088279A1 (en) * | 2001-03-09 | 2004-05-06 | Clemens Atzmueller | Method for the remote control programming of machine controllers and machine controller for carrying out said method |
US20030037323A1 (en) * | 2001-08-18 | 2003-02-20 | Lg Electronics Inc. | Method for upgrading data |
US7222338B2 (en) * | 2001-08-18 | 2007-05-22 | Lg-Nortel, Co., Ltd. | Method for upgrading data |
US7907729B2 (en) * | 2002-09-13 | 2011-03-15 | Bally Gaming, Inc. | Rollback attack prevention system and method |
US20050044401A1 (en) * | 2002-09-13 | 2005-02-24 | James Morrow | Rollback attack prevention system and method |
US8165294B2 (en) | 2002-09-13 | 2012-04-24 | Bally Gaming, Inc. | Rollback attack prevention system and method |
US20110123024A1 (en) * | 2002-09-13 | 2011-05-26 | Bally Gaming, Inc. | Rollback attack prevention system and method |
US20040148379A1 (en) * | 2002-09-24 | 2004-07-29 | Masaaki Ogura | Remote management system, intermediary apparatus therefor, and method of updating software in the intermediary apparatus |
US7516450B2 (en) * | 2002-09-24 | 2009-04-07 | Ricoh Company, Ltd. | Remote management system, intermediary apparatus therefor, and method of updating software in the intermediary apparatus |
US20040088209A1 (en) * | 2002-10-30 | 2004-05-06 | Tatu Pitkanen | E-business method for selling or leasing out capacity upgrades for a process plant or machine |
US11662918B2 (en) | 2002-12-12 | 2023-05-30 | Flexiworld Technologies, Inc. | Wireless communication between an integrated circuit memory device and a wireless controller device |
US9043482B2 (en) | 2002-12-12 | 2015-05-26 | Flexiworld Technologies, Inc. | Portable communication device for providing phone calling service |
US8972610B2 (en) | 2002-12-12 | 2015-03-03 | Flexiworld Technologies, Inc. | Portable communication USB device for providing mobile internet access service or for providing other communication services |
US9116723B2 (en) | 2002-12-12 | 2015-08-25 | Flexiworld Technologies, Inc. | Communication device or media device for providing phone calling service, internet access service, or digital content service |
US8595717B2 (en) | 2002-12-12 | 2013-11-26 | Flexiworld Technologies, Inc. | Memory controller that includes support for autorun of software or data |
US8533352B2 (en) | 2002-12-12 | 2013-09-10 | Flexiworld Technologies, Inc. | Method for internet access and for communication |
US10963169B2 (en) | 2002-12-12 | 2021-03-30 | Flexiworld Technologies, Inc. | Integrated circuit device storing protected data for wireless transmitting, over short range wireless communication, the protected data to a wireless computing device |
US8296757B2 (en) | 2002-12-12 | 2012-10-23 | Flexiworld Technologies, Inc. | Copy protection of software and/or data |
US11467856B2 (en) | 2002-12-12 | 2022-10-11 | Flexiworld Technologies, Inc. | Portable USB device for internet access service |
US7908401B2 (en) | 2002-12-12 | 2011-03-15 | Flexiworld Technology, Inc. | Method and device for wireless communication between computing devices |
US11829776B2 (en) | 2002-12-12 | 2023-11-28 | Flexiworld Technologies, Inc. | Integrated circuit device that includes a protected memory component for transmitting protected data over a communication interface |
US7243147B2 (en) * | 2002-12-30 | 2007-07-10 | Bellsouth Ip Corporation | Systems and methods for the detection and management of network assets |
US20040128374A1 (en) * | 2002-12-30 | 2004-07-01 | Hodges Donna K. | Systems and methods for the detection and management of network assets |
US7181739B1 (en) * | 2003-03-14 | 2007-02-20 | Novell, Inc. | Installation relationship database |
US20040267783A1 (en) * | 2003-03-31 | 2004-12-30 | Naoki Naruse | Information processing device and program |
US7899973B2 (en) | 2003-03-31 | 2011-03-01 | Ntt Docomo, Inc. | Information processing device and program |
US7805720B2 (en) * | 2003-04-11 | 2010-09-28 | Flexiworld Technologies, Inc. | Autorun for integrated circuit memory component |
US20050083741A1 (en) * | 2003-04-11 | 2005-04-21 | Chang William H. | Autorun for integrated circuit memory component |
US20040255292A1 (en) * | 2003-06-16 | 2004-12-16 | Microsoft Corporation | Delivering multiple installation images and computer-readable installation keys on installation media |
US20090031430A1 (en) * | 2005-05-10 | 2009-01-29 | Ward Scott Macdonald | Software activation control method |
US7516104B1 (en) | 2005-09-29 | 2009-04-07 | Qurio Holdings, Inc. | Methods of providing software over a network and related systems and computer program products |
US8458098B1 (en) * | 2005-09-29 | 2013-06-04 | Qurio Holdings, Inc. | Methods of tracking remote software installations and registrations and related systems and computer program products |
US7698305B2 (en) * | 2006-12-01 | 2010-04-13 | Microsoft Corporation | Program modification and loading times in computing devices |
US20080133972A1 (en) * | 2006-12-01 | 2008-06-05 | Microsoft Corporation | System Analysis and Management |
US8613050B2 (en) | 2008-01-22 | 2013-12-17 | Hitachi Software Engineering Co., Ltd. | License authentication system and authentication method |
US20110055904A1 (en) * | 2008-01-22 | 2011-03-03 | Hitachi Software Engineering Co., Ltd | License authentication system and authentication method |
US20110191768A1 (en) * | 2010-02-03 | 2011-08-04 | Xobni Corporation | Systems and Methods to Identify Users Using an Automated Learning Process |
US8924956B2 (en) * | 2010-02-03 | 2014-12-30 | Yahoo! Inc. | Systems and methods to identify users using an automated learning process |
US8776043B1 (en) | 2011-09-29 | 2014-07-08 | Amazon Technologies, Inc. | Service image notifications |
US10817929B1 (en) | 2011-09-29 | 2020-10-27 | Amazon Technologies, Inc. | Customizable uniform control user interface for hosted service images |
US9667515B1 (en) | 2011-09-29 | 2017-05-30 | Amazon Technologies, Inc. | Service image notifications |
US10970758B2 (en) | 2011-09-29 | 2021-04-06 | Amazon Technologies, Inc. | Electronic marketplace for hosted service images |
US10147123B2 (en) | 2011-09-29 | 2018-12-04 | Amazon Technologies, Inc. | Electronic marketplace for hosted service images |
US9530156B2 (en) | 2011-09-29 | 2016-12-27 | Amazon Technologies, Inc. | Customizable uniform control user interface for hosted service images |
US10861081B2 (en) | 2011-09-29 | 2020-12-08 | Amazon Technologies, Inc. | Aggregation of operational data for merchandizing of network accessible services |
US9626700B1 (en) | 2011-09-29 | 2017-04-18 | Amazon Technologies, Inc. | Aggregation of operational data for merchandizing of network accessible services |
US9679279B1 (en) | 2012-02-27 | 2017-06-13 | Amazon Technologies Inc | Managing transfer of hosted service licenses |
US9397987B1 (en) | 2012-03-23 | 2016-07-19 | Amazon Technologies, Inc. | Managing interaction with hosted services |
US9258371B1 (en) | 2012-03-23 | 2016-02-09 | Amazon Technologies, Inc. | Managing interaction with hosted services |
US9553787B1 (en) | 2013-04-29 | 2017-01-24 | Amazon Technologies, Inc. | Monitoring hosted service usage |
US9405524B1 (en) * | 2014-04-30 | 2016-08-02 | Allscripts Software, Llc | Software verification system and methods |
CN111224929A (en) * | 2018-11-27 | 2020-06-02 | 广达电脑股份有限公司 | Software connection management system and method |
CN111224929B (en) * | 2018-11-27 | 2022-01-07 | 广达电脑股份有限公司 | Software connection management system and method |
Also Published As
Publication number | Publication date |
---|---|
JP2000293368A (en) | 2000-10-20 |
JP3444227B2 (en) | 2003-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6735768B1 (en) | Method and system for installing a software product to a computer with authorization | |
EP1084549B1 (en) | Method of controlling usage of software components | |
US5103476A (en) | Secure system for activating personal computer software at remote locations | |
US6857067B2 (en) | System and method for preventing unauthorized access to electronic data | |
US6449720B1 (en) | Public cryptographic control unit and system therefor | |
US20080005029A1 (en) | Image forming apparatus, license management method, and license management program product | |
US20140325683A1 (en) | Licensing verification for application use | |
EP1076279A1 (en) | Computer platforms and their methods of operation | |
GB2378780A (en) | An arrangement for preventing the re-use of tokens in accessing pay-per-use software | |
JPH08504976A (en) | Software registration system | |
EP0355132A1 (en) | Computer program license management system | |
JPH06324858A (en) | Storage medium having software usage management method and software usage management function | |
EP0266748A2 (en) | A software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor | |
US20040003265A1 (en) | Secure method for BIOS flash data update | |
US6742129B1 (en) | Software security mechanism | |
EP1950680A1 (en) | Communication terminal device, server terminal device, and communication system using the same | |
US20060064762A1 (en) | System and method for managing expiration date for use of contents in removable media | |
US7334265B1 (en) | System and program for preventing unauthorized copying of software | |
US20040255136A1 (en) | Method and device for protecting information against unauthorised use | |
US20090271875A1 (en) | Upgrade Module, Application Program, Server, and Upgrade Module Distribution System | |
CN118364437A (en) | Software copyright control method and system based on machine fingerprint technology | |
JP2004086588A (en) | Software malpractice preventing system | |
WO1998053384A1 (en) | Method and apparatus for activating programs/features in a computer | |
JPH05120149A (en) | Copy preventing system for executing form file | |
JP3698693B2 (en) | Access control apparatus and computer program thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: NEC CORPORATION, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TANAKA, MITSUMASA;REEL/FRAME:010946/0745 Effective date: 20000406 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: CRESCENT MOON, LLC, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NEC CORPORATION;REEL/FRAME:022960/0466 Effective date: 20090616 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: RPX CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:OAR ISLAND LLC;REEL/FRAME:028146/0023 Effective date: 20120420 |
|
REMI | Maintenance fee reminder mailed | ||
LAPS | Lapse for failure to pay maintenance fees | ||
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20160511 |