JP2009080772A - ソフトウェア起動システム、ソフトウェア起動方法、及びソフトウェア起動プログラム - Google Patents

ソフトウェア起動システム、ソフトウェア起動方法、及びソフトウェア起動プログラム Download PDF

Info

Publication number
JP2009080772A
JP2009080772A JP2007251375A JP2007251375A JP2009080772A JP 2009080772 A JP2009080772 A JP 2009080772A JP 2007251375 A JP2007251375 A JP 2007251375A JP 2007251375 A JP2007251375 A JP 2007251375A JP 2009080772 A JP2009080772 A JP 2009080772A
Authority
JP
Japan
Prior art keywords
unique information
software program
software
information
activation
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.)
Pending
Application number
JP2007251375A
Other languages
English (en)
Inventor
Kazue Arai
和重 荒井
Yoshie Arai
美江 新井
Seiji Hirano
誠治 平野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toppan Inc
Original Assignee
Toppan Printing Co Ltd
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 Toppan Printing Co Ltd filed Critical Toppan Printing Co Ltd
Priority to JP2007251375A priority Critical patent/JP2009080772A/ja
Publication of JP2009080772A publication Critical patent/JP2009080772A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】ソフトウェアプログラムを起動する際に、信頼性の高い認証処理を行うことが可能なソフトウェア起動システムを提供する。
【解決手段】ソフトウェアプログラムの起動時に、ソフトウェアプログラムの認証を行うソフトウェア起動システムであって、ソフトウェアプログラムの実行ファイルに基づいた固有情報を算出する固有情報算出手段と、固有情報算出手段が算出した第1の固有情報を予め記憶する記憶手段と、ソフトウェアプログラムの起動要求が入力されると、起動要求が入力された時点でのソフトウェアプログラムの第2の固有情報を固有情報算出手段によって算出し、記憶手段に記憶された第1の固有情報と、第2の固有情報とを比較し、一致しなかった場合には、ソフトウェアプログラムを起動しないと判定する判定手段とを備えることを特徴とするソフトウェア起動システム。
【選択図】図1

Description

本発明は、ソフトウェアプログラムの起動時にソフトウェアプログラムの認証を行うソフトウェア起動方法、及びソフトウェア起動プログラムに関する。
従来、利用されるソフトウェアプログラムが正当なライセンスに基づくものであるか、また正当なライセンスユーザによって利用されているか否かの認証が行われている。このような認証は、例えば、ソフトウェアプログラムをPC(Personal Computer)などの情報端末にインストールする際に、インストールキーやプロダクトキーと呼ばれる製品ごとの固有の情報の入力を要求し、入力される固有の情報が正当なものであるか否かを判定して、正当でなければインストールを行わないように制御される。また、インストール後にも、ソフトウェア起動時や定期的に、インターネットなどのネットワークを介してプロダクトキーやユーザ情報などによる認証を行う方法がある。例えば、特許文献1から5には、利用者認証やライセンス認証などによる様々な認証、情報保護情報が提案されている。
特開平8−137686号公報 特開平10−49361号公報 特開2001−236315号公報 特表2002−517853号公報 特開2004−110232号公報
しかしながら、上述のように、ライセンス認証はインストール時に行われるのが一般的であるため、一度インストールに成功すると、以降はそのソフトウェアは自由に起動されてしまう。すなわち、このようなインストール時にライセンスキーなどによって行う認証によれば、その製品が正当な出所、販路を経由した製品であることを確認することが可能であるが、例えば、そのソフトウェアプログラムが正常にインストールされた後に改ざんされているような場合に、改ざんされたソフトウェアプログラムの利用を防止できるものではない。
また、上述のような、インストール後にも、ソフトウェア起動時や定期的に、ネットワークを介して認証を行う方法は、ソフトウェアプログラムがインストールされた端末がインターネットに接続されていなければ行うことができない。すなわち、ノートPC、PDA(Personal Digital Assistant)などのモバイル端末などにソフトウェアがインストールされている場合、ネットワークへの接続環境がない場所ではそのソフトウェアを利用できない。
また、このようなプロダクトキーによる認証は、上述のような改ざんを検知するものではないし、プロダクトキー自体が情報として流通してしまうと、複数の情報端末にインストールされたソフトウェアプログラムが、正当な権限のない複数のユーザに、同一のプロダクトキーを用いて利用されることが起こり得る。
本発明は、このような状況に鑑みてなされたもので、ソフトウェアプログラムを起動する際に、信頼性の高い認証処理を行うことが可能なソフトウェア起動システムを提供する。
上述した課題を解決するために、本発明は、ソフトウェアプログラムの起動時に、ソフトウェアプログラムの認証を行うソフトウェア起動システムであって、ソフトウェアプログラムの実行ファイルに基づいた固有情報を算出する固有情報算出手段と、固有情報算出手段が算出した第1の固有情報を予め記憶する記憶手段と、ソフトウェアプログラムの起動要求が入力されると、起動要求が入力された時点でのソフトウェアプログラムの第2の固有情報を固有情報算出手段によって算出し、記憶手段に記憶された第1の固有情報と、第2の固有情報とを比較し、一致しなかった場合には、ソフトウェアプログラムを起動しないと判定する判定手段とを備えることを特徴とするソフトウェア起動システムである。
本発明は、上述のソフトウェア起動システムが、セキュアな可搬記憶媒体を備え、可搬記憶媒体が記憶手段を備えることを特徴とする。
本発明は、上述の固有情報算出手段が算出する固有情報は、ソフトウェアプログラムの実行ファイルを元データとするハッシュデータであることを特徴とする。
本発明は、上述のソフトウェア起動システムが、情報を暗号化する暗号鍵と、暗号鍵によって暗号化された情報を復号する復号鍵とを備え、記憶手段が記憶する第1の固有情報は、暗号鍵によって暗号化された第1の固有情報であり、また、記憶手段は復号鍵を記憶し、暗号化された第1の固有情報を、復号鍵によって復号する制御手段をさらに備え、判定手段は、復号された第1の固有情報を、第2の固有情報と比較した結果に基づいて、ソフトウェアプログラムを起動するか否かを判定することを特徴とする。
本発明は、ソフトウェアプログラムの起動時に、ソフトウェアプログラムの認証を行うソフトウェア起動方法であって、固有情報算出手段が、ソフトウェアプログラムの実行ファイルに基づいた固有情報を算出するステップと、記憶手段が、固有情報算出手段が算出した第1の固有情報を予め記憶するステップと、判定手段が、ソフトウェアプログラムの起動要求が入力されると、起動要求が入力された時点でのソフトウェアプログラムの第2の固有情報を固有情報算出手段によって算出し、記憶手段に記憶された第1の固有情報と、第2の固有情報とを比較し、一致しなかった場合には、ソフトウェアプログラムを起動しないと判定するステップとを備えることを特徴とするソフトウェア起動方法である。
本発明は、ソフトウェアプログラムの起動時に、ソフトウェアプログラムの認証を行うソフトウェア起動装置としてのコンピュータに、固有情報算出手段が、ソフトウェアプログラムの実行ファイルに基づいた固有情報を算出するステップと、記憶手段が、固有情報算出手段が算出した第1の固有情報を予め記憶するステップと、判定手段が、ソフトウェアプログラムの起動要求が入力されると、起動要求が入力された時点でのソフトウェアプログラムの第2の固有情報を固有情報算出手段によって算出し、記憶手段に記憶された第1の固有情報と、第2の固有情報とを比較し、一致しなかった場合には、ソフトウェアプログラムを起動しないと判定するステップとを実行させるソフトウェア起動プログラムである。
以上説明したように、本発明によれば、ソフトウェアプログラムの固有な情報である第1の固有情報を予め記憶しておき、ソフトウェアプログラムの起動時には、そのソフトウェアプログラムから固有な情報である第2の固有情報を読み出して、第1の固有情報と第2の固有情報とが一致しなければソフトウェアを起動しないようにしたので、第1の固有情報を予め記憶した時点と、起動時点とで、ソフトウェアプログラムが改ざんされているか否かを判定することができる。
また、本発明によれば、第1の固有情報が可搬記憶媒体に記憶され、この可搬媒体を用いて判定処理を行うようにしたので、ユーザは、その可搬記憶媒体を所持していれば第1の固有情報をソフトウェア起動システムに読み込ませることができ、これにより、ネットワークへの接続環境のない場所でも、ソフトウェアが改ざんされているか否かの判定処理を行うことができる。
また、本発明によれば、ソフトウェアプログラムに固有な情報として、そのソフトウェアプログラムの実行ファイルを元データとするハッシュデータであることとしたので、ソフトウェアプログラムの実行ファイル自体の改ざんを検知することができ、かつ、ハッシュデータであることにより、実行ファイル全体よりも情報量を減らした固有の情報を得ることができる。
また、本発明によれば、第1の固有情報を暗号鍵によって暗号化して記憶手段に記憶させておき、ソフトウェア起動の際にはその暗号鍵に対応する復号鍵を用いて復号してから、第1の固有情報と第2の固有情報とが一致するか否かの判定処理を行うようにしたので、記憶手段に記憶された第1の固有情報が情報流出した場合でも、第1の固有情報は暗号化されており、復号鍵がなければ復号できないため、可搬記憶媒体を所持するユーザのみがソフトウェアプログラムを起動させることができ、信頼性の高い認証処理を行うことができる。
以下、本発明の一実施形態について、図面を参照して説明する。
<第1の実施形態>
図1は、本発明の第1の実施形態によるソフトウェア起動システムの構成を示すブロック図である。
本実施形態によるソフトウェア起動システムは、起動対象であるソフトウェアプログラム(以下、起動対象ソフトウェアプログラム)の固有情報を記憶するセキュアな可搬記憶媒体としてのICカード100と、起動対象ソフトウェアプログラムを記憶する情報端末200とを備えている。
ICカード100は、情報の記憶と、外部からその情報の読み書きとが可能なセキュアな可搬記憶媒体であり、記憶部110を備えている。ここで、セキュアな可搬記憶媒体とは、外部からの不正な読み書きを防護する耐タンパ性を備えた可搬記憶媒体である。耐タンパ性は、例えば、可搬記憶媒体に組み込まれる情報を読み書きするソフトウェアを、逆アセンブラなどで簡単に解析できないようにする難読化技術などの論理的な方法により確保しても良いし、LSI(集積回路)を解析するために保護層をはがすと、内部の回路まで破壊されるようにする物理的な方法により確保しても良いし、その双方でも良い。
記憶部110には、起動対象ソフトウェアプログラムの固有情報(以下、第1の固有情報という)が予め記憶される。ここで、起動対象ソフトウェアプログラムの固有情報とは、そのソフトウェアプログラムを一意に特定することが可能な情報である。例えば、本実施形態では、起動対象ソフトウェアプログラムの実行ファイルから算出したハッシュデータである。
また、本実施形態においては、ICカード100は、それを所持するユーザが予め定められており、対応するユーザを、PINや生体認証などによって認証する機能を備えていることとする。また、本実施形態においては、一枚のICカード100を例として説明するが、複数のユーザが、それぞれに異なる媒体ID(識別情報)を備えるICカード100を所持するようにしても良い。
情報端末200は、起動対象ソフトウェアプログラムがインストールされたコンピュータ機器であり、ICカードリーダライタ210と、判定部220と、固有情報算出手段230と、ソフトウェアプログラム240と、ソフトウェアプログラム制御部250とを備える。本実施形態では、情報端末200として、いわゆるPCを想定して説明する。
ソフトウェアプログラム制御部250は、インストールCDなどの外部媒体から読み出したソフトウェアプログラムを情報端末200へインストールしたり、インストールされたソフトウェアプログラム240を起動させたりする制御を行う。
ICカードリーダライタ210は、ICカード100と通信を行って、ICカード100に記憶された情報の読み書きを行う。
ソフトウェアプログラム240は、情報端末200にインストールされるソフトウェアであり、いわゆるアプリケーションソフトでも良いし、オペレーションシステムを補助する各種ユーティリティソフトウェア、各種ミドルウェア、デバイスドライバやオペレーションシステム自体でも良い。
固有情報算出手段230は、ソフトウェアプログラム240の固有の情報を算出する。例えば、固有情報算出手段230は、ソフトウェアプログラム240の実行ファイルを元のデータとして、ハッシュ関数によるハッシュデータを生成する。ここで、ハッシュ関数とは、あるデータを元のデータとして剰余演算を繰り返すことによって、特定の値域内(例えば、160bit)でできるだけ値が分散するような数値データ(ハッシュデータ)を生成するアルゴリズムである。このように、固有情報算出手段230は、ソフトウェアプログラム240の固有の情報(以下、第2の固有情報という)を算出する。
判定部220は、第1の固有情報と第2の固有情報との入力を受付けて比較し、判定結果を出力する。本実施形態では、判定部220は、第1の固有情報と第2の固有情報とが完全に一致すれば、一致を示す判定結果を出力し、一致しなければ、不一致を示す判定結果を出力する。
次に、本発明によるソフトウェア起動システムが、情報端末にインストールされたソフトウェアプログラムを起動する動作例を説明する。
図2は、情報端末200が、自端末にインストールされるソフトウェアプログラムの固有情報を予めICカード100に記憶させる動作例を示すフローチャートである。
情報端末200のソフトウェアプログラム制御部250は、固有情報の登録処理を開始する。まず、情報端末200のソフトウェアプログラム制御部250が、ICカード100の認証を行う(ステップS1)。ICカード100の認証とは、例えば、ICカード100が正当なユーザによって利用されるICカード100であるか否かを判定する認証処理であり、例えば、PIN(Personal Identification Number)などによる認証を行う。ここで、認証が失敗すれば、情報端末200は、固有情報の登録処理を異常終了する(ステップS2−NG)。一方、認証が成功すれば(ステップS2−OK)、固有情報算出手段230は、ソフトウェアプログラム240の固有情報を算出する(ステップS3)。
そして、ICカードリーダライタ210は、ICカード100の記憶部110に、ステップS3で固有情報算出手段230が算出したソフトウェアプログラム240の第1の固有情報を書き込んで記憶させる(ステップS4)。このように、ソフトウェア起動システムは、ソフトウェアプログラムの第1の固有情報を予めICカード100に記憶させる。
図3は、情報端末200が、自端末にインストールされたソフトウェアであるソフトウェアプログラム240を起動させるソフトウェア起動処理の動作例を示すフローチャートである。
まず、ソフトウェアプログラム制御部250は、ICカードリーダライタ210を介してICカード100の認証を行う(ステップS11)。ここで、認証が失敗すれば、情報端末200は、ソフトウェアの起動処理を異常終了する(ステップS12−NG)。一方、認証が成功すれば(ステップS12−OK)、固有情報算出手段230は、ソフトウェアプログラム240の第2の固有情報を算出する(ステップS13)。
そして、ソフトウェアプログラム制御部250は、ICカードリーダライタ210を介して、ICカード100の記憶部110に記憶された第1の固有情報を読み出す(ステップS14)。そして、判定部220は、ステップS13で固有情報算出手段230が算出した第2の固有情報と、ステップS14でICカードリーダライタ210がICカード100から読み出した第1の固有情報とを比較する(ステップS15)。
判定部220が、ステップS15で第1の固有情報と第2の固有情報とが一致すると判定すれば、ソフトウェアプログラム制御部250は、ソフトウェアプログラム240を起動させる(ステップS16−OK)。一方、判定部220が、ステップS15で第1の固有情報と第2の固有情報とが一致しないと判定すれば、ソフトウェアプログラム制御部250は、ソフトウェアプログラム240の起動処理を異常終了し、ソフトウェアプログラム240を起動させない(ステップS16−NG)。
このように、情報端末200にインストールされたソフトウェアプログラム240の固有情報を予め算出し、ICカード100の記憶部110に第1の固有情報として記憶させておき、そのソフトウェアプログラム240の起動時に、その時点でのソフトウェアプログラム240の固有情報である第2の固有情報と比較することで、その間にソフトウェアプログラム240に改ざんが行われたか否かを判定することができ、改ざんされたソフトウェアプログラムの利用を防止することができる。
なお、本実施形態では、情報の記憶と、外部からその読み書きとが可能な可搬媒体としてICカードを用いることとしたが、ICカードは接触型でも非接触型でも良い。また、このような起動対象ソフトウェアプログラムの固有情報を記憶する記憶部を備える可搬媒体は、ICチップを備えたメモリカードや、USB(Universal Serial Bus)媒体などでも良い。
また、本実施形態では、起動対象ソフトウェアプログラムがインストールされたコンピュータ機器である情報端末として、PCを想定して説明したが、情報端末は、予めインストールされたソフトウェアプログラムを実行可能な情報端末であれば良く、サーバコンピュータ、PDA、携帯電話などの情報機器でも良い。
また、本実施形態において、固有情報算出手段230は、ソフトウェアプログラム240の実行ファイルを元データとしてハッシュデータを生成することとしたが、他のソフトウェアと異なったそのソフトウェアプログラムに固有の値であって、容易に識別できない値(例えば、数十バイト以上のデータ)であれば、ハッシュ関数の他、独自のアルゴリズムによって生成された値でも良い。例えば、認証データとして用いるソフトウェアプログラムの固有情報は、ソフトウェアプログラムのプロダクトキーや、ソフトウェアバージョン、ユーザが所有するICカードの媒体固有IDなどを用いて暗号化した情報としても良い。このようにすれば、これらの情報により限定されたソフトウェア起動制御を行うことができる。
また、ソフトウェアプログラムの実行ファイルを格納するのに充分な記憶容量を備える可搬記憶媒体にソフトウェアプログラムを記憶させ、ユーザがこれを携帯することで、その可搬記憶媒体を所持するユーザのみがそのソフトウェアプログラムを利用できるようにしても良い。
また、ICカード100に第1の固有情報を記憶させるステップS1からステップS4までの処理は、ソフトウェアの管理者が予め行って、そのソフトウェアとそのソフトウェアに対応する第1の固有情報が記憶されたICカード100とを、正当なユーザに配布するようにしても良いし、各ユーザ側で、ICカード100に第1の固有情報を書き込むための専用ソフトによって行うようにしても良い。このようにすれば、そのソフトウェアのバージョンや、インターネットダウンロード型のソフトウェアにも本発明を適用することができる。
<第2の実施形態>
第1の実施形態に、さらに鍵の技術を導入することによって、ユーザの正当性を判定したり、不正コピーされたソフトウェアプログラムの利用を防いだりすることが可能なソフトウェア起動システムを提供することができる。
図4は、本発明の第2の実施形態によるソフトウェア起動システムの構成を示すブロック図である。本実施形態によるソフトウェア起動システムは、第1の実施形態と同様の構成をしており、第1の実施形態と同様の構成・動作についてはその説明を省略する。
第2の実施形態によるソフトウェア起動システムは、ICカード101と、情報端末201とを備えている。
ICカード101の記憶部111には、第1の実施形態と同様の情報に加えて、暗号化技術における復号鍵を記憶する。この復号鍵は、例えば、公開鍵暗号方式による秘密鍵としての復号鍵であり、対となる公開鍵としての暗号鍵によって暗号化された情報は、この復号鍵によってのみ正常に復号できる。
情報端末201は、ICカードリーダライタ210と、判定部221と、固有情報算出手段230と、ソフトウェアプログラム240と、ソフトウェアプログラム制御部251と、暗号処理部260とを備えている。
ソフトウェアプログラム制御部251は、暗号処理部260に固有情報の入出力を行う。暗号処理部260は、予め記憶される暗号鍵と、ICカード101から読み出す復号鍵とを用いて、固有情報の暗号化と復号化とを行う。
図5は、情報端末201が、自端末にインストールされるソフトウェアプログラムの固有情報を予めICカード101に記憶させる動作例を示すフローチャートである。
情報端末201のソフトウェアプログラム制御部251は、固有情報の登録処理を開始する。まず、情報端末201のソフトウェアプログラム制御部251が、第1の実施形態と同様に、ICカード101の認証を行う(ステップS21)。ここで、認証が成功すれば(ステップS22−OK)、固有情報算出手段230は、ソフトウェアプログラム240の固有情報を算出する(ステップS23)。
次に、ソフトウェアプログラム制御部250は、ステップS23で固有情報算出手段230が算出したソフトウェアプログラム240の固有情報を、暗号処理部260に入力する。暗号処理部260は、入力された固有情報を、ICカード101に記憶された復号鍵に対応する暗号鍵で暗号化し(ステップS23−1)、ICカードリーダライタ210を介してICカード101の記憶部111に暗号化した固有情報を第1の固有情報として記憶させる(ステップS24)。
図6は、情報端末201が、自端末にインストールされたソフトウェアであるソフトウェアプログラム240を起動させるソフトウェア起動処理の動作例を示すフローチャートである。
まず、ソフトウェアプログラム制御部251は、ICカードリーダライタ210を介してICカード101の認証を行う(ステップS31)。認証が成功すれば(ステップS32−OK)、固有情報算出手段230は、ソフトウェアプログラム240の第2の固有情報を算出する(ステップS33)。
そして、ソフトウェアプログラム制御部251は、ICカードリーダライタ210を介して、ICカード101の記憶部111に記憶された暗号化された第1の固有情報と復号鍵とを読み出す(ステップS34)。そして、読み出された復号鍵を用いて、暗号処理部260が、暗号化された第1の固有鍵を復号する(ステップS34−1)。そして、判定部220は、ステップS13で固有情報算出手段230が算出した第2の固有情報と、ステップS34−1で復号された第2の固有情報とを比較する(ステップS35)。
判定部221が、ステップS35で第1の固有情報と第2の固有情報とが一致すると判定すれば、ソフトウェアプログラム制御部251は、ソフトウェアプログラム240を起動させる(ステップS36−OK)。一方、判定部221が、ステップS35で第1の固有情報と第2の固有情報とが一致しないと判定すれば、ソフトウェアプログラム制御部251は、ソフトウェアプログラム240の起動処理を異常終了し、ソフトウェアプログラム240を起動させない(ステップS36−NG)。
このように、本実施形態によれば、予めICカード101に記憶される第1の固有情報は、ICカード101に記憶された復号鍵に対応する暗号鍵によって暗号化されているため、ICカード101に記憶された復号鍵以外の復号鍵を用いては第1の固有情報を復号できない。これによれば、不正コピーされたソフトウェアプログラムの利用を防ぐことができる。例えば、特定のユーザに、ソフトウェアプログラム、及びそのユーザ固有の復号鍵並びにその復号鍵に対応する暗号鍵で暗号化された固有情報を記憶したICカードが配布された場合、そのソフトウェアプログラムを他のユーザの情報端末に不正コピーをして物理的にインストールしたとしても、その他のユーザは、固有情報が記憶されたICカードを所有していないために、そのソフトウェアプログラムを利用することができない。
例えば、ユーザAとユーザBとを想定し、それぞれは情報端末A、情報端末Bを所有し、さらにユーザAとユーザBとは、それぞれICカードA、ICカードBを所有し、ICカードAとICカードBとは、それぞれ復号鍵A、復号鍵Bを記憶している場合を想定して説明する。
例えば、まず、情報端末Aは、暗号鍵Aを用いてソフトウェアAの固有情報を暗号化し、ICカードAに記憶させる。ソフトウェアAが、不正にコピーされて情報端末Bにインストールされたとする。しかしながら、ICカードBには、ソフトウェアAに対応する固有情報は記憶されていないため、ICカードBによるソフトウェアAの起動は失敗し、正常にソフトウェア起動を行うことができない。このように、本実施形態によれば、ソフトウェアの不正コピーを防止し、正当なユーザのみがソフトウェアを利用可能とすることができる。
なお、本実施形態では、ICカード101の記憶部111が復号鍵を記憶し、情報端末201がこの復号鍵と暗号化された第1の固有情報とを読み出し、読み出した復号鍵を用いて判定部221が暗号化された第1の固有情報を復号させることとしたが、ICカード101に判定部221と同様の判定処理を行う機能部を備えることとし、固有情報算出手段230がソフトウェアプログラム240から算出する第2の固有情報を、ICカードリーダライタ210がICカード101に送信し、ICカード101が、記憶部111に記憶された復号鍵を用いて復号した第1の固有情報と、ICカードリーダライタ210から受信する第2の固有情報とを比較して一致するか否かの判定を行うようにしても良い。
このようにすれば、ICカード101から復号鍵を外部に出力することなく、復号処理を行うことができる。
なお、本発明における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりソフトウェア起動を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
本発明の第1の実施形態による端末構成を示すブロック図である。 本発明の第1の実施形態による固有情報登録処理を示すフローチャートである。 本発明の第1の実施形態によるソフトウェア起動処理を示すフローチャートである。 本発明の第2の実施形態による端末構成を示すブロック図である。 本発明の第2の実施形態による固有情報登録処理を示すフローチャートである。 本発明の第2の実施形態によるソフトウェア起動処理を示すフローチャートである。
符号の説明
100 ICカード
101 ICカード
110 記憶部
111 記憶部
200 情報端末
201 情報端末
210 ICカードリーダライタ
220 判定部
221 判定部
230 固有情報算出手段
240 ソフトウェアプログラム
250 ソフトウェアプログラム制御部
251 ソフトウェアプログラム制御部
260 暗号処理部

Claims (6)

  1. ソフトウェアプログラムの起動時に、当該ソフトウェアプログラムの認証を行うソフトウェア起動システムであって、
    前記ソフトウェアプログラムの実行ファイルに基づいた固有情報を算出する固有情報算出手段と、
    前記固有情報算出手段が算出した第1の固有情報を予め記憶する記憶手段と、
    前記ソフトウェアプログラムの起動要求が入力されると、当該起動要求が入力された時点での当該ソフトウェアプログラムの第2の固有情報を前記固有情報算出手段によって算出し、前記記憶手段に記憶された第1の固有情報と、当該第2の固有情報とを比較し、一致しなかった場合には、前記ソフトウェアプログラムを起動しないと判定する判定手段と
    を備えることを特徴とするソフトウェア起動システム。
  2. 前記ソフトウェア起動システムは、セキュアな可搬記憶媒体を備え、当該可搬記憶媒体が前記記憶手段を備える
    ことを特徴とする請求項1に記載のソフトウェア起動システム。
  3. 前記固有情報算出手段が算出する前記固有情報は、前記ソフトウェアプログラムの実行ファイルを元データとするハッシュデータであること
    を特徴とする請求項1または請求項2のいずれか1項に記載のソフトウェア起動システム。
  4. 前記ソフトウェア起動システムは、情報を暗号化する暗号鍵と、当該暗号鍵によって暗号化された情報を復号する復号鍵とを備え、
    前記記憶手段が記憶する前記第1の固有情報は、前記暗号鍵によって暗号化された第1の固有情報であり、また、当該記憶手段は前記復号鍵を記憶し、
    前記暗号化された第1の固有情報を、前記復号鍵によって復号する制御手段をさらに備え、
    前記判定手段は、復号された前記第1の固有情報を、前記第2の固有情報と比較した結果に基づいて、前記ソフトウェアプログラムを起動するか否かを判定する
    ことを特徴とする請求項2または請求項3に記載のソフトウェア起動システム。
  5. ソフトウェアプログラムの起動時に、当該ソフトウェアプログラムの認証を行うソフトウェア起動方法であって、
    固有情報算出手段が、前記ソフトウェアプログラムの実行ファイルに基づいた固有情報を算出するステップと、
    記憶手段が、前記固有情報算出手段が算出した第1の固有情報を予め記憶するステップと、
    判定手段が、前記ソフトウェアプログラムの起動要求が入力されると、当該起動要求が入力された時点での当該ソフトウェアプログラムの第2の固有情報を前記固有情報算出手段によって算出し、前記記憶手段に記憶された第1の固有情報と、当該第2の固有情報とを比較し、一致しなかった場合には、前記ソフトウェアプログラムを起動しないと判定するステップと
    を備えることを特徴とするソフトウェア起動方法。
  6. ソフトウェアプログラムの起動時に、当該ソフトウェアプログラムの認証を行うソフトウェア起動装置としてのコンピュータに、
    固有情報算出手段が、前記ソフトウェアプログラムの実行ファイルに基づいた固有情報を算出するステップと、
    記憶手段が、前記固有情報算出手段が算出した第1の固有情報を予め記憶するステップと、
    判定手段が、前記ソフトウェアプログラムの起動要求が入力されると、当該起動要求が入力された時点での当該ソフトウェアプログラムの第2の固有情報を前記固有情報算出手段によって算出し、前記記憶手段に記憶された第1の固有情報と、当該第2の固有情報とを比較し、一致しなかった場合には、前記ソフトウェアプログラムを起動しないと判定するステップと
    を実行させるソフトウェア起動プログラム。
JP2007251375A 2007-09-27 2007-09-27 ソフトウェア起動システム、ソフトウェア起動方法、及びソフトウェア起動プログラム Pending JP2009080772A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007251375A JP2009080772A (ja) 2007-09-27 2007-09-27 ソフトウェア起動システム、ソフトウェア起動方法、及びソフトウェア起動プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007251375A JP2009080772A (ja) 2007-09-27 2007-09-27 ソフトウェア起動システム、ソフトウェア起動方法、及びソフトウェア起動プログラム

Publications (1)

Publication Number Publication Date
JP2009080772A true JP2009080772A (ja) 2009-04-16

Family

ID=40655455

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007251375A Pending JP2009080772A (ja) 2007-09-27 2007-09-27 ソフトウェア起動システム、ソフトウェア起動方法、及びソフトウェア起動プログラム

Country Status (1)

Country Link
JP (1) JP2009080772A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012088765A (ja) * 2010-10-15 2012-05-10 Hitachi Solutions Ltd プログラム起動制御方法、プログラム起動制御プログラム、携帯端末、ネットワークシステム
JP2013046122A (ja) * 2011-08-23 2013-03-04 Yahoo Japan Corp 端末、アプリ保護方法及びプログラム
JP2015535151A (ja) * 2012-10-17 2015-12-07 ゼットティーイー コーポレーションZte Corporation 通信端末でのアプリケーションプログラムを暗号化と復号化する方法、システム及び端末
KR101816022B1 (ko) 2015-11-19 2018-01-31 시큐리티플랫폼 주식회사 장치 및 이의 제어 방법
WO2020110726A1 (ja) 2018-11-29 2020-06-04 日本電信電話株式会社 アプリケーション動作制御装置、アプリケーション動作制御方法、および、アプリケーション動作制御プログラム
WO2020250374A1 (ja) * 2019-06-13 2020-12-17 三菱電機株式会社 データ処理装置、データ処理方法及びプログラム
US11048778B2 (en) 2014-06-13 2021-06-29 Artis Solutions Co., Ltd Application program

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0727497B2 (ja) * 1989-06-06 1995-03-29 ブル・セー・ペー・8 メッセージの完全性をチェックする方法及び携帯装置
WO2000067130A1 (fr) * 1999-04-30 2000-11-09 Fujitsu Limited Systeme de gestion de fichiers
JP2003223235A (ja) * 2001-11-26 2003-08-08 Matsushita Electric Ind Co Ltd アプリケーション認証システム
JP2004046452A (ja) * 2002-07-10 2004-02-12 Yamaha Corp 情報記録装置及び情報再生装置並びにそのプログラム
JP2005180966A (ja) * 2003-12-16 2005-07-07 Toshiba Corp プログラムの認証機能を備えた電力量計
JP2007094863A (ja) * 2005-09-29 2007-04-12 Seiko Epson Corp デバイス管理システム
JP2007226277A (ja) * 2004-04-02 2007-09-06 Matsushita Electric Ind Co Ltd 仮想マシン改ざん検査方法、および仮想マシン改ざん検査装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0727497B2 (ja) * 1989-06-06 1995-03-29 ブル・セー・ペー・8 メッセージの完全性をチェックする方法及び携帯装置
WO2000067130A1 (fr) * 1999-04-30 2000-11-09 Fujitsu Limited Systeme de gestion de fichiers
JP2003223235A (ja) * 2001-11-26 2003-08-08 Matsushita Electric Ind Co Ltd アプリケーション認証システム
JP2004046452A (ja) * 2002-07-10 2004-02-12 Yamaha Corp 情報記録装置及び情報再生装置並びにそのプログラム
JP2005180966A (ja) * 2003-12-16 2005-07-07 Toshiba Corp プログラムの認証機能を備えた電力量計
JP2007226277A (ja) * 2004-04-02 2007-09-06 Matsushita Electric Ind Co Ltd 仮想マシン改ざん検査方法、および仮想マシン改ざん検査装置
JP2007094863A (ja) * 2005-09-29 2007-04-12 Seiko Epson Corp デバイス管理システム

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012088765A (ja) * 2010-10-15 2012-05-10 Hitachi Solutions Ltd プログラム起動制御方法、プログラム起動制御プログラム、携帯端末、ネットワークシステム
JP2013046122A (ja) * 2011-08-23 2013-03-04 Yahoo Japan Corp 端末、アプリ保護方法及びプログラム
JP2015535151A (ja) * 2012-10-17 2015-12-07 ゼットティーイー コーポレーションZte Corporation 通信端末でのアプリケーションプログラムを暗号化と復号化する方法、システム及び端末
US9516019B2 (en) 2012-10-17 2016-12-06 Zte Corporation Method, system and terminal for encrypting/decrypting application program on communication terminal
US11048778B2 (en) 2014-06-13 2021-06-29 Artis Solutions Co., Ltd Application program
KR101816022B1 (ko) 2015-11-19 2018-01-31 시큐리티플랫폼 주식회사 장치 및 이의 제어 방법
WO2020110726A1 (ja) 2018-11-29 2020-06-04 日本電信電話株式会社 アプリケーション動作制御装置、アプリケーション動作制御方法、および、アプリケーション動作制御プログラム
US11977472B2 (en) 2018-11-29 2024-05-07 Nippon Telegraph And Telephone Corporation Application operation control device, application operation control method, and application operation control program
WO2020250374A1 (ja) * 2019-06-13 2020-12-17 三菱電機株式会社 データ処理装置、データ処理方法及びプログラム
CN113950682A (zh) * 2019-06-13 2022-01-18 三菱电机株式会社 数据处理装置、数据处理方法及程序
CN113950682B (zh) * 2019-06-13 2022-12-30 三菱电机株式会社 数据处理装置、数据处理方法及计算机可读取的非暂时性的记录介质

Similar Documents

Publication Publication Date Title
US7596812B2 (en) System and method for protected data transfer
US20050283662A1 (en) Secure data backup and recovery
CN1327357C (zh) 用于验证的系统和方法
JP5116325B2 (ja) 情報処理装置、ソフトウェア更新方法及び画像処理装置
US8204233B2 (en) Administration of data encryption in enterprise computer systems
US20060168580A1 (en) Software-management system, recording medium, and information-processing device
US20040039932A1 (en) Apparatus, system and method for securing digital documents in a digital appliance
US20090208003A1 (en) Authentication Method, Host Computer and Recording Medium
JP2003058840A (ja) Rfid搭載コンピュータ記録媒体利用の情報保護管理プログラム
WO2005096158A1 (ja) 利用認証方法、利用認証プログラム、情報処理装置および記録媒体
KR100859414B1 (ko) 복제방지용 데이터인식장치와 복제방지 방법 및 이를기록한 기록매체
JP2002319230A (ja) 記録媒体、情報処理装置、コンテンツ配信サーバ、方法、プログラム、その記録媒体
EP1335365A2 (en) Data storage apparatus and method
JP2009080772A (ja) ソフトウェア起動システム、ソフトウェア起動方法、及びソフトウェア起動プログラム
JP6146476B2 (ja) 情報処理装置及び情報処理方法
US20070153580A1 (en) Memory arrangement, memory device, method for shifting data from a first memory device to a second memory device, and computer program element
KR20130008939A (ko) 휴대 단말기에서 단말 고유 정보의 복제를 방지하는 장치 및 방법
JP2008033512A (ja) セキュリティチップ及びプラットフォーム
JP2008005408A (ja) 記録データ処理装置
US20190044709A1 (en) Incorporating software date information into a key exchange protocol to reduce software tampering
KR20070059891A (ko) 어플리케이션 인증 보안 시스템 및 그 인증 보안 방법
JP2008527892A (ja) セキュアホストインタフェース
JP2007282064A (ja) データ処理装置、データ処理方法、記憶媒体、プログラム
KR101405915B1 (ko) 데이터의 암호화 저장 방법 및 암호화된 데이터의 판독방법
CN108363912B (zh) 一种程序代码的密保方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100826

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110818

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120731

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121001

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121023