説明

アプリケーション起動制限方法及びアプリケーション起動制限プログラム

【課題】インストール済のアプリケーションのコピーによる不正利用を防止する。
【解決手段】固有番号を有する通信部及び情報を記憶する記憶部を備える情報処理装置にインストールされたアプリケーションが初回起動であるか否かを判断するステップS11と、アプリケーションが初回起動であると判断した場合、通信部から固有番号を取得し、取得した固有番号を記憶部に保存するステップS12、S14と、アプリケーションが初回起動でないと判断した場合、通信部から固有番号を取得し、取得した固有番号と保存した固有番号とが一致するか否かを判断するステップS17、S18と、取得した固有番号と保存した固有番号とが一致すると判断した場合、アプリケーションの起動を許可するステップS19と、取得した固有番号と保存した固有番号とが一致しないと判断した場合、アプリケーションの起動を禁止するステップS20とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、アプリケーションの起動を制限するアプリケーション起動制限方法及びアプリケーション起動制限プログラムに関する。
【背景技術】
【0002】
様々な処理を実行する情報処理装置には、各種のアプリケーションがインストールされている。このようなアプリケーションは不正に利用されることがあるため、その不正利用を防止するために様々な方法が提案されている。
【0003】
例えば、アプリケーションのインストール時にユーザにライセンスキー等のIDを入力させ、そのIDが登録IDと一致するか否かを判断し、ライセンスチェックを行う方法や、情報処理装置の固有情報が記述されたライセンスファイルを特定のディレクトリに保存し、アプリケーションの起動時にライセンスファイルに基づいてライセンスチェックを行う方法等が提案されている(例えば、特許文献1参照)。
【特許文献1】特開2003−76435号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、IDによるライセンスチェックを行う方法では、IDと登録IDが一致した後、インストール済のアプリケーションを制限なく利用することが可能になるため、インストール済のアプリケーションを不正に他の情報処理装置にコピーし、他の情報処理装置でも同じアプリケーションを利用することができてしまう。このため、インストール済のアプリケーションが他の情報処理装置にコピーされ、不正に利用されてしまう。
【0005】
また、ライセンスファイルによるライセンスチェックを行う方法では、ライセンスファイルを事前に作成し、ディレクトリに保存しておくため、ライセンスファイルを作成するための情報(例えば、IPアドレス、ホスト名又はMACアドレス等)をユーザから事前に取得する必要がある。このため、ユーザあるいは第三者はどのような情報を用いてライセンスチェックを行っているかを知ることができ、ライセンスファイルを不正に作成することができてしまう。そのため、インストール済のアプリケーションが他の情報処理装置にコピーされ、不正に利用されてしまう。
【0006】
本発明は、上記に鑑みてなされたものであり、その目的は、インストール済のアプリケーションのコピーによる不正利用を防止することができるアプリケーション起動制限方法及びアプリケーション起動制限プログラムを提供することである。
【課題を解決するための手段】
【0007】
本発明の実施の形態に係る第1の特徴は、アプリケーション起動制限方法において、固有番号を有する通信部及び情報を記憶する記憶部を備える情報処理装置にインストールされたアプリケーションが初回起動であるか否かを判断するステップと、アプリケーションが初回起動であると判断した場合、通信部から固有番号を取得し、取得した固有番号を記憶部に保存するステップと、アプリケーションが初回起動でないと判断した場合、通信部から固有番号を取得し、取得した固有番号と記憶部に保存した固有番号とが一致するか否かを判断するステップと、取得した固有番号と記憶部に保存した固有番号とが一致すると判断した場合、アプリケーションの起動を許可するステップと、取得した固有番号と記憶部に保存した固有番号とが一致しないと判断した場合、アプリケーションの起動を禁止するステップとを有することである。
【0008】
本発明の実施の形態に係る第2の特徴は、アプリケーション起動制限プログラムにおいて、固有番号を有する通信部及び情報を記憶する記憶部を備える情報処理装置が具備するコンピュータに、情報処理装置にインストールされたアプリケーションが初回起動であるか否かを判断するステップと、アプリケーションが初回起動であると判断した場合、通信部から固有番号を取得し、取得した固有番号を記憶部に保存するステップと、アプリケーションが初回起動でないと判断した場合、通信部から固有番号を取得し、取得した固有番号と記憶部に保存した固有番号とが一致するか否かを判断するステップと、取得した固有番号と記憶部に保存した固有番号とが一致すると判断した場合、アプリケーションの起動を許可するステップと、取得した固有番号と記憶部に保存した固有番号とが一致しないと判断した場合、アプリケーションの起動を禁止するステップとを実行させることである。
【発明の効果】
【0009】
本発明によれば、インストール済のアプリケーションのコピーによる不正利用を防止することができる。
【発明を実施するための最良の形態】
【0010】
本発明を実施するための最良の一形態について図面を参照して説明する。
【0011】
図1に示すように、本実施の形態に係る情報処理装置1は、各部を制御する制御部2、操作者からの入力操作を受け付ける入力部3、画像を表示する表示部4、記録媒体A1から情報を読み取る読取部5、ネットワークA2を介する通信を行う通信部6及び各種の情報(データ)を記憶する記憶部7等をバス8により接続することにより構成されている。
【0012】
制御部2は、各部を集中的に制御するCPU(Central Processing Unit)、CPUが実行する各種のプログラム等を格納するROM(Read Only Memory)及びCPUのワークエリア等として機能するRAM(Random Access Memory)等を備えている。
【0013】
制御部2のCPUは、ROMから起動用のプログラムを読み出して実行し、さらに、記憶部7に記憶されたオペレーティングシステムを読み出して実行する。加えて、制御部2のCPUは、入力部3や通信部6等からの入力信号に基づいて各部を制御し、さらに、ROMや記憶部7等からRAMにプログラムやデータ等をロードするとともに、プログラムのコマンドに基づいてデータの計算又は加工等の一連の処理を実行する。
【0014】
入力部3は、操作者による各種の入力操作を受け付けるキーボードやマウス等の入力デバイスを備えている。この入力部3は、操作者の入力操作に基づいて入力信号を作成し、作成した入力信号を入出力インターフェースやバス8を介して制御部2に送信する。
【0015】
表示部4は、例えば液晶ディスプレイ又はCRT(Cathode Ray Tube)ディスプレイ等を備えている。この表示部4は、制御部2からデータを受信し、そのデータに基づいて例えば制御部2の処理結果等を表示する。
【0016】
読取部5は、光ディスクやフレキシブルディスク等の記録媒体A1からその記録媒体A1に記録されている情報を読み取る情報読取装置を備えている。この読取部5は、記録媒体A1から情報を読み取って制御部2に送信する。
【0017】
ここで、記録媒体A1としては、CDやDVD等の光ディスク、光磁気ディスク及びフレキシブルディスク等の各種方式のメディアが用いられる。そのメディア方式に応じて読取部5としては、光ディスク装置、光磁気ディスク装置やFDD等が用いられる。このような記録媒体A1には、アプリケーションプログラム(アプリケーション)が記録されている。このアプリケーションプログラムは読取部5により読み取られ、記憶部7にインストールされる。なお、アプリケーションプログラムは、記録媒体A1から読み取られて記憶部7にインストールされるだけではなく、例えばネットワークA2からダウンロードされ、記憶部7にインストールされてもよい。
【0018】
通信部6は、例えばLAN(Local Area Network)カード等の通信カードを備えている。この通信カードは、固有番号であるMAC(Media Access Control address)アドレスを有している。このMACアドレスは、通信カード固有のID番号であり、物理アドレスとして機能する。この通信部6は、LANやインターネット等のネットワークA2に接続されている外部装置との通信を制御する。加えて、通信部6は、外部装置から受信したデータを制御部2に送信し、制御部2からのデータを外部装置に送信する。
【0019】
記憶部7は、例えば磁気ディスク装置や半導体ディスク装置(例えばフラッシュメモリ)等を備えている。この記憶部7には、アプリケーション起動制限プログラム等の各種のプログラムが格納されており、さらにアプリケーションプログラムがインストールされる。また、記憶部7は、システム情報やアプリケーション情報を記憶するレジストリ7a、及びライセンス情報を記憶するライセンスファイル7bを有している。
【0020】
レジストリ7aには、アプリケーション情報として、図2に示すように、アプリケーションを示す固有値である固有キーがアプリケーション毎に格納されている。例えば、図2では、アプリケーションAを示す固有キーは「32456」であり、アプリケーションBを示す固有キーは「43879」である。このような固有キーは、アプリケーションの初回起動後、図3に示すように、アプリケーションの初回起動の時刻に書き換えられる。例えば、図3では、アプリケーションAは15時12分33秒に初回起動されたため、アプリケーションAの固有キーは「32456」から「151233」に書き換えられ、アプリケーションBは09時56分25秒に初回起動されたため、アプリケーションBの固有キーは「43879」から「095625」に書き換えられる。
【0021】
ライセンスファイル7bには、ライセンス情報として、図4に示すように、暗号化後のMACアドレスがアプリケーション毎に格納されている。なお、MACアドレスは、通信部6から取得され、暗号化されてライセンスファイル7bに格納される。
【0022】
次に、このような構成の情報処理装置1のアプリケーション起動制限処理(アプリケーション起動制限方法)、すなわちアプリケーションのインストール処理及び起動処理について説明する。制御部2は、記憶部7に記憶されたアプリケーション起動制限プログラムに基づいて、アプリケーションのインストール処理及び起動処理を実行する。
【0023】
まず、アプリケーションのインストール処理について説明する。
【0024】
図5に示すように、制御部2は、入力部3に対する操作者の入力操作に応じて、読取部5により記録媒体A1からアプリケーションプログラムを記憶部7にインストールする(ステップS1)。その後、制御部2は、インストールの完了まで待機し(ステップS2のNO)、インストールが完了すると(ステップS2のYES)、インストール済のアプリケーションの固有キーをレジストリ7aに保存する(ステップS3)。これにより、図2に示すように、アプリケーションの固有キーがインストール済のアプリケーション毎にレジストリ7aに保存される。
【0025】
次いで、アプリケーションの起動処理について説明する。
【0026】
図6に示すように、制御部2は、アプリケーションが初回起動であるか否かを判断する(ステップS11)。本実施の形態では、レジストリ7aに保存されたアプリケーションの固有キーが書き換えられているか否かを判断することにより、アプリケーションが初回起動であるか否かを判断している。
【0027】
具体的には、アプリケーションの固有キーが書き換えられていると判断した場合、アプリケーションが初回起動であると判断し、アプリケーションの固有キーが書き換えられていないと判断した場合、アプリケーションが初回起動でないと判断する。ここで、図2に示すように、書き換え前の固有キーは5桁であり、図3に示すように、書き換え後の固有キーは6桁であるため、例えば、固有キーの桁数が増えたか否かを判断することにより、固有キーが書き換えられているか否かを判断することができる。
【0028】
アプリケーションが初回起動であると判断した場合には(ステップS11のYES)、通信部6からMACアドレスを取得し(ステップS12)、取得したMACアドレスを暗号化し(ステップS13)、暗号化したMACアドレスをライセンスファイル7bに保存する(ステップS14)。これにより、図4に示すように、暗号化後のMACアドレスがライセンスファイル7bに格納される。本実施の形態では、例えば、アプリケーションの初回起動の時刻を用いて、取得したMACアドレスの暗号化を行う。
【0029】
具体的には、アプリケーションの初回起動の時刻が「15時12分33秒」であり、取得したMACアドレスが「00−07−95−55−EA−E5」である場合、初回起動の時刻の時間、分及び秒の数値を足し、すなわち、15+12+33=60=3C(Hex)を算出し、この3CをMACアドレスに減算又は加算し、すなわち、00−3C=C4、07−3C=CB、95−3C=59、55+3C=91、EA+3C=26、E5+3C=21を算出し、取得したMACアドレス「00−07−95−55−EA−E5」を「C4−CB−59−91−26−21」に暗号化する。このようにして暗号化されたMACアドレスがライセンスファイル7bに格納される。
【0030】
最後に、制御部2は、初回起動のアプリケーションの固有キーを書き換える(ステップS15)。本実施の形態では、初回起動のアプリケーションの固有キーを例えば、アプリケーションの初回起動の時刻(例えばシステム時刻)に書き換える。これにより、図3に示すように、初回起動のアプリケーションの固有キーは、アプリケーションの初回起動の時刻に書き換えられる。なお、アプリケーションが初回起動である場合には、アプリケーションは起動制限されることなく起動する。
【0031】
一方、アプリケーションが初回起動でないと判断した場合には(ステップS11のNO)、暗号化したMACアドレスを復号化し(ステップS16)、通信部6からMACアドレスを取得し(ステップS17)、復号化したMACアドレスと取得したMACアドレスとが一致するか否かを判断する(ステップS18)。本実施の形態では、暗号化の際に利用したアプリケーションの初回起動の時刻を用いて、暗号化したMACアドレスの復号化を行う。この復号化の手順は暗号化の手順の逆である。
【0032】
復号化したMACアドレスと取得したMACアドレスとが一致すると判断した場合には(ステップS18のYES)、アプリケーションの起動を許可し(ステップS19)、復号化したMACアドレスと取得したMACアドレスとが一致しないと判断した場合には、アプリケーションの起動を禁止する(ステップS20)。
【0033】
以上説明したように、本実施の形態によれば、インストール済のアプリケーションの初回起動時には、MACアドレスを自動的にライセンスファイル7bに保存し、インストール済のアプリケーションの2回目以降の起動時には、ライセンスファイル7bに保存したMACアドレスと通信部6から取得したMACアドレスとが一致するか否かを判断し、それらが一致すると判断した場合、アプリケーションの起動を許可することによって、インストール済のアプリケーションを不正に他の情報処理装置にコピーしても、他の情報処理装置により不正コピーのアプリケーションを利用することができなくなる。これにより、インストール済のアプリケーションのコピーによる不正利用を防止することができる。
【0034】
特に、ライセンスファイル作成用の情報(例えば、IPアドレスやホスト名、MACアドレス等)をユーザから事前に取得する必要がなく、ユーザはどのような情報を用いてライセンスチェックを行っているかを知ることができないので、ユーザや第三者等が不正にライセンスファイルを作成することを防ぐことが可能になる。これにより、インストール済のアプリケーションを不正に他の情報処理装置にコピーしても、他の情報処理装置により不正コピーのアプリケーションを利用することができなくなる。
【0035】
また、ステップS13では、取得したMACアドレスを暗号化し、ステップS14では、暗号化したMACアドレスを記憶部7のライセンスファイル7bに保存することによって、ライセンスファイル7bを閲覧してもライセンス情報としてどのような情報を利用しているか、特にMACアドレスを利用しているか等を判別することが困難であり、機密性を維持することが可能になり、より確実にインストール済のアプリケーションのコピーによる不正利用を防止することができる。加えて、ステップS16では、保存したMACアドレスを復号化し、ステップS18では、復号化したMACアドレスと取得したMACアドレスとが一致するか否かを判断することによって、暗号化したMACアドレスが復号化され、取得したMACアドレスと比較されるので、暗号化して保存したMACアドレスと取得したMACアドレスとを比較することができる。
【0036】
さらに、ステップS13では、アプリケーションの初回起動の時刻を取得し、取得した初回起動の時刻を用いて、取得したMACアドレスを暗号化することによって、同じ情報処理装置1の端末で同じアプリケーションをインストールしても、同じライセンス情報になってしまうことを防止することができる。加えて、ステップS15では、取得した初回起動の時刻を記憶部7に保存し、ステップS16では、保存した初回起動の時刻を用いて、保存したMACアドレスを復号化することによって、暗号化したMACアドレスを正確に復号化することが可能になるので、暗号化して保存したMACアドレスと取得したMACアドレスとを比較することができる。
【0037】
また、ステップS3では、アプリケーションが情報処理装置1にインストールされた場合、アプリケーションの固有キーを保存し、ステップS15では、アプリケーションが初回起動であると判断した場合、アプリケーションの固有キーを書き換え、ステップS11では、アプリケーションの固有キーが書き換わっているか否かを判断することにより、アプリケーションが初回起動であるか否かを判断することによって、アプリケーションの初回起動を判断するために新たな記憶領域等を設ける必要がなく、アプリケーションの固有キーを書き換えればよく、容易にアプリケーションが初回起動であるか否かを判断することができる。
【0038】
(他の実施の形態)
なお、本発明は、前述の実施の形態に限るものではなく、その要旨を逸脱しない範囲において種々変更可能である。
【0039】
例えば、前述の実施の形態においては、固有番号として通信部6のMACアドレスを利用しているが、これに限るものではなく、例えば通信部6の他の固有番号を利用するようにしてもよい。
【0040】
また、前述の実施の形態においては、アプリケーションの初回起動の時刻を用いて、取得したMACアドレスを暗号化しているが、これに限るものではなく、例えば予め設定した所定値をMACアドレスに減算又は加算するようにしてもよい。
【0041】
また、前述の実施の形態においては、1つの通信部6を設けているが、これに限るものではなく、例えば複数の通信部6を設けるようにしてもよい。この場合には、MACアドレスが複数存在する。したがって、ステップS13では、複数の通信部6から最初に取得したMACアドレスを暗号化して利用する。また、ステップS17では、複数の通信部6から各々のMACアドレスを全て取得し、ステップS18では、それらの全てのMACアドレスと復号化したMACアドレスとを比較する。これにより、情報処理装置1に複数の通信部6を設けた場合でも、前述の実施の形態と同様な効果を得ることができる。
【図面の簡単な説明】
【0042】
【図1】本発明の実施の形態に係る情報処理装置の概略構成を示すブロック図。
【図2】本発明の実施の形態に係るアプリケーション情報を説明するための説明図。
【図3】図2に示すアプリケーション情報の書き換えを説明するための説明図。
【図4】本発明の実施の形態に係るライセンス情報を説明するための説明図。
【図5】図1に示す情報処理装置のアプリケーションのインストール処理の流れを示すフローチャート。
【図6】図1に示す情報処理装置のアプリケーションの起動処理の流れを示すフローチャート。
【符号の説明】
【0043】
1…情報処理装置、6…通信部、7…記憶部、S11…ステップ、S12…ステップ、S14…ステップ、S17…ステップ、S18…ステップ、S19…ステップ、S20…ステップ


【特許請求の範囲】
【請求項1】
固有番号を有する通信部及び情報を記憶する記憶部を備える情報処理装置にインストールされたアプリケーションが初回起動であるか否かを判断するステップと、
前記アプリケーションが初回起動であると判断した場合、前記通信部から前記固有番号を取得し、取得した前記固有番号を前記記憶部に保存するステップと、
前記アプリケーションが初回起動でないと判断した場合、前記通信部から前記固有番号を取得し、取得した前記固有番号と前記記憶部に保存した前記固有番号とが一致するか否かを判断するステップと、
取得した前記固有番号と前記記憶部に保存した前記固有番号とが一致すると判断した場合、前記アプリケーションの起動を許可するステップと、
取得した前記固有番号と前記記憶部に保存した前記固有番号とが一致しないと判断した場合、前記アプリケーションの起動を禁止するステップと、
を有することを特徴とするアプリケーション起動制限方法。
【請求項2】
取得した前記固有番号を前記記憶部に保存するステップでは、取得した前記固有番号を暗号化し、暗号化した前記固有番号を前記記憶部に保存し、
取得した前記固有番号と前記記憶部に保存した前記固有番号とが一致するか否かを判断するステップでは、前記記憶部に保存した前記固有番号を復号化し、復号化した前記固有番号と取得した前記固有番号とが一致するか否かを判断することを特徴とする請求項1記載のアプリケーション起動制限方法。
【請求項3】
前記アプリケーションの初回起動の時刻を取得し、取得した前記初回起動の時刻を前記記憶部に保存するステップを有し、
取得した前記固有番号を前記記憶部に保存するステップでは、取得した前記初回起動の時刻を用いて、取得した前記固有番号を暗号化し、
取得した前記固有番号と前記記憶部に保存した前記固有番号とが一致するか否かを判断するステップでは、前記記憶部に保存した前記初回起動の時刻を用いて、前記記憶部に保存した前記固有番号を復号化することを特徴とする請求項2記載のアプリケーション起動制限方法。
【請求項4】
前記アプリケーションが前記情報処理装置にインストールされた場合、前記アプリケーションの固有値を保存するステップと、
前記アプリケーションが初回起動であると判断した場合、前記アプリケーションの固有値を書き換えるステップと、
を有し、
前記アプリケーションが初回起動であるか否かを判断するステップでは、前記アプリケーションの固有値が書き換わっているか否かを判断することにより、前記アプリケーションが初回起動であるか否かを判断することを特徴とする請求項1ないし3いずれか一に記載のアプリケーション起動制限方法。
【請求項5】
固有番号を有する通信部及び情報を記憶する記憶部を備える情報処理装置が具備するコンピュータに、
前記情報処理装置にインストールされたアプリケーションが初回起動であるか否かを判断するステップと、
前記アプリケーションが初回起動であると判断した場合、前記通信部から前記固有番号を取得し、取得した前記固有番号を前記記憶部に保存するステップと、
前記アプリケーションが初回起動でないと判断した場合、前記通信部から前記固有番号を取得し、取得した前記固有番号と前記記憶部に保存した前記固有番号とが一致するか否かを判断するステップと、
取得した前記固有番号と前記記憶部に保存した前記固有番号とが一致すると判断した場合、前記アプリケーションの起動を許可するステップと、
取得した前記固有番号と前記記憶部に保存した前記固有番号とが一致しないと判断した場合、前記アプリケーションの起動を禁止するステップと、
を実行させることを特徴とするアプリケーション起動制限プログラム。
【請求項6】
取得した前記固有番号を前記記憶部に保存するステップでは、取得した前記固有番号を暗号化し、暗号化した前記固有番号を前記記憶部に保存し、
取得した前記固有番号と前記記憶部に保存した前記固有番号とが一致するか否かを判断するステップでは、前記記憶部に保存した前記固有番号を復号化し、復号化した前記固有番号と取得した前記固有番号とが一致するか否かを判断することを特徴とする請求項5記載のアプリケーション起動制限プログラム。
【請求項7】
前記コンピュータに、
前記アプリケーションの初回起動の時刻を取得し、取得した前記初回起動の時刻を前記記憶部に保存するステップを実行させ、
取得した前記固有番号を前記記憶部に保存するステップでは、取得した前記初回起動の時刻を用いて、取得した前記固有番号を暗号化し、
取得した前記固有番号と前記記憶部に保存した前記固有番号とが一致するか否かを判断するステップでは、前記記憶部に保存した前記初回起動の時刻を用いて、前記記憶部に保存した前記固有番号を復号化することを特徴とする請求項6記載のアプリケーション起動制限プログラム。
【請求項8】
前記コンピュータに、
前記アプリケーションが前記情報処理装置にインストールされた場合、前記アプリケーションの固有値を保存するステップと、
前記アプリケーションが初回起動であると判断した場合、前記アプリケーションの固有値を書き換えるステップと、
を実行させ、
前記アプリケーションが初回起動であるか否かを判断するステップでは、前記アプリケーションの固有値が書き換わっているか否かを判断することにより、前記アプリケーションが初回起動であるか否かを判断することを特徴とする請求項5ないし7いずれか一に記載のアプリケーション起動制限プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2007−148806(P2007−148806A)
【公開日】平成19年6月14日(2007.6.14)
【国際特許分類】
【出願番号】特願2005−342589(P2005−342589)
【出願日】平成17年11月28日(2005.11.28)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【Fターム(参考)】