(57)【要約】  必要なメッセージ数を減少させることにより、端末の消費電力を削減でき、両端末のバインディングアップデートにかかる処理時間を短縮できるバインディング更新方法などを提供する技術が開示され、その技術によれば第１の移動端末が所定の第１移動端末情報を含めた、所定の第２移動端末情報の取得のための第１の１組のメッセージを第２の移動端末へ送信し、第２の移動端末が所定の第２移動端末情報を含めた第２の１組のメッセージを送信し、第１の移動端末が、所定の第２移動端末情報に基づき生成した認証情報を付加した第３のメッセージを送信し、第２の移動端末が第３のメッセージへの応答情報を含めた、所定の第１移動端末情報に基づき生成した認証情報を付加した第４のメッセージを送信し、第１の移動端末からの認証情報が正当である場合にバインディング情報を更新し、第１の移動端末が第２の移動端末からの認証情報が正当である場合にバインディング情報を更新する。
2009090722.tif 000002
【特許請求の範囲】
【請求項１】
第１の移動端末と、前記第１の移動端末の通信相手である第２の移動端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法であって、
前記第１の移動端末が前記第２の移動端末のバインディング情報を保持している場合に、
前記第１の移動端末が、所定の第１移動端末情報を含めたメッセージであって、前記第２の移動端末から所定の第２移動端末情報を取得するための第１の１組のメッセージを前記第２の移動端末へ送信するステップと、
前記第２の移動端末が、前記所定の第２移動端末情報を含めた第２の１組のメッセージを前記第１の移動端末へ送信するステップと、
前記第１の移動端末が、前記第２の１組のメッセージに含まれた前記所定の第２移動端末情報に基づいて生成された認証情報を付加した第３のメッセージを前記第２の移動端末へ送信するステップと、
前記第２の移動端末が、前記第３のメッセージに対する応答情報を含めたメッセージであって、前記所定の第１移動端末情報に基づいて生成された認証情報を付加した第４のメッセージを前記第１の移動端末へ送信するとともに、前記第１の移動端末からの前記認証情報が正当である場合に前記バインディング情報を更新するステップと、
前記第１の移動端末が、前記第４のメッセージに付加された前記第２の移動端末からの前記認証情報が正当である場合に前記バインディング情報を更新するステップとを、
有するバインディング更新方法。
【請求項２】
前記第２の移動端末は、前記所定の第１移動端末情報を前記第２の１組のメッセージに含めて前記第１の移動端末へ送信し、
前記第１の移動端末は、前記第２の１組のメッセージに含まれる前記所定の第１移動端末情報を前記第３のメッセージに含めて前記第２の移動端末へ送信する請求項１に記載のバインディング更新方法。
【請求項３】
前記第２の移動端末は、前記所定の第１移動端末情報を前記第２の移動端末のみが復号できる形式で前記第２の１組のメッセージに含めて送信する請求項２に記載のバインディング更新方法。
【請求項４】
前記所定の第１移動端末情報は、前記第２の移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記所定の第２移動端末情報は、前記第１の移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記第１の１組のメッセージは、前記第２の移動端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、
前記第２の１組のメッセージは、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、
前記第３のメッセージは、前記第２の移動端末へのバインディングアップデートメッセージであり、
前記第４のメッセージは、前記第１の移動端末へのバインディングアップデートメッセージである請求項１に記載のバインディング更新方法。
【請求項５】
移動端末と、前記移動端末の通信相手である通信相手端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法で用いられる前記移動端末であって、
前記移動端末が前記通信相手端末のバインディング情報を保持している場合に、
所定の移動端末情報を含めたメッセージであって、前記通信相手端末から所定の通信相手端末情報を取得するための第１の１組のメッセージを生成するメッセージ生成手段と、
生成された前記第１の１組のメッセージを前記通信相手端末へ送信する送信手段と、
前記所定の通信相手端末情報を含めた第２の１組のメッセージを前記通信相手端末から受信する受信手段と、
受信した前記所定の通信相手端末情報に基づいて認証情報を生成する認証情報生成手段と、
前記バインディング情報を更新する更新手段とを備え、
前記メッセージ生成手段が、前記認証情報生成手段によって生成された前記認証情報を付加した第３のメッセージを生成し、
前記送信手段が、生成された前記第３のメッセージを前記通信相手端末へ送信し、
前記更新手段が、前記受信手段を介して受信した情報であって、前記所定の移動端末情報に基づいて前記通信相手端末により生成された認証情報が正当であるか否かを判断し、正当である場合に前記バインディング情報を更新する移動端末。
【請求項６】
移動端末と、前記移動端末の通信相手である通信相手端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法で用いられる前記移動端末であって、
所定の通信相手端末情報を含めたメッセージであって、前記移動端末から所定の移動端末情報を取得するための第１の１組のメッセージを受信する受信手段と、
前記所定の移動端末情報を含めた第２の１組のメッセージを生成するメッセージ生成手段と、
生成された前記第２の１組のメッセージを前記通信相手端末へ送信する送信手段と、
前記受信手段を介して受信した前記所定の通信相手端末情報に基づいて認証情報を生成する認証情報生成手段と、
前記受信手段を介して受信した情報であって、前記所定の移動端末情報に基づいて前記通信相手端末により生成された認証情報が正当である場合に前記バインディング情報を更新する更新手段とを備え、
前記メッセージ生成手段が、前記認証情報生成手段によって生成された前記認証情報を付加した第３のメッセージを生成し、
前記送信手段が、生成された前記第３のメッセージを前記通信相手端末へ送信する移動端末。
【請求項７】
前記メッセージ生成手段は、前記第２の１組のメッセージに含まれる前記所定の移動端末情報を含めた前記第３のメッセージを生成する請求項５に記載の移動端末。
【請求項８】
前記メッセージ生成手段は、前記第１の１組のメッセージに含まれる前記所定の通信相手端末情報を含めた前記第２の１組のメッセージを生成する請求項６に記載の移動端末。
【請求項９】
前記メッセージ生成手段は、前記所定の通信相手端末情報を前記移動端末自身のみが復号できる形式で前記第３のメッセージに含める請求項７に記載の移動端末。
【請求項１０】
前記メッセージ生成手段は、前記所定の通信相手端末情報を前記移動端末自身のみが復号できる形式で前記第２の１組のメッセージに含める請求項８に記載の移動端末。
【請求項１１】
前記所定の移動端末情報は、前記通信相手端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記所定の通信相手端末情報は、前記移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記第１の１組のメッセージは、前記通信相手端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、
前記第２の１組のメッセージは、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、
前記第３のメッセージは、前記通信相手端末へのバインディングアップデートメッセージである請求項５に記載の移動端末。
【請求項１２】
前記所定の通信相手端末情報は、前記移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記所定の移動端末情報は、前記通信相手端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記第１の１組のメッセージは、前記移動端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、
前記第２の１組のメッセージは、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、
前記第３のメッセージは、前記通信相手端末へのバインディングアップデートメッセージである請求項６に記載の移動端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バインディングアップデートにより経路の最適化がなされた通信端末間のバインディングを更新するバインディング更新方法及びその方法で用いられる移動端末に関する。
【背景技術】
【０００２】
従来から、通信装置が移動しても移動前と同じＩＰアドレスを使い続けることができる技術としてモバイルＩＰが存在する。モバイルＩＰでは、ホームエージェント（home agent）が移動通信装置（mobile node）のホームアドレス（home address）あてのパケットを受信し、移動通信装置の気付アドレス（ＣｏＡ：Care-of Address）に転送する。このため、移動通信装置は移動に伴うアドレス変更によらず、ホームアドレスを用いた通信を継続できる。【０００３】
また、パケットがホームエージェントを経由することによって移動通信装置と通信相手装置（ＣＮ：correspondent node）の通信経路が遠回りになることを改善するために、移動通信装置と通信相手装置の通信経路を直接結ぶ経路最適化（Route Optimization）技術が存在する。この経路最適化技術は、通信相手装置に移動通信装置のホームアドレスと気付アドレスの対応関係を記憶させることによって、気付アドレスを用いて通信することを特徴とする。この通信相手装置に移動通信装置のホームアドレスと気付アドレスの対応関係を記憶させる処理は、バインディング更新処理（ＢＵ：Binding Update）と呼ばれている。【０００４】
通信相手装置に対するバインディング更新処理では、ホームエージェントに対するバインディング更新処理とは異なり、バインディング更新前処理（ＲＲ：Return Routability Procedure）を必要としている。ホームエージェントと移動通信装置との間では、信頼関係をあらかじめ築いておくことができるため、このバインディング更新前処理を必要としない。ホームエージェントに対するバインディング更新処理においては、移動通信装置がホームエージェントにホームアドレスに対する新しい気付アドレスを通知したとき、ホームエージェントは、事前に確立しておいた信頼関係（ＩＰｓｅｃ ＳＡなど）によって移動通信装置からのバインディング更新要求であることを確認することができる。【０００５】
一方、通信相手装置の場合、すべての通信相手となる可能性のある通信装置に対して、バインディング更新処理を行う前に、移動通信装置と通信相手装置との間にあらかじめ信頼関係を確立しておくことは困難である。もし、信頼関係がない状態で通信相手装置がバインディング更新の要求に従ってしまうならば、移動通信装置に成りすました攻撃が容易になる。そして、攻撃者が通信相手装置にバインディング更新処理を行うと、移動通信装置へのパケットを不正な気付アドレスに転送させることが可能になる。これを防ぐ技術がバインディング更新前処理である。【０００６】
具体的には、バインディング更新前処理では、ホームアドレステスト処理（Home Test）、気付アドレステスト処理（Care-of Test）を行う。これらの処理の結果をバインディング更新処理に反映させることによって、不正なバインディング更新処理を防いでいる。なお、従来技術として説明した、モバイルＩＰ、経路最適化、バインディング更新前処理については、後述する非特許文献１に記載されている。また、バインディング更新前処理の設計思想については、後述する非特許文献２に記載されている。【０００７】
バインディング更新前処理についてもう少し詳しく説明する。ホームアドレステスト処理では、移動通信装置はＨｏＴＩ（Home Test Init）メッセージを通信相手装置に送信し、通信相手装置はＨｏＴ（Home Test）メッセージを返す。また、気付アドレステスト処理では、移動通信装置はＣｏＴＩ(Care-of Test Init)メッセージを通信相手装置に送信し、通信相手装置はＣｏＴ(Care-of Test)メッセージを返す。【０００８】
移動通信装置は、通信相手装置から応答として返されたＨｏＴメッセージ及びＣｏＴメッセージに含まれるHome keygen token（Home token）、Care-of keygen token（Care-of token）をもとに鍵を生成し、その鍵でバインディング更新（ＢＵ）メッセージのメッセージ認証コード（ＭＡＣ:Message Authentication Code）を計算し、ＢＵメッセージに付加して送信する。【０００９】
ＢＵメッセージを受信した通信相手装置は、メッセージ認証コードを確認することによって、移動通信装置から送信された正当なＢＵメッセージであると判断する。バインディング更新前処理の設計思想を説明している非特許文献２によると、このバインディング更新前処理は、通信相手装置がState（状態）を持つ必要がないように設計されている。つまり、ＨｏＴＩメッセージを受信したことがあるかどうか、ＣｏＴＩメッセージを受信したことがあるかどうかを、通信相手装置は記憶しておかなくてもＢＵメッセージの認証処理を行うことができる。【００１０】
これは、攻撃者がＨｏＴＩメッセージやＣｏＴＩメッセージを用いて通信相手装置に対してＤｏＳ攻撃（Denial of Service Attack）を行った場合に、通信相手装置の被害を小さくするためである。また、ＨｏＴＩメッセージに対してＨｏＴメッセージを返す、ＣｏＴＩメッセージに対してＣｏＴメッセージを返す、というように１つの要求メッセージに対して１つの応答メッセージを返すようにしているのは、メッセージの増加（Amplification）を行わないようにするためである。これは、要求メッセージを１つ送ったときに、複数の応答メッセージを返す仕組みにした場合、攻撃者は１つのメッセージを送ることによって、複数のターゲットを攻撃することが可能になるためである。
【非特許文献１】“Mobility Support in IPv6”，RFC3775
【非特許文献２】“Mobile IP Version 6 Route Optimization Security Design Background”,RFC4225
【００１１】
しかしながら、上記従来技術のＭＩＰｖ６では移動端末どうしがお互いにバインディングアップデートを行っているときに、その状況を効率的に利用できないという課題があった。つまり、従来の移動通信装置は、通信相手装置が自身に対してバインディングアップデートを行っている場合であっても、処理の効率化を目的としてバインディングアップデートの処理手順を変えることができなかった。【００１２】
また、移動通信装置と通信相手装置が最適化経路を用いた通信を継続するためには、双方ともバインディングキャッシュを継続するために、定期的（７分ごと）にバインディングアップデートを行わなければならない。一方の装置（端末）のバインディングキャッシュを継続するだけでは不十分である。しかしながら、従来技術では、それぞれの装置が独立にバインディングアップデートを行うことしかできなかった。【００１３】
具体的には、図１９Ａ、Ｂに示すように、端末Ａ（ＭＮ＿Ａ）と端末Ｂ（ＭＮ＿Ｂ）はそれぞれ独立に７分ごとにこのバインディングアップデートの処理を行い、相手端末に通知したバインディングキャッシュ（ホームアドレスと気付アドレスの情報）の寿命（Life Time）を更新していた。これにより、メッセージ数が多くなってしまう。
【発明の開示】
【００１４】
本発明は、上記の問題点に鑑み、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できるバインディング更新方法及びその方法で用いられる移動端末を提供することを目的とする。
【００１５】
上記目的を達成するために、本発明によれば、第１の移動端末と、前記第１の移動端末の通信相手である第２の移動端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法であって、前記第１の移動端末が前記第２の移動端末のバインディング情報を保持している場合に、前記第１の移動端末が、所定の第１移動端末情報を含めたメッセージであって、前記第２の移動端末から所定の第２移動端末情報を取得するための第１の１組のメッセージを前記第２の移動端末へ送信するステップと、前記第２の移動端末が、前記所定の第２移動端末情報を含めた第２の１組のメッセージを前記第１の移動端末へ送信するステップと、前記第１の移動端末が、前記第２の１組のメッセージに含まれた前記所定の第２移動端末情報に基づいて生成された認証情報を付加した第３のメッセージを前記第２の移動端末へ送信するステップと、前記第２の移動端末が、前記第３のメッセージに対する応答情報を含めたメッセージであって、前記所定の第１移動端末情報に基づいて生成された認証情報を付加した第４のメッセージを前記第１の移動端末へ送信するとともに、前記第１の移動端末からの前記認証情報が正当である場合に前記バインディング情報を更新するステップと、前記第１の移動端末が、前記第４のメッセージに付加された前記第２の移動端末からの前記認証情報が正当である場合に前記バインディング情報を更新するステップとを、有するバインディング更新方法が提供される。この構成により、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できる。
【００１６】
また、本発明のバインディング更新方法において、前記第２の移動端末が、前記所定の第１移動端末情報を前記第２の１組のメッセージに含めて前記第１の移動端末へ送信し、
前記第１の移動端末は、前記第２の１組のメッセージに含まれる前記所定の第１移動端末情報を前記第３のメッセージに含めて前記第２の移動端末へ送信することは、本発明の好ましい態様である。この構成により、ＤｏＳ攻撃を受けた際の被害を抑えることができる。
【００１７】
また、本発明のバインディング更新方法において、前記第２の移動端末が、前記所定の第１移動端末情報を前記第２の移動端末のみが復号できる形式で前記第２のメッセージに含めて送信することは、本発明の好ましい態様である。この構成により、他の端末に読み取られることを防ぐことができる。
【００１８】
また、本発明のバインディング更新方法において、前記所定の第１移動端末情報は、前記第２の移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記所定の第２移動端末情報は、前記第１の移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記第１の１組のメッセージは、前記第２の移動端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、前記第２の１組のメッセージは、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、前記第３のメッセージは、前記第２の移動端末へのバインディングアップデートメッセージであり、前記第４のメッセージは、前記第１の移動端末へのバインディングアップデートメッセージであることは、本発明の好ましい態様である。この構成により、適切な経路最適化を行うことができる。
【００１９】
また、本発明によれば、移動端末と、前記移動端末の通信相手である通信相手端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法で用いられる前記移動端末であって、前記移動端末が前記通信相手端末のバインディング情報を保持している場合に、所定の移動端末情報を含めたメッセージであって、前記通信相手端末から所定の通信相手端末情報を取得するための第１の１組のメッセージを生成するメッセージ生成手段と、生成された前記第１の１組のメッセージを前記通信相手端末へ送信する送信手段と、前記所定の通信相手端末情報を含めた第２の１組のメッセージを前記通信相手端末から受信する受信手段と、受信した前記所定の通信相手端末情報に基づいて認証情報を生成する認証情報生成手段と、前記バインディング情報を更新する更新手段とを備え、前記メッセージ生成手段が、前記認証情報生成手段によって生成された前記認証情報を付加した第３のメッセージを生成し、前記送信手段が、生成された前記第３のメッセージを前記通信相手端末へ送信し、前記更新手段が、前記受信手段を介して受信した情報であって、前記所定の移動端末情報に基づいて前記通信相手端末により生成された認証情報が正当であるか否かを判断し、正当である場合に前記バインディング情報を更新する移動端末が提供される。この構成により、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できる。
【００２０】
また、本発明によれば、移動端末と、前記移動端末の通信相手である通信相手端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法で用いられる前記移動端末であって、所定の通信相手端末情報を含めたメッセージであって、前記移動端末から所定の移動端末情報を取得するための第１の１組のメッセージを受信する受信手段と、前記所定の移動端末情報を含めた第２の１組のメッセージを生成するメッセージ生成手段と、生成された前記第２の１組のメッセージを前記通信相手端末へ送信する送信手段と、前記受信手段を介して受信した前記所定の通信相手端末情報に基づいて認証情報を生成する認証情報生成手段と、前記受信手段を介して受信した情報であって、前記所定の移動端末情報に基づいて前記通信相手端末により生成された認証情報が正当である場合に前記バインディング情報を更新する更新手段とを備え、前記メッセージ生成手段が、前記認証情報生成手段によって生成された前記認証情報を付加した第３のメッセージを生成し、前記送信手段が、生成された前記第３のメッセージを前記通信相手端末へ送信する移動端末が提供される。この構成により、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できる。
【００２１】
また、本発明の移動端末において、前記メッセージ生成手段が、前記第２の１組のメッセージに含まれる前記所定の移動端末情報を含めた前記第３のメッセージを生成することは、本発明の好ましい態様である。この構成により、ＤｏＳ攻撃を受けた際の被害を抑えることができる。
【００２２】
また、本発明の移動端末において、前記メッセージ生成手段が、前記第１の１組のメッセージに含まれる前記所定の通信相手端末情報を含めた前記第２の１組のメッセージを生成することは、本発明の好ましい態様である。この構成により、ＤｏＳ攻撃を受けた際の被害を抑えることができる。
【００２３】
また、本発明の移動端末において、前記メッセージ生成手段が、前記所定の通信相手端末情報を前記移動端末自身のみが復号できる形式で前記第３のメッセージに含めることは、本発明の好ましい態様である。この構成により、他の端末に読み取られることを防ぐことができる。
【００２４】
また、本発明の移動端末において、前記メッセージ生成手段が、前記所定の通信相手端末情報を前記移動端末自身のみが復号できる形式で前記第２の１組のメッセージに含めることは、本発明の好ましい態様である。この構成により、他の端末に読み取られることを防ぐことができる。
【００２５】
また、本発明の移動端末において、前記所定の移動端末情報が、前記通信相手端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記所定の通信相手端末情報が、前記移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記第１の１組のメッセージが、前記通信相手端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、前記第２の１組のメッセージが、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、前記第３のメッセージが、前記通信相手端末へのバインディングアップデートメッセージであることは、本発明の好ましい態様である。この構成により、適切な経路最適化を行うことができる。
【００２６】
また、本発明の移動端末において、前記所定の通信相手端末情報が、前記移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記所定の移動端末情報が、前記通信相手端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記第１の１組のメッセージが、前記移動端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、前記第２の１組のメッセージが、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、前記第３のメッセージが、前記通信相手端末へのバインディングアップデートメッセージであることは、本発明の好ましい態様である。この構成により、適切な経路最適化を行うことができる。
【００２７】
本発明のバインディング更新方法及びその方法で用いられる移動端末は、上記構成を有し、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できる。
【図面の簡単な説明】
【００２８】
【図１Ａ】本発明の第１の実施の形態におけるメッセージ数の削減について説明するための図
【図１Ｂ】本発明の第１の実施の形態におけるメッセージ数の削減について説明するための他の図
【図２】本発明の第１の実施の形態に係る移動端末の構成の一例を示す構成図
【図３】本発明の第１の実施の形態に係る他の移動端末の構成の一例を示す構成図
【図４】本発明の第２の実施の形態を説明するためのＭＩＰの基本原理について説明するための図
【図５】本発明の第２の実施の形態を説明するためのＭＩＰの基本原理について説明するための他の図
【図６】本発明の第２の実施の形態におけるメッセージ数の削減について説明するための図
【図７】本発明の第２の実施の形態についてさらに詳細に説明するための図
【図８】本発明の第２の実施の形態における両端末間での情報のやりとりの様子を示す図
【図９】本発明の第２の実施の形態に係る移動端末の構成の一例を示す構成図
【図１０】本発明の第２の実施の形態に係る他の移動端末の構成の一例を示す構成図
【図１１】本発明の第２の実施の形態における結合バインディングアップデートの開始側の移動端末の処理フローの一例を示すフローチャート
【図１２Ａ】本発明の第２の実施の形態における結合バインディングアップデートの応答側の移動端末の処理フローの一部を示すフローチャート
【図１２Ｂ】本発明の第２の実施の形態における結合バインディングアップデートの応答側の移動端末の処理フローの他の一部を示すフローチャート
【図１３】本発明の第３の実施の形態におけるメッセージ数の削減について説明するための他の図
【図１４】本発明の第３の実施の形態における両端末間での情報のやりとりの様子を示す図
【図１５】本発明の第３の実施の形態に係る移動端末の構成の一例を示す構成図
【図１６】本発明の第３の実施の形態に係る他の移動端末の構成の一例を示す構成図
【図１７】本発明の第３の実施の形態における結合バインディングアップデートの開始側の移動端末の処理フローの一例を示すフローチャート
【図１８Ａ】本発明の第３の実施の形態における結合バインディングアップデートの応答側の移動端末の処理フローの一部を示すフローチャート
【図１８Ｂ】本発明の第３の実施の形態における結合バインディングアップデートの応答側の移動端末の処理フローの他の一部を示すフローチャート
【図１９Ａ】従来の両端末間で行われるバインディングアップデートを説明するための図
【図１９Ｂ】従来の両端末間で行われるバインディングアップデートを説明するための他の図
【発明を実施するための最良の形態】
【００２９】
＜第１の実施の形態＞
第１の実施の形態について説明する。図１Ａに示すような多くのメッセージ数を減らすため、図１Ｂに示すように、両端末が行うバインディングアップデートを同期させ、受信側の端末がメッセージを重ねて送信するよう構成した。【００３０】
すなわち、図１Ｂに示すように、端末Ａから開始したバインディングアップデートの手順に、端末Ｂが同期してバインディングアップデートを行う（以降、結合バインディングアップデートとよぶ）。端末Ｂは、端末ＡからのＨｏＴＩに対してＨｏＴを応答として返すが、それと同時にＨｏＴＩを送信する。同様に、端末Ｂは端末ＡからのＣｏＴＩに対してＣｏＴを応答として返すと同時にＣｏＴＩを送信する。そして、端末Ｂは端末ＡからのＢＵに対して、ＢＡを応答として返すと同時にＢＵを送信する。このとき端末Ｂが送信するＨｏＴとＨｏＴＩを１つのメッセージにし、同様にＣｏＴとＣｏＴＩ、ＢＡとＢＵを１つのメッセージにすることによって、メッセージ数を削減することができる。【００３１】
ここで、結合バインディングアップデートの開始側の移動端末（ここでは端末Ａ）について図２を用いて説明する。メッセージ生成部２０１は、通信相手端末（端末Ｂ）から情報Ｂ１、Ｂ２それぞれを取得するためのＨｏＴＩ、ＣｏＴＩメッセージそれぞれを生成する。送信部２０２は、生成されたＨｏＴＩ、ＣｏＴＩメッセージを端末Ｂへ送信する。受信部２０３は、情報Ｂ１を含むメッセージであって、情報Ａ１を取得するためのＨｏＴメッセージ、及び情報Ｂ２を含むメッセージあって、情報Ａ２を取得するためのＣｏＴメッセージを受信する。【００３２】
認証情報生成部２０４は、情報Ｂ１、Ｂ２に基づいて認証コードをそれぞれ生成し、生成された認証コードは、送信部２０２によって端末Ｂへ送信される。更新部２０５は、受信部２０３を介して受信したコード情報であって、情報Ａ１、Ａ２に基づいて端末Ｂによって生成された認証コードが正当であるか否かを判断し、正当である場合にバインディング情報を更新する。記憶部２０６は、バインディングキャッシュなどの情報を格納する。【００３３】
次に、結合バインディングアップデートの応答側の移動端末（ここでは端末Ｂ）について図３を用いて説明する。受信部３０１は、情報Ｂ１、Ｂ２を取得するためのＨｏＴＩ、ＣｏＴＩメッセージを端末Ａから受信する。メッセージ生成部３０２は、情報Ｂ１を含めたメッセージであって、端末Ａから情報Ａ１を取得するためのＨｏＴメッセージ、及び情報Ｂ２を含めたメッセージであって、端末Ａから情報Ａ２を取得するためのＣｏＴメッセージを生成する。【００３４】
送信部３０３は、生成されたＨｏＴ、ＣｏＴメッセージを端末Ａへ送信する。認証情報生成部３０４は、受信部３０１を介して受信した情報Ｂ１、Ｂ２に基づいて認証コードを生成し、生成された認証コードは送信部３０３によって端末Ａに送信される。更新部３０５は、受信部３０１を介して受信した情報であって、情報Ｂ１、Ｂ２に基づいて端末Ａによって生成されたそれぞれの認証コードが正当であるか否かを判断し、正当である場合にバインディング情報を更新する。記憶部３０６は、バインディングキャッシュなどの情報を格納する。【００３５】
＜第２の実施の形態＞
第２の実施の形態について説明する。まず、ＭＩＰの基本原理について説明する。図４には端末Ａからのバインディングアップデートの様子を示している。端末Ａは端末Ｂに気付アドレス（ＣｏＡ）が自身のアドレスであることを端末Ｂに証明しようとしている。そのため、端末Ｂに端末Ａのホームアドレス（ＨｏＡ）とＣｏＡにそれぞれメッセージを送信してもらい、その両方を受信したことを端末Ｂに示す。【００３６】
簡単に説明すると、端末Ｂは端末ＡのＨｏＡあてに情報Ｂ１を送信し、端末ＡのＣｏＡあてに情報Ｂ２を送信する。端末ＡはＢ１とＢ２を用いて鍵データであるＫｅｙ（Ｂ１、Ｂ２）を生成し、その鍵データを用いて認証コードを生成する。端末Ｂは端末Ａからの認証コードを確認することによって、端末Ａが鍵データを正しく生成できたことを確認し、端末Ａが情報Ｂ１と情報Ｂ２を受信したと判定する。【００３７】
より具体的に説明すると、端末ＡはＨｏＴＩを端末Ｂに送信し、情報Ｂ１をＨｏＴに含めて端末ＡのＨｏＡあてに送信させる。また、端末ＡはＣｏＴＩを端末Ｂに送信し、情報Ｂ２をＣｏＴに含めて端末ＡのＣｏＡあてに送信させる。そして、情報Ｂ１と情報Ｂ２を用いて鍵データであるＫｅｙ（Ａ１、Ａ２）を生成し、その鍵を用いて送信するＢＵメッセージの認証コードを生成し、認証コードをＢＵメッセージに付加して端末Ｂに送信する。端末Ｂは、ＢＵを受信するとＢ１とＢ２から鍵データを生成し、認証コードが正しいかどうか確認する。なお、図５は端末Ｂからのバインディングアップデートの様子を示している。【００３８】
以上を踏まえて、上述した第１の実施の形態よりさらにメッセージ数を減らすことができる態様について図６を用いて説明する。この態様では、端末Ａが端末Ｂからの要求を受ける前に、端末ＢのＨｏＡに情報Ａ１を、ＣｏＡに情報Ａ２を送信する。これは、従来なら端末ＢからＨｏＴＩ、ＣｏＴＩメッセージを受信した後応答として返す情報である。しかし、端末Ａが端末Ｂのバインディングキャッシュを持っている場合、端末Ａは端末ＢのＨｏＡとＣｏＡを既に知っているため、図６に示すように、端末Ｂのバインディングアップデートの処理を端末Ａから開始することができる。【００３９】
さらに、端末Ａは、端末Ｂに対するＨｏＴＩメッセージ６０１、ＣｏＴＩメッセージ６０３を用いて情報Ａ１と情報Ａ２を送信することによって、端末Ａのバインディングアップデートも同時に開始することができる。端末Ａは、端末Ｂからの応答メッセージであるＨｏＴメッセージ６０２、ＣｏＴメッセージ６０４を受信し、その応答メッセージに含まれる情報Ｂ１、Ｂ２を用いて鍵データ（Ｋｅｙ（Ｂ１、Ｂ２））を作成し、ＢＵメッセージ６０５を送信し、鍵データ（Ｋｅｙ（Ｂ１、Ｂ２））を生成できたことを示す。【００４０】
端末Ｂは、そのＢＵメッセージ６０５を確認し、端末Ａのバインディングアップデートを承認するとともに、先に送られてきた情報Ａ１と情報Ａ２をもとに鍵データ（Ｋｅｙ（Ａ１、Ａ２））を生成し、ＢＵメッセージ６０５の応答としてＢＡメッセージ６０６を送る際に、端末Ｂが鍵データ（Ｋｅｙ（Ａ１、Ａ２））を生成できたことを示す。端末Ａは、そのＢＡメッセージ６０６を確認し、端末Ｂのバインディングアップデートを承認する。なお、端末Ａは承認完了の旨のメッセージ６０７を端末Ｂに送信するようにしてもよい。以上のように、本実施の形態の方法を用いることによって、第１の実施の形態と比較して、バインディングアップデートに要するメッセージ数を更に削減することができる。【００４１】
ここで、第２の実施の形態をより詳細に説明する。端末Ａが端末Ｂからのバインディングアップデートを受け、端末ＢのホームアドレスＢ−ＨｏＡと気付アドレスＢ−ＣｏＡを知っている状態にあるとする。端末Ａは、端末Ｂにバインディングアップデートを行うとき、端末Ｂのバインディングキャッシュ情報を保持しているかどうかを確認する。保持していない場合には、通常のＭＩＰのバインディングアップデート処理を行う。一方、端末Ａが、端末Ｂのバインディングキャッシュ情報を保持している場合、図７に示すように、端末Ａと端末Ｂの両方のバインディングアップデートを同時に行うことを試みる。【００４２】
端末Ａは、端末ＢのＨｏＡあてにＨｏＴＩを送信する。送信元アドレスは端末ＡのＨｏＡであり、端末Ｂからの応答メッセージＨｏＴは、この送信元アドレスである端末ＡのＨｏＡあてに送信される。メッセージＨｏＴＩには情報Ａ１が含まれる。端末Ｂは、ＨｏＴＩを受信すると、応答メッセージＨｏＴを端末Ａに送信する。端末ＢのＨｏＡで受信したメッセージの応答であるため、送信元アドレスは端末ＢのＨｏＡであり、あて先アドレスは要求メッセージＨｏＴＩの送信元アドレスである端末ＡのＨｏＡである。【００４３】
同様に、端末Ａは端末ＢのＣｏＡあてにＣｏＴＩを送信する。送信元アドレスは端末ＡのＣｏＡである。ＣｏＴＩメッセージには情報Ａ２が含まれる。端末Ｂは、ＣｏＴＩを受信すると、応答メッセージＣｏＴを端末Ａに送信する。端末ＢのＣｏＡで受信したメッセージの応答であるため、送信元アドレスは端末ＢのＣｏＡであり、あて先アドレスは要求メッセージＣｏＴＩの送信元アドレスである端末ＡのＣｏＡである。【００４４】
端末Ａは、応答メッセージのＨｏＴとＣｏＴに含まれる情報Ｂ１とＢ２を用いて鍵データを生成し、その鍵データを用いて認証コードを生成し、ＢＵメッセージに認証コードを付加して、端末Ｂに送信する。端末Ｂは、ＢＵメッセージを受信すると認証コードを確認し、端末Ａのバインディングキャッシュが正しいと判定し、寿命（Life Time）を延長する。また、端末Ｂは、応答メッセージであるＢＡを送信する際に、ＨｏＴＩとＣｏＴＩに含まれていた情報Ａ１とＡ２を用いて鍵データを生成し、その鍵データを用いて認証コードを生成し、ＢＡメッセージに認証コードを付加して、端末Ａに送信する。端末Ａは、ＢＡメッセージを受信すると認証コードを確認し、端末Ｂのバインディングキャッシュが正しいと判定し、寿命を延長する。【００４５】
上述した様子について図８を用いて更に詳しく説明する。端末Ａは、ＨｏＴＩにA-Token-hを付加して端末Ｂに送信する。A-Token-hの生成方法は、原理的には任意でよく特に定める必要はない。しかし、従来技術のＭＩＰをできるだけ利用する方法として次のような生成方法が考えられる。【００４６】
A-Token-h = HMAC SHA1 (B-HoA, A-Key, nonce)【００４７】
なお、ここではトークン値の計算にハッシュ関数（HMAC SHA1）を用いる場合について述べるが、それ以外の関数あるいは生成式を用いるものであってもよい。【００４８】
B-HoAとは端末Ｂのホームアドレスであり、A-Keyとは端末Ａの秘密鍵である。nonceは端末ＡがHome Tokenを生成するときに使用する乱数である。端末Ｂは、端末ＡからのＨｏＴＩを受信しＨｏＴを応答として返す。ＨｏＴには、B-Token-h、B-nonce-hを含める。B-Token-hの計算方法は従来のＭＩＰとは異なる。従来のＭＩＰでは次のようにB-Token-hを計算した。【００４９】
B-Token-h = HMAC SHA1 (A-HoA, B-Key, B-nonce-h)【００５０】
本発明の方法では、次のように計算する。【００５１】
B-Token-h = HMAC SHA1 (A-HoA, B-HoA, B-Key, B-nonce-h)【００５２】
つまり、端末ＢのホームアドレスB-HoAを加えてB-Token-hを計算する。B-Token-hの計算に用いるA-HoAは、ＨｏＴＩメッセージの送信元アドレスであり、B-HoAはあて先アドレスである。また、ＨｏＴＩメッセージに含まれていたA-Token-hは、端末Ｂが保持する。例えば、端末Ａのバインディングキャッシュの中にHome Tokenを保持する領域を確保し、送信されてきた最新の値を保持するといった方法が考えられる。【００５３】
端末Ａは、ＨｏＴＩの送信と並行してＣｏＴＩを送信してもよい。つまり、ＨｏＴを受信する前にＣｏＴＩを送信してよい。またＨｏＴＩの前にＣｏＴＩを送信してもよい。端末Ａは、ＣｏＴＩにA-Token-cを付加して端末Ｂに送信する。A-Token-cの生成方法は次のような方法が考えられる。【００５４】
A-Token-c = HMAC SHA1 (B-CoA, A-Key, nonce)【００５５】
B-CoAとは端末Ｂの気付アドレスであり、A-Keyとは端末Ａの秘密鍵である。nonceは端末ＡがCare-of Tokenを生成するときに使用する乱数である。端末Ｂは、端末ＡからのＣｏＴＩを受信しＣｏＴを応答として返す。ＣｏＴには、B-Token-c、B-nonce-cを含める。B-Token-cの計算方法は従来のＭＩＰとは異なり、次のように計算する。【００５６】
B-Token-c = HMAC SHA1 (A-CoA, B-CoA, B-Key, B-nonce-c)【００５７】
つまり、端末Ｂの気付アドレスB-CoAを加えてB-Token-cを計算する。B-Token-cの計算にもちいるA-CoAは、ＣｏＴＩメッセージの送信元アドレスであり、B-CoAはあて先アドレスである。また、端末ＢはA-Token-cをA-Token-hと同様に保持しておく。端末Ａは、ＨｏＴＩメッセージの応答としてＨｏＴを受信し、ＣｏＴＩメッセージの応答としてＣｏＴを受信すると、それぞれのメッセージに含まれるB-Token-hとB-Token-cを用いて鍵データであるＫｅｙ Ｂを生成する。【００５８】
Key B = HMAC SHA1 (B-Token-h, B-Token-c)【００５９】
端末Ａはこの鍵データＫｅｙ Ｂを用いてＢＵメッセージの認証コードＢ−ＭＡＣを生成する。【００６０】
B-MAC = HMAC SHA1 (Key B, BU message)【００６１】
端末Ａは、ＢＵメッセージに次のデータのB-nonce-h、B-nonce-c、B-MAC、A-HoA、B-HoAを付加して端末Ｂに送信する。端末Ｂは、ＢＵメッセージを受信し、B-nonce-h、B-HoA、A-HoAを用いてB-Token-hを生成する。また、ＢＵメッセージの送信元アドレスA-CoA、あて先アドレスB-CoA、B-nonce-cを用いてB-Token-cを生成する。生成したB-Token-hとB-Token-cを用いてＫｅｙ Ｂを生成し、ＢＵメッセージに付加されているB-MACが正しいかどうか検査する。【００６２】
Ｂ−ＭＡＣの検査結果が正しい場合には、端末Ｂは端末Ａのバインディングキャッシュの寿命の更新を行う。また新規の設定も可能である。一方、Ｂ−ＭＡＣの検査結果が正しくなかった場合には、メッセージを破棄することやエラーメッセージを返すといった対応を取る。また、端末Ｂは保持していた情報A-Token-hとA-Token-cを用いて次のように鍵データＫｅｙ Ａを生成する。【００６３】
Key A = HMAC SHA1 (A-Token-h, A-Token-c)【００６４】
端末Ｂはこの鍵データＫｅｙ Ａを用いてＢＡメッセージの認証コードＡ−ＭＡＣを生成する。【００６５】
A-MAC = HMAC SHA1 (Key A, BA message)【００６６】
端末Ｂは、ＢＡメッセージに、通常のＭＩＰと同様にＫｅｙ Ｂで生成した認証コードＢ−ＭＡＣを付加するとともに、新しいＫｅｙ Ａで生成した認証コードＡ−ＭＡＣを付加する。端末Ａは、ＢＡメッセージを受信し、Ｋｅｙ Ｂ及びＫｅｙ Ａを用いて認証コードを検証し、正しい場合には、端末Ｂのバインディングキャッシュの寿命の更新を行う。認証コードの検証結果が正しくなかった場合には、メッセージを破棄することやエラーメッセージを返すといった対応を取る。なお、上記ではＫｅｙ ＡとＫｅｙ Ｂを分ける場合で説明したが、合わせて一つの鍵データにしてもよい。例えば、次のように鍵データを生成してもよい。【００６７】
Key AB = HMAC SHA1 (A-Token-h, A-Token-c, B-Token-h, B-Token-c)【００６８】
次に、結合バインディングアップデートの開始側の移動端末について図９を用いて説明する。まず、ＨｏＴＩ／ＣｏＴＩの送信について説明する。メッセージ作成部９０１は、結合バインディング判定部９０２に通常のバインディングアップデートか、結合バインディングアップデートかの判定を要求する。結合バインディング判定部９０２は、バインディングキャッシュ管理部９０３に、これからバインディングアップデートを行う相手端末からのバインディングキャッシュが登録されているかどうかを確認する。登録されていない場合には、通常のバインディングアップデートを行う。【００６９】
結合バインディングアップデートを行う場合には、メッセージ作成部９０１はＡ−Ｔｏｋｅｎ生成部９０４にHome Token及びCare-of Tokenを生成させ、そのTokenを付加してＨｏＴＩメッセージ及びＣｏＴＩメッセージを生成し、メッセージ送信部９０５より送信する。Ａ−Ｔｏｋｅｎ生成部９０４で作成したHome Token及びCare-of TokenはＡ−Ｔｏｋｅｎ保存部９０６において保存しておく。【００７０】
次に、ＨｏＴ／ＣｏＴの受信について説明する。ＨｏＴＩ及びＣｏＴＩメッセージの応答メッセージであるＨｏＴ及びＣｏＴメッセージは、メッセージ受信部９０７によって受信される。受信したＨｏＴ及びＣｏＴに含まれる相手端末が生成したToken及びNonce-ID（応答側の移動端末がNonceの値を呼び出すための識別番号）はＢ−Ｔｏｋｅｎ保存部９０８及びＮｏｎｃｅ保存部９０９に保存される。【００７１】
次に、ＢＵの送信について説明する。ＨｏＴメッセージとＣｏＴメッセージの両方を受信したとき、Ｂ−Ｔｏｋｅｎ保存部９０８にはHome TokenとCare-of Tokenの両方のTokenが揃っているため、それらのTokenを用いてＢ−Ｋｅｙ生成部９１０において鍵データを生成する。メッセージ認証コード生成部９１１は、Ｂ−Ｋｅｙ生成部９１０において生成された鍵データを用いてメッセージ認証コード（上述した認証コードに相当）を生成し、メッセージ作成部９０１に渡す。メッセージ作成部９０１では、生成されたメッセージ認証コードをＢＵメッセージに付加する。またＮｏｎｃｅ保存部９０９に保存しておいたNonce-IDもＢＵメッセージに付加する。そしてメッセージ送信部９０５よりＢＵメッセージを送信する。【００７２】
次に、ＢＡの受信について説明する。ＢＡメッセージをメッセージ受信部９０７で受信し、メッセージ認証コード判定部９１２においてメッセージの判定を行う。メッセージの判定のために、Ａ−Ｋｅｙ生成部９１３は、Ａ−Ｔｏｋｅｎ保存部９０６に保存しておいたHome TokenとCare-of Tokenを取り出し、鍵データを生成する。メッセージ認証コード生成部９１１はＡ−Ｋｅｙ生成部９１３により生成された鍵データを用いてメッセージ認証コードを生成する。メッセージ認証コード判定部９１２は、その生成されたメッセージ認証コードと、ＢＵメッセージに付加されていたメッセージ認証コードを比較し、一致するかどうか判定する。【００７３】
メッセージ認証コードが一致した場合に、バインディングキャッシュ管理部９０３にバインディングキャッシュを登録する。その後で、ＢＡメッセージに対する応答をメッセージ作成部９０１において作成し、メッセージ送信部９０５より送信する。【００７４】
次に、結合バインディングアップデートの応答側の移動端末について図１０を用いて説明する。まず、ＨｏＴＩ／ＣｏＴＩの受信について説明する。ＨｏＴＩ及びＣｏＴＩメッセージをメッセージ受信部１００１で受信し、結合バインディングアップデートの場合には、メッセージに含まれるHome Token又はCare-of TokenをＡ−Ｔｏｋｅｎ保存部１００２に渡す。また、結合バインディングＢ−Ｔｏｋｅｎ生成部１００３はB-Token（Home Token又はCare-of Token）を生成する。B-Tokenを生成するときに必要なNonce(home nonce又はcare-of nonce)はＮｏｎｃｅ管理部１００４より取得する。【００７５】
B-Home Token = SHA1 (A-HoA, B-HoA, B-Key, B-home nonce)
B-Care-of Token = SHA1 (A-CoA, B-CoA, B-Key, B-care-of nonce)【００７６】
次に、ＨｏＴ／ＣｏＴの送信について説明する。結合バインディングＢ−Ｔｏｋｅｎ生成部１００３より生成したToken及び生成に用いたNonceを呼び出すためのNonce-IDを取得し、応答メッセージに付加する。応答メッセージは受信メッセージがＨｏＴＩの場合にはＨｏＴメッセージであり、ＣｏＴＩの場合にはＣｏＴメッセージである。メッセージ作成部１００５が作成した応答メッセージは、メッセージ送信部１００６から送信される。【００７７】
次に、ＢＵの受信について説明する。ＢＵメッセージをメッセージ受信部１００１で受信し、結合バインディングアップデートの場合には、結合バインディングＢ−Ｔｏｋｅｎ生成部１００３においてHome Token及びCare-of Tokenを生成する。Token生成のときには、受信したＢＵメッセージに含まれるNonce-IDを用いてＮｏｎｃｅ管理部１００４からNonceの値を取り出し、それを用いる。また、ＢＵメッセージに含まれるメッセージ認証コードをメッセージ認証コード比較部１００７に渡す。【００７８】
結合バインディングＢ−Ｔｏｋｅｎ生成部１００３で生成したHome Token及びCare-of TokenをＢ−Ｋｅｙ生成部１００８に渡し、Ｂ−Ｋｅｙ生成部１００８において鍵データを生成する。そして、生成した鍵データを用いて、メッセージ認証コード生成部１００９において、メッセージ認証コードを生成する。生成したメッセージ認証コードとＢＵメッセージに含まれていたメッセージ認証コードが一致するかどうかをメッセージ認証コード比較部１００７で比較する。メッセージ認証コードが一致した場合は、バインディングキャッシュ管理部１０１１にバインディングキャッシュを設定又は更新する。【００７９】
次に、ＢＡの送信について説明する。Ａ−Ｔｏｋｅｎ保存部１００２に保存しておいたTokenを用いてＡ−Ｋｅｙ生成部１０１０において鍵データを生成し、メッセージ認証コード生成部１００９でメッセージ認証コードを生成する。メッセージ作成部１００５は、生成されたメッセージ認証コードをＢＡメッセージに付加し、メッセージ送信部１００６よりＢＡメッセージを送信する。ＢＡメッセージに対する応答メッセージは、メッセージ受信部１００１で受信し、メッセージ認証コードを確認し、バインディングキャッシュ管理部１０１１においてバインディングキャッシュを更新する。【００８０】
なお、上述したように、結合バインディングアップデートの開始側の移動端末と応答側の移動端末の構成が異なっているが、通常はすべての移動端末が開始側にも応答側にもなり得るため、移動端末は上述した開始側と応答側の機能それぞれを有することが好ましい。【００８１】
次に、結合バインディングアップデートの開始側の移動端末の処理フローについて図１１を用いて説明する。図１１に示すように、移動端末は、バインディングアップデートを行おうとしている相手端末のバインディングキャッシュが存在しているかの確認処理を開始し（ステップＳ１１０１）、相手端末のバインディングキャッシュが存在しているか否かを判断する（ステップＳ１１０２）。バインディングキャッシュが存在する場合、移動端末は、相手端末のホームアドレスを用いたHome Token及び相手端末のＣｏＡを用いたCare-of Tokenを生成する（ステップＳ１１０３）。【００８２】
そして、移動端末は、Home Tokenを含んだ結合バインディングアップデートのＨｏＴＩメッセージ、Care-of Tokenを含んだ結合バインディングアップデートのＣｏＴＩメッセージをそれぞれ送信する（ステップＳ１１０４）。移動端末は、応答メッセージのＨｏＴメッセージ、ＣｏＴメッセージを待つと同時にタイマーをスタートさせる（ステップＳ１１０５）。移動端末は、タイムアウト前に応答（メッセージ）を受信したか否かを判断する（ステップＳ１１０６）。【００８３】
タイムアウト前に応答メッセージを受信した場合、移動端末はＢＵメッセージを生成する。すなわち、移動端末は、受信したＨｏＴ、ＣｏＴに含まれるTokenを用いて鍵データを生成し、メッセージ認証コードを生成し、生成されたメッセージ認証コードを付加したＢＵメッセージを生成し、送信する（ステップＳ１１０７）。移動端末は、応答メッセージのＢＡメッセージを待つと同時にタイマーをスタートさせる（ステップＳ１１０８）。移動端末は、タイムアウト前に応答（メッセージ）を受信したか否かを判断する（ステップＳ１１０９）。【００８４】
タイムアウト前に応答メッセージを受信した場合、移動端末は最初に送信したHome Token、Care-of Tokenから鍵データを生成し、ＢＡメッセージに含まれるメッセージ認証コードが正しいか否かの確認処理を開始する（ステップＳ１１１０）。メッセージ認証コードが正しいか否かを判断し（ステップＳ１１１１）、正しいと判断された場合、移動端末は、自身のバインディングキャッシュ及び相手端末のバインディングキャッシュの設定及び更新を行い、応答メッセージを送信する（ステップＳ１１１２）。【００８５】
なお、ステップＳ１１０２において、バインディングキャッシュが存在しないと判断された場合には、従来のＭＩＰのバインディングアップデートを開始する（ステップＳ１１１３）。また、ステップＳ１１０６、Ｓ１１０９において、タイムアウト前に応答メッセージを受信できなかった場合、再送回数が所定の数値Ｎよりも小さければ再送を行う（ステップＳ１１１４、Ｓ１１１５）。また、ステップＳ１１１１において、メッセージ認証コードが正しくないと判断された場合、バインディングキャッシュの更新を行わないことを確認する（ステップＳ１１１６）。【００８６】
次に、結合バインディングアップデートの応答側の移動端末の処理フロー（結合バインディングアップデートのメッセージの受信からそれに対する応答メッセージを送信するまで）について図１２Ａを用いて説明する。図１２Ａに示すように、移動端末は、ＨｏＴＩ又はＣｏＴＩを受信し、結合バインディングアップデートのメッセージかどうかの判定処理を開始する（ステップＳ１２０１）。移動端末は、結合バインディングアップデートのメッセージか否かを判断し（ステップＳ１２０２）、結合バインディングアップデートのメッセージである場合、受信した開始側の移動端末のHome Token又はCore-of Tokenを保持する（ステップＳ１２０３）。【００８７】
移動端末は、Home Tokenの場合には両端末のホームアドレスを含め、Care-of Tokenの場合には両端末のＣｏＡを含めたTokenを生成する（ステップＳ１２０４）。生成されたTokenを付加して応答メッセージを生成し、応答メッセージを送信する（ステップＳ１２０５）。なお、ステップＳ１２０２において、結合バインディングアップデートのメッセージではないと判断された場合、移動端末は、従来のＭＩＰのバインディングアップデート処理として応答を送信する（ステップＳ１２０６）。【００８８】
次に、結合バインディングアップデートの応答側の移動端末の処理フロー（ＢＵメッセージの受信からＢＡメッセージを送信するまで）について図１２Ｂを用いて説明する。図１２Ｂに示すように、移動端末は、ＢＵ（メッセージ）を受信し、結合バインディングアップデートのメッセージかどうかの判定処理を開始する（ステップＳ１２１０）。移動端末は、結合バインディングアップデートのメッセージか否かを判断し（ステップＳ１２１１）、結合バインディングアップデートのメッセージである場合、ＢＵに含まれるアドレス、Nonceの情報を用いてTokenを生成し、Tokenを用いて鍵データを生成し、付加されているメッセージ認証コードの確認処理を開始する（ステップＳ１２１２）。【００８９】
移動端末は、メッセージ認証コードが正しいか否かを判断し（ステップＳ１２１３）、正しい場合には、バインディングキャッシュの設定、更新を行い、保持していた開始側の移動端末のTokenを用いて鍵データを生成し、メッセージ認証コードを生成し、ＢＡメッセージに含めて送信する（ステップＳ１２１４）。なお、ステップＳ１２１１において、結合バインディングアップデートのメッセージでない場合、移動端末は、従来のＭＩＰのバインディングアップデートを開始する（ステップＳ１２１５）。また、ステップＳ１２１３において、メッセージ認証コードが正しくないと判断された場合、バインディングキャッシュの設定、更新を行わないことを確認する（ステップＳ１２１６）。【００９０】
＜第３の実施の形態＞
第２の実施の形態と同様に、端末Ａが端末Ｂからのバインディングアップデートを受け、端末ＢのホームアドレスB-HoAと気付アドレスB-CoAを知っている状態にあるとする。端末Ａは、端末Ｂにバインディングアップデートを行うとき、端末Ｂのバインディングキャッシュ情報を保持しているかどうかを確認する。保持していない場合には、通常のＭＩＰのバインディングアップデート処理を行う。端末Ａが、端末Ｂのバインディングキャッシュ情報を保持している場合、端末Ａと端末Ｂの両方のバインディングアップデートを同時に行うことを試みる。なお、第３の実施の形態の説明においても、第２の実施の形態の説明で用いた図７を用いて説明する。【００９１】
端末Ａは、端末ＢのＨｏＡあてにＨｏＴＩを送信する。送信元アドレスは端末ＡのＨｏＡであり、端末Ｂからの応答メッセージＨｏＴは、この送信元アドレスである端末ＡのＨｏＡあてに送信される。メッセージＨｏＴＩには情報Ａ１が含まれる。端末Ｂは、ＨｏＴＩを受信すると、応答メッセージＨｏＴを端末Ａに送信する。端末ＢのＨｏＡで受信したメッセージの応答であるため、送信元アドレスは端末ＢのＨｏＡであり、あて先アドレスは要求メッセージＨｏＴＩの送信元アドレスである端末ＡのＨｏＡである。【００９２】
同様に、端末Ａは、端末ＢのＣｏＡあてにＣｏＴＩを送信する。送信元アドレスは、端末ＡのＣｏＡである。ＣｏＴＩメッセージには情報Ａ２が含まれる。端末Ｂは、ＣｏＴＩを受信すると、応答メッセージＣｏＴを端末Ａに送信する。端末ＢのＣｏＡで受信したメッセージの応答であるため、送信元アドレスは端末ＢのＣｏＡであり、あて先アドレスは要求メッセージＣｏＴＩの送信元アドレスである端末ＡのＣｏＡである。【００９３】
端末Ａは、応答メッセージのＨｏＴとＣｏＴに含まれる情報Ｂ１とＢ２を用いて鍵データを生成し、その鍵データを用いて認証コードを生成し、ＢＵメッセージに認証コードを付加して、端末Ｂに送信する。端末Ｂは、ＢＵメッセージを受信すると認証コードを確認し、端末Ａのバインディングキャッシュが正しいと判定し、寿命（Life Time）を延長する。【００９４】
そして、応答メッセージであるＢＡを送信する際に、ＨｏＴＩとＣｏＴＩに含まれていた情報Ａ１とＡ２を用いて鍵データを生成し、その鍵データを用いて認証コードを生成し、ＢＡメッセージに認証コードを付加して、端末Ａに送信する。端末Ａは、ＢＡメッセージを受信すると認証コードを確認し、端末Ｂのバインディングキャッシュが正しいと判定し、寿命を延長する。ここまでは第２の実施の形態で同様である。【００９５】
次に第３の実施の形態におけるバインディング情報更新方式の特徴を説明する。端末Ａから２つの端末のバインディングアップデートを開始する場合、端末Ａから端末Ｂに情報Ａ１とＡ２を送り、端末Ｂに記憶させている。そのためセキュリティの観点から考えたとき、攻撃者が端末Ｂに異なる情報からなるＨｏＴＩ、ＣｏＴＩを大量に送りつけ、情報を覚えさせてメモリーを浪費させるという攻撃（ＤｏＳ攻撃）が想定される。これを防ぐために、端末ＢはＨｏＴＩメッセージ１３０１を受信し、情報Ａ１を取得するとその情報をＨｏＴメッセージ１３０２に含めて端末Ａに送り返すことも可能である。【００９６】
その様子を図１３に示した。同様に、端末ＢはＣｏＴＩメッセージ１３０３を受信し、情報Ａ２をＣｏＴメッセージ１３０４に含めて端末Ａに送り返す。端末Ａは、送り返された情報Ａ１とＡ２をＢＵメッセージ１３０５に含めて端末Ｂに送信する。端末Ｂは、ＢＵメッセージ１３０５に含まれる情報Ａ１とＡ２を用いて鍵データであるＫｅｙ Ａ（Ａ１、Ａ２）を生成し、認証コードを作成する。そして、端末Ｂは生成されたＫｅｙ Ａ（Ａ１、Ａ２）をＢＡメッセージ１３０６に含めて端末Ａに送信する。なお、端末ＡはＫｅｙ Ａ（Ａ１、Ａ２）を確認し、端末Ｂのバインディングアップデートの承認をした場合、承認完了の旨のメッセージ１３０７を端末Ｂに送信するようにしてもよい。また、端末Ｂは、情報Ａ１及びＡ２を端末Ａに送り返すとき、署名、暗号化して送り返してもよい。署名を検証し、復号化してもとの情報に戻せるのは端末Ｂだけであるので、返送されるまでの間に改竄等される危険を防ぐことができるからである。【００９７】
ここで、第３の実施の形態におけるメッセージシーケンスについて図１４を用いて詳しく説明する。端末Ａは、ＨｏＴＩにA-Token-hを付加して端末Ｂに送信する。A-Token-hの生成方法は、原理的には任意でよく特に定める必要はない。しかし、従来技術のＭＩＰをできるだけ利用する方法として、次のような生成方法が考えられる。【００９８】
A-Token-h = HMAC SHA1 (B-HoA, A-Key, nonce)【００９９】
B-HoAとは端末Ｂのホームアドレスであり、A-Keyとは端末Ａの秘密鍵である。nonceは端末ＡがHome Tokenを生成するときに使用する乱数である。端末Ｂは、端末ＡからのＨｏＴＩを受信し、ＨｏＴを応答として返す。ＨｏＴにはB-Token-h、B-nonce-h、Sb(A-Token-h)を含める。B-Token-hの計算方法は従来のＭＩＰとは異なる。従来のＭＩＰでは次のようにB-Token-hを計算した。【０１００】
B-Token-h = HMAC SHA1 (A-HoA, B-Key, B-nonce-h)【０１０１】
本発明の方法では、次のように計算する。【０１０２】
B-Token-h = HMAC SHA1 (A-HoA, B-HoA, B-Key, B-nonce-h)【０１０３】
つまり、端末ＢのホームアドレスB-HoAを加えてB-Token-hを計算する。B-Token-hの計算に用いるA-HoAは、ＨｏＴＩメッセージの送信元アドレスであり、B-HoAはあて先アドレスである。また、ＨｏＴメッセージに含めるSb(A-Token-h)は、端末ＢがA-Token-hを記憶しておくことを回避するための手段である。A-Token-hを暗号化し、端末Ａに送り返し、さらに端末ＡはＢＵに含めて端末Ｂへ送り返す。端末Ｂは、ＢＵに付加されたSb(A-Token-h)を復号化し、A-Token-hを取得し、A-Token-hを用いて鍵データＫｅｙ Ａを生成する。【０１０４】
端末Ａは、ＨｏＴＩの送信と並行して、ＣｏＴＩを送信してもよい。つまり、ＨｏＴを受信する前にＣｏＴＩを送信してもよい。またＨｏＴＩの前にＣｏＴＩを送信してもよい。端末Ａは、ＣｏＴＩにA-Token-cを付加して端末Ｂに送信する。A-Token-cの生成方法は次のような方法が考えられる。【０１０５】
A-Token-c = HMAC SHA1 (B-CoA, A-Key, nonce)【０１０６】
B-CoAとは端末Ｂの気付アドレスであり、A-Keyとは端末Ａの秘密鍵である。nonceは端末ＡがCare-of Tokenを生成するときに使用する乱数である。端末Ｂは、端末ＡからのＣｏＴＩを受信し、ＣｏＴを応答として返す。ＣｏＴには、B-Token-c、B-nonce-c、Sb(A-Token-c)を含める。B-Token-cの計算方法は従来のＭＩＰとは異なり、次のように計算する。【０１０７】
B-Token-c = HMAC SHA1 (A-CoA, B-CoA, B-Key, B-nonce-c)【０１０８】
つまり、端末Ｂの気付アドレスB-CoAを加えてB-Token-cを計算する。B-Token-cの計算に用いるA-CoAは、ＣｏＴＩメッセージの送信元アドレスであり、B-CoAはあて先アドレスである。また、ＣｏＴメッセージに含めるSb(A-Token-c)は、ＨｏＴＩの処理と同様で、端末ＢがA-Token-cを記憶しておくことを回避するための手段である。【０１０９】
端末Ａは、ＨｏＴＩメッセージの応答としてＨｏＴを受信し、ＣｏＴＩメッセージの応答としてＣｏＴを受信すると、それぞれのメッセージに含まれるB-Token-hとB-Token-cを用いて鍵データＫｅｙ Ｂを生成する。【０１１０】
Key B = HMAC SHA1 (B-Token-h, B-Token-c)【０１１１】
端末Ａは、この鍵データを用いてＢＵメッセージの認証コードＢ−ＭＡＣを生成する。【０１１２】
B-MAC = HMAC SHA1 (Key B, BU message)【０１１３】
端末Ａは、ＢＵメッセージに次のデータのB-nonce-h、B-nonce-c、B-MAC、Sb(A-Token-h)、Sb(A-Token-c)、A-HoA、B-HoAを付加して、端末Ｂに送信する。【０１１４】
端末Ｂは、ＢＵメッセージを受信し、B-nonce-h、B-HoA、A-HoAを用いて、B-Token-hを生成する。また、ＢＵメッセージの送信元アドレスA-CoA、あて先アドレスB-CoA、B-nonce-cを用いてB-Token-cを生成する。生成したB-Token-hとB-Token-cを用いて、Ｋｅｙ Ｂを生成し、ＢＵメッセージに付加されているＢ−ＭＡＣが正しいかどうか検査する。Ｂ−ＭＡＣの検査結果が正しい場合には、端末Ｂは端末Ａのバインディングキャッシュの寿命の更新を行う。また新規の設定も可能である。一方、Ｂ−ＭＡＣの検査結果が正しくなかった場合には、メッセージを破棄することやエラーメッセージを返すといった対応を取る。【０１１５】
また、端末ＢはＢＵメッセージに含まれる情報Sb(A-Token-h)とSb(A-Token-c)の復号処理を行い、A-Token-hとA-Token-cを取得する。そして次のようにＫｅｙ Ａを生成する。【０１１６】
Key A = HMAC SHA1 (A-Token-h, A-Token-c)【０１１７】
端末Ｂはこの鍵データを用いてＢＡメッセージの認証コードＡ−ＭＡＣを生成する。【０１１８】
A-MAC = HMAC SHA1 (Key A, BA message)【０１１９】
端末Ｂは、ＢＡメッセージに、通常のＭＩＰと同様にＫｅｙ Ｂで生成した認証コードＢ−ＭＡＣを付加するとともに、新しいＫｅｙ Ａで生成した認証コードＡ−ＭＡＣを付加する。端末Ａは、ＢＡメッセージを受信し、Ｋｅｙ Ｂ及びＫｅｙ Ａを用いて認証コードを検証し、正しい場合には、端末Ｂのバインディングキャッシュの寿命の更新を行う。認証コードの検証結果が正しくなかった場合には、メッセージを破棄することやエラーメッセージを返すといった対応を取る。【０１２０】
なお、上記ではＫｅｙ ＡとＫｅｙ Ｂを分ける場合で説明したが、合わせて一つの鍵データにしてもよい。例えば、次のように鍵データを生成してもよい。【０１２１】
Key AB = HMAC SHA1 (A-Token-h, A-Token-c, B-Token-h, B-Token-c)【０１２２】
なお、端末ＡがA-Token-h、A-Token-cを記憶する場合について説明したが、ＢＵメッセージにA-nonce-h、A-nonce-cを含め、端末ＢよりＢＡメッセージに含めて折り返してもよい。この場合、端末Ａは、ＢＡメッセージを受信してからA-Token-h、A-Token-cをそれぞれA-nonce-hとA-nonce-cから生成することができ、記憶しておく必要がない。【０１２３】
なお、本発明ではA-Token-h、A-Token-cをそれぞれＨｏＴＩメッセージ、ＣｏＴＩメッセージに乗せたが、ほかの組み合わせであってもよい。例えば、A-Token-hをＣｏＴＩメッセージに乗せ、A-Token-cをＨｏＴＩメッセージに乗せてもよい。また、両方のTokenを同じメッセージに乗せてもよい。さらに、A-Token-h、A-Token-cを分割し、それぞれ分けてＨｏＴ、ＣｏＴメッセージに乗せてもよい。【０１２４】
なお、ＨｏＴＩメッセージを省略することも可能である。例えば、ＣｏＴＩの応答としてＨｏＴとＣｏＴを返すようにし、ＢＵにA-Token-hを含めてもよい。また同様に、ＣｏＴＩを省略することも可能である。この場合は、ＨｏＴＩの応答としてＨｏＴとＣｏＴを返すようにし、ＢＵにA-Token-cを含めてもよい。なお、端末ＡがＨｏＴＩを送信後、ＨｏＴを受信してからＣｏＴＩを送信してもよい。ＨｏＴに含まれる情報をＡが保持するのではなく、ＣｏＴＩに含めて送信し、ＣｏＴで折り返されるようにしてもよい。【０１２５】
なお、端末Ｂが従来ＭＩＰにしか対応していない端末の場合には、従来ＭＩＰは端末ＡからのＨｏＴＩ及びＣｏＴＩに対して、従来ＭＩＰと同様のＨｏＴ及びＣｏＴを返信する。端末Ａは、それによって端末Ｂが本発明のバインディングアップデートに対応していないことがわかるため、従来のＭＩＰのＢＵメッセージを送信する。【０１２６】
また、端末Ａと端末Ｂが同時に本発明のバインディングアップデートを行った場合には、次のような対応が考えられる。両方のバインディングアップデートをそのまま行ってもよい。ＨｏＴ、ＣｏＴを受信してからＢＵを送信するまでの待ち時間をランダムに設定することによって、一方のＢＵの送信を回避しやすくしてもよい。【０１２７】
また、両端末のバインディングアップデートを行った場合には、開始側と受信側のバインディングキャッシュの寿命の長さを変えてもよい。受信側の寿命をわずかに短くすることによって、次のバインディングアップデートの開始側が交代するようにしてもよい。なお、本発明の結合バインディングアップデート処理は、移動端末自ら行うのではなく、代理ノードが行ってもよい。【０１２８】
次に、結合バインディングアップデートの開始側の移動端末について図１５を用いて説明する。まず、ＨｏＴＩ／ＣｏＴＩの送信について説明する。メッセージ作成部１５０１は、結合バインディング判定部１５０２に通常のバインディングアップデートか、結合バインディングアップデートかの判定を要求する。結合バインディング判定部１５０２は、バインディングキャッシュ管理部１５０３に、これからバインディングアップデートを行う相手通信端末からのバインディングキャッシュが登録されているかどうかを確認する。登録されていない場合には、通常のバインディングアップデートを行う。【０１２９】
結合バインディングアップデートを行う場合には、メッセージ作成部１５０１はＡ−Ｔｏｋｅｎ生成部１５０４によってHome Token（A-Token-h）及びCare-of Token（A-Token-c）を生成し、そのTokenを付加してＨｏＴＩメッセージ及びＣｏＴＩメッセージを生成し、メッセージ送信部１５０５より送信する。Ａ−Ｔｏｋｅｎ生成部１５０４で作成したHome Token及びCare-of TokenはＡ−Ｔｏｋｅｎ保存部１５０６において保存しておく。【０１３０】
次に、ＨｏＴ／ＣｏＴの受信について説明する。ＨｏＴＩ及びＣｏＴＩメッセージの応答メッセージであるＨｏＴ及びＣｏＴメッセージは、メッセージ受信部１５０７によって受信される。受信したＨｏＴ及びＣｏＴに含まれる相手端末が生成したToken（B-Token-h、B-Token-c）及びNonce-ID（応答側移動端末がNonceの値を呼び出すための識別番号）はＢ−Ｔｏｋｅｎ保存部１５０８及びＮｏｎｃｅ保存部１５０９に保存される。また、相手端末によって付加されたSb(Home Token)及びSb(Care-of Token)は、Ｓｂ（Ｔｏｋｅｎ）保存部１５１０に保存される。【０１３１】
次に、ＢＵの送信について説明する。ＨｏＴメッセージとＣｏＴメッセージの両方を受信したとき、Ｂ−Ｔｏｋｅｎ保存部１５０８にはHome Token（B-Token-h）とCare-of Token（B-Token-c）の両方のTokenが揃っているため、それらのTokenを用いてＢ−Ｋｅｙ生成部１５１１において鍵データを生成する。【０１３２】
メッセージ認証コード生成部１５１２は、Ｂ−Ｋｅｙ生成部１５１１において生成された鍵データを用いてメッセージ認証コードを生成し、メッセージ作成部１５０１に渡す。メッセージ作成部１５０１では、生成されたメッセージ認証コードとＳｂ（Ｔｏｋｅｎ）保存部１５１０に保存しておいた２つのSb(Home Token)及びSb(Care-of Token)をＢＵメッセージに付加する。またＮｏｎｃｅ保存部１５０９に保存しておいたNonce-IDもＢＵメッセージに付加する。そして、メッセージ送信部１５０５よりＢＵメッセージを送信する。【０１３３】
次に、ＢＡの受信について説明する。ＢＡメッセージをメッセージ受信部１５０７で受信し、メッセージ認証コード判定部１５１５においてメッセージの判定を行う。メッセージの判定のために、Ａ−Ｋｅｙ生成部１５１４は、Ａ−Ｔｏｋｅｎ保存部１５０６に保存しておいたHome Token（A-Token-h）とCare-of Token（A-Token-c）を取り出し、鍵データを生成する。メッセージ認証コード生成部１５１２は、Ａ−Ｋｅｙ生成部１５１４により生成された鍵データを用いてメッセージ認証コードを生成する。メッセージ認証コード判定部１５１３は、その生成したメッセージ認証コードと、ＢＵメッセージに付加されていたメッセージ認証コードとを比較し、一致するかどうか判定する。【０１３４】
メッセージ認証コードが一致した場合には、バインディングキャッシュ管理部１５０３にバインディングキャッシュを登録する。その後で、ＢＡメッセージに対する応答をメッセージ作成部１５０１において作成し、メッセージ送信部１５０５より送信する。【０１３５】
次に、結合バインディングアップデートの応答側の移動端末について図１６を用いて説明する。まず、ＨｏＴＩ／ＣｏＴＩの受信について説明する。ＨｏＴＩ及びＣｏＴＩメッセージをメッセージ受信部１６０１で受信し、結合バインディングアップデートの場合には、メッセージに含まれるHome Token（A-Token-h）又はCare-of Token（A-Token-c）をＡ−Ｔｏｋｅｎ暗号・復号処理部１６０２に渡す。また、結合バインディングＢ−Ｔｏｋｅｎ生成部１６０３はB-Token（Home Token又はCare-of Token）を生成する。B-Tokenを生成するときに必要なNonce(home nonce又はcare-of nonce)はＮｏｎｃｅ管理部１６０４より取得する。【０１３６】
B-Home Token = SHA1 (A-HoA, B-HoA, B-Key, B-home nonce)
B-Care-of Token = SHA1 (A-CoA, B-CoA, B-Key, B-care-of nonce)【０１３７】
次に、ＨｏＴ／ＣｏＴの送信について説明する。Ａ−Ｔｏｋｅｎ暗号・復号処理部１６０２は、暗号化したデータ（Sb(Home Token（A-Token-h）)又はSb(Care-of Token（A-Token-c）)）をメッセージ作成部１６０５に渡し、メッセージ作成部１６０５は応答メッセージに付加する。また、結合バインディングＢ−Ｔｏｋｅｎ生成部１６０３より生成したToken（B-Token）及び生成に用いたNonceを呼び出すためのNonce-IDを取得し、応答メッセージに付加する。応答メッセージは受信メッセージがＨｏＴＩの場合にはＨｏＴメッセージであり、ＣｏＴＩの場合にはＣｏＴメッセージである。メッセージ作成部１６０５が作成した応答メッセージは、メッセージ送信部１６０６から送信される。【０１３８】
次に、ＢＵの受信について説明する。ＢＵメッセージをメッセージ受信部１６０１で受信し、結合バインディングアップデートの場合には、結合バインディングＢ−Ｔｏｋｅｎ生成部１６０３においてHome Token（B-Token-h）及びCare-of Token（B-Token-c）を生成する。Token生成のときには、受信したＢＵメッセージに含まれるNonce-IDを用いてＮｏｎｃｅ管理部１６０４からNonceの値を取り出し、それを用いる。また、ＢＵメッセージに含まれるSb(Home Token)及びSb(Care-of Token)をＡ−Ｔｏｋｅｎ暗号・復号処理部１６０２に渡し、復号化し、元のHome Token（A-Token-h）及びCare-of Token（A-Token-c）を取得する。【０１３９】
また、ＢＵメッセージに含まれるメッセージ認証コードをメッセージ認証コード比較部１６０７に渡す。結合バインディングＢ−Ｔｏｋｅｎ生成部１６０３で生成したHome Token（B-Token-h）及びCare-of Token（B-Token-c）をＢ−Ｋｅｙ生成部１６０８に渡し、Ｂ−Ｋｅｙ生成部１６０８において鍵データを生成する。【０１４０】
そして、生成した鍵データを用いて、メッセージ認証コード生成部１６０９において、メッセージ認証コードを生成する。生成したメッセージ認証コードとＢＵメッセージに含まれていたメッセージ認証コードが一致するかどうかをメッセージ認証コード比較部１６０７で比較する。メッセージ認証コードが一致した場合は、バインディングキャッシュ管理部１６１０にバインディングキャッシュを設定又は更新する。【０１４１】
次に、ＢＡの送信について説明する。Ａ−Ｔｏｋｅｎ暗号・復号処理部１６０２によって復号化されたToken（A-Token-h、A-Token-c）を用いてＡ−Ｋｅｙ生成部１６１１において鍵データを生成し、メッセージ認証コード生成部１６０９でメッセージ認証コードを生成する。メッセージ作成部１６０５は、生成したメッセージ認証コードをＢＡメッセージに付加し、メッセージ送信部１６０６よりＢＡメッセージを送信する。ＢＡメッセージに対する応答メッセージは、メッセージ受信部１６０１で受信し、メッセージ認証コードを確認し、バインディングキャッシュ管理部１６１０においてバインディングキャッシュを更新する。【０１４２】
次に、結合バインディングアップデートの開始側の移動端末の処理フローについて図１７を用いて説明する。図１７に示すように、移動端末は、バインディングアップデートを行おうとしている相手端末のバインディングキャッシュが存在しているかの確認処理を開始し（ステップＳ１７０１）、相手端末のバインディングキャッシュが存在しているか否かを判断する（ステップＳ１７０２）。バインディングキャッシュが存在する場合、移動端末は、相手端末のホームアドレスを用いたHome Token（A-Token-h）及び相手端末のＣｏＡを用いたCare-of Token（A-Token-c）を生成する（ステップＳ１７０３）。【０１４３】
そして、移動端末は、Home Tokenを含んだ結合バインディングアップデートのＨｏＴＩメッセージ、Care-of Tokenを含んだ結合バインディングアップデートのＣｏＴＩメッセージをそれぞれ送信する（ステップＳ１７０４）。移動端末は、応答メッセージのＨｏＴメッセージ、ＣｏＴメッセージを待つと同時にタイマーをスタートさせる（ステップＳ１７０５）。移動端末は、タイムアウト前に応答（メッセージ）を受信したか否かを判断する（ステップＳ１７０６）。【０１４４】
タイムアウト前に応答メッセージを受信した場合、移動端末はＢＵメッセージを生成する。すなわち、移動端末は、受信したＨｏＴ、ＣｏＴに含まれるTokenを用いて鍵データを生成し、メッセージ認証コードを生成し、生成されたメッセージ認証コード、ＨｏＴ、ＣｏＴに含まれていたSb(Home Token（A-Token-h）)、Sb(Care-of Token（A-Token-c）)を付加したＢＵメッセージを生成し、送信する（ステップＳ１７０７）。移動端末は、応答メッセージのＢＡメッセージを待つと同時にタイマーをスタートさせる（ステップＳ１７０８）。移動端末は、タイムアウト前に応答（メッセージ）を受信したか否かを判断する（ステップＳ１７０９）。【０１４５】
タイムアウト前に応答メッセージを受信した場合、移動端末は最初に送信したHome Token（A-Token-h）、Care-of Token（A-Token-c）から鍵データを生成し、ＢＡメッセージに含まれるメッセージ認証コードが正しいか否かの確認処理を開始する（ステップＳ１７１０）。メッセージ認証コードが正しいか否かを判断し（ステップＳ１７１１）、正しいと判断された場合、移動端末は、自身のバインディングキャッシュ及び相手端末のバインディングキャッシュの設定及び更新を行い、応答メッセージを送信する（ステップＳ１７１２）。【０１４６】
なお、ステップＳ１７０２において、バインディングキャッシュが存在しないと判断された場合には、従来のＭＩＰのバインディングアップデートを開始する（ステップＳ１７１３）。また、ステップＳ１７０６、Ｓ１７０９において、タイムアウト前に応答メッセージを受信できなかった場合、再送回数が所定の数値Ｎよりも小さければ再送を行う（ステップＳ１７１４、Ｓ１７１５）。また、ステップＳ１７１１において、メッセージ認証コードが正しくないと判断された場合、バインディングキャッシュの更新を行わないことを確認する（ステップＳ１７１６）。【０１４７】
次に、結合バインディングアップデートの応答側の移動端末の処理フロー（結合バインディングアップデートのメッセージの受信からそれに対する応答メッセージを送信するまで）について図１８Ａを用いて説明する。図１８Ａに示すように、移動端末は、ＨｏＴＩ又はＣｏＴＩを受信し、結合バインディングアップデートのメッセージかどうかの判定処理を開始する（ステップＳ１８０１）。移動端末は、結合バインディングアップデートのメッセージか否かを判断し（ステップＳ１８０２）、結合バインディングアップデートのメッセージである場合、Home Tokenの場合には両端末のホームアドレスを含めたTokenを生成し、Care-of Tokenの場合には両端末のＣｏＡを含めたTokenを生成する（ステップＳ１８０３）。【０１４８】
移動端末は、ＨｏＴＩ、ＣｏＴＩに付加されていたToken（A-Token-h、A-Token-c）を暗号化し、応答メッセージを生成し、送信する（ステップＳ１８０４）。なお、ステップＳ１８０２において、結合バインディングアップデートのメッセージではないと判断された場合、移動端末は、従来のＭＩＰのバインディングアップデート処理として応答を送信する（ステップＳ１８０５）。【０１４９】
次に、結合バインディングアップデートの応答側の移動端末の処理フロー（ＢＵメッセージの受信からＢＡメッセージを送信するまで）について図１８Ｂを用いて説明する。図１８Ｂに示すように、移動端末は、ＢＵ（メッセージ）を受信し、結合バインディングアップデートのメッセージかどうかの判定処理を開始する（ステップＳ１８１０）。移動端末は、結合バインディングアップデートのメッセージか否かを判断し（ステップＳ１８１１）、結合バインディングアップデートのメッセージである場合、ＢＵに含まれるアドレス、Nonceの情報を用いてToken（B-Token-h、B-Token-c）を生成し、Tokenを用いて鍵データを生成し、付加されているメッセージ認証コードの確認処理を開始する（ステップＳ１８１２）。【０１５０】
移動端末は、メッセージ認証コードが正しいか否かを判断し（ステップＳ１８１３）、正しい場合には、バインディングキャッシュの設定、更新を行い、ＢＵに含まれている暗号化されたToken（A-Token-h、A-Token-c）を復号化し、鍵データを生成し、メッセージ認証コードを生成し、ＢＡメッセージに含めて送信する（ステップＳ１８１４）。なお、ステップＳ１８１１において、結合バインディングアップデートのメッセージでない場合、移動端末は、従来のＭＩＰのバインディングアップデートを開始する（ステップＳ１８１５）。また、ステップＳ１８１３において、メッセージ認証コードが正しくないと判断された場合、バインディングキャッシュの設定、更新を行わないことを確認する（ステップＳ１８１６）。【０１５１】
なお、上記の本発明の各実施の形態の説明で用いた各機能ブロックは、典型的には集積回路であるＬＳＩ（Large Scale Integration）として実現される。これらは個別に１チップ化されてもよいし、一部又はすべてを含むように１チップ化されてもよい。なお、ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ（Integrated Circuit）、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。例えば、バイオ技術の適応などが可能性としてあり得る。
【産業上の利用可能性】
【０１５２】
本発明に係るバインディング更新方法及びその方法で用いられる移動端末は、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できるため、バインディングアップデートにより経路の最適化がなされた通信端末間のバインディングを更新するバインディング更新方法及びその方法で用いられる移動端末などに有用である。
【図１Ａ】
2009090722.tif 000003
【図１Ｂ】
2009090722.tif 000004
【図２】
2009090722.tif 000005
【図３】
2009090722.tif 000006
【図４】
2009090722.tif 000007
【図５】
2009090722.tif 000008
【図６】
2009090722.tif 000009
【図７】
2009090722.tif 000010
【図８】
2009090722.tif 000011
【図９】
2009090722.tif 000012
【図１０】
2009090722.tif 000013
【図１１】
2009090722.tif 000014
【図１２Ａ】
2009090722.tif 000015
【図１２Ｂ】
2009090722.tif 000016
【図１３】
2009090722.tif 000017
【図１４】
2009090722.tif 000018
【図１５】
2009090722.tif 000019
【図１６】
2009090722.tif 000020
【図１７】
2009090722.tif 000021
【図１８Ａ】
2009090722.tif 000022
【図１８Ｂ】
2009090722.tif 000023
【図１９Ａ】
2009090722.tif 000024
【図１９Ｂ】
2009090722.tif 000025
【手続補正書】
【提出日】平成22年7月12日(2010.7.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１の移動端末と、前記第１の移動端末の通信相手である第２の移動端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法であって、
前記第１の移動端末が前記第２の移動端末のバインディング情報を保持している場合に、
前記第１の移動端末が、所定の第１移動端末情報を含めたメッセージであって、前記第２の移動端末から所定の第２移動端末情報を取得するための第１の１組のメッセージを前記第２の移動端末へ送信するステップと、
前記第２の移動端末が、前記所定の第２移動端末情報を含めた第２の１組のメッセージを前記第１の移動端末へ送信するステップと、
前記第１の移動端末が、前記第２の１組のメッセージに含まれた前記所定の第２移動端末情報に基づいて生成された認証情報を付加した第３のメッセージを前記第２の移動端末へ送信するステップと、
前記第２の移動端末が、前記第３のメッセージに対する応答情報を含めたメッセージであって、前記所定の第１移動端末情報に基づいて生成された認証情報を付加した第４のメッセージを前記第１の移動端末へ送信するとともに、前記第１の移動端末からの前記認証情報が正当である場合に前記バインディング情報を更新するステップと、
前記第１の移動端末が、前記第４のメッセージに付加された前記第２の移動端末からの前記認証情報が正当である場合に前記バインディング情報を更新するステップとを、
有するバインディング更新方法。
【請求項２】
前記第２の移動端末は、前記所定の第１移動端末情報を前記第２の１組のメッセージに含めて前記第１の移動端末へ送信し、
前記第１の移動端末は、前記第２の１組のメッセージに含まれる前記所定の第１移動端末情報を前記第３のメッセージに含めて前記第２の移動端末へ送信する請求項１に記載のバインディング更新方法。
【請求項３】
前記第２の移動端末は、前記所定の第１移動端末情報を前記第２の移動端末のみが復号できる形式で前記第２の１組のメッセージに含めて送信する請求項２に記載のバインディング更新方法。
【請求項４】
前記所定の第１移動端末情報は、前記第２の移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記所定の第２移動端末情報は、前記第１の移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記第１の１組のメッセージは、前記第２の移動端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、
前記第２の１組のメッセージは、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、
前記第３のメッセージは、前記第２の移動端末へのバインディングアップデートメッセージであり、
前記第４のメッセージは、前記第１の移動端末へのバインディングアップデートメッセージである請求項１に記載のバインディング更新方法。
【請求項５】
移動端末と、前記移動端末の通信相手である通信相手端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法で用いられる前記移動端末であって、
前記移動端末が前記通信相手端末のバインディング情報を保持している場合に、
所定の移動端末情報を含めたメッセージであって、前記通信相手端末から所定の通信相手端末情報を取得するための第１の１組のメッセージを生成するメッセージ生成手段と、
生成された前記第１の１組のメッセージを前記通信相手端末へ送信する送信手段と、
前記所定の通信相手端末情報を含めた第２の１組のメッセージを前記通信相手端末から受信する受信手段と、
受信した前記所定の通信相手端末情報に基づいて認証情報を生成する認証情報生成手段と、
前記バインディング情報を更新する更新手段とを備え、
前記メッセージ生成手段が、前記認証情報生成手段によって生成された前記認証情報を付加した第３のメッセージを生成し、
前記送信手段が、生成された前記第３のメッセージを前記通信相手端末へ送信し、
前記更新手段が、前記受信手段を介して受信した情報であって、前記所定の移動端末情報に基づいて前記通信相手端末により生成された認証情報が正当であるか否かを判断し、正当である場合に前記バインディング情報を更新する移動端末。
【請求項６】
移動端末と、前記移動端末の通信相手である通信相手端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法で用いられる前記移動端末であって、
所定の通信相手端末情報を含めたメッセージであって、前記移動端末から所定の移動端末情報を取得するための第１の１組のメッセージを受信する受信手段と、
前記所定の移動端末情報を含めた第２の１組のメッセージを生成するメッセージ生成手段と、
生成された前記第２の１組のメッセージを前記通信相手端末へ送信する送信手段と、
前記受信手段を介して受信した前記所定の通信相手端末情報に基づいて認証情報を生成する認証情報生成手段と、
前記受信手段を介して受信した情報であって、前記所定の移動端末情報に基づいて前記通信相手端末により生成された認証情報が正当である場合に前記バインディング情報を更新する更新手段とを備え、
前記メッセージ生成手段が、前記認証情報生成手段によって生成された前記認証情報を付加した第３のメッセージを生成し、
前記送信手段が、生成された前記第３のメッセージを前記通信相手端末へ送信する移動端末。
【請求項７】
前記メッセージ生成手段は、前記第２の１組のメッセージに含まれる前記所定の移動端末情報を含めた前記第３のメッセージを生成する請求項５に記載の移動端末。
【請求項８】
前記メッセージ生成手段は、前記第１の１組のメッセージに含まれる前記所定の通信相手端末情報を含めた前記第２の１組のメッセージを生成する請求項６に記載の移動端末。
【請求項９】
前記メッセージ生成手段は、前記所定の通信相手端末情報を前記移動端末自身のみが復号できる形式で前記第３のメッセージに含める請求項７に記載の移動端末。
【請求項１０】
前記メッセージ生成手段は、前記所定の通信相手端末情報を前記移動端末自身のみが復号できる形式で前記第２の１組のメッセージに含める請求項８に記載の移動端末。
【請求項１１】
前記所定の移動端末情報は、前記通信相手端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記所定の通信相手端末情報は、前記移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記第１の１組のメッセージは、前記通信相手端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、
前記第２の１組のメッセージは、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、
前記第３のメッセージは、前記通信相手端末へのバインディングアップデートメッセージである請求項５に記載の移動端末。
【請求項１２】
前記所定の通信相手端末情報は、前記移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記所定の移動端末情報は、前記通信相手端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、
前記第１の１組のメッセージは、前記移動端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、
前記第２の１組のメッセージは、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、
前記第３のメッセージは、前記通信相手端末へのバインディングアップデートメッセージである請求項６に記載の移動端末。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バインディングアップデートにより経路の最適化がなされた通信端末間のバインディングを更新するバインディング更新方法及びその方法で用いられる移動端末に関する。
【背景技術】
【０００２】
従来から、通信装置が移動しても移動前と同じＩＰアドレスを使い続けることができる技術としてモバイルＩＰが存在する。モバイルＩＰでは、ホームエージェント（home agent）が移動通信装置（mobile node）のホームアドレス（home address）あてのパケットを受信し、移動通信装置の気付アドレス（ＣｏＡ：Care-of Address）に転送する。このため、移動通信装置は移動に伴うアドレス変更によらず、ホームアドレスを用いた通信を継続できる。
【０００３】
また、パケットがホームエージェントを経由することによって移動通信装置と通信相手装置（ＣＮ：correspondent node）の通信経路が遠回りになることを改善するために、移動通信装置と通信相手装置の通信経路を直接結ぶ経路最適化（Route Optimization）技術が存在する。この経路最適化技術は、通信相手装置に移動通信装置のホームアドレスと気付アドレスの対応関係を記憶させることによって、気付アドレスを用いて通信することを特徴とする。この通信相手装置に移動通信装置のホームアドレスと気付アドレスの対応関係を記憶させる処理は、バインディング更新処理（ＢＵ：Binding Update）と呼ばれている。
【０００４】
通信相手装置に対するバインディング更新処理では、ホームエージェントに対するバインディング更新処理とは異なり、バインディング更新前処理（ＲＲ：Return Routability Procedure）を必要としている。ホームエージェントと移動通信装置との間では、信頼関係をあらかじめ築いておくことができるため、このバインディング更新前処理を必要としない。ホームエージェントに対するバインディング更新処理においては、移動通信装置がホームエージェントにホームアドレスに対する新しい気付アドレスを通知したとき、ホームエージェントは、事前に確立しておいた信頼関係（ＩＰｓｅｃ ＳＡなど）によって移動通信装置からのバインディング更新要求であることを確認することができる。
【０００５】
一方、通信相手装置の場合、すべての通信相手となる可能性のある通信装置に対して、バインディング更新処理を行う前に、移動通信装置と通信相手装置との間にあらかじめ信頼関係を確立しておくことは困難である。もし、信頼関係がない状態で通信相手装置がバインディング更新の要求に従ってしまうならば、移動通信装置に成りすました攻撃が容易になる。そして、攻撃者が通信相手装置にバインディング更新処理を行うと、移動通信装置へのパケットを不正な気付アドレスに転送させることが可能になる。これを防ぐ技術がバインディング更新前処理である。
【０００６】
具体的には、バインディング更新前処理では、ホームアドレステスト処理（Home Test）、気付アドレステスト処理（Care-of Test）を行う。これらの処理の結果をバインディング更新処理に反映させることによって、不正なバインディング更新処理を防いでいる。なお、従来技術として説明した、モバイルＩＰ、経路最適化、バインディング更新前処理については、後述する非特許文献１に記載されている。また、バインディング更新前処理の設計思想については、後述する非特許文献２に記載されている。
【０００７】
バインディング更新前処理についてもう少し詳しく説明する。ホームアドレステスト処理では、移動通信装置はＨｏＴＩ（Home Test Init）メッセージを通信相手装置に送信し、通信相手装置はＨｏＴ（Home Test）メッセージを返す。また、気付アドレステスト処理では、移動通信装置はＣｏＴＩ(Care-of Test Init)メッセージを通信相手装置に送信し、通信相手装置はＣｏＴ(Care-of Test)メッセージを返す。
【０００８】
移動通信装置は、通信相手装置から応答として返されたＨｏＴメッセージ及びＣｏＴメッセージに含まれるHome keygen token（Home token）、Care-of keygen token（Care-of token）をもとに鍵を生成し、その鍵でバインディング更新（ＢＵ）メッセージのメッセージ認証コード（ＭＡＣ:Message Authentication Code）を計算し、ＢＵメッセージに付加して送信する。
【０００９】
ＢＵメッセージを受信した通信相手装置は、メッセージ認証コードを確認することによって、移動通信装置から送信された正当なＢＵメッセージであると判断する。バインディング更新前処理の設計思想を説明している非特許文献２によると、このバインディング更新前処理は、通信相手装置がState（状態）を持つ必要がないように設計されている。つまり、ＨｏＴＩメッセージを受信したことがあるかどうか、ＣｏＴＩメッセージを受信したことがあるかどうかを、通信相手装置は記憶しておかなくてもＢＵメッセージの認証処理を行うことができる。
【００１０】
これは、攻撃者がＨｏＴＩメッセージやＣｏＴＩメッセージを用いて通信相手装置に対してＤｏＳ攻撃（Denial of Service Attack）を行った場合に、通信相手装置の被害を小さくするためである。また、ＨｏＴＩメッセージに対してＨｏＴメッセージを返す、ＣｏＴＩメッセージに対してＣｏＴメッセージを返す、というように１つの要求メッセージに対して１つの応答メッセージを返すようにしているのは、メッセージの増加（Amplification）を行わないようにするためである。これは、要求メッセージを１つ送ったときに、複数の応答メッセージを返す仕組みにした場合、攻撃者は１つのメッセージを送ることによって、複数のターゲットを攻撃することが可能になるためである。
【非特許文献１】“Mobility Support in IPv6”，RFC3775
【非特許文献２】“Mobile IP Version 6 Route Optimization Security Design Background”,RFC4225
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記従来技術のＭＩＰｖ６では移動端末どうしがお互いにバインディングアップデートを行っているときに、その状況を効率的に利用できないという課題があった。つまり、従来の移動通信装置は、通信相手装置が自身に対してバインディングアップデートを行っている場合であっても、処理の効率化を目的としてバインディングアップデートの処理手順を変えることができなかった。
【００１２】
また、移動通信装置と通信相手装置が最適化経路を用いた通信を継続するためには、双方ともバインディングキャッシュを継続するために、定期的（７分ごと）にバインディングアップデートを行わなければならない。一方の装置（端末）のバインディングキャッシュを継続するだけでは不十分である。しかしながら、従来技術では、それぞれの装置が独立にバインディングアップデートを行うことしかできなかった。
【００１３】
具体的には、図１９Ａ、Ｂに示すように、端末Ａ（ＭＮ＿Ａ）と端末Ｂ（ＭＮ＿Ｂ）はそれぞれ独立に７分ごとにこのバインディングアップデートの処理を行い、相手端末に通知したバインディングキャッシュ（ホームアドレスと気付アドレスの情報）の寿命（Life Time）を更新していた。これにより、メッセージ数が多くなってしまう。
【００１４】
本発明は、上記の問題点に鑑み、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できるバインディング更新方法及びその方法で用いられる移動端末を提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記目的を達成するために、本発明によれば、第１の移動端末と、前記第１の移動端末の通信相手である第２の移動端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法であって、前記第１の移動端末が前記第２の移動端末のバインディング情報を保持している場合に、前記第１の移動端末が、所定の第１移動端末情報を含めたメッセージであって、前記第２の移動端末から所定の第２移動端末情報を取得するための第１の１組のメッセージを前記第２の移動端末へ送信するステップと、前記第２の移動端末が、前記所定の第２移動端末情報を含めた第２の１組のメッセージを前記第１の移動端末へ送信するステップと、前記第１の移動端末が、前記第２の１組のメッセージに含まれた前記所定の第２移動端末情報に基づいて生成された認証情報を付加した第３のメッセージを前記第２の移動端末へ送信するステップと、前記第２の移動端末が、前記第３のメッセージに対する応答情報を含めたメッセージであって、前記所定の第１移動端末情報に基づいて生成された認証情報を付加した第４のメッセージを前記第１の移動端末へ送信するとともに、前記第１の移動端末からの前記認証情報が正当である場合に前記バインディング情報を更新するステップと、前記第１の移動端末が、前記第４のメッセージに付加された前記第２の移動端末からの前記認証情報が正当である場合に前記バインディング情報を更新するステップとを、有するバインディング更新方法が提供される。この構成により、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できる。
【００１６】
また、本発明のバインディング更新方法において、前記第２の移動端末が、前記所定の第１移動端末情報を前記第２の１組のメッセージに含めて前記第１の移動端末へ送信し、
前記第１の移動端末は、前記第２の１組のメッセージに含まれる前記所定の第１移動端末情報を前記第３のメッセージに含めて前記第２の移動端末へ送信することは、本発明の好ましい態様である。この構成により、ＤｏＳ攻撃を受けた際の被害を抑えることができる。
【００１７】
また、本発明のバインディング更新方法において、前記第２の移動端末が、前記所定の第１移動端末情報を前記第２の移動端末のみが復号できる形式で前記第２のメッセージに含めて送信することは、本発明の好ましい態様である。この構成により、他の端末に読み取られることを防ぐことができる。
【００１８】
また、本発明のバインディング更新方法において、前記所定の第１移動端末情報は、前記第２の移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記所定の第２移動端末情報は、前記第１の移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記第１の１組のメッセージは、前記第２の移動端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、前記第２の１組のメッセージは、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、前記第３のメッセージは、前記第２の移動端末へのバインディングアップデートメッセージであり、前記第４のメッセージは、前記第１の移動端末へのバインディングアップデートメッセージであることは、本発明の好ましい態様である。この構成により、適切な経路最適化を行うことができる。
【００１９】
また、本発明によれば、移動端末と、前記移動端末の通信相手である通信相手端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法で用いられる前記移動端末であって、前記移動端末が前記通信相手端末のバインディング情報を保持している場合に、所定の移動端末情報を含めたメッセージであって、前記通信相手端末から所定の通信相手端末情報を取得するための第１の１組のメッセージを生成するメッセージ生成手段と、生成された前記第１の１組のメッセージを前記通信相手端末へ送信する送信手段と、前記所定の通信相手端末情報を含めた第２の１組のメッセージを前記通信相手端末から受信する受信手段と、受信した前記所定の通信相手端末情報に基づいて認証情報を生成する認証情報生成手段と、前記バインディング情報を更新する更新手段とを備え、前記メッセージ生成手段が、前記認証情報生成手段によって生成された前記認証情報を付加した第３のメッセージを生成し、前記送信手段が、生成された前記第３のメッセージを前記通信相手端末へ送信し、前記更新手段が、前記受信手段を介して受信した情報であって、前記所定の移動端末情報に基づいて前記通信相手端末により生成された認証情報が正当であるか否かを判断し、正当である場合に前記バインディング情報を更新する移動端末が提供される。この構成により、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できる。
【００２０】
また、本発明によれば、移動端末と、前記移動端末の通信相手である通信相手端末との間の経路最適化を実現可能とさせるバインディング情報を更新するバインディング更新方法で用いられる前記移動端末であって、所定の通信相手端末情報を含めたメッセージであって、前記移動端末から所定の移動端末情報を取得するための第１の１組のメッセージを受信する受信手段と、前記所定の移動端末情報を含めた第２の１組のメッセージを生成するメッセージ生成手段と、生成された前記第２の１組のメッセージを前記通信相手端末へ送信する送信手段と、前記受信手段を介して受信した前記所定の通信相手端末情報に基づいて認証情報を生成する認証情報生成手段と、前記受信手段を介して受信した情報であって、前記所定の移動端末情報に基づいて前記通信相手端末により生成された認証情報が正当である場合に前記バインディング情報を更新する更新手段とを備え、前記メッセージ生成手段が、前記認証情報生成手段によって生成された前記認証情報を付加した第３のメッセージを生成し、前記送信手段が、生成された前記第３のメッセージを前記通信相手端末へ送信する移動端末が提供される。この構成により、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できる。
【００２１】
また、本発明の移動端末において、前記メッセージ生成手段が、前記第２の１組のメッセージに含まれる前記所定の移動端末情報を含めた前記第３のメッセージを生成することは、本発明の好ましい態様である。この構成により、ＤｏＳ攻撃を受けた際の被害を抑えることができる。
【００２２】
また、本発明の移動端末において、前記メッセージ生成手段が、前記第１の１組のメッセージに含まれる前記所定の通信相手端末情報を含めた前記第２の１組のメッセージを生成することは、本発明の好ましい態様である。この構成により、ＤｏＳ攻撃を受けた際の被害を抑えることができる。
【００２３】
また、本発明の移動端末において、前記メッセージ生成手段が、前記所定の通信相手端末情報を前記移動端末自身のみが復号できる形式で前記第３のメッセージに含めることは、本発明の好ましい態様である。この構成により、他の端末に読み取られることを防ぐことができる。
【００２４】
また、本発明の移動端末において、前記メッセージ生成手段が、前記所定の通信相手端末情報を前記移動端末自身のみが復号できる形式で前記第２の１組のメッセージに含めることは、本発明の好ましい態様である。この構成により、他の端末に読み取られることを防ぐことができる。
【００２５】
また、本発明の移動端末において、前記所定の移動端末情報が、前記通信相手端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記所定の通信相手端末情報が、前記移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記第１の１組のメッセージが、前記通信相手端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、前記第２の１組のメッセージが、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、前記第３のメッセージが、前記通信相手端末へのバインディングアップデートメッセージであることは、本発明の好ましい態様である。この構成により、適切な経路最適化を行うことができる。
【００２６】
また、本発明の移動端末において、前記所定の通信相手端末情報が、前記移動端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記所定の移動端末情報が、前記通信相手端末のホームアドレス及び気付けアドレス（ＣｏＡ：Ｃａｒｅ  Ｏｆ  Ａｄｄｒｅｓｓ）を基に生成されたトークン（Ｔｏｋｅｎ）であり、前記第１の１組のメッセージが、前記移動端末に対するホームアドレステスト（Ｈｏｍｅ  Ｔｅｓｔ  Ｉｎｉｔ）及び気付けアドレステスト（Ｃａｒｅ−Ｏｆ  Ｔｅｓｔ  Ｉｎｉｔ）の開始を要求するメッセージであり、前記第２の１組のメッセージが、前記第１の１組のメッセージに応答するＨｏＴメッセージ及びＣｏＴメッセージであり、前記第３のメッセージが、前記通信相手端末へのバインディングアップデートメッセージであることは、本発明の好ましい態様である。この構成により、適切な経路最適化を行うことができる。
【発明の効果】
【００２７】
本発明のバインディング更新方法及びその方法で用いられる移動端末は、上記構成を有し、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できる。
【発明を実施するための最良の形態】
【００２８】
＜第１の実施の形態＞
第１の実施の形態について説明する。図１Ａに示すような多くのメッセージ数を減らすため、図１Ｂに示すように、両端末が行うバインディングアップデートを同期させ、受信側の端末がメッセージを重ねて送信するよう構成した。
【００２９】
すなわち、図１Ｂに示すように、端末Ａから開始したバインディングアップデートの手順に、端末Ｂが同期してバインディングアップデートを行う（以降、結合バインディングアップデートとよぶ）。端末Ｂは、端末ＡからのＨｏＴＩに対してＨｏＴを応答として返すが、それと同時にＨｏＴＩを送信する。同様に、端末Ｂは端末ＡからのＣｏＴＩに対してＣｏＴを応答として返すと同時にＣｏＴＩを送信する。そして、端末Ｂは端末ＡからのＢＵに対して、ＢＡを応答として返すと同時にＢＵを送信する。このとき端末Ｂが送信するＨｏＴとＨｏＴＩを１つのメッセージにし、同様にＣｏＴとＣｏＴＩ、ＢＡとＢＵを１つのメッセージにすることによって、メッセージ数を削減することができる。
【００３０】
ここで、結合バインディングアップデートの開始側の移動端末（ここでは端末Ａ）について図２を用いて説明する。メッセージ生成部２０１は、通信相手端末（端末Ｂ）から情報Ｂ１、Ｂ２それぞれを取得するためのＨｏＴＩ、ＣｏＴＩメッセージそれぞれを生成する。送信部２０２は、生成されたＨｏＴＩ、ＣｏＴＩメッセージを端末Ｂへ送信する。受信部２０３は、情報Ｂ１を含むメッセージであって、情報Ａ１を取得するためのＨｏＴメッセージ、及び情報Ｂ２を含むメッセージあって、情報Ａ２を取得するためのＣｏＴメッセージを受信する。
【００３１】
認証情報生成部２０４は、情報Ｂ１、Ｂ２に基づいて認証コードをそれぞれ生成し、生成された認証コードは、送信部２０２によって端末Ｂへ送信される。更新部２０５は、受信部２０３を介して受信したコード情報であって、情報Ａ１、Ａ２に基づいて端末Ｂによって生成された認証コードが正当であるか否かを判断し、正当である場合にバインディング情報を更新する。記憶部２０６は、バインディングキャッシュなどの情報を格納する。
【００３２】
次に、結合バインディングアップデートの応答側の移動端末（ここでは端末Ｂ）について図３を用いて説明する。受信部３０１は、情報Ｂ１、Ｂ２を取得するためのＨｏＴＩ、ＣｏＴＩメッセージを端末Ａから受信する。メッセージ生成部３０２は、情報Ｂ１を含めたメッセージであって、端末Ａから情報Ａ１を取得するためのＨｏＴメッセージ、及び情報Ｂ２を含めたメッセージであって、端末Ａから情報Ａ２を取得するためのＣｏＴメッセージを生成する。
【００３３】
送信部３０３は、生成されたＨｏＴ、ＣｏＴメッセージを端末Ａへ送信する。認証情報生成部３０４は、受信部３０１を介して受信した情報Ｂ１、Ｂ２に基づいて認証コードを生成し、生成された認証コードは送信部３０３によって端末Ａに送信される。更新部３０５は、受信部３０１を介して受信した情報であって、情報Ｂ１、Ｂ２に基づいて端末Ａによって生成されたそれぞれの認証コードが正当であるか否かを判断し、正当である場合にバインディング情報を更新する。記憶部３０６は、バインディングキャッシュなどの情報を格納する。
【００３４】
＜第２の実施の形態＞
第２の実施の形態について説明する。まず、ＭＩＰの基本原理について説明する。図４には端末Ａからのバインディングアップデートの様子を示している。端末Ａは端末Ｂに気付アドレス（ＣｏＡ）が自身のアドレスであることを端末Ｂに証明しようとしている。そのため、端末Ｂに端末Ａのホームアドレス（ＨｏＡ）とＣｏＡにそれぞれメッセージを送信してもらい、その両方を受信したことを端末Ｂに示す。
【００３５】
簡単に説明すると、端末Ｂは端末ＡのＨｏＡあてに情報Ｂ１を送信し、端末ＡのＣｏＡあてに情報Ｂ２を送信する。端末ＡはＢ１とＢ２を用いて鍵データであるＫｅｙ（Ｂ１、Ｂ２）を生成し、その鍵データを用いて認証コードを生成する。端末Ｂは端末Ａからの認証コードを確認することによって、端末Ａが鍵データを正しく生成できたことを確認し、端末Ａが情報Ｂ１と情報Ｂ２を受信したと判定する。
【００３６】
より具体的に説明すると、端末ＡはＨｏＴＩを端末Ｂに送信し、情報Ｂ１をＨｏＴに含めて端末ＡのＨｏＡあてに送信させる。また、端末ＡはＣｏＴＩを端末Ｂに送信し、情報Ｂ２をＣｏＴに含めて端末ＡのＣｏＡあてに送信させる。そして、情報Ｂ１と情報Ｂ２を用いて鍵データであるＫｅｙ（Ａ１、Ａ２）を生成し、その鍵を用いて送信するＢＵメッセージの認証コードを生成し、認証コードをＢＵメッセージに付加して端末Ｂに送信する。端末Ｂは、ＢＵを受信するとＢ１とＢ２から鍵データを生成し、認証コードが正しいかどうか確認する。なお、図５は端末Ｂからのバインディングアップデートの様子を示している。
【００３７】
以上を踏まえて、上述した第１の実施の形態よりさらにメッセージ数を減らすことができる態様について図６を用いて説明する。この態様では、端末Ａが端末Ｂからの要求を受ける前に、端末ＢのＨｏＡに情報Ａ１を、ＣｏＡに情報Ａ２を送信する。これは、従来なら端末ＢからＨｏＴＩ、ＣｏＴＩメッセージを受信した後応答として返す情報である。しかし、端末Ａが端末Ｂのバインディングキャッシュを持っている場合、端末Ａは端末ＢのＨｏＡとＣｏＡを既に知っているため、図６に示すように、端末Ｂのバインディングアップデートの処理を端末Ａから開始することができる。
【００３８】
さらに、端末Ａは、端末Ｂに対するＨｏＴＩメッセージ６０１、ＣｏＴＩメッセージ６０３を用いて情報Ａ１と情報Ａ２を送信することによって、端末Ａのバインディングアップデートも同時に開始することができる。端末Ａは、端末Ｂからの応答メッセージであるＨｏＴメッセージ６０２、ＣｏＴメッセージ６０４を受信し、その応答メッセージに含まれる情報Ｂ１、Ｂ２を用いて鍵データ（Ｋｅｙ（Ｂ１、Ｂ２））を作成し、ＢＵメッセージ６０５を送信し、鍵データ（Ｋｅｙ（Ｂ１、Ｂ２））を生成できたことを示す。
【００３９】
端末Ｂは、そのＢＵメッセージ６０５を確認し、端末Ａのバインディングアップデートを承認するとともに、先に送られてきた情報Ａ１と情報Ａ２をもとに鍵データ（Ｋｅｙ（Ａ１、Ａ２））を生成し、ＢＵメッセージ６０５の応答としてＢＡメッセージ６０６を送る際に、端末Ｂが鍵データ（Ｋｅｙ（Ａ１、Ａ２））を生成できたことを示す。端末Ａは、そのＢＡメッセージ６０６を確認し、端末Ｂのバインディングアップデートを承認する。なお、端末Ａは承認完了の旨のメッセージ６０７を端末Ｂに送信するようにしてもよい。以上のように、本実施の形態の方法を用いることによって、第１の実施の形態と比較して、バインディングアップデートに要するメッセージ数を更に削減することができる。
【００４０】
ここで、第２の実施の形態をより詳細に説明する。端末Ａが端末Ｂからのバインディングアップデートを受け、端末ＢのホームアドレスＢ−ＨｏＡと気付アドレスＢ−ＣｏＡを知っている状態にあるとする。端末Ａは、端末Ｂにバインディングアップデートを行うとき、端末Ｂのバインディングキャッシュ情報を保持しているかどうかを確認する。保持していない場合には、通常のＭＩＰのバインディングアップデート処理を行う。一方、端末Ａが、端末Ｂのバインディングキャッシュ情報を保持している場合、図７に示すように、端末Ａと端末Ｂの両方のバインディングアップデートを同時に行うことを試みる。
【００４１】
端末Ａは、端末ＢのＨｏＡあてにＨｏＴＩを送信する。送信元アドレスは端末ＡのＨｏＡであり、端末Ｂからの応答メッセージＨｏＴは、この送信元アドレスである端末ＡのＨｏＡあてに送信される。メッセージＨｏＴＩには情報Ａ１が含まれる。端末Ｂは、ＨｏＴＩを受信すると、応答メッセージＨｏＴを端末Ａに送信する。端末ＢのＨｏＡで受信したメッセージの応答であるため、送信元アドレスは端末ＢのＨｏＡであり、あて先アドレスは要求メッセージＨｏＴＩの送信元アドレスである端末ＡのＨｏＡである。
【００４２】
同様に、端末Ａは端末ＢのＣｏＡあてにＣｏＴＩを送信する。送信元アドレスは端末ＡのＣｏＡである。ＣｏＴＩメッセージには情報Ａ２が含まれる。端末Ｂは、ＣｏＴＩを受信すると、応答メッセージＣｏＴを端末Ａに送信する。端末ＢのＣｏＡで受信したメッセージの応答であるため、送信元アドレスは端末ＢのＣｏＡであり、あて先アドレスは要求メッセージＣｏＴＩの送信元アドレスである端末ＡのＣｏＡである。
【００４３】
端末Ａは、応答メッセージのＨｏＴとＣｏＴに含まれる情報Ｂ１とＢ２を用いて鍵データを生成し、その鍵データを用いて認証コードを生成し、ＢＵメッセージに認証コードを付加して、端末Ｂに送信する。端末Ｂは、ＢＵメッセージを受信すると認証コードを確認し、端末Ａのバインディングキャッシュが正しいと判定し、寿命（Life Time）を延長する。また、端末Ｂは、応答メッセージであるＢＡを送信する際に、ＨｏＴＩとＣｏＴＩに含まれていた情報Ａ１とＡ２を用いて鍵データを生成し、その鍵データを用いて認証コードを生成し、ＢＡメッセージに認証コードを付加して、端末Ａに送信する。端末Ａは、ＢＡメッセージを受信すると認証コードを確認し、端末Ｂのバインディングキャッシュが正しいと判定し、寿命を延長する。
【００４４】
上述した様子について図８を用いて更に詳しく説明する。端末Ａは、ＨｏＴＩにA-Token-hを付加して端末Ｂに送信する。A-Token-hの生成方法は、原理的には任意でよく特に定める必要はない。しかし、従来技術のＭＩＰをできるだけ利用する方法として次のような生成方法が考えられる。
【００４５】
A-Token-h = HMAC SHA1 (B-HoA, A-Key, nonce)
【００４６】
なお、ここではトークン値の計算にハッシュ関数（HMAC SHA1）を用いる場合について述べるが、それ以外の関数あるいは生成式を用いるものであってもよい。
【００４７】
B-HoAとは端末Ｂのホームアドレスであり、A-Keyとは端末Ａの秘密鍵である。nonceは端末ＡがHome Tokenを生成するときに使用する乱数である。端末Ｂは、端末ＡからのＨｏＴＩを受信しＨｏＴを応答として返す。ＨｏＴには、B-Token-h、B-nonce-hを含める。B-Token-hの計算方法は従来のＭＩＰとは異なる。従来のＭＩＰでは次のようにB-Token-hを計算した。
【００４８】
B-Token-h = HMAC SHA1 (A-HoA, B-Key, B-nonce-h)
【００４９】
本発明の方法では、次のように計算する。
【００５０】
B-Token-h = HMAC SHA1 (A-HoA, B-HoA, B-Key, B-nonce-h)
【００５１】
つまり、端末ＢのホームアドレスB-HoAを加えてB-Token-hを計算する。B-Token-hの計算に用いるA-HoAは、ＨｏＴＩメッセージの送信元アドレスであり、B-HoAはあて先アドレスである。また、ＨｏＴＩメッセージに含まれていたA-Token-hは、端末Ｂが保持する。例えば、端末Ａのバインディングキャッシュの中にHome Tokenを保持する領域を確保し、送信されてきた最新の値を保持するといった方法が考えられる。
【００５２】
端末Ａは、ＨｏＴＩの送信と並行してＣｏＴＩを送信してもよい。つまり、ＨｏＴを受信する前にＣｏＴＩを送信してよい。またＨｏＴＩの前にＣｏＴＩを送信してもよい。端末Ａは、ＣｏＴＩにA-Token-cを付加して端末Ｂに送信する。A-Token-cの生成方法は次のような方法が考えられる。
【００５３】
A-Token-c = HMAC SHA1 (B-CoA, A-Key, nonce)
【００５４】
B-CoAとは端末Ｂの気付アドレスであり、A-Keyとは端末Ａの秘密鍵である。nonceは端末ＡがCare-of Tokenを生成するときに使用する乱数である。端末Ｂは、端末ＡからのＣｏＴＩを受信しＣｏＴを応答として返す。ＣｏＴには、B-Token-c、B-nonce-cを含める。B-Token-cの計算方法は従来のＭＩＰとは異なり、次のように計算する。
【００５５】
B-Token-c = HMAC SHA1 (A-CoA, B-CoA, B-Key, B-nonce-c)
【００５６】
つまり、端末Ｂの気付アドレスB-CoAを加えてB-Token-cを計算する。B-Token-cの計算にもちいるA-CoAは、ＣｏＴＩメッセージの送信元アドレスであり、B-CoAはあて先アドレスである。また、端末ＢはA-Token-cをA-Token-hと同様に保持しておく。端末Ａは、ＨｏＴＩメッセージの応答としてＨｏＴを受信し、ＣｏＴＩメッセージの応答としてＣｏＴを受信すると、それぞれのメッセージに含まれるB-Token-hとB-Token-cを用いて鍵データであるＫｅｙ Ｂを生成する。
【００５７】
Key B = HMAC SHA1 (B-Token-h, B-Token-c)
【００５８】
端末Ａはこの鍵データＫｅｙ Ｂを用いてＢＵメッセージの認証コードＢ−ＭＡＣを生成する。
【００５９】
B-MAC = HMAC SHA1 (Key B, BU message)
【００６０】
端末Ａは、ＢＵメッセージに次のデータのB-nonce-h、B-nonce-c、B-MAC、A-HoA、B-HoAを付加して端末Ｂに送信する。端末Ｂは、ＢＵメッセージを受信し、B-nonce-h、B-HoA、A-HoAを用いてB-Token-hを生成する。また、ＢＵメッセージの送信元アドレスA-CoA、あて先アドレスB-CoA、B-nonce-cを用いてB-Token-cを生成する。生成したB-Token-hとB-Token-cを用いてＫｅｙ Ｂを生成し、ＢＵメッセージに付加されているB-MACが正しいかどうか検査する。
【００６１】
Ｂ−ＭＡＣの検査結果が正しい場合には、端末Ｂは端末Ａのバインディングキャッシュの寿命の更新を行う。また新規の設定も可能である。一方、Ｂ−ＭＡＣの検査結果が正しくなかった場合には、メッセージを破棄することやエラーメッセージを返すといった対応を取る。また、端末Ｂは保持していた情報A-Token-hとA-Token-cを用いて次のように鍵データＫｅｙ Ａを生成する。
【００６２】
Key A = HMAC SHA1 (A-Token-h, A-Token-c)
【００６３】
端末Ｂはこの鍵データＫｅｙ Ａを用いてＢＡメッセージの認証コードＡ−ＭＡＣを生成する。
【００６４】
A-MAC = HMAC SHA1 (Key A, BA message)
【００６５】
端末Ｂは、ＢＡメッセージに、通常のＭＩＰと同様にＫｅｙ Ｂで生成した認証コードＢ−ＭＡＣを付加するとともに、新しいＫｅｙ Ａで生成した認証コードＡ−ＭＡＣを付加する。端末Ａは、ＢＡメッセージを受信し、Ｋｅｙ Ｂ及びＫｅｙ Ａを用いて認証コードを検証し、正しい場合には、端末Ｂのバインディングキャッシュの寿命の更新を行う。認証コードの検証結果が正しくなかった場合には、メッセージを破棄することやエラーメッセージを返すといった対応を取る。なお、上記ではＫｅｙ ＡとＫｅｙ Ｂを分ける場合で説明したが、合わせて一つの鍵データにしてもよい。例えば、次のように鍵データを生成してもよい。
【００６６】
Key AB = HMAC SHA1 (A-Token-h, A-Token-c, B-Token-h, B-Token-c)
【００６７】
次に、結合バインディングアップデートの開始側の移動端末について図９を用いて説明する。まず、ＨｏＴＩ／ＣｏＴＩの送信について説明する。メッセージ作成部９０１は、結合バインディング判定部９０２に通常のバインディングアップデートか、結合バインディングアップデートかの判定を要求する。結合バインディング判定部９０２は、バインディングキャッシュ管理部９０３に、これからバインディングアップデートを行う相手端末からのバインディングキャッシュが登録されているかどうかを確認する。登録されていない場合には、通常のバインディングアップデートを行う。
【００６８】
結合バインディングアップデートを行う場合には、メッセージ作成部９０１はＡ−Ｔｏｋｅｎ生成部９０４にHome Token及びCare-of Tokenを生成させ、そのTokenを付加してＨｏＴＩメッセージ及びＣｏＴＩメッセージを生成し、メッセージ送信部９０５より送信する。Ａ−Ｔｏｋｅｎ生成部９０４で作成したHome Token及びCare-of TokenはＡ−Ｔｏｋｅｎ保存部９０６において保存しておく。
【００６９】
次に、ＨｏＴ／ＣｏＴの受信について説明する。ＨｏＴＩ及びＣｏＴＩメッセージの応答メッセージであるＨｏＴ及びＣｏＴメッセージは、メッセージ受信部９０７によって受信される。受信したＨｏＴ及びＣｏＴに含まれる相手端末が生成したToken及びNonce-ID（応答側の移動端末がNonceの値を呼び出すための識別番号）はＢ−Ｔｏｋｅｎ保存部９０８及びＮｏｎｃｅ保存部９０９に保存される。
【００７０】
次に、ＢＵの送信について説明する。ＨｏＴメッセージとＣｏＴメッセージの両方を受信したとき、Ｂ−Ｔｏｋｅｎ保存部９０８にはHome TokenとCare-of Tokenの両方のTokenが揃っているため、それらのTokenを用いてＢ−Ｋｅｙ生成部９１０において鍵データを生成する。メッセージ認証コード生成部９１１は、Ｂ−Ｋｅｙ生成部９１０において生成された鍵データを用いてメッセージ認証コード（上述した認証コードに相当）を生成し、メッセージ作成部９０１に渡す。メッセージ作成部９０１では、生成されたメッセージ認証コードをＢＵメッセージに付加する。またＮｏｎｃｅ保存部９０９に保存しておいたNonce-IDもＢＵメッセージに付加する。そしてメッセージ送信部９０５よりＢＵメッセージを送信する。
【００７１】
次に、ＢＡの受信について説明する。ＢＡメッセージをメッセージ受信部９０７で受信し、メッセージ認証コード判定部９１２においてメッセージの判定を行う。メッセージの判定のために、Ａ−Ｋｅｙ生成部９１３は、Ａ−Ｔｏｋｅｎ保存部９０６に保存しておいたHome TokenとCare-of Tokenを取り出し、鍵データを生成する。メッセージ認証コード生成部９１１はＡ−Ｋｅｙ生成部９１３により生成された鍵データを用いてメッセージ認証コードを生成する。メッセージ認証コード判定部９１２は、その生成されたメッセージ認証コードと、ＢＵメッセージに付加されていたメッセージ認証コードを比較し、一致するかどうか判定する。
【００７２】
メッセージ認証コードが一致した場合に、バインディングキャッシュ管理部９０３にバインディングキャッシュを登録する。その後で、ＢＡメッセージに対する応答をメッセージ作成部９０１において作成し、メッセージ送信部９０５より送信する。
【００７３】
次に、結合バインディングアップデートの応答側の移動端末について図１０を用いて説明する。まず、ＨｏＴＩ／ＣｏＴＩの受信について説明する。ＨｏＴＩ及びＣｏＴＩメッセージをメッセージ受信部１００１で受信し、結合バインディングアップデートの場合には、メッセージに含まれるHome Token又はCare-of TokenをＡ−Ｔｏｋｅｎ保存部１００２に渡す。また、結合バインディングＢ−Ｔｏｋｅｎ生成部１００３はB-Token（Home Token又はCare-of Token）を生成する。B-Tokenを生成するときに必要なNonce(home nonce又はcare-of nonce)はＮｏｎｃｅ管理部１００４より取得する。
【００７４】
B-Home Token = SHA1 (A-HoA, B-HoA, B-Key, B-home nonce)
B-Care-of Token = SHA1 (A-CoA, B-CoA, B-Key, B-care-of nonce)
【００７５】
次に、ＨｏＴ／ＣｏＴの送信について説明する。結合バインディングＢ−Ｔｏｋｅｎ生成部１００３より生成したToken及び生成に用いたNonceを呼び出すためのNonce-IDを取得し、応答メッセージに付加する。応答メッセージは受信メッセージがＨｏＴＩの場合にはＨｏＴメッセージであり、ＣｏＴＩの場合にはＣｏＴメッセージである。メッセージ作成部１００５が作成した応答メッセージは、メッセージ送信部１００６から送信される。
【００７６】
次に、ＢＵの受信について説明する。ＢＵメッセージをメッセージ受信部１００１で受信し、結合バインディングアップデートの場合には、結合バインディングＢ−Ｔｏｋｅｎ生成部１００３においてHome Token及びCare-of Tokenを生成する。Token生成のときには、受信したＢＵメッセージに含まれるNonce-IDを用いてＮｏｎｃｅ管理部１００４からNonceの値を取り出し、それを用いる。また、ＢＵメッセージに含まれるメッセージ認証コードをメッセージ認証コード比較部１００７に渡す。
【００７７】
結合バインディングＢ−Ｔｏｋｅｎ生成部１００３で生成したHome Token及びCare-of TokenをＢ−Ｋｅｙ生成部１００８に渡し、Ｂ−Ｋｅｙ生成部１００８において鍵データを生成する。そして、生成した鍵データを用いて、メッセージ認証コード生成部１００９において、メッセージ認証コードを生成する。生成したメッセージ認証コードとＢＵメッセージに含まれていたメッセージ認証コードが一致するかどうかをメッセージ認証コード比較部１００７で比較する。メッセージ認証コードが一致した場合は、バインディングキャッシュ管理部１０１１にバインディングキャッシュを設定又は更新する。
【００７８】
次に、ＢＡの送信について説明する。Ａ−Ｔｏｋｅｎ保存部１００２に保存しておいたTokenを用いてＡ−Ｋｅｙ生成部１０１０において鍵データを生成し、メッセージ認証コード生成部１００９でメッセージ認証コードを生成する。メッセージ作成部１００５は、生成されたメッセージ認証コードをＢＡメッセージに付加し、メッセージ送信部１００６よりＢＡメッセージを送信する。ＢＡメッセージに対する応答メッセージは、メッセージ受信部１００１で受信し、メッセージ認証コードを確認し、バインディングキャッシュ管理部１０１１においてバインディングキャッシュを更新する。
【００７９】
なお、上述したように、結合バインディングアップデートの開始側の移動端末と応答側の移動端末の構成が異なっているが、通常はすべての移動端末が開始側にも応答側にもなり得るため、移動端末は上述した開始側と応答側の機能それぞれを有することが好ましい。
【００８０】
次に、結合バインディングアップデートの開始側の移動端末の処理フローについて図１１を用いて説明する。図１１に示すように、移動端末は、バインディングアップデートを行おうとしている相手端末のバインディングキャッシュが存在しているかの確認処理を開始し（ステップＳ１１０１）、相手端末のバインディングキャッシュが存在しているか否かを判断する（ステップＳ１１０２）。バインディングキャッシュが存在する場合、移動端末は、相手端末のホームアドレスを用いたHome Token及び相手端末のＣｏＡを用いたCare-of Tokenを生成する（ステップＳ１１０３）。
【００８１】
そして、移動端末は、Home Tokenを含んだ結合バインディングアップデートのＨｏＴＩメッセージ、Care-of Tokenを含んだ結合バインディングアップデートのＣｏＴＩメッセージをそれぞれ送信する（ステップＳ１１０４）。移動端末は、応答メッセージのＨｏＴメッセージ、ＣｏＴメッセージを待つと同時にタイマーをスタートさせる（ステップＳ１１０５）。移動端末は、タイムアウト前に応答（メッセージ）を受信したか否かを判断する（ステップＳ１１０６）。
【００８２】
タイムアウト前に応答メッセージを受信した場合、移動端末はＢＵメッセージを生成する。すなわち、移動端末は、受信したＨｏＴ、ＣｏＴに含まれるTokenを用いて鍵データを生成し、メッセージ認証コードを生成し、生成されたメッセージ認証コードを付加したＢＵメッセージを生成し、送信する（ステップＳ１１０７）。移動端末は、応答メッセージのＢＡメッセージを待つと同時にタイマーをスタートさせる（ステップＳ１１０８）。移動端末は、タイムアウト前に応答（メッセージ）を受信したか否かを判断する（ステップＳ１１０９）。
【００８３】
タイムアウト前に応答メッセージを受信した場合、移動端末は最初に送信したHome Token、Care-of Tokenから鍵データを生成し、ＢＡメッセージに含まれるメッセージ認証コードが正しいか否かの確認処理を開始する（ステップＳ１１１０）。メッセージ認証コードが正しいか否かを判断し（ステップＳ１１１１）、正しいと判断された場合、移動端末は、自身のバインディングキャッシュ及び相手端末のバインディングキャッシュの設定及び更新を行い、応答メッセージを送信する（ステップＳ１１１２）。
【００８４】
なお、ステップＳ１１０２において、バインディングキャッシュが存在しないと判断された場合には、従来のＭＩＰのバインディングアップデートを開始する（ステップＳ１１１３）。また、ステップＳ１１０６、Ｓ１１０９において、タイムアウト前に応答メッセージを受信できなかった場合、再送回数が所定の数値Ｎよりも小さければ再送を行う（ステップＳ１１１４、Ｓ１１１５）。また、ステップＳ１１１１において、メッセージ認証コードが正しくないと判断された場合、バインディングキャッシュの更新を行わないことを確認する（ステップＳ１１１６）。
【００８５】
次に、結合バインディングアップデートの応答側の移動端末の処理フロー（結合バインディングアップデートのメッセージの受信からそれに対する応答メッセージを送信するまで）について図１２Ａを用いて説明する。図１２Ａに示すように、移動端末は、ＨｏＴＩ又はＣｏＴＩを受信し、結合バインディングアップデートのメッセージかどうかの判定処理を開始する（ステップＳ１２０１）。移動端末は、結合バインディングアップデートのメッセージか否かを判断し（ステップＳ１２０２）、結合バインディングアップデートのメッセージである場合、受信した開始側の移動端末のHome Token又はCore-of Tokenを保持する（ステップＳ１２０３）。
【００８６】
移動端末は、Home Tokenの場合には両端末のホームアドレスを含め、Care-of Tokenの場合には両端末のＣｏＡを含めたTokenを生成する（ステップＳ１２０４）。生成されたTokenを付加して応答メッセージを生成し、応答メッセージを送信する（ステップＳ１２０５）。なお、ステップＳ１２０２において、結合バインディングアップデートのメッセージではないと判断された場合、移動端末は、従来のＭＩＰのバインディングアップデート処理として応答を送信する（ステップＳ１２０６）。
【００８７】
次に、結合バインディングアップデートの応答側の移動端末の処理フロー（ＢＵメッセージの受信からＢＡメッセージを送信するまで）について図１２Ｂを用いて説明する。図１２Ｂに示すように、移動端末は、ＢＵ（メッセージ）を受信し、結合バインディングアップデートのメッセージかどうかの判定処理を開始する（ステップＳ１２１０）。移動端末は、結合バインディングアップデートのメッセージか否かを判断し（ステップＳ１２１１）、結合バインディングアップデートのメッセージである場合、ＢＵに含まれるアドレス、Nonceの情報を用いてTokenを生成し、Tokenを用いて鍵データを生成し、付加されているメッセージ認証コードの確認処理を開始する（ステップＳ１２１２）。
【００８８】
移動端末は、メッセージ認証コードが正しいか否かを判断し（ステップＳ１２１３）、正しい場合には、バインディングキャッシュの設定、更新を行い、保持していた開始側の移動端末のTokenを用いて鍵データを生成し、メッセージ認証コードを生成し、ＢＡメッセージに含めて送信する（ステップＳ１２１４）。なお、ステップＳ１２１１において、結合バインディングアップデートのメッセージでない場合、移動端末は、従来のＭＩＰのバインディングアップデートを開始する（ステップＳ１２１５）。また、ステップＳ１２１３において、メッセージ認証コードが正しくないと判断された場合、バインディングキャッシュの設定、更新を行わないことを確認する（ステップＳ１２１６）。
【００８９】
＜第３の実施の形態＞
第２の実施の形態と同様に、端末Ａが端末Ｂからのバインディングアップデートを受け、端末ＢのホームアドレスB-HoAと気付アドレスB-CoAを知っている状態にあるとする。端末Ａは、端末Ｂにバインディングアップデートを行うとき、端末Ｂのバインディングキャッシュ情報を保持しているかどうかを確認する。保持していない場合には、通常のＭＩＰのバインディングアップデート処理を行う。端末Ａが、端末Ｂのバインディングキャッシュ情報を保持している場合、端末Ａと端末Ｂの両方のバインディングアップデートを同時に行うことを試みる。なお、第３の実施の形態の説明においても、第２の実施の形態の説明で用いた図７を用いて説明する。
【００９０】
端末Ａは、端末ＢのＨｏＡあてにＨｏＴＩを送信する。送信元アドレスは端末ＡのＨｏＡであり、端末Ｂからの応答メッセージＨｏＴは、この送信元アドレスである端末ＡのＨｏＡあてに送信される。メッセージＨｏＴＩには情報Ａ１が含まれる。端末Ｂは、ＨｏＴＩを受信すると、応答メッセージＨｏＴを端末Ａに送信する。端末ＢのＨｏＡで受信したメッセージの応答であるため、送信元アドレスは端末ＢのＨｏＡであり、あて先アドレスは要求メッセージＨｏＴＩの送信元アドレスである端末ＡのＨｏＡである。
【００９１】
同様に、端末Ａは、端末ＢのＣｏＡあてにＣｏＴＩを送信する。送信元アドレスは、端末ＡのＣｏＡである。ＣｏＴＩメッセージには情報Ａ２が含まれる。端末Ｂは、ＣｏＴＩを受信すると、応答メッセージＣｏＴを端末Ａに送信する。端末ＢのＣｏＡで受信したメッセージの応答であるため、送信元アドレスは端末ＢのＣｏＡであり、あて先アドレスは要求メッセージＣｏＴＩの送信元アドレスである端末ＡのＣｏＡである。
【００９２】
端末Ａは、応答メッセージのＨｏＴとＣｏＴに含まれる情報Ｂ１とＢ２を用いて鍵データを生成し、その鍵データを用いて認証コードを生成し、ＢＵメッセージに認証コードを付加して、端末Ｂに送信する。端末Ｂは、ＢＵメッセージを受信すると認証コードを確認し、端末Ａのバインディングキャッシュが正しいと判定し、寿命（Life Time）を延長する。
【００９３】
そして、応答メッセージであるＢＡを送信する際に、ＨｏＴＩとＣｏＴＩに含まれていた情報Ａ１とＡ２を用いて鍵データを生成し、その鍵データを用いて認証コードを生成し、ＢＡメッセージに認証コードを付加して、端末Ａに送信する。端末Ａは、ＢＡメッセージを受信すると認証コードを確認し、端末Ｂのバインディングキャッシュが正しいと判定し、寿命を延長する。ここまでは第２の実施の形態で同様である。
【００９４】
次に第３の実施の形態におけるバインディング情報更新方式の特徴を説明する。端末Ａから２つの端末のバインディングアップデートを開始する場合、端末Ａから端末Ｂに情報Ａ１とＡ２を送り、端末Ｂに記憶させている。そのためセキュリティの観点から考えたとき、攻撃者が端末Ｂに異なる情報からなるＨｏＴＩ、ＣｏＴＩを大量に送りつけ、情報を覚えさせてメモリーを浪費させるという攻撃（ＤｏＳ攻撃）が想定される。これを防ぐために、端末ＢはＨｏＴＩメッセージ１３０１を受信し、情報Ａ１を取得するとその情報をＨｏＴメッセージ１３０２に含めて端末Ａに送り返すことも可能である。
【００９５】
その様子を図１３に示した。同様に、端末ＢはＣｏＴＩメッセージ１３０３を受信し、情報Ａ２をＣｏＴメッセージ１３０４に含めて端末Ａに送り返す。端末Ａは、送り返された情報Ａ１とＡ２をＢＵメッセージ１３０５に含めて端末Ｂに送信する。端末Ｂは、ＢＵメッセージ１３０５に含まれる情報Ａ１とＡ２を用いて鍵データであるＫｅｙ Ａ（Ａ１、Ａ２）を生成し、認証コードを作成する。そして、端末Ｂは生成されたＫｅｙ Ａ（Ａ１、Ａ２）をＢＡメッセージ１３０６に含めて端末Ａに送信する。なお、端末ＡはＫｅｙ Ａ（Ａ１、Ａ２）を確認し、端末Ｂのバインディングアップデートの承認をした場合、承認完了の旨のメッセージ１３０７を端末Ｂに送信するようにしてもよい。また、端末Ｂは、情報Ａ１及びＡ２を端末Ａに送り返すとき、署名、暗号化して送り返してもよい。署名を検証し、復号化してもとの情報に戻せるのは端末Ｂだけであるので、返送されるまでの間に改竄等される危険を防ぐことができるからである。
【００９６】
ここで、第３の実施の形態におけるメッセージシーケンスについて図１４を用いて詳しく説明する。端末Ａは、ＨｏＴＩにA-Token-hを付加して端末Ｂに送信する。A-Token-hの生成方法は、原理的には任意でよく特に定める必要はない。しかし、従来技術のＭＩＰをできるだけ利用する方法として、次のような生成方法が考えられる。
【００９７】
A-Token-h = HMAC SHA1 (B-HoA, A-Key, nonce)
【００９８】
B-HoAとは端末Ｂのホームアドレスであり、A-Keyとは端末Ａの秘密鍵である。nonceは端末ＡがHome Tokenを生成するときに使用する乱数である。端末Ｂは、端末ＡからのＨｏＴＩを受信し、ＨｏＴを応答として返す。ＨｏＴにはB-Token-h、B-nonce-h、Sb(A-Token-h)を含める。B-Token-hの計算方法は従来のＭＩＰとは異なる。従来のＭＩＰでは次のようにB-Token-hを計算した。
【００９９】
B-Token-h = HMAC SHA1 (A-HoA, B-Key, B-nonce-h)
【０１００】
本発明の方法では、次のように計算する。
【０１０１】
B-Token-h = HMAC SHA1 (A-HoA, B-HoA, B-Key, B-nonce-h)
【０１０２】
つまり、端末ＢのホームアドレスB-HoAを加えてB-Token-hを計算する。B-Token-hの計算に用いるA-HoAは、ＨｏＴＩメッセージの送信元アドレスであり、B-HoAはあて先アドレスである。また、ＨｏＴメッセージに含めるSb(A-Token-h)は、端末ＢがA-Token-hを記憶しておくことを回避するための手段である。A-Token-hを暗号化し、端末Ａに送り返し、さらに端末ＡはＢＵに含めて端末Ｂへ送り返す。端末Ｂは、ＢＵに付加されたSb(A-Token-h)を復号化し、A-Token-hを取得し、A-Token-hを用いて鍵データＫｅｙ Ａを生成する。
【０１０３】
端末Ａは、ＨｏＴＩの送信と並行して、ＣｏＴＩを送信してもよい。つまり、ＨｏＴを受信する前にＣｏＴＩを送信してもよい。またＨｏＴＩの前にＣｏＴＩを送信してもよい。端末Ａは、ＣｏＴＩにA-Token-cを付加して端末Ｂに送信する。A-Token-cの生成方法は次のような方法が考えられる。
【０１０４】
A-Token-c = HMAC SHA1 (B-CoA, A-Key, nonce)
【０１０５】
B-CoAとは端末Ｂの気付アドレスであり、A-Keyとは端末Ａの秘密鍵である。nonceは端末ＡがCare-of Tokenを生成するときに使用する乱数である。端末Ｂは、端末ＡからのＣｏＴＩを受信し、ＣｏＴを応答として返す。ＣｏＴには、B-Token-c、B-nonce-c、Sb(A-Token-c)を含める。B-Token-cの計算方法は従来のＭＩＰとは異なり、次のように計算する。
【０１０６】
B-Token-c = HMAC SHA1 (A-CoA, B-CoA, B-Key, B-nonce-c)
【０１０７】
つまり、端末Ｂの気付アドレスB-CoAを加えてB-Token-cを計算する。B-Token-cの計算に用いるA-CoAは、ＣｏＴＩメッセージの送信元アドレスであり、B-CoAはあて先アドレスである。また、ＣｏＴメッセージに含めるSb(A-Token-c)は、ＨｏＴＩの処理と同様で、端末ＢがA-Token-cを記憶しておくことを回避するための手段である。
【０１０８】
端末Ａは、ＨｏＴＩメッセージの応答としてＨｏＴを受信し、ＣｏＴＩメッセージの応答としてＣｏＴを受信すると、それぞれのメッセージに含まれるB-Token-hとB-Token-cを用いて鍵データＫｅｙ Ｂを生成する。
【０１０９】
Key B = HMAC SHA1 (B-Token-h, B-Token-c)
【０１１０】
端末Ａは、この鍵データを用いてＢＵメッセージの認証コードＢ−ＭＡＣを生成する。
【０１１１】
B-MAC = HMAC SHA1 (Key B, BU message)
【０１１２】
端末Ａは、ＢＵメッセージに次のデータのB-nonce-h、B-nonce-c、B-MAC、Sb(A-Token-h)、Sb(A-Token-c)、A-HoA、B-HoAを付加して、端末Ｂに送信する。
【０１１３】
端末Ｂは、ＢＵメッセージを受信し、B-nonce-h、B-HoA、A-HoAを用いて、B-Token-hを生成する。また、ＢＵメッセージの送信元アドレスA-CoA、あて先アドレスB-CoA、B-nonce-cを用いてB-Token-cを生成する。生成したB-Token-hとB-Token-cを用いて、Ｋｅｙ Ｂを生成し、ＢＵメッセージに付加されているＢ−ＭＡＣが正しいかどうか検査する。Ｂ−ＭＡＣの検査結果が正しい場合には、端末Ｂは端末Ａのバインディングキャッシュの寿命の更新を行う。また新規の設定も可能である。一方、Ｂ−ＭＡＣの検査結果が正しくなかった場合には、メッセージを破棄することやエラーメッセージを返すといった対応を取る。
【０１１４】
また、端末ＢはＢＵメッセージに含まれる情報Sb(A-Token-h)とSb(A-Token-c)の復号処理を行い、A-Token-hとA-Token-cを取得する。そして次のようにＫｅｙ Ａを生成する。
【０１１５】
Key A = HMAC SHA1 (A-Token-h, A-Token-c)
【０１１６】
端末Ｂはこの鍵データを用いてＢＡメッセージの認証コードＡ−ＭＡＣを生成する。
【０１１７】
A-MAC = HMAC SHA1 (Key A, BA message)
【０１１８】
端末Ｂは、ＢＡメッセージに、通常のＭＩＰと同様にＫｅｙ Ｂで生成した認証コードＢ−ＭＡＣを付加するとともに、新しいＫｅｙ Ａで生成した認証コードＡ−ＭＡＣを付加する。端末Ａは、ＢＡメッセージを受信し、Ｋｅｙ Ｂ及びＫｅｙ Ａを用いて認証コードを検証し、正しい場合には、端末Ｂのバインディングキャッシュの寿命の更新を行う。認証コードの検証結果が正しくなかった場合には、メッセージを破棄することやエラーメッセージを返すといった対応を取る。
【０１１９】
なお、上記ではＫｅｙ ＡとＫｅｙ Ｂを分ける場合で説明したが、合わせて一つの鍵データにしてもよい。例えば、次のように鍵データを生成してもよい。
【０１２０】
Key AB = HMAC SHA1 (A-Token-h, A-Token-c, B-Token-h, B-Token-c)
【０１２１】
なお、端末ＡがA-Token-h、A-Token-cを記憶する場合について説明したが、ＢＵメッセージにA-nonce-h、A-nonce-cを含め、端末ＢよりＢＡメッセージに含めて折り返してもよい。この場合、端末Ａは、ＢＡメッセージを受信してからA-Token-h、A-Token-cをそれぞれA-nonce-hとA-nonce-cから生成することができ、記憶しておく必要がない。
【０１２２】
なお、本発明ではA-Token-h、A-Token-cをそれぞれＨｏＴＩメッセージ、ＣｏＴＩメッセージに乗せたが、ほかの組み合わせであってもよい。例えば、A-Token-hをＣｏＴＩメッセージに乗せ、A-Token-cをＨｏＴＩメッセージに乗せてもよい。また、両方のTokenを同じメッセージに乗せてもよい。さらに、A-Token-h、A-Token-cを分割し、それぞれ分けてＨｏＴ、ＣｏＴメッセージに乗せてもよい。
【０１２３】
なお、ＨｏＴＩメッセージを省略することも可能である。例えば、ＣｏＴＩの応答としてＨｏＴとＣｏＴを返すようにし、ＢＵにA-Token-hを含めてもよい。また同様に、ＣｏＴＩを省略することも可能である。この場合は、ＨｏＴＩの応答としてＨｏＴとＣｏＴを返すようにし、ＢＵにA-Token-cを含めてもよい。なお、端末ＡがＨｏＴＩを送信後、ＨｏＴを受信してからＣｏＴＩを送信してもよい。ＨｏＴに含まれる情報をＡが保持するのではなく、ＣｏＴＩに含めて送信し、ＣｏＴで折り返されるようにしてもよい。
【０１２４】
なお、端末Ｂが従来ＭＩＰにしか対応していない端末の場合には、従来ＭＩＰは端末ＡからのＨｏＴＩ及びＣｏＴＩに対して、従来ＭＩＰと同様のＨｏＴ及びＣｏＴを返信する。端末Ａは、それによって端末Ｂが本発明のバインディングアップデートに対応していないことがわかるため、従来のＭＩＰのＢＵメッセージを送信する。
【０１２５】
また、端末Ａと端末Ｂが同時に本発明のバインディングアップデートを行った場合には、次のような対応が考えられる。両方のバインディングアップデートをそのまま行ってもよい。ＨｏＴ、ＣｏＴを受信してからＢＵを送信するまでの待ち時間をランダムに設定することによって、一方のＢＵの送信を回避しやすくしてもよい。
【０１２６】
また、両端末のバインディングアップデートを行った場合には、開始側と受信側のバインディングキャッシュの寿命の長さを変えてもよい。受信側の寿命をわずかに短くすることによって、次のバインディングアップデートの開始側が交代するようにしてもよい。なお、本発明の結合バインディングアップデート処理は、移動端末自ら行うのではなく、代理ノードが行ってもよい。
【０１２７】
次に、結合バインディングアップデートの開始側の移動端末について図１５を用いて説明する。まず、ＨｏＴＩ／ＣｏＴＩの送信について説明する。メッセージ作成部１５０１は、結合バインディング判定部１５０２に通常のバインディングアップデートか、結合バインディングアップデートかの判定を要求する。結合バインディング判定部１５０２は、バインディングキャッシュ管理部１５０３に、これからバインディングアップデートを行う相手通信端末からのバインディングキャッシュが登録されているかどうかを確認する。登録されていない場合には、通常のバインディングアップデートを行う。
【０１２８】
結合バインディングアップデートを行う場合には、メッセージ作成部１５０１はＡ−Ｔｏｋｅｎ生成部１５０４によってHome Token（A-Token-h）及びCare-of Token（A-Token-c）を生成し、そのTokenを付加してＨｏＴＩメッセージ及びＣｏＴＩメッセージを生成し、メッセージ送信部１５０５より送信する。Ａ−Ｔｏｋｅｎ生成部１５０４で作成したHome Token及びCare-of TokenはＡ−Ｔｏｋｅｎ保存部１５０６において保存しておく。
【０１２９】
次に、ＨｏＴ／ＣｏＴの受信について説明する。ＨｏＴＩ及びＣｏＴＩメッセージの応答メッセージであるＨｏＴ及びＣｏＴメッセージは、メッセージ受信部１５０７によって受信される。受信したＨｏＴ及びＣｏＴに含まれる相手端末が生成したToken（B-Token-h、B-Token-c）及びNonce-ID（応答側移動端末がNonceの値を呼び出すための識別番号）はＢ−Ｔｏｋｅｎ保存部１５０８及びＮｏｎｃｅ保存部１５０９に保存される。また、相手端末によって付加されたSb(Home Token)及びSb(Care-of Token)は、Ｓｂ（Ｔｏｋｅｎ）保存部１５１０に保存される。
【０１３０】
次に、ＢＵの送信について説明する。ＨｏＴメッセージとＣｏＴメッセージの両方を受信したとき、Ｂ−Ｔｏｋｅｎ保存部１５０８にはHome Token（B-Token-h）とCare-of Token（B-Token-c）の両方のTokenが揃っているため、それらのTokenを用いてＢ−Ｋｅｙ生成部１５１１において鍵データを生成する。
【０１３１】
メッセージ認証コード生成部１５１２は、Ｂ−Ｋｅｙ生成部１５１１において生成された鍵データを用いてメッセージ認証コードを生成し、メッセージ作成部１５０１に渡す。メッセージ作成部１５０１では、生成されたメッセージ認証コードとＳｂ（Ｔｏｋｅｎ）保存部１５１０に保存しておいた２つのSb(Home Token)及びSb(Care-of Token)をＢＵメッセージに付加する。またＮｏｎｃｅ保存部１５０９に保存しておいたNonce-IDもＢＵメッセージに付加する。そして、メッセージ送信部１５０５よりＢＵメッセージを送信する。
【０１３２】
次に、ＢＡの受信について説明する。ＢＡメッセージをメッセージ受信部１５０７で受信し、メッセージ認証コード判定部１５１５においてメッセージの判定を行う。メッセージの判定のために、Ａ−Ｋｅｙ生成部１５１４は、Ａ−Ｔｏｋｅｎ保存部１５０６に保存しておいたHome Token（A-Token-h）とCare-of Token（A-Token-c）を取り出し、鍵データを生成する。メッセージ認証コード生成部１５１２は、Ａ−Ｋｅｙ生成部１５１４により生成された鍵データを用いてメッセージ認証コードを生成する。メッセージ認証コード判定部１５１３は、その生成したメッセージ認証コードと、ＢＵメッセージに付加されていたメッセージ認証コードとを比較し、一致するかどうか判定する。
【０１３３】
メッセージ認証コードが一致した場合には、バインディングキャッシュ管理部１５０３にバインディングキャッシュを登録する。その後で、ＢＡメッセージに対する応答をメッセージ作成部１５０１において作成し、メッセージ送信部１５０５より送信する。
【０１３４】
次に、結合バインディングアップデートの応答側の移動端末について図１６を用いて説明する。まず、ＨｏＴＩ／ＣｏＴＩの受信について説明する。ＨｏＴＩ及びＣｏＴＩメッセージをメッセージ受信部１６０１で受信し、結合バインディングアップデートの場合には、メッセージに含まれるHome Token（A-Token-h）又はCare-of Token（A-Token-c）をＡ−Ｔｏｋｅｎ暗号・復号処理部１６０２に渡す。また、結合バインディングＢ−Ｔｏｋｅｎ生成部１６０３はB-Token（Home Token又はCare-of Token）を生成する。B-Tokenを生成するときに必要なNonce(home nonce又はcare-of nonce)はＮｏｎｃｅ管理部１６０４より取得する。
【０１３５】
B-Home Token = SHA1 (A-HoA, B-HoA, B-Key, B-home nonce)
B-Care-of Token = SHA1 (A-CoA, B-CoA, B-Key, B-care-of nonce)
【０１３６】
次に、ＨｏＴ／ＣｏＴの送信について説明する。Ａ−Ｔｏｋｅｎ暗号・復号処理部１６０２は、暗号化したデータ（Sb(Home Token（A-Token-h）)又はSb(Care-of Token（A-Token-c）)）をメッセージ作成部１６０５に渡し、メッセージ作成部１６０５は応答メッセージに付加する。また、結合バインディングＢ−Ｔｏｋｅｎ生成部１６０３より生成したToken（B-Token）及び生成に用いたNonceを呼び出すためのNonce-IDを取得し、応答メッセージに付加する。応答メッセージは受信メッセージがＨｏＴＩの場合にはＨｏＴメッセージであり、ＣｏＴＩの場合にはＣｏＴメッセージである。メッセージ作成部１６０５が作成した応答メッセージは、メッセージ送信部１６０６から送信される。
【０１３７】
次に、ＢＵの受信について説明する。ＢＵメッセージをメッセージ受信部１６０１で受信し、結合バインディングアップデートの場合には、結合バインディングＢ−Ｔｏｋｅｎ生成部１６０３においてHome Token（B-Token-h）及びCare-of Token（B-Token-c）を生成する。Token生成のときには、受信したＢＵメッセージに含まれるNonce-IDを用いてＮｏｎｃｅ管理部１６０４からNonceの値を取り出し、それを用いる。また、ＢＵメッセージに含まれるSb(Home Token)及びSb(Care-of Token)をＡ−Ｔｏｋｅｎ暗号・復号処理部１６０２に渡し、復号化し、元のHome Token（A-Token-h）及びCare-of Token（A-Token-c）を取得する。
【０１３８】
また、ＢＵメッセージに含まれるメッセージ認証コードをメッセージ認証コード比較部１６０７に渡す。結合バインディングＢ−Ｔｏｋｅｎ生成部１６０３で生成したHome Token（B-Token-h）及びCare-of Token（B-Token-c）をＢ−Ｋｅｙ生成部１６０８に渡し、Ｂ−Ｋｅｙ生成部１６０８において鍵データを生成する。
【０１３９】
そして、生成した鍵データを用いて、メッセージ認証コード生成部１６０９において、メッセージ認証コードを生成する。生成したメッセージ認証コードとＢＵメッセージに含まれていたメッセージ認証コードが一致するかどうかをメッセージ認証コード比較部１６０７で比較する。メッセージ認証コードが一致した場合は、バインディングキャッシュ管理部１６１０にバインディングキャッシュを設定又は更新する。
【０１４０】
次に、ＢＡの送信について説明する。Ａ−Ｔｏｋｅｎ暗号・復号処理部１６０２によって復号化されたToken（A-Token-h、A-Token-c）を用いてＡ−Ｋｅｙ生成部１６１１において鍵データを生成し、メッセージ認証コード生成部１６０９でメッセージ認証コードを生成する。メッセージ作成部１６０５は、生成したメッセージ認証コードをＢＡメッセージに付加し、メッセージ送信部１６０６よりＢＡメッセージを送信する。ＢＡメッセージに対する応答メッセージは、メッセージ受信部１６０１で受信し、メッセージ認証コードを確認し、バインディングキャッシュ管理部１６１０においてバインディングキャッシュを更新する。
【０１４１】
次に、結合バインディングアップデートの開始側の移動端末の処理フローについて図１７を用いて説明する。図１７に示すように、移動端末は、バインディングアップデートを行おうとしている相手端末のバインディングキャッシュが存在しているかの確認処理を開始し（ステップＳ１７０１）、相手端末のバインディングキャッシュが存在しているか否かを判断する（ステップＳ１７０２）。バインディングキャッシュが存在する場合、移動端末は、相手端末のホームアドレスを用いたHome Token（A-Token-h）及び相手端末のＣｏＡを用いたCare-of Token（A-Token-c）を生成する（ステップＳ１７０３）。
【０１４２】
そして、移動端末は、Home Tokenを含んだ結合バインディングアップデートのＨｏＴＩメッセージ、Care-of Tokenを含んだ結合バインディングアップデートのＣｏＴＩメッセージをそれぞれ送信する（ステップＳ１７０４）。移動端末は、応答メッセージのＨｏＴメッセージ、ＣｏＴメッセージを待つと同時にタイマーをスタートさせる（ステップＳ１７０５）。移動端末は、タイムアウト前に応答（メッセージ）を受信したか否かを判断する（ステップＳ１７０６）。
【０１４３】
タイムアウト前に応答メッセージを受信した場合、移動端末はＢＵメッセージを生成する。すなわち、移動端末は、受信したＨｏＴ、ＣｏＴに含まれるTokenを用いて鍵データを生成し、メッセージ認証コードを生成し、生成されたメッセージ認証コード、ＨｏＴ、ＣｏＴに含まれていたSb(Home Token（A-Token-h）)、Sb(Care-of Token（A-Token-c）)を付加したＢＵメッセージを生成し、送信する（ステップＳ１７０７）。移動端末は、応答メッセージのＢＡメッセージを待つと同時にタイマーをスタートさせる（ステップＳ１７０８）。移動端末は、タイムアウト前に応答（メッセージ）を受信したか否かを判断する（ステップＳ１７０９）。
【０１４４】
タイムアウト前に応答メッセージを受信した場合、移動端末は最初に送信したHome Token（A-Token-h）、Care-of Token（A-Token-c）から鍵データを生成し、ＢＡメッセージに含まれるメッセージ認証コードが正しいか否かの確認処理を開始する（ステップＳ１７１０）。メッセージ認証コードが正しいか否かを判断し（ステップＳ１７１１）、正しいと判断された場合、移動端末は、自身のバインディングキャッシュ及び相手端末のバインディングキャッシュの設定及び更新を行い、応答メッセージを送信する（ステップＳ１７１２）。
【０１４５】
なお、ステップＳ１７０２において、バインディングキャッシュが存在しないと判断された場合には、従来のＭＩＰのバインディングアップデートを開始する（ステップＳ１７１３）。また、ステップＳ１７０６、Ｓ１７０９において、タイムアウト前に応答メッセージを受信できなかった場合、再送回数が所定の数値Ｎよりも小さければ再送を行う（ステップＳ１７１４、Ｓ１７１５）。また、ステップＳ１７１１において、メッセージ認証コードが正しくないと判断された場合、バインディングキャッシュの更新を行わないことを確認する（ステップＳ１７１６）。
【０１４６】
次に、結合バインディングアップデートの応答側の移動端末の処理フロー（結合バインディングアップデートのメッセージの受信からそれに対する応答メッセージを送信するまで）について図１８Ａを用いて説明する。図１８Ａに示すように、移動端末は、ＨｏＴＩ又はＣｏＴＩを受信し、結合バインディングアップデートのメッセージかどうかの判定処理を開始する（ステップＳ１８０１）。移動端末は、結合バインディングアップデートのメッセージか否かを判断し（ステップＳ１８０２）、結合バインディングアップデートのメッセージである場合、Home Tokenの場合には両端末のホームアドレスを含めたTokenを生成し、Care-of Tokenの場合には両端末のＣｏＡを含めたTokenを生成する（ステップＳ１８０３）。
【０１４７】
移動端末は、ＨｏＴＩ、ＣｏＴＩに付加されていたToken（A-Token-h、A-Token-c）を暗号化し、応答メッセージを生成し、送信する（ステップＳ１８０４）。なお、ステップＳ１８０２において、結合バインディングアップデートのメッセージではないと判断された場合、移動端末は、従来のＭＩＰのバインディングアップデート処理として応答を送信する（ステップＳ１８０５）。
【０１４８】
次に、結合バインディングアップデートの応答側の移動端末の処理フロー（ＢＵメッセージの受信からＢＡメッセージを送信するまで）について図１８Ｂを用いて説明する。図１８Ｂに示すように、移動端末は、ＢＵ（メッセージ）を受信し、結合バインディングアップデートのメッセージかどうかの判定処理を開始する（ステップＳ１８１０）。移動端末は、結合バインディングアップデートのメッセージか否かを判断し（ステップＳ１８１１）、結合バインディングアップデートのメッセージである場合、ＢＵに含まれるアドレス、Nonceの情報を用いてToken（B-Token-h、B-Token-c）を生成し、Tokenを用いて鍵データを生成し、付加されているメッセージ認証コードの確認処理を開始する（ステップＳ１８１２）。
【０１４９】
移動端末は、メッセージ認証コードが正しいか否かを判断し（ステップＳ１８１３）、正しい場合には、バインディングキャッシュの設定、更新を行い、ＢＵに含まれている暗号化されたToken（A-Token-h、A-Token-c）を復号化し、鍵データを生成し、メッセージ認証コードを生成し、ＢＡメッセージに含めて送信する（ステップＳ１８１４）。なお、ステップＳ１８１１において、結合バインディングアップデートのメッセージでない場合、移動端末は、従来のＭＩＰのバインディングアップデートを開始する（ステップＳ１８１５）。また、ステップＳ１８１３において、メッセージ認証コードが正しくないと判断された場合、バインディングキャッシュの設定、更新を行わないことを確認する（ステップＳ１８１６）。
【０１５０】
なお、上記の本発明の各実施の形態の説明で用いた各機能ブロックは、典型的には集積回路であるＬＳＩ（Large Scale Integration）として実現される。これらは個別に１チップ化されてもよいし、一部又はすべてを含むように１チップ化されてもよい。なお、ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ（Integrated Circuit）、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。例えば、バイオ技術の適応などが可能性としてあり得る。
【産業上の利用可能性】
【０１５１】
本発明に係るバインディング更新方法及びその方法で用いられる移動端末は、両端末が行うバインディングアップデートにおいて必要なメッセージ数を減少させることができ、メッセージ数の削減により端末の消費電力を削減でき、さらに両端末のバインディングアップデートにかかる処理時間を短縮できるため、バインディングアップデートにより経路の最適化がなされた通信端末間のバインディングを更新するバインディング更新方法及びその方法で用いられる移動端末などに有用である。
【図面の簡単な説明】
【０１５２】
【図１Ａ】本発明の第１の実施の形態におけるメッセージ数の削減について説明するための図
【図１Ｂ】本発明の第１の実施の形態におけるメッセージ数の削減について説明するための他の図
【図２】本発明の第１の実施の形態に係る移動端末の構成の一例を示す構成図
【図３】本発明の第１の実施の形態に係る他の移動端末の構成の一例を示す構成図
【図４】本発明の第２の実施の形態を説明するためのＭＩＰの基本原理について説明するための図
【図５】本発明の第２の実施の形態を説明するためのＭＩＰの基本原理について説明するための他の図
【図６】本発明の第２の実施の形態におけるメッセージ数の削減について説明するための図
【図７】本発明の第２の実施の形態についてさらに詳細に説明するための図
【図８】本発明の第２の実施の形態における両端末間での情報のやりとりの様子を示す図
【図９】本発明の第２の実施の形態に係る移動端末の構成の一例を示す構成図
【図１０】本発明の第２の実施の形態に係る他の移動端末の構成の一例を示す構成図
【図１１】本発明の第２の実施の形態における結合バインディングアップデートの開始側の移動端末の処理フローの一例を示すフローチャート
【図１２Ａ】本発明の第２の実施の形態における結合バインディングアップデートの応答側の移動端末の処理フローの一部を示すフローチャート
【図１２Ｂ】本発明の第２の実施の形態における結合バインディングアップデートの応答側の移動端末の処理フローの他の一部を示すフローチャート
【図１３】本発明の第３の実施の形態におけるメッセージ数の削減について説明するための他の図
【図１４】本発明の第３の実施の形態における両端末間での情報のやりとりの様子を示す図
【図１５】本発明の第３の実施の形態に係る移動端末の構成の一例を示す構成図
【図１６】本発明の第３の実施の形態に係る他の移動端末の構成の一例を示す構成図
【図１７】本発明の第３の実施の形態における結合バインディングアップデートの開始側の移動端末の処理フローの一例を示すフローチャート
【図１８Ａ】本発明の第３の実施の形態における結合バインディングアップデートの応答側の移動端末の処理フローの一部を示すフローチャート
【図１８Ｂ】本発明の第３の実施の形態における結合バインディングアップデートの応答側の移動端末の処理フローの他の一部を示すフローチャート
【図１９Ａ】従来の両端末間で行われるバインディングアップデートを説明するための図
【図１９Ｂ】従来の両端末間で行われるバインディングアップデートを説明するための他の図
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１Ａ】
2009090722.tif 000026
【図１Ｂ】
2009090722.tif 000027
【図２】
2009090722.tif 000028
【図３】
2009090722.tif 000029
【図４】
2009090722.tif 000030
【図５】
2009090722.tif 000031
【図６】
2009090722.tif 000032
【図７】
2009090722.tif 000033
【図８】
2009090722.tif 000034
【図９】
2009090722.tif 000035
【図１０】
2009090722.tif 000036
【図１１】
2009090722.tif 000037
【図１２Ａ】
2009090722.tif 000038
【図１２Ｂ】
2009090722.tif 000039
【図１３】
2009090722.tif 000040
【図１４】
2009090722.tif 000041
【図１５】
2009090722.tif 000042
【図１６】
2009090722.tif 000043
【図１７】
2009090722.tif 000044
【図１８Ａ】
2009090722.tif 000045
【図１８Ｂ】
2009090722.tif 000046
【図１９Ａ】
2009090722.tif 000047
【図１９Ｂ】
2009090722.tif 000048
【国際調査報告】
2009090722.tif 000049
2009090722.tif 000050
2009090722.tif 000051
2009090722.tif 000052