WO2004053666A1 - ソフトウェア実行制御システム及びソフトウェアの実行制御プログラム - Google Patents
ソフトウェア実行制御システム及びソフトウェアの実行制御プログラム Download PDFInfo
- Publication number
- WO2004053666A1 WO2004053666A1 PCT/JP2003/015779 JP0315779W WO2004053666A1 WO 2004053666 A1 WO2004053666 A1 WO 2004053666A1 JP 0315779 W JP0315779 W JP 0315779W WO 2004053666 A1 WO2004053666 A1 WO 2004053666A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- software
- execution control
- user
- program
- computer
- Prior art date
Links
- 230000004913 activation Effects 0.000 claims description 54
- 238000012544 monitoring process Methods 0.000 claims description 50
- 238000004891 communication Methods 0.000 claims description 46
- 238000000034 method Methods 0.000 claims description 40
- 238000012790 confirmation Methods 0.000 claims description 15
- 230000005540 biological transmission Effects 0.000 claims description 9
- 230000000737 periodic effect Effects 0.000 claims description 9
- 230000003213 activating effect Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 6
- 230000001788 irregular Effects 0.000 claims 2
- 230000003466 anti-cipated effect Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 34
- 238000012545 processing Methods 0.000 description 22
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000009434 installation Methods 0.000 description 4
- 230000008260 defense mechanism Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000006386 neutralization reaction Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000001012 protector Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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
- the present invention provides, for example, a software execution control system and a software for controlling the execution of various application software such as game software, practical software for creating documents and graphics, etc. It relates to an execution control program.
- application software such as game software running on a user computer such as a personal computer or a portable information terminal is, for example, ⁇ S (Operating System), language used, hardware configuration, etc.
- ⁇ S Operating System
- Multiple types of versions may be prepared depending on the software execution environment, or depending on the price of the software or payment.
- a technology is known in which a product ID printed on a software package or a recording medium is input to determine whether the product is a genuine purchase product (for example, Japanese Patent Laid-Open 2 0 0 2 _ 2 5 8 9 6 3 (see paragraph 0 0 0 3).
- request key data for using the software from the license management server installed on the intranet and if it is recognized as a valid user by user authentication, obtain key data from the license management server, It is also known that the software is activated by using this key data (for example, Japanese Patent Laid-Open No. 2 0 0-6 9 7 2 and Japanese Patent Laid-Open No. 2 0 0 2-2). 9 7 2 5 4).
- the conventional technology that determines whether or not an authorized user is entered by entering a product ID (product key) is a defense mechanism that simply inputs an ID consisting of characters and symbols at the time of installation, and can be easily avoided. . Therefore, software with only this type of defense mechanism (copyright protection mechanism) cannot effectively exclude illegal copying and unauthorized use.
- the technology that performs user authentication with the license management server and sends the key data to the user computer when it is successfully authenticated is simply a product ID. Compared to a technology that only inputs, the defense is improved. However, the software is already in a startable state on the user computer and is waiting for key data acquisition. Therefore, if software that is waiting for key data is illegally copied and key data is obtained by another method, the defense mechanism can be bypassed and used.
- the user computer plays back software while receiving software from the server. Data that is no longer needed after playback has ended is immediately discarded. Therefore, in the streaming method, data is not left when the user's browsing is completed, and software cannot be illegally copied unless special software is used.
- the software desired by the user is downloaded from the server to the user computer, stored, and executed on the user computer. It can respond to the distribution request from the user.
- the download method since the software remains stored in the user computer, illegal copying can be performed more easily than the streaming method.
- CD-ROM compact disc-ROM
- DVD-ROM hard disk
- semiconductor memory etc.
- game programs etc. on various recording media for distribution. Even in this case, as described above, the game program or the like is illegally copied or the protection mechanism is illegally broken, and is illegally used.
- an object of the present invention is to provide a software execution control system and a software execution control program capable of suppressing unauthorized use of software.
- One object of the present invention is to provide a software execution control system and software execution control program capable of preventing illegal copying and unauthorized use in the case of a download method in which software is stored and executed on a user computer. There is to do.
- One object of the present invention is to provide a software execution control system and a software execution control program capable of preventing unauthorized use during software execution.
- One object of the present invention is to provide a software execution control system and a software execution control program capable of dynamically controlling the monitoring efficiency against unauthorized use while considering the load state and the like. .
- the software execution control system updates the first software installed in the user computer to the second software, and includes a distribution unit and an authentication unit, which will be described later.
- An execution control program that performs various operations is adopted.
- the distribution unit includes the encoded second software and the second software.
- An execution control program for controlling execution is distributed to a user computer via a communication network.
- the authentication unit performs user authentication in response to a request from the execution control program installed on the user computer, and if it is confirmed that the user is a valid user, it is necessary to decode and start the second software.
- the predetermined information is transmitted to the execution control program via the communication network.
- the second software is configured so that it can be activated only with the activation information passed from the execution control program.
- the execution control program is (1) the first software encoded based on the predetermined information received from the authentication unit.
- the software of 2 is decoded and replaced with the first software.
- the startup information is generated based on predetermined information to start the second software.
- the second software When execution is completed, the second software is configured to be disabled.
- the first software and the second software are the same type of software but different versions.
- the first software can be called the old software, and the second software can be called the new software.
- various application software such as games, movies, entertainment programs, educational programs, educational programs, document creation, figure creation, image editing, etc. can be employed.
- the first software and the second software differ depending on, for example, the language used, the executable environment (corresponding OS, etc.), and whether or not there are functional restrictions.
- Examples of the user computer include a workstation, a personal computer, a portable information terminal, and a mobile phone.
- the first software installed on the user computer can be used freely by the user without performing the authentication process described later.
- the first software is, for example, from a software vendor site via a communication network such as the Internet, or by package software sold over the counter. Therefore, it is installed on the user computer.
- an execution control program for controlling the execution of the second software and the second software is transmitted from the distribution unit to the user computer.
- the execution control program is executed on the user computer.
- the execution control program requests user authentication from the authentication unit via the communication network.
- a user authentication method for example, a user ID, a password, and information specific to a user computer (for example, a MAC address (Media Access Control address), etc.) are collated with pre-registered data. Can do.
- the present invention is not limited to this, and authentication may be performed using biometric information unique to the user such as a fingerprint or a voiceprint.
- predetermined information is transmitted from the authentication unit to the execution control program of the user computer.
- This predetermined information includes data necessary for decoding the second software sent to the user computer in the encoded state and starting the decoded second software. Yes.
- the second software is configured to be able to start only with the start information passed from the execution control program.
- the execution control program acts as dedicated “launcher software” that activates the second software.
- the execution control program performs the following processing.
- the execution control program decodes the second software based on the predetermined information received from the authentication unit (using the decode key included in the predetermined information).
- the decoded second software is replaced with the first software.
- the execution control program uses the startup information (using the startup argument included in the predetermined information) based on the predetermined information received from the authentication unit (the second argument decoded with the startup argument). Generate a startup statement consisting of a software registry path) Therefore, the second software is started. As a result, the user can use the second software on the user computer.
- the execution control program monitors the execution status of the second software even after the second software is started. When the execution end of the second software is detected, the execution control program disables the second software. Let This prevents the user from using the second software.
- the second software may be downloaded again by making the user computer access the distribution unit again. It is not necessary to download the entire second software again, and if only the program part is downloaded again, the communication time can be shortened and the traffic can be reduced.
- the predetermined information transmitted from the authentication unit to the user computer is preferably encrypted.
- the execution control program disables the second software.
- Neutralization means that the second software cannot be started or executed.
- Various methods can be adopted as the neutralization method. For example, it can be disabled by deleting the entire decoded second software. It can also be disabled by deleting a part of the decoded second software. When only a part is deleted, the second software can be restarted by receiving the deleted part and the startup argument from the authentication unit.
- the second software includes a program and an accompanying data group, the second software can be disabled by deleting only the program.
- the second software can be used again simply by receiving predetermined information from the authentication unit again.
- data group means a data group other than the program used when executing the program, and examples thereof include image data, sound data, music data, and text data.
- the execution control program is configured to be compatible with a plurality of types of second software, and the predetermined information transmitted from the authentication unit to the execution control program includes the second software to be activated. Storage address information, startup arguments, and decode key information for decoding the second software.
- An execution control program that controls real-time online authentication via the communication network and activation and termination of the second software is generated separately from the second software. Therefore, it is possible to deal with many types of second software simply by preparing one type of execution control program.
- the execution control program transmits authentication information including machine information unique to the user computer and encryption key information to the authentication unit, and the authentication unit uses the user information based on at least the machine information.
- the predetermined information is encrypted with the encryption key information and transmitted to the execution control program via the communication network.
- the machine information can be registered multiple times.
- Examples of machine information specific to the user computer include a MAC address.
- configuration information of the user computer for example, the amount of installed memory, CPU specifications, product name of the sound chip or graphic accelerator, etc.
- the authentication unit can register multiple pieces of machine information. As a result, a user who has just purchased a license for the second software can use the same second software using a plurality of user computers, such as a personal computer at home and a personal computer at work. Air can be used.
- the authentication unit when the authentication unit confirms that the user is a legitimate user, the authentication unit transmits the list data of the second software that can be activated by the user to the user computer, and selects the second software selected from the list data. Predetermined information about the software of 2 is sent to the execution control program via the communication network.
- a user may have already purchased multiple types of second software licenses, but after authenticating the user, the authentication unit lists list data that lists the names of second software that can be used by the user. Send to user computer. The user selects the second software that he wishes to launch from the list of available (available) lists. Thus, the authentication unit generates predetermined information for decoding and starting the selected second software, and transmits it to the execution control program.
- the execution control program requests a user authentication to the authentication unit, a function to acquire machine information unique to the user computer, a function to generate encryption key information, and at least machine information and encryption.
- the user selects either one of the function to send the activation key information to the authentication unit or the list of second software that can be started received from the authentication unit.
- the function of notifying the authentication unit of the second software and the storage destination address information, startup argument, and decode key information in the user computer of the selected second software are encrypted with at least the encryption key information.
- the second software includes a program and an accompanying data group, and updates at least one of the program and the accompanying data group.
- the first software installed in the user computer can be executed without being authenticated by the authentication unit until the first software is replaced with the second software.
- the execution control program is configured as a program that cannot be forcibly terminated separately from the second software.
- BIOS Basic Input / Output System
- BIOS Basic Input / Output System
- BIOS basically has only the function of directly transmitting / receiving data to / from hardware, it decrypts encrypted data, monitors the execution of second software, etc. Can not perform advanced control.
- the execution control program as an intermediate program located between the OS and the application program (second software), for example, a device driver, advanced processing can be performed.
- second software for example, a device driver
- the distribution unit and the authentication unit are each on separate computers. It has been realized.
- a distribution unit that distributes the second software and the execution control program is set up for each software company, and the authentication unit that performs the authentication at the time of starting the second software includes each country, each region, and each software company. It can be installed for each group.
- the present invention can also be understood as a program invention.
- it is an execution control program that updates the first software installed in the user computer to the second software and controls the execution of the second software, via an external authentication unit and a communication network.
- Function, the fifth function to start the second software based on the generated startup information, and the execution status of the second software. If the execution of the second software is completed, a second soft ware neutralize the sixth feature and the software Touea execution control program to be implemented on a user computer to.
- the present invention can also be grasped as a software update method.
- a step for notifying the user that the first usable software installed on the user computer can be updated to the second software, and a distribution for distributing the second software.
- Connecting a user computer to the computer via a communication network and requesting an update to the second software; the second software encoded from the distribution computer to the user computer; and the second software A step of transmitting an execution control program for controlling the execution of the software of 2 through a communication network;
- a user computer and an authentication computer are connected via a communication network by an execution control program started on a computer, and the authentication computer requests user authentication.
- the second software is decoded based on the predetermined information transmitted from the authentication computer to the user computer, and the second information is received based on the predetermined information received from the authentication computer.
- the management computer controls the operation of the execution control program by communicating with the execution control program installed in the user computer together with the application software and the monitoring program.
- the management computer authenticates the user based on a request from the execution control program, and the execution control program starts the application software when the authentication unit confirms that the user is a valid user.
- Permission to continue execution of application software based on continuous confirmation communication performed between the information transmission unit for transmitting the first information necessary for the execution to the execution control program and the execution control program at a predetermined time And a continuous execution management unit for managing whether or not.
- the continuous execution management unit compares the first identification information acquired from the execution control program by the continuous confirmation communication with the second identification information associated in advance with the user authentication, and both If the identification information corresponds, the execution control program is allowed to continue execution of the application software. If the identification information does not correspond, the application software is executed for the execution control program. Continuation of execution of the key is prohibited.
- the continuous execution management unit causes the execution control program to set first identification information corresponding to the second identification information in advance.
- the continuous execution management unit sets a predetermined time in the execution control program in advance, and when the predetermined time arrives, the execution control program sends the continuous execution management unit to the continuous execution management unit. Continuation confirmation communication.
- the continuous execution management unit can variably set the predetermined time.
- the continuous execution management unit can variably set the predetermined time in consideration of at least a predicted future load state.
- the monitoring program monitors the operation states of the application software and the execution control program, respectively, and when either the application software or the execution control program stops operating, the application software
- the execution control program monitors the operating status of the application software and the monitoring program, and either the application software or the monitoring program stops operating. In such a case, the application software and the monitoring program are stopped, and they are also stopped.
- a computer program causes a computer to function as an execution control unit that controls execution of application software, and a monitoring unit that monitors the operating states of the application software and the execution control unit, respectively.
- the execution control unit communicates with the management computer to request user authentication, starts the application software based on the first information received from the management computer, Comb for
- the monitoring unit is equipped with a function for performing continuous confirmation communication with the data and a function for stopping the operation of the application software when continuous execution of the application software is prohibited by the continuous confirmation communication.
- the application software or the execution control unit stops monitoring the operation status of the application software and the execution control unit the application software and the execution control unit are stopped. And a function to stop.
- FIG. 1 is an explanatory diagram showing an overall outline of a software execution control system according to an embodiment of the present invention.
- Figure 2 shows the structure of the database, etc.
- (a) is the user information database
- (b) is the game information database
- (c) is the embedded activation information embedded in the HTML header. Each of them is shown.
- Figure 3 shows the schematic structure of the program, where (a) shows the game program and (b) shows the structure of the execution control program.
- FIG. 4 is an explanatory diagram showing a state in which the old version game program installed in the user computer is updated to the new version game program and the activation is controlled.
- FIG. 5 is a flowchart showing the processing when installing the game program and the execution control program.
- FIG. 6 is a flowchart showing online authentication and the like performed between the execution control program and the authentication computer.
- FIG. 8 shows the structure of the database, etc. (a) shows the user information database, (b) shows the game information database, and (c) shows the monitoring status database.
- Fig. 9 is a flowchart showing an overview of the overall operation of the software execution control system.
- FIG. 10 is a flowchart showing an outline of the process of continuous confirmation communication performed periodically.
- Figure 11 is a flowchart showing an overview of the process for determining when to perform the next continuous confirmation communication.
- Fig. 12 is a flowchart showing an outline of the process that the game manager and the monitoring program monitor each other.
- FIG. 13 is an explanatory diagram showing an overall outline of a software execution control system according to still another embodiment of the present invention.
- FIGS. Fig. 1 is an explanatory diagram showing the overall outline of the software execution control system.
- a system for updating a game program online will be described as an example.
- the distribution computer 10 is for distributing the new version of the game program 40 and the execution control program 50 to the computer 30 of each user via a communication network such as the Internet.
- Distribution computer 1 0 It can be configured as a server installed at each wearer (vendor).
- the distribution computer 10 registers the new version program registered in the game program database 12 in the authentication computer 20 in advance (S 1). For example, data such as the name, type, sales price, data size, and version information of the new version game program are registered from the distribution computer 10 to the authentication computer 20.
- data such as the name, type, sales price, data size, and version information of the new version game program are registered from the distribution computer 10 to the authentication computer 20.
- the distribution computer 10 and the authentication computer are configured in a body, such notification via the external network is not necessarily required.
- the distribution control unit 11 of the distribution computer 10 Upon receiving a program update request from the user computer 30, the distribution control unit 11 of the distribution computer 10 reads the game program 40 desired by the user from the game program database 12, and the user computer 30 (S 2).
- the new version of the game program 40 is not distributed to the user computer 30 alone, but is distributed to the user computer 30 together with the execution control program 50 that manages the activation and deletion of the game program 40. It should be noted that.
- the authentication computer 20 can be configured, for example, as a server installed for each organization or organization to which a plurality of software companies belong. Further, the present invention is not limited to this, and an authentication computer 20 may be installed for each software company.
- Verification computer .2 0 includes an authentication unit 2 1, the accounting unit 2 2, a start information transmission unit 2 3, a user information database 2 4, and a game information database 2 5.
- Authentication unit 2 1, based on a predetermined authentication data transmitted from the execution control program 5 0 of the user computer 3 0, and performs user authentication.
- the authentication data includes, for example, user identification information (user ID), password (PW) and MAC address (Media Access Control address) are included.
- the charge processing unit 22 charges the user when the new version of the game program 40 is licensed.
- Various accounting methods can be used. For example, the user may be charged for the game program in a lump sum (sold out), or charged each time the user uses the game program. Or you may make it charge every predetermined period or every predetermined number of times.
- Various payment methods such as credit payment and electronic money payment can be adopted.
- the activation information transmission unit 23 decodes the new version of the game program 40 stored in the storage device (for example, a hard disk) of the user computer 30 and provides the activation information necessary to activate the user computer 30. This is sent to the execution control program 50.
- the user authenticates with the authentication unit 21 of the computer 20 for authentication via the execution control program 50, and is authenticated as a legitimate user who has paid the purchase price (usage of the right to use) of the game program 40. If it is (S 3), the activation information is transmitted from the activation information transmitter 23 to the execution control program 50 (S 4). When a user who has not paid for the game program 40 has accessed the computer for authentication 20, after the accounting process is performed via the accounting processor 22, the activation information is transmitted to the execution control program 50. Is done.
- the user computer 30 is configured as a computer such as a personal computer, a workstation, a portable information terminal, or a mobile phone.
- the user computer 30 includes computer resources such as an arithmetic processing unit (CPU), a main memory, an auxiliary memory, and an external input / output circuit, as necessary. These resources are appropriately stored in the game program 40 and execution control. Used by program 50.
- a new version of the game sent from the distribution computer 10 to the user computer 30 The program 40 and the execution control program 50 are installed in the user computer 30 by an attached installer as will be described later. Then, when the execution control program 50 performs user authentication with the authentication computer 20 and obtains activation information, the game program 40 is activated (S 5).
- the old game program that was already installed on the user computer 30 before the installation of the 5 program 40 is replaced with the new program, and cannot be used thereafter.
- the user can use the new version of the game program 40 via the user computer 30. Then, when the user finishes the game, the game program 4 0
- the execution control program 50 is disabled by deleting the game program 40 (S 6).
- the user uses the game program 40 again, he / she accesses the authentication computer 20 again to perform user authentication and obtain activation information.
- the new version of the game program 15 40 is stored in the state of the encrypted file before decoding in the storage device of the user computer 30, when reusing the game program 40, this It is only necessary to obtain information (decoding key) for decoding the encrypted file and information for starting from the authentication computer 20. That is, in this embodiment, the new version game program 40 is stored in an encrypted file state on the local disk of the user computer 30 and online authentication is performed with the authentication computer 20 every time 20 games are played. To decode and start the encrypted game program 40. After the game is over, the decoded game program 40 is deleted and disabled.
- FIG. 2 is an explanatory diagram showing an example of the structure of the user information database 24 and the game information database 25 used by the authentication computer 20. It should be noted that the contents of each database 24, 25 shown in Fig. 2 are examples, and all items shown in the figure are provided. There is no need to .
- the user information database 24 shown in FIG. 2 (a) includes, for example, a user ID, a ⁇ password, a plurality of MAC addresses l to n, a game ID l to n for identifying a purchased game program, and other information. It is configured by associating information with each other.
- the reason why a plurality of MAC addresses l to n can be registered is that a single user uses a plurality of different user computers 30 and uses a game program 40. Therefore, the user can use the game program 40 via different information processing terminals such as a computer at work and a computer at home. Examples of other information include the user's name, age, address, number of times the game has been played, and the number of points earned (for example, if points are given according to the game purchase price, number of times played, etc.) be able to.
- the game information database 25 shown in FIG. 2 (b) includes, for example, a game ID, a game name, game information (information indicating a game program registry path), and an encrypted game program 40.
- a decoding key for decoding, an activation argument for activating the decoded game program 40, and other information are associated with each other. Examples of other information include the type of game (role-playing game, fighting game, presence / absence of adult designation, etc.), data size, copyright management information, and the like.
- the game information, decode key, and activation argument are encrypted and embedded in HTML (Hyper Text Markup Language) data and sent to the user computer 30.
- the activation information (game information, decode key, activation argument) is encrypted by the encryption key and MAC address generated on the user computer 30 side, and is embedded in, for example, the header portion of HTML. Therefore, the authentication server 20 is connected to the HTTP from the user computer 30.
- HTTP Hyper Text Transport Protocol
- encrypted startup information is generated, and an HTTP response including this encrypted startup information is returned to the user computer 30.
- FIG. 3 shows a schematic configuration of the game program 40 and the execution control program 50.
- FIG. 1 A first figure.
- the game program 40 includes a program main body 41 and an accompanying data group 42.
- Examples of the accompanying data group 42 include moving image data, still image data, graphics data, music data, audio data, text data, and the like.
- the new version of the game program 40 has a new one or both of the program 41 and the accompanying data group 42 as compared to the old version of the program. If both the program body 4 1 and the associated data group 4 2 are newer than the previous version, both the program body 4 1 and the associated data group 4 2 are replaced with the new version. If only the accompanying data group 4 2 is new or if only the program body 4 1 is new, the accompanying data group
- the execution control program 50 is executed on the user computer 30 by the encryption information generation unit 51, the authentication request unit 52, the game selection unit 53, and the decryption.
- the functions of unit 5 4, start-up unit 5 5, decode unit 5 6, and execution monitoring unit 5 7 are realized.
- the execution control program 50 does not identify the device.
- the execution control program 50 can be configured not to be terminated by a task management program or the like, unlike an application program such as a game program.
- the encryption information generation unit 51 generates an encryption key based on time information obtained from a built-in timer of the user computer 30, as well as the user computer 30. Get MAC address, etc.
- the authentication request unit 52 calls the network access function implemented in the user computer 30 internally to access the authentication computer 20 and obtains the encryption key, MAC address, user ID, and password. Sent to authentication computer 20 for user authentication.
- the game selection unit 53 selects a game desired by the user from the list menu transmitted from the authentication computer 20 to the user computer 30 after the user authentication is completed.
- This list menu displays a list of game programs that can be used (runnable) by the user in a list format, and can be generated based on the purchased game ID in the user information database 24.
- the activation information for activating the game program 40 selected by the user is encrypted and transmitted to the user computer 30 by the encryption key and MAC address generated by the encryption information generation unit 51.
- the decryption unit 54 decrypts the encrypted activation information based on the encryption key and the MAC address.
- the decoding unit 56 decodes the encrypted game program 40 using the decoded decoding key.
- the encrypted file is saved as it is.
- the activation unit 55 generates an activation statement based on the decrypted game information and the activation argument, and activates the decoded game program 40.
- the startup statement consists of a game program registry path and startup arguments.
- Figure 4 shows how the game program is updated to the latest version using this system. It is explanatory drawing which shows this typically.
- the old version of the game program is already installed in the user computer 30.
- the old version of the game program before the upgrade is displayed as “Initial Program” and the new version of the game program to be upgraded as “Update Program”.
- the user installs the old version game program 4 O A fixed on a recording medium such as a CD-ROM, DVD-ROM, or memory into the user computer 30 and uses it for ij (S l l).
- the old version of the game program 4 O A can be obtained via a communication network such as the Internet.
- This old version of the game product 10 O 4 O A can be used without receiving online authentication with the authentication computer 20.
- this update system even if the updated program becomes obsolete, it cannot be used without online authentication.
- the first method is, for example, notifying the user that the old version of the game program 40 A can be actively or passively updated to the new version of the game program 40, and also distributing the computer 10.
- URL Uniform Resource Locator
- the second method is to notify the user of the fact that it can be updated to the new version of the game program 40 actively or passively through electronic media and the URL of the distribution computer 10. is there.
- an e-mail addressed to a user can be cited as an active notification.
- a new version of the game program 40 can be advertised on a website (for example, a distribution computer 10).
- advertisements on paper media such as game magazines and computer magazines, and advertisements for communities such as game program clubs formed on the network can be used.
- the user can be notified of the existence of the new version game program 40.
- the user who wishes to update accesses the distribution computer 10 via the web browser 31 and requests an update to the new game program 40 (S 12). .
- the distribution computer 10 directs the user's desired new version of the game program 40 (including the accompanying data group) to the user computer 30 via the communication network. (S 1 3).
- the execution control program 50 is set together with the new version of the game program 40 and transmitted to the user computer 30 (S 1 3).
- the new version of the game program 40 and the execution control program 50 are stored in the storage device of the user computer 30.
- the new version of the game program 40 and the execution control program 50 are provided with a dedicated installer.
- a new version of the game program 40 and the execution control program 50 are installed on the user computer 30 by the installer.
- the execution control program 50 calls the network access function and stores it in the authentication computer 20 as shown in FIG. 4 (d).
- user authentication and purchase processing (billing processing) are performed with the authentication computer 20 (S 14). After completing user authentication and billing processing,
- the execution control program 50 decodes the encrypted startup information and extracts the decode key, startup argument, and the like. Then, the execution control program 50 decodes and activates the game program 40. This allows the user to use the new version of the game program 40. The execution state of the game program 40 is monitored by the execution control program 50.
- the new version of the game program 40 that has been decoded and can be executed (can be started by entering a startup statement) is deleted, and the pre-decode obtained from the distribution computer 10 is deleted.
- the encrypted file can be stored in the storage device of the user computer 30.
- the game program 40 when the game program 40 is played again, it is convenient to re-acquire only the activation information of the game program 40.
- the present invention is not limited to this. Get the program again from the distribution computer 10 You may make it do. It is also possible to delete only the decoded program body 41 and leave the accompanying data group 42 as it is.
- FIGS. The flowchart shown in the figure shows the general flow of processing, and is different from the actual program.
- FIG. 5 shows processing for installing a new version of the game program 40 and the execution control program 50 stored in the storage device of the user computer 30.
- the game program 40 and the execution control program 50 are stored in the user computer 30 in an encrypted file state.
- the installer is activated (S 21).
- the installer determines whether or not the previous version of the game program 4 O A to be updated to the user computer 30 has been installed (S 2 2). Old version game program 4 If OA is not installed, for example, “Old version game is not installed. Processing will be terminated.” Will be displayed on the screen and the process will end. (S2 3).
- S 24 determines whether or not the user registration and accounting process has already been completed.
- the installer determines the registry of the execution control program 50. If the execution control program 50 is not yet installed, the installation control program 50 is installed (S27). The installer rewrites the old version of the program body 41 and the accompanying data group 42 with the new version of the program body 41 and the accompanying data group 42 to replace the old version of the game program 5 4 OA with the new version of the game program 40 (S 28, S 29). Then, the installer activates the execution control program 50 and ends the process (S30).
- FIG. 6 shows a computer for execution control processing and authentication by the execution control program 50.
- 10 is a flowchart showing processing of 10 20 and the like.
- the started execution control program 50 acquires machine information specific to the user computer 30, specifically, MAC key [less] (S41). Further, the current time information is obtained from the built-in timer of the user computer 30, and an encryption key is generated based on this time information (S42).
- the execution control program 50 calls the function of the web browser 31 (S43), connects to the authentication computer 10 through the communication network, and requests the authentication computer 20 for login authentication (S44). ).
- the execution control program 50 transmits the user ID, password, MAC address, and encryption key to the authentication computer 20 (S44).
- the authentication computer 20 is a user information database.
- the authentication computer 20 When it is recognized that the user is a valid user, the authentication computer 20 creates a list of game programs that can be used by the user and transmits the list to the user computer 30 (S62).
- a typical game program that can be used by a user is a game program that the user has purchased.
- game pros provided free of charge by software companies Gram etc. can also be included.
- the execution control program 50 When receiving the list data of the available game programs from the authentication computer 20, the execution control program 50 displays the list of games on the monitor display of the user computer 30 (S45). Based on this list menu, the user selects a game to be played (S46).
- the authentication computer 20 refers to the game information database 25 to generate activation information necessary to activate the game program selected by the user, and uses the encryption key and MAC acquired in S 61 as the activation information. Encryption is performed using an end address (S63). The authentication computer 20 transmits the encrypted startup information to the execution control program 50 of the user computer 30 (S64).
- the execution control program 50 When the execution control program 50 receives the encrypted activation information from the authentication computer 20 (S 47), the execution control program 50 decrypts the encrypted activation information using the encryption key and the MAC address (S 48).
- the execution control program 50 acquires the registry information of the new version of the game program 40 (S49), and generates a startup statement based on the registry path and startup arguments (S50).
- the execution control program 50 decodes the encrypted new version of the game program 40 by using the decode key extracted from the activation information, and expands it in a predetermined directory of a predetermined drive (S51). As a result, the game program 40 is decoded and waits for activation.
- the execution control program 50 activates the decoded new version of the game program 40 by the activation statement generated in S 50 (S 52, S 70). As a result, the user can play with the new version of the game program 40 (S 7 1).
- the execution control program 50 monitors the execution state of the game program 40. (S 5 3) When the user finishes the game and ends the game program 40 (S 7 2), the game program 40 is disabled by deleting the decoded program main body 41, etc. The process is terminated (S 5 4).
- the user wants to play with the game program 40 again, he / she can access the authentication computer 20 again to receive online authentication and obtain the activation information.
- the execution control program 50 is configured as a program close to the OS side like a device driver, and cannot be terminated by a normal method like an application program. Therefore, the execution control program 50 and the game program 40 are separated, and only the game program 40 cannot be illegally copied or taken out.
- the present invention can be utilized in various businesses. For example, an old version game program that has been illegally copied and distributed in the past can be updated to a new version game program, allowing illegal users to formally obtain usage rights and change to legitimate users. it can.
- an accompanying data group (game scenario, music, etc.) corresponding to the user's native language is prepared, or an additional scenario is newly prepared. The Stimulate your willingness to update.
- FIGS. In the present embodiment, a case where a game program is fixed and distributed on a recording medium will be described as an example. In the present embodiment, the description given in the above embodiment can be appropriately used as long as the scope of the present invention is not reduced.
- the execution of the game program is controlled by the execution control program (game manager of this embodiment) as in the above embodiment.
- online authentication between the authentication computer (DRM computer of this embodiment) and the execution control program can be executed periodically.
- FIG. 7 is an explanatory diagram showing an overall outline of the software execution control system according to the present embodiment. As will be described later, this system can be configured to include, for example, a supplier computer 100, a DRM computer 200, and a user computer 300.
- the supplier computer 100 is used, for example, by a software vendor that produces a program product.
- the supplier computer 100 includes a DRM unit 110 that processes the game program 400 and converts it into a DRM program 700.
- DRM is an abbreviation for Digital Rights Management, which means managing the rights of digitized content such as game programs.
- DRM means to improve the resistance against unauthorized use by setting a unique protector described later in a non-protection game program.
- the D RM unit 110 sets a unique protector for the game program 400 by adding the game manager 500 and the monitoring program 60 to the game program 400.
- the protected game program 400 is a DRM-enabled program. As a program 700, it is recorded on the recording medium RM and distributed to the factory. The game manager 500 and the monitoring program 600 will be further described later.
- the recording medium RM for example, various media such as a CD-ROM, a DVD-ROM, an optical disk, a hard disk, a flexible disk, a semiconductor memory, and a magnetic tape can be used as appropriate.
- the DRM conversion program 700 may be compressed and recorded on the recording medium RM, or the DRM conversion program 700 may be recorded on the recording medium RM without being compressed.
- the recording medium RM can also store an installer for causing the user computer 300 to install the DRM conversion program 700.
- the D RM computer 200 is an example of a “management computer”.
- the DRM computer 200 can also be called, for example, an “authentication management server”.
- the DRM computer 200 may be installed for each software vendor, or only one may be installed for multiple software vendors.
- the D RM computer 2 00 communicates with the game manager 5 0 0 running on the user computer 3 0 0 to manage user authentication, transmission of startup information, and continuous execution.
- the D RM computer 2 200 includes an authentication unit 2 1 0, an activation information transmission unit 2 2 0, and a continuous execution management unit 2 3 0.
- the DRM computer 2 00 can use the user information database 2 4 0, the game information database 2 5 0, and the monitoring status database 2 6 0.
- the DRM computer 200 does not need to be physically configured from a single computer, and may be realized by a cooperative operation of a plurality of computers.
- the authentication unit 2 10 is, for example, a user ID, a password (“PW” in the figure), based on the authentication data transmitted from the game manager 50 0 Authentication is performed.
- the activation information transmission unit 2 2 0 In the same manner as the activation information transmission unit 23 in FIG. 2, for example, the game manager 5 0 0 transmits information necessary for the game program 4 0 0 to be decoded and placed in a startable state to the game manager 5 0 0 It is.
- the continuous execution management unit 230 manages whether or not the game program 400 can be continuously executed by communicating with the game manager 500 every predetermined time. As will be described in detail later, the continuous execution management unit 2 3 0 compares the session ID transmitted from the game manager 50 0 with the session ID held in advance, and if both match, the game program Allows continuation of 4 0 0 execution. Conversely, if both sessions ID do not match, the continuous execution management unit 2 3 0 instructs the game manager 5 0 0 to forcibly terminate the game program 4 0 0.
- the user computer 300 can be configured as, for example, a personal computer, a portable information terminal, a mobile phone, or the like, similar to the user computer 3 of the embodiment.
- the user computer 300 can be provided with hardware resources and software resources as required, such as CPU, memory, auxiliary storage device, OS, and various device drivers.
- the game program 400, the game manager 500, and the monitoring program 600 can use hardware resources and software resources of the user computer 300 as appropriate.
- the game program 400, game manager 500, and monitoring program 60 on the user computer 300 Each 0 is executed.
- the game manager 500 acts as a launcher program for starting the game program 400.
- the game manager 500 controls the operation of the game program 400, not just the launcher program.
- the game manager 500 monitors the operation status of the game program 400 and the monitoring program 600, respectively. If one of the monitoring targets stops operating, the other monitoring target and its own operation stop.
- the monitoring program 6 0 0 monitors the operating states of the game program 4 0 0 and the game manager 5 0 0, and when one of the monitoring targets stops operating, stops the other monitoring target and its own operation Let A legitimate user can use the game program 400 without being aware of the presence of the monitoring program 600.
- FIG. 8 is an explanatory diagram showing an example of each of the databases 2 4 0 to 2 60.
- the user information database 240 can manage, for example, a user ID, a password, a MAC address, a session ID, and other information in association with each other.
- the session ID is information used to determine whether or not continuous execution is permitted. That is, a game program 4 using a user computer different from the first authenticated user computer 3 0 0 0
- the session ID received from 0 is compared with the session ID registered in the user information database 240, so that the execution of the game program 400 is allowed only when the session ID matches. It has become. Note that, similarly to the user information database 24 shown in FIG. 2A, a plurality of MAC addresses can be associated with one user ID.
- the game information database 2 5 0 includes, for example, a game
- the reporting mode is information for setting a policy regarding the frequency of periodic reporting from the game manager 500 to the DRM computer 200.
- the reporting mode is for example games Can be set by program 400 provider (software vendor).
- the reporting mode includes, for example, a mode that reports to the DRM computer 200 only when the game program 400 is first started, a mode that reports to the DRM computer 200 every time the game program 400 is started, and monitoring.
- a mode in which efficiency 5 is prioritized and a mode for reporting to the DRM computer 200 in the shortest possible cycle and a mode in which the load reduction of the DRM computer 200 is considered and the mode for reporting to the DRM computer 200 with a low frequency can be given.
- the monitoring status database 260 includes, for example, the user ID of each user executing the game program 400, the reporting period from each user computer 10 300, the next reporting time, The game ID of the game program 400 executed by each user can be managed in association with the game start time. As will be described later, the next reporting time is dynamically controlled based on the load state and reporting mode of the DRM computer 200.
- Fig. 9 ' is a flowchart showing an outline of the operations performed when the 15-system is started up.
- a user who desires to use the game program 400 selects, for example, a game icon that represents the desired game program 400 and instructs activation.
- the game manager 500 is activated (S 101).
- the game manager 500 acquires a MAC address that is an example of machine information unique to the user computer 300 (S102), and transmits this MAC address to the DRM computer 200 via the communication network CN (S 103).
- the DRM computer 200 registers the MAC address received from the game manager 500 in the user information database 240 (S 1 21, S 1 22). This
- the MAC address is stored in the memory without registering it in the user information database 240, and when user authentication is successful, the MAC address is registered in the user information database 240 together with the user ID and session ID, etc. Issue a session ID and set the reporting interval. The initial value set in advance can be used for the initial reporting period. Then, the DRM computer 200 notifies the game manager 500 of the session ID and the first reporting period (S123).
- the game manager 500 When the game manager 500 receives the session ID and the report cycle (S 104), the game manager 500 stores and stores these pieces of information in the memory of the user computer 300. Next, the game manager 500 determines whether or not the user ID and password are input from the user (S 105). For example, when the user selects and operates a game icon, the user ID and password can be prompted to be displayed by displaying a screen that prompts the user to input the user ID and password.
- the game manager 500 When the game manager 500 confirms the input of the user ID and password (S105: YES), the game manager 500 transmits the input user ID and password and the game ID of the game program 400 that the user desires to execute to the DRM computer 200. (S106).
- the DRM computer 200 When the DRM computer 200 receives the user ID, password, and game ID from the game manager 500 (S124), the DRM computer 200 refers to the user information database .240 and performs user authentication (S125). If the user ID and password registered in advance match the user ID and password received from the game manager 500 (S125: YES), the user authentication is successful. The DRM computer 200 registers the user ID, password, MAC address, etc. in the user information database 240 in association with each other (S127). Conversely, no user ID or password If either one does not match (S125: NO), user authentication fails and error handling is performed (S126). As error processing, for example, a message such as “ID or password is different” may be displayed on the screen of the user computer 300.
- the activation of the game program 400 can be locked.
- the user authentication information is not limited to the user ID and password, and for example, biometric information such as a voiceprint, fingerprint, and iris may be employed.
- the DRM computer 200 determines permission to execute the game program 400 desired by the user based on the success of the user authentication (S128).
- the DRM computer 200 generates and encrypts information for enabling the game manager 500 to start the game program 400 permitted to be executed (S 1 29). Examples of the information for starting the game include execution information such as a file name and an activity key.
- the DRM computer 200 encrypts the execution information and the artifact key using, for example, the session ID and user information (MAC address, etc.), and transmits the encrypted information to the game manager 500 (S 1 30 ).
- the game manager 500 When the game manager 500 receives the encryption information from the DRM computer 200 (S107), the game manager 500 decompresses the encryption information (S108) and obtains the activity key and execution information (S109).
- the encryption algorithm used by the DRM computer 200 is known to the game manager 500, and information necessary for decompression is also present on the user computer 300 side, so that the encrypted information can be decompressed.
- the game manager 500 decodes the game program 400 based on the acquired activity and stores the decoded game program 400 in the memory of the user computer 300 (S 110).
- the game program 400 is installed in the user computer 300 using the recording medium RM, the game program is stored in an encoded state in the auxiliary storage device of the user computer 300, for example. Is done. In this encoded state, the game program 400 cannot be started.
- the manager 5 00 acquires the activity key from the D RM computer 2 0 0 and decodes the game program 4 0 0 and places it in the memory of the user computer 3 0 0, the game program 4 0 0 It becomes possible to start.
- the decoded game program 400 (executable program) is not stored as a file but exists only in memory. Game Pro
- the game manager 500 Based on the execution information, the game manager 500 starts the game program 400 stored in the memory of the user computer 300 (S 1 1 1).
- the user can play the game program 400 by playing it.
- the game manager 500 starts the monitoring program 60 00 simultaneously with the start of the game program 4 ⁇ 0 (not necessarily in a physically strict sense) (S 1 1 2).
- the operation of the monitoring program 600 will be further described later. '
- the game manager 500 refers to the reporting period set from the DRM computer 200 when starting up (S 14 1).
- the game manager 5 0 0 uses the timer function etc. of the user computer 3 0 0 to enable the DRM computer 2
- the DRM computer 200 When the DRM computer 200 receives the session ID from the game manager 500 (S 161), the DRM computer 200 refers to the user information database 240. The DRM computer 200 compares the issued session ID registered in the user information database 240 with the session ID received from the game manager 500, and determines whether or not they match (S163). Note that only the session ID may be transmitted from the game manager 500 to the DRM computer 200, or in addition to the session ID, for example, all or part of user information such as a user ID may be included. it can. Furthermore, it is possible to include environmental information (such as the CPU usage rate and memory consumption) of the user computer 300. As the information added to the session ID increases, the load on the user computer 300 increases and the network traffic also increases.
- environmental information such as the CPU usage rate and memory consumption
- the DRM computer 200 continuously execution management unit 230 sends the game program 400 to the game manager 500. Prohibition of continuation of execution is notified (S 1 64). If the session IDs do not match, it means that the game program 400 is being executed by another user computer, that is, for example, when the same game program 400 is activated by a single user ID. . Therefore, if both sessions ID do not match, the game manager 500 is instructed to forcibly terminate the game program 400.
- DRM computer 200 If the session ID received from game manager 500 matches the session ID registered in advance (S163: YES), DRM computer 200 A new reporting cycle, that is, the next reporting time is calculated (S165). The calculation of this new reporting period will be described later, but will be determined in consideration of the load state of the DRM computer 200 and the like.
- the DRM computer 200 notifies the game manager 500 of the newly calculated report cycle and permission to continue execution (S 1 66).
- the game manager 500 receives a response from the DRM computer 200 as to whether or not to continue execution (S145). If the game manager 500 is allowed to continue execution of the game program 400 (S146: YES), the game manager 500 stores the newly set reporting cycle in the memory of the user computer 300, returns to S141, and the reporting time has come. Wait for.
- the game manager 500 periodically performs simple authentication with the DRM computer 200. As a result, for example, it is possible to prevent unauthorized use in which a plurality of game programs 400 are activated using the same user ID and password.
- FIG 11 is a flowchart showing the reporting cycle setting process. This is an example of the content of S 1 65 in FIG.
- the DRM computer 300 (specifically, the continuous execution management unit 230) refers to the time when the session ID is received from the game manager 500 (S181). Next, the game manager 500 refers to the reporting period associated with reception of this session ID (S 182).
- Game Manager 500 was set in advance with the session ID reception time Calculate the deviation from the reporting period. For example, if the actual reception time is later than the scheduled session ID reception time, it may be due to a delay in the arrival of the bucket due to congestion of the communication network CN or a decrease in response performance due to an increase in the load on the DRM computer 300. be able to.
- the DRM computer 200 detects its current load state (S 184).
- Examples of the load state include the number of users who are currently playing, that is, the number of game managers that should perform periodic authentication processing online.
- CPU utilization, memory consumption, data input / output processing speed (IZO speed), etc. may be detected.
- the DRM computer 200 predicts a future load state based on the current load state (S185). That is, the DRM computer 200 is a game manager 5
- the load state of the DRM computer 200 at the next reporting period is predicted. Specifically, for example, if the current reporting cycle is set to “1 hour”, the number of users (game managers) who perform online authentication one hour after the current time I can understand more.
- the DRM computer 200 refers to a report mode preset in the game program 400 being executed (S 186).
- the reporting mode associated with the game program 400 can be changed even after the recording medium RM is distributed. For example, from a supplier computer 100 to a DRM computer 200, a game
- the DRM computer 200 maximizes the monitoring efficiency based on, for example, the report mode, the amount of time difference between the scheduled reception time of the session ID and the actual reception time, and the predicted load state in the future. To calculate a new reporting period (S 1 8 7).
- the load on the DRM computer 200 that performs periodic simple online authentication increases.
- the shorter the reporting cycle the better the security against unauthorized use, but on the other hand, the load on the DRM converter 200 also increases. If the reporting cycle is set too short with emphasis on security, the responsiveness of the DRM computer 200 may decrease or the function may stop. Therefore, when the load temporarily increases, such as when a new popular game is released, control is performed so that the reporting cycle becomes longer.
- the DRM computer 200 can set the reporting cycle (monitoring timing) so that the maximum security can be obtained without causing a function stop.
- the DRM computer 200 can set the reporting period to such an extent that the minimum security can be maintained.
- FIG. 12 is a flowchart showing the mutual monitoring process by the game manager 50 ° and the monitoring program 60.
- the game manager 5 00 and the monitoring program 6 0 0 monitor the operating state of the game program 4 0 0 as a common monitoring target, and regularly monitor each other as a monitoring target. Yes.
- D If periodic online authentication between the RM computer 2 00 and the game manager 5 0 0 is external monitoring, mutual monitoring by the game manager 5 0 0 and the monitoring program 6 0 0 is internally monitored. Can be positioned.
- the monitoring process of the game manager 500 will be described first.
- the game manager 500 determines whether or not a preset monitoring time has come (S 2 0 1).
- the monitoring time is preferably set to a relatively short cycle.
- the game manager 500 checks the operating state of the monitoring program 600 (S203), and determines whether or not the monitoring program 600 is operating normally (S203).
- the game manager 500 When the monitoring program 600 is operating normally (S203: YES), the game manager 500 next checks the operating state of the game program 400 (S204), and whether the game program 400 is operating normally. Is determined (S205). If the game program 400 is also operating normally (S205: YES), the game manager 500 waits until the next monitoring time comes (S201).
- the game manager 500 performs a forced stop process (S 206 to S208).
- the game manager 500 stops the operations of both the game program 400 and the monitoring program 600 (S206, S207), and then stops the game manager itself (S208).
- the decoded game program 400 is immediately erased or destroyed from the memory of the user computer 300.
- Monitoring program 600 is for monitoring When the period arrives (S221: YES), the operation status of game management 500 and game program 400 is monitored (S 2 2 2 to S 2 2 5), and one of them has stopped operating. If this happens (S223: NO or S225: NO), the program shifts to forced stop processing, and all programs are stopped (S2 26 to S2 28).
- a plurality of operation monitoring programs namely the game manager 500 and the monitoring program 60, monitor the operation state of the game program 400 and monitor each other, so that the game program 40 Zero stoppage can be detected more reliably. Even if one of the operation monitoring programs is intentionally stopped, the other monitoring program shuts down the whole, so that the game program 4 0 0 deployed in the memory of the user computer 3 0 0 is illegal. Can be prevented from being copied.
- periodic online authentication is performed between the game manager 5 0 0 that controls the operation of the game program 4 0 0 and the DRM computer 2 0 0 that performs license authentication.
- durability against unauthorized use can be improved.
- this periodic online authentication is performed by comparing session IDs, so it is a relatively simple process. Therefore, simple authentication can be performed in a relatively short cycle without increasing the computer load, and security can be maintained for a long time.
- timing (reporting cycle) for performing simple online authentication is dynamically controlled based on the load status of the DRM computer 200, etc., network security can be increased in consideration of computer load. Can be realized.
- FIG. 13 shows still another embodiment of the present invention.
- the operation of the game program 400 Not only the status but also each other monitors each other, and if any one of the game program 4 0 0, game manager 5 0 0, and monitoring program 6 0 0 stops, the remaining two programs Since the operation is also stopped and the game program 4 0 0 is erased to disable it, the act of illegally reading out and copying the game program 4 0 5 0 deployed in the memory is prevented, thereby improving reliability. It can be increased.
- FIG. 13 shows still another embodiment of the present invention. In this embodiment, in the first embodiment, mutual monitoring by a plurality of monitoring programs and periodic online authentication with 10 computers for authentication are realized.
- a game program 40, an execution control program 50A, and a monitoring program 60 are distributed from the distribution computer 10 to the user computer 30.
- the execution control program 50 A includes a periodic simple online authentication function and a monitoring function executed by the game manager 50 0 described above, in addition to the configuration and operation 15 of the execution control program 50 described above. Yes.
- the monitoring program 60 has a monitoring function similar to that of the monitoring program 60 0 described above.
- the execution control program 5 OA decodes the game program 4 0 by the first user authentication. Further, the execution control program 5 OA performs user authentication even during execution of the game program 40 by periodically transmitting a session ID to the authentication computer 20 20. The execution control program 5 OA permits the continuous execution of the game program 40 if the user authentication is successful, and forcibly terminates the game program 40 if the user authentication fails.
- the execution control program 5 OA and the monitoring program 60 both monitor the activation status of the game program 25 and monitor each other. The If any one of the game program 40, execution control program 5 OA, and monitoring program 60 ends, the execution control program 5 OA or the monitoring program 60 detects this and the remaining programs And terminate yourself.
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)
- Storage Device Security (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2003289301A AU2003289301A1 (en) | 2002-12-11 | 2003-12-10 | Software execution control system and software execution control program |
JP2004558454A JPWO2004053666A1 (ja) | 2002-12-11 | 2003-12-10 | ソフトウェア実行制御システム及びソフトウェアの実行制御プログラム |
US10/538,764 US7484207B2 (en) | 2002-12-11 | 2003-12-10 | Software execution control system and software execution control program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002-359597 | 2002-12-11 | ||
JP2002359597 | 2002-12-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2004053666A1 true WO2004053666A1 (ja) | 2004-06-24 |
Family
ID=32500944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2003/015779 WO2004053666A1 (ja) | 2002-12-11 | 2003-12-10 | ソフトウェア実行制御システム及びソフトウェアの実行制御プログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US7484207B2 (ja) |
JP (2) | JPWO2004053666A1 (ja) |
CN (1) | CN1333314C (ja) |
AU (1) | AU2003289301A1 (ja) |
WO (1) | WO2004053666A1 (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006072664A (ja) * | 2004-09-01 | 2006-03-16 | Nec Corp | ファイル管理システム、およびファイル管理プログラム |
JP2008084233A (ja) * | 2006-09-29 | 2008-04-10 | Fuji Xerox Co Ltd | 情報処理システムおよび情報処理プログラム |
JP2008532121A (ja) * | 2005-02-22 | 2008-08-14 | コネクティフ ソリューションズ インク. | 分散型資産管理システム及び方法 |
JPWO2006073008A1 (ja) * | 2005-01-07 | 2008-10-23 | 株式会社システム・ケイ | ネットワークカメラへのログイン認証システム |
JP2010183506A (ja) * | 2009-02-09 | 2010-08-19 | Nippon Telegr & Teleph Corp <Ntt> | マルチキャスト通信システム、ルーティング装置、認証サーバ装置、ルーティング装置用プログラム、認証サーバ装置用プログラム、並びにルーティング方法および認証方法 |
US7930743B2 (en) | 2006-09-01 | 2011-04-19 | Fuji Xerox Co., Ltd. | Information processing system, information processing method, information processing program, computer readable medium and computer data signal |
JP2014137699A (ja) * | 2013-01-16 | 2014-07-28 | Fujitsu Ltd | 情報資源保護プログラム、及び情報資源保護方法 |
Families Citing this family (67)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9267144B2 (en) * | 2002-01-23 | 2016-02-23 | Monsanto Technology Llc | Plastid transformation of maize |
FR2849704A1 (fr) * | 2003-01-02 | 2004-07-09 | Thomson Licensing Sa | Dispositifs et procedes de decision conditionnelle d'execution de services recus et de constitution de messages d'informations associes a des services, et produits associes |
DE10360535B4 (de) * | 2003-12-22 | 2006-01-12 | Fujitsu Siemens Computers Gmbh | Einrichtung und Verfahren zur Steuerung und Kontrolle von Überwachungsdetektoren in einem Knoten eines Clustersystems |
US7647647B2 (en) * | 2004-08-05 | 2010-01-12 | International Business Machines Corporation | System, method and program product for temporally authorizing program execution |
US8819639B2 (en) * | 2004-09-15 | 2014-08-26 | Lakeside Software, Inc. | System for selectively blocking execution of applications on a computer system |
US7950061B2 (en) * | 2004-10-22 | 2011-05-24 | Om Ahuja | Copy-protected audio, video and or data optical disk |
EP1688834A3 (en) * | 2005-02-03 | 2009-01-14 | LG Electronics Inc. | Video device having software upgrade function using wireless communication and method for controlling the same |
US7730525B2 (en) * | 2005-06-22 | 2010-06-01 | International Business Machines Corporation | Method, system, and computer program product for limiting authorization of an executable action to an application session |
KR100724935B1 (ko) * | 2005-09-15 | 2007-06-04 | 삼성전자주식회사 | 컨텐츠 보호를 위한 개체 간 연동 방법 및 장치, 그리고 그시스템 |
NO325438B1 (no) * | 2005-12-22 | 2008-05-05 | World Medical Ct Holding Sa | Fremgangsmate for sikker overforing av medisinsk data til en mobil enhet/terminal |
US20070219909A1 (en) * | 2006-03-14 | 2007-09-20 | Robert Hardacker | System and method for automatically updating timed DRM keys |
US7967682B2 (en) | 2006-04-12 | 2011-06-28 | Bally Gaming, Inc. | Wireless gaming environment |
US8301753B1 (en) | 2006-06-27 | 2012-10-30 | Nosadia Pass Nv, Limited Liability Company | Endpoint activity logging |
US7668954B1 (en) * | 2006-06-27 | 2010-02-23 | Stephen Waller Melvin | Unique identifier validation |
US9101820B2 (en) | 2006-11-09 | 2015-08-11 | Bally Gaming, Inc. | System, method and apparatus to produce decks for and operate games played with playing cards |
US8631501B2 (en) | 2006-11-10 | 2014-01-14 | Bally Gaming, Inc. | Reporting function in gaming system environment |
US9508218B2 (en) | 2006-11-10 | 2016-11-29 | Bally Gaming, Inc. | Gaming system download network architecture |
US20080171588A1 (en) * | 2006-11-10 | 2008-07-17 | Bally Gaming, Inc. | Download and configuration server-based system and method with structured data |
US8920233B2 (en) * | 2006-11-10 | 2014-12-30 | Bally Gaming, Inc. | Assignment template and assignment bundle in a gaming configuration and download system |
US8784212B2 (en) * | 2006-11-10 | 2014-07-22 | Bally Gaming, Inc. | Networked gaming environment employing different classes of gaming machines |
US9111078B2 (en) | 2006-11-10 | 2015-08-18 | Bally Gaming, Inc. | Package manager service in gaming system |
US20080153600A1 (en) * | 2006-11-10 | 2008-06-26 | Bally Gaming, Inc. | Gaming system configuration change reporting |
US8930461B2 (en) | 2006-11-13 | 2015-01-06 | Bally Gaming, Inc. | Download and configuration management engine for gaming system |
US8347280B2 (en) * | 2006-11-13 | 2013-01-01 | Bally Gaming, Inc. | System and method for validating download or configuration assignment for an EGM or EGM collection |
US9082258B2 (en) | 2006-11-13 | 2015-07-14 | Bally Gaming, Inc. | Method and system for providing download and configuration job progress tracking and display via host user interface |
KR101368327B1 (ko) * | 2006-12-22 | 2014-02-26 | 삼성전자주식회사 | 프로그램 실행흐름 보고 시스템 및 방법 |
US8056070B2 (en) * | 2007-01-10 | 2011-11-08 | Goller Michael D | System and method for modifying and updating a speech recognition program |
US8734245B2 (en) | 2007-11-02 | 2014-05-27 | Bally Gaming, Inc. | Game related systems, methods, and articles that combine virtual and physical elements |
US8616958B2 (en) | 2007-11-12 | 2013-12-31 | Bally Gaming, Inc. | Discovery method and system for dynamically locating networked gaming components and resources |
US8725790B2 (en) * | 2007-12-12 | 2014-05-13 | Big Fish Games, Inc. | Multiple application activation |
US8856657B2 (en) | 2008-04-30 | 2014-10-07 | Bally Gaming, Inc. | User interface for managing network download and configuration tasks |
US9005034B2 (en) * | 2008-04-30 | 2015-04-14 | Bally Gaming, Inc. | Systems and methods for out-of-band gaming machine management |
US9483911B2 (en) * | 2008-04-30 | 2016-11-01 | Bally Gaming, Inc. | Information distribution in gaming networks |
US20090275374A1 (en) * | 2008-04-30 | 2009-11-05 | Bally Gaming, Inc. | Tournament play in a gaming property |
WO2009155047A2 (en) * | 2008-05-30 | 2009-12-23 | Bally Gaming, Inc. | Web pages for gaming devices |
JP4548524B2 (ja) * | 2008-07-29 | 2010-09-22 | ソニー株式会社 | 通信装置、プログラム、通信方法および通信システム |
KR101331032B1 (ko) | 2008-07-30 | 2013-11-19 | 삼성전자주식회사 | 가상화 환경과 결합된 어플리케이션 실행 방법 |
US8266213B2 (en) | 2008-11-14 | 2012-09-11 | Bally Gaming, Inc. | Apparatus, method, and system to provide a multiple processor architecture for server-based gaming |
US8635672B2 (en) | 2009-01-28 | 2014-01-21 | Nec Corporation | Thin client-server system, thin client terminal, data management method, and computer readable recording medium |
US9424399B2 (en) | 2009-05-12 | 2016-08-23 | Microsoft Technology Licensing, Llc | Availability of permission models in roaming environments |
US20100293536A1 (en) * | 2009-05-12 | 2010-11-18 | Microsoft Corporation | Enhanced product functionality based on user identification |
JP2010282529A (ja) * | 2009-06-08 | 2010-12-16 | Konami Digital Entertainment Co Ltd | インストールシステム、サーバ装置、インストール方法、ならびに、サーバプログラム |
US20100318987A1 (en) * | 2009-06-15 | 2010-12-16 | Microsoft Corporation | Bootstrapping streamed and virtualized applications |
US8959508B2 (en) * | 2009-06-15 | 2015-02-17 | Microsoft Technology Licensing, Llc | Mitigating user interruption for partially downloaded streamed and virtualized applications |
GB0910327D0 (en) * | 2009-06-16 | 2009-07-29 | Antix Labs Ltd | Rights managed distributable software |
JP5551899B2 (ja) * | 2009-07-14 | 2014-07-16 | 任天堂株式会社 | 情報処理システム、情報処理装置、情報処理プログラム |
US20110083188A1 (en) * | 2009-10-07 | 2011-04-07 | Om Ahuja | Virus, trojan, worm and copy protection of audio, video, digital and multimedia, executable files and such installable programs |
JP5511506B2 (ja) * | 2010-05-25 | 2014-06-04 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 所定のリソースを監視する監視プログラムの強制終了攻撃に対する耐性を有する装置、所定のリソースを監視する監視プログラムの強制終了攻撃に対する耐性を付与する方法及び該方法を装置で実行することが可能なコンピュータプログラム |
JP5449044B2 (ja) * | 2010-06-10 | 2014-03-19 | シャープ株式会社 | サーバ装置、端末装置およびアプリケーション制御システム |
JP2012190268A (ja) * | 2011-03-10 | 2012-10-04 | Dainippon Printing Co Ltd | コンテンツ利用端末、コンテンツ管理システム、コンテンツ管理方法、コンテンツ管理プログラムおよびサーバ装置 |
US9058716B2 (en) | 2011-06-06 | 2015-06-16 | Bally Gaming, Inc. | Remote game play in a wireless gaming environment |
US8683457B1 (en) * | 2011-06-17 | 2014-03-25 | Western Digital Technologies, Inc. | Updating firmware of an electronic device by storing a version identifier in a separate header |
US20130167223A1 (en) * | 2011-12-27 | 2013-06-27 | Symbol Technologies, Inc. | Methods and apparatus for securing a software application on a mobile device |
US8914790B2 (en) | 2012-01-11 | 2014-12-16 | Microsoft Corporation | Contextual solicitation in a starter application |
US8974305B2 (en) | 2012-01-18 | 2015-03-10 | Bally Gaming, Inc. | Network gaming architecture, gaming systems, and related methods |
US9120007B2 (en) | 2012-01-18 | 2015-09-01 | Bally Gaming, Inc. | Network gaming architecture, gaming systems, and related methods |
US20130254553A1 (en) * | 2012-03-24 | 2013-09-26 | Paul L. Greene | Digital data authentication and security system |
CN103377350A (zh) * | 2012-04-23 | 2013-10-30 | 合肥科盛微电子科技有限公司 | 利用硬件加密模块实现嵌入式软件的代码保护的方法和装置 |
JP5545325B2 (ja) * | 2012-07-13 | 2014-07-09 | 株式会社セガ | サーバ装置、サーバプログラム、および、ゲームプログラム |
JP5977305B2 (ja) * | 2014-10-17 | 2016-08-24 | グリー株式会社 | サーバ装置の制御方法、サーバ装置、及びプログラム |
US10438170B2 (en) | 2017-01-05 | 2019-10-08 | International Business Machines Corporation | Blockchain for program code credit and programmer contribution in a collective |
JP6808157B2 (ja) | 2017-03-15 | 2021-01-06 | 株式会社コナミデジタルエンタテインメント | サーバ装置、及びそれに用いられるコンピュータプログラム |
JP6767308B2 (ja) * | 2017-05-23 | 2020-10-14 | ファナック株式会社 | 機械と相互通信可能に接続される機械制御用コンピュータ、機械システム、ベースソフトウェア、コンピュータ読取可能な記録媒体、データ構造、及び機械制御方法 |
JP7238632B2 (ja) * | 2019-06-26 | 2023-03-14 | オムロン株式会社 | 制御システム、制御装置、および管理方法 |
US11397793B2 (en) * | 2019-12-03 | 2022-07-26 | Microsoft Technology Licensing, Llc | Delivering digital content for an application |
KR20220088633A (ko) * | 2020-12-18 | 2022-06-28 | 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 | 음성을 텍스트로 변환하는 방법, 시스템, 장치 및 매체 |
CN114840859B (zh) * | 2021-12-21 | 2023-03-24 | 许磊 | 一种通用数据的流媒体化系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH086784A (ja) * | 1994-06-15 | 1996-01-12 | Nippon Telegr & Teleph Corp <Ntt> | ソフトウェア/著作物の無断複製使用防止システムおよび無断複製使用防止処理方法 |
JPH10133869A (ja) * | 1996-10-30 | 1998-05-22 | Shinichiro Ogawa | ソフトウエア製品の流通方法 |
WO2000072119A2 (en) * | 1999-05-05 | 2000-11-30 | Rabin Michael O | Methods and apparatus for protecting information |
JP2001084137A (ja) * | 1999-09-14 | 2001-03-30 | Matsushita Electric Ind Co Ltd | ライセンス管理装置およびライセンス管理方法 |
JP2002163578A (ja) * | 2000-08-21 | 2002-06-07 | Credist Inc | ソフトウェア貸し出しシステム及び、ソフトウェア貸し出し方法並びに、ソフトウェア貸し出しシステム用のコンピュータプログラム |
JP2002229660A (ja) * | 2001-01-31 | 2002-08-16 | Toshiba Corp | ソフトウェア流通管理システム、ソフトウェア流通管理方法、ソフトウェア使用管理アプレット、ソフトウェア使用管理アプレットを記録した媒体及びソフトウェア流通管理サーバ |
JP2002351564A (ja) * | 2001-05-22 | 2002-12-06 | Ntt Communications Kk | アプリケーション提供サービスのための装置及び方法並びにプログラム |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5390256A (en) * | 1991-01-08 | 1995-02-14 | Dolby Laboratories Licensing Corporation | Dynamic loader |
US5724425A (en) * | 1994-06-10 | 1998-03-03 | Sun Microsystems, Inc. | Method and apparatus for enhancing software security and distributing software |
US5845077A (en) * | 1995-11-27 | 1998-12-01 | Microsoft Corporation | Method and system for identifying and obtaining computer software from a remote computer |
JPH10177473A (ja) * | 1996-12-18 | 1998-06-30 | Japan Airlines Co Ltd | コンピュータ・プログラムのインストール方法及びシステム |
JP3623347B2 (ja) * | 1997-09-11 | 2005-02-23 | 三菱電機株式会社 | デジタルコンテンツ配布システム装置 |
WO1999057634A1 (en) * | 1998-05-06 | 1999-11-11 | Jcp Computer Services Ltd. | Processing apparatus and method |
US6725260B1 (en) * | 1998-09-11 | 2004-04-20 | L.V. Partners, L.P. | Method and apparatus for configuring configurable equipment with configuration information received from a remote location |
US6889376B1 (en) * | 1999-05-12 | 2005-05-03 | Treetop Ventures, Llc | Method for migrating from one computer to another |
US7062765B1 (en) * | 1999-05-25 | 2006-06-13 | Realnetworks, Inc. | System and method for updating information via a network |
US6453469B1 (en) * | 1999-06-18 | 2002-09-17 | Phoenix Technologies Ltd. | Method and apparatus to automatically deinstall an application module when not functioning |
JP2001100989A (ja) * | 1999-09-30 | 2001-04-13 | Casio Comput Co Ltd | データ通信装置、データ通信システム、及び記憶媒体 |
JP3578266B2 (ja) * | 2000-01-06 | 2004-10-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | アプリケーションの起動方法、アプリケーションの起動のためのソフトウエア・プロダクト |
JP2001337732A (ja) * | 2000-05-25 | 2001-12-07 | Infotekku Kk | コンピューターソフトウエアの利用認証方法 |
US6832373B2 (en) * | 2000-11-17 | 2004-12-14 | Bitfone Corporation | System and method for updating and distributing information |
JP2001216041A (ja) * | 2000-12-22 | 2001-08-10 | Sakura Consulting:Kk | ソフトウェア製品の流通方法 |
JP3483540B2 (ja) * | 2001-04-23 | 2004-01-06 | 富士通株式会社 | ソフトウェア流通システムにおける識別子管理装置及び方法 |
CA2414246C (en) * | 2001-05-14 | 2014-01-28 | Ntt Docomo, Inc. | System for managing program stored in storage block of mobile terminal |
US7055067B2 (en) * | 2002-02-21 | 2006-05-30 | Siemens Medical Solutions Health Services Corporation | System for creating, storing, and using customizable software test procedures |
US7260557B2 (en) * | 2003-02-27 | 2007-08-21 | Avaya Technology Corp. | Method and apparatus for license distribution |
US7203745B2 (en) * | 2003-05-29 | 2007-04-10 | Akamai Technologies, Inc. | Method of scheduling hosts for software updates in a distributed computer network |
US7222339B2 (en) * | 2003-06-13 | 2007-05-22 | Intel Corporation | Method for distributed update of firmware across a clustered platform infrastructure |
-
2003
- 2003-12-10 CN CNB200380105688XA patent/CN1333314C/zh not_active Expired - Fee Related
- 2003-12-10 US US10/538,764 patent/US7484207B2/en not_active Expired - Fee Related
- 2003-12-10 WO PCT/JP2003/015779 patent/WO2004053666A1/ja active Application Filing
- 2003-12-10 JP JP2004558454A patent/JPWO2004053666A1/ja active Pending
- 2003-12-10 AU AU2003289301A patent/AU2003289301A1/en not_active Abandoned
-
2008
- 2008-05-20 JP JP2008132121A patent/JP4701446B2/ja not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH086784A (ja) * | 1994-06-15 | 1996-01-12 | Nippon Telegr & Teleph Corp <Ntt> | ソフトウェア/著作物の無断複製使用防止システムおよび無断複製使用防止処理方法 |
JPH10133869A (ja) * | 1996-10-30 | 1998-05-22 | Shinichiro Ogawa | ソフトウエア製品の流通方法 |
WO2000072119A2 (en) * | 1999-05-05 | 2000-11-30 | Rabin Michael O | Methods and apparatus for protecting information |
JP2001084137A (ja) * | 1999-09-14 | 2001-03-30 | Matsushita Electric Ind Co Ltd | ライセンス管理装置およびライセンス管理方法 |
JP2002163578A (ja) * | 2000-08-21 | 2002-06-07 | Credist Inc | ソフトウェア貸し出しシステム及び、ソフトウェア貸し出し方法並びに、ソフトウェア貸し出しシステム用のコンピュータプログラム |
JP2002229660A (ja) * | 2001-01-31 | 2002-08-16 | Toshiba Corp | ソフトウェア流通管理システム、ソフトウェア流通管理方法、ソフトウェア使用管理アプレット、ソフトウェア使用管理アプレットを記録した媒体及びソフトウェア流通管理サーバ |
JP2002351564A (ja) * | 2001-05-22 | 2002-12-06 | Ntt Communications Kk | アプリケーション提供サービスのための装置及び方法並びにプログラム |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006072664A (ja) * | 2004-09-01 | 2006-03-16 | Nec Corp | ファイル管理システム、およびファイル管理プログラム |
JP4539240B2 (ja) * | 2004-09-01 | 2010-09-08 | 日本電気株式会社 | ファイル管理システム、およびファイル管理サーバ |
JPWO2006073008A1 (ja) * | 2005-01-07 | 2008-10-23 | 株式会社システム・ケイ | ネットワークカメラへのログイン認証システム |
JP2008532121A (ja) * | 2005-02-22 | 2008-08-14 | コネクティフ ソリューションズ インク. | 分散型資産管理システム及び方法 |
US7930743B2 (en) | 2006-09-01 | 2011-04-19 | Fuji Xerox Co., Ltd. | Information processing system, information processing method, information processing program, computer readable medium and computer data signal |
JP2008084233A (ja) * | 2006-09-29 | 2008-04-10 | Fuji Xerox Co Ltd | 情報処理システムおよび情報処理プログラム |
JP2010183506A (ja) * | 2009-02-09 | 2010-08-19 | Nippon Telegr & Teleph Corp <Ntt> | マルチキャスト通信システム、ルーティング装置、認証サーバ装置、ルーティング装置用プログラム、認証サーバ装置用プログラム、並びにルーティング方法および認証方法 |
JP2014137699A (ja) * | 2013-01-16 | 2014-07-28 | Fujitsu Ltd | 情報資源保護プログラム、及び情報資源保護方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1723426A (zh) | 2006-01-18 |
AU2003289301A1 (en) | 2004-06-30 |
US7484207B2 (en) | 2009-01-27 |
JPWO2004053666A1 (ja) | 2006-04-13 |
CN1333314C (zh) | 2007-08-22 |
US20060117314A1 (en) | 2006-06-01 |
JP4701446B2 (ja) | 2011-06-15 |
JP2008262580A (ja) | 2008-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4701446B2 (ja) | ソフトウェア実行制御システム及びソフトウェアの実行制御プログラム | |
US7752139B2 (en) | Method and system for managing software licenses and reducing unauthorized use of software | |
US7483988B2 (en) | Information transmission method and system | |
JP3766197B2 (ja) | ソフトウエア流通方法およびサーバ装置およびクライアント装置 | |
TWI387898B (zh) | 以授權資訊為基礎於手持裝置間程式化地轉移應用程式 | |
US9628447B2 (en) | Methods and apparatus for protected distribution of applications and media content | |
US7089594B2 (en) | Application rights management in a mobile environment | |
US9117055B2 (en) | Method and apparatus for downloading DRM module | |
US20020165026A1 (en) | Method and system for delivering and securing computer game content via the internet | |
US20090089881A1 (en) | Methods of licensing software programs and protecting them from unauthorized use | |
WO2008004525A1 (fr) | Dispositif de traitement d'informations, dispositif d'enregistrement d'informations, système de traitement d'informations, procédé de mise à jour de programme, programme, et circuit intégré | |
JP2008543216A (ja) | Drm基盤のコンテンツ提供及び処理方法並びにその装置 | |
JPH10214297A (ja) | インターネットを利用した会員制サービスシステムおよび方法 | |
US20040199766A1 (en) | Keyed-build system for controlling the distribution of software | |
JP2004030617A (ja) | インターネットを利用したトランザクションサービスシステムおよびその方法 | |
JP2001350534A (ja) | 有償ソフトウェアのダウンロード方法及びシステム | |
WO2006006241A1 (ja) | コンテンツ配信システム及びランチャー | |
JP2003162340A (ja) | 情報処理プログラム,情報送信プログラム,情報送信システム,情報処理装置、及び情報処理プログラムを記憶したコンピュータ読み取り可能な記憶媒体 | |
JPH10133869A (ja) | ソフトウエア製品の流通方法 | |
JP2004062864A (ja) | インターネットを利用したオンラインショッピングシステム | |
JP2004046448A (ja) | 配信データ管理システム及びその方法 | |
JP2004030618A (ja) | インターネットを利用したサービスシステムおよびその方法 | |
JP2002024096A (ja) | 端末装置、データ配信装置、データ配信システム、及び、データ配信方法 | |
WO2000075758A1 (en) | Protection against unauthorized use of software products | |
WO2004061625A1 (ja) | ソフトウェア・ライセンス管理方法および生体認識装置を備えた携帯型電子デバイス |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SK SL TJ TM TN TR TT TZ UA UG US UZ VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): BW GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2004558454 Country of ref document: JP |
|
ENP | Entry into the national phase |
Ref document number: 2006117314 Country of ref document: US Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 10538764 Country of ref document: US Ref document number: 20038A5688X Country of ref document: CN |
|
122 | Ep: pct application non-entry in european phase | ||
WWP | Wipo information: published in national office |
Ref document number: 10538764 Country of ref document: US |