(57)【要約】  セキュリティ関連のアプリケーション、とりわけセキュアな領域へのアクセス制御又は車両のセキュリティのための使用認証装置であって、前記装置は、一方向関数Ｆ（ｖｉ，ｃｏｎｓｔ）の繰り返しの利用によって、ｉ＝０，・・・，Ｎについて連続する関数値ｖｉ＋１＝Ｆ（ｖｉ，ｃｏｎｓｔ）のシーケンスを呈する連続する交番するユーザコード情報を生成するユーザ操作されるキーユニットを有し、前記関数値は、前記連続するユーザコード情報を生成するために、前記シーケンスの構成と逆の順序で利用され、前記装置は更に、前記キーユニットから受信された前記ユーザコード情報に依存する実際の認証情報を決定し、当該実際の認証情報をアプリケーションに保存された目標の認証情報と比較することにより使用認証検査処理を実行し、前記比較の結果に依存して利用解放情報を生成する、アプリケーション側の処理ユニットを有し、前記目標の認証情報は、前の正の使用認証動作の間に処理されたユーザコード情報から変換された関数値ｖを持つ装置についての説明が為される。本発明の特徴は、少なくとも１つの支持点と１つの中間値とを持つ一定の数Ｇのレベルが提供され、該レベルから、一定の数の反復的な関数値の計算が、一方向関数Ｆ（ｖｉ，ｃｏｎｓｔ）によって各レベルにおいて実行され、Ｇ＝Ｌ（Ｎ）／ｂ個のレベルがあり、ここでＮは開始値であり、Ｌ（Ｎ）は二元システムにおいてＮを表すために必要なビットの数であり、ｂは基底であることである。
2007514361.tif 000002
【特許請求の範囲】
【請求項１】
セキュリティ関連のアプリケーション、とりわけセキュアな領域へのアクセス制御又は車両のセキュリティのための使用認証装置であって、前記装置は、
一方向関数Ｆ（ｖｉ，ｃｏｎｓｔ）の繰り返しの利用によって、ｉ＝０，・・・，Ｎについて連続する関数値ｖｉ＋１＝Ｆ（ｖｉ，ｃｏｎｓｔ）のシーケンスを持つ連続する交番するユーザコード情報を生成するユーザ側のキーユニットを有し、前記関数値は、前記連続するユーザコード情報を生成するために、前記シーケンスの構成と逆の順序で利用され、前記装置は更に、
前記キーユニットから受信された前記ユーザコード情報に依存する実際の認証情報を決定し、当該実際の認証情報をアプリケーション側の所望の認証情報と比較することにより使用認証検査処理を実行し、前記比較の結果に依存して利用解放情報を生成する、アプリケーション側の処理ユニットを有し、前記所望の認証情報は、前の正の使用認証動作の間に処理されたユーザコード情報から変換された関数値ｖｉを持つ装置において、
一定の数Ｇのレベルが提供され、該レベルから、一定の数の反復的な関数値の計算が、一方向関数Ｆ（ｖｉ，ｃｏｎｓｔ）によって各レベルにおいて実行され、
Ｇ＝｜Ｌ（Ｎ）／ｂ｜個のレベルがあり、ここでＮは開始値であり、Ｌ（Ｎ）は二元システムにおいてＮを表すために必要なビットの数であり、ｂは基底であることを特徴とする使用認証装置。
【請求項２】
各レベルに支持点ｓ（ｉ）が備えられ、ｉ＝（１，・・・，Ｇ）であることを特徴とする、請求項１に記載の装置。
【請求項３】
前記支持点ｓ（ｉ）のための値が式：
【数１】
2007514361.tif 000007
から決定されることを特徴とする、請求項２に記載の装置。
【請求項４】
負の指数を持つ支持点については関数値が計算されることができないことを特徴とする、請求項２又は３に記載の装置。
【請求項５】
パラメータｂは、使用認証毎の前記関数値の計算が最小化されるように、特定の数の支持点について適応されることを特徴とする、請求項２乃至４のいずれか一項に記載の装置。
【請求項６】
現在の支持点ｓ（ｉ）から開始して、各レベルにおいて降順で算出され、中間値として保存される、特定の数の関数値があることを特徴とする、請求項２乃至５のいずれか一項に記載の装置。
【請求項７】
或るレベルにおける前記支持点についての中間値が、当該中間値が新たな支持点として次の下のレベルに変換されると、当該レベルにおいて引き続いてリセットされることを特徴とする、請求項２に記載の装置。
【請求項８】
前記開始値はＮ＝（２ｂ）Ｇであることを特徴とする、請求項１乃至７のいずれか一項に記載の装置。
【請求項９】
前記開始値はＮ∈｛（２ｂ）Ｇ−１，・・・，（２ｂ）Ｇ−１｝であることを特徴とする、請求項１乃至７のいずれか一項に記載の装置。
【請求項１０】
前記関数値から算出された中間値を保存するための幾つかのバッファが備えられたことを特徴とする、請求項１乃至９のいずれか一項に記載の装置。
【請求項１１】
前記バッファはＦＩＦＯメモリであることを特徴とする、請求項１０に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュリティ関連のアプリケーション、とりわけセキュアな領域へのアクセス制御又は車両のセキュリティのための使用認証装置であって、前記装置は、一方向関数Ｆ（ｖｉ，ｃｏｎｓｔ）の繰り返しの利用によって、ｉ＝０，・・・，Ｎについて連続する関数値ｖｉ＋１＝Ｆ（ｖｉ，ｃｏｎｓｔ）のシーケンスを持つ連続する交番するユーザコード情報を生成するユーザ側のキーユニットを有し、前記関数値は、前記連続するユーザコード情報を生成するために、前記シーケンスの構成と逆の順序で利用され、前記装置は更に、前記キーユニットから受信された前記ユーザコード情報に依存する実際の認証情報を決定し、当該実際の認証情報をアプリケーション側の所望の認証情報と比較することにより使用認証検査処理を実行し、前記比較の結果に依存して利用解放情報を生成する、アプリケーション側の処理ユニットを有し、前記所望の認証情報は、前の正の使用認証動作の間に処理されたユーザコード情報から変換された関数値ｖｉを持つ装置に関する。
【背景技術】
【０００２】
斯かる使用認証装置は、例えばドイツ国特許出願４４１１４４９Ｃ１より知られており、該文献において記載された使用認証装置は、車両のイモビライザ（immobilizer）の一部として車両のセキュリティのため備えられる。
【０００３】
斯かる使用認証装置は、所謂交番コード（alternating code）法に基づいて動作する。該方法においては、伝送されたコード情報の傍受の後の、セキュリティ関連のアプリケーションの認証されていない利用に対するセキュリティが、使用認証がチェックされる（認証処理とも呼ばれる）度にコード情報が変更されるという事実のために向上させられる。当該コードの変更は、キー側からアプリケーション側への一方向のコード情報伝送を利用してのみ実現され得る。これにより、基本の番号又は開始値についての秘密の情報及びアルゴリズムが、キー側及びアプリケーション側の両方において守られる。ここで前記アルゴリズムに従って、シーケンシャルコード情報が前記開始値から導出される。このようにして、前記キー側で生成されたコード情報を、前記キー側で送信されたコード情報と比較することにより、使用認証がアプリケーション側でチェックされることができる。
【０００４】
一方向のコード情報伝送の目的のため、反転させられるとしてもかなりの時間的及び／又は経済的なコストを用いてのみ反転させられ得る、一方向関数Ｆ（ｖｉ，ｃｏｎｓｔ）が規定される。特に、高度な非線形ブーリアン関数又はハッシュ関数が、ここではその可能性である。開始値ｖ０に基づいて、新たな関数値が以下によって反復的に算出され得る。
ｖｉ＋１＝Ｆ（ｖｉ，ｃｏｎｓｔ）  ｉ＝（０，・・・，Ｎ）                （１）
この式の最後のみが可変パラメータであり、パラメータｃｏｎｓｔは定数及び／又は特定の指数ｉについての関数値であり、及び／又はキーユニット及びアクセス制御ユニットにのみ知られる。前記関数値は、前記使用認証ユニットのために、ｖｍａｘからｖ０まで降順で利用される。適切な実装は、ｖ０及びｖｍａｘの間の全ての関数値を昇順で算出するため、値ｖ０及びｃｏｎｓｔを必要とする。開始値ｖ０及びｃｏｎｓｔは、前記キーユニット側とセキュリティ関連のアプリケーション側との両方で知られている必要がある。
【０００５】
この点における完全さのために、前述したタイプの使用認証装置は、車両のイモビライザのみに限定されるものではなく、他の重要な用途の分野は例えば、キーが錠に対して自身を認証する必要がある全てのタイプのセキュアなエリアに対するアクセス制御システムであることは、留意されるべきである。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
一般に、多くの（例えば１００，０００個の）認証が意図される場合、キーユニットに全ての必要な値を保存することは得策ではない。従ってキーユニットは、関数Ｆの知識を用いて、式（１）及び開始値ｖ０又は幾つかの値ｖｉから、現在必要とされる出力値を算出する方法を持つ必要がある。上述の使用認証ユニットを実装するための単純なアプローチの一般的な欠点は、実行時間がかなり変動する間に、個々の連続する出力値を算出するための計算時間及び／又はメモリ容量の点でのコストである。このことが、限られた資源を持つシステムにおいて利用することを困難に、又は不可能にさえしている。メモリ容量及び計算時間の点でスケーラブルなコストを持つ技術が、このタイプのシステムには不可欠である。加えて該システムは、種々のシステムパラメータを同期させることを可能とするため、２つの連続する出力値の伝送の間の、事前に正確に定義された時間の間動作するべきである。
【課題を解決するための手段】
【０００７】
従って、最初に明示されたタイプの使用認証装置の場合には、本発明は、一定の数Ｇのレベルを提供し、一定の数の反復的な関数値の計算が、一方向関数Ｆ（ｖｉ，ｃｏｎｓｔ）によって各レベルにおいて実行され、Ｇ＝｜Ｌ（Ｎ）／ｂ｜個のレベルがあり、ここでＮは開始値であり、Ｌ（Ｎ）は二元的なシステムにおいてＮを表すために必要なビットの数であり、ｂは各反復ステップにおいて必要とされるレベルの数及び関数値の計算の数を定義するための基底であることを提案する（｜ｘ｜は、ｘ以上の最小の整数である）。
【０００８】
本発明は、上述の一方向暗号化方法を実現するために適切であり、特に、例えばＲＡＭ及びＥＥＰＲＯＭのような揮発性及び／又は不揮発性メモリ容量、及び／又はプログラム可能な又はプログラム不可能な所謂埋め込み型のコントローラのようなコンピュータ性能の点で、制限された資源を持つ装置において有利に動作する。本発明が埋め込み型低コストコントローラ（例えば自動車製造業界におけるリモートのキーレスエントリのための）に利用される場合には、実装の短い開発時間、実行時間の間のメモリ容量要件の点での本方法の一貫性、メモリ要件及び実行時間の点でのスケーラビリティ、及び実行時間の間の割り込み（例えば誘導的に操作されるキーユニットの場合の電源における割り込み）に対する頑強な応答のような、特に優れた利点がある。同様の利点は、結線された論理回路のような本発明の実装に対しても当てはまる。
【０００９】
好ましくは、各レベルについて支持点ｓ（ｉ）が提供される。ここでｉ＝（１，・・・，Ｇ）である。ここで、幾つかの関数値が所謂支持点として設定され、これら値はシステムのデフォルトであるか、又はアルゴリズムが開始する前に反復によって実際のキーユニットによって算出されるかのいずれかである。計算的な作業負荷は、レベル毎の又は特定のレベルについてのみの他の支持点によって低減させられる。
【００１０】
支持点ｓ（ｉ）のための値は、以下の式から有利に決定される。
【数２】
2007514361.tif 000003
ここでＮは、式（１）において定義される、出力値の開始値である。通常は、負の指数については関数値が算出され得ない。このことが、正の指数を持つ支持点に対しての式（２）の適用を制限する。
【００１１】
パラメータｂは好ましくは、使用認証毎の関数値の算出が最小化されるように、特定の数の支持点に対して適応されるべきである。
【００１２】
通常、現在の支持点ｓ（ｉ）から開始して、降順で各レベルにおいて算出され中間値として保存される一定数の関数値があるべきである。或るレベルにおける支持点についての中間値は、当該中間値が次の下のレベルに新たな支持点として変換されると、当該レベルにおいて連続的にリセットされるべきである。
【００１３】
いずれかの開始値Ｎを許可するために、対応する必要な中間値もまた供給されても良いし、又は開始値Ｎ＝（２ｂ）Ｇとして予め定義されていても良い。後者の場合には、本方法は（２ｂ）Ｇで開始され、指数ｉ＝Ｎまで実行される。
【００１４】
しかしながら代替として、
Ｎ∈｛（２ｂ）Ｇ−１，・・・，（２ｂ）Ｇ−１｝                          （３）
が前記開始点に適用されることも考えられ、このことは前記支持点についての式（２）の制約されない利用を可能とする。このことは、適切なシステムのデフォルトによって達成され得る。
【００１５】
前記関数値から算出される中間値を保存するための幾つかのバッファが備えられると好適であろう。中間値が保存される間の書き込み処理を減少させるため、循環的に書き込み及び読み取りが為され、従ってＦＩＦＯメモリとして設計される幾つかのバッファがレベル毎に備えられても良い。
【００１６】
本発明のこれらの及び他の態様は、以下に説明される実施例を参照しながら説明され明らかとなるであろう。
【発明を実施するための最良の形態】
【００１７】
以下の説明は、図１に図式的に示された使用認証システムの、ここで実装される方法に基づく好適な実施例に関する。本実施例は、２つの連続する値の出力の間のワーキングメモリ（例えばＲＡＭ及び／又はＥＥＰＲＯＭ）の常時の必要に帰着する。利用される支持点の数に基づいて、ワーキングメモリの要件が上昇したとき、より少ない実行時間が必要とされるか、又はその逆であるかはスケーラブルである。一方で、プログラムメモリ（ＲＯＭ）に対する要件は、このことによっては略影響を受けないままである。
【００１８】
上述したように、反転されることができない、又はかなりのコストを用いなければ反転されることができない、デフォルトの一方向関数Ｆ（ｖｉ，ｃｏｎｓｔ）がある（例えば高度な非線形ブーリアン関数又はハッシュ関数）。開始値ｖ０に基づいて、新たな関数値ｖｉが以下によって反復的に算出されることができる。
ｖｉ＋１＝Ｆ（ｖｉ，ｃｏｎｓｔ），ｉ＝（０，・・・，Ｎ）                  （１）
ここで、最後の関数値のみが可変のパラメータである。パラメータｃｏｎｓｔは、定数及び／又は特定の指数ｉに対する関数値、又は当該使用認証装置にのみ知られた値であっても良い。
【００１９】
目的は、ｖｍａｘからｖ０まで、関数値を降順で出力することである。Ｆの逆関数は既知でないため、ｖ０とｖｍａｘとの間の全ての値を算出するため、実行はｖ０及びｃｏｎｓｔを必要とする。ここで説明される本方法は、既存の、又はここで説明される本アルゴリズムが開始する前に反復によって所与の開始値から算出された幾つかの関数値を、所謂支持点として必要とする。
【００２０】
関数値ｖｉはＮから０まで指数ｉについて出力される必要がある。ここで、上述したように、ｖｉ＋１＝Ｆ（ｖｉ，ｃｏｎｓｔ）のみが各場合について算出され得る。Ｌ（Ｎ）は、二元システムにおいてＮを表示するために必要とされるビットの数である。ｂは幾つの支持点が絶対的に必要であるかを決定する基準であり、またレベル毎に必要とされる反復的な関数計算の最大数である。全体の実装は指数ｉに基づくため、基準の値ｂはまた、ｉにおける連続するビットの数としても解釈され得る。ビット０乃至ｂはレベル１についてのカウンタを形成し、ビットｂ＋１乃至２ｂはレベル２についてのカウンタを形成し、等する。実際のレベルの数は、以下から算出される。
Ｇ＝［Ｌ（Ｎ）／ｂ］                                                  （３）
各レベルは少なくとも１つの支持点を必要とするため、該数は同時に絶対的に必要である支持点の数に対応する。これらの支持点は以下、レベルｉのそれぞれについてｓ（ｉ）と示される（ｉ＝（１，・・・，Ｇ））。
【００２１】
支持点の値に対して、２つの場合が区別され得る。
【００２２】
ケース１：Ｎ＝（２ｂ）Ｇの場合、
【数３】
2007514361.tif 000004
、ｇ＝（１，・・・，Ｇ）である。従って、Ｓ（Ｇ）は負である。当該値が算出されることができない場合、このことは以下に説明するアルゴリズムに僅かな変更をもたらすが、基本的なシーケンスには影響を与えない。
【００２３】
ケース２：Ｎ∈｛（２ｂ）Ｇ−１，・・・，（２ｂ）Ｇ−１｝の場合、指数Ｎが到達されるまで以下に説明されるアルゴリズムをシミュレートし、このとき保存された中間値及び支持点を出力し、これらを初期化値として利用することで十分である。
【００２４】
上述のケース１でｂ＝３及びＮ＝（２３）４＝４０９６が当てはまる場合、Ｇ＝４であり、支持点は式（３）を利用して確認される。
ｓ（１）＝ｖＮ−８＝ｖ４０８８
ｓ（２）＝ｖＮ−７２＝ｖ４０２４
ｓ（３）＝ｖＮ−５８４＝ｖ３５１２
ｓ（４）＝ｖＮ−４６８０＝ｖ−５８４
ここでｓ（４）は、ｖ０から算出されることができないとした。第１の値ｖＮ＝４０９６の出力の後、カウンタＣの値は
【数４】
2007514361.tif 000005
である。即ち、個々の基準ｂ＝３のレベルのそれぞれのカウンタｃ（ｉ）は、ｃ（ｉ）＝（１１１）ｂ＝７である。
【００２５】
上述したような、前記支持点の配置及び個々の前記支持点の間の間隔の配置は図２に示され、同時に以下に説明されるサンプルアルゴリズムのための基準を表す。
【００２６】
ここで第２の出力値は、図１に示される構成に基づいて算出される。カウンタ値ｃ（ｉ）に従って、中間値ｚ（ｉ）は、Ｆ（ｖｉ）の反復的な適用によって支持点ｓ（ｉ）によって算出される。これらは以下によって与えられる。
ｓ（４）＝ｖ−５８４  ｚ（４）＝ｖ−５７７  ｃ（４）＝７
ｓ（３）＝ｖ３５１２  ｚ（３）＝ｖ３５１９  ｃ（３）＝７
ｓ（２）＝ｖ４０２４  ｚ（２）＝ｖ４０３１  ｃ（２）＝７
ｓ（１）＝ｖ４０８８  ｚ（１）＝ｖ４０９５  ｃ（１）＝７
Ｃ＝４０９５＝（１１１．１１１．１１１．１１１）ｂ
ｚ（１）はここで求められる第２の出力値である。
【００２７】
第３の出力値を算出するため、カウンタ
【数５】
2007514361.tif 000006
から導出されるレベルカウンタｃ（４）＝７、ｃ（３）＝７、ｃ（２）＝７及びｃ（１）＝６を用いて全体の処理が繰り返される。これに従って変化させられる中間値ｚ（ｉ）は、レベル１を除く全てのレベルにおいて、ｓ（ｉ）の代わりに開始値として利用される。しかしながら、ｓ（１）はレベル１において常に利用される。このことは、前記中間値について以下を生じる。
ｓ（４）＝ｖ−５８４  ｚ（４）＝ｖ−５７０  ｃ（４）＝７
ｓ（３）＝ｖ３５１２  ｚ（３）＝ｖ３５２６  ｃ（３）＝７
ｓ（２）＝ｖ４０２４  ｚ（２）＝ｖ４０３８  ｃ（２）＝７
ｓ（１）＝ｖ４０８８  ｚ（１）＝ｖ４０９４  ｃ（１）＝６
Ｃ＝４０９４＝（１１１．１１１．１１１．１１０）ｂ
また、所望の出力値はｚ（１）に発生する。以下は、更なる６つの出力値が算出されたときに適用される。
ｓ（４）＝ｖ−５８４  ｚ（４）＝ｖ−５２８  ｃ（４）＝７
ｓ（３）＝ｖ３５１２  ｚ（３）＝ｖ３５６８  ｃ（３）＝７
ｓ（２）＝ｖ４０２４  ｚ（２）＝ｖ４０８０  ｃ（２）＝７
ｓ（１）＝ｖ４０８８  ｚ（１）＝ｖ４０８８  ｃ（１）＝０
Ｃ＝４０８８＝（１１１．１１１．１１１．０００）ｂ
【００２８】
かくして、レベルカウンタｃ（ｉ）による各出力値についてレベルは１より大きく、関数Ｆの７回の繰り返しによって毎回先行される。それぞれの出力値はレベル１において算出され、ｓ（１）に基づいて、Ｆの繰り返しの数を示すため現在のカウンタｃ（１）に参照がなされる。この状況は図３に示される。
【００２９】
Ｃ＝４０８７＝（１１１．１１１．１１０．１１１）ｂについて次に出力される値を算出するため、ｖ４０８８の出力に後続してｓ（１）が置き換えられる必要がある。本方法は、カウンタがｃ（１）＝０を示すとすぐに、求められる値がｚ（２）に自動的に発生するように工夫される。従って、ｓ（１）：＝ｚ（ｉ）が設定され、ｚ（２）：＝ｓ（２）が元の値に再びリセットされ、次の出力値の以下の算出をもたらす。
ｓ（４）＝ｖ−５８４  ｚ（４）＝ｖ−５２１  ｃ（４）＝７
ｓ（３）＝ｖ３５１２  ｚ（３）＝ｖ３５７５  ｃ（３）＝７
ｓ（２）＝ｖ４０２４  ｚ（２）＝ｖ４０３０  ｃ（２）＝６
ｓ（１）＝ｖ４０８０  ｚ（１）＝ｖ４０８７  ｃ（１）＝７
Ｃ＝４０８７＝（１１１．１１１．１１０．１１１）ｂ
【００３０】
図４は、最初のアンダーフローに続く当該状況を示す。
【００３１】
Ｃ＝４０８７乃至Ｃ＝４０８０についての値を出力するための上述のステップが、ここで引き続いて繰り返されることができる。ここでｃ（４）＝７、ｃ（３）＝７及びｃ（２）＝６である。Ｃ＝４０８０の場合、以下の状況が当てはまる。
ｓ（４）＝ｖ−５８４  ｚ（４）＝ｖ−４７２  ｃ（４）＝７
ｓ（３）＝ｖ３５１２  ｚ（３）＝ｖ３６１７  ｃ（３）＝７
ｓ（２）＝ｖ４０２４  ｚ（２）＝ｖ４０６６  ｃ（２）＝６
ｓ（１）＝ｖ４０８０  ｚ（１）＝ｖ４０８０  ｃ（１）＝０
Ｃ＝４０８０＝（１１１．１１１．１１０．０００）ｂ
【００３２】
ｃ（１）においてアンダーフローが発生する度、置き換えｓ（１）：＝ｚ（ｉ）及びｚ（２）：＝ｓ（２）が起こる。前記カウンタがＣ＝４０３２を示す場合、以下が当てはまる。
ｓ（４）＝ｖ−５８４  ｚ（４）＝ｖ−１３６  ｃ（４）＝７
ｓ（３）＝ｖ３５１２  ｚ（３）＝ｖ３９６０  ｃ（３）＝７
ｓ（２）＝ｖ４０２４  ｚ（２）＝ｖ４０２４  ｃ（２）＝０
ｓ（１）＝ｖ４０３２  ｚ（１）＝ｖ４０３２  ｃ（１）＝０
Ｃ＝４０３２＝（１１１．１１１．０００．０００）ｂ
【００３３】
従って、既存のｃ（１）アンダーフローに加えて、アンダーフロー０は次のステップにおけるｃ（２）においても発生する。設計によって、ｓ（２）についての新たな値は、次の上のレベルについての中間値ｚ（３）にある。これに応じて、ｓ（２）：＝ｚ（３）及びｚ（２）：＝ｓ（２）並びにｓ（１）：＝ｚ（２）及びｚ（１）：＝ｓ（１）がこのとき設定される。結果として、Ｃ＝４０３１について以下が当てはまる。
ｓ（４）＝ｖ−５８４  ｚ（４）＝ｖ−１２９  ｃ（４）＝７
ｓ（３）＝ｖ３５１２  ｚ（３）＝ｖ３５１８  ｃ（３）＝６
ｓ（２）＝ｖ３９６０  ｚ（２）＝ｖ３９６７  ｃ（２）＝７
ｓ（１）＝ｖ４０２４  ｚ（１）＝ｖ４０３１  ｃ（１）＝７
Ｃ＝４０３１＝（１１１．１１０．１１１．１１１）ｂ
【００３４】
次の下のレベルについての新たな支持点としての中間値のキャリーオーバ、及び同一レベルについての支持点への中間値のリセットは、引き続いて継続する。最大の計算作業負荷は基本的に、２つの連続する出力値の間の関数計算ｖｋ＋１＝Ｆ（ｖｋ，ｃｏｎｓｔ）の最大数から、及び従ってｃ（ｉ）における値の最大数（即ち上述の例では２８＝４・７）から、導出される。
【００３５】
任意の開始値Ｎが利用されることを可能とするため、適切な必要とされる支持点ｓ（ｉ）が供給される必要があるか、又は本方法は（２ｂ）Ｇで開始され指数ｉ＝Ｎまで実行され、一方で本システムが上述の方法を用いて継続する前に初期化されることも可能である。計算の作業負荷は、レベル毎の又は特定のレベルのみについての他の支持点によって低減されることができる。パラメータｂは、使用認証毎の関数値の算出が最小化されるように、特定の数の支持点について適応されても良い。このことは、全体の実行時間を通して前記システムによって必要とされる関数値の算出の総数を最小化するようにも働く。最後に、関数値が算出されることができない負の指数を持つ支持点がある場合には、クエリがｉ＝０において実行されても良い。
【００３６】
中間値が保存される間の書き込み処理を減少させるため、循環的に書き込み及び読み取りが為され、従ってＦＩＦＯメモリとして設計される幾つかのバッファがレベル毎に備えられても良い。
【図面の簡単な説明】
【００３７】
【図１】本発明による使用認証システムの好適な実施例のブロック図を示す。
【図２】図１の使用認証システムの初期化に続く、支持点及び中間値の配置並びに個々の支持点の間の間隔を説明する図を示す。
【図３】８番目の値の出力の間の、支持点及び中間値の配置並びに個々の支持点の間の間隔を説明する図を示す。
【図４】９番目の値の出力の間の、支持点及び中間値の配置並びに個々の支持点の間の間隔を説明する図を示す。
【図１】
2007514361.tif 000008
【図２】
2007514361.tif 000009
【図３】
2007514361.tif 000010
【図４】
2007514361.tif 000011
【国際調査報告】
2007514361.tif 000012
2007514361.tif 000013