(57)【要約】【課題】開発者に応じて機能の利用を制限し、かつ、機能の不正利用を抑止することが可能な、新規かつ改良された情報処理装置、情報処理方法、及びプログラムを提案する。【解決手段】ユーザ端末が有するアプリケーションプログラムに関連付けられた開発元識別情報と、自身が有する１以上の機能の実行の可否を制御するためのアクセス制御情報とを、当該ユーザ端末から取得する取得部と、前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定する判定部と、前記判定部による判定結果に基づき、前記アクセス制御情報に基づき前記１以上の機能のうち少なくとも一部の実行を制御する制御部と、を備える、情報処理装置。【選択図】図１
2015001817.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ端末が有するアプリケーションプログラムに関連付けられた開発元識別情報と、自身が有する１以上の機能の実行の可否を制御するためのアクセス制御情報とを、当該ユーザ端末から取得する取得部と、
前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定する判定部と、
前記判定部による判定結果に基づき、前記アクセス制御情報に基づき前記１以上の機能のうち少なくとも一部の実行を制御する制御部と、
を備える、情報処理装置。
【請求項２】
前記取得部は、不可逆処理が施されていない前記開発元識別情報を前記ユーザ端末から取得する、請求項１に記載の情報処理装置。
【請求項３】
前記取得部は、符号化処理及び暗号化処理のいずれも施されていない前記開発元識別情報を送信対象として前記ユーザ端末から送信されたデータを受信し、当該データから当該開発元識別情報を取得する、請求項２に記載の情報処理装置。
【請求項４】
前記開発元識別情報の示す前記アプリケーションプログラムの開発元を識別可能に表示させる表示制御部を備える、請求項１に記載の情報処理装置。
【請求項５】
前記表示制御部は、前記開発元識別情報及び前記アクセス制御情報が関連付けられたアプリケーションプログラムが動作している場合に、前記開発元識別情報の示す前記アプリケーションプログラムの開発元を識別可能に表示させる、請求項４に記載の情報処理装置。
【請求項６】
表示部を備え、
前記表示制御部は、前記開発元識別情報の示す前記アプリケーションプログラムの開発元を前記表示部に表示させる、請求項４に記載の情報処理装置。
【請求項７】
前記取得部は、前記開発元識別情報及び前記アクセス制御情報が所定の鍵情報に基づきあらかじめ符号化された第１の符号化情報を取得し、
前記判定部は、前記ユーザ端末から取得した前記開発元識別情報及び前記アクセス制御情報を、前記鍵情報に基づき符号化して第２の符号化情報を生成し、生成した前記第２の符号化情報と、取得した前記第１の符号化情報とが一致するか否かに基づき、取得した前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定する、請求項１に記載の情報処理装置。
【請求項８】
符号化のための第１の鍵情報を生成し、生成した前記第１の鍵情報を前記ユーザ端末に出力する鍵情報生成部を備え、
前記取得部は、前記開発元識別情報及び前記アクセス制御情報が所定の第２の鍵情報に基づきあらかじめ符号化された符号化情報が、前記第１の鍵情報に基づき符号化された第１の符号化情報を取得し、
前記判定部は、前記ユーザ端末から取得した前記開発元識別情報及び前記アクセス制御情報を、前記第２の鍵情報に基づき符号化し、当該符号化に基づき出力される符号化情報を前記第１の鍵情報に基づき符号化することで第２の符号化情報を生成し、生成した前記第２の符号化情報と、取得した前記第１の符号化情報とが一致するか否かに基づき、取得した前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定する、請求項１に記載の情報処理装置。
【請求項９】
ユーザ端末が有するアプリケーションプログラムに関連付けられた開発元識別情報と、自身が有する１以上の機能の実行の可否を制御するためのアクセス制御情報とを、当該ユーザ端末から取得するステップと、
前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定するステップと、
前記判定の結果に基づき、前記アクセス制御情報に基づき前記１以上の機能のうち少なくとも一部の実行を制御するステップと、
を備える、情報処理方法。
【請求項１０】
コンピュータに、
ユーザ端末が有するアプリケーションプログラムに関連付けられた開発元識別情報と、自身が有する１以上の機能の実行の可否を制御するためのアクセス制御情報とを、当該ユーザ端末から取得することと、
前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定することと、
前記判定の結果に基づき、前記アクセス制御情報に基づき前記１以上の機能のうち少なくとも一部の実行を制御することと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
近年では、デジタルカメラやテレビジョン装置等のデバイスや、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等のような情報処理装置を、スマートフォンのようなユーザ端末を介して操作する機能が提供されている。
【０００３】
ユーザ端末を介して情報処理装置を操作する機能は、例えば、ユーザ端末に専用のアプリケーションプログラム（以降では、単に「アプリケーション」と呼ぶ）をインストールすることにより実現される。
【０００４】
また、情報処理装置の動作を制御するアプリケーションを開発できるように、情報処理装置の動作を制御するためのプログラム（ＡＰＩ：Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を一般の開発者に対して提供する場合がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−８３３１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記のように提供されるＡＰＩの中には、一般の開発者に公開可能なものから、特定の契約を結んだ開発者や、ＡＰＩの利用に対して課金を行った開発者にのみ公開可能なものが含まれる場合がある。そのため、ＡＰＩの公開範囲、即ち、情報処理装置が提供する機能の利用に関する制限を、開発者に応じて変更できるような仕組みが求められている。
【０００７】
しかしながら、ＡＰＩの利用権限を持たない開発者が作成したアプリケーションが、開発者を示す情報（以降では、「開発元識別情報」と呼ぶ場合がある）を詐称することで、本来は利用権限のないＡＰＩを利用可能とする不正が行われる場合が推測される。
【０００８】
そこで、本開示では、開発者に応じて機能の利用を制限し、かつ、機能の不正利用を抑止することが可能な、新規かつ改良された情報処理装置、情報処理方法、及びプログラムを提案する。
【課題を解決するための手段】
【０００９】
本開示によれば、ユーザ端末が有するアプリケーションプログラムに関連付けられた開発元識別情報と、自身が有する１以上の機能の実行の可否を制御するためのアクセス制御情報とを、当該ユーザ端末から取得する取得部と、前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定する判定部と、前記判定部による判定結果に基づき、前記アクセス制御情報に基づき前記１以上の機能のうち少なくとも一部の実行を制御する制御部と、を備える、情報処理装置が提供される。
【００１０】
以上のように、本開示に係る情報処理装置は、アプリケーションプログラムに関連付けられた開発元識別情報をユーザ端末から取得し、取得した開発元識別情報が示す開発元が、事前申請された開発元か否かに応じて自身が有する機能の実行を制御する。このように開発元を提示させることで、開発元の詐称により機能を不正に利用した場合においても、アプリケーションプログラムの提供時に示される実際の開発元と、機能を利用するために提示される開発元が異なり、不正利用を検知することが可能となる。このように、開発元の詐称に伴う不正利用が検知されることで、当該不正利用を抑止することも可能となる。
【００１１】
また、本開示によれば、ユーザ端末が有するアプリケーションプログラムに関連付けられた開発元識別情報と、自身が有する１以上の機能の実行の可否を制御するためのアクセス制御情報とを、当該ユーザ端末から取得するステップと、前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定するステップと、前記判定部による判定結果に基づき、前記アクセス制御情報に基づき前記１以上の機能のうち少なくとも一部の実行を制御するステップと、を備える、情報処理方法が提供される。
【００１２】
また、本開示によれば、コンピュータに、ユーザ端末が有するアプリケーションプログラムに関連付けられた開発元識別情報と、自身が有する１以上の機能の実行の可否を制御するためのアクセス制御情報とを、当該ユーザ端末から取得することと、前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定することと、前記判定部による判定結果に基づき、前記アクセス制御情報に基づき前記１以上の機能のうち少なくとも一部の実行を制御することと、を実行させるプログラムが提供される。
【発明の効果】
【００１３】
以上説明したように本開示によれば、開発者に応じて機能の利用を制限し、かつ、機能の不正利用を抑止することが可能な情報処理装置、情報処理方法、及びプログラムが提供される。
【図面の簡単な説明】
【００１４】
【図１】本開示の実施形態に係る情報処理システムの適用分野について説明するための図である。
【図２】同実施形態に係る情報処理システムの概略的なシステム構成の一例を示した図である。
【図３】同実施形態に係る情報処理システムの適用例について説明するための図である。
【図４】同実施形態に係る情報処理システムの適用例について説明するための図である。
【図５】同実施形態に係る情報処理システムの適用例について説明するための図である。
【図６】同実施形態に係る管理サーバの構成の一例を示したブロック図である。
【図７】同実施形態に係る情報処理装置及びユーザ端末の構成の一例を示したブロック図である。
【図８】同実施形態に係る管理サーバの一連の動作を示したシーケンス図である。
【図９】同実施形態に係る情報処理装置の一連の動作を示したシーケンス図である。
【図１０】本開示の実施形態に係る情報処理装置のハードウェア構成の一例である。
【発明を実施するための形態】
【００１５】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１６】
なお、説明は以下の順序で行うものとする。
１．課題の整理
２．概要
３．構成
４．処理
５．ハードウェア構成
６．まとめ
【００１７】
＜１．課題の整理＞
まず、図１を参照しながら、本開示の実施形態に係る情報処理システムの課題について整理する。図１は、本開示の実施形態に係る情報処理システムの適用分野について説明するための図である。
【００１８】
近年では、図１に示すように、デジタルカメラ１０ａやテレビジョン装置１０ｂ等のデバイスや、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等のような情報処理装置１０ｃを、スマートフォンのようなユーザ端末２０を介して操作する機能が提供されている。なお、以降では、デジタルカメラ１０ａ、テレビジョン装置１０ｂ、及び情報処理装置１０ｃを総じて、「情報処理装置１０」と呼ぶ場合がある。
【００１９】
ユーザ端末２０を介して情報処理装置１０を操作する技術は、例えば、ユーザ端末２０に専用のアプリケーションｄ１０をインストールし、当該アプリケーションｄ１０を媒介として、情報処理装置１０の動作を制御することにより実現される。
【００２０】
また、情報処理装置１０の動作を制御するアプリケーションｄ１０を開発できるように、情報処理装置１０の動作を制御するためのＡＰＩを一般の開発者に対して提供する場合がある。
【００２１】
上記のように提供されるＡＰＩの中には、基本的な動作を制御するためのＡＰＩや、細かい制御を可能とするＡＰＩ、または、付加的な機能を実現するためのＡＰＩ等のように多様な種類のＡＰＩが含まれている場合がある。このようなＡＰＩの中には、一般の開発者に公開可能なものから、特定の契約を結んだ開発者や、ＡＰＩの利用に対して課金を行った開発者にのみ公開可能なものが含まれる場合もある。そのため、ＡＰＩの公開範囲、即ち、情報処理装置１０が提供する機能の利用に関する制限を、開発者に応じて変更できるような仕組みが求められている。
【００２２】
しかしながら、ＡＰＩの利用権限を持たない開発者が作成したアプリケーションが、開発者を示す識別情報（以降では、「開発元識別情報」と呼ぶ場合がある）を詐称することで、本来は利用権限のないＡＰＩを利用可能とする不正が行われる場合が推測される。そのため、開発元の詐称によるＡＰＩの不正利用を抑止する技術も求められている。
【００２３】
ＡＰＩの不正利用を抑止する手法としては、例えば、鍵共有方式に基づきユーザ端末２０と情報処理装置１０で送受信される情報を暗号化することで、通信路上での盗聴を防止する方法が挙げられる。しかしながら、スマートフォンのようなユーザ端末２０にダウンロードされたアプリケーションは、逆アセンブルされる恐れがある。このことは、ユーザ端末２０が情報を暗号化するために保持する鍵情報についても同様であり、鍵情報が逆アセンブルされ不正に公開された場合には、暗号化に基づく情報の保護が意味をなさなくなる場合もある。
【００２４】
また、他の方法として、例えば、開発者ごとの権限情報を、情報処理装置１０やユーザ端末２０とは異なる外部サーバ等で管理し、情報処理装置１０がサーバ上の権限情報を参照することで、ＡＰＩへのアクセス制御を実現する方法もある。しかしながら、情報処理装置１０の中には、デジタルカメラ等のようにインターネットのような外部ネットワークにアクセスするためのインタフェースを持たないものもあり、外部サーバに対して常時アクセス可能とすることが困難な場合がある。また、ユーザ端末２０側についても、外部サーバに対して常時アクセス可能とすることが困難な場合がある。例えば、ユーザ端末２０の中には、デジタルカメラ等のような情報処理装置１０との間で、Ｗｉ−Ｆｉ（Ｗｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ）（登録商標）のような技術に基づき直接通信を行う場合に、外部ネットワークにアクセスできないものもある。
【００２５】
また、外部ネットワークへのアクセスを前提としない情報処理装置１０は、例えば、ファームウェアアップデート等により内部の情報を更新するため、当該内部の情報を適宜更新することが困難な場合もある。そのため、例えば、ＡＰＩに対する特定の開発者の権限を判定するための情報を、情報処理装置１０側に記憶させる手法は現実的ではない場合がある。
【００２６】
また、他の手法として、アプリケーション自体に正当性を示す証明書（例えば、デジタル証明書）を付与することで、当該証明書に基づきＡＰＩに対するアクセス権限の正当性を判断する手法もある。しかしながら、ユーザ端末２０で動作するアプリケーションに添付された証明書を情報処理装置１０側で検証する場合には、当該アプリケーション自体を情報処理装置１０に送信する必要があり、アプリケーションを起動するための負荷が増大する。
【００２７】
以上の点から、ユーザ端末２０内の情報が参照された場合においても、情報処理装置１０が外部ネットワークに接続可能か否かに関わらず、開発元の詐称に伴うＡＰＩの不正利用を抑止する仕組みが求められている。
【００２８】
そこで、本開示では、開発者に応じてＡＰＩの利用を制限し、かつ、開発元の詐称に伴うＡＰＩの不正利用を抑止することが可能な情報処理システムを提案する。
【００２９】
＜２．概要＞
次に、本実施形態に係る情報処理システムの概要について説明する。本実施形態に係る情報処理システムは、開発者ｕ５０が情報処理装置１０の動作を制御するためのアプリケーションｄ１０を開発できるように、当該情報処理装置１０の動作制御に係るＡＰＩ群５０を、開発者ｕ５０に公開するための仕組みを提供する。
【００３０】
（システム構成）
ここで、図２を参照する。図２は、本実施形態に係る情報処理システムの概略的なシステム構成の一例を示した図である。
【００３１】
図２に示すように、本実施形態に係る情報処理システムは、情報処理装置１０と、ユーザ端末２０と、管理サーバ３０と、開発者端末８０と、アプリケーション提供サーバ９０とを含む。
【００３２】
開発者端末８０は、開発者ｕ５０がアプリケーションｄ１０を開発するための端末を示している。また、アプリケーション提供サーバ９０は、開発者ｕ５０が開発したアプリケーションｄ１０を、一般のユーザｕ２０に有償または無償で提供するためのサーバを模擬的に示している。アプリケーション提供サーバ９０の具体的な一例としては、アプリケーションストアのような配信チャネルを提供するサーバが挙げられる。ユーザ端末２０は、例えば、アプリケーション提供サーバ９０で公開されているアプリケーションｄ１０をダウンロードすることで取得する。
【００３３】
なお、アプリケーション提供サーバ９０を介したアプリケーションｄ１０の提供方法はあくまで一例であり、開発者ｕ５０が開発したアプリケーションｄ１０をユーザ端末２０が取得できれば、本実施形態に係る情報処理システムの構成は限定されない。例えば、アプリケーションｄ１０は、可搬媒体などに記憶された状態でユーザｕ２０に提供されてもよい。この場合には、ユーザｕ２０が、可搬媒体中のアプリケーションｄ１０をユーザｕ２０にインストールすることで、ユーザ端末２０中にアプリケーションｄ１０が記憶される。
【００３４】
管理サーバ３０と、開発者端末８０と、アプリケーション提供サーバ９０と、ユーザ端末２０とは、ネットワークｎ０を介して接続されている。ネットワークｎ０は、例えば、インターネット、専用線、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、または、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等により構成される。なお、異なる装置間を接続するネットワークであれば、ネットワークｎ０の態様は限定されない。また、管理サーバ３０、開発者端末８０、アプリケーション提供サーバ９０、及びユーザ端末２０のうちの一部の構成間のネットワークを他の構成間のネットワークとは物理的または論理的に別のネットワークとして構成してもよい。具体的な一例として、管理サーバ３０と開発者端末８０との間を、ＶＰＮ（Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）の技術を利用することで、インターネットのような外部ネットワークから論理的に隔離してもよい。
【００３５】
情報処理装置１０は、ユーザ端末２０でアプリケーションｄ１０が実行されることで動作が制御される制御対象を示している。情報処理装置１０とユーザ端末２０とは、ネットワークｎ１を介して接続されている。ネットワークｎ１としては、例えば、Ｗｉ−Ｆｉのような装置間の直接通信における無線通信の経路が挙げられる。なお、以降は、ネットワークｎ１を、情報処理装置１０とユーザ端末２０との間の直接通信における無線通信の経路として説明するが、情報処理装置１０とユーザ端末２０との間で通信が確立できれば、その態様は限定されないものとする。
【００３６】
情報処理装置１０は、自身の動作を制御するためのＡＰＩ群５０を記憶しており、アプリケーションｄ１０の実行に基づくユーザ端末２０からの指示に応じて、ＡＰＩ群５０の中から対応するプログラム（ＡＰＩ）を動作させる。
【００３７】
（ＡＰＩへのアクセス制御）
本実施形態に係る情報処理システムでは、情報処理装置１０は、自身の動作を制御するためのＡＰＩ群５０に対する開発者ｕ５０の利用申請の状況に応じて、アプリケーションｄ１０からＡＰＩ群５０中の各ＡＰＩへのアクセスを制御する。以下に、本実施形態に係る情報処理システムにおける、ＡＰＩ群５０中の各ＡＰＩへのアクセス制御の概要について説明する。
【００３８】
本実施形態に係る情報処理システムでは、管理サーバ３０が、開発者ｕ５０からの申請に基づき、ＡＰＩ群５０のうち申請が承認されたＡＰＩの制限を解除するためのアクセス制御情報ｄ３０を開発者ｕ５０に対して発行する。
【００３９】
具体的には、管理サーバ３０は、開発者ｕ５０により指定された当該開発者ｕ５０の開発者名ｄ２０と、ＡＰＩ群５０のうち使用するＡＰＩのリストとを、当該開発者ｕ５０が操作する開発者端末８０から取得する。管理サーバ３０は、「開発者名ｄ２０」が示す開発者ｕ５０に対して識別情報ｄ２２を発行する。
【００４０】
また、管理サーバ３０は、取得したＡＰＩのリストに基づき、リスト中に指定されたＡＰＩに対するアクセスを制御（許可）するためのアクセス制御情報ｄ３０を生成する。なお、アクセス制御情報ｄ３０の内容については、当該アクセス制御情報ｄ３０を生成する具体的な構成の説明とあわせて別途後述する。
【００４１】
また、管理サーバ３０は、あらかじめ生成された鍵情報ｋ１０を記憶しており、開発者名ｄ２０と、識別情報ｄ２２と、アクセス制御情報ｄ３０とを、当該鍵情報ｋ１０に基づき符号化して符号化情報ｄ３２を生成する。
【００４２】
管理サーバ３０は、発行した識別情報ｄ２２と、生成したアクセス制御情報ｄ３０及び符号化情報ｄ３２とを、開発者ｕ５０の開発者端末８０に送信する。以上により、開発者ｕ５０が、ＡＰＩ群５０のうち利用の申請を行ったＡＰＩを使用してアプリケーションｄ１０を開発するための事前申請が完了する。
【００４３】
なお、本実施形態に係る情報処理システムでは、開発者ｕ５０は、開発するアプリケーションｄ１０において利用の申請を行ったＡＰＩを使用する場合には、開発者名ｄ２０と、識別情報ｄ２２と、アクセス制御情報ｄ３０と、符号化情報ｄ３２とを当該アプリケーションｄ１０内に埋め込む。なお、以降では、開発者名ｄ２０と、識別情報ｄ２２とを総じて「開発元識別情報」と呼ぶ場合がある。また、開発元識別情報と、アクセス制御情報ｄ３０と、符号化情報ｄ３２とを総じて「認証情報」と呼ぶ場合がある。このような構成により、情報処理装置１０は、アプリケーションｄ１０が実行された場合に、アプリケーションｄ１０に埋め込まれた認証情報を取得し、取得した認証情報に基づき、開発者ｕ５０がＡＰＩの利用権限を有しているかを確認することが可能となる。なお、情報処理装置１０による、認証情報に基づくＡＰＩの利用権限の有無の確認に係る動作の詳細について後述する。
【００４４】
なお、アプリケーションｄ１０への、認証情報の埋め込みについては、ＡＰＩの動作によりルール化することが可能である。具体的な一例として、ＡＰＩ群５０のうち利用申請が必要なＡＰＩについては、アプリケーションｄ１０が実行された場合に、当該アプリケーションｄ１０に埋め込まれた認証情報が提示されない場合には、利用制限が解除されないように処理を定義しておけばよい。
【００４５】
なお、開発者ｕ５０は、認証情報が埋め込まれたアプリケーションｄ１０を、例えば、アプリケーション提供サーバ９０で公開する。これにより、ユーザｕ２０は、開発者ｕ５０が開発したアプリケーションｄ１０を、アプリケーション提供サーバ９０からダウンロードして自身のユーザ端末２０にインストールすることが可能となる。
【００４６】
次に、ユーザ端末２０にインストールされたアプリケーションｄ１０が実行されることで、ユーザ端末２０がネットワークｎ１を介して情報処理装置１０にアクセスした場合の動作に着目して説明する。
【００４７】
本実施形態に係る情報処理装置１０は、アプリケーションｄ１０の実行に伴いユーザ端末２０からのアクセスを受けた場合に、当該ユーザ端末２０からアプリケーションｄ１０に埋め込まれた認証情報を取得する。
【００４８】
このとき、ユーザ端末２０は、認証情報のうち、開発元識別情報及びアクセス制御情報ｄ３０に対して不可逆処理を施さずに情報処理装置１０に送信する。また、ユーザ端末２０は、認証情報のうち少なくとも開発元識別情報に対して暗号化処理及び符号化処理のいずれも施さずに、情報処理装置１０への送信対象としてもよい。なお、ここでの暗号化処理及び符号化処理は、データの保護を目的とした暗号化処理及び符号化処理を指し、所定の通信方式に基づき通信を行うための暗号化処理及び符号化処理を指すものではない。
【００４９】
また、ユーザ端末２０は、認証情報に含まれる符号化情報ｄ３２を更に符号化して、情報処理装置１０に送信してもよい。このとき、ユーザ端末２０は、符号化情報ｄ３２を符号化するための鍵情報（例えば、乱数）を情報処理装置１０から取得してもよい。なお、ユーザ端末２０による符号化情報ｄ３２の符号化に係る処理の詳細については、別途後述する。
【００５０】
情報処理装置１０は、ユーザ端末２０から取得した認証情報に基づき、当該認証情報中に含まれる開発元識別情報が示す開発者ｕ５０が、ＡＰＩの利用申請を行った開発元であるか否かを判別する。
【００５１】
具体的な一例として、情報処理装置１０は、ユーザ端末２０から取得した開発者名ｄ２０、識別情報ｄ２２、及びアクセス制御情報ｄ３０を符号化して符号化情報ｄ４２を生成し、当該符号化情報ｄ４２に基づき、開発者ｕ５０に対する判別を行ってもよい。
【００５２】
この場合には、情報処理装置１０は、管理サーバ３０に記憶された鍵情報ｋ１０をあらかじめ取得し記憶しておく。情報処理装置１０は、ユーザ端末２０から取得した開発元識別情報及びアクセス制御情報ｄ３０を、鍵情報ｋ１０に基づき符号化して符号化情報ｄ４２を生成する。そして、情報処理装置１０は、生成した符号化情報ｄ４２と、取得した符号化情報ｄ３２とを比較し、これらが一致するか否かに基づき、開発元識別情報が示す開発者ｕ５０が、ＡＰＩの利用申請を行った開発元であるか否かを判別すればよい。
【００５３】
なお、上記に示した判別方法はあくまで一例であり、情報処理装置１０が、取得した認証情報に基づき、開発元識別情報が示す開発者ｕ５０が、ＡＰＩの利用申請を行った開発元であるか否かを判別できれば、その態様は限定されない。
【００５４】
開発者ｕ５０がＡＰＩの利用申請を行った開発元であることが確認できたら、情報処理装置１０は、認証情報中のアクセス制御情報ｄ３０に基づき、利用申請が行われているＡＰＩを認識する。そして、情報処理装置１０は、アプリケーションｄ１０の実行に伴い呼び出されるＡＰＩが、アクセス制御情報ｄ３０に基づき認識できるＡＰＩ中に含まれるか否かに応じて、自身による当該ＡＰＩの実行を制御する。
【００５５】
また、開発者ｕ５０がＡＰＩの利用申請を行った開発元であることが確認できたら、情報処理装置１０は、開発元識別情報が示す開発者ｕ５０を、例えば表示部に識別可能に表示させてもよい。例えば、図３は、本実施形態に係る情報処理システムの適用例について説明するための図であり、情報処理装置１０とユーザ端末２０との間の接続確立時にアプリケーションｄ１０の開発元を示す情報を表示させる場合の例を示している。図３に示すように、情報処理装置１０は、表示部１０６（例えば、ディスプレイ）に、開発元識別情報が示す開発者ｕ５０を識別可能に提示した開発元情報ｖ１０を表示している。
【００５６】
なお、開発者ｕ５０が、事前申請を行わずに、事前申請を行った他の開発者の情報に詐称して認証情報をアプリケーションｄ１０に埋め込んだものとする。この場合には、アプリケーションｄ１０の提供時にダウンロードサイト等に示される開発元と、アプリケーションｄ１０の実行に伴い表示される開発元とが一致しなくなる。例えば、図４は、本実施形態に係る情報処理システムの適用例について説明するための図であり、ダウンロードサイトｖ９０の一例を示している。
【００５７】
図４に示すように、ダウンロードサイトｖ９０には、提供対象となるアプリケーションｄ１０に関する情報として、当該アプリケーションｄ１０の開発を示した開発元情報ｖ９２が表示される。前述の通り、開発者ｕ５０が、事前申請を行った他の開発者の情報に詐称した場合には、図３に示した表示部１０６に表示される開発元情報ｖ１０と、図４に示したダウンロードサイトｖ９０に提示される開発元情報ｖ９２とが一致しなくなる。なお、可搬媒体を利用してインストールした場合には、例えば、当該可搬媒体のパッケージ上の記載や、ホームページ等で公開されている情報に基づき、本来の開発元を確認することも可能である。
【００５８】
また、アプリケーションｄ１０の実行時に、開発元識別情報に対して暗号化や符号化が施されずに情報処理装置１０に送信されるため、ユーザ端末２０と情報処理装置１０との間のネットワークｎ１に開発元識別情報が露出することとなる。
【００５９】
以上のように、本実施形態に係る情報処理システムでは、アプリケーションｄ１０の実行時に、ユーザ端末２０に、当該アプリケーションｄ１０に埋め込まれた開発元識別情報を提示させる。これにより、開発元の詐称によりＡＰＩが不正利用されていたとしても、アプリケーションｄ１０を利用するユーザに開発元が詐称されていることを気付かせることが可能となる。また、このように開発元の詐称がアプリケーションｄ１０を利用するユーザにより検知されることで、開発元の不正がユーザに知られることとなるため、副次的に、開発元の詐称に伴うＡＰＩの不正利用を抑止することが可能となる。
【００６０】
なお、情報処理装置１０が、表示部１０６に開発元情報ｖ１０を表示させるタイミングは特に限定されない。具体的な一例として、情報処理装置１０は、ユーザ端末２０で実行されたアプリケーションｄ１０に基づき動作が制御されている間は、開発元情報ｖ１０を表示部１０６に表示させていてもよい。
【００６１】
例えば、図５は、本実施形態に係る情報処理システムの適用例について説明するための図であり、情報処理装置１０としてデジタルカメラを使用し、ユーザ端末２０からの操作に基づきデジタルカメラによる撮像を制御する場合の一例を示している。図５に示す例では、デジタルカメラによる撮像に伴い表示部１０６に撮像された画像ｖ２０ａが表示されるとともに、当該画像ｖ２０ａがユーザ端末２０に転送され、画像ｖ２０ｂとしてユーザ端末２０の表示部２０６に表示されている。このとき、デジタルカメラは、表示部１０６に表示された画像ｖ２０ａとあわせて開発元情報ｖ１０を表示させてもよい。このように、アプリケーションｄ１０が動作している期間中に開発元情報ｖ１０を表示させることで、ユーザｕ２０に対して、動作しているアプリケーションｄ１０と開発元情報ｖ１０が示す開発元との関係をより意識づけることが可能となる。
【００６２】
＜３．構成＞
次に、情報処理装置１０、ユーザ端末２０、及び管理サーバ３０の詳細な構成について説明する。まず、図６を参照しながら、管理サーバ３０の構成について説明する。図６は、本実施形態に係る管理サーバ３０の構成の一例を示したブロック図である。
【００６３】
（管理サーバ３０）
図６に示すように、管理サーバ３０は、開発者情報取得部３０２と、識別情報生成部３０４と、開発者情報記憶部３０６と、符号化情報生成部３０８と、鍵情報記憶部３１０とを含む。
【００６４】
開発者情報取得部３０２は、開発者ｕ５０により指定された当該開発者ｕ５０の開発者名ｄ２０と、ＡＰＩ群５０のうち使用するＡＰＩのリストとを、当該開発者ｕ５０が操作する開発者端末８０から取得する。
【００６５】
なお、開発者情報取得部３０２が、開発者名ｄ２０と、ＡＰＩのリストとを取得する方法は特に限定されない。例えば、開発者情報取得部３０２は、メールを媒介として、開発者端末８０から開発者名ｄ２０と、ＡＰＩのリストとを取得してもよい。
【００６６】
また、他の一例として、開発者情報取得部３０２は、開発者名ｄ２０及びＡＰＩのリストを指定するための画面を生成してもよい。この場合には、開発者ｕ５０は、例えば、開発者端末８０を操作して管理サーバ３０にアクセスし、開発者情報取得部３０２が提示する画面に対して操作を行うことで、開発者名ｄ２０及びＡＰＩのリストを指定してもよい。
【００６７】
開発者情報取得部３０２は、取得した開発者名ｄ２０と、ＡＰＩのリストとを識別情報生成部３０４に出力する。
【００６８】
識別情報生成部３０４は、開発者名ｄ２０と、ＡＰＩのリストとを開発者情報取得部３０２から取得する。識別情報生成部３０４は、「開発者名ｄ２０」が示す開発者ｕ５０に対して識別情報ｄ２２を発行する。
【００６９】
また、識別情報生成部３０４は、取得したＡＰＩのリストに基づき、リスト中に指定されたＡＰＩに対するアクセスを制御（許可）するためのアクセス制御情報ｄ３０を生成する。
【００７０】
アクセス制御情報ｄ３０は、例えば、利用が許可されたＡＰＩ名の一覧でもよいし、ＡＰＩ名を示す識別情報（例えば、ＡＰＩを示す番号）の一覧でもよい。また、ＡＰＩの管理単位に応じてアクセス制御情報の内容を適宜変更してもよい。例えば、パッケージ単位で管理している場合には、アクセス制御情報ｄ３０は、利用が許可されたパッケージ名の一覧でもよい。また、開発者を所定の種別に分けて管理し、当該開発者の種別ごとに利用可能なＡＰＩを定義している場合には、アクセス制御情報ｄ３０は、開発者の種別を示す情報でもよい。このように、利用が許可されたＡＰＩを識別可能であれば、アクセス制御情報ｄ３０の態様は特に限定はされない。
【００７１】
識別情報生成部３０４は、取得した開発者名ｄ２０と、発行した識別情報ｄ２２と、生成したアクセス制御情報ｄ３０とを関連付けて、開発者情報として開発者情報記憶部３０６に記憶させる。なお、既に開発者情報が登録された開発者ｕ５０から、新たに利用するＡＰＩに関する登録の申請を受けた場合には、識別情報生成部３０４は、開発者情報記憶部３０６に記憶された当該開発者ｕ５０の開発者情報を更新するように動作させてもよい。
【００７２】
識別情報生成部３０４は、取得した開発者名ｄ２０と、発行した識別情報ｄ２２と、生成したアクセス制御情報ｄ３０とを、符号化情報生成部３０８に出力する。
【００７３】
符号化情報生成部３０８は、開発者名ｄ２０と、識別情報ｄ２２と、アクセス制御情報ｄ３０とを、識別情報生成部３０４から取得する。
【００７４】
符号化情報生成部３０８は、開発者名ｄ２０と、識別情報ｄ２２と、アクセス制御情報ｄ３０とを、あらかじめ生成された鍵情報ｋ１０に基づき符号化して符号化情報ｄ３２を生成する。なお、鍵情報ｋ１０は、鍵情報記憶部３１０に記憶されている。
【００７５】
このとき、符号化情報生成部３０８は、符号化の方式として不可逆的な符号化方式を用いてもよい。なお、符号化情報ｄ３２を生成するための符号化方式は、鍵情報に基づき符号化可能であれば、その方法は限定されない。符号化情報ｄ３２を生成するための符号化方式の一例として、鍵付きハッシュが挙げられる。
【００７６】
符号化情報生成部３０８は、識別情報ｄ２２と、アクセス制御情報ｄ３０と、符号化情報ｄ３２とを、開発者ｕ５０の開発者端末８０に送信する。これにより、開発者ｕ５０が、利用申請を行ったＡＰＩを使用してアプリケーションｄ１０を開発するための情報、即ち、識別情報ｄ２２、アクセス制御情報ｄ３０、及び符号化情報ｄ３２が、開発者ｕ５０に通知される。
【００７７】
以上により、開発者ｕ５０が、ＡＰＩ群５０のうち利用の申請を行ったＡＰＩを使用してアプリケーションｄ１０を生成するための事前申請が完了する。なお、アプリケーションｄ１０が、情報処理装置１０内のＡＰＩ群５０を利用するためには、開発元識別情報、アクセス制御情報ｄ３０、及び符号化情報ｄ３２を情報処理装置１０に通知する必要がある。そのため、例えば、開発者ｕ５０により開発されたアプリケーションｄ１０には、管理サーバ３０から開発者ｕ５０に通知された開発元識別情報、アクセス制御情報ｄ３０、及び符号化情報ｄ３２が埋め込まれることとなる。なお、開発元識別情報、アクセス制御情報ｄ３０、及び符号化情報ｄ３２を情報処理装置１０に通知されれば、必ずしもこれらの情報をアプリケーションｄ１０に埋め込む必要はない。
【００７８】
（情報処理装置１０及びユーザ端末２０）
次に、図７を参照しながら、情報処理装置１０及びユーザ端末２０の構成について説明する。図７は、本実施形態に係る情報処理装置１０及びユーザ端末２０の構成の一例を示したブロック図である。なお、ユーザ端末２０には、開発者ｕ５０のより開発されたアプリケーションｄ１０がインストールされているものとして説明する。
【００７９】
まず、ユーザ端末２０に着目する。図７に示すように、ユーザ端末２０は、情報処理装置１０と通信を行うための通信部２０２を含み、アプリケーション２５がインストールされている。なお、アプリケーション２５は、前述した情報処理装置１０の動作を制御するためのアプリケーションｄ１０が実行されることにより実現される機能を模式的に示している。アプリケーション２５は、通信処理部２５２と、符号化処理部２５４と、アクセス制御情報記憶部２５６と、符号化情報記憶部２５８とを含む。
【００８０】
通信部２０２は、情報処理装置１０と通信を行うためのインタフェースである。通信部２０２は、例えば、ユーザ端末２０と情報処理装置１０との間で、Ｗｉ−Ｆｉ等のような無線通信を確立するためのデバイスであり得る。なお、無線通信に限らず、ユーザ端末２０と情報処理装置１０との間で通信を確立できれば、通信部２０２の態様は特に限定されない。ユーザ端末２０は、通信部２０２を介して、情報処理装置１０との間でデータの送受信を行う。なお、以降では、ユーザ端末２０内の各構成が情報処理装置１０側の構成とデータの送受信を行う場合には、特に記載が無い場合においても、通信部２０２を介してデータの送受信を行うものとする。
【００８１】
アクセス制御情報記憶部２５６は、開発元識別情報（即ち、開発者名ｄ２０及び識別情報ｄ２２）と、アクセス制御情報ｄ３０とを記憶する記憶部である。
【００８２】
また、符号化情報記憶部２５８は、符号化情報ｄ３２を記憶する記憶部である。
【００８３】
通信処理部２５２は、情報処理装置１０からのデータの取得や、情報処理装置１０へのデータの送信を行う。以下に、通信処理部２５２の具体的な動作について説明する。
【００８４】
アプリケーションｄ１０が起動すると、通信処理部２５２は、情報処理装置１０に対して符号化のための鍵情報の生成を依頼し、その応答として鍵情報ｋ２０を情報処理装置１０から取得する。なお、鍵情報ｋ２０の詳細については、情報処理装置１０の構成の説明とあわせて別途後述する。
【００８５】
情報処理装置１０から鍵情報ｋ２０を取得すると、通信処理部２５２は、取得した鍵情報ｋ２０を符号化処理部２５４に出力する。また、通信処理部２５２は、鍵情報ｋ２０の出力に対する応答として、符号化処理部２５４から符号化情報ｄ５２を取得する。符号化情報ｄ５２は、前述した符号化情報ｄ３２が、鍵情報ｋ２０に基づき符号化された情報である。なお、符号化情報ｄ５２の生成に係る処理については、符号化処理部２５４の動作とあわせて別途後述する。
【００８６】
また、通信処理部２５２は、アクセス制御情報記憶部２５６から、開発元識別情報及びアクセス制御情報ｄ３０を読み出す。通信処理部２５２は、取得した符号化情報ｄ５２と、アクセス制御情報記憶部２５６から読み出した開発元識別情報及びアクセス制御情報ｄ３０とを、認証情報として情報処理装置１０に送信する。
【００８７】
このとき、通信処理部２５２は、認証情報のうち、開発元識別情報及びアクセス制御情報ｄ３０に対して不可逆処理を施さずに情報処理装置１０に送信する。また、通信処理部２５２は、認証情報のうち少なくとも開発元識別情報に対して暗号化処理及び符号化処理のいずれも施さずに、情報処理装置１０への送信対象としてもよい。なお、ここでの暗号化処理及び符号化処理は、データの保護を目的とした暗号化処理及び符号化処理を指し、所定の通信方式に基づき通信を行うための暗号化処理及び符号化処理のみを指すものではない。
【００８８】
符号化処理部２５４は、通信処理部２５２から鍵情報ｋ２０を取得する。鍵情報ｋ２０を取得すると、符号化処理部２５４は、符号化情報記憶部２５８から符号化情報ｄ３２を読み出す。符号化処理部２５４は、読み出した符号化情報ｄ３２を取得した鍵情報ｋ２０に基づき符号化して、符号化情報ｄ５２を生成する。
【００８９】
このとき、符号化処理部２５４は、符号化の方式として不可逆的な符号化方式を用いる。なお、符号化情報ｄ５２を生成するための符号化方式は、鍵情報に基づき符号化可能であり、かつ、不可逆的であれば、その方法は限定されない。符号化情報ｄ５２を生成するための符号化方式の一例として、鍵付きハッシュが挙げられる。
【００９０】
符号化処理部２５４は、生成した符号化情報ｄ５２を通信処理部２５２に出力する。
【００９１】
次に、情報処理装置１０の構成について説明する。図７に示すように、情報処理装置１０は、通信部１０２と、鍵情報記憶部１０４と、表示部１０６と、処理部１５０とを含む。また、処理部１５０は、乱数生成部１５２と、認証情報取得部１５４と、判定部１５６と、表示制御部１５８と、アクセス制御部１６０とを含む。
【００９２】
通信部１０２は、ユーザ端末２０と通信を行うためのインタフェースである。なお、通信部１０２の構成は、前述した通信部２０２と同様であるため詳細な説明は省略する。なお、以降では、情報処理装置１０内の各構成がユーザ端末２０側の構成とデータの送受信を行う場合には、特に記載が無い場合においても、通信部１０２を介してデータの送受信を行うものとする。
【００９３】
鍵情報記憶部１０４は、鍵情報ｋ１０を記憶する記憶部である。鍵情報記憶部１０４には、前述した管理サーバ３０の鍵情報記憶部３１０に記憶された鍵情報と同様の鍵情報ｋ１０が記憶されている。
【００９４】
乱数生成部１５２は、ユーザ端末２０から鍵情報の生成に係る依頼を受けると、符号化のための鍵情報ｋ２０を生成する。鍵情報ｋ２０の具体的な一例として、乱数のようにランダムに生成された情報が挙げられる。なお、鍵情報ｋ２０は、乱数に限らず、符号化処理を行うための鍵の役割を果たせば、その態様は特に限定されない。
【００９５】
乱数生成部１５２は、生成した鍵情報ｋ２０をユーザ端末２０に送信する。これにより、ユーザ端末２０は、鍵情報ｋ２０に基づき符号化情報ｄ３２を符号化して、符号化情報ｄ５２を生成することが可能となる。
【００９６】
また、乱数生成部１５２は、生成した鍵情報ｋ２０を判定部１５６に出力する。
【００９７】
認証情報取得部１５４は、情報処理装置１０から認証情報として、開発元識別情報、アクセス制御情報ｄ３０、及び符号化情報ｄ５２を取得する。認証情報取得部１５４は、取得した認証情報を判定部１５６に出力する。
【００９８】
判定部１５６は、ユーザ端末２０から送信された認証情報を取得し、取得した認証情報に基づき、当該認証情報中の開発元識別情報が示す開発元が、事前申請された開発元であるか否かを判定する。なお、開発元識別情報が示す開発元は、ユーザ端末２０で実行されたアプリケーションｄ１０の開発元を示している。以下に、判定部１５６による判定処理の一例について説明する。
【００９９】
判定部１５６は、鍵情報ｋ２０を乱数生成部１５２から取得する。また、判定部１５６は、認証情報を認証情報取得部１５４から取得する。また、判定部１５６は、鍵情報記憶部３１０から鍵情報ｋ１０を読み出す。
【０１００】
判定部１５６は、取得した認証情報中の開発元識別情報及びアクセス制御情報ｄ３０を鍵情報ｋ１０に基づき符号化して、符号化情報ｄ４２を生成する。なお、このとき判定部１５６は、管理サーバ３０の符号化情報生成部３０８と同様の符号化処理に基づき、符号化情報ｄ４２を生成する。即ち、符号化情報ｄ５２の生成元である符号化情報ｄ３２が、認証情報中の開発元識別情報及びアクセス制御情報ｄ３０に基づき符号化情報生成部３０８で生成されている場合には、符号化情報ｄ３２及びｄ４２は一致することとなる。
【０１０１】
符号化情報ｄ４２を生成したら、判定部１５６は、生成した符号化情報ｄ４２を鍵情報ｋ２０に基づき符号化して、符号化情報ｄ６２を生成する。なお、このとき判定部１５６は、ユーザ端末２０の符号化処理部２５４と同様の符号化処理に基づき、符号化情報ｄ６２を生成する。
【０１０２】
判定部１５６は、生成した符号化情報ｄ６２と、取得した符号化情報ｄ５２とを比較し、一致する場合には、開発元識別情報が示す開発元が、事前申請された開発元であると認識する。なお、このとき、符号化情報ｄ３２及びｄ４２が一致する場合には、同様の鍵情報ｋ２０に基づき同様の符号化処理により符号化された符号化情報ｄ５２及びｄ６２は一致することとなる。
【０１０３】
なお、上述した判定部１５６の処理は、あくまで一例であり、取得した認証情報に基づき、当該認証情報中の開発元識別情報が示す開発元が、事前申請された開発元であるか否かを判定できれば、その動作は限定されない。例えば、判定部１５６がインターネットのような外部ネットワークを介して管理サーバ３０と通信可能であれば、取得した認証情報中の開発元識別情報が正しいか否かを、当該外部ネットワークを介して管理サーバ３０に問い合わせてもよい。
【０１０４】
また、上記では、符号化情報ｄ３２を鍵情報ｋ２０により符号化してユーザ端末２０から情報処理装置１０に送信する例について説明したが、鍵情報ｋ２０による符号化を行わずに、符号化情報ｄ３２をユーザ端末２０から情報処理装置１０に送信してもよい。その場合には、鍵情報ｋ２０の生成及び送信に係る処理や、鍵情報ｋ２０に基づく符号化情報ｄ３２の符号化処理を実行する必要が無いことは言うまでもない。また、情報処理装置１０は、ユーザ端末２０から符号化情報ｄ３２を取得し、取得した符号化情報ｄ３２が、鍵情報ｋ１０に基づき生成した符号化情報ｄ４２と一致するか否かに基づき判定を行えばよい。
【０１０５】
開発元識別情報が示す開発元が事前申請された開発元であると認識したら、判定部１５６は、アクセス制御情報ｄ３０をアクセス制御部１６０に出力する。また、判定部１５６は、開発元識別情報が示す開発元が事前申請された開発元であることが判別されたことを、ユーザ端末２０に通知してもよい。この通知を受けて、ユーザ端末２０は、利用に関する事前申請を行ったＡＰＩの呼び出しを行えばよい。
【０１０６】
また、判定部１５６は、開発元識別情報が示す開発元を示す情報、例えば、開発者名ｄ２０及び識別情報ｄ２２のうち少なくともいずれかを表示制御部１５８に出力してもよい。なお、以降では、判定部１５６は、開発者名ｄ２０及び識別情報ｄ２２の双方を表示制御部１５８に出力したものとして説明する。
【０１０７】
アクセス制御部１６０は、判定部１５６からアクセス制御情報ｄ３０を取得する。アクセス制御部１６０は、ユーザ端末２０の実行部（図示しない）によりアプリケーションｄ１０が実行されＡＰＩが呼び出された場合には、アクセス制御情報ｄ３０の内容に基づき、当該ＡＰＩの実行を許可または制限する。
【０１０８】
具体的な一例として、呼び出されたＡＰＩが特に利用を制限されておらず、事前申請を必要としない場合には、アクセス制御部１６０は、当該ＡＰＩの実行を許可する。ＡＰＩの実行が許可されると、情報処理装置１０の実行部（図示しない）により、当該ＡＰＩが実行される。
【０１０９】
また、呼び出されたＡＰＩの利用が制限されており、アクセス制御情報ｄ３０により当該ＡＰＩの利用が許可されている場合には、アクセス制御部１６０は、当該ＡＰＩの実行を許可する。
【０１１０】
一方で、呼び出されたＡＰＩの利用が制限されており、アクセス制御情報ｄ３０により当該ＡＰＩの利用が許可されていない場合には、アクセス制御部１６０は、当該ＡＰＩの実行を制限または禁止する。このとき、アクセス制御部１６０は、呼び出されたＡＰＩの実行が許可されていない旨を、ユーザ端末２０に通知してもよい。
【０１１１】
以上のようにして、アクセス制御部１６０は、アクセス制御情報ｄ３０に基づきＡＰＩ群５０中の各ＡＰＩの実行を制御する。
【０１１２】
表示制御部１５８は、開発者名ｄ２０及び識別情報ｄ２２を判定部１５６から取得する。表示制御部１５８は、取得した開発者名ｄ２０及び識別情報ｄ２２、即ち、実行されたアプリケーションｄ１０の開発元を示す情報を識別可能に表示部１０６に表示させる。表示部１０６は、ディスプレイ等の表示媒体である。具体的な一例として、情報処理装置１０がデジタルカメラの場合には、表示部１０６は、情報の確認や撮像された画像の参照を行うために設けられたディスプレイ等が挙げられる。
【０１１３】
このように、実行されたアプリケーションｄ１０の開発元を示す情報を識別可能に表示させることで、例えば、開発元を示す情報を詐称することでＡＰＩが不正に利用されている場合に、この不正利用を検知することが可能となる。
【０１１４】
具体的には、開発元を示す情報を詐称している場合には、表示部１０６に表示される情報が、該当するアプリケーションの取得時にダウンロードサイト等に示される開発元と一致しなくなる。そのため、アプリケーションの実行に伴い取得された開発元を示す情報を識別可能に表示させることで、開発元を示す情報が詐称されている場合に、この開発元を示す情報の詐称を、情報処理装置１０を使用しているユーザｕ２０示唆することが可能となる。
【０１１５】
なお、開発元を示す情報を識別可能に表示させる場合には、この開発元を示す情報の表示自体により、開発元の詐称に伴うＡＰＩの不正利用を抑止することも可能となる。そのため、開発元を示す情報を識別可能に表示させる場合には、ユーザ端末２０から情報処理装置１０に開発者名ｄ２０または識別情報ｄ２２を送信するときに、これらの情報に対して可逆的な暗号化処理や符号化処理を施してもよい。この場合には、判定部１５６は、開発者名ｄ２０または識別情報ｄ２２に施された暗号化処理や符号化処理を復号し、復号された開発者名ｄ２０または識別情報ｄ２２に基づき上述した判定処理を実行すればよい。
【０１１６】
また、上記では、開発者ごとに利用可能なＡＰＩを制限する例について説明したが、ＡＰＩの利用を制限する管理単位は運用に応じて適宜変更することも可能である。例えば、アプリケーションごとに利用可能なＡＰＩを制限する場合には、アプリケーションごとに異なるアクセス制御情報ｄ３０を発行してもよい。このとき、アプリケーションごとに発行されるアクセス制御情報ｄ３０は、１つの識別情報ｄ２２に関連付けて管理してもよいし、それぞれについて異なる識別情報ｄ２２を発行してもよい。なお、アクセス制御情報ｄ３０が異なる場合には、各アクセス制御情報ｄ３０に基づき生成される符号化情報ｄ３２も異なるため、ＡＰＩに対するアクセス制御をアプリケーション単位で切り替えることが可能となる。
【０１１７】
＜４．処理＞
次に、本実施形態に係る情報処理システムの処理の流れについて、特に、開発者ｕ５０がＡＰＩ群５０の利用のための事前申請に係る動作と、ユーザ端末２０からの情報に基づき情報処理装置１０がＡＰＩ群５０の利用を制御する動作とに着目して説明する。
【０１１８】
［事前申請に係る動作］
まず、図８を参照しながら、開発者ｕ５０が管理サーバ３０に対してＡＰＩ群５０の利用に関する事前申請を行う場合の、管理サーバ３０の処理の流れについて説明する。図８は、本実施形態に係る管理サーバ３０の一連の動作を示したシーケンス図である。
【０１１９】
（ステップＳ１０２）
開発者情報取得部３０２は、開発者ｕ５０により指定された当該開発者ｕ５０の開発者名ｄ２０と、ＡＰＩ群５０のうち使用するＡＰＩのリストとを、当該開発者ｕ５０が操作する開発者端末８０から取得する。
【０１２０】
開発者情報取得部３０２は、取得した開発者名ｄ２０と、ＡＰＩのリストとを識別情報生成部３０４に出力する。
【０１２１】
（ステップＳ１０４）
識別情報生成部３０４は、開発者名ｄ２０と、ＡＰＩのリストとを開発者情報取得部３０２から取得する。識別情報生成部３０４は、「開発者名ｄ２０」が示す開発者ｕ５０に対して識別情報ｄ２２を発行する。
【０１２２】
また、識別情報生成部３０４は、取得したＡＰＩのリストに基づき、リスト中に指定されたＡＰＩに対するアクセスを制御（許可）するためのアクセス制御情報ｄ３０を生成する。
【０１２３】
識別情報生成部３０４は、取得した開発者名ｄ２０と、発行した識別情報ｄ２２と、生成したアクセス制御情報ｄ３０とを、符号化情報生成部３０８に出力する。
【０１２４】
（ステップＳ１０６）
符号化情報生成部３０８は、開発者名ｄ２０と、識別情報ｄ２２と、アクセス制御情報ｄ３０とを、識別情報生成部３０４から取得する。
【０１２５】
符号化情報生成部３０８は、開発者名ｄ２０と、識別情報ｄ２２と、アクセス制御情報ｄ３０とを、あらかじめ生成された鍵情報ｋ１０に基づき符号化して符号化情報ｄ３２を生成する。なお、鍵情報ｋ１０は、鍵情報記憶部３１０に記憶されている。
【０１２６】
このとき、符号化情報生成部３０８は、符号化の方式として不可逆的な符号化方式を用いる。なお、符号化情報ｄ３２を生成するための符号化方式は、鍵情報に基づき符号化可能であり、かつ、不可逆的であれば、その方法は限定されない。符号化情報ｄ３２を生成するための符号化方式の一例として、鍵付きハッシュが挙げられる。
【０１２７】
（ステップＳ１０８）
符号化情報生成部３０８は、識別情報ｄ２２と、アクセス制御情報ｄ３０と、符号化情報ｄ３２とを、開発者ｕ５０の開発者端末８０に送信する。これにより、開発者ｕ５０が、利用申請を行ったＡＰＩを使用してアプリケーションｄ１０を開発するための情報、即ち、識別情報ｄ２２、アクセス制御情報ｄ３０、及び符号化情報ｄ３２が、開発者ｕ５０に通知される。
【０１２８】
［ＡＰＩの利用の制御に係る動作］
次に、図９を参照しながら、ユーザ端末２０からの指示を受けて、情報処理装置１０が、ＡＰＩ群５０の利用に関する権限を確認し、ＡＰＩ群５０に対するアクセス制御を行う場合の、情報処理装置１０及びユーザ端末２０の処理の流れについて説明する。図９は、本実施形態に係る情報処理装置１０の一連の動作を示したシーケンス図である。
【０１２９】
（ステップＳ２０２）
アプリケーションｄ１０が起動すると、通信処理部２５２は、情報処理装置１０に対して符号化のための鍵情報の生成を依頼する。
【０１３０】
乱数生成部１５２は、ユーザ端末２０から鍵情報の生成に係る依頼を受けると、符号化のための鍵情報ｋ２０を生成する。鍵情報ｋ２０の具体的な一例として、乱数のようにランダムに生成された情報が挙げられる。なお、鍵情報ｋ２０は、乱数に限らず、符号化処理を行うための鍵の役割を果たせば、その態様は特に限定されない。
【０１３１】
（ステップＳ２０４）
乱数生成部１５２は、生成した鍵情報ｋ２０をユーザ端末２０に送信する。また、乱数生成部１５２は、生成した鍵情報ｋ２０を判定部１５６に出力する。
【０１３２】
情報処理装置１０から鍵情報ｋ２０を取得すると、通信処理部２５２は、取得した鍵情報ｋ２０を符号化処理部２５４に出力する。
【０１３３】
（ステップＳ２０６）
符号化処理部２５４は、通信処理部２５２から鍵情報ｋ２０を取得する。鍵情報ｋ２０を取得すると、符号化処理部２５４は、符号化情報記憶部２５８から符号化情報ｄ３２を読み出す。符号化処理部２５４は、読み出した符号化情報ｄ３２を取得した鍵情報ｋ２０に基づき符号化して、符号化情報ｄ５２を生成する。
【０１３４】
このとき、符号化処理部２５４は、符号化の方式として不可逆的な符号化方式を用いる。なお、符号化情報ｄ５２を生成するための符号化方式は、鍵情報に基づき符号化可能であり、かつ、不可逆的であれば、その方法は限定されない。符号化情報ｄ５２を生成するための符号化方式の一例として、鍵付きハッシュが挙げられる。
【０１３５】
符号化処理部２５４は、生成した符号化情報ｄ５２を通信処理部２５２に出力する。通信処理部２５２は、鍵情報ｋ２０の出力に対する応答として、符号化処理部２５４から符号化情報ｄ５２を取得する。
【０１３６】
（ステップＳ２０８）
また、通信処理部２５２は、アクセス制御情報記憶部２５６から、開発元識別情報（即ち、開発者名ｄ２０及び識別情報ｄ２２）と、アクセス制御情報ｄ３０とを読み出す。通信処理部２５２は、取得した符号化情報ｄ５２と、アクセス制御情報記憶部２５６から読み出した開発元識別情報及びアクセス制御情報ｄ３０とを、認証情報として情報処理装置１０に送信する。
【０１３７】
このとき、通信処理部２５２は、認証情報のうち、開発元識別情報及びアクセス制御情報ｄ３０に対して不可逆処理を施さずに情報処理装置１０に送信する。また、通信処理部２５２は、認証情報のうち少なくとも開発元識別情報に対して暗号化処理及び符号化処理のいずれも施さずに、情報処理装置１０への送信対象としてもよい。
【０１３８】
（ステップＳ２１０）
認証情報取得部１５４は、情報処理装置１０から認証情報として、開発元識別情報、アクセス制御情報ｄ３０、及び符号化情報ｄ５２を取得する。認証情報取得部１５４は、取得した認証情報を判定部１５６に出力する。
【０１３９】
判定部１５６は、鍵情報ｋ２０を乱数生成部１５２から取得する。また、判定部１５６は、認証情報を認証情報取得部１５４から取得する。また、判定部１５６は、鍵情報記憶部３１０から鍵情報ｋ１０を読み出す。
【０１４０】
判定部１５６は、取得した認証情報中の開発元識別情報及びアクセス制御情報ｄ３０を鍵情報ｋ１０に基づき符号化して、符号化情報ｄ４２を生成する。なお、このとき判定部１５６は、管理サーバ３０の符号化情報生成部３０８と同様の符号化処理に基づき、符号化情報ｄ４２を生成する。
【０１４１】
符号化情報ｄ４２を生成したら、判定部１５６は、生成した符号化情報ｄ４２を鍵情報ｋ２０に基づき符号化して、符号化情報ｄ６２を生成する。なお、このとき判定部１５６は、ユーザ端末２０の符号化処理部２５４と同様の符号化処理に基づき、符号化情報ｄ６２を生成する。
【０１４２】
判定部１５６は、生成した符号化情報ｄ６２と、取得した符号化情報ｄ５２とを比較し、一致する場合には、開発元識別情報が示す開発元が、事前申請された開発元であると認識する。
【０１４３】
（ステップＳ２１２）
開発元識別情報が示す開発元が事前申請された開発元であると認識したら、判定部１５６は、アクセス制御情報ｄ３０をアクセス制御部１６０に出力する。なお、開発元識別情報が示す開発元が事前申請された開発元であると認識できなかった場合には、判定部１５６は、ユーザ端末２０からのアクセスを拒否してもよい。この場合には、ユーザ端末２０側は、判定部１５からのアクセス拒否に関する通知を受けて、アプリケーションｄ１０を終了させてもよい。また、他の一例として、判定部１５６は、開発元識別情報が示す開発元が事前申請された開発元であると認識できなかった場合には、事前申請を必要としないＡＰＩのみへのアクセスを許可したアクセス制御情報をアクセス制御部１６０に出力してもよい。
【０１４４】
また、判定部１５６は、開発元識別情報が示す開発元を示す情報、例えば、開発者名ｄ２０及び識別情報ｄ２２のうち少なくともいずれかを表示制御部１５８に出力してもよい。なお、以降では、判定部１５６は、開発者名ｄ２０及び識別情報ｄ２２の双方を表示制御部１５８に出力したものとして説明する。
【０１４５】
表示制御部１５８は、開発者名ｄ２０及び識別情報ｄ２２を判定部１５６から取得する。表示制御部１５８は、取得した開発者名ｄ２０及び識別情報ｄ２２、即ち、実行されたアプリケーションｄ１０の開発元を示す情報を識別可能に表示部１０６に表示させる。
【０１４６】
（ステップＳ２１４）
また、判定部１５６は、開発元識別情報が示す開発元が事前申請された開発元であることが判別されたことを、ユーザ端末２０に通知してもよい。この通知を受けて、ユーザ端末２０は、利用に関する事前申請を行ったＡＰＩの呼び出しを行えばよい。
【０１４７】
（ステップＳ２１６、Ｓ２１８）
アクセス制御部１６０は、判定部１５６からアクセス制御情報ｄ３０を取得する。アクセス制御部１６０は、ユーザ端末２０の実行部（図示しない）によりアプリケーションｄ１０が実行されＡＰＩが呼び出された場合には（ステップＳ２１６）、アクセス制御情報ｄ３０の内容に基づき、当該ＡＰＩの実行を許可または制限する（ステップＳ２１８）。
【０１４８】
具体的な一例として、呼び出されたＡＰＩが特に利用を制限されておらず、事前申請を必要としない場合には、アクセス制御部１６０は、当該ＡＰＩの実行を許可する。ＡＰＩの実行が許可されると、情報処理装置１０の実行部（図示しない）により、当該ＡＰＩが実行される。
【０１４９】
また、呼び出されたＡＰＩの利用が制限されており、アクセス制御情報ｄ３０により当該ＡＰＩの利用が許可されている場合には、アクセス制御部１６０は、当該ＡＰＩの実行を許可する。
【０１５０】
一方で、呼び出されたＡＰＩの利用が制限されており、アクセス制御情報ｄ３０により当該ＡＰＩの利用が許可されていない場合には、アクセス制御部１６０は、当該ＡＰＩの実行を制限または禁止する。このとき、アクセス制御部１６０は、呼び出されたＡＰＩの実行が許可されていない旨を、ユーザ端末２０に通知してもよい。
【０１５１】
以上のようにして、アクセス制御部１６０は、アクセス制御情報ｄ３０に基づきＡＰＩ群５０中の各ＡＰＩの実行を制御する。
【０１５２】
＜５．ハードウェア構成＞
以上、本開示の実施形態を説明した。上述した情報処理装置１０による情報処理は、以下に説明するような情報処理装置１０のハードウェアとの協働により実現される。
【０１５３】
図１０は、情報処理装置１０のハードウェア構成の一例を示した説明図である。図１０に示したように、情報処理装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９０３と、入力装置９０８と、出力装置９１０と、ストレージ装置９１１と、ドライブ９１２と、通信装置９１５とを備える。
【０１５４】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、各種プログラムに従って情報処理装置１０内の動作全般を制御する。また、ＣＰＵ９０１は、マイクロプロセッサであってもよい。ＲＯＭ９０２は、ＣＰＵ９０１が使用するプログラムや演算パラメータ等を記憶する。ＲＡＭ９０３は、ＣＰＵ９０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を一時記憶する。これらはＣＰＵバスなどから構成されるホストバスにより相互に接続されている。
【０１５５】
入力装置９０８は、ボタンやスイッチなどユーザが情報を入力するための入力手段と、ユーザによる入力に基づいて入力信号を生成し、ＣＰＵ９０１に出力する入力制御回路などから構成されている。情報処理装置１０のユーザは、該入力装置９０８を操作することにより、情報処理装置１０に対して処理動作を指示したりすることができる。
【０１５６】
出力装置９１０は、例えば、液晶ディスプレイ（ＬＣＤ）装置、ＯＬＥＤ（Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）装置およびランプなどの表示装置を含む。さらに、出力装置９１０は、スピーカおよびヘッドホンなどの音声出力装置を含む。例えば、表示装置は、撮像された画像や生成された画像などを表示する。一方、音声出力装置は、音声データ等を音声に変換して出力する。
【０１５７】
ストレージ装置９１１は、本実施形態にかかる情報処理装置１０の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置９１１は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置などを含んでもよい。このストレージ装置９１１は、ＣＰＵ９０１が実行するプログラムや各種データを格納する。
【０１５８】
ドライブ９１２は、記憶媒体用リーダライタであり、情報処理装置１０に内蔵、あるいは外付けされる。ドライブ９１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記憶媒体に記録されている情報を読み出して、ＲＡＭ９０３に出力する。また、ドライブ９１２は、リムーバブル記憶媒体に情報を書き込むこともできる。
【０１５９】
通信装置９１５は、例えば、ネットワークＮに接続するための通信デバイス等で構成された通信インタフェースである。特に、本開示の実施形態に係る通信装置９１５は、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）対応通信装置を含む。なお、通信装置９１５は、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）対応通信装置や、有線による通信を行うワイヤー通信装置を含んでもよい。
【０１６０】
なお、ネットワークＮは、ネットワークＮに接続されている装置から送信される情報の有線、または無線の伝送路である。例えば、ネットワークＮは、インターネット、電話回線網、衛星通信網などの公衆回線網や、Ｅｔｈｅｒｎｅｔ（登録商標）を含む各種のＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などを含んでもよい。また、ネットワークＮは、ＩＰ−ＶＰＮ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ−Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）などの専用回線網を含んでもよい。
【０１６１】
また、図１０に示すハードウェア構成はあくまで一例であり、上述した本開示の実施形態に係る情報処理装置１０の動作を実現できれば図１０に示したハードウェア構成には限定されない。
【０１６２】
また、コンピュータに内蔵されるＣＰＵ、ＲＯＭ及びＲＡＭなどのハードウェアを、上記した情報処理装置が有する構成と同等の機能を発揮させるためのプログラムも作成可能である。また、当該プログラムを記録した、コンピュータに読み取り可能な記憶媒体も提供され得る。
【０１６３】
＜５．まとめ＞
以上のように、本実施形態に係る情報処理装置システムに依れば、情報処理装置は、アプリケーションｄ１０に関連付けられた開発元識別情報をユーザ端末２０から取得し、取得した開発元識別情報が示す開発元が、事前申請された開発元か否かに応じてＡＰＩの実行を制御する。このような構成により、開発者に応じてＡＰＩの利用を制限することが可能となる。
【０１６４】
また、本実施形態に係る情報処理装置システムでは、開発元識別情報が示す開発元を開発元情報ｖ１０として表示させたり、開発元識別情報をユーザ端末２０と情報処理装置１０との間のネットワークｎ１に露出させることで、開発元をユーザに識別可能に提示する。このとき、開発元を詐称することでＡＰＩを不正に利用したアプリケーションｄ１０が提供された場合に、当該アプリケーションｄ１０の提供時に示される開発元と、開発元識別情報が示す開発元とが一致しなくなる。そのため、開発元の詐称によりＡＰＩが不正利用されていたとしても、アプリケーションｄ１０を利用するユーザに開発元が詐称されていることを気付かせることが可能となる。また、このように開発元の詐称がアプリケーションｄ１０を利用するユーザにより検知されることで、開発元の不正がユーザに知られることとなるため、副次的に、開発元の詐称に伴うＡＰＩの不正利用を抑止することが可能となる。
【０１６５】
なお、上記では、開発元識別情報が示す開発元を開発元情報ｖ１０の表示に係る処理と、開発元識別情報に対して暗号化処理及び符号化処理のいずれも施さないことで、開発元識別情報をネットワークｎ１に露出させる処理の双方が実行される例について説明した。しかしながら、アプリケーションｄ１０を利用するユーザに開発元が詐称されていることを気付かせることが可能であれば、いずれか一方の処理のみを実行させてもよい。
【０１６６】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１６７】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
ユーザ端末が有するアプリケーションプログラムに関連付けられた開発元識別情報と、自身が有する１以上の機能の実行の可否を制御するためのアクセス制御情報とを、当該ユーザ端末から取得する取得部と、
前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定する判定部と、
前記判定部による判定結果に基づき、前記アクセス制御情報に基づき前記１以上の機能のうち少なくとも一部の実行を制御する制御部と、
を備える、情報処理装置。
（２）
前記取得部は、不可逆処理が施されていない前記開発元識別情報を前記ユーザ端末から取得する、前記（１）に記載の情報処理装置。
（３）
前記取得部は、符号化処理及び暗号化処理のいずれも施されていない前記開発元識別情報を送信対象として前記ユーザ端末から送信されたデータを受信し、当該データから当該開発元識別情報を取得する、前記（２）に記載の情報処理装置。
（４）
前記開発元識別情報の示す前記アプリケーションプログラムの開発元を識別可能に表示させる表示制御部を備える、前記（１）〜３のいずれか一項に記載の情報処理装置。
（５）
前記表示制御部は、前記開発元識別情報及び前記アクセス制御情報が関連付けられたアプリケーションプログラムが動作している場合に、前記開発元識別情報の示す前記アプリケーションプログラムの開発元を識別可能に表示させる、前記（４）に記載の情報処理装置。
（６）
表示部を備え、
前記表示制御部は、前記開発元識別情報の示す前記アプリケーションプログラムの開発元を前記表示部に表示させる、前記（４）または（５）に記載の情報処理装置。
（７）
前記取得部は、前記開発元識別情報及び前記アクセス制御情報が所定の鍵情報に基づきあらかじめ符号化された第１の符号化情報を取得し、
前記判定部は、前記ユーザ端末から取得した前記開発元識別情報及び前記アクセス制御情報を、前記鍵情報に基づき符号化して第２の符号化情報を生成し、生成した前記第２の符号化情報と、取得した前記第１の符号化情報とが一致するか否かに基づき、取得した前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定する、前記（１）〜６のいずれか一項に記載の情報処理装置。
（８）
符号化のための第１の鍵情報を生成し、生成した前記第１の鍵情報を前記ユーザ端末に出力する鍵情報生成部を備え、
前記取得部は、前記開発元識別情報及び前記アクセス制御情報が所定の第２の鍵情報に基づきあらかじめ符号化された符号化情報が、前記第１の鍵情報に基づき符号化された第１の符号化情報を取得し、
前記判定部は、前記ユーザ端末から取得した前記開発元識別情報及び前記アクセス制御情報を、前記第２の鍵情報に基づき符号化し、当該符号化に基づき出力される符号化情報を前記第１の鍵情報に基づき符号化することで第２の符号化情報を生成し、生成した前記第２の符号化情報と、取得した前記第１の符号化情報とが一致するか否かに基づき、取得した前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定する、前記（１）〜６のいずれか一項に記載の情報処理装置。
（９）
ユーザ端末が有するアプリケーションプログラムに関連付けられた開発元識別情報と、自身が有する１以上の機能の実行の可否を制御するためのアクセス制御情報とを、当該ユーザ端末から取得するステップと、
前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定するステップと、
前記判定の結果に基づき、前記アクセス制御情報に基づき前記１以上の機能のうち少なくとも一部の実行を制御するステップと、
を備える、情報処理方法。
（１０）
コンピュータに、
ユーザ端末が有するアプリケーションプログラムに関連付けられた開発元識別情報と、自身が有する１以上の機能の実行の可否を制御するためのアクセス制御情報とを、当該ユーザ端末から取得することと、
前記開発元識別情報の示す前記アプリケーションプログラムの開発元が事前申請された開発元であるか否かを判定することと、
前記判定の結果に基づき、前記アクセス制御情報に基づき前記１以上の機能のうち少なくとも一部の実行を制御することと、
を実行させるプログラム。
【符号の説明】
【０１６８】
１０    情報処理装置
１０ａ  デジタルカメラ
１０ｂ  テレビジョン装置
１０ｃ  情報処理装置
１０２  通信部
１０４  鍵情報記憶部
１０６  表示部
１５０  処理部
１５２  乱数生成部
１５４  認証情報取得部
１５６  判定部
１５８  表示制御部
１６０  アクセス制御部
２０    ユーザ端末
２０２  通信部
２０６  表示部
２５２  通信処理部
２５４  符号化処理部
２５６  アクセス制御情報記憶部
２５８  符号化情報記憶部
３０    管理サーバ
３０２  開発者情報取得部
３０４  識別情報生成部
３０６  開発者情報記憶部
３０８  符号化情報生成部
３１０  鍵情報記憶部
８０    開発者端末
９０    アプリケーション提供サーバ
【図１】
2015001817.tif 000003
【図２】
2015001817.tif 000004
【図３】
2015001817.tif 000005
【図４】
2015001817.tif 000006
【図５】
2015001817.tif 000007
【図６】
2015001817.tif 000008
【図７】
2015001817.tif 000009
【図８】
2015001817.tif 000010
【図９】
2015001817.tif 000011
【図１０】
2015001817.tif 000012