JP4313425B1 - Process execution device, application program, and download server device - Google Patents

Process execution device, application program, and download server device Download PDF

Info

Publication number
JP4313425B1
JP4313425B1 JP2008214384A JP2008214384A JP4313425B1 JP 4313425 B1 JP4313425 B1 JP 4313425B1 JP 2008214384 A JP2008214384 A JP 2008214384A JP 2008214384 A JP2008214384 A JP 2008214384A JP 4313425 B1 JP4313425 B1 JP 4313425B1
Authority
JP
Japan
Prior art keywords
authentication
result
information
communication
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008214384A
Other languages
Japanese (ja)
Other versions
JP2010049568A (en
Inventor
暢啓 木村
雄一 長谷川
Original Assignee
Kpe株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kpe株式会社 filed Critical Kpe株式会社
Priority to JP2008214384A priority Critical patent/JP4313425B1/en
Application granted granted Critical
Publication of JP4313425B1 publication Critical patent/JP4313425B1/en
Publication of JP2010049568A publication Critical patent/JP2010049568A/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

【課題】認証サーバによる認証を必要とするアプリケーションプログラムは、通信エラーのために認証を受けられない場合には、実行することができない。
【解決手段】認証サーバから認証を得るための通信において通信エラーが発生した場合、メモリに記憶された認証結果履歴情報を読出して、認証サーバに認証要求を送信してその結果として認証の成功が返信されたことが有ると判断される場合には、認証処理に成功したものとして処理を実行する。
【選択図】図10
An application program that requires authentication by an authentication server cannot be executed if it cannot be authenticated due to a communication error.
When a communication error occurs in communication for obtaining authentication from an authentication server, authentication result history information stored in a memory is read, an authentication request is transmitted to the authentication server, and as a result, authentication is successful. If it is determined that a reply has been made, the process is executed assuming that the authentication process has been successful.
[Selection] Figure 10

Description

本発明は、サーバより得られる認証を得て処理を実行する処理実行装置、アプリケーションプログラム、アプリケーションプログラムをダウンロード可能に保持するダウンロードサーバに関する。   The present invention relates to a process execution device that executes processing by obtaining authentication obtained from a server, an application program, and a download server that holds an application program in a downloadable manner.

通信技術や計算機の実装技術などの発達に伴い、パーソナルコンピュータのみならず端末装置として携帯電話端末を、インターネットを介してサーバ装置に接続することが可能となってきた。また、端末装置にアプリケーションプログラムをダウンロードして安全に実行するために、仮想マシンが解釈と実行できるマシンコード(仮想マシンコード)で動作が記述されたアプリケーションプログラムを仮想マシンで動作させることが一般的に行われている(例えば、特許文献1参照。)。例えば、携帯電話端末をインターネットなどの通信網を介してウェブサーバに接続し、仮想マシンコードで動作が記述されたゲームなどを行うためのアプリケーションプログラムをそのウェブサーバよりダウンロードし、仮想マシンで動作させ、ゲームを楽しむことができる。   With the development of communication technology and computer mounting technology, it has become possible to connect not only a personal computer but also a mobile phone terminal as a terminal device to a server device via the Internet. Also, in order to download an application program to a terminal device and execute it safely, it is common to run an application program whose operation is described in machine code (virtual machine code) that can be interpreted and executed by the virtual machine in the virtual machine (For example, refer to Patent Document 1). For example, a mobile phone terminal is connected to a web server via a communication network such as the Internet, and an application program for playing a game whose operation is described in a virtual machine code is downloaded from the web server and operated on the virtual machine. Can enjoy the game.

このようなアプリケーションプログラムは、有料にて利用できるものと無料にて利用できるものに分類される。有料の場合には、課金処理を行うために携帯電話端末の識別情報や利用者の識別情報などを会員情報などとして認証サーバに登録を行って利用を行うことが通常である。そして、アプリケーションプログラムの実行の都度あるいは所定の期間の経過(例えば一ヶ月)ごとに会員登録がされているかどうかについて、インターネットなどを介し、認証サーバによる認証を受け、課金処理などと引き替えにアプリケーションプログラムの利用が可能となる。また、無料に利用できるアプリケーションプログラムであっても、一定の期間経過後に有料に移行するためや、パージョンアップの通知などを行うために同様の認証を受ける必要があるものが多い。   Such application programs are classified into those that can be used for a fee and those that can be used for free. In the case of a charge, it is usual to register the mobile phone terminal identification information, user identification information, etc. as member information etc. in the authentication server in order to perform billing processing. Each time the application program is executed or every time a predetermined period (for example, one month), the application program is authenticated by an authentication server via the Internet and exchanged for billing processing. Can be used. Also, even application programs that can be used free of charge often require similar authentication in order to shift to a fee after a certain period of time has passed, or to perform a version upgrade notification.

特開2003−114837号公報JP 2003-114837 A

しかしながら、所定の期間の経過(例えば一ヶ月)ごとに会員登録されているかどうかについて認証サーバによる認証を受ける場合は、携帯電話端末の時計機能を使って、前回認証に成功した日時から例えば一ヶ月を経過したときに再度認証を受ける必要があるが、携帯電話端末の日時が一ヶ月経過しないように利用者が設定し続けると、次の認証を受けずに利用し続けるといった不正が可能となってしまう。   However, when receiving authentication by the authentication server as to whether or not a member is registered every predetermined period (for example, one month), using the clock function of the mobile phone terminal, for example, one month from the date and time when the previous authentication was successful However, if the user keeps setting so that the date and time of the mobile phone terminal does not pass for one month, fraud such as continuing to use without receiving the next authentication becomes possible. End up.

このような不正に対処するため、アプリケーションプログラムの実行の都度認証サーバによる認証を受けさせることが考えられる。しかしながら、この場合は次のような課題がある。すなわち、アプリケーションプログラムの実行の都度、認証サーバによる認証を受ける場合は、通信を行う頻度が増大する。しかし、通信技術が発達した今日であっても、通信回線などのトラブルにより認証サーバとの通信の失敗(通信エラー)を完全に無くすことは困難である。このため、通信エラーにより、上述のようなアプリケーションプログラムを動作させることができないという課題がある。特に携帯電話端末の場合には、建物の中や地下鉄の駅の間などにおいて基地局からの電波が弱かったり電波が届かなかったりする場合には、通信ができないので、上述のようなアプリケーションプログラムを動作できない場合が多々発生するのが実情である。   In order to deal with such a fraud, it is conceivable that the authentication server authenticates each time the application program is executed. However, this case has the following problems. In other words, the frequency of communication increases when authentication by the authentication server is performed each time the application program is executed. However, even today, when communication technology has been developed, it is difficult to completely eliminate a communication failure (communication error) with the authentication server due to a trouble such as a communication line. For this reason, there is a problem that the application program as described above cannot be operated due to a communication error. Especially in the case of mobile phone terminals, communication is not possible if the radio wave from the base station is weak or does not reach inside the building or between subway stations. In reality, there are many cases where operation is not possible.

また、基地局からの電波が受信できないなどにより通信ができないときには認証を受けなくてもアプリケーションプログラムを動作可能とすると、意図的に通信ができない状態が作出されることにより、不正にアプリケーションプログラムが利用されてしまうという課題もある。   In addition, when communication is not possible due to the inability to receive radio waves from the base station, if the application program can be operated without authentication, the application program can be used illegally by creating a state where communication cannot be performed intentionally. There is also a problem of being done.

本発明の一形態として、ネットワークを介して接続された認証サーバへ、成功となるか否かの判定が行われる認証処理の要求を送信する送信部と、認証処理の結果を受信する受信部と、認証サーバでの認証処理が成功か否かの結果によってその後に行う処理を選択する処理選択部と、認証処理の結果の履歴を示す認証結果履歴情報を記憶する記憶部と、認証要求の送信と認証処理の結果の受信とを行う際の通信エラーの発生の有無を検出するエラー検出部と、エラー検出部による通信エラーの検出に応じて、あるいはエラー検出部による通信エラーが検出されなかった場合には受信された認証処理の結果に応じて、認証結果履歴情報を更新する認証結果履歴更新部と、通信エラーが発生したことが検出され、かつ認証結果履歴情報に認証処理に成功したことがあることを示す情報が含まれている場合には、認証処理の結果を成功とみなした処理を行う認証制御部と、を有することを特徴とする処理実行装置を提供する。   As one aspect of the present invention, a transmitting unit that transmits a request for authentication processing to determine whether or not to succeed to an authentication server connected via a network, and a receiving unit that receives a result of the authentication processing A process selection unit that selects a process to be performed later depending on whether the authentication process at the authentication server is successful, a storage unit that stores authentication result history information indicating a history of the result of the authentication process, and transmission of an authentication request Error detection unit that detects whether or not a communication error has occurred when receiving the result of authentication processing, and in response to detection of a communication error by the error detection unit, or no communication error was detected by the error detection unit In this case, an authentication result history update unit that updates the authentication result history information according to the received authentication processing result, and that a communication error has been detected, and authentication processing is performed on the authentication result history information. If it contains any information indicating that sometimes successful provides a processing execution apparatus, comprising an authentication control unit that performs a process it was considered successful result of the authentication process.

この処理実行装置によれば、認証サーバとの通信時にエラーが生じ、通信ができないために、実際に認証処理を受けることができなくても、過去の認証処理に成功したことが有れば、認証処理に成功したものと判断されるので、通常の処理を行うことができる。また、過去の認証処理の範囲を、例えば前回の認証処理に限定などすることにより、通信ができない状況が意図的に作出されても不正に処理実行装置が利用されることを防ぐことができる。   According to this process execution device, if an error occurs during communication with the authentication server and communication cannot be performed, even if the authentication process cannot actually be received, the past authentication process has been successful. Since it is determined that the authentication processing is successful, normal processing can be performed. Further, by limiting the range of past authentication processing to, for example, the previous authentication processing, it is possible to prevent the processing execution device from being used illegally even if a situation where communication is impossible is intentionally created.

また、本発明の別の形態として、ネットワークを介して接続された認証サーバへ、認証が成功となるか否かの判定が行われる認証処理の要求を送信し、認証処理の結果を受信し、認証サーバでの認証処理が成功か否かの結果によってその後に行う処理を選択することを計算機に行わせるためのアプリケーションプログラムであって、認証処理の結果の履歴を示す認証結果履歴情報を記憶し、認証要求の送信と認証処理の結果の受信とを行う際の通信エラーの発生の有無を検出し、通信エラーの検出に応じて、あるいは通信エラーの検出がされなかった場合には受信された認証処理の結果に応じて認証結果履歴情報を更新し、通信エラーが発生したことが検出され、かつ認証結果履歴情報に認証処理に成功したことがあることを示す情報が含まれている場合には、認証処理の結果を成功とみなした処理を行うことを計算機に実行させるためのアプリケーションプログラムを提供する。   Further, as another embodiment of the present invention, an authentication process request for determining whether or not the authentication is successful is transmitted to an authentication server connected via a network, and the result of the authentication process is received. An application program for causing a computer to select a process to be performed later depending on whether or not the authentication process in the authentication server is successful, and stores authentication result history information indicating a history of the result of the authentication process Detected whether or not a communication error occurred when sending an authentication request and receiving the result of the authentication process, and was received in response to the detection of a communication error or if no communication error was detected The authentication result history information is updated according to the result of the authentication process, and it is detected that a communication error has occurred, and the authentication result history information includes information indicating that the authentication process has been successful. If it is provides an application program for executing the performing the process was considered successful authentication processing result to the computer.

このアプリケーションプログラムを計算機で実行する際に、認証サーバとの通信時にエラーが生じ、通信ができないために、実際に認証処理を受けることができなくても、過去の認証処理に成功したことが有れば、認証処理に成功したものと判断されるので、通常の処理を行うことができる。また、過去の認証処理の範囲を、例えば前回の認証処理に限定などすることにより、通信ができない状況が意図的に作出されても不正にアプリケーションプログラムが利用されることを防ぐことができる。   When this application program is executed on a computer, an error occurs during communication with the authentication server, and communication cannot be performed. Since it is determined that the authentication process is successful, normal processing can be performed. Further, by limiting the range of past authentication processing to, for example, the previous authentication processing, it is possible to prevent an application program from being used illegally even if a situation where communication is impossible is intentionally created.

また、本発明の別の形態として、ネットワークを介して接続された認証サーバへ、認証が成功となるか否かの判定が行われる認証処理の要求を送信し、認証処理の結果を受信し、認証サーバでの認証処理が成功か否かの結果によってその後に行う処理を選択することを計算機に行わせるためのアプリケーションプログラムであって、認証処理の結果の履歴を示す認証結果履歴情報を記憶し、認証要求の送信と認証処理の結果の受信とを行う際の通信エラーの発生の有無を検出し、通信エラーの検出に応じて、あるいは通信エラーの検出がされなかった場合には受信された認証処理の結果に応じて認証結果履歴情報を更新し、通信エラーが発生したことが検出され、かつ認証結果履歴情報に認証処理に成功したことがあることを示す情報が含まれている場合には、認証処理の結果を成功とみなした処理を行うことを計算機に実行させるためのアプリケーションプログラム、を携帯端末へダウンロード可能に記憶する記憶部を有するダウンロードサーバ装置を提供する。   Further, as another embodiment of the present invention, an authentication process request for determining whether or not the authentication is successful is transmitted to an authentication server connected via a network, and the result of the authentication process is received. An application program for causing a computer to select a process to be performed later depending on whether or not the authentication process in the authentication server is successful, and stores authentication result history information indicating a history of the result of the authentication process Detected whether or not a communication error occurred when sending an authentication request and receiving the result of the authentication process, and was received in response to the detection of a communication error or if no communication error was detected The authentication result history information is updated according to the result of the authentication process, and it is detected that a communication error has occurred, and the authentication result history information includes information indicating that the authentication process has been successful. If it is provides a download server apparatus having a storage unit that can store downloaded application program, the to the mobile terminal for executing that performs processing was considered successful authentication processing result to the computer.

このダウンロードサーバ装置によれば、認証サーバとの通信時にエラーが生じ、通信ができないために、実際に認証処理を受けることができなくても、過去の認証処理に成功したことが有れば、認証処理に成功したものと判断されるアプリケーションプログラムを携帯端末などの端末装置にダウンロードすることができる。   According to this download server device, an error occurs during communication with the authentication server, and communication cannot be performed. An application program that is determined to have been successfully authenticated can be downloaded to a terminal device such as a portable terminal.

本発明によれば、認証サーバとの通信時にエラーが生じ、通信ができないために、実際に認証処理を受けることができなくても、過去の認証処理が成功したことが有れば、認証処理に成功したものと判断されるので、通常の処理を行うことができる。また、過去の認証処理の範囲を、例えば前回の認証処理に限定などすることにより、通信ができない状況が意図的に作出されても不正に処理実行装置、アプリケーションプログラムなどを利用されることを防ぐことができる。   According to the present invention, since an error occurs during communication with the authentication server and communication cannot be performed, the authentication process can be performed if the past authentication process has succeeded even if the authentication process cannot be actually received. Therefore, normal processing can be performed. In addition, by limiting the range of past authentication processing to, for example, the previous authentication processing, even if a situation where communication is impossible is intentionally created, it is possible to prevent unauthorized use of a processing execution device, application program, etc. be able to.

以下、本発明を実施するための最良の形態について、図面を参照しながら幾つかの実施形態に分けて説明を行う。なお、本発明は、これらの説明によって何ら限定されるものではなく、その要旨を逸脱しない範囲において、種々の態様で実施することができる。   Hereinafter, the best mode for carrying out the present invention will be described in several embodiments with reference to the drawings. In addition, this invention is not limited at all by these description, In the range which does not deviate from the summary, it can implement in a various aspect.

(本発明の概要)
図1は、本発明の概要を示す図である。すなわち、本発明の一実施形態に係るシステムの構成と、そのシステムの構成要素の一例である端末装置での操作の流れを説明する図である。
(Outline of the present invention)
FIG. 1 is a diagram showing an outline of the present invention. That is, it is a figure explaining the structure of the system which concerns on one Embodiment of this invention, and the flow of operation in the terminal device which is an example of the component of the system.

図1(a)〜(d)において、本発明の一実施形態に係るシステム100は、第1の通信網101に接続された基地局102と通信が可能な端末装置103と、第1の通信網101とゲートウェイ(GW)105を介して接続される第2の通信網106に接続されたダウンロードサーバ107と、認証サーバ110とを備える。なお、ダウンロードサーバ107と認証サーバ110とは一体となったサーバ装置により実現されていてもよい。また、第1の通信網101と第2の通信網106とが同一であってもよく、GW105は明示的に特定されなくてもよい。また、端末装置103は、図1では携帯可能な端末の一種である携帯電話として説明されるが、通信機能を有する任意の電子装置(例えばパーソナルコンピュータ、家電製品など)を用いることができ、通信機能は無線、有線を問わない。   1A to 1D, a system 100 according to an embodiment of the present invention includes a terminal device 103 capable of communicating with a base station 102 connected to a first communication network 101, and a first communication. A download server 107 connected to a second communication network 106 connected to the network 101 via a gateway (GW) 105 and an authentication server 110 are provided. Note that the download server 107 and the authentication server 110 may be realized by an integrated server device. Further, the first communication network 101 and the second communication network 106 may be the same, and the GW 105 may not be explicitly specified. Further, although the terminal device 103 is described as a mobile phone which is a kind of portable terminal in FIG. 1, any electronic device having a communication function (for example, a personal computer, a household appliance, etc.) can be used for communication. The function can be wireless or wired.

第1の通信網101は、例えば、携帯電話会社(キャリア)の運営する通信網である。基地局102は第1の通信網に接続され、無線通信によって端末装置103と通信が可能である。あるいは第1の通信網101は、インターネットサービスプロバイダ(ISP)がその契約者に通信サービスを提供したり、一般企業や大学などの組織がその構成員の便益などのために運営したりするための通信網であってもよく、その場合には、基地局はアクセスポイントと言い換えることができる。以下、説明の便宜上、基地局と携帯端末を用いて説明を行うが、本発明は、無線通信を行う基地局と携帯端末とを用いる場合に限定されることはない。   The first communication network 101 is, for example, a communication network operated by a mobile phone company (carrier). The base station 102 is connected to the first communication network, and can communicate with the terminal device 103 by wireless communication. Alternatively, the first communication network 101 is for an Internet service provider (ISP) to provide a communication service to its contractor, or for an organization such as a general company or a university to operate for the benefit of its members. In this case, the base station can be rephrased as an access point. Hereinafter, for convenience of explanation, description will be made using a base station and a mobile terminal, but the present invention is not limited to the case where a base station and a mobile terminal that perform wireless communication are used.

第2の通信網106は、インターネットなどの広域の通信網であることが主に想定される。もちろん、インターネットのようなオープンなネットワークである必要はなく、クローズドなネットワークであってもよい。また、GW105は、第1の通信網101と第2の通信網106との通信を中継するルータなどによって構成される。   The second communication network 106 is mainly assumed to be a wide-area communication network such as the Internet. Of course, the network need not be an open network such as the Internet, and may be a closed network. The GW 105 includes a router that relays communication between the first communication network 101 and the second communication network 106.

ダウンロードサーバ107は、その記憶部108にアプリケーションプログラム(以下では「アプリケーション」や「アプリ」と略記する場合がある)109を、端末装置103にダウンロード可能に記憶している。アプリケーション109は、端末装置103のマシン(ネイティブ)コードや、端末装置103で動作可能な仮想マシンのマシンコードで記述されたプログラムであり、実行可能なものである。あるいは、再生可能な音楽データ、映像データなどのコンテンツデータであってもよい。コンテンツデータである場合には、その再生プログラムが仮想マシンに相当する。ダウンロード可能とは、ダウンロードサーバ107が、端末装置103よりダウンロード要求の情報を受信した場合に、その返信としてアプリケーション109を端末装置103へ所定のプロトコルで返信し、携帯端末がアプリケーション109を実行や再生など(以下、「利用」という。)をすることが可能な状態で格納することができることをいう。   The download server 107 stores an application program (hereinafter sometimes abbreviated as “application” or “application”) 109 in the storage unit 108 so that it can be downloaded to the terminal device 103. The application 109 is a program described in machine (native) code of the terminal device 103 or a machine code of a virtual machine operable on the terminal device 103, and can be executed. Alternatively, it may be content data such as reproducible music data or video data. In the case of content data, the reproduction program corresponds to a virtual machine. When the download server 107 receives download request information from the terminal device 103, the download server 107 returns the application 109 to the terminal device 103 as a reply, and the mobile terminal executes or reproduces the application 109. (Hereinafter referred to as “use”).

認証サーバ110は、データベース(DB)111を有する。システム100においては、ダウンロードサーバ107から端末装置103にダウンロードされたアプリケーションを端末装置103で実行するには、認証サーバ110による認証を受ける必要があるものとする。この認証の対象は、端末装置103または端末装置103の利用者が想定される。そして、この認証のための情報(「認証情報」と略記する)は、DB111に登録される。認証情報には、端末装置103を識別するための端末シリアル番号(あるいは、個体識別情報、サブスクライバIDなどとも称される場合がある)が含まれる。あるいは、端末装置103の利用者を識別するための利用者識別情報が含まれるようになっていてもよい。さらにパスワードが組み合わされていてもよい。また、端末装置103の耐タンパ領域などにセキュアな状態で格納された秘密鍵と対をなす公開鍵やPKI(Public Key Infrastructure)などにおける公開鍵証明書であってもよい。   The authentication server 110 has a database (DB) 111. In the system 100, it is assumed that the application downloaded from the download server 107 to the terminal device 103 needs to be authenticated by the authentication server 110 in order to be executed by the terminal device 103. This authentication target is assumed to be the terminal device 103 or the user of the terminal device 103. Information for this authentication (abbreviated as “authentication information”) is registered in the DB 111. The authentication information includes a terminal serial number for identifying the terminal device 103 (or may be referred to as individual identification information or a subscriber ID). Alternatively, user identification information for identifying the user of the terminal device 103 may be included. Further, a password may be combined. Further, it may be a public key paired with a secret key stored in a secure state in a tamper-resistant area of the terminal device 103 or a public key certificate in PKI (Public Key Infrastructure).

また、認証情報は、端末装置103に記憶がされてから認証サーバ110に送信されるのではなく、クッキー情報などのように認証サーバ110によって生成され、DB111に登録されるとともに、端末装置103へ送信され、端末装置103に記憶されるものであってもよい。   In addition, the authentication information is not stored in the terminal device 103 and then transmitted to the authentication server 110, but is generated by the authentication server 110 like cookie information, registered in the DB 111, and sent to the terminal device 103. It may be transmitted and stored in the terminal device 103.

認証サーバ110による認証処理は、端末装置103でのアプリケーション109の利用を開始するときや、利用の途中で行われる。また、その認証処理は、利用を行う都度行う。あるいは、その認証処理は、利用の回数が所定の回数に達する都度、前回の認証処理からの所定の時間が経過しているときや、所定の期日や時間が経過したときなど、任意のタイミングで任意の回数、行われるようになっていてもよい。   Authentication processing by the authentication server 110 is performed when the use of the application 109 in the terminal device 103 is started or during the use. In addition, the authentication process is performed every time use is performed. Alternatively, the authentication process is performed at an arbitrary timing, such as when a predetermined time has elapsed since the previous authentication process, or when a predetermined date or time has elapsed each time the number of uses reaches a predetermined number. It may be performed any number of times.

認証サーバ110のDB111への認証情報の登録は、端末装置103においてブラウザなどを動作させ、認証サーバ110との通信により行うことが主に想定される。他の端末装置103からの通信により登録が行われてもよい。認証情報の登録は、ダウンロードサーバ107からアプリケーション109を端末装置103へダウンロードする前に行われてもよい。あるいは、認証情報の登録は、端末装置103にダウンロードしたアプリケーション109を初めて起動する際に、アプリケーション109と認証サーバ110との通信が行われて、DB111に認証情報が登録されていないことが検出された際に行われるようになっていてもよい。   Registration of authentication information in the DB 111 of the authentication server 110 is mainly assumed to be performed by operating a browser or the like in the terminal device 103 and communicating with the authentication server 110. Registration may be performed by communication from another terminal device 103. Registration of authentication information may be performed before the application 109 is downloaded from the download server 107 to the terminal device 103. Alternatively, the authentication information is registered when the application 109 downloaded to the terminal device 103 is activated for the first time, the communication between the application 109 and the authentication server 110 is performed, and it is detected that the authentication information is not registered in the DB 111. It may be done at the time.

図1(a)は、端末装置103においてブラウザなどを用いてダウンロードサーバ107に対してURLなどを用いてアプリケーション109を指定し、ダウンロード要求を送信し、アプリケーション109が端末装置103の不揮発性記憶領域(例えば、フラッシュメモリ)に記憶された状況を示す。図1(a)では、端末装置103がダウンロードサーバ107よりアプリケーション109をダウンロードのために受信している間には、その旨の表示が表示部104に表示されている。また、この表示は、図14(a)に例示されるものであってもよい。ダウンロードが終了すると、端末装置103にダウンロードされて記憶されたアプリケーション109は、端末装置103のアプリケーションマネージャなどの支配下に配置するようになっていてもよい。アプリケーションマネージャとは、アプリケーションの起動や終了などの操作を行うプログラムの一種である。アプリケーションマネージャの支配下にアプリケーションを配置するとは、アプリケーションマネージャのアクセスできる記憶領域に、アプリケーション109のパスが記憶されることをいう。アプリケーション109のパスとは、端末装置103の不揮発性記憶領域を用いて実現されるファイルシステムにおけるアプリケーション109を格納するファイルやディレクトリの位置をいう。   FIG. 1A illustrates a non-volatile storage area of the terminal device 103 by designating the application 109 using a URL or the like to the download server 107 using a browser or the like in the terminal device 103 and transmitting a download request. The status stored in (for example, flash memory) is shown. In FIG. 1A, while the terminal device 103 receives the application 109 from the download server 107 for downloading, a display to that effect is displayed on the display unit 104. Further, this display may be as illustrated in FIG. When the download is completed, the application 109 downloaded and stored in the terminal device 103 may be arranged under the control of the application manager of the terminal device 103 or the like. An application manager is a type of program that performs operations such as starting and ending an application. Arranging an application under the control of the application manager means that the path of the application 109 is stored in a storage area accessible by the application manager. The path of the application 109 refers to the location of a file or directory that stores the application 109 in a file system that is realized using the nonvolatile storage area of the terminal device 103.

なお、アプリケーション109をダウンロードサーバ107よりダウンロードすることは、端末装置103にアプリケーション109を導入する一つの方法である。他の方法としては、例えば、パーソナルコンピュータなどを用いてメモリカードにアプリケーション109に書き込み、そのメモリカードを端末装置103に装着して、メモリカードよりアプリケーション109を読出してもよい。また、USB(Universal Serial Bus)のケーブルを用いて端末装置103をパーソナルコンピュータに接続して、パーソナルコンピュータよりアプリケーション109をUSBのケーブルを介して受信するようになっていてもよい。あるいは、アプリケーション109は、端末装置103の外部から導入されることは必須ではない。アプリケーション109は、工場での製造時や出荷時にすでに導入された状態になっていてもよく、端末装置103の利用者がダウンロードなどの特別な操作を行わなくても起動可能となっていてもよい。   Note that downloading the application 109 from the download server 107 is one method for introducing the application 109 into the terminal device 103. As another method, for example, the application 109 may be written to a memory card using a personal computer or the like, the memory card is attached to the terminal device 103, and the application 109 is read from the memory card. Alternatively, the terminal device 103 may be connected to a personal computer using a USB (Universal Serial Bus) cable, and the application 109 may be received from the personal computer via the USB cable. Alternatively, the application 109 is not necessarily introduced from the outside of the terminal device 103. The application 109 may be already installed at the time of manufacture in the factory or at the time of shipment, and may be activated without a special operation such as downloading by the user of the terminal device 103. .

図1(b)は、端末装置103においてアプリケーションマネージャなどを用いてアプリケーション109を起動し、その実行を開始した状況を示す。   FIG. 1B shows a situation in which the application 109 is activated in the terminal device 103 using an application manager or the like and its execution is started.

図1(c)は、図1(b)において、アプリケーション109が、認証情報を認証サーバ110のDB111に登録した状況あるいは、認証情報が認証サーバ110のDB111に登録されていることが確認された状況を示す。端末装置103の不揮発性記憶領域には、アプリケーションごとに固有の情報を記憶する領域(例えば、スクラッチパッドなどと称される場合がある)が割り当てられるようになっており、アプリケーション109は、起動する都度その領域に記憶されたデータを読出し、認証情報が認証サーバ110のDB111に登録されているかどうかを判断する。あるいは、クッキー情報が通常格納されているように、共通にアクセスができる記憶領域に記憶されたデータを読出し、認証サーバ110から送信されたクッキー情報などが登録されているかどうかによって、認証情報が認証サーバ110のDB111に登録されているかどうかを判断する。   FIG. 1C shows the situation in which the application 109 registers the authentication information in the DB 111 of the authentication server 110 or that the authentication information is registered in the DB 111 of the authentication server 110 in FIG. Indicates the situation. A non-volatile storage area of the terminal device 103 is assigned an area for storing unique information for each application (for example, sometimes referred to as a scratchpad), and the application 109 is activated. Each time the data stored in the area is read, it is determined whether the authentication information is registered in the DB 111 of the authentication server 110. Alternatively, the authentication information is authenticated depending on whether or not the cookie information transmitted from the authentication server 110 is registered by reading the data stored in the storage area that can be accessed in common as the cookie information is normally stored. It is determined whether it is registered in the DB 111 of the server 110.

すなわち、認証情報が認証サーバ110のDB111に登録されていることが確認される。この確認がされると、図1(d)を参照して後に説明するように、携帯端末103からの認証要求に応じて、成功か否かの結果が返信される認証処理が認証サーバ110にて実行される状態にすることができる。そして、携帯端末103は、認証情報が認証サーバ110に登録されている場合には、認証サーバ110に対して認証要求を送信し、その返信により認証処理に成功したものか否かによってその後に行う処理を選択する。   That is, it is confirmed that the authentication information is registered in the DB 111 of the authentication server 110. When this confirmation is made, as will be described later with reference to FIG. 1D, an authentication process in which a result of success or failure is returned in response to the authentication request from the mobile terminal 103 is sent to the authentication server 110. Can be executed. When the authentication information is registered in the authentication server 110, the mobile terminal 103 transmits an authentication request to the authentication server 110, and thereafter performs the authentication depending on whether or not the authentication process is successful. Select a process.

もし、アプリケーション109が、認証情報が認証サーバ110のDB111に登録されていないと判断すれば、認証サーバ110と通信を行い、認証情報を認証サーバ110のDB111に登録する処理を行う。このとき、アプリケーション109は、端末装置103の記憶領域から端末シリアル番号を読出したり、表示部104に表示を行い、利用者に利用者識別情報などの入力を促したりする。そして、認証サーバ110と通信を行い、DB111に認証情報112が登録された旨の返信、あるいは、既に認証情報が登録されている旨の返信が得られれば、アプリケーション109の固有の情報を記憶する領域などに、認証情報が登録されている旨を表すデータを記憶する。その後、アプリケーション109は、通常の動作を行う。なお、認証情報の登録がされているかどうかの確認は、アプリケーション109の起動直後に行われる必要はなく、任意の時点において行うことができる。   If the application 109 determines that the authentication information is not registered in the DB 111 of the authentication server 110, the application 109 communicates with the authentication server 110 and performs processing for registering the authentication information in the DB 111 of the authentication server 110. At this time, the application 109 reads the terminal serial number from the storage area of the terminal device 103 or displays it on the display unit 104 to prompt the user to input user identification information. Then, communication with the authentication server 110 is performed, and if a reply indicating that the authentication information 112 is registered in the DB 111 or a reply indicating that the authentication information is already registered is obtained, information unique to the application 109 is stored. Data indicating that the authentication information is registered is stored in an area or the like. Thereafter, the application 109 performs a normal operation. Note that whether or not the authentication information has been registered does not need to be performed immediately after the application 109 is activated, and can be performed at an arbitrary time.

図1(d)は、アプリケーション109が、アプリケーション109の固有の情報を記憶する領域などに記憶されたデータを読出し、認証情報が認証サーバ110のDB111に登録されていると判断した場合に、認証サーバ110に認証要求を送信して認証処理の実行を求めている状況を示す。例えば、アプリケーション109は、端末シリアル番号を読出し、認証サーバ110に認証要求とともに送信を行う。認証サーバ110は、DB111に対して検索を行い、その端末シリアル番号が登録されているかどうかを返信する。登録されていれば、認証処理の結果は成功となり、登録されていなければ、認証処理の結果は失敗となり、成功あるいは失敗の旨が返信される。アプリケーション109は、端末シリアル番号がDB111に登録されている旨の返信が得られれば、認証が受けられたとして、その後の処理を継続する。もし、端末シリアル番号がDB111に登録されていない旨の返信が得られれば、認証が受けられなかったとして、認証処理を求める前に行っていた処理を中断したり、アプリケーション109の実行そのものを終了したり、認証失敗用の処理を実行したりする。   FIG. 1D shows the case where the application 109 reads data stored in an area for storing information unique to the application 109 and determines that the authentication information is registered in the DB 111 of the authentication server 110. A situation in which an authentication request is transmitted to the server 110 to request execution of authentication processing is shown. For example, the application 109 reads the terminal serial number and transmits it to the authentication server 110 together with an authentication request. The authentication server 110 searches the DB 111 and returns whether or not the terminal serial number is registered. If registered, the result of the authentication process is successful, and if not registered, the result of the authentication process is failed, and a success or failure is returned. If a reply indicating that the terminal serial number is registered in the DB 111 is obtained, the application 109 assumes that authentication has been received and continues the subsequent processing. If a reply indicating that the terminal serial number is not registered in the DB 111 is obtained, it is assumed that the authentication has not been received, and the processing performed before the authentication processing is requested is interrupted or the execution of the application 109 is terminated. Or perform processing for authentication failure.

なお、認証情報として、端末装置103の公開鍵や公開鍵証明書が認証サーバ110のDB111に登録されているのであれば、チャレンジアンドレスポンス型の認証処理を行うことができる。その一例としては、認証サーバ110は乱数などを発生させて端末装置103に送信し、端末装置103は受信した乱数などをその秘密鍵で暗号化して認証サーバ110へ送信し、認証サーバ110はDB111に登録されている公開鍵や公開鍵証明書によって復号を行い、最初の乱数などが得られるかどうかで認証処理を行い、その結果を返す。以下では、主に端末装置103から送信された情報が認証サーバ110のDB111に登録されているかどうかによって、認証サーバ110が認証処理の結果の判定を行うとして説明するが、上述のようなチャレンジアンドレスポンス型の認証処理を用いることは、本願発明の技術的範囲から除外されない。   If the public key or public key certificate of the terminal device 103 is registered as the authentication information in the DB 111 of the authentication server 110, challenge-and-response type authentication processing can be performed. As an example, the authentication server 110 generates a random number or the like and transmits it to the terminal device 103. The terminal device 103 encrypts the received random number or the like with the secret key and transmits it to the authentication server 110. It decrypts with the public key and public key certificate registered in, performs the authentication process based on whether or not the first random number is obtained, and returns the result. In the following description, it is assumed that the authentication server 110 determines the result of the authentication process based on whether or not information transmitted from the terminal device 103 is registered in the DB 111 of the authentication server 110. The use of response type authentication processing is not excluded from the technical scope of the present invention.

図2は、端末装置103、ダウンロードサーバ107、認証サーバ110との三者の通信の過程を説明するシーケンス図である。ステップS201においては、端末装置103からダウンロードサーバ107に対して、アプリケーションのダウンロード要求が送信される。ステップS202においては、ダウンロード要求に応じて、アプリケーション109がダウンロードサーバ107から端末装置103に返信される。その後、端末装置103では、アプリケーション109に対して必要に応じて解凍処理などを施し、不揮発性記憶領域に記憶し、そして、アプリケーションマネージャなどの支配下に配置する。上述したように、ステップS201とステップS202によりダウンロードサーバ107との通信は必須なものではなく、パーソナルコンピュータから受信され、アプリケーションマネージャなどの支配下に配置されていたり、あるいは端末装置103の出荷時に既に導入され、アプリケーションマネージャなどの支配下に配置されていたりしてもよい。   FIG. 2 is a sequence diagram illustrating a process of communication between the terminal device 103, the download server 107, and the authentication server 110. In step S <b> 201, an application download request is transmitted from the terminal device 103 to the download server 107. In step S202, the application 109 is returned from the download server 107 to the terminal device 103 in response to the download request. Thereafter, the terminal device 103 performs decompression processing or the like on the application 109 as necessary, stores it in the nonvolatile storage area, and arranges it under the control of the application manager or the like. As described above, communication with the download server 107 is not indispensable in steps S201 and S202, and is received from a personal computer and placed under the control of an application manager or the like, or has already been shipped when the terminal device 103 is shipped. It may be installed and placed under the control of an application manager or the like.

その後、端末装置103においてアプリケーション109を起動し、実行を開始する。その際、アプリケーション109は、認証情報が認証サーバ110のDB111に登録されているかどうかを、アプリケーション109固有の記憶領域などのデータを読出して判断する。その判断に応じて、ステップS203において、認証情報が認証サーバ110のDB111に登録されていることが確認できなければ、認証サーバ110に認証情報を登録する要求である認証登録要求を送信し、認証情報が認証サーバ110のDB111に登録されていることが確認されれば、認証サーバ110に認証処理を行うよう認証要求を送信する。そして、ステップS204においては、認証登録要求や認証要求の結果を受信する。そして、その結果に応じて、その後の処理を選択したり、中断、停止、終了を選択したりする。もちろん、認証登録要求や認証要求は、アプリケーション109の起動の都度、毎回送信される必要はない。なお、以下では、認証処理とは主に認証サーバ110で行われる処理を意味し、単に認証と記した場合には主に端末装置103で行われる処理を意味する。   Then, the application 109 is started in the terminal device 103 and execution is started. At that time, the application 109 determines whether the authentication information is registered in the DB 111 of the authentication server 110 by reading data such as a storage area unique to the application 109. In response to the determination, if it is not confirmed in step S203 that the authentication information is registered in the DB 111 of the authentication server 110, an authentication registration request, which is a request for registering the authentication information, is transmitted to the authentication server 110, and authentication is performed. If it is confirmed that the information is registered in the DB 111 of the authentication server 110, an authentication request is transmitted to the authentication server 110 to perform authentication processing. In step S204, an authentication registration request or an authentication request result is received. Then, depending on the result, the subsequent processing is selected, or interruption, stop, or termination is selected. Of course, the authentication registration request and the authentication request do not need to be transmitted every time the application 109 is activated. In the following, the authentication process means a process mainly performed by the authentication server 110, and if simply described as authentication, it means a process mainly performed by the terminal device 103.

ここで、アプリケーション109と認証サーバ110との通信がエラーとなり、認証要求に対する返信を得ることができない場合がある。例えば、端末装置103の通信機能が故障している場合、端末装置103と基地局102との通信ができない場合、第1の通信網101、GW105もしくは第2の通信網106に障害が発生している場合または認証サーバ110に障害が発生している場合などには、認証要求に対する返信を得ることができない。このような場合には、アプリケーション109の内部では、認証サーバ110と通信のためのコネクションを確立する際のエラー、認証サーバ110に端末シリアル番号を送信する際のエラー、認証サーバ110より返信が所定の時間内に得られないことによるタイムアウト、返信を受信する際のエラー、受信したデータが所定の形式でないことによるエラーなどが発生して、通信のエラーとして検出がされる。具体的には、通信を行うためのシステムコールやそれらのシステムコールを用いたライブラリ関数などの戻り値の異常や、例外が発生し、通信のエラーとして検出される。   Here, there is a case where communication between the application 109 and the authentication server 110 becomes an error and a reply to the authentication request cannot be obtained. For example, when the communication function of the terminal device 103 is broken, when communication between the terminal device 103 and the base station 102 is not possible, a failure occurs in the first communication network 101, the GW 105, or the second communication network 106. If there is a failure in the authentication server 110, a reply to the authentication request cannot be obtained. In such a case, within the application 109, an error when establishing a connection for communication with the authentication server 110, an error when transmitting a terminal serial number to the authentication server 110, and a reply from the authentication server 110 are predetermined. Timeout due to not being obtained within this time, error when receiving a reply, error due to the received data not being in a predetermined format, and the like occur, and are detected as communication errors. Specifically, a system call for communication, a return value abnormality such as a library function using these system calls, or an exception occurs and is detected as a communication error.

本発明の特徴の一つは、通信のエラーが発生した場合であっても、所定の範囲での過去において行われた認証処理の中に成功したものがあれば返信された認証の結果が成功したものとみなしてアプリケーション109の動作を継続可能とする点である。   One of the features of the present invention is that even if a communication error occurs, if there is a successful authentication process performed in the past within a predetermined range, the returned authentication result is successful. In other words, the operation of the application 109 can be continued.

(実施形態1)
(端末装置の構成)
図3は、処理実行装置を実現する端末装置のハードウェア構成を示す機能ブロック図である。端末装置300は、バス307によって接続されたCPU(Central Processing Unit)301と、RAM(Random Access Memory)302と、不揮発性記憶部303と、通信I/F(Interface)304と、操作部305と、表示部306とを有する。
(Embodiment 1)
(Configuration of terminal device)
FIG. 3 is a functional block diagram illustrating a hardware configuration of a terminal device that implements the processing execution device. The terminal device 300 includes a CPU (Central Processing Unit) 301, a RAM (Random Access Memory) 302, a nonvolatile storage unit 303, a communication I / F (Interface) 304, and an operation unit 305, which are connected by a bus 307. And a display unit 306.

CPU301は、マシンコードを実行し、プログラムを実行する回路である。また、通信I/F304、操作部305、表示部306などが発生する割り込み信号を取得して割り込み信号に応じた処理を行う。RAM302は、DRAM(Dynamic Random Access Memory)などにより構成されるメモリであり、CPU301が実行するプログラムを記憶する。また、そのプログラムが参照するデータを記憶することが可能である。不揮発性記憶部303は、携帯端末300の電源を切断しても、記憶された情報を保持可能な記憶部である。例えば、ROM(Read Only Memory)などの読み出し専用の記憶素子や、フラッシュメモリなどの書き換えが可能な記憶素子などにより構成される。通信I/F304は、携帯端末300が外部と通信を行うためのインターフェースである。通信方式に応じたネットワークアダプタなどを含む。操作部305は、携帯端末の利用者によるボタンなどの操作を検出し、その操作を示す情報を生成する部である。例えば、どのボタンが押下されたか、タッチパネルの機能を有する画面のどの部分がタッチされたかどうかを表すデータをイベント情報などとして生成する。生成されたデータは、後述のオペレーティングシステムを介して、アプリケーションプログラムが取得可能となる。表示部306は、液晶素子や有機EL素子などを用いて構成されるディスプレイに表示を行うための部である。   The CPU 301 is a circuit that executes machine code and executes a program. Further, an interrupt signal generated by the communication I / F 304, the operation unit 305, the display unit 306, and the like is acquired and processing corresponding to the interrupt signal is performed. The RAM 302 is a memory configured by a DRAM (Dynamic Random Access Memory) or the like, and stores a program executed by the CPU 301. Further, it is possible to store data referred to by the program. The non-volatile storage unit 303 is a storage unit that can retain stored information even when the mobile terminal 300 is turned off. For example, the read-only memory element such as a ROM (Read Only Memory) or a rewritable memory element such as a flash memory is used. The communication I / F 304 is an interface for the mobile terminal 300 to communicate with the outside. Includes network adapters according to the communication method. The operation unit 305 is a unit that detects an operation such as a button by a user of the mobile terminal and generates information indicating the operation. For example, data indicating which button is pressed and which part of the screen having a touch panel function is touched is generated as event information. The generated data can be acquired by an application program via an operating system described later. The display unit 306 is a unit for displaying on a display configured using a liquid crystal element, an organic EL element, or the like.

携帯端末300の電源が投入されると、CPU301によるブート処理が行われ、不揮発性記憶部303に記憶されているオペレーティングシステムがRAM302に展開され、そのオペレーティングシステムが実行される。   When the portable terminal 300 is powered on, the boot process is performed by the CPU 301, the operating system stored in the nonvolatile storage unit 303 is expanded in the RAM 302, and the operating system is executed.

図4は、オペレーティングシステムが実行され、そのオペレーティングシステムの管理下でプログラムが動作している様子を示す模式図である。ハードウェア401の上の論理的なレイヤにおいてオペレーティングシステム402が動作する。これにより、オペレーティングシステムの管理下で動作するプログラムは、オペレーティングシステム402を介してハードウェア401の制御やハードウェア401からのデータの受信を行うことができる。オペレーティングシステム402の管理下で動作するプログラムには、仮想マシン403、ブラウザなどがある。仮想マシン403は、仮想マシンコードを実行するプログラムであり、仮想マシンコードで記述されたプログラムを実行する。一般的に、仮想マシンが実行する仮想マシンコードで記述されたプログラムが「アプリケーション」と称される場合が多い。仮想マシン403を動作させることにより、ハードウェア401が異なっていても同じ記述のアプリケーションを動作させることが可能となる。また、アプリケーションは、ネイティブコードで記述されてもよく、仮想マシン403を介さず、オペレーティングシステム402の管理下で動作するものであってもよい。   FIG. 4 is a schematic diagram showing a state in which an operating system is executed and a program is operating under the management of the operating system. An operating system 402 operates in a logical layer above the hardware 401. As a result, a program operating under the management of the operating system can control the hardware 401 and receive data from the hardware 401 via the operating system 402. Examples of programs that operate under the management of the operating system 402 include a virtual machine 403 and a browser. The virtual machine 403 is a program that executes a virtual machine code, and executes a program described in the virtual machine code. In general, a program written in virtual machine code executed by a virtual machine is often referred to as an “application”. By operating the virtual machine 403, it is possible to operate applications having the same description even if the hardware 401 is different. The application may be written in native code, and may operate under the management of the operating system 402 without going through the virtual machine 403.

(ダウンロードサーバ、認証サーバの構成)
図5は、ダウンロードサーバ107や認証サーバ110を実現するサーバ装置のハードウェア構成を示す機能ブロック図である。サーバ装置500は、バス505によって接続されたCPU501、RAM502、通信I/F503、不揮発性記憶部504を有する。なお、CPU501、RAM502、通信I/F503、不揮発性記憶部504、バス505は、携帯端末300のそれらと対応するものと同じものが用いられる必要はない。端末装置300で用いられているものよりも高性能なものがサーバ装置500で用いられるであるのが一般的である。例えば、不揮発性記憶部504は、現状ではハードディスク装置が一般的に用いられ、端末装置300の不揮発性記憶部303の記憶容量よりも大きなものが用いられることが多い。CPU501は処理スピードがCPU301よりも高く、また、RAM502もアクセススピードがRAM502よりも高いものが用いられることが多い。
(Configuration of download server and authentication server)
FIG. 5 is a functional block diagram illustrating a hardware configuration of a server device that implements the download server 107 and the authentication server 110. The server device 500 includes a CPU 501, a RAM 502, a communication I / F 503, and a nonvolatile storage unit 504 connected via a bus 505. Note that the CPU 501, RAM 502, communication I / F 503, nonvolatile storage unit 504, and bus 505 need not be the same as those corresponding to those of the mobile terminal 300. In general, a server device 500 has a higher performance than that used in the terminal device 300. For example, a hard disk device is generally used as the nonvolatile storage unit 504 at present, and a storage capacity larger than the storage capacity of the nonvolatile storage unit 303 of the terminal device 300 is often used. In many cases, the CPU 501 has a higher processing speed than the CPU 301 and the RAM 502 has an access speed higher than that of the RAM 502.

サーバ装置500の電源が投入されると、CPU501によるブート処理が行われ、不揮発性記憶部504に記憶されているオペレーティングシステムがRAM502に展開され、オペレーティングシステムが実行される。その後、このオペレーティングシステムの管理下で各種のサーバプログラムなどが実行される。   When the power of the server device 500 is turned on, the boot process by the CPU 501 is performed, the operating system stored in the nonvolatile storage unit 504 is expanded in the RAM 502, and the operating system is executed. Thereafter, various server programs and the like are executed under the management of the operating system.

図6は、オペレーティングシステムが実行され、そのオペレーティングシステムの管理化で各種プログラムが実行されている様子を示す模式図である。図4と同様に、ハードウェア601の上の論理的なレイヤにおいてオペレーティングシステム602が動作し、オペレーティングシステムの管理下で動作するプログラムは、オペレーティングシステム602を介してハードウェア601の制御やハードウェア601からのデータの受信を行う。オペレーティングシステム602の管理下で動作するプログラムは、外部との通信を行うサーバプログラム603や外部との通信を行わないローカルプログラム604に分類される。サーバプログラム603は、例えば、ウェブサーバの機能を実現するプログラムであり、ローカルプログラム604は、データベース管理システムである。   FIG. 6 is a schematic diagram showing a state in which an operating system is executed and various programs are executed under the management of the operating system. As in FIG. 4, the operating system 602 operates in a logical layer above the hardware 601, and a program that operates under the management of the operating system controls the hardware 601 and the hardware 601 via the operating system 602. Receive data from. Programs that operate under the management of the operating system 602 are classified into a server program 603 that communicates with the outside and a local program 604 that does not communicate with the outside. The server program 603 is, for example, a program that realizes the function of a web server, and the local program 604 is a database management system.

(ダウンロード処理について)
図7は、端末装置103がダウンロードサーバ107よりアプリケーション109をダウンロードする処理の流れを説明するフローチャートを示す。端末装置103では、例えばブラウザ405を動作させ、ダウンロードサーバ107で動作しているWEBサーバの機能を実現するサーバプログラム603と通信を行い、アプリケーション109のダウンロード用のウェブページなどを表示部306により表示する。そして、ダウンロードのためのボタンなどが押下されたことを操作部305からの割り込みでCPU301が検出すると、図7に示されるフローチャートの処理がCPU301によりブラウザ405などの機能の一部として実行される。
(About download processing)
FIG. 7 is a flowchart for explaining the flow of processing in which the terminal device 103 downloads the application 109 from the download server 107. In the terminal device 103, for example, the browser 405 is operated to communicate with the server program 603 that realizes the function of the WEB server running on the download server 107, and the display unit 306 displays a web page for downloading the application 109. To do. When the CPU 301 detects that a button for downloading has been pressed by an interruption from the operation unit 305, the process of the flowchart shown in FIG. 7 is executed by the CPU 301 as part of the function of the browser 405 or the like.

ステップS701においては、ダウンロードセッションの開始処理が行われる。例えば、サーバプログラム603と、ダウンロードのための通信セッションを確立する。ステップS702においては、ダウンロードされるアプリケーションを格納するファイルを、不揮発性記憶部303により実現されるファイルシステムに作成し、そのファイルを書き込みモードなどにてオープンする。ステップS703において、ダウンロード要求を、確立した通信セッションを用いてサーバプログラム603に送信する。後に図8に示されるように、ダウンロードサーバ107からアプリケーションの送信が行われるので、ステップS704、S705、S706により形成されるループにおいて、ダウンロードサーバ107から送信されるデータをバッファなどのRAM302の所定の記憶領域に読み込み、ステップS702にてオープンされたファイルに書き込むことを、データの読み込み時にEOF(End Of File)が検出されるまで繰り返す。EOFが検出されると、ステップS707へ移行し、ステップS702でオープンされたファイルをクローズし、ステップS708において、S701で確立された通信セッションを終了する。その後、ダウンロードで読み込まれたデータに破損がないかなどをチェックし、必要であれば、ファイルに書き込まれたデータの解凍処理などを行い、ダウンロードされたアプリケーションをアプリケーションマネージャの支配下に配置などする。   In step S701, a download session start process is performed. For example, a communication session for downloading is established with the server program 603. In step S702, a file for storing the downloaded application is created in a file system realized by the nonvolatile storage unit 303, and the file is opened in a write mode or the like. In step S703, a download request is transmitted to the server program 603 using the established communication session. As shown later in FIG. 8, since the application is transmitted from the download server 107, the data transmitted from the download server 107 is stored in a predetermined RAM 302 such as a buffer in the loop formed by steps S704, S705, and S706. Reading to the storage area and writing to the file opened in step S702 is repeated until EOF (End Of File) is detected when reading data. When EOF is detected, the process proceeds to step S707, the file opened in step S702 is closed, and in step S708, the communication session established in S701 is terminated. After that, the data read by downloading is checked for damage, and if necessary, the data written in the file is decompressed, and the downloaded application is placed under the control of the application manager. .

なお、図14(a)は、ダウンロードセッションが開始され、そのセッションが終了するまでのディスプレイの表示の一例を示す。すなわち、ダウンロードサーバと通信が行われている旨の「通信中…」が表示される。   FIG. 14A shows an example of display on the display until the download session is started and the session is ended. That is, “Communicating ...” indicating that communication with the download server is being performed is displayed.

図8は、ダウンロードサーバ107が端末装置103にアプリケーション109をダウンロードさせる処理の流れを説明する。この処理は、例えば、ウェブサーバの機能を実現するサーバプログラム603の機能の一部として、CPU501により実行される。   FIG. 8 illustrates a processing flow in which the download server 107 causes the terminal device 103 to download the application 109. This process is executed by the CPU 501 as a part of the function of the server program 603 that realizes the function of the web server, for example.

ステップS801において、ダウンロード要求が受信されるまで待ち状態に入る。例えば、LISTENシステムコールを実行し、何らかのデータが受信可能になると、受信可能となったデータを取得しダウンロード要求であるかどうかを判断する。ダウンロード要求であると判断されると、ステップS802に処理を移行し、アプリケーション109が格納されたファイルを読出しモードにてオープンする。その後、ステップS803、S804、S805により形成されるループにおいて、オープンされたファイルのデータをバッファなどとして用いられるRAM502の領域に読み込み、読み込まれたデータを通信I/F503を介して送信することを、ファイルのデータが全て読み込まれてEOFが検出されるまで繰り返し行う。EOFが検出されると、ステップS806において、ファイルをクローズして、ステップS807において、セッションの終了処理を行う。   In step S801, the process waits until a download request is received. For example, when a LISTEN system call is executed and some data becomes receivable, the receivable data is acquired and it is determined whether it is a download request. If it is determined that the request is a download request, the process proceeds to step S802, and the file in which the application 109 is stored is opened in the read mode. Thereafter, in the loop formed by steps S803, S804, and S805, reading the data of the opened file into the area of the RAM 502 used as a buffer and transmitting the read data via the communication I / F 503. Repeat until all file data is read and EOF is detected. If an EOF is detected, the file is closed in step S806, and a session termination process is performed in step S807.

(アプリケーションの実行について)
図9は、端末装置103にダウンロードされたアプリケーション109を実行するための処理の流れを説明するフローチャートである。端末装置103で所定のボタンなどの操作を行い、アプリケーションマネージャなどにアプリケーション109の起動を命令すると、図9に示されるフローチャートの処理がアプリケーションマネージャなどの機能としてCPU301により開始される。ステップS901において、不揮発性記憶部303に記憶されたアプリケーション109をRAM302にロードする。その後、ステップS902において、アプリケーション109の動作を開始するように、仮想マシン403に命令したり、オペレーティングシステム402を介してCPU301に命令したりする。これによりアプリケーション109が実行される。
(About application execution)
FIG. 9 is a flowchart for explaining the flow of processing for executing the application 109 downloaded to the terminal device 103. When a predetermined button or the like is operated on the terminal device 103 and an application manager or the like is instructed to start the application 109, the processing of the flowchart shown in FIG. 9 is started by the CPU 301 as a function of the application manager or the like. In step S <b> 901, the application 109 stored in the nonvolatile storage unit 303 is loaded into the RAM 302. Thereafter, in step S902, the virtual machine 403 is instructed to start the operation of the application 109, or the CPU 301 is instructed via the operating system 402. Thereby, the application 109 is executed.

図10は、アプリケーション109が、端末装置103のハードウェアと一体として実行されることにより、実現され、所定の処理を実行する装置(処理実行装置)の機能ブロック図を示す。アプリケーションの実行によって実現される装置1000は、主処理部1001と、認証情報記憶部1002と、認証結果履歴更新部1003と、通信部1004と、認証制御部1005と、を有する。これらの部は、以下に説明する各部の機能を発揮するためのクラスやインスタンスのメソッドあるいは関数(function)、手続(procedure)を含むモジュールとして実現される。   FIG. 10 shows a functional block diagram of an apparatus (process execution apparatus) that is realized by executing the application 109 as an integrated unit with the hardware of the terminal apparatus 103 and executes predetermined processing. The apparatus 1000 realized by executing the application includes a main processing unit 1001, an authentication information storage unit 1002, an authentication result history update unit 1003, a communication unit 1004, and an authentication control unit 1005. These units are realized as modules including class and instance methods or functions (functions) and procedures (procedures) for performing the functions of the respective units described below.

主処理部1001は、アプリケーション109の本来の処理を行う部である。「本来の処理」とは、アプリケーション109全体として実現される機能を提供するための処理である。例えば、アプリケーション109が、ゲームを行うためのプログラムであれば、端末装置103の利用者によるボタンなどの操作を検出し、その検出に応じて画面表示を変化させて、その利用者に一連のゲームをさせることが、本来の処理である。また、アプリケーション109がコンテンツ再生のソフトウェアであれば、音楽や映像などのコンテンツを表す情報を読み込み、コンテンツの再生を行うのが本来の処理である。本発明の一実施形態では、本来の処理の中には、認証制御部1005に制御を移し、認証サーバ110へ認証処理を要求し、返信された認証処理の結果が成功か否かによってその後に行う処理を選択する処理選択の処理が含まれる。例えば、認証処理の結果が成功であれば、認証制御部1005に制御を移す前の処理を続行する選択を行い、認証処理の結果が成功でなければ、認証制御部1005に制御を移す前の処理を中断などする。したがって、主処理部1001は、処理選択の処理を行う処理選択部を含むといえる。   The main processing unit 1001 is a unit that performs the original processing of the application 109. The “original process” is a process for providing a function realized as the entire application 109. For example, if the application 109 is a program for playing a game, an operation of a button or the like by the user of the terminal device 103 is detected, and the screen display is changed in response to the detection, so that a series of games is given to the user. This is the original process. If the application 109 is content reproduction software, the original processing is to read information representing content such as music or video and reproduce the content. In one embodiment of the present invention, in the original process, the control is transferred to the authentication control unit 1005, the authentication process is requested to the authentication server 110, and the result of the returned authentication process is determined depending on whether the result is successful. A process selection process for selecting a process to be performed is included. For example, if the result of the authentication process is successful, a selection is made to continue the process before transferring control to the authentication control unit 1005. If the result of the authentication process is not successful, the process before transferring control to the authentication control unit 1005 is performed. Suspend processing. Therefore, it can be said that the main processing unit 1001 includes a process selection unit that performs a process selection process.

アプリケーション109がプログラムであれば、そのエントリポイントは通常、主処理部1001の内部に設定される。すなわち、アプリケーション109の実行の開始の際には、仮想マシン403やCPU301などの有するレジスタの一つであるプログラムカウンタには、主処理部1001内部のアドレスが設定される。もちろん、エントリポイントは、必要に応じて、任意のアドレスに設定できる。   If the application 109 is a program, its entry point is usually set inside the main processing unit 1001. That is, when the execution of the application 109 is started, an internal address of the main processing unit 1001 is set in a program counter that is one of registers included in the virtual machine 403 and the CPU 301. Of course, the entry point can be set to an arbitrary address as required.

認証情報記憶部1002は、認証結果履歴情報1007を読出し可能に、また更新可能に記憶する。また、認証結果履歴情報1007に加えて、図10に示されるように登録済情報1006を記憶していてもよい。認証情報記憶部1002は、不揮発性記憶部303やRAM302などのメモリに一定の領域を確保し、その領域に登録済情報1006と認証結果履歴情報1007とを記憶し、そのように記憶された登録済情報1006と認証結果履歴情報1007とにアクセスを行うモジュールなどとして実現される。   The authentication information storage unit 1002 stores the authentication result history information 1007 so that it can be read and updated. Further, in addition to the authentication result history information 1007, registered information 1006 may be stored as shown in FIG. The authentication information storage unit 1002 secures a certain area in a memory such as the non-volatile storage unit 303 and the RAM 302, stores registered information 1006 and authentication result history information 1007 in the area, and stores the registration stored as such. This is realized as a module for accessing the completed information 1006 and the authentication result history information 1007.

登録済情報1006とは、認証サーバ110に認証情報が登録されているかどうかを示す情報である。例えば、その値が0ならば登録されておらず、0以外の値、例えば1、であれば認証情報が登録されていることを示す。また、登録済情報1006は、認証サーバ110に認証情報の登録を要求し、返信された情報であってもよい。具体的には、登録の要求がされた認証情報や認証情報から所定の演算で得られる情報を認証サーバ110の秘密鍵で暗号化した情報であってもよい。このように、認証情報記憶部1002に登録済情報1006を記憶することにより、認証サーバ110と実際に通信を行わなくても、認証情報が認証サーバ110に既に登録されているかどうかを判断することができる。さらに、認証サーバ110の秘密鍵で暗号化した情報を登録済情報として用いれば、登録済情報1006の偽造も困難となり、不正を行うことが困難となるため、確実に認証情報が認証サーバ110に登録されているかどうかを判断することができる。   The registered information 1006 is information indicating whether authentication information is registered in the authentication server 110. For example, if the value is 0, it is not registered, and if it is a value other than 0, for example, 1, it indicates that authentication information is registered. Further, the registered information 1006 may be information that requests the authentication server 110 to register authentication information and is returned. Specifically, the authentication information requested to be registered or information obtained by encrypting information obtained from the authentication information by a predetermined calculation using the secret key of the authentication server 110 may be used. As described above, by storing the registered information 1006 in the authentication information storage unit 1002, it is determined whether the authentication information is already registered in the authentication server 110 without actually communicating with the authentication server 110. Can do. Furthermore, if the information encrypted with the secret key of the authentication server 110 is used as registered information, it becomes difficult to forge the registered information 1006 and it is difficult to perform fraud. It can be judged whether or not it is registered.

登録済情報1006を認証情報記憶部に記憶することにより、認証サーバ110に認証情報が登録されていない場合には、認証処理の実行の要求を送信しなくても、認証処理の結果が成功とならならいことを検出できる。この結果、無駄な通信を抑制できる。また、認証情報が登録されているか否かに応じて、その後に行う処理を選択することもできる。   By storing the registered information 1006 in the authentication information storage unit, if the authentication information is not registered in the authentication server 110, the result of the authentication process is determined to be successful without sending a request for executing the authentication process. You can detect what is wrong. As a result, useless communication can be suppressed. Further, depending on whether authentication information is registered, it is possible to select a process to be performed thereafter.

認証結果履歴情報1007とは、認証サーバ110に認証情報の登録がされた後に、認証サーバ110に認証処理を要求してその認証処理が成功したことがあるかどうかを示す情報である。認証結果履歴情報1007の一例としては、認証サーバ110に認証処理を要求して得られる認証結果の履歴(例えば、ログ)を表す情報である。ここで、認証結果とは、認証サーバ110との通信がエラーになったかどうかに加え、認証ステータス情報を含む情報である。認証ステータス情報とは、認証サーバに認証要求を行い、それに応じて認証サーバで行われる判定である認証処理の結果として返信された情報であり、認証サーバでの認証処理が成功したか失敗したかを示す情報をいう。認証結果履歴情報1007は、認証サーバ110に認証情報の登録がされた後に行われた全ての認証結果を表していてもよい。あるいは認証サーバ110に認証情報の登録がされた後に行われた所定の回数だけの認証結果を表していてもよい。例えば、認証結果履歴情報1007は、最近に行われた認証要求のうち所定の回数の結果のみを示す情報であってもよい。より具体的には、前回行われた認証要求1回のみの認証結果を示す情報であってもよい。   The authentication result history information 1007 is information indicating whether or not the authentication process has been successfully requested by requesting the authentication server 110 after the authentication information is registered in the authentication server 110. An example of the authentication result history information 1007 is information representing an authentication result history (for example, a log) obtained by requesting the authentication server 110 for authentication processing. Here, the authentication result is information including authentication status information in addition to whether or not an error has occurred in communication with the authentication server 110. Authentication status information is information sent back as a result of authentication processing, which is a determination made by the authentication server in response to an authentication request to the authentication server. Whether authentication processing at the authentication server succeeded or failed Information indicating The authentication result history information 1007 may represent all the authentication results performed after the authentication information is registered in the authentication server 110. Alternatively, the authentication result may be expressed a predetermined number of times after the authentication information is registered in the authentication server 110. For example, the authentication result history information 1007 may be information indicating only a predetermined number of results among recent authentication requests. More specifically, it may be information indicating an authentication result of only one authentication request made last time.

また、後述するように、認証結果履歴情報1007は、認証ステータス情報が得られ、認証処理が成功していれば、所定の値として認証情報記憶部1002に記憶される数値(例えば、整数値)であってもよい。この場合、認証サーバ110との通信がエラーとなったり認証処理が失敗となったりした場合には、所定の数(例えば、1)が減じられて認証情報記憶部1002に記憶されるようになっていてもよい。そして、認証情報記憶部1002から読み出された認証結果履歴情報1007が所定の値の範囲(例えば、より大)であれば、認証サーバ110に認証処理を要求してその認証処理が成功したことがあると判断されるようになっていてもよい。   As will be described later, the authentication result history information 1007 is a numerical value (for example, an integer value) stored in the authentication information storage unit 1002 as a predetermined value if the authentication status information is obtained and the authentication process is successful. It may be. In this case, when communication with the authentication server 110 results in an error or authentication processing fails, a predetermined number (for example, 1) is reduced and stored in the authentication information storage unit 1002. It may be. If the authentication result history information 1007 read from the authentication information storage unit 1002 is within a predetermined value range (for example, larger), the authentication process is requested from the authentication server 110 and the authentication process is successful. It may be judged that there is.

登録済情報1006が記憶される場合には、アプリケーション109が端末装置103にダウンロードされる際に、クリアされて初期化される。あるいは、アプリケーション109に初期化された状態のデータとして含まれていてもよい。また、登録済情報1006が複数のアプリケーションにより共有して読出しや更新がされる場合には、その複数のアプリケーションの中の最初に端末装置103にダウンロードされて実行されたアプリケーションによってクリアなどされて初期化される。認証結果履歴情報1007についても同様にクリアされて初期化されるようになっていてもよい。   When the registered information 1006 is stored, it is cleared and initialized when the application 109 is downloaded to the terminal device 103. Alternatively, it may be included in the application 109 as initialized data. Further, when the registered information 1006 is shared by a plurality of applications and read or updated, the registered information 1006 is initially cleared by being downloaded to the terminal device 103 and executed first among the plurality of applications. It becomes. Similarly, the authentication result history information 1007 may be cleared and initialized.

ここで「登録済情報1006をクリアして初期化する」とは、登録済情報1006を、認証サーバ110に認証情報が登録されていないことを示す情報とすることである。   Here, “clear and initialize the registered information 1006” means that the registered information 1006 is information indicating that the authentication information is not registered in the authentication server 110.

また、「認証結果履歴情報1007をクリアして初期化する」とは、認証結果履歴情報1007に含まれる情報の中に、認証処理の成功を示す情報が含まれないようにすることである。例えば、認証結果履歴情報1007に、過去に認証処理を要求した結果得られる認証結果が含まれる場合には、その含まれる認証結果の全てを成功していない旨を示す情報に書き換えることである。   Further, “clearing and initializing the authentication result history information 1007” means that the information included in the authentication result history information 1007 does not include information indicating the success of the authentication process. For example, when the authentication result history information 1007 includes an authentication result obtained as a result of a request for authentication processing in the past, all of the included authentication results are rewritten with information indicating that the authentication result is not successful.

認証結果履歴更新部1003は、認証結果に応じて、認証情報記憶部1002に記憶されている認証結果履歴情報1007を更新する部である。すなわち、認証結果履歴更新部1003は、通信エラーの発生に応じて、また通信エラーの発生が無ければ、前記認証要求の送信に対して返信され受信された認証処理の結果に応じて、認証結果履歴情報1007を更新する。例えば、通信エラーが発生したことを表す値、認証処理の結果表す値を、認証情報記憶部1002に記憶されている認証結果履歴情報1007に上書したり、認証情報記憶部1002に記憶されている認証結果履歴情報1007に、過去に行われた所定の回数の認証結果が含まれているのであれば、その中で時間的に最も前に行われた認証結果を削除して、通信エラーが発生したことを表す値や認証処理の結果を表す値を追加したりする。あるいは、状態遷移を行うようにして更新を行ってもよい。あるいは、認証結果履歴情報1007が数値であれば、上述したように、認証処理に成功した際に所定の数値に設定し、通信がエラーとなった場合にはその数値が所定の値の範囲にあるかどうかが判断されるようになっていてもよい。   The authentication result history update unit 1003 is a unit that updates the authentication result history information 1007 stored in the authentication information storage unit 1002 according to the authentication result. That is, the authentication result history update unit 1003 determines whether the authentication result is returned in response to the occurrence of a communication error, or if no communication error occurs, in response to the authentication processing result returned and received in response to the transmission of the authentication request. The history information 1007 is updated. For example, a value indicating that a communication error has occurred and a value indicating the result of the authentication process are overwritten in the authentication result history information 1007 stored in the authentication information storage unit 1002 or stored in the authentication information storage unit 1002. If the authentication result history information 1007 includes a predetermined number of authentication results that have been performed in the past, the authentication result that was most recently performed is deleted, and a communication error occurs. A value indicating the occurrence or a value indicating the result of the authentication process is added. Alternatively, updating may be performed by performing state transition. Alternatively, if the authentication result history information 1007 is a numerical value, as described above, the authentication result history information 1007 is set to a predetermined numerical value when the authentication process is successful, and if communication fails, the numerical value falls within the predetermined value range. It may be determined whether or not there is.

通信部1004は、認証サーバ110に対する通信の処理を行う。通信部1004が行う通信の処理は、認証サーバ110に、必要であれば認証情報の登録要求を送信し、また認証サーバ110に対して認証要求を送信し、送信した結果を受信することに分けられる。登録要求が送信される場合、登録要求、認証要求のどちらの送信を行って結果を受信するかは、認証制御部1005により決定される。したがって、通信部1004は、少なくとも、認証サーバ110へ認証要求を、ネットワークを介して送信する送信部と、認証サーバ110が認証要求を受信すると、その受信に応じて、認証処理の結果が成功か否かの判定を行い、その結果、認証サーバ110から送信される認証ステータス情報を受信する受信部とを含むといえる。   The communication unit 1004 performs communication processing with the authentication server 110. The communication process performed by the communication unit 1004 is divided into transmitting an authentication information registration request to the authentication server 110 if necessary, transmitting an authentication request to the authentication server 110, and receiving the transmitted result. It is done. When the registration request is transmitted, the authentication control unit 1005 determines which of the registration request and the authentication request is transmitted and the result is received. Therefore, the communication unit 1004 receives at least an authentication request to the authentication server 110 via the network, and if the authentication server 110 receives the authentication request, whether the authentication processing result is successful. And a reception unit that receives the authentication status information transmitted from the authentication server 110 as a result.

認証サーバ110に認証情報の登録要求をすることとは、図1(c)を参照して説明したように、認証サーバ110のDB111に認証情報を登録させることである。例えば、通信部1004は、端末シリアル番号などを読出し、その端末シリアル番号などをDB111に登録する要求とともに認証サーバ110に送信し、通信部1004がその登録結果の通知を受ける。   Making an authentication information registration request to the authentication server 110 means registering authentication information in the DB 111 of the authentication server 110 as described with reference to FIG. For example, the communication unit 1004 reads the terminal serial number and the like, and transmits the terminal serial number and the like to the authentication server 110 together with a request for registering in the DB 111, and the communication unit 1004 receives a notification of the registration result.

認証サーバ110に認証要求を行うこととは、図1(d)を参照して説明したように、認証情報の照会などを認証サーバ110に対して行い、その認証結果の通知である認証ステータス情報を受けることである。例えば、通信部1004は、端末シリアル番号などを読み出し、その端末シリアル番号などがDB111に登録されているかどうかの確認の要求とともに認証サーバ110に送信し、通信部1004がその結果の通知を認証ステータス情報として受ける。   Making an authentication request to the authentication server 110 refers to authentication status information which is a notification of the authentication result by making an inquiry of the authentication information to the authentication server 110 as described with reference to FIG. Is to receive. For example, the communication unit 1004 reads out the terminal serial number and the like, transmits it to the authentication server 110 together with a request for checking whether or not the terminal serial number is registered in the DB 111, and the communication unit 1004 sends a notification of the result to the authentication status. Receive as information.

なお、認証結果には、認証サーバ110からの認証ステータス情報を受信して照会した端末シリアル番号などがDB111に登録されているかどうかの確認の結果のみならず、認証サーバ110との通信セッションの確立、データの送信、データの受信を行った際に通信のエラーの発生の有無やエラーの種類の情報を含ませるようにしてもよい。したがって、通信部1004は、少なくとも、送信部による認証要求の送信と受信部による認証処理の結果の受信とが行われる際の通信エラーの発生の有無を検出するエラー検出部を含むといえる。   The authentication result includes not only the result of checking whether the terminal serial number or the like that has been received and inquired from the authentication server 110 is registered in the DB 111 but also the establishment of a communication session with the authentication server 110. In addition, when data is transmitted or received, information on the presence or absence of a communication error and the type of error may be included. Therefore, it can be said that the communication unit 1004 includes at least an error detection unit that detects whether or not a communication error has occurred when the transmission of the authentication request by the transmission unit and the reception of the authentication processing result by the reception unit are performed.

認証制御部1005は、認証情報記憶部1002に記憶されている認証結果履歴情報1007、また加えて必要ならば登録済情報1006を読出す。そして、通信部1004を動作させて認証サーバ110に対して認証情報の認証要求、あるいは必要ならば登録要求を送信させ、認証結果履歴情報1007を認証結果履歴更新部1003により更新する。また、認証制御部1005は、主処理部1001からメソッド呼び出しなどによって実行の制御が渡されると、認証が成功したか否か(認証OKかどうか)を表す認証結果を主処理部1001に返す。これにより、主処理部1001は、その後の処理を選択することができる。また必要ならば、認証結果によっては、アプリケーションの実行を中断させたり終了させたりもしてもよい。認証制御部1005で行う認証制御の処理のうち、認証サーバ110に対する認証要求の送信などを、通信部1004により行い、認証情報記憶部1002に記憶されている認証に関する情報の更新は、認証結果履歴更新部1003により行う。   The authentication control unit 1005 reads the authentication result history information 1007 stored in the authentication information storage unit 1002 and, if necessary, the registered information 1006. Then, the communication unit 1004 is operated to cause the authentication server 110 to transmit an authentication information authentication request or a registration request if necessary, and the authentication result history information update unit 1003 updates the authentication result history information 1007. In addition, when execution control is passed from the main processing unit 1001 by a method call or the like, the authentication control unit 1005 returns an authentication result indicating whether the authentication is successful (whether authentication is OK) or not to the main processing unit 1001. Thereby, the main processing unit 1001 can select a subsequent process. If necessary, the execution of the application may be interrupted or terminated depending on the authentication result. Of the authentication control processing performed by the authentication control unit 1005, the communication unit 1004 transmits an authentication request to the authentication server 110, and the update of the information related to authentication stored in the authentication information storage unit 1002 is performed as an authentication result history. Performed by the update unit 1003.

ここで、認証制御部1005は、通信部1004から受け取った認証結果がエラーを示す場合には、認証結果履歴情報1007に認証処理の成功を示す情報が含まれていれば、認証結果を成功とみなして主処理部1001に認証OKを返し、含まれていなければ認証結果を失敗とみなして主処理部1001に認証NGを返す。なお、認証結果履歴情報1007に認証処理の成功を示す情報が含まれるとは、明示的に含まれる場合のみならず、実質的に含まれているのと同じであることを含む。明示的に含まれるとは、例えば、過去に行われた認証結果の履歴をそのまま保持しており、過去に行われた認証のそれぞれに対する認証結果が保持されている場合である。また、実質的に含まれているとは、過去に行われた認証のそれぞれの認証結果は導けないが、例えば、過去に行われた認証の中に成功しているものがあれば、TRUE、そうでなければ、FALSEの値を取るフラグが用いられている場合である。また、フラグのかわりにカウンターなどを用いていてもよい。   Here, if the authentication result received from the communication unit 1004 indicates an error, the authentication control unit 1005 determines that the authentication result is successful if the authentication result history information 1007 includes information indicating the success of the authentication process. Assuming that authentication OK is returned to the main processing unit 1001, and if not included, the authentication result is regarded as failure, and authentication NG is returned to the main processing unit 1001. Note that the fact that the authentication result history information 1007 includes information indicating the success of the authentication process includes not only the case where it is explicitly included, but also the fact that it is substantially included. Explicitly included is, for example, a case where a history of authentication results performed in the past is held as it is, and an authentication result for each authentication performed in the past is held. In addition, the fact that each authentication result of authentication performed in the past cannot be derived as being substantially included, for example, if there is a successful authentication performed in the past, TRUE, Otherwise, this is the case where a flag that takes the value of FALSE is used. A counter or the like may be used instead of the flag.

図11は、アプリケーション109の動作が開始した後のアプリケーション109による処理のフローチャートの一例を示す。ステップS1101において、主処理部1001の動作が開始し、アプリケーション109の動作に必要なデータ、変数の初期化を行う。例えば、アプリケーション109がゲームプログラムであれば、前回の実行で達したステージの識別子や獲得したポイントなどを不揮発性記憶部303より読み込み、アプリケーション109に割り当てられたメモリ空間に配置する。ステップS1102において、主処理部1001から認証制御部1005を動作させるためのメソッドなどが呼び出されて、認証制御部1005による認証制御の処理を行う。その処理の結果は、メソッドなどの戻り値などとして返され、ステップS1103において、認証が成功したかどうかとして判断される。認証が成功したのであれば、ステップS1104に処理を移行させる。すなわち、上述したメソッド呼び出しから復帰して、その後の主処理部1001の処理が行われる。もし、認証が成功せず失敗すれば、アプリケーション109の処理を終了させる。   FIG. 11 shows an example of a flowchart of processing by the application 109 after the operation of the application 109 is started. In step S1101, the operation of the main processing unit 1001 is started, and data and variables necessary for the operation of the application 109 are initialized. For example, if the application 109 is a game program, the stage identifier and points acquired in the previous execution are read from the nonvolatile storage unit 303 and placed in the memory space allocated to the application 109. In step S1102, a method for operating the authentication control unit 1005 is called from the main processing unit 1001, and authentication control processing by the authentication control unit 1005 is performed. The processing result is returned as a return value of a method or the like, and it is determined in step S1103 as to whether or not the authentication is successful. If the authentication is successful, the process proceeds to step S1104. In other words, after returning from the method call described above, the subsequent processing of the main processing unit 1001 is performed. If the authentication fails without success, the processing of the application 109 is terminated.

図11に示すフローチャートは、アプリケーション109による処理の一例にすぎず、認証制御の処理は、初期化の後に必ず行われる必要はない。初期化の後、主処理をある程度行った後、例えば、ゲームなどの次のステージに進む際に、認証制御の処理を行うようになっていてもよい。また、認証が成功しなければ、アプリケーション109の処理を終了せずに、次のゲームなどのステージに進ませない、再生の品質を定められた品質以上にしないなど、アプリケーション109の機能を制限させるようになっていてもよい。   The flowchart shown in FIG. 11 is merely an example of processing by the application 109, and authentication control processing does not necessarily have to be performed after initialization. After initialization, after performing the main process to some extent, for example, when proceeding to the next stage such as a game, authentication control processing may be performed. Further, if the authentication is not successful, the function of the application 109 is restricted such that the processing of the application 109 is not ended, the stage of the next game or the like is not advanced, or the reproduction quality is not higher than a predetermined quality. It may be like this.

なお、図14(b)は、アプリケーション109がメモリにロードされ、動作を開始するまでのディスプレイの表示の一例を示す。「起動中…」の表示の下に、メモリへのロードの進行状況や、初期化の進行状況の表示がされる。   FIG. 14B shows an example of display on the display until the application 109 is loaded into the memory and starts operating. Under the display of “Starting ...”, the progress of loading into the memory and the progress of initialization are displayed.

図12、図13は、認証制御部1005における処理の流れを説明するフローチャートを示す。すなわち、図12は、図11のステップS1102における処理を詳細に説明するフローチャートである。また、図13(a)、(b)は、図12のステップS1220における処理を詳細に説明するフローチャートである。   12 and 13 are flowcharts illustrating the flow of processing in the authentication control unit 1005. That is, FIG. 12 is a flowchart for explaining in detail the processing in step S1102 of FIG. FIGS. 13A and 13B are flowcharts illustrating in detail the processing in step S1220 in FIG.

認証制御部1005を動作させるためのメソッドなどが呼び出されると、図12に例示されたフローチャートの処理が開始する。ステップS1201において、通信部1004は、認証情報記憶部1002から登録済情報を読出し、認証情報が認証サーバ110に未登録であるかを判断する。もし、未登録であれば、ステップS1202へ移行し、登録済みであれば、ステップS1209へ移行する。   When a method or the like for operating the authentication control unit 1005 is called, the process of the flowchart illustrated in FIG. 12 starts. In step S <b> 1201, the communication unit 1004 reads registered information from the authentication information storage unit 1002 and determines whether the authentication information is unregistered in the authentication server 110. If not registered, the process proceeds to step S1202, and if registered, the process proceeds to step S1209.

ステップS1202においては、通信部1004を動作させ、認証情報を登録するための登録要求を認証サーバ110へ送信する処理を行う。続くステップS1203では、ステップS1202での送信の際に、通信エラーが発生しなかったかどうかを判断する。例えば、認証サーバ110との通信コネションが確立でき、その通信コネクションを用いて要求が送信でき、TCP(Transmission Control Protocol)が用いられているならばACKが受信されたかどうかを判断する。もし、通信エラーが発生せずに登録要求の送信ができたのであれば、ステップS1204へ移行し、通信エラーが発生して登録要求の送信ができなければ、ステップS1208へ移行する。   In step S1202, the communication unit 1004 is operated to perform a process of transmitting a registration request for registering authentication information to the authentication server 110. In the subsequent step S1203, it is determined whether or not a communication error has occurred during the transmission in step S1202. For example, a communication connection with the authentication server 110 can be established, a request can be transmitted using the communication connection, and if TCP (Transmission Control Protocol) is used, it is determined whether or not an ACK has been received. If a registration request can be transmitted without a communication error, the process proceeds to step S1204. If a communication error has occurred and a registration request cannot be transmitted, the process proceeds to step S1208.

ステップS1204においては、認証情報を認証サーバ110に登録させるために、認証情報を認証サーバ110へ送信する処理を行う。続くステップS1205では、認証情報の登録が完了された旨の返信が得られたかどうかを判断する。もし、登録完了されたのであれば、ステップS1206へ移行し、認証情報の登録が完了された旨の返信が得られなかった場合には、ステップS1208へ移行する。   In step S <b> 1204, processing for transmitting authentication information to the authentication server 110 is performed in order to register the authentication information in the authentication server 110. In a succeeding step S1205, it is determined whether or not a reply that the registration of the authentication information is completed is obtained. If registration has been completed, the process proceeds to step S1206. If a reply indicating that registration of authentication information has been completed is not obtained, the process proceeds to step S1208.

ステップS1206では、認証制御部1005により認証情報記憶部1002に、認証サーバ110に認証情報が登録されている旨の登録済情報1006を記憶する。続くステップS1207においては、認証OKの返答を主処理部1001に行う。   In step S1206, the authentication control unit 1005 stores registered information 1006 indicating that the authentication information is registered in the authentication server 110 in the authentication information storage unit 1002. In the subsequent step S1207, an authentication OK response is sent to the main processing unit 1001.

ステップS1203において、通信エラーが発生し、認証情報の登録要求の送信できなかったと判断されたり、ステップS1205で登録が完了のされている旨の返信が得られなかったりした場合には、上述のようにステップS1208に移行する。ステップS1208においては、登録がOKでなく、したがって認証もできない旨の返答を主処理部1001に行う。あるいは、認証制御部1005でアプリケーション109の実行を中断させたり、停止させたり、終了させてもよい。また、端末装置全体をロックなどして操作できないようにしてもよい。   If it is determined in step S1203 that a communication error has occurred and the authentication information registration request has not been transmitted, or if a reply indicating that registration has been completed is not obtained in step S1205, as described above. The process proceeds to step S1208. In step S1208, the main processing unit 1001 is replied to the effect that registration is not OK and authentication is not possible. Alternatively, the authentication control unit 1005 may interrupt, stop, or terminate the execution of the application 109. Further, the entire terminal device may be locked so that it cannot be operated.

なお、ステップS1207において、認証OKの返答を行うと説明したが、登録が初めて行われたことを示す別の返答(例えば、「登録OK」)を行ってもよい。これにより、登録が初めて行われたことに応じて、その後の処理として、歓迎のメッセージを表示したりすることなどを主処理部1001が選択できる。   In step S1207, it is described that the authentication OK response is performed. However, another response (for example, “registration OK”) indicating that the registration is performed for the first time may be performed. Accordingly, the main processing unit 1001 can select to display a welcome message or the like as a subsequent process in response to the first registration.

ステップS1201において、認証情報が認証サーバ110に登録されていると判断された場合には、上述のようにステップS1209に移行する。ステップS1209では、認証要求の送信を認証サーバ110に行う処理をする。続くステップS12010では、ステップS1209での送信の際に、通信エラーが発生しなかったかどうかを判断する。例えば、認証サーバ110との通信コネションが確立でき、その通信コネクションを用いて要求が送信でき、TCPが用いられているならばACKが受信されたかどうかを判断する。もし、通信エラーが発生せずに認証要求の送信ができたのであれば、ステップS1211へ移行し、通信エラーが発生して認証要求の送信ができなければ、ステップS1220へ移行する。   If it is determined in step S1201 that the authentication information is registered in the authentication server 110, the process proceeds to step S1209 as described above. In step S1209, processing for transmitting an authentication request to the authentication server 110 is performed. In subsequent step S12010, it is determined whether or not a communication error has occurred during the transmission in step S1209. For example, if a communication connection with the authentication server 110 can be established, a request can be transmitted using the communication connection, and if TCP is used, it is determined whether or not an ACK has been received. If an authentication request can be transmitted without a communication error, the process proceeds to step S1211. If a communication error occurs and an authentication request cannot be transmitted, the process proceeds to step S1220.

ステップS1211においては、認証情報を認証サーバ110に送信する処理を行う。例えば、端末シリアル番号を読出して送信する。続くステップS1212においては、ステップS1211での送信の際に、通信エラーが発生しなかったかどうかをステップS1210と同様に判断する。もし、通信エラーが発生せずに認証情報の送信ができたのであれば、ステップS1213へ移行し、通信エラーが発生して認証情報の送信ができなければ、ステップS1220へ移行する。   In step S <b> 1211, processing for transmitting authentication information to the authentication server 110 is performed. For example, the terminal serial number is read and transmitted. In the subsequent step S1212, it is determined in the same manner as in step S1210 whether or not a communication error has occurred during the transmission in step S1211. If authentication information can be transmitted without a communication error, the process proceeds to step S1213. If a communication error occurs and authentication information cannot be transmitted, the process proceeds to step S1220.

ステップS1213においては、認証サーバ110からの認証ステータス情報の受信処理を行う。続くステップS1214において、通信エラーが発生せずに認証ステータス情報の受信ができたかどうかの判断を行う。この判断では、データが通信エラーなしで受信できたかどうかに加えて、受信したデータが所定の形式になっているかどうかも判断する。例えば、認証ステータス情報が0または1を表す1バイトの情報で返信されると規定されている場合、0でも1でもないデータが受信されたり2バイト以上の情報が受信されたりした場合にも通信エラーが発生したと判断する。もし、通信エラーが発生せずに認証ステータス情報の受信ができたと判断されれば、ステップS1215へ移行し、そうでなければ、ステップS1220へ移行する。   In step S1213, a process for receiving authentication status information from the authentication server 110 is performed. In a succeeding step S1214, it is determined whether or not the authentication status information has been received without causing a communication error. In this determination, in addition to whether or not the data can be received without a communication error, it is also determined whether or not the received data is in a predetermined format. For example, if the authentication status information is defined to be returned as 1-byte information indicating 0 or 1, communication is performed even when data other than 0 or 1 is received or information of 2 bytes or more is received. Judge that an error has occurred. If it is determined that the authentication status information has been received without any communication error, the process proceeds to step S1215, and if not, the process proceeds to step S1220.

ステップS1215においては、受信されたデータを解析や予め定められた値と比較などし、認証結果を取得する。例えば、受信されたデータが0を表す1バイトと等しければ、認証が成功した旨を取得し、それ以外の値(例えば1を表す1バイト)と等しければ、認証が失敗した旨を取得する。   In step S1215, the received data is analyzed and compared with a predetermined value to obtain an authentication result. For example, if the received data is equal to 1 byte representing 0, the fact that the authentication has succeeded is acquired, and if the received data is equal to other values (for example, 1 byte representing 1), the fact that the authentication has failed is obtained.

ステップS1216においては、認証結果履歴更新部1003を動作させ、ステップS1215で取得された認証結果である認証ステータス情報または認証ステータス情報に対応するコード(数値または文字情報)を用いて認証結果履歴情報1007の更新を行う。認証結果履歴情報1007に記憶する情報として、認証が成功した場合には1やFFH(16進数)、認証が失敗の場合には0や00H(16進数)が例示できる。また、認証が成功の場合には「OK」、認証が失敗の場合には「NG」のように文字の表現を含む文字情報でもよい。   In step S1216, the authentication result history update unit 1003 is operated, and the authentication result history information 1007 using the authentication status information that is the authentication result acquired in step S1215 or a code (numerical value or character information) corresponding to the authentication status information. Update. Examples of information stored in the authentication result history information 1007 include 1 and FFH (hexadecimal number) when authentication is successful, and 0 and 00H (hexadecimal number) when authentication fails. In addition, character information including character expressions such as “OK” when the authentication is successful and “NG” when the authentication is unsuccessful may be used.

ステップS1217では、ステップS1215で取得された認証結果である認証ステータス情報を判断し、認証処理が成功したのであれば、ステップS1218へ移行し、認証OKの返答を行い、認証処理が失敗したのであれば、ステップS1219へ移行し、認証NGの返答を行う。   In step S1217, the authentication status information that is the authentication result acquired in step S1215 is determined. If the authentication process is successful, the process proceeds to step S1218, an authentication OK response is returned, and the authentication process has failed. For example, the process proceeds to step S1219, and authentication NG is returned.

ステップS1210、S1212、S1214において通信エラーが発生したと判断されれば、上述のようにステップS1220へ移行して、通信エラー(認証サーバ110との送受信のエラー)が発生した場合の処理を行う。その処理のフローチャートの例を図13(a)に示す。   If it is determined in steps S1210, S1212, and S1214 that a communication error has occurred, the process proceeds to step S1220 as described above, and processing is performed when a communication error (error in transmission / reception with the authentication server 110) has occurred. An example of a flowchart of the process is shown in FIG.

ステップS1301において、認証制御部1005は、認証結果履歴情報1007を認証情報記憶部1002より読出す。続くステップS1302において、認証結果履歴情報1007を調べ、認証が成功したことがある旨が示されているかどうかを判断する。例えば、認証結果履歴情報1007が、過去に行われた認証処理のうち最新の所定の回数の認証結果が含まれているのであれば、その所定の回数の認証結果の中に、少なくとも1回以上認証が成功したことがあるかどうかを判断する。もし、1回でも認証が成功したことがあれば、ステップS1303に移行する。1回も認証が成功したことが示されていなければ、ステップS1304に移行する。   In step S1301, the authentication control unit 1005 reads the authentication result history information 1007 from the authentication information storage unit 1002. In subsequent step S1302, the authentication result history information 1007 is examined to determine whether or not it is indicated that the authentication has been successful. For example, if the authentication result history information 1007 includes the latest predetermined number of authentication results among authentication processes performed in the past, the predetermined number of authentication results are at least once or more. Determine if authentication has ever been successful. If the authentication has succeeded even once, the process proceeds to step S1303. If it is not shown that the authentication has succeeded once, the process proceeds to step S1304.

ステップS1303においては、認証OKを返答するように準備する。例えば、変数に認証OKを表す値を格納する。一方、ステップS1304においては、認証NGを返答するように準備する。ステップS1303、S1304の後には、ステップS1305へ移行する。   In step S1303, an authentication OK response is prepared. For example, a value representing authentication OK is stored in the variable. On the other hand, in step S1304, it is prepared to return an authentication NG. After steps S1303 and S1304, the process proceeds to step S1305.

ステップS1305では、認証結果履歴情報1007を更新する。この場合には、通信エラーが発生したことを用いて認証結果履歴情報1007を更新する。例えば、過去に行われた認証処理のうち最新の2回(すなわち、直前と、その前)の認証結果が認証結果履歴情報1007により表される場合において、例えば、直前の認証が成功し、その前の認証が失敗のときに、認証結果履歴情報1007を{直前:成功、その前:失敗}と表記するので、更新後の認証結果履歴情報1007は、{直前:エラー、その前:成功}となる。その後、ステップS1306において、認証OKや認証NGの返答を行う。   In step S1305, the authentication result history information 1007 is updated. In this case, the authentication result history information 1007 is updated using the fact that a communication error has occurred. For example, in the case where the latest two authentication results (that is, immediately before and before) are represented by the authentication result history information 1007 in the authentication processing performed in the past, for example, the previous authentication is successful, When the previous authentication is unsuccessful, the authentication result history information 1007 is expressed as {immediately: success, before that: failure}. Therefore, the updated authentication result history information 1007 is {immediately before: error, before: success}. It becomes. Thereafter, in step S1306, authentication OK or authentication NG is returned.

また、図13(b)は、認証結果履歴情報1007が整数値などの数値である場合のステップS1220の処理のフローチャートを示す。なお、認証結果履歴情報1007が数値である場合には、ステップS1216においては、認証が成功すれば、第1の所定の数値(例えば、2)を認証結果履歴情報1007として記憶し、認証が失敗すれば、第2の所定の数値(例えば、1)を記憶されている認証結果履歴情報1007より減じて記憶しなおしたり、さらに第3の所定の数値(例えば、0)を認証結果履歴情報1007として記憶したりすることにより、認証結果履歴情報1007の更新を行うものとする。   FIG. 13B shows a flowchart of the processing in step S1220 when the authentication result history information 1007 is a numerical value such as an integer value. If the authentication result history information 1007 is a numerical value, in step S1216, if the authentication is successful, the first predetermined numerical value (for example, 2) is stored as the authentication result history information 1007, and the authentication fails. Then, the second predetermined numerical value (for example, 1) is subtracted from the stored authentication result history information 1007 and stored again, and the third predetermined numerical value (for example, 0) is further stored. As a result, the authentication result history information 1007 is updated.

ステップS1307では、ステップS1301と同様に、認証結果履歴情報1007を読み出す。ステップS1308では、読み出された認証結果履歴情報1007が定められた範囲にあるかどうか(例えば、正の数値であるかどうか)を判断する。もし、読み出された認証結果履歴情報1007が定められた範囲にあれば、ステップS1309に移行し、ステップS1303と同様に、認証OKを返答するように準備を行う。また、読み出された認証結果履歴情報1007が定められた範囲になければ(例えば、0以下の数値であれば)、ステップS1310に移行し、ステップS1304と同様に、認証NGを返答するように準備を行う。   In step S1307, authentication result history information 1007 is read out as in step S1301. In step S1308, it is determined whether or not the read authentication result history information 1007 is within a predetermined range (for example, whether it is a positive numerical value). If the read authentication result history information 1007 is within the predetermined range, the process proceeds to step S1309, and preparation is made to return an authentication OK as in step S1303. If the read authentication result history information 1007 is not within the predetermined range (for example, if it is a numerical value equal to or less than 0), the process proceeds to step S1310, and authentication NG is returned as in step S1304. Make preparations.

ステップS1309、S1310の後は、ステップS1311に移行し、認証結果履歴情報1007の更新を行う。図13(b)の場合には、ステップS1307で読み出された認証結果履歴情報1007から上述の別の数値を減算して記憶する。その後、ステップS1312において、ステップS1306と同様に、返答を行う。   After steps S1309 and S1310, the process proceeds to step S1311 and the authentication result history information 1007 is updated. In the case of FIG. 13B, the other numerical value described above is subtracted from the authentication result history information 1007 read out in step S1307 and stored. Thereafter, in step S1312, a reply is made in the same manner as in step S1306.

例えば、上述のように、第1の所定の数値が2であり、第2の所定の数値が1であり、定められた範囲が正の数値の範囲であるとして、時間の経過にしたがって、(1)認証処理の成功、(2)認証処理の成功、(3)通信エラー、(4)通信エラーとなったとする。(1)の認証処理の成功によって、ステップS1216により、認証結果履歴情報1007として2が記憶され、同様に、(2)の認証処理の成功により、認証結果履歴情報1007として2が記憶される。(3)の通信エラーの発生により、図13(b)のフローチャートの処理が実行されると、認証OKが返答され、認証結果履歴情報1007として1が記憶される。そして、(4)の通信エラーの発生により、図13(b)のフローチャートの処理が実行されると、再び認証OKが返答され、認証結果履歴情報1007として0が記憶される。もし、その後、再度通信エラーとなり、図13(b)のフローチャートの処理が実行されると、ステップS1307で読み出される認証結果履歴情報1007が0となり、正の数値ではないので、認証NGが返答されることになる。   For example, as described above, the first predetermined numerical value is 2, the second predetermined numerical value is 1, and the determined range is a positive numerical range. It is assumed that 1) authentication processing succeeds, (2) authentication processing succeeds, (3) communication error, and (4) communication error. By the success of the authentication process (1), 2 is stored as the authentication result history information 1007 in step S1216. Similarly, 2 is stored as the authentication result history information 1007 by the success of the authentication process (2). When the processing of the flowchart of FIG. 13B is executed due to the occurrence of the communication error of (3), an authentication OK is returned and 1 is stored as the authentication result history information 1007. When the processing of the flowchart of FIG. 13B is executed due to the occurrence of the communication error (4), the authentication OK is returned again, and 0 is stored as the authentication result history information 1007. If, after that, a communication error occurs again and the processing of the flowchart of FIG. 13B is executed, the authentication result history information 1007 read out in step S1307 becomes 0 and is not a positive numerical value, so authentication NG is returned. Will be.

このように、第1の所定の数値が2であり、第2の所定の数値が1であり、定められた範囲が正の数値の範囲であれば、認証の成功のあと、認証サーバとの通信が2回連続してエラーとなっても認証OKとしてアプリケーションの処理が継続され、3回連続してエラーになると認証NGとなり、アプリケーションの処理が継続されないようにすることができる。第1の所定の数値、第2の所定の数値、定めれた範囲は、任意に定めることができる。   Thus, if the first predetermined numerical value is 2, the second predetermined numerical value is 1, and the predetermined range is a positive numerical value range, after successful authentication, Even if two consecutive communication errors occur, the application process is continued as authentication OK, and when the error occurs three consecutive times, the authentication process is NG and the application process is not continued. The first predetermined numerical value, the second predetermined numerical value, and the determined range can be arbitrarily determined.

図14(c)、(d)、(e)は、認証結果履歴情報1007が、過去に行われた認証のうち、直前の一回の認証の認証結果だけを示す場合に、ステップS1303、S1304が実行されたときのディスプレイへの表示例を示す。もし、認証結果履歴情報1007の示す直前の認証における認証結果が、認証が成功した旨のものであり、ステップS1303が実行されたのであれば、今回は認証に成功したとみなしたことを表示する。これは、今回の認証は、認証サーバと通信ができなかったので認証処理が成功したたかどうかは不明であるが、直前の一回の認証処理は成功しているからである。ただし、次回の認証処理が成功しなければアプリケーションの継続する実行ができなくなることを「1回だけコンテンツを利用することができます」という文言によって示している。   14C, 14D, and 14E show steps S1303 and S1304 in the case where the authentication result history information 1007 indicates only the authentication result of the previous authentication among the authentications performed in the past. The example of a display on a display when is executed is shown. If the authentication result in the previous authentication indicated by the authentication result history information 1007 indicates that the authentication has been successful, and if step S1303 has been executed, this indicates that the authentication has been successful this time. . This is because the authentication of this time was not possible to communicate with the authentication server, so it is unclear whether the authentication process was successful, but the previous authentication process was successful. However, it is indicated by the phrase “content can be used only once” that the application cannot be continuously executed unless the next authentication process is successful.

また、認証結果履歴情報1007の示す直前の認証における認証結果が、認証が成功しなかった旨(認証処理が失敗した旨、または、通信エラーの旨)であり、ステップS1304が実行されたのであれば、今回は認証に失敗したものとみなし、図14(d)の表示を行う。これは、今回の認証では認証サーバと通信ができなかったので認証処理が成功したかどうかは不明であり、直前の認証処理は成功ではないからである。また、通信コネクションは確立できたものの、認証サーバよりACKなどが受信できず、タイムアウトによる通信エラーが発生したことが検出された場合には、図14(e)の表示を行ってもよい。   Also, the authentication result in the authentication immediately before indicated by the authentication result history information 1007 indicates that the authentication was not successful (authentication processing failed or communication error), and step S1304 was executed. For example, this time, it is considered that the authentication has failed, and the display of FIG. This is because it was not possible to communicate with the authentication server in this authentication, so it is unclear whether the authentication process was successful, and the previous authentication process was not successful. If a communication connection has been established but ACK or the like cannot be received from the authentication server and a communication error due to timeout has been detected, the display shown in FIG.

なお、登録済情報1006が記憶されない場合には、S1201からS1207の各ステップの実行は必須ではない。   If the registered information 1006 is not stored, the execution of steps S1201 to S1207 is not essential.

(認証サーバのデータベース)
図15は、認証サーバ107のDB111の構造の一例を示す。図15(a)は、例えば、会員IDとそのパスワード情報を関連付けるテーブルの一例である。会員IDの列には、端末シリアル番号や利用者の識別情報などが格納され、パスワード情報には、認証処理の際に用いられるパスワードそのものやパスワードを一方向関数で処理した情報が格納される。なお、会員IDの列とパスワード情報の列の2つの列を用意する必要はなく、会員IDが充分に長いビット長の情報であり、異なる携帯端末や利用者が同じ会員IDを使用する虞がないのであれば、会員IDだけを格納するようにしてもよい。また、会員IDの列に公開鍵や公開鍵証明書が格納される場合もパスワード情報の列は必須ではない。
(Authentication server database)
FIG. 15 shows an example of the structure of the DB 111 of the authentication server 107. FIG. 15A is an example of a table that associates a member ID with its password information, for example. The member ID column stores a terminal serial number, user identification information, and the like, and the password information stores the password itself used in the authentication process and information obtained by processing the password with a one-way function. It is not necessary to prepare two columns, a member ID column and a password information column. The member ID is sufficiently long bit information, and different mobile terminals or users may use the same member ID. If not, only the member ID may be stored. Also, the password information column is not essential when the public key or public key certificate is stored in the member ID column.

図15(b)は、会員IDに登録日と退会日とを関連付けるテーブルの一例である。登録日は、認証サーバ107に認証情報が登録された日であり、退会日は、認証情報を抹消する旨の要求が携帯端末や利用者から送信などされた日である。認証情報を抹消する旨の要求があれば、会員IDをテーブルから削除すればよいかもしれないが、登録日と退会日とを記録することにより、課金の基準となる日の前後だけ認証情報を抹消した状態にして課金を逃れることができないようにすることができる。なお、退会日に「NULL」が格納されているのは、認証情報を抹消する旨の要求が送信などされていないことを意味する。   FIG. 15B is an example of a table that associates a registration date and a withdrawal date with a member ID. The registration date is the date when the authentication information is registered in the authentication server 107, and the withdrawal date is the date when a request for deleting the authentication information is transmitted from the mobile terminal or the user. If there is a request to delete the authentication information, the member ID may be deleted from the table. However, by recording the registration date and the withdrawal date, the authentication information is only recorded before and after the date that becomes the basis of accounting. It is possible to prevent the billing from escaping in a deleted state. Note that “NULL” is stored on the withdrawal date means that a request for deleting the authentication information is not transmitted.

図15(c)は、会員IDに課金の方法を関連付けるテーブルの一例である。例えば、クレジットカード、銀行口座引落などが支払方法の列に格納され、別のテーブルにクレジットカード番号や銀行口座の番号などが格納される。   FIG. 15C is an example of a table that associates a billing method with a member ID. For example, credit cards, bank account withdrawals, and the like are stored in the payment method column, and credit card numbers, bank account numbers, and the like are stored in separate tables.

(認証サーバの処理)
図16は、認証サーバ110の処理の流れを説明するフローチャートを示す。認証サーバ110に対する要求が、認証要求と認証情報の登録要求の2種類であれば、ステップS1601において、認証要求が受信されたかどうかを判断する。もし、認証要求が受信されれば、ステップS1602へ移行し、認証要求ではなく、認証情報の登録要求であれば、ステップS1606へ移行する。なお、一台の認証サーバが認証要求と登録要求との両方を受信する必要はなく、認証要求を受信する認証サーバと登録要求を受信する認証サーバとが異なっていてもよい。同様に、認証要求を送信する端末装置と登録要求を送信する端末装置とが異なっていてもよい。
(Authentication server processing)
FIG. 16 is a flowchart illustrating the processing flow of the authentication server 110. If there are two types of requests to the authentication server 110, that is, an authentication request and an authentication information registration request, it is determined in step S1601 whether an authentication request has been received. If an authentication request is received, the process proceeds to step S1602, and if it is not an authentication request but an authentication information registration request, the process proceeds to step S1606. Note that it is not necessary for one authentication server to receive both the authentication request and the registration request, and the authentication server that receives the authentication request may be different from the authentication server that receives the registration request. Similarly, the terminal device that transmits the authentication request may be different from the terminal device that transmits the registration request.

ステップS1602においては、認証情報を受信し、認証処理を行う。例えば、認証情報に含まれる端末シリアル番号や利用者の識別情報が図15(a)のテーブルに登録されているかどうかで認証処理が成功したかどうかを判定する。続くステップS1603においては、認証処理が成功した場合には、ステップS1604へ移行し認証処理が成功した旨の認証ステータス情報を返信し、認証処理が成功しなかった場合には、ステップS1605へ移行し認証処理が失敗した旨の認証ステータス情報を返信する。   In step S1602, authentication information is received and authentication processing is performed. For example, it is determined whether or not the authentication process is successful based on whether or not the terminal serial number and the user identification information included in the authentication information are registered in the table of FIG. In the subsequent step S1603, if the authentication process is successful, the process proceeds to step S1604, and authentication status information indicating that the authentication process is successful is returned. If the authentication process is not successful, the process proceeds to step S1605. Returns authentication status information indicating that the authentication process has failed.

認証情報の登録要求が受信されたのであれば、ステップS1606において、登録するべき認証情報を受信する。続くステップS1607においては、DB111への登録処理を行う。例えば、図15(a)に示すテーブルに会員IDなどを登録する。そして、ステップS1608においては、登録完了を返信する。   If an authentication information registration request is received, authentication information to be registered is received in step S1606. In subsequent step S1607, registration processing in the DB 111 is performed. For example, member IDs are registered in the table shown in FIG. In step S1608, registration completion is returned.

(実施形態2)
本発明の実施形態2として、認証情報記憶部1002に記憶される認証結果履歴情報1007のデータ構造の別の例を説明する。
(Embodiment 2)
As a second embodiment of the present invention, another example of the data structure of the authentication result history information 1007 stored in the authentication information storage unit 1002 will be described.

図17は、認証結果履歴情報1007が、直前の一回だけの認証結果を表す場合の一例を示す。認証情報記憶部1002の記憶領域1701には、直前の一回の認証が行われた日時(2008/08/01−18:52)と、そのときの認証結果として「成功」が記憶されている。図13のステップS1301においては、記憶領域1701に記憶されているデータが読出され、ステップS1302において、認証結果として成功が記憶されているかどうかを判断する。また、図12のステップS1216においては、ステップS1215で取得された認証結果とその日時を記憶領域1701に格納する。また、図13のステップS1305においては、通信エラーとなった旨とその日時を記憶領域1701に記憶する。   FIG. 17 shows an example in which the authentication result history information 1007 represents the authentication result only once. The storage area 1701 of the authentication information storage unit 1002 stores the date and time (2008/08 / 01-18: 52) when the last authentication was performed and “success” as the authentication result at that time. . In step S1301 of FIG. 13, the data stored in the storage area 1701 is read, and in step S1302, it is determined whether success is stored as an authentication result. In step S1216 of FIG. 12, the authentication result acquired in step S1215 and the date and time are stored in the storage area 1701. In step S1305 of FIG. 13, the storage area 1701 stores the fact that a communication error has occurred and the date and time.

このように、直前の一回だけの認証結果を記憶することにより、記憶領域を節約することが可能である。また、認証が行われた日時を記憶することにより、例えば、携帯端末のタイマなどに設定された日時を不正に操作されたことを検出することもできる。例えば、記憶領域1701に格納された日時が、携帯端末のタイマなどに設定された日時よりも後であれば、不正が行われたと判断して、アプリケーション109の実行を終了させるように選択をすることができる。なお、このような不正の検出などを行わないのであれば、認証が行われた日時を記憶領域1701などに記憶する必要はない。   As described above, the storage area can be saved by storing the authentication result just once. Further, by storing the date and time when authentication is performed, for example, it is possible to detect that the date and time set in the timer of the portable terminal or the like has been illegally operated. For example, if the date and time stored in the storage area 1701 is later than the date and time set in the timer or the like of the portable terminal, it is determined that fraud has been performed, and the application 109 is selected to be terminated. be able to. If such fraud detection is not performed, it is not necessary to store the date and time of authentication in the storage area 1701 or the like.

なお、本実施形態では、記憶領域1701には、認証処理の成功、認証処理の失敗、通信エラーのいずれかが認証結果として記憶されてもよい。この場合には、図13(b)のフローチャートの処理が用いられる場合において、例えば、上述の第1の所定の数値が1であり、第2の所定の数値が1であり、定められた範囲が正の数値の範囲である場合と同じ認証結果が返答される。   In the present embodiment, the storage area 1701 may store any of authentication process success, authentication process failure, and communication error as an authentication result. In this case, when the processing of the flowchart of FIG. 13B is used, for example, the first predetermined numerical value is 1, the second predetermined numerical value is 1, and a predetermined range is set. The same authentication result is returned as when is in the range of positive numbers.

(実施形態3)
本発明の実施形態3として、認証サーバ110との通信ができなかった場合に、通信が可能となれば、認証サーバ110と通信を行い、認証要求を送信して認証処理が行われる形態について説明する。
(Embodiment 3)
As Embodiment 3 of the present invention, a description will be given of an embodiment in which, when communication with the authentication server 110 is not possible, if communication is possible, the communication is performed with the authentication server 110 and an authentication request is transmitted. To do.

図18は、本実施形態に係るアプリケーション109が、端末装置103のハードウェアと一体となって実行されることにより、実現される装置の機能ブロック図を示し、実施形態1、2の装置の機能ブロック図にさらに、コールバック処理部1801が備えられている。   FIG. 18 shows a functional block diagram of a device realized by executing the application 109 according to the present embodiment integrally with the hardware of the terminal device 103, and shows the function of the device according to the first and second embodiments. Furthermore, a callback processing unit 1801 is provided in the block diagram.

コールバック処理部1801は、所定の条件が満たされる状況になったときに、指定された処理を行う部である。本実施形態においては、所定の条件が満たされる状況には、通信状況が良好となったことや、メールの着信などがあり、実際に通信が可能となったことを含むものとする。   The callback processing unit 1801 is a unit that performs specified processing when a predetermined condition is satisfied. In the present embodiment, the situation in which the predetermined condition is satisfied includes that the communication state has become good and that an incoming mail has been received and that communication is actually possible.

オペレーティングシステムや仮想マシンは、所定の条件のどれが満たされるようになったかを監視している。そして、ある条件が満たされると、イベントを発生させて、オペレーティングシステムや仮想マシンの管理化で動作しているアプリケーションに通知する機能を備えることができる。そこで、本実施形態では、コールバック処理部1801は、そのように通知されるイベントを取得して、そのイベントの種類に応じて設定されたコールバックを実行する。   Operating systems and virtual machines monitor which of the predetermined conditions are met. When a certain condition is satisfied, it is possible to provide a function of generating an event and notifying an application operating in the management of the operating system or the virtual machine. Therefore, in the present embodiment, the callback processing unit 1801 acquires the event notified as such and executes a callback set according to the type of the event.

図19は、コールバック処理部1801が処理するデータ構造を示す。図19において、「イベント1」、「イベント2」、「イベント3」がイベントの種類を示し、それにリスト構造として連なっているノード1902、1903、1904がイベント1に関連付けられたコールバックを表している。   FIG. 19 shows a data structure processed by the callback processing unit 1801. In FIG. 19, “Event 1”, “Event 2”, and “Event 3” indicate the types of events, and nodes 1902, 1903, and 1904 linked to the list structure indicate callbacks associated with the event 1. Yes.

図20は、コールバック処理部1801の処理を説明するフローチャートである。ステップS2001において、イベントが発生し、その通知がされるまで待つ。イベントが発生すると、ステップS2002に移行し、通知されたイベントに対応したコールバックリストの取得を行う。そして、ステップS2003において、コールバックリストのコールバックを順に実行する。   FIG. 20 is a flowchart for explaining the processing of the callback processing unit 1801. In step S2001, an event occurs and waits for notification. When an event occurs, the process proceeds to step S2002, and a callback list corresponding to the notified event is acquired. In step S2003, callbacks in the callback list are executed in order.

本実施形態においては、認証サーバ110との通信ができないことが検出された図12のステップS1220を行う際に図21に示す処理を行うコールバックを、通信状況が良好となったことや実際に通信が可能となったことが検出されると通知されるイベントのリストに追加する。すなわち、ステップS2101において、認証要求の送信を行う。続くステップS2102において、送信が行えたかどうかを判断し、送信ができたのであればステップS2103へ移行し、送信がエラーとなればステップS2110へ移行する。   In the present embodiment, when performing the process shown in FIG. 21 when performing step S1220 in FIG. 12 in which it is detected that communication with the authentication server 110 is not possible, the callback is performed when the communication status becomes good or actually It is added to the list of events to be notified when it is detected that communication is possible. That is, in step S2101, an authentication request is transmitted. In the following step S2102, it is determined whether or not transmission is possible. If transmission is successful, the process proceeds to step S2103, and if transmission is an error, the process proceeds to step S2110.

ステップS2103においては、認証情報の送信を行い、ステップS2104において、送信ができたかどうかを判断し、送信が行えたのであればステップS2105へ移行し、送信がエラーとなればステップS2110へ移行する。   In step S2103, authentication information is transmitted. In step S2104, it is determined whether or not the transmission is successful. If the transmission is successful, the process proceeds to step S2105. If the transmission results in an error, the process proceeds to step S2110.

ステップS2105においては、認証ステータスの受信を行い、ステップS2106において、受信ができたかどうかを判断し、できたのであれば、ステップS2107へ移行し、受信エラーとなればステップS2110へ移行する。   In step S2105, the authentication status is received. In step S2106, it is determined whether or not the authentication status has been received. If so, the process proceeds to step S2107. If a reception error occurs, the process proceeds to step S2110.

ステップS2107においては、認証結果の取得を行う。そして、ステップS2108において、認証に成功すればステップS2109へ移行し、認証が失敗すればステップS2110へ移行する。   In step S2107, an authentication result is acquired. In step S2108, if the authentication is successful, the process proceeds to step S2109, and if the authentication fails, the process proceeds to step S2110.

ステップS2109においては、認証が成功したとの認証結果の履歴を追加する認証結果履歴情報の更新を行う。   In step S2109, the authentication result history information is updated to add an authentication result history indicating that the authentication was successful.

ステップS2110においては、送受信のエラーが発生し認証が成功しなかったので、再度コールバックの設定を行う。   In step S2110, since a transmission / reception error has occurred and authentication has not succeeded, the callback is set again.

本実施形態のように、送受信のエラーが発生し認証が成功しなかった場合に、コールバックを設定して再度、認証を行うことにより、送受信のエラーが発生し認証処理が成功したとみなして、利用者にアプリケーションの使用やコンテンツの利用をさせている間に認証処理に成功すると、その後においては、送受信のエラーが無かったのと同じ状態でアプリケーションの使用やコンテンツの利用をさせることができる。   As in this embodiment, when a transmission / reception error occurs and authentication is not successful, by setting a callback and performing authentication again, it is assumed that a transmission / reception error has occurred and the authentication process has been successful. If the authentication process succeeds while letting the user use the application or the content, the application can be used or the content can be used in the same state as if there was no transmission / reception error. .

本発明の一実施形態の概要を示す図である。It is a figure which shows the outline | summary of one Embodiment of this invention. 本発明の一実施形態における通信の過程を説明するシーケンス図である。It is a sequence diagram explaining the process of communication in one Embodiment of this invention. 本発明の一実施形態に係る携帯端末のハードウェア構成を示す機能ブロック図である。It is a functional block diagram which shows the hardware constitutions of the portable terminal which concerns on one Embodiment of this invention. 本発明の一実施形態に係る携帯端末において、オペレーティングシステムの管理下でプログラムが動作している様子を示す模式図である。It is a schematic diagram which shows a mode that the program is operate | moving under management of an operating system in the portable terminal which concerns on one Embodiment of this invention. 本発明の一実施形態に係るサーバ装置の機能ブロック図である。It is a functional block diagram of the server apparatus which concerns on one Embodiment of this invention. 本発明の一実施形態に係るサーバ装置において、オペレーティングシステムの管理下でプログラムが動作している様子を示す模式図である。In the server apparatus concerning one Embodiment of this invention, it is a schematic diagram which shows a mode that the program is operating under management of an operating system. 本発明の一実施形態に係る端末装置がダウンロードサーバ装置よりアプリケーションをダウンロードする処理のフローチャートである。It is a flowchart of the process which the terminal device which concerns on one Embodiment of this invention downloads an application from a download server apparatus. 本発明の一実施形態に係るダウンロードサーバ装置が端末装置にアプリケーションをダウンロードさせる処理のフローチャートである。It is a flowchart of the process in which the download server apparatus which concerns on one Embodiment of this invention downloads an application to a terminal device. 本発明の一実施形態に係る携帯端末にダウンロードされたアプリケーションの実行の処理のフローチャートである。It is a flowchart of the process of execution of the application downloaded to the portable terminal which concerns on one Embodiment of this invention. 本発明の一実施形態に係る処理実行装置の機能ブロック図である。It is a functional block diagram of the process execution apparatus which concerns on one Embodiment of this invention. 本発明の一実施形態に係るアプリケーションの処理のフローチャートである。It is a flowchart of the process of the application which concerns on one Embodiment of this invention. 本発明の一実施形態に係る認証制御部における処理の流れを説明するフローチャートである。It is a flowchart explaining the flow of a process in the authentication control part which concerns on one Embodiment of this invention. 本発明の一実施形態に係る認証制御部における処理の流れを説明するフローチャートである。It is a flowchart explaining the flow of a process in the authentication control part which concerns on one Embodiment of this invention. 本発明の一実施形態に係る携帯端末のディスプレイの表示の一例図である。It is an example figure of a display of a display of a portable terminal concerning one embodiment of the present invention. 本発明の一実施形態に係る認証サーバのデータベースの構造の一例図である。It is an example of the structure of the database of the authentication server which concerns on one Embodiment of this invention. 本発明の一実施形態に係る認証サーバの処理の流れを説明するフローチャートである。It is a flowchart explaining the flow of a process of the authentication server which concerns on one Embodiment of this invention. 本発明の一実施形態に係る認証結果履歴情報を格納するデータ構造の一例図である。It is an example of the data structure which stores the authentication result historical information which concerns on one Embodiment of this invention. 本発明の一実施形態に係る処理実行装置の機能ブロック図である。It is a functional block diagram of the process execution apparatus which concerns on one Embodiment of this invention. 本発明の一実施形態に係るコールバック処理部が処理するデータ構造の一例図である。It is an example figure of the data structure which the callback process part concerning one Embodiment of this invention processes. 本発明の一実施形態に係るコールバック処理部の処理を説明するフローチャートである。It is a flowchart explaining the process of the callback process part which concerns on one Embodiment of this invention. 本発明の一実施形態に係るコールバック処理のフローチャートである。It is a flowchart of the callback process which concerns on one Embodiment of this invention.

符号の説明Explanation of symbols

1000 実行中アプリケーション
1001 主処理部
1002 認証情報記憶部
1003 認証結果履歴更新部
1004 通信部
1005 認証制御部
1000 running application 1001 main processing unit 1002 authentication information storage unit 1003 authentication result history update unit 1004 communication unit 1005 authentication control unit

Claims (3)

ネットワークを介して受信した認証要求に応じ成功か否かの判定がされる認証処理を実行する認証サーバへ、前記ネットワークを介して前記認証要求を送信する送信部と、
前記認証サーバから、前記ネットワークを介して前記認証処理の結果を受信する受信部と、
前記受信部が受信した前記認証処理の結果が、成功であれば第1の処理を選択し、失敗であれば第2の処理を選択する処理選択部と、
前記送信部による前記認証要求の送信と、前記受信部による前記認証処理の結果の受信とを行う際の通信エラーの発生の有無を検出するエラー検出部と、
前記受信部が受信した前記認証処理の結果の履歴と、前記エラー検出部が検出した前記通信エラーの履歴とを所定の数含む認証結果履歴情報を記憶する記憶部と、
前記エラー検出部により前記通信エラーの検出がされた場合は前記通信エラーを示す履歴を含ませるように前記認証結果履歴情報を更新し、前記エラー検出部により前記通信エラーの検出がされなかった場合は前記受信部が受信した前記認証処理の結果を示す履歴を含ませるように前記認証結果履歴情報更新する認証結果履歴更新部と、
前記エラー検出部により前記通信エラーの発生したことが検出され、前記認証結果履歴情報に前記認証処理の成功を示す履歴が既に含まれる場合には、前記処理選択部に前記第1の処理を選択させる認証制御部と、
を有することを特徴とする処理実行装置。
A transmitting unit that transmits the authentication request via the network to an authentication server that executes an authentication process in which it is determined whether or not the authentication request is successful in response to the authentication request received via the network;
A receiving unit that receives a result of the authentication process from the authentication server via the network ;
A process selection unit that selects the first process if the result of the authentication process received by the reception unit is successful , and selects the second process if the result is failure ;
An error detection unit for detecting the presence or absence of a communication error when performing the transmission of the authentication request by the transmission unit and the reception of the result of the authentication process by the reception unit;
A storage unit for storing authentication result history information including a predetermined number of the history of the result of the authentication process received by the receiving unit and the history of the communication error detected by the error detection unit ;
When the communication error is detected by the error detection unit, the authentication result history information is updated to include a history indicating the communication error, and the communication error is not detected by the error detection unit. Is an authentication result history update unit that updates the authentication result history information so as to include a history indicating the result of the authentication process received by the receiving unit;
If the error detection unit detects that the communication error has occurred and the authentication result history information already includes a history indicating the success of the authentication process, the process selection unit selects the first process. An authentication control unit
A processing execution apparatus comprising:
通信インターフェースを用いて、ネットワークを介して受信した認証要求に応じ成功か否かの判定がされる認証処理を実行する認証サーバへ、前記認証要求を送信し、前記認証サーバから、前記認証処理の結果を受信し、
受信した前記認証処理の結果が、成功であれば第1の処理を選択し、失敗であれば第2の処理を選択することを計算機に実行させるためのアプリケーションプログラムであって、
前記認証要求の送信と前記認証処理の結果の受信とを行う際の通信エラーの発生の有無を通信のためのシステムコールの戻り値の比較で検出し
受信した前記認証処理の結果の履歴と、検出された前記通信エラーの履歴とを所定の数含む認証結果履歴情報をメモリに記憶する際前記メモリに記憶された認証結果履歴情報を読み出し、前記通信エラーの検出がされた場合は前記通信エラーを示す履歴を含ませるように認証結果履歴情報を更新し、前記通信エラーの検出がされなかった場合は受信した前記認証処理の結果を示す履歴を含ませるように認証結果履歴情報更新し前記メモリに記憶し
前記通信エラーの発生したことが検出され、前記認証結果履歴情報に前記認証処理の成功を示す履歴が既に含まれる場合には、前記第1の処理を選択させることを計算機に実行させるためのアプリケーションプログラム。
Using the communication interface, the authentication request is transmitted to an authentication server that executes an authentication process in which whether or not the authentication request received via the network is successful is determined. Receive the results,
It received the result of the authentication process has selects a first processing if successful, an application program for executing the selecting a second processing if failed computer,
The presence or absence of a communication error when sending the authentication request and receiving the result of the authentication process is detected by comparing the return value of a system call for communication ,
When storing the authentication result history information including a predetermined number of the received history of the authentication processing results and the detected communication error history in the memory, the authentication result history information stored in the memory is read, When a communication error is detected , the authentication result history information is updated to include a history indicating the communication error. When the communication error is not detected , a history indicating the received authentication processing result is updated. Update the authentication result history information to include it , store it in the memory ,
An application for causing a computer to execute the selection of the first process when the occurrence of the communication error is detected and the authentication result history information already includes a history indicating the success of the authentication process. program.
請求項2に記載のアプリケーションプログラムを携帯端末へダウンロード可能に記憶する記憶部を有するダウンロードサーバ装置。   The download server apparatus which has a memory | storage part which memorize | stores the application program of Claim 2 so that download to a portable terminal is possible.
JP2008214384A 2008-08-22 2008-08-22 Process execution device, application program, and download server device Expired - Fee Related JP4313425B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008214384A JP4313425B1 (en) 2008-08-22 2008-08-22 Process execution device, application program, and download server device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008214384A JP4313425B1 (en) 2008-08-22 2008-08-22 Process execution device, application program, and download server device

Publications (2)

Publication Number Publication Date
JP4313425B1 true JP4313425B1 (en) 2009-08-12
JP2010049568A JP2010049568A (en) 2010-03-04

Family

ID=41036716

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008214384A Expired - Fee Related JP4313425B1 (en) 2008-08-22 2008-08-22 Process execution device, application program, and download server device

Country Status (1)

Country Link
JP (1) JP4313425B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011128888A (en) * 2009-12-17 2011-06-30 Konica Minolta Business Technologies Inc Information processor and control method and information processing program for information processor
JP2012034085A (en) * 2010-07-29 2012-02-16 Buffalo Inc Relay device, radio communication equipment, network system, program, and method

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201107275D0 (en) * 2011-04-28 2011-06-15 Communigate Ltd Method of tracking software application internet downloads
JP2013020579A (en) * 2011-07-14 2013-01-31 Kddi Corp Program, terminal device, and authentication system
CN103685150B (en) * 2012-09-03 2015-08-12 腾讯科技(深圳)有限公司 The method and apparatus of upload file
KR101400403B1 (en) * 2012-12-28 2014-05-27 주식회사 웨어밸리 Database security apparatus
WO2024122002A1 (en) * 2022-12-07 2024-06-13 日本電気株式会社 Terminal, system, method for controlling terminal, and storage medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011128888A (en) * 2009-12-17 2011-06-30 Konica Minolta Business Technologies Inc Information processor and control method and information processing program for information processor
JP2012034085A (en) * 2010-07-29 2012-02-16 Buffalo Inc Relay device, radio communication equipment, network system, program, and method
US8504833B2 (en) 2010-07-29 2013-08-06 Buffalo Inc. Relay device, wireless communications device, network system, program storage medium, and method

Also Published As

Publication number Publication date
JP2010049568A (en) 2010-03-04

Similar Documents

Publication Publication Date Title
JP4313425B1 (en) Process execution device, application program, and download server device
JP5372246B2 (en) Method and system for performing multi-stage virtual SIM provisioning and mobile device configuration
EP3654618B1 (en) Audio broadcasting method, device, and system, and smart broadcasting apparatus
US8881977B1 (en) Point-of-sale and automated teller machine transactions using trusted mobile access device
CN1946222B (en) Software certification device for mobile communication terminal and method thereof
EP2419826B1 (en) Systems and methods for automatically enabling and disabling applications and widgets with a computing device based on compatibility and/or user preference
JP5057475B2 (en) Service access authentication data management system
JP2019204519A (en) Portal authentication
KR20030055158A (en) Device and method for restricting content access and storage
US7797504B2 (en) Device for processing information based on stored identifiers and a working method therof.
KR102391784B1 (en) A primary device, an accessory device, and methods for processing operations on the primary device and the accessory device
CN108335105B (en) Data processing method and related equipment
JP2007528064A (en) Running unverified programs in a wireless device operating environment
JP3833652B2 (en) Network system, server device, and authentication method
US20080155654A1 (en) Method And Device For Re-Dispatching Specifically Coded Access Objects From A Server To A Mobile Terminal Device
JP4936819B2 (en) Portable terminal, passcode generation program, and passcode generation method
KR101745919B1 (en) User authentication method and system using software-based HSM without password exposure
JP2003526153A (en) How to service network-based storage sites
JP4877846B2 (en) Terminal device, program, recording medium, and server device
JP3887176B2 (en) Relay device, communication control method, program, and recording medium
JP2005216448A (en) Server computer for rendering services
JP2003244065A (en) Program activation method, server apparatus, and terminal
JP2005092723A (en) Terminal device and connection device for connecting terminal device to target device
US10798574B1 (en) Mobile communication device certification framework
JP2009261001A (en) Information processing device, portable terminal, information processing program and computer readable recording medium recorded with information processing program, and portable terminal control program and computer readable recording medium recorded with portable terminal control program

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090512

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090514

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120522

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120522

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130522

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130522

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140522

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees