The embodiments discussed herein are related to a control method of an information processing system, a server device, and a terminal device.
The spread of smartphones, or mobile terminals exhibiting high performance comparable with personal computers has been advancing. In addition, due to 3G/Long Term Evolution (LTE)/plenty of hotspots, etc., an environment in which the smartphone may be connected to a network at all times is becoming more common.
By taking advantage of such an environment, an information processing system, which transmits an application and data to a mobile terminal from an application server, is provided. In the system, the application server distributes an application at a desired timing, the application is executed in the mobile terminal, and the application and data are deleted by the application server after the execution is over. In the information processing system, the application server performs the distribution of an application to the mobile terminal and the deletion of an application, etc. from the mobile terminal. Once an application has been transmitted from the application server to the mobile terminal, the application is executable in the mobile terminal even when the connection between the mobile terminal and the application server is disconnected. When the execution of the application in the mobile terminal is over, the application server deletes the application in the mobile terminal without causing a user to delete the application. Thus, information leakage from the mobile terminal is reduced.
However, when the network connection is disconnected after an application is transmitted from the application server to the mobile terminal, the application server is not allowed to delete the application stored in the mobile terminal, so that the risk of the information leakage is increased when the user has lost the mobile terminal.
In order to give priority to the maintenance of security, the mobile terminal may be configured to immediately delete an application of the mobile terminal in case the network connection is disconnected after the application is transmitted from the application server to the mobile terminal. However, for example, when the network connection is temporarily disconnected, the user undesirably downloads the application from the application server to the mobile terminal again after the network connection is reestablished, so that the user may think it troublesome to download the application.
Japanese Laid-open Patent Publication Nos. 2006-3996 and 2011-23024 are examples of the related art.
Accordingly, it is an object in one aspect of the invention to provide an information processing system that may execute an application while maintaining the security without causing the user to feel difficulty of the execution of the application.
According to an aspect of the invention, a control method of an information processing system that includes a server device that distributes an application and a terminal device that communicates with the server device includes causing the server device to execute a first process including determining an expiration date of the application based on a type of the application, and transmitting the application and the expiration date to the terminal device, and causing the terminal device to execute a second process including receiving the application and the expiration date from the server device, and deleting the application received from the server device based on the expiration date received from the server device.
An information processing system according to an embodiment is described.
The application server 200 registers an application package, and transmits the application package to the mobile terminal 300. The mobile terminal 300 executes the application package transmitted from the application server 200.
The template 102 includes items of business traveler 1020, departure place 1022, destination place 1024, contents 1026, and authorizer 1028. In the mobile terminal 300, the application package 100 is executed and the items of business traveler 1020, etc. are filled in by the user.
The personal data 104 is information input to the items of business traveler 1020, etc. of the template 102. The personal data includes, for example, “Nippon Taro” that is for the item of business traveler 1020, “Musashi-nakahara” that is for the item of departure place 1022, “Tokyo” that is for the item of destination place 1024, “****” that are for the item of contents 1026, and “Manager yy in ** department” that is for the item of authorizer 1028.
The system controller 203 is connected to the CPU 201 and the main memory 202. The system controller 203 controls data transfer between the CPU 201 and the main memory 202 and data transfer between the CPU 201 and the bus 204. In addition, the network controller 207 and the disk controller 212 are connected to the system controller 203 through the bus 204.
The main memory 202 temporarily stores at least a part of a program of an OS and an application program that are executed by the CPU 201. In addition, the main memory 202 stores various pieces of data that are desired for processing by the CPU 201. For example, a random access memory (RAM) is used for the main memory 202.
The hard disk 213 is connected to the disk controller 212. The disk controller 212 controls the hard disk 213. The hard disk 213 stores an application program 2100 that is executed on the main memory 202 by the CPU 201, a control program 2000 that causes the CPU 201 to perform control such as calling of the application program 2100, and an application package and various pieces of data that are transmitted to the mobile terminal 300.
The network controller 207 is connected to the mobile terminal 300 through the network 400 illustrated in
The power source 209 supplies electric power to each of the pieces of hardware in the application server 200 through a power wire (not illustrated).
By such pieces of hardware, a processing function of the application server 200 may be achieved.
The system controller 303 is connected to the CPU 301 and the main memory 302. The system controller 303 controls data transfer between the CPU 301 and the main memory 302 and data transfer between the CPU 301 and the bus 304. In addition, the network controller 307 and the memory controller 312 are connected to the system controller 303 through the bus 304.
The main memory 302 temporarily stores at least a part of a program of an OS and an application program that are executed by the CPU 301. In addition, the main memory 302 stores various pieces of data that are desired for processing by the CPU 301. For example, a RAM is used for the main memory 302.
The flash memory 313 is connected to the memory controller 312. The memory controller 312 controls the flash memory 313. The flash memory 313 stores an application program 3100 that is executed on the main memory 302 by the CPU 301, a control program 3000 that causes the CPU 201 to perform control such as calling of the application program 3100, and various pieces of data. In addition, the flash memory 313 stores an application package, etc. received from the application server 200.
The network controller 307 is connected to the application server 200 through the network 400 illustrated in
The power source 309 supplies electric power to each of the pieces of hardware in the mobile terminal 300 through a power wire (not illustrated).
By such pieces of hardware, a processing function of the application server 300 may be achieved.
The application server 200 includes an application registration unit 222, a personal data extraction unit 224, a lifetime calculation unit 226, a lifetime setting unit 228, a lifetime monitoring unit 230, a timer 232, the hard disk 213, and a communication unit 236. The hard disk 213 stores the application package 100 and a lifetime rule 106.
The application registration unit 222 receives the application package 100, for example, from an external server and registers the received application package 100 to the hard disk 213. The personal data extraction unit 224 extracts personal data from the application package 100 received in the application registration unit 222. In addition, the application registration unit 222 transmits a push message to the mobile terminal 300 through a PUSH GW 240.
The lifetime calculation unit 226 calculates an expiration date of the application package 100 based on the personal data extracted in the personal data extraction unit 224.
The lifetime calculation unit 226 determines an initial value of the expiration date depending on the type of an application package by referring to a type information table 110.
After that, the lifetime calculation unit 226 determines an expiration date of the application package by extracting the number of pieces of personal data from the application package and referring to a personal data table 120.
The lifetime calculation unit 226 calculates an expiration date of the application package by subtracting a subtraction value corresponding to a personal data included in the application package from an initial value of the expiration date of the application package.
The lifetime setting unit 228 sets an expiration date to the application package 100 based on the expiration date calculated by the lifetime calculation unit 226.
The application registration unit 222 stores the application package 100 to which the expiration date is set, in the hard disk 213. The application package 100 stored in the hard disk 213 is deployed to the main memory 202 and executed by the CPU 201. The application registration unit 222 transmits the application package 100 to which a lifetime 108 is set and a lifetime rule that are stored in the hard disk 213, to a communication unit 316 of the mobile terminal 300 through the communication unit 236.
The lifetime setting unit 228 sets a lifetime rule so that the expiration date of the application package 100 is decreased, for example, by Y times the normal when the communication connection between the mobile terminal 300 and the application server 200 is disconnected.
The lifetime setting unit 228 sets an expiration date of the application package stored in the mobile terminal 300 at the expiration date of the application package stored in the application server 200 when the mobile terminal 300 and the application server 200 are reconnected to each other after the communication connection between the mobile terminal 300 and the application server 200 has been disconnected. In addition, the lifetime setting unit 228 deletes, for example, a piece of personal data per Z minutes when an application package is not operated for Z minutes after the application package has been started in the mobile terminal 300. In this case, the lifetime setting unit 228 may delete pieces of personal data in order of importance by weighting the pieces of personal data beforehand.
The lifetime monitoring unit 230 determines whether or not there is the remaining of the expiration date by referring to the expiration date set to the application package 100, based on a value indicated by the timer 232. When there is no remaining of the expiration date of the application package 100, the lifetime monitoring unit 230 reports, to an elimination unit 234, that the expiration date of the application package 100 has become expired. When the elimination unit 234 receives the report from the lifetime monitoring unit 230, the elimination unit 234 deletes the expired application package 100 that is stored in the hard disk 213.
The communication unit 236 transmits the application package 100 and the lifetime rule 106 to the mobile terminal 300.
The mobile terminal 300 includes a communication unit 336, a push reception unit 324, an elimination unit 334, a lifetime monitoring unit 330, a terminal monitoring unit 322, a timer 332, and the flash memory 313.
The push reception unit 324 receives a message from the PUSH GW 240, interrupts the message, and issues an instruction of the execution to a unit that performs the processing.
The communication unit 336 receives the application package 100 to which the expiration date is set and the lifetime rule 106, from the application server 200. The communication unit 316 stores the application package 100 and the lifetime rule 106 that are received from the application server 200 in the flash memory 31.
The terminal monitoring unit 322 monitors the state of the mobile terminal and reports the terminal state to the lifetime monitoring unit 330. The lifetime monitoring unit 330 changes the expiration date that is set to the application package 100, based on the terminal state reported from the terminal monitoring unit 322 by referring to the lifetime rule 106. In addition, the lifetime monitoring unit 330 determines whether or not there is the remaining of the expiration date by referring the expiration date that is set to the application package 100 and changed by the lifetime monitoring unit 330, based on a value indicated by the timer 332. When there is no remaining of the expiration date of the application package 100, the lifetime monitoring unit 330 reports, to the elimination unit 334, that the expiration date of the application package 100 has become expired. When the elimination unit 334 receives the report from the lifetime monitoring unit 330, the elimination unit 334 deletes personal data included in the expired application package 100 stored in the flash memory 313. The elimination unit 334 may delete the application package 100 itself.
In S101, the application registration unit 222 registers the application package 100 to the hard disk 213. In the application registration unit 222, the process proceeds to S102.
In S102, the personal data extraction unit 224 extracts personal data from the application package 100 registered to the hard disk 213. In the personal data extraction unit 224, the process proceeds to S103.
In S103, the lifetime calculation unit 226 calculates an expiration date of the application package 100 based on the extraction process of personal data in S102. In the lifetime calculation unit 226, the process proceeds to S104. The detailed process of the lifetime calculation unit 226 is described with reference to
In S104, the lifetime setting unit 228 sets the expiration date calculated in S103 to the application package 100. In the lifetime setting unit 228, the process proceeds to S105.
In S105, the lifetime setting unit 228 generates a lifetime rule. In the lifetime setting unit 228, the process proceeds to S106.
In S106, the communication unit 236 transmits the application package 100 to which the expiration date is set and the lifetime rule 106 to the mobile terminal 300. In the communication unit 236, the process proceeds to S107. As described with reference to
In S107, the lifetime monitoring unit 230 obtains time information indicated by the timer 232 and monitors the expiration date set to the application package 100. In the lifetime monitoring unit 230, the process proceeds to S108.
In S108, the lifetime monitoring unit 230 determines whether or not the expiration date set to the application package 100 has become expired, based on the obtained time information. When the expiration date set to the application package 100 has become expired, in the lifetime monitoring unit 230, the process proceeds to S109. On the other hand, when the expiration date set to the application package 100 is not expired, in the lifetime monitoring unit 230, the process returns to S107.
In S109, an elimination unit 214 deletes the application package 100 stored in the hard disk 213. In the elimination unit 214, the process ends.
In S1031, the lifetime calculation unit 226 obtains type information of the application package 100 by referring to the application package 100 stored in the hard disk 213. In the lifetime calculation unit 226, the process proceeds to S1032.
In S1032, the lifetime calculation unit 226 obtains an initial value of an expiration date of the application package 100 based on the type information of the application package 100 obtained in S1031 by referring to the type information table 110. In the lifetime calculation unit 226, the process proceeds to S1033.
In S1033, the lifetime calculation unit 226 determines the initial value of the expiration date of the application package 100. The lifetime calculation unit 226 determines the initial value of the expiration date of the application package 100 as “60 minutes” by referring to the type information table 110 because the type of the application package 100 in the embodiment is “business trip request”. In the lifetime calculation unit 226, the process proceeds to S1034.
In S1034, the lifetime calculation unit 226 refers to the personal data table 120. In the lifetime calculation unit 226, the process proceeds to S1035.
In S1035, the lifetime calculation unit 226 obtains a subtraction value. In the embodiment, the application package 100 includes the items of business traveler 1020, departure place 1022, destination place 1024, contents 1026, and authorizer 1028, and the obtains, by referring to the personal data table 120, the subtraction value “3 minutes” corresponding to the item of business traveler 1020, the subtraction value “0 minute” corresponding to the item of departure place 1022, the subtraction value “5 minutes” corresponding to the item of destination place 1024, the subtraction value “10 minutes” corresponding to the item of contents 1026, and the subtraction value “3 minutes” corresponding to the item of authorizer 1028. In addition, the lifetime calculation unit 226 obtains the subtraction value “7 minutes” corresponding to the combination of the items of business traveler 1020 and destination place 1024 because the application package 100 includes the item of “business traveler 1020 and destination place 1024”. In the lifetime calculation unit 226, the process proceeds to S1036.
In S1036, the lifetime calculation unit 226 calculates an expiration date of the application package 100 from the initial value determined in S1033 and the subtraction value obtained in S1035. In the embodiment, the lifetime calculation unit 226 calculates “32 minutes” obtained by subtracting the subtraction value “28 minutes” from the initial value “60 minutes”, as the expiration date of the application package 100. In the lifetime calculation unit 226, the process ends.
In S201, the communication unit 316 receives the application package 100 and the lifetime rule 106 from the application server 200. The communication unit 316 stores the received application package 100 and lifetime rule 106 in the flash memory 313. In the communication unit 316, the process proceeds to S202.
In S202, a terminal monitoring unit 310 obtains the terminal state of the mobile terminal 300. In the terminal monitoring unit 310, the process proceeds to S203.
In S203, the terminal monitoring unit 310 determines whether or not the communication connection between the mobile terminal 300 and the application server 200 has been disconnected, based on the communication state of the communication unit 316. When the communication connection between the mobile terminal 300 and the application server 200 has been disconnected, in the terminal monitoring unit 310, the process proceeds to S204. On the other hand, when the communication connection between the mobile terminal 300 and the application server 200 is not disconnected, in the terminal monitoring unit 310, the process proceeds to S205.
In S204, the terminal monitoring unit 310 determines whether or not the communication connection between the mobile terminal 300 and the application server 200 remains to be disconnected for a certain time period, based on the communication state of the communication unit 316. When the communication connection between the mobile terminal 300 and the application server 200 remains to be disconnected for a certain time period, in the terminal monitoring unit 310, the process proceeds to S206. On the other hand, when the communication connection between the mobile terminal 300 and the application server 200 has been established within a certain time period again, in the terminal monitoring unit 310, the process proceeds to S207.
In S206, the lifetime monitoring unit 330 shortens the expiration date set to the application package 100 by a specific value. In the lifetime monitoring unit 330, the process proceeds to S205. When the communication connection remains to be disconnected for a certain time period, the occurrence of information leakage in the mobile terminal 300 may be reduced by shortening the expiration date set to the application package 100 by a specific value.
In S207, the terminal monitoring unit 310 issues a transmission request of an expiration date of the application package 100 in the application server 200, to the application server 200, through the communication unit 316. In the terminal monitoring unit 310, the process proceeds to S208.
In S208, the terminal monitoring unit 310 receives the expiration date of the application package 100 in the application server 200, from the application server 200 through the communication unit 316. In addition, the lifetime monitoring unit 330 sets the expiration date of the application package 100 in the mobile terminal 300 at the expiration date of the application package 100 in the application server 200. In the lifetime monitoring unit 330, the process proceeds to S205. Even when the communication connection between the mobile terminal 300 and the application server 200 has been disconnected for a certain time period and the expiration date set to the application package 100 in the mobile terminal 300 has been shortened, in a case in which the communication connection is reconnected, the application package 100 in the mobile terminal 300 is allowed to be returned to the normal state by setting the expiration date of the application package 100 in the mobile terminal 300 at the expiration date of the application package 100 in the application server 200.
In S205, the lifetime monitoring unit 330 obtains time information indicated by the timer 332 and monitors the expiration date set to the application package 100. In the lifetime monitoring unit 330, the process proceeds to S209.
In S209, the lifetime monitoring unit 330 determines whether or not the expiration date set to the application package 100 has become expired, based on the obtained time information. When the expiration date set to the application package 100 has become expired, in the lifetime monitoring unit 330, the process proceeds to S210. On the other hand, when the expiration date set to the application package 100 is not expired, in the lifetime monitoring unit 330, the process returns to S202.
In S210, the elimination unit 334 deletes all of the pieces of personal data 104 that are stored in the flash memory 313. In the elimination unit 334, the process ends.
In S301, the communication unit 316 receives the application package 100, the lifetime rule 106, and the personal data 120 from the application server 200. The communication unit 316 stores the received application package 100, lifetime rule 106 and personal data 120, in the flash memory 313. In the communication unit 316, the process proceeds to S302.
In S302, the terminal monitoring unit 310 obtains the terminal state of the mobile terminal 300. In the terminal monitoring unit 310, the process proceeds to S303.
In S303, the terminal monitoring unit 310 determines whether or not the application package 100 remains not to be operated for a certain time period after the application package 100 has been started. When the application package 100 remains not to be operated for a certain time period, in the terminal monitoring unit 310, the process proceeds to S304. On the other hand, when the application package 100 has been operated within a certain time period, in the terminal monitoring unit 310, the process proceeds to S305.
In S304, the terminal monitoring unit 310 refers to the personal data table 120. In the terminal monitoring unit 310, the process proceeds to S306.
In S306, the elimination unit 334 deletes personal data having a maximum subtraction value from the application package 100, based on the personal data table 120. In the terminal monitoring unit 310, the process proceeds to S305. The personal data having a maximum subtraction value is deleted from the application package 100 in order to delete personal data having high importance, thereby reducing the occurrence of information leakage in the mobile terminal 300.
In S305, the lifetime monitoring unit 330 obtains time information indicated by the timer 332 and monitors the expiration date set to the application package 100. In the lifetime monitoring unit 330, the process proceeds to S307.
In S307, the lifetime monitoring unit 330 determines whether or not the expiration date set to the application package 100 has become expired, based on the obtained time information. When the expiration date set to the application package 100 has become expired, in the lifetime monitoring unit 330, the process proceeds to S308. On the other hand, when the expiration date set to the application package 100 is not expired, in the lifetime monitoring unit 330, the process returns to S302.
In S308, the elimination unit 334 deletes all of the pieces of personal data 104 that are stored in the flash memory 313. In the elimination unit 334, the process ends.
As described above, the exemplary information processing system according to the embodiment is described, and the embodiment is not limited to the above-described information processing system and various modifications and changes may be made without departing from the scope of the claims.
For example, the lifetime calculation unit 226 may set a time that elapses before the user leaves a shopping center that is a certain area, at a default value of an expiration date of an application package. In addition, when the user purchase a product in a store, the lifetime setting unit 228 may set a lifetime rule so as to delete an advertisement of another product belonging to the same industry as the product that is purchased by the user.
For example, the lifetime monitoring unit 330 may extend an expiration date of the application package when the balance remains after the user has purchased a product in a store. In addition, the lifetime monitoring unit 330 may extend an expiration date of an application package when the user has purchased products in a plurality of stores in a shopping center in the past. In addition, the lifetime monitoring unit 330 may set an expiration date of the application package at “X minutes” when X minutes is left before the closing time of a store. In addition, the lifetime monitoring unit 330 may delete an advertisement when the balance does not remain after the user has purchased a product in a store.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2012-059637 | Mar 2012 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
6832230 | Zilliacus et al. | Dec 2004 | B1 |
7343297 | Bergler et al. | Mar 2008 | B2 |
20020123336 | Kamada | Sep 2002 | A1 |
20040160911 | Zilliacus et al. | Aug 2004 | A1 |
20040181591 | Yu et al. | Sep 2004 | A1 |
20050083877 | Zilliacus et al. | Apr 2005 | A1 |
20070077925 | Hiyama | Apr 2007 | A1 |
20110125602 | Kamada | May 2011 | A1 |
Number | Date | Country |
---|---|---|
1 130 495 | Sep 2001 | EP |
2006-3996 | Jan 2006 | JP |
2007-34754 | Feb 2007 | JP |
2011-23024 | Feb 2011 | JP |
Entry |
---|
Extended Search Report issued Jun. 21, 2013 in European Application No. 12191972.4. |
Number | Date | Country | |
---|---|---|---|
20130246579 A1 | Sep 2013 | US |