(57)【要約】【課題】不正なアプリケーションの取得または利用を防止する安全性の高いアプリケーション提供方法、アプリケーション提供装置、アプリケーション提供プログラム、および当該プログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。【解決手段】利用者装置からの要求に応じ、アプリケーションでのみ読み取り可能な非公開ＩＤ、利用者装置が読み取り可能な非公開ＩＤ、および機能制限を加えたアプリケーションを利用者装置に送信し、その後利用者装置からの認証要求に応じ、利用者装置が送信してきた公開ＩＤとしてのＩＤと公開または非公開ＩＤのいずれかを用いてアプリケーションおよび利用者装置の認証を行い、認証に成功した場合、認証ＩＤおよび認証ＩＤを生成するために用いた非可逆関数を利用者装置に送信する。【選択図】　　　図１
2004030432.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークを介して利用者装置にアプリケーションを提供するときに当該アプリケーションを提供するコンピュータが実行するアプリケーション提供方法であって、
利用者装置からのアプリケーション提供要求に応じ、前記アプリケーションでのみ読み取り可能な非公開ＩＤを生成した後、逆演算可能な可逆関数を関数記憶部から呼び出し、当該可逆関数に前記非公開ＩＤを代入して前記利用者装置が読み取り可能な公開ＩＤを生成し、前記二つのＩＤをＩＤ記憶部に記憶するステップと、
機能制限ならびに当該機能制限を解除する機能を加えたアプリケーション、前記非公開ＩＤ、前記公開ＩＤを前記利用者装置に送信するステップと、
利用者装置からの認証要求に応じ、当該利用者装置が公開ＩＤとして送信してきたＩＤと、前記ＩＤ記憶部から読み出した非公開ＩＤまたは公開ＩＤの少なくともいずれか一方とを用いて認証を行うステップと、
この認証ステップで認証に成功した場合、逆演算不可能な非可逆関数を生成し、前記機能制限を解除するために、この非可逆関数と、当該非可逆関数に前記ＩＤ記憶部から読み出した非公開ＩＤを代入して生成した認証ＩＤとを前記利用者装置に送信するステップと
からなることを特徴とするアプリケーション提供方法。
【請求項２】
前記認証を行うステップは、前記関数記憶部から呼び出した可逆関数の逆関数に前記利用者装置が公開ＩＤとして送信してきたＩＤを代入して生成した量が、前記ＩＤ記憶部に記憶された公開ＩＤと一致するかどうかの照合を行うことを特徴とする請求項１記載のアプリケーション提供方法。
【請求項３】
前記認証を行うステップは、前記利用者装置が公開ＩＤとして送信してきたＩＤが前記ＩＤ記憶部に記憶された公開ＩＤと一致するかどうかの照合を行うことを特徴とする請求項１記載のアプリケーション提供方法。
【請求項４】
通信ネットワークを介して利用者装置にアプリケーションを提供するアプリケーション提供装置であって、
提供するアプリケーションと、認証を行うために必要な複数のＩＤと、この複数のＩＤの各々を生成する関数とを記憶する記憶手段と、
前記アプリケーションでのみ読み取り可能な非公開ＩＤと、前記利用者装置が読み取り可能な公開ＩＤと、前記アプリケーションに加えられた機能制限を解除するために必要な認証ＩＤとを生成するＩＤ生成手段と、
アプリケーションを受信した利用者装置からの認証要求に応じて、当該利用者装置が公開ＩＤとして送信してきたＩＤと、前記記憶手段から読み出した非公開ＩＤまたは公開ＩＤの少なくともいずれか一方とを用いて認証を行う認証手段とを備えたことを特徴とするアプリケーション提供装置。
【請求項５】
通信ネットワークを介して利用者装置にアプリケーションを提供するために、コンピュータを、
提供するアプリケーションと、認証を行うために必要な複数のＩＤと、この複数のＩＤの各々を生成する関数とを記憶する記憶手段、
前記アプリケーションでのみ読み取り可能な非公開ＩＤと、前記利用者装置が読み取り可能な公開ＩＤと、前記アプリケーションに加えられた機能制限を解除するために必要な認証ＩＤとを生成するＩＤ生成手段、
アプリケーションを受信した利用者装置からの認証要求に応じて、当該利用者装置が公開ＩＤとして送信してきたＩＤと、前記記憶手段から読み出した非公開ＩＤまたは公開ＩＤの少なくともいずれか一方とを用いて認証を行う認証手段、として機能させることを特徴とするアプリケーション提供プログラム。
【請求項６】
通信ネットワークを介して利用者装置にアプリケーションを提供するために、コンピュータを、
提供するアプリケーションと、認証を行うために必要な複数のＩＤと、この複数のＩＤの各々を生成する関数とを記憶する記憶手段、
前記アプリケーションでのみ読み取り可能な非公開ＩＤと、前記利用者装置が読み取り可能な公開ＩＤと、前記アプリケーションに加えられた機能制限を解除するために必要な認証ＩＤとを生成するＩＤ生成手段、
アプリケーションを受信した利用者装置からの認証要求に応じて、当該利用者装置が公開ＩＤとして送信してきたＩＤと、前記記憶手段から読み出した非公開ＩＤまたは公開ＩＤの少なくともいずれか一方とを用いて認証を行う認証手段、として機能させるアプリケーション提供プログラムを記録したことを特徴とするアプリケーション提供プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信ネットワークを介して利用者の要求するアプリケーションの提供を行うアプリケーション提供方法、アプリケーション提供装置、アプリケーション提供プログラム、および当該プログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【０００２】
【従来の技術】
従来、サービス提供者がインターネット等の通信ネットワークを介して利用者の要求するアプリケーションの提供を行う際には、サービス提供者側から利用者に対して予め付与されたＩＤ等の識別情報を用いて認証を行っている。
【０００３】
特に、アプリケーションの機能に利用制限を設けている場合、この利用制限を受けずにアプリケーションの利用を希望する利用者は、利用制限を解除するためにアプリケーションから要求される識別情報の提供をサービス提供者に対して要求する一方、この要求を受けたサービス提供者は識別情報を利用者に送信し、その識別情報が正規のものかどうかを利用者側に認証させることでサービスの提供を行っている。
【０００４】
【発明が解決しようとする課題】
しかしながら上述した従来技術では、不正に識別情報を取得した第３者にもアプリケーションが利用されてしまう恐れがあった。
【０００５】
より具体的には、サービス提供者から送信される識別情報は同一のアプリケーションに対して同じ識別情報が使用されるため、この識別情報を不正に入手した第３者は、利用制限を解除してアプリケーションを無制限に利用できてしまう可能性があった。
【０００６】
本発明は上記課題を解決するためになされたものであり、その目的は、不正なアプリケーションの取得または利用を防止する安全性の高いアプリケーション提供方法、アプリケーション提供装置、アプリケーション提供プログラム、および当該プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することにある。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、請求項１記載の本発明は、通信ネットワークを介して利用者装置にアプリケーションを提供するときに当該アプリケーションを提供するコンピュータが実行するアプリケーション提供方法であって、利用者装置からのアプリケーション提供要求に応じ、前記アプリケーションでのみ読み取り可能な非公開ＩＤを生成した後、逆演算可能な可逆関数を関数記憶部から呼び出し、当該可逆関数に前記非公開ＩＤを代入して前記利用者装置が読み取り可能な公開ＩＤを生成し、前記二つのＩＤをＩＤ記憶部に記憶するステップと、機能制限ならびに当該機能制限を解除する機能を加えたアプリケーション、前記非公開ＩＤ、前記公開ＩＤを前記利用者装置に送信するステップと、利用者装置からの認証要求に応じ、当該利用者装置が公開ＩＤとして送信してきたＩＤと、前記ＩＤ記憶部から読み出した非公開ＩＤまたは公開ＩＤの少なくともいずれか一方とを用いて認証を行うステップと、この認証ステップで認証に成功した場合、逆演算不可能な非可逆関数を生成し、前記機能制限を解除するために、この非可逆関数と、当該非可逆関数に前記ＩＤ記憶部から読み出した非公開ＩＤを代入して生成した認証ＩＤとを前記利用者装置に送信するステップとからなることを要旨とする。
【０００８】
請求項１記載の本発明によれば、提供するアプリケーションにアプリケーションでのみ読み取り可能な非公開ＩＤと利用者が読み取ることのできる公開ＩＤとを付与することにより、第３者が不正に公開ＩＤを入手してもそれだけではアプリケーションの制限は解除されず、正規の利用者に対してのみアプリケーションを提供することができる。
【０００９】
請求項２記載の本発明は、前記認証を行うステップは、前記関数記憶部から呼び出した可逆関数の逆関数に前記利用者装置が公開ＩＤとして送信してきたＩＤを代入して生成した量が、前記ＩＤ記憶部に記憶された公開ＩＤと一致するかどうかの照合を行うことを要旨とする。
【００１０】
請求項２記載の本発明によれば、請求項１記載のアプリケーション提供方法において、アプリケーション提供装置が認証を行う際、関数記憶部から読み出した可逆関数の逆関数に利用者装置から公開ＩＤとして受信したＩＤを代入して生成した量と記憶している公開ＩＤとの照合を行うことにより、アプリケーションおよびアプリケーションを送信した利用者装置の認証を行うことができる。
【００１１】
請求項３記載の本発明は、前記認証を行うステップは、前記利用者装置が公開ＩＤとして送信してきたＩＤが前記ＩＤ記憶部に記憶された公開ＩＤと一致するかどうかの照合を行うことを要旨とする。
【００１２】
請求項３記載の本発明によれば、請求項１記載のアプリケーション提供方法において、アプリケーション提供装置が認証を行う際、利用者装置が公開ＩＤとして送信してきたＩＤと記憶している公開ＩＤとの照合を行うことにより、アプリケーションおよびアプリケーションを送信した利用者装置の認証を行うことができる。
【００１３】
請求項４記載の本発明は、通信ネットワークを介して利用者装置にアプリケーションを提供するアプリケーション提供装置であって、提供するアプリケーションと、認証を行うために必要な複数のＩＤと、この複数のＩＤの各々を生成する関数とを記憶する記憶手段と、前記アプリケーションでのみ読み取り可能な非公開ＩＤと、前記利用者装置が読み取り可能な公開ＩＤと、前記アプリケーションに加えられた機能制限を解除するために必要な認証ＩＤとを生成するＩＤ生成手段と、アプリケーションを受信した利用者装置からの認証要求に応じて、当該利用者装置が公開ＩＤとして送信してきたＩＤと、前記記憶手段から読み出した非公開ＩＤまたは公開ＩＤの少なくともいずれか一方とを用いて認証を行う認証手段とを備えたことを要旨とする。
【００１４】
請求項４記載の本発明によれば、提供するアプリケーションと、認証を行うために必要な複数のＩＤと、この複数のＩＤの各々を生成する関数とを記憶する記憶手段と、アプリケーションでのみ読み取り可能な非公開ＩＤと、利用者装置が読み取り可能な公開ＩＤと、アプリケーションに加えられた機能制限を解除するために必要な認証ＩＤとを生成するＩＤ生成手段と、利用者装置が公開ＩＤとして送信してきたＩＤと、記憶手段から読み出した非公開ＩＤまたは公開ＩＤの少なくともいずれか一方とを用いてアプリケーションおよび利用者装置の認証を行う認証手段とを備えたアプリケーション提供装置を提供することにより、第３者が不正に公開ＩＤを入手してもそれだけではアプリケーションの制限は解除されず、正規の利用者に対してのみアプリケーションを提供することができる。
【００１５】
請求項５記載の本発明は、通信ネットワークを介して利用者装置にアプリケーションを提供するために、コンピュータを、提供するアプリケーションと、認証を行うために必要な複数のＩＤと、この複数のＩＤの各々を生成する関数とを記憶する記憶手段、前記アプリケーションでのみ読み取り可能な非公開ＩＤと、前記利用者装置が読み取り可能な公開ＩＤと、前記アプリケーションに加えられた機能制限を解除するために必要な認証ＩＤとを生成するＩＤ生成手段、アプリケーションを受信した利用者装置からの認証要求に応じて、当該利用者装置が公開ＩＤとして送信してきたＩＤと、前記記憶手段から読み出した非公開ＩＤまたは公開ＩＤの少なくともいずれか一方とを用いて認証を行う認証手段、として機能させることを要旨とする。
【００１６】
請求項５記載の本発明によれば、コンピュータを、提供するアプリケーションと、認証を行うために必要な複数のＩＤと、この複数のＩＤの各々を生成する関数とを記憶する記憶手段、アプリケーションでのみ読み取り可能な非公開ＩＤと、利用者装置が読み取り可能な公開ＩＤと、アプリケーションに加えられた機能制限を解除するために必要な認証ＩＤとを生成するＩＤ生成手段、利用者装置が公開ＩＤとして送信してきたＩＤと、記憶手段から読み出した非公開ＩＤまたは公開ＩＤの少なくともいずれか一方とを用いてアプリケーションおよび利用者装置の認証を行う認証手段、として機能させるアプリケーション提供プログラムを提供することにより、第３者が不正に公開ＩＤを入手してもそれだけではアプリケーションの制限は解除されず、正規の利用者に対してのみアプリケーション提供サービスを行うことができる。
【００１７】
請求項６記載の本発明は、通信ネットワークを介して利用者装置にアプリケーションを提供するために、コンピュータを、提供するアプリケーションと、認証を行うために必要な複数のＩＤと、この複数のＩＤの各々を生成する関数とを記憶する記憶手段、前記アプリケーションでのみ読み取り可能な非公開ＩＤと、前記利用者装置が読み取り可能な公開ＩＤと、前記アプリケーションに加えられた機能制限を解除するために必要な認証ＩＤとを生成するＩＤ生成手段、アプリケーションを受信した利用者装置からの認証要求に応じて、当該利用者装置が公開ＩＤとして送信してきたＩＤと、前記記憶手段から読み出した非公開ＩＤまたは公開ＩＤの少なくともいずれか一方とを用いて認証を行う認証手段、として機能させるアプリケーション提供プログラムを記録したことを要旨とする。
【００１８】
請求項６記載の本発明によれば、請求項５記載のアプリケーション提供プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することにより、正規の利用者にのみサービスを提供することができるアプリケーション提供プログラムを広く流通させることができる。
【００１９】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。
【００２０】
図１は、本発明の一実施形態に係るアプリケーション提供装置の概略構成を示すブロック図である。
【００２１】
同図に示すアプリケーション提供装置１は、外部から情報の入力と出力をそれぞれ行うキーボード等の入力部１１とモニタ等の出力部１２、各種処理に応じた演算等を行う演算部１３、インターネット等の通信ネットワークを介して情報の送受信を行う送受信部１４、プログラム等を格納する主記憶部１５、アプリケーションを識別するためのＩＤを記憶するＩＤ記憶部１６、以後の処理に必要な関数を記憶する関数記憶部１７、アプリケーションを記憶するアプリケーション記憶部１８を少なくとも有する。
【００２２】
アプリケーション提供装置１はコンピュータであり、演算部１３は中央処理装置（ＣＰＵ：Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）により構成されている。また、主記憶部１５はメインメモリ等により構成されており、本実施形態に係る各種処理を実行するためのアプリケーション提供プログラムもその中に記録されている。このアプリケーション提供プログラムは、ＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体に記録しておくことも勿論可能である。
【００２３】
インターネット等の（通信）ネットワーク３を介してアプリケーション提供装置１に接続され、アプリケーションの提供を受ける側の利用者装置２は、アプリケーション提供装置１と同様コンピュータにより構成され、上記同様の機能を有する入力部２１、出力部２２、演算部２３、送受信部２４、主記憶部２５に加え、受信したアプリケーションならびにＩＤ等を記憶しておくアプリケーション格納部２６を少なくとも有している。
【００２４】
以上の構成を有するアプリケーション提供装置１が実行するアプリケーション提供方法の処理内容について、図２に示す処理フロー図を参照して説明する。同図においては、アプリケーション提供装置１と利用者装置２との間の情報の送受信とともに、各装置の内部で行われる具体的な処理の概要についても記載している（図中の点線部分を参照）。
【００２５】
図２に示すように、アプリケーション提供の際にネットワーク３を介して行われるアプリケーション提供装置１と利用者装置２の間の処理は、（１）利用者装置２からアプリケーション提供装置１へのアプリケーション提供要求（ステップｄ１）、（２）アプリケーション提供装置１から利用者装置２へのアプリケーションとこのアプリケーション識別に必要なＩＤの送付（ステップｄ３）、（３）利用者装置２からアプリケーション提供装置１への認証要求（ステップｄ５）、（４）アプリケーション提供装置１から利用者装置２への認証ＩＤの送付（ステップｄ７）の４つのステップから構成される。
【００２６】
このアプリケーション提供処理において、各装置の内部処理を含んだ詳細な処理について、引き続き図２に示す処理フロー図を用いて説明する。
【００２７】
まず、利用者装置２が所望のアプリケーションの提供をアプリケーション提供装置１に対して要求する（ステップＳ１、ｄ１）。ここでの提供要求は、例えば提供者側が予めインターネット等で公開されるサイト上に所定のフォームを設定したページを用意しておき、利用者がこのサイトにアクセスし、必要事項を記載して送信するようにしてもよいし、提供者側の電子メールアドレスに利用者が必要事項を記入して電子メールを送信するようにしてもよい。
【００２８】
アプリケーション提供要求を受信したアプリケーション提供装置１は、利用者装置２から要求のあったアプリケーションを識別するために必要なＩＤとして、まずアプリケーションでのみ読み取り可能な非公開ＩＤ−Ｂを演算部１３で生成し（ステップＳ３）、ＩＤ記憶部１６にこのＩＤ−Ｂの値を記憶する。
【００２９】
ＩＤ−Ｂは個々の要求に対してユニークであってもそうでなくても構わない。また、生成日時等の数字をもとに生成したワンタイムＩＤ（使い捨てのもの）をＩＤ−Ｂとして用いてもよい。
【００３０】
アプリケーション提供装置１はその後、ＩＤ記憶部１６からＩＤ−Ｂを読み出すとともに、関数記憶部１７で記憶している可逆関数αを呼び出し、演算部１３でαにＩＤ−Ｂを代入することによって新たなＩＤ−Ｃ＝α（ＩＤ−Ｂ）を生成し（ステップＳ５）、このＩＤ−ＣをＩＤ記憶部１６に記憶しておく。ＩＤ−Ｃは、利用者装置２が内容を読み取れるもの、すなわち公開ＩＤとして設定しておく。
【００３１】
可逆関数αは可逆性、すなわち逆関数を有する関数であればどのようなものを用いてもよい。前述したように関数記憶部１７にすでに記憶されたαを全てのユーザに対して共通に使用する以外に、例えばαを上記ＩＤと同様にその都度生成するようにしてもよい。
【００３２】
いずれの場合にも、可逆関数αに含まれる係数等に例えばワンタイム的な要素を含めることによって、戻り値等から利用者装置２がαの値を知ることが困難になるようにしておくことが望ましい。この意味で、セキュリティ上はαとしてできるだけ高度な関数を用いた方がより好ましいことはいうまでもない。
【００３３】
次のステップＳ７では、ステップＳ３、Ｓ５でそれぞれ生成したＩＤ−Ｂ（非公開型）およびＩＤ−Ｃ（公開型）をＩＤ記憶部１６から読み出すとともに、利用者装置２から要求されたアプリケーションをアプリケーション記憶部１８から読み出し、このアプリケーションの機能を制限するための「機能制限」機能をアプリケーション本体に組み込み、これらを一括して利用者装置２へ送信する（ステップＳ７、ｄ３）。
【００３４】
図５は、このステップで送信するデータ１００要部の概略構成を概念的に示す説明図である。同図に示すデータ１００は、少なくともコンテンツ本体１０１、非公開ＩＤ−Ｂ１０２、公開ＩＤ−Ｃ１０３、機能制限データ１０４、制御プログラム１０５から構成される。
【００３５】
機能制限データ１０４は、演算部１３においてアプリケーション本体１０１に対して付与され、データ１００を取得しただけではアプリケーションを利用可能状態にしない制限機能を有している。後述する利用者装置２側の処理（ステップＳ１７、１９、２１参照）で認証が成功した場合にのみ、制御プログラム１０５によって機能制限解除のコマンドが起動し、機能制限が解除（あるいは機能制限データ１０４が削除）される。なお、機能制限データ１０４に、利用者装置２による認証結果に応じて機能制限を解除するための自動演算を起動させるような設定を付与しておくことも可能である。
【００３６】
データ１００をアプリケーション提供装置１から受信した利用者装置２は、このデータ１００をアプリケーション格納部２６に記憶した後、アプリケーションの機能制限を解除して使用可能にするために、公開ＩＤ−Ｃをアプリケーション格納部２６から読み出し、アプリケーション提供装置１に送信して認証要求を行う（ステップＳ９、ｄ５）。
【００３７】
なお、図２では、利用者装置２がアプリケーション提供装置１に送信したＩＤ−ＣをＩＤ−Ｃ２　と記載しているが、これは以後の処理において、アプリケーション提供装置１がＩＤ記憶部１６に記憶しているＩＤ−Ｃと受信したＩＤ情報であるＩＤ−Ｃ２　との比較認証を行うので、その際に両者を混同しないで区別するための措置である。
【００３８】
ＩＤ−Ｃ２　を受信したアプリケーション提供装置１は、関数記憶部１７から可逆関数αの逆関数であるα−１を呼び出してこのα−１にＩＤ−Ｃ２　を代入し、ＩＤ−Ｂ’＝α−１（ＩＤ−Ｃ２　）を生成する（ステップＳ１１）。
【００３９】
その後、ＩＤ記憶部１６に記憶されたＩＤ−Ｂを読み出し、ステップＳ１１で生成したＩＤ−Ｂ’と照合し（ステップＳ１３）、両者が一致した（ＹＥＳ）場合には演算部１３で逆関数を持たない非可逆関数βを生成するとともに、ＩＤ−Ｂをこのβに代入して認証ＩＤ−Ｄ＝β（ＩＤ−Ｂ）を生成し、βおよび認証ＩＤ−Ｄを利用者装置２へ送信する（ステップＳ１５、ｄ７）。βとＩＤ−ＤはＩＤ記憶部１６に記憶しておく。このステップで生成される非可逆関数βとしては、例えばハッシュ関数等の一方向性関数が想定される。
【００４０】
図６は、ステップｄ７で送信されるデータ２００要部の概略構成を概念的に示す説明図であり、同図に示すように、データ２００は少なくとも認証ＩＤ−Ｄ２０１と非可逆関数β２０２とから構成されている。上述したデータ１００（図５）に組み込まれた機能制限を解除するための制御プログラムは、このステップで送信されるデータ２００に組み込んでおくことも可能である。
【００４１】
なお、ステップＳ１３の照合で一致しなかった（ＮＯ）場合には処理を中止し、その旨を利用者装置２に通知する（ステップＳ１７）。
【００４２】
非可逆関数βと認証ＩＤ−Ｄを受信した利用者装置２では、アプリケーション格納部２６に記憶しているＩＤ−Ｂ２　をβに代入し、ＩＤ−Ｄ’＝β（ＩＤ−Ｂ２　）を生成する（ステップＳ１７）。ここでＩＤ−Ｂ２　の下付添字「２」も、上記ＩＤ−Ｃ２　と同様アプリケーション格納部２６にすでに記憶してあるＩＤ−Ｃと区別するために付与したものである。
【００４３】
次に利用者装置２は、受信した認証ＩＤ−ＤとステップＳ１７で生成したＩＤ−Ｄ’の照合を行う（ステップＳ１９）。一致した（ＹＥＳ）場合にはアプリケーションに付与された制御プログラム１０５が作動し、機能制限が解除（または機能制限プログラム１０４が削除）される（ステップＳ２１）。
【００４４】
ステップＳ１７で照合が一致しなかった（ＮＯ）場合には処理を中止し、その旨をアプリケーション提供装置１に通知する（ステップＳ２３）。なお、このステップで処理中止をアプリケーション提供装置１に通知する代わりに、ステップＳ１（アプリケーション要求）またはステップＳ９（認証要求）に戻るような設定にしておくことも可能である。
【００４５】
以上の処理により、図２に示したアプリケーション提供処理が完了し、ステップＳ２１でアプリケーションの機能制限が解除ないしは削除された利用者装置２では、受信したアプリケーションの使用が可能になる。
【００４６】
以上説明した本発明の一実施形態によれば、提供するアプリケーションに利用者が読み取ることのできる公開ＩＤと利用者が読み取ることのできない非公開ＩＤとを付与することにより、第３者が不正に公開ＩＤを入手してもそれだけではアプリケーションの制限は解除されず、正規の利用者に対してのみ制限が解除されたアプリケーションを提供することができる。
【００４７】
より具体的には、本実施形態では非公開ＩＤ−Ｂを用いた認証ステップが必ず含まれるため、仮に公開ＩＤ−Ｃが第３者に盗まれ、この公開ＩＤ−Ｃを利用して認証ＩＤ−Ｄが不正に取得されたとしても、その第３者は非公開ＩＤ−Ｂ（利用者側には公開されない可逆関数α（−１）を通じてのみ生成可能）を知ることはできないので、非公開ＩＤを用いた認証ステップで必ず認証エラーが生じることになる。したがって、正規の利用者装置しかアプリケーションの制限を解除できないという効果がある。
【００４８】
なお、本実施形態に係るアプリケーション提供処理のうち、アプリケーション提供装置１による認証方法として、上記同様の効果を得ることのできる様々な認証方法を想到することができる。以下にその例を説明する。
【００４９】
図３は、上述した認証方法とは異なる認証方法を用いたアプリケーション提供方法の詳細な処理を説明する処理フロー図である。
【００５０】
同図に示す処理において、アプリケーション提供装置１の概略構成は図１を用いて説明したものと同じである。
【００５１】
また、利用者装置２のアプリケーション要求（ステップＳ３１、ｄ１）から、利用者装置２によるＩＤ−Ｃ２　の送信（ステップＳ３９、ｄ５）までの処理の流れについても、前述した図２の処理（図２のステップＳ１からステップＳ１９までを参照）と同じである。
【００５２】
ステップｄ５で利用者装置２から送信されてきたＩＤ−Ｃ２　を受信したアプリケーション提供装置１は、ＩＤ記憶部１６に記憶しているＩＤ−Ｃを読み出し、両者が一致するかどうかの照合を行う（ステップＳ４１）。
【００５３】
照合の結果、両者が一致した（ＹＥＳ）場合には、非可逆関数βを生成するとともに、ＩＤ記憶部１６からＩＤ−Ｂを読み出し、このＩＤ−Ｂをβに代入して認証ＩＤ−Ｄ＝β（ＩＤ−Ｂ）を生成し、この両者を利用者装置２に送信する（ステップＳ４３、ｄ７）。
【００５４】
以後の処理（利用者装置２による認証ＩＤの照合（ステップＳ４７）からアプリケーションの機能制限の機能解除（ステップＳ５１）まで）については、図２の処理フロー図を用いて前述した処理と同じである。
【００５５】
図４は、図１に示した概略構成を有するアプリケーション提供装置１が、図２および図３を用いて説明した認証方法を兼備した構成をとる場合の詳細な処理を示す処理フロー図である。
【００５６】
同図に示すアプリケーション提供処理においても、ステップｄ５（利用者装置２からの認証要求送信（図４のステップＳ５９））までの処理は図２および図３の処理フロー図に示した場合と同様である。
【００５７】
その後アプリケーション提供装置１は、受信したＩＤ−Ｃ２　とＩＤ記憶部１６に記憶したＩＤ−Ｃとの照合を行い（ステップＳ６１）、照合の結果、両者が一致した（ＹＥＳ）場合には関数記憶部１７から可逆関数αの逆関数α−１を読み出してこのα−１に認証済みのＩＤ−Ｃを代入し、ＩＤ−Ｂ’＝α−１（ＩＤ−Ｃ）を生成する（ステップＳ６３）。
【００５８】
その後さらに、ＩＤ−Ｂ’とＩＤ記憶部１６に記憶したＩＤ−Ｂとの照合を行い（ステップＳ６７）、照合の結果、両者が一致した（ＹＥＳ）場合には非可逆関数βおよび認証ＩＤ−Ｄ＝β（ＩＤ−Ｂ）を生成して両者を利用者装置２へ送信する（ステップＳ６９、ｄ７）。
【００５９】
上記ステップＳ６１、Ｓ６７で照合が一致しなかった場合には、上記実施形態と同様処理を中断する（それぞれステップＳ６５、６９）。
【００６０】
ステップｄ７以後の利用者装置２の処理（ステップＳ７３、７５、７７、７９）については、図２および図３に示した場合と同じなので、重複を避けるために説明を省略する。
【００６１】
以上の構成をとることにより、アプリケーション提供装置１の認証機能をさらに強化させ、不正なアプリケーションの取得または利用を防止することができる。
【００６２】
図３および図４の処理フロー図を用いて説明したアプリケーション提供処理が、図２本発明の一実施形態に係る処理同様の効果を有するのは勿論である。
【００６３】
なお、本発明は、上記実施形態においてのみ特有の効果を奏するものと理解されるべきではない。以下に、上記実施形態同様の効果を奏すると考えられるその他の実施形態について説明する。
【００６４】
（１）上述した実施形態においては、公開ＩＤ−Ｃは、非公開ＩＤ−Ｂを所定の関数αに代入することによって生成していた（ＩＤ−Ｃ＝α（ＩＤ−Ｂ））が、これ以外にも、例えば、予め関数記憶部１７に記憶した関数テーブル等によってＩＤ−Ｂと関連付けたものをＩＤ−Ｃとして用いることもできる。
【００６５】
この場合にアプリケーション提供装置１は、関数記憶部１７内の関数テーブルを用いることにより、利用者装置２から受信した公開ＩＤ−Ｃ２　に対応するＩＤ−Ｂが、利用者装置２に送信したもの、すなわちＩＤ記憶部１６に記憶しているＩＤ−Ｂと一致するかどうかの照合を行う。
【００６６】
照合の結果両者が一致したとき、アプリケーション提供装置１は、非可逆関数βと、このβにＩＤ−Ｂを代入して生成されるＩＤ−Ｄとを利用者装置２に送信する。
【００６７】
（２）利用者装置２からアプリケーション提供装置１にアプリケーションの提供料を支払う機能を追加することも可能である。例えば、アプリケーション格納部２６から読み出したＩＤ−Ｃ２　を送信する際に、クレジット番号や電子マネー等も一緒に送信するようにしてもよい。この場合には、情報の送受信を公開鍵暗号方式ないしは秘密鍵暗号方式により暗号化（および復号化）して行うことも可能である。
【００６８】
（３）アプリケーション提供装置１内に利用者装置２のアドレス（電子メールアドレス、ＩＰアドレス等）を記憶するアドレス記憶部を設けておき、利用者装置２からのアプリケーション要求または認証要求を受信したとき、アドレス記憶部から読み出した該当アドレスに対して各種データを送信するように設定することも可能である。
【００６９】
このように、本発明は上記実施形態同様の効果を奏するさまざまな実施の形態等を含みうるものであることはいうまでもない。
【００７０】
【発明の効果】
以上説明した本発明によれば、不正なアプリケーションの取得または利用を防止する安全性の高いアプリケーション提供方法、アプリケーション提供装置、アプリケーション提供プログラム、および当該プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することができる。
【００７１】
また、本発明によれば、同一のアプリケーションであっても、提供者が配布するＩＤは利用者が持っているアプリケーションに対してユニークなものであり、かつ、そのアプリケーションと一対になっているため、第３者が不正に入手してもアプリケーションの制限は解除されず、正規の利用者にのみサービスを提供することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係るアプリケーション提供装置の概略構成を示すブロック図である。
【図２】本発明の一実施形態に係るアプリケーション提供方法の処理を示す処理フロー図である。
【図３】本発明の一実施形態に係るアプリケーション提供方法の処理の別な例を示す処理フロー図である。
【図４】本発明の一実施形態に係るアプリケーション提供方法の処理の第３例を示す処理フロー図である。
【図５】本発明の一実施形態に係るアプリケーション提供方法においてアプリケーション提供時に送信されるデータの概略構成を示す説明図である。
【図６】本発明の一実施形態に係るアプリケーション提供方法において認証ＩＤ送信時に送信されるデータの概略構成を示す説明図である。
【符号の説明】
１　アプリケーション提供装置
２　利用者装置
３　ネットワーク
１１、２１　入力部
１２、２２　出力部
１３、２３　演算部（ＩＤ生成手段および認証手段の一部）
１４、２４　送受信部
１５、２５　主記憶部
１６　ＩＤ記憶部（記憶手段の一部）
１７　関数記憶部（記憶手段の一部）
１８　アプリケーション記憶部（記憶手段の一部）
２６　アプリケーション格納部
１００、２００　データ
１０１　アプリケーション本体
１０２　非公開ＩＤ−Ｂ
１０３　公開ＩＤ−Ｃ
１０４　機能制限データ
１０５　制御プログラム
２０１　認証ＩＤ−Ｄ
２０２　非可逆関数β
【図１】
2004030432.tif 000003
【図２】
2004030432.tif 000004
【図３】
2004030432.tif 000005
【図４】
2004030432.tif 000006
【図５】
2004030432.tif 000007
【図６】
2004030432.tif 000008