説明

端末、アプリ保護方法及びプログラム

【課題】端末アプリの端末間移動や改ざんによる実行を防止する。
【解決手段】端末アプリの実行に必須の実行許可情報について、端末アプリのハッシュ値及び端末識別情報で暗号化して端末に置き、実行の都度、端末アプリのハッシュ値と端末の端末識別情報で復号化して端末アプリに提供することにより、端末アプリが改ざんされておらず、かつ、端末間で移動されてもいない場合以外は、実行許可情報の復号と端末アプリ実行が不可能となる。このため、端末アプリの端末間移動や改ざんによる実行を防止することができる。また、実行許可情報を端末に置くことで、実行ごとに制御サーバにアクセスする必要が無く端末及びサーバで情報処理と通信の負荷が削減できる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、端末用アプリの保護に関する。
【背景技術】
【0002】
スマートフォンや携帯電話端末装置に代表されるモバイル情報端末(以下「端末」)で実行されるアプリケーション・ソフトウェア(以下「端末アプリ」や「アプリ」とも呼ぶ)が普及し、多様な機能を提供している。端末アプリには有料課金モデルや限定特典など、利用する端末やユーザを限定するものも多く、この種の端末アプリは購入などで正当な利用権原のある端末に限って実行が許諾される。この種の端末アプリは、提供者に無断で端末間でコピーや移動がされると、許諾外の端末上で利用され有料課金収入を脅かすなど、優良なソフトの普及を阻害する弊害が生じる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2011−049876号
【発明の概要】
【発明が解決しようとする課題】
【0004】
そのような弊害を防止するため、導入すなわちインストールや初回起動時に、端末識別情報(固有製造番号など)を端末アプリ内に埋め込み、他の端末に移しても動作しないようにする工夫も提案されている。しかし、この場合、端末アプリのうち埋め込まれた端末識別情報の部分を改ざんすることで、任意の端末上でも無断利用されるおそれがあった。
【0005】
端末と利用権原に関しては、指紋認証などで正当なユーザだけに端末の操作を許す技術はあるが(例えば、特許文献1参照)、この技術は、端末の各種操作を許す前に一括してユーザ認証を行うもので、認証されたユーザであれば端末内の情報は自由に操作できるので、端末アプリの端末間移動や改ざんを防止するものではなかった。
【0006】
上記の課題に対し、本発明の目的は、端末アプリの端末間移動や改ざんによる実行を防止することである。
【課題を解決するための手段】
【0007】
上記の目的をふまえ、本発明の一態様(1)は、端末アプリの実行及びその他の情報処理を行う端末であって、端末アプリの実行で必要となる実行許可情報をその端末アプリのハッシュ値及び端末の端末識別情報とで暗号化した暗号化データを端末アプリに対応付けて記憶する暗号許可記憶手段と、端末アプリからハッシュ値を生成するハッシュ生成手段と、端末アプリを実行しようとするとき、その端末アプリから前記ハッシュ生成手段が生成したハッシュ値及びこの端末の端末識別情報とにより、その端末アプリに対応付けて前記暗号許可記憶手段に記憶されている前記暗号化データから、前記実行許可情報を復号化してその端末アプリに提供する復号化手段と、を有することを特徴とする。
【0008】
本発明の他の態様(9)は、上記態様を方法のカテゴリで捉えたもので、端末アプリの実行及びその他の情報処理を行う端末におけるアプリ保護方法であって、端末アプリの実行で必要となる実行許可情報をその端末アプリのハッシュ値及び端末の端末識別情報とで暗号化した暗号化データを端末アプリに対応付けて記憶する暗号許可記憶手段を有するコンピュータが、端末アプリからハッシュ値を生成するハッシュ生成処理と、端末アプリを実行しようとするとき、その端末アプリから前記ハッシュ生成手段が生成したハッシュ値及びこの端末の端末識別情報とにより、その端末アプリに対応付けて前記暗号許可記憶手段に記憶されている前記暗号化データから、前記実行許可情報を復号化してその端末アプリに提供する復号化処理と、を行うことを特徴とする。
【0009】
本発明の他の態様(13)は、上記態様をコンピュータ・プログラムのカテゴリで捉えたもので、端末アプリの実行及びその他の情報処理を行う端末のためのアプリ保護プログラムであって、前記プログラムは、端末アプリの実行で必要となる実行許可情報をその端末アプリのハッシュ値及び端末の端末識別情報とで暗号化した暗号化データを端末アプリに対応付けて記憶する暗号許可記憶手段を有するコンピュータを制御することにより、端末アプリからハッシュ値を生成させ、端末アプリを実行しようとするとき、その端末アプリから前記ハッシュ生成手段に生成させたハッシュ値及びこの端末の端末識別情報とにより、その端末アプリに対応付けて前記暗号許可記憶手段に記憶されている前記暗号化データから、前記実行許可情報を復号化させてその端末アプリに提供させることを特徴とする。
【0010】
本発明では、端末アプリの実行に必須の実行許可情報について、端末アプリのハッシュ値及び端末識別情報で暗号化して端末に置き、実行の都度、端末アプリのハッシュ値と端末の端末識別情報で復号化して端末アプリに提供することにより、端末アプリが改ざんされておらず、かつ、端末間で移動されてもいない場合以外は、実行許可情報の復号と端末アプリ実行が不可能となる。このため、端末アプリの端末間移動や改ざんによる実行を防止することができる。また、実行許可情報を端末に置くことで、実行ごとに制御サーバにアクセスする必要が無く端末及びサーバで情報処理と通信の負荷が削減できる。
【0011】
本発明の他の態様(2)である端末は、上記いずれかの態様において、生成された前記ハッシュ値と、前記端末アプリを識別するアプリ識別情報と、を含む確認要求を所定の制御サーバへ送信する確認要求送信手段と、送信された前記確認要求に対応して前記制御サーバから送信され前記端末アプリの実行に必要となる実行許可情報を受信する許可情報受信手段と、受信された前記実行許可情報を、前記確認要求に係る前記ハッシュ値と、この端末の端末識別情報と、で暗号化し暗号化データとする暗号化手段と、を有することを特徴とする。
【0012】
本発明の他の態様(5)である制御サーバは、端末への提供に係る端末アプリであって利用権原が存在するものについて、アプリ識別情報と、ハッシュ値と、端末での実行で必要となる実行許可情報と、を記憶しているアプリ情報記憶手段と、端末から送信された端末アプリに係る確認要求から取得するハッシュ値と、その端末アプリについて前記アプリ情報記憶手段に記憶されている前記ハッシュ値と、の照合によりその端末アプリが改ざんされていないことを確認する改ざん確認手段と、前記確認要求から取得するアプリ識別情報と、前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記アプリ識別情報と、の照合によりその端末アプリについて利用権原が存在することを確認する利用権原確認手段と、前記改ざんされていないこと及び前記利用権原が存在することが確認された前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記実行許可情報を、前記確認要求の送信元である前記端末へ送信する許可送信手段と、を有することを特徴とする。
【0013】
本発明の他の態様(11)であるアプリ保護方法は、上記態様を方法のカテゴリで捉えたもので、端末への提供に係る端末アプリであって利用権原が存在するものについて、アプリ識別情報と、ハッシュ値と、端末での実行で必要となる実行許可情報と、を記憶しているアプリ情報記憶手段を有する制御サーバのコンピュータが、端末から送信された端末アプリに係る確認要求から取得するハッシュ値と、その端末アプリについて前記アプリ情報記憶手段に記憶されている前記ハッシュ値と、の照合によりその端末アプリが改ざんされていないことを確認する改ざん確認処理と、前記確認要求から取得するアプリ識別情報と、前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記アプリ識別情報と、の照合によりその端末アプリについて利用権原が存在することを確認する利用権原確認処理と、前記改ざんされていないこと及び前記利用権原が存在することが確認された前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記実行許可情報を、前記確認要求の送信元である前記端末へ送信する許可送信処理と、を実行することを特徴とする。
【0014】
これらの態様では、先に述べた本発明の作用効果に加え、特に、端末からの確認要求により制御サーバが、端末アプリの無改ざん性と正当権原の存在を確認のうえ実行許可情報を提供し、この実行許可情報はハッシュ値と端末識別情報で暗号化した暗号化データとして端末で記憶しておく。これにより、端末アプリのダウンロード提供時点では、制御サーバが実行許可情報を端末識別情報で暗号化して端末に送信する負荷が不要となるうえ、ダウンロード時点では端末アプリが端末に直ちには固定されない。このため、ユーザの都合のよい任意の端末で端末アプリを初回起動し確認要求を行えば、以降、その端末上のみで端末アプリを利用可能となり、柔軟な使い勝手が実現される。
【0015】
本発明の他の態様(3)は、端末に関連する上記いずれかの態様において、生成された前記ハッシュ値と、前記端末アプリを識別するアプリ識別情報と、端末の端末識別情報と、を含む確認要求を所定の制御サーバへ送信する確認要求送信手段と、送信された前記確認要求に対応して前記制御サーバから送信され前記端末アプリの実行に必要となる実行許可情報であって、前記確認要求に含まれる前記ハッシュ値及び前記端末識別情報と、で暗号化された暗号化データを受信する暗号許可受信手段と、を有することを特徴とする。
【0016】
本発明の他の態様(6)である制御サーバは、端末への提供に係る端末アプリであって利用権原が存在するものについて、アプリ識別情報と、ハッシュ値と、端末での実行で必要となる実行許可情報と、を記憶しているアプリ情報記憶手段と、端末から送信された端末アプリに係る確認要求から取得するハッシュ値と、その端末アプリについて前記アプリ情報記憶手段に記憶されている前記ハッシュ値と、の照合によりその端末アプリが改ざんされていないことを確認する改ざん確認手段と、前記確認要求から取得するアプリ識別情報と、前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記アプリ識別情報と、の照合によりその端末アプリについて利用権原が存在することを確認する利用権原確認手段と、前記改ざんされていないこと及び前記利用権原が存在することが確認された前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記実行許可情報を、前記確認要求から取得する前記ハッシュ値及び前記端末識別情報で暗号化し暗号化データとする暗号化手段と、暗号化された前記暗号化データを、前記確認要求の送信元である前記端末へ送信する許可送信手段と、を有することを特徴とする。
【0017】
本発明の他の態様(12)であるアプリ保護方法は、上記態様を方法のカテゴリで捉えたもので、端末への提供に係る端末アプリであって利用権原が存在するものについて、アプリ識別情報と、ハッシュ値と、端末での実行で必要となる実行許可情報と、を記憶しているアプリ情報記憶手段を有する制御サーバのコンピュータが、端末から送信された端末アプリに係る確認要求から取得するハッシュ値と、その端末アプリについて前記アプリ情報記憶手段に記憶されている前記ハッシュ値と、の照合によりその端末アプリが改ざんされていないことを確認する改ざん確認処理と、前記確認要求から取得するアプリ識別情報と、前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記アプリ識別情報と、の照合によりその端末アプリについて利用権原が存在することを確認する利用権原確認処理と、前記改ざんされていないこと及び前記利用権原が存在することが確認された前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記実行許可情報を、前記確認要求から取得する前記ハッシュ値及び前記端末識別情報で暗号化し暗号化データとする暗号化処理と、暗号化された前記暗号化データを、前記確認要求の送信元である前記端末へ送信する許可送信処理と、を実行することを特徴とする。
【0018】
これらの態様では、先に述べた作用効果に加え、特に、端末からの確認要求により制御サーバが、端末アプリの無改ざん性と正当権原の存在を確認のうえ実行許可情報を提供し、この実行許可情報はハッシュ値と端末識別情報で暗号化した暗号化データとして端末で記憶しておく。これにより、端末アプリのダウンロード提供時点では、制御サーバが実行許可情報を端末識別情報で暗号化して端末に送信する負荷が不要となるうえ、ダウンロード時点では端末アプリが端末に直ちには固定されない。このため、ユーザの都合のよい任意の端末で端末アプリを初回起動し確認要求を行えば、以降、その端末上のみで端末アプリを利用可能となり、柔軟な使い勝手が実現される。
特に、暗号化を端末側で行う態様(2、5)では、暗号化に要するサーバ負荷が軽減され、一方、暗号化をサーバ側で行う態様(3、6)では、処理能力の限られた端末の負荷が軽減されるうえ、端末アプリ実行の鍵となる実行許可情報を暗号化前に通信ネットワーク経由などで送信するためにSSLなど他に暗号化の手段を用意する必要が無いので、少ない負担でセキュリティを維持できる。
【0019】
本発明の他の態様(4)は、端末へ端末アプリを提供する制御サーバであって、前記端末アプリの実行に必要となる所定の実行許可情報を、その端末アプリに係るハッシュ値と、前記端末から受信する端末識別情報と、で暗号化し暗号化データとする暗号化手段と、アプリ保護プログラムを組み込んだ端末アプリ及び前記暗号化データを端末に提供する提供手段と、を有し、前記アプリ保護プログラムは前記端末に、前記端末において前記端末アプリを実行しようとするときに、その端末アプリから前記ハッシュ生成手段が生成するハッシュ値と、その端末の端末識別情報と、により、その端末アプリに対応付けて所定の暗号許可記憶手段に記憶されている前記暗号化データから前記実行許可情報を復号化してその端末アプリに提供させることを特徴とする。
【0020】
本発明の他の態様(10)であるアプリ保護方法は、上記態様を方法のカテゴリで捉えたもので、端末へ端末アプリを提供する制御サーバのコンピュータが、前記端末アプリの実行に必要となる所定の実行許可情報を、その端末アプリに係るハッシュ値と、前記端末から受信する端末識別情報と、で暗号化し暗号化データとする暗号化処理と、アプリ保護プログラムを組み込んだ端末アプリ及び前記暗号化データを端末に提供する提供処理と、を実行し、前記アプリ保護プログラムは前記端末に、前記端末において前記端末アプリを実行しようとするときに、その端末アプリから前記ハッシュ生成手段が生成するハッシュ値と、その端末の端末識別情報と、により、その端末アプリに対応付けて所定の暗号許可記憶手段に記憶されている前記暗号化データから前記実行許可情報を復号化してその端末アプリに提供させることを特徴とする。
【0021】
これらの態様では、先に述べた作用効果に加え、特に、制御サーバからアプリ保護プログラムを組み込んだ端末アプリと共に、ハッシュ値と端末識別情報で暗号化した暗号化データも端末に提供することにより、以降、端末アプリの初回起動時を含め端末では確認要求等の処理は不要となるので、ユーザの使い勝手に優れ、端末アプリを当初から特定の端末に確実に固定することができる。
【0022】
本発明の他の態様(8)であるアプリ保護システムは、端末に関連する上記いずれかの態様と、制御サーバに関連する上記いずれかの態様と、を有することを特徴とする。
【0023】
本発明の他の態様(7)は、制御サーバに関連する上記いずれかの態様において、アプリ保護プログラムを構成する共通モジュールを端末に提供する共通提供手段と、前記共通モジュールとともに前記アプリ保護プログラムを実現する個別モジュールを組み込んだ端末アプリを端末に提供する個別提供手段と、を有し、前記共通モジュールは前記端末に、前記端末に導入された前記端末アプリからハッシュ値を生成させ、生成された前記ハッシュ値と前記端末アプリを識別するアプリ識別情報とを含む確認要求を所定の制御サーバへ送信させ、送信された前記確認要求に対応して前記制御サーバから送信され前記端末アプリの実行に必要となる実行許可情報であって、前記確認要求に係る前記ハッシュ値及びこの端末の端末識別情報とで暗号化し暗号化データとしたものを所定の暗号許可記憶手段に記憶させ、前記個別モジュールは前記端末に、その個別モジュールを組み込んだ端末アプリが前記端末で初回に起動されるとき、前記共通モジュールに、その端末アプリに含まれる前記アプリ識別情報を渡して前記確認要求を指示させ、前記端末において前記端末アプリを再度実行しようとするときに、その端末アプリから前記ハッシュ生成手段が生成するハッシュ値と、その端末の端末識別情報と、により、その端末アプリに対応付けて前記暗号許可記憶手段に記憶されている前記暗号化データから前記実行許可情報を復号化してその端末アプリに提供させることを特徴とする。
【0024】
この態様では、先に述べた作用効果に加え、確認要求と暗号化の部分を共通モジュールとして端末にインストールすることにより、確認要求や暗号化の機能部分を端末アプリごとに重複して持つ必要がなくなるため、限られた記憶容量の圧迫が回避できるうえ、共通モジュール部分の改修や更新が一度の処理で迅速に完了する。さらに、全ての端末アプリに共通する単一のモジュールとしてアプリ保護プログラムを実現し端末にインストールしておく場合と比べ、個別具体的な端末アプリの特徴など事情に応じた機能を個別モジュールで自由に実装可能となる。
【0025】
なお、上記の各態様は、その態様について明記しなかった他のカテゴリ(方法、プログラムなど)としても把握することができ、それら方法やプログラムのカテゴリについては、装置のカテゴリで示した「手段」を、「処理」や「ステップ」のように適宜読み替えるものとする。また、処理やステップの実行順序は本出願に直接明記するものに限定されず、適宜変更したりまとめて処理するなど変更可能であることも当然である。さらに、方法やプログラムのカテゴリにおいて、個々の処理やステップを実行する「コンピュータ」は共通でもよいし処理ごとに異なってもよい。加えて、本発明は、後述するさらに具体的な各態様を含むものである。
【発明の効果】
【0026】
本発明によれば、端末アプリの端末間移動や改ざんによる実行を防止することができる。
【図面の簡単な説明】
【0027】
【図1】本発明の第1実施形態について構成を示す機能ブロック図。
【図2】本発明の第1実施形態におけるデータ例を示す図。
【図3】本発明の第1実施形態における確認要求に関する処理手順を示すフローチャート。
【図4】本発明の第1実施形態における端末アプリ実行時の処理手順を示すフローチャート。
【図5】本発明の第2実施形態について構成を示す機能ブロック図。
【図6】本発明の第3実施形態について構成を示す機能ブロック図。
【発明を実施するための形態】
【0028】
次に、本発明の例として、本発明を実施するための形態(「実施形態」と呼ぶ)について図に沿って説明する。なお、背景技術や課題などで既に述べた内容と共通の前提事項については適宜省略する。
【0029】
〔1.第1実施形態〕
〔1−1.第1実施形態の構成〕
本実施形態は、図1(構成図)に示すように、アプリ保護装置を兼ねる端末Tと、制御サーバ2(以下「サーバ2」又は「サーバ」とも呼ぶ)と、を有するアプリ保護システムに関するものである。
【0030】
上記のうちサーバ2は、図1に示すように、コンピュータの構成として少なくとも、CPUなどの演算制御部6と、主メモリや補助記憶装置等の記憶装置7と、通信ネットワークN(例えば、インターネット、移動通信網など)との通信手段8(通信ゲートウェイ装置、移動通信網との通信回路、無線LANアダプタなど)と、を有する。
【0031】
また、端末Tは、端末アプリの実行及びその他の情報処理を行う電子情報機器で、スマートフォン、携帯電話端末、タブレットPCのほか、モバイルPC、据置型PCなどである。端末Tは、図示はしないが、上記のようなコンピュータの構成に加え、液晶表示パネルやタッチパネル、押ボタンなどを用いた入出力部を有する。端末Tは、図1では少数を模式的に示すが、実際はユーザ数に応じ多数存在する。
【0032】
そして、端末T及びサーバ2では、それぞれ、記憶装置7に記憶(インストール)した所定のコンピュータ・プログラム(端末Tにあってはアプリ保護プログラムを構成する共通モジュール及び個別モジュール)が演算制御部6を制御することで、図1に示す各手段などの要素(11ほか)を実現する。
【0033】
それら要素のうち情報の記憶手段は、記憶装置7上のファイルなど任意のデータ形式で実現できるほか、ネットワークコンピューティング(クラウド)によるリモート記憶でもよい。また、記憶手段は、データの格納領域だけでなく、データの入出力や管理などの機能を含んでもよい。また、本出願に示す記憶手段の単位は説明上の便宜によるもので、適宜、構成を分けたり一体化できるほか、明示する記憶手段以外にも、各手段の処理データや処理結果などを記憶する記憶手段を適宜用いるものとする。
【0034】
そして、記憶手段のうち、暗号許可記憶手段41は、図2(1)に例示するように、端末アプリの実行で必要となる実行許可情報をその端末アプリのハッシュ値及び端末の端末識別情報とで暗号化した暗号化データを端末アプリに対応付けて記憶する手段である。実行許可情報は、端末アプリの実行必須の実行許可コードなどのデジタル情報であり、個々の端末アプリごとに異なってもよいし共通でもよい。
【0035】
また、アプリ情報記憶手段28は、図2(2)に例示するように、端末Tへの提供に係る端末アプリであって利用権原が存在するものについて、アプリ識別情報と、ハッシュ値と、端末での実行で必要となる実行許可情報と、を記憶している手段である。ここで「アプリ識別情報」は、個々の端末毎にダウンロード提供した端末アプリに固有のシリアル番号などで、同じ種類、バージョンの端末アプリでもユーザや端末ごとに異なるものとする。
【0036】
但し、アプリ識別情報は、端末アプリの実行ファイル自体に埋め込んだり、端末アプリの実行ファイル自体を少しずつ変えて一意に個性を持たせれば、そのようなファイルに基づくハッシュ値も異なることになるので、そのようなハッシュ値をアプリ識別情報として用いてもよい。また、「利用権原」は、有料アプリの購入履歴の他、販促用特典の取得履歴、テスト用IDの記録など、種類は問わない。
【0037】
なお、図中(例えば図1)の矢印は、データや制御などの流れについて主要な方向を補助的に示すもので、方向の限定を意味するものではない。例えばデータをある方向に取得する場合、事前のデータリクエストや事後のアクノリッジ(ACK)が逆方向に送信される。また、記憶手段以外の各手段は、以下に説明するような情報処理の機能・作用を実現・実行する処理手段であるが、これらは説明のために整理した機能単位であり、実際のハードウェア要素やソフトウェアモジュールとの一致は問わない。
【0038】
〔1−2.第1実施形態の作用〕
上記のように構成された第1実施形態の作用を、図3のフローチャートに示す。
〔1−2−1.概要〕
作用の概要としては、アプリ保護プログラムが、端末アプリを問わない共通モジュールMXと、個々の端末アプリに組み込まれている個別モジュールM1と、の協働により構成される。そして、端末Tに事前インストールした共通モジュールMXが、端末アプリAの初回起動時にサーバ2へ確認要求を送信し、返信された実行許可情報を暗号化し端末アプリAの次回以降の起動時に復号化して用いる。以下、具体的に説明する。
【0039】
〔1−2−2.共通モジュールの事前インストール〕
まず、端末Tには予め、アプリ保護プログラムを構成する共通モジュールMXを、製造時に組み込み又はユーザがダウンロードしてインストールしておく(ステップS1)。ユーザがサーバ2からダウンロードする際、サーバ2の共通提供手段25が、アプリ保護プログラムを構成する共通モジュールMXを、予め記憶している所定の共通モジュール記憶手段24などから読み出して端末Tに送信することで提供する(ステップS21)。
【0040】
ダウンロード提供された共通モジュールMXは、端末Tの仕様に応じて、端末アプリの一つとして、又はデバイスドライバのようなオプションのシステムモジュール、アドイン、ダイナミック・リンク・ライブラリなど適宜な形式で、端末Tにインストール(導入)される。上記のように共通モジュールMXがインストールされた端末Tは、個々の端末アプリAを実行できる実行環境となる。
【0041】
〔1−2−3.端末アプリの提供〕
そして、個々の端末アプリAについては、アプリ購入などに際しての端末Tからのダウンロードの要求アクセスに対して(ステップS2)、サーバ2の個別提供手段27が、共通モジュールMXとともにアプリ保護プログラムを実現する個別モジュールM1を組み込んだ端末アプリAとして、端末Tに提供する(ステップS22)。端末アプリAは、図1では一つを示すが、端末Tの記憶容量の許す限り多数を利用でき、個々の端末アプリAは端末Tにインストールされると、アイコンなどで起動可能となる。
【0042】
なお、個別モジュールM1は、所定のアプリ等記憶手段26などにおいて、予め端末アプリAに組み込んだ状態で記憶しておけばダウンロード提供時に端末アプリAに組み込む処理負荷が軽減できる。一方、ダウンロード提供時に端末アプリAにその場で組み込むようにすれば、共通モジュールMXについて端末Tにおける記憶容量の重複が回避できるうえ、更新時も全ての組込済の端末アプリAを作成し直す負担が避けられる。
【0043】
〔1−2−4.確認要求の送信〕
そして、個別モジュールM1を組み込んだ端末アプリAが端末Tで起動され(ステップS3)、その起動が初回の場合(ステップS4:「YES」)、個別モジュールM1は端末Tの特に演算制御部6を制御することにより確認要求指示手段11として、共通モジュールMXに、その端末アプリAに含まれるアプリ識別情報を渡して確認要求を指示させる(ステップS5)。
【0044】
この際、個別モジュールM1から共通モジュールMXを動作させるために、オペレーティングシステムなどの基本ソフトウェアに代表されるソフトウェアの構成上、具体的にどのような種類の連携手段を採用するかは基本ソフトウェアの種類や仕様に応じて自由に選択すればよいが、一例として、モジュール間でのパラメータ受渡しを伴う呼び出しを用いることが考えられる。
【0045】
このとき、個別モジュールM1は端末アプリAに組み込まれているので、端末アプリの一種である共通モジュールMXからみると、他の端末アプリAから制御を渡されることになるが、基本ソフトウェアの仕様上、端末アプリA自身の参照(どの端末アプリを処理対象とするかを特定するポインタなどの情報)を端末アプリ間で引き渡せない場合も考えられる。このような場合、端末アプリAのファイルパス(端末アプリAの実行ファイルが置かれている端末T上のファイルディレクトリやフォルダを特定する文字列などの情報)を渡せばよい。
【0046】
また、ファイルパスを渡しても共通モジュールMXによるアプリ識別情報の取得が困難である場合、アプリ識別情報についてもパラメータとして引き継ぐことが考えられる。なお、個別モジュールM1と共通モジュールMXの間で、どちらにどの機能を置くかは自由であり(後述)、端末アプリAのハッシュ値の生成を個別モジュールM1で行う場合、先述のように個別モジュールM1から共通モジュールMXへファイルパスに代えて、生成したハッシュ値を渡してもよい。
【0047】
いずれにしても、確認要求の指示を個別モジュールM1から受けて共通モジュールMXでは、まず、ハッシュ生成手段X1が、端末アプリAのプログラムファイルから、その時点におけるハッシュ値すなわちダイジェストを生成する(ステップS6)。
【0048】
ここで、ハッシュ値を生成する基礎となるファイルなどデータの範囲は、個別モジュールM1を除く端末アプリA正味の部分に限定すれば処理の負荷と時間が抑制でき、一方、個別モジュールM1を含む端末アプリA全体を対象とすれば個別モジュールM1部分の改ざんにも対応できるので処理精度が改善する。そして、上記のように生成されたハッシュ値と、端末アプリAを識別するアプリ識別情報と、を含む確認要求を確認要求送信手段X2がサーバ2へ送信する(ステップS7)。
【0049】
〔1−2−5.確認要求に対する処理〕
サーバ2では、改ざん確認手段31が、端末Tから送信された端末アプリAに係る確認要求から取得するハッシュ値と、その端末アプリAについてアプリ情報記憶手段28に記憶されているハッシュ値と、の照合によりその端末アプリAが改ざんされていないことを確認する(ステップS23)。また、利用権原確認手段32が、確認要求から取得するアプリ識別情報と、端末アプリAについてアプリ情報記憶手段28に記憶されているアプリ識別情報と、の照合によりその端末アプリAについて利用権原が存在することを確認する(ステップS24)。なお、利用権原確認手段32は、アプリ識別情報を用いた照合により利用権原が存在することを確認したが、端末識別情報、ユーザを識別するユーザ識別情報、及びこれらの組み合わせを用いた照合により利用権原が存在することを確認することもできる。この場合、確認要求送信手段X2はこれらの情報を含む確認要求をサーバ2に送信する。また、アプリ情報記憶手段28は、アプリ識別情報のほか、端末識別情報、ユーザ識別情報を記憶する。
【0050】
そして、改ざんされていないこと(ステップS23:「YES」)及び利用権原が存在すること(ステップS24:「YES」)が確認された端末アプリAについては、許可送信手段33が、アプリ情報記憶手段28に記憶されている実行許可情報を、確認要求の送信元である端末Tへ送信する(ステップS25)。一方、改ざんされているか(ステップS23:「NO」)又は利用権原が無い(ステップS24:「NO」)端末アプリについてはエラーコードなど否定的な応答を許可送信手段33が返信する(ステップS26)。
【0051】
〔1−2−6.暗号化データの記憶〕
端末Tでは、確認要求への返信として送信され受信した応答が肯定的で、すなわち実行許可情報であれば(ステップS8:「OK」)それを記憶し(ステップS9)、エラーコードなど否定的な応答であれば(ステップS8:「NG」)、エラー表示のうえ端末アプリを終了するなど所定の動作を行う(ステップS10)。
【0052】
応答が肯定的な場合については、許可情報受信手段X3が、送信された確認要求に対応してサーバ2から送信され端末アプリAの実行に必要となる実行許可情報であって、確認要求に係るハッシュ値及びこの端末Tの端末識別情報とで暗号化し暗号化データとしたものを、所定の暗号許可記憶手段41に記憶させる。
【0053】
具体的には、ハッシュ値と端末識別番号によりサーバ2側で暗号化済の暗号化データを端末Tで受信し記憶させる態様も考えられるが(後述)、ここでは、他の暗号化技術(SSLなど)で保護している実行許可情報を受信し(ステップS8:「OK」)、受信された実行許可情報を暗号化手段X4が、確認要求に係るハッシュ値と、この端末の端末識別情報と、で暗号化して暗号化データとし、暗号許可記憶手段41に記憶させるものとする(ステップS9)。
【0054】
なお、端末識別情報は、端末Tの物理的な個体製造番号や、契約者に紐付いた端末IDなどであり、端末アプリは、オペレーティングシステムなどの基本ソフトウェアから取得できる。そして、上記のように暗号化を端末T側で行うことにより、暗号化に要するサーバ負荷が軽減され、また、暗号化に用いる端末識別情報を通信ネットワークN上で伝送するセキュリティリスクなどの負荷が回避できる。
【0055】
〔1−2−7.端末アプリ実行時の処理〕
上記のように暗号化データが端末Tで記憶された状態で、端末アプリAが続行され又は自動再起動もしくはユーザ操作などで改めて起動されることにより、以下のような処理で端末アプリ本来の機能を実行できる。すなわち、暗号化データを記憶済の端末Tにおいて端末アプリAを改めて起動するなどして実行しようとするとき、端末アプリAの起動は(ステップS3)初回ではなく2度目以降であり(ステップS4:「NO」)、図中、円で示す端子Eから図4のフローチャートへ進む。
【0056】
そして、まず、個別モジュールM1は端末Tにハッシュ生成手段50として、端末アプリAのファイルから、その時点におけるハッシュ値すなわちダイジェストを生成させる(ステップS11)。また、個別モジュールM1は端末Tに復号化手段60として、その端末アプリAからハッシュ生成手段50が生成したハッシュ値及びこの端末Tの端末識別情報(例えば個体製造番号など)とにより、その端末アプリAに対応付けて暗号許可記憶手段41に記憶されている暗号化データから、実行許可情報を復号化してその端末アプリAに提供させる(ステップS12)。なお、ハッシュ生成手段X1とハッシュ生成手段50は、実際のプログラム上では同じルーチンやモジュールなどを使うことができる。
【0057】
起動された端末アプリAは、上記のように提供される実行許可情報をチェックし(ステップS13)、予め設定されている真正な実行許可情報と確認できれば(ステップS13:「OK」)動作を継続し(ステップS14)、確認できなければ(ステップS13:「NG」)エラー表示を行って端末アプリを終了する(ステップS15)などして、本来の動作を回避する。
【0058】
〔1−3.第1実施形態の効果〕
以上のような第1実施形態の基本的効果としては、端末アプリAの実行に必須の実行許可情報について、端末アプリAのハッシュ値及び端末識別情報で暗号化して端末Tに置き(例えば図3)、実行の都度、端末アプリAのハッシュ値と端末の端末識別情報で復号化して端末アプリAに提供することにより(例えば図4)、端末アプリAが改ざんされておらず、かつ、端末間で移動されてもいない場合以外は、実行許可情報の復号と端末アプリ実行が不可能となる。このため、端末アプリAの端末間移動や改ざんによる実行を防止することができる。また、実行許可情報を端末Tに置くことで、実行ごとにサーバ2にアクセスする必要が無く端末T及びサーバ2で情報処理と通信の負荷が削減できる。また、端末とサーバとの間の通信が不可能な状態(オフライン)であっても、端末アプリが正当に実行されるよう管理することができる。
【0059】
特に、第1実施形態では、端末Tからの確認要求によりサーバ2が、端末アプリAの無改ざん性と正当権原の存在を確認のうえ実行許可情報を提供し、この実行許可情報はハッシュ値と端末識別情報で暗号化した暗号化データとして端末Tで記憶しておく。これにより、端末アプリAのダウンロード提供時点では、サーバ2が実行許可情報を端末識別情報で暗号化して端末Tに送信する負荷が不要となるうえ、ダウンロード時点では端末アプリAが端末Tに直ちには固定されない。このため、ユーザの都合のよい任意の端末で端末アプリAを初回起動し確認要求を行えば、以降、その端末上のみで端末アプリAを利用可能となり、柔軟な使い勝手が実現される。
【0060】
また、第1実施形態では、上記の基本的効果に加え、確認要求と暗号化の部分を共通モジュールMXとして端末Tにインストールすることにより(例えば図1)、確認要求や暗号化の機能部分を端末アプリAごとに重複して持つ必要がなくなるため、限られた記憶容量の圧迫が回避できるうえ、共通モジュールMX部分の改修や更新が一度の処理で迅速に完了する。さらに、アプリ保護プログラム全体を、全ての端末アプリAに共通する単一のモジュールとして実現し端末Tにインストールしておく場合と比べ、個別具体的な端末アプリAの特徴など事情に応じた機能を個別モジュールM1で自由に実装可能となる。
【0061】
〔2.第2実施形態〕
上記第1実施形態では、端末アプリAの初回起動時に端末Tからサーバ2への確認要求により実行許可情報を取得したが、実行許可情報は端末アプリAのダウンロード提供時に端末アプリAと共に端末Tに提供してもよい。このような第2実施形態の構成を図5に示す。
【0062】
この場合、サーバ20は、端末T2へ端末アプリBを提供する制御サーバであって、図5に示す次の手段を備える。すなわち、暗号化手段72は、端末アプリ(例えば端末アプリB)の実行に必要となる所定の実行許可情報を、その端末アプリBに係るハッシュ値と、端末T2から受信する端末識別情報と、で暗号化し暗号化データとする。そして、提供手段73が、アプリ保護プログラムPを組み込んだ端末アプリBと、前記暗号化データと、を端末T2に提供する。図5において、暗号化データを記憶している暗号許可記憶手段42は、例えば、アプリ保護プログラムPの内部データなどとしても実現できる。
【0063】
第2実施形態におけるアプリ保護プログラムPは、個別モジュールと共通モジュールに分かれておらず、端末T2において端末アプリBを実行しようとするときにその端末T2に、次の処理を行わせる。すなわち、アプリ保護プログラムPは端末T2に、その端末アプリBからハッシュ生成手段52が生成するハッシュ値と、その端末T2の端末識別情報と、により、復号化手段60として、その端末アプリBに対応付けて所定の暗号許可記憶手段42に記憶されている上記の暗号化データから実行許可情報を復号化してその端末アプリBに提供させる。端末アプリBは提供された実行許可情報が真正であれば動作を継続する。
【0064】
この第2実施形態では、先に述べた第1実施形態の基本的効果に加え、特に、サーバ20からアプリ保護プログラムPを組み込んだ端末アプリBと共に、ハッシュ値と端末識別情報で暗号化した暗号化データも端末T2に提供することにより、以降、端末アプリBの初回起動時を含め端末T2では確認要求等の処理は不要となるので、ユーザの使い勝手に優れ、端末アプリBを当初から特定の端末T2に確実に固定することができる。
【0065】
〔2.第3実施形態〕
また、第1実施形態では、実行許可情報を端末側で暗号化したが、暗号化は制御サーバの側で行ってもよく、また、このような構成においても、アプリ保護プログラムが個別モジュールと共通モジュールに分かれていることは必須ではない。このような構成例を第3実施形態として図6に示す。この例は、第2実施形態より第1実施形態に近いが、図1(第1実施形態)と比較すると、アプリ保護プログラムP2が個別モジュールと共通モジュールに分かれておらず、それに関連して、制御サーバ30には共通モジュール記憶手段と共通提供手段はなく、暗号化手段Z4が制御サーバ30の側にある。
【0066】
第3実施形態では、提供手段37は、アプリ保護プログラムP2を組み込んだ端末アプリCを端末T3へ提供し、そのアプリ保護プログラムP2の確認要求送信手段Z2は、端末アプリCの初回起動時、制御サーバ30へ送信する確認要求に、ハッシュ生成手段X1により生成されたハッシュ値と、端末アプリCを識別するアプリ識別情報と、を含める点は第1実施形態と同様であるが、さらに、端末T3の端末識別情報も含める。
【0067】
制御サーバ30において、アプリ情報記憶手段28、改ざん確認手段31及び利用権原確認手段32は第1実施形態に準じるが、第2実施形態では、暗号化手段Z4が、改ざんされていないこと及び利用権原が存在することが確認された端末アプリCについてアプリ情報記憶手段28に記憶されている実行許可情報を、確認要求から取得するハッシュ値及び端末識別情報で暗号化し暗号化データとし、許可送信手段83が、暗号化された前記暗号化データを、確認要求の送信元である端末T3へ送信する。
【0068】
この場合、端末T3では、暗号許可受信手段Z3が、送信された確認要求に対応して上記のように制御サーバ30から送信され端末アプリCの実行に必要となる実行許可情報であって、確認要求に含まれるハッシュ値及び端末識別情報と、で暗号化された暗号化データを受信し、暗号許可記憶手段41に記憶させる。
【0069】
このような第3実施形態では、暗号化を制御サーバ30で行うことにより、処理能力の限られた端末T3の負荷が軽減されるうえ、端末アプリ実行の鍵となる実行許可情報を暗号化前に通信ネットワーク経由などで送信するためにSSLなど他に暗号化の手段を用意する必要が無いので、少ない負担でセキュリティを維持できる。
【0070】
〔4.他の実施形態〕
なお、上記各実施形態は例示に過ぎず、本発明は、以下に例示するものやそれ以外の他の実施態様も含むものである。例えば、本出願における構成図、データの図、フローチャートなどは例示に過ぎず、各要素の有無、その配置や処理実行などの順序、具体的内容などは適宜変更可能である。一例として、第1実施形態において個別モジュールM1と共通モジュールMXに分けて示した各機能の手段を、第2実施形態や第3実施形態のようにモジュールに分けずに実現してもよい。この場合、端末アプリ自身の参照とファイルパスが同一アプリのものであり詐称でないこと(同一性)を保証する手段を設けることで、より確実に、端末アプリの端末間移動や改ざんによる実行を防止することが望ましい。
【0071】
また、アプリ保護プログラムを個別モジュールと共通モジュールに分ける場合、どの機能をどちらに設けるかは自由である。例えば、実行許可情報を暗号化データにする暗号化は、共通モジュールで行う例(例えば第1実施形態)や制御サーバで行う例(第3実施形態)以外にも、個別モジュールで行うようにしてもよい。また、暗号許可記憶手段による暗号化データの記憶、ハッシュの生成や復号化も共通モジュールで行い、共通モジュールの持つ具体的機能を呼び出す機能だけを個別モジュールに持たせてもよい。このように、機能の振分けや、個別モジュールと共通モジュールとの間で授受するパラメータの種類は、スマートフォンのプラットフォームの種類や仕様などに合わせて自由に定めることができる。
【0072】
また、図1などに示した制御サーバにおける個々の手段を、相互に別個独立の設備で実現する構成も一般的であり、例えば、端末アプリの配信と、確認要求の対応を、相互に異なるサーバで処理するなどが考えられる。また、制御サーバでも端末でも機能によっては、外部のプラットフォーム等をAPI(アプリケーション・プログラム・インタフェース)やネットワークコンピューティング(いわゆるクラウドなど)で呼び出して実現するなど、構成は柔軟に変更できる。さらに、本発明に関する手段などの各要素は、コンピュータの演算制御部に限らず物理的な電子回路など他の情報処理機構で実現してもよい。
【符号の説明】
【0073】
1 本装置
6 演算制御部
7 記憶装置
8 通信手段
11 確認要求指示手段
41,42 暗号許可記憶手段
15 データ記憶手段
2,20,30 制御サーバ(サーバ)
24 共通モジュール記憶手段
25 共通提供手段
26 アプリ等記憶手段
27 個別提供手段
28 アプリ情報記憶手段
31 確認手段
32 利用権原確認手段
33,83 許可送信手段
37,73 提供手段
50,52,X1 ハッシュ生成手段
60,72 暗号化手段
A,B,C 端末アプリ
E 端子
M1 個別モジュール
MX 共通モジュール
N 通信ネットワーク
P,P2 アプリ保護プログラム
T,T2,T3 端末
X2,Z2 確認要求送信手段
X3 許可情報受信手段
X4,Z4 暗号化手段
Z3 暗号許可受信手段

【特許請求の範囲】
【請求項1】
端末アプリの実行及びその他の情報処理を行う端末であって、
端末アプリの実行で必要となる実行許可情報をその端末アプリのハッシュ値及び端末の端末識別情報とで暗号化した暗号化データを端末アプリに対応付けて記憶する暗号許可記憶手段と、
端末アプリからハッシュ値を生成するハッシュ生成手段と、
端末アプリを実行しようとするとき、その端末アプリから前記ハッシュ生成手段が生成したハッシュ値及びこの端末の端末識別情報とにより、その端末アプリに対応付けて前記暗号許可記憶手段に記憶されている前記暗号化データから、前記実行許可情報を復号化してその端末アプリに提供する復号化手段と、
を有することを特徴とする端末。
【請求項2】
生成された前記ハッシュ値と、前記端末アプリを識別するアプリ識別情報と、を含む確認要求を所定の制御サーバへ送信する確認要求送信手段と、
送信された前記確認要求に対応して前記制御サーバから送信され前記端末アプリの実行に必要となる実行許可情報を受信する許可情報受信手段と、
受信された前記実行許可情報を、前記確認要求に係る前記ハッシュ値と、この端末の端末識別情報と、で暗号化し暗号化データとする暗号化手段と、
を有することを特徴とする請求項1記載の端末。
【請求項3】
生成された前記ハッシュ値と、前記端末アプリを識別するアプリ識別情報と、端末の端末識別情報と、を含む確認要求を所定の制御サーバへ送信する確認要求送信手段と、
送信された前記確認要求に対応して前記制御サーバから送信され前記端末アプリの実行に必要となる実行許可情報であって、前記確認要求に含まれる前記ハッシュ値及び前記端末識別情報と、で暗号化された暗号化データを受信する暗号許可受信手段と、
を有することを特徴とする請求項1記載の端末。
【請求項4】
端末へ端末アプリを提供する制御サーバであって、
前記端末アプリの実行に必要となる所定の実行許可情報を、その端末アプリに係るハッシュ値と、前記端末から受信する端末識別情報と、で暗号化し暗号化データとする暗号化手段と、
アプリ保護プログラムを組み込んだ端末アプリ及び前記暗号化データを端末に提供する提供手段と、
を有し、
前記アプリ保護プログラムは前記端末に、
前記端末において前記端末アプリを実行しようとするときに、その端末アプリから前記ハッシュ生成手段が生成するハッシュ値と、その端末の端末識別情報と、により、その端末アプリに対応付けて所定の暗号許可記憶手段に記憶されている前記暗号化データから前記実行許可情報を復号化してその端末アプリに提供させる
ことを特徴とする制御サーバ。
【請求項5】
端末への提供に係る端末アプリであって利用権原が存在するものについて、アプリ識別情報と、ハッシュ値と、端末での実行で必要となる実行許可情報と、を記憶しているアプリ情報記憶手段と、
端末から送信された端末アプリに係る確認要求から取得するハッシュ値と、その端末アプリについて前記アプリ情報記憶手段に記憶されている前記ハッシュ値と、の照合によりその端末アプリが改ざんされていないことを確認する改ざん確認手段と、
前記確認要求から取得するアプリ識別情報と、前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記アプリ識別情報と、の照合によりその端末アプリについて利用権原が存在することを確認する利用権原確認手段と、
前記改ざんされていないこと及び前記利用権原が存在することが確認された前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記実行許可情報を、前記確認要求の送信元である前記端末へ送信する許可送信手段と、
を有することを特徴とする制御サーバ。
【請求項6】
端末への提供に係る端末アプリであって利用権原が存在するものについて、アプリ識別情報と、ハッシュ値と、端末での実行で必要となる実行許可情報と、を記憶しているアプリ情報記憶手段と、
端末から送信された端末アプリに係る確認要求から取得するハッシュ値と、その端末アプリについて前記アプリ情報記憶手段に記憶されている前記ハッシュ値と、の照合によりその端末アプリが改ざんされていないことを確認する改ざん確認手段と、
前記確認要求から取得するアプリ識別情報と、前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記アプリ識別情報と、の照合によりその端末アプリについて利用権原が存在することを確認する利用権原確認手段と、
前記改ざんされていないこと及び前記利用権原が存在することが確認された前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記実行許可情報を、前記確認要求から取得する前記ハッシュ値及び前記端末識別情報で暗号化し暗号化データとする暗号化手段と、
暗号化された前記暗号化データを、前記確認要求の送信元である前記端末へ送信する許可送信手段と、
を有することを特徴とする制御サーバ。
【請求項7】
アプリ保護プログラムを構成する共通モジュールを端末に提供する共通提供手段と、
前記共通モジュールとともに前記アプリ保護プログラムを実現する個別モジュールを組み込んだ端末アプリを端末に提供する個別提供手段と、
を有し、
前記共通モジュールは前記端末に、
前記端末に導入された前記端末アプリからハッシュ値を生成させ、
生成された前記ハッシュ値と前記端末アプリを識別するアプリ識別情報とを含む確認要求を所定の制御サーバへ送信させ、
送信された前記確認要求に対応して前記制御サーバから送信され前記端末アプリの実行に必要となる実行許可情報であって、前記確認要求に係る前記ハッシュ値及びこの端末の端末識別情報とで暗号化し暗号化データとしたものを所定の暗号許可記憶手段に記憶させ、
前記個別モジュールは前記端末に、
その個別モジュールを組み込んだ端末アプリが前記端末で初回に起動されるとき、前記共通モジュールに、その端末アプリに含まれる前記アプリ識別情報を渡して前記確認要求を指示させ、
前記端末において前記端末アプリを再度実行しようとするときに、その端末アプリから前記ハッシュ生成手段が生成するハッシュ値と、その端末の端末識別情報と、により、その端末アプリに対応付けて前記暗号許可記憶手段に記憶されている前記暗号化データから前記実行許可情報を復号化してその端末アプリに提供させる
ことを特徴とする請求項5又は6記載の制御サーバ。
【請求項8】
請求項1から3のいずれか一項に記載の端末Tと、
請求項4から7のいずれか一項に記載の制御サーバと、
を有することを特徴とするアプリ保護システム。
【請求項9】
端末アプリの実行及びその他の情報処理を行う端末におけるアプリ保護方法であって、
端末アプリの実行で必要となる実行許可情報をその端末アプリのハッシュ値及び端末の端末識別情報とで暗号化した暗号化データを端末アプリに対応付けて記憶する暗号許可記憶手段を有するコンピュータが、
端末アプリからハッシュ値を生成するハッシュ生成処理と、
端末アプリを実行しようとするとき、その端末アプリから前記ハッシュ生成手段が生成したハッシュ値及びこの端末の端末識別情報とにより、その端末アプリに対応付けて前記暗号許可記憶手段に記憶されている前記暗号化データから、前記実行許可情報を復号化してその端末アプリに提供する復号化処理と、
を行うことを特徴とするアプリ保護方法。
【請求項10】
端末へ端末アプリを提供する制御サーバのコンピュータが、
前記端末アプリの実行に必要となる所定の実行許可情報を、その端末アプリに係るハッシュ値と、前記端末から受信する端末識別情報と、で暗号化し暗号化データとする暗号化処理と、
アプリ保護プログラムを組み込んだ端末アプリ及び前記暗号化データを端末に提供する提供処理と、
を実行し、
前記アプリ保護プログラムは前記端末に、
前記端末において前記端末アプリを実行しようとするときに、その端末アプリから前記ハッシュ生成手段が生成するハッシュ値と、その端末の端末識別情報と、により、その端末アプリに対応付けて所定の暗号許可記憶手段に記憶されている前記暗号化データから前記実行許可情報を復号化してその端末アプリに提供させる
ことを特徴とするアプリ保護方法。
【請求項11】
端末への提供に係る端末アプリであって利用権原が存在するものについて、アプリ識別情報と、ハッシュ値と、端末での実行で必要となる実行許可情報と、を記憶しているアプリ情報記憶手段を有する制御サーバのコンピュータが、
端末から送信された端末アプリに係る確認要求から取得するハッシュ値と、その端末アプリについて前記アプリ情報記憶手段に記憶されている前記ハッシュ値と、の照合によりその端末アプリが改ざんされていないことを確認する改ざん確認処理と、
前記確認要求から取得するアプリ識別情報と、前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記アプリ識別情報と、の照合によりその端末アプリについて利用権原が存在することを確認する利用権原確認処理と、
前記改ざんされていないこと及び前記利用権原が存在することが確認された前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記実行許可情報を、前記確認要求の送信元である前記端末へ送信する許可送信処理と、
を実行することを特徴とするアプリ保護方法。
【請求項12】
端末への提供に係る端末アプリであって利用権原が存在するものについて、アプリ識別情報と、ハッシュ値と、端末での実行で必要となる実行許可情報と、を記憶しているアプリ情報記憶手段を有する制御サーバのコンピュータが、
端末から送信された端末アプリに係る確認要求から取得するハッシュ値と、その端末アプリについて前記アプリ情報記憶手段に記憶されている前記ハッシュ値と、の照合によりその端末アプリが改ざんされていないことを確認する改ざん確認処理と、
前記確認要求から取得するアプリ識別情報と、前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記アプリ識別情報と、の照合によりその端末アプリについて利用権原が存在することを確認する利用権原確認処理と、
前記改ざんされていないこと及び前記利用権原が存在することが確認された前記端末アプリについて前記アプリ情報記憶手段に記憶されている前記実行許可情報を、前記確認要求から取得する前記ハッシュ値及び前記端末識別情報で暗号化し暗号化データとする暗号化処理と、
暗号化された前記暗号化データを、前記確認要求の送信元である前記端末へ送信する許可送信処理と、
を実行することを特徴とするアプリ保護方法。
【請求項13】
端末アプリの実行及びその他の情報処理を行う端末のためのアプリ保護プログラムであって、
前記プログラムは、端末アプリの実行で必要となる実行許可情報をその端末アプリのハッシュ値及び端末の端末識別情報とで暗号化した暗号化データを端末アプリに対応付けて記憶する暗号許可記憶手段を有するコンピュータを制御することにより
端末アプリからハッシュ値を生成させ、
端末アプリを実行しようとするとき、その端末アプリから前記ハッシュ生成手段に生成させたハッシュ値及びこの端末の端末識別情報とにより、その端末アプリに対応付けて前記暗号許可記憶手段に記憶されている前記暗号化データから、前記実行許可情報を復号化させてその端末アプリに提供させる
ことを特徴とするアプリ保護プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−46122(P2013−46122A)
【公開日】平成25年3月4日(2013.3.4)
【国際特許分類】
【出願番号】特願2011−181078(P2011−181078)
【出願日】平成23年8月23日(2011.8.23)
【出願人】(500257300)ヤフー株式会社 (1,128)
【Fターム(参考)】