(57)【特許請求の範囲】
【請求項１】
ドメインDx、Dyへとグループ化されて構成される通信システムにおいて移動ユーザＵの識別を確実に行うための方法であって、前記ユーザは、識別子Auとパスワード又は他の秘密認証子PWuとを有し、前記識別子Au及びパスワードが、ユーザのホーム・ドメインDuに記憶され、
タイム・インターバル表示Tuが適用可能で、外部ドメインDyにおける前記ユーザＵの入力を前記ユーザＵのホーム・ドメインDuにおいて同期させる同期表示を含み、前記ホーム・ドメインにおいて、それぞれのタイム・インターバルδｕ又は他の同期インターバル表示の前に、将来のタイム・インターバルのための１つ又は複数の暗号化メッセージが事前計算され、参照／変換テーブルに記憶される前記方法において、
単方向関数とすることができる秘密関数の下で、前記識別子Au、前記タイム・インターバル表示Tu、及び前記ユーザのパスワードPWu又は他の秘密認証子を暗号化して、暗号化されたメッセージSUidを構成するステップと、
前記ユーザＵが通信を行なう前記外部ドメインDyに対し、前記ユーザのホーム・ドメインDuを表示するステップと、
前記暗号化されたメッセージSUidを前記ユーザのホーム・ドメインDuに伝送するステップと、
前記暗号化されたメッセージSUidを前記ユーザのホーム・ドメインDuにおいて前記参照／変換テーブルを用いて評価し、前記ユーザＵの真のアイデンティティを決定するステップと、
を含む方法。
【請求項２】
前記タイム・インターバル表示Tuは、前記ホーム・ドメインDuに設けられた等しくシードされた乱数発生器又は秘密シーケンス番号から導出されることを特徴とする請求の範囲第１項に記載の方法。
【請求項３】
前記システムには分散ワークステーション又は端末（11−14、21−24）がドメインDx、Dy（10、20）にグループ化され、
前記暗号化するステップは外部ドメインDyにおいて実行され、及び
暗号化されたメッセージSUidは前記評価のために前記ユーザのホーム・ドメインDuに伝送される
ことを特徴とする請求の範囲第１項又は第２項に記載の方法。
【請求項４】
計算能力を組み込まれた「インテリジェント」携帯用入力手段、望ましくは、
スマート・カード（１）を使用し、
前記暗号化又は前記乱数の発生は、前記携帯用入力手段において実行され、前記暗号化されたメッセージSUidは前記外部ドメインDyにおいて入れられることを特徴とする請求の範囲第１項又は第２項に記載の方法。
【請求項５】
少なくとも前記外部ドメインDyへのエントリの部分は、前記携帯用入力手段を機械読み取りすることによって前記携帯用入力手段から直接に行われることを特徴とする請求の範囲第４項に記載の方法。
【請求項６】
前記決定するステップが成功する場合、前記ホーム・ドメインDuからの承認メッセージが、特に、前記外部ドメインDyに伝送され、
前記決定するステップが不成功である場合、適当な不承認が表示される
ことを特徴とする請求の範囲第１項乃至第５項の１つに記載の方法。
【請求項７】
前記秘密関数は単方向関数
SUid＝Ｆ（Au,Tu,PWu）
であり、
前記識別子AuはユーザＵの別名又は第２識別子である
ことを特徴とする請求の範囲第１項又は第２項に記載の方法。
【請求項８】
前記ホーム・ドメインDuにおける参照／変換テーブル（42）は選択的に、移動していることを知られている選択された移動ユーザに対してのみ設定されることを特徴とする請求の範囲第１項に記載の方法。
【請求項９】
各ドメインDxに対して、ドメイン全体にわたるタイム・インターバルδｘが選択され、及び
前記選択されたタイム・インターバルは１時間又は数時間、或いは１日である
ことを特徴とする請求の範囲第１項又は第２項に記載の方法。
【請求項１０】
請求の範囲第１項乃至第９項の１つに記載の通信システムにおいて使用するための携帯用入力手段、特に、スマート・カード（１）にして、
前記入力手段の各々に対して独特の識別子又はキーと、
外部ドメインDyにおけるユーザＵの入力を前記ユーザＵのホーム・ドメインDuにおいて同期させる同期表示を与えるためのクロック又は他の同期表示手段と、
前記識別子又はキー、前記同期表示、及びユーザの認証子を単方向関数を用いることができる秘密関数の下で暗号化して暗号化メッセージSUidを計算するためのプロセッサと、
識別モードと前記暗号化メッセージSUidを計算するユーザIDモードとの間で前記入力手段を切り替えるための手段と、
前記計算された暗号化メッセージSUidを表示するための又は外部ドメインDyに入れるための手段と、
を含む携帯用入力手段。
【請求項１１】
前記切り替えるための手段は、モード相互間で前記入力手段をユーザ定義で切り替えるためのマニュアル・モード・スイッチ（４）、或いはモード相互間で前記入力手段を、時間に従って自動的に切り換えることができる自動モード・スイッチであることを特徴とする請求の範囲第10項に記載の入力手段。
【請求項１２】
ドメインDx、Dy（10、20）にグループ化された複数の分散したワークステーション又は端末を含む通信ネットワークにおいて移動ユーザの識別を確実に行うためのシステムであって、前記ユーザが識別子Au及び秘密認証子PWuを有するシステムにおいて、
ドメイン・オーソリティASu（24）内に、それぞれのタイム・インターバルδｕ又は他の同期インターバル表示の前に事前計算される、将来のタイム・インターバルのための１つ又は複数の暗号化メッセージを記憶する複数の変換テーブル（42）を記憶するための手段（41）と、
前記識別子Au、同期インディケータTu、及び前記ユーザの認証子PWuを単方向関数を用いることができる秘密関数の下で暗号化して暗号化メッセージSUidを形成し、及び前記ユーザのホーム・ドメインDuを表すための手段と、
前記暗号化メッセージを前記ユーザのホーム・ドメインDuに伝送するための手段（16、26、30）と、
前記ユーザのホーム・ドメインDu（20）において前記暗号化メッセージを受け取り、前記ユーザＵの真のアイデンティティを決定するための手段と、
を含むことを特徴とするシステム。
【請求項１３】
前記外部ドメインDy（10）又は前記ホーム・ドメインDu（20）におけるメッセージ制御及び処理は、それぞれ、ドメイン・オーソリティ、又は識別サーバASy（14）、又はASu（24）内において識別サーバASy（14）又はASu（24）によって行われることを特徴とする請求の範囲第12項に記載のシステム。
【発明の詳細な説明】
技術分野
本発明は、移動するユーザ相互間の通信及びコンピュータ・ネットワークにおける通信に関するものであり、更に詳しく云えば、通信ネットワーク内で移動するユーザの識別を確実に行うための方法及び装置に関するものである。
背景技術
現在の通信ネットワーク、特に、無線ネットワーク又はセルラ・ネットワークでは、複数のドメインの間におけるユーザの移動（以下ユーザ移動性という。）が急速に、重要で、かつ広く用いられる特徴となってきている。ユーザ移動性が向上することは、有用であり、かつ望ましいものではあるものの、多くの重要なセキュリティ関連の問題及び懸念を生じさせている。１つの問題は、移動するユーザの動き及び現在の居場所の追跡である。
移動環境下において生じる典型的な状況として、特定のホーム・ドメインに登録されたユーザ又は装置（以下、エンティティという。）が別のドメイン（以下、外部ドメインという。）に現れることを挙げることができる。恐らく、このユーザは、外部ドメインにおいても所定のサービスを得ることを目的としている。このユーザは、自分が外部ドメインでは知られていないので、認証される必要があり、しかも、自分の「資力」又は良好な立場が外部ドメイン・オーソリティにも確認されなければならない。本明細書では、このプロセスは、その分野では一般的である、「認証」（authentication）と呼ぶ。勿論、ユーザのアイデンティティ及び現在の立場に関してコメントし得る唯一のエンティティは、そのユーザのホーム・ドメインにおけるオーソリティである。最近の文献では、この問題に対する幾つかの既知の解決方法があり、それらのうちの幾つかを以下に示す。しかし、認証は、本発明が扱う問題ではない。
ここで懸念されることは、ユーザ移動性の結果として、セキュリティに関連する異なった問題が生じることである。それはユーザの同一性（以下アイデンティティという。）及びそれの動きの秘密性・確証性である。理想的には、ユーザのホーム・ドメイン・オーソリティだけは、ドメイン間で移動するユーザ（以下移動ユーザという。）の経路及び現在の居場所に関して知らさなければならない。以下、移動ユーザのアイデンティティを確証するプロセス、即ち、特定のドメインから実際にサービスを得ようとしているユーザは誰であるかを決定するプロセスを、「識別」という。
理想的には、ユーザ自身及びユーザのホーム・ドメイン、即ち、サブネットワーク又はユーザが一般に作業するネットワークの区分における責任あるオーソリティ以外のエンティティは、その移動ユーザの真のアイデンティティ又は現在位置を知る必要はない。ユーザ移動性をサポートする現在の環境は、全くその問題に対応していないか、或いはそのユーザの個人的な装置のハードウエア機能にもとづいて解決を行っている。
一般に、現在の技術レベルの移動／セルラ・アーキテクチャによって与えられる、上述した問題に対する既知の解決方法は、後で詳述するように、秘密にしたまま確実な識別を保証するには不十分であるか或いは余りに特殊過ぎる。
現在利用可能な解決方法の１つは、下記の参考文献（１）においてM.Rahncma氏によって報告されている。このいわゆるGSMシステムでは、移動ユーザには、自分が外部ドメイン現れる場合に、一時的なアイデンティティ（GSMの語法におけるTMSI）が一律に割り振られる。しかし、TMSIは、外部ドメインにおける移動ユーザの初期認証の後でしか割り振られない。後者によって実行されるプロセスでは、ユーザの真のアイデンティティ（GSM語法におけるIMSI）が自由にコミュニケートされ、従って、侵入者がそれを認識及び悪用することが可能である。
別の解決法が、参考文献（２）において、「セルラ・ディジタル・パケット・データ（CDPD）」システムに関して説明されている。そのCDPDシステムによって採られた方法は、上記GSM解決法におけるよりも更に安全なものである。CDPDシステムでは、移動ユーザは、自分のアイデンティティを伝送する前に、ローカル・ドメイン・オーソリティ、即ち、外部ドメイン・オーソリティとディフィ・ヘルマン（Diffie−Hellmann）キー交換プロトコルで結ばれる。このプロトコルは、参考文献（３）においてDiffie及びHellmann氏によって説明されている。その結果、両方のパーティとも、秘密キーを共有することになる。このキーの下で暗号化されると、その後、移動ユーザは自分のアイデンティティを外部ドメイン・オーソリティに送る。
この方法は、GSMよりも更に安全ではあるが、２つの大きな欠点を有している。第１に、それは、ローカルの、即ち、外部ドメイン・オーソリティが移動ユーザの真のアイデンティティを見つけることが可能となることである。CDPDに関しては、これは、本質的及びそれ単独では、問題ではない。しかし、理想的には、移動ユーザのアイデンティティはローカル・ドメイン・オーソリティに明かされるべきではない。移動ユーザのアイデンティティがホームのドメイン・オーソリティによって確認又は承認されるのであれば、その移動ユーザのアイデンティティ及び現在の立場の確証にとって十分である。第２の問題は、ディフィ・ヘルマン・キー交換プロトコルの性質によるものである。それの目的は、秘密キーをオン・ザ・フライで確証することである。これは、侵入者がローカル・ドメイン・オーソリティとして仮装することを可能にし、従って、そのキー交換プロトコルにおいて移動ユーザと結びつき、共用キーを得ることを可能にする。その後、その移動ユーザがこの同じキーでもって暗号化されたその真のアイデンティティを送る時、侵入者はその伝送を簡単に暗号解読するであろう。
別の方法が、参考文献（４）においてR.Molva氏によって、及び参考文献（５）においてM.Beller氏他によって与えられている。キー分散に関する１つの側面が参考文献（６）の本出願人によるPCT出願PCT/EP93/01989に記載されており、パスワード又はキー変更に関する他の側面が参考文献（７）の本出願人によるPCT出願PCT/EP93/02540において扱われている。
要約すると、移動ユーザのアイデンティティ及び移動秘密性の問題の根底には、本質的に３つの問題が存在する。
秘密のアイデンティティの維持における中心的な問題点は、移動ユーザと特定のホーム・ドメインにおいて登録されたユーザとの間の対応を誰も見つけることができないようにすることである。換言すれば、中心的な問題点はユーザのアイデンティティを秘密に保つことである。最も簡単で、むしろ直感的な解決法は、ホーム・ドメインから離れる時に各移動ユーザ又は装置に移動別名を割り当てることである。以下で扱われるように、この別名は固定されるか或いは常に変化させることが可能である。従って、本発明の主たる目的は、そのような別名の使用に適応する及びそれを可能にする方法及びシステムを案出することにある。
第２の重要な問題点は、外部ドメインを知られないように保つことである。外部ドメインがユーザの真のアイデンティティを知ることが必須でない場合、別名は十分であるに違いない。ほとんどの場合、そのような別名はホーム・ドメイン・オーソリティによって確認されなければならない。従って、本発明のもう１つの目的は、ユーザのアイデンティティを外部ドメインに明かすことなくネットワークを通した情報の流通を可能にする方法及びシステムを設計することである。（別名が使用されても或いは使用されなくても、外部ドメイン・オーソリティがユーザの真のアイデンティティを知ることを依然として要求する理由があるかもしれない。この場合、ホーム・ドメイン・オーソリティは秘密裏にそのユーザのアイデンティティを伝送することが可能である。その場合には、勿論、２つのオーソリティは秘密のコミュニケーションのための事前設定された手段を有するものとする。しかし、この場合でさえ、外部ドメインは、当初は、そのユーザのアイデンティティを知らない）。
特に懸念される第３の問題点は、アイデンティティ追跡又は相互関連付けを防ぐことである。たとえ移動ユーザが移動別名を採用しても、そのユーザの移動は、敵対する侵入者によって依然として追跡可能である。これは、その別名が全く変わらない場合、例えば、ユーザの特定の移動に対して固定されるか或いはそのユーザに恒久的に割り振られる場合、特に可能である。この後者のタイプの別名は長い単語のパスワードと同じである。一旦解読されると、ユーザのアイデンティティ及び移動は長期的に見て危うくされるかもしれない。従って、本発明の更なる目的は、情報の流通を妨げることなく別名の変更を頻繁に使用するように連動及び適合したシステムを案出することによって追跡を防ぐことである。
参考文献
（１）  IEEE Communications Magazine誌のApril  1993,Vol.31、No.4,pp.92−101におけるRahnema氏の「GSMシステム及びプロトコル・アーキテクチャの概要（Overview of the GSM System and Protocol Architecture）」と題した論文
（２）  米国カリフォルニア州コスタ・メサのCDPD Industry Input Coordinator社による1993年７月19日発行の「セルラ・ディジタル・パケット・データ（CDPD）システム仕様（Cellular Digital Packet Date（CDPD）System Specification）第1.0版」
（３）IEEE Transactions on Information Theory誌のNobember 1976,Vol.22,No.6,pp.644−654におけるW.Diffie及びM.Hellman氏の「暗号方式における新しい動向（New Directions in Cryptography）」と題した論文
（４）IEEE Network,Special Issue on Mobile Communications誌のSpring 1994,pp.25−35におけるR.Molva,D.Samfat及びG.Tsudik氏の「移動ユーザの認証（Authentication of Mobile Users）」と題した論文
（５）IEEE JSAC,Special Issue on Wireless Personal Communications誌のAugust 1993,Vol.11,No.6,pp.821−829におけるM.Beller,L.Chang及びY.Yacobi氏の「携帯用通信システムにおけるプライバシ及び認証（Privacy and Authenticaion on a Portable Communications System）」と題した論文
（６）IBM社及びP.Janson,G.Tsudik氏による特許出願PCT/EP93/01989、発明の名称「通信システムにおいて安全キー分配を行うための方法及び装置（Method and Apparatus for Providing Secure Key Distribution in a Communication System）」
（７）IBM社及びR.Hauser,P.Janson,R.Molva,G.Tsudik,及びE.vanHerreweghen氏による特許出願PCT/EP93/02540、発明の名称「分散通信システムにおいて承認パスワード又はキーを変更するための方法及びシステム（Method and System for Changing an Authorization Password or Key in a Distributed Communication System）」
（８）米国国家標準局（National Bureau of Standards）の「連邦情報処理標準（Federal Information Processing Standards）Publication 46,1977」
（９）Internet RFC 1321,Internet Activities Board社による1992年４月発行のR.Rivest氏著「MDSメッセージ・ダイジェスト・アルゴリズム（The MDS Message Digest Algorithm）」
（10）米国カリフォルニア州ロス・アラミトスのIEEE Computer Society Press社発行の1993 IEEE Symposium on Research in Security and Privacy,May 1993,ProceedingsにおけるR.Molva及びG.Tsudikの「非個人的トークン・カードによる認証方法（Authentication Method with impersonal Token Cards）」と題した論文
（11）米国マサチューセッツ州ケンブリッジのSecurity Dynamics Technologies社の1992年製品情報誌「ACEシステム・アクセス制御暗号化（The ACE System Access Control Encryption）」
発明の開示
本発明は上記の問題点に対する解決方法を与える。要約すると、移動ユーザの追跡可能性及び識別を最小にする又は回避するために、一時的で、簡単な、１回限りの別名を移動ユーザに割り当てる方法が提案される。それは効率的なものであり且つ特定のハードウエアに特有のものではない。本発明は、移動ユーザのホーム・オーソリティによるそのユーザの不明瞭でなく、且つ事実上瞬時の識別を可能にする。一方、承認されないパーティは、移動ユーザを識別すること或いはそのユーザの移動を追跡することができない。
本発明は上記の３つの局面すべてに対する包括的な解決方法を扱い且つ提供するものの、依然として、回避することが難しい幾つかの制限が存在する。そのような制限の１つは、例えば、外部ドメイン・オーソリティが移動ユーザのホーム・ドメインのアイデンティティを知る必要があることである。これは、「海外」、すなわち外部ドメインで発生した代金請求が最終的にはホーム・ドメインに伝えられなければならないので、極めて多数の移動ユーザについて発生することになるであろう。更に、前述のように、ホーム・ドメインだけしかユーザの現在の立場に関してコメントすることができない。（この特定の問題を解決するために、ドメイン・オーソリティ相互間のコミュニケーションが中央機関によって「匿名化」されるシステム環境が期待される。この場合、移動ユーザが別名によって自分のホーム・ドメインを参照することができるように別名をドメインに割り当てることは有益であろう。そのドメイン別名を解明するのは中央機関の責任であろう。）
本発明による方法は、２つの見かけ上は相容れない要件、即ち、認証とアイデンティティの秘密性とを両立させようとするものである。エンティティを認証するためには、先ず、エンティティに対して一定のアイデンティティの承認を求め、その後、そのアイデンティティの実際の所持者しか知り得ないものを当該エンティティが知っていることを示すか或いは証明しなければならない。一方、アイデンティティの秘密性は、同じアイデンティティが秘密に保たれることを要求する。これは、結果として、解決されなければならないちょっと逆説的な状況を生じる。
要約すると、その新しい方法の本質は、以下では「動的ユーザ識別子」と呼ばれる短期移動別名を計算することにある。自分のホーム・ドメインの外へと移動するユーザはそのような別名を装い、自分の実アイデンティティに対する関係を隠すことが可能となる。更に、外部のドメイン（又は、任意の承認されていないパーティ）が移動ユーザのパスワードを見つけようとする場合でも、これはそのケースと同じである。
次にような表記法が本明細書の説明を通して使用される。
Dx:ドメイン名
ASx:ドメインDxのオーソリティ、典型的には、認証サーバ
U:ドメインDxに定住する移動ユーザ
Ux:この移動ユーザＵの（真の）名前
Au:この移動ユーザＵの別名又は識別子
FWu:ユーザＵのパスワード
SUid:動的ユーザ識別子
δx:ドメインｘのタイム・インターバル
Tu:タイム・インターバル・インディケータ、即ち、最も近いδ値に丸められたユーザＵの現在時間
【図面の簡単な説明】
第１図は、本発明に対して使用可能な両方のモードにおけるスマート・カードを示す。
第２図は、スマート・カードからユーザのホーム・オーソリティへの情報の流れに対する例を示す。
第３図は、本発明の用途を説明するための２つのドメインを持ったネットワークを示す。
第４図は、ホーム・オーソリティのプロセスの編成に対する例を示す。
第５図は、外部の入力ワークステーション又は端末におけるプロセスに対する例を示す。
発明を実施するための最良の形態
先ず、どの移動ユーザも、自分の恒久的なアイデンティティの他に長期移動別名Auを割り当てられる。原理的には、Auは、ユーザの真の識別子Uxと異なる必要はない。そのスキームのセキュリティは、秘密であるAuに依存するものではない。各ユーザがスマート・カード或いは何らかの同様の装置を備えている環境では、Auは、そのユーザの装置の通し番号或いは他の任意の独特の識別子そのものでもよい。これらの移動別名Auのリストが、パスワード及び他のユーザ情報と共にホーム・ドメイン・オーソリティによって維持される。
すべてのドメインDxに対して、ドメイン全体にわたるタイム・インターバルδｘが選択される。このタイム・インターバルδｘは比較的粗いもの、例えば、１時間又は１日でもよい。
ホーム・ドメインがDxであるユーザＵが、外部ドメインDyに移動する時、そのユーザは先ず識別される（そして認証される）必要がある。しかる後、外部ドメインにおけるその後のアクセスを容易にするために、Dyにおけるそのユーザに対して、一時的なレコードを作成することも可能である。換言すれば、そのユーザが暫くの間Dyに留まろうとする場合、各アクセスの度にそのユーザのホーム・ドメインと接触しなければならない代わりに、そのユーザのための何らかの一時的な「ホーム」を設定する方が有利であることがある。しかし、これは単に１つの更なる可能性に過ぎない。本発明の目指すところはユーザの識別である。
ユーザの認証のためのプロトコルに関する詳細な説明は、Molva氏による前記参考文献（４）において見ることができる。認証のフローの正確なフォーマットは本発明との関連では重要ではない。認証の詳細事項に関係なく、ユーザＵのアイデンティティは、そのユーザのホーム・ドメイン・オーソリティASxに伝送されなければならない。ユーザＵはホーム・ドメイン・オーソリティASxと直接にコミュニケートすることができないので、すべてのコミュニケーションは、ローカル・ドメイン・オーソリティASyを通して通信されなければならない。これは、更に後述するように、第２図に示される。
認証プロトコルでは、前記参考文献（２）のCDPDシステム仕様に記述されているように、２フローのディフィ・ヘルマン・キー変更が任意選択的に先行することが可能である。この場合、新しいキーを使用してすべてのメッセージを暗号化することが可能であるので、その手順全体が、受動的な侵入者にとっては抵抗性を有するものとなる。
一般には、識別のフローは動的ユーザ識別子SUidを含まなければならない。これは、スマートカード／ユーザから外部オーソリティASyへの（第１）フロー及びASyからそのユーザのホーム・オーソリティASxへの（第２）フローの両方にとって真である。動的ユーザ識別は直のSUid、又は、SUidの暗号化バージョンより成る場合がある。
ユーザのアイデンティティの秘密性に関するそのプロトコルの極めて重要な局面は動的ユーザ識別子SUidの計算である。それは次のように計算される。即ち、
SUid＝Ｆ（Au,Tu,PWu）
但し、Ｆは強力な単方向関数である。その例は、参考文献（８）における国家標準局の刊行物46において記述されたDES、又は参考文献（９）においてRivest氏他によって開示されたMD5である。DES又は他の暗号化ベースの関数の場合、ユーザのパスワードPWuがその目的のためには十分であるので、関数Ｆを計算するためには更なる秘密キーは必要ないということに注目する事が重要である。Tuは、最も近いδ値に丸められた現在の時間である。ユーザがスマート・カードのような装置を所持していない場合、そのユーザは、自分のパスワードPWuを公用のワークステーション又は他のそのような端末、即ち、外部ドメイン・オーソリティASyに接続された入力装置に入れる。スマート・カード結合のユーザにとって、PWuは、
1.そのスマート・カードにおける強力なキー（キーパッド又は他の入力手段を欠いたスマート・カードに対して）、又は
2.スマート・カードのキー及びユーザのパスワードの結合（入力機能を持ったスマート・カードに対して）
であってもよい。
前述のように、動的ユーザ識別子の値SUidは、外部ドメイン・オーソリティASyにとって理解し得ないものである。外部ドメイン・オーソリティASyが得ることができる唯一の情報は、移動ユーザが（ホーム）ドメインDxに登録されているということである。第２のフローにおいて、外部ドメイン・オーソリティASyはSUid（他の情報、例えば、認証情報と一緒に）を、そのユーザが承認を求めたホーム・ドメイン・オーソリティASxに伝送する。
問題は、そのSUidがそのローカル的に登録されたユーザＵに対応することをホーム・ドメイン・オーソリティがどのようにして決定するかである。それは、そのドメイン本来の各ユーザに対して、その対応する動的ユーザ識別子SUid値をリストする最新のテーブルを維持することによってそれを行う。この変換テーブル又は参照テーブルはδｘインターバル毎に再計算される。ホーム・ドメイン・オーソリティASxはすべてのユーザに対する別名Au及びパスワードPWuを既に記憶しているので、それは最新の変換テーブルを計算するために必要な情報をすべて有する。
動的ユーザ識別子SUidはそのユーザの現在位置に関係ないので、変換テーブルはオフ・ラインで及び前もって十分に計算可能である。これは、特に、比較的粗いδｘ値、例えば、前述のように、１時間又は１日のδｘが使用される場合である。
勿論、移動ユーザの「真の」アイデンティティを確証することはその作業の半分に過ぎない。ホーム・ドメイン・オーソリティASxは、その後、第２フローにおいて供給された認証情報を検証しなければならない。しかし、前述のように、これは近い将来の問題には関係ない。参考文献（４）において、Molva氏他は１つの例を説明している。
以下の説明は、「計算に関するオーバーヘッド」を少なくするために有利な構成に関するものである。わずかな数のユーザしかそれらのホーム・ドメインの外に移動しない場合、すべてのユーザに対する時間ベースの別名テーブルを事前計算し、維持し、及びサーチすることは全く非能率的であり、無駄でさえある。この場合、オーバーヘッドを減らす方法は、一般には、ユーザＵが、予め、自分のホーム・ドメイン・オーソリティASxに、意図した移動を知らせることを必要とするものである。従って、そのホーム・ドメイン・オーソリティASxが追跡しなければならないのは、現在移動しているユーザだけである。これは、必ずしも、ユーザが前もって自分の移動工程を開示する必要があることを意味するものではない。ユーザは、単に、「海外」への、即ち、外部ドメインへの各移動の開始を登録する必要だけである。その通知の際、ホーム・ドメイン・オーソリティASxは、時間ベースの動的識別子計算のために利用される特別のリストにその移動ユーザを加える。しかし、ユーザが、各移動の終了時に、自分のホーム・ドメイン・オーソリティASxに連絡することは必要ない。ホーム・ドメイン・オーソリティASxは、このユーザが当該ユーザの真のユーザID、即ち、ホーム・ユーザIDを用いてそのホーム・ドメイン・オーソリティASxにログ・インしようとすれば、当該ユーザがホーム・ドメインに戻ってきたことを推測することができる。
以下では、ホーム・ドメイン・オーソリティASx及び外部ドメイン・オーソリティASyの間のクロック同期を扱うことにする。ユーザがクロックをホーム・ドメイン・オーソリティASxと緩く同期させるようにするものと仮定することは、確かに、ほとんどの環境に対して現実的である。明らかに、スマート・カードを所持したユーザは、ユーザ時間Tuの追跡のためにはスマート・カードのクロックに依存することができる。「不所持」のユーザにとっては、ワークステーションの内部クロックが十分であろう。ユーザが掛時計又は腕時計からの時間を手操作で入れることも可能である。勿論、δｘの「ばらつき」は重要である。ユーザ時間Tuを維持することのこの明らかな容易性にもかかわらず、場合によっては、Tuの追跡が何らかの理由で不可能になることが考えられる。
この状況を処理するために、プロトコルは
1.ローカル（即ち、外部）ドメイン・オーソリティASyが時間Tuを与える、又は
2.ユーザのホーム・ドメイン・オーソリティASxがそれを与える
という方法で修正可能である。何れの場合も、時間は、即座に、即ち、前述のように第１フローに先行した特別のフローにおいて、ユーザ（又は、ユーザの装置）に供給されなければならない。これは、時間Txが秘密値ではないので、オープンで、即ち、明確な字句で行うことが可能である。
要約すると、前述のように、微行者における最も重要な要素は、頻繁に変化する及び見かけ上は無関係の別名、即ち、動的ユーザ識別子を持つことである。一定の或いは長期識別子が使用されると直ちに、アイデンティティ相関及びトラッキングが可能となる。理想的には、別名又は動的ユーザ識別子は完全に使い捨てである、即ち、１回しか使用しない。本発明による方法は、構成可能なδｘタイム・インターバル内での別名の再使用を許容しているので、完全にはその標準に達していない。従って、ユーザが単一のδｘインターバル内に複数のドメインを通して移動する場合、そのユーザは何らかの制限されたアイデンティティ追跡を受け易い。
これを回避するために、本発明は次のような２つの代わりの方法を提案する。
1.別名は訪問先のドメインに従って作られる。
2.ユーザとそのユーザのドメイン・オーソリティとの間の緊密な同期を維持する。
外部ドメインの名前が動的ユーザ識別子SUidの計算に含まれる場合、１つの外部ドメインから次の外部ドメインに移動するユーザは（非常に短い時間内でさえ、即ち、単一の時間インターバルδｘ内でさえ）関連のない動的ユーザ識別子の下でそれを行うので、アイデンティティの相関は不可能になる。この方法の主たる欠点は、それが多くの時間を必要とすることである。この場合、ホーム・ドメイン・オーソリティASxは、そのユーザの動きを予測することができないので、変換テーブルを事前計算することができない。従って、ホーム・ドメイン・オーソリティASxが動的ユーザ識別子SUid及び外部ドメイン・オーソリティASyの名前を与えられる時、事前計算されそして記憶された変換テーブルがないのでSUidを解明することはできず、従って、SUidを直ちに解釈することはできない。その代わり、すべての登録されたユーザＵに対して、ホーム・ドメイン・オーソリティASxは、入力の１つとしてDyの名前を使用して適正なSUidを計算しなければならない。これは、ホーム・ドメイン・オーソリティASxにかなりの負荷を課する。
もう１つの可能性は、ユーザ（又は、むしろ、そのユーザの個人的な装置）とホーム・ドメイン・オーソリティASxとの間で緊密な同期を維持することである。この同期は、時間、秘密シーケンス番号、又は等しくシードされた乱数表に基づくものでよい。この方法は、別名又は動的ユーザ識別子が再使用されることがないことをそれが保証するので、最高レベルのセキュリティを与える。しかし、この方法は、ドメイン依存の別名と同じ欠点を持つという難点がある。更に、信頼性ある不正変更のない個人装置を持つことがすべてのユーザにとって必要である。
移動ユーザが認証のためのパスワードしか持たない場合、上記の時間ベースの別名は、装置指向の環境、例えば、スマート・カード、セルラ電話、或いはもっと伝統的な認証において実現可能である。後者の場合、ユーザは、公衆ワークステーション、又はネットワークをアクセスために使用される他の非個人的なエンド・ユーザ装置にはどうしても弱い。本発明を実施するための１つの好適な実施例を以下に示す。
本発明の特に有利なアプリケーションはスマート・カードとの関連にある。最も簡単な可能なスマート・カードは同じディスプレイ及び、多分、オン／オフ・スイッチしか持たない種類のものである。それの不正変更のないパッケージの中に、スマート・カードはクロック及び各カードに固有の秘密キーを保持している。これは、前記参考文献（10）においてR.Molva氏により説明されている。このモードで働くように適応した商品は、前記参考文献（11）において説明されている「SecureID」である。
第１図乃至第５図は、スマート・カードによる本発明の実施を図形的な形で示す。以下の説明はその詳細を示す。
第１図に示されたスマート・カード１は、通常、そのカードに固定された独特の通し番号２を含んでいる。それは、何れもバッテリで電力供給されるプロセッサ及びディスプレイ・スクリーン３（屡々、小型のLCD）を含む。後述するように、スマート・カード１は、時間ベースの動的ユーザ識別方法をサポートするための次のような特徴を持った２つの異なるモードを有する。
1.それは、２つのモード、即ち、カードが認証子（前述のように、ここでは関係ない）を表示する「認証モード」及びカードが動的ユーザ識別子SUidを表示する「ユーザIDモード」、の間で自動的に又は要求時に切り替わるようにプログラムされる。その自動的切替は非常に頻繁に、例えば、10秒毎に生じる。自動的に切り換えられたスマート・カードは、現在利用可能なスマート・カードの如何なる表面上の修正の又はハードウエアの修正を必要としないので、特に魅力的である。その代わりに、ユーザがその２つのモードの間を切り換えるのを可能にするモード・ボタン又はスイッチ４を設けることも可能である。
2.認証モードにおいて使用されるスマート・カードのクロックは、ユーザ識別子SUidを計算する時、「粗く」、すなわち長くされる。ユーザIDモードのための別のクロックは必要ないが、それを設けてもよい。
ユーザIDモードでは、スマート・カード１は、第１図にXX XXX XXとして示された６乃至８ディジットの10進数又は他の記号シーケンスを時間ベースの動的ユーザ識別子として表示する。このユーザ識別子は、ユーザ識別子が示されことを表すために先行のマーク５を含むようにしてもよい。ユーザは、これを、外部ドメイン・オーソリティに送るために自分の「ユーザID」として端末又はワークステーションに入れる。後述するように、この入力ステップも自動的に実行可能である。動的ユーザ識別子が暗号化形式においてのみそのユーザ識別を保持すること、従って、侵入者はそこからユーザの真のアイデンティティを推量することができないことはこの点で明らかであろう。更に、動的ユーザ識別子が所与のターム・インターバルの後に修正されるので、動的ユーザ識別子の如何なるシーケンスも明らかに相互に関連しないこと及びそれが同じユーザに属するという認識可能な表示を与えないことは明らかであろう。
認証モードでは、スマート・カード１は、第１図においてYYY YYY YYとして示された別の６乃至８ディジットの10進数又は他の記号シーケンスをユーザ認証子として表示する。ユーザは、この認証子を自分の「パスワード」として端末に入力する。一方、その端末はそれを外部ドメイン・オーソリティに送る。（上述のように、認証プロセスそのものは本発明の部分ではなく、従って、それを更に詳細に説明するつもりはない。）
そのようなスマート・カードは、前記参考文献（11）に示された「SecurID」カードのような明らかに既にクロック及びプロセッサを含んだ市販のスマート・カードを修正することによって実現可能である。当業者にとって、必要な場合の適正なソフトウエアの書込及びそのカードの改変が問題を提起することはないであろう。ユーザIDモードから認証モードへの自動切替が選択される場合、そのカードの物理的修正でさえ必要ない。
第２図は、スマート・カード１から外部ドメイン・オーソリティ６を介してユーザのホーム・ドメイン・オーソリティ８への動的ユーザ識別子及び認証子の伝送を示す。
１つの望ましい方法は、ユーザが図示のように両方の値をスマート・カード１から入力することである。もう１つの方法は、外部ドメイン・オーソリティ６に接続された端末においてそのカードを読み取ることである。銀行業界において広範に使用されている通常の自動現金支払機はそれを行うように修正可能である。（勿論、認証のためには、ユーザは、パスワード、PIN番号、或いは認証プロセスためにそのシステムによって使用されるどのような手段でも入力しなければならない。再び、上述のように、認証プロセスは本発明の部分ではなく、任意の通常の方法が使用可能である。）
外部ドメイン・オーソリティ６は、どのホーム・ドメインにアドレスしなければならないかを知る。これは、適正なセクションを動的ユーザ識別子に含ませることによって行われることが望ましい。別の方法として、ユーザのホーム・オーソリティを識別するために、外部ドメイン・オーソリティ６によってユーザからの別の入力をリクエストすることもできる。
外部ドメイン・オーソリティ６は、第２図においてケーブルとして概略的に示された接続線７を介してそのユーザのホーム・ドメイン・オーソリティ８にそのデータを転送する。勿論、これは、２線式接続線から無線又は赤外線使用のネットワークまでの任意のものでよい。その外部ドメイン・オーソリティ６或いは接続線７からデータを取り出そうとする侵入者は、ユーザの真のアイデンティティ又はそのシステムへのそのユーザの前のアクセス場所を検出することはできないであろう。
動的ユーザ識別子SUidは既に暗号化されているので、更なる安全な伝送のためのそれ以上の暗号化は必要ないが、勿論、それを行うことも可能である。
第３図は、２つのドメイン10及び20より成るネットワークを示す。各ドメインは、ユーザ・アクセスのための複数の端末又はワークステーションを有する。第１ドメイン10は、それのユーザ端末11乃至13及びサーバ14を接続するバス15を有する。ライン又はケーブルとしてここに示されたリンク16はサーバ14をゲートウェイ30に接続する。幾つかの又はすべての端末又はワークステーションが計算能力を組み込んでいる。又、ドメイン・オーソリティは分散され、特定の機械又はサーバには配置されるのではない。
第２ドメイン20も複数の端末又はワークステーション21乃至24を有し、ここでは、それらはトークン・リング25に接続される。少なくともワークステーション24は計算能力を組み込んでおり、この第２ドメインに対するサーバとして使用される。ラインとして示された接続線26も、ゲートウェイ30へのワイヤレス赤外線使用の接続又は無線接続であってもよい。
端末又はワークステーション12を介してシステムにアクセスすることを望んでいてドメイン20に在住する移動ユーザＵは自分のデータ、即ち、識別子、パスワード等を端末におけるキーボード又は他の入力装置に入れ、或いは自分のスマート・カードをワークステーションにおける読取装置に入れる。ワークステーション12は、ユーザの観点からは、外部ドメインの部分であるので、ユーザは自分のホーム・ドメイン名を入れるように要請されるか、又はそれがそのスマート・カードから読み取られるであろう。ワークステーション12、又は、別方法の場合のユーザのスマート・カードは、上述のように、動的ユーザ識別子SUidを計算する。この動的ユーザ識別子を受ける外部ドメイン・オーソリティ14はそれを解釈することができない。しかし、ゲートウェイ30を介して正しい（ホーム）ドメインへ暗号化されたデータを経路指定又は伝送するためには、それはそのユーザのホーム・ドメイン、この場合はドメイン20、を知らなければならない。
ゲートウェイ30或いはその経路における他の任意のゲートウェイ又は中継局は、ユーザの正しいホーム・ドメインを解釈することもできるが、動的ユーザ識別子SUidを読み取ること或いは解釈することはできない。本実施例の場合、ゲートウェイ30は、その受け取った暗号化されたユーザ識別子をそのユーザのホーム・ドメイン・オーソリティ24に送る。
ワークステーション12を居所とした移動ユーザＵの動的ユーザ識別子を受けるホーム・ドメイン・オーソリティ24は、現在のタイム・インターバルδｘにおいて有効なすべてのユーザに対する動的ユーザ識別子をリストした最新のテーブルを事前計算している。従って、高速の且つ容易なテーブル・ルックアップによって、ドメイン・オーソリティはその受け取った動的ユーザ識別子が有効であるかどうか及びそれがどのユーザに属するものであるかをチェックすることができる。これについては、第４図に関連して更に詳細に説明することにする。そこで、ドメイン・オーソリティ24は、ユーザがサービスを望んだ端末12に適当なメッセージを戻すことができ、或いはその認証プロセスを進めることもできる。
第４図に示されるように、ホーム・ドメイン・オーソリティ24は、動的ユーザ識別子SUidを受け取る時、、現在のタイム・インターバルδｘに従って、一連の事前計算されたテーブルTB1乃至TBn41から適当な別名テーブル42を選択する。そこで、それはその供給されたSUidを使用してその選択されたテーブルをサーチし、SUidを計算したスマート・カードの通し番号（又は、他の何らかのID）又はユーザ・ワークステーションを識別する。そのカードの通し番号はユーザを一意的に識別する。一旦この識別が行われると、適当なメッセージがこのドメイン・オーソリティにおいて発生される。
第５図は、ユーザの入力が外部ドメインにおける入力端末12においてどのように処理されるかを例示した図である。ユーザＵは自分のユーザID又は識別子Au、白分のパスワードPWu、及び任意選択的には、最も近いタイム・インターバルδｕに丸められた現在の時間Tuを、外部ドメインにおけるワークステーション又は端末12に入力する。暗号化器52を含む処理手段51はユーザの入力即ちi1乃至i3を暗号化する。それらは、その図に示されるようにPWu、Au、及びTuに対応する。ここでは、i1及びi2の連結が、前記参考文献（８）に示されたDESの下に、キーi3でもって暗号化され、そのユーザのホーム・ドメインに送られるSUidを決定する。そこで、認証サーバ24は、その受け取った動的ユーザ識別子SUidを評価する。
以下は、全プロセスのステップ状の説明である。
ステップ0:
先ずそして、望ましくは恒久的に、各（ホーム・ドメイン）認証オーソリティASx、典型的には、認証サーバ24はそのプロセスに必要なテーブルを計算する。これは時々、例えば、１日に１回行われる。それによって、一連のテーブル、例えば、TB1、TB2、TBnが計算される。但し、ｎは１日又は他の長い時間単位におけるδｘインターバルの数である。例えば、δｘが１時間にセットされる場合、認証サーバ24は毎日24個のテーブルを計算する。
各テーブルTBiは、ローカル・ドメインに存在するユーザと同じ数の行を含んでいる。各行は、次の２つの列より成る。即ち、
＊ユーザ名Ｕ、及び
＊単方向関数Ｆ（Au,Tu,PWu）を適用した結果。但し、PWuはユーザＵのパスワード又はPINであり、Ti＝T0iδｘである。
T0は計算開始時の絶対時間、即ち、計算が毎日行われる場合、T0は「真夜中」にセットされる。
これはそのプロセスの第１部分、即ち、テーブル計算を終わらせる。それに続く第２部分はアイデンティティ分析に関する。容易な理解を可能にするために、幾つかのステップでそれを説明することにする。
ステップ1:
ユーザＵは外部ドメインに移動する。この外部ドメインにおける端末又はワークステーション、例えば、第３図におけるドメイン10の端末12において、ユーザは、自分のユーザID  Ux又は別名Au、δｘ値、及び自分のパスワード（又は、PIN）PWuをそのワークステーションに入れる。その入力された値から、ワークステーション（ソフトウエア又はハードウエア）は動的ユーザ識別子を次のように計算する。
SUid＝Ｆ（Au,Tu,PWu）
但し、Tuは最も近いδｘに丸められたそのワークステーションに関するローカル時間、即ち、δｘがどの単位で測定されるかに従って秒、分、又は時間とされる。そのワークステーションはクロックを持つ必要がないことに注意して欲しい。その場合、ユーザは、例えば、自分の時計を調べることによって時間Tuを入力する。
更に、ユーザは何らかの認証情報をワークステーションに入れる。この認証情報が何であるかは本発明には関係ないことである。
ステップ2:
ワークステーションは、その認証情報と共にSUid値をそのユーザのホーム・ドメイン・オーソリティASx、例えば、ドメイン20における端末（又は、ワークステーション）24に送る。これは問接的に行われる。即ち、ワークステーション12は、先ず、データをそれ自身のローカル・ドメイン・オーソリティASy、例えば、ドメイン10のワークステーション14に送ることができる。一方、そのワークステーション14はそのデータをドメイン・オーソリティASx、ここでは、端末又はワークステーション24に送る。
ステップ3:
データがドメイン・オーソリティASx、即ち、ワークステーション24に達した時、それは、先ず、それのローカル時間Txを得る。それは次のような計算を行う。
ｊ＝（Tx−T0）／δｘ、整数除算を使用する。
ｋ＝（Tx−T0）％δｘ、但し、％はモジュロ演算子である。
ステップ4:
次に、ドメイン・オーソリティASx、即ち、ワークステーション24は、SUidをサーチ値として使用して、テーブルTBj（ステップ０において事前計算された）をサーチする。
ステップ4a:
そのサーチが成功する場合、テーブル・エントリはユーザＵを指す。
ステップ4b:
そのサーチが不成功である場合、ドメイン・オーソリティASx、即ち、ワークステーション24は（ｋの値次第で）TBj−１又はTBj＋１をサーチする。
ステップ5:
一旦ユーザＵが識別されると、ドメイン・オーソリティASx、即ち、ワークステーション24は、従来技術において知られているように、SUidとともに到達した認証情報を検証する。再び、このプロセスの詳細は本発明に関連するものではない。
ステップ6:
SUidが妥当なユーザＵに対応すること及び認証情報が正しいことを、ドメイン・オーソリティASx、即ち、ワークステーション24が満たす時、ドメイン・オーソリティASxは、リモートのドメイン・オーソリティASy、ここでは、ドメイン10におけるサーバ14に応答し、SUidがサービスを得るように認証された正当なユーザであることを伝送する。
明らかに、上記のプロセスはスマート・カードを使用しない。スマート・カードのような「インテリジェント」カードが使用されるべき場合、唯一の変更がステップ１にある。情報をワークステーションに入れる代わりに、ユーザはそれのIDモードにおいてスマート・カード上に表示された値を単に読み取り、それをワークステーション12に入れるだけである。別の方法として、この値をワークステーション12によって機械読み取りすることも可能である。この値は、そのワークステーションが上記ステップ１において行った方法と同じ方法でスマート・カード１によって既に計算されたSUidである。
要約すると、ステップ６の終了時に、ドメイン・オーソリティASy、ここでは、ワークステーション12は、そのユーザＵが正当なユーザであり、同時に、そのドメイン・オーソリティがそのユーザのアイデンティティを見つけることをせず、しかも見つけることもできないことを保証される。事実、ドメイン・オーソリティASyは、短い単語の別名にすぎないSUidを知るだけである。SUid及びUxの間の一致はそのユーザ及びそれのホーム・ドメイン・オーソリティASxにだけ知らされる。
産業上の利用可能性
ワイヤレス伝送、例えば、無線又は赤外線伝送から、複数のユーザを同時にサービスする時のマルチプレキシングまでの範囲に及ぶ本発明の多くの考え得る変更が存在することは明らかである。ワイヤレス・ドメインでは、単一のサーバがトランシーバ及びドメイン・オーソリティとして同時に使用可能である。同期は、例えば、無線制御のクロック或いは他の同期装置によって達成可能である。スマートカードは、端末をできるだけ強力にするためには、如何なる有意味な計算能力でも持つことができるであろう。これらの変更はすべて、依然として、請求の範囲に記載された本発明の本質的な原理を使用し得るものである。
【図１】
0003566298.tif 000002
【図２】
0003566298.tif 000003
【図３】
0003566298.tif 000004
【図４】
0003566298.tif 000005
【図５】
0003566298.tif 000006