(57)【要約】      （修正有）【課題】  待ち受けポートを常時開放することなく、かつ接続要求を随時受信することが可能なネットワーク装置および認証方法を提供する。【解決手段】  インターネットを介して他の通信端末とパケットの送受信を行うネットワーク装置の接続しようとする通信端末を認証する認証方法で、通信端末から送信されるＮ個（Ｎは２以上の整数）のパケットに関して、ｎ番目（１≦ｎ≦Ｎ）に送信されたパケットの認証用の項目および文字列を設定した認証コードを管理し、通信端末から送信されたＮ個のパケットのパケット情報を記録・保持して、認証コードのｎ番目の認証用の項目の文字列と、保持しているｎ番目のパケット情報の該当項目の文字列を照合し、一致した場合に通信端末を認証する。【選択図】        図１
2005309974.tif 000002
【特許請求の範囲】
【請求項１】
インターネットを介して他の通信端末とパケットの送受信を行うパケット送受信手段と、前記インターネットを介して接続しようとする通信端末を認証する認証手段とを備えるネットワーク装置であって、
前記認証手段は、前記通信端末から送信されるＮ個（Ｎは２以上の整数）のパケットに関して、ｎ番目（１≦ｎ≦Ｎ）に送信されたパケットの認証用の項目および文字列を設定した認証コードを管理する認証コード管理手段と、
前記通信端末から送信されたＮ個のパケットのパケット情報を、前記通信端末から送信された順に並べたフロー記録を保持するフロー記録保持手段と、
前記認証コードのｎ番目の認証用の項目の文字列と、前記フロー保持手段で保持している前記通信端末のフロー記録のｎ番目のパケット情報の該当項目の文字列を照合し、１番目からＮ番目までの全ての項目の文字列が一致した場合に前記通信端末を認証する認証コード照合手段と、
前記パケットを送信した通信端末が認証済みの端末であるか否かの判定、および認証済みでない場合に前記フロー記録の作成、ならびに前記認証コード照合手段への認証依頼を行うフロー管理手段とを備えることを特徴とするネットワーク装置。
【請求項２】
前記パケット送受信手段および前記認証手段に加え、前記パケットを送信した通信端末が認証済みの場合に、前記通信端末が送信したパケットを、前記ネットワーク装置に接続され、かつ前記パケットを送信した通信端末とは異なる通信端末に転送するパケット転送手段を備えることを特徴とする請求項１に記載のネットワーク装置。
【請求項３】
前記認証コード管理手段は、前記認証コードを生成するための条件を管理する生成条件管理手段と、前記通信端末から送信されたパケットに基づいて前記認証コードを生成する認証コード生成手段を備えることを特徴とする請求項１または請求項２に記載のネットワーク装置。
【請求項４】
インターネットを介して他の通信端末とパケットの送受信を行うことが可能なネットワーク装置に、前記インターネットを介して接続しようとする通信端末を認証する認証方法であって、
前記ネットワーク装置で、前記通信端末から送信されるＮ個（Ｎは２以上の整数）のパケットに関して、ｎ番目（１≦ｎ≦Ｎ）に送信されたパケットの認証用の項目および文字列を設定した認証コードを生成し、管理するステップ１と、
前記通信端末から送信されたＮ個のパケットのパケット情報を、前記通信端末から送信された順に並べたフロー記録を生成し、保持するステップ２と、
前記認証コードのｎ番目の認証用の項目の文字列と、前記通信端末のフロー記録のｎ番目のパケット情報の該当項目の文字列を照合し、１番目からＮ番目までの全ての項目の文字列が一致した場合に前記通信端末を認証するステップ３と、
前記ステップ３で前記通信端末を認証した場合にのみ、前記認証コードと関連づけられた通信ポートを開放するステップ４とを有することを特徴とする認証方法。
【請求項５】
前記ステップ４は、前記ステップ３で認証した通信端末に対してのみ前記通信ポートを開放することを特徴とする請求項４に記載の認証方法。
【請求項６】
前記ステップ１は、同一の項目の同一の文字列が２回以上連続しない認証コードを生成し、
前記ステップ３は、前記フロー記録で同一のパケット情報が連続している場合、そのパケット情報を１つのパケット情報と見なして照合することを特徴とする請求項４または請求項５に記載の認証方法。
【請求項７】
前記ステップ１は、ＴＣＰパケットの宛先ポート番号を組み合わせて認証コードを生成することを特徴とする請求項４乃至請求項６のいずれか１項に記載の認証方法。
【請求項８】
前記ステップ１は、ＵＤＰパケットの宛先ポート番号を組み合わせて認証コードを生成することを特徴とする請求項４乃至請求項６のいずれか１項に記載の認証方法。
【請求項９】
前記ステップ１は、前記通信端末から送信されたパケットに含まれる項目のうち、２つ以上の項目を組み合わせて認証コードを生成することを特徴とする請求項４乃至請求項６のいずれか１項に記載の認証方法。
【請求項１０】
前記ステップ１は、ＴＣＰパケットの宛先ポート番号およびＵＤＰパケットの宛先ポート番号を組み合わせて認証コードを生成することを特徴とする請求項９に記載の認証方法。
【請求項１１】
前記ステップ１は、ｍ番目（２≦ｍ≦Ｎ）に送信されたパケットの認証用の文字列を、ｍ−１番目以前に送信された２個以上のパケットの認証用の文字列と関連づけた認証コードを生成することを特徴とする請求項４乃至請求項１０のいずれか１項に記載の認証方法。
【請求項１２】
前記ステップ４は、１番目に送信されたパケットで指定された宛先ポート番号のポートを開放することを特徴とする請求項１１に記載の認証方法。
【請求項１３】
前記ステップ１は、前記ネットワーク装置と前記通信端末で、前記認証コードの生成条件および時刻情報を登録するステップと、
前記通信端末から送信されたパケットの時刻情報と前記ネットワーク装置の時刻情報を照合し、前記各時刻情報の差があらかじめ定められた閾値以下の場合、前記時刻情報と前記認証コードの生成条件に基づき認証コードを生成するステップとを有することを特徴とする請求項４乃至請求項１２のいずれか１項に記載の認証方法。
【請求項１４】
請求項４乃至請求項１３のいずれかに記載された各ステップを、コンピュータに実行させる認証プログラム。
【請求項１５】
請求項１４の認証プログラムが、前記コンピュータで読み取り可能な状態で記録された記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク装置、ネットワーク装置を用いた認証方法、認証プログラム、および記録媒体に関し、特に、IP(Internet Protocol)網におけるコネクション待ち受け側で待ち受けポートを常時開放する必要がないという点において安全な認証方法に適用して有効な技術に関するものである。
【背景技術】
【０００２】
従来、インターネット等のネットワークの普及により、前記ネットワークを介して他の通信端末と通信を行うことが可能なネットワーク装置が増えつつある。前記ネットワーク装置はこれまで、パーソナル・コンピュータ、PDA(Personal Digital Assistance)、携帯電話等の情報端末およびそれらの周辺機器が主であったが、近年、たとえば、エアコンディショナーや家庭用ビデオデッキのような家電機器も増えつつある。
【０００３】
前記ネットワーク装置は、インターネットを介して他の通信端末と通信を行うことができる。そのため、たとえば、図９（ａ）に示すように、外出先から前記通信端末３を用い、インターネット２を介して自宅に設置されたネットワーク装置１にアクセスし、前記ネットワーク装置１を操作することができる。このとき、前記ネットワーク装置１がパーソナル・コンピュータ等の前記情報端末であれば、たとえば、外出先から前記ネットワーク装置１から情報を取り出す、あるいは書き込むといった操作ができる。また、前記ネットワーク装置１が前記家電機器であれば、たとえば、外出先から前記家電機器を操作することができる。
【０００４】
しかしながら、前記通信端末３からインターネット２を介して前記ネットワーク装置１にアクセスできるようにするためには、一般に、前記ネットワーク装置１、もしくはその前に設置されたゲートウェイ装置の、前記通信端末３からの接続要求を受信するための待ち受けポートを常時開放しておく必要がある。そのため、ポートスキャン等により開放されているポートを検知した第三者の通信端末７が、たとえば、図９（ａ）に示したように、そのポートを利用して前記ネットワーク装置１に不正なアクセスを試みる可能性が高い。また、前記不正なアクセスの他にも、たとえば、コンピュータ・ウイルス等の不正なプログラムが自動的に侵入したりして、前記ネットワーク装置１が被害を受ける可能性が高い。
【０００５】
そこで、近年は、たとえば、不正アクセス防止やコンピュータ・ウイルスの侵入防止等のセキュリティに対する技術力の高い第三者が、図９（ｂ）に示すように、ポータルサイト等の登録サーバ８を設置する方法が提案されている（たとえば、非特許文献１を参照。）。この方法では、エンドユーザが前記通信端末３を用いて、前記ネットワーク装置１に直接アクセスするのではなく、前記登録サーバ８に情報を送信する。そして、前記ネットワーク装置１は、前記登録サーバ８に定期的にアクセスして前記通信端末３からのメッセージを受け取る。そのため、前記ネットワーク装置１は、前記登録サーバ８にアクセスするときだけポートを開放すればよく、不正なアクセスやコンピュータ・ウイルスの進入機会を低減することができる。また、前記登録サーバ８は、前記セキュリティに対する技術力の高い第三者が設置しているため、前記登録サーバ８に対して不正なアクセスを試みた通信端末７からの情報は受け付けない。そのため、正規のエンドユーザが前記登録サーバ８に送信した情報を改ざんされたり、前記ネットワーク装置１に対して不正な情報を送信されたりすることを防げる。
【非特許文献１】”リモート録画予約サービス「iCommand」”, [online], Sony Communication Network, [平成１６年４月１９日検索], インターネット＜URL: http://www.so-net.ne.jp/tv/manual/icom.html＞
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、前記従来技術のうち、前記非特許文献１に記載されたような方法は、前記ネットワーク装置の代理として前記通信端末からの情報（要求）を受け付ける登録サーバを設置する必要がある。そのため、前記登録サーバを設置した第三者における前記登録サーバの管理コストや維持コストが増大するという問題がある。
【０００７】
また、前記非特許文献１に記載されたような方法は、前記ネットワーク装置が定期的に前記登録サーバに対してアクセスをする必要がある。そのため、前記エンドユーザが前記登録サーバに送信した情報（要求）が、前記ネットワーク装置に到着するまでに時間を要し、即時性に欠ける場合がでてくる。即時性を向上させるためには、前記ネットワーク装置が前記登録サーバへアクセスする頻度を上げればよいが、その場合前記登録サーバの処理量が増加し、負荷が非常に高くなるという問題がある。
【０００８】
本発明の目的は、前記待ち受けポートを常時開放することなく、かつ前記インターネットを介した通信端末からの接続要求を随時受信することが可能なネットワーク装置および認証方法を提供することにある。
【０００９】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面によって明らかになるであろう。
【課題を解決するための手段】
【００１０】
本願において開示される発明の概略を説明すれば、以下の通りである。
【００１１】
（１）  インターネットを介して他の通信端末とパケットの送受信を行うパケット送受信手段と、前記インターネットを介して接続しようとする通信端末を認証する認証手段とを備えるネットワーク装置であって、前記認証手段は、前記通信端末から送信されるＮ個（Ｎは２以上の整数）のパケットに関して、ｎ番目（１≦ｎ≦Ｎ）に送信されたパケットの認証用の項目および文字列を設定した認証コードを管理する認証コード管理手段と、前記通信端末から送信されたＮ個のパケットのパケット情報を、前記通信端末から送信された順に並べたフロー記録を保持するフロー記録保持手段と、前記認証コードのｎ番目の認証用の項目の文字列と、前記フロー保持手段で保持している前記通信端末のフロー記録のｎ番目のパケット情報の該当項目の文字列を照合し、１番目からＮ番目までの全ての項目の文字列が一致した場合に前記通信端末を認証する認証コード照合手段と、前記パケットを送信した通信端末が認証済みの端末であるか否かの判定、および認証済みでない場合に前記フロー記録の作成、ならびに前記認証コード照合手段への認証依頼を行うフロー管理手段とを備えるネットワーク装置である。
【００１２】
（２）  インターネットを介して他の通信端末とパケットの送受信を行うことが可能なネットワーク装置に、前記インターネットを介して接続しようとする通信端末を認証する認証方法であって、前記ネットワーク装置で、前記通信端末から送信されるＮ個（Ｎは２以上の整数）のパケットに関して、ｎ番目（１≦ｎ≦Ｎ）に送信されたパケットの認証用の項目および文字列を設定した認証コードを生成し、管理するステップ１と、前記通信端末から送信されたＮ個のパケットのパケット情報を、前記通信端末から送信された順に並べたフロー記録を生成し、保持するステップ２と、前記認証コードのｎ番目の認証用の項目の文字列と、前記通信端末のフロー記録のｎ番目のパケット情報の該当項目の文字列を照合し、全ての項目の文字列が一致した場合に前記通信端末を認証するステップ３と、前記ステップ３で前記通信端末を認証した場合にのみ、前記認証コードと関連づけられた通信ポートを開放するステップ４とを有する認証方法である。
【発明の効果】
【００１３】
本発明のネットワーク装置は、前記（１）に記載したように、前記通信端末から送信されたＮ個のパケットを用いて前記通信端末を認証する。そのため、認証コードを知らない第三者の通信端末が、前記認証コードと一致するような順番でＮ個のパケットを送信することは難しく、前記第三者の通信端末による不正なアクセスを低減することができる。また、前記ネットワーク装置自身が前記認証手段を備えるため、インターネット上などに設けられた他のサーバを利用しなくてもよく、前記通信端末から直接、前記ネットワーク装置にアクセスし、パケット（要求）を送信することができる。
【００１４】
またこのとき、前記ネットワーク装置は、たとえば、ゲートウェイ装置のように、ホームネットワーク等でネットワークに対応した端末を前記インターネットに接続するときの中継装置のようなものであってもよい。この場合、前記ネットワーク装置は、前記パケット送受信手段および前記認証手段に加え、前記パケットを送信した通信端末が認証済みの場合に、前記通信端末が送信したパケットを、前記ネットワーク装置に接続され、かつ前記パケットを送信した通信端末とは異なる通信端末に転送するパケット転送手段を備える。
【００１５】
また、前記認証コード管理手段は、あらかじめ設定された認証コードを管理する代わりに、前記認証コードを生成するための条件を管理する生成条件管理手段と、前記通信端末から送信されたパケットに基づいて前記認証コードを生成する認証コード生成手段を備えていてもよい。このようにすることで、前記認証コードを動的に変えることができる。
【００１６】
また、前記（１）のネットワーク装置を用いて、前記通信端末を認証するときには、たとえば、前記（２）に記載したようなステップ１からステップ４の処理を行う。このようにすることで、正規の通信端末からアクセス要求があったときに、必要な通信ポートだけを開放することができ、第三者の通信端末による不正なアクセスを低減することができる。
【００１７】
またこのとき、前記ステップ４は、前記ステップ３で認証した通信端末に対してのみ前記通信ポートを開放することで、前記開放した通信ポートを利用した不正なアクセスを防ぐことができる。
【００１８】
またこのとき、前記ステップ１は、同一の項目の同一の文字列が２回以上連続しない認証コードを生成し、前記ステップ３は、前記フロー記録で同一のパケット情報が連続している場合、そのパケット情報を１つのパケット情報と見なして照合してもよい。このようにすることで、タイムアウト等により前記通信端末が同一のパケットを再度送信した場合でも、前記通信端末が正規な通信端末であれば認証することができる。
【００１９】
またこのとき、前記ステップ１は、たとえば、ＴＣＰパケットの宛先ポート番号を組み合わせて認証コードを生成することができる。また、その他にも、たとえば、ＵＤＰパケットの宛先ポート番号を組み合わせて認証コードを生成してもよい。
【００２０】
また、前記ステップ１は、前記通信端末から送信されたパケットに含まれる項目のうち、２つ以上の項目を組み合わせて認証コードを生成してもよい。この場合、前記ステップ１は、たとえば、ＴＣＰパケットの宛先ポート番号およびＵＤＰパケットの宛先ポート番号を組み合わせて認証コードを生成する。
【００２１】
また、前記ステップ１は、ｍ番目（２≦ｍ≦Ｎ）に送信されたパケットの認証用の文字列を、ｍ−１番目以前に送信された２個以上のパケットの認証用の文字列と関連づけた認証コードを生成してもよい。このようにすると、たとえば、第三者の通信端末が不正アクセスを試みようとしたときに、前記認証コードを特定することが難しくなる。またこのとき、前記ステップ４は、１番目に送信されたパケットで指定された宛先ポート番号のポートを開放してもよい。
【００２２】
また、前記ステップ１は、前記ネットワーク装置と前記通信端末で、前記認証コードの生成条件および時刻情報を登録するステップと、前記通信端末から送信されたパケットの時刻情報と前記ネットワーク装置の時刻情報を照合し、前記各時刻情報の差があらかじめ定められた閾値以下の場合、前記時刻情報と前記認証コードの生成条件に基づき認証コードを生成するステップとを有してもよい。このようにすると、不正アクセスを試みようとする第三者の通信端末に、正規の通信端末の認証手順を傍受された場合でも、傍受したパケットを用い不正アクセスを防ぐことができる。このとき、前記時刻情報の差は、たとえば、前記通信端末がパケットを生成した時刻と、前記ネットワーク装置が前記通信端末からの最初のパケットを受信した時刻の差とすればよい。
【００２３】
また、前記時刻情報等を用いて動的に認証コードを生成する場合、１度認証に使用した認証コードを認証後あらかじめ定められた期間使用できないようにすることで、前記正規の通信端末の認証手順を傍受された場合でも、傍受したパケットを用いた不正アクセスを防ぐ効果がさらに高くなる。
【００２４】
また、前記（１）のネットワーク装置は、たとえば、コンピュータとプログラムを用いて実現することもできる。この場合、前記（２）に記載されたような各ステップを、コンピュータに実行させる認証プログラムを作成し、前記コンピュータで実行させればよい。またこのとき、前記認証プログラムは、たとえば、磁気的、電気的、光学的な記録媒体に前記コンピュータで読み取り可能な状態で記録して提供することもできるし、インターネット等のネットワークを介して提供することもできる。
【００２５】
以下、本発明について、図面を参照して実施の形態（実施例）とともに詳細に説明する。
なお、実施例を説明するための全図において、同一機能を有するものは、同一符号を付け、その繰り返しの説明は省略する。
【発明を実施するための最良の形態】
【００２６】
本発明のネットワーク装置は、認証手段が設けられており、インターネットを介して前記ネットワーク装置に接続要求を送信した通信端末の認証をし、認証に成功した場合にのみ待ち受けポートを開放する。このとき、前記通信端末の認証に用いる認証コードは、前記通信端末から送信された複数のパケットに含まれる項目の文字列の組み合わせとする。そして、前記各パケットの認証用項目の文字列を前記パケットの送信順に並べたときに、前記認証コードと一致した場合にのみ前記通信端末を認証する。このようにすることで、前記ネットワーク装置の待ち受けポートが常時開放した状態になることを防ぎ、不正アクセスやコンピュータ・ウイルスの侵入機会を低減する。
【実施例１】
【００２７】
図１および図２は、本発明による実施例１のネットワーク装置の概略構成を示す模式図であり、図１（ａ）はネットワーク装置の適用例を示す図、図１（ｂ）はネットワーク装置の構成例を示す図、図２（ａ）、図２（ｂ）、図２（ｃ）はそれぞれ認証コードの一例を示す図である。
図１（ａ）において、１はネットワーク装置、２はインターネット、３は通信端末である。また、図１（ｂ）において、１０１はパケット送受信手段、１０２は認証手段、１０２Ａは認証コード管理手段、１０２Ｂはフロー記録保持手段、１０２Ｃは認証コード照合手段、１０２Ｄはフロー管理手段、１０２Ｅはパケット返信手段、１０２Ｆはポリシーテーブル、１０３はパケット処理手段である。
【００２８】
本実施例１のネットワーク装置１は、たとえば、図１（ａ）に示すように、インターネット２に直接接続されたネットワーク装置である。このとき、エンドユーザは、パーソナル・コンピュータや携帯電話等の通信端末３を用いて、前記インターネット２を介し、前記ネットワーク装置１に直接アクセスすることができる。
【００２９】
このとき、前記ネットワーク装置１は、たとえば、図１（ｂ）に示すように、前記インターネット２を介して他の通信端末３とのパケットの送受信を行うパケット送受信手段１０１と、前記ネットワーク装置１にアクセスした通信端末３を認証する認証手段１０２と、前記認証手段１０２で認証された通信端末３から送信されたパケットを処理するパケット処理手段１０３とを備える。またこのとき、前記ネットワーク装置１は、通常、前記通信端末３からのアクセス要求を受信するためのポートを除く全てのポートを閉じた状態であり、前記認証手段１０２で認証された場合にのみ、あらかじめ定められたポートを開放するようになっているとする。
【００３０】
また、前記認証手段１０２は、前記インターネット２を介した接続を要求する通信端末３を認証するための認証コードを管理する認証コード管理手段１０２Ａと、前記通信端末３から送信されたパケットから抽出したパケット情報を前記通信端末３からの送信順に並べたフロー記録を保持するフロー記録保持手段１０２Ｂと、前記フロー記録と前記認証コードを照合する認証コード照合手段１０２Ｃと、前記パケットを送信した通信端末３が認証済みの端末か否かの判定、前記フロー記録の作成、前記照合要求等を行うフロー管理手段１０２Ｄとを備える。また、前記認証手段１０２は、前記各手段１０２Ａ，１０２Ｂ，１０２Ｃ，１０２Ｄに加え、たとえば、認証されていない通信端末から送信されたパケットに対する返信をするパケット返信手段１０２Ｅと、前記パケットの返信に関する条件（ポリシー）を保持するポリシーテーブル１０２Ｆとを備える。
【００３１】
また、本実施例１のネットワーク装置１では、前記通信端末３から送信されたＮ個（Ｎは２以上の整数）のパケットを用いて前記通信端末３の認証を行う。このとき、前記認証コード管理手段１０２Ａで管理する認証コードは、前記通信端末３から送信されたｎ番目（１≦ｎ≦Ｎ）のパケットで認証に用いる項目とその文字列を設定したものとする。このとき、前記通信端末３の認証に３個のパケットを用い、前記認証用の項目としてＴＣＰパケットの宛先ポート番号を用いるとすると、前記認証コードは、たとえば、図２（ａ）に示すように、前記通信端末３が最初に送信したパケットの宛先ＴＣＰポート番号が80番、２番目に送信したパケットの宛先ＴＣＰポート番号が12345番、３番目に送信したパケットの宛先ＴＣＰポート番号が3785番というように設定することができる。またこのとき、前記認証コードは、図２（ａ）に示したように、前記認証コードで認証した場合に開放する待ち受けポート番号と関連づけておく。図２（ａ）に示した認証コードの場合、認証に成功したら80番のポートを開放するように関連づけられている。
【００３２】
また、前記認証コードは、前記ＴＣＰパケットの宛先ポート番号に限らず、たとえば、ＵＤＰパケットの宛先ポート番号を用いてもよい。このとき、前記通信端末３の認証に３個のパケットを用いるとすると、前記認証コードは、たとえば、図２（ｂ）に示すように、前記通信端末３が最初に送信したパケットの宛先ＵＤＰポート番号が1280番、２番目に送信したパケットの宛先ＵＤＰポート番号が21245番、３番目に送信したパケットの宛先ＵＤＰポート番号が6382番というように設定することができる。そして、前記通信端末が図２（ｂ）に示したような順番でパケットを送信した場合は、前記通信端末３を認証し、たとえば、80番のポートを開放する。
【００３３】
また、前記認証コードは、前記ＴＣＰパケットの宛先ポート番号と前記ＵＤＰパケットのポート番号を組み合わせて用いてもよい。このとき、たとえば、前記通信端末３の認証に４個のパケットを用いるとすると、前記認証コードは、たとえば、図２（ｃ）に示すように、前記通信端末３が最初に送信したパケットの宛先ＵＤＰポート番号が1280番、２番目に送信したパケットの宛先ＴＣＰポート番号が4563番、３番目に送信したパケットの宛先ＴＣＰポート番号が8989番、４番目に送信したパケットのＵＤＰポート番号が21245番というように設定することができる。そして、前記通信端末３が図２（ｃ）に示したような順番でパケットを送信した場合は、前記通信端末３を認証し、たとえば、80番のポートを開放する。
【００３４】
なお、図２（ａ）、図２（ｂ）、図２（ｃ）に示した認証コードは、認証コードの一例であり、ＴＣＰパケットの宛先ポート番号やＵＤＰパケットの宛先ポート番号に限らず、他の項目およびその文字列の順番を設定してもよい。また、認証に用いるパケットも、３個または４個に限らず、５個以上であってもよい。
【００３５】
図３は、本実施例１のネットワーク装置の認証手段の動作を説明するためのフロー図である。
【００３６】
本実施例１のネットワーク装置１を用いて、前記インターネット２を介して前記ネットワーク装置１への接続を要求する通信端末３を認証するときには、あらかじめ、図２（ａ）、図２（ｂ）、図２（ｃ）に示したような認証コードを生成し、前記認証コード管理手段１０２Ａで保持しておく。また、前記認証コードは、たとえば、前記ネットワーク装置１への接続を許可する正規の通信端末にも登録しておく。
【００３７】
このとき、前記他の通信端末３がインターネット２を介して前記ネットワーク装置１に接続要求のパケットを送信し、そのパケットを前記ネットワーク装置１が受信すると、前記ネットワーク装置１は、まず、図３に示すように、受信したパケットからパケット情報を抽出する（ステップ４０１）。前記ステップ４０１は、前記認証手段１０２のフロー管理手段１０２Ｄで行う。また、抽出するパケット情報は、たとえば、前記パケットの送信元IPアドレスやポート番号等のヘッダ情報とする。
【００３８】
前記パケット情報を抽出したら、次に、抽出したパケット情報を参照して、前記パケットを送信した通信端末３が認証済みの端末であるか否かを判定する（ステップ４０２）。このとき、前記認証済みの端末の情報は、たとえば、前記フロー記録保持手段１０２Ｂで保持しておく。そして、前記通信端末３から送信されたパケット情報と前記フロー記録保持手段１０２Ｂで保持している情報を照合し、一致した場合に認証済みの端末であると判定する。前記ステップ４０２で、前記パケットを送信した通信端末３が認証済みの端末であると判定された場合、前記パケットを前記フロー管理手段１０２Ｄから前記パケット処理手段１０３に転送し、前記パケットに記述された処理を行わせる（ステップ４０３）。前記ステップ４０３では、たとえば、前記パケットで指定された動作を前記ネットワーク装置１に実行させる。
【００３９】
一方、前記ステップ４０２で、前記パケットを送信した通信端末３が認証済みでない端末であると判定された場合、前記パケット情報をフロー記録として前記フロー記録保持手段１０２Ｂで保持する（ステップ４０４）。このとき、前記フロー記録保持手段１０２Ｂに、前記パケットを送信した通信端末３が送信した他のパケットに関するフロー記録をすでに保持しているのであれば、そのフロー記録に前記パケット情報を追加する。またこのとき、前記フロー記録の各パケット情報は、前記通信端末３が送信した順に並べて保持する。
【００４０】
前記ステップ４０４の処理が済んだら、次に、前記フロー記録保持手段１０２Ｂで保持している前記通信端末３に関するフロー記録を前記認証コード照合手段１０２Ｃに渡し（ステップ４０５）、前記認証コードと照合して（ステップ４０６）、一致するか否かを判定する（ステップ４０７）。前記ステップ４０６では、たとえば、まず、前記認証コード管理手段１０２Ａで管理している認証コードの１つを選択し、その認証コードの１番目に設定されている認証用の項目の文字列と、前記フロー記録の最初のパケットの認証用の項目の文字列を比較する。そして、それらが一致する場合は、前記認証コードの２番目に設定されている項目の文字列と前記フロー記録の２番目のパケットの項目の文字列を比較する。こうして、前記全ての項目の文字列が一致した場合、前記通信端末３を認証する。前記通信端末３を認証したら、前記通信端末３のフロー記録に認証済みであることを示す情報を追加し、前記フロー記録保持手段１０２Ｂで保持する（ステップ４０８）。また、前記ステップ４０８の処理が済んだら、前記通信端末３が送信したパケットを前記パケット返信手段１０２Ｅに渡す（ステップ４０９）。
【００４１】
一方、前記選択した認証コードの項目の文字列と前記フロー記録の項目の文字列が途中で一致しなくなった場合、あるいは前記フロー記録に比較するパケットがない場合は、前記認証コードでは認証できない。そのため、前記認証コード管理手段１０２Ａで他の認証コードを保持している場合は、別の認証コードを用いて前記ステップ４０６およびステップ４０７の処理を繰り返す。そして、全ての項目の文字列が一致する認証コードがあれば、前記ステップ４０８およびステップ４０９の処理を行う。また、全ての認証コードで前記ステップ４０６およびステップ４０７の処理を行った結果、全ての項目の文字列が一致する認証コードがなかった場合、前記ステップ４０８の処理をとばして、前記ステップ４０９の処理を行う。
【００４２】
また、前記パケット返信手段１０２Ｅでは、前記ステップ４０９において前記通信端末３が送信したパケットを受け取ると、前記ポリシーテーブル１０２Ｆを参照し、前記通信端末３に対してパケットを返信するか否かの判定をする（ステップ４１０）。このとき、前記ポリシーテーブル１０２Ｆにおいて、前記通信端末３にパケットを返信するように設定されているとすれば、前記パケット返信手段１０２Ｅは、RSTフラグを立てたパケットを生成し、前記パケット送受信手段１０１を介して前記通信端末３に生成したパケットを返信し（ステップ４１１）、次のパケットを受信するまで待機する。また、前記ポリシーテーブルにおいて、前記通信端末３にパケットを返信しないように設定されているとすれば、前記パケット返信手段１０２Ｅは、前記通信端末３から送信されたパケットを破棄し（ステップ４１２）、次のパケットを受信するまで待機する。
【００４３】
図４および図５は、本実施例１のネットワーク装置における認証手順を説明するための模式図であり、図４は正規の通信端末からアクセスを試みた場合のシーケンス図、図５は不正なアクセスを試みた場合のシーケンス図である。
【００４４】
本実施例１のネットワーク装置１では、たとえば、図２（ａ）、図２（ｂ）、図２（ｃ）に示したような認証コードを用い、図３に示したような手順で前記ネットワーク装置１にアクセスを試みた通信端末３の認証を行う。そこで次に、図２（ａ）に示したような認証コードが設定されている場合の前記ネットワーク装置１における具体的な認証手順を説明する。
【００４５】
まず、前記通信端末（以下、端末Ａという）が認証コードを保持している場合、あるいは前記端末Ａは認証コードを保持していないが前記端末Ａを操作するユーザが前記ネットワーク装置１に保持されている認証コードを知っている場合を説明する。このとき、前記端末Ａは、まず、前記ネットワーク装置１とのコネクションを確立するために、SYNフラグを立てたパケットを生成し、前記ネットワーク装置１に送信する。またこのとき、前記SYNフラグを立てたパケットは、前記認証コードの１番目に指定されている認証用の項目、すなわち宛先ＴＣＰポート番号を80番として前記ネットワーク装置１に送信する。このパケットを受信した前記ネットワーク装置１は、図３に示したような処理を行う。このとき、前記端末Ａから送信されたパケットは１つである。そのため、前記ステップ４０６の照合を行うと、図５に示したように、前記端末Ａからのフロー記録と前記認証コードは一致しない。そこで、前記ネットワーク装置１は、前記フロー記録を前記フロー記録保持手段１０２Ｂに保持させた後、前記端末ＡにRSTフラグを立てたパケットを返信する。
【００４６】
前記端末Ａは、たとえば、図４に示したように、前記宛先ＴＣＰポート番号を80番にしたパケットに対する返信パケットを受信すると、再びSYNフラグを立てたパケットを生成し、前記ネットワーク装置１に送信する。このとき、前記端末Ａが送信するパケットは、前記ネットワーク装置１に対して２回目に送信するパケットであるため、このパケットは、前記認証コードの２番目に指定されている認証用の項目、すなわち宛先ＴＣＰポート番号を12345番として前記ネットワーク装置１に送信する。このパケットを受信した前記ネットワーク装置１は再び、図３に示したような処理を行う。このとき、前記端末Ａから送信されたパケットは２つであり、前記端末Ａのフロー記録は、最初に送信した宛先ＴＣＰポート番号が80番のパケットのパケット情報と、２番目に送信した宛先ＴＣＰポート番号が12345番のパケットのパケット情報が記録されている。このときも、前記ステップ４０６の照合を行うと、図５に示したように、前記端末Ａからのフロー記録と前記認証コードは一致しない。そこで、前記ネットワーク装置１は、前記フロー記録を前記フロー記録保持手段１０２Ｂに保持させた後、前記端末ＡにRSTフラグを立てたパケットを返信する。
【００４７】
前記端末Ａは、たとえば、図４に示したように、前記宛先ＴＣＰポート番号を12345番にしたパケットに対する返信パケットを受信すると、再びSYNフラグを立てたパケットを生成し、前記ネットワーク装置１に送信する。このとき、前記端末Ａが送信するパケットは、前記ネットワーク装置１に対して３回目に送信するパケットであるため、前記認証コードの３番目に指定されている認証用の項目、すなわち宛先ＴＣＰポート番号を3785番とし、SYNフラグを立てたパケットを生成して前記ネットワーク装置１に送信する。このパケットを受信した前記ネットワーク装置１は再び、図３に示したような処理を行う。このとき、前記端末Ａから送信されたパケットは３つになり、前記端末Ａのフロー記録は、最初に送信した宛先ＴＣＰポート番号が80番のパケットのパケット情報、２番目に送信した宛先ＴＣＰポート番号が12345番のパケットのパケット情報、および３番目に送信した宛先ＴＣＰポート番号が3785番のパケットのパケット情報が記録されている。そのため、前記ステップ４０６の照合を行うと、図５に示したように、前記端末Ａからのフロー記録と前記認証コードが一致する。そこで、前記ネットワーク装置１は、前記フロー記録に認証済みであることを示す情報を追加して前記フロー記録保持手段１０２Ｂに保持させた後、前記端末ＡにRSTフラグを立てたパケットを返信する。また、前記ネットワーク装置１は、前記端末Ａにパケットを返信した後、たとえば、前記認証コードと関連づけされた80番のポートを待ち受けポートとして開放する。またこのとき、前記待ち受けポートは、たとえば、前記認証に成功した端末Ａに対してのみ開放することが好ましい。このようにすることで、前記待ち受けポートを開放している間に、開放されているポートを利用して他の通信端末に不正なアクセスをされることを防げる。
【００４８】
前記端末Ａは、たとえば、図４に示したように、前記宛先ＴＣＰポート番号を3875番にしたパケットを送信し、そのパケットに対する返信パケットを受信すると、前記ネットワーク装置１が前記端末Ａを認証したと判断する。そこで、前記端末Ａは、前記ネットワーク装置１とのＴＣＰコネクションを確立するために、宛先ＴＣＰポート番号を前記認証コードと関連づけられた待ち受けポート（80番）にしたパケットを前記ネットワーク装置１に送信する。このとき、前記ネットワーク装置１は前記端末Ａを認証し、待ち受けポート（80番）を開放しているので、前記ネットワーク装置１は、前記待ち受けポートを開放していることを示すパケットを前記端末Ａに返信する。前記端末Ａは、この返信パケットを受け取ると、前記待ち受けポートに対して、たとえば、前記ネットワーク装置１を操作するための命令が記述されたパケット等を送信し、前記ネットワーク装置１を操作（リモートコントロール）することが可能となる。
【００４９】
また、詳細な説明は省略するが、前記端末Ａが前記ネットワーク装置１の開放された待ち受けポートを利用した後、前記ネットワーク装置は、前記端末Ａとの接続が切断された時点、あるいは前記端末Ａからの最後のパケットを受信してからあらかじめ定められた時間が経過した時点で前記開放したポートを閉じる。
【００５０】
次に、前記ネットワーク装置１に保持されている認証コードを知らないユーザが、前記認証コードを保持していない通信端末（以下、端末Ｂという）を用いて前記ネットワーク装置１にアクセスした場合を説明する。このとき、前記端末Ｂは、前記端末Ａと同様に、前記ネットワーク装置１とのコネクションを確立するために、SYNフラグを立てたパケットを生成し、前記ネットワーク装置１に送信する。ところが、前記端末Ｂあるいはそのユーザは、認証コードがわからない。また、前記認証コードの１番目に指定されている認証用の項目、すなわち宛先ＴＣＰポート番号には、0から65535のいずれかを指定しなければならない。そのため、前記端末Ｂが最初に送信するパケットの宛先ＴＣＰポート番号が、前記認証コードの１番目に指定されている宛先ＴＣＰポートの番号と一致している可能性は低い。そのため、前記ネットワーク装置１が前記端末Ｂを認証する可能性は低い。つまり、本実施例１のネットワーク装置１では、前記認証コードが図２（ａ）に示したような設定になっている場合、前記端末Ｂから最初に送信したパケットの宛先ＴＣＰポート番号が80番でなければ、それ以降に前記端末Ｂが連続してパケットを送信しても、前記端末Ｂは認証されず、前記ネットワーク装置１が待ち受けポートを開放することはない。そのため、たとえば、前記端末Ｂを用いて前記ネットワーク装置１に不正なアクセスをされる可能性を低減することができる。特に、前記認証コードの１番目の宛先ＴＣＰポート番号を、利用頻度の低いポート番号にしておけば、前記端末Ｂから最初に送信されたパケットの宛先ＴＣＰポート番号と前記認証コードの１番目の宛先ＴＣＰポート番号が一致する可能性が低くなり、不正アクセスの防止に有効である。
【００５１】
ただし、前記認証コードの認証用の項目として前記宛先ＴＣＰポート番号を指定した場合、前記端末Ｂから最初のパケットを送信するときに、たとえば、図５に示すように、前記最初のパケットの宛先ＴＣＰポート番号が、前記認証コードの１番目の宛先ＴＣＰポート番号と一致する可能性がある。しかしながら、本実施例１のネットワーク装置１では、前記端末Ｂから続けて送信するパケットの宛先ＴＣＰポート番号が、前記認証コードの２番目以降の宛先ＴＣＰポート番号と一致しないと認証されない。このとき、たとえば、前記端末Ｂが２番目に送信するパケットにおいて、図５に示したように、前記宛先ＴＣＰポート番号が13579番となっていれば、前記認証コードの２番目の宛先ＴＣＰポート番号（12345番）とは異なるので、この場合も、連続して３つのパケットを送信しても前記端末Ｂは認証されず、前記ネットワーク装置１が待ち受けポートを開放することはない。つまり、前記認証コードを知らないユーザが前記端末Ｂを用いて前記ネットワーク装置１にアクセスする場合、たとえば、３つのパケットを連続して前記ネットワーク装置１に送信しても、各パケットの宛先ＴＣＰポート番号をパケットの送信順に並べたときに、前記認証コードで指定されている宛先ＴＣＰポート番号の順番と一致する可能性は低い。そのため、前記認証コードを知らないユーザが前記端末Ｂを用いて前記ネットワーク装置１に不正なアクセスを試みても、前記端末Ｂが認証される可能性は低い。
【００５２】
以上説明したように、本実施例１のネットワーク装置１によれば、前記ネットワーク装置１へのアクセスを試みた通信端末３は、連続して複数のパケットを送信し、かつ、前記各パケットの認証用の項目の文字列を送信順に並べたときに前記認証コードと一致しなければ前記ネットワーク装置１に認証されない。また、前記ネットワーク装置１は、アクセスを試みた前記通信端末３を認証した場合にのみ、指定された待ち受けポートを開放する。そのため、前記認証コードを知らない第三者に、前記認証コードを保持していない通信端末（端末Ｂ）を用いて前記ネットワーク装置１に不正なアクセスをされる可能性が低減する。
【００５３】
また、本実施例１のネットワーク装置１を用いて認証を行い、待ち受けポートを開放するときには、前記認証した端末に対してのみ開放することが好ましいが、全ての通信端末に対して開放してもよい。このようにすることで、たとえば、携帯電話のように接続のたびにIPアドレスが異なる可能性がある通信端末を用いた場合においても、認証後にアクセスすることが可能となる。
【００５４】
また、本実施例１のネットワーク装置１を用いた認証方法では、前記認証コードと開放する待ち受けポートのポート番号を関連づけていたいが、これに限らず、たとえば、前記認証コードを用いて前記通信端末３を認証した後、前記通信端末３から送信されたパケットで指定されている待ち受けポートを開放するようにしてもよい。
【００５５】
また、従来の前記ネットワーク装置１等における端末の認証では、たとえば、英数字や数種の記号を組み合わせたパスワードを用いるのが一般的である。このとき、たとえば、ａからｚ、ＡからＺまでのアルファベット、０から９までの数字、！、＿、＆、＄、％の６７文字が利用可能であり、これらの文字を用いて６文字のパスワードを作成する場合、その組み合わせは６７の６乗通りである。それに対し、本実施例１のように、たとえば、ＴＣＰパケットのポート番号を利用する場合、１つのパケットで指定できる宛先ポート番号は、０から６５５３５までの６５５３６通りである。そのため、たとえば、６つのパケットのＴＣＰポート番号で認証する場合、その組み合わせは６５５３６の６乗となる。つまり、本実施例１の認証方法では、従来の英数字等を利用したパスワードよりも複雑な認証コードを用いることで、前記認証コードの解読を困難にすることができる。
【００５６】
また、前記認証コードを設定する場合、認証用の項目は、たとえば、図２（ａ）、図２（ｂ）、図２（ｃ）に示したような、前記ＴＣＰパケットの宛先ポート番号、前記ＵＤＰパケットの宛先ポート番号、もしくはそれらの組み合わせに限らず、前記通信端末３から送信されたパケットに含まれるその他のパケット情報（項目）を用いてもよい。一般的なＴＣＰパケットでは、ＴＣＰコネクションを確立するために送信する最初のパケットには必ずSYNフラグが付加されるが、このような制約を取り除くことで、たとえば、ＴＣＰパケットのシーケンス番号、ＡＣＫ番号、データオフセットフィールド、リザーブフィールド、コントロールビット、ウインドウサイズ、チェックサム、緊急ポインタフィールド、オプションフィールド等を用いた認証コードを設定することも可能である。このようにすると、たとえば、１番目のパケットのＴＣＰポート番号とSYNフラグ、２番目のパケットのＴＣＰポート番号とFINフラグ、３番目のパケットのＴＣＰポート番号とRSTフラグを認証コードとすることも可能である。
【００５７】
また、本実施例１では、前記正規の通信端末に認証コードを登録しておく場合を例に挙げたが、前記正規の通信端末に前記認証コードを登録する代わりに、たとえば、前記正規の通信端末のユーザが前記認証コードを覚えておき、前記正規の通信端末を用いて前記ネットワーク装置１へアクセスするときに、たとえば、前記正規の通信端末のインターネット・ブラウザ等を用いて前記認証コードに沿った接続動作を行ってもよい。このとき、たとえば、前記ネットワーク装置１のＩＰアドレスが192.168.1.1であるとし、前記認証コードが図２（ａ）に示したようなコードであるとすれば、前記通信端末３を用いるユーザは、前記通信端末３のインターネット・ブラウザにおいて、たとえば、http://192.168.1.1:80、http://192.168.1.1:12345、http://192.168.1.1:3785の順にアドレスを指定して前記ネットワーク装置１への接続を行うことで前記通信端末３を認証することができる。このようにすれば、前記正規の通信端末が前記認証コードを保持しないため、前記通信端末から認証コードが漏洩することもでき、認証コードの安全性が向上する。
【実施例２】
【００５８】
図６は、本発明による実施例２のネットワーク装置の概略構成を示す模式図であり、図６（ａ）はネットワーク装置の他の適用例を示す図、図６（ｂ）は図６（ａ）のように適用する場合のネットワーク装置の構成例を示す図である。
【００５９】
本実施例２のネットワーク装置１は、たとえば、図６（ａ）に示すように、ホームネットワーク等の第１ネットワーク５内に設置された他のネットワーク装置（以下、ネットワーク対応端末という）６Ａ，６Ｂとインターネット２の接続を中継する装置である。このとき、前記ネットワーク装置１はゲートウェイ装置としての機能を持ち、エンドユーザは、パーソナル・コンピュータや携帯電話等の前記第１ネットワーク５外の通信端末３を用いて、前記インターネット２および前記ネットワーク装置１を介して、前記ネットワーク対応端末６Ａ，６Ｂにアクセスすることができる。
【００６０】
本実施例２のネットワーク装置１も、基本的には、図６（ｂ）に示すように、前記パケット送受信手段１０１と、前記認証手段１０２と、前記パケット処理手段１０３とを備える。このとき、前記パケット送受信手段１０１および認証手段１０２は、前記実施例１で説明した各手段１０２Ａ，１０２Ｂ，１０２Ｃ，１０２Ｄ，１０２Ｅ，１０２Ｆと同等であるため、詳細な説明は省略する。また、本実施例２のネットワーク装置１において、前記パケット処理手段１０３は、前記実施例１のネットワーク装置１と異なり、前記通信端末３から送信されたパケットを前記ネットワーク対応端末６Ａ，６Ｂに転送するとともに、前記ネットワーク対応端末６Ａ，６Ｂから送信されたパケットを前記通信端末３に転送するパケット転送手段であるとする。
【００６１】
また、本実施例２のネットワーク装置１において、前記認証コード管理手段１０２Ａで管理する認証コードも、前記実施例１で説明した認証コードと同じでよいため、詳細な説明は省略する。
【００６２】
また、本実施例２のネットワーク装置１における認証手段１０２の動作も、前記実施例１で説明した動作と同じであるため、詳細な説明は省略する。ただし、本実施例２のネットワーク装置１の場合、たとえば、図３に示したステップ４０２において前記パケットを受信した通信端末３が認証済みの端末であると判定した場合、前記ステップ４０３では、たとえば、受信したパケットのIPヘッダのIPアドレスを前記第１ネットワーク５内のアドレス体系のIPアドレスに変換して前記ネットワーク対応端末６Ａ，６Ｂに転送する。前記ステップ４０３の処理は、前記パケット処理手段（パケット転送手段）１０３で行う。
【００６３】
図７は、本実施例２のネットワーク装置における認証手順を説明するための模式図であり、正規の通信端末からアクセスを試みた場合のシーケンス図である。
【００６４】
本実施例２のようなネットワーク構成の場合、前記通信端末３が前記ネットワーク対応端末６Ａ，６Ｂにアクセスするためには、まず、前記インターネット２を介して前記ネットワーク装置１にアクセスする必要がある。そして、前記ネットワーク装置１において前記通信端末３が認証された場合に限り、前記通信端末３から送信されたパケットが、前記ネットワーク装置１から前記ネットワーク対応端末６Ａ，６Ｂに転送される。つまり、本実施例２の場合、前記通信端末３は、まず、図７に示すように、前記ネットワーク装置１との接続を確立するためのSYNフラグを立てたパケットを生成し、前記ネットワーク装置１に送信する。このとき、前記認証コードは、たとえば、図２（ａ）に示したような認証コードとする。またこのとき、前記通信端末（以下、端末Ａという）が認証コードを保持している、あるいは前記端末Ａは認証コードを保持していないが前記端末Ａを操作するユーザが前記ネットワーク装置に保持されている認証コードを知っているのであれば、前記SYNフラグを立てたパケットは、前記認証コードの１番目に指定されている認証用の項目、すなわち宛先ＴＣＰポート番号を80番として前記ネットワーク装置１に送信する。
【００６５】
前記端末Ａからのパケットを受信した前記ネットワーク装置１は、図３に示したような処理を行う。そして、前記端末Ａのフロー記録を前記フロー記録保持手段１０２Ｂに保持させた後、前記端末ＡにRSTフラグを立てたパケットを返信する。
【００６６】
その後、前記端末Ａから３回目のパケット、すなわち宛先ＴＣＰポート番号を3785番としたパケットを前記ネットワーク装置１に送信し、前記ネットワーク装置１がそのパケットに対する返信パケットを送信し、待ち受けポートを開放するところまでは、前記実施例１と同じであるため、詳細な説明は省略する。
【００６７】
前記端末Ａは、たとえば、図７に示したように、前記宛先ＴＣＰポート番号を3875番にしたパケットを送信し、そのパケットに対する返信パケットを受信すると、前記ネットワーク装置１が前記端末Ａを認証したと判断する。そこで、前記端末Ａは、前記ネットワーク装置１とのＴＣＰコネクションを確立するために、宛先ＴＣＰポート番号を前記認証コードと関連づけられた待ち受けポート（80番）にしたパケットを前記ネットワーク装置１に送信する。このとき、前記ネットワーク装置１は前記端末Ａを認証し、待ち受けポート（80番）を開放しているので、前記ネットワーク装置１は、前記待ち受けポートを開放していることを示すパケットを前記端末Ａに返信する。前記端末Ａは、この返信パケットを受け取ると、前記ネットワーク対応端末６Ａ，６Ｂに対して送信するパケットを生成する。そして、生成したパケットを前記ネットワーク装置１の開放されている待ち受けポートに対して送信する。前記ネットワーク装置１は、前記端末Ａから送信されたパケットを受信すると、前記認証手段１０２で前記端末Ａが認証済みの端末であると判定される。そして、受信したパケットはパケット処理手段（パケット転送手段）１０３に転送する。このパケットを受信した前記パケット処理手段１０３は、たとえば、前記パケットのIPヘッダに記述されたIPアドレスを変換し、前記パケット送受信手段１０１を介して指定されたネットワーク対応端末６Ａ，６Ｂに転送する。また、図示は省略するが、前記端末Ａからのパケットを受信した前記ネットワーク対応端末６Ａ，６Ｂは、前記パケットで指定された処理を行う。
【００６８】
また、詳細な説明は省略するが、前記端末Ａが前記ネットワーク装置の開放された待ち受けポートを利用した後、前記ネットワーク装置は、前記端末Ａとの接続が切断された時点、あるいは前記端末Ａからの最後のパケットを受信してからあらかじめ定められた時間が経過した時点で前記開放したポートを閉じる。
【００６９】
また、詳細な説明は省略するが、前記ネットワーク装置に保持されている認証コードを知らないユーザが、前記認証コードを保持していない通信端末（以下、端末Ｂという）を用いて前記ネットワーク装置にアクセスした場合は、前記実施例１と同様に、前記端末Ｂが前記ネットワーク装置に認証される可能性は低い。そのため、前記端末Ｂを用いて前記ネットワーク対応端末に不正なアクセスをされる可能性を低減することができる。
【００７０】
以上説明したように、本実施例２のネットワーク装置１によれば、前記ネットワーク装置１へのアクセスを試みた通信端末３は、連続して複数のパケットを送信し、かつ、前記各パケットの認証用の項目の文字列を送信順に並べたときに前記認証コードと一致しなければ前記ネットワーク装置１に認証されない。また、前記ネットワーク装置１は、アクセスを試みた前記通信端末３を認証した場合にのみ、指定された待ち受けポートを開放する。そのため、前記認証コードを知らない第三者に、前記認証コードを保持していない通信端末（端末Ｂ）を用いて前記ネットワーク装置１に不正なアクセスをされる可能性が低減する。その結果、たとえば、ホームネットワークのように、複数のネットワーク対応端末６Ａ，６Ｂで構成されるネットワークでも、前記ネットワーク対応端末６Ａ，６Ｂへの不正なアクセスを低減することができる。また、本実施例２のネットワーク装置１のように、前記第１ネットワーク５内の複数のネットワーク対応端末６Ａ，６Ｂとインターネット２の接続を中継するネットワーク装置（ゲートウェイ装置）において前記通信端末の認証を行うことで、前記各ネットワーク対応端末６Ａ，６Ｂは前記認証手段１０２を持たなくてもよくなる。
【００７１】
また、本実施例２のネットワーク装置１を用いて認証を行い、待ち受けポートを開放するときにも、前記認証した端末に対してのみ開放することが好ましいが、全ての通信端末に対して開放してもよい。このようにすることで、たとえば、携帯電話のように接続のたびにIPアドレスが異なる可能性がある通信端末を用いた場合においても、認証後にアクセスすることが可能となる。
【００７２】
また、本実施例２のネットワーク装置１を用いた認証方法でも、たとえば、前記認証コードを用いて前記通信端末３を認証した後、前記通信端末３から送信されたパケットで指定されている待ち受けポートを開放するようにしてもよい。
【００７３】
また、前記認証コードを設定する場合、認証用の項目は、たとえば、図２（ａ）、図２（ｂ）、図２（ｃ）に示したような、前記ＴＣＰパケットの宛先ポート番号、前記ＵＤＰパケットの宛先ポート番号、もしくはそれらの組み合わせに限らず、前記通信端末３から送信されたパケットに含まれるその他のパケット情報（項目）を用いてもよい。一般的なＴＣＰパケットでは、ＴＣＰコネクションを確立するために送信する最初のパケットには必ずSYNフラグが付加されるが、このような制約を取り除くことで、たとえば、ＴＣＰパケットのシーケンス番号、ＡＣＫ番号、データオフセットフィールド、リザーブフィールド、コントロールビット、ウインドウサイズ、チェックサム、緊急ポインタフィールド、オプションフィールド等を用いた認証コードを設定することも可能である。このようにすると、たとえば、１番目のパケットのＴＣＰポート番号とSYNフラグ、２番目のパケットのＴＣＰポート番号とFINフラグ、３番目のパケットのＴＣＰポート番号とRSTフラグを認証コードとすることも可能である。
【００７４】
また、本実施例２の認証方法の場合も、前記ネットワーク装置１に接続を試みる正規の通信端末に前記認証コードを登録しておいてもよいし、前記正規の通信端末に前記認証コードを登録する代わりに、たとえば、前記正規の通信端末のユーザが前記認証コードを覚えておき、前記正規の通信端末を用いて前記ネットワーク装置１へアクセスするときに、たとえば、前記正規の通信端末のインターネット・ブラウザ等を用いて前記認証コードに沿った接続動作を行ってもよい。このとき、たとえば、前記ネットワーク装置１のＩＰアドレスが192.168.1.1であるとし、前記認証コードが図２（ａ）に示したようなコードであるとすれば、前記通信端末３を用いるユーザは、前記通信端末３のインターネット・ブラウザにおいて、たとえば、http://192.168.1.1:80、http://192.168.1.1:12345、http://192.168.1.1:3785の順にアドレスを指定して前記ネットワーク装置１への接続を行うことで前記通信端末３を認証することができる。このようにすれば、前記正規の通信端末が前記認証コードを保持しないため、前記通信端末から認証コードが漏洩することもでき、認証コードの安全性が向上する。
【実施例３】
【００７５】
図８は、本発明による実施例３のネットワーク装置における認証手順を説明するための模式図であり、通信端末からアクセスを試みた場合のシーケンス図である。
【００７６】
前記実施例１および前記実施例２では、前記通信端末３から前記ネットワーク装置１にパケットを送信した後、前記ネットワーク装置１からRSTフラグを立てた返信パケットを受信してから、次のパケットを送信する場合を例に挙げて説明したが、前記ネットワーク装置１や前記通信端末３と前記ネットワーク装置１の間のネットワークの状態によっては、前記RSTフラグを立てた返信パケットが前記通信端末３に到達するまでの時間が長くなる場合がある。また、前記通信端末３等で用いられる一般的なインターネット閲覧ソフト（ブラウザ）の場合、あらかじめ定められた時間内に前記ネットワーク装置１からのパケットが返ってこない場合、直前に送信したパケットを自動的に再送信することがある。このような場合、たとえば、前記通信端末３から１回目のパケットを前記ネットワーク装置１に送信した後、あらかじめ定められた時間内に前記ネットワーク装置１から返信パケットが返ってこないと、前記通信端末３は、前記１回目のパケットを再度前記ネットワーク装置１に送信してしまう。そうすると、前記実施例１や実施例２の方法の場合、前記ネットワーク装置１は、再度送信した１回目のパケットを２回目のパケットとしてしまい、前記通信端末３が正規の端末であっても認証に失敗してしまう。そこで、本実施例３では、このような問題を防ぐための認証方法について説明する。
【００７７】
本実施例３のネットワーク装置１を用いた認証方法では、前記認証コードを設定するときに、同一の項目および文字列が２回以上連続しないように設定する。すなわち、認証コードの１番目の項目がＴＣＰパケットの宛先ポート番号で、ポート番号（文字列）が80番であるとすると、２番目の項目はＴＣＰパケットの宛先ポート番号で、ポート番号が80番とはならないようにする。またこのとき、前記２番目の項目は、ＴＣＰパケットの宛先ポート番号でもよいが、ポート番号は80番以外の番号とする。
【００７８】
また、このような条件で認証コードを設定した場合、前記フロー記録を保持するときに、たとえば、パケット情報が同一のパケットに関しては１つのパケットとして保持する。このようにすることで、前記通信端末３が同じパケットを再送した場合の認証の失敗を防ぐことができる。
【００７９】
以上のような処理を具体的に説明すると、たとえば、図８に示すように、まず、前記通信端末（端末Ａ）からSYNフラグを立て、宛先ＴＣＰポート番号を80番としたパケットを前記ネットワーク装置１に送信したとする。このとき、あらかじめ定められた時間内に、前記ネットワーク装置１からRSTフラグを立てた返信パケットが前記端末Ａに届かず、タイムアウトしたとする。このとき、前記端末Ａは、SYNフラグを立て、宛先ＴＣＰポート番号を80番としたパケットを前記ネットワーク装置１に再度送信する。このとき、前記ネットワーク装置１が、前記実施例１で説明したような処理を行うとすると、前記端末Ａが再度送信したパケットは２回目のパケットととらえてしまう。そのため、認証コードと照合するときに、最初のパケットの宛先ＴＣＰポート番号が80番、２度目のパケットの宛先ＴＣＰポート番号が80番として照合してしまい、前記端末Ａの認証に失敗してしまう。
【００８０】
そこで、本実施例３のような方法をとると、前記端末Ａが再度送信したパケットは、前記端末Ａが最初に送信したパケットと同一であるため、前記ネットワーク装置１は、図８に示したように、前記端末Ａが再度送信したパケットを無視して前記認証コードとの照合を行う。また、その後、たとえば、前記端末Ａから宛先ＴＣＰポート番号が12345番のパケットを受信した前記ネットワーク装置１において、フロー記録と認証コードを照合する場合、図８に示した例では、前記ネットワーク装置１からみると前記宛先ＴＣＰポート番号が12345番のパケットは前記端末Ａから３番目に送信されたパケットであるが、１番目に送信されたパケットと２番目に送信されたパケットが同一のパケットである。そのため、前記ネットワーク装置１は、前記宛先ＴＣＰポート番号が12345番のパケットを２番目に送信されたパケットとして照合する。同様に、前記ネットワーク装置１は、宛先ＴＣＰポート番号が3785番のパケットも３番目に送信されたパケットとして照合する。そのため、前記端末Ａが前記認証コードで指定された順序でパケットを送信すれば、前記ネットワーク装置１は前記端末Ａを認証することができる。
【００８１】
以上説明したように、本実施例３のネットワーク装置１を用いた認証方法では、前記端末Ａが、あらかじめ定められた時間内に前記ネットワーク装置１からの返信パケットを受信できず、同一のパケットを再度送信した場合でも、前記端末Ａを認証することができる。
【実施例４】
【００８２】
前記実施例１から実施例３のネットワーク装置１を用いた認証方法では、前記ネットワーク装置１は、前記通信端末３からパケットを受信し、フロー記録と認証コードの照合を行った後、前記通信端末３に対してRSTフラグを立てたパケットを返信していた。しかしながら、この方法では、第三者による不正なアクセスのように、前記認証コードを知らない第三者が前記認証コードを保持していない通信端末を用いて前記ネットワーク装置１にアクセスを試みた場合も、前記RSTフラグを立てたパケットを返信してしまう。そのため、前記不正なアクセスを試みる通信端末に対して、前記ネットワーク装置１の存在が明らかになってしまい、ポートスキャン等を実行されたり、正規の通信端末３がアクセスするときのアクセス方法を傍受されたりする可能性がある。
【００８３】
そのため、たとえば、前記ネットワーク装置１のポリシーテーブル１０２Ｆで、前記RSTフラグを立てたパケットを返信しないように設定しておけば、前記通信端末３は、前記ネットワーク装置１からの返信パケットを受信することはない。そのため、不正なアクセスを試みた通信端末に対して前記ネットワーク装置１の存在を隠すことができる。ただし、前記ポリシーテーブル１０２Ｆの設定を、たとえば、全ての通信端末に対してRSTフラグを立てたパケットを返信しないように設定した場合、前記通信端末は、前記実施例３で説明したような再送を行わずに、あらかじめ定められた時間間隔で強制的に各パケットを送信するように設定する必要がある。そのため、前記ポリシーテーブル１０２Ｆの設定は、正規のユーザが使用する通信端末３からのパケットに対してはRSTフラグを立てたパケットを返信し、それ以外の通信端末からのパケットに対しては返信しないように設定しておいてもよい。
【実施例５】
【００８４】
前記実施例１から実施例４のネットワーク装置１を用いた認証方法では、前記認証コードがあらかじめ決定されている。そのため、前記認証コードを用いて繰り返しアクセスを行うと、不正アクセスを試みる通信端末による傍受等で認証コードを第三者に知られてしまう可能性がある。このような問題を解決するためには、たとえば、定期的に認証コードを変えればよいが、認証する通信端末が多い場合、変更作業に時間がかかり、効率的ではない。
【００８５】
そこで、本実施例５では、たとえば、図２（ａ）に示したような認証コードを決定する代わりに、認証コードの条件を設定する方法を説明する。認証コードの条件としては、たとえば、前記通信端末３から送信された複数個のパケットのうち、最初のいくつかを認証コード生成キーとして利用し、それらの認証コード生成キーを用いて、続くパケットの認証用の文字列（値）を指定する方法がある。このような方法では、たとえば、認証コードの認証項目をＴＣＰパケットの宛先ポート番号とした場合、前記通信端末３から送信された最初の３つのパケットでは、前記宛先ポート番号を任意に選べるようにし、次の４番目のパケットの宛先ポート番号は、前記最初の３つのパケットの宛先ポート番号の和とするような方法がある。つまり、たとえば、１番目のパケットで宛先ＴＣＰポート番号を80番、２番目のパケットで宛先ＴＣＰポート番号を123番、３番目のパケットで宛先ＴＣＰポート番号を557番とした場合、４番目のパケットの宛先ポート番号が760番であれば認証するという方法である。この方法だと、４番目の宛先ポート番号が、１番目から３番目のパケットの宛先ポート番号の和になっていればよいので、１番目から３番目までのパケットの宛先ポート番号は、接続するたびに変えることができる。そのため、同じ認証コードを長期にわたって使用する可能性が減り、認証コードの安全性を向上させることができる。
【実施例６】
【００８６】
前記実施例５では、前記認証コードの条件を設定し、管理する方法について説明したが、この方法を使うと、１つの条件で任意のポートを開放させることも可能である。つまり、前記実施例５で説明したように、たとえば、４番目のパケットの宛先ポート番号が、１番目から３番目のパケットの宛先ポート番号の和である場合に認証するという条件を設定したときに、たとえば、その条件に、１番目のパケットの宛先ポート番号を開放すると言う条件を付加する。こうすると、前記ネットワーク装置は、たとえば、１番目のパケットで宛先ＴＣＰポート番号を80番、２番目のパケットで宛先ＴＣＰポート番号を123番、３番目のパケットで宛先ＴＣＰポート番号を557番とした場合、４番目のパケットの宛先ポート番号が760番であると、それらのパケットを送信した通信端末を認証するとともに、１番目のパケットの宛先ポート番号である80番を待ち受けポートとして開放する。同様に、たとえば、１番目のパケットで宛先ＴＣＰポート番号を125番、２番目のパケットで宛先ＴＣＰポート番号を1055番、３番目のパケットで宛先ＴＣＰポート番号を920番とした場合、４番目のパケットの宛先ポート番号が2100番であると、それらのパケットを送信した通信端末は認証され、１番目のパケットの宛先ポート番号である125番を待ち受けポートとして開放する。このようにすると、認証コードと開放するポートを関連づける必要がなく、認証コードに関して１つの条件を設定しておけばよい。そのため、認証コードと開放するポートの対応関係の管理が容易になる。
【実施例７】
【００８７】
前記実施例１や実施例２の認証方法では、前記認証コードが固定されているため、前記認証コードを知らない第三者の端末が、正規の通信端末（端末Ａ）のアクセス手順を傍受することにより、前記第三者に認証コードを知られてしまう可能性がある。また、前記実施例５や実施例６の認証方法でも、認証コードはランダムであるが条件、すなわち前記通信端末から送信するパケットには規則性があるため、傍受されて前記第三者に認証コードの条件を解明されてしまう可能性がある。また、これまでの方法では、正規の通信端末３とネットワーク装置１の間での認証手続きにおいて、前記通信端末３から送信された全てのパケットを傍受されてしまうと、そのパケットと同じパケットを送信することで、前記第三者の通信端末の不正なアクセスを許してしまう。そこで、本実施例では、正規の通信端末３から送信されるパケットを傍受した第三者が、同じパケットを送信しても前記ネットワーク装置１にアクセスできないようにする認証方法について説明する。
【００８８】
本実施例７の認証方法では、前記ネットワーク装置１と前記通信端末３で、たとえば、実施例５で説明したような認証コードの生成条件のアルゴリズムを共有するとともに、NTP(Network Time Protocol)やGPS(Global Positioning System)等を用いて互いの時刻を同時刻（正確な時刻）に設定しておく。このとき、前記認証コードの生成条件のアルゴリズムは、前記ネットワーク装置１および通信端末３の時刻情報を用いて動的に前記認証コードを生成するようなアルゴリズムとする。
【００８９】
このような方法の場合、前記通信端末３は、まず、開放を希望するポート番号を指定したパケットに、前記通信端末３の保持する時刻情報を付加して前記ネットワーク装置１に送信する。次に、前記ネットワーク装置１は、前記通信端末３から送信されたパケットで指定されているポート番号と関連づけられた認証コードの生成条件のアルゴリズムを呼び出し、前記ネットワーク装置１の持つ時刻情報と前記通信端末３からのパケットに含まれる時刻情報を照合する。このとき、前記ネットワーク装置１は、前記ネットワーク装置１の時刻情報と前記パケットの時刻情報の差が、あらかじめ定められた閾値以下であった場合、前記呼び出したアルゴリズムを用いて、前記通信端末３からの時刻情報と指定されたポート番号に対する認証コードを生成する。
【００９０】
このとき、正規の通信端末３と前記ネットワーク装置１は、前記NTP等を用いて同時刻に設定されている。そのため、前記時刻情報の差の閾値は、１秒以下の非常に短い時間に設定することができる。つまり、前記正規の通信端末３が送信したパケットが有効なのは、前記正規の通信端末３がパケットを送信した時刻から１秒程度の非常に短い時間である。そのため、たとえば、第三者の通信端末が前記正規の通信端末３からのパケットを傍受したとしても、傍受したパケットと同じパケットを前記ネットワーク装置１に送信するときには、前記パケットに含まれる時刻情報と前記ネットワーク装置１の時刻情報の差が閾値よりも大きくなり、前記認証コードは生成されない。
【００９１】
また、本実施例７のような方法で認証する場合、前記正規の通信端末３から送信するパケットには時刻情報を付加しなくてもよい。前記NTP等を利用して前記ネットワーク装置１および前記通信端末３の時刻を同期している場合、一般に、前記通信端末３でパケットを生成して送信した時刻と、そのパケットを前記ネットワーク装置１で受信する時刻はほぼ同時刻であり、その差は最大でも１秒程度である。そのため、たとえば、１秒単位、あるいは２秒単位の時刻情報で生成される認証コードが変わるようなアルゴリズムを用いれば、前記通信端末３から送信するパケットに時刻情報を付加しなくても、前記通信端末３がパケットを送信するために認証コードを生成する時刻と、前記ネットワーク装置１がパケットを受信して認証コードを生成する時刻が同時刻となり、同じ認証コードが生成される。ただし、前記通信端末３と前記ネットワーク装置１の間のリンクやノードで遅延が生じると、前記通信端末３が認証コードを生成した時刻と前記ネットワーク装置１がパケットを受信した時刻とが異なり、異なる認証コードが生成される可能性がある。このような問題を防ぐためには、前述のように、前記通信端末３が認証コードを生成した時刻を示すような時刻情報を付加しておくことが好ましい。
【００９２】
また、本実施例７のような方法で認証する場合、たとえば、ある時刻情報および呼び出したアルゴリズムで認証コードを生成し、前記通信端末を認証した後、その認証コードをあらかじめ定められた期間、使用できなくなるようにしてもよい。このようにすれば、もし、前記第三者の通信端末が前記正規の通信端末３からのパケットを傍受し、傍受したパケットを前記ネットワーク装置１に送信したときに、前記パケットに含まれる時刻情報と前記ネットワーク装置１の時刻情報の差が閾値以下の場合でも、前記認証コードは生成されない。
【００９３】
以上、本発明を、前記実施例に基づき具体的に説明したが、本発明は、前記実施例に限定されるものではなく、その要旨を逸脱しない範囲において、種々変更可能であることはもちろんである。
【００９４】
たとえば、前記実施例１および実施例２で説明したネットワーク装置１は、たとえば、コンピュータとプログラムを用いて実現することもできる。この場合、前記実施例１から実施例７のいずれかに記載されたような認証方法の各ステップを、コンピュータに実行させる認証プログラムを作成し、前記コンピュータで実行させればよい。またこのとき、前記認証プログラムは、たとえば、磁気的、電気的、光学的な記録媒体に前記コンピュータで読み取り可能な状態で記録して提供することもできるし、インターネット等のネットワークを介して提供することもできる。
【図面の簡単な説明】
【００９５】
【図１】本発明による実施例１のネットワーク装置の概略構成を示す模式図であり、図１（ａ）はネットワーク装置の適用例を示す図、図１（ｂ）はネットワーク装置の構成例を示す図である。
【図２】本発明による実施例１のネットワーク装置の概略構成を示す模式図であり、図２（ａ）、図２（ｂ）、図２（ｃ）はそれぞれ認証コードの一例を示す図である。
【図３】本実施例１のネットワーク装置の認証手段の動作を説明するためのフロー図である。
【図４】本実施例１のネットワーク装置における認証手順を説明するための模式図であり、正規の通信端末からアクセスを試みた場合のシーケンス図である。
【図５】本実施例１のネットワーク装置における認証手順を説明するための模式図であり、不正なアクセスを試みた場合のシーケンス図である。
【図６】本発明による実施例２のネットワーク装置の概略構成を示す模式図であり、図６（ａ）はネットワーク装置の他の適用例を示す図、図６（ｂ）は図６（ａ）のように適用する場合のネットワーク装置の構成例を示す図である。
【図７】本実施例２のネットワーク装置における認証手順を説明するための模式図であり、正規の通信端末からアクセスを試みた場合のシーケンス図である。
【図８】本発明による実施例３のネットワーク装置における認証手順を説明するための模式図であり、通信端末からアクセスを試みた場合のシーケンス図である。
【図９】従来のネットワーク装置における不正なアクセスを防止する方法を説明するための模式図である。
【符号の説明】
【００９６】
１…ネットワーク装置
１０１…パケット送受信手段
１０２…認証手段
１０２Ａ…認証コード管理手段
１０２Ｂ…フロー記録保持手段
１０２Ｃ…認証コード照合手段
１０２Ｄ…フロー管理手段
１０２Ｅ…パケット返信手段
１０２Ｆ…ポリシーテーブル
１０３…パケット処理手段
２…インターネット
３…正規の通信端末
５…第１ネットワーク
６Ａ，６Ｂ…ネットワーク対応端末
７…不正なアクセスを試みる通信端末
８…登録サーバ
【図１】
2005309974.tif 000003
【図２】
2005309974.tif 000004
【図３】
2005309974.tif 000005
【図４】
2005309974.tif 000006
【図５】
2005309974.tif 000007
【図６】
2005309974.tif 000008
【図７】
2005309974.tif 000009
【図８】
2005309974.tif 000010
【図９】
2005309974.tif 000011