JP4367002B2 - ネットワーク機器、ネットワークシステム、および、グループ管理方法 - Google Patents
ネットワーク機器、ネットワークシステム、および、グループ管理方法 Download PDFInfo
- Publication number
- JP4367002B2 JP4367002B2 JP2003141286A JP2003141286A JP4367002B2 JP 4367002 B2 JP4367002 B2 JP 4367002B2 JP 2003141286 A JP2003141286 A JP 2003141286A JP 2003141286 A JP2003141286 A JP 2003141286A JP 4367002 B2 JP4367002 B2 JP 4367002B2
- Authority
- JP
- Japan
- Prior art keywords
- group
- information
- network device
- encrypted communication
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Description
【発明の属する技術分野】
本発明は、ネットワークに接続する特定の機器間で排他的かつ安全に通信を行う技術に関する。
【0002】
【従来の技術】
Internet Protocol(以下、IPと呼ぶ)と呼ばれる通信プロトコルを使用するIPネットワークは、コンピュータネットワークのデファクトスタンダードとしての地位を確立し、一般ユーザへの普及が著しい。
【0003】
このIPネットワークを介して機器間でデータをやりとりするには、その機器それぞれに一意的にIPアドレスを付与することが必要である。現在では、IPアドレスを32ビットで表すIPv4(Internet Protocol version 4)が用いられているが、IPネットワークの利用が増大するに連れて、IPアドレスの不足が大きな問題となってきている。
【0004】
このような状況を背景に、IPアドレスを128ビットに拡張し、さらに、セキュリティ機能など、今までのIPアドレスになかった機能を付加した新しいIPアドレスを用いるIPネットワークとしてIPv6(Internet Protocol version 6)がIETF(Internet Engineering Task Force)にて採択され、それを用いたネットワークサービスが次世代IPとして標準化されつつある。
【0005】
さらに、使用可能なアドレス数が増え、セキュリティ機能が充実したIPv6の新たな適用先として、冷蔵庫、洗濯機などの白物家電、あるいはテレビ、ビデオといったAV機器といった家庭内の機器から構成されるホームネットワークなどが注目されている。
【0006】
これらの機器それぞれにIPアドレス割り当てることにより、各機器をサーバとみなすことができるようになり、機器間通信により新しいサービスを実現したり、外部端末からの機器の制御、サービスセンタからの機器の制御といったインターネットを介した新しいサービスを実現するといったことが考えられている。
【0007】
ところで、家庭内機器のような特定の機器間の通信においては、利用者が認識している範囲外の機器からの操作を排除するようなシステムが要求される。例えば、友人が持ってきた機器による勝手な操作の防止が必要である。
【0008】
すなわち、利用者が互いの通信を許可する範囲を決定し、それらの機器をグループ化し、グループ化された機器間でのみ通信がなされるようなシステムが要求される。そして、このような通信を実現するためには、グループ内の機器間で、互いをグループ内に属する真正な機器であることを認証するための認証機能が必要である。
【0009】
このような認証機能として、従来のクライアント、サーバ型のシステムでは、認証サーバを用いたものが実現されている。例えば、RFC2865で定義されるRADIUS(Remote Authentication Dial-In User Service)では、サーバにアクセスするクライアントのアカウント(ユーザ名、パスワード)をRADIUSサーバと呼ばれる認証サーバで一括管理し、サーバは、クライアントからのアクセス要求(ユーザ名、パスワードを含む)をRADIUSサーバに転送しアクセス可否の判断結果を受けて、クライアントとの通信を行うかどうか判断する。
【0010】
例えば、従来のグループ化された特定の機器間での暗号通信システム及びその通信方法としては、例えば、特許文献1あるいは特許文献2に示されているものがある。
【0011】
【特許文献1】
特開2002−124941号公報
【特許文献2】
特開平5−347616号公報
【0012】
【発明が解決しようとする課題】
ホームネットワークに接続されている機器の中で、利用者が指定した機器間でのみ所定の通信を行うためには、互いに相手が指定された機器であることを認証する機能が必要と考えられている。
【0013】
従来の認証機能は、クライアント・サーバシステムが前提であり、サーバにアクセスするクライアントのアクセス情報を管理する認証サーバを備えることで実現されている。
【0014】
これに対し、ホームネットワークを構成する機器は、適宜サービスに応じて必要な機器間で通信を行なうといったアドホック型である。このため、全ての機器がサーバにもクライアントにもなり得、アクセス情報の設定がより煩雑になるという問題がある。
【0015】
このような場合に、従来のように認証サーバを備え、機器間でのセッション確立毎、あるいはサービス開始毎に個別に認証を行うようにすると、認証のオーバヘッドが大きくなるという問題もある。
【0016】
例えば、前述の特許文献1に開示された技術は、認証機能を有したグループ通信システムである。本技術は、グループを構成する機器以外に、グループ通信システム内にグループ暗号鍵を生成する機能及びグループに所属する端末情報を管理する機能を備えたグループ暗号鍵管理部と及び中継装置とを備えて構成され、大規模なネットワーク構成を前提としたものである。
【0017】
また、前述の特許文献2に開示された技術は、まず、グループ通信を行う機器ごとにICカードを具備していなければならない。そして、そのICカードには、予め送受信相手の所属ごとに設定された複数のマスタ鍵とグループ鍵生成プログラムとが記録されている必要がある。
【0018】
このように、従来の技術では、実際に通信を行なう機器以外に認証サーバとなる機器を用意する必要があったり、マスタ鍵と個々の通信相手先の関係といった複雑な情報を予め記憶させておく記録媒体をグループを構成する機器の数だけ用意する必要があった。
【0019】
機器のグループを構成し、その機器間で認証を行い、安全な通信を実現したとしても、第三者による機器の利用を妨げることが出来ない為、ユーザが予期しない勝手な操作が行われる可能性がある。すなわち、グループを利用するユーザ及び機器を利用するユーザレベルのアクセス制御ができないという問題がある。
また、ユーザにより利用できる機器を制限することもできないという問題がある。
加えて、家庭内ネットワークといった、場所が固定されたローカルネットワークに配置された機器間の通信にしか適用できない。これは、IPsecを利用していることから、グループを構成する機器であるかを判断する為に共有鍵に加えて送信先IPアドレス及び受信元IPアドレスのペアが固定である必要がある事に因る。グループを構成していた機器がローカルネットワークから移動した場合、グループ通信によるアクセス制御が適用できないという課題がある。
【0020】
本発明は、このような事情に鑑みなされたもので、本発明の目的は、利用者が認めた機器間で容易に互いを認証し合うことが可能なグループを構成し、そのグループに属する機器間の安全な通信を実現することにある。
【0021】
さらに、本発明の他の目的は、グループ内の機器が提供するアプリケーションにグループ外の機器にもアクセスを許可するものがある場合、グループ外の機器から、そのアプリケーションにのみアクセスを許可するといったアクセス制御を実現することにある。
【0022】
本発明の他の目的は、ユーザが認めた機器間で構成したグループ内において、ユーザを限定するサブグループを構成すると共に、サブグループを利用するユーザのアクセス制御を実現することである。
【0023】
本発明の他の目的は、ユーザが物理的な距離が離れたところから、サブグループを構成する機器への安全なアクセス/制御を実現することにある。
【0024】
尚、本願は上記目的のうちの少なくともひとつを解決するものである。
【0025】
【課題を解決するための手段】
本発明は、共有の鍵を用いて暗号通信を行うことで互いを認証し、セキュリティの確保された通信を行なう機器の集まりをグループとみなし、そのグループを構成する機器となりうる個々の機器のいずれもが、グループを生成し、参加し、また、そのグループから離脱するといったグループ管理の手段を有する。
【0026】
また、機器がいずれかのグループに属していても、グループ外の機器との通信の可能性も保有するものである。
【0027】
具体的には、ネットワークを介して接続された他のネットワーク機器と通信を行なうネットワーク機器であって、互いに認証可能な前記ネットワーク機器をグループとして管理するグループ管理手段と、前記グループ所属するネットワーク機器間で共通の暗号化鍵による暗号通信を行う暗号通信手段と、前記グループに所属するネットワーク機器の、ホスト名とアドレスとを含む識別情報および前記暗号化鍵の情報を含む前記グループに所属するネットワーク機器と暗号通信を行うために必要な暗号通信情報を格納する記憶手段と、外部から情報を取得する取得手段と、を備え、前記グループ管理手段は、前記記憶手段に前記暗号通信情報が格納されていない状態で、前記取得手段において前記暗号通信情報を取得すると、当該暗号通信情報を前記記憶手段に格納するとともに、前記暗号通信手段を介して自身の識別情報を前記グループに所属するネットワーク機器に送信し、前記暗号通信手段を介して他のネットワーク機器から当該他のネットワーク機器の識別情報を取得すると、前記記憶手段に記憶している前記暗号通信情報に当該識別情報を追加することを特徴とするネットワーク機器を提供する。
【0028】
また、前記グループ管理手段は、さらに、前記取得手段においてグループから離脱する指示を受け付けると、前記記憶手段に記憶されている前記グループに所属する全てのネットワーク機器に、前記暗号通信手段を介して自身のネットワーク機器の離脱を通知するとともに、前記記憶手段から前記暗号通信情報を削除し、前記暗号通信手段を介して他のネットワーク機器から、当該他のネットワーク機器が離脱する通知を受け付けると、前記記憶手段に記憶している前記暗号通信情報から、当該他のネットワーク機器の識別情報を削除する、ことを特徴とするネットワーク機器を提供する。
前記第一のグループを構成するネットワーク機器において、ユーザが利用できるネットワーク機器を選択し、それら機器に対して前記暗号通信手段を介して、選択したネットワーク機器で利用する第二の暗号鍵を配布することにより、第一のグループ内に第二のグループを構成し、第二の共通の暗号鍵を用い暗号通信を行うことで、互いを認証し、セキュリティの確保された通信を行うものである。
また、第二の暗号鍵と対応したユーザの識別子とパスワードの情報をネットワーク機器と記憶媒体で管理すると共に、第一の暗号鍵で前記情報を暗号化して他の第二のグループ通信を行うネットワーク機器へ配布することにより、ユーザがネットワーク機器を利用する際、どのネットワーク機器においても、記憶媒体の情報とネットワーク機器の情報が一致することを確認することにより、グループ通信の利用可否のアクセス制御を提供する。
記憶媒体でネットワーク機器のアドレスと認証鍵を管理し、ネットワーク機器において認証鍵を管理し、第一の暗号鍵で暗号化して他の第二のグループ通信を行うネットワーク機器へ管理を依頼することにより、グループ通信対象でないネットワーク機器からユーザが第二のグループ通信対象のネットワーク機器と通信を開始する際、記憶媒体の認証鍵で、記憶媒体のパスワードとユーザIDを暗号化し、その暗号化情報を記憶媒体のアドレス宛てに送信し、第二のグループ通信対象のネットワーク機器では認証鍵でユーザIDとパスワードを復号化し、ユーザIDとパスワードを確認した上で、第二の共通の暗号鍵を認証鍵で暗号化して、返送することにより、グループ通信対象でないネットワーク機器との間で第二の暗号鍵での暗号通信を提供する
【0029】
【発明の実施の形態】
以下、本発明の実施の形態を、図を用いて説明する。
【0030】
本実施形態では、宅内において家電などにより構成されるネットワークに本発明を適用した場合を例にあげ、説明する。
【0031】
本実施形態の宅内のネットワークは、IPv6により構成され、それぞれにIPアドレスが付与された、例えば、電子レンジやエアコンなどの家電機器、テレビやビデオなどのAV機器、センサ等が接続されている。以下、ネットワークに接続され、IPv6によるIPアドレスを付与されている各機器を、ノードと呼ぶこととする。
【0032】
本実施形態では、これらのノードのうち、利用者が互いに通信を行なうことを許可したものをグループとし、グループに属するノード間で認証のために共通の暗号化鍵による暗号通信を行なう。
ここで、本ネットワークで採用しているIPv6は、前述したように、確保できるIPアドレス数が莫大となるだけでなく、IPsecと呼ばれる暗号・認証の仕組みが標準で装備され、高度な安全性を保ちながら、使い勝手もよいという特徴を持つ。本実施形態においては、IPv6のIPsecを用いて、グループを構成する機器間のみでの安全な通信を実現する。
本実施形態の詳細な説明の前に、まず、IPsecの概要について説明する。
IPsecは、IP層において相互接続可能で高品質な暗号化ベースのセキュリティを提供する技術である。このセキュリティは、認証ヘッダAH(Authentication Header)とIP暗号化ペイロードESP(Encapsulation Security Payload)の2つのトラフィックセキュリティプロトコル等によって実現されている。
【0033】
AHは、IPパケットの改ざんを防ぐ機能を提供し、ESPは、IPパケットを暗号化し、かつ、その認証データを格納することで、IPパケットの機密性と完全性とを保証するものである。
【0034】
AH、ESP共に、認証鍵、暗号鍵を用いて、それぞれ認証情報、暗号データを作成し、送付した暗号化されたデータを解読可能な鍵を保有しているか否かにより通信相手の機器を認証する。
【0035】
図4と図5とに、それぞれ、AHプロトコルおよびESPプロトコルを利用した場合のIPパケットの構成を示す。なお、これらのパケット構成は、IPsecパケットとしてRFC2401〜2403に規定されているものである。
【0036】
図4は、AHプロトコルを利用した場合のIPパケットの構成を示すものである。この場合のIPパケットは、IPヘッダ400と、TCP/UDPヘッダ402と、データ403に対するハッシュ値を格納するAHヘッダ401とを備える。
【0037】
AHヘッダ401に格納されているハッシュ値は、パケットが改ざんされていないことを証明するためのもので、通信相手間で相互に保有する認証鍵を用いて計算された値が格納される。これは、認証されているもの同士では同じ認証鍵を保有することが前提となっているもので、送信側で自身が保有する認証鍵によって計算して格納したデータのハッシュ値を、受信側が、自身が保有する認証鍵によって計算したデータのハッシュ値と比較し、両者が合致することにより、相手が同じ認証鍵を保有するものであることを確認することができる。すなわち、パケットの送信相手が同じ暗号化鍵を保有するグループ内の機器であることが証明される。
【0038】
図5はESPプロトコルを利用した場合のIPパケットの構成を示すものである。TCP/UDPヘッダと、データを暗号化した場合のヘッダ構成である。
【0039】
この場合のIPパケットは、暗号化しているパケットであることを示すESPヘッダ501と、暗号化の区切りを揃えるためのESPトレーラ504と、認証データ505とを備える。認証データ505はオプションであり、ESPヘッダ505と、暗号化されたTCP/UDPヘッダ502と、データ503と、ESPトレーラ504とのハッシュ値を格納するものである。
【0040】
認証データ505に格納されるハッシュ値は、IPペイロードの完全性を確保し、暗号化して転送するTCP/UDPヘッダ502およびデータ503の機密性を確保する。暗号化を行なう際には送信側が保有する暗号鍵を用いる。送信側が自身が保有する暗号鍵を用いて暗号化したデータを受信側は自身が保有する暗号鍵で復号する。受信側において、復号ができれば、相手が同じ暗号鍵を保有することが確認できる。すなわち、パケット送信相手が同じ暗号鍵を保有するグループ内機器であることの証明となる。
【0041】
また、IPsecで使用する暗号/認証アルゴリズム、鍵など、各機器間でIPsecの規格に従って通信を行う(以後、IPsecの規格に従って行う通信のことをIPsec通信と呼ぶ)ために共有すべき情報は、セキュリティアソシエーション(SA)として管理される。
【0042】
SAは、それによって運ばれるトラフィックに対してセキュリティサービスを提供する単方向の「コネクション」である。このため、IPsec通信を行うにあたって、通信を行う機器間で一方向の通信ごとに、予め設定を行う必要がある。すなわち、両方向の通信を行なうためには、送信方向と受信方向とのそれぞれのSAを設定する必要がある。
【0043】
なお、IPsecの詳細は、RFC2401”Security Architecture for the Internet Protocol”に規定されている。
【0044】
図1は、本発明を適用した一実施形態に係るグループ通信システムの構成を示す図である。
【0045】
本図に示すように、本実施形態においては、4つのノード100(100A、100B、100C、100D)がIPv6によるネットワーク110に接続されている。もちろん構成ノード数はこれに限られない。
【0046】
これらのノード100間で、ネットワーク110を介してIPパケット形式のコマンドを送受信することにより、ノード100各々が備える機器特有のサービス機能に対する他のノード100からの操作、および、他のノード100へのサービス提供が実現される。
【0047】
具体的には、ネットワークを介して、テレビからエアコンの温度調節をしたり、テレビからの操作により、ビデオカメラで撮影している画像をビデオに送信し、ビデオカメラで撮影した画像をビデオで録画させるといったことが実現されるものである。
【0048】
例えば、ノード100A〜ノード100Cは、利用者が相互にサービスを利用することを許可しているグループに属するノードであり、ノード100Dは、そのグループ外のノードとすると、グループを構成するノード100A、100B、100C間では、サービス機能の利用要求を送信する際に、要求元ノードは、グループで共有する鍵(以後、グループ鍵と呼ぶ)により計算されたハッシュ値を格納した、または、暗号化したIPパケットを送付する(101方向)。利用要求を受け取った要求先ノードは、自身の保有するグループ鍵により要求元ノードがグループ構成ノードであることを確認し、サービス機能を要求元ノードに提供する(102方向)、といったIPsec通信を行なう。
【0049】
これに対し、ノード100Dからは、サービス機能の利用要求は、通常のIPパケットによって送信することとなるため、ノード100Cに通常のIPパケットを送信すると(104方向)、ノード100Cにおいてグループ外ノードと判断され、サービス提供拒否のパケットの返答を受けることとなる(103方向)。
【0050】
ここで、ノード100Bがグループ外のノード100に提供を許可するサービスを有するノードの場合、ノード100Dからそのサービスの提供を指定して通常のIPパケットを送信すると(104b方向)、ノード100Bよりそのサービスが提供される(103b方向)。
【0051】
本実施形態では、以上のようにIPsecの仕組みを標準で実装するIPv6を用いたプロトコルによる通信が可能なネットワークを例にあげて説明する。しかし、グループを構成するノード100間に共通の暗号化鍵を持たせ、その鍵を認証鍵または暗号鍵として当該グループ間で通信を行うことができる環境を構築できるならば、通信プロトコルはこれに限られない。
【0052】
以下、このようなネットワークに接続されたノード100間で、所定のサービスの安全な利用を実現するグループの管理方法、すなわち、一つのノード100においてグループを生成し、生成されたグループに他のノード100が参加し、また、生成されたグループから離脱する方法について説明する。
【0053】
本実施形態では、空のメモリカードA、Bの2つを用意し、最初にグループに参加するノード100において、グループ内でIPsec通信を行うために必要な情報を生成し、そのうちの一つのメモリカードAに、登録する。その後参加するノード100は、メモリカードAから必要な情報を取得することで、グループに参加する。また、グループから離脱する際は、空のメモリカードBを用いる。
【0054】
図2にノード100のハードウェア構成を、図3にその機能構成を示す。
【0055】
ノード100は、ノード100が備える一つ以上の固有機能部202と、ネットワークカード205と、固有機能部202及びネットワークカード205を制御するプロセッサ200と、プロセッサ200で実行するプログラムを記憶するメモリ201と、プログラム及び設定情報を記憶するハードディスク等の外部記憶装置204と、グループ情報を受け渡すためのメモリカード等のインタフェースを提供する記憶媒体インタフェース206と、これらを接続するシステムバス203とを備える。
【0056】
なお、固有機能部202が実現する固有機能とは、例えばエアコンであれば、例えば冷暖房機能、温度管理機能、タイマ機能等を司る処理部などのことである。
【0057】
また、記憶媒体インタフェース206は、挿入する記憶媒体に書き込み中であることを利用者に通知するLED(発光ダイオード)ライトを具備している。
【0058】
次に、各ノード100が備える機能を図3に従って説明する。これらの機能により、ノード100は、ネットワークを介して、利用者がサービスの相互利用を許可したグループを構成するノード100間でサービスの提供を実現する。
【0059】
各ノード100は、アプリケーション301と、グループ管理処理部302と、TCP/UDP送信処理部303と、IP送信部304と、アクセスポリシデータベース308と、SAデータベース309と、ネットワークインタフェース受信処理部310と、IP受信部314と、TCP/UDP受信処理部315と、ネットワークインタフェース送信処理部317と、記憶媒体インタフェース処理部318とを備える。
【0060】
アプリケーション301は、各ノード特有のサービスを提供するものである。
【0061】
グループ管理処理部302は、後述するグループの生成、離脱、更新など、グループに関する管理を行なうものである。
【0062】
ネットワークインタフェース受信処理部310とネットワークインタフェース送信処理部317とは、ネットワークカードを制御するものである。
【0063】
記憶媒体インタフェース処理部318は、記憶媒体インタフェース206を制御するものである。記憶媒体インタフェース318は、メモリカード等の記録媒体が記録媒体インタフェース206に挿入されたことを検出すると、記憶媒体インタフェース206に備えられているLEDライトを点灯し、メモリカードを利用中であることを利用者に対して示す。また、グループ管理処理部302から処理終了の通知を受けると、記憶媒体インタフェース206に備えられているLEDライトを消灯し、利用者に対し、メモリカード等の記憶媒体への書込みが終了したこと、および、グループ管理処理部302における処理が完了したことを通知する。
【0064】
なお、通知を受けた利用者は、メモリカードを当該記憶媒体インタフェース206から取り出すことができる。
【0065】
TCP/UDP送信処理部303と、IP送信部304と、IP受信部314と、TCP/UDP受信処理部315とは、送受するIPパケットに対し、各層の処理を行い、通信を実現するものである。
【0066】
IP送信部304は、IPv6送信前処理部305と、IPsec送信処理部306と、IPv6後処理部307とを備え、IP受信部314は、IPv6受信前処理部311と、IPsec受信処理部312と、IPv6受信後処理部313とを備える。IP送信部304とIP受信部314とで、IPv6による通信を実現する。
【0067】
ここで、IPv6受信前処理部311は、IPヘッダを構成するバージョン、ペイロード長、ホップ・リミットの設定値の確認およびオプションヘッダ(AHとESPとを除く)処理といったIPv6受信前処理を行なうものである。IPv6受信前処理部311は、受け取ったIPパケットにAHヘッダまたはESPヘッダのいずれかが付加されていた場合、そのIPパケットをIPsec処理部312に受け渡す。いずれのヘッダも付加されていなかった場合、そのIPパケットを後述する受信アクセス制御部316に受け渡す。
【0068】
IPsec処理部312は、IPヘッダのオプションヘッダのうち、AHとESPの処理を行ない、受信したIPパケットがグループに属するノード100から送信されたものか否かを判断する。
【0069】
IPv6受信後処理部313は、IPパケットを受け取ると、送信元IPアドレス、送信先IPアドレスを含むPusedo Headerを作成し、受け取ったIPパケットのIPヘッダと置き換え、TCP/UDP受信処理部315に受け渡すといったIPv6受信後処理を行なう。また、IP受信部314は、受信アクセス制御部316をさらに備える。
【0070】
受信アクセス制御部316は、IPv6受信前処理部311から、AHヘッダまたはESPヘッダを有していないIPパケットを受け取り、当該IPパケットのアプリケーションへのアクセスを制御するものである。
【0071】
SAデータベース309は、IPsecで必要なセキュリティアソシエーション(SA)が格納されているものである。
【0072】
アクセスポリシデータベース308は、グループ内での通信を実現するため、各ノードに対するアクセス制御に関する情報及びグループ情報が格納されているものである。
【0073】
アクセスポリシデータベース308は、グループ管理テーブル600と、アクセス制御対象アプリケーション管理テーブル700と、グループメンバ管理テーブル800とを備える。
【0074】
なお、グループ管理テーブル600は、記憶媒体インタフェース206を介してノードに接続される記憶媒体であるメモリカード上でも保持されるものである。
【0075】
以下、グループ管理処理部302、アクセスポリシデータベース306の各データベース、および、SAデータベース309内のSAについて、その詳細を説明する。
【0076】
図6に、グループ管理処理部302の機能構成図を示す。
【0077】
本図に示すように、グループ管理処理部302は、制御部3100と、グループ生成処理部3200と、グループ参加処理部3300と、グループ離脱処理部3400と、グループ情報更新処理部3500と、グループ制御IPパケット受信処理部3600とを備える。
【0078】
グループ管理処理部302は、ユーザがメモリカードを記憶媒体インタフェース206に挿入したことを検出した記憶媒体インタフェース処理部318からの指示で処理を開始する。
【0079】
制御部3100は、記憶媒体インタフェース処理部318からの指示を受け、挿入されたメモリカード内と、自身が保有するアクセスポリシデータベース308を検索し、グループ管理テーブル600の有無を確認する。
【0080】
グループ生成処理部3200は、グループ自体が存在しない場合に、新たにグループを生成するグループ生成処理を行なう。グループ生成処理は、制御部3100がメモリカードにもアクセスポリシデータベース308にもグループ管理テーブル600が存在しないと判断した場合に行なわれるものである。
【0081】
具体的には、グループに属する他のノードと暗号通信を行なうために必要な情報、すなわち、グループ管理テーブル600に登録すべき項目を生成、選択し、グループ管理テーブル600を作成し、それを、メモリカードおよびアクセスポリシデータベース308に登録する。
【0082】
グループ参加処理部3300は、既存のグループに、新たなメンバとして自身を参加させるグループ参加処理を行うものである。グループ参加処理は、制御部3100がメモリカードにはグループ管理テーブル600が存在するが、アクセスポリシデータベース308にグループ管理テーブル600が存在しないと判断した際に行われるものである。
【0083】
グループ参加処理部3300は、挿入されたメモリカードに格納されている暗号通信に必要な情報を取得し、また、自身のノード100と暗号通信を行なうために必要な情報をグループに既に属している他のノード100に送信する。具体的には、メモリカード内のグループ管理テーブル600に自身の情報を追加し、自身の情報が追加されたグループ管理テーブル600を、アクセスポリシデータベース308に登録する。
【0084】
また、グループ管理テーブル600から得た、グループに既に属しているノード100のホスト名からIPアドレスを解決することで、グループメンバ管理テーブル800を生成する。
【0085】
さらに、グループ参加処理部3300は、グループ内の各ノード100とIPsec通信が可能となるように、セキュリティアソシエーションの設定を行ない、SAデータベース309に登録し、グループ内の既存のメンバのノード100に、IPsec通信で自身が追加されたことを通知する。
【0086】
グループ離脱処理部3400は、グループから離脱するグループ離脱処理を行なうものである。
【0087】
本実施形態では、ユーザが所定のノード100をグループから離脱させたい場合、当該ノード100に空のメモリカードを挿入することとする。すなわち、グループ離脱処理は、制御部3100が、自身のアクセスポリシデータベース308にはグループ管理テーブル600が存在するが、挿入されたメモリカードにはグループ管理テーブル600が存在しないと判断した際に行われるものである。
【0088】
グループ離脱処理は、グループに属する他のノード100に自身のノード100が離脱することを通知し、当該グループ内で暗号通信を行なうために必要な情報、すなわち、自身のアクセスポリシデータベース308およびSAデータベース309内のグループ間の通信に係わるデータを削除するものである。
【0089】
ここで、グループ参加処理部3300およびグループ離脱処理部3400がそれぞれ、参加および離脱をグループに属する各ノード100に通知する際は、グループ制御IPパケットと呼ぶ特別なデータ部を有するIPパケットを用いる。
【0090】
ここで、そのグループ制御IPパケットについて説明する。図7にグループ制御IPパケットのデータ部1000の一例を示す。
【0091】
本図に示すように、グループ制御IPパケットのデータ部1000は、コマンド識別子を格納するコマンド識別子格納部1001と、IPアドレスとホスト名とをそれぞれ格納する、16バイトのIPアドレス格納部1002と、ホスト名格納部1003とを備える。
【0092】
ここで、新規参加を通知する際にグループに属する各ノード100に送信されるグループ制御IPパケットの場合、コマンド識別子格納部1001に「加入」を示す(00)hexが設定される(以後、本グループ制御IPパケットを加入コマンドと呼ぶ)。そして、IPアドレス格納部1002と、ホスト名格納部1003とには、それぞれ自身のアドレスとホスト名とが設定される。
【0093】
また、グループから離脱する際にグループに属する各ノード100に送信されるグループ制御IPパケットの場合、コマンド識別子格納部1001に「離脱」を示す(01)hexが設定される(以後、本グループ制御IPパケットを離脱コマンドと呼ぶ)。そして、IPアドレス格納部1002と、ホスト名格納部1003とには、それぞれ自身のアドレスとホスト名とが設定される。
【0094】
グループ情報更新処理部3500は、グループ管理テーブル600の内容を更新したり、それをメモリカードにコピーするといったグループ情報更新処理を行なうものである。
【0095】
本実施形態においては、セキュリティを向上させるために、グループ内で利用するグループ鍵が所定の期間ごとに更新される設定となっている。グループ情報更新処理部3500は、グループ管理テーブル600の鍵有効期限がタイムアウトした時点で、新しいグループ鍵を生成する。
【0096】
ここで、グループ管理テーブル600生成時に、ノード毎に、異なる鍵有効期限が設定される。具体的には、所定の有効期限の、例えば、プラスマイナス30%間のランダムな値を、その鍵有効期限に加算あるいは減算することで得られた値を鍵有効期限として各ノードに設定する。このため、各ノードで鍵有効期限のタイムアウトが異なるタイミングで生じ、鍵の更新を行なうノードが一つに定まり、グループのメンバが同時にグループ鍵を生成することを避けることができる。
【0097】
そして、更新されたグループ鍵を更新前のグループ鍵で暗号化し、グループ鍵を更新したメンバからグループに属する各ノードに送付する。このとき、鍵の更新とともに、各ノードの鍵有効期限を再設定してもよい。
【0098】
また、グループ情報更新処理部3500は、他のノードから、更新されたグループ鍵を受信した場合、自身の保有するグループ鍵の情報を更新するとともに、グループに属する各ノード100のIPアドレスが更新された場合、関連するデータベース内のIPアドレスを更新する。
【0099】
ここで、本実施形態では、グループの鍵の更新は上述のように行なわれるため、グループ参加処理に用いられるメモリカード内のグループ管理テーブル600には反映されない。同様に、上述のグループからの離脱処理は、空のメモリカードを用いて行なわれ、離脱したノード100からグループを構成する他のノード100への通知は、IPsec通信によって行われる。このため、グループ離脱によるグループ構成メンバの変更も、グループ参加処理に用いられるメモリカード内のグループ管理テーブル600に反映されない。
【0100】
このため、本実施形態では、グループ情報更新処理部3500が、メモリカード内のグループ管理テーブル600の更新処理も行なう。
【0101】
グループ情報更新処理部3500が行なうメモリカード内のグループ管理テーブル600の更新処理は、制御部3100が、自身のアクセスポリシデータベース308にも、挿入されたメモリカードにもグループ管理テーブル600が存在すると判断した際に行われるものである。
【0102】
グループ情報更新処理部3500は、当該ノード100のアクセスポリシデータベース308に格納されているグループ管理テーブル600の情報をメモリカード内のグループ管理テーブル600にコピーする。
【0103】
本実施形態では、実際のグループ参加処理において、グループ参加処理を行なう場合に、グループに既に所属しているノード100にメモリカードを挿入し、メモリカード内のグループ管理テーブル600を最新のものとする処理を前もって行なうよう手順を定めておく。
【0104】
グループ制御IPパケット受信処理部3600は、前述のグループ制御IPパケットを受信した際の処理を行うものである。
【0105】
具体的には、加入コマンドを受信した場合は、IPアドレス格納部1002およびホスト名格納部1003に格納されているIPアドレスおよびホスト名を自身のグループ管理テーブル600およびグループメンバ管理テーブル800とに追加し、送信元ノード100と暗号通信を行なうために必要なセキュリティアソシエーションを作成する。一方、離脱コマンドを受信した場合は、それらを削除する。
【0106】
次に、アクセスポリシデータベース308に格納されるグループ管理テーブル600とアクセス制御対応アプリケーション管理テーブル700と、グループメンバ管理テーブル800とについて以下に説明する。
【0107】
グループ管理テーブル600は、グループに属するノード100を識別するための情報とグループで共有する鍵の情報とを格納するテーブルである。図8にその一例を示す。
【0108】
本図に示すようにグループ管理テーブル600は、ネットワークに接続されたノード100によって構成されるグループを識別するためのグループ識別子を格納するグループ識別子格納フィールド601と、グループ鍵を格納するグループ鍵格納フィールド602と、そのグループ鍵の有効期限を格納するグループ鍵有効期限格納フィールド603と、AH、ESPといったグループ内で通信に利用するIPsecの機能の種別を格納するIPsec種別格納フィールド604と、認証あるいは暗号に用いるアルゴリズムを格納するアルゴリズム格納フィールド605と、グループに属するノード100を識別する情報であるホスト名を格納するホスト名格納フィールド606(606A〜606B)とを備える。
【0109】
アクセス制御対象アプリケーション管理テーブル700は、ノード100にグループ外のノード100が利用可能なアプリケーションが実装されている場合、ノード100に実装されている各アプリケーションに対するアクセス制御のために用いる情報が格納されているテーブルである。
【0110】
なお、本テーブルは、ノード100がグループ内からのアクセスに対してのみ提供するアプリケーションだけを実装している場合は不要なものである。
【0111】
アクセス制御対象アプリケーション管理テーブル700の一例を図9に示す。
【0112】
本図に示すように、アクセス制御対象アプリケーション管理テーブル700は、グループ外のノード100にも開放されているアプリケーションが利用するポート番号を格納するポート番号格納フィールド701(701A、701B)を備える。各ノード100は、IPパケット受信時に、本テーブルを参照し、当該IPパケットがアクセスしようとしているアプリケーションがグループ外のノード100にも開放されたアプリケーションであるか否かの判定を行う。
【0113】
次に、グループメンバ管理テーブル800について説明する。各ノード100間で、IPv6に基づき、IPパケット通信を行なうためには、各ノード100のIPアドレスを知る必要がある。グループに属する各ノード100のIPアドレスは、グループ参加時に取得した各ノード100のホスト名からICMP(Internet Control Message Protocol) Echo Request/Replyパケットのやりとりにより、アドレスの解決を行なうことで取得する。このように、グループメンバ管理テーブル800は、各ノードにおいてホスト名からIPアドレスを解決して作成するもので、そこには、グループに属する各ノード100のホスト名とIPアドレスとの対応が格納されている。
【0114】
図10にグループメンバ管理テーブル800の一例を示す。
【0115】
本図に示すように、本テーブルは、ノードを特定するホスト名を格納するホスト名格納フィールド801と、ホスト名と対応させて各ノード100のIPアドレスを格納するIPアドレス格納フィールド802と、IPアドレスの有効期限を格納する有効期限格納フィールド802とを備える。
【0116】
ノード100が再起動した場合などに、ノード100のIPアドレスは変わる可能性がある。また、一定時間内にIPアドレス格納部802に格納されているIPアドレスと送受信が行われないと、有効期限が切れる場合がある。
【0117】
このようなノードに対しIPパケットを送信する場合、ノード100のIPv6送信前処理部305は、ICMP Echo Request/Replyパケットのやりとりにより、ホスト名からアドレスの解決を再度行ない、グループ管理処理部302に通知する。それを受けて、グループ管理処理部302のグループ情報更新処理部3500は、IPアドレスが登録されている本テーブルおよびグループ内の通信に利用するセキュリティアソシエーションを更新する。
【0118】
次に、SAデータベース309に格納されている、セキュリティアソシエーション900について説明する。セキュリティアソシエーション900は、IPsecにのっとった通信を行うために共有すべき情報を管理するものであり、例えば、ノード100Aとノード100B間で通信する場合、ノード100Aからノード100B方向の通信、および、ノード100Bからノード100A方向の通信、両者に対し、独立して設定する必要があるものである。
【0119】
図11に、セキュリティアソシエーション900の一例を示す。
【0120】
本図に示すように、セキュリティアソシエーション900は、各セキュリティアソシエーションを識別するSPI(セキュリティポリシ識別子)、送信元IPアドレス、送信先アドレス、プロトコルとして認証あるいは暗号の指定、暗号範囲としてトランスポートモードあるいはトンネルモードの指定、暗号アルゴリズム、暗号鍵、認証アルゴリズム、認証鍵、鍵の有効期限などを含む。
【0121】
本実施形態では、各ノード100においてセキュリティアソシエーション900を作成するにあたり、送信用のセキュリティアソシエーション900を作成する場合は、送信元IPアドレスには、自身のノード100のIPアドレスを、送信先IPアドレスには、通信相手先ノードのIPアドレスを設定し、受信用を作成する場合は、送信元IPアドレスには、通信相手先のIPアドレスを設定し、送信先IPアドレスには、自身のノード100のIPアドレスを設定する。
【0122】
SPIには、送信用、受信用ともに、グループ管理テーブル600のグループ識別子格納部601に格納されているグループ識別子が格納される。また、送信用、受信用ともに、プロトコル、認証鍵アルゴリズム、認証鍵、有効期限には、それぞれ、グループ管理テーブル600に格納されているものが設定される。
【0123】
以上、本実施形態におけるノード100の各機能などについて説明した。
【0124】
次に、本実施形態における、ネットワーク110に接続された各ノード100間で、グループを生成し、参加する手順、また、一旦参加したグループから離脱する手順などを説明する。
【0125】
以下においては、IPsecの機能種別としてAHを、モードとしてトランスポートモードを、認証アルゴリズムとしてSHA−1(Secure Hash Algorithm 1:SHS(Secure Hash Standard) FIPS 180として規定)を用いる場合を例にあげ、説明する。IPsec通信の設定は、これらに限られない。
【0126】
また、本実施形態においては、前述したように、グループの情報を格納するメモリカードと、グループを離脱する際に用いる空のメモリカードとの2つのメモリカードを用いてグループの生成、参加、離脱、情報更新などを行なう。
【0127】
図12に、グループ管理処理部302が行なうグループ管理処理手順3020を示す。
【0128】
グループ管理処理手順3020は、ユーザがメモリカードを各ノード100の記録媒体インタフェース206に挿入することをきっかけに開始される。
【0129】
そして、ノード100の記憶媒体インタフェース処理部318は、メモリカードが記録媒体インタフェース206に挿入されたことを検出すると、記憶媒体インタフェース206に備えられているLEDライトを点灯し、メモリカードを利用中であることを利用者に対して示す。
【0130】
LEDライトが消灯されたことにより、ユーザは処理が終了したことを知り、メモリカードを取り出すことができる。
【0131】
また、記憶媒体インタフェース処理部318は、メモリカードを検出したことをグループ管理処理部302へ通知する。その通知を受けて、グループ管理処理部302は、グループ管理処理1000を開始する。
【0132】
まず、グループ管理処理部302の制御部3100は、自身のアクセスポリシデータベース308と、記録媒体インタフェース処理部318を介してメモリカード挿入されたメモリカードとにアクセスし、グループ管理テーブル600の有無を確認する(ステップ3021)。
【0133】
ここで、どちらにもグループ管理テーブル600がない場合、グループ自体が存在しない、すなわち、グループを生成する必要があると判断し、制御部3100は、グループ生成処理部3200にグループ生成処理3210を行わせる(ステップ3022)。グループ生成処理3210が完了すると、制御部302は、記憶媒体インタフェース処理部318に対し、メモリカードの書き込み終了を通知し(ステップ3027)、処理を終える。
自身のアクセスポリシデータベース302には無く、メモリカードには存在した場合、制御部3100は、メモリカードに存在するグループに自身が参加しようとしていると判断し、グループ参加処理部3300にグループ参加処理3310を行なわせ(ステップ3023)、グループ参加処理が完了すると、ステップ3027に進む。
【0134】
メモリカードには無く、自身のアクセスポリシデータベース302には存在した場合、制御部3100は、自身は既にグループに属しているが空白のメモリカードが挿入されたことにより、グループ離脱処理を行なうものと判断し、グループ離脱処理部3400にグループ離脱処理3410を行なわせ(ステップ3026)、グループ離脱処理が完了するとステップ3027に進む。
【0135】
どちらにもグループ管理テーブル600が存在する場合は、制御部3100は、まず、アクセスポリシデータベース302内のグループ管理テーブル600とメモリカード内のグループ管理テーブル600とのグループ識別子を比較する(ステップ3024)。
【0136】
ここで、両者が同じであれば、メモリカードのグループ情報を更新する処理を行なうものと判断し、グループ情報更新処理部3500にグループ情報更新処理3510としてアクセスポリシデータベース302内のグループ管理テーブル600をメモリカードにコピーする処理を行なわせ(ステップ3025)、当該処理が完了すると、ステップ3027に進む。
【0137】
ステップ3024において、両者が異なった場合、制御部3100は、誤ったメモリカードが挿入されたと判断し、そのままステップ3027にすすむ。
【0138】
次に、グループ生成処理1200、グループ参加処理1300、グループ離脱処理1600、グループ情報更新処理1500の手順を説明する。
【0139】
まず、グループ生成処理3210の処理手順を図13に示す。
【0140】
制御部3100から処理開始の指示を受けると、グループ生成処理部3200は、グループ鍵を生成し(ステップ3211)、グループを識別するためのグループ識別子を生成し(ステップ3212)、認証・暗号モードとして認証(AH)を選択し(ステップ3213)、アルゴリズムとしてSHA−1を選択する(ステップ3214)。
【0141】
そして、それぞれを、グループ鍵格納フィールド602、グループ識別子格納フィールド601、IPsec種別格納フィールド604、アルゴリズム格納フィールド605に格納し、グループ管理テーブル600を作成する(ステップ3215)。そして、ホスト名格納フィールド606に自ノード100のホスト名を登録する(ステップ3216)。
【0142】
グループ管理テーブル600が完成すると、グループ生成処理部3200は、本テーブルをメモリカードにコピーすると共に、自ノード100のアクセスポリシデータベース308に記憶し(ステップ3217,3218)、処理が終了したことを制御部3100に通知する。
【0143】
次に、グループ参加処理3310の処理手順を図14に示す。
【0144】
制御部3100から処理開始の指示を受けると、グループ参加処理部3300は、メモリカード上のグループ管理テーブル600のホスト名格納フィールド606に自ノード100のホスト名を追加し(ステップ3311)、メモリカード上のグループ管理テーブル600を自身のアクセスポリシデータベース308内に記憶する(ステップ3312)。
【0145】
次に、グループメンバ管理テーブル800を作成するともに、グループに既に属している各ノード100に、自身の参加を通知する新メンバ通知処理3710を行なう(ステップ3313)。
【0146】
そして、今までのステップで記録されたグループ管理テーブル600の情報およびグループメンバ管理テーブル800の情報とを用い、各ノード100とのIPsec通信に用いるセキュリティアソシエーション900を生成し(ステップ3314)、処理が終了したことを制御部3100に通知する。
【0147】
ここで、新メンバ通知処理3710についてその処理手順を説明する。図15にその処理手順を示す。
【0148】
新メンバ通知処理3710では、グループ管理テーブル600内のホスト名フィールド606に格納されているホストごとに順に、ICMP Echo Request / ReplyによりIPアドレスを取得し(ステップ3712)、グループメンバ管理テーブル800に、ホスト名ごとに取得したIPアドレスを登録する(ステップ3713)。
【0149】
上記のステップで取得した、グループを構成する各ノード100のIPアドレスに対して加入コマンドを生成し(ステップ3714)、それを送信する(ステップ3715)。
【0150】
そして、次のホスト名を読み出して、ステップ1330から1360の処理を繰り返す(ステップ3316)。ここで、読み出したホスト名が自身のホスト名の場合は、何も処理を行わず、次のホスト名を読み出す(ステップ3711)。そして、グループ管理テーブル600のホスト名格納フィールド606に格納されている、自身のノード100を除く全てのノードに対して以上の処理を終えると(ステップ3717)、グループ内への新メンバ通知処理1330を終える。
【0151】
以上、グループ参加処理3310について説明した。
【0152】
次に、グループ離脱処理3410について、図16を用いて説明する。
【0153】
制御部3100から処理開始の指示を受けると、グループ離脱処理部3400は、ノード100内のグループ管理テーブル600のホスト名格納部606に登録されているホスト名を順番に読み出す(ステップ3311)。
【0154】
ここで、読み出したホスト名が自ホスト名と一致した場合は、次のホスト名を読み出す。
【0155】
読み出したホスト名が自ホスト名と一致しない場合は、グループメンバ管理テーブル800から読み出したホスト名に対応するIPアドレスを検索する(ステップ3312)。以後、このIPアドレスを検索したIPアドレスと呼ぶ。
【0156】
次に、送信先IPアドレスを検索したIPアドレスとした離脱コマンドを作成し(ステップ3313)、その送信先IPアドレスを有するノード100に送信する(ステップ3314)。
【0157】
グループ離脱処理部3400は、自身の保有するグループメンバ管理テーブル800から以上の操作を行なった検索したIPアドレスに係わるデータを削除する(ステップ3315)。
【0158】
次に、SAデータベース309に記憶されているセキュリティアソシエーション900から検索したIPアドレスと等しい送信先IPアドレスを持つものを抽出し、そのセキュリティアソシエーション900を削除する(ステップ3316)。
【0159】
また、検索したIPアドレスと等しい送信元IPアドレスを持つセキュリティアソシエーション900を抽出し、それを削除する(ステップ3317)。
【0160】
グループ離脱処理部3400は、グループ管理テーブル600に登録されている全てのホスト名に対して、以上のステップ3311〜ステップ3317の処理を実行した後(ステップ3318)、自身が保有するグループ管理テーブル600を削除し(ステップ3319)、グループ離脱処理3310を終了する。そして、制御部3100に処理終了を通知する。
【0161】
次に、上記のグループ参加処理3310内のグループ内への新メンバ通知処理3710のステップ3715およびグループ離脱処理3310のステップ3314において送信された、それぞれ加入コマンドおよび離脱コマンドを受信した場合の各ノード100側での処理を以下に説明する。
【0162】
本処理は、グループ制御IPパケット受信処理部3600によって行なわれ、グループ制御IPパケット受信処理3610と呼ぶ。図17に本処理の手順を示す。
【0163】
グループを構成する各ノード100は、ネットワークインタフェース受信処理部310においてグループ制御IPパケットを受信すると、IP受信部314、TCP/UDP受信処理部315を経てグループ管理処理部302のグループ制御IPパケット受信処理部3600へ受け渡す。
【0164】
受信したグループ制御IPパケット受信処理部3600は、コマンド識別子格納部1001に設定されているコマンド識別子が加入であるか否かを確認する(ステップ3611)。
【0165】
ステップ3611でコマンド識別子が加入を示す(00)hexであった場合、すなわち、加入コマンドを受信した場合、ステップ3612に進み、グループ制御IPパケットのホスト名1003に設定されている加入コマンドを送信してきたノード100のホスト名をグループ管理テーブル600に登録する(ステップ3612)。
【0166】
そして、グループメンバ管理テーブル800に、加入コマンドを送信してきたノード100のホスト名と、グループ制御IPパケットのIPアドレス格納部1002に設定されているそのIPアドレスとを登録する(ステップ3613)。
【0167】
次に、グループ制御IPパケット受信処理部3600は、送信用、すなわち、自身のノード100から加入コマンドを送信してきた新規に加入したノード100方向の送信、および、受信用、すなわち、加入コマンドを送信してきた新規に加入したノード100から自身のノード100方向の送信、各々のセキュリティアソシエーション900を作成する処理を行なう(ステップ3614、3615)。
【0168】
次に、ステップ3611でコマンド識別子が離脱を示す(01)hexであった場合、すなわち、離脱コマンドを受信した場合、グループ制御IPパケット受信処理部3600は、ステップ3616に進む。
【0169】
ここで、グループ制御IPパケット受信処理部3600は、SAデータベース309に記憶されているセキュリティアソシエーション900から、受信したグループ離脱コマンドのデータ部1000のIPアドレス1002に格納されているIPアドレスと等しい送信先IPアドレスを持つものを抽出し、抽出したセキュリティアソシエーションを削除する(ステップ3616)。
次に、受信した離脱コマンドのIPアドレス1002と等しいIPアドレスを有するデータをグループメンバ管理テーブル800から削除し(ステップ3617)、受信した離脱コマンドのホスト名1003に格納されているホスト名と等しいホスト名を、自ノード100上のグループ管理テーブル600から削除する(ステップ3618)。
【0170】
グループ内の全てのノード100において以上の手順を行なうことにより、全てのノード100が保有する離脱したノード100に対応するセキュリティアソシエーション900を削除し、また、グループ管理テーブル600から、離脱したノード100の情報を削除する。
【0171】
以上のようにして、グループを構成するノード100に新規加入または離脱といった変更があった場合、当該ノード100から送信されるグループ制御IPパケットを受信した他のノード100において、自身の保有するセキュリティアソシエーションおよびグループ管理テーブル600が更新される。
【0172】
以上、グループ制御IPパケット受信処理を説明した。
【0173】
ここまで、グループ管理処理部302による、グループの生成、参加、離脱などのグループ管理処理について説明した。
【0174】
次に、上記の手順で生成され管理されているグループ内で、アプリケーションを互いに利用する手順を以下に説明する。
【0175】
アプリケーションの利用は、IPパケットを互いに送受することによって行なわれる。まず、このIPパケットの送受信について説明する。
【0176】
前述のように、IPsec通信を行うために予め設定の必要なセキュリティアソシエーション900は、グループ管理処理302において、新たなグループ構成メンバが追加される際に生成される。すなわち、グループに属している限り、IPsec通信は可能である。
【0177】
IPパケットを送信するにあたり、IPsec送信処理部306は、送信するIPヘッダの送信先IPアドレスをキーに、SAデータベース309を検索し、対応するIPアドレスが送信先IPアドレスとして格納されているセキュリティアソシエーション900を抽出する。抽出したセキュリティアソシエーション900に登録されている情報に基づき、IPsec処理を行い、IPv6送信後処理307を行い、ネットワークインタフェース送信処理部を介して、送信先ノードにIPパケットを送信する。
【0178】
次に、IPパケット受信時の処理手順を図18を用いて説明する。
【0179】
ネットワークインタフェース受信処理部310を介してIPパケットを受信すると、IPv6受信前処理部311は、IPv6受信前処理を行い(ステップ4010)、受信したIPヘッダ内の、AHヘッダの有無をチェックする(ステップ4020)。
【0180】
受信したIPヘッダ内にAHヘッダ401があると判断したならば、そのIPパケットをIPsec受信処理部312に受け渡す。
【0181】
受け取ったIPsec受信処理部312は、後述するIPsec受信処理3120を行い(ステップ4030)、IPv6受信後処理部313にIPパケットを受け渡す。
【0182】
そして、IPv6受信後処理部313は、IPv6受信後処理3130を行い(ステップ4040)、処理を終了する。
【0183】
なお、ここで、IPv6受信後処理部313は、IPv6受信後処理3130を終えた受信したパケットをTCP/UDP受信処理部315に受け渡す。受け取ったTCP/UDP受信処理部315は、受け取ったパケットの受信処理を行い、アプリケーション301に受信データとして渡す。
【0184】
ステップ4020で、上記のヘッダがないと判断した場合、そのIPパケットを受信アクセス制御部316に受け渡す。
【0185】
受け取った受信アクセス制御部316は、それがICMPパケットであるか否かチェックする(ステップ4050)。
【0186】
ステップ4050で、受信したIPパケットが、ICMPパケットであると判断されたならば、そのままIPv6受信後処理部313に受け渡し、IPv6受信後処理3130を行い(ステップ4040)、処理を終了する。
【0187】
ステップ4050で、ICMPパケットではないと判断されたならば、受信アクセス制御部316は、そのIPパケットをグループ外のノード100から送信されたグループ外IPパケットであると判断し、後述するグループ外IPパケット受信処理3160を行い(ステップ4060)、処理を終了する。
【0188】
次に、上記のIPsec処理3120について説明する。
【0189】
IPsec処理部312は、AHヘッダを有するIPパケットを受信すると、IPヘッダの送信元IPアドレス、送信先IPアドレス、AHヘッダ401に設定されているSPIが一致するセキュリティアソシエーション900をSAデータベース309から抽出する。
【0190】
そして、抽出したセキュリティアソシエーション900に記憶されている認証鍵を用いて受信したIPパケットの認証情報を作成し、AHヘッダ401に設定されている認証情報と比較する。
【0191】
両者が一致していれば、受信したIPパケットをグループに属する正当なノード100からの送信とみなし、IPv6受信後処理部313に受け渡す。そして、一致しない場合は、そのIPパケット破棄する。
【0192】
以上IPsec処理3120について説明した。
【0193】
次に、受信アクセス制御部316によるグループ外パケット受信処理3160について説明する。
【0194】
以上のように、本実施形態においては、グループに属するノード100は、グループ外のノード100から、AHヘッダを有するIPパケットを受信した場合は、IPsec通信処理部312において、また、AHヘッダを有しないIPパケットを受信した場合は、IPv6受信前処理部311において、当該IPパケットが、IPv6受信後処理部313、TCP/UDP受信処理部315を介してアプリケーション301に到達することを排除している。
【0195】
しかし、本実施形態においては、ノード100によっては、その保有するアプリケーションの利用を、グループ外のノード100にも開放しているものがある。前述したように、このようなアプリケーションを有するノード100は、アプリケーションごとのポート番号を、アクセス制御対象アプリケーション管理テーブル700において管理している。
【0196】
グループ外のノード100からAHヘッダを有するIPパケットを受信した場合は、そのIPパケットを復号することができないため、それはIPsec通信処理部312において破棄することは先に説明した。
【0197】
グループ外IPパケット受信処理3160は、グループ外のノード100から通常のIPパケットを受信した際に、グループ外のノード100に開放しているアプリケーションに当該IPパケットを送達する処理である。
【0198】
グループ外IPパケット受信処理3160では、IPパケットを受け取ったノード100が、グループ外のノード100に対し何らサービス機能を提供しない場合、アクセスエラーをデータとして格納したIPパケットを送信元に対して送信し、受信したIPパケットは破棄する。これに対し、グループ外のノード100に対して何らかのサービス機能を提供する場合は、アクセス制御対象アプリケーション管理テーブル700の登録に従って、アプリケーションを提供するよう制御している。
【0199】
以下にその手順を図19を用いて説明する。
【0200】
受信アクセス制御部316は、IPv6受信前処理部311からICMPパケットではないIPパケットを受信した場合、当該IPパケットから読取った送信先ポート番号とアクセス制御対象アプリケーション管理テーブル700に登録されているポート番号701との比較を行なう(ステップ3161)。
【0201】
アクセス制御対象アプリケーション管理テーブル700には、グループ外のノードに利用が許可されているアプリケーションのポート番号が登録されているため、両者が一致した場合、サービス機能を要求元ノード100に提供できることとなる。
【0202】
この場合、受信アクセス制御部316は、受け取ったIPパケットをIPv6受信後処理部313に受け渡し、受け取ったIPv6受信後処理部313は、IPv6受信後処理3130を行なう(ステップ3164)。
【0203】
そして、IPv6受信後処理部313から処理されたIPパケットを受け取ったTCP/UDP受信処理部315は、それを、アプリケーション301に受け渡す。
【0204】
ステップ3161において、ポート番号が一致しない場合は、提供できるサービス機能がないため、受信アクセス制御部316は、アクセスエラーをデータとして格納したIPパケットを生成しIP送信部304から送信元に送信し(ステップ3162)、受信したIPパケットは破棄する(ステップ3163)。
【0205】
以上、グループ外IPパケット受信処理について説明した。
【0206】
このように、本実施形態においては、グループ内のノード100間ではIPsec通信を行い、グループ外のノード100とは通常のIPパケットによる通信を行うことで、アクセス制御対象アプリケーション管理テーブル700で管理している各アプリケーションのポート番号に従って、アプリケーションごとにグループ内外のアクセス許可を制御することができる。これにより、一つのノード100において、グループだけで利用するサービス機能と、誰もが利用できるサービス機能とを実装し、それぞれへのアクセス制御を可能としている。
【0207】
本実施形態によれば、ホームネットワークを構成するノード100において作成したグループ鍵を含むIPsec通信に必要な情報を、共通のメモリカードを介して、利用者が相互に利用することを許可する各ノード100に配布する。
【0208】
配布されたノード100は、グループに所属している他のノード100とIPsec通信ができるように、セキュリティアソシエーション900を設定するとともに、新規加入したことを、グループに所属している他のノード100に通知する。
【0209】
通知を受けたノード100は、それぞれ、新規に加入したノード100とのIPsec通信ができるように、セキュリティアソシエーション900を設定する。
【0210】
以上のように、本実施形態では、例えば、通信を開始する際に認証サーバ、あるいは鍵管理手段を備えた装置等といったグループを構成する機器以外の装置を介さずに、互いに認証可能で安全な通信を行なうことのできるグループを、そのグループを構成する機器が、容易に生成し管理することを実現している。
【0211】
また、グループを生成し管理するために必要な情報を、メモリカードといった記憶媒体を介して各ノードに与えること、および、グループの生成、グループへの参加、および、グループからの離脱の指示を各ノードに与えることを実現している。
【0212】
このように、本実施形態では、サーバなどの特別な機器を設けることなく、また、複数のマスタ鍵などを備えたICカードを用意してグループを構成する機器それぞれに予めセットしておくなどの事前の準備をすることなく、グループを構成する機器間でのみ、容易にIPsec通信可能な環境を構築できる。
【0213】
また、本実施形態では、一つのノードに、グループ内のノードのみ利用できるアプリケーションとグループ外のノードも利用できるアプリケーションとが実装されている場合も容易にそれぞれのアクセス制御を実現できる。
【0214】
なお、本実施形態では、グループ生成、加入、離脱時の指示を行なう際に利用する記憶媒体としてメモリカードを例にあげ、説明したが、利用する記憶媒体はこれに限られない。可搬型の記憶媒体であり、各ノードがそのインタフェースを備えていれば、どのような記憶媒体であってもよい。
【0215】
また、本実施形態では、IPsec通信を行うために必要な情報の授受を記憶媒体で行なうといった設定としたが、これに限られない。例えば、各ノードに入力装置を備え、ユーザが入力するようにしてもよい。
【0216】
さらに、グループからの離脱処理を開始するきっかけとして、空のメモリカードの入力を例にあげ説明したが、これに限られない。例えば、各ノードがリセットボタンを備え、ユーザがそのリセットボタンを介して離脱処理を開始する指示を与えるようにしてもよい。
【0217】
また、LEDを備えることにより、利用者に対しグループ生成、加入処理の終了を通知する事を実現している。通知のための機能も、これに限られない。
【0218】
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で様々な変形が可能である。
【0219】
例えば、上記の実施形態では、宅内のネットワークを例にとり説明したが、本発明はこれに限定されない。本発明は、互いに認証を必要とする様々なネットワークシステムに広く適用できる。
【0220】
次に、上述した実施形態に基づきノードの管理者が認識している範囲での利用対象であるノードAからノードFでグループにおいて、利用者対応に利用できるノードを制限するサブグループの実施形態について、図20から図31を参照し説明する。
【0221】
図20は、本発明を適用した宅内ネットワーク、SOHOと言ったスモールオフィスネットワーク、オフィスのフロアネットワークを代表とするようなローカルなネットワークの一構成例を示す。本発明では、以下、宅内において本発明を適用した場合を例として説明する。宅内ネットワークは、複数のノード105(105A、B)、106(106C〜F)、例えば電子レンジやエアコンなどの家電機器、テレビやビデオなどのAV機器、センサ等、及びPCから構成され、各機器はIPv6によりIPパケットの送受信が可能であるとする。本ネットワークは、ノード105、106、各々が備えるサービス機能の他ノード105、106からの操作、あるいは他ノード105、106へのサービス提供を実現するものである。
【0222】
また、これら複数のノード105、106は、上述の実施形態に基づきグループ共通のグループ鍵602を用いたIPsec通信が可能なSA900が各ノードに設定され、グループ間の通信には、前記グループ鍵602を用いたIPsec通信が行える状態となる。以下、本グループをルートグループ107と呼ぶ。ルートグループ107が構築されると、ルートグループ107を構成する全てのノード105、106において、グループアクセスデータベース308上のグループ管理テーブル600及びSAデータベース309上にルートグループ107の全ノード105、106に対する送信用SA900及び受信用SA900が設定される。尚、本実施形態では、ルートグループにおけるグループ間通信に利用するIPsec通信では、3DESによる暗号化を適用するとする。
【0223】
本実施形態では、ノードが備えるユーザインタフェース機能により、ネットワーク機器を二つに大別する。第一のノード105は、PCが備えるインタフェース機能、例えば宅内ネットワークを構成するノードのホスト名一覧が表示できるディスプレイ、文字入力が可能なキーボードを備えるノードである。第二のノード106はノードが本来備える機能を操作するための最低限のインタフェースを備えたノードである。第一のノード105に相当する機器としては、PC、テレビ、家電制御リモコン等を想定しており、図20ではノードA105AとノードB105Bを第一のノード105とし、第二のネットワーク機器106に相当する機器としては、エアコン、電子レンジと言った白物家電及びセンサ等を想定し、図20ではノードC106CからノードF106Fを第二のノードとしている。
図21に第一のノード105のハードウェア構成を示す。
【0224】
ノード105が備える一つ以上のノード固有機能部202、例えばエアコンであれば、例えば冷暖房機能、温度管理機能、タイマ機能等を司る処理部、ネットワークカード205、固有機能部及びネットワークカードを制御するプロセッサ200、プロセッサで実行するプログラム及びユーザアクセス制御を備えたグループ通信を実現するグループアクセスデータベース308及びSAデータベース309を記憶するメモリ201、ユーザインタフェースの為のディスプレイを接続するデータ出力インタフェース部208とキーボードを接続するデータ入力インタフェース部209、メモリカード207等のインタフェースを提供する記憶媒体インタフェース206、及びこれらを接続するシステムバス203から構成される。前記記憶媒体インタフェース206は、挿入する記憶媒体の書き込み中をユーザに通知するLED(発光ダイオード)ライトを具備しており、LEDライトの点燈により、ユーザに対し、書き込み中あるいは処理中を示す。第二のノード106のハードウェア構成は、前記第一のノード105のハードウェア構成から、ユーザインタフェースの為に利用するデータ出力インタフェース部208及びデータ入力インタフェース部209がない。
【0225】
図20に第一のノード105のソフトウェア構成を示す。
ネットワークを介してグループ構成機器間でサービス提供する一つ以上のアプリケーションプログラム301、通信を実現するTCP/UDP送信処理部303、IP送信部304、ネットワークカードを制御するネットワークインタフェース送信処理部317、ネットワークインタフェース受信処理部310、IP受信部311、TCP/UDP受信処理部315、IPsecのセキュリティアソシエーション(以下SA)900を管理するSAデータベース309、グループ通信を実現するために利用するネットワーク機器に対するアクセス制御に関する情報及びグループ情報を管理するアクセスポリシデータベース308、グループ管理を行うグループ管理処理部302、記憶媒体インタフェースを制御する記憶媒体インタフェース処理部318、及びデータ出力インタフェース部とデータ入力インタフェース部を制御するユーザインタフェース処理部151とから構成する。IP送信部304は、TCP/UDP送信処理部303が作成したPseudoへッダからIPヘッダを作成するIPv6送信前処理部305、SA900の有無を調べSA900がある場合にはIPsec処理を行うIPsec送信処理部306、ネットワークインタフェース送信処理部317へIPパケットを渡すIPv6送信後処理部307から構成され、IP受信部314は、ネットワークインタフェース受信処理部310から受信したIPパケットヘッダからペイロード長と受信データ長の比較、ヘッダオプションの処理を行うIPv6受信前処理311、AHヘッダ、ESPヘッダがある場合にSA900を検索し、認証あるいは復号処理を行うIPsec受信処理部312、AHヘッダ、ESPヘッダが無い場合にIPパケットを受信するかどうかを判断する受信アクセス制御部316、IPヘッダをPseudoヘッダに置き換え、TCP/UDP送信処理部315へ受信データを渡すIPv6受信後処理部313から構成する。
【0226】
グループ管理処理部302は、上述した実施形態に基づき、ルートグループ生成処理3200、参加処理3300、離脱処理3400、情報更新処理3500、グループ制御IPパケット受信処理3600に加えて、ユーザからのアクセス制御設定要求を受け付けるユーザアクセス制御処理2100、及び他のネットワーク機器からのサブグループ管理に関するコマンド受信に対する処理を行うサブグループ管理処理2200を行うとする。
【0227】
グループアクセスデータベース308として、グループ管理テーブル600、アクセスユーザ管理テーブル2001、及びアクセスアプリ管理テーブル2003を配置する。
【0228】
SAデータベース309として、IPsec通信を実現するための送信方向、受信方向毎に準備する送信元アドレス、受信元アドレス対応のSA900を配置する。
第二のノード106のソフトウェア構成としては、前記第一のノード105のソフトウェア構成から、ユーザインタフェースの為に利用するユーザインタフェース制御部151とユーザアクセス制御部2100を取り除いた構成とする。加えて、グループアクセスデータベース120上にアクセスユーザ管理テーブル2001を配置しない。
図22に本発明を適用するサブグループ108構成を示す。図では、2つのサブグループ108を示している。サブグループ108はユーザ対応に利用できるノードをグループ化したものであり、第一のノード105からユーザが他のノード105、106を利用したサービスを実現する場合、ユーザAはサブグループa108Aを構成するノード105A、105B、106Cのみ利用でき、ユーザBがサブグループb108Bを構成するノード105A、106D、106Eのみ利用できる。ユーザBがノードA105AよりノードC106Cにアクセスするサービスは利用できない。
【0229】
ホームネットワークにおいて、ルートグループ107上にサブグループ108を設定することにより、例えばお父さんのサブグループをPC、テレビ、エアコン、ビデオから構成すると、PC、テレビからエアコンの温度設定とビデオの予約設定ができる。これに対し、息子のサブグループとして、テレビとビデオを構成することにより、息子はテレビからビデオ予約設定はできるが、エアコンの温度設定はできないといった制御が可能になる。
【0230】
以下、このサブグループ108の構築方法、及び動作手順を図23から図31を用いて説明する。
図23は、一つのノード105、106におけるネットワーク接続時の3フェーズを示すものである。第一フェーズは、ノード105、106をネットワークに繋いだだけの状態であるグループ無しフェーズ2301である。グループ無しフェーズ2301おいて、前記実施形態に基づき、ルートグループ107生成、ノード105,106のルートグループ107への加入により、第二フェーズであるルートグループフェーズ2302となる。この第二フェーズでは、ルートグループ107内のノード105、106間通信において、ルートグループ107内で共通のグループ鍵602を用いた3DESによる暗号通信を行うとする。ルートグループ107において、ユーザのアクセス権、及び利用できるノード選択により第三フェーズであるサブグループフェーズ2303となる。第三フェーズでは、サブグループ108内のノード105、106間通信において、サブグループ108内で共通のグループ鍵602を用いた3DESの暗号通信を行う。
図24はグループ管理処理部302におけるユーザアクセス制御を行うユーザアクセス制御処理2100の処理手順を示す図である。ユーザからの要求を受け付ける為、ユーザアクセス制御処理2100を第一のノード105において起動する。本処理は、ユーザが起動させても良いし、ルートグループ107に参加した時点で本処理を起動しノード105の常駐プログラムとして動作させてもよい。ユーザアクセス制御処理2100は、ルートグループフェーズ2302あるいはサブグループフェーズ2303時のみ起動できる(ステップ2101)。
ディスプレイに「ユーザアクセス権設定」、「ユーザアクセス権開放」、「サービス利用」を表示し(ステップ2102)、ユーザに利用するものを選択してもらい、選択により、ユーザアクセス権設定処理(2110)、ユーザアクセス権解放処理(2130)、サブグループアクセス権確認処理(2150)を実行する。
図25は、ユーザアクセス権設定処理2110の処理手順を示す。
第1ステップとして、グループアクセスデータベース308にて管理しているルートグループ107に対するグループ管理テーブル600に登録されているホスト名をディスプレイに表示する(ステップ2111)。ルートグループ107に対するグループ管理テーブルは、種別607のエリアにルートが設定されているとする。
第2ステップとして、ユーザが入力したサブグループ108として登録したい複数のホスト名を受け付け、グループアクセスデータベース308上に新しいグループ管理テーブル600をアロケートし、種別607をサブとし、ホスト名を登録する(ステップ2112)。
第3ステップとして、他のグループ管理テーブル600のグループ識別子601と一致しないグループ識別子601を選択し、新しいグループ管理テーブル600にグループ識別子501を設定する(ステップ2113)。
第4ステップとして、サブグループ108で共通の暗号用のグループ鍵602を生成し、新しいグループ管理テーブル600に設定し、鍵有効期間と3DESを暗号アルゴリズムとして設定する(ステップ2114)。
第5ステップとして、サブグループ108を構成する全てのネットワーク機器105B、106Cに対して、サブグループ作成要求フレーム2601を作成し送信する(ステップ2115)。
【0231】
送信フレーム構成を図26に示すように、サブグループ作成要求を示すコマンド識別子、サブグループのグループ識別子601、グループを構成する全ノードのホスト名一覧、サブグループのグループ鍵602、その有効期限から構成する。本フレーム2601は、TCP/UDP送信処理部303を介してUDPデータグラムとして送信され、IP送信部304においてルートグループ107のグループ鍵により暗号化され送信される。各ノードより返送される確認フレーム2602により、各ネットワーク機器への送信を確認する。図26に示すように、確認フレーム2602は受信確認を示すコマンド識別子とグループ識別子601から構成する。一定時間、確認フレーム2602を受信できない場合、サブグループ作成要求フレーム2602を再送してもよい。サブグループ作成要求フレーム2601を送信する際、ノード105、106のホスト名からIPアドレスを得るホスト名を含んだリゾルバ要求をIP送信部310へ伝える。IP送信部に310備えたホスト名、IPアドレス、及びテーブル登録時間を管理するタイマから構成するリゾルバテーブルを検索し、ホスト名と一致するIPアドレスを検索し、要求に対するリターン値とする。テーブル内に該当するホスト名が無い場合、ICMP Echo Rquest/Replyよりホスト名からアドレスの解決を行い、リゾルバテーブルにホスト名とIPアドレスの組を登録すると共に、要求に対するリターン値とする。
【0232】
第6のステップとして、サブグループ108を構成する全ネットワーク機器に対する送信用のSA900と受信用SA900を作成する(ステップ2116)。
図27にSA900Aの構成を示す。
【0233】
送信用SA900Aとしては、SPIとしてグループ識別子601を設定し、送信元IPアドレスとして自ネットワーク機器のアドレスを設定し、送信先IPアドレスとしてサブグループを構成する他ネットワーク機器のIPアドレスを設定する。本実施形態では、プロトコルとしてESPを、モードはトランスポート、暗号アルゴリズムは3DES、暗号鍵としてサブグループのグループ鍵601を設定する。受信用SA900Aとしては、送信元IPアドレスとして他ネットワーク機器のIPアドレスを、送信先IPアドレスとして自ネットワーク機器のアドレスを設定する以外は送信用SA900と同じ構成である。
【0234】
第7のステップとして、ユーザによるアクセスユーザIDとパスワードをデータ入力インタフェース部209とデータ出力インタフェース部208を介して受け付ける(ステップ2117)。
【0235】
第8のステップとして認証鍵2002を生成する(ステップ2118)。
【0236】
第9のステップとして、ユーザが挿入した空のフォーマット済みのメモリカード207上にユーザID、パスワード、認証鍵2002、自ネットワーク機器のグローバルIPアドレス、サブグループのグループ識別子601を書き込む(ステップ2119)。
【0237】
第10のステップとして、グループアクセスデータベース308のアクセスユーザ管理テーブル2001に認証鍵2002、ユーザID、サブグループのグループ識別子を設定する(ステップ2120)。
【0238】
ユーザアクセス権設定処理2110の最終である第11のステップとして、サブグループ108を構成する全てのノードに対して、サブグループアクセス権設定フレーム2603を作成し送信する(ステップ2121)。
【0239】
送信フレーム構成を図26に示すように、サブグループアクセス権設定を示すコマンド識別子、サブグループのグループ識別子601、ユーザID、認証鍵2002、パスワードから構成し、上述したサブグループ設定要求フレーム701と同様の手順で送信及び送信確認を行う。
【0240】
次にサブグループ設定要求フレーム2601、及びサブグループアクセス権設定フレーム2603を受信したサブグループを108を構成するノード105、106におけるグループ管理処理部302でのサブグループ管理処理2200で行われる処理手順を図28に示す。
【0241】
サブグループ設定処理2200は、ルートグループフェーズ2301あるいはサブグループフェーズ2303時のみ起動できる(ステップ2201)。
サブグループ設定要求フレーム2601を受け付けた場合、グループ管理テーブル600をアロケートし、フレームが持つ情報を設定する。次に送信用SA900と受信用SA900をユーザアクセス権設定処理2110で示したように作成する(ステップ2202)。
【0242】
サブグループアクセス権設定フレーム2603を受け付けた場合、自ノードが第一のノード105である場合は、グループアクセスデータベース308のアクセスユーザ管理テーブル2001をアロケートし、フレームが持つ情報であるグループ識別子、ユーザID、認証鍵、パスワードを設定する(ステップ2203)。
サブグループ設定要求フレーム2601、サブグループアクセス権設定フレーム2603の受信確認として、図26に示す受信確認フレーム2602を返送する(ステップ2203)。
【0243】
以上によりサブグループの構築が完了する。
【0244】
次にサブグループアクセス権開放処理2150の手順を示す。
管理者あるいはユーザがサブグループアクセス権開放を選択した場合、図26に示す、サブグループ解放要求を示すコマンド識別子とサブグループのグループ識別子601から構成するサブグループ解放要求フレーム2604をサブグループ構成する全てのネットワーク機器に対して送信する。その後、管理者により指定されたサブグループのグループ識別子601を持つグループ管理テーブル600、アクセス及びセキュリティアソシエーションを解放し、対応するアクセスユーザ管理テーブル2001の対応欄を削除する。
【0245】
本フレームを受信したグループ管理処理部302でのサブグループ管理処理2200において、図28に示すように、受信したフレームにより指示されたサブグループ識別子601を持つグループ管理テーブル600とSA900を削除し(ステップ2205)、自ノードが第一のノード105である場合、アクセスユーザ管理テーブルの対応欄を削除する(ステップ2206)。
【0246】
以上の手順により、作成したサブグループを解放することができる。
以下、サブグループ108における通信手順を図29から図31を用いて説明する。
【0247】
サブグループ108をユーザが利用する場合の手順を示す。
ユーザアクセス制御処理2100より、ディスプレイに表示された「ユーザアクセス権設定」、「ユーザアクセス権開放」、「サービス利用」から、ユーザは、「サービス利用」を選択する(ステップ2102)。
【0248】
複数のサービスを提供出来る場合、この選択時に一つのサービスを選択させても良い。上記選択により、サブグループアクセス権確認処理2150を行う。
図29において、サブグループアクセス権確認処理2150の処理手順を示す。第1のステップとして、ユーザにユーザID、パスワード、認証鍵を記憶したメモリカード207の挿入を指示する(ステップ2151)。
【0249】
ユーザがメモリカード207の挿入を受け、第2のステップとして、メモリカード207上のユーザIDと対応するグループアクセスデータベース308上のアクセスユーザ管理テーブル2001を検索し、メモリカード上のメモリカードが記憶しているパスワードとアクセスユーザ管理テーブル2001のパスワードが一致することを確認する(ステップ2152)。
【0250】
ユーザIDが一致するアクセスユーザ管理テーブル121が無い場合、あるいはパスワードが不一致の場合、認証エラーをディスプレイに表示し、処理を終了する(ステップ2153)。
【0251】
第3のステップとして、ユーザが指定したサービスに対応するアプリケーションを起動し、アプリケーションがデータ送受信に利用するソケットに割り付けた送信ポート番号を入手する(ステップ2154)。
メモリカード上のグループ識別子601と一致するグループ管理テーブル600のポート番号エリア608にソケットに割付けた送信ポート番号を設定する(ステップ2155)。
【0252】
第4のステップとして、ノードがユーザアクセス状態プロセス2300を起動し、サブグループアクセス権確認処理を終了する(ステップ2156)。
本実施形態では、アプリケーションプログラム301では、初期処理として、データ転送を行うためにソケットをオープンすると同時に送信元ポート番号をソケット処理部から割り付けられる為、サブグループアクセス権確認処理2150に通知できるとする。
【0253】
図30にユーザアクセス状態プロセス2300の処理手順を示す。
ユーザアクセス状態プロセス2300では、ユーザがメモリカード207を外した事を検出し、サブグループ108のアクセス権を終了するため、グループアクセス権確認処理2150においてグループ管理テーブル600に設定した送信元ポート番号を削除する(ステップ2301)。
【0254】
これにより、ユーザによるサブグループ301利用を中止する事が可能である。
次に、ユーザが指定したアプリケーションによるサブグループ内のIPパケット送受信手順を示す。
【0255】
図31は、IPsec送信処理部306の処理手順を示すものである。
第1のステップとして、送信パケットの送信元IPアドレスと送信先アドレスが一致するSAをSAデータベースより検索する(ステップ4101)。
第2のステップとして、ユーザアクセス状態プロセス2300が起動中でなければ、SA900の種別がルートであるものを検索する(ステップ4102)。送信元IPアドレス、受信元IPアドレスが一致したSA900のグループ識別子601を持つグループ管理テーブル600の種別607により、ルートグループ107であるか否かを判断する。
【0256】
そのSA900が管理しているグループ鍵602を用いて、IPパケットの暗号化を行いIPsec送信処理を行う(ステップ4103)。
ユーザアクセス状態プロセス1100が起動中であれば、第3のステップとして、SA900の種別がサブであるものを検索し(ステップ4104)、検索したSA900のSPIに対応するグループ管理テーブル122のポート番号と送信パケットTCPあるいはUDPヘッダの送信元ポート番号が一致するかどうかを調べ(ステップ4105)、一致した場合、そのSA900を用いてIPsec送信処理4103を行う。
【0257】
一致するSAが無い場合、処理を終了する。この場合、IPsec処理を行わずにIPパケットが送信される為、次に示す手順により受信側のアクセス制御により、ルートグループあるいはサブグループの通信以外として破棄される。
次に、図31に示す手順で送信したIPパケットを受信した場合のIPsec受信処理手順を示すものである。IP受信部314のIPv6受信前処理部311において、AHヘッダあるいはESPヘッダが受信パケットにある場合IPsec受信処理部312は起動される。
【0258】
IPsec受信処理部312では、AHヘッダあるいはESPヘッダに含まれるSPIと一致するSAをSAデータベースより検索する。検索したSAデータベースに含まれる暗号鍵により復号処理を行う。
【0259】
AHヘッダあるいはESPヘッダが無い場合、受信アクセス制御部316により、IPsec通信が行われていなくても、アクセス制御対象アプリケーション管理テーブル700に登録されているポート番号と受信パケットの送信先ポート番号を比較し、一致している場合は、上位処理部にあたるTCP/UDP受信処理部315へパケットを引き渡す。それ以外のIPパケットは、ICMPパケット等の制御パケットでなければ、ルートグループあるいはサブグループ対象外のパケットとして、受信IPパケットを破棄する。
【0260】
図31に示すIPsec送信処理では、送信パケットに対応するSA900検索時に、グループ管理テーブル600の種別がサブであり、ポート番号が送信パケットの送信元ポート番号が一致することによりSA900の特定を行っているが、グループアクセスデータベース308内にサブグループ識別子を記憶するアクティブエリアを設け、図29における対応するグループ管理テーブル600にアプリケーション起動時に得る送信元ポート番号を記憶する(ステップ2154、2156)代わりに、前記アクティブエリアにメモリカード207に記憶されているグループ識別子601を設定し、IPsec送信処理132では、前記アクティブエリアのグループ識別子601とSA900のSPIが一致することにより、SA900を特定することも可能である。
【0261】
この場合、複数のアプリケーションプログラム301を同時動作させている場合でも前記アクティブエリアにおいて、グループ識別子601だけを管理すれば良い。
【0262】
これに対し、グループ管理テーブル600でポート番号を管理する場合、アプリケーションプログラム301に対応した複数のポート番号が必要である。
【0263】
このように、共通鍵を備えた複数のノード105、106でIPsec通信を行うノードから構成するルートグループ107において、ユーザインタフェースを備えた第一のノード105から制御する複数のノード105、106から構成するサブグループ108を構成し、そのサブグループ108内で共通の第二の暗号鍵によりIPsec通信を実現できるように、第一のノード105において、サブグループ設定時にサブグループの共通暗号鍵及び記憶媒体207に記憶するユーザアクセス情報を他の第一及び第二のノード105、106に対し、ルートグループ107の暗号通信を用いて転送し、サブグループ108を構築する。
【0264】
これにより、サブグループ107を構成するノード105、106において、サブグループ108のグループ鍵を設定したSA900を設定し、ユーザが第一のノード105より利用する場合、記憶媒体207をノード105に入れ、ユーザの認証、利用するサブグループ108を識別、利用するアプリケーション301のポート番号608をノード105において記憶する手段を備え、ノードから送信する際には、IPsec送信処理において、SA900検索時に、前記ポート番号と送信パケットのUDPあるいはTCPヘッダを構成する送信元ポート番号が一致している場合、そのSA900を用いて転送を行うことにより、サブグループ108内だけの通信及びグループへのユーザアクセス制御を実現できる。
【0265】
次に図32から図36を用いて、外部ネットワークからのサブグループへのアクセス権を備えたユーザがサブグループへのアクセスを実現する手順を示す。
図32は、本実施形態のシステム構成の一例を示す図である。
【0266】
宅内ネットワーク及び外部ネットワーク、外部ネットワークに接続しているホスト4201、宅内ネットワークを構成するノード105A、106B、106C、106Dから構成し、これらのノード105、106は、ルートグループ107を構成している。本構成では、ノードA105Aがユーザインタフェースを備えた第一のノードとし、上述した実施形態の手順に従い、ノードA105A,ノードB106B,ノードC106Cから構成するサブグループ108を構築しているとする。
【0267】
サブグループ108へのアクセス権を持ったユーザが、ユーザID、パスワード、認証鍵等を格納しているメモリカード207を持って、ホスト3201からサブグループ108をアクセスする手順を示す。
【0268】
ホスト4201上には、サブグループへのアクセス制御を実現するためのサブグループアクセスクライアント処理4301を行うソフトウェアを予め実装してあるとし、ユーザにより起動されるとする。
【0269】
サブグループクライアント処理4301の処理手順を図33に示す。
第1のステップとして、前記メモリカードの207挿入指示、及びユーザIDとパスワードの入力をユーザに対してディスプレイ表示により指示する(ステップ4302)。
【0270】
メモリカード207の挿入、及びユーザからのユーザIDとパスワードの入力を受けて、第2のステップとして、メモリカード207上のユーザID、パスワードと入力値が一致していることを確認する(ステップ4303)。
一致していない場合、ユーザ認証エラーを表示して処理を終了する(ステップ4304)。
【0271】
一致した場合、第3のステップとして、ユーザIDとパスワードを認証鍵2002で演算を行った認証情報を図34に示す認証情報フレーム4401として、UDPあるいはTCPパケットとして、メモリカード207に記憶しているIPアドレスを送信先アドレスとして送信する(ステップ4305、ステップ4306)。
【0272】
前記演算に関しては、共通鍵暗号方式である暗号アルゴリズムの3DESを用いるとする。
【0273】
第4のステップとして、認証情報フレーム4401に対して、ノードA105Aにより返送される図34に示す認証アクセプトフレーム4402の受信を待つ(ステップ4307)。
【0274】
第5のステップとして、フレームを受信した場合、ステートがOKであれば、フレームが持つ認証グループ鍵情報をメモリカード上の認証鍵126で復号化しサブグループのグループ鍵124を入手する(ステップ4308)。
ステートがNGであれば、ユーザ認証エラーをディスプレイに表示し処理を終了する(ステップ4304)。
【0275】
第6のステップとして、メモリカード207上のIPアドレスを送信元/送信先としたサブグループ301のグループ鍵124を設定した送信用SA900と受信用SA900を作成する(ステップ4310)。
【0276】
以上により、宅内ネットワークのサブグループ108のグループ鍵601を外部ネットワークに接続したホスト4201と共有できるため、サブグループ108を構成するノードA105Aとの通信においてサブグループのグループ鍵601を用いた暗号通信が可能になる。
【0277】
本クライアント処理では、メモリカード207が離脱された時点で、サブグループ108へのアクセス権が無くなったとして、第7のステップとして、ノードA105Aに対し図34に示すアクセス権解放フレーム3403をノードA105Aに対し送付する(ステップ4311)。
【0278】
ホスト4201から送付するパケットに関しては、図34に示す受信確認フレーム4404を用いて、フレームの送達確認を行ってもよい。
第8のステップとして、第6のステップで作成したSA900を解放する(ステップ4312)。
【0279】
外部ネットワークからのアクセスを受け付ける第一のノード105Aにおけるグループ管理処理部302の処理構成を図35に示す。
【0280】
グループ管理処理部302は、サブグループ管理処理2200、ユーザアクセス制御処理2100に加え、外部ネットワークからのアクセスを受け付ける為のリモートアクセス制御処理2500、外部ネットワークからのサブグループを構成するネットワーク機器を利用するためのアプリケーションプログラムを起動する為のアプリケーションプロキシ2400から構成する。
【0281】
図36にリモートアクセス制御処理2500における処理手順を示す。
リモートアクセス制御処理2500は、外部ネットワークのホスト4201からのフレームを受信した場合に起動される。
【0282】
外部ネットワークのホスト4201からのフレームであることは、送信元IPアドレスのサブネットプリフィクスが宅内ネットワークに割り付けられたサブネットプリフィクスと異なることから判断できる。
【0283】
グループ通信では、IPsecでの暗号化通信していない場合、グループ外のネットワーク機器からの通信で有るためIPパケットは受信アクセス制御部316で破棄される事を避けるため、予めアクセス制御対象アプリケーション管理テーブル700にリモートアクセス制御処理2300のポート番号を登録しておく。これは、グループ管理処理部302を起動した際の初期化処理で割り付けたポート番号、あるいは固定したポート番号を登録する。
【0284】
受信フレームが、図34に示す認証情報フレーム4401の場合、アクセスユーザ管理テーブルより認証情報フレーム4401のサブグループのグループ識別子601と一致する認証鍵2002でフレーム4401認証情報を復号し、ユーザIDとパスワードを取り出す(ステップ2501)。
【0285】
このユーザIDとパスワードがサブグループ識別子601と一致するアクセスユーザ管理テーブル2001が持つ値と一致していることを確認する(ステップ2502)。
【0286】
一致しなければ、パケットを破棄し、ステートをNGとした図34に示す認証アクセプトフレーム4402を返送し、処理を終了する(ステップ2503)。
一致している場合対応するサブグループ108のグループ管理テーブル600のグループ鍵602を認証鍵2002で暗号化したグループ鍵情報と、ステートをOKとした図34に示す認証アクセプトフレーム4402として、ホスト4201へ返送する(ステップ2504)。
【0287】
ホスト4201のIPアドレスを送信元/送信先としたサブグループ108のグループ鍵602を設定したSA900を作成する(ステップ2505)。
ノードA105Aが提供するアプリケーションをホスト4201で利用できるようにするため、アプリケーションプロキシ処理2400を起動する(ステップ2506)。
【0288】
ホスト4201からアクセス権解放コマンド4403を受信した場合、図34に示す確認フレーム4404をホスト4201へ返送し(ステップ2507)、ホスト4201とノード105A間のSA900を解放し(ステップ2508)、対応するグループ管理テーブル600のポート番号を削除し(ステップ2509)、アプリケーションプロキシ処理2400を終了する(ステップ2510)。
【0289】
さらに、ホスト4201からアクセスされたサブグループ108のグループ鍵602を更新する(ステップ2511)。
【0290】
これにより、サブグループアクセスの鍵情報がホスト4201に残っていたとしても、サブグループにアクセスすることは出来ない。
【0291】
図37にアプリケーションプロキシ処理2400の処理手順を示す。
【0292】
アプリケーションプロキシ処理2400は、例えばWebサーバとして動作しており、外部ネットワークに接続するホスト4301とノードA105A間はHTTPベースで通信を行うとする。まず、アプリケーションプロキシ処理114として、サブグループ301を構成する。
【0293】
次に、第1のステップとして、ユーザに対し、利用できるサービスアプリケーション情報を通知する(ステップ2401)。
【0294】
第2のステップとして、ユーザからの利用するサービスアプリケーションの指定を受け、対応するアプリケーションプログラム301をノードA105Aにおいて起動し、送信元ポート番号を上述した実施形態に即して、入手する(ステップ2402)。
【0295】
第1のステップ、第2のステップにおけるホスト4301とノードA105A間はHTTPベースである。
【0296】
第3のステップとしての入手した送信元ポート番号を対応するグループ識別子601を持つグループ管理テーブル600に登録する(ステップ2403)。
ノードA105Aのアプリケーションプログラム301は、ホスト4301よりアプリケーションプロキシ処理2400を介して操作する(ステップ2404)。具体的には、アプリケーションプロキシでアプリケーションに対する交信をノードに代替して行う。ノードA105Aのアプリケーションプログラム301からサブグループ108を構成する他のノード106B、106Cへの要求は、上述した実施形態である図31のIPsec送信処理手順に従い、サブグループ通信のアクセス制御を行う。
【0297】
また、図25のユーザアクセス権確定処理2110において、メモリカード207の記憶情報として、サブグループ108を構成するノード105、106のアドレスとホスト名をメモリカード207に記憶させ、第二のノード106において、グループアクセスデータベース305にアクセスユーザ管理テーブル2001をサブグループアクアクセス権確定フレーム2603受信時に作成させ、かつ図35に示すグループ管理処理部302において第一のノード105と同様に、リモートアクセス制御処理2500及びアプリケーションプロキシ処理2400を行うことにより、ホスト4301において、メモリカード207に記憶されているホスト名をユーザが選択する事によりサブグループ108を構成する全てのノード105A、106B、106Cに直接アクセスすることが可能になる。
【0298】
このような処理手順により、外部ネットワークに位置するホストとサブグループを構築したノード間でユーザアクセス認証を実現すると共に、サブグループの共通鍵をホストに配布することにより、特別な認証サーバを配置することなく、宅内ネットワークのグループ通信に参加することができる。
【0299】
本実施形態によれば、前記グループ通信を行うネットワーク機器から、ユーザが利用できるネットワーク機器を選択し、その選択したネットワーク機器で利用する共通の第二の暗号鍵を前記の暗号鍵(第一の暗号鍵)で暗号化して配布することにより、ユーザ独自の第二のグループ通信を実現することができる。
また、第二の暗号鍵と対応したユーザの識別子とパスワードの情報をネットワーク機器と記憶媒体で管理すると共に、第二の暗号鍵の識別子を記憶媒体で管理し、ネットワーク機器では第二の暗号鍵と対で前記識別子を管理し、第一の暗号鍵で前記情報を暗号化して他の第二のグループ通信を行うネットワーク機器へ配布することにより、ユーザがネットワーク機器を利用する際、どのネットワーク機器においても、記憶媒体の情報とネットワーク機器の情報が一致することを確認し、ユーザが通信する際、記憶媒体の識別子と対になる第二の共通の暗号鍵で暗号通信によるグループ通信をすることにより、グループ通信へのユーザの利用可否を制御できる。
【0300】
また、ユーザが利用するアプリケーションの送信元ポート番号を記憶し、パケット送信時にパケットの送信元ポート番号と記憶した送信元ポート番号を比較し、一致した場合のみ第二の共通の暗号鍵で暗号通信を行うことにより、受信側では暗号化されたパケットでなければ破棄することによる、グループ通信への利用可否を制御できる。
【0301】
さらに、本実施形態では、記憶媒体でネットワーク機器のアドレスと認証鍵を管理し、ネットワーク機器において認証鍵を管理し、第一の暗号鍵で暗号化して他の第二のグループ通信を行うネットワーク機器へ管理を依頼することにより、グループ通信対象でないネットワーク機器からユーザが第二のグループ通信対象のネットワーク機器と通信を開始する際、記憶媒体の認証鍵で、記憶媒体のパスワードとユーザIDを暗号化し、その暗号化情報を記憶媒体のアドレス宛てに送信し、第二のグループ通信対象のネットワーク機器では認証鍵でユーザIDとパスワードを復号化し、ユーザIDとパスワードを確認した上で、第二の共通の暗号鍵を認証鍵で暗号化して、返送することにより、グループ通信対象でないネットワーク機器との間で第二の暗号鍵での暗号通信を実現できる。
【0302】
【発明の効果】
本実施形態においては、特別に認証サーバまたは鍵管理手段を備えた装置を保有しなくても、グループを構成する機器間で、互いにグループ構成機器であることを認証し、安全な通信を実現するグループを容易に生成し、管理することができる。
【0303】
また、機器がグループ内の機器にのみ提供するアプリケーションとグループ外の機器に提供するアプリケーションとを有する場合、そのアクセス制御を簡単な構成にて行なうことができる。
【図面の簡単な説明】
【図1】本発明を適用した実施形態のシステム構成を示す図である
【図2】本実施形態におけるノードのハードウェア構成を示す図である。
【図3】本実施形態におけるノードにおけるソフトウェア構成を示す図である。
【図4】グループ通信に用いるAHヘッダ付きのIPパケットの構成を示す図である。
【図5】グループ通信に用いるESPヘッダ付きのIPパケットの構成を示す図である。
【図6】本実施形態のおけるグループ管理処理部の機能構成を示す図である。
【図7】本実施形態におけるグループ制御IPパケットのデータ部の構成の一例を示す図である。
【図8】グループ管理テーブルの構成の一例を示す図である。
【図9】アクセス制御対象アプリケーション管理テーブルの構成の一例を示す図である。
【図10】グループメンバ管理テーブルの構成の一例を示す図である。
【図11】セキュリティアソシエーションとして設定する情報構成の一例を示す図である。
【図12】グループ管理処理の処理手順を示す図である。
【図13】グループ生成処理の処理手順を示す図である。
【図14】グループ参加処理の処理手順を示す図である。
【図15】グループ内への新メンバ通知処理の処理手順を示す図である。
【図16】グループ離脱処理の処理手順を示す図である。
【図17】グループ制御IPパケット受信処理の処理手順を示す図である。
【図18】IPパケット受信時のIP受信部の処理手順を示す図である。
【図19】IPパケット受信時の受信アクセス制御部の処理手順を示す図である。
【図20】ネットワーク機器のソフトウェア構成とネットワーク機器から構成するネットワークシステムを示す図である。
【図21】ハードウェア構成及び記憶媒体の記憶情報を示す図である。
【図22】第一のグループ通信と第二のグループ通信の範囲を示す図である。
【図23】グループ通信を行うネットワーク機器の接続フェーズを示す図である。
【図24】グループ管理処理部におけるユーザアクセス制御を行う処理手順を示す図である。
【図25】ユーザアクセス権設定処理の処理手順を示すを示す図である。
【図26】ユーザアクセス権設定処理の処理にて他のグループ通信を行うネットワーク機器間でやり取りされるフレーム構成を示す図である。
【図27】 SAの一構成例を示す図である。
【図28】グループ管理処理部でのサブグループ管理処理手順を示す図である。
【図29】サブグループアクセス権確認処理の処理手順を示す図である。
【図30】ユーザアクセス状態プロセスの処理手順を示す図である。
【図31】 IPsec送信処理部の処理手順を示す図である。
【図32】本発明を適用するシステム構成の一例を示す図である。
【図33】サブグループアクセスクライアント処理の処理手順を示す図である。
【図34】ホストとノード間でやり取りされるフレーム構成を示す図である。
【図35】第一のノードにおけるグループ管理処理部の処理構成を示す図である。
【図36】リモートアクセス制御処理における処理手順を示す図である。
【図37】アプリケーションプロキシ処理における処理手順を示す図である。
【符号の説明】
100、105、106…ノード、107…ルートグループ、108…サブグループ、207…メモリカード、301…アプリケーション、302…グループ管理処理部、308…アクセスポリシデータベース、309…SAデータベース、314…IP受信部、304…IP送信部、312…IPsec受信処理部、316…受信アクセス制御部、600…グループ管理テーブル、700…アクセス制御対象アプリケーション管理テーブル、800…グループメンバ管理テーブル、900…セキュリティアソシエーション、2001…アクセスユーザ管理テーブル、2002…認証鍵、2100…ユーザアクセス制御処理、2150…サブグループアクセス権確認処理、2200…サブグループ管理処理、2400…アプリケーションプロキシ処理、2500…リモートアクセス制御処理、3100…制御部、3200… グループ生成処理部、3300…グループ参加処理部、3400…グループ離脱処理部、3500…グループ情報更新処理部、3600…グループ制御IPパケット受信処理部、4201…ホスト、4301…サブグループアクセスクライアント処理。
Claims (17)
- ネットワークを介して接続された他のネットワーク機器と通信を行なうネットワーク機器であって、
互いに認証可能な前記ネットワーク機器をグループとして管理するグループ管理手段と、
前記グループに所属するネットワーク機器間で共通の暗号化鍵による暗号通信を行う暗号通信手段と、
前記暗号化鍵の情報と前記グループに所属するネットワーク機器のホスト名およびアドレスを含む識別情報とを含む、前記グループに所属するネットワーク機器と暗号通信を行うために必要な暗号通信情報を格納する記憶手段と、
前記グループ毎に一つ割り当てられる第一の外部記憶媒体から前記暗号通信情報を取得する取得手段と、を備え、
前記グループ管理手段は、
ネットワーク機器に前記暗号通信情報を格納した前記第一の外部記憶媒体が装着された場合には、前記記憶手段に前記暗号通信情報が格納されていなければ前記第一の外部記憶媒体から前記暗号通信情報を取得して前記記憶手段に格納し、前記記憶手段に格納された暗号通信情報に当該ネットワーク機器の識別情報を追加し、当該ネットワーク機器の識別情報を前記暗号通信手段を介して前記暗号通信情報に含まれる前記グループに所属する他のネットワーク機器に送信し、
前記ネットワーク機器が前記暗号通信手段を介して前記グループに所属する他のネットワーク機器から当該他のネットワーク機器の識別情報を受信した場合には、前記記憶手段に当該他のネットワーク機器の識別情報が格納されていなければ前記記憶手段に格納された前記暗号通信情報に当該他のネットワーク機器の識別情報を追加し、
前記ネットワーク機器は、前記暗号通信情報に含まれる共通の暗号化鍵を用いて前記暗号通信情報に含まれる前記グループに所属する他のネットワーク機器と暗号通信を行うことを特徴とするネットワーク機器。 - 請求項1記載のネットワーク機器であって、
前記グループ管理手段は、さらに、
前記ネットワーク機器に前記暗号通信情報が格納されていない第二の外部記憶媒体が装着された場合には、前記記憶手段に格納された前記暗号通信情報に含まれる前記グループに所属する他のネットワーク機器に前記暗号通信手段を介して当該ネットワーク機器のグループ離脱通知を送信し、前記記憶手段から前記暗号通信情報を削除し、
前記ネットワーク機器が前記グループに所属する他のネットワーク機器からグループ離脱通知を受信した場合には、前記記憶手段に記憶している前記暗号通信情報から前記他のネットワーク機器の識別情報を削除することを特徴とするネットワーク機器。 - 請求項1または2のいずれかに記載のネットワーク機器であって、
前記取得手段は、外部記憶媒体のインタフェースであり、
前記グループ管理手段は、さらに、
前記記憶手段に前記暗号通信情報が格納されている状態で、前記暗号通信情報が格納された前記第一の外部記憶媒体が前記取得手段に装着された場合、前記記憶手段に格納されている暗号通信情報を前記第一の外部記憶媒体にコピーすることを特徴とするネットワーク機器。 - 請求項1、2、または、3のいずれかに記載のネットワーク機器であって、
非暗号通信を行なう非暗号通信手段と、
前記ネットワーク機器が提供するサービスに対するアクセスを制御するアクセス制御手段とをさらに備え、
前記アクセス制御手段は、前記非暗号通信手段を介して他のネットワーク機器からアクセスがあった場合、前記アクセスが予め定められたポートに対するものである場合、前記アクセスを許可することを特徴とするネットワーク機器。 - 複数のネットワーク機器と、前記複数のネットワーク機器を接続するネットワークとを備えたネットワークシステムにおいて、
前記複数のネットワーク機器は、請求項1乃至4のいずれかに記載のネットワーク機器であることを特徴とするネットワークシステム。 - ネットワークを介して接続された他の機器と、互いに認証可能な暗号通信を行うグループを管理するグループ管理方法であって、
前記ネットワークに接続された一つのネットワーク機器において、前記暗号通信に用いる暗号化鍵を生成し、当該暗号化鍵と前記ネットワーク機器のホスト名とアドレスとを含む識別情報とを暗号通信情報として保有するグループ生成ステップと、
前記ネットワーク機器に前記暗号通信情報を格納する、前記グループに一つ割り当てられた第一の外部記憶媒体が装着された場合には、当該ネットワーク機器が前記暗号通信情報を保持していなければ前記第一の外部記憶媒体から前記暗号通信情報を取得し、前記取得した暗号通信情報と前記第一の外部記憶媒体の暗号通信情報に当該ネットワーク機器の識別情報を追加し、当該ネットワーク機器の識別情報を前記暗号通信情報に含まれる前記グループに所属する他のネットワーク機器に送信する第1のグループ参加ステップと、
前記他のネットワーク機器から送信された前記識別情報を受信した場合には、当該他のネットワーク機器の識別情報を前記ネットワーク機器が保持していなければ当該他のネットワーク機器の識別情報を前記暗号通信情報に追加する第2のグループ参加ステップと、
前記ネットワーク機器に前記暗号通信情報を格納されていない第二の外部記憶媒体が装着された場合には、当該ネットワーク機器が保持する暗号通信情報に含まれる識別情報に示される前記グループに所属する他のネットワーク機器へ、当該ネットワーク機器の識別情報とグループ離脱通知とを送信し、当該ネットワーク機器が保持する暗号通信情報を削除する第1のグループ離脱ステップと、
前記グループに所属する他のネットワーク機器から送信されたグループ離脱通知を受信した場合には、前記ネットワーク機器が保持する暗号化通信情報から当該他のネットワーク機器の識別情報を削除する第2のグループ離脱ステップとを備えることを特徴とするグループ管理方法。 - コンピュータを、
暗号通信に用いる暗号化鍵を生成し、当該暗号化鍵と自身のホスト名およびアドレスを含む識別情報とを暗号通信情報として保有するグループ生成手段と、
前記暗号通信情報を格納する、前記グループに一つ割り当てられた第一の外部記憶媒体が自身に装着された場合には、自身が前記暗号通信情報を保有していなければ前記第一の外部記憶媒体から前記暗号通信情報を取得し、前記暗号通信情報に前記識別情報が格納されている前記グループに所属する全機器に自身の識別情報と前記グループへの参加を示す情報とを前記暗号通信により通知し、前記暗号通信情報に前記自身の識別情報を追加して保有する第1のグループ参加手段と、
前記グループに所属する他の機器から当該他の機器の識別情報と前記グループへの参加を示す情報とを受信すると、自身が保有する前記暗号通信情報に当該他の機器の識別情報を追加する第2のグループ参加手段と、
前記暗号通信情報を格納されていない第二の外部記憶媒体が装着された場合には、自身を除く前記暗号通信情報に前記識別情報が格納されている前記グループに所属する全機器に自身のグループからの離脱を示す情報と前記自身の識別情報とを前記暗号通信により通知し、自身の保有する前記暗号通信情報を削除する第1のグループ離脱手段と、
前記グループに所属する他の機器から当該他の機器の識別情報と前記離脱を示す情報とを受信した場合には、自身が保有する前記暗号通信情報から受信した当該他の機器の識別情報を削除する第2のグループ離脱手段、として機能させるためのプログラム。 - 請求項1または2記載のネットワーク機器であって、
前記ネットワークに接続された第1のグループに含まれるネットワーク機器を表示し、選択可能なインタフェース手段を有し、
前記グループ管理手段は、前記選択されたネットワーク機器を第2のグループとして管理し、
前記記憶手段は、前記第2の暗号化鍵と前記第2のグループに所属するネットワーク機器のホスト名とアドレスを含む識別情報を含む暗号通信情報を格納し、
前記暗号通信手段は、前記第2のグループで共通の第2の暗号化鍵による暗号通信を行うことを特徴とするネットワーク機器。 - 請求項8記載のネットワーク機器であって、
前記第1のグループの暗号化鍵を用いて暗号化された前記暗号通信情報を前記第2のグループに所属するネットワーク機器に対して送信する手段を有することを特徴とするネットワーク機器。 - 請求項8記載のネットワーク機器であって、
前記記憶手段は、前記第1のグループの暗号化鍵で暗号化された前記暗号通信情報を他のネットワーク機器から取得した場合、前記第2のグループの暗号通信情報として格納し、
前記第2の暗号鍵を用いた暗号通信による第2のグループ通信を行うことを特徴とするネットワーク機器。 - 請求項8記載のネットワーク機器であって、
ユーザが第2のグループに対応するユーザ識別情報と秘密情報を設定できる前記インタフェース手段と、
前記ユーザ識別情報、秘密情報、前記第2のグループの暗号通信情報と対応した第2のグループ識別子、自ネットワーク機器において生成した認証鍵とからなるグループ情報を格納する前記記憶手段と、
前記第2のグループ情報を前記第一の外部記憶媒体に格納する手段と、
前記第2のグループ情報を前記第1のグループの暗号化鍵で暗号化し、第2のグループに属する全てのネットワーク機器に対して送信する手段とを有し
前記記憶手段は、暗号化された前記第2のグループ情報を受信すると、前記第1の暗号化鍵を用いて復号化された前記グループ情報を格納することを特徴とするネットワーク機器。 - 請求項11記載のネットワーク機器であって、
自機器が管理しているユーザ識別情報と秘密情報を前記第一の外部記憶媒体に記憶された値と同一であることを確認する手段と、
前記前記第一の外部記憶媒体に記憶されているグループ識別情報に対応する機器が管理する第2の暗号鍵を検索する手段を備え、
前記第2の暗号鍵を用いて前記第2のグループ間で暗号通信を行うことを特徴とするネットワーク機器。 - 請求項8または11のいずれか記載のネットワーク機器であって、
前記インタフェース手段を有しているネットワーク機器は、暗号化された前記第2のグループ情報を受信した場合、前記第1の暗号化鍵を用いて復号化し、前記グループ情報を前記記憶手段に格納することを特徴とするネットワーク機器。 - 請求項8または11のいずれか記載のネットワーク機器であって、
前記第2のグループに属する他のネットワーク機器との通信を必要とするアプリケーションを起動する場合、前記アプリケーションの送信元ポート番号を格納する記憶手段と、
前記アプリケーションからパケットが送信される場合、前記パケットの送信元ポート番号と記憶している前記管理ポート番号が一致を確認する手段と、を備え、
一致している場合のみの前記第2の暗号鍵を用いた暗号通信による第2のグループ通信により前記パケットの送信すること特徴とするネットワーク機器。 - 請求項6記載のグループ管理方法であって、
グループに属するネットワーク機器が選択される選択ステップと、
前記選択されたネットワーク機器間で、互いに認証可能な暗号通信に用いる他の暗号化鍵を生成し、当該他の暗号化鍵と前記第2のグループに属するネットワーク機器のホスト名とアドレスを含む識別情報を含む暗号通信情報を保有する第2のグループ暗号情報生成ステップと、
前記暗号通信情報を、前記暗号化鍵を用いて暗号化して前記第2のグループに属するネットワーク機器に対して通知する第2のグループ暗号情報配布ステップと、
前記第2の暗号通信情報を受けた機器が当該第2の暗号通信情報を保有するグループ参加ステップと、
ユーザ識別情報、ユーザが作成した秘密情報、前記第2のグループの暗号通信情報と対応した第2のグループ識別子、及び生成した認証鍵とからなるグループ情報を保有し、前記第一の外部記憶媒体に前記情報を格納する第2のグループ情報生成ステップと、
前記暗号化鍵を用いて、第2のグループのグループ情報を暗号化し、前記第2のグループに属するネットワーク機器に対して通知する第2のグループ情報配布ステップと、
前記第2のグループ情報を受けた機器が前記グループ情報を保有するグループアクセス権設定ステップとを有することを特徴とするグループ管理方法。 - 請求項15記載のグループ管理方法であって、
機器が管理しているユーザ識別情報と秘密情報が、前記第一の外部記憶媒体上の値と同一であることを確認するユーザ認証ステップと、
アプリケーションのポート番号を保有する暗号通信準備ステップとを備えることを特徴とするグループ管理方法。 - 請求項7記載のプログラムにおいて、
グループに属するネットワーク機器が選択される選択手段と、
前記選択したネットワーク機器間で、互いに認証可能な暗号通信に用いる暗号化鍵を生成し、当該暗号化鍵と前記第2のグループに所属するネットワーク機器のホスト名とアドレスを含む識別情報を含む暗号通信情報を記憶する第2のグループ暗号情報生成手段と、
前記暗号化鍵を用いて、第2のグループの暗号通信情報を暗号化し、前記第2のグループに所属するネットワーク機器に対して通知する、第2のグループ暗号情報配布手段と、
前記第2の暗号通信情報を受けた機器において、暗号通信情報を保有するグループ参加手段と、
ユーザ識別情報、ユーザが作成した秘密情報、前記第2のグループの暗号通信情報と対応した第2のグループ識別子、及び生成した認証鍵とからなるグループ情報を記憶し、前記第一の外部記憶媒体に前記情報を格納する第2のグループ情報生成手段と、
前記暗号化鍵を用いて、第2のグループのグループ情報を暗号化し、前記第2のグループに所属するネットワーク機器に対して通知する、第2のグループ情報配布手段と、
前記第2のグループ情報を受けた機器において、グループ情報を記憶するグループアクセス権設定手段と、
ユーザがネットワーク機器を利用する場合、前記第一の外部記憶媒体を介して、機器が管理しているユーザ識別情報と秘密情報を前記第一の外部記憶媒体上の値と同一であることを確認するユーザ認証手段と、
ユーザが利用するアプリケーションのポート番号を保有する暗号通信準備手段と、
第2のグループに属する機器へパケット送信する場合、送信パケットのポート番号が保有していると一致する場合、第2のグループの暗号化鍵による暗号通信を行う手段、として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003141286A JP4367002B2 (ja) | 2002-12-25 | 2003-05-20 | ネットワーク機器、ネットワークシステム、および、グループ管理方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002375123 | 2002-12-25 | ||
JP2003141286A JP4367002B2 (ja) | 2002-12-25 | 2003-05-20 | ネットワーク機器、ネットワークシステム、および、グループ管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004254271A JP2004254271A (ja) | 2004-09-09 |
JP4367002B2 true JP4367002B2 (ja) | 2009-11-18 |
Family
ID=33031783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003141286A Expired - Lifetime JP4367002B2 (ja) | 2002-12-25 | 2003-05-20 | ネットワーク機器、ネットワークシステム、および、グループ管理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4367002B2 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4103611B2 (ja) | 2003-02-03 | 2008-06-18 | ソニー株式会社 | 無線アドホック通信システム、端末、その端末における認証方法、暗号化方法及び端末管理方法並びにそれらの方法を端末に実行させるためのプログラム |
US7574604B2 (en) * | 2003-03-04 | 2009-08-11 | Sony Corporation | Network device registration |
JP2007129320A (ja) * | 2005-11-01 | 2007-05-24 | Sony Corp | 通信システム、通信装置及び通信方法、並びにコンピュータ・プログラム |
MX2008013880A (es) * | 2006-05-02 | 2009-04-02 | Koninkl Philips Electronics Nv | Acceso mejorado a dominios autorizados. |
JP4762046B2 (ja) * | 2006-05-16 | 2011-08-31 | 株式会社東芝 | 無線通信装置、無線通信方法、および無線通信プログラム |
JP4921899B2 (ja) * | 2006-09-07 | 2012-04-25 | 日本放送協会 | 暗号化装置、復号化装置及び暗号鍵更新方法 |
JP5080837B2 (ja) * | 2007-03-27 | 2012-11-21 | パナソニック株式会社 | ネットワークシステム |
US9825759B2 (en) | 2013-07-08 | 2017-11-21 | Alcatel Lucent | Secure service management in a communication network |
JP2017034555A (ja) * | 2015-08-04 | 2017-02-09 | 株式会社ジェイテクト | データ通信システム、データ通信機器及びデータ通信方法 |
JP2017130705A (ja) * | 2016-01-18 | 2017-07-27 | 日本電気株式会社 | データ管理システム、データ管理方法、及び、データ管理プログラム |
JP6601544B2 (ja) * | 2018-09-06 | 2019-11-06 | 株式会社Jvcケンウッド | 管理装置、プログラム |
JP7163835B2 (ja) * | 2019-03-19 | 2022-11-01 | 株式会社Jvcケンウッド | 無線機、無線機の制御方法、及び、無線機の制御プログラム |
-
2003
- 2003-05-20 JP JP2003141286A patent/JP4367002B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2004254271A (ja) | 2004-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPWO2004059903A1 (ja) | ネットワーク機器、ネットワークシステム、および、グループ管理方法 | |
JP3769580B2 (ja) | 情報処理装置、情報処理方法および情報処理プログラム | |
US7451312B2 (en) | Authenticated dynamic address assignment | |
US7489783B2 (en) | Digital certificate management system, digital certificate management apparatus, digital certificate management method, update procedure determination method and program | |
JP4487490B2 (ja) | 情報処理装置、およびアクセス制御処理方法、情報処理方法、並びにコンピュータ・プログラム | |
US7680878B2 (en) | Apparatus, method and computer software products for controlling a home terminal | |
US8205074B2 (en) | Data communication method and data communication system | |
US7234063B1 (en) | Method and apparatus for generating pairwise cryptographic transforms based on group keys | |
US9032215B2 (en) | Management of access control in wireless networks | |
US20090094692A1 (en) | Session control server, communication device, communication system and communication method, and program and recording medium for the same | |
JP4367002B2 (ja) | ネットワーク機器、ネットワークシステム、および、グループ管理方法 | |
EP2635993A1 (en) | Registration server, gateway apparatus and method for providing a secret value to devices | |
CN109005179A (zh) | 基于端口控制的网络安全隧道建立方法 | |
US20060005010A1 (en) | Identification and authentication system and method for a secure data exchange | |
JP2005236728A (ja) | サーバ装置、要求発行機器、要求受諾機器、通信システム及び通信方法 | |
JP4886712B2 (ja) | アクセス制御システム、アクセス制御方法、アクセス制御装置およびアクセス制御プログラム | |
JP6056970B2 (ja) | 情報処理装置、端末機、情報処理システム及び情報処理方法 | |
JP2006109152A (ja) | ネットワーク上で通信を行う接続要求機器、応答機器、接続管理装置、及び通信システム | |
JP2006019824A (ja) | セキュア通信システム、管理装置および通信端末 | |
JP4837470B2 (ja) | Vpnサーバホスティングシステム、vpn構築方法、およびコンピュータプログラム | |
JP4694240B2 (ja) | 暗号キー配信装置及びそのプログラム | |
EP1615402B1 (en) | Identification and authentication system and method for a secure data exchange | |
US20240163664A1 (en) | Secure key management device, authentication system, wide area network and method for generating session keys | |
JP2005260448A (ja) | 1対多セキュア通信システムおよび通信管理装置ならびに方法 | |
JP2005303784A (ja) | サーバ装置、要求発行機器、要求受諾機器、通信システム、通信方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050926 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060420 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090210 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090410 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090804 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090817 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4367002 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120904 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130904 Year of fee payment: 4 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |