JP2021040308A - エンドツーエンドのセキュアな通信のための方法および装置 - Google Patents

エンドツーエンドのセキュアな通信のための方法および装置 Download PDF

Info

Publication number
JP2021040308A
JP2021040308A JP2020144311A JP2020144311A JP2021040308A JP 2021040308 A JP2021040308 A JP 2021040308A JP 2020144311 A JP2020144311 A JP 2020144311A JP 2020144311 A JP2020144311 A JP 2020144311A JP 2021040308 A JP2021040308 A JP 2021040308A
Authority
JP
Japan
Prior art keywords
end device
gateway
data
server
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.)
Pending
Application number
JP2020144311A
Other languages
English (en)
Inventor
ハリハラスダン、ビニュワラン
Vigneswaran Hariharasudhan
ペッレ、ベルクビスト
Pelle Bergkvist
ビルヘルム、ウレン
Vilhelm Ullen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
U Blox AG
Original Assignee
U Blox AG
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 U Blox AG filed Critical U Blox AG
Publication of JP2021040308A publication Critical patent/JP2021040308A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/033Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0471Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying encryption by an intermediary, e.g. receiving clear information at the intermediary and encrypting the received information at the intermediary before forwarding
    • 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/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • 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
    • 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/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0846Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/009Security arrangements; Authentication; Protecting privacy or anonymity specially adapted for networks, e.g. wireless sensor networks, ad-hoc networks, RFID networks or cloud networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • H04W12/0433Key management protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/16Gateway arrangements

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)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】ネットワーク上での第1のデバイスと第2のデバイスとの間のセキュアな通信のための方法および装置を提供すること。【解決手段】方法は、パケット断片化を使用したシリアルデータストリームを通して、第1のデバイスから第2のデバイスにセキュリティメッセージを送信することと、ネットワーク上で、第1のデバイスと第2のデバイスとの間に、セキュリティメッセージに基づいたセキュアな接続を構成することと、第1のデバイスから第2のデバイスにデータを送信すること、または第2のデバイスから第1のデバイスによってデータを受信することのうちの少なくとも1つによって、セキュアな接続を介してデータを通信することと、を含む。【選択図】図1

Description

本開示は、エンドツーエンドのセキュアな通信に関し、より詳細には、制約されたネットワーク上でのセキュリティプロトコルに基づいたエンドツーエンドのセキュアな通信のための方法および装置に関する。
ワイヤレスのモノのインターネット(IoT)ネットワークにおいて、エンドノードは通常、非インターネットプロトコルベースの(非IPベースの)ワイヤレス通信を通して、データをゲートウェイに送信する。ゲートウェイがエンドノードからデータを受信した後で、ゲートウェイは、インターネットプロトコルベースの(IPベースの)通信を通して、データをクラウドサーバに送信する。データ送信は一般に、エンドノードとゲートウェイとの間、およびゲートウェイとクラウドサーバとの間でセキュアにされる。
しかしながら、ゲートウェイがデータを処理するとき、ゲートウェイは、データを傍受から保護しないことがある。例えば、ゲートウェイが公共の環境にあるとき、ゲートウェイは、傍受またはハッキングの高リスクにあることがある。したがって、ゲートウェイは信頼されないことがある。エンドノードから受信されたデータは、操作されていることがあり、したがって、セキュアにされていない。その上、データは、意図されない、または認可されない目的のために、複製またはリダイレクトされていることがある。
したがって、制約されたネットワーク上でのデバイス間のエンドツーエンドのセキュアな通信のための方法および装置を提供することが望ましい。
本開示の実施形態は、IоTノードとクラウドサーバとの間、2つのIоTノード間、およびユーザデバイスとIоTノードとの間のエンドツーエンドのセキュリティを改善する、制約されたネットワーク上でのセキュリティプロトコルに基づいたエンドツーエンドのセキュアな通信のための方法および装置を提供する。
これらの実施形態は、ネットワーク上での第1のデバイスと第2のデバイスとの間のセキュアな通信のための方法を含む。方法は、パケット断片化を使用したシリアルデータストリームを通して、第1のデバイスから第2のデバイスにセキュリティメッセージを送信することと、ネットワーク上で、第1のデバイスと第2のデバイスとの間に、セキュリティメッセージに基づいたセキュアな接続を構成することと、第1のデバイスから第2のデバイスにデータを送信すること、または第2のデバイスから第1のデバイスによってデータを受信することのうちの少なくとも1つによって、セキュアな接続を介してデータを通信することを含む。
これらの実施形態はまた、ネットワーク上でのリモートデバイスとのセキュアな通信のためのエンドデバイスを含む。エンドデバイスは、命令を記憶するための少なくとも1つのメモリと、動作を実施するための命令を実行するように構成された少なくとも1つのコントローラとを含む。動作は、パケット断片化を使用したシリアルデータストリームを通して、リモートデバイスにセキュリティメッセージを送信することと、ネットワーク上で、リモートデバイスと、セキュリティメッセージに基づいたセキュアな接続を構成することと、リモートデバイスにデータを送信すること、またはリモートデバイスからデータを受信することのうちの少なくとも1つによって、セキュアな接続を介してデータを通信することを含む。
これらの実施形態は、実行されるときに、コントローラに、ネットワーク上での第1のデバイスと第2のデバイスとの間のセキュアな通信のための動作を実施させる命令を記憶するための、非一時的なコンピュータ可読媒体をさらに含む。動作は、パケット断片化を使用したシリアルデータストリームを通して、第1のデバイスから第2のデバイスにセキュリティメッセージを送信することと、ネットワーク上で、第1のデバイスと第2のデバイスとの間に、セキュリティメッセージに基づいたセキュアな接続を構成することと、第1のデバイスから第2のデバイスにデータを送信すること、または第2のデバイスから第1のデバイスによってデータを受信することのうちの少なくとも1つによって、セキュアな接続を介してデータを通信することを含む。
本開示の実施形態と一致する、典型的なワイヤレスIоTネットワークの概略図である。 本開示の実施形態と一致する、ワイヤレスIоTネットワークの別の典型的なシナリオの概略図である。 本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信のための典型的なエンドデバイスのブロック図である。 本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信のための典型的なサーバのブロック図である。 本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信のための典型的な通信方法を例示する図である。 本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信のための典型的なプロトコルスタックを例示する図である。 本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信のための別の典型的な通信方法を例示する図である。 本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信を提供するためにエンドデバイスにおいて実施される典型的な方法のフローチャートである。 本開示の実施形態と一致する、エンドツーエンドのセキュアな通信を提供するためにネットワーク上のデバイスにおいて実施される別の典型的な方法のフローチャートである。 本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信を開始するためにエンドデバイスにおいて実施される典型的な方法のフローチャートである。 本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信のための要求を受信するためにエンドデバイスにおいて実施される典型的な方法のフローチャートである。
これより、付属の図面においてその例が例示される典型的な実施形態への参照が詳細に行われることになる。以下の説明は、付属の図面を参照し、異なる図面における同じ番号は、別段そうでないことが表されない限り、同じまたは類似した要素を表す。典型的な実施形態の以下の説明において明記される実装は、本発明と一致したすべての実装を表すものではない。そうではなく、それらは、添付の特許請求の範囲に列挙される通り、本発明に関係した態様と一致した装置および方法の単なる例である。
図1は、本開示の実施形態と一致する、典型的なワイヤレスIоTネットワーク100の概略図である。ワイヤレスIоTネットワーク100は、3つのエンドデバイス121、122、および123と、ゲートウェイ140と、サーバ160とを含む。エンドデバイス121は、例えば、Bluetoothクラシック通信プロトコルを使用して、シリアルストリーム131上でゲートウェイ140に接続する。エンドデバイス122は、例えば、Bluetooth Low Energy通信プロトコルを使用することによって、シリアルストリーム132上でゲートウェイ140に接続する。エンドデバイス123は、例えば、ユニバーサル非同期受信機/送信機(UART)通信プロトコルを使用することによって、シリアルストリーム133上でゲートウェイ140に接続する。ゲートウェイ140は、インターネットプロトコル(IP)通信150を介してサーバ160に接続する。
エンドデバイス121、122、または123は、制約されたネットワーク上で通信をサポートする、熱センサ、温度センサ、画像センサ、圧力センサ、湿度センサ、加速度計、物体センサ、および動きセンサなどのセンサデバイスであってよい。あるいは、エンドデバイス121、122、または123は、制約されたネットワーク上で通信をサポートする、カメラ、ハンドセット、ラップトップ、コンピュータ、または表示デバイスなどの別のタイプのデバイスであってもよい。
ゲートウェイ140は、IP通信、ならびにBluetooth Low Energy、Bluetoothクラシック、Zigbee、およびユニバーサル非同期受信機/送信機の通信プロトコルのうちの1つまたは複数をサポートするIоTゲートウェイであってよい。例えば、図1に示されるように、ゲートウェイ140は、Bluetoothクラシック、Bluetooth Low Energy、およびUART通信プロトコルを使用することによって、シリアルストリーム131、132、および133を通して、それぞれ、エンドデバイス121、122、および123に接続する。
サーバ160は、IоTアプリケーションのためのサポート、環境データ収集、またはエンドデバイス間でのデータ共有を提供するクラウドサーバであってよい。図1に示されるように、サーバ160は、IP通信150を介してゲートウェイ140に接続する。あるいは、サーバ160は、インターネット上で、様々なアプリケーションを実行し、ゲートウェイ140に接続されるサーバ装置であってもよい。
図1に示されるように、エンドデバイス121およびサーバ160は、ワイヤレスIoTネットワーク100において、シリアルストリーム131およびIP通信150上でゲートウェイ140を通して、互いの間にセキュリティプロトコル接続155を確立する。セキュリティプロトコル接続155は、2つのエンドノード間、またはエンドノードとサーバとの間のセキュリティプロトコルの接続である。例えば、セキュリティプロトコル接続155は、セキュアソケット層(SSL)プロトコル、トランスポート層セキュリティ(TLS)プロトコル、およびデータグラムTLS(DTLS)プロトコルなどの、トランスポート層におけるセキュリティプロトコルの接続であってよい。別の例として、セキュリティプロトコル接続155は、セキュア/多目的インターネットメール拡張(S/MIME)プロトコル、オープン・プリティ・グッド・プライバシー(OpenPGP)プロトコル、またはセキュア・ハイパーテキスト・トランスファー・プロトコル(S/HTTP)などの、アプリケーション層のセキュリティプロトコルの接続であってもよい。セキュリティプロトコル接続155はまた、トランスポート層とアプリケーション層とにまたがるセキュリティプロトコルの接続であってもよい。
図1に示されるように、ワイヤレスIоTネットワーク100は、エンドデバイス121、122、および123、ゲートウェイ140、ならびにサーバ160などの複数のネットワークノードを含む。これらのネットワークノードのうちの1つまたは複数は、「制約された」ノードであり得る。制約されたノードは、コスト、またはサイズ、重さなどの物理特性、ならびに利用可能な電力およびエネルギーについての制約のために、多くのインターネットノードに共通である特性のうちのいくつかが獲得可能ではないノードである。電力、メモリ、および処理リソースについての厳しい制約は、状態、符号空間、および処理サイクルのハード上限につながり、エネルギーおよびネットワーク帯域幅使用量の最適化を、すべての設計要件において他に優先する検討事項とする。また、制約されたノードにおいては、完全接続性およびブロードキャスト/マルチキャストなどの、いくつかの第2層サービスが欠けていることがある。
例えば、エンドデバイス121は、スマートシティにおけるある場所で湿度を測定するスマートメータであってもよい。スマートメータは、そのシティにおける都合のよい設置のためにサイズおよび重さについて制約される。スマートメータは通常バッテリによって電力供給されるので、スマートメータはまた、湿度を測定し、測定結果をスマートシティの中央サーバに報告するために利用可能な電力およびエネルギーについても制約される。
その上、スマートメータは、時間ごとに一度などの周期的にしか、湿度を測定し、測定結果を報告する必要がないことがある。スマートメータは低いデューティサイクルで湿度を測定する必要しかないために、スマートメータは、湿度センサおよび測定報告用の送信機を制御するだけに十分な処理能力を有するコントローラを収容する。スマートメータはまた、湿度の測定および報告という複雑でない制御のための符号を記憶するだけに十分な最小量のメモリを装備されてよい。したがって、エンドデバイス121は、上述された制約のうちの1つまたは複数のために、制約されたノードである。
エンドデバイス122および123もまた、上述された制約のうちの1つまたは複数のために、制約されたノードであり得る。
ワイヤレスIоTネットワーク100は、制約されたネットワークである。制約されたネットワークは、IPリンクにおいて共通に見られる特性のうちのいくつかが獲得可能ではないネットワークである。例えば、ワイヤレスIоTネットワーク100は、ビットレート、デューティサイクル、配信レート、非対称リンク特性、パケットサイズ、経時的な到達可能性、またはネットワークサービスのうちの少なくとも1つにおいて制約されたリンクを含むことがある。
ワイヤレスIоTネットワーク100におけるリンクは、低く達成可能なビットレートまたはスループットによって制約されることがある。例えば、Bluetoothクラシック通信プロトコルの制限およびエンドデバイス121のバッテリの限定された容量のために、エンドデバイス121とゲートウェイ140との間のリンクが、毎秒200キロビット(Kbps)に制約されることがある。ワイヤレスIоTネットワーク100における200Kbpsのレートまたはスループットは、例えば、毎秒100メガビット(Mbps)または毎秒1ギガビット(Gbps)をサポートするワイヤレスIоTネットワーク100における他のリンクと比較して、低いレートである。
あるいは、ワイヤレスIоTネットワーク100におけるリンクは、低いデューティサイクルによって制約されることがある。例えば、エンドデバイス121における限定されたバッテリ容量のために、エンドデバイス121とゲートウェイ140との間のリンクが、時間ごとに一度のみデータを送信するように制約されることがある。ワイヤレスIоTネットワーク100における時間ごとに一送信のデューティサイクルは、例えば、データ送信について20%または50%のデューティサイクルをサポートするワイヤレスIоTネットワーク100における他のリンクと比較して、低いデューティサイクルである。
いくつかの実施形態において、ワイヤレスIоTネットワーク100におけるリンクは、低い配信レートによって制約されることがある。例えば、エンドデバイス121が不適当な場所に設置され、その結果、ゲートウェイ140がエンドデバイス121から送信された信号を低い信号対雑音比(SNR)で受信して、低い正常なパケット送信レートの原因となるために、エンドデバイス121とゲートウェイ140との間のリンクが、10%の正常なパケット送信レートに制約されることがある。ワイヤレスIоTネットワーク100における10%の正常な送信レートは、例えば、データ送信について70%または80%の正常な送信レートをサポートするワイヤレスIоTネットワーク100における他のリンクと比較して、低い。10%の正常なパケット送信レートは、90%のパケット損失レートと同等である。
ワイヤレスIоTネットワーク100におけるリンクは、非対称リンク特性によって制約されることがある。例えば、エンドデバイス121からサーバ160へと、その反対方向よりも多くのメッセージ送信するように、エンドデバイス121とゲートウェイ140との間のリンクが制約されることがある。ワイヤレスIоTネットワーク100において主に一方向に送信するリンクは、デバイスが互いに同じような量だけデータを通信するワイヤレスIоTネットワーク100における他のリンクと比較して、非対称リンクである。
あるいは、ワイヤレスIоTネットワーク100におけるリンクは、パケットサイズによって制約されることがある。例えば、1キロビット(Kb)よりも多いパケットが高いパケット損失をもたらすことから、1Kbの最大サイズのパケットを送信するように、エンドデバイス121とゲートウェイ140との間のリンクが制約されることがある。ワイヤレスIоTネットワーク100において1Kbのみのパケットサイズを扱うリンクは、例えば、4メガバイト(MB)のデータ送信パケットサイズをサポートすることができるワイヤレスIоTネットワーク100における他のリンクと比較して、パケットサイズについてこうして制約される。
ワイヤレスIоTネットワーク100におけるリンクはまた、経時的な到達可能性によって制約されることがある。例えば、エンドデバイス121がバッテリ電力供給型のデバイスであり、すべての測定結果を送信した後にスリープモードに入るために、1時間のうちの短い時間の期間のみ通信するように、エンドデバイス121とゲートウェイ140との間のリンクが制約されることがある。したがって、エンドデバイス121は、エンドデバイス121が次の時間に「起きる」まで到達され得ない。ワイヤレスIоTネットワーク100においてエンドデバイス121に到達するために限定された時間を有するリンクは、デバイスが経時的に常に到達可能であるワイヤレスIоTネットワーク100における他のリンクと比較して、経時的な到達可能性についてこうして制約される。
あるいは、ワイヤレスIоTネットワーク100におけるリンクは、利用可能なネットワークサービスへの制限によって制約されることがある。例えば、エンドデバイス121がサーバ160へのユニキャストサービスのみを実施するための限定された量の符号で構成されていることから、エンドデバイス121とゲートウェイ140との間のリンクが、IPマルチキャストサービスをサポートしないことがある。ワイヤレスIоTネットワーク100における限定されたネットワークサービスのリンクは、例えば、すべてのユニキャスト、マルチキャスト、およびブロードキャストサービスをサポートすることができるワイヤレスIоTネットワーク100における他のリンクと比較して、ネットワークサービスについてこうして制約される。
ワイヤレスIоTネットワーク100におけるエンドデバイス122および123と他のネットワークノードとの間の他のリンクもまた、上述された特性のうちの1つまたは複数によって制約されることがある。
いくつかの実施形態において、ワイヤレスIоTネットワーク100は、ネットワークがエンドデバイス121などの制約されたノードを含むために、制約されたネットワークである。エンドデバイス121はサイズ、重さ、ならびに送信を実施するために利用可能な電力およびエネルギーによって限定されることがあるので、エンドデバイス121の間のリンクは、ビットレート、デューティサイクル、配信レート、非対称リンク特性、パケットサイズ、経時的な到達可能性、またはネットワークサービスについてこうして制約される。こうして、ワイヤレスIоTネットワーク100は、制約されたネットワークである。
図2は、本開示の実施形態と一致する、ワイヤレスIоTネットワーク200の別の典型的なシナリオの概略図である。ワイヤレスIоTネットワーク200は、5つのエンドデバイス221、222、223、270、および290と、2つのゲートウェイ240および280と、インターネット260とを含む。エンドデバイス221は、Bluetoothクラシック通信プロトコルを使用することによって、シリアルストリーム231上でゲートウェイ240に接続する。エンドデバイス222は、Bluetooth Low Energy通信プロトコルを使用することによって、シリアルストリーム232上でゲートウェイ240に接続する。エンドデバイス223は、UART通信プロトコルを使用することによって、シリアルストリーム233上でゲートウェイ240に接続する。エンドデバイス270は、IP通信252上でインターネット260に接続する。エンドデバイス290は、制約されたシリアルリンク239上でゲートウェイ280に接続する。ゲートウェイ240は、IP通信250を介してインターネット260に接続する。ゲートウェイ280は、IP通信251を介してインターネット260に接続する。
エンドデバイス221、222、223、270、および290は、制約されたネットワーク上で通信をサポートする、熱センサ、温度センサ、画像センサ、圧力センサ、湿度センサ、加速度計、物体センサ、動きセンサなどのセンサデバイス、カメラ、ハンドセット、ラップトップ、コンピュータ、または表示デバイスであってよい。
ゲートウェイ240またはゲートウェイ280は、Bluetooth Low Energy、Bluetoothクラシック、Zigbee、およびユニバーサル非同期受信機/送信機などの1つまたは複数の通信プロトコルをサポートするIоTゲートウェイであってよい。例えば、図2に示されるように、ゲートウェイ240は、Bluetoothクラシック、Bluetooth Low Energy、およびUART通信プロトコルを使用することによって、シリアルストリーム231、232、および233を通して、それぞれ、エンドデバイス221、222、および223に接続する。ゲートウェイ280は、例えば、Zigbee通信プロトコルを使用することによって、制約されたシリアルリンク239を通してエンドデバイス290に接続する。
図2に示されるように、エンドデバイス221およびエンドデバイス290は、ワイヤレスIoTネットワーク200において、シリアルストリーム231上でゲートウェイ240を通して、IP通信250およびIP通信251上でインターネット260を通して、ならびに制約されたシリアルリンク239上でゲートウェイ280を通して、互いの間にセキュリティプロトコル接続255を確立する。
図2に示されるように、エンドデバイス270およびエンドデバイス290もまた、ワイヤレスIоTネットワーク200において、IP通信251および252上でインターネット260を通して、ならびに制約されたシリアルリンク239上でゲートウェイ280を通して、互いの間に別のセキュリティプロトコル接続256を確立する。
セキュリティプロトコル接続255および256は、2つのエンドノード間、またはエンドノードとサーバとの間のセキュリティプロトコルの接続である。例えば、セキュリティプロトコル接続255および256は、セキュアソケット層(SSL)プロトコル、トランスポート層セキュリティ(TLS)プロトコル、およびデータグラムTLS(DTLS)プロトコルなどの、トランスポート層におけるセキュリティプロトコルの接続であってよい。あるいは、セキュリティプロトコル接続255および256は、セキュア/多目的インターネットメール拡張(S/MIME)プロトコル、オープン・プリティ・グッド・プライバシー(OpenPGP)プロトコル、およびセキュア・ハイパーテキスト・トランスファー・プロトコル(S/HTTP)などの、アプリケーション層におけるセキュリティプロトコルの接続であってもよい。セキュリティプロトコル接続255および256はまた、トランスポート層とアプリケーション層とにまたがるセキュリティプロトコルの接続であってもよい。
ワイヤレスIоTネットワーク200は、制約されたネットワークである。例えば、ワイヤレスIоTネットワーク200は、ワイヤレスIоTネットワーク100におけるエンドデバイス121とゲートウェイ140との間のリンクについて図1において上で説明されるように、ビットレート、デューティサイクル、配信レート、非対称リンク特性、パケットサイズ、経時的な到達可能性、またはネットワークサービスのうちの少なくとも1つによって制約されたリンクを含む。エンドデバイス221とゲートウェイ240との間のリンクは、エンドデバイス121とゲートウェイ140との間の図1におけるリンクと同様のやり方で制約され得る。あるいは、エンドデバイス290とゲートウェイ280との間のリンクが、エンドデバイス121とゲートウェイ140との間の図1におけるリンクと同様のやり方で制約されてもよい。
エンドデバイス222および223と、ワイヤレスIоTネットワーク200における他のネットワークノードとの間のリンクもまた、上で説明された特性のうちの1つまたは複数によって制約されることがある。
いくつかの実施形態において、ワイヤレスIоTネットワーク200は、ネットワークがエンドデバイス221などの制約されたノードを含むために、制約されたネットワークである。例えば、エンドデバイス221は、サイズ、重さ、ならびに送信を実施するために利用可能な電力およびエネルギーにおいて限定されることがあり、その結果、エンドデバイス221の間のリンクが、ビットレート、デューティサイクル、配信レート、非対称リンク特性、パケットサイズ、経時的な到達可能性、またはネットワークサービスによって制約される。こうして、ワイヤレスIоTネットワーク200は、制約されたネットワークである。
図3は、本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信のための典型的なエンドデバイス300のブロック図である。エンドデバイス300は、図1に示されたデバイス121、122、もしくは123として、または図2に示された221、222、223、270、もしくは290として具現化されてよい。エンドデバイス300は、アンテナ310と、トランシーバ320と、コントローラ360と、メモリ380とを含む。エンドデバイス300のこれらの要素のうちの1つまたは複数は、制約されたネットワーク上でのリモートデバイスとのセキュアな通信のために含まれてよい。これらの要素は、互いの間で、または互いの中でデータを移送する、ならびに命令および信号を送信、または受信するように構成されてよい。
トランシーバ320は、エンドデバイス300の制御信号およびデータを、アンテナ310を介して送信および/または受信するための送信機および/または受信機を含むことができる。トランシーバ320は、例えば、Bluetooth Low Energy・モデムおよび無線周波数回路、Bluetoothクラシック・モデムおよび無線周波数回路、Zigbeeモデムおよび無線周波数回路、UARTトランシーバ、第5世代無線アクセスモデムおよび無線周波数回路、ロングタームエボリューション(LTE)モデムおよび無線周波数回路、狭帯域モノのインターネット(NB−IоT)および無線周波数回路、高速パケットアクセス(HSPA)モデムおよび無線周波数回路、広帯域符号分割多重アクセス(WCDMA)モデムおよび無線周波数回路、ならびに/または移動通信のためのグローバル・システム(GSM)モデムおよび無線周波数回路を含む、1つまたは複数の通信トランシーバを含むことができる。トランシーバ320は、上で説明された図1および図2で例示され、下で説明される図5〜図11で例示されるように、メッセージおよびデータを送信し、受信するためにそのコンポーネントを制御する制御回路をさらに含んで、制約されたネットワーク上でのリモートデバイスとのセキュアな通信をこうして提供することができる。
コントローラ360は、任意の適切なタイプの汎用もしくは特殊目的のマイクロプロセッサ、デジタル信号プロセッサ、またはマイクロコントローラを含む。コントローラ360は、エンドデバイス121、122、123、221、222、223、270、または290における1つもしくは複数のプロセッサまたはコントローラを表すことができる。コントローラ360は、図1および図2で例示され、図5〜図11において下で説明される方法および装置に関して、エンドデバイス300の動作を実施するためにメモリ380に記憶された1つまたは複数のプログラムによって構成されてよい。
メモリ380は、コントローラ360が動作するために必要とすることがある任意のタイプの情報を記憶するために提供される任意の適切なタイプの大容量記憶域を含むことができる。メモリ380は、限定はされないが、読み出し専用メモリ(ROM)、フラッシュメモリ、ダイナミックランダムアクセスメモリ(RAM)、およびスタティックRAMを含む、揮発性もしくは不揮発性、磁気、半導体、テープ、光学式、リムーバブル、非リムーバブル、または他のタイプの記憶デバイス、または有形の(すなわち、非一時的な)コンピュータ可読媒体であってよい。メモリ380は、本明細書で開示されるように、制約されたネットワーク上でのリモートデバイスとのセキュアな通信のために、コントローラ360による実行のための1つまたは複数のプログラムを記憶するように構成されてよい。メモリ380は、コントローラ360によって使用される情報およびデータを記憶するようにさらに構成されてよい。例えば、メモリ380は、エンドデバイス300のために、受信されたセキュリティメッセージ、キー、証明書、およびデータをその中に記憶するように構成されてよい。
図4は、本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信のための典型的なサーバ400のブロック図である。サーバ400は、例えば、図1に示されたサーバ160として具現化されてよい。サーバ400は、トランシーバ420と、入力/出力(I/O)インターフェース440と、プロセッサ460と、メモリ480とを含む。エンドデバイス400のこれらの要素のうちの1つまたは複数は、ネットワーク上でのリモートデバイスとのセキュアな通信のために含まれてよい。これらの要素は、互いの間で、または互いの中でデータを移送する、ならびに命令および信号を送信、または受信するように構成されてよい。
トランシーバ420は、サーバ400の制御信号およびデータを送信および/または受信するための送信機および/または受信機を含むことができる。トランシーバ420は、例えば、イーサネットモデム、ワイヤレスローカルエリアネットワーク(WLAN)モデムおよび無線周波数回路、デジタル加入者線(DSL)モデム、光ファイバーモデム、第5世代無線アクセスモデムおよび無線周波数回路、ロングタームエボリューション(LTE)モデムおよび無線周波数回路、高速パケットアクセス(HSPA)モデムおよび無線周波数回路、広帯域符号分割多重アクセス(WCDMA)モデムおよび無線周波数回路、ならびに/または移動通信のためのグローバル・システム(GSM)モデムおよび無線周波数回路を含む、1つまたは複数の通信トランシーバを含むことができる。いくつかの実施形態において、トランシーバ420は、Bluetooth Low Energy・モデムおよび無線周波数回路、Bluetoothクラシック・モデムおよび無線周波数回路、Zigbeeモデムおよび無線周波数回路、またはUARTトランシーバなどの、1つまたは複数の通信トランシーバを含むことができる。
トランシーバ420は、図1で例示され、図5、図6、および図9において下で説明されるように、メッセージおよびデータを送信し、受信するためにそのコンポーネントを制御する制御回路をさらに含むことができる。いくつかの実施形態において、プロセッサ460は、図1で例示され、図5、図6、および図9において下で説明されるように、ネットワーク上でのリモートデバイスとのセキュアな通信のためにトランシーバ420を制御することができる。
プロセッサ460は、任意の適切なタイプの汎用もしくは特殊目的のマイクロプロセッサ、デジタル信号プロセッサ、またはマイクロコントローラを含む。プロセッサ460は、サーバ400における1つまたは複数のプロセッサを表すことができる。プロセッサ460は、図1で例示され、図5、図6、および図9において下で説明される方法、回路、および装置に関して説明される、サーバ400の動作を実施するためにメモリ480に記憶された1つまたは複数のプログラムによって構成されてよい。
メモリ480は、プロセッサ460が動作するために必要とすることがある任意のタイプの情報を記憶するために提供される任意の適切なタイプの大容量記憶域を含むことができる。メモリ480は、限定はされないが、読み出し専用メモリ(ROM)、フラッシュメモリ、ダイナミックランダムアクセスメモリ(RAM)、およびスタティックRAMを含む、揮発性もしくは不揮発性、磁気、半導体、テープ、光学式、リムーバブル、非リムーバブル、または他のタイプの記憶デバイス、または有形の(すなわち、非一時的な)コンピュータ可読媒体であってよい。メモリ480は、本明細書で開示されるように、ネットワーク上でのリモートデバイスとのセキュアな通信のために、プロセッサ460による実行のための1つまたは複数のプログラムを記憶するように構成されてよい。メモリ480は、プロセッサ460によって使用される情報およびデータを記憶するようにさらに構成されてよい。例えば、メモリ480は、サーバ400のために、受信されたセキュリティメッセージ、キー、証明書、およびデータをその中に記憶するように構成されてよい。
図5は、本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信のための典型的な通信方法500を例示する。図5において、制約されたネットワークは、エンドノード520と、ゲートウェイ540と、サーバ560とを含む。エンドデバイス520は、制約されたリンク上で、パケット断片化を使用したシリアルデータストリームを通してゲートウェイ540に接続する。ゲートウェイ540は、IPリンクを通してサーバ560に接続する。エンドデバイス520は、制約されたネットワークにおいて、ゲートウェイ540を通してサーバ560とのエンドツーエンドのセキュアな通信を確立するように構成される。
エンドデバイス520は、図1に示されたエンドデバイス121、122、または123として具現化されてよい。サーバ560は、図1に示されたサーバ160として具現化されてよい。ゲートウェイ540は、図1に示されたゲートウェイ140として具現化されてよい。エンドデバイス520とゲートウェイ540との間の制約されたリンク上でパケット断片化を使用したシリアルデータストリームは、図1で例示されたシリアルストリーム131、132、または133として具現化されてよい。ゲートウェイ540とサーバ560との間のIPリンクは、図1で説明されたIP通信150として具現化されてよい。図5におけるエンドデバイス520とサーバ560との間のエンドツーエンドのセキュアな通信は、図1で例示されたセキュリティプロトコル接続155として具現化されてよい。いくつかの実施形態において、図5におけるエンドデバイス520とサーバ560との間のエンドツーエンドのセキュアな通信はまた、図1で例示された、ゲートウェイ140を通したエンドデバイス122または123とサーバ160との間のセキュリティプロトコル接続として具現化されてもよい。
図5に示されるように、エンドデバイス520は、2段階において、ゲートウェイ540を通して、サーバ560とのエンドツーエンドのセキュアな通信を確立するように構成される。第1の段階において、エンドデバイス520は、例えば、ゲートウェイ540を通して、サーバ560とTLSプロトコル接続を確立するように構成される。第2の段階において、エンドデバイス520は、TLSプロトコル接続を介して、サーバ560とデータを通信するように構成される。
方法500の第1の段階において、エンドデバイス520は、セキュリティ要求メッセージをサーバ560に送ることによって、サーバ560とのTLSプロトコル接続のためのキー交渉を始めるように構成される。図5に示されるように、エンドデバイス520は、エンドデバイス520とゲートウェイ540との間の制約されたリンク上で、シリアルデータストリームを通して、セキュリティ要求511をゲートウェイ540に送るように構成される。ゲートウェイ540がセキュリティ要求511を受信した後で、ゲートウェイ540は、シリアルデータストリームの形式のセキュリティ要求511を、ゲートウェイ540とサーバ560との間のIPリンクの形式のセキュリティ要求512に変換するように構成される。変換後、ゲートウェイ540は、セキュリティ要求512をサーバ560に送るように構成される。ゲートウェイは、第1のメッセージを、第2のメッセージの修正の形式で第2のリンクに転送することによって、第1のリンクにおける第1のメッセージを、第2のリンクにおける第2のメッセージに変換するように構成され、修正は、第1のリンクと第2のリンクとの間のパケット手続きまたはプロトコルにおける違いを適応させるための一定の手続き変更を含む。しかしながら、ゲートウェイによる変換は、第1のメッセージの内容へのいかなる変更ももたらさない。
サーバ560がセキュリティ要求512を受信し、サーバ560がセキュリティプロトコル接続を確立するように利用可能であるとき、サーバ560は、セキュリティ応答メッセージをエンドデバイス520に送るように構成される。図5に示されるように、サーバ560は、ゲートウェイ540とサーバ560との間のIPリンクを通して、セキュリティ応答531をゲートウェイ540に送るように構成される。ゲートウェイ540がセキュリティ応答531を受信した後で、ゲートウェイ540は、セキュリティ応答531を、IPリンクの形式から、シリアルデータストリームの形式のセキュリティ応答532に変換するように構成される。ゲートウェイ540は、エンドデバイス520とゲートウェイ540との間の制約されたリンク上で、シリアルデータストリームを通して、セキュリティ応答532をエンドデバイス520に送るように構成される。
エンドデバイス520およびゲートウェイ540は、互いの間の制約されたリンクを、シリアルデータストリームであるようにモデル化するように構成される。エンドデバイス520およびゲートウェイ540がセキュリティ要求511またはセキュリティ応答532などのセキュリティメッセージを通信するとき、エンドデバイス520およびゲートウェイ540は、図1で例示されたBluetoothクラシック通信プロトコル、Bluetooth Low Energy通信プロトコル、またはUART通信プロトコルなどの通信プロトコルに従って、1つまたは複数のパケットにおいてセキュリティメッセージを送るように構成される。
これらの通信プロトコルのうちの1つのパケットは、データの最大量、すなわち、最大転送単位(MTU)のみを搬送することができる。例えば、Bluetooth Low Energy通信プロトコルのパケットは、23バイトのデフォルトパケットサイズを有することができる。セキュリティメッセージが23バイトよりも大きいとき、エンドデバイス520およびゲートウェイ540は、セキュリティメッセージを、Bluetooth Low Energy通信プロトコルの複数のパケットに断片化し、これらのパケットをゲートウェイ540およびエンドデバイス520に連続的に送るように構成される。ゲートウェイ540およびエンドデバイス520は、これらのパケットの断片化を解消して、セキュリティメッセージを取得するように構成される。ゲートウェイ540およびエンドデバイス520はまた、セキュリティメッセージ、すなわち、上位層のメッセージが正しく送られ、受信されるのを確実にするために、シリアルデータストリーム上でフロー制御を実施するように構成されてもよい。このやり方で、エンドデバイス520およびゲートウェイ540は互いに、制約されたリンク上で、パケット断片化を使用したシリアルデータストリームを通して、そのセキュリティメッセージおよび他のセキュリティメッセージを通信する。
いくつかの実施形態において、エンドデバイス520とゲートウェイ540との間の制約されたリンク上のシリアルデータストリームは、セキュリティプロトコルのセキュリティメッセージを伝達するために、多様なビットレートを要する、または多様なサイズのパケットデータ単位を提供することがある。エンドデバイス520およびゲートウェイ540は、セキュリティメッセージを、Bluetooth Low Energy通信プロトコルの多様なサイズのパケットに動的に断片化し、もう一方に送るように構成される。このやり方で、エンドデバイス520およびゲートウェイ540は互いに、制約されたリンク上で、動的な断片化を使用したシリアルデータストリームを通して、そのセキュリティメッセージおよび他のセキュリティメッセージを通信する。
エンドデバイス520は、エンドデバイス520が確認し、信頼することができるサーバの識別情報のリストを含む、信頼された認証機関により設置される。エンドデバイス520は、信頼された認証機関に従ってサーバ560の識別情報を確認するように構成される。例えば、エンドデバイス520がセキュリティ応答532を受信した後で、エンドデバイス520は、サーバ560の識別情報を、信頼された認証機関においてリストにされたサーバと比較することによって、セキュリティ応答532または別のセキュリティメッセージに収容されたサーバ560の識別情報を確認するように構成される。サーバ560の識別情報が信頼された認証機関におけるサーバの識別情報のうちの1つと一致するとき、エンドデバイス520は、サーバ560が信頼できると判定するように構成される。識別情報は、サーバのシリアル番号、サーバのTLS証明書、またはサーバに指定された参照文字であってよい。
エンドデバイス520はまた、クライアント認証のために、クライアント証明書メッセージをサーバ560に送るように構成されてもよい。図5に示されるように、エンドデバイス520は、クライアント証明書メッセージ551をゲートウェイ540に送るように構成される。ゲートウェイ540は、シリアルデータストリームの形式のクライアント証明書メッセージ551を、IPリンクの形式のクライアント証明書メッセージ552に変換し、クライアント証明書メッセージ552をサーバ560に送るように構成される。サーバ560は、クライアント証明書メッセージ552に収容されたエンドデバイス520の識別情報を、サーバ560における信頼できるエンドデバイスのデータベースと比較することによって、エンドデバイス520を確認するように構成される。エンドデバイス520の識別情報が信頼できるエンドデバイスの識別情報のうちの1つと一致するとき、サーバ560は、エンドデバイス520が信頼できると判定するように構成される。エンドデバイスの識別情報は、エンドデバイスのシリアル番号、エンドデバイスのTLS証明書、またはエンドデバイスに指定された参照文字であってよい。
エンドデバイス520およびサーバ560がセキュリティ要求511および512、ならびにセキュリティ応答531および532を交換するとき、エンドデバイス520およびサーバ560は、エンドデバイス520とサーバ560との間のTLSプロトコル接続におけるデータ通信用に使用される暗号化アルゴリズムを交渉するように構成されてよい。例えば、エンドデバイス520は、セキュリティ要求511において、1つまたは複数のサポートされる暗号化アルゴリズムを送ることができる。サーバ560がセキュリティ要求メッセージ512においてエンドデバイス520のサポートされる暗号化アルゴリズムを受信するとき、サーバ560は、これらの暗号化アルゴリズムの中で、TLSプロトコル接続におけるデータ通信用の暗号化アルゴリズムを選択するように構成される。サーバ560は、セキュリティ応答531において、選択された暗号化アルゴリズムを送るように構成されてよい。エンドデバイス520がセキュリティ応答532を受信するとき、エンドデバイス520は、TLSプロトコル接続のための選択された暗号化アルゴリズムを取得する。
図5に示されるように、エンドデバイス520およびサーバ560はまた、TLSプロトコル接続のためのキー情報を交換するように構成される。エンドデバイス520およびサーバ560は、シリアルデータストリームの形式のキー交換メッセージ571、およびIPリンクの形式のキー交換メッセージ572によって、キー情報を交換するように構成される。キー交換メッセージ571および572は、エンドデバイス520とサーバ560との間のキー交換のための1つまたは複数のメッセージを含むことができる。エンドデバイス520がサーバ560とキー情報を交換するとき、エンドデバイス520は、エンドデバイス520の秘密キーおよび/または公開キーについての情報を送るように構成されてよい。サーバ560がエンドデバイス520とキー情報を交換するとき、サーバ560もまた、サーバ560の秘密キーおよび/または公開キーについての情報を送るように構成されてよい。
エンドデバイス520がサーバ560のキー情報およびTLSプロトコル接続のための暗号化アルゴリズムを取得するとき、エンドデバイス520は、暗号化情報およびサーバ560のキー情報、ならびにエンドデバイス520の秘密キーおよび/または公開キーに基づいて、セッションキーを計算するように構成される。サーバ560がエンドデバイス520のキー情報およびTLSプロトコル接続のための暗号化アルゴリズムを取得するとき、サーバ560は、暗号化情報およびエンドデバイス520のキー情報、ならびにサーバ560の秘密キーおよび/または公開キーに基づいて、セッションキーを計算するように構成される。エンドデバイス520およびサーバ560は、それぞれ、それら自身によって計算されたセッションキーに基づいて、TLSプロトコル接続上でデータを暗号化する、および/または復号するように構成される。
いくつかの実施形態において、エンドデバイス520およびサーバ560のうちの1つが、上で説明されるように、セッションキーを計算し、TLSプロトコル接続上で、データ暗号化および復号のためにセッションキーをもう一方に送るように構成されてもよい。
方法500の第2の段階において、エンドデバイス520は、TLSプロトコル接続を介して互いにデータを通信するように構成される。例えば、図5に示されるように、エンドデバイス520は、セッションキーによってデータを暗号化し、データメッセージ581をゲートウェイ540に送るように構成される。ゲートウェイ540がデータメッセージ581を受信した後で、ゲートウェイ540は、データメッセージ581を、IPリンクの形式のデータメッセージ582に変換し、データメッセージ582をサーバ560に送る。サーバ560は次いで、セッションキーによってデータメッセージ582を復号し、エンドデバイス520によって送信されたデータを取得するように構成される。
別の例として、図5に示されるように、サーバ560は、セッションキーによってデータを暗号化し、データメッセージ591をゲートウェイ540に送るように構成される。ゲートウェイ540がデータメッセージ591を受信した後で、ゲートウェイ540は、データメッセージ591を、制約されたリンクのシリアルデータストリームの形式のデータメッセージ592に変換し、データメッセージ592をエンドデバイス520に送る。エンドデバイス520は次いで、セッションキーによってデータメッセージ592を復号し、サーバ560によって送信されたデータを取得するように構成される。
エンドデバイス520およびサーバ560は互いに、確立されたTLSプロトコル接続を介して、例えば、エンドデバイス520からサーバ560へ、もしくはサーバ560からエンドデバイス520へと一方向に、または両方の二方向に、データを通信するように構成されてもよい。
エンドデバイス520およびサーバ560はTLSプロトコル接続を介してデータを通信することから、エンドデバイス520およびサーバ560のうちの1つによって送られたデータは、もう一方によってのみ復号され得る。それによって、エンドデバイス520は、サーバ560とのセキュアな通信を有し、逆もまた同様である。
図6は、本開示の実施形態と一致する、制約されたネットワーク600上でのエンドツーエンドのセキュアな通信のための典型的なプロトコルスタックを例示する。制約されたネットワーク600は、エンドノード620と、ゲートウェイ640と、サーバ660とを含む。エンドデバイス620は、図5で説明された方法500のように、制約されたネットワーク600において、ゲートウェイ640を通して、TLSプロトコル接続650によってサーバ660とのセキュアな通信670を確立するように構成される。エンドデバイス620は、制約されたリンク上で、パケット断片化を使用したシリアルデータストリームを通してゲートウェイ640に接続する。ゲートウェイ640は、IPリンクを通してサーバ660に接続する。
エンドデバイス620は、図1に示されたエンドデバイス121、122、または123として具現化されてよい。サーバ660は、図1に示されたサーバ160として具現化されてよい。ゲートウェイ640は、図1に示されたゲートウェイ140として具現化されてよい。エンドデバイス620とゲートウェイ640との間の制約されたリンク上でパケット断片化を使用したシリアルデータストリームは、図1で例示されたシリアルストリーム131、132、または133として具現化されてよい。ゲートウェイ640とサーバ660との間のIPリンクは、図1で説明されたIP通信150として具現化されてよい。図6におけるエンドデバイス620とサーバ660との間のTLSプロトコル接続650は、図1で例示されたセキュリティプロトコル接続155として具現化されてよい。いくつかの実施形態において、TLSプロトコル接続650はまた、図1で例示された、ゲートウェイ140を通したエンドデバイス122または123とサーバ160との間のセキュリティプロトコル接続として具現化されてもよい。
TLSプロトコル接続650は、エンドデバイス620とサーバ660との間のトランスポート層におけるセキュアな通信である。図6に示されるように、エンドデバイス620のプロトコルスタックは、物理層621と、リンク層622と、トランスポート層623と、アプリケーション層624とを含む。アプリケーション層624は、TLSレベル624−1およびセンサレベル624−2を含む。
サーバ660のプロトコルスタックは、物理層661と、リンク層662と、トランスポート層663と、アプリケーション層664とを含む。アプリケーション層664は、TLSレベル664−1およびセンサレベル664−2を含む。
ゲートウェイ640のプロトコルスタックは、シリアルデータストリームのための物理層641−1およびIPリンクのための物理層641−2と、シリアルデータストリームのためのリンク層642−1およびIPリンクのためのリンク層642−2と、シリアルデータストリームのためのトランスポート層643−1およびIPリンクのためのトランスポート層643−2と、制約されたストリームとIPベースの通信との間のプロトコル変換644とを含む。
TLSプロトコル接続650はまた、エンドデバイス620とサーバ660との間のTLSトンネルとして認識されてもよい。図6に示されるように、TLSトンネルを通して、エンドデバイス620およびサーバ660は互いにデータを通信することができる。TLSプロトコル接続650は、エンドデバイス620とゲートウェイ640との間のシリアルデータストリーム、およびゲートウェイ640とサーバ660との間のIPリンクを含む。
エンドデバイス620は、センサレベル624−2によって、データを測定または収集し、TLSレベル624−1によって、TLSプロトコル接続を通してデータをサーバ660に送るように構成される。エンドデバイス620のTLSレベル624−1は、トランスポート層623、リンク層622、物理層621によって、シリアルデータストリーム上で、それぞれ、ゲートウェイ640の対応するトランスポート層643−1、リンク層642−1、物理層641−1にデータを送るように構成される。ゲートウェイ640の制約されたストリームとIPベースの通信との間のプロトコル変換644は、シリアルデータストリームのデータメッセージを、IPリンクのデータメッセージに変換するように構成される。
ゲートウェイ640は、トランスポート層643−2、リンク層642−2、物理層641−2によって、IPリンク上で、それぞれ、サーバ660の対応するトランスポート層663、リンク層662、物理層661にデータを送るように構成される。サーバ660におけるアプリケーション層664のTLSレベル664−1は、TLSプロトコル接続650を通してデータを取得し、そのデータをサーバ660におけるアプリケーション層664のセンサレベル664−2に提供する。サーバ660は、様々なアプリケーションに従って、データを収集し、活用することができる。
サーバ660がエンドデバイス620にデータを送るように構成されるとき、サーバ660は、これらのプロトコル層を反対方向で利用して、データを送るように構成されてよい。
図7は、本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信のための別の典型的な通信方法700を例示する。図7において、制約されたネットワークは、エンドノード720と、ゲートウェイ740と、別のエンドデバイス760とを含む。エンドデバイス720は、制約されたリンク上で、パケット断片化を使用したシリアルデータストリームを通してゲートウェイ740に接続する。ゲートウェイ740は、別の制約されたリンク上で、パケット断片化を使用した別のシリアルデータストリームを通してエンドデバイス760に接続する。
エンドデバイス720は、図2に示されたエンドデバイス221、222、または223として具現化されてよい。エンドデバイス760は、図2に示されたエンドデバイス290として具現化されてよい。ゲートウェイ740は、図2に示されたゲートウェイ240として具現化されてよい。エンドデバイス720とゲートウェイ740との間の制約されたリンク上でパケット断片化を使用したシリアルデータストリームは、図2で例示されたシリアルストリーム231、232、または233として具現化されてよい。エンドデバイス760とゲートウェイ740との間のリンクは、図2で説明されたIP通信250、インターネット260におけるリンク、IP通信251、および制約されたシリアルリンク239の組合せとして具現化されてよい。図7におけるエンドデバイス720とエンドデバイス760との間のエンドツーエンドのセキュアな通信は、図2で例示されたセキュリティプロトコル接続255として具現化されてよい。
図7において、エンドデバイス720は、ゲートウェイ740を通して、エンドデバイス760とのエンドツーエンドのセキュアな通信を確立するように構成される。最初に、エンドデバイス720は、ゲートウェイ740を通して、エンドデバイス760と、例えばDTLSプロトコル接続を確立するように構成される。エンドデバイス720は次いで、DTLSプロトコル接続を介して、エンドデバイス760とデータを通信するように構成される。
図7に示されるように、エンドデバイス720は、ゲートウェイ740を通して、Client Hello711をエンドデバイス760に送るように構成される。Client Hello711は、エンドデバイス720によってサポートされるDTLSバージョンおよび暗号スイートなどの暗号法情報を収容する。暗号スイートは、DTLSプロトコル接続をセキュアにするのに役立つアルゴリズムの組である。アルゴリズムの組は、キー交換アルゴリズム、一括暗号化アルゴリズム、および/またはメッセージ認証符号アルゴリズムを含むことができる。
エンドデバイス760がClient Hello711を受信した後で、エンドデバイス760は、Client Hello711においてエンドデバイス720によって提供された暗号スイートの中で、ある暗号スイートを選ぶように構成される。エンドデバイス760は、ゲートウェイ740を通して、Server Hello712をエンドデバイス720に送るように構成される。Server Hello712は、エンドデバイス760によって選ばれた暗号スイート、およびセッション識別情報を収容する。
ゲートウェイ740がエンドデバイス720からClient Hello711を受信する、またはエンドデバイス760からServer Hello712を受信するとき、ゲートウェイ740は、図5におけるゲートウェイ540による変換で説明されるように、Client Hello711およびServer Hello712を、シリアルデータストリームの形式とIPリンクの形式との間で変換するように構成される。ゲートウェイ740はまた、図7におけるエンドデバイス720とエンドデバイス760との間で他のメッセージを変換するように構成される。
エンドデバイス720およびゲートウェイ740は、互いの間の制約されたリンクを、シリアルデータストリームであるようにモデル化するように構成される。エンドデバイス720およびゲートウェイ740がClient Hello711またはServer Hello712などのセキュリティメッセージを通信するとき、エンドデバイス720およびゲートウェイ740は互いに、図5で例示されるように、制約されたリンク上で、パケット断片化を使用したシリアルデータストリームを通して、そのセキュリティメッセージおよび他のセキュリティメッセージを通信するように構成される。
いくつかの実施形態において、エンドデバイス720とゲートウェイ740との間の制約されたリンク上のシリアルデータストリームは、セキュリティプロトコルのセキュリティメッセージを伝達するために、多様なビットレートを要する、または多様なサイズのパケットデータ単位を提供することがある。エンドデバイス720およびゲートウェイ740はまた、互いに、図5で例示されるように、制約されたリンク上で、動的な断片化を使用したシリアルデータストリームを通して、そのセキュリティメッセージおよび他のセキュリティメッセージを通信するように構成されてもよい。
いくつかの実施形態において、エンドデバイス760はまた、エンドデバイス760のサーバ証明書を、エンドデバイス720に送るように構成される。エンドデバイス760がクライアント認証のためにデジタル証明書を要する場合、エンドデバイス760は、エンドデバイス760によってサポートされる証明書の複数のタイプ、および容認可能な証明機関の識別名を含むクライアント証明書要求を、エンドデバイス720に送るようにさらに構成される。DTLSクライアント証明書およびサーバ証明書は、例えば、4キロバイト(KB)であってよい。エンドデバイス720および760は、パケット断片化を使用した複数のパケットによって、セキュリティメッセージにおいてDTLSクライアント証明書およびサーバ証明書を送るように構成されてよい。あるいは、エンドデバイス720および760は、異なるデータレートでの動的な断片化を使用した複数のパケットによって、セキュリティメッセージにおいてDTLSクライアント証明書およびサーバ証明書を送るように構成されてもよい。
図7に示されるように、エンドデバイス760は、ゲートウェイ740を通して、Server Hello Done713をエンドデバイス720に送るように構成される。Server Hello Done713は、エンドデバイス760からのServer Hello712および他のメッセージの終了を指し示す。
エンドデバイス720がServer Hello Done713を受信した後で、エンドデバイス720は、Server Hello712に収容されたパラメータが容認可能であるかどうかを検査し、エンドデバイス720がエンドデバイス760のサーバ証明書を受信した場合に、エンドデバイス760を確認するように構成される。エンドデバイス720がServer Hello712に収容されたパラメータを容認し、エンドデバイス760を有効なDTLSサーバとして確認したとき、エンドデバイス720は、エンドデバイス720がクライアント証明書要求を受信した場合に、クライアント証明書メッセージをエンドデバイス760に送るように構成されてよい。
エンドデバイス720および760がClient Hello711およびServer Hello712を交換した後で、エンドデバイス720は、Client Key Exchenge714をエンドデバイス760に送るように構成される。Client Key Exchange714の内容は、エンドデバイス720および760がClient Hello711およびServer Hello712を交換したときに選ばれた公開キーアルゴリズムに依存する。例えば、エンドデバイス720は、キー合意および認証のために、リベストシャミアエーデルマン(RSA)アルゴリズム、またはディフィーヘルマン(DH)アルゴリズムによって暗号化されたいずれかのパラメータキーを使用することができる。エンドデバイス720がサーバ認証およびキー交換のためにRSAアルゴリズムを使用する場合の例において、エンドデバイス720は、pre_master_secretを生成し、それをエンドデバイス760のサーバ公開キーの下で暗号化し、それをClient Key Exchange714においてエンドデバイス760に送るように構成されてよい。エンドデバイス760は、pre_master_secretを復号するために秘密キーを使用することができる。エンドデバイス720および760は次いで、pre_master_secretを、master_secretに変えることができる。
図7に示されるように、エンドデバイス720は次いで、Change Cipher Spec715をエンドデバイス760に送るように構成される。Change Cipher Spec715は、暗号化戦略における遷移をエンドデバイス760に通知する。例えば、Change Cipher Spec715は、後続のメッセージまたはデータが最も新しく交渉された暗号仕様およびキーの下で保護されていることを、エンドデバイス760に通知することができる。
エンドデバイス720はまた、キー交換および認証プロセスが正常であったことを確認するために、Change Cipher Spec715を送った直後に、Finished716を送るように構成される。Finished716は、最も新しく交渉されたアルゴリズム、キー、および秘密を用いて最初に保護されるパケットである。一旦エンドデバイス760がFinished716を受信すると、エンドデバイス760は、Finished716の内容が正しいことを確認するように構成される。
図7に示されるように、エンドデバイス760は、Change Cipher Spec717をエンドデバイス720に送って、後続のメッセージまたはデータが最も新しく交渉された暗号仕様およびキーの下で保護されていることを、エンドデバイス720に通知するように構成される。
エンドデバイス760はまた、キー交換および認証プロセスが正常であったことを確認するために、Change Cipher Spec717を送った直後に、Finished718を送るように構成される。Finished718は、最も新しく交渉されたアルゴリズム、キー、および秘密を使用した、エンドデバイス760からエンドデバイス720への最初に保護されるパケットである。一旦エンドデバイス720がFinished718を受信すると、エンドデバイス720は、Finished718の内容が正しいことを確認するように構成される。
次いで、エンドデバイス720は、DTLSプロトコル接続を介して、エンドデバイス760とデータを通信するように構成される。例えば、エンドデバイス720は、それ自身によって計算されたセッションキーによってデータを暗号化し、暗号化されたデータ730をエンドデバイス760に送るように構成されてよい。エンドデバイス760は、それ自身によって計算されたセッションキーによってデータ730を復号し、エンドデバイス720から送られたデータを取得するように構成される。
あるいは、エンドデバイス760が、セッションキーによってデータを暗号化し、暗号化されたデータ750をエンドデバイス720に送るように構成されてもよい。エンドデバイス720は、セッションキーによってデータ750を復号し、エンドデバイス760から送られたデータを取得するように構成される。
いくつかの実施形態において、エンドデバイス720および760のうちの1つが、上で説明されるように、セッションキーを計算し、DTLSプロトコル接続上で、データ暗号化および復号のためにセッションキーをもう一方に送るように構成されてもよい。
いくつかの実施形態において、エンドデバイス720および760は、図2に示されたエンドデバイス290および270として具現化されてよい。ゲートウェイ740は、図2におけるゲートウェイ280として具現化されてよい。ゲートウェイ740は、IPリンクを通してエンドデバイス760に、および制約されたリンク上で、シリアルデータストリームを通してエンドデバイス720に接続することができる。エンドデバイス720と760との間のDTLSプロトコル接続は、図2におけるエンドデバイス290と270との間として具現化されてよい。
いくつかの実施形態においては、エンドデバイス760および720が、DTLSクライアントおよびDTLSサーバであるように構成され、図7において上で説明されるように、方法700におけるエンドデバイス720および760の動作を実施する。
エンドデバイス720およびエンドデバイス760は互いに、確立されたDTLSプロトコル接続を介して、例えば、エンドデバイス720からエンドデバイス760へ、もしくはエンドデバイス760からエンドデバイス720へと一方向に、または両方の二方向に、データを通信するように構成されてよい。
エンドデバイス720およびエンドデバイス760はDTLSプロトコル接続を介してデータを通信することから、エンドデバイス720およびエンドデバイス760のうちの1つによって送られたデータは、もう一方によってのみ復号され得る。それによって、エンドデバイス720は、エンドデバイス760とのセキュアな通信を有し、逆もまた同様である。
図8は、本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信を提供するためにエンドデバイスにおいて実施される典型的な方法800のフローチャートである。方法800は、エンドデバイス121、122、123、221、222、223、270、290、300、520、620、720、または760によって実践されてよい。方法800は、パケット断片化を使用したシリアルデータストリームを通して、第1のデバイスから第2のデバイスにセキュリティメッセージを送信すること(ステップ810)と、ネットワーク上で、第1のデバイスと第2のデバイスとの間に、セキュリティメッセージに基づいたセキュアな接続を構成すること(ステップ820)と、第1のデバイスから第2のデバイスにデータを送信すること、または第2のデバイスから第1のデバイスによってデータを受信することのうちの少なくとも1つによって、セキュリティプロトコル接続を介してデータを通信すること(ステップ830)とを含む。
ステップ810は、パケット断片化を使用したシリアルデータストリームを通して、第1のデバイスから第2のデバイスにセキュリティメッセージを送信することを含む。例えば、図5に示されるように、エンドデバイス520は、エンドデバイス520とゲートウェイ540との間の制約されたリンク上で、シリアルデータストリームを通して、セキュリティ要求511をサーバ560に送る。別の例として、サーバ560は、エンドデバイス520とゲートウェイ540との間の制約されたリンク上で、パケット断片化を使用したシリアルデータストリームを通したセキュリティ応答532を使って、セキュリティ応答531をエンドデバイス520に送る。
ステップ820は、ネットワーク上で、第1のデバイスと第2のデバイスとの間に、セキュリティメッセージに基づいたセキュアな接続を構成することを含む。例えば、図5に示され、説明されるように、エンドデバイス520は、制約されたネットワーク上で、エンドデバイス520とサーバ560との間にTLSプロトコル接続を確立する。エンドデバイス520は、セキュリティ要求511およびセキュリティ応答532に基づいてTLSプロトコル接続を構成する。制約されたネットワークは、エンドデバイス520と、ゲートウェイ540と、サーバ560とを含む。エンドデバイス520およびサーバ560は、制約されたネットワーク上でTLSプロトコル接続を確立する。
ステップ830は、第1のデバイスから第2のデバイスにデータを送信すること、または第2のデバイスから第1のデバイスによってデータを受信することのうちの少なくとも1つによって、セキュリティプロトコル接続を介してデータを通信することを含む。例えば、図5に示されるように、エンドデバイス520は、ゲートウェイ540によってデータメッセージ582に変換されたデータメッセージ581をサーバ560に送信することによって、TLSプロトコル接続を介してサーバ560とデータを通信する。あるいは、エンドデバイス520はまた、ゲートウェイ540によってデータメッセージ591から変換されたデータメッセージ592をサーバ560から受信することによって、TLSプロトコル接続を介してサーバ560とデータを通信することができる。エンドデバイス520はまた、図5で説明されたデータメッセージ581および592のように、サーバ560にデータを送信し、サーバ560からデータを受信することによって、TLSプロトコル接続を介してサーバ560とデータを通信することができる。
いくつかの実施形態において、方法800における制約されたネットワークは、ビットレート、デューティサイクル、配信レート、非対称リンク特性、パケットサイズ、経時的な到達可能性、またはネットワークサービスのうちの少なくとも1つにおいて制約されたリンクを含む。例えば、図1で例示されるように、ワイヤレスIоTネットワーク100は、200Kbpsの低く達成可能なビットレート、時間ごとに一送信の低いデューティサイクル、10%の正常なパケット送信の低い配信レート、非対称リンク特性、1Kbの限定されたパケットサイズ、時間ごとに一回の低い到達可能性、および/またはユニキャストサービスのみの限定されたネットワークサービスについて制約されたリンクを含む。
あるいは、方法800における制約されたネットワークは、例えば、図1で例示され、説明されるように、上の制約のうちの1つまたは複数のために制約されたノードであるエンドデバイス121を含む。
いくつかの実施形態において、方法800におけるセキュアな接続は、トランスポート層またはアプリケーション層のセキュリティプロトコルに従って構成される。例えば、エンドデバイス520は、エンドデバイス520とサーバ560との間に、TLSプロトコルに従ってセキュアな接続を構成する。あるいは、エンドデバイス520は、DTLSプロトコルに従ってセキュアな接続を構成することができる。いくつかの実施形態において、エンドデバイス520は、セキュア/多目的インターネットメール拡張(S/MIME)プロトコル、オープン・プリティ・グッド・プライバシー(OpenPGP)プロトコル、およびセキュア・ハイパーテキスト・トランスファー・プロトコル(S/HTTP)などのアプリケーション層プロトコルに従って、セキュアな接続を構成することができる。
いくつかの実施形態において、ステップ810は、ネットワークにおいて、動的な断片化を使用したシリアルデータストリームを通してセキュリティメッセージを送信することによって、セキュリティメッセージを送信することを含む。例えば、図5で説明されるように、エンドデバイス520およびゲートウェイ540は、セキュリティメッセージを、Bluetooth Low Energy通信プロトコルの多様なサイズのパケットに動的に断片化し、もう一方に送るように構成される。このやり方で、エンドデバイス520は、制約されたネットワークにおいて、動的な断片化を使用したシリアルデータストリームを通して、セキュリティメッセージをゲートウェイ540に送信する。セキュリティメッセージは、例えば、セキュリティ要求511、クライアント証明書メッセージ551、キー交換メッセージ571、およびTLSハンドシェーキングのための他のセキュリティメッセージを含む。
いくつかの実施形態において、ステップ810は、Bluetooth Low Energy、Bluetoothクラシック、Zigbee、またはユニバーサル非同期受信機/送信機の通信プロトコルのうちの少なくとも1つを使用することによって、第2のデバイスにセキュリティメッセージを送信することを含む。例えば、図1に示されるように、エンドデバイス121、122、および123は、Bluetoothクラシック、Bluetooth Low Energy、およびUART通信プロトコルをそれぞれ使用することによって、シリアルストリーム131、132、および133を通してゲートウェイ140に接続する。図5で例示されるように、エンドデバイス121、122、または123がゲートウェイ140とセキュリティメッセージを通信するとき、エンドデバイス121、122、または123は、Bluetoothクラシック、Bluetooth Low Energy、またはUART通信プロトコルを使用することによって、ゲートウェイ140にセキュリティメッセージを送信するように構成される。
いくつかの実施形態において、ステップ820は、暗号化アルゴリズムを交渉すること、キー情報を交換すること、信頼された認証機関に従って第2のデバイスの識別情報を確認すること、ならびに暗号化アルゴリズムおよびキー情報に基づいてセッションキーを計算することによって、セキュアな接続を構成することを含む。例えば、図5で例示されるように、エンドデバイス520は、エンドデバイス520とサーバ560との間のTLSプロトコル接続におけるデータ通信用に使用される暗号化アルゴリズムをサーバ560と交渉するように構成される。エンドデバイス520はまた、シリアルデータストリームの形式のキー交換メッセージ571、およびIPリンクの形式のキー交換メッセージ572によって、サーバ560とキー情報を交換するように構成される。エンドデバイス520はまた、サーバ560の識別情報を、信頼された認証機関におけるサーバと比較することによって、セキュリティ応答532に収容されたサーバ560の識別情報を確認するように構成される。エンドデバイス520は、暗号化情報およびサーバ560のキー情報、ならびにエンドデバイス520の秘密キーおよび/または公開キーに基づいて、セッションキーを計算するようにさらに構成される。
いくつかの実施形態において、ステップ830は、セッションキーに基づいてデータを暗号化すること、および暗号化されたデータを第2のデバイスに送信することによって、または第2のデバイスからデータを受信すること、および受信されたデータをセッションキーに基づいて復号することによって、データを通信することを含む。例えば、図5で例示されるように、エンドデバイス520は、セッションキーによってデータを暗号化し、データメッセージ581をゲートウェイ540に送るように構成される。あるいは、エンドデバイス520は、セッションキーによってデータメッセージ592を復号し、サーバ560によって送信されたデータを取得するように構成される。
方法800はまた、第1のデバイスと第2のデバイスとの間のセッションのステータスを検査すること、および第2のデバイスでステータスが回復可能であると判定された場合に、セッションを更新することを含むことができる。ステップ830は、更新されたセッションに関連付けられたセッションキーに基づいてデータを交換することによって、データを通信することを含む。
例えば、図5におけるエンドデバイス520がスリープモードから出た後で、エンドデバイス520は、サーバ560との確立されたTLSプロトコル接続を介して、セッションのステータスを検査するように構成される。エンドデバイス520は次いで、サーバ560でステータスが回復可能であると判定された場合に、セッションを更新するように構成される。エンドデバイス520は、更新されたセッションキーによってデータを暗号化し、データメッセージをゲートウェイ540に送るように構成されてよい。あるいは、エンドデバイス520は、更新されたセッションキーによってデータメッセージを復号し、サーバ560によって送信されたデータを取得するように構成されてもよい。
いくつかの実施形態において、方法800における第2のデバイスは、インターネットプロトコルリンクを介してゲートウェイに接続されたサーバを含む。第1のデバイスは、セキュアな接続を介してサーバと通信しているエンドデバイスを含む。ステップ830は、ゲートウェイを通してエンドデバイスとサーバとの間でデータを交換することによって、データを通信することを含む。例えば、図1で例示されるように、サーバ160は、IP通信150を介してゲートウェイ140に接続される。エンドデバイス121は、セキュリティプロトコル接続155を介してサーバ160と通信する。エンドデバイス121およびサーバ160は、ゲートウェイ140を通してデータを交換することによって、データを通信する。
図9は、本開示の実施形態と一致する、エンドツーエンドのセキュアな通信を提供するためにネットワーク上のデバイスにおいて実施される別の典型的な方法900のフローチャートである。方法900は、サーバ160または560によって実践されてよい。方法900は、IPリンクを介してセキュリティ要求を受信すること(ステップ910)と、IPリンクを介してエンドデバイスとのセキュアな接続を構成すること(ステップ920)と、IPリンクを介して、セキュアな接続を通してエンドデバイスとデータを通信すること(ステップ930)を含む。
ステップ910は、IPリンクを介してセキュリティ要求を受信することを含む。例えば、図5に示されるように、サーバ560は、ゲートウェイ540とサーバ560との間のIPリンクを介して、セキュリティ要求512を受信するように構成される。
ステップ920は、IPリンクを介してエンドデバイスとのセキュアな接続を構成することを含む。例えば、図5で例示されるように、サーバ560は、ゲートウェイ540とサーバ560との間のIPリンクを介して、エンドデバイス520とTLSプロトコル接続を確立するように構成される。
ステップ930は、IPリンクを介して、セキュアな接続を通してエンドデバイスとデータを交換することを含む。例えば、図5で例示されるように、サーバ560は、ゲートウェイ540とサーバ560との間のIPリンクを介して、確立されたTLSプロトコル接続を通してエンドデバイス520とデータを交換するように構成される。
図10は、本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信を開始するためにエンドデバイスにおいて実施される典型的な方法1000のフローチャートである。方法1000は、エンドデバイス221、222、223、270、290、300、720、または760によって実践されてよい。方法1000は、パケット断片化を使用したシリアルデータストリームを通して、第1のデバイスから第2のデバイスにセキュリティ要求を送信すること(ステップ1010)と、ネットワーク上で、第1のデバイスと第2のデバイスとの間に、セキュリティ要求に基づいたセキュアな接続を構成すること(ステップ1020)と、第1のデバイスから第2のデバイスにデータを送信すること、または第2のデバイスから第1のデバイスによってデータを受信することのうちの少なくとも1つによって、セキュアな接続を介してデータを通信すること(ステップ1030)とを含む。
ステップ1010は、パケット断片化を使用したシリアルデータストリームを通して、第1のデバイスから第2のデバイスにセキュリティ要求を送信することを含む。例えば、図7に示されるように、エンドデバイス720は、エンドデバイス720とゲートウェイ740との間の制約されたリンク上で、パケット断片化を使用したシリアルデータストリームを通して、Client Hello711をエンドデバイス760に送るように構成される。
ステップ1020は、ネットワーク上で、第1のデバイスと第2のデバイスとの間に、セキュリティ要求に基づいたセキュアな接続を構成することを含む。例えば、図7で例示されるように、エンドデバイス720は、制約されたネットワーク上で、エンドデバイス760とのDTLSプロトコル接続を確立するように構成される。エンドデバイス720は、Client Hello711における情報に基づいて、DTLSプロトコル接続を構成する。
ステップ1030は、第1のデバイスから第2のデバイスにデータを送信すること、または第2のデバイスから第1のデバイスによってデータを受信することのうちの少なくとも1つによって、セキュアな接続を介してデータを通信することを含む。例えば、図7に示されるように、エンドデバイス720は、制約されたネットワーク上で、DTLSプロトコル接続を通して、エンドデバイス760にデータ730を送るように構成される。あるいは、エンドデバイス720は、制約されたネットワーク上で、DTLSプロトコル接続を通して、エンドデバイス760からデータ750を受信するように構成されてもよい。いくつかの実施形態において、エンドデバイス720は、DTLSプロトコル接続を介して、エンドデバイス760にデータを送り、エンドデバイス760からデータを受信するように構成されてもよい。
いくつかの実施形態において、方法1000における制約されたネットワークは、方法800で説明されるように、ビットレート、デューティサイクル、配信レート、非対称リンク特性、パケットサイズ、経時的な到達可能性、またはネットワークサービスのうちの少なくとも1つにおいて制約されたリンクを含む。
あるいは、方法1000における制約されたネットワークは、例えば、図2で例示され、説明されるように、上の制約のうちの1つまたは複数のために制約されたノードであるエンドデバイス221を含む。
いくつかの実施形態において、方法1000におけるセキュアな接続は、トランスポート層またはアプリケーション層のセキュリティプロトコルに従って構成される。例えば、エンドデバイス720は、エンドデバイス720とエンドデバイス760との間に、DTLSプロトコルに従ってセキュアな接続を構成する。あるいは、エンドデバイス720は、TLSプロトコルに従ってセキュアな接続を構成することができる。いくつかの実施形態において、エンドデバイス720は、セキュア/多目的インターネットメール拡張(S/MIME)プロトコル、オープン・プリティ・グッド・プライバシー(OpenPGP)プロトコル、およびセキュア・ハイパーテキスト・トランスファー・プロトコル(S/HTTP)などのアプリケーション層プロトコルに従って、セキュアな接続を構成することができる。
いくつかの実施形態において、ステップ1010は、方法800または図7のエンドデバイス720で説明されるように、制約されたネットワークにおいて、動的な断片化を使用したシリアルデータストリームを通してセキュリティ要求を送ることによって、セキュリティ要求を送ることを含む。
いくつかの実施形態において、ステップ1010は、方法800で例示されるように、Bluetooth Low Energy、Bluetoothクラシック、Zigbee、またはユニバーサル非同期受信機/送信機の通信プロトコルのうちの少なくとも1つを使用してセキュリティ要求を送ることによって、セキュリティ要求を送ることを含む。
いくつかの実施形態において、ステップ1020は、方法800のステップ820で例示されるように、暗号化アルゴリズムを交渉すること、キー情報を交換すること、信頼された認証機関に従って第2のデバイスの識別情報を確認すること、ならびに暗号化アルゴリズムおよびキー情報に基づいてセッションキーを計算することによって、セキュアな接続を構成することを含む。
いくつかの実施形態において、ステップ1030は、方法800のステップ830で説明されるように、セッションキーに基づいてデータを暗号化すること、および暗号化されたデータを第2のデバイスに送信することによって、または第2のデバイスからデータを受信すること、および受信されたデータをセッションキーに基づいて復号することによって、データを通信することを含む。
方法1000はまた、方法800で説明されるように、第1のデバイスと第2のデバイスとの間のセッションのステータスを検査すること、および第2のデバイスでステータスが回復可能であると判定された場合に、セッションを更新することを含むことができる。ステップ1030は、更新されたセッションに関連付けられたセッションキーに基づいてデータを交換することを含む。
図11は、本開示の実施形態と一致する、制約されたネットワーク上でのエンドツーエンドのセキュアな通信のための要求を受信するためにエンドデバイスにおいて実施される典型的な方法1100のフローチャートである。方法1100は、エンドデバイス221、222、223、270、290、300、720、または760によって実践されてよい。方法1100は、パケット断片化を使用したシリアルデータストリームを通してセキュリティ要求を受信すること(ステップ1110)と、第1のデバイスと第2のデバイスとの間に、セキュリティ要求に基づいたセキュアな接続を構成すること(ステップ1120)と、第1のデバイスからデータを受信すること、または第1のデバイスにデータを送信することのうちの少なくとも1つによって、セキュアな接続を介してデータを通信すること(ステップ1130)とを含む。
ステップ1110は、パケット断片化を使用したシリアルデータストリームを通してセキュリティ要求を受信することを含む。例えば、図7に示されるように、エンドデバイス760は、エンドデバイス720とゲートウェイ740との間、および/またはエンドデバイス760とゲートウェイ740との間の制約されたリンク上で、シリアルデータストリームを通して、エンドデバイス720からClient Hello711を受信する。Client Hello711は、図7で説明されるように、パケット断片化を使用して、制約されたリンクを通して送信されてよい。
ステップ1120は、第1のデバイスと第2のデバイスとの間に、セキュリティ要求に基づいたセキュアな接続を構成することを含む。例えば、図7で例示されるように、エンドデバイス760は、制約されたネットワーク上で、エンドデバイス720とDTLSプロトコル接続を確立するように構成される。エンドデバイス760は、Client Hello711に基づいてDTLSプロトコル接続を構成する。
ステップ1130は、第1のデバイスからデータを受信すること、または第1のデバイスにデータを送信することのうちの少なくとも1つによって、セキュアな接続を介してデータを通信することを含む。例えば、図7に示されるように、エンドデバイス760は、制約されたネットワーク上で、DTLSプロトコル接続を介して、エンドデバイス720からデータ730を受信するように構成される。あるいは、エンドデバイス760は、制約されたネットワーク上で、DTLSプロトコル接続を介して、エンドデバイス720にデータ750を送るように構成されてもよい。いくつかの実施形態において、エンドデバイス760は、DTLSプロトコル接続を介して、エンドデバイス720からデータを受信し、エンドデバイス720にデータを送るように構成されてもよい。
いくつかの実施形態において、方法1110における制約されたネットワークは、方法800で説明されるように、ビットレート、デューティサイクル、配信レート、非対称リンク特性、パケットサイズ、経時的な到達可能性、またはネットワークサービスのうちの少なくとも1つにおいて制約されたリンクを含む。
あるいは、方法1100における制約されたネットワークは、例えば、図2で例示され、説明されるように、上の制約のうちの1つまたは複数のために制約されたノードであるエンドデバイス221を含む。
いくつかの実施形態において、方法1100におけるセキュアな接続は、トランスポート層またはアプリケーション層のセキュリティプロトコルに従って構成される。例えば、エンドデバイス760は、エンドデバイス760とエンドデバイス720との間に、DTLSプロトコルに従ってセキュアな接続を構成する。あるいは、エンドデバイス760は、TLSプロトコルに従ってセキュアな接続を構成することができる。いくつかの実施形態において、エンドデバイス760は、セキュア/多目的インターネットメール拡張(S/MIME)プロトコル、オープン・プリティ・グッド・プライバシー(OpenPGP)プロトコル、およびセキュア・ハイパーテキスト・トランスファー・プロトコル(S/HTTP)などのアプリケーション層プロトコルに従って、セキュアな接続を構成することができる。
いくつかの実施形態において、ステップ1110は、方法800または図7のエンドデバイス760で例示されるように、制約されたネットワークにおいて、動的な断片化を使用したシリアルデータストリームを通してセキュリティ要求を受信することによって、セキュリティ要求を受信することを含む。
いくつかの実施形態において、ステップ1110は、方法800で例示されるように、Bluetooth Low Energy、Bluetoothクラシック、Zigbee、またはユニバーサル非同期受信機/送信機の通信プロトコルのうちの少なくとも1つを使用してセキュリティ要求を受信することによって、セキュリティ要求を受信することを含む。
いくつかの実施形態において、ステップ1120は、方法800のステップ820または図7のエンドデバイス760で説明されるように、暗号化アルゴリズムを交渉すること、キー情報を交換すること、信頼された認証機関に従って第1のデバイスの識別情報を確認すること、ならびに暗号化アルゴリズムおよびキー情報に基づいてセッションキーを計算することによって、セキュアな接続を構成することを含む。
いくつかの実施形態において、ステップ1130は、方法800のステップ830または図7のエンドデバイス760で説明されるように、セッションキーに基づいてデータを暗号化すること、および暗号化されたデータを第1のデバイスに送信することによって、または第1のデバイスからデータを受信すること、および受信されたデータをセッションキーに基づいて復号することによって、データを通信することを含む。
方法1100はまた、方法800または図7のエンドデバイス760で説明されるように、第1のデバイスと第2のデバイスとの間のセッションのステータスを検査すること、および第2のデバイスでステータスが回復可能であると判定された場合に、セッションを更新することを含むことができる。ステップ1130は、更新されたセッションに関連付けられたセッションキーに基づいてデータを交換することを含む。
いくつかの実施形態において、方法1000または1100における制約されたリンクは、第1の制約されたリンクである。第1のデバイスは、第1の制約されたリンク上で、シリアルデータストリームを通して第1のゲートウェイに接続された第1のエンドデバイスを含む。第2のデバイスは、第2の制約されたリンク上で、第2のゲートウェイに接続された第2のエンドデバイスを含む。第1のゲートウェイおよび第2のゲートウェイは、インターネットプロトコルリンクを介して接続される。第1のエンドデバイスおよび第2のエンドデバイスは互いに、第1のゲートウェイおよび第2のゲートウェイを通して、セキュリティプロトコル接続を介して通信する。ステップ1030または1130は、第1のゲートウェイおよび第2のゲートウェイを通して、第1のエンドデバイスと第2のエンドデバイスとの間のセキュアな接続を介してデータを交換することを含む。
その上、第1のエンドデバイスは、セキュアな接続におけるクライアントを含む。第2のエンドデバイスは、セキュアな接続におけるサーバを含む。
例えば、図2に示されるように、シリアルストリーム231は、第1の制約されたリンクであってよい。エンドデバイス221は、シリアルストリーム231を通してゲートウェイ240に接続される。エンドデバイス290は、制約されたシリアルリンク239上でゲートウェイ280に接続される。ゲートウェイ240およびゲートウェイ280は、IP通信250、インターネット260のリンク、およびIP通信251を介して接続される。エンドデバイス221およびエンドデバイス290は互いに、ゲートウェイ240およびゲートウェイ280を通して、セキュリティプロトコル接続255を介して通信する。エンドデバイス221およびエンドデバイス290は、ゲートウェイ240およびゲートウェイ280を通して、セキュリティプロトコル接続255を介してデータを交換する。
その上、エンドデバイス221は、セキュリティプロトコル接続255におけるクライアントであるように構成されてよい。エンドデバイス290は、セキュリティプロトコル接続255におけるサーバであるように構成されてよい。例えば、エンドデバイス221および290は、TLSプロトコル接続におけるTLSクライアントおよびTLSサーバであるように構成される。別の例として、エンドデバイス221および290は、DTLSプロトコル接続におけるDTLSクライアントおよびDTLSサーバであるように構成される。
いくつかの実施形態において、エンドデバイス221は、セキュリティプロトコル接続255におけるサーバであるように構成されてもよい。エンドデバイス290は、セキュリティプロトコル接続255におけるクライアントであるように構成されてもよい。例えば、エンドデバイス221および290は、TLSプロトコル接続におけるTLSサーバおよびTLSクライアントであるように構成される。別の例として、エンドデバイス221および290は、DTLSプロトコル接続におけるDTLSサーバおよびDTLSクライアントであるように構成される。
いくつかの実施形態において、方法1000または1100は、制約されたリンク上で、第1のエンドデバイスをゲートウェイに接続することを含む。第1のデバイスは、第1のエンドデバイスを含む。第2のデバイスは、インターネットプロトコルリンクを介してゲートウェイに接続された第2のエンドデバイスを含む。第1のエンドデバイスおよび第2のエンドデバイスは互いに、ゲートウェイを通して、セキュアな接続を介して通信する。ステップ1030または1130は、ゲートウェイを通して、第1のエンドデバイスと第2のエンドデバイスとの間のセキュアな接続を介してデータを交換することを含む。
その上、第1のエンドデバイスは、セキュアな接続におけるクライアントまたはサーバのうちの1つを含む。第1のエンドデバイスがクライアントを含むとき、第2のエンドデバイスは、サーバを含む。第1のデバイスがサーバを含むとき、第2のエンドデバイスは、クライアントを含む。
例えば、図2に示されるように、エンドデバイス290は、制約されたシリアルリンク239上で、ゲートウェイ280に接続するように構成される。エンドデバイス270は、IP通信252、インターネット260のリンク、およびIP通信251を介して、ゲートウェイ280に接続するように構成される。エンドデバイス290およびエンドデバイス270は互いに、ゲートウェイ280を通して、セキュリティプロトコル接続256を介して通信する。エンドデバイス290およびエンドデバイス270は、ゲートウェイ280を通して、セキュリティプロトコル接続256を介してデータを交換するように構成される。
その上、エンドデバイス290は、セキュリティプロトコル接続256におけるクライアントまたはサーバのうちの1つであるように構成されてもよい。エンドデバイス290がTLSクライアントであるように構成されるとき、エンドデバイス270は、TLSサーバであるように構成される。エンドデバイス290がTLSサーバであるように構成されるとき、エンドデバイス270は、TLSクライアントであるように構成される。エンドデバイス290がDTLSクライアントであるように構成されるとき、エンドデバイス270は、DTLSサーバであるように構成される。エンドデバイス290がDTLSサーバであるように構成されるとき、エンドデバイス270は、DTLSクライアントであるように構成される。
本開示の別の態様は、実行されるときに、1つまたは複数のプロセッサに、上述されるように方法を実施させる命令を記憶する、非一時的なコンピュータ可読媒体に向けられる。例えば、命令は、コントローラ360による実行のためにエンドデバイス300のメモリ380に含まれる、またはプロセッサ460による実行のためにサーバ400のメモリ480に含まれる非一時的なコンピュータ可読媒体上に記憶されてよい。コンピュータ可読媒体は、揮発性もしくは不揮発性、磁気、半導体、テープ、光学式、リムーバブル、非リムーバブル、または他のタイプのコンピュータ可読媒体、またはコンピュータ可読記憶デバイスを含むことができる。例えば、コンピュータ可読媒体は、開示されるようにコンピュータ命令をその上に記憶している記憶デバイスまたはメモリ・モジュールであってよい。いくつかの実施形態において、コンピュータ可読媒体は、コンピュータ命令をその上に記憶しているディスクまたはフラッシュ・ドライブであってもよい。
本開示は、上で説明され、付属の図面で例示されてきた厳密な構造には限定されず、その範囲から逸脱することなく様々な修正および変更が行われ得ることが理解されるであろう。本出願の範囲は、添付の特許請求の範囲によってのみ限定されるべきことが意図されている。

Claims (20)

  1. ネットワーク上での第1のデバイスと第2のデバイスとの間のセキュアな通信のための方法であって、
    パケット断片化を使用したシリアルデータストリームを通して、前記第1のデバイスから前記第2のデバイスにセキュリティメッセージを送信することと、
    前記ネットワーク上で、前記第1のデバイスと前記第2のデバイスとの間に、前記セキュリティメッセージに基づいたセキュアな接続を構成することと、
    前記第1のデバイスから前記第2のデバイスにデータを送信すること、または前記第2のデバイスから前記第1のデバイスによってデータを受信することのうちの少なくとも1つによって、前記セキュアな接続を介してデータを通信することと、
    を含む方法。
  2. 前記ネットワークが、
    ビットレート、
    デューティサイクル、
    配信レート、
    非対称リンク特性、
    パケットサイズ、
    経時的な到達可能性、または
    ネットワークサービス
    のうちの少なくとも1つにおいて制約されたリンクを含む、請求項1に記載の方法。
  3. 前記ネットワークが制約されたノードを含む、請求項1に記載の方法。
  4. 前記セキュリティメッセージを送信することが、前記ネットワークにおいて動的な断片化を使用した前記シリアルデータストリームを通して前記セキュリティメッセージを送信することを含む、請求項1に記載の方法。
  5. 前記セキュアな接続が、トランスポート層またはアプリケーション層のうちの少なくとも1つのセキュリティプロトコルに従って構成される、請求項1に記載の方法。
  6. 前記セキュアな接続を構成することが、
    暗号化アルゴリズムを交渉することと、
    キー情報を交換することと、
    信頼された認証機関に従って前記第2のデバイスの識別情報を確認することと、
    前記暗号化アルゴリズムおよび前記キー情報に基づいてセッションキーを計算することと、を含む、請求項1に記載の方法。
  7. データを通信することが、
    セッションキーに基づいてデータを暗号化すること、および前記第1のデバイスから前記第2のデバイスに暗号化されたデータを送信すること、または
    前記第2のデバイスから前記第1のデバイスによってデータを受信すること、および前記セッションキーに基づいて受信された前記データを復号すること、
    のうちの少なくとも1つを含む、請求項1に記載の方法。
  8. 前記第1のデバイスと前記第2のデバイスとの間のセッションのステータスを検査することと、
    前記第2のデバイスで前記ステータスが回復可能であると判定された場合に、前記セッションを更新することと、を含み、
    前記データを通信することが、更新された前記セッションに関連付けられたセッションキーに基づいて前記データを交換することを含む、請求項1に記載の方法。
  9. 前記第2のデバイスが、インターネットプロトコルリンクを介してゲートウェイに接続されたサーバを含み、
    前記第1のデバイスが、前記セキュアな接続を介して前記サーバと通信するエンドデバイスを含み、
    前記データを通信することが、前記ゲートウェイを通して前記エンドデバイスと前記サーバとの間で前記データを交換することを含む、請求項1に記載の方法。
  10. 前記ネットワークが、前記第1のデバイスと第1のゲートウェイとの間に第1の制約されたリンクを含み、
    前記第1のデバイスが、前記第1の制約されたリンク上で前記シリアルデータストリームを通して前記第1のゲートウェイに接続された第1のエンドデバイスを含み、
    前記第2のデバイスが、第2の制約されたリンク上で第2のゲートウェイに接続された第2のエンドデバイスを含み、
    前記第1のゲートウェイおよび前記第2のゲートウェイが互いに、インターネットプロトコルリンクを介して接続され、
    前記第1のエンドデバイスおよび前記第2のエンドデバイスが互いに、前記第1のゲートウェイおよび前記第2のゲートウェイを通して前記セキュアな接続を介して通信し、
    前記データを通信することが、前記第1のゲートウェイおよび前記第2のゲートウェイを通して前記第1のエンドデバイスと前記第2のエンドデバイスとの間の前記セキュアな接続を介して前記データを交換することを含む、請求項1に記載の方法。
  11. 前記第1のエンドデバイスが、前記セキュアな接続におけるクライアントを含み、
    前記第2のエンドデバイスが、前記セキュアな接続におけるサーバを含む、請求項10に記載の方法。
  12. 制約されたリンク上で第1のエンドデバイスをゲートウェイに接続すること、を含み、
    前記第1のデバイスが、前記第1のエンドデバイスを含み、
    前記第2のデバイスが、インターネットプロトコルリンクを介して前記ゲートウェイに接続された第2のエンドデバイスを含み、
    前記第1のエンドデバイスおよび前記第2のエンドデバイスが互いに、前記ゲートウェイを通して前記セキュアな接続を介して通信し、
    前記データを通信することが、前記ゲートウェイを通して前記第1のエンドデバイスと前記第2のエンドデバイスとの間の前記セキュアな接続を介して前記データを交換することを含む、請求項1に記載の方法。
  13. 前記第1のエンドデバイスが、前記セキュアな接続におけるクライアントまたはサーバのうちの1つを含み、
    前記第1のエンドデバイスがクライアントを含むとき、前記第2のエンドデバイスがサーバを含み、または
    前記第1のエンドデバイスが前記サーバを含むとき、前記第2のエンドデバイスが前記クライアントを含む、請求項12に記載の方法。
  14. 命令を記憶するための少なくとも1つのメモリと、
    動作を実施するための前記命令を実行するように構成された少なくとも1つのコントローラと、を含む、ネットワーク上でのリモートデバイスとのセキュアな通信のためのエンドデバイスであって、
    前記動作が、
    パケット断片化を使用したシリアルデータストリームを通して、前記リモートデバイスにセキュリティメッセージを送信することと、
    前記ネットワーク上で、前記リモートデバイスと、前記セキュリティメッセージに基づいたセキュアな接続を構成することと、
    前記リモートデバイスにデータを送信すること、または
    前記リモートデバイスからデータを受信すること
    のうちの少なくとも1つによって、前記セキュアな接続を介してデータを通信することと、を含む、エンドデバイス。
  15. 前記動作が、制約されたリンク上で第1のエンドデバイスをゲートウェイに接続することを含み、
    前記エンドデバイスが、前記第1のエンドデバイスを含み、
    前記リモートデバイスが、インターネットプロトコルリンクを介して前記ゲートウェイに接続された第2のエンドデバイスを含み、
    前記第1のエンドデバイスおよび前記第2のエンドデバイスが互いに、前記ゲートウェイを通して前記セキュアな接続を介して通信し、
    前記データを通信することが、前記ゲートウェイを通して前記第1のエンドデバイスと前記第2のエンドデバイスとの間の前記セキュアな接続を介して前記データを交換することを含む、請求項14に記載のエンドデバイス。
  16. 前記セキュアな接続を構成することが、
    暗号化アルゴリズムを交渉することと、
    キー情報を交換することと、
    信頼された認証機関に従って前記リモートデバイスの識別情報を確認することと、
    前記暗号化アルゴリズムおよび前記キー情報に基づいてセッションキーを計算することと、を含む、請求項14に記載のエンドデバイス。
  17. 前記セキュリティメッセージを送信することが、前記ネットワークにおいて動的な断片化を使用した前記シリアルデータストリームを通して前記リモートデバイスに前記セキュリティメッセージを送信することを含む、請求項14に記載のエンドデバイス。
  18. 前記リモートデバイスが、インターネットプロトコルリンクを介してゲートウェイに接続されたサーバを含み、
    前記エンドデバイスが、前記セキュアな接続を介して前記サーバと通信し、
    前記データを通信することが、前記ゲートウェイを通して前記エンドデバイスと前記サーバとの間で前記データを交換することを含む、請求項14に記載のエンドデバイス。
  19. 前記ネットワークが、前記エンドデバイスと第1のゲートウェイとの間に第1の制約されたリンクを含み、
    前記エンドデバイスが、前記第1の制約されたリンク上で前記シリアルデータストリームを通して前記第1のゲートウェイに接続された第1のエンドデバイスを含み、
    前記リモートデバイスが、第2の制約されたリンク上で第2のゲートウェイに接続された第2のエンドデバイスを含み、
    前記第1のゲートウェイおよび前記第2のゲートウェイが互いに、インターネットプロトコルリンクを介して接続され、
    前記第1のエンドデバイスおよび前記第2のエンドデバイスが互いに、前記第1のゲートウェイおよび前記第2のゲートウェイを通して前記セキュアな接続を介して通信し、
    前記データを通信することが、前記第1のゲートウェイおよび前記第2のゲートウェイを通して前記第1のエンドデバイスと前記第2のエンドデバイスとの間の前記セキュアな接続を介して前記データを交換することを含む、請求項14に記載のエンドデバイス。
  20. 実行されるときに、コントローラに、ネットワーク上での第1のデバイスと第2のデバイスとの間のセキュアな通信のための動作を実施させる命令を記憶するための、非一時的なコンピュータ可読媒体であって、前記動作が、
    パケット断片化を使用したシリアルデータストリームを通して、前記第1のデバイスから前記第2のデバイスにセキュリティメッセージを送信することと、
    前記ネットワーク上で、前記第1のデバイスと前記第2のデバイスとの間に、前記セキュリティメッセージに基づいたセキュアな接続を構成することと、
    前記第1のデバイスから前記第2のデバイスにデータを送信すること、または
    前記第2のデバイスから前記第1のデバイスによってデータを受信すること
    のうちの少なくとも1つによって、前記セキュアな接続を介してデータを通信することと、を含む、非一時的なコンピュータ可読媒体。
JP2020144311A 2019-08-30 2020-08-28 エンドツーエンドのセキュアな通信のための方法および装置 Pending JP2021040308A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/557,618 2019-08-30
US16/557,618 US20210067956A1 (en) 2019-08-30 2019-08-30 Methods and apparatus for end-to-end secure communications

Publications (1)

Publication Number Publication Date
JP2021040308A true JP2021040308A (ja) 2021-03-11

Family

ID=72290782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020144311A Pending JP2021040308A (ja) 2019-08-30 2020-08-28 エンドツーエンドのセキュアな通信のための方法および装置

Country Status (4)

Country Link
US (1) US20210067956A1 (ja)
EP (1) EP3787254A1 (ja)
JP (1) JP2021040308A (ja)
CN (1) CN112533214A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK202070675A1 (en) * 2020-10-05 2022-04-08 Osram Gmbh Computer network with an ip subnetwork and a non-ip subnetwork and backend device, gateway, frontend device therefore and procedure for operation thereof
CN115242415A (zh) * 2021-04-23 2022-10-25 伊姆西Ip控股有限责任公司 边缘交换机处实现的数据加密方法、电子设备和程序产品

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2483381B (en) * 2009-06-15 2013-09-04 Conocophillips Co Swellable polymer with cationic sites
US8964554B2 (en) * 2012-06-07 2015-02-24 Broadcom Corporation Tunnel acceleration for wireless access points
FR3042081B1 (fr) * 2015-10-05 2018-08-31 Satcom1 Aps "procede de controle d'un systeme de communications de donnees par paquets et systeme de communications mettant en œuvre le procede"
US10776080B2 (en) * 2015-12-14 2020-09-15 Afero, Inc. Integrated development tool for an internet of things (IOT) system
WO2017109555A1 (en) * 2015-12-23 2017-06-29 Nokia Technologies Oy Method and apparatus for facilitating network access sharing by patient gateways
US10333887B2 (en) * 2016-08-15 2019-06-25 Cisco Technology, Inc. Internet protocol (IP) network virtualization of serial network endpoints
WO2019199272A1 (en) * 2018-04-10 2019-10-17 Visa International Service Association System and method for secure device connection

Also Published As

Publication number Publication date
EP3787254A1 (en) 2021-03-03
US20210067956A1 (en) 2021-03-04
CN112533214A (zh) 2021-03-19

Similar Documents

Publication Publication Date Title
US10601594B2 (en) End-to-end service layer authentication
Tschofenig et al. Transport layer security (tls)/datagram transport layer security (dtls) profiles for the internet of things
US10305695B1 (en) System and method for secure relayed communications from an implantable medical device
Dragomir et al. A survey on secure communication protocols for IoT systems
CN108650227B (zh) 基于数据报安全传输协议的握手方法及系统
Keoh et al. Securing the internet of things: A standardization perspective
Hummen et al. Delegation-based authentication and authorization for the IP-based Internet of Things
US20100034386A1 (en) Device manager repository
CN104660602A (zh) 一种量子密钥传输控制方法及系统
KR101688118B1 (ko) 사물인터넷 환경에서의 보안 통신 장치 및 그 방법
Yu et al. Enabling end-to-end secure communication between wireless sensor networks and the Internet
CN110366153A (zh) 一种蓝牙自组网的方法
KR20180130203A (ko) 사물인터넷 디바이스 인증 장치 및 방법
EP3787254A1 (en) Methods and apparatus for end-to-end secure communications
Fossati RFC 7925: Transport Layer Security (TLS)/Datagram Transport Layer Security (DTLS) Profiles for the Internet of Things
CN110943835A (zh) 一种发送无线局域网信息的配网加密方法及系统
Bideh et al. Energy consumption for securing lightweight IoT protocols
Chavan et al. Secure CoAP using enhanced DTLS for Internet of things
US20220006652A1 (en) Method and architecture for securing and managing networks of embedded systems with optimised public key infrastructure
JP2011199340A (ja) 通信装置及び方法、並びに通信システム
Shafagh Leveraging Public-key-based Authentication for the Internet of Things
US20210136157A1 (en) Machine-to-machine communications
CN115567195A (zh) 安全通信方法、客户端、服务器、终端和网络侧设备
EP3379794B1 (en) Method and system for realising encrypted connection with a local area network
WO2021130514A1 (en) Methods, devices, nodes and computer programs for of establishing a cryptographically secured data communication channel

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230823