(57)【要約】      （修正有）【課題】安全で中断耐性のあるネットワーク水中通信システムを提供する。【解決手段】ネットワーク水中通信方法は、宛先デバイスに送信されるべき複数のデータパケットを記憶することと、ネットワーク通信インターフェースを介したデータ通信が第１のネットワークノードに利用可能となったことを決定することと、第１のネットワークノードがアクセス許可局によって無効にされていない有効なセキュリティ証明書を有していると決定することとを含む。加えて、第１のネットワークノードが有効なセキュリティ証明書を有していると決定すると、記憶された複数のデータパケットをネットワーク通信インターフェースを介して第１のネットワークノードに送信することを含む。第１のネットワークノードは、記憶／伝達／転送データメッセージング技術を用いて、複数のデータパケットを宛先デバイスに向かって送信する。【選択図】図１０
2019134401.tif 000002
【特許請求の範囲】
【請求項１】
水中通信システム（１１０）であって、
ネットワーク通信インターフェース（１４５）と、
一又は複数のコンピュータプロセッサ（１７０）と、
メモリ（１５０）であって、前記一又は複数のコンピュータプロセッサ（１７０）の動作によって実行されると、
宛先デバイス（７４０）に送信されるべき複数のデータパケットを記憶すること（１０１０）、
前記ネットワーク通信インターフェース（１４５）を介したデータ通信が第１のネットワークノード（７１５）に利用可能となったことを決定すること（１０１５）、
前記第１のネットワークノード（７１５）が、アクセス許可局（３０８）によって無効にされていない有効なセキュリティ証明書を有していると決定すること（１０２０）、及び
前記第１のネットワークノード（７１５）が前記有効なセキュリティ証明書を有していると決定する（１０２５）と、記憶された前記複数のデータパケットを前記ネットワーク通信インターフェース（１４５）を介して前記第１のネットワークノード（７１５）に送信することであって、前記第１のネットワークノード（７１５）が、記憶／伝達／転送データメッセージング技術を用いて、前記複数のデータパケットを前記宛先デバイス（７４０）に向かって送信するように構成される、送信すること
を含む動作（１０００）を実行する、コンピュータプログラムコード（１２０）を含むメモリ（１５０）と
を含む水中通信システム（１１０）。
【請求項２】
前記第１のネットワークノード（７１５）がアクセス許可局（３０８）によって無効にされていない有効なセキュリティ証明書を有していると決定すること（１０２５）が、
前記第１のネットワークノードに対応する識別子が失効リスト（２１２）内の識別子に一致するかどうかを判定することであって、前記失効リスト（２１２）が、公開マスターキー（２０８）及び秘密復号キー（２１０）のうちの少なくとも１つへの無効アクセスを有するネットワークノードの複数の識別子を含む、判定すること
を更に含む、請求項１に記載の水中通信システム（１１０）。
【請求項３】
前記動作が、
第２の宛先デバイスに送信されるべき第２の複数のデータパケットを記憶すること（１０１０）と、
前記ネットワーク通信インターフェース（１４５）を介した前記データ通信が、前記第２の複数のデータパケットの送信のために、前記第１のネットワークノード（７１５）に利用可能であると決定すること（１０１５）と、
前記第１のネットワークノード（７１５）が、アクセス許可局（３０８）によって無効にされていない前記有効なセキュリティ証明書をなおも有しているかどうかを判定すること（１０２０）と
を更に含む、請求項１又は２に記載の水中通信システム（１１０）。
【請求項４】
前記第１のネットワークノード（７１５）がアクセス拒否局（３１２）によって無効にされていない前記有効なセキュリティ証明書をなおも有していると決定すること（１０２０）が、
前記第１のネットワークノード（７１５）に対応する識別子が失効リスト（２１２）内の前記識別子に一致すると決定すると、前記第１のネットワークノード（７１５）が有効なセキュリティ証明書を有していないと決定することと、
結果として、記憶された前記複数のデータパケットの前記第１のネットワークノード（７１５）への送信を防止することと
を更に含む、請求項１から３のいずれか一項に記載の水中通信システム（１１０）。
【請求項５】
アクセス拒否局（３１２）が、
前記水中通信システム（１１０）に関連付けられた識別子、アドレス及び識別証明を受信することと、
前記水中通信システム（１１０）に固有である秘密復号キー（２１０）を生成することと、
公開マスターキー（２０８）又は前記秘密復号キー（２１０）への無効アクセスを検証する際に使用するための前記公開マスターキー（２０８）及びアクセス拒否マスターキー（２１４）を生成することと
を含む動作を実行するよう更に構成され、
前記秘密復号キー（２１０）、前記公開マスターキー（２０８）及び前記アクセス拒否マスターキー（２１４）が、前記水中通信システム（１１０）に記憶されるように構成されている、請求項１から４のいずれか一項に記載の水中通信システム（１１０）。
【請求項６】
前記動作が、
前記第１のネットワークノード（７１５）が前記有効なセキュリティ証明書を有していると決定すると、
公開マスターキー（２０８）、有効期間、及び前記宛先デバイスの識別子をキー生成モジュール（２１８）への入力として渡すことによって、公開暗号キーの一時コピーを生成することと、
前記公開暗号キーの生成された前記一時コピーを使用して、前記複数のデータパケットを暗号化することと
を更に含む、請求項１から５のいずれか一項に記載の水中通信システム（１１０）。
【請求項７】
前記ネットワーク通信インターフェース（１４５）が、音響データ送信デバイスを更に含む、請求項１から６のいずれか一項に記載の水中通信システム（１１０）。
【請求項８】
記憶された前記複数のデータパケットを前記ネットワーク通信インターフェース（１４５）を介して、前記複数のデータパケットを前記宛先デバイス（７４０）に向かって送信するために、記憶／伝達／転送データメッセージング技術を用いる前記第１のネットワークノード（７１５）に送信することが、
前記複数のデータパケットのうちの第１のパケットについて、再送条件が満たされていると決定することと、
前記複数のデータパケットのうちの前記第１のパケットを、前記ネットワーク通信インターフェース（１４５）を介して前記第１のネットワークノード（７１５）に再送することと
を更に含む、請求項１から７のいずれか一項に記載の水中通信システム（１１０）。
【請求項９】
前記記憶／伝達／転送データメッセージング技術が、遅延及び中断耐性ネットワーキング（ＤＴＮ）プロトコルを更に含み、前記ＤＴＮプロトコルが、一又は複数の下位レイヤネットワーキングプロトコルヘッダの上にバンドルプロトコルレイヤをオーバーレイすることを含み、前記一又は複数の下位レイヤネットワーキングプロトコルが、インターネットプロトコル（ＩＰ）レイヤを更に含む、請求項１から８のいずれか一項に記載の水中通信システム（１１０）。
【請求項１０】
少なくとも１つのネットワークノードが水中輸送体（７１０）を含む水中通信ネットワーク（７００）内で使用するためのネットワークデバイス（１１０）であって、
第１のネットワーク通信インターフェース（１４５）と、
第２のネットワーク通信インターフェース（１４５）と、
一又は複数のコンピュータプロセッサ（１７０）と、
メモリ（１５０）であって、前記一又は複数のコンピュータプロセッサの動作によって実行されると、
前記第１のネットワーク通信インターフェース（１４５）を介して、第１のネットワークノードから、宛先デバイス（７４０）に送信されるべき複数のデータパケットを受信すること（１１１０）、
前記複数のデータパケットを記憶することと（１１１５）、
前記ネットワーク通信インターフェース（１４５）を介したデータ通信が第２のネットワークノードに利用可能となったことを決定すること（１１２０）、
前記第２のネットワークノードがアクセス許可局（３０８）によって無効にされていない有効なセキュリティ証明書を有していると決定すること（１１２５）、及び
前記第２のネットワークノードが前記有効なセキュリティ証明書を有していると決定する（１１３０）と、記憶された前記複数のデータパケットを、前記第２のネットワーク通信インターフェース（１４５）を介して前記第２のネットワークノードに送信することと
を含む動作（１１００）を実行するコンピュータプログラムコード（１２０）を含むメモリ（１５０）と
を含むネットワークデバイス（１１０）。
【請求項１１】
前記第１のネットワーク通信インターフェース（１４５）が、水中輸送体（７１０）に音響伝達を送信し、かつ前記水中輸送体（７１０）から音響伝達を受信するための音響トランシーバ（８４０）を含む、請求項１０に記載のネットワークデバイス（１１０）。
【請求項１２】
前記第２のネットワーク通信インターフェースが、衛星及び空中輸送体（８１０）のうちの少なくとも１つに無線信号を送信し、かつ前記衛星及び空中輸送体（８１０）のうちの少なくとも１つから無線信号を受信するための無線信号トランシーバ（８５０）を含む、請求項１０又は１１に記載のネットワークデバイス（１１０）。
【請求項１３】
前記動作が、
前記第１のネットワーク通信インターフェース（１４５）を介して、前記第１のネットワークノードから、前記宛先デバイス（７４０）に送信されるべき第２の複数のデータパケットを受信することと、
前記第２の複数のデータパケットを記憶することと、
前記第２の複数のデータパケットを記憶した後に、前記ネットワーク通信インターフェース（１４５）を介した前記データ通信が前記第２のネットワークノードに利用可能となったことを決定することと、
前記第２のネットワークノードが、前記アクセス許可局（３０８）によって無効にされていない前記有効なセキュリティ証明書をなおも有しているかどうかを判定することであって、前記第１のネットワークノードに対応する識別子が失効リスト（２１２）内の識別子に一致するかどうかを判定することを含む、判定することと、
前記第２のネットワークノードに対応する前記識別子が前記失効リスト（２１２）内の前記識別子に一致すると決定すると、前記第２のネットワークノードが有効なセキュリティ証明書を有していないと決定することと、
結果として、記憶された前記複数のデータパケットの前記第２のネットワークノードへの送信を防止することと
を更に含む、請求項１０から１２のいずれか一項に記載のネットワークデバイス（１１０）。
【請求項１４】
前記アクセス許可局（３０８）が、
前記ネットワークデバイス（１１０）に関連付けられた識別子、アドレス及び識別証明を受信することと、
前記ネットワークデバイス（１１０）に固有である秘密復号キー（２１０）を生成することと、
公開マスターキー（２０８）又は前記秘密復号キー（２１０）への無効アクセスを検証する際に使用するための前記公開マスターキー（２０８）及びアクセス拒否マスターキー（２１４）を生成することと
を含む動作を実行するよう更に構成され、
前記秘密復号キー（２１０）、前記公開マスターキー（２０８）及び前記アクセス拒否マスターキー（２１４）が、前記ネットワークデバイス（１１０）に記憶されるように構成されている、請求項１０から１３のいずれか一項に記載のネットワークデバイス（１１０）。
【請求項１５】
水中通信システム（１１０）であって、
ネットワーク通信インターフェース（１４５）と、
一又は複数のコンピュータプロセッサ（１７０）と、
メモリであって、前記一又は複数のコンピュータプロセッサ（１７０）の動作によって実行されると、
公開キー配信ネットワーク（ＰＫＤＮ）と共にアイデンティティベースの暗号化（ＩＤＢＣ）を使用することによって、第２のネットワークデバイスが許可されたネットワークデバイスであると決定する（９１０）こと、並びに
前記第２のネットワークデバイスが前記許可されたネットワークデバイスであると決定する（９１５）と、遅延及び中断耐性ネットワーキング（ＤＴＮ）ネットワークプロトコルの使用によって、前記ネットワーク通信インターフェース（１４５）を介して、宛先デバイス（７４０）に送信されるべき複数のデータパケットを前記第２のネットワークデバイスに送信すること
を含む動作（９００）を実行するコンピュータプログラムコード（１２０）を含むメモリと
を含む水中通信システム（１１０）。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、水中通信に関し、より具体的には、安全で中断耐性のあるネットワーク水中通信を提供するための技術に関する。
【背景技術】
【０００２】
地表の７０％を覆っているにもかかわらず、海底環境についてはほとんど知られてない。環境のほぼ不浸透性の通信媒体と相当な圧力により、海中情報へのアクセスは困難な課題となる。それにもかかわらず、海底音響通信システムは、海底環境についての広範な情報を提供するためにすぐに使用される可能性がある。しかしながら、従来の解決策では、水中輸送体のための安全で信頼できるネットワーク通信が実現されない。例えば、ＴＣＰ／ＩＰのような通信プロトコルは、状況によっては信頼性があり安全なネットワーク通信を提供できるが、これらの技術は、水中通信には不適当であることが多い。一例として、ＴＣＰ／ＩＰのような通信システムは、ポイントツーポイント通信リンク内の全てのホップが同時にアクティブであることを要求するが、水中通信システムのためのホップは、断続的な接続性を経験する可能性が多い。
【０００３】
更に、水中輸送体用の通信のような多くの環境内では、データ送信の著しい遅延及び中断が一般的である。これらの環境では、データの送信が成功する前に事前の外部通信（例えば、暗号キーの交換）が必要とされるときに、データがデータソースから宛先に送信されるのが、更に遅延する。暗号キー配布のための従来の技術は通常、ソースが宛先にデータを安全に送信することができる前に少なくとも１回の通信を必要とするので、これらの技術は、データ送信へのアクセスが非常に断続的である水中通信ネットワークには適さないことがある。
【発明の概要】
【０００４】
本発明の一実施例によれば、水中通信システムは、ネットワーク通信インターフェース、一又は複数のコンピュータプロセッサ、及びメモリであって、一又は複数のコンピュータプロセッサの動作によって実行されると、動作を実行するコンピュータプログラムコードを含むメモリとを含む。動作は、宛先デバイスに送信されるべき複数のデータパケットを記憶することを含む。動作はまた、ネットワーク通信インターフェースを介したデータ通信が第１のネットワークノードに利用可能となったことを決定することを含む。加えて、動作は、第１のネットワークノードがアクセス許可局によって無効にされていない有効なセキュリティ証明書を有していると決定することを含む。動作は、第１のネットワークノードが有効なセキュリティ証明書を有していると決定すると、記憶された複数のデータパケットをネットワーク通信インターフェースを介して第１のネットワークノードに送信することであって、第１のネットワークノードが、記憶／伝達／転送データメッセージング技術を用いて、複数のデータパケットを宛先デバイスに向かって送信するように構成される、送信すること更に含む。
【０００５】
一態様では、上記任意の実施例と組み合わせて、第１のネットワークノードがアクセス許可局によって無効にされていない有効なセキュリティ証明書を有していると決定することは、第１のネットワークノードに対応する識別子が失効リスト内の識別子に一致するかどうかを判定することであって、失効リストが、公開マスターキー及び秘密復号キーのうちの少なくとも１つへの無効アクセスを有するネットワークノードの複数の識別子を含む、判定すること
を更に含む。
【０００６】
一態様では、上記任意の実施例と組み合わせて、動作は、第２の宛先デバイスに送信されるべき第２の複数のデータパケットを記憶することと、ネットワーク通信インターフェースを介したデータ通信が、第２の複数のデータパケットの送信のために、第１のネットワークノードに利用可能であると決定することと、第１のネットワークノードが、アクセス許可局によって無効にされていない有効なセキュリティ証明書をなおも有しているかどうかを判定することとを更に含む。
【０００７】
一態様では、上記任意の実施例と組み合わせて、第１のネットワークノードがアクセス許可局によって無効にされていない有効なセキュリティ証明書を有していると決定することが、第１のネットワークノードが有効なセキュリティ証明書を有していないと決定することと、結果として、記憶された複数のデータパケットの第１のネットワークノードへの送信を防止することとを更に含む。
【０００８】
一態様では、上記任意の実施例と組み合わせて、アクセス拒否局は、水中通信システムに関連付けられた識別子、アドレス及び識別証明を受信することと、水中通信システムに固有である秘密復号キーを生成することと、公開マスターキー又は秘密復号キーへの無効アクセスを検証する際に使用するための公開マスターキー及びアクセス拒否マスターキーを生成することとを含む動作を実行するよう更に構成され、秘密復号キー、公開マスターキー及びアクセス拒否マスターキーが、水中通信システムに記憶されるように構成されている。
【０００９】
一態様では、上記任意の実施例と組み合わせて、アクセス拒否局により実行される動作は、公開マスターキー又は秘密復号キーへの無効アクセスを有する少なくとも１つのメッセージ受信者を示す取消メッセージを水中通信システムに送信することを更に含む。
【００１０】
一態様では、上記任意の実施例と組み合わせて、コンピュータプログラムコードの実行によって更に行われる動作は、アクセス拒否マスターキーに少なくとも部分的に基づいて、失効メッセージの有効性を受信及び検証することと、失効メッセージの有効性の検証に応答して、少なくとも１人のメッセージ受信者の識別子を含むように失効リストを更新することとを更に含む。
【００１１】
一態様では、上記任意の実施例と組み合わせて、動作は、第１のネットワークノードが有効なセキュリティ証明書を有すると決定すると、公開マスターキー、有効期間、及び宛先デバイスの識別子をキー生成モジュールへの入力として渡すことによって、公開暗号キーの一時コピーを生成することと、公開暗号キーの生成された一時コピーを使用して、複数のデータパケットを暗号化することとを更に含む。
【００１２】
一態様では、上記任意の実施例と組み合わせて、ネットワーク通信インターフェースは、音響データ送信デバイスを更に含む。
【００１３】
一態様では、上記任意の実施例と組み合わせて、記憶された複数のデータパケットをネットワーク通信インターフェースを介して、複数のデータパケットを宛先デバイスに向かって送信するために記憶／伝達／転送データメッセージング技術を用いる第１のネットワークノードに送信することは、複数のデータパケットのうちの第１のパケットについて、再送条件が満たされていると決定することと、第１のパケットを、ネットワーク通信インターフェースを介して第１のネットワークノードに再送することとを更に含む。
【００１４】
一態様では、上記任意の実施例と組み合わせて、再送条件が、（ｉ）上流ネットワークノードでエラーが発生したと決定すること、及び（ｉｉ）第１のネットワークノードが第１のデータパケットの受け入れを拒否することのうちの少なくとも１つを含む。
【００１５】
一態様では、上記任意の実施例と組み合わせて、記憶／伝達／転送データメッセージング技術が、遅延及び中断耐性ネットワーキング（ＤＴＮ）プロトコルを更に含み、ＤＴＮプロトコルが、一又は複数の下位レイヤネットワーキングプロトコルヘッダの上にバンドルプロトコルレイヤをオーバーレイすることを含み、一又は複数の下位レイヤネットワーキングプロトコルが、インターネットプロトコル（ＩＰ）レイヤを更に含む。
【００１６】
一態様では、上記任意の実施例と組み合わせて、バンドルプロトコルレイヤは、（ｉ）一又は複数のＤＴＮブロックを含むバンドルヘッダと（ｉｉ）アプリケーションデータとを更に含む。
【００１７】
一態様では、上記任意の実施例と組み合わせて、アプリケーションデータは、ソースアプリケーションによって提供され、ペイロードデータを処理する方法を記述する制御情報を更に含む。
【００１８】
別の実施例は、少なくとも１つのネットワークノードが水中輸送体を含む水中通信ネットワーク内で使用するためのネットワークデバイスであって、第１のネットワーク通信インターフェース、第２のネットワーク通信インターフェース、一又は複数のコンピュータプロセッサ、及びメモリであって、一又は複数のコンピュータプロセッサの動作によって実行されると、動作を実行するコンピュータプログラムコードを含むメモリとを含む、ネットワークデバイスを提供する。動作は、第１のネットワーク通信インターフェースを介して、第１のネットワークノードから、宛先デバイスに送信されるべき複数のデータパケットを受信することを含む。動作は、複数のデータパケットを記憶することと、ネットワーク通信インターフェースを介したデータ通信が第２のネットワークノードに利用可能となったことを決定することとを更に含む。加えて、動作は、第２のネットワークノードがアクセス許可局によって無効にされていない有効なセキュリティ証明書を有していると決定することと、第２のネットワークノードが有効なセキュリティ証明書を有していると決定すると、記憶された複数のデータパケットを、第２のネットワーク通信インターフェースを介して第２のネットワークノードに送信することとを含む。
【００１９】
一態様では、上記任意の実施例と組み合わせて、第１のネットワーク通信インターフェースは、水中輸送体に音響伝達を送信し、かつ水中輸送体から音響伝達を受信するための音響トランシーバを含む。
【００２０】
一態様では、上記任意の実施例と組み合わせて、第２のネットワーク通信インターフェースは、衛星及び空中輸送体のうちの少なくとも１つに無線信号を送信し、かつ衛星及び空中輸送体のうちの少なくとも１つから無線信号を受信するための無線信号トランシーバを含む。
【００２１】
一態様では、上記任意の実施例と組み合わせて、動作は、第１のネットワーク通信インターフェースを介して、第１のネットワークノードから、宛先デバイスに送信されるべき第２の複数のデータパケットを受信することと、第２の複数のデータパケットを記憶することと、第２の複数のデータパケットを記憶した後に、ネットワーク通信インターフェースを介したデータ通信が第２のネットワークノードに利用可能となったことを決定することと、第２のネットワークノードが、アクセス許可局によって無効にされていない有効なセキュリティ証明書をなおも有しているかどうかを判定することであって、第１のネットワークノードに対応する識別子が失効リスト内の識別子に一致するかどうかを判定することを含む、判定することと、第２のネットワークノードに対応する識別子が失効リスト内の識別子に一致すると決定すると、第２のネットワークノードが有効なセキュリティ証明書を有していないと決定することと、結果として、記憶された複数のデータパケットの第２のネットワークノードへの送信を防止することとを更に含む。
【００２２】
一態様では、上記任意の実施例と組み合わせて、アクセス許可局は、ネットワークデバイスに関連付けられた識別子、アドレス及び識別証明を受信することと、ネットワークデバイスに固有である秘密復号キーを生成することと、公開マスターキー又は秘密復号キーへの無効アクセスを検証する際に使用するための公開マスターキー及びアクセス拒否マスターキーを生成することとを含む動作を実行するよう更に構成され、秘密復号キー、公開マスターキー及びアクセス拒否マスターキーが、水中通信システムに記憶されるように構成されている。
【００２３】
更に別の実施例は、ネットワーク通信インターフェース、一又は複数のコンピュータプロセッサ、及びメモリであって、一又は複数のコンピュータプロセッサの動作によって実行されると、動作を実行するコンピュータプログラムコードを含むメモリとを含む水中通信システムを提供する。動作は、公開キー配信ネットワーク（ＰＫＤＮ）と共にアイデンティティベースの暗号化（ＩＤＢＣ）を使用することによって、第２のネットワークデバイスが許可されたネットワークデバイスであると決定すること、並びに第２のネットワークデバイスが許可されたネットワークデバイスであると決定すると、遅延及び中断耐性ネットワーキング（ＤＴＮ）ネットワークプロトコルの使用によって、ネットワーク通信インターフェースを介して、宛先デバイスに送信されるべき複数のデータパケットを第２のネットワークデバイスに送信することを含む。
【図面の簡単な説明】
【００２４】
【図１】本明細書に記載の一実施例による、安全な通信構成要素を用いて構成される水中輸送体を示すブロック図である。
【図２】本明細書に記載の一実施例による、図１に示す安全な輸送体通信システムの代替図である。
【図３】本明細書に記載の一実施例による、複数の計算デバイスのための通信ネットワークを示すブロック図である。
【図４】本明細書に記載の一実施例による、安全な通信システムを構成するプロセスを示す。
【図５】本明細書に記載の一実施例による、暗号化された機密メッセージを送信するプロセスを示す。
【図６】本明細書に記載の一実施例による、認証済みメッセージを送信するプロセスを示す。
【図７】本明細書に記載の一実施例による、水中輸送体のためのデータ通信ネットワークのネットワークトポロジを示す。
【図８】本明細書に記載の一実施例による、水中輸送体のためのデータ通信ネットワーク内のポイントにおけるネットワーク通信レイヤを示すブロック図である。
【図９】本明細書に記載の一実施例による、データ通信ネットワークにおけるノード間でのデータの送信方法を示すフロー図である。
【図１０】本明細書に記載の一実施例による、データ通信ネットワークにおける水中輸送体からのデータの送信方法を示すフロー図である。
【図１１】本明細書に記載の一実施例による、データ通信ネットワークの中間ノードでのデータの送信方法を示すフロー図である。
【図１２】本明細書に記載の一実施例による、計算システムを示すブロック図である。
【発明を実施するための形態】
【００２５】
一般に、実施例は、水中輸送体のための安全な通信の技術を提供する。水中輸送体を水上ネットワークノード（例えば、地上又は陸上ベースの監視ステーション）に橋渡しする通信ネットワークには多くの課題がある。例えば、水上ネットワークによって通常使用される多くの種類のデータ通信は、水中環境では単純に機能しない。水中輸送体は、音響ベースのデータ伝送を利用することができるが、そのような通信技術は、通常、非常に低い帯域幅（例えば、ＷｉＦｉネットワーク、イーサネットネットワーク、衛星ネットワークなどと比較して）に限定される。更に、音響ベースのデータ通信は、例えば、通信妨害活動中などに、水中輸送体が任意の近くのネットワークノードの通信範囲外に移動すると、サービス中断を経験することがある。そのようなサービス中断は、多くの伝統的なネットワーク通信プロトコル（例えば、ＴＣＰ／ＩＰ）を不適切な又は問題のあるものにすることがある。
【００２６】
そのため、本明細書に記載の実施例は、水中輸送体のための安全なデータ通信の技術を提供する。一実施例は、公開暗号キーを使用して複数のデータパケットを暗号化する水中輸送体上のコンピュータロジックを含む。例えば、公開暗号キーは、公開キー配布ネットワーク（ＰＫＤＮ）によって提供することができるだろう。暗号化されたデータパケットは、次いで、適切なネットワークノードがそれらの宛先に向けて暗号化されたデータパケットを送信するために利用可能になるまで、水中輸送体に記憶することができる。水中輸送体上のロジックは、識別情報に基づく暗号化（ＩＤＢＣ）の使用を通して、第２のネットワークデバイスがデータ通信ネットワーク内の許可されたネットワークデバイスであることを決定することができるだろう。例えば、ロジックは、第２のネットワークデバイスの識別子が失効リスト内の識別子に対応するかどうかを判定することができ、失効リストは、アクセス拒否局から受信した未許可のデバイスの識別子を含む。第２のネットワークデバイスが許可されたネットワークデバイスであると判断すると、記憶／伝達／転送ネットワーキング技術を使用して、ネットワーク通信インターフェースを介して、複数のデータパケットを第２のネットワークデバイスに送信する。例えば、ロジックは、暗号化されたデータパケットを送信するために遅延及び中断耐性ネットワーキング（ＤＴＮ）ネットワークプロトコルを使用することができるだろう。
【００２７】
図１は、本明細書に記載の一実施例による、安全な通信構成要素１２０を用いて構成される水中輸送体を示すブロック図である。図示のように、水中輸送体１００は、安全な通信システム１１０とアプリケーション１５５を含む。安全な通信システム１１０は、ネットワークインターフェース１４５、メモリ１５０、コンピュータプロセッサ１７０、及びセンサデバイス１７５を含む。メモリ１５０は、安全な通信構成要素１２０、オペレーティングシステム１６０、及び記憶されたデータパケット１６５を含む。一般に、アプリケーション１５５は、水中輸送体１００内のコンピュータシステム上で実行されているソフトウェアアプリケーションを表す。一般に、センサデバイス１７５は、カメラデバイス、ソナーデバイス、レーダデバイス、温度デバイス、加速度計デバイスなど（これらに限定されない）を含む実施例を伴う、水中輸送体１００に組み込むのに適した任意のセンサデバイスを表す。例えば、アプリケーション１５５は、水中輸送体１００内の一又は複数のセンサデバイス１７５を使用してデータを収集し、安全な通信システム１１０を使用して、少なくとも収集したデータの表示を含むデータパケットを、一又は複数の宛先デバイス７４０（例えば、地上又は陸上ベースの監視システム）に送信するアプリケーションとすることができるだろう。
【００２８】
一般に、安全な通信構成要素１２０は、データパケットをそれらのそれぞれの宛先に送信するために記憶／伝達／転送／送信技術を使用することができる。すなわち、上述のように、水中輸送体１００はサービス中断を経験する可能性があるので（例えば、水中輸送体１００が任意の近くの通信ノードの範囲外を移動するときに）、ＴＣＰ／ＩＰなどの標準ネットワーキング技術は、水中データ通信での使用に不適切なことがある。更に、ネットワークインターフェース１４５は音響ベースのデータ通信を使用して通信しうるので、ネットワークインターフェース１４５は、比較的小さな帯域幅を有することがあり、それは従来のデータ通信セッションをタイムアウトさせるか、そうでなければ失敗させる可能性がある。
【００２９】
したがって、アプリケーション１５５からデータパケットを受信すると、安全な通信構成要素１２０は、宛先デバイス７４０に向かう後続の送信のためにデータパケットを記憶することができる。例えば、安全な通信構成要素１２０は、送信基準が満たされるまで、例えばデータパケットの十分なバンドルサイズに達するまで、データパケット１６５を記憶することができるだろう。加えて、安全な通信システム１１０がネットワークインターフェース１４５を介したネットワーク接続を失った場合（例えば、水中輸送体１００が任意の隣接するネットワークノードの範囲外に出ると）、安全な通信構成要素１２０は、ネットワーク接続が再び確立されるまで、データパケットを記憶し続けることができるだろう。
【００３０】
ある時点で、安全な通信構成要素１２０は、記憶されたデータパケット１６５の少なくとも一部の送信を決定することができる。例えば、安全なメッセージングモジュール１３０は、隣接するネットワークデバイスが利用可能であり、それらの意図された宛先に向けて記憶されたデータパケット１６５を送信するのに適していると決定することができるだろう。一例として、安全なメッセージングモジュール１３０は、認識された水上輸送体（例えば、無人船など）が安全な通信システム１１０の送信範囲内にあると（例えば、ネットワークインターフェース１４５を介して水上輸送体から確認メッセージを受信することに基づいて）決定することができるだろう。次いで、安全なメッセージングモジュール１３０は、ＩＤＢＣ技術によって、水上輸送体が許可されたネットワークデバイスであるかどうかを判定することができるだろう。例えば、安全なメッセージングモジュール１３０は、水上輸送体に対応する固有の識別子を決定し、その固有の識別子が安全なメッセージングモジュール１３０によって維持される失効リスト上の識別子に対応するかどうかを判定することができるだろう。水上輸送体が失効リスト上のどの識別子にも対応しない場合、安全なメッセージングモジュール１３０は、水上輸送体が意図された宛先に向けてデータパケットを送信するのに使用する許可されたネットワークデバイスであると決定するだろう。
【００３１】
加えて、安全なメッセージングモジュール１３０は、データパケットの指定された宛先のための識別子が失効リスト内の識別子に対応するかどうかを判定することができるだろう。安全なメッセージングモジュール１３０が、宛先デバイスの識別子が失効リスト内の識別子に対応すると決定した場合、安全なメッセージングモジュール１３０は、記憶されているデータパケット１６５の送信を阻止することができるだろう。例えば、安全なメッセージングモジュール１３０は、記憶されているデータパケット１６５を削除し、記憶されているデータパケット１６５が配信されなかったことを示すメッセージを生成（及び場合によっては送信）することができるだろう。
【００３２】
安全なメッセージングモジュール１３０は、公開キー配信ネットワークから受信した公開キーを使用してデータパケット１６５の少なくとも一部（例えば、データパケット１６５のペイロード）を暗号化することができるだろう。ＤＴＮ通信構成要素１４０は、データパケット内の一又は複数の下位レイヤネットワーキングプロトコルヘッダの上にバンドルプロトコルレイヤヘッダを更にオーバーレイすることができるだろう。例えば、安全なメッセージングモジュール１３０は、データパケット内のＩＰレイヤの上にバンドルプロトコルレイヤのヘッダをオーバーレイすることができるだろう。一例では、バンドルプロトコルヘッダは、ＤＴＮプロトコルに従ってフォーマットされる。例えば、バンドルプロトコルレイヤは、（ｉ）一又は複数のＤＴＮブロックを含むバンドルヘッダと、（ｉｉ）ソースアプリケーションによって提供される制御情報を記述し、かつデータパケットのペイロードデータの処理方法を記述するアプリケーションデータとを指定することができるだろう。
【００３３】
次いで、安全な通信構成要素１２０は、指定された宛先への送信のために、バンドルプロトコルヘッダを含むデータパケットをネットワークインターフェース１４５を介して隣接するネットワークデバイスに送信することができるだろう。例えば、水中輸送体カウンター内の安全な通信構成要素１２０は、音響に基づくデータ通信を使用してデータパケットを水上輸送体（例えば船舶）に送信し、次に衛星通信を使用して、データパケットを空中輸送体（例えば、航空機）に送信し、次に無線通信を使用して、データパケットを宛先（例えば、地上ベースの監視センター）に送信することができるだろう。
【００３４】
図２は、本明細書に記載の一例による安全な通信システム１１０の代替図を示す。図示されるように、システム２００は、ネットワークインターフェース１４５のためのネットワークポート２０４に動作可能に結合されたプロセッサ２０２、及びメモリ２０６（例えば、不揮発性記憶媒体）を含む。ネットワークポートは、エンドポイントコンピュータへのデータパケットの送信を可能にするために通信ネットワークに接続されてもよい。例えば、ネットワークポート２０４は、水中環境でデータパケットを送信するための音響トランシーバを表すことができるだろう。
【００３５】
図示されたように、メモリ２０６は、公開暗号キーを作成するのに使用する公開マスターキー２０８、暗号化されたメッセージを復号するのに使用する秘密復号キー２１０、公開マスターキー又は秘密復号キーへのアクセスを無効にしたメッセージ受信者の識別子を含む無効リスト２１２、その無効化されたアクセスを有効にするためのアクセス拒否マスターキー２１４を記憶する。メモリはまた、安全なメッセージングモジュール１３０及びキー生成モジュール２１８を記憶する。
【００３６】
一般に、アクセス許可局は、それぞれのシステム２００の識別子、アドレス、及び識別証明など、それぞれのシステム２００に関連付けられた資格証明を受信するように構成されたアクセス許可モジュールを実行しうる。それに基づいて、アクセス許可モジュールは、それぞれのシステム２００に固有の秘密復号キーを生成し、それぞれのシステム２００に提供するように構成されることがあり、公開マスターキー又は秘密復号キーへの失効したアクセスを検証する際に使用する公開マスターキー及びアクセス拒否マスターキーを更に生成し提供することができるだろう。加えて、アクセス拒否局は、公開マスターキー又は秘密復号キーへのアクセスが取り消された少なくとも１つのメッセージ受信者を示す取り消しメッセージをそれぞれのシステム２００に送信するように構成されたアクセス拒否モジュールを実行しうる。一般に、秘密復号キー、公開マスターキー、及びアクセス拒否マスターキーは、それぞれのシステム２００内の記憶媒体に提供されその中に記憶され、アクセス拒否局からの失効メッセージを受信すると、それぞれのシステム２００のロジックは、アクセス拒否マスターキーに少なくとも部分的に基づいて失効メッセージの有効性を検証するように構成することができる。失効メッセージの有効性の検証に応答して、システム２００は、少なくとも１人のメッセージ受信者の識別子を含むように記憶媒体に記憶されている失効リスト２１２を更新しうる。
【００３７】
プロセッサ２０２は、一般に、安全なメッセージングモジュール１３０及びキー生成モジュール２１８などのアプリケーションを実行するように構成される。キー生成モジュールは、キー生成アルゴリズム（例えば、非対称キー生成アルゴリズム）を使用して公開暗号キーを生成するように構成される。各公開暗号キーは、指定された受信者（例えば、陸上ベースの監視ステーション）に固有のものであり、公開マスターキー２０８、有効期間、及び指定されたメッセージ受信者の識別子を含む入力を使用して生成される。
【００３８】
いくつかの例では、システム２００は、水中輸送体から宛先ノード（例えば、陸上ベースの監視ステーション）に送信されているデータパケットのための中間ノード（例えば、ホップ）として機能することができる。そのような例では、システム２００は、複数のネットワークインターフェース（例えば、水中輸送体からデータパケットを受信するための音響トランシーバ、及び空中ネットワークノード及び／又は衛星と通信するための無線周波数トランシーバ）を含みうる。システム２００は、ネットワークインターフェースのうちの第１のものを介してデータパケットを受信し、宛先ノードに向かって続く送信のためにデータパケットを（例えばメモリ２０６内に）記憶することができるだろう。隣接するネットワークノードの識別子（又はデータパケットの指定された受信者の識別子）が失効リスト２１２内の識別子と一致又は対応すると決定すると、安全なメッセージングモジュール１３０は、隣接するネットワークノード（又は指定された受信者デバイス）が許可されたネットワークノードではないと決定し、隣接するネットワークノードへのデータパケットの送信を妨げることができるだろう（例えば、許可された隣接するネットワークノードが範囲内になるまでデータパケットの送信を遅延させること、データパケットを削除することなどによって）。そのような状況では、安全なメッセージングモジュール１３０は、データパケットの送信失敗をユーザに通知するためのメッセージを送信することができる。一例では、システム２００は、指定されたメッセージ受信者に対する失効したアクセスを示すアクセス拒否局（例えば、通信ネットワーク内のネットワークアクセスを管理するように構成されたリモート計算システム）からそのような失効メッセージを受信する。メッセージの真正性は、アクセス拒否マスターキー２１４を使用して検証されてもよく、システムは、アクセスが取り消された受信者の識別子を含むように取り消しリスト２１２を更新することができる。
【００３９】
隣接するネットワークノードの識別子（又はデータパケットの指定された受信者の識別子）が失効リスト２１２内の識別子と一致しないか又は対応しないと安全なメッセージングモジュール１３０が決定した場合、安全なメッセージングモジュール１３０は、隣接するネットワークノード及び指定された受信者がデータ通信ネットワーク内の許可されたネットワークノードであると決定することができるだろう。次いで、安全なメッセージングモジュール１３０は、キー生成モジュール２１８を実行することができるだろう。指定されたメッセージ受信者に固有の公開暗号キーの一時コピーをシステム２００においてローカルに生成することができる。ここで、公開暗号化キーは、キー生成モジュール２１８を使用して生成され、公開マスターキー２０８、有効期間、及び指定されたメッセージ受信者の識別子を含む入力を含む。これらの例では、公開暗号キーの一時コピーは、第三者の公開暗号キーディレクトリにより記憶された任意の公開暗号キーの複製ではない。次いで、安全なメッセージングモジュール１３０は、公開暗号キーの一時コピーを使用して記憶されたデータパケットを暗号化することができ、安全なメッセージングモジュール１３０は、ネットワークポート２０４を介して、暗号化されたデータパケットを宛先ノードに向けて（例えば、宛先ノードに直接、宛先ノードへの経路に沿ってノードに、など）送信することができるだろう。一例では、安全なメッセージングモジュール１３０は、非対称暗号アルゴリズムを使用してデータパケットを暗号化する。特定の例では、安全なメッセージングモジュール１３０は、宛先ノードの英数字アドレスの少なくとも一部を失効リスト内の宛先ノードの識別子と比較することによって、データパケットの指定された宛先ノードがローカルに記憶された失効リスト２１２内のメッセージ受信者の識別子に対応するかどうかを決定するように構成される。
【００４０】
したがって、システム２００は、安全である（例えば、失効していない）ことが確認された多数の受信者に対応する公開暗号キーの大きなディレクトリの保守及びストレージを必要とせずに、指定された受信者に対する暗号化キーをローカルに生成可能である。これらの例示的な実施態様はまた、信頼できない受信者のリスト（例えば、失効リスト２１２）よりもかなり大きい可能性がある多数の信頼できる受信者の大きなディレクトリを維持しメモリに記憶する必要なく、信頼できる受信者にデータパケットを送信可能にしうる。これにより、安全なデータ送信のためのより効率的なデータストレージ割り当て及び処理時間がもたらされる。
【００４１】
いくつかの例では、安全なメッセージングモジュール１３０は、データパケットの宛先ノードと直接通信しうる（例えば、安全なメッセージングモジュール１３０と宛先ノードとの間の経路に沿ってホップが存在しない）。例えば、安全なメッセージングモジュール１３０は、データパケットの指定された宛先である陸上ベースの監視センターと（例えば衛星通信を使用して）直接通信することができる空中輸送体内に配備することができるだろう。そのような例では、空中輸送体の安全なメッセージングモジュール１３０は、（例えば、衛星中継を介して、航海用輸送体上の安全なメッセージングモジュール１３０から）データパケットを受信し、その後の送信のためにデータパケットを記憶することができるだろう。そのような例では、データパケットは、通信経路内の上流ノードによって（例えば、水中輸送体上の安全なメッセージングモジュール１３０、航海輸送体上の安全なメッセージングモジュール１３０などによって）暗号化された暗号化データパケットを含むことができるだろう。安全なメッセージングモジュール１３０は、指定された宛先ノードの固有の識別子が失効リスト内の識別子と一致しない又は対応しないという決定に基づいて、宛先ノードがデータパケットの許可された受信者であると決定することができるだろう。宛先ノードが許可された受信者であると決定すると、安全なメッセージングモジュール１３０は、システム２００のメモリ２０６にローカルに記憶された秘密復号キー２１０を使用して暗号化データパケットを復号し、復号したデータパケットを宛先ノードに送信することができるだろう。
【００４２】
図３は、本明細書に記載の一実施例による、複数の計算デバイスのための通信ネットワークを示すブロック図である。図示されるように、システム３００は、複数の計算デバイスが単一の安全な通信システム３０４に接続されうる、それぞれの安全な通信システム３０４（例えば、安全な通信システム１１０）に接続された、複数の計算デバイス（例えば、水中輸送体内でアプリケーションを実行するシステム、陸上ベースの監視センター内でアプリケーションを実行するシステムなど）を含む。例えば、２つ以上の計算デバイスが、水中輸送体内のセンサデバイスからデータを収集するように構成されているソフトウェアアプリケーションを実行し、複数のソフトウェアアプリケーションが、水中輸送体内の単一の安全な通信システム３０４を共有することができるだろう。
【００４３】
安全な通信システム３０４は、安全でない帯域内通信ネットワーク３０６又はインターネットのような通信媒体によって相互接続されうる。加えて、安全な通信システム３０４は、安全な帯域外のポイントツーポイント通信チャネル３１０を介して、アクセス許可局３０８にアクセスすることができる。帯域外通信チャネルは、ユニバーサルシリアルバス（ＵＳＢ）フラッシュドライブなどの物理データクーリエであるか、又はそれを含みうる。アクセス許可局は、安全な通信システム３０４が他の安全な通信システム３０４と安全にメッセージを送受信できるようにする。アクセス拒否局３１２は、帯域内通信ネットワーク３０６を介して他の安全な通信システム３０４に失効メッセージを送信することによって、安全な通信システム３０４へのアクセスを取り消しうる。
【００４４】
図４は、本明細書に記載の一実施例による、安全な通信システムを構成するプロセスを示す。図示されるように、安全な通信システムの管理者４０２は、図４のデータ送信によって詳述されるように安全な通信システムを構成することができる。具体的には、管理者４０２は、送信４０４に示すように、識別子、住所、及び身分証明などの証明書を含む請求をアクセス許可機関３０８に提供する。それに応答して、アクセス許可局３０８は、機密メッセージを送受信するために安全な通信システムへのアクセスを許可し、それによって送信４０６に示すように、安全な通信システムに固有の秘密復号キーを送信する。秘密復号キーは、請求されたアドレスに基づいていてもよく、有効期間を有してもよい。アクセス許可局３０８はまた、送信４０６の一部として、公開マスターキー及びアクセス拒否マスターキーを送信する。その後、管理者４０２は、送信４０８に示すように、送信された情報を使用して安全な通信システムを手動で構成しうる。構成が完了した後、安全な通信システムは、確認メッセージで応答し（送信４１０）、その時点で安全な通信システムは、ネットワーク環境内の他の安全な通信システムと通信することができる。
【００４５】
図５は、ソースの安全な通信システム３０４Ａから宛先の安全な通信システム３０４Ｂに暗号化された機密メッセージ（例えば、ＭＳＧ１及びＭＳＧ２）を送信するためのプロセスを示す。例えば、機密メッセージは、水中輸送体上の計算システムによって生成された一又は複数のまとめられたデータパケットを含むことができるだろう。例えば、安全な通信システム３０４Ａ及び３０４Ｂは、水中輸送体と目的地装置７４０（例えば、監視センター内の計算システム）との間の経路に沿った任意の２つの隣接ホップを表すことができる。安全な通信システム３０４は、メッセージを送受信するために計算デバイス３０２Ａ及び３０２Ｂにそれぞれ接続されうる。例えば、計算デバイス３０２Ａは、水中輸送体内の一又は複数のセンサデバイスからセンサデータを収集し分析するように構成された水中輸送体内の計算システムを表すことができるだろう。送信５０２では、機密メッセージが、計算デバイス３０２Ａによって生成され、接続された安全な通信システム３０４Ａに送信される。
【００４６】
送信５０４において、安全な通信システム３０４Ａは、宛先の安全な通信システム３０４Ｂのアドレス、タイムスタンプによって示されるような現在の期間、及び公開マスターキーを使用して暗号キーを計算し、それによってメッセージを暗号化する。図示された例では、送信５０６において、安全な通信システム３０４Ａは、メッセージの受信及び送信の成功を確認する。送信５０８において、宛先の安全な通信システム３０４Ｂは、管理者４０２から受信した、その現期間の秘密キーを使用して暗号化されたメッセージを受信し解読する。復号化されたメッセージは更に、送信５１０で宛先の計算デバイス３０２Ｂ（例えば、監視ステーション内の計算システム）によって送受信されうる。
【００４７】
状況によっては、アクセス許可局３０８は、特定の安全な通信システムに対するアクセスが取り消されたことを示すメッセージをアクセス拒否局３１２に送信しうる。例えば、送信５１２において、アクセス許可局は、アクセス拒否局に宛先の安全な通信システム３０４Ｂへのアクセスの取り消しを通知し、これにより、アクセス拒否局は、送信５１６及び５１８によって示されるように、失効した安全な通信システムの識別、満了時間及び失効時間を指定する失効メッセージを安全な通信システム３０４Ａ及び３０４Ｂの各々に送信する。
【００４８】
これらの例では、アクセス許可局３０８が、所与の有効期間中に宛先の安全な通信システム３０４Ｂの公開キーを失効させた場合、ソースの安全な通信システム３０４Ａは、失効した宛先の安全な通信システム３０４Ｂに機密メッセージを送信することを拒否することになる。送信５２０及び５２２に示されるように、ソースの計算デバイス３０２Ａは、失効された宛先の安全な通信システム３０４Ｂを介して、受信側の計算デバイス３０２Ｂにメッセージを送信しようと試み、ソースの安全な通信システム３０４Ａは、失敗したデータ送信を示す否定確認を計算デバイスに送信する。
【００４９】
図６は、ソースの安全な通信システム３０４Ａから宛先の安全な通信システム３０４Ｂに認証又は署名されたメッセージを送信するためのプロセスを示す。具体的には、送信６０２において、認証されたメッセージが、ソースの計算デバイス３０２Ａによって生成され、それぞれ接続されているソースの安全な通信システム３０４Ａに送信される。これらの例では、送信６０４に示されるように、ソースの安全な通信システム３０４Ａは、秘密キーを使用して送信されるメッセージに署名する。送信６０６において、宛先の安全な通信システム３０４Ｂは、そのアドレス（ＳＣＳ１）、現在の期間、及び公開マスターキーを使用して、ソースの公開キーを計算し、送信６０８において、検証済みメッセージが、宛先の計算デバイス３０２Ｂに送信される。
【００５０】
宛先の安全な通信システム３０４Ｂは、送信６１０において、ソースの安全な通信システム３０４Ａに受信確認を送信し、宛先の計算デバイス３０２Ｂにメッセージの送信成功を送信する。同様に、ソースの安全な通信システム３０４Ａは、送信６１２で、ソースの計算デバイス３０２Ａに、宛先の計算デバイスにメッセージの受信及び送信成功の確認を送信する。
【００５１】
いくつかの事例では、アクセス許可局３０８は、安全な通信システムに対するアクセスの取り消しを示すメッセージをアクセス拒否局３１２に送信しうる。例えば、送信６１４において、アクセス許可局は、アクセス拒否局にソースの安全な通信システム３０４Ａに対する失効アクセスを通知し、それにより、アクセス拒否局は、失効した安全な通信システムの識別、満了時間及び失効時間を指定する失効メッセージを安全な通信システム３０４Ａ、３０４Ｂのそれぞれに送信する。
【００５２】
送信６１６及び６１８によって示されるように、宛先の安全な通信システム３０４Ｂは、失効メッセージを受信する。しかし、ソースの計算デバイス３０２Ａは、ソースの安全な通信システム３０４Ａがその無効アクセスの通知を受信する前に、依然としてソースの安全な通信システム３０４Ａに送信される別のメッセージを生成しうる。したがって、ソースの安全な通信システム３０４Ａは、送信６２０でメッセージの送信を進め、後に送信６２２で失効メッセージを受信しうる。宛先の安全な通信システム３０４Ｂが特定の有効期間中にソースの安全な通信システム３０４Ａへの認証された失効メッセージを受信した場合、失効した有効期間中にソースの安全な通信システム３０４Ａのアドレスによって署名されたメッセージを受け入れることを拒否することになる。したがって、宛先の安全な通信システム３０４Ｂは、失敗したデータ送信を示す否定確認をソースの安全な通信システム３０４Ａに送信し、それにより、ソースの安全な通信システム３０４Ａは、送信６２４及び６２６でソースの計算デバイスに否定確認を送信しうる。
【００５３】
図７は、本明細書に記載の一実施例による、水中輸送体のためのデータ通信ネットワークのネットワークトポロジを示す。図示されたように、ネットワーク７００は、無人水中輸送体（ＵＵＶ）７１０、ＵＵＶ７４５、通信搭載ブイ７１５、通信搭載航空機７２０、衛星７３０、第２の通信搭載航空機７３５、無人水上航空輸送体７２５及び地上又は陸上ベースの監視ステーション７４０を含む。描かれているネットワーク７００は、ＵＵＶ７１０及び７４５と監視ステーション７４０との間の通信を示しており、したがって、ＵＵＶ７１０及び７４５と監視ステーション７４０は、通信エンドポイントを表し、その一方で、航空機７２０及び７３５は、電磁通信ネットワーク内のルータデバイスを表す。同様に、ブイ７１５及び無人水上輸送体７２５は、ブリッジルータ−デバイス装置を表し、これらのデバイスは、電磁気及び音響通信ネットワークを橋渡しし、ＵＵＶ７１０と航空機（「空中輸送体」）７２０及び７３５との間のデータパケットを中継するためのルータとして機能する。注目すべきことに、いくつかの事例では、ＵＵＶ７１０及び７４５は、ネットワーク７００内のルータデバイスとして機能することができる。例えば、ＵＵＶ７１０は、本明細書に記載された技術を用いてデータパケットを安全かつ確実にＵＵＶ７４５に送信し、次にＵＵＶ７４５は、監視ステーション７４０への途中でデータパケットを安全かつ確実に無人水上輸送体７２５に転送することができるだろう。
【００５４】
注目すべきことに、本明細書に記載の例は、ＵＵＶ（例えば７１０）から発信され、地上ベースのネットワークノード（例えば、地上ベース監視ステーション７４０内の通信エンドポイント）に移動するデータを指すが、そのような例は、例示目的で提供されているにすぎず、限定されない。より一般的には、データは、データ通信ネットワーク７００全域にわたり、任意の数の宛先に、かつ任意の方向に流れることができる。例えば、地上ベースの監視ステーション７４０内の通信エンドポイントは、ネットワーク７００を介してＵＵＶ７１０に構成ファイルを送信することができ、それは次にＵＵＶ７１０内の通信エンドポイントによって処理することができるだろう。
【００５５】
図８は、本明細書に記載の一実施例による、水中輸送体のためのデータ通信ネットワーク内のポイントにおけるネットワーク通信レイヤを示すブロック図である。図示されるように、データ通信ネットワーク８００は、ＵＵＶ７１０、ブイ７１５、空中輸送体８１０、及び監視ステーション７４０を含む。図示されるように、ＵＵＶ７１０とブイ７１５は、音響ネットワーク８４０を介して通信し、一方、ブイ、空中輸送体８１０及び監視ステーション７４０は、電磁ネットワーク８５０を介して通信する。注目すべきことに、図示された例におけるブイ７１５は、音響ネットワーク８４０と電磁ネットワーク８５０との間の橋渡しとして機能する。図示されるように、各デバイスによって送信されたデータパケットのヘッダは、示されたそれらの最下位レイヤにおいて、トランスポートネットワークリンクレイヤ情報８３０Ａ−Ｅを含む。
【００５６】
トランスポートネットワークリンクレイヤ８３０ＡーＥの上で、ＵＵＶ７１０、ブイ７１５及び監視ステーション７４０のためのデータパケットヘッダは、収束レイヤ８２８Ａ、８２８Ｂ及び８２８Ｃを含む。一般に、収束レイヤ８２８Ａ、８２８Ｂ及び８２８Ｃは、データの束（例えばＤＴＮバンドル）を、例えばネイティブリンク、ネットワーク又はインターネットプロトコルを介して、送信することができるサービスを提供する。例えば、収束レイヤアダプタを使用して、ＴＣＰＣＬなどのＴＣＰベースの収束レイヤプロトコルをデータパケットのヘッダに追加することができるだろう。より一般的には、本明細書に記載の機能と矛盾しない、任意の適切な収束レイヤを使用することができる。
【００５７】
更に、ブイ７１５及び監視ステーション７４０のための収束レイヤ８２８Ｂ及び８２８Ｃの上、並びに空中輸送体８１０のためのトランスポートネットワークリンクレイヤ８３０Ｄの上には、データパケットヘッダ内にＰＫＤＮ−ＩＤＢＣ検証レイヤ８２６Ｂ〜Ｃがある。上述のように、アクセス拒否権限は、必要に応じて、失効メッセージをＰＫＤＮ−ＩＤＢＣ検証ノード（例えば、ブイ７１５、航空機８１０など）に送信することができ、所与のネットワークノードに対するデータ通信ネットワーク内の（例えば、所与のネットワークノードに対応する固有の識別子によって指定されるような）許可が取り消されたことを示す。ＵＵＶ通信エンドポイント８２０及び８６０は、一般に、データ通信ネットワーク８００を介して互いに通信しているソフトウェアアプリケーションを表す。例えば、監視アプリケーションは、ＵＵＶ７１０内の計算システム上で実行することができ、ＵＵＶ７１０用の一又は複数のセンサデバイス（例えば、カメラセンサ、ソナーセンサなど）を使用してデータを収集することができるだろう。監視アプリケーションは、次いで、少なくとも収集されたデータの表示を含むデータパケットを生成することができ、本明細書に記載の通信技術を使用して、更なる分析及び／又は表示のために、データパケットを監視ステーション７４０内のソフトウェアアプリケーション（例えばＵＵＶ通信エンドポイント８６０によって表される）に送信することができる。
【００５８】
一般に、ＤＴＮバンドルプロトコル（セキュリティ）レイヤは、日和見的ルーティングをサポートするように設定することができる。例えば、バンドルプロトコル（セキュリティ）レイヤは、転送ベースのルーティング（例えば、データパケットがそれらの宛先に向けて単一の経路を介して送信される場合）、及び複製ベースのルーティング（例えば、データパケットがそれらの宛先に向かって複数の経路を介して送信される場合）を含む、データパケットを送信するための多数のルーティング技術を使用することができる。例えば、一定のネットワークトポロジ（例えば、隣接するネットワークノードが一般に変化しないシステム）でのルーティングについては、宛先ノードへの経路は通常一定であろうから、バンドルプロトコル（セキュリティ）レイヤは、転送ベースのルーティングを使用するように設定することができるだろう。一方、可変ネットワークトポロジ（例えば、ＵＵＶがネットワーク内のさまざまな他のデバイスの通信範囲に頻繁に出入りするシステム）でのルーティングについては、宛先ノードへの経路がネットワークトポロジがシフトするにつれて頻繁に変更されうるため、バンドルプロトコル（セキュリティ）レイヤは、複製ベースのルーティングを使用するように設定することができるだろう。
【００５９】
図９は、本明細書に記載の一実施例による、データ通信ネットワークにおけるノード間でのデータの送信方法を示すフロー図である。図示されるように、方法９００は、ブロック９１０で開始し、ここで、安全通信構成要素１２０は、公開キー配信ネットワークと共に、アイデンティティベースの暗号化技術の使用を通して、第２のネットワークデバイスがデータ通信ネットワーク内の許可されたネットワークデバイスであると決定する。例えば、安全な通信構成要素１２０は、第２のネットワークデバイスに対応する識別子を決定し、その識別子が失効リスト上のどの識別子にも対応しないと決定することができるだろう。
【００６０】
次いで、安全な通信構成要素１２０は、第２のネットワークデバイスが許可されたネットワークデバイスであると決定すると、ＤＴＮネットワークプロトコルを使用して、ネットワーク通信インターフェースを介して第２のネットワークデバイスに複数のデータパケットを送信し（ブロック９１５）、方法９００は終了する。例えば、安全な通信構成要素１２０は、データパケット内の一又は複数の低レベルネットワーキングヘッダの上にバンドルヘッダをオーバーレイすることができ、この場合、バンドルヘッダはＤＴＮプロトコルに従ってフォーマットされる。
【００６１】
図１０は、本明細書に記載の一実施例による、データ通信ネットワークにおける水中輸送体からのデータの送信方法を示すフロー図である。図示されるように、方法１０００は、ブロック１０１０で始まり、ここで安全な通信構成要素１２０は、宛先デバイス７４０に送信されるべき複数のデータパケットを記憶する。一般に、安全な通信構成要素１２０は、送信条件が満たされるまで、データパケット（例えば、ＤＴＮ又は他のストア記憶／伝達／転送通信技術を使用して、別のネットワークデバイスから受信された一又は複数のアプリケーションによって生成される）を記憶し続けることができる。例えば、安全な通信構成要素１２０は、許可されたネットワークデバイスへのネットワーク接続が利用可能になるまで、データパケットを記憶することができ、データパケットが完全に形成されたときのみ、データパケットを送信することができる。
【００６２】
図示された例では、安全な通信構成要素１２０は、ネットワーク通信インターフェースを介したデータ通信が第１のネットワークノードに利用可能になったと決定する（ブロック１０１５）。加えて、安全な通信構成要素１２０は、第１のネットワークノードがアクセス許可局によって無効にされていない有効なセキュリティ証明書を有すると決定する（ブロック１０２０）。第１のネットワークノードが有効なセキュリティ証明書を有すると決定すると、安全な通信構成要素１２０は、記憶された複数のデータパケットをネットワーク通信インターフェースを介して第１のネットワークノードに送信し、第１のネットワークノードは、複数のデータパケットを宛先デバイスに向けて送信するために記憶／伝達／転送データメッセージング技術を採用するように構成され（ブロック１０２５）、方法１０００は終了する。
【００６３】
図１１は、本明細書に記載の一実施例による、データ通信ネットワークの中間ノードでのデータの送信方法を示すフロー図である。示されるように、方法１１００は、ブロック１１１０で始まり、そこで安全通信構成要素１２０は、第１のネットワーク通信インターフェースを介して、第１のネットワークノードから、宛先デバイス７４０に送信されるべき複数のデータパケットを受信する。安全な通信構成要素１２０は、送信条件が満たされるまで、複数のデータパケットを格納する（ブロック１１１５）。
【００６４】
安全な通信構成要素１２０は、ネットワーク通信インターフェースを介したデータ通信が第２のネットワークノードに利用可能になったと決定する（ブロック１１２０）。次いで、安全な通信構成要素１２０は、第２のネットワークノードが、アクセス許可局によって取り消されていない有効なセキュリティ証明書を有すると決定する（ブロック１１２５）。第２のネットワークノードが有効なセキュリティ証明書を有すると判断すると、安全な通信構成要素１２０は、格納されている複数のデータパケットを、第２のネットワーク通信インターフェースを介して、第２のネットワークノードに送信し（ブロック１１３０）、方法１１００は終了する。
【００６５】
図１２は、本明細書に記載の一実施例による、計算システムを示すブロック図である。概括的に、本開示の例示的な実施態様の装置は、一又は複数の固定的な又は携帯式の電子デバイスを備えるか、含むか、又は、かかる電子デバイスで実施されうる。適切な電子デバイスの例には、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーションコンピュータ、サーバコンピュータなどが含まれる。装置は、例えば、メモリ１２０４（例えば記憶デバイス）に接続されたプロセッサ１２０２（例えばプロセッサユニット）といった、複数の構成要素の各々の一又は複数を含みうる。
【００６６】
プロセッサ１２０２は概して、例えば、データ、コンピュータプログラム、及び／又は他の適切な電子情報などの情報を処理することが可能な、任意のコンピュータハードウェアである。プロセッサは、一部が一の集積回路又は相互接続された複数の集積回路（もっと一般的には「チップ」と呼ばれる集積回路）としてパッケージされた一組の電子回路から構成される。プロセッサは、コンピュータプログラムを実行するように構成されてよく、コンピュータプログラムは、プロセッサに搭載された状態で保存されうるか、そうでなければ（同じ又は別の装置の）メモリ１２０４に保存されうる。
【００６７】
プロセッサ１２０２は、特定の実施態様に応じて、複数のプロセッサ、マルチプロセッサコア、又は他の何らかの種類のプロセッサであってもよい。更に、プロセッサは、単一のチップ上に一又は複数の二次プロセッサと共にメインプロセッサが存在する、幾つかの異種プロセッサシステムを使用して、実装されうる。別の例示的な実施例として、プロセッサは、同じ種類の複数のプロセッサを包含する対称型マルチプロセッサシステムであってもよい。更に別の実施例では、プロセッサは、一又は複数の特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）などとして実施されうるか、そうでなければ、それらを含みうる。したがって、プロセッサは一又は複数の機能を実施するためのコンピュータプログラムを実行することが可能でありうるが、プロセッサの様々な例は、コンピュータプログラムの支援がなくとも、一又は複数の機能を実施することが可能でありうる。
【００６８】
メモリ１２０４は概して、一時的及び／又は恒久的に、例えば、データ、コンピュータプログラム（例えばコンピュータ可読プログラムコード１２０６）、及び／又は、他の適切な情報を保存することが可能な、任意のコンピュータハードウェアである。メモリは、揮発性及び／又は不揮発性のメモリを含んでよく、かつ、固定式又は着脱式であってもよい。適切なメモリの例には、ランダムアクセスメモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、ハードドライブ、フラッシュメモリ、サムドライブ、着脱式コンピュータディスケット、光ディスク、磁気テープ、又はそれらの何らかの組み合わせが含まれる。光ディスクは、読み出し専用コンパクトディスク（ＣＤ−ＲＯＭ）、読み出し／書き込みコンパクトディスク（ＣＤ−Ｒ／Ｗ）、ＤＶＤなどを含みうる。様々な事例において、メモリはコンピュータ可読記憶媒体と称されうる。コンピュータ可読記憶媒体は、情報を保存することが可能な非一過性デバイスであり、ある場所から別の場所へと情報を運ぶことが可能な一過性の電気信号などのコンピュータ可読伝送媒体とは区別可能である。本明細書で説明されているコンピュータ可読媒体は概して、コンピュータ可読記憶媒体又はコンピュータ可読伝送媒体を表わしうる。
【００６９】
メモリに加えて、プロセッサは、情報を表示、送信、及び／又は受信するための一又は複数のインターフェースに接続することもできる。インターフェースは、通信インターフェース１２０８（例えば、通信ユニット）及び／又は一又は複数のユーザインターフェースを含み、その一例は、図２のネットワークポート２０４でありうる。通信インターフェースは、別の装置（複数可）、ネットワーク（複数可）などへ情報を伝送し、及び／又はそれらから情報を受信するよう構成されうる。通信インターフェースは、物理的（有線）及び／又は無線通信リンクにより情報を送信及び／又は受信するように構成することができる。適切な通信インターフェースの実施例は、ネットワークインターフェースコントローラ（ＮＩＣ）、無線ＮＩＣ（ＷＮＩＣ）などを含む。
【００７０】
ユーザインターフェースは、ディスプレイ１１２０及び／又は一又は複数のユーザ入力インターフェース１２１２（例えば、入出力ユニット）を含みうる。ディスプレイは、ユーザに情報を提示するか、又は他の方法で表示するよう設定されてよく、その適切な例には、液晶ディスプレイ（ＬＣＤ）、発光ダイオードディスプレイ（ＬＥＤ）、プラズマディスプレイパネル（ＰＤＰ）などが含まれる。ユーザ入力インターフェース１２１２は、有線又は無線であってよく、処理、保存及び／又は表示用などの装置内にユーザから情報を受信するよう構成されうる。ユーザ入力インターフェースの適切な例は、マイク、画像又は動画の捕捉デバイス、キーボード又はキーパッド、ジョイスティック、タッチ感応型サーフェス（タッチスクリーンとは別個の、又はタッチスクリーンに統合されたもの）、生体認証センサーなどを含む。ユーザインターフェースは、プリンタやスキャナなどの周辺機器と通信するための、一又は複数のインターフェースを更に含みうる。
【００７１】
上記のように、プログラムコード命令は、本明細書で説明されているシステム、サブシステム及びそれらの各要素の機能を実装するために、メモリに記憶され、プロセッサによって実行されうる。理解されるように、任意の好適なプログラムコード命令は、コンピュータ可読記憶媒体からコンピュータ又はその他のプログラム可能装置に読み込まれ、ここで特定される機能を実施する手段となるように特定のマシンが製造される。これらのプログラムコード命令は、コンピュータ、プロセッサ、又はその他のプログラマブル装置に特定の方法で機能するよう命令して、それにより、特定の機械又は特定の製造物品を生み出すことが可能になるように、コンピュータ可読記憶媒体にも保存されうる。コンピュータ可読記憶媒体に保存された命令は、製造物品を生産可能であり、この製造物品が、本明細書に記載の機能を実装するための手段となる。コンピュータ、プロセッサ又は他のプログラム可能な装置が、コンピュータ、プロセッサ又は他のプログラム可能な装置上で、又はそれらによって実施されるべき操作を実行するように構成するため、プログラムコード命令は、コンピュータ可読記憶媒体から読み出され、かつ、コンピュータ、プロセッサ又は他のプログラマブル装置に読み込まれうる。
【００７２】
一度に１つの命令が読み出され、読み込まれ、かつ実行されるように、プログラムコード命令の読み出し、読み込み及び実行は、連続的に実施されうる。いくつかの例示的な実装では、複数の命令をまとめて読み出し、読み込み、かつ／又は実行するように、読み出し、読み込み、及び／又は実行が、並行して実施されうる。プログラムコード命令の実行は、コンピュータ、プロセッサ又は他のプログラム可能な装置によって実行される命令が、本明細書に記載の機能を実装するための操作を提供するように、コンピュータに実装されるプロセスを生成しうる。
【００７３】
プロセッサによる命令の実行、又はコンピュータ可読記憶媒体への命令の保存は、特定の機能を実行するための操作の組み合わせを支持する。このように、装置１２００は、プロセッサ１２０２と、プロセッサに連結されたコンピュータ可読記憶媒体又はメモリ１２０４とを含んでよく、プロセッサは、メモリに保存されたコンピュータ可読プログラムコード１２０６を実行するよう構成される。一又は複数の機能及び機能の組み合わせは、特殊用途ハードウェアに基づくコンピュータシステム、及び／又は、特定の機能を実施するプロセッサ、或いは、特殊用途ハードウェアとプログラムコード命令との組み合わせによって実装されうることも、理解されよう。
【００７４】
本発明の様々な実施例の記載が例示の目的で提示されてきたが、網羅的であることまたは開示の実施例に限定することは意図されていない。記載された実施例の範囲及び精神から逸脱することなく、多くの修正例及び変形例が当業者には明らかであろう。本明細書で使用される用語は、実施例、実際的な適用、又は市場で見出される技術に対する技術的改善の諸原理を最もよく説明するため、或いは、他の当業者が本明細書で開示された実施例を理解することを可能にするために選択された。
【００７５】
当業者によって想定されるように、本発明の態様は、システム、方法、及び／又はコンピュータプログラム製品として実施されうる。従って、本発明の態様は、専らハードウェアの実施例、専らソフトウェアの実施例（ファームウェア、常駐ソフトウェア、マイクロコードなどを含む）、例ソフトウェアとハードウェアの態様を組み合わせる実施例の形態をとりうるが、本明細書ではそれらは全て、「回路」、「モジュール又は「システム」と広く称されうる。更に、本発明の態様は、その中で実施されるコンピュータ可読プログラムコードを有する一又は複数のコンピュータ可読媒体に実施されたコンピュータプログラム製品の形態をとりうる。
【００７６】
一又は複数のコンピュータ可読媒体の任意の組み合わせが利用されうる。コンピュータ可読媒体は、コンピュータ可読信号媒体及び／又はコンピュータ可読記憶媒体でありうる。コンピュータ可読記憶媒体は、例えば、電子式、磁気式、光学式、電磁式、赤外線、又は半導体のシステム、装置、又はデバイス、或いはこれらの任意の適切な組み合わせでありうるが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な実施例（包括的でないリスト）は、一又は複数の電線を有する電気接続、持ち運び可能なコンピュータディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、消去可能プログラマブル読出し専用メモリ（ＥＰＲＯＭ又はフラッシュメモリ）、光ファイバ、持ち運び可能なコンパクトディスク読出し専用メモリ（ＣＤ−ＲＯＭ）、光記憶デバイス、磁気記憶デバイス、及び／又は、それらの任意の好適な組み合わせを含みうる。この文書の文脈において、コンピュータ可読記憶媒体は、命令を実行するシステム、装置又はデバイスによって使用するための、又はそれと接続しているプログラムを、包含又は記憶することが可能な、任意の有形媒体を含みうる。
【００７７】
コンピュータ可読信号媒体は、コンピュータ可読プログラムコードが内部に埋め込まれ、例えば搬送波のベースバンドで又はその一部で伝播されるデータ信号を含み得る。このような伝播信号は、電磁的形態、光学的形態、又は、それらの任意の好適な組み合わせを含むがそれらに限定されない、多種多様な形態のうちの任意の形態をとりうる。コンピュータ可読信号媒体は、命令実行システム、装置、又はデバイスによって使用されるプログラムコードを通信、伝播、伝送できる、又はこれらと接続されてプログラムを通信、伝播、伝送できる、コンピュータ可読記憶媒体でない任意のコンピュータ可読媒体であってもよい。
【００７８】
コンピュータ可読媒体で実施されたプログラムコードは、無線、有線、光ファイバケーブル、ＲＦなど、又は、それらの任意の好適な組み合わせを含むがそれらに限定されない、任意の適切な媒体を使用して伝送されうる。
【００７９】
本発明の態様の工程を実行するためのコンピュータプログラムコードは、Ｊａｖａ、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋などのオブジェクト指向プログラミング言語、及び、「Ｃ」プログラミング言語もしくはこれに類するプログラミング言語などの従来の手続き型プログラミング言語を含む、一又は複数のプログラミング言語の任意の組み合わせで書かれていてよい。プログラムコードは、専らユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、独立型のソフトウェアパッケージとして、部分的にユーザのコンピュータ上でかつ部分的に遠隔コンピュータ上で、又は、専ら遠隔コンピュータ又はサーバ上で、実行しうる。後者の場合、リモートコンピュータは、ローカルエリアネットワーク（ＬＡＮ）もしくはワイドエリアネットワーク（ＷＡＮ）を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されうるか、又は、（例えば、インターネットサービスプロバイダを利用してインターネットを介して）外部のコンピュータへの接続がなされてもよい。
【００８０】
本発明の態様は、本発明の実施例による方法、装置（システム）、及びコンピュータプログラム製品のフロー図及び／又はブロック図を参照して、以下で説明される。フロー図及び／又はブロック図の各ブロック、並びに、フロー図及び／又はブロック図における複数のブロックの組み合わせは、コンピュータプログラム命令によって実行可能であると、理解されよう。上記のコンピュータプログラム命令は、機械を生産するために、汎用コンピュータ又は特殊用途コンピュータのプロセッサ、或いは他のプログラマブルデータ処理装置に提供されてよく、これにより、コンピュータのプロセッサ又は他のプログラマブルデータ処理装置を介して実行されるこれらの命令が、フロー図及び／又はブロック図のブロック（複数可）内に特定されている機能／作用を実行するための手段を創出する。
【００８１】
これらのコンピュータプログラム命令は、コンピュータ可読媒体であって、コンピュータ可読媒体に記憶された命令が、製造品を作製するような特定の様態で機能するよう、コンピュータ、他のプログラマブルデータ処理装置、又は他のデバイスに指示しうる、コンピュータ可読媒体に記憶されることも可能であり、そのコンピュータプログラム命令は、フロー図及び／又はブロック図の一又は複数のブロック内で特定されている機能／作用を実装する命令を含む。
【００８２】
コンピュータ又は他のプログラマブル装置上で実行される命令が、フロー図及び／又はブロック図の一又は複数のブロック内で特定されている機能／作用を実装するためのプロセスを提供するように、コンピュータ、他のプログラマブル装置、又は他のデバイス上で実行されるべき一連の動作ステップを引き起こして、コンピュータ実装プロセスを生成するために、コンピュータプログラム命令はコンピュータ、他のプログラマブルデータ処理装置、又は他のデバイスに読み込まれることも可能である。
【００８３】
本発明は、システム、方法、及び／又はコンピュータプログラム製品でありうる。コンピュータプログラム製品は、本発明の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令を有する、コンピュータ可読記憶媒体（複数可）を含みうる。
【００８４】
コンピュータ可読記憶媒体は、命令実行デバイスが使用する命令を保持し、記憶することが可能な、有形デバイスでありうる。コンピュータ可読記憶媒体は、限定するわけではないが例としては、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、又はこれらの任意の好適な組み合わせでありうる。コンピュータ可読記憶媒体のより具体的な例の非網羅的リストは、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、消去可能プログラマブル読出し専用メモリ（ＥＰＲＯＭ又はフラッシュメモリ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ポータブルコンパクトディスク読出し専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、メモリスティック、フロッピーディスク、パンチカード又は命令が記録されている溝内隆起構造などの機械的にエンコードされたデバイス、及び、これらの任意の好適な組み合わせを含む。コンピュータ可読記憶媒体とは、本明細書では、それ自体が、電波又はその他の自由に伝播する電磁波、導波管又は他の伝送媒体を通って伝播する電磁波（光ファイバケーブルを通過する光パルスなど）、或いは、ワイヤを通って伝送される電気信号といった、一時的信号であると解釈すべきではない。
【００８５】
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング／処理デバイスに、或いは、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、及び／又は無線ネットワークなどのネットワークを介して、外部コンピュータ又は外部記憶デバイスに、ダウンロードされうる。ネットワークは、銅製伝送ケーブル、光伝導ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、及び／又はエッジサーバを含みうる。各コンピューティング／処理デバイス内のネットワークアダプタカード又はネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、このコンピュータ可読プログラム命令を、それぞれのコンピューティング／処理デバイスの中のコンピュータ可読記憶媒体内に記憶するために転送する。
【００８６】
本開示の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ（ＩＳＡ）命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、或いは、Ｊａｖａ、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋などのようなオブジェクト指向型プログラミング言語、及び、「Ｃ」プログラミング言語又は類似のプログラミング言語などの従来的な手続き型プログラミング言語を含む、一又は複数のプログラミング言語の任意の組み合わせで書かれた、ソースコード若しくはオブジェクトコードでありうる。コンピュータ可読プログラム命令は、専らユーザのコンピュータ上で、スタンドアローン型ソフトウェアパッケージとして部分的にユーザのコンピュータ上で、部分的にユーザのコンピュータ上かつ部分的にリモートコンピュータ上で、或いは、専らリモートコンピュータ又はサーバ上で、実行されうる。後者の場合、リモートコンピュータは、ローカルエリアネットワーク（ＬＡＮ）もしくはワイドエリアネットワーク（ＷＡＮ）を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されうるか、又は、（例えば、インターネットサービスプロバイダを利用してインターネットを介して）外部のコンピュータへの接続がなされてもよい。いくつかの例では、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、またはプログラマブル論理アレイ（ＰＬＡ）を含む電子回路は、本発明の諸態様を実行する目的で該電子回路をカスタマイズするために、コンピュータ可読プログラム命令の状態情報を利用することによってコンピュータ可読プログラム命令を実行してよい。
【００８７】
本発明の態様は、本発明の実施例による方法、装置（システム）、及びコンピュータプログラム製品のフロー図及び／又はブロック図を参照して、本明細書で説明される。フロー図及び／又はブロック図の各ブロック、並びに、フロー図及び／又はブロック図における複数のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装可能であると理解されよう。
【００８８】
上記のコンピュータ可読プログラム命令は、機械を生産するために、汎用コンピュータ又は特殊用途コンピュータのプロセッサ、或いは他のプログラマブルデータ処理装置に提供されてよく、これにより、コンピュータのプロセッサ又は他のプログラマブルデータ処理装置を介して実行されるこれらの命令が、フロー図及び／又はブロック図のブロック（複数可）内に特定されている機能／作用を実装するための手段を創出する。上記のコンピュータ可読プログラム命令は更に、特定の様態で機能するために、コンピュータ、プログラマブルデータ処理装置、及び／又はその他のデバイスに命令を下すことが可能なコンピュータ可読記憶媒体に記憶されてよく、これにより、命令が記憶されているコンピュータ可読記憶媒体は、フロー図及び／又はブロック図のブロック（複数可）内に特定されている機能／作用の態様を実装する命令を含む製品を含む。
【００８９】
コンピュータ可読プログラム命令は更に、一連の工程ステップをコンピュータ、他のプログラマブル装置、又はコンピュータ実装されるプロセスを生成する他のデバイスで実行させるために、コンピュータ、他のプログラマブルデータ処理装置、又は他の装置にローディングされてよく、これにより、コンピュータ、他のプログラマブル装置、又は他の装置で実行される命令が、フロー図及び／又はブロック図のブロック（複数可）で特定されている機能／作用を実装する。
【００９０】
図面のフロー図及びブロック図は、本発明の様々な実施例によるシステム、方法及びコンピュータプログラム製品の可能な実装態様のアーキテクチャ、機能性、及び操作を示すものである。その際、フロー図及びブロック図の各ブロックは、特定の論理機能を実装するための一又は複数の実行可能な命令を含むモジュール、セグメント、又は部分を表わしうる。いくつかの代替的な実施態様では、ブロックに記載された機能は図面に記載された順序を逸脱して現われてよい。例えば、連続して示されている２つのブロックは、実際には、関連機能に応じて、実質的に同時に実行されても、又は時には逆順に実行されてもよい。ブロック図及び／又はフロー図の各ブロック、並びに、ブロック図及び／又はフロー図におけるブロックの組み合わせは、特定の機能又は作用を実施する特殊用途のハードウェアベースのシステムによって実装されうるか、或いは、特殊用途ハードウェアとコンピュータ命令との組み合わせによって実行されうることにも、留意されたい。
【００９１】
更に、本開示は、以下の条項による実施例を含む。
条項１  水中通信システムであって、
ネットワーク通信インターフェースと、
一又は複数のコンピュータプロセッサと、
メモリであって、一又は複数のコンピュータプロセッサの動作によって実行されると、
宛先デバイスに送信されるべき複数のデータパケットを記憶すること、
ネットワーク通信インターフェースを介したデータ通信が第１のネットワークノードに利用可能となったことを決定すること、
第１のネットワークノードがアクセス許可局によって無効にされていない有効なセキュリティ証明書を有していると決定すること、及び
第１のネットワークノードが有効なセキュリティ証明書を有していると決定すると、記憶された複数のデータパケットをネットワーク通信インターフェースを介して第１のネットワークノードに送信することであって、第１のネットワークノードが、記憶／伝達／転送データメッセージング技術を用いて、複数のデータパケットを宛先デバイスに向かって送信するように構成される、送信すること
を含む動作を実行する、コンピュータプログラムコードを含むメモリと
を含む水中通信システム。
条項２  第１のネットワークノードがアクセス許可局によって無効にされていない有効なセキュリティ証明書を有していると決定することが、
第１のネットワークノードに対応する識別子が失効リスト内の識別子に一致するかどうかを判定することであって、失効リストが、公開マスターキー及び秘密復号キーのうちの少なくとも１つへの無効アクセスを有するネットワークノードの複数の識別子を含む、判定すること
を更に含む、条項１に記載の水中通信システム。
条項３  動作が、
第２の宛先デバイスに送信されるべき第２の複数のデータパケットを記憶することと、
ネットワーク通信インターフェースを介したデータ通信が、第２の複数のデータパケットの送信のために、第１のネットワークノードに利用可能であると決定することと、
第１のネットワークノードが、アクセス許可局によって無効にされていない有効なセキュリティ証明書をなおも有しているかどうかを判定することと
を更に含む、条項２に記載の水中通信システム。
条項４  第１のネットワークノードがアクセス許可局によって無効にされていない有効なセキュリティ証明書を有していると決定することが、
第１のネットワークノードに対応する識別子が失効リスト内の識別子に一致すると決定すると、第１のネットワークノードが有効なセキュリティ証明書を有していないと決定することと、
結果として、記憶された複数のデータパケットの第１のネットワークノードへの送信を防止することと
を更に含む、条項３に記載の水中通信システム。
条項５  アクセス拒否局が、
水中通信システムに関連付けられた識別子、アドレス及び識別証明を受信することと、
水中通信システムに固有である秘密復号キーを生成することと、
公開マスターキー又は秘密復号キーへの無効アクセスを検証する際に使用するための公開マスターキー及びアクセス拒否マスターキーを生成することと
を含む動作を実行するよう更に構成され、
秘密復号キー、公開マスターキー及びアクセス拒否マスターキーが、水中通信システムに記憶されるように構成されている、条項４に記載の水中通信システム。
条項６  アクセス拒否局によって実行される動作が、
公開マスターキー又は秘密復号キーへの無効アクセスを有する少なくとも１つのメッセージ受信者を示す取消メッセージを水中通信システムに送信することを更に含む、条項５に記載の水中通信システム。
条項７  コンピュータプログラムコードの実行により更に実行される動作が、
アクセス拒否マスターキーに少なくとも部分的に基づいて、失効メッセージの有効性を受信及び検証することと、
失効メッセージの有効性の検証に応答して、少なくとも１人のメッセージ受信者の識別子を含むように失効リストを更新することと
を含む、条項５に記載の水中通信システム。
条項８  動作が、
第１のネットワークノードが有効なセキュリティ証明書を有していると決定すると、
公開マスターキー、有効期間、及び宛先デバイスの識別子をキー生成モジュールへの入力として渡すことによって、公開暗号キーの一時コピーを生成することと、
公開暗号キーの生成された一時コピーを使用して、複数のデータパケットを暗号化することと
を更に含む、条項１に記載の水中通信システム。
条項９  ネットワーク通信インターフェースが、音響データ送信デバイスを更に含む、条項１に記載の水中通信システム。
条項１０  記憶された複数のデータパケットをネットワーク通信インターフェースを介して、複数のデータパケットを宛先デバイスに向かって送信するために、記憶／伝達／転送データメッセージング技術を用いる第１のネットワークノードに送信することが、
複数のデータパケットのうちの第１のパケットについて、再送条件が満たされていると決定することと、
第１のデータパケットを、ネットワーク通信インターフェースを介して第１のネットワークノードに再送することと
を更に含む、条項１に記載の水中通信システム。
条項１１  再送条件が、（ｉ）上流ネットワークノードでエラーが発生したと決定すること、及び（ｉｉ）第１のネットワークノードが第１のデータパケットの受け入れを拒否することのうちの少なくとも１つを含む、条項１０に記載の水中通信システム。
条項１２  記憶／伝達／転送データメッセージング技術が、遅延及び中断耐性ネットワーキング（ＤＴＮ）プロトコルを更に含み、ＤＴＮプロトコルが、一又は複数の下位レイヤネットワーキングプロトコルヘッダの上にバンドルプロトコルレイヤをオーバーレイすることを含み、一又は複数の下位レイヤネットワーキングプロトコルが、インターネットプロトコル（ＩＰ）レイヤを更に含む、条項１に記載の水中通信システム。
条項１３  （ｉ）一又は複数のＤＴＮブロックを含むバンドルヘッダと（ｉｉ）アプリケーションデータとを更に含む、条項１２に記載の水中通信システム。
条項１４  アプリケーションデータが、ソースアプリケーションによって提供され、ペイロードデータを処理する方法を記述する制御情報を更に含む、条項１３に記載の水中通信システム。
条項１５  少なくとも１つのネットワークノードが水中輸送体を含む水中通信ネットワーク内で使用するためのネットワークデバイスであって、
第１のネットワーク通信インターフェースと、
第２のネットワーク通信インターフェースと、
一又は複数のコンピュータプロセッサと、
メモリであって、一又は複数のコンピュータプロセッサの動作によって実行されると、
第１のネットワーク通信インターフェースを介して、第１のネットワークノードから、宛先デバイスに送信されるべき複数のデータパケットを受信すること、
複数のデータパケットを記憶することと、
ネットワーク通信インターフェースを介したデータ通信が第２のネットワークノードに利用可能となったことを決定すること、
第２のネットワークノードがアクセス許可局によって無効にされていない有効なセキュリティ証明書を有していると決定すること、及び
第２のネットワークノードが有効なセキュリティ証明書を有していると決定すると、記憶された複数のデータパケットを、第２のネットワーク通信インターフェースを介して第２のネットワークノードに送信することと
を含む動作を実行するコンピュータプログラムコードを含むメモリと
を含むネットワークデバイス。
条項１６  第１のネットワーク通信インターフェースが、水中輸送体に音響伝達を送信し、かつ水中輸送体から音響伝達を受信するための音響トランシーバを含む、条項１５に記載のネットワークデバイス。
条項１７  第２のネットワーク通信インターフェースが、衛星及び空中輸送体のうちの少なくとも１つに無線信号を送信し、かつ衛星及び空中輸送体のうちの少なくとも１つから無線信号を受信するための無線信号トランシーバを含む、条項１５に記載のネットワークデバイス。
条項１８  動作が、
第１のネットワーク通信インターフェースを介して、第１のネットワークノードから、宛先デバイスに送信されるべき第２の複数のデータパケットを受信することと、
第２の複数のデータパケットを記憶することと、
第２の複数のデータパケットを記憶した後に、ネットワーク通信インターフェースを介したデータ通信が第２のネットワークノードに利用可能となったことを決定することと、
第２のネットワークノードが、アクセス許可局によって無効にされていない有効なセキュリティ証明書をなおも有しているかどうかを判定することであって、第１のネットワークノードに対応する識別子が失効リスト内の識別子に一致するかどうかを判定することを含む、判定することと、
第２のネットワークノードに対応する識別子が失効リスト内の識別子に一致すると決定すると、第２のネットワークノードが有効なセキュリティ証明書を有していないと決定することと、
結果として、記憶された前記複数のデータパケットの第２のネットワークノードへの送信を防止することと
を更に含む、条項１５に記載のネットワークデバイス。
条項１９  アクセス拒否局が、
ネットワークデバイスに関連付けられた識別子、アドレス及び識別証明を受信することと、
ネットワークデバイスに固有である秘密復号キーを生成することと、
公開マスターキー又は秘密復号キーへの無効アクセスを検証する際に使用するための公開マスターキー及びアクセス拒否マスターキーを生成することと
を含む動作を実行するよう更に構成され、
秘密復号キー、公開マスターキー及びアクセス拒否マスターキーが、ネットワークデバイスに記憶されるように構成されている、条項１８に記載のネットワークデバイス。
条項２０  水中通信システムであって、
ネットワーク通信インターフェースと、
一又は複数のコンピュータプロセッサと、
メモリであって、一又は複数のコンピュータプロセッサの動作によって実行されると、
公開キー配信ネットワーク（ＰＫＤＮ）と共にアイデンティティベースの暗号化（ＩＤＢＣ）を使用することによって、第２のネットワークデバイスが許可されたネットワークデバイスであると決定すること、並びに
第２のネットワークデバイスが許可されたネットワークデバイスであると決定すると、遅延及び中断耐性ネットワーキング（ＤＴＮ）ネットワークプロトコルの使用によって、ネットワーク通信インターフェースを介して、宛先デバイスに送信されるべき複数のデータパケットを第２のネットワークデバイスに送信すること
を含む動作を実行するコンピュータプログラムコードを含むメモリと
を含む水中通信システム。
【００９２】
上記は本発明の実施例を対象とするが、本発明の基本的な範囲から逸脱することなく、本発明の他の例及び更なる例を考案することもでき、本発明の範囲は、以下の特許請求の範囲によって決定される。
【図１】
2019134401.tif 000003
【図２】
2019134401.tif 000004
【図３】
2019134401.tif 000005
【図４】
2019134401.tif 000006
【図５】
2019134401.tif 000007
【図６】
2019134401.tif 000008
【図７】
2019134401.tif 000009
【図８】
2019134401.tif 000010
【図９】
2019134401.tif 000011
【図１０】
2019134401.tif 000012
【図１１】
2019134401.tif 000013
【図１２】
2019134401.tif 000014
【外国語明細書】
2019134401000001.pdf
2019134401000002.pdf
2019134401000003.pdf
2019134401000004.pdf