説明

ソフトウェア認証方式

【課題】GPSのような高価な装置を組み込まなくてもパソコン本体の機能を用いてソフトウェアの不正使用を有効に防止する。
【解決手段】認証情報として、例えばMACアドレスのような機器に固有のものを用いる。MACアドレスは、16進数の12文字で構成されるので、この16進数の各文字を個々のデータとして乱数列を対応付け、その乱数列を更に断片化して複数の断片化乱数列を作成し、これらを並び替えて新たな認証ファイルを作成する。この認証ファイルは、暗号化された解読不可能なものとなるので、この認証ファイルを用いて、そのソフトウェアが正当なものがあるか否かの認証を容易に行なうことができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ソフトウェアの違法コピー等の不正使用を防止するソフトウェア認証方式に係り、特に認証情報を暗号化する技術に改良を加えたソフトウェア認証方式に関する。
【背景技術】
【0002】
従来、ソフトウェアの違法コピー等の不正使用を防止する認証方式として、特許文献1に記載されたものが知られている。これは、GPS(Global Positioning System)を利用してソフトウェアの実行場所を突き止め、その実行場所を元にそのソフトウェアがライセンス違反の可能性があるか否かを調べ、ライセンス違反の可能性が有る場合には警告メッセージを表示するようにしたものである。
【特許文献1】特開2001−282526号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
特許文献1に記載されたもののように、GPSを用いる場合には、パソコン本体にGPSを組み込んで内蔵させる必要があり、この組み込みによってシステム全体の価格が高価になるという問題を有する。
【0004】
本発明の目的は、GPSのような高価な装置を組み込まなくてもパソコン本体の機能を用いてソフトウェアの不正使用を有効に防止することのできるソフトウェア認証方式を提供することにある。
【課題を解決するための手段】
【0005】
本発明のソフトウェア認証方式の第1の特徴は、認証情報を構成する個々のデータを所定長の乱数列に対応させるステップと、前記乱数列を断片化して複数の断片化乱数列を形成するステップと、前記複数の断片化乱数列を並び替えることによって新たな認証ファイルを作成するステップと、前記認証ファイルに基づいてソフトウェアが正当なものであるか否かを認証するステップとを含むことにある。
認証情報として、例えばMACアドレスのような機器に固有のものを用いる。MACアドレスは、16進数の12文字で構成されるので、この16進数の各文字を個々のデータとして乱数列を対応付け、その乱数列を更に断片化して複数の断片化乱数列を作成し、これらを並び替えて新たな認証ファイルを作成する。この認証ファイルは、暗号化された解読不可能なものとなるので、この認証ファイルを用いて、そのソフトウェアが正当なものがあるか否かの認証を容易に行なうことができる。
【0006】
本発明のソフトウェア認証方式の第2の特徴は、認証情報を構成する個々のデータを所定長の乱数表中の任意の座標位置に埋め込むステップと、前記データの埋め込まれた前記乱数表に基づいてソフトウェアが正当なものであるか否かを認証するステップとを含むことにある。
認証情報として、例えばMACアドレスのような機器に固有のものを用いる。MACアドレスは、16進数の12文字で構成されるので、この16進数の各文字を個々のデータとして乱数表中の任意の座標位置に埋め込んだものを新たな認証ファイルとする。この認証ファイルは、通常の乱数表なので、解読不可能なものとなるが、乱数表の任意の座標位置にデータが埋め込んであるので、この認証ファイルを用いることによって、そのソフトウェアが正当なものがあるか否かの認証を容易に行なうことができる。
【0007】
本発明のソフトウェア認証方式の第3の特徴は、前記第1の特徴又は第2の特徴に記載されたソフトウェア認証方式において、前記認証情報を構成する個々のデータとしてコンピュータプログラムを実行した日付データを含ませておき、システム時計から読み込んだ日付と比較することによって認証することにある。
これは、期限限定のソフトウェアの場合、システム時計の日付を戻して利用することを防止するものである。すなわち、コンピュータプログラムの実行日付を認証ファイルのデータとして記録することによって、他の認証が適正であっても日付によって期限を経過しているかどうかを認識することが可能となる。
【0008】
本発明のソフトウェア認証方式の第4の特徴は、前記第1の特徴又は第2の特徴に記載されたソフトウェア認証方式において、前記認証情報として、MACアドレスを用いたことにある。
これは、認証情報として機器固有のMACアドレスを用いるようにしたものである。これ以外に機器固有の情報が存在する場合には、その情報を用いるようにしてもよい。
【発明の効果】
【0009】
本発明によれば、GPSのような高価な装置を組み込まなくてもパソコン本体の機能を用いてソフトウェアの不正使用を有効に防止することができる。
【発明を実施するための最良の形態】
【0010】
以下添付図面に従って本発明に係るソフトウェエ認証方式の好ましい実施の形態について説明する。
図1は、本発明のソフトウェエ認証方式が適用される画像診断支援装置全体のハードウエア構成を示すブロック図である。この画像診断支援装置は、例えばX線CT装置等で被検体の対象部位について収集した複数の断層像(CT画像など)に基づいて、抽出された病巣候補陰影等を表示したり、抽出された病巣候補陰影等の中から確信度の高いものを絞り込んで表示した。また、これらの処理の途中における画像を表示したりする高価なソフトウェアに従って動作するものである。
【0011】
この画像診断支援装置は、各構成要素の動作を制御する中央処理装置(CPU)10と、装置の制御プログラムが格納された主メモリ11と、複数の断層像データ及びプログラム等が格納された磁気ディスク12と、表示用の画像データを一時記憶する表示メモリ13と、この表示メモリ13からの画像データに基づいて画像を表示する表示装置としてのCRTディスプレイ14と、画面上のソフトスイッチを操作するマウス15及びそのコントローラ16と、各種パラメータ設定用のキーやスイッチを備えたキーボード17と、スピーカ18と、LANカード1cと、上記各構成要素を接続する共通バス19とから構成される。
【0012】
この実施の形態では、主メモリ11以外の記憶装置として、磁気ディスク12のみが接続されている場合を示しているが、これ以外にフロッピディスクドライブ、ハードディスクドライブ、CD−ROMドライブ、光磁気ディスク(MO)ドライブ、ZIPドライブ、PDドライブ、DVDドライブなどが接続されていてもよい。さらに、LANカード1cを介してLAN (ローカルエリアネットワーク)やインターネット、電話回線などの種々の通信ネットワーク1a上に接続可能とし、他のコンピュータやCT装置1bなどとの間で画像データのやりとりを行えるようにしてもよい。また、画像データのやりとりは、X線CT装置やMRI装置などの被検体の断層像が収集可能な医用画像診断装置を上記LAN等の通信ネットワーク1aと接続して行ってもよい。
【0013】
図2及び図3は、認証ファイルの作成方法の一例を示す図である。この発明では、ほとんどのパーソナルコンピュータが装備しているインターネット通信基板(LANカード1c)のMACアドレスを利用するものであり、かつ、乱数列又は乱数表を用いて暗号化された認証ファイルを作成し、これを認証情報として利用するようにしたものである。すなわち、乱数表を用いて「0,1,・・・,F」の16進数を表す文字複数個に乱数列1〜16をそれぞれ対応させ、複数の数値を表すのに、その乱数列1〜16中に予め決めた方式で並べ替えて配置し、それを認証ファイルとする。
【0014】
すなわち、図2に示すように、16進数「0,1,・・・,F」までの文字の各々に互いに異なるM個の乱数列を割り当てる。この乱数列を用いてインターネット通信基板(LANカード1c)のMACアドレスを表してそれを認証ファイルとする。
【0015】
前述の認証ファイルをさらに、解読しにくくするために、乱数列1〜16を図3に示すように決まった方式で断片化し、それぞれ順番を入れ替えて認証ファイルを作成するようにしてもよい。例えば、図3(A)に示すように乱数列を、先頭から順番に断片1、断片4、断片2、断片3、断片7、断片5、断片6、・・・のように複数断片化する。図3(B)に示すように、断片化された乱数列のそれぞれの断片を所定の順番で並び替えて新しい乱数列を作成し、それを認証ファイルとする。解読する場合には、認証ファイルを所定の方式で断片化し、それを並び替えて元の乱数列に戻し、さらに乱数列の所強いの場所から16進数の文字を読み取りMACアドレスを解読する。この場合、断片の先頭アドレスとその長さも非公開であるが決めておくことが好ましい。また、断片の先頭アドレスと長さをランダムに変更し、それを認証ファイルの所定の位置に記録するようにしてもよい。
【0016】
図4は、認証ファイルの作成方法の別の一例を示す図である。複数(個数は任意)の数値を記録するのに、乱数表中の予め決めた座標位置にその数値を埋め込んで記録してそれを認証ファイルとしてもよい。例えば、図4に示すように、MACアドレスを記録するのに、複数文字づづ離した場所に順番に埋め込んでもよい。また、埋め込む前に、文字コードをずらすなどして暗号化してもよい。さらに、前回実行日付(暗号化日付)、ソウトウェアの試行期限(暗号化期限)及び認証対象番号(暗号化番号)等は入り乱れて記録してもよい。これらの埋め込んだ情報があれば、それを取り出すことができるように埋め込む。この場合、MACアドレスは、文字コードをずらすなどして予め変換し、暗号化しておいてもよい。埋め込み後に、さらに暗号化処理を行なってもよい。認証ファイルの大きさは任意でよい。
【0017】
このようにして作成された認証ファイルは、図5に示すようにして実行装置である画像診断支援装置50に格納される。認証ファイル作成用PC51からインターネット1aを介して設置作業用PC52に転送し、設置作業用PC52のCDドライブ装置を用いて画像診断支援装置50にインストールしてもよい。また、インターネット1aを経由して認証ファイル作成PC51から直接画像診断支援装置50にインストールしてもよい。さらに、CDを介して認証ファイル作成用PC51から画像診断支援装置50にインストールしてもよい。
【0018】
図6は、実行プログラム内部の処理の一例を示すフローチャート図である。まず、ステップS60では、専用ソフトを用いて画像診断支援装置50のMACアドレスを読み込む。ステップS61では、MACアドレスを暗号化している場合は、そのアドレス変換を行い変換後のMACアドレス(1)を作成する。ステップS62では、認証ファイルが多数ある場合、例えば、最初の認証ファイル1を磁気ディスク12から読み込む。読み込まれたものは、認証ファイル(2)となる。
【0019】
ステップS63では、認証ファイル(2)からMACアドレス(3)、認証対象情報(4)、使用期限(5)、前回日付情報(6)のそれぞれを取り出す。ステップS64では、変換後のMACアドレス(1)と取り出したMACアドレス(3)とか一致するか否かの判定を行い、一致する場合には、次のステップS66に進み、一致しない場合には、ステップS65に進み、警告等のメッセージを表示して終了する。
【0020】
ステップS66では、認証対象番号(4)が画像診断支援装置50に対応するものであるか否かの判定を行い、対応する場合には、次のステップS68に進み、対応しない場合には、ステップS67に進み、警告等のメッセージを表示して終了する。
【0021】
ステップS68では、現在の日付が使用期限(5)内であるか否かの判定を行い、期限内の場合には、次のステップS6Aに進み、期限内でない場合には、ステップS69に進み、警告等のメッセージを表示して終了する。
【0022】
ステップS6Aでは、現在の日付が前回日付情報(6)よりも前の日付、すなわち日付が逆転していないか判定を行い、逆転していない場合には、次のステップS6Cに進み、逆転している場合には、ステップS6Bに進み、警告等のメッセージを表示して終了する。すなわち、認証ファイル中に、コンピュータプログラムを実行した日付を記録しておくことも可能なので、システム時計から読み込んだ日付の方が古い場合は、システム時計を不正に操作したものと見なして、コンピュータプログラムの実行を停止させるようにした。
【0023】
ステップS6Cでは、実行プラグラムの実行日を専用ソフトで読み込んで、当日日付に更新し、磁気ディスク12の認証ファイル1に記録する。そして、次のステップS6Dで実行プログラムを実行する。
【図面の簡単な説明】
【0024】
【図1】本発明が適用される画像診断支援装置全体のハードウエア構成を示すブロック図である。
【図2】認証ファイルの作成方法の一例を示す図であり、「0,1,・・・,F」の16進数と乱数列1〜16との対応関係を示す図である。
【図3】認証ファイルの作成方法の一例を示す図であり、乱数列が断片化されてそれぞれ順番が入れ替えられる様子を示す図である。
【図4】認証ファイルの作成方法の別の一例を示す図である。
【図5】認証ファイルが実行装置である画像診断支援装置にインストールされる様子を示す図である。
【図6】実行プログラム内部の処理の一例を示すフローチャート図である。
【符号の説明】
【0025】
10…中央処理装置(CPU)
11…主メモリ
12…磁気ディスク
13…表示メモリ
14…CRTディスプレイ
15…マウス
16…コントローラ
17…キーボード
18…スピーカ
19…共通バス
1a…通信ネットワーク
1b…他のコンピュータやCT装置
1c…LANカード

【特許請求の範囲】
【請求項1】
認証情報を構成する個々のデータを所定長の乱数列に対応させるステップと、
前記乱数列を断片化して複数の断片化乱数列を形成するステップと、
前記複数の断片化乱数列を並び替えることによって新たな認証ファイルを作成するステップと、
前記認証ファイルに基づいてソフトウェアが正当なものであるか否かを認証するステップと
を含むことを特徴とするソフトウェア認証方式。
【請求項2】
認証情報を構成する個々のデータを所定長の乱数表中の任意の座標位置に埋め込むステップと、
前記データの埋め込まれた前記乱数表に基づいてソフトウェアが正当なものであるか否かを認証するステップと
を含むことを特徴とするソフトウェア認証方式。
【請求項3】
請求項1又は2に記載されたソフトウェア認証方式において、前記認証情報を構成する個々のデータとしてコンピュータプログラムを実行した日付データを含ませておき、システム時計から読み込んだ日付と比較することによって認証することを特徴とするソフトウェア認証方式。
【請求項4】
請求項1又は2に記載されたソフトウェア認証方式において、前記認証情報として、MACアドレスを用いたことを特徴とするソフトウェア認証方式。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2006−48444(P2006−48444A)
【公開日】平成18年2月16日(2006.2.16)
【国際特許分類】
【出願番号】特願2004−229790(P2004−229790)
【出願日】平成16年8月5日(2004.8.5)
【出願人】(000153498)株式会社日立メディコ (1,613)
【Fターム(参考)】