(57)【要約】【課題】  本発明はシステム構成が変更されてもなお有効性を維持するＨＷＩＤを提供するシステムおよび方法を提供すること。【解決手段】  ソフトウェアが動作する際に、現在のＨＷＩＤが生成される。現在のＨＷＩＤが格納されたＨＷＩＤと合致するか否かを判定するため両ＨＷＩＤが比較される際に、時間ベクトルおよび重みベクトルがその比較において使用される。比較照合の合致得点は常時保持される。各ハードウェア構成要素につき、重みベクトルは、そのハードウェア構成要素についてのハッシュ化された値が正しく合致したときに与えられる重みを表す。各ハードウェア構成要素につき、時間ベクトルはその構成要素における変更が許されるようになるまでの満了期間を表すことができる。【選択図】  図３
2004213676.tif 000002
【特許請求の範囲】
【請求項１】
１または複数の構成要素を備えるコンピュータシステムを用いた使用のためのソフトウェア製品にとってのソフトウェア使用許諾条件の強制を可能とするための方法であって、
一連の構成要素タイプの中からの各構成要素タイプに対して、前記コンピュータシステムから関連する現在の構成要素識別情報を収集すること、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較すること、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記比較の結果が肯定的である場合には、格納された関連する構成要素タイプの重みを比較照合得点に加算することにより前記比較照合得点を歩進することを用いて、比較照合得点を計算すること、および
前記比較照合得点を比較照合得点の閾値と比較すること
を備えることを特徴とする方法。
【請求項２】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、関連する現在の構成要素識別情報を収集する行為が、
該構成要素タイプのすべての構成要素に対して、関連する個別の現在の構成要素識別情報を収集することを備えることを特徴とする請求項１に記載の方法。
【請求項３】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較する前記行為が、
前記関連する個別の格納された構成要素識別情報のいずれかが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すことを備えることを特徴とする請求項２に記載の方法。
【請求項４】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較する前記行為が、
前記関連する個別の格納された構成要素識別情報のすべてが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すことを備えることを特徴とする請求項２に記載の方法。
【請求項５】
一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、関連する現在の構成要素識別情報を収集する前記行為が、
問い合わせの結果を求めて前記ハードウェア構成要素タイプのハードウェア構成要素に問い合わせすること、および
前記問い合わせの結果をハッシュ化すること
を備えることを特徴とする請求項１に記載の方法。
【請求項６】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記比較の結果が肯定的である場合には、格納された関連する構成要素タイプの重みを加算することにより比較照合得点を歩進することを用いて、比較照合得点を計算する前記行為が、
各構成要素タイプに対して、関連する満了期間が経過しているか否かを判定すること、
および
各構成要素タイプに対して、前記満了期間が経過していた場合には、前記格納された関連する構成要素タイプの重みを加算すること
を備えることを特徴とする請求項１に記載の方法。
【請求項７】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、格納された関連する構成要素タイプの重みを加算することにより比較照合得点を計算する前記行為が、
各構成要素タイプに対して、関連する満了期間が経過しているか否かを判定すること、
および
各構成要素タイプに対して、前記満了期間が経過していた場合には、予め特定された期間満了の増分を加算すること
を備えることを特徴とする請求項１に記載の方法。
【請求項８】
前記一連の構成要素タイプが次の、サウンドカード、ネットワークカード、ＢＩＯＳ、ＣＤＲＯＰＭ駆動装置、表示装置アダプタ、ディスク駆動装置、ＳＣＳＩアダプタ、ディスクアダプタ、プロセッサ、およびＲＡＭの中から選択された１または複数を備えることを特徴とする請求項１に記載の方法。
【請求項９】
１または複数の構成要素を備えるコンピュータシステムを用いた使用のためのソフトウェア製品にとってのソフトウェア使用許諾条件の強制を可能とするための方法であって、
一連の構成要素タイプの中からの各構成要素タイプに対して、前記コンピュータシステムから関連する現在の構成要素識別情報を収集すること、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較すること、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記比較の結果が肯定的である場合、または関連する満了期間が経過していた場合には、比較照合得点を歩進することを用いて、前記比較照合得点を計算すること、および
前記比較照合得点を比較照合得点の閾値と比較すること
を備えることを特徴とする方法。
【請求項１０】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、関連する現在の構成要素識別情報を収集する前記行為が、
該構成要素タイプのすべての構成要素に対して、関連する個別の現在の構成要素識別情報を収集することを備えることを特徴とする請求項９に記載の方法。
【請求項１１】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較する前記行為が、
前記関連する個別の格納された構成要素識別情報のいずれかが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すことを備えることを特徴とする請求項１０に記載の方法。
【請求項１２】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較する前記行為が、
前記関連する個別の格納された構成要素識別情報のすべてが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すことを備えることを特徴とする請求項１０に記載の方法。
【請求項１３】
一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、関連する現在の構成要素識別情報を収集する前記行為が、
問い合わせの結果を求めて前記ハードウェア構成要素タイプのハードウェア構成要素に問い合わせすること、および
前記問い合わせの結果をハッシュ化すること
を備えることを特徴とする請求項９に記載の方法。
【請求項１４】
前記一連の構成要素タイプが次の、サウンドカード、ネットワークカード、ＢＩＯＳ、ＣＤＲＯＰＭ駆動装置、表示装置アダプタ、ディスク駆動装置、ＳＣＳＩアダプタ、ディスクアダプタ、プロセッサ、およびＲＡＭの中から選択された１または複数を備えることを特徴とする請求項９に記載の方法。
【請求項１５】
１または複数の構成要素タイプの１または複数の構成要素を備えるコンピュータシステムを用いた使用のためのソフトウェア製品にとってのソフトウェア使用許諾条件の強制を可能とするための使用許諾データ構造であって、
各々の値が前記構成要素の１つに対する構成要素識別情報に対応する複数の値を備えるハードウェアＩＤと、
前記１または複数の構成要素タイプの各々に対して、前記構成要素タイプのための重み値を備える重みベクトルと
を備えることを特徴とする使用許諾データ構造。
【請求項１６】
前記ハードウェアＩＤが第２のハードウェアＩＤに事実上合致するか否かを判定するための閾値数値をさらに備えることを特徴とする請求項１５に記載の使用許諾データ構造。
【請求項１７】
１または複数の構成要素タイプの１または複数の構成要素を備えるコンピュータシステムを用いた使用のためのソフトウェア製品にとってのソフトウェア使用許諾条件の強制を可能とするための使用許諾データ構造であって、
各々の値が前記構成要素の１つに対する構成要素識別情報に対応する複数の値を備えるハードウェアＩＤと、
少なくとも１つの前記構成要素タイプの各々に対して、前記構成要素タイプのための満了期間値を備える時間ベクトルと
を備えることを特徴とする使用許諾データ構造。
【請求項１８】
前記ハードウェアＩＤが第２のハードウェアＩＤに事実上合致するか否かを判定するための閾値数値をさらに備えることを特徴とする請求項１７に記載の使用許諾データ構造。
【請求項１９】
前記１または複数の構成要素タイプの各々に対して、前記構成要素タイプのための重み値を備える重みベクトルをさらに備えることを特徴とする請求項１７に記載の使用許諾データ構造。
【請求項２０】
前記ハードウェアＩＤが第２のハードウェアＩＤに事実上合致するか否かを判定するための閾値数値をさらに備えることを特徴とする請求項１９に記載の使用許諾データ構造。
【請求項２１】
１または複数の構成要素を備えるコンピュータシステムを用いた使用のためのソフトウェア製品にとってのソフトウェア使用許諾条件の強制を可能とするための、１つの方法を為すためのコンピュータで実行可能な命令を備える、少なくとも１つのコンピュータで実行可能なモジュールをそこに格納している、コンピュータで読み取り可能な媒体であって、前記方法が、
一連の構成要素タイプの中からの各構成要素タイプに対して、前記コンピュータシステムから関連する現在の構成要素識別情報を収集すること、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較すること、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記比較の結果が肯定的である場合には、格納された関連する構成要素タイプの重みを比較照合得点に加算することにより前記比較照合得点を歩進することを用いて、比較照合得点を計算すること、および
前記比較照合得点を比較照合得点の閾値と比較すること
を備えることを特徴とするコンピュータで読み取り可能な媒体。
【請求項２２】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、関連する現在の構成要素識別情報を収集する前記行為が、
該構成要素タイプのすべての構成要素に対して、関連する個別の現在の構成要素識別情報を収集することを備えることを特徴とする請求項２１に記載のコンピュータで読み取り可能な媒体。
【請求項２３】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較する前記行為が、
前記関連する個別の格納された構成要素識別情報のいずれかが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すことを備えることを特徴とする請求項２２に記載のコンピュータで読み取り可能な媒体。
【請求項２４】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較する前記行為が、
前記関連する個別の格納された構成要素識別情報のすべてが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すことを備えることを特徴とする請求項２２に記載のコンピュータで読み取り可能な媒体。
【請求項２５】
一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、関連する現在の構成要素識別情報を収集する前記行為が、
問い合わせの結果を求めて前記ハードウェア構成要素タイプのハードウェア構成要素に問い合わせすること、および
前記問い合わせの結果をハッシュ化すること
を備えることを特徴とする請求項２１に記載のコンピュータで読み取り可能な媒体。
【請求項２６】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記比較の結果が肯定的である場合には、格納された関連する構成要素タイプの重みを加算することにより比較照合得点を歩進することを用いて、比較照合得点を計算する前記行為が、
各構成要素タイプに対して、関連する満了期間が経過しているか否かを判定すること、
および
各構成要素タイプに対して、前記満了期間が経過していた場合には、前記格納された関連する構成要素タイプの重みを加算すること
を備えることを特徴とする請求項２１に記載のコンピュータで読み取り可能な媒体。
【請求項２７】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記比較の結果が肯定的である場合には、格納された関連する構成要素タイプの重みを加算することにより比較照合得点を歩進することを用いて、比較照合得点を計算する前記行為が、
各構成要素タイプに対して、関連する満了期間が経過しているか否かを判定すること、
および
各構成要素タイプに対して、前記満了期間が経過していた場合には、予め特定された期間満了の増分を加算すること
を備えることを特徴とする請求項２１に記載のコンピュータで読み取り可能な媒体。
【請求項２８】
前記一連の構成要素タイプが次の、サウンドカード、ネットワークカード、ＢＩＯＳ、ＣＤＲＯＰＭ駆動装置、表示装置アダプタ、ディスク駆動装置、ＳＣＳＩアダプタ、ディスクアダプタ、プロセッサ、およびＲＡＭの中から選択された１または複数を備えることを特徴とする請求項２１に記載のコンピュータで読み取り可能な媒体。
【請求項２９】
１または複数の構成要素を備えるコンピュータシステムを用いた使用のためのソフトウェア製品にとってのソフトウェア使用許諾条件の強制を可能とするための、１つの方法を為すためのコンピュータで実行可能な命令を備える、少なくとも１つのコンピュータで実行可能なモジュールをそこに格納している、コンピュータで読み取り可能な媒体であって、前記方法が、
一連の構成要素タイプの中からの各構成要素タイプに対して、前記コンピュータシステムから関連する現在の構成要素識別情報を収集すること、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較すること、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記比較の結果が肯定的である場合、または関連する満了期間が経過していた場合には、比較照合得点を歩進することを用いて、前記比較照合得点を計算すること、および
前記比較照合得点を比較照合得点の閾値と比較すること
を備えることを特徴とするコンピュータで読み取り可能な媒体。
【請求項３０】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、関連する現在の構成要素識別情報を収集する前記行為が、
該構成要素タイプのすべての構成要素に対して、関連する個別の現在の構成要素識別情報を収集することを備えることを特徴とする請求項２９に記載のコンピュータで読み取り可能な媒体。
【請求項３１】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較する前記行為が、
前記関連する個別の格納された構成要素識別情報のいずれかが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すことを備えることを特徴とする請求項３０に記載のコンピュータで読み取り可能な媒体。
【請求項３２】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較する前記行為が、
前記関連する個別の格納された構成要素識別情報のすべてが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すことを備えることを特徴とする請求項３０に記載のコンピュータで読み取り可能な媒体。
【請求項３３】
一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、関連する現在の構成要素識別情報を収集する前記行為が、
問い合わせの結果を求めて前記ハードウェア構成要素タイプのハードウェア構成要素に問い合わせすること、および
前記問い合わせの結果をハッシュ化すること
を備えることを特徴とする請求項２９に記載のコンピュータで読み取り可能な媒体。
【請求項３４】
前記一連の構成要素タイプが次の、サウンドカード、ネットワークカード、ＢＩＯＳ、ＣＤＲＯＰＭ駆動装置、表示装置アダプタ、ディスク駆動装置、ＳＣＳＩアダプタ、ディスクアダプタ、プロセッサ、およびＲＡＭの中から選択された１または複数を備えることを特徴とする請求項２９に記載のコンピュータで読み取り可能な媒体。
【請求項３５】
１または複数の構成要素を備えるコンピュータシステムを用いた使用のためのソフトウェア製品にとってのソフトウェア使用許諾条件の強制を可能とするためのコンピュータ処理装置であって、
一連の構成要素タイプの中からの各構成要素タイプに対して、前記コンピュータシステムから関連する現在の構成要素識別情報を収集するための手段と、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較するための手段と、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記比較の結果が肯定的である場合には、格納された関連する構成要素タイプの重みを比較照合得点に加算することにより前記比較照合得点を歩進することを用いて、比較照合得点を計算するための手段と、
前記比較照合得点を比較照合得点の閾値と比較するための手段と
を備えることを特徴とするコンピュータ処理装置。
【請求項３６】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、関連する現在の構成要素識別情報を収集するための前記手段が、
該構成要素タイプのすべての構成要素に対して、関連する個別の現在の構成要素識別情報を収集するための手段を備えることを特徴とする請求項３５に記載のコンピュータ処理装置。
【請求項３７】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較するための前記手段が、
前記関連する個別の格納された構成要素識別情報のいずれかが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すための手段を備えることを特徴とする請求項３６に記載のコンピュータ処理装置。
【請求項３８】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較するための前記手段が、
前記関連する個別の格納された構成要素識別情報のすべてが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すための手段
を備えることを特徴とする請求項３６に記載のコンピュータ処理装置。
【請求項３９】
一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、関連する現在の構成要素識別情報を収集するための前記手段が、
問い合わせの結果を求めて前記ハードウェア構成要素タイプのハードウェア構成要素に問い合わせするための手段と、
前記問い合わせの結果をハッシュ化するための手段と
を備えることを特徴とする請求項３５に記載のコンピュータ処理装置。
【請求項４０】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記比較の結果が肯定的である場合には、格納された関連する構成要素タイプの重みを加算することにより比較照合得点を歩進することを用いて、比較照合得点を計算するための前記手段が、
各構成要素タイプに対して、関連する満了期間が経過しているか否かを判定するための手段と、
各構成要素タイプに対して、前記満了期間が経過していた場合には、前記格納された関連する構成要素タイプの重みを加算するための手段と
を備えることを特徴とする請求項３５に記載のコンピュータ処理装置。
【請求項４１】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記比較の結果が肯定的である場合には、格納された関連する構成要素タイプの重みを加算することにより比較照合得点を歩進することを用いて、比較照合得点を計算するための前記手段が、
各構成要素タイプに対して、関連する満了期間が経過しているか否かを判定するための手段と、
各構成要素タイプに対して、前記満了期間が経過していた場合には、予め特定された期間満了の増分を加算するための手段と
を備えることを特徴とする請求項３５に記載のコンピュータ処理装置。
【請求項４２】
前記一連の構成要素タイプが次の、サウンドカード、ネットワークカード、ＢＩＯＳ、ＣＤＲＯＰＭ駆動装置、表示装置アダプタ、ディスク駆動装置、ＳＣＳＩアダプタ、ディスクアダプタ、プロセッサ、およびＲＡＭの中から選択された１または複数を備えることを特徴とする請求項３５に記載のコンピュータ処理装置。
【請求項４３】
１または複数の構成要素を備えるコンピュータシステムを用いた使用のためのソフトウェア製品にとってのソフトウェア使用許諾条件の強制を可能とするためのコンピュータ処理装置であって、
一連の構成要素タイプの中からの各構成要素タイプに対して、前記コンピュータシステムから関連する現在の構成要素識別情報を収集するための手段と、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較するための手段と、
前記一連の構成要素タイプの中からの各構成要素タイプに対して、前記比較の結果が肯定的である場合、または関連する満了期間が経過していた場合には、比較照合得点を歩進することを用いて、前記比較照合得点を計算するための手段と、
前記比較照合得点を比較照合得点の閾値と比較するための手段と
を備えることを特徴とするコンピュータ処理装置。
【請求項４４】
前記一連の構成要素タイプの中からの各構成要素タイプに対して、関連する現在の構成要素識別情報を収集するための前記手段が、
該構成要素タイプのすべての構成要素に対して、関連する個別の現在の構成要素識別情報を収集するための手段を備えることを特徴とする請求項４３に記載のコンピュータ処理装置。
【請求項４５】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較するための前記手段が、
前記関連する個別の格納された構成要素識別情報のいずれかが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すための手段を備えることを特徴とする請求項４４に記載のコンピュータ処理装置。
【請求項４６】
前記一連のハードウェア構成要素タイプの中からの少なくとも１つの構成要素タイプに対して、前記関連する格納された構成要素識別情報が１または複数の関連する個別の格納された構成要素識別情報を備え、かつ前記一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、前記関連する現在の構成要素識別情報を関連する格納された構成要素識別情報と比較するための前記手段が、
前記関連する個別の格納された構成要素識別情報のすべてが前記関連する個別の現在の構成要素識別情報のいずれかに合致する場合には、肯定的結果を返すための手段を備えることを特徴とする請求項４４に記載のコンピュータ処理装置。
【請求項４７】
一連のハードウェア構成要素タイプの中からの各ハードウェア構成要素タイプに対して、関連する現在の構成要素識別情報を収集するための前記手段が、
問い合わせの結果を求めて前記ハードウェア構成要素タイプのハードウェア構成要素に問い合わせするための手段と、
前記問い合わせの結果をハッシュ化するための手段とを備えることを特徴とする請求項４３に記載のコンピュータ処理装置。
【請求項４８】
前記一連の構成要素タイプが次の、サウンドカード、ネットワークカード、ＢＩＯＳ、ＣＤＲＯＰＭ駆動装置、表示装置アダプタ、ディスク駆動装置、ＳＣＳＩアダプタ、ディスクアダプタ、プロセッサ、およびＲＡＭの中から選択された１または複数を備えることを特徴とする請求項４３に記載のコンピュータ処理装置。
【請求項４９】
１または複数の構成要素タイプの１または複数の構成要素を備えるコンピュータシステムを動作させるべく使用許諾されているソフトウェアにとってのソフトウェア使用許諾条件の強制を可能とするための方法であって、
各々の値が前記構成要素の１つに対する構成要素識別情報に対応する複数の値を備えるハードウェアＩＤを生成すること、および
前記構成要素タイプの各々に対して、前記構成要素タイプのための時間値を備える時間ベクトルを生成すること
を備えることを特徴とする方法。
【請求項５０】
１または複数の構成要素タイプの１または複数の構成要素を備えるコンピュータシステムを動作させるべく使用許諾されているソフトウェアにとってのソフトウェア使用許諾条件の強制を可能とするための方法であって、
各々の値が前記構成要素の１つに対する構成要素識別情報に対応する複数の値を備えるハードウェアＩＤを生成すること、および
前記１または複数の構成要素タイプの各々に対して、前記構成要素タイプのための重み値を備える重みベクトルを生成すること
を備えることを特徴とする方法。
【請求項５１】
第２のハードウェアＩＤが前の時間における前記コンピュータシステムを記述し、かつ重みベクトルを生成する前記行為が、
前記一連の構成要素タイプの中からの前記第１のハードウェアＩＤが前記第２のハードウェアＩＤと異なる各構成要素タイプに対して、予め特定された値により前記重み値を調整することを備えることを特徴とする請求項５０に記載の方法。
【請求項５２】
１または複数の構成要素タイプの１または複数の構成要素を備えるコンピュータシステムを動作させるべく使用許諾されているソフトウェアにとってのソフトウェア使用許諾条件の強制を可能とするための、１つの方法を為すためのコンピュータで実行可能な命令を備える、少なくとも１つのコンピュータで実行可能なモジュールをそこに格納している、コンピュータで読み取り可能な媒体であって、前記方法が、
各々の値が前記構成要素の１つに対する構成要素識別情報に対応する複数の値を備えるハードウェアＩＤを生成すること、および
前記１または複数の構成要素タイプの各々に対して、前記構成要素タイプのための時間値を備える時間ベクトルを生成すること
を備えることを特徴とするコンピュータで読み取り可能な媒体。
【請求項５３】
１または複数の構成要素タイプの１または複数の構成要素を備えるコンピュータシステムを動作させるべく使用許諾されているソフトウェアにとってのソフトウェア使用許諾条件の強制を可能とするための、１つの方法を為すためのコンピュータで実行可能な命令を備える、少なくとも１つのコンピュータで実行可能なモジュールをそこに格納している、コンピュータで読み取り可能な媒体であって、前記方法が、
各々の値が前記構成要素の１つに対する構成要素識別情報に対応する複数の値を備えるハードウェアＩＤを生成すること、および
前記１または複数の構成要素タイプの各々に対して、前記構成要素タイプのための重み値を備える重みベクトルを生成すること
を備えることを特徴とするコンピュータで読み取り可能な媒体。
【請求項５４】
第２のハードウェアＩＤが前の時間における前記コンピュータシステムを記述し、かつ重みベクトルを生成する前記行為が、
前記一連の構成要素タイプの中からの前記第１のハードウェアＩＤが前記第２のハードウェアＩＤと異なる各構成要素タイプに対して、予め特定された値により前記重み値を調整することを備えることを特徴とする請求項５３に記載のコンピュータで読み取り可能な媒体。
【請求項５５】
１または複数の構成要素タイプの１または複数の構成要素を備えるコンピュータシステムを動作させるべく使用許諾されているソフトウェアにとってのソフトウェア使用許諾条件の強制を可能とするための装置であって、
各々の値が前記構成要素の１つに対する構成要素識別情報に対応する複数の値を備えるハードウェアＩＤを生成するための手段と、
前記１または複数の構成要素タイプの各々に対して、前記構成要素タイプのための時間値を備える時間ベクトルを生成するための手段と
を備えることを特徴とする装置。
【請求項５６】
１または複数の構成要素タイプの１または複数の構成要素を備えるコンピュータシステムを動作させるべく使用許諾されているソフトウェアにとってのソフトウェア使用許諾条件の強制を可能とするための装置であって、
各々の値が前記構成要素の１つに対する構成要素識別情報に対応する複数の値を備えるハードウェアＩＤを生成するための手段と、
前記１または複数の構成要素タイプの各々に対して、前記構成要素タイプのための重み値を備える重みベクトルを生成するための手段と
を備えることを特徴とする装置。
【請求項５７】
第２のハードウェアＩＤが前の時間における前記コンピュータシステムを記述し、かつ重みベクトルを生成するための前記手段が、
前記一連の構成要素タイプの中からの前記第１のハードウェアＩＤが前記第２のハードウェアＩＤと異なる各構成要素タイプに対して、予め特定された値により前記重み値を調整するための手段を備えることを特徴とする請求項５６に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステムに関する識別情報を提供すること、およびそのコンピュータシステムが保存された識別情報の版数に合致するか否かを評価することのための方式および方法に関する。より詳細には、本発明は、コンピュータシステム使用中に起こる通常の変動に対し柔軟で耐性のある、コンピュータシステムからの情報を識別することに基づく、そのコンピュータシステムのためのハードウエアＩＤを提供するシステムおよび方法に関する。
【背景技術】
【０００２】
ソフトウエアの使用は時としてソフトウエア使用許諾により規制される。ソフトウエアは販売後容易に複製できるため、関連する使用許諾の無いソフトウエアの使用を防ぐことは困難である。ソフトウエアが不正に複製され著作権を侵害するコピーが許可されていないコンピュータシステム上で使用するためにインストールされるというような使用は、著作権の侵害になる。加えて、著作権を侵害していないコピーの購入者でも関連する使用許諾の範囲外でソフトウエアを不適切に使用することがある。たとえば、ユーザが使用許諾で許可されたものより多数のコンピュータシステムにそのソフトウエアをインストールする可能性がある。
【０００３】
使用許諾は、このような弊習に対抗する要求に対して法律的手段を提供するものであるが、現実問題としては強要するには困難な場合がある。したがって、使用許諾の条件外でのソフトウエアの使用量を減少させるための他の手段を求める必要がある。そのような方法の一つは、そのソフトウエアを使用する使用許諾を交付されているユーザのコンピュータシステムに対して識別子を創ることを基本とするものである。"Software Anti-Piracy System That Adapts to Hardware Upgrades"という名称の特許文献１、および公告米国特許申請番号第２００１００４４７８２は、この方法を詳述する。
【０００４】
コンピュータシステムは、一般に、ディスク駆動装置、ＣＤＲＯＭ駆動装置、および処理装置を含む、種々のハードウエア部品を含む。これらのハードウエア部品はそれぞれ
システムにより、たとえばＰｎＰ（Plug and Play）処理を実行することにより、呼び出すことができる識別子（通し番号または品名）を有する。ハードウエア識別子（ＨＷＩＤ）を創るために、これらの構成要素識別子を、予め決められた方法により結合して、特定のコンピュータシステムを識別するために用いる方法が考えられる。
【０００５】
意義深いことに、ＨＷＩＤは、ソフトウエア使用許諾の一部としてまたはそれと結合されて、特定のコンピュータシステムで使用するために許可されたソフトウエアがそのコンピュータシステムでのみ使用されることを確実にするために適用することができる。特に、ＨＷＩＤを特定した使用許諾を有するソフトウエアは、稼働時にコンピュータシステムに対して算出したＨＷＩＤが、ソフトウエア使用許諾に特定されたＨＷＩＤに合致したときにのみコンピュータシステムで動作するであろう。
【０００６】
しかしながら、コンピュータシステムのユーザが、たとえば修理や改良の目的で、システムの構成要素を加え、削除し、または交換すると、ＨＷＩＤは変化する。それぞれの新しい、または交換された構成要素は新しい構成要素識別子を有するであろう。したがって、システムのＨＷＩＤが算出されると、新しい構成要素識別子の存在により、ＨＷＩＤが変化してしまう。ユーザが自分のコンピュータシステムの古い版に対するＨＷＩＤを特定するソフトウエアの使用許諾を得ている場合には問題が発生する。
【０００７】
したがって、新たに計算されたＨＷＩＤと比較するときに、事実上合致したとして、蓄積されたＨＷＩＤを受け容れる方法が知られている。たとえば、上記した特許文献１は、ＨＷＩＤとして５つの構成要素識別子を含み、そのうちの任意の４つが合致すると認識されれば、そのソフトウエア製品はそのコンピュータシステムで動作することが可能となる。
【０００８】
【特許文献１】米国特許第６，２４３，４６８号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００９】
従来技術で対応できないのは、ある構成要素群が他に比し、より頻繁に交換されるような事態や、時間の進行につれソフトウエアの価値が減少するため、使用許諾に対するコンピュータシステム照合の必要性が時間の経過とともに減退して行く場合である。これらの場合に対応するＨＷＩＤに基づく使用許諾システムは安全性を増加させ、時間経過に伴う動的な安全性を提供する。
【００１０】
上記した状況を考慮すると、ハードウエアシステムの変更を包含し、時間の経過に適合するための要求を満たす柔軟性を持って正規ユーザのコンピュータシステムにおける変更を許容しつつ、１つのコンピュータシステムに対するソフトウエアの使用許諾された具現化を識別しリンクするために、ＨＷＩＤを使用することを可能とするシステムに対する必要性が存在する。
【課題を解決するための手段】
【００１１】
上記したように、本発明はシステム構成が変更されてもなお有効性を維持するＨＷＩＤを提供するシステムおよび方法を提供する。
【００１２】
一実施形態においては、ソフトウエアが有効化される際にシステムのＨＷＩＤが計算される。ソフトウエアまたはシステムの他のどこかにある製品有効化コードにより現在のハードウエア構成要素に問い合わせてそれら構成要素に関する情報を収集する。たとえば、ネットワークカードに問い合わせてＭＡＣ（Media Access Control）アドレスを判定する。各ハードウエア構成要素のタイプのハードウエア構成要素に関する情報はハッシュ化される。ハッシュ化された値はＨＷＩＤに結合される。
【００１３】
有効化時に計算されたＨＷＩＤは使用許諾データファイルに含まれる。また各ハードウエア構成要素ごとの、時間および重みの値を持つ時間および重みのベクトルもこの有効化時のＨＷＩＤとともに含まれる。閾値数値も使用許諾データファイルに含まれる。この使用許諾データファイルはソフトウエアが使用される都度、評価されねばならない。使用許諾のためにコンピュータシステムの確認が要求された場合には、システムのＨＷＩＤは再評価され、新たに計算されたＨＷＩＤが有効化時のＨＷＩＤと比較される。
【００１４】
新たに計算されたＨＷＩＤと有効化時のＨＷＩＤとが、両ＨＷＩＤが合致するか否かを判定するため比較されるとき、その比較には時間ベクトルと重みベクトルが使用される。構成要素に対する時間ベクトルの値は、新たに計算されたＨＷＩＤが有効化時のＨＷＩＤと事実上合致するか否かを判定する際に、考慮されるかどうかを決めるものである。構成要素に対する重みのベクトルの値は、新たに計算されたＨＷＩＤが有効化時のＨＷＩＤと事実上合致するか否かを判定する際に、その構成要素についての合致に対し与えられる重みを決めるものである。
【００１５】
本発明の他の特徴および実施形態は以下に述べられる。
【発明を実施するための最良の形態】
【００１６】
本発明による一般的な透明性のある先進的な対応付けを提供するシステムおよび方法は、以下に添付される図面を参照してさらに説明される。
概要
一実施形態においては、現在のハードウエア識別子が計算される。考慮されるべき一連の構成要素タイプの中の各構成要素タイプに対して、そのタイプの構成要素が問い合わせを受ける。一実施形態においては、その各問い合わせ結果はハッシュ化され、得られた値から現在のＨＷＩＤが構成される。
【００１７】
一実施形態において、ソフトウエアに関連付けられた使用許諾データファイルには有効化時のＨＷＩＤ、時間ベクトル、重みベクトル、および閾値数値が格納される。そのソフトウエアの使用を許可するため、そのコンピュータシステムの現在のＨＷＩＤが有効化時のＨＷＩＤと事実上合致しなければならない。時間ベクトル、重みベクトル、および閾値数値は事実上合致しているか否かの判定のため使用される。
【００１８】
現在のＨＷＩＤが有効化時のＨＷＩＤと事実上合致しているか否かの判定のため、各構成要素のタイプについて、そのタイプの構成要素に対する格納された各ハッシュ化値は、そのタイプの現在の各構成要素に対するハッシュ化値と比較される。一実施形態において、比較照合得点（ｍａｔｃｈｉｎｇ  ｓｃｏｒｅ）は全体にわたる比較に対して計算される。合致するということは、格納されているＨＷＩＤが計算された時点において、そのシステムに存在した構成要素が、依然としてそのシステムに存在するということを意味する。このような合致が得られると、その比較に対する比較照合得点が歩進される。比較照合得点が閾値数値より大または等しいと、現在のＨＷＩＤが有効化時のＨＷＩＤと事実上合致しているということになる。
【００１９】
重みベクトルは、各構成要素のタイプについて、その各構成要素タイプが合致したときに与えられるべき重みを意味する。ある構成要素タイプについての１つの合致により比較照合得点が歩進される場合には、その構成要素タイプについての重み値だけ比較照合得点が歩進されることになる。
【００２０】
時間ベクトルもまた格納されたＨＷＩＤと関連付けられる。各構成要素のタイプについて、時間ベクトルは満了期間を示すことができる。満了期間が経過した後は、構成要素についての合致が得られなくとも、比較照合得点はその重み値だけ歩進される。このようにして、異なる構成要素について、異なる重みを割り付けることが可能で、かつハードウエアの変更に対しさらに柔軟に許容できるＨＷＩＤ方式が、コンピュータシステムにおいて提供される。別の実施形態においては、時間ベクトルのみが使用される。また、他の実施形態においては、重みベクトルのみが使用される。
【００２１】
例示的なコンピュータ処理装置
図１および以下の説明は、本発明が実施されるにふさわしいコンピュータ処理環境の簡潔な一般的記述を提供することを意図している。しかしながら上記したように、ハンドヘルド、携帯型、他のすべての種類のコンピュータ処理装置およびコンピュータ処理器具が、本発明に関連して使用されることが考えられると理解すべきである。したがって、以下では汎用コンピュータについて述べられるが、これは単なる一例であり、本発明はネットワークとバスとの間の相互運用性と相互動作性を有するシンクライアント（thin client）のような、他のコンピュータ処理装置でも実施することができる。また、極めて少ない最小限度のクライアント資源だけが関係する、ネットワーク化されたホスティッドサービス（ｈｏｓｔｅｄ  ｓｅｒｖｉｃｅ）の環境、たとえば、クライアント装置が電気製品、または他のコンピュータ処理装置および器具などに置かれた物体のように、単にネットワークとバスとに対するインタフェースの役をするだけのネットワーク化された環境、においても、本発明を実施することができる。本質的には、データが格納され、または、引き出されるすべての場所が、本発明に従う動作のための望ましく適切な環境になる。
【００２２】
必須条件ではないが、本発明は、装置または器具のためのサービスの開発者が使用するため、ＯＳ（Operating System）により実施することができ、および／または本発明に従って動作するアプリケーションソフトウエアに含めることができる。ソフトウエアは、クライアントワークステーション、サーバ、および他の装置、のような１または複数のコンピュータにより実行されるプログラムモジュールのように、一般にコンピュータで実行可能な命令に関連して述べられることが多い。一般には、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造、および同様なものを含み、特定の処理を行い、また抽象的なデータ形式を満足させる。一般的には、プログラムモジュールの機能性は種々の実施形態において望まれるように結合され、または分散されるであろう。さらに、当業者は本発明が他のコンピュータ構成においても実行できることを理解するであろう。本発明を使用するために適当な他の周知のコンピュータシステム、環境、および／または構成には、ＰＣ（Personal Computer）、現金自動支払い機（ＡＴＭ：Automated Teller Machine）、サーバコンピュータ、ハンドヘルドまたはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム可能な家電製品、ネットワークＰＣ、器具、照明、環境制御要素、ミニコンピュータ、大型汎用コンピュータ、および同様なものが含まれるが、これらに限定されるものではない。また、本発明は、通信ネットワークとバス、または他の伝送媒体を通して結合された遠隔処理装置により処理が為される、分散コンピュータ処理環境においても実施することができる。分散コンピュータ処理環境においては、プログラムモジュールはローカルと遠隔の両方の、メモリー記憶装置を含むコンピュータ記憶媒体に位置し、クライアントノードがサーバノードとして代わりに振る舞う場合がある。
【００２３】
このように、図１は本発明が実施されるに適当なコンピュータ処理システム環境１００の一例を示す。上記で明確にしたように、このコンピュータ処理システム環境１００は適切なコンピュータ処理システム環境の一例であるに過ぎず、本発明の使用または機能性の範囲に関するどんな制限をも示唆することを意図したものではない。さらに、このコンピュータ処理システム環境１００は、この例示的な動作環境１００に示した構成要素のどの１つまたはその組み合わせに対しても依存性または関連性を有する、と理解されるべきではない。
【００２４】
図１に示すように、本発明が実施されるための例示的なシステムはコンピュータシステム１１０の形態の汎用コンピュータ処理装置を含む。コンピュータシステム１１０の構成要素として、処理ユニット１２０，システムメモリー１３０，およびシステムメモリーを含むシステムの種々の構成要素を処理ユニット１２０に結合する、システムバス１２１が含まれるが、これに限定されるものではない。システムバス１２１は、メモリーバスまたはメモリー制御器、周辺バス、および種々のバス構造の任意のものを用いるローカルバスを含む種々のタイプのバスアーキテクチャのうちの任意の形をとる。このアーキテクチャの例としては、限定するものではないが、ＩＳＡ（Industry Standard Architecture）バス、ＭＣＡ（Micro Channel Architecture）バス、ＥＩＳＡ（Enhanced ISA）バス、ＶＥＳＡ（Video Electronics Standards Association）ローカルバス、およびＰＣＩ（Peripheral Component Interconnect）バス（Mezzanineバスとしても知られている）が含まれる。
【００２５】
コンピュータシステム１１０は一般的には種々のコンピュータで読み取り可能な媒体を含む。コンピュータで読み取り可能な媒体は、コンピュータシステム１１０がアクセスすることができ、揮発性、および不揮発性の両方の、着脱可能、および固定式の媒体を含む、任意の入手可能な媒体であり得る。例として、限定するものではないが、コンピュータで読み取り可能な媒体は、コンピュータの記憶媒体および通信媒体を備える場合がある。コンピュータの記憶媒体は揮発性、および不揮発性の、着脱可能、および固定式の媒体を含み、コンピュータで読み取り可能な命令、データ構造、プログラムモジュール、または他のデータのような情報の蓄積のために任意の方法または技術により実現される。コンピュータの記憶媒体には、限定するものではないが、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）、フラッシュメモリーまたは他のメモリー技術、ＣＤＲＯＭ（Compact Disk Read Only Memory）、ＤＶＤ（Digital Versatile Disk）または他の光学的ディスク記憶媒体、磁気カセット、磁気テープ、磁気ディスク記憶または他の磁気記憶装置、または他の任意の記憶媒体が含まれ、必要な情報を格納するために使用され、コンピュータシステム１１０によりアクセスされる。通信媒体は一般的には、コンピュータで読み取り可能な命令、データ構造、プログラムモジュール、または他のデータを搬送波または他の伝達機構のような変調されたデータ信号に具現化し、任意の情報伝達媒体を含む。用語「変調されたデータ信号」は、１または複数の特性値群を有する信号、または信号の中の情報を符号化するべく変形させた信号を意味する。例として、限定するものではないが、通信媒体は有線ネットワークまたは直接配線接続のような有線の媒体、および音響、ＲＦ、赤外線、その他無線媒体のような無線媒体を含む。上記の任意の組み合わせもまたコンピュータで読み取り可能な記録媒体の範囲に含まれるべきである。
【００２６】
システムメモリー１３０は、ＲＯＭ１３１、およびＲＡＭ１３２のような、揮発性および／または不揮発性メモリーの形態のコンピュータ記憶媒体を含む。基本入出力システム（ＢＩＯＳ）１３３は一般的にはＲＯＭ１３１に格納され、起動の間などにコンピュータシステム１１０の中の要素間の情報を転送する役を担う基本的なルーチンより構成される。ＲＡＭ１３２は一般的には処理ユニット１２０により直ちにアクセスが可能な、および／または現に動作させられているデータおよび／またはプログラムモジュールを含む。例として、限定するものではないが、図１はオペレーティングシステム１３４、アプリケーションプログラム１３５，他のプログラムモジュール１３６，およびプログラムデータ１３７を示す。
【００２７】
またコンピュータシステム１１０は他の着脱可能／固定式の、揮発性／不揮発性のコンピュータ記憶媒体を含む場合がある。図１は単なる例として、固定式、不揮発性の磁気媒体から読み出し、またそこへ書き込むハードディスク駆動装置１４１，着脱可能、不揮発性の磁気ディスク１５２から読み出し、またそこへ書き込む磁気ディスク駆動装置１５１，および着脱可能、不揮発性の、ＣＤ−ＲＯＭまたは他の光学媒体のような、光学ディスク１５６から読み出し、またそこへ書き込む、光学ディスク駆動装置１５５を示す。例示的な動作環境において用いられ得る他の着脱可能／固定式の、揮発性／不揮発性のコンピュータ記憶媒体としては、磁気テープカセット、フラッシュメモリーカード、ＤＶＤ、ディジタルビデオテープ、半導体ＲＡＭ、半導体ＲＯＭ、および同様なものが含まれるが、これらに限定されるものではない。ハードディスク駆動装置１４１は一般的にはインタフェース１４０のような、固定式メモリーインタフェースを通してシステムバス１２１に接続され、磁気ディスク駆動装置１５１および光学ディスク駆動装置１５５は一般的にはインタフェース１５０のような、着脱可能メモリーインタフェースを通してシステムバス１２１に接続される。
【００２８】
上記し、図１に示した駆動装置およびその関連する記憶媒体はコンピュータシステム１１０のためのコンピュータで読み取り可能な命令、データ構造、プログラムモジュール、または他のデータの記憶装置を提供する。たとえば、図１において、ハードディスク駆動装置１４１はオペレーティングシステム１４４，アプリケーションプログラム１４５，他のプログラムモジュール１４６，およびプログラムデータ１４７を格納するとして示される。これらの構成要素はオペレーティングシステム１３４、アプリケーションプログラム１３５，他のプログラムモジュール１３６，およびプログラムデータ１３７と同一、または別物のいずれでもあり得ることに注意して下さい。ここでは、少なくとも異なるコピーであることを示すため、オペレーティングシステム１４４，アプリケーションプログラム１４５，他のプログラムモジュール１４６，およびプログラムデータ１４７というように異なる番号を与えている。キーボード１６２および、一般にマウス、トラックボール、またはタッチパッドと呼ばれる指示装置１６１のような入力装置を通してユーザはコンピュータシステム１１０にコマンドや情報を入力することができる。他の入力装置（図示されていない）としてはマイクロホン、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナ、または同様なものが含まれ得る。これらおよびその他の入力装置はしばしばシステムバス１２１に結合されたユーザ入力インタフェース１６０を通して処理ユニット１２０に接続されるが、パラレルポート、ゲームポート、またはＵＳＢ（Universal Serial Bus）のような他のインタフェースおよびバス構成で接続されることがある。ノースブリッジのようなグラフィクインタフェース１８２もまたシステムバス１２１に接続されることがある。ノースブリッジは、ＣＰＵまたはホスト処理ユニット１２０と通信するチップセットであり、ＡＧＰ（Accelerated Graphics Port）通信のための役割を担う。１または複数のＧＰＵ（Graphics Processing Unit）１８４はグラフィクインタフェース１８２と通信することができる。このため、ＧＰＵ１８４は、一般にレジスタ記憶装置のようなオンチップメモリーを含み、ＧＰＵ１８４はビデオメモリー１８６と通信する。しかしながら、ＧＰＵ１８４はひとつのコプロセッサ（coprocessor）の単なる一例であり、このように種々のコプロセッシング装置がコンピュータシステム１１０に含まれ得る。また表示器１９１または他の型の表示装置がビデオインタフェース１９０のようなインタフェースを経由してシステムバス１２１に接続され、順番にビデオメモリー１８６と通信する場合がある。またコンピュータシステムは、表示器１９１に加えて、出力周辺インタフェース１９５を通し接続される、スピーカー１９７およびプリンター１９６のようなその他の周辺出力装置を含む場合がある。
【００２９】
コンピュータシステム１１０は、遠隔コンピュータ１８０のような１または複数の遠隔コンピュータへの論理的接続を用いて、ネットワーク化され、または分散化された環境で稼働する場合がある。遠隔コンピュータ１８０にはＰＣ、サーバ、ルータ、ネットワークＰＣ、ピアー装置、または他の共通ネットワークノードがなり得る。そして、一般的には、コンピュータシステム１１０に関連して上述された多くの、またはすべての要素が含まれる場合があるが、図１ではメモリー記憶装置１８１のみが示されている。図１で描かれている論理的接続はＬＡＮ（Local Area Network）１７１，およびＷＡＮ（Wide Area Network）１７３であるが、また他のネットワーク／バスを含む場合がある。このようなネットワーク化された環境は家庭、事務所、企業内コンピュータネットワーク、イントラネット、およびインターネットにおいて一般的である。
【００３０】
ＬＡＮでネットワーク化された環境において使用される場合は、コンピュータシステム１１０は、ネットワークインタフェースまたはネットワークアダプタ１７０を通して、ＬＡＮ１７１に接続される。ＷＡＮでネットワーク化された環境において使用される場合は、コンピュータシステム１１０は、一般的には、インターネットのようなＷＡＮ１７３を介して通信を確立するため、モデム１７２または他の手段を含む。モデム１７２は、内蔵または外付けであっても良く、ユーザ入力インタフェース１６０、または他の適切な仕組みを通して、システムバス１２１に接続される。ネットワーク化された環境においてコンピュータシステム１１０に関連して描かれているプログラムモジュール、またはその部分は遠隔メモリー記憶装置に格納される場合がある。例として、限定するものではないが、図１はメモリー記憶装置１８１に存在するものとして遠隔アプリケーションプログラム１８５を示す。ここで示されたネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立する他の手段が用いられる場合があることは理解されよう。
【００３１】
個人用コンピュータ処理とインターネットの統合に鑑みて、種々の分散化されたコンピュータ処理の枠組みが開発されており、かつ開発されつつある。個人およびビジネスユーザは、アプリケーションソフトウェアおよびコンピュータ処理装置のための、継ぎ目のない相互に動作可能なそしてウェブ技術を用いた（Web-enabled）インタフェースを等しく提供されており、コンピュータ処理の状況はますますウェブブラウザまたはネットワーク志向になりつつある。
【００３２】
たとえば、マイクロソフト社の．ＮＥＴプラットフォームは、サーバ、ウェブに基づくデータ記憶装置のようなビルディングブロック型のサービス、およびダウンロード可能なデバイスソフトウェアを含む。ここでは例示的な実施形態はコンピュータ処理装置に存在するソフトウェアに関連して述べられるが、本発明の１または複数の部分はまた、プロセッサ、表示装置、および要求オブジェクトのいずれかの間での、オペレーティングシステム、ＡＰＩ（Application Programming Interface）、または「仲介人（middle man）」オブジェクトを通して実施される場合がある。たとえば、本発明に従う動作は、．ＮＥＴの言語およびサービスに支援され、または全面的にこれを通してアクセスすることにより、および他の分散化されたコンピュータ処理の枠組みにおいても同様に、為される場合がある。
【００３３】
使用許諾の処理
使用許諾の処理はユーザがコンピュータシステム１１０で動かすためにソフトウェア製品を購入したときまたはその後に生起する。たとえば、ソフトウェア製品はＤＶＤ、ＣＤＲＯＭ、またはフロッピー（登録商標）ディスクのような、可搬型のコンピュータで読み取り可能な記憶媒体に格納されたソフトウェアプログラムを有するシュリンクラップされた製品である場合がある。またソフトウェア製品は電子的にネットワークを経由して伝達される場合がある。ユーザはソフトウェア製品をコンピュータシステム１１０にロードする。しかしながら、ソフトウェアは使用許諾データなしでは動作できない場合がある。この使用許諾データを受け取るため、ユーザは使用許諾情報センターのような、そのソフトウェアの使用許諾を与える人に信用されているエンティティに連絡することにより、そのソフトウェアを有効化せねばならない。この情報センターは、たとえば、その製品のメーカ、または認定された第３者である。有効化手順により、顧客は必要な使用許諾データを提供され、その顧客はソフトウェア製品を有効化し、特定のコンピュータシステムでインストールしそして使用することができるようになる。
【００３４】
情報センターとの連絡は、コンピュータシステム１１０からインターネットのようなネットワークを経由し、またはダイアルアップ接続により、情報センターのコンピュータに対して行われ、有効化が成功すると、そこからコンピュータシステム１１０に使用許諾データが送られることになる。あるいは、ソフトウェア製品のグラフィックなユーザインタフェース（ＵＩ）の対話ウィンドウを用いて、ユーザが情報センターのサービス員を呼ぶことにより有効化の支援を受けられる。ＵＩウィンドウはユーザがサービス員に伝える情報を表示し、サービス員から使用許諾情報が得られたときにこれを入れるための記入欄を含み、この情報はソフトウェアを使用できるようにするための使用許諾データを創生するために使用される。
【００３５】
時間および重みに基づく柔軟で耐性のあるハードウエアＩＤの提供
一実施形態において、ソフトウェアに関連付けられた使用許諾ファイルには、有効化時のＨＷＩＤ、時間ベクトル、重みベクトル、および閾値数値が含まれる。使用許諾が審査される際に、現在のハードウエアＩＤ（ＨＷＩＤ）が計算される。考慮されるべき一連の構成要素タイプの中の各構成要素タイプに対して、そのタイプの構成要素が問い合わせを受ける。各問い合わせ結果はハッシュ化される。得られた値が現在のＨＷＩＤを構成する。ソフトウェアの使用を許可するため、コンピュータシステムの現在のＨＷＩＤは有効化時のＨＷＩＤに事実上合致しなければならない。事実上合致しているか否かを判定するために時間ベクトル、重みベクトル、および閾値数値が用いられる。
【００３６】
一実施形態においては、図２に示されるように、使用許諾データ２００は、有効化時ＨＷＩＤ２１０、重みベクトル２２０、時間ベクトル２３０、および閾値数値２４０を含む。この情報は現在のシステムのＨＷＩＤが現在のシステムでそのソフトウェアが使用されることを許可することが容認できることを示すか否かを動作時に判定するために用いられる。
【００３７】
一実施形態においては、図１に示すように、ＨＷＩＤを計算するために使用される構成要素タイプは、サウンドカード（出力周辺インタフェース１９５に位置する）、ネットワークカード（ネットワークインタフェース１７０に位置する）、ＢＩＯＳ１３３，ＣＤＲＯＭ駆動装置１５５、表示装置アダプタ（ＧＰＵ１８４を備える）、磁気ディスク駆動装置１５１，ＳＣＳＩアダプタ、ディスクアダプタ、処理ユニット１２０、およびＲＡＭ１３２である。もちろん、他の構成要素も本発明の精神および範囲から外れることなく使用することができ、これらの構成要素の１または複数の任意の組み合わせも用いることができる。
【００３８】
ＨＷＩＤが計算される際に、ＰｎＰの問い合わせ、または他の問い合わせが、これらの構成要素の識別子を判定するために実行される。処理ユニット１２０のように一部のものは通し番号により識別することができる。ＢＩＯＳ１３３のように他のものは、たとえばＲＯＭ１３１に格納されたＢＩＯＳの最初の２キロバイトというように、ＢＩＯＳ１３３の部分により識別することができる。たとえばＲＡＭ１３２は、その全体記憶容量により識別することができる。
【００３９】
さらなる例として、ネットワークカードはＭＡＣアドレスにより識別することができる。ＭＡＣアドレスはネットワークカードを識別する一意なアドレスである。ＬＡＮ、または他のネットワークについて、ＭＡＣアドレスはコンピュータシステムの一意なハードウエア番号として用いられる。コンピュータシステムがインターネットに接続される際に、そのコンピュータシステムのための正しいＩＰアドレスを索引するために、この番号が用いられる。ネットワークカードのＭＡＣアドレスは一意な番号であり、その製造メーカによりネットワークカードに焼き付けられる。アドレスの一部分は各ネットワークカード製造メーカに割り当てられ、その部分はそのネットワークカードに用いられるチップの中に直接書き込まれている。
【００４０】
図示されるように、有効化時ＨＷＩＤ２１０は、各構成要素タイプに対し、有効化時に存在したそのタイプの構成要素の数を含む。また、有効化時ＨＷＩＤ２１０は各構成要素に対する値を含む。一実施形態においては、ハードウエア識別子はハッシュ化されハッシュ値が算出され、ＨＷＩＤに含められる。たとえば図２では、有効化時に４台のＣＤＲＯＭが取り付けられている。一実施形態においては、各構成要素に対するハッシュ値はＨＷＩＤに格納される。たとえば、ｃｄｒｏｍ１，ｃｄｒｏｍ２，ｃｄｒｏｍ３，およびｃｄｒｏｍ４が例示的な有効化時ＨＷＩＤ２１０におけるその４台のＣＤＲＯＭについてのハッシュ化された識別子である。
【００４１】
一実施形態において、構成要素識別子をハッシュ化するために使用されるハッシュ函数はモジュロ函数である。たとえば、ＨＷＩＤ２１０におけるＢＩＯＳ構成要素を表すハッシュ値ＢＩＯＳ１はＢＩＯＳの最初の２キロバイトのモジュロ８であっても良い。またもちろん、本発明の精神および範囲から外れることなく、他の任意のハッシュ函数を使用することができる。
【００４２】
また一実施形態において、使用許諾データ２００には重みベクトル２２０、および閾値数値２４０が含まれる。システムに存在する特定の構成要素タイプの各構成要素に問い合わせて新たに計算されたＨＷＩＤが、有効化時ＨＷＩＤ２１０と比較されることにより、コンピュータシステムが使用許諾データ２００に対応してソフトウェアを動作させることが許可されるか否かの判定を下すことができる。特定の構成要素タイプの現存する各構成要素に対し、問い合わせはハッシュ化されて、ハッシュ化された構成要素識別子を生成する。これらのハッシュ化された構成要素識別子は新たに計算されたＨＷＩＤに含まれる。
【００４３】
有効化時ＨＷＩＤおよび新たに計算されたＨＷＩＤは比較され、その時点までの比較照合得点合計が保持される。各構成要素タイプにつき、新たに計算されたＨＷＩＤにおけるそのタイプのある構成要素に対するいずれかのハッシュ値が有効化時ＨＷＩＤ２１０におけるその構成要素タイプに対するいずれかのハッシュ値に合致する場合には、比較照合得点が歩進される。比較照合得点が計算された後、比較照合得点が閾値数値より大または等しい場合、現在のＨＷＩＤは有効化時ＨＷＩＤと事実上合致することになる。他の実施形態においては、比較照合得点が歩進されるためには、両ＨＷＩＤが厳密に一致せねばならない。他の実施形態においては、有効化時ＨＷＩＤにおいて存在した所定の構成要素タイプに対し比較照合得点が歩進されるためには、新たに計算されたＨＷＩＤにおいて、そのタイプの各構成要素が存在しなければならない。また構成要素タイプに対するＨＷＩＤ同士間の合致を判定する他の手段も考えられ、本発明の精神と範囲から外れることなく適用され得る。
【００４４】
重みベクトル２２０は歩進の量を制御する。たとえば、ＢＩＯＳ識別子が合致すると、比較照合得点が３だけ歩進され、一方ＣＤＲＯＭ識別子が合致すると、比較照合得点が１だけ歩進されるであろう。
【００４５】
加えて、一実施形態において、時間ベクトル２３０が比較照合得点を計算する際に適用される場合がある。ある構成要素について、時間ベクトル２３０がその構成要素についての値を含む場合には、両ＨＷＩＤの比較に際しその構成要素を使用する満了期限を示す。たとえば、図２に示される例示的な使用許諾データ２００において、時間期間が一部の構成要素について格納されている。例示的な使用許諾データ２００においては、ＣＤＲＯＭ構成要素についての格納されている時間期間は２年である。したがって、使用許諾以降２年が経過すれば、コンピュータシステムに現在存在するＣＤＲＯＭに対応する値が不一致な値でも、比較照合得点に否定的に影響すべきではない。このため、有効化時ＨＷＩＤにおいて格納された値（すなわち、ｃｄｒｏｍ１，ｃｄｒｏｍ２，ｃｄｒｏｍ３，およびｃｄｒｏｍ４）に識別子が合致するＣＤＲＯＭがコンピュータシステムに見付かるか否かにかかわらず、比較照合得点は１（重みベクトル２２０の値）だけ歩進されるであろう。他の実施形態においては、比較照合得点が比較照合によるのでなく期限満了により歩進される場合は、比較照合得点は（重みベクトル２２０の値に拘わらず）予め特定された値だけ歩進される。
【００４６】
期限満了の発生を認識するため、使用許諾データ２００には使用許諾日を含むことができる。代替えとして、各時間ベクトル２３０の値を設定日として表現しても良い。加えて、システム時計の再設定で時間比較が無効にされないような防衛手段を実施することができる。構成要素タイプに対する時間ベクトル２３０において有効なデータが存在しない場合（一実施形態においては値がゼロに設定された場合）、その構成要素は比較照合得点を決定するために常に使用される。たとえば、時間ベクトル２３０ではＭＡＣ，ＣＤＲＯＭ，および表示装置構成要素のみに期限切れがあり、他の構成要素にはない。
【００４７】
一実施形態においては、使用許諾データの中に時間ベクトルはなく、重みベクトルのみが含まれる。この実施形態においては、２つのＨＷＩＤを比較するため、各構成要素が評価対象とされ、比較照合得点は、合致したときにのみ歩進される。図３に示されるように、ステップ３１０において、システムの関連する各構成要素についての現在の識別情報が収集される。ステップ３２０において、現在の識別情報は、有効化時ＨＷＩＤからの格納された構成要素識別情報と比較される。ハッシュ函数が用いられる場合、識別情報はハッシュ化され、こちらもまたハッシュ化され格納された構成要素識別情報と比較される。ステップ３３０において、所定の構成要素タイプについて合致するものがあった場合、比較照合得点が、その構成要素タイプに関連付けされた重みベクトル２２０の値だけ歩進される。そしてステップ３４０において、すべての構成要素が評価された後、比較照合得点が比較照合得点の閾値数値と比較され、比較照合が受け容れられるか否かが判定される。この判断は多くの方法で使用され得る。たとえば、システムがソフトウェアを動作させるために使用許諾されているかを判定するために比較が為されているのであれば、比較照合が受け容れられれば、そのコンピュータシステムはそのソフトウェアを動作させることを許可される。
【００４８】
他の実施形態においては、重みベクトルではなく、時間ベクトルのみが使用許諾データ２００に含まれる。この実施形態においては、構成要素の合致が見つけられた場合には、比較された構成要素のタイプに拘わらず、比較照合得点として同一の値が加算される。しかしながら、構成要素タイプに対し特定された時間値が経過した場合、合致が見出されなくとも、比較照合得点は歩進されるであろう。図４に示されるように、ステップ４１０において、ＨＷＩＤの構成要素について、システムの関連する各構成要素についての現在の識別情報が収集される。ステップ４２０において、現在の識別情報は、有効化時ＨＷＩＤからの格納された構成要素識別情報と比較される。ステップ４３０において、所定の構成要素タイプについて合致するものがあるか、またはその構成要素タイプについて満了期間が経過した場合に、比較照合得点が歩進される。上述と同様に、ステップ４４０において、比較照合得点が比較照合得点の閾値数値と比較され、比較照合が受け容れられるか否かが判定される。
【００４９】
一実施形態において、比較照合得点は使用許諾データ２００に含まれる。他の実施形態においては、比較照合得点は事実上の合致が存在するか否かの計算の中に固定的に組み込まれている。このように、使用許諾データ２００は、時間ベクトルのみ、重みベクトルのみ、または時間および重みベクトルの両方を含む場合があり、かつ任意のこれらの組み合わせにおいて比較照合得点を含む場合、または代替えとして、事実上の合致が存在するか否かの計算の中に固定的に組み込まれている比較照合得点に依存する場合がある。
【００５０】
時間ベクトル、重みベクトル、またはそれら両方を用いることにより、使用許諾はもはや受け身のデータではなく、使用許諾比較データとしての役割を演じる。使用許諾者または情報センターは、ユーザの挙動に関しより多くの管理をすることが可能となる。たとえば、使用許諾者はユーザを調査し、彼等のかなりの割合がビデオカードを２年ごとに交換していると思われることを見出すかも知れない。このことは、使用許諾者に、新しい使用許諾ではビデオカードに対する時間値を２年に設定させることになるかも知れない。後に、新しいビデオカードが市場に６ヶ月以内に届けられ、ほとんどのユーザが彼等のビデオカードをそのときに交換しようとしていることが判明するかも知れない。この場合は、使用許諾者は新しい使用許諾では時間値を６ヶ月に設定するかも知れない。ユーザがＣＤＲＯＭを何時交換するかについては大きな分散があるが、他の時間値は大変正確にユーザの挙動を表現すると判定されるかも知れない。このことは、使用許諾者に、ＣＤＲＯＭについての重みベクトルの値を、他の構成要素についての重みベクトルの値より低く設定させることになるかも知れない。
【００５１】
一実施形態においては、重みベクトルはユーザに関する情報に生じた変化に対応するために使用される。ユーザがソフトウェアに対して第１の使用許諾を取得する。次に、たとえば、評価期間が終了したとき、ユーザがソフトウェアに対して第２の使用許諾を取得する。第１の有効化時ＨＷＩＤは第２の有効化時ＨＷＩＤと比較され、構成要素についての重み値は適切に調整される。かような一実施形態においては、交換された構成要素は、交換されなかった構成要素に比較して、重みを増加される。このことは、最近交換された構成要素は再びは交換されないであろうという仮定を反映する。もう一つのかような実施形態においては、交換された構成要素は、交換されなかった構成要素に比較して、重みを削減される。このことは、ユーザは、ユーザが過去に交換した構成要素を試験し、または交換しがちであるという仮定を反映する。
【００５２】
結論
上記したように、本発明の例示的な実施形態は種々のコンピュータ処理装置、およびネットワーク構造に関連し述べられているが、基本となる概念はハードウェアＩＤを実施することが好ましい任意のコンピュータ処理装置またはシステムに適用することができる。このように、本発明の方法および方式は種々のアプリケーションおよび装置に適用することができる。たとえば、本発明のアルゴリズムは、装置上の別個のオブジェクトとして、他のオブジェクトの部分として、サーバからのダウンロード可能なオブジェクトとして、装置またはオブジェクトおよびネットワークの間の「仲介人」として、分散化されたオブジェクトとして、等として提供され、コンピュータ処理装置のＯＳに適用することができる。ここでは種々の選択の代表として例示的なプログラミング言語、名称、および例が選択されているが、これらの言語、名称、および例は限定することを意図したものではない。当業者であれば、本発明により達成できるものと同一の、類似の、または等価なシステムおよび方法を実現するオブジェクト符号を提供する無数の方法があることを理解するであろう。
【００５３】
ここに述べられる種々の技術はハードウェアまたはソフトウェアあるいは、適切な場合には、両者の組み合わせと関連して実施することができる。このように、本発明の方法および装置、あるいはその態様または部分は、フロッピー（登録商標）ディスク、ＣＤ−ＲＯＭ、ハードディスク駆動装置、または他の任意の機械で読み取り可能な記憶媒体のような具体的な媒体の中に具現化されたプログラム符号（すなわち、命令）となって表され、そのプログラム符号がコンピュータのような機械により読み込まれ、実行された際に、その機械が本発明を実施するための装置になる。プログラム可能なコンピュータ上でのプログラム符号の実行の場合には、そのコンピュータ処理装置は一般的にはプロセッサ、プロセッサにより読み取り可能な記憶媒体（揮発性および不揮発性メモリー、および／または記憶要素を含む）、少なくとも１つの入力装置、および少なくとも１つの出力装置を含むであろう。たとえば、データ処理ＡＰＩまたは同様なものを通して、本発明の信号処理サービスを利用することができる１または複数のプログラムは、コンピュータと通信するために、好ましくはハイレベルプロシージャ型またはオブジェクト指向型プログラム言語により実施される。しかしながら、プログラムは、もし望まれるなら、アセンブラ、すなわち機械語で実現することもできる。いずれの場合においても、言語はコンパイラ言語またはインタプリタ言語であり、かつハードウェアでの実施と結合される場合がある。
【００５４】
また本発明の方法および装置は、プログラム符号の形において具現化された通信を通し実施され、その通信は、電子配線またはケーブルを通し、光ファイバを通し、または他の任意の伝送形態に依るような、何らかの伝送媒体を通して伝達され、そのプログラム符号が機械により受信され、読み込まれ、実行された際に、ＥＰＲＯＭ，ゲートアレー、ＰＬＤ（Programmable Logic Device）、クライアントコンピュータ、ビデオレコーダ、または同様なもの、または上記した一般的な実施形態で述べられた信号処理能力を有する受信装置のようなものが本発明を実施するための装置になる。汎用プロセッサ上で実施される際に、プログラム符号がプロセッサと結合され、本発明の機能を実施するために動作する一意な装置を提供する。加えて、本発明に関連して用いられる任意の記憶技術は常にハードウェアおよびソフトウェアの結合となるであろう。
【００５５】
本発明が種々の図面の好ましい実施形態に関連して述べられたが、理解されるように、本発明と同一の機能を実現するため、本発明から逸脱することなく、他の同様な実施形態を使用することができ、または上述した実施形態について変更および追加を為すことができる。さらに、特に無線でネットワーク化された多くの装置のような、携帯装置のＯＳおよび他の特定な応用のためのＯＳを含む種々のコンピュータプラットフォームが急増しつつあると考えられる。さらにまた、本発明は複数のプロセッサチップまたは装置において、またはまたがって実施することができ、記憶装置が同様に複数の装置にまたがって使用される場合がある。したがって、本発明は、どれか単一の実施形態に限定されるべきではなく、むしろ添付された特許請求の範囲にしたがって幅および範囲を解釈されるべきである。
【図面の簡単な説明】
【００５６】
【図１】本発明にかかる、例示的な、限定的でないコンピュータ処理システムを示すブロック図である。
【図２】本発明の一実施形態における、使用許諾データを示すブロック図である。
【図３】蓄積された各構成要素の識別情報を現在の構成要素の識別情報と、重みベクトルを用いて比較する方法を示すブロック図である。
【図４】蓄積された各構成要素の識別情報を現在の構成要素の識別情報と、時間ベクトルを用いて比較する方法を示すブロック図である。
【符号の説明】
【００５７】
１００  コンピュータ処理システム環境
１１０  コンピュータシステム
１２０  処理ユニット
１２１  システムバス
１３０  システムメモリー
１３１  ＲＯＭ
１３２  ＲＡＭ
１３３  ＢＩＯＳ
１３４  ＯＳ
１３５  アプリケーションプログラム
１３６  他のプログラムモジュール
１３７  プログラムデータ
１４０  固定式・不揮発性メモリーインタフェース
１４１  ハードディスク駆動装置
１４４  ＯＳ
１４５  アプリケーションプログラム
１４６  他のプログラムモジュール  
１４７  プログラムデータ
１５０  着脱可能・不揮発性メモリーインタフェース
１５１  磁気ディスク駆動装置
１５２  着脱可能・不揮発性磁気ディスク
１５５  光学ディスク駆動装置
１５６  光学ディスク
１６０  ユーザ入力インタフェース
１６１  指示装置
１６２  キーボード
１７０  ネットワークインタフェース
１７１  ＬＡＮ
１７２  モデム
１７３  ＷＡＮ
１８０  遠隔コンピュータ
１８１  メモリー記憶装置
１８２  グラフィクインタフェース
１８４  ＧＰＵ
１８５  遠隔アプリケーションプログラム
１８６  ビデオメモリー
１９０  ビデオインタフェース
１９１  表示器
１９５  出力周辺インタフェース
１９６  プリンター
１９７  スピーカー
２００  使用許諾データ
２１０  有効化時のＨＷＩＤ
２２０  重みベクトル
２３０  時間ベクトル
２４０  閾値数値
【図１】
2004213676.tif 000003
【図２】
2004213676.tif 000004
【図３】
2004213676.tif 000005
【図４】
2004213676.tif 000006
【外国語明細書】
2004213676.tif 000007
2004213676.tif 000008
2004213676.tif 000009
2004213676.tif 000010
2004213676.tif 000011
2004213676.tif 000012
2004213676.tif 000013
2004213676.tif 000014
2004213676.tif 000015
2004213676.tif 000016
2004213676.tif 000017
2004213676.tif 000018
2004213676.tif 000019
2004213676.tif 000020
2004213676.tif 000021
2004213676.tif 000022
2004213676.tif 000023
2004213676.tif 000024
2004213676.tif 000025
2004213676.tif 000026
2004213676.tif 000027
2004213676.tif 000028
2004213676.tif 000029
2004213676.tif 000030
2004213676.tif 000031
2004213676.tif 000032
2004213676.tif 000033
2004213676.tif 000034
2004213676.tif 000035
2004213676.tif 000036
2004213676.tif 000037
2004213676.tif 000038
2004213676.tif 000039
2004213676.tif 000040
2004213676.tif 000041
2004213676.tif 000042
2004213676.tif 000043