JP2014529238A - 安全なマルチキャストクラスタ内通信を提供するためのシステムおよび方法 - Google Patents

安全なマルチキャストクラスタ内通信を提供するためのシステムおよび方法 Download PDF

Info

Publication number
JP2014529238A
JP2014529238A JP2014527143A JP2014527143A JP2014529238A JP 2014529238 A JP2014529238 A JP 2014529238A JP 2014527143 A JP2014527143 A JP 2014527143A JP 2014527143 A JP2014527143 A JP 2014527143A JP 2014529238 A JP2014529238 A JP 2014529238A
Authority
JP
Japan
Prior art keywords
cluster
node
processor
nodes
mutual authentication
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.)
Pending
Application number
JP2014527143A
Other languages
English (en)
Inventor
フィリップ ブライアン クレイ
フィリップ ブライアン クレイ
Original Assignee
ネットアップ,インコーポレイテッド
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ネットアップ,インコーポレイテッド filed Critical ネットアップ,インコーポレイテッド
Publication of JP2014529238A publication Critical patent/JP2014529238A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/065Network architectures or network communication protocols for network security for supporting key management in a packet data network for group communications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/104Grouping of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3273Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

クラスタに参加しようとしているノードと、有効にクラスタの部分である任意の単一のノードとの間の認証を使用して、クラスタの任意の有効なノード間の安全なマルチキャスト通信を容易にするシステムおよび方法が開示される。実施形態によれば、クラスタ内通信に関してセキュリティを提供するために、クラスタ鍵が利用される。実施形態のクラスタ鍵は、既にクラスタの部分であるノードによって、そのクラスタに参加しようとしているノードと、これら2つのノードがお互いに相互認証した後にのみ、共有される。実施形態の相互認証ハンドシェイクは、セッション鍵が両方のノードによって計算されるプロトコルを実施し、それにより、クラスタ鍵が共有され得る安全な手段を提供する。クラスタ鍵を有しているので、クラスタの各ノードは、実施形態に従って、個々に(例えば、ユニキャスト通信)またはひとまとめに(例えば、マルチキャスト通信)かに関わらず、クラスタの任意の他のノードと安全に通信することが可能になる。

Description

本発明は、概して、クラスタ内通信に関し、より詳細には、安全なマルチキャストクラスタ内通信を提供することに関する。
発明の背景
1つのクラスタの異なるノードが互いに通信する、様々なシステム構成が存在し、ノードは、所望の機能、サービス、もしくは動作、またはその一部を提供するように動作可能である、動作ユニット(例えば、プロセッサベースシステム)であり、他のノードと協働してクラスタを形成し得る。例えば、データ記憶システムは、しばしば、そのデータ記憶システムの異なるノードに存在する複数の記憶装置を含む。かかるデータ記憶システムは、ネットワークアタッチトストレージ(NAS)環境、ストレージエリアネットワーク(SAN)、ダイレクトアタッチトストレージ環境、およびそれらの組合せなどの、様々なストレージアーキテクチャを使用して実施され得る。データ記憶システムのノードは、ファイルサーバーシステム、コンピュータアプライアンス、コンピュータワークステーションなどの、プロセッサベースシステムを含み得る。異なるノードの記憶装置は、ディスクドライブ、フラッシュメモリ、光メモリなどを含み得る。記憶装置のうちの選択されたものが、ストレージアーキテクチャに従い、ストレージアレイとして編成され得る。従って、ストレージアレイの記憶装置をホスティングするノードならびに他のネットワーク接続された装置は、データ記憶システムを提供するために協働して動作可能なノードのクラスタを構成し得る。
クラスタとして動作するために、クラスタのノードは、互いに通信する。かかる通信は、様々なポイントツーポイント通信(例えば、単一ノードから単一ノードまたはユニキャスト通信)およびマルチキャスト通信(例えば、単一ノードから複数ノード)を含み得る。したがって、効果的に協働して所望の動作を提供するために、クラスタの各ノードは、クラスタの任意のおよび全ての他のノードと通信する機能を有する必要があり得る。しかし、かかる通信は、公衆または他のネットワーク回線(例えば、インターネット、公衆交換電話網(PSTN)、ローカルエリアネットワーク(LAN)、メトロポリタンエリアネットワーク(MAN)、ワイドエリアネットワーク(WAN)など)などの、安全対策が施されていない回線を通過し得る。かかる安全対策が施されていない回線を通して遂行される通信は、傍受、盗聴、改ざん、監視、スニフィング(sniffing)、中間者攻撃、中継端末攻撃(relay attack)、反射攻撃などを受けやすい可能性がある。
したがって、クラスタのノード間の通信(すなわち、クラスタ内通信)を容易にするために、様々なセキュリティプロトコルが過去において実施されている。例えば、セキュアソケットレイヤ(SSL)およびトランスポート層セキュリティ(TLS)セキュリティプロトコルが、クラスタ内通信を安全にするためにクラスタのノードによって実施されている。SSLおよびTLSは、プライバシのための非対称暗号化およびメッセージの信頼性のための鍵付きメッセージ認証コードを使用して、通信セキュリティを提供する、暗号化プロトコルである。しかし、これらのセキュリティプロトコルは、ポイントツーポイントセキュリティプロトコルである。すなわち、固有の鍵セットが、各ノード対に対して利用される。したがって、安全なマルチキャスト通信は、SSLおよびTLSセキュリティプロトコルの使用を通しては提供されない。
安全なマルチキャスト通信を提供するプロトコルが開発されているが、かかるプロトコルは、これまで、マルチキャスト通信に関して十分なセキュリティを提供しておらず、ノードの、クラスタとの動的な関連付けに十分対応していない。通信用のセキュリティを提供するために使用されてきた1つのかかるプロトコルがJGROUPSである。JGROUPSは、「グループ化(grouping)」層がトランスポートプロトコルを通して追加されるマルチキャストプロトコルを提供する。マルチキャスト通信に関してセキュリティを提供するために、JGROUPSは、そのAUTHおよびENCRYPTプロトコルを実施する。しかしながら、AUTHプロトコルは、単一のトークンベース認証(例えば、安全対策が施されていない回線を通じて伝達されるパスワードまたは他の認証証明書)を使用して、片方向認証(すなわち、一方のノードだけが他方を認証する)を提供するだけであり、従って、盗聴者は、偽の認証を確立するために、通信を監視して、セキュリティハンドシェイクを模倣できる(例えば、反射攻撃)。ENCRYPTプロトコルは、全てのマルチキャスト通信を暗号化するために、クラスタ鍵を使用する。しかし、ENCRYPTプロトコルのクラスタ鍵は、自身の公開鍵を提供してクラスタ鍵を要求する、任意のノードに対して提供される。したがって、JGROUPSによって実施されるAUTHおよびENCRYPTプロトコルを使用しても、中間者は容易にクラスタに参加し得、それ故、マルチキャスト通信に関して提供されるセキュリティは幾分、錯覚に近いものである。
本発明は、クラスタに参加しようとしているノードと、有効にクラスタの部分である任意の単一のノードとの間の認証を使用して、クラスタの任意の有効なノード間の安全なマルチキャスト通信を容易にするシステムおよび方法に関する。本発明の実施形態に従って、クラスタ内通信に関してセキュリティを提供するために、クラスタ鍵(例えば、対称暗号鍵)が利用される。実施形態のクラスタ鍵は、既にクラスタの部分であるノードによって、そのクラスタに参加しようとしているノードと、これら2つのノードがお互いに相互認証した後にのみ、共有される。実施形態の相互認証ハンドシェイクは、セッション鍵が両方のノードによって計算されるプロトコルを実施するか、またはそのプロトコルに他の方法で関連し、それにより、ネットワークまたは他の回線を通じて伝達されたセッション鍵なしで、ノード間の安全な回線を容易にする。クラスタに参加しようとしているノードと、既にそのクラスタの部分であるノードによって、これら2つのノードが本発明の実施形態に従ってお互いに相互認証した後にクラスタ鍵が安全に共有されるために、セッション鍵が使用される。クラスタ鍵を有しているので、クラスタの各ノードは、個々に(例えば、ユニキャスト通信)またはひとまとめに(例えば、マルチキャスト通信)かに関わらず、クラスタの任意の他のノードと安全に通信することが可能になる。
前述から、本発明の実施形態は、クラスタ内の任意のノードに対して認証することにより、ノードがクラスタに参加するのを容易にすることが理解できる。本発明の実施形態は、ノードの認証を提供する際に、公開鍵インフラストラクチャ(PKI)または証明書に依存しない。したがって、PKIまたは証明書の管理に関わる構成およびメンテナンスが回避される。しかし、本明細書の実施形態は、マルチキャスト通信用にクラスタ環境内での使用のために調整されたか、または他の方法で適合された新しい方法においてではあるが、利用可能な認証プロトコル、鍵共有プロトコル(key agreement protocol)、および/もしくは暗号化アルゴリズムまたはそれらの一部を利用し得、それにより、十分に試験されて完全に文書化されている基礎技術を活用し得る。
一旦認証されると、参加したノードに関する信頼がクラスタ全体のノードで確立される。すなわち、クラスタに参加しようとしているノードは、基本的に、参加するために、クラスタに対して論理ユニットとして認証する。従って、クラスタに参加しようとしているノードは、本明細書の実施形態によると、ポイントツーポイント方式のプロトコルを実施するアプローチであれば要求され得るように、クラスタ内の全てのノードに対して、または複数のノードに対してさえ、認証する必要がない。一旦参加すると、クラスタのノードは、ユニキャストおよびマルチキャストメッセージングを含む様々なメッセージング技術を使用して、クラスタの他のノードと通信することが可能になる。本発明の実施形態の動作とは対照的に、マルチキャスト通信技術は、ポイントツーポイント方式のプロトコルでは容易に実施されない。
前述は、以下に続く本発明の詳述がより良く理解され得るために、本発明の特徴および技術的な利点を多少大まかに概説している。本発明の特許請求の範囲の主題を形成する本発明の追加の特徴および利点が、以下で述べられる。当業者には、開示される概念および特定の実施形態は、本発明の同じ目的を実行するため、修正または他の構造の設計のための基礎として容易に利用され得ることが理解されるべきである。当業者には、かかる等価な構造は、添付の特許請求の範囲に記載の本発明の精神および範囲から逸脱しないことも理解されるべきである。本発明の構成および動作方法の両方に関して、本発明の特性であると考えられる新規の特徴は、さらなる目的および利点とともに、添付の図に関連して考慮されると、以下の記述からより良く理解されるであろう。しかし、図の各々は、例証および説明の目的のためにのみ提供されており、本発明の限定の定義としては意図していないことが明確に理解されるべきである。
本発明をより完全に理解するために、ここで、以下の記述が、添付の図と併せて参照される。
本発明の実施形態に従って、クラスタの各ノードが、クラスタの任意の他のノードと安全に通信することを可能にするように適合されたシステムのブロック図を示す。 本発明の実施形態に従って、クラスタの各ノードが、クラスタの任意の他のノードと安全に通信することを可能にするように適合されたシステムのブロック図を示す。 本発明の実施形態に従って、クラスタの各ノードが、クラスタの任意の他のノードと安全に通信することを可能にする高レベルのプロセスフローのラダー図を示す。 本発明の実施形態に従って、クラスタの各ノードが、クラスタの任意の他のノードと安全に通信することを可能にするより詳細なプロセスフローのラダー図を示す。
発明の詳細な説明
本明細書で使用される特定の用語の意味の簡潔な説明が、以下の説明に記載の本発明の概念を読者がより良く理解するのを助けるために、以下に提供される。以下は、特定の用語に関する一般的な意味を提供するが、本明細書では、ある用語に関する追加の意味が、以下に述べる特定の実施形態の文脈において提供され得ることが理解されるべきである。
本明細書では、クラスタとは、所望の機能、サービス、または動作を提供するために共に動作可能な、接続されているか、または他の方法で関連付けられているノードのグループであり、それにより、多くの点において、単一の論理要素を形成する。ノードとは、所望の機能、サービス、もしくは動作、またはそれらの一部を提供するために動作可能な、例えばプロセッサベースのシステム(例えば、コンピュータ、ネットワークアプライアンスなど)および関連した命令セット(例えば、ソフトウェア、ファームウェア、アプリケーションなど)などの、ネットワーク接続された装置の動作ユニットであり、これは、クラスタを形成するために他のノードと協働し得る。クラスタ内通信は、ユニキャスト通信およびマルチキャスト通信などの、クラスタの中の2つ以上のノードの間の通信である。ユニキャスト通信は、1つまたは複数のメッセージまたは情報を単一のネットワーク宛先(例えば、ノード)に送信することである。マルチキャスト通信は、1つまたは複数のメッセージまたは情報を、単一の伝送により、複数のネットワーク宛先(例えば、ノード)に送信することである。
本明細書では、認証とは、一方の当事者(例えば、ノード)が別の当事者(例えば、別のノード)のアイデンティティを確認するプロセスであるのに対して、相互認証とは、2当事者(例えば、ノード)が互いのアイデンティティを確認するプロセスである。認証ハンドシェイクは、一方もしくは他方(認証)または両方(相互認証)を認証しようと試みる2当事者(例えば、ノード)間のメッセージの対話である。鍵共有プロトコルは、2以上の当事者(例えば、ノード)が、両者が結果に影響を及ぼし、それによって当事者間で固有の鍵(例えば、セッション鍵)を伝達する必要なく固有の鍵を別々に計算することが容易になり、従って、盗聴および改ざんを回避するような方法で、鍵(例えば、データの暗号化および/または復号で使用される暗号鍵)について共有できるプロトコルである。盗聴は、第三者(例えば、クラスタの部分でないノード)が、通信に関与する当事者(例えば、クラスタのノード)の同意および/または知ることなしに、通信を監視する場合である。改ざんは、第三者(例えば、クラスタの部分ではない、ネットワーク接続された装置)が、通信に関与する当事者(例えば、クラスタのノード)が知ることなく、データを、通信している当事者の間でデータが伝送中に、変更または他の方法で改ざんする場合である。暗号化とは、(暗号化前はプレーンテキストと呼ばれる)情報を、通常は鍵(例えば、暗号鍵)と呼ばれる特別な情報を保有している人以外は判読できないようにする(暗号と呼ばれる)アルゴリズムを使用して、変換するプロセスであり、他方、復号とは、暗号化された情報をプレーンテキストに変換して戻すプロセスである。
図1Aを参照すると、ネットワーク101を経由して結合した、ネットワーク接続された装置110〜130として示される複数のネットワーク接続された装置を含むシステム100が示されている。ネットワーク接続された装置110〜130は、ファイルサーバーシステム、コンピュータアプライアンス、コンピュータワークステーションなどの、プロセッサベースシステムを含み得る。したがって、実施形態のネットワーク接続された装置110〜130は、プロセッサ(例えば、中央処理装置(CPU)、特定用途向け集積回路(ASIC)、プログラマブルゲートアレイ(PGA)など)、メモリ(例えば、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、ディスクメモリ、光メモリ、フラッシュメモリなど)、および適切な入力/出力回路(例えば、ネットワークインタフェースカード(NIC)、無線ネットワークインタフェース、ディスプレイ、キーボード、データバスなど)を含む。前述のプロセッサベースシステムは、本明細書に記載されるような動作を提供する命令セット(例えば、ソフトウェア、ファームウェア、アプレット、コードなど)の制御下で動作し得る。ネットワーク101は、インターネット、PSTN、LAN、MAN、WAN、無線ネットワーク(例えば、セルラー式通信ネットワーク、無線LANなど)、および/または同様のものなどの、様々な形態の通信インフラストラクチャを含み得る。
ノードによる1つまたは複数のクラスタが、ネットワーク接続された装置110および120から形成され、それによりクラスタ環境を提供する、システム100の様々な構成が提供され得るが、その環境内では、クラスタの協調した動作が、クラスタのノード間の通信を通して容易になる。例えば、データ記憶システムは、ネットワーク接続された装置110〜130から形成され得、ネットワーク接続された装置110および120(例えば、ディスクドライブ、フラッシュメモリ、光メモリなど)に存在する1つまたは複数の記憶装置(例えば、記憶装置114および124)が、ネットワーク接続された装置130に対してアクセス可能なボリュームを提供するために協働する。ストレージアレイの記憶装置をホスティングするネットワーク接続された装置110および120ならびにクライアントのネットワーク接続された装置130は、このように、データ記憶システムを提供するために協調して動作可能なノードのクラスタを構成し得る。
図1Bは、クラスタの各ノードが、そのクラスタの任意の他のノードと安全に通信することを可能にするように適合されたシステム100の実施形態に関する追加の詳細を示すブロック図を提供する。前述のように、システム100は、システム100のストレージを構成する(記憶装置114および124として示される)記憶装置のセット上に格納されたデータへのアクセスを提供するように構成されたネットワーク接続された装置110および120などの、相互接続された2つ以上の装置を含み得る。システム100の分散ストレージシステムアーキテクチャを提供するために協働する様々な機能コンポーネントを実装するかかるノードによって、ストレージサービスが提供され得る。
例示として、ノード(例えば、ネットワーク接続された装置110および120)は、1つもしくは複数のネットワーク要素(Nモジュール112および122)および/または記憶要素(Dモジュール113および123)および管理要素(Mホスト111および121)として編成され得る。Nモジュールは、ノードがコンピュータネットワーク101を経由して、1つまたは複数のクライアント(例えば、ネットワーク接続された装置130)と接続することを可能にする機能を含み得、他方、Dモジュールは、(例えば、ストレージアレイを実装し得るように)記憶装置に接続し得る。Mホストは、情報共有動作を生成するため、およびシステム100に対して分散ファイルシステムイメージを提示するために、ノード間のクラスタ通信サービスを提供し得る。クラスタの各ノードがクラスタの任意の他のノードと安全に通信することを可能にするための機能が、本発明の実施形態に従って適合されたMホストによって提供され得る。
ネットワーク101は、ネットワークインフラストラクチャの様々な形態、および別個の部分さえ、含み得ることが理解されるべきである。例えば、ネットワーク接続された装置110および120は、クラスタスイッチング構造102によって相互接続され得、同時に、ネットワーク接続された装置110および120は、より一般的なデータネットワーク(例えば、インターネット、LANなど)によって、ネットワーク接続された装置130に相互接続され得る。
ノードの図示した実施形態を構成する同数のNおよびDモジュールが示されているが、本発明の様々な実施形態に従って、ノードを具体化する、異なる個数および/またはタイプの機能コンポーネントがあり得ることにも留意されるべきである。例えば、ネットワーク接続された装置110および120のモジュール間で1対1の対応を示さない、システム100内で相互接続された、複数のNモジュールおよび/またはDモジュールがあり得る。したがって、1つのNモジュールおよび1つのDモジュールを含むネットワーク接続された装置110および120の記述は、例示としてのみ解釈されるべきであり、新規の技術は、本明細書で説明する例示的な実施形態に限定されないことが理解されるであろう。
ネットワーク接続された装置130は、情報配信のクライアント/サーバーモデルに従って、ネットワーク接続された装置110および120とやりとりするように構成された汎用コンピュータであり得る。そのために、ネットワーク接続された装置130は、ネットワーク接続された装置を含むクラスタノードに対して読取りまたは書込み要求をサブミットすることにより、ネットワーク接続された装置110および120のサービスを要求し得る。要求に応答して、前記ノードは、ネットワーク101を経由して情報パケットを交換することにより、要求されたサービスの結果を返し得る。ネットワーク接続された装置130は、例えば、共通インターネットファイルシステム(CIFS)プロトコル、ネットワークファイルシステム(NFS)プロトコル、TCPを介してカプセル化された小規模コンピュータシステムインタフェース(SCSI)プロトコル(iSCSI)、およびファイバーチャンネルを介してカプセル化されたSCSI(FCP)などの、オブジェクトベースのアクセスプロトコルを使用してパケットを発行することによりアクセス要求をサブミットし得る。好ましくは、ネットワーク接続された装置110および120は、ネットワーク接続された装置130と通信するために、ファイルベースおよびブロックベースのプロトコルの組合せを実施し得る。
システム100は、クラスタ全体に対して管理サービスを提供するための管理コンソール(本明細書では、管理コンソール150として示す)をさらに含む。例えば、管理コンソール150は、ネットワーク接続された装置から構成されるクラスタノードで動作が実行されることを要求するため、およびノードからの情報(例えば、ノード構成、動作測定基準)を要求するか、または情報をノードに提供するために、ネットワーク101を経由して、ネットワーク接続された装置110および120と通信し得る。加えて、管理コンソール150は、システム100のユーザー(例えば、ストレージ管理者)からの入力を受信し、システム100のユーザーに出力を提供するように構成され得、それにより、管理者とシステム100との間の集中管理インタフェースとして動作する。例示的な実施形態では、管理コンソール150は、ネットワーク接続された装置110〜130にネットワーク接続され得るが、本発明の他の実施形態は、管理コンソール150を、システム100に接続するかまたはシステム100を構成するノードまたは任意の他の処理システムの機能コンポーネントとして実装し得る。
分散アーキテクチャでは、ネットワーク接続された装置130は、リモートノードに格納されたデータに対するアクセス要求をノードにサブミットし得る。一例として、ネットワーク接続された装置130からのアクセス要求は、ストレージ114内のネットワーク接続された装置110上のストレージオブジェクト(例えば、ボリューム)を対象にし得るネットワーク接続された装置120に送信され得る。アクセス要求の処理を加速して、クラスタ性能を最適化するために、ネットワーク接続された装置120は、要求されたボリュームをローカルメモリ内またはストレージ124内にキャッシュし得る。例えば、ネットワーク接続された装置120のクラスタノードとしての初期化中に、ネットワーク接続された装置120は、ネットワーク接続された装置110からのボリュームの全部または一部を、かかるデータに対するネットワーク接続された装置130による実際の要求の前に、ネットワーク接続された装置120での格納のために要求し得る。
前述から理解できるように、クラスタ(例えば、前述のデータ記憶システム)として動作するために、ネットワーク接続された装置110〜130は、互いに通信し得る。かかる通信は、様々な形態の通信(例えば、ポイントツーポイントまたはユニキャスト通信、マルチキャスト通信など)を含み得る。したがって、効果的に協働して論理要素として所望の動作を提供するために、クラスタの各ノードは、本発明の実施形態に従って、クラスタの任意のまたは全部のノードと通信する機能を提供される。しかし、ネットワーク101は、安全対策が施されていない回線を提供し得、従って、かかる通信は、傍受、盗聴、改ざん、監視、スニフィング、中間者攻撃、中継端末攻撃、反射攻撃などを受けやすい可能性があるので、本発明の実施形態は、クラスタに参加しようとしているノードと、有効にクラスタの部分である任意の単一のノードとの間の認証を使用して、クラスタの任意の有効なノード間に安全な通信(例えば、ユニキャストおよびマルチキャスト)を提供する。
クラスタに参加しようとしているノードが、参加するためにクラスタに対して論理ユニットとして認証し、従って、参加しようとしているノードとクラスタの任意の他の有効なノードとの間に安全な通信が提供され得る、安全な通信を容易にすることにおいては、本発明の実施形態に従った動作により、クラスタに参加しようとしているノードと有効にクラスタの部分である任意の単一のノードとの間で相互認証セッションが実行される。相互認証が成功である場合、実施形態に従った動作は、相互認証セッションに固有の安全な通信チャネルを使用して(例えば、相互認証に関連して計算されたセッション鍵を使用して)、クラスタ秘密(例えば、クラスタ鍵)をクラスタに参加しようとしているノードに伝達する。本発明の実施形態によれば、クラスタ秘密およびクラスタ認証情報の保有は、クラスタに参加しようとしているノードをクラスタノードにし、クラスタ秘密は、クラスタノードの、有効にクラスタの部分である他の全てのノードとの安全な通信を可能にする。
図2は、本明細書の実施形態に従い、クラスタに参加しようとしているノードが、クラスタ内の全てのノードに対して、または複数のノードに対してさえ、認証することなく、個々に(例えば、ユニキャスト通信)またはひとまとめに(例えば、マルチキャスト通信)かに関わらず、クラスタの各ノードがクラスタの任意の他のノードと安全に通信することが可能になるプロセスフローを示す。特に、図2のラダー図は、新しいノード(例えば、ネットワーク接続された装置120)が、別のノード(例えば、ネットワーク接続された装置110)が第1のメンバであるクラスタに参加する場合に、実施形態に従って起こる、認証ハンドシェイク、セッション鍵共有(session key agreement)、およびクラスタ鍵交換を提供する。図2に示すプロセスフローの機能は、本発明の実施形態の要素が本質的に、必要なタスクを実行するためにプロセッサベースまたはコンピュータシステム(例えば、ネットワーク接続された装置110、120、および/または130)上で動作可能なコードセグメントであるソフトウェアにおいて実施され得ることが理解されるべきである。プログラムまたはコードセグメントは、コンピュータ可読媒体(例えば、ネットワーク接続された装置110〜130のそれぞれ1つの前述のメモリ)に格納できる。
図示した実施形態によれば、有効にクラスタの部分になる各ノードは、クラスタ認証情報(例えば、クラスタパスワード)を保有すると考えられる。したがって、図示した実施形態のプロセス201で、クラスタ認証情報が投入されて、ネットワーク接続された装置110がクラスタに有効に含まれる予定のノードであることを立証する。様々な技術がクラスタ認証情報の投入のために実施され得ることが理解されるべきである。例えば、ネットワーク接続された装置110のユーザーが、起動中に、ネットワーク接続された装置のコンソール上でクラスタパスワードをタイプ入力してもよく、クラスタパスワードが、様々な手段によって保護されたファイル(例えば、そのネットワーク接続された装置に一時的に取り付けられたユニバーサルシリアルバス(USB)メモリ装置のメモリ内に格納されたファイル)から読み取られてもよく、クラスタパスワードが、他の、おそらくは秘密の、データから導出されてもよい、など。クラスタ認証情報をノードに投入するために使用される特定の技術にかかわらず、適切な認証情報を有すると、ネットワーク接続された装置110は有効にクラスタに加わり得る。
プロセス202で、ネットワーク接続された装置110は、自身がクラスタ内の第1のメンバであると判断する。ネットワーク接続された装置110が、クラスタの他のノードが存在するか否かを判断するための、様々な技術が実施され得る。例えば、ネットワーク接続された装置110は、別のクラスタノードからの応答を問い合わせるために、ネットワーク101を経由して、1つまたは複数のメッセージを伝送し得、かつ/またはネットワーク接続された装置110は、メンバノードのデータベースを保持する管理ノードまたは他のクラスタリソース(例えば、管理コンソール、Mホストなど)と通信し得る。追加的にまたは代替として、ネットワーク接続された装置110は、ネットワーク101上の通信を監視して、クラスタ通信トラフィックの存在を識別し得る。図示した実施形態のネットワーク接続された装置110が、どのように、自身がクラスタの第1のメンバであると判断するかに関わらず、このようにして、プロセス202で、クラスタ通信を保護する際に使用される新規のクラスタ秘密(例えば、クラスタ鍵)を生成する。
本明細書の実施形態に従って利用されるようなクラスタ鍵は、様々な技術を使用して生成され得る。例えば、クラスタ鍵は、安全かつ/またはランダムなデータを使用して生成され得る。システムは、しばしば、CPU温度、ファン速度、マウスの動き、ネットワークトラフィックなどに基づくデータを使用してシードされ得るような、擬似ランダムデータの生成方法を提供する。かかる擬似ランダムデータは、本明細書でクラスタ鍵として使用される暗号鍵の計算に利用され得る。本発明の実施形態に従って生成されたクラスタ鍵は、対称鍵を含む(すなわち、同じ暗号鍵が暗号化と復号の両方を提供する対称暗号化を提供する)。したがって、PKIまたは証明書の管理に関わる構成およびメンテナンスは、かかるクラスタ鍵を使用するクラスタ通信については回避される。
クラスタ秘密およびクラスタ認証情報を保有しているので、ネットワーク接続された装置110はクラスタのメンバ(現在、唯一のメンバであるが)である。ネットワーク接続された装置110は、例えば、1つまたは複数のメッセージをブロードキャストすること、メンバノードのデータベースを保持する管理ノードまたは他のクラスタリソース(例えば、管理コンソール、Mホストなど)と通信することなどにより、自身がクラスタのメンバであることを通知するように動作し得る。
図2に示す実施形態では、ネットワーク接続された装置120は、ネットワーク接続された装置110が現在唯一のメンバであるクラスタに、参加することを望む。したがって、図示した実施形態のプロセス203で、クラスタ認証情報が投入されて、ネットワーク接続された装置120がクラスタに有効に含まれる予定のノードであることを立証する。ネットワーク接続された装置110に関して前述したように、様々な技術がクラスタ認証情報の投入のために実施され得る。クラスタ認証情報をネットワーク接続された装置に投入するために使用される特定の技術にかかわらず、適切な認証情報を有すると、ネットワーク接続された装置120は有効にクラスタに参加し得る。
プロセス204で、ネットワーク接続された装置120は、少なくとも1つのメンバが既にクラスタ内にあると判断する。ネットワーク接続された装置110に関して前述したように、ネットワーク接続された装置120が、クラスタの他のノードが存在するか否かを判断するための、様々な技術が実施され得る。図示した実施形態のネットワーク接続された装置120が、どのように、少なくとも1つのメンバが既にクラスタのメンバであると判断するかに関わらず、このようにして、プロセス204で、ネットワーク101を経由して、(クラスタに参加しようとしている)ネットワーク接続された装置120と既存のクラスタメンバ(この場合、ネットワーク接続された装置110)との間で相互認証ハンドシェイクを実行する。本明細書の相互認証を実行するため、参加しようとしているノードによって選択される特定のクラスタノードは、いくつかの基準(例えば、クラスタの最も古いメンバであるクラスタノード、参加しようとしているノードの最も近くに物理的に配置されているクラスタノード、最も少ないホップを有する回線が使用され得るクラスタノード、最も利用の少ないクラスタノードなど)のいずれかに基づいて選択され得る。本明細書の相互認証の提供における使用のために選択されたクラスタメンバは、クラスタに参加しようとしているノードのピアノードであり得ることが理解されるべきである。すなわち、管理ノードまたは他の集中型クラスタリソースは利用される必要がなく、むしろ、有効にクラスタの部分であるピアノード(例えば、クラスタ秘密を開始したノードでなければ、相互認証されており、また、クラスタ秘密を保有している)が各々、本明細書の実施形態に従って、認証およびクラスタ参加処理を提供し得る。
本発明の実施形態に従って実施されるような認証ハンドシェイクは、ネットワーク接続された装置120およびネットワーク接続された装置110の両方の相互認証をもたらす。かかる相互認証ハンドシェイクの使用は、クラスタの有効なメンバに提供されるようなクラスタ秘密、および/または認証情報もしくは他のセキュリティ情報が、認可されていないネットワーク接続された装置またはクラスタの有効な部分でない他のノード(例えば、中間者)に提供されないことを保証する。様々な相互認証プロトコルが、プロセス204の認証ハンドシェイクを提供する際に利用され得る。1つのかかる相互認証プロトコルに関する詳細が、図3に示す実施形態に関連して以下で提供される。実施される特定の相互認証プロトコルに関わらず、ネットワーク接続された装置110および120の各々が、図示した実施形態の相互認証ハンドシェイクの動作によって、ネットワーク接続された装置120および110の他方に対して認証される。いかなる時でも、ネットワーク接続された装置110またはネットワーク接続された装置120が認証失敗を検出する場合は、参加プロセスは好ましくは中止される。
本発明の実施形態に従った動作では、ネットワーク接続された装置110およびネットワーク接続された装置120の両方が、相互認証ハンドシェイクの一部として、または相互認証ハンドシェイクに関連して、セッション秘密(例えば、セッション鍵)を導出する。本明細書の実施形態に従って利用されるようなセッション秘密は、様々な技術を使用して生成され得る。例えば、セッション鍵は、認証ハンドシェイク中に収集されたデータから生成され得る。セッション鍵生成のための1つのかかる技術に関する詳細が、図3に示す実施形態に関連して以下で提供される。本発明の実施形態に従った動作では、クラスタ認証情報、ユーザー導出情報、クラスタ内の全てのノードに共通の情報、および、検出可能なパターンを提示し得るか、または別々に計算されたセッション秘密のセキュリティを他の方法で弱め得る他の情報は、セッション秘密自体の導出には使用されない。セッション秘密の生成に使用される特定の技術に関わらず、実施形態は、相互認証ハンドシェイクに参加するノードの各々によってセッション秘密を別々に生成するように動作し、そのため、セッション秘密(例えば、セッション鍵)はノードを結合する回線(例えば、ネットワーク101)を通じて渡されない。したがって、図示した実施形態では、プロセス205は、セッション秘密を計算するためにネットワーク接続された装置120によって実施されるプロセス206とは別に、セッション秘密を計算するためにネットワーク接続された装置110によって実施される。
相互認証が成功である場合は、クラスタ秘密をネットワーク接続された装置110からネットワーク接続された装置120にネットワーク101を経由して安全に伝達するために、前述のセッション秘密が本発明の実施形態に従って利用される。したがって、図示した実施形態のプロセス207で、ネットワーク接続された装置110は、セッション秘密(例えば、セッション鍵)を使用してクラスタ秘密(例えば、クラスタ鍵)を暗号化し、その暗号化されたクラスタ秘密をネットワーク接続された装置120に伝送する。例えば、実施形態のプロセス207で、セッション鍵を使用したクラスタ鍵の暗号化は、AES−128対称鍵暗号化を使用してもよい。しかし、他の暗号鍵アルゴリズム(例えば、IDEA(International Data Encryption Algorithm)およびCAST−128暗号化アルゴリズムなどの他の対称暗号鍵アルゴリズム)を本発明の実施形態に従って使用してもよい。本発明の実施形態に従って利用されるセッション鍵は、ノードの認証を提供する際にPKIまたは証明書の使用に依存せず、したがって、PKIまたは証明書の管理に関わる構成およびメンテナンスを回避する。
クラスタ秘密をネットワーク接続された装置120に伝送した後、ネットワーク接続された装置110と120との間のクラスタ参加セッションが、本発明の実施形態に従ってネットワーク接続された装置110に関して完了し、従って、ネットワーク接続された装置110は次いで、セッション鍵を破棄し得る。ネットワーク接続された装置110は、実施形態に従って、例えば後のクラスタ動作で使用するために、新しく加わったネットワーク接続された装置120を含めるために、有効にクラスタの部分であるノードのリストを更新するように動作し得る。ネットワーク接続された装置110は、有効にクラスタの部分であるノードの前述のリストなどの追加の情報を、(セッション秘密を破棄する前に)ネットワーク接続された装置120に伝達し得ることが理解されるべきである。実施形態のネットワーク接続された装置120は、ネットワーク接続された装置110から受信した暗号化されたクラスタ秘密を、セッション秘密を使用して復号し、クラスタ秘密を取得する。ネットワーク接続された装置110から受信したクラスタ秘密を復号した後、ネットワーク接続された装置110と120との間のクラスタ参加セッションが、本発明の実施形態に従ってネットワーク接続された装置120に関して完了し、従って、ネットワーク接続された装置120は次いで、セッション鍵を破棄し得る。ネットワーク接続された装置110および/またはネットワーク接続された装置120は、ネットワーク接続された装置120をクラスタノードとして識別する情報を、クラスタの他のノードに(例えば、クラスタ秘密を使用して)伝達し得る。
クラスタ秘密およびクラスタ認証情報を保持しているので、ネットワーク接続された装置120は、クラスタのメンバ(現在、2つのメンバのうちの1つ)である。したがって、実施形態に従った動作では、ネットワーク接続された装置120は、クラスタ内の他の全てのメンバを信頼し、クラスタ内の他の全てのメンバは、ネットワーク接続された装置120を信頼する。一旦参加すると、クラスタのノードは、クラスタ秘密の使用(例えば、クラスタ鍵を使用したメッセージの暗号化)を介したユニキャストおよびマルチキャストメッセージングを含む様々なメッセージング技術を使用して、クラスタの他のノードと通信することが可能になる。すなわち、ネットワーク接続された装置120は、クラスタの全ての他のノードが共有するクラスタ秘密を安全に取得することができ、それ故、ネットワーク接続された装置120は、そのクラスタ秘密を使用して、それらのノードと個々に(例えば、ユニキャスト通信)またはひとまとめに(例えば、マルチキャスト通信)のいずれかで通信し得る。このようにして、クラスタ内の任意のメンバへの/メンバからの将来の通信が、図示した実施形態のプロセス208によって表されるように、クラスタ秘密(例えば、クラスタ鍵での暗号化)を使用して保護される。
実施形態のプロセス208でのクラスタ鍵を使用したメッセージの暗号化は、例えば、AES−128対称鍵暗号化を使用してもよい。しかし、他の暗号鍵アルゴリズム(例えば、IDEA(International Data Encryption Algorithm)およびCAST−128暗号化アルゴリズムなどの他の対称暗号鍵アルゴリズム)を本発明の実施形態に従って使用してもよい。本発明の実施形態に従って利用されるクラスタ鍵は、ノードの認証を提供する際にPKIまたは証明書の使用に依存せず、したがって、PKIまたは証明書の管理に関わる構成およびメンテナンスを回避する。
前述のように、一旦、クラスタのいずれかのノードにより認証されると、参加したノードに関する信頼が、クラスタ全体のノードで確立されることが理解されるべきである。従って、クラスタに参加しようとしているノードは、本明細書の実施形態に従い、クラスタ内の全てのノードに対して、または複数のノードに対してさえ、認証する必要がない。すなわち、本明細書の実施形態に従って実施されるような相互認証技術は、各ノードが、そのノード自身がクラスタに参加するのを容易にするクラスタ秘密の受信者、および、他のノードがクラスタに参加するのを容易にするクラスタ秘密の供給源、の両方であるように構成される構成を提供する。したがって、第3のノード(例えば、図1Aのネットワーク接続された装置110および120に類似しているネットワーク接続された装置)が、図2においてネットワーク接続された装置110および120を含むように形成されたクラスタに参加しようとする場合、かかる参加しようとしているノードは、既にクラスタの部分である任意の単一のノード(例えば、ネットワーク接続された装置110またはネットワーク接続された装置120のいずれか)と相互認証およびクラスタ秘密共有プロセスを実行(例えば、図2のプロセス203〜207を実行)して、信頼を確立し、かつクラスタのあらゆるノード(例えば、ネットワーク接続された装置110およびネットワーク接続された装置120の両方)と安全に通信する機能を確立し得る。すなわち、クラスタに成功裏に参加したノードはクラスタ秘密(例えば、クラスタ鍵)を有しているので、いずれのノードもクラスタ内の任意の他のノードと通信できる。これは、クラスタ内通信用に使用されるユニキャストおよびマルチキャストメッセージを可能にする。前述から理解できるように、ノードは、クラスタ内の全てのノードに対して認証するのとは対照的に、クラスタ内の単一のノードを認証するのみでマルチキャスト通信機能を提供される。このアプローチは、任意のサイズのクラスタに対して拡張できる。
図3は、クラスタの各ノードがクラスタの任意の他のノードと安全に通信することを可能にする動作を提供する図2のプロセスフローの実施形態に関する詳細を示す。具体的には、図3のラダー図は、本発明の実施形態に従って利用され得るような、相互認証プロトコルおよびセッション鍵生成のための技術に関する詳細を提供する。したがって、図3のプロセス301〜320は、図2のプロセス204〜207に従って相互認証を提供するように動作可能なプロセスフローに関する詳細を提供し、プロセス315および319は、図2のプロセス205および206に従って別々のセッション秘密計算を提供するように動作可能なプロセスフローに関する詳細を提供する。図3のプロセス201〜203および208は、図2のプロセス201〜203および208に対応し、図3のプロセス316、317、320は、図2のプロセス207に対応する。図2のプロセスフローと同様に、図3に示すプロセスフローの機能は、本発明の実施形態の要素が本質的に、必要なタスクを実行するためにプロセッサベースまたはコンピュータシステム(例えば、ネットワーク接続された装置110、120および/または130)上で動作可能なコードセグメントであるソフトウェアにおいて実施され得る。プログラムまたはコードセグメントは、コンピュータ可読媒体(例えば、ネットワーク接続された装置110〜130のそれぞれ1つの前述のメモリ)に格納できる。
図3に示す実施形態は、相互認証および別個のセッション秘密計算の提供において、セキュアリモートパスワードプロトコルバージョン6a(SRP−6a)の修正された構成を利用する。しかし、関与する両当事者の相互認証とハンドシェイクに関与する2当事者のみに知られる共有秘密とを提供する、他の認証および鍵共有プロトコルを、本発明の実施形態に従って利用してもよい。使用される認証プロトコル、鍵共有プロトコル、および暗号化アルゴリズムは、事前にあらゆるノードに知られていると推定されるが、本明細書の概念に従って提供される実施形態は、(例えば、ハンドシェイクが起こる前に、プロトコルおよびアルゴリズムの共通のセットについて合意する、ノードが交換するメッセージを通して)本明細書の動作を提供する特定のプロトコルおよび/またはアルゴリズムを動的に選択するように動作し得る。
図3に示すプロセスフローの実施形態に従った動作では、相互認証プロトコルのnおよびg値が予め全てのノードに知られている。例えば、実施形態で使用されるnおよびgの値が、問題の2当事者によって合意されてもよい。それらは、前もって設定されることができるか、またはホストがそれらをクライアントに供給できる。後者の場合、ホストは、第1のメッセージでパラメータをソルト(salt)と共に送信するべきである。最大限のセキュリティのために、nは安全素数(例えば、n=2q+1の形式の数、式中qも素数である)であるべきである。また、gは、nを法とする生成元であるべきであり、これは、0<x<nである任意のxに対して、g^x%n==xである値xが存在することを意味する。しかし、代替の実施形態は、(例えば、プロセス304で)nおよびg値を返すように動作する。
図3の実施形態に示す相互認証プロトコルのK値はセッション鍵として使用され、擬似ランダム関数(PRF)(例えば、RFC 2246セクション5に定義された、TLSv1プロトコル、その開示は参照により本明細書に組み込まれる)で計算される。しかし、1つの秘密(S)を別の秘密(K)に拡張可能ないくつものアルゴリズムが、本発明の実施形態に従ったセッション鍵の計算で利用され得る。
SRP−6aプロトコルはクライアントとサーバーとの間で使用されるために設計されたが、他方、図3に示すプロセスフローの相互認証は、クラスタのノードに対して実行されることが理解されるべきである。クライアント/サーバー環境では、サーバーは通常、ユーザーのパスワードから導出されたベリファイヤ(v)を格納し、そのため、サーバーはユーザーのパスワードを格納しないが、それでも、ユーザーのパスワードを使用してクライアントを検証するように動作し得る。図示した実施形態のクラスタの実施態様では、各ノードはクラスタパスワード(例えば、それは、前述のような様々な手段によって投入され得る)を知っており、従って、ベリファイヤ(v)を、SRP−6aプロトコルでユーザーのパスワードの曖昧化されたバージョンを格納するために使用する必要がない。それ故、図3に示す相互認証プロトコルは、各認証試行(例えば、プロセス302および303)で、ソルト(s)が生成されてベリファイヤ(v)が計算される(例えば、クラスタに参加しようとしているノードを一意にまたは実質的に一意に識別する、クラスタノード名、アドレス、または他の情報が、計算においてユーザー名として利用され得る)ように修正されている。各認証試行においてベリファイヤ(v)の計算を必要とし、従って、サーバー環境の大きな需要に対して十分には適さない負荷を処理能力に掛けるが、前述の修正は、クライアント/サーバーモデルでのその単一点(サーバー)の使用ではなく、クラスタの任意のノードによる相互認証プロトコルの使用を容易にする。
図2および図3に関連して前述した実施形態によって提供されるような、クラスタの各ノードがクラスタの任意の他のノードと安全に通信することが可能になる動作は、任意のサイズのクラスタに対して拡張可能であるだけでなく、ノード減少(node attrition)の管理および/または強化されたセキュリティプロトコルを提供するように容易に適合され得ることが理解されるべきである。例えば、前述のプロセスフローによって実施される技術は、定期的なクラスタ鍵のローテーションを提供するために拡張できる。定期的なクラスタ鍵ローテーションの実施形態に従った動作では、ある期間が経過した後、新しいクラスタ鍵がノードによって生成され、他の全てのノードが新しいクラスタ鍵を取得するために再認証させられる。ハッカーまたは他の認可されていないノードが現在のクラスタ鍵を有している場合、そのハッカーまたは他の認可されていないノードは新しいクラスタ鍵を簡単に復号して取得し得るので、新しいクラスタ鍵は、現在のクラスタ鍵を使用して他のノードに配信されないことに留意されたい。かかる定期的なクラスタ鍵ローテーションは、ハッカーまたは他の認可されていないノードがクラスタ鍵を取得または保持した場合に復号できるメッセージの数をできるだけ減らし、それにより強化されたセキュリティを提供する。
前述の定期的なクラスタ鍵ローテーションの概念は、クラスタを離れるノードに関して利用され得、それにより、ノード減少の管理を提供する。クラスタを離れるノードは、クラスタを離れたノードが依然としてクラスタメッセージを復号できる可能性を残す。したがって、クラスタ鍵再生成の実施形態に従った動作では、ノードがクラスタを離れた後、新しいクラスタ鍵がノードによって生成され、他の全てのノードが、その新しいクラスタ鍵を取得するために再認証させられる。クラスタを離れたノードが、クラスタ鍵再生成の実施態様において相互認証ハンドシェイクを盗聴すること、従って、再生成されたクラスタ鍵を引き出すことを防ぐために、新しいクラスタ秘密(例えば、クラスタパスワード)は、クラスタを離れたノードにそれを提供することなく、残りのノードに投入され得る。
強化されたセキュリティを提供するための技術が、クラスタに参加するのを許可されたノードにさらなる制限を加え得る。例えば、許可されたノードの登録簿が維持され得る。クラスタに参加しようと試みる任意のノードは、クラスタに参加するためには、この登録簿内に存在することと、相互認証ハンドシェイクを完了することの両方が必要であり得る。
特定のネットワーク接続された装置が、ある期間(例えば、1時間)内にある回数(例えば、5回)、認証に失敗すると、本明細書の強化されたセキュリティ技術は、相互認証の再試行が許可されるまで、そのネットワーク接続された装置を、ある期間、相互認証プロセスからロックアウトするように動作し得る。クラスタの各ノードは、クラスタに参加しようとしているノードを相互に認証する機能を有しているので、認証失敗のロックアウトの情報は、好ましくは、(例えば、特定のノードが何回認証を試みているかのクラスタ状態を使用して、クラスタ鍵の使用を通して容易になったマルチキャスト通信を使用して、など)クラスタのノード間で共有される。かかる認証失敗ロックアウト技術は、活発な辞書攻撃を防ぐ。
図2および図3に関連して前述した実施形態によって提供されるような、クラスタの各ノードがクラスタの任意の他のノードと安全に通信することを可能にする動作は、ノード減少の管理および/または強化されたセキュリティプロトコルを提供するように容易に適合されるだけでなく、いくつかの異なる環境および/またはシナリオにおける動作を容易にするように簡単に適合され得ることが理解されるべきである。例えば、ノードがクラスタに参加した後、クラスタ鍵でのメッセージの暗号化は、(例えば、制限された処理能力を有するノードが使用される環境において)性能を改善するために選択的に行われ得る。1つのかかる実施形態では、より良い性能で改ざんを防ぐためのいくつかの方法(例えば、デジタル署名アルゴリズムおよび/または他のセキュリティ技術)が次いで採用され得るが、メッセージが極秘資料を含んでいないと見なされる場合、それは暗号化される必要がない。ネットワークが他の手段(例えば、IPSec、または安全に分離されたネットワーク(secure segregated network))によって保護されている環境では、クラスタ鍵を使用した暗号化は完全にオフにされ得る。
本発明およびその利点が詳細に記述されてきたが、添付の特許請求の範囲で定義されるように、本発明の精神および範囲から逸脱することなく、本明細書で、様々な変更、置換、および代替が行われ得ることが理解されるべきである。さらに、本願の範囲は、本明細書に記述されるプロセス、機械、製造、組成物、手段、方法およびステップの特定の実施形態に限定されることを意図していない。当業者であれば、本発明に従って利用され得る本明細書に記載の対応する実施形態と実質的に同じ機能を実行するか、または実質的に同じ結果を達成する、現在存在するか、または後に開発される、プロセス、機械、製造、組成物、手段、方法、もしくはステップを、本発明の開示から容易に理解するであろう。したがって、添付の特許請求の範囲は、かかるプロセス、機械、製造、組成物、手段、方法、またはステップをそれらの範囲に含めることを意図する。

Claims (23)

  1. 以下を含む、安全なマルチキャスト通信機能をクラスタの複数のノードに提供するための方法:
    前記クラスタに参加しようとしているノードと、有効に前記クラスタの部分である任意の単一のノードとの間で相互認証セッションを実行すること、および
    前記相互認証が成功である場合に、前記相互認証セッションに固有の安全な通信チャネルを使用して、前記クラスタに参加しようとしている前記ノードにクラスタ秘密を伝達することであって、前記クラスタ秘密が、前記クラスタに参加しようとしている前記ノードをクラスタノードにし、かつ前記クラスタノードの、有効に前記クラスタの部分である他の全てのノードとの安全な通信を可能にする、クラスタ秘密を伝達すること。
  2. 前記クラスタに参加しようとしている前記ノードが、前記相互認証セッションを、有効に前記クラスタの部分である前記単一のノードのみと実行した後に、クラスタノードになる、請求項1に記載の方法。
  3. 有効に前記クラスタの部分である前記単一のノードが、前記クラスタに参加しようとしている前記ノードのピアノードである、請求項1に記載の方法。
  4. 相互認証セッションを実行することが、
    前記クラスタに参加しようとしている前記ノードおよび前記単一のノードによって別々にセッション鍵を計算することであって、前記セッション鍵が前記相互認証セッションに固有である、別々にセッション鍵を計算すること
    を含む、請求項1に記載の方法。
  5. クラスタ秘密を伝達することが、
    前記セッション鍵を使用して、前記クラスタに参加しようとしている前記ノードと前記単一のノードとの間でクラスタ鍵を伝達すること
    を含む、請求項4に記載の方法。
  6. 相互認証セッションを実行することが、
    前記クラスタに参加しようとしている前記ノードと、前記相互認証セッションを実行している前記クラスタの前記ノードを含む有効に前記クラスタの部分である全てのノードとによって保有されるクラスタ認証情報を使用して、前記相互認証セッションに対して別々にベリファイアを計算すること
    を含む、請求項1に記載の方法。
  7. クラスタ認証情報を使用してベリファイアを計算することが、前記クラスタに参加しようとしている前記ノードを一意に識別する情報をさらに使用する、請求項6に記載の方法。
  8. 前記クラスタ認証情報が、前記クラスタに参加しようとしている前記ノードおよび前記相互認証セッションを実行している前記クラスタの前記ノードの各々に別々に投入されたクラスタパスワードを含む、請求項6に記載の方法。
  9. 相互認証セッションを実行することが、
    前記クラスタに参加しようとしている前記ノードが前記クラスタ内で許可されたノードの登録簿に含まれていると判断すること
    を含む、請求項1に記載の方法。
  10. 前記クラスタ秘密が、対称暗号鍵を含む、請求項1に記載の方法。
  11. 前記クラスタ秘密を再生成すること、および
    有効に前記クラスタの部分である前記ノードの全てに、前記再生成されたクラスタ秘密を取得するために、かかるノードの各々と前記クラスタの別のノードとの間で相互認証セッションを再度実行することを要求すること
    をさらに含む、請求項1に記載の方法。
  12. 前記クラスタ秘密を再生成することが定期的に実行される、請求項11に記載の方法。
  13. 前記クラスタ秘密を再生成することが、ノードが前記クラスタから離れると実行される、請求項11に記載の方法。
  14. クラスタの第1のノードと前記クラスタの第2のノードとの間で相互認証ハンドシェイクを実行すること、
    前記第1のノードと前記第2のノードとの間の前記相互認証ハンドシェイクによって確立された安全な通信チャネルを使用して、前記第1のノードと前記第2のノードとの間でクラスタ鍵を伝達すること、
    前記クラスタの第3のノードと、前記第1のノードおよび第2のノードのうちの一方との間で相互認証ハンドシェイクを実行すること、
    前記第3のノードと前記第1のノードおよび前記第2のノードのうちの前記一方との間の前記相互認証ハンドシェイクによって確立された安全な通信チャネルを使用して、前記第3のノードと前記第1のノードおよび第2のノードのうちの前記一方との間でクラスタ鍵を伝達すること、ならびに
    前記クラスタ鍵を使用して、前記第1のノード、前記第2のノード、および前記第3のノードの間で安全なクラスタ通信を実行すること
    を含む方法。
  15. 前記第1のノードと前記第2のノードとの間で前記相互認証ハンドシェイクを実行することが、前記第1のノードおよび前記第2のノードによって別々に第1のセッション鍵を計算することを含み、前記第1のノードと前記第2のノードとの間の前記相互認証ハンドシェイクによって確立された前記安全な通信チャネルが、前記第1のセッション鍵を使用して保護され、かつ、前記第3のノードと、前記第1のノードおよび前記第2のノードのうちの前記一方との間で前記相互認証ハンドシェイクを実行することが、前記第3のノードならびに、前記第1のノードおよび前記第2のノードのうちの前記一方によって別々に第2のセッション鍵を計算することを含み、前記第3のノードと、前記第1のノードおよび前記第2のノードのうちの前記一方との間の前記相互認証ハンドシェイクによって確立された前記安全な通信チャネルが、前記第2のセッション鍵を使用して保護される、請求項14に記載の方法。
  16. 前記安全なクラスタ通信が、ユニキャスト通信およびマルチキャスト通信を含む、請求項14に記載の方法。
  17. 前記第1のノードと前記第2のノードとの間で相互認証セッションを実行することが、
    前記第1のノードおよび前記第2のノードによって保有されるクラスタパスワードを使用して第1のベリファイアを計算することであって、前記クラスタパスワードが前記第1のノードおよび前記第2のノードの各々に別々に投入される、第1のベリファイアを計算すること
    を含み、かつ、前記第3のノードと、前記第1のノードおよび第2のノードのうちの一方との間で相互認証セッションを実行することが、
    前記第3のノードならびに、前記第1のノードおよび第2のノードのうちの前記一方によって保有される前記クラスタパスワードを使用して第2のベリファイアを計算することであって、前記クラスタパスワードが前記第3のノードならびに前記第1のノードおよび第2のノードのうちの前記一方の各々に別々に投入される、第2のベリファイアを計算すること
    を含む、請求項14に記載の方法。
  18. 第1のプロセッサベースのネットワーク接続された装置の動作を制御するコードに従って、複数のノードのクラスタの1つのノードとして動作するように適合された、第1のプロセッサベースのネットワーク接続された装置であって、前記第1のプロセッサベースのネットワーク接続された装置の前記コードが、前記クラスタのノードとして動作する1つまたは複数の他のプロセッサベースのネットワーク接続された装置に対する、前記クラスタの秘密の安全な供給源および前記クラスタの前記秘密の安全な受信者の両方としての前記第1のプロセッサベースのネットワーク接続された装置の動作を提供し、かつ、前記クラスタの前記秘密が前記クラスタの全てのノード間での安全な通信を可能にするように適合されている、第1のプロセッサベースのネットワーク接続された装置
    を備えるシステム。
  19. 前記クラスタの前記秘密が暗号クラスタ鍵を含む、請求項18に記載のシステム。
  20. 前記第1のプロセッサベースのネットワーク接続された装置の、前記クラスタの前記秘密の供給源としての前記動作が、1つまたは複数の他のプロセッサベースのネットワーク接続された装置が、前記第1のプロセッサベースのネットワーク接続された装置のみとの認証を通じて、前記クラスタにノードとして参加するのを容易にし、かつ、前記第1のプロセッサベースのネットワーク接続された装置の、前記クラスタの前記秘密の受信者としての前記動作が、前記クラスタに参加しようとしている前記第1のプロセッサベースのネットワーク接続された装置を、前記1つまたは複数の他のプロセッサベースのネットワーク接続された装置のうちの1つの他のプロセッサベースのネットワーク接続された装置のみとの認証を通じて容易にする、請求項18に記載のシステム。
  21. 前記第1のプロセッサベースのネットワーク接続された装置の前記コードが、前記他のプロセッサベースのネットワーク接続された装置のうちの1つのプロセッサベースのネットワーク接続された装置との相互認証セッションを実行するように適合されていて、相互認証セッションが、前記クラスタ秘密の安全な伝達に対して適合された前記相互認証セッションに固有の安全な通信チャネルを提供する、請求項18に記載のシステム。
  22. 前記第1のプロセッサベースのネットワーク接続された装置が前記クラスタに参加しようとしている場合に、前記相互認証セッションが、前記第1のプロセッサベースのネットワーク接続された装置を有効に前記クラスタの部分であるノードとして認証し、前記安全な通信チャネルによって伝達された前記クラスタ秘密を受信するように動作可能であり、かつ、前記第1のプロセッサベースのネットワーク接続された装置が、前記1つまたは複数の他のプロセッサベースのネットワーク接続された装置のうちの前記1つのプロセッサベースのネットワーク接続された装置による前記クラスタの参加を交渉している場合に、前記相互認証セッションが、前記1つまたは複数の他のプロセッサベースのネットワーク接続された装置のうちの前記1つのプロセッサベースのネットワーク接続された装置を認証し、前記1つまたは複数の他のノードのうちの前記1つのプロセッサベースのネットワーク接続された装置が成功裏に認証された場合に前記安全な通信チャネルによって前記クラスタ秘密を伝達するように動作可能である、請求項21に記載のシステム。
  23. 前記第1のプロセッサベースのネットワーク接続された装置が、複数のノードの前記クラスタの部分として、自身の前記動作を制御するコードに従って動作するように適合された複数のプロセッサベースのネットワーク接続された装置のうちの1つであり、前記複数のうちの各プロセッサベースのネットワーク接続された装置の前記コードが、前記クラスタの秘密の安全な供給源および前記クラスタの前記秘密の安全な受信者の両方としての前記それぞれのプロセッサベースのネットワーク接続された装置の動作を提供し、かつ、前記複数のうちの各プロセッサベースのネットワーク接続された装置が、前記複数のうちの単一の他のプロセッサベースのネットワーク接続された装置と認証する自身のコードの動作によって前記クラスタに参加し、前記複数のうちの他の全てのプロセッサベースのネットワーク接続された装置と安全に通信するように適合されている、請求項18に記載のシステム。
JP2014527143A 2011-08-25 2012-04-17 安全なマルチキャストクラスタ内通信を提供するためのシステムおよび方法 Pending JP2014529238A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/218,186 US8719571B2 (en) 2011-08-25 2011-08-25 Systems and methods for providing secure multicast intra-cluster communication
US13/218,186 2011-08-25
PCT/US2012/033904 WO2013028235A2 (en) 2011-08-25 2012-04-17 Systems and methods for providing secure multicast intra-cluster communication

Publications (1)

Publication Number Publication Date
JP2014529238A true JP2014529238A (ja) 2014-10-30

Family

ID=47745405

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014527143A Pending JP2014529238A (ja) 2011-08-25 2012-04-17 安全なマルチキャストクラスタ内通信を提供するためのシステムおよび方法

Country Status (5)

Country Link
US (2) US8719571B2 (ja)
EP (1) EP2748967A4 (ja)
JP (1) JP2014529238A (ja)
CN (1) CN103959735B (ja)
WO (1) WO2013028235A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014186553A (ja) * 2013-03-22 2014-10-02 Digital Electronics Corp 通信機器
JP2021527286A (ja) * 2018-06-08 2021-10-11 ウェカ.アイオー リミテッド 分散型ファイルシステムのための暗号化

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8843737B2 (en) * 2011-07-24 2014-09-23 Telefonaktiebolaget L M Ericsson (Publ) Enhanced approach for transmission control protocol authentication option (TCP-AO) with key management protocols (KMPS)
US8959010B1 (en) * 2011-12-08 2015-02-17 Cadence Design Systems, Inc. Emulation system with improved reliability of interconnect and a method for programming such interconnect
US8955097B2 (en) * 2011-12-13 2015-02-10 Mcafee, Inc. Timing management in a large firewall cluster
US8880887B2 (en) * 2012-04-06 2014-11-04 Stt Llc. Systems, methods, and computer-readable media for secure digital communications and networks
NZ607298A (en) * 2013-02-19 2014-08-29 Allied Telesis Holdings Kk Improvements in and relating to network communications
CN103259786A (zh) * 2013-04-16 2013-08-21 浪潮电子信息产业股份有限公司 一种实现hpc集群安全的方法
US9531542B2 (en) 2014-09-19 2016-12-27 Bank Of America Corporation Secure remote password
CN104735087B (zh) * 2015-04-16 2020-11-20 国家电网公司 一种基于公钥算法和SSL协议的多集群Hadoop系统安全优化方法
CN106059986A (zh) * 2015-04-22 2016-10-26 阿里巴巴集团控股有限公司 Ssl会话重用的方法和服务器
CN106161404A (zh) * 2015-04-22 2016-11-23 阿里巴巴集团控股有限公司 Ssl会话重用的方法、服务器和系统
US9935965B2 (en) * 2015-05-14 2018-04-03 International Business Machines Corporation Establishing and using a trust level in mobile phones
CN108028787B (zh) * 2015-09-30 2021-01-12 苹果公司 媒体回放的协调控制
EP3452947A4 (en) * 2016-05-06 2020-04-22 Zerodb, Inc. NUMBER FOR DISTRIBUTED STORAGE AND PROCESSING
US10547527B2 (en) * 2016-10-01 2020-01-28 Intel Corporation Apparatus and methods for implementing cluster-wide operational metrics access for coordinated agile scheduling
US10911538B2 (en) * 2017-04-11 2021-02-02 Fortanix, Inc. Management of and persistent storage for nodes in a secure cluster
KR102042739B1 (ko) * 2017-09-22 2019-11-08 서강대학교산학협력단 블록체인을 이용한 메시지 히스토리 기반의 보안 키를 이용하는 통신 장치 및 방법
US10615984B1 (en) * 2017-10-03 2020-04-07 EMC IP Holding Company LLC Enhanced authentication method for Hadoop job containers
US10993110B2 (en) * 2018-07-13 2021-04-27 Nvidia Corp. Connectionless fast method for configuring Wi-Fi on displayless Wi-Fi IoT device
CN109873801B (zh) 2018-12-12 2020-07-24 阿里巴巴集团控股有限公司 在用户和可信计算集群之间建立可信通道的方法、装置、存储介质及计算设备
CN109861980B (zh) 2018-12-29 2020-08-04 阿里巴巴集团控股有限公司 一种建立可信计算集群的方法、装置、存储介质及计算设备
US11522845B2 (en) 2019-11-29 2022-12-06 EMC IP Holding Company LLC Methods and systems for automatically and securely joining an association
US20220414267A1 (en) * 2021-06-28 2022-12-29 Here Global B.V. Method, apparatus, and computer program product for confidential computing
US11914686B2 (en) 2021-10-15 2024-02-27 Pure Storage, Inc. Storage node security statement management in a distributed storage cluster

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748736A (en) * 1996-06-14 1998-05-05 Mittra; Suvo System and method for secure group communications via multicast or broadcast
US6952737B1 (en) 2000-03-03 2005-10-04 Intel Corporation Method and apparatus for accessing remote storage in a distributed storage cluster architecture
US7181017B1 (en) * 2001-03-23 2007-02-20 David Felsher System and method for secure three-party communications
US7068789B2 (en) * 2001-09-19 2006-06-27 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) group security infrastructure and method
US7181620B1 (en) * 2001-11-09 2007-02-20 Cisco Technology, Inc. Method and apparatus providing secure initialization of network devices using a cryptographic key distribution approach
US7120797B2 (en) * 2002-04-24 2006-10-10 Microsoft Corporation Methods for authenticating potential members invited to join a group
EP1535423A2 (en) * 2002-08-28 2005-06-01 Matsushita Electric Industrial Co., Ltd. Key delivery for operating an home network
WO2004023275A2 (en) * 2002-09-05 2004-03-18 Matsushita Electric Industrial Co., Ltd. Group management system, group management device, and member device
GB2400526B (en) * 2003-04-08 2005-12-21 Hewlett Packard Development Co Cryptographic key update management
FR2862835B1 (fr) * 2003-11-24 2006-04-14 Medialive Diffusion securisee et personnalisee de flux audiovisuels par un systeme hybride unicast/multicast
EP1889397A4 (en) * 2005-04-25 2010-03-17 Tecsec Inc PROCESS FOR ENCRYPTION AND OPERATION CONTROL OF LABELED DATA ELEMENTS
US8126145B1 (en) * 2005-05-04 2012-02-28 Marvell International Ltd. Enhanced association for access points
EP1896982B1 (en) * 2005-05-10 2015-01-07 Network Equipment Technologies, Inc. Lan-based uma network controller with aggregated transport
KR100735221B1 (ko) * 2005-08-12 2007-07-03 삼성전자주식회사 컨텐츠를 다수의 단말기에서 재생할 수 있도록 하는 컨텐츠재생 방법 및 이를 이용한 시스템과 단말 장치
US20070056042A1 (en) * 2005-09-08 2007-03-08 Bahman Qawami Mobile memory system for secure storage and delivery of media content
US8046579B2 (en) * 2005-10-04 2011-10-25 Neopost Technologies Secure gateway with redundent servers
DE502005005713D1 (de) * 2005-12-01 2008-11-27 Bravis Gmbh Verfahren zum Ändern eines Gruppenschlüssels in einer Gruppe von Netzelementen in einem Netz
US8239671B2 (en) * 2006-04-20 2012-08-07 Toshiba America Research, Inc. Channel binding mechanism based on parameter binding in key derivation
US7913084B2 (en) * 2006-05-26 2011-03-22 Microsoft Corporation Policy driven, credential delegation for single sign on and secure access to network resources
US8140843B2 (en) * 2006-07-07 2012-03-20 Sandisk Technologies Inc. Content control method using certificate chains
JP5003118B2 (ja) 2006-11-27 2012-08-15 横河電機株式会社 制御システム及びマルチキャスト通信方法
US20090164782A1 (en) 2007-12-19 2009-06-25 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for authentication of service application processes in high availability clusters
KR20100102026A (ko) * 2009-03-10 2010-09-20 주식회사 케이티 사용자 단말 인증 방법과 그 인증 서버 및 사용자 단말
US20100250922A1 (en) * 2009-03-31 2010-09-30 Motorola, Inc. Method and system for propagating trust in an ad hoc wireless communication network
KR101684753B1 (ko) * 2010-02-09 2016-12-08 인터디지탈 패튼 홀딩스, 인크 신뢰적인 연합 아이덴티티를 위한 방법 및 장치
US8505083B2 (en) * 2010-09-30 2013-08-06 Microsoft Corporation Remote resources single sign on

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014186553A (ja) * 2013-03-22 2014-10-02 Digital Electronics Corp 通信機器
JP2021527286A (ja) * 2018-06-08 2021-10-11 ウェカ.アイオー リミテッド 分散型ファイルシステムのための暗号化
JP7238111B2 (ja) 2018-06-08 2023-03-13 ウェカ.アイオー リミテッド 分散型ファイルシステムのための暗号化
US11914736B2 (en) 2018-06-08 2024-02-27 Weka.IO Ltd. Encryption for a distributed filesystem

Also Published As

Publication number Publication date
US8719571B2 (en) 2014-05-06
WO2013028235A2 (en) 2013-02-28
CN103959735B (zh) 2017-09-29
US20130054966A1 (en) 2013-02-28
WO2013028235A3 (en) 2014-05-01
US9043598B2 (en) 2015-05-26
EP2748967A4 (en) 2015-07-22
CN103959735A (zh) 2014-07-30
EP2748967A2 (en) 2014-07-02
US20140245390A1 (en) 2014-08-28

Similar Documents

Publication Publication Date Title
US8719571B2 (en) Systems and methods for providing secure multicast intra-cluster communication
US11477037B2 (en) Providing forward secrecy in a terminating SSL/TLS connection proxy using ephemeral Diffie-Hellman key exchange
Shin et al. A security framework for MQTT
JP4527358B2 (ja) 鍵供託を使用しない、認証された個別暗号システム
Li et al. iTLS: Lightweight transport-layer security protocol for IoT with minimal latency and perfect forward secrecy
US20170201382A1 (en) Secure Endpoint Devices
JP2019514269A (ja) 身元情報ベース鍵素材及び証明書の配布のためのシステム及び方法
US20130179679A1 (en) Methods And Apparatuses For Secure Information Sharing In Social Networks Using Randomly-Generated Keys
US20100235625A1 (en) Techniques and architectures for preventing sybil attacks
CN112637136A (zh) 加密通信方法及系统
WO2002054644A1 (en) Security breach management
KR101704540B1 (ko) M2m 환경의 다중 디바이스 데이터 공유를 위한 그룹키 관리 방법
EP3216163B1 (en) Providing forward secrecy in a terminating ssl/tls connection proxy using ephemeral diffie-hellman key exchange
Lu et al. Robust and flexible tunnel management for secure private cloud
KR20080005344A (ko) 인증서버가 사용자단말기를 인증하는 시스템
KR20070035342A (ko) 패스워드 기반의 경량화된 상호 인증 방법
Granzer et al. Securing IP backbones in building automation networks
CN113918971A (zh) 基于区块链的消息传输方法、装置、设备及可读存储介质
JP7213366B2 (ja) 分散システムにおける多方向信頼形成
Shaikh et al. A survey on SSL packet structure
CN113014376A (zh) 一种用户与服务器之间安全认证的方法
Faisal et al. Graphene: a secure cloud communication architecture
WO2023151427A1 (zh) 量子密钥传输方法、装置及系统
Faisal Design and Implementation of a Secure Communication Architecture
Adibi A multilayer non‐repudiation system: a Suite‐B approach