JP2023514736A - 安全な通信のための方法及びシステム - Google Patents

安全な通信のための方法及びシステム Download PDF

Info

Publication number
JP2023514736A
JP2023514736A JP2022550682A JP2022550682A JP2023514736A JP 2023514736 A JP2023514736 A JP 2023514736A JP 2022550682 A JP2022550682 A JP 2022550682A JP 2022550682 A JP2022550682 A JP 2022550682A JP 2023514736 A JP2023514736 A JP 2023514736A
Authority
JP
Japan
Prior art keywords
client device
secure communication
client
platform
session
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
JP2022550682A
Other languages
English (en)
Inventor
バンス ポルトロ デニス
イリングワース チャールズ
メイサー サループ
ザブグレン ジョン
ベッタダプラ ビジ
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.)
Sdse Networks Inc
Original Assignee
Sdse Networks Inc
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 Sdse Networks Inc filed Critical Sdse Networks Inc
Publication of JP2023514736A publication Critical patent/JP2023514736A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/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/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0263Rule management
    • 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/0442Network 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 asymmetric encryption, i.e. different keys 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/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • 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/067Network architectures or network communication protocols for network security for supporting key management in a packet data network using one-time keys
    • 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/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]

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)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

クライアント装置間の安全な通信のためのシステム/方法は、安全な通信プラットフォームにおいて、第1のクライアント装置から、第2のクライアント装置と通信するための要求を受信することと、安全な通信プラットフォームによって、第1のクライアント装置が第2のクライアント装置と通信することを許可されるか否かを判定することと、通信が許可される場合、安全な通信プラットフォームによって、1回限りで使用する一時的な鍵を生成することと、生成された1回限りで使用する一時的な鍵を、第1及び第2のクライアント装置に送信することと、第1及び第2のクライアント装置間の安全な通信セッションを直接確立することと、第1及び第2のクライアント装置間の安全な通信セッションの終了に際し、1回限りで使用する一時的な鍵を破棄することと、を含む。

Description

関連出願の相互参照
本出願は、2020年2月21日に出願された米国仮特許出願第62/979,711号に関連し、その優先権の利益を主張するものである。その内容全体が参照により本明細書に組み込まれる。
本開示は、安全な通信に関し、特に、2つの有効なエンドポイント(クライアント装置とも呼ばれる)間の二重に暗号化されたエンクレーブの急速な立ち上がり(stand-up)及び切り離し(tear-down)を可能にするクラウドに基づく管理サービスプラットフォームに関する。
インターネット通信は、今日の社会に極めて重要な影響を及ぼし、個人がより広範なコミュニケーション及び相互作用を有することを可能にする。これらの範囲は、思考及び経験の共有、オンラインでの事業活動、オンラインでの金融取引の完結、オンラインでのインターネットバンキングの実施、オンラインでの機密及び専有の情報及びデータの共有である。インターネット通信及びコンピュータネットワークの急増に伴い、コンピュータネットワークを介してそのような機密情報及びデータ通信にアクセスしようとする、悪質な個人がますます多く生じた。したがって、機密/個人の情報及びデータの盗難を防止するために、安全は差し迫った問題である。
安全な通信は、2つのエンティティが互いに通信し、第三者がデータ送信を盗聴又は閲覧することを望まない場合に望まれる。安全な通信は、送信されたものを第三者が傍受することができない様々な程度の確実性で、情報及びデータを共有することができる手段を含む。
インターネット通信が高速化していくにつれて、例えば、仮想プライベートネットワーク(VPN)、VPNコンセントレータ、バイナリ/静的鍵メッセージングシステム(binary/static key messaging system)などのような、重厚な従来の及び手動の処理及び機器を使用して、そのようなトランザクションに必要なレベルの安全を提供することがますます困難になった。
開示されるシステム及び方法は、上述の問題のうちの1つ以上を克服することに関するが、必ずしもその実施形態に限定されない。
開示されるシステム及び方法は、現在の技術的性能における隔たりを解決する必要性の結果である。その隔たりは、通信又はトランザクション(例えば、積み金についての自動金銭出納機(ATM)要求及び応答、ユーザ間の極秘メッセージ、オンライン購入、IOT装置間のデータ交換等)の際に標準暗号化(例えば、AES(Advanced Encryption Standard)、SHAW BlueCurveネットワークセキュリティ等)を使用して、エンドポイント(例えば、コンピュータ、電話、モノのインターネット(IOT)装置、サーバ、クラウドホステッドサービス(cloud hosted service)、クラウドコンテナ等)を「自動的に」接続し、仮想プライベートネットワーク(VPN)、VPNコンセントレータ、及びバイナリ/静的鍵メッセージングシステムなどの重厚な従来の及び手動の処理及び機器の全てがなくても、任意の機会のネットワーク(任意のインターネットプロトコル(IP)ネットワーク、例えば、公共の無線フィディリティ(WiFi)ネットワーク、プライベートネットワーク、又は有線、無線、若しくは衛星の公共若しくはプライベートネットワークの任意の組み合わせ)上で達成されることができるシステムを持つことを望むことである。
電気通信では、ネットワーク又は通信リンク間の切り替えは、設定(別名「立ち上がり」)及び切り離しプロシージャを介して行う。例えば、第1のクライアント装置(例えば、スマートフォン)が、安全な接続を行い、第2のクライアント装置(例えば、銀行のサーバ、ATM等)と極秘情報を交換することは、立ち上げ及び切り離しプロシージャを介して行う。立ち上げ及び切り離しプロシージャは、それぞれ通信リンクを確立し、切断する。本明細書で説明されるように、開示されるシステム/方法は、任意のネットワーク上で動作することができるクライアント装置(又はエンドポイント)間の二重に暗号化されたエンクレーブの急速な立ち上がり及び切り離しを可能にする。
概念的には、開示されるシステム及び方法は、特定のトランザクションのために通信することを望むすべての装置が、通信の時間のためにのみ、及び通信する必要がある特定の「アプリケーション」のためにのみ、ネットワークケーブルを用いて物理的にプラグ接続された場合と同様の結果をもたらす。また、各装置は、装置内にプライベート/個人VPNを有し、そのような通信のためのポリシー(すべてのVPNはポリシーを有する)を有する。各エンドポイントは、「1回の」通信又はトランザクションのために使用される、そのエンドポイントのみが知る一意の1回限りの「暗号化鍵」を有する。通信が完了すると、「電信」がすべて除去され、鍵が破棄され(再度使用されることはない)、VPNは除去される。
上記を達成することは、今日の技術的性能ではほとんど不可能であると共に、1日に数百、数千、又はさらに数百万のトランザクションが必要とされる状況では非実用的であろう。しかしながら、本明細書に開示される技術は、「攻撃対象領域」を低減するために、今日の過大なトランザクション環境において必要であり、その結果、通信又はトランザクションは、いったん完了すると、もはや存在しなくなるので、攻撃者が、通信又はトランザクションを傍受する時間を有さないであろう。
本明細書に開示されるシステム及び方法は、より少ないオーバーヘッドで、物理的ハードウェア又はネットワーク構成要素なしで、及びより少ない手動労働で、この性能を提供し、純粋なソフトウェアを用いてすべて構築される。
特定のソフトウェアアプリケーションを操作する必要性をなくすために(アプリケーションプログラミングインタフェース(API)、ソフトウェア開発キット(SDK)、又はソフトウェア定義の周辺ツール、ソフトウェア定義のネットワーク機能、若しくはゼロトラストネットワークのような他の「プロキシシステム」と同様に要求されるアプリケーションの書き換え、を必要としないことを意味する)、システムは、エージェント又はクライアントに参照される「ソフトウェア定義可能仮想ネットワークアダプタ」の概念と、エージェント又はクライアントとしてのドキュメントとを活用する。開示されるシステム及び方法は、トラフィックをネイティブに通過させるための「任意のIPに基づくアプリケーション」を提供する。
開示されるシステム及び方法は、一時的な鍵(ephemeral keying)に関する方法を活用する。一時的な鍵に関する方法は、起動されると、一意の接続及び/又はセッションに関連付けられる、1回限りで使用する鍵を生成する。これらの1回限りで使用する鍵は、接続及び/又はセッション毎に及びその度に変更することに留意する。多くの他の解決策のように一時的に生成される1回限りの代わりに、接続及び/又はセッションが発生する度に、各鍵が破棄され、新しい鍵が作成される。つまり、新しい鍵は、立ち上がり/切り離される度に生成/破棄される。
システムは、完全に分散されたアーキテクチャを介して動作する自動スケーリング、自己修復、マイクロサービスから構成される「プラットフォーム」を含む。プラットフォームは、クラウド上、データセンタ内、仮想マシン上、又はそれらの任意の組合せで存在することができる。また、プラットフォームは、本開示において後述されるように、マイクロサービス間で使用されることができる。プラットフォームは、プラットフォームがこれら1回限りの一時的な鍵付き暗号化プライベートネットワークを「設定」するために必要なすべての情報を「調整」するためにのみ使用され、次いでデータ経路から出る(steps out of)ように構成されることができる。プラットフォームは、すべてのエンドポイントポリシーの「調整役」でもある。プラットフォームは、APIプラグインのホストで構成される。APIプラグインのホストは、「従来のバックエンドシステム」と対話して、共通情報を再利用又は引出し、各エンドポイントに関するポリシーを設定することができる。プラットフォームは、さまざまな意味で交通整理の役割(traffic cop)を担っている。留意すべき1つの重要な要素は、これらのトランザクションが行う必要がある速度、及び「1回限りの鍵」が生成される必要がある回数であり、それでもなお、従来のネットワーク装置(gear)より効率的であることである。
従来の方法を使用してこの速度で鍵を管理することはほぼ不可能であり、これら鍵間の関連付けは途方も無いことであることが理解される。ハードウェアVPN及びVPNコンセントレータなどの従来ネットワークのオーバーヘッドを除去することも、開示されるシステム及び方法の成功の秘訣である。本開示は、システムの構成要素の各々がどのように動作するか、及び今日及び将来の要求を満たすために必要なスケールでこの性能をどのように達成することが可能であるかを、研究室内に限らず、説明する。
今日の、「コンテナ」を使用して、及びKubernetesのようなオーケストレーション技術を使用して構築される多くのアプリケーションは、アプリケーションを構成するコンテナ間の強力な(相互認証された鍵付きの)接続を活用する能力を欠いており、特に、「クラウドコンピューティング」の需要を満たすために過去数年にわたって書かれたものである。しかし、開示されたシステム及び方法は、ハードウェア及び従来の方法の適応性及び独立性のゆえに、「APIを書き換える又はAPIをインタフェース接続する」必要なしに、クラウド(docker/Kubernetes)に基づくアプリケーション内のコンテナ間の「内部の接続」を保護するために適用されることもできる。これは、すでに開発されたアプリケーション又は現在構築されているアプリケーションと協働するであろうことを意味する。
開示されるシステム及び方法が、エンドポイント、サーバ又はサービスについて行うのと同様に、「内部のコンテナ」通信も提供することができる。したがって、一時的な1回限りで使用する鍵を使用したソフトウェア定義仮想アダプタに基づいて、相互に鍵付きのポイントツーポイントの(コンテナツーコンテナの)、暗号化接続を提供することができる。
本明細書に開示されるシステム及び方法では、エージェントがエンドポイントに配置されるのではなく、「サイドカー(side car)」(クラウドコンピューティングにおけるソフトウェアアドオンのための一般的な方法)機構が使用され、クラウドプロバイダのネットワーク上でアプリケーションを提供する誰でも実行することができるサービスとしてクラウドホストプロバイダによって定義される。実装の容易さは、クラウドアプリケーション全体がそのコンテナ間のトランザクションの双方向の一時的な鍵付き暗号化を使用するために、Kubernetesオーケストレーションへの参照及びKubernetesオーケストレーション内の定義変更(例えば、わずか数行のコード)のみが必要であるようにする。マイクロセグメンテーションシステム全体の膨大な再配線並びに管理を必要とする従来の「マイクロセグメンテーション製品」とは異なり、この性能は、クラウドホストファブリックに固有のものとなり、それを使用する誰かによって継承される。
一実施形態では、クライアント装置間の安全な通信のための方法が提供される。本方法は、安全な通信プラットフォームにおいて、第1のクライアント装置から、第2のクライアント装置と通信するための要求を受信することと、安全な通信プラットフォームによって、第1のクライアント装置が、第2のクライアント装置と通信することを許可されるか否かを判定することと、通信が許可される場合、個々のクライアント装置によって、1回限りで使用する一時的な鍵を生成することと、安全な通信プラットフォームによって、生成された1回限りで使用する一時的な鍵を、第1のクライアント装置と第2のクライアント装置とに送信することと、安全な通信プラットフォームによって、第1のクライアント装置と第2のクライアント装置との間の安全な通信セッションを直接確立することであって、第1のクライアント装置と第2のクライアント装置との間の通信が、各装置と接続するのに固有の1回限りで使用する一時的な鍵を使用して、暗号化及び復号化される、ことと、第1のクライアント装置と第2のクライアント装置との間の安全な通信セッションの終了に際し、エンドポイント装置によって、1回限りで使用する一時的な鍵を破棄することと、を含む。
一形態では、本方法は、第1のクライアント装置と第2のクライアント装置との間の後続の安全な通信セッションごとに、クライアント装置によって、新しい1回限りで使用する一時的な鍵の対を生成することをさらに含む。各接続に固有な対のうちの後続の一時的な公開鍵は、安全な通信プラットフォームを介して送信され、認証されるであろう。
一形態では、1回限りで使用する一時的な鍵は、公開鍵と秘密鍵との対を含む。
一形態では、本方法は、安全な通信プラットフォームによって、第1のクライアント装置と第2のクライアント装置とから、制御セッション情報を受信することと、受信された制御セッション情報を使用して、安全な通信プラットフォームによって、安全な通信セッションの終了を判定することと、をさらに含む。
一形態では、本方法は、通信が許可されないと判定される場合、安全な通信プラットフォームによって、第1のクライアント装置による要求を拒否することをさらに含む。
別の実施形態では、クライアント装置間の安全な通信のためのシステムが提供される。本システムは、安全な通信プラットフォームを含む。安全な通信プラットフォームは、処理サーバを含む。処理サーバは、第1のクライアント装置から、第2のクライアント装置と通信するための要求を受信することと、第1のクライアント装置が第2のクライアント装置と通信することを許可されるか否かを判定することと、通信が許可される場合、1回限りで使用する一時的な鍵を生成することと、生成された1回限りで使用する一時的な鍵を、第1のクライアント装置と第2のクライアント装置とに送信することと、第1のクライアント装置と第2のクライアント装置との間の安全な通信セッションを直接確立することであって、第1のクライアント装置と第2のクライアント装置との間の通信は、1回限りで使用する一時的な鍵を使用して、暗号化及び復号化される、ことと、第1のクライアント装置と第2のクライアント装置との間の安全な通信セッションの終了に際し、1回限りで使用する一時的な鍵を破棄することと、を実行するように構成される。
一形態では、処理サーバは、第1のクライアント装置と第2のクライアント装置との間の後続の安全な通信セッションごとに、新しい1回限りで使用する一時的な鍵を生成することを、クライアント装置に指示するように、さらに構成される。
一形態では、1回限りで使用する一時的な鍵は、公開鍵と秘密鍵との対を含む。
一形態では、処理サーバは、第1のクライアント装置と第2のクライアント装置とから制御セッション情報を受信することと、受信された制御セッション情報を使用して、安全な通信セッションの終了を判定することと、を実行するようにさらに構成される。
一形態では、処理サーバは、通信が許可されないと判定される場合、第1のクライアント装置による要求を拒否するようにさらに構成される。
開示されるシステム及び方法のさらなる特徴、態様、目的、利点、及び可能な適用は、図面及び添付の特許請求の範囲と組み合わせて、以下に説明される例示的な実施形態及び実施例の論考から明らかになるであろう。
本開示の上記及び他の目的と、態様と、特徴と、利点と、可能な適用とは、以下の図面と併せて提示される、以下のより具体的な説明から、より明らかになるであろう。図面において使用される同様の参照番号は、同様の構成要素を識別し得ることを理解されたい。
図1は、安全な通信セッションを確立するための、第1及び第2のクライアントと安全な通信プラットフォームとの間の相互作用を示すスイムレーンフロー図である。 安全な通信プラットフォームアーキテクチャの例を示す。 受託開発(Original Equipment Manufacturer)クラウド又はデータセンタインフラストラクチャ内にあるマイクロサービスを有する安全な通信プラットフォームの実施形態のブロック図を示す。 安全な通信プラットフォームアーキテクチャの別の例を示す。 安全な通信プラットフォームアーキテクチャの別の例を示す。 システムと共に使用され得る単一パケット認証アーキテクチャの例を示す。 例示的なシステム共通ライブラリの高位レベル図を示す。 通信装置の実施形態について、例示的なハードウェアアーキテクチャの図である。
以下の説明は、本明細書に開示されるシステム及び方法を実行するために現在企図される実施形態である。この説明は、限定的な意味で解釈されるべきではなく、単に、一般的な原理及び特徴を説明する目的のためになされる。範囲は、特許請求の範囲を参照して判断されるべきである。
図1~図2を参照すると、有効なエンドポイント(クライアント装置202とも呼ばれる)間の安全な通信のためのシステム及び方法が開示される。安全な通信プラットフォーム200(SPC)は、高可用性で、地理的に分散されたサービスのエラスティッククラウドに基づくエコシステムを含む。本システムは、インターネット上の任意の場所において、任意の有効なエンドポイント(クライアント装置)の対の間の安全な通信経路(エンクレーブとも呼ばれる)をプロビジョニングする、有効にする、及び設定するように協働する。
図1のスイムレーンフローチャートに示されるように、第1のクライアント装置202は、安全な通信プラットフォーム200に、第2のクライアント装置202と通信するための要求を送信する(100)。安全な通信プラットフォーム(SCP)200は、要求を受信し、第1のクライアント装置202が、第2のクライアント装置202との通信を認可又は許可されるか否かを判定する(110)。通信が許可されない場合、安全な通信プラットフォーム200は、要求が拒否されたという通知を第1のクライアント装置202に返送する(120)。通信が許可される場合、安全な通信プラットフォーム200は、エンドポイントに、1回限りで使用する一時的な鍵を生成するように指示し(140)、生成及び認証された1回限りで使用する一時的な鍵を、第1及び第2のクライアント装置202に送信する(150)。
安全な通信プラットフォーム200は、第1及び第2のクライアント装置202間の安全な通信セッションの確立のための接続パラメータを伝送する(160)。直接通信の確立後、安全な通信プラットフォーム200は、安全な通信セッションから除去され、安全な通信セッションは、第1及び第2のクライアント装置202間で直接的に行われる(170)。第1及び第2のクライアント装置202間の通信は、1回限りで使用する一時的な鍵を使用して暗号化及び復号化される。
安全な通信セッションとは別に、第1及び第2のクライアント装置202は、制御セッション情報を、安全な通信プラットフォーム200に送信する(180)。安全な通信プラットフォーム200は、受信された制御セッション情報を使用して、安全な通信セッションの終了がいつ生じるかを判定する(190)。安全な通信が終了したと判定されると、1回限りで使用する一時的な鍵は、安全な通信プラットフォーム200によって無効化され、第1及び第2のクライアント装置202間のすべてのトラフィックは停止する(195)。
一回限りで使用する一時的な鍵が破棄されると、再度使用されることはない。第1及び第2のクライアント装置202間の後続の安全な通信セッションごとに、新しい1回限りで使用する一時的な鍵が生成される。本明細書で説明されるように、1回限りで使用する一時的な鍵は、公開鍵と秘密鍵との対を含むことができる。
有効なエンドポイント(例えば、クライアント装置202)は、要求に応じて、安全な通信を開始することができ、暗号化された通信は、2つの通信するエンドポイント間で直接ルーティングが行われ、クライアント装置202間にブローカ又は他のインフラストラクチャは挿入されない。開示されるシステムでは、通信は、あたかも2つのエンドポイントが仮想ネットワーク接続を介して直接接続されるかのように機能する。エンドポイントの認証とエンクレーブ通信とは、相互のデジタル証明書の検証を要求する。さらに、エンクレーブ通信が開始される度に、通信のための一時的な証明書が発行され、通信の期間中のみ有効である。ポリシー(アクセスのガイドラインを定義するプロトコルの集合)は、エンドポイントごとに定義され、エンドポイント及び別のエンドポイント、サービス、又は装置の間でどの通信が許可されるかを判定する。また、ポリシーは、エンドポイントとの、エンクレーブ作成に特化した接続情報を判定する。
管理インフラストラクチャ(例えば、安全な通信プラットフォーム200)は、エンドポイント/エンドポイントポリシーを検証し、グループ及び装置のポリシーを適用し、エンクレーブ作成を開始する役割を果たす。管理インフラストラクチャは、仮想プライベートクラウド(VPC)208として配置されることができる。VPC208は、コンテナに基づくマイクロサービス204アーキテクチャを含むことができる。このアーキテクチャは、要求に応じたエラスティックスケーラビリティ及びAPI対応管理を可能にする。Dockerコンテナ間の内部サービス通信は、相互の証明書交換を必要とし、暗号化される。
一時的な証明書は、ネットワークを横断して身元を証明し、秘密鍵の脆弱性のウィンドウを減らす目的で、アプリケーションによって使用される短命な証明書である。各クライアント装置202は、新しいセッション(安全な通信プラットフォーム200との制御セッション、又はピアクライアント装置202との安全なエンクレーブ接続)ごとに新しい証明書を要求するように自動化される。安全な通信プラットフォーム200は、必要な検証の後、クライアント装置202との次回のセッションのための新しい証明書を生成する。したがって、各クライアントの鍵、証明書、又は証明書失効リスト(CRL)を管理及び保守する管理者オーバーヘッドはない。代わりに、システムは、必要に応じて、新しい証明書の再生成及び古い証明書の失効を管理する。
クライアント装置202は、安全な通信プラットフォーム200に要求して、ピアクライアント装置202との新しいエンクレーブセッションを作成するとき、安全な通信プラットフォーム200は、(接続性の詳細を含む)ピアクライアント装置202についての情報を提供する。この情報は、クライアント装置202が、ピアクライアント装置202との安全なエンクレーブセッションを作成するために使用することができる。クライアント装置202及び/又はピアクライアント装置202がネットワークアドレス変換(NAT)ファイアウォールの後ろにある場合であっても、安全な通信プラットフォーム200は、これを行うことに留意されたい。各クライアント装置202は、安全な通信プラットフォーム200との制御セッションを維持する。エンクレーブがアクティブになると、2つのクライアント装置202間の代理として機能し得る、中間の第三者は存在しない。なぜならば、各クライアント装置202が有する、安全な通信プラットフォーム200との制御セッションは、異なる認証情報の集合を使用し、2つのクライアント装置202間のエンクレーブセッションに侵入することがないからである。制御セッションは、周期的な状態更新を交換するためにのみ必要とされる。
システムは、管理APIを介して、クライアントグループ定義及びポリシー定義を使用することによって、各クライアント装置202の通信を管理する。これらのクライアントグループ及びポリシーは、全体的に、ならびにグループ又は個々のクライアント装置202ごとに、定義されることができる。これらは、クライアント装置202がピアクライアント装置202と通信することができるかどうかを判定するために、システムによって使用される。また、これらは、クライアント装置202間のどのトラフィックが暗号化されるべきかを判定するために使用される。例えば、アプリケーションの種類及び/又はトラフィックの最終目的地を使用して、トラフィックが暗号化されるべきかどうかを判定することができる。
ある実施形態は、単一パケット認証(SPA)412(図4参照)の使用を含む。SPAは、一意のセキュリティ技術であり、認可されたクライアント装置202を除いて、システムのクラウドサービスを不可視にする。SPA412は、システムと共に使用され得る任意選択の機能であり、例えば、SPA412は、任意選択のセキュリティ層とすることができる。SPA412は、クライアント装置202が一意のクラウドサービスに接続し得る前に、クライアント装置202の真正性を検証する。SPA412は、動的ファイアウォールを介して、不認可なクライアント装置202へのアクセスを同時にかつ粛々と拒否することができる。クライアント装置202がSPA412によって認可された後、動的ファイアウォールは、認証されたクライアント装置202からの接続を可能にし、保護されたエンドポイントは、受託開発(OEM)サービス及びインフラストラクチャに接続することができる。動的ファイアウォールは、クラウドサービスを不可視にし、ポートスキャナに応答しないようにする。SPA412メッセージは、クライアント装置202及び敵対者によって同様に生成及び転送され得るよりも速く処理されることができるので、これら不可視の安全な通信プラットフォーム200のエントリポイントは、すべての分散型サービス拒否(DDoS)攻撃に対して脆弱ではないことに留意されたい。
システムは、安全な通信プラットフォーム200及びクライアント装置202のソフトウェアに接続するAPIによって、OEMパートナーのインフラストラクチャに統合されることができる。システムは、OEMパートナーによって使用される管理APIを提供して、複数のドメインにわたって安全な通信プラットフォーム200、ユーザ/グループ、及びポリシーをプロビジョニングする。また、これらのAPIを使用して、パートナーの運営/ウェブ管理コンソールに、システムのプロビジョニングを統合することができる。さらに、APIは、特定構成要素をカスタマイズすることを可能にすることができる。
図3を参照すると、安全な通信プラットフォーム200の一実施形態は、クラウド(パブリック、プライベート、又は構内)内にあるマイクロサービス204(疎結合サービスの集まりとしてアプリケーションを配置するアーキテクチャ)を含む。OEMパートナーのクラウド又はデータセンタのインフラストラクチャ内に配置されることができる。安全な通信プラットフォーム200は、以下の特徴を含むことができる。
1.Docker/マイクロサービス204に基づくアーキテクチャ。
2.自動スケーリング及び負荷分散。
3.ログ記録及び警告システム。
4.健全性監視。
5.APIゲートウェイ。
6.ネットワークオペレーションセンタ(NOC)206への接続。
7.プラットフォーム境界型セキュリティ(例えば、SPA412)。
8.マルチテナント対応。
例示的な実施形態では、システム機能は、ステートレスな(あるセッションにおいて生成されたクライアント装置202のデータを、クライアント装置202との次回のセッションにおいて使用するために保存しない)マイクロサービス204として実装される。マイクロサービス204は、Dockerに基づくコンテナにおいて実行する。マイクロサービス204は、公的にアクセス可能ではなく、メッセージを認証及び交換するために証明書を使用して、エンドツーエンドの安全なリンクを介して互いに通信する。すべてのマイクロサービス204は、メッセージキューサービス(例えば、Amazon Web Service Simple Queue Service(AWS SQS))を使用して、互いに通信することによって協働する。マイクロサービス204間のメッセージは、各マイクロサービス204を一意に識別するシステム生成証明書を使用して、相互に認証及び暗号化される。これは、マイクロサービス204間におけるエンドツーエンドの安全を提供し、クラウドプロバイダが管理する鍵に依存しない。
証明書管理サービス(CMS)408は、クライアント装置202及びプラットフォームマイクロサービス204のための証明書を生成及び管理するために使用されることができる。CMS408は、Vault(ボルト)404のセキュリティバリアサービスを使用して、認可されたクライアント装置202及びマイクロサービス204のための証明書について、署名及び生成することができる。CMS408は、既定で、自己署名認証局(CA)を使用するように構成されることができるが、OEMパートナーによって第三者の認証局を使用するようにAPIを介して構成されることもできる。別個の中間CAを使用して、クライアント及びマイクロサービス204のための証明書に署名することができる。
図4を参照すると、ある実施形態では、導入サービス(IS)410を使用して、登録、ログイン/ログアウト、エンクレーブ要求、及び周期的な状態更新のための、クライアント装置202とのすべての通信を管理することができる。安全な通信プラットフォーム(200)は、クライアント装置202が、クライアント装置202の登録又はクライアント装置202のログインのための、安全な通信プラットフォーム200との安全なセッションを確立することを可能にする前に、クライアント装置202を検証する。IS410は、ユーザ管理サービス(UMS)と通信することによって、これを達成することができる。UMSは、ユーザ及びグループを管理する。IS410は、パスワード及び装置固有情報などのクライアント装置202に一意の詳細が捕捉され、安全な通信プラットフォーム200のユーザデータベース400内に格納されると、認可されたクライアント装置202を登録する役割を果たす。後続のログイン要求は、装置固有の詳細について、これらの格納された値に対して検証される。IS410は、クライアント装置202のポリシーとグループメンバとを取得するための仲介者として働き、ならびに安全な通信プラットフォーム200のデータ格納内におけるクライアント装置202の登録詳細を更新する。
また、IS410は、クライアント装置202がピアクライアント装置202とのエンクレーブのための要求を開始すると、仲介者として働く役割を果たす。IS410は、クライアント装置202が、要求されたピアクライアント装置202と通信することが許可されるかどうかを検査する。許可される場合、たとえクライアント装置202の一方又は両方が、NATファイアウォールの後ろにあり、公に到達可能でない場合であっても、安全なエンクレーブを設定することを可能にする認証情報及び接続性の詳細を、接続の各エンドに提供する。また、IS410は、クライアント装置202がログイン状態である限り、それらのエンクレーブ活動状態に関する、クライアント装置202からの周期的な状態更新を処理する。
ある実施形態では、UMS420は、クライアント及びグループを管理するために使用されることができる。UMS420の主要な役割は、クライアント装置202が有効である場合にIS410からの要求を処理すること、又はクライアント装置202のグループメンバを検索して、クライアント装置202がその要求されたピアクライアント装置202と通信することを許可されるかどうかを判定すること、とすることができる。また、IS410に代わってデータベース400内のユーザ情報を更新する。UMS420は、構造化照会言語(SQL)照会を使用して、データベース400との間でクライアント情報を読み取り/書き込みする。
安全な通信プラットフォーム200は、以下の3つの種類のうちの1つのポリシーの定義を可能にする。
1.グローバルポリシー-システムに対して共通であり、すべてのクライアント装置202に適用する。
2.グループ/ユーザポリシー-クライアント装置202のグループに適用し、特定のユーザについて再定義(override)されることができる。
3.ユーザポリシー-ユーザ(クライアント装置202)に適用する。
これらのポリシーの各々は、機能に応じて、1つ以上のマイクロサービス204に関連する。
ある実施形態では、ポリシー管理サービス(SPM)414は、クライアント装置202に対して、又は(存在する場合)グループメンバシップ及び構成されたポリシー再定義に基づくサービスに対して適用可能なポリシーを計算し、検索するために使用されることができる。また、起動に際し、及びポリシーが管理者によって更新されるときはいつでも、各マイクロサービス204に適用するポリシーを提供する。
本明細書で述べられるように、各クライアント装置202は、制御セッションを使用して安全な通信プラットフォーム200に接続し、エンクレーブセッションを使用してそのピアクライアント装置202の各々と接続する。ある実施形態では、セッション/エンクレーブ管理サービス(SESM)416は、ある時点でアクティブであるすべての制御セッション及びエンクレーブセッションを管理及び監視するために使用されることができる。例えば、SESM416は、クライアント装置202について、新たな制御セッション又はエンクレーブセッションがISによって作成されると、一意のセッションidを生成するように構成されることができる。また、IS410によって報告されるように、非アクティブ又は切り離されたセッションを除去するように構成されることができる。
例示的な実施形態では、ウェブコンソールサービス(WCS)418は、REST(Representational State Transfer)APIを提供するために使用されることができ、それが配置されると、クライアントのユーザ/グループ/ポリシーを有する安全な通信プラットフォーム200をプロビジョニング/構成する。WCS418は、ロールベースアクセス制御(RBAC)が安全な通信プラットフォーム200及びポリシーを管理することを可能にする。管理者の役割(監督管理者(SuperAdmin)又はドメイン管理者)に応じて、管理者は、安全な通信プラットフォーム200全体、又はそのドメインの任意の1つ若しくは組み合わせを管理することが許可される。WCS418は、管理APIを介して渡されたデータを検証し、それをポストグレスデータベース(Postgres database)内に格納するように構成されることができる。
Dockerコンテナとして実行するマイクロサービス204は、登録されたクライアント装置202の数及びある時点におけるアクティブなエンクレーブセッションの数に基づいて、1つ以上のVPC208内のKubernetes(例えば、AWS Elastic Kubernetes Service(EKS))を使用して、自動スケーリング及び負荷分散される。
負荷分散機能は、以下の通りである。
1.クライアント装置202の要求、又はネットワーク負荷を、複数のクラスタにわたって効率的に分散する。
2.オンラインであるインスタンスにのみ要求を送信することによって、高可用性と信頼性とを保証する。
3.需要に応じてサービスを自動的に追加又は削除する柔軟性を提供する。
自動スケーリング機能は、以下の通りである。
1.ユーザ/ポリシーデータベース400が自動的にスケーリングされ、要求が負荷分散されることを保証する。
2.証明書データ格納がスケーリングされ、Vault(ボルト)404の機能に結合されるすべてのCMS408サービスにアクセス可能であることを保証する。
3.Ejabberd(ISよりも多数のユーザにサービスを提供できるチャットサーバ)が、ISとは異なる速度でスケーリングされ、そのサービスが各ISサービスインスタンスに対して利用可能にすることを保証する。
すべてのマイクロサービス204は、システムレベル及びアプリケーション(クライアント/セッションの活動)レベルの両方におけるそれらの活動をログ記録する。集中型ログ記録サービスは、すべてのサービスからログ記録を照合し、後にログ記録を表示及び警告するためにそれらを格納する役割を果たす。
ログ記録の例は、以下を含むことができる。
活動ログ記録(IS、SESM416によってログ記録される)
-クライアントのログイン/ログアウト事象。
-クライアントのエンクレーブ作成/切り離し。
-無効な証明書又は無効なパスワードなどが原因で拒否されたクライアント要求。
-管理者ログイン。
構成ログ記録(WCS418によってログ記録される)
-(管理者による)ポリシー変更。
-グループ/ユーザの追加/削除/変更。
-(オーケストレーションサービス(Kubernetes等)によってログ記録される)管理者の追加/削除のインフラストラクチャのログ記録。
-(増加した入要求(incoming request)を処理するため、又は既存の非応答要求を置き換えるための)新しいマイクロサービス204の開始。
-新しいリージョンにおけるISサービスの開始。
-追加される新しいクラスタ。
セキュリティログ記録(IS410、CMS408によってログ記録される)
-管理者によって修正されたセキュリティグループ(ACL)。
-ユーザによるログインの成功/失敗。
-ユーザによる影響を受けるパスワード変更。
-ユーザの証明書有効期限/更新。
-ユーザ/マイクロサービス204の生成/取り消された新しい証明書。
各マイクロサービス204は、負荷分散される方法において、高可用性を保証するKubernetesエンジンに、定期的にその健全性を報告することを要求される。
図5を参照すると、安全な通信プラットフォーム200は、APIゲートウェイを含むことができる。APIゲートウェイは、OEMパートナーが、安全な通信プラットフォーム200内のAPI呼び出しを行うことを可能にする。API呼び出しは、それぞれのマイクロサービス204を介してルーティングされ、任意の必要な変更を容易にする(例えば、SQL照会をパートナーのデータベースにルーティングするアダプタ)。クラウドサービスは、以下のAPIを提供することによって、OEMパートナーのインフラストラクチャに統合する。
1.パートナーのユーザ管理システムを使用してユーザ(例えば、アクティブディレクトリ)をプロビジョニング及び管理する。
2.パートナーのデータベースを使用して、グループ/エンドポイントのためのポリシーをプロビジョニング及び管理する。
3.CMS408のルートCAをインポートする。
4.鍵をプロビジョニング及び管理する。
5.セッション及びエンクレーブ活動を顧客の監査システムにログ記録する。
OEMパートナーの解決策は、各エンドポイントの装置上ですでに実行したクライアントソフトウェアを含む場合、クライアントが提供するAPIを呼び出すことによって、(物理的な制約がないと仮定して)パートナーのクライアントに機能を組み込むことを可能にする。一例として、クライアント装置202の登録は、パートナーのクライアントの登録処理の一部として実行されることができる。エージェント装置402は、以下のAPIを提供するであろう。
1.OEMパートナー自身のクライアントソフトウェア(存在する場合)に統合する。
2.OEMパートナーのクライアントインストーラに統合する。
3.集中型配置システムと統合する、又は暫定的な(drop-in)インストールを作成する。
4.クライアント活動を、中央クライアント監査ログ記録にログ記録する。
配置された各安全な通信プラットフォーム200は、任意選択で、中央管理NOC206に接続するように構成されることができる。これは、一意の顧客IDを介して達成されることができる。安全な通信プラットフォーム200は、次いで、テレメトリデータ及び継続的な健全性状態を、NOC206に報告することができる。NOC206は、このデータを使用して、すべての配置を監視し、任意の健全性パラメータが閾値内にあること、及び異常が、電子メール/メッセージによって管理者に警告され、事前対応的に処理されることを保証する。
本明細書で言及されるように、安全な通信プラットフォーム200の中心であるマイクロサービス204は、公に到達可能ではなく、1つ以上のリージョン内のVPC208の内側にあることが企図される。安全な通信プラットフォーム200は、REST APIを使用して、又はクライアントからのIPsecセッションを介して、1つ以上のパブリックIPアドレス/ポートを使用してアクセス可能である。エージェント装置402は、IPsecを介して管理サービスと通信する。管理サービスは、通信するエンドポイントを認証し、ピアツーピアの暗号化通信を確立し、クライアント装置202からクライアント装置202(又はピアツーピア(P2P))通信経路への管理サービスを除去する。制御セッションは、いつ安全な通信が完了するかを監視するセッション活動を監視する。ピアクライアント装置202上の有効なアプリケーションは、IPsecを介して、暗号化されたエンクレーブを使用して互いに通信する。
以下の例示的な工程は、クライアント装置202がシステムを介してピアクライアント装置202と通信することを容易にするために実装されることができる。
1.クライアント装置202は、クライアント/ユーザとしてユーザデータベース400内に追加される。
2.クライアント装置202のために具体的に生成された一意の暗証フレーズを用いて暗号化されたカスタムクライアントパッケージが、クライアント装置202上にインストールされる。これは、手動で又は自動化された中心配置システムを使用して、行われることができる。パッケージを復号するために、暗証フレーズが要求される。
3.システムは、クライアントパッケージが、登録のための1回限りの一時的な認証情報を含むことを保証する。これは、IPsecが後に続くSPA412を使用することによって達成されることができる。
4.エージェント装置402は、最初にクラウドサービスに登録する。ここで、一意のパスワードが、ユーザが管理する装置の追加の安全性のために生成される。
5.クラウドサービスは、一時的な認証情報をエージェント装置402に発行する。
6.エージェント/クライアントは、認証情報を使用してバックエンドに接続する。
7.システムは、次回のセッションのための新しい認証情報の集合を要求し、それを記憶部内に格納する。
8.エージェント装置402の認証情報ユーザ名が一致する場合、クライアント装置202は、エージェント装置402にログインすることが許可される。
9.ログインされたサービスエージェント(例えば、ATMの機械)は、既存のエンクレーブを自動的に開始又は使用するであろう有効なアプリケーションのうちのいずれかを実行する。各新しいエンクレーブは、ピアエージェント(例えば、サーバ)に接続するために、ピアもまたオンラインである(ログインされている)限り、新しいエンクレーブ認証情報の集合を使用する。
10.エージェントとピアとはどちらも、NAT装置の後ろにあっても、管理サービスによって互いに直接到達可能である。
11.クライアント装置202がログアウトすると、ピアクライアント装置202とのすべての接続が切り離される。
12.エージェント装置402は、常にサーバに接続されたままであるように、ポリシーによって設定されることができ、その一時的な証明書を定期的に(ポリシーに基づいて)更新し、又はピアと通信する必要があるときはいつでも、若しくは配置の特定の要件を満たすために必要な任意の他のタイミングで、サーバへの接続を開始することができる。
13.エージェント装置402は、クラウドサービス又はピアエージェント装置402に接続する度に、相互認証のための新しい証明書を使用し、それぞれの場合において、エージェント装置402は、一時的な証明書を要求するであろう。
14.エージェント装置402は、公開鍵と秘密鍵との対を生成する。ピアツーピアエンクレーブについて、これらの鍵は処理記憶部内に保持されることができる。これらの鍵は一時的であるため、敵対者又はマルウェアによって読み取られる可能性がある永続的な記憶装置に、それらを書き込む必要はない。
15.クライアント装置202は、適切なサブジェクトフィールドを含むX.509証明書署名要求(CSR)を生成する。
16.クライアント装置202は、CSRメッセージをクラウドサービスに(セッションに関連する他のオブジェクトと共に)送信する。
17.クラウドサービス内で動作するCMS408は、CSRメッセージを受信し、CSR内のサブジェクトフィールドを読み取り、それを、署名のために適切な中間CAに提出する。CMS408は、一時的な1回限りで使用する証明書を、クライアント装置202に返送し、エージェント装置402は、証明書オブジェクトを受信する。これにより、使用のための準備ができている。
証明書の寿命が短いと、クライアント装置202についての脆弱性の時間ウィンドウ及び/又は証明書の侵害を介したセッション通信を短縮する。例えば、証明書の寿命が短いことは、侵害されたクライアント装置202がエージェント装置402に接続することができないという意味において、「完全な事前認証」を提供する。なぜならば、その秘密鍵が認証のために1度だけ使用され得るからである。
図6を参照すると、(使用される場合)SPA412は、安全な通信プラットフォーム200が、安全な通信プラットフォーム200によってプロビジョニングされた有効なSPA412鍵を有するクライアント装置202からの要求のみを受け入れることを保証するであろう。これらのSPA412鍵は、管理サービスとの新しいセッションごとに一時的に割り当てられ、それによって、認可されていないエンドポイント装置によって使用されている鍵を排除する。SPA412を使用して、以下の利点を実現することができる。
1.エージェント装置402を実行するクラウドサービス及び/又はOEMパートナーのアプリケーションサーバは、認可されていないクライアント装置202及び敵対者に対して同様に不可視である。-すべての開放ポートは、すべての認可されていないネットワークアクセスをブロックする動的ファイアウォールによって保護される。
2.クライアント認証は、単一SPA412データグラム送信を用いて検証される。接続、確認応答、又は任意の形態のフィードバックは全く存在しない。
3.全てのSPA412メッセージは、ネットワーク速度よりも速く処理される(例えば、Linuxカーネルにおいて処理される)。SPA412メッセージは、偽造行為を恣意的に費用のかかるものにする(arbitrarily expensive)ビットコイン形式の「プルーフ・オブ・ワーク(Proof of Work)」と、クライアント固有の秘密鍵へのアクセスを必要とするデジタル署名と、を含む。また、それらは、リプレイ攻撃を不可能にするタイムスタンプとグローバル一意識別子(GUID)とを含む。敵対者によって送信された、偽造又はリプレイされた任意のSPA412メッセージは、a)タイムスタンプ、b)ノンス、c)プルーフ・オブ・ワーク、及びd)デジタル署名に基づいて検出される。攻撃者が、捕捉されたSPA412メッセージを盗み取って利用(リプレイ)した場合、それが期限切れになる前にパケットを盗み取って利用(リプレイ)する必要があり、その場合でも、前の送信からのGUIDを使用して、リプレイをフィルタリングする。これらの攻撃は、効果がなく、発生可能性の軽減のためにログ記録される。
4.クライアント固有のファイアウォール規則は、承認後にバックエンド(対象サーバ)にインストールされる。(異なるIPフロー特性を有する)攻撃者は、常に粛々とブロックされ、したがって、不可視性を維持する。
以下は、システム内のSPA412の動作のために使用される例示的な処理工程である。
1.クライアント装置202は、以下の6つのフィールドを含むSPA412メッセージを生成及び送信する。
i.SPA412版番号
ii.タイムスタンプ
iii.GUID
iv.パディング
v.プルーフ・オブ・ワーク(POW)及び
vi.クライアント装置202のリベスト・シャミア・エーデルマン(RSA)署名
2.SPA412は、メッセージを受信し、これらの分野に基づいて、それをフィルタリングする。不正なメッセージ(例えば、古い(若しくは非因果的)、不十分な仕事を示す、又は無効な署名を有する、等)は、任意のフィードバックなしに破棄される。このフィルタリングは、任意の敵対者が偽のSPA412メッセージを作成及び転送できる速度を超えることが保証される速度で、Linuxカーネルにおいて行う。また、偽のメッセージは、フォレンジック分析のためにログ記録される。
3.正当なSPA412メッセージが受信されると、SPA412は、フロー固有のファイアウォール規則を作成する。フロー固有のファイアウォール規則は、認可されたクライアント装置202に、バックエンドへのアクセスを提供するであろう。承認されたアプリケーションサーバへのアクセスを提供するファイアウォール規則も作成される。
4.動的ファイアウォールは、エンドツーエンドの暗号化を用いて通信される新しい規則を用いて更新される。
5.認可されたクライアント装置XXは、インストールされたファイアウォール規則を介して、バックエンド及びアプリケーションサーバに接続し、一時的な証明書を用いて、自身を認証する。SPA412は、IPネットワーク層で動作し、一方で、認証は、セッション層で動作する。
単一の安心な通信プラットフォーム200は、複数のテナントに対応することができる。しかし、マイクロサービス204、データストア、証明書発行機関、及びドメイン名のクラスタは、別々に保持される。その結果、制御データの重複も、任意の2つのテナント間におけるエンクレーブのセッショントラフィックもない。安全な通信プラットフォーム200は、Kubernetes/Terraformを使用して、配置されることができる。すべてのマイクロサービス204のKubernetesオーケストレーションは、Terraformによってプロビジョニングされることができる。
安全な通信プラットフォーム200の配置は、各OEMパートナーの要求に合わせて最適化される。考慮される及び配置エンジンに供給されるべき重要な要素は、以下の通りである。
1.安全な通信プラットフォーム200が利用可能であるリージョン及びクラウドプロバイダ(例えば、AWS)。これは、エンドユーザ装置の比重に基づくことができる。
2.クライアントパッケージをダウンロードするための機構(例えば、クライアントアプリストア、1回限りのウェブリンク、その他の手動配置)。
3.パートナー構成要素の定義-例えば、ルートCA証明書、データベース認証情報、クラウドプロバイダ認証情報、アクティブディレクトリのアクセス認証情報。
4.スケーラブルな要素(リージョンごとの同期クライアント装置202の最大数、新しいサービスを配置するための閾値(例えば、最小許容セッション/秒)。
5.制御セッション及びエンクレーブのために使用されるポート。これは、クライアント装置202が位置するリージョンにおけるファイアウォール制限及びアクセス規則によって決定されることができる。
クライアント装置202が、(例えば、管理APIを介して)システムに追加されると、クライアント装置202に適用可能なポリシーのうちのいくつかは、クライアントのインストール中に発見されることができる。
1.サポートされるクライアントの種類-クライアント装置202が、管理/非管理される場合、及びそれが実行するOSプラットフォーム。
2.インターネットへのクライアント装置202の接続経路におけるファイアウォール、NAT、及び最大送信単位(MTU)の制限(存在する場合)。これは、クライアント装置202上で使用され得るポートを判定する。
3.クライアント装置202に対して利用可能なネットワーク帯域幅。
クライアント装置202は、Windows、Linux、又はAndroidに基づくエンドポイント上で実行することができる。クライアント装置202は、ユーザ管理(人間が機械を用いてインタフェースでつなぐこと)又は非管理(例えば、サーバ/サービス若しくはIoT装置)とすることができる。クライアント装置202は、管理APIを介して安全な通信プラットフォーム200に追加される。クライアント装置202が安全な通信プラットフォーム200に追加されると、クライアント装置202上にインストールするための一意の認証情報の集合が、クライアントソフトウェアと共に提供される。最初に登録するときに、認証情報は、安全な通信プラットフォーム200がクライアント装置202を識別することを可能にする。認証情報は、クライアント装置202に対して一意であり、他のどのエンドポイントでも再使用されることができず、エンドポイントが偽装されることを不可能にする。クライアント装置202は、仮想ネットワークアダプタを作成する。クライアントソフトウェアは、仮想ネットワークアダプタを介してルーティングされるすべてのトラフィックを暗号化し、一方、アダプタを介して入ってくるすべてのトラフィックは、クライアントソフトウェアによって復号される。
クライアント装置202は、登録パッケージの一部として提供される、1回限りの登録認証情報を用いて、及び統一資源位置指定子/インターネットプロトコル(URL/IP)アドレスを使用して、まさに最初に、(安全な通信プラットフォーム200を介して)管理サービスに登録する。登録の一部として、クライアント装置202は、新しい認証情報の集合を受信し、この認証情報の集合を使用してシステムにログイン/サインインする。サインインされると、クライアント装置202は、管理サービスとの制御セッションを有する。一覧表内のピアクライアント装置202からエンクレーブを受け入れること、又は一覧表上のピアクライアント装置202のいずれかへの接続を開始することは自由である。クライアント装置202は、制御セッションを使用して、新しいエンクレーブを設定することを管理サービスに要求し、制御セッション上でピアクライアント装置202からエンクレーブ要求に関する通知を受信する。制御セッションは、周期的な状態更新によって活動状態を保つ。
クライアント装置202が、ピアクライアント装置202とのエンクレーブを作成することを要求すると、安全な通信プラットフォーム200は、それが許可されるかどうかを検査し、許可される場合、各ピアクライアント装置202のルーティング可能なIPアドレスを、他方に提供し、新しい証明書を各エンドポイントに提供する。クライアント装置202は、これらの新しい証明書を使用して、自身の間に新しいIPsecセッションを確立する。新しい証明書に対応する秘密鍵は、クライアント装置202のみに知られるので、それらの間のすべてのトラフィックは、2つのピアクライアント装置202のみに可視であり、他のいずれにも可視ではない。
クライアント装置202は、各クライアント装置202に一意の認証情報及び他のインストール関連詳細を保持する一意のクライアントパッケージと共に、クライアントアプリケーションをインストールすることによって配置される。クライアントパッケージは、クライアントを管理サービスに追加した後に、管理APIを呼び出すことによって生成される。実際の配置は、以下を含むいくつかの方法で行われることができる。しかし、これらに限定されない。
1.クライアントアプリケーション及びクライアントパッケージを有するユニバーサルシリアルバス(USB)を使用して、クライアント装置202上に手動インストール。
2.アプリストアからのインストール(Android又はWindowsの場合)。
3.(電子メールなどの)アウトオブバンド(out-of-band)機構を介して、一意のパスワードをユーザに提供する1回限りで使用するウェブリンク。ウェブリンクは、ユーザが、識別検証のために提供されたパスコードを入力した後に、クライアントアプリケーション及び/又はクライアントパッケージをダウンロードすることを可能にするであろう。
4.クライアント管理APIへの呼び出しを介して、クライアント装置202をインストール及び登録すること。
配置されると、クライアント装置202は、インストールの一部としてそれらの管理サービスに登録される。その後、クライアント装置202の種類に応じて、クライアント装置202は、ログインした状態で、ピアクライアント装置202からの接続要求を自動受諾する、そのグループ内のピアクライアント装置202に自動接続する、又はピアクライアント装置202に接続して必要に応じて手動で接続要求を受諾することができる。
クライアント装置202がシステムから除去される必要があるとき、管理者は、それをシステムについて無効として記録する。次に、そのクライアント装置202の現在の証明書は、無効として記録される。この動作は、エージェント装置402が、バックエンドと通信するための任意の新しいIPSecセッションを確立することを妨げる。任意の既存の接続は終了され、ピアクライアント装置202とのすべてのエンクレーブセッションは、それらのそれぞれのエンクレーブセッションを強制的に終了させることによって終了される。
以下は、例示的なエージェント装置402のライフサイクル処理である。
エージェントのプロビジョニング
ユーザがエージェント装置402に追加されると、クライアントが登録することを可能にするであろう暗号材料及び他の情報を含むクライアントパッケージが生成される。このパッケージは、ユーザ固有の秘密暗証フレーズを用いて保護される。各クライアントにインストールされたエージェントソフトウェアは、ドメインごとに別々のプロファイルを作成することによって、同じ装置上で動作される多数のネットワークドメインに接続することを可能にする。各ドメインは、登録された各エージェント装置402に割り当てられたプライベートネットワークIPアドレスのプールを使用することができる。インストールパッケージは、以下を含む。
1.ユーザ名-ユーザ名+ドメイン+プラットフォームに対応する(インストール全体で一意)。
2.登録のためのSPA412秘密鍵。
3.(クラウドサービスによって生成される)1回限りで使用するX509登録証明書及びRSA-2048秘密鍵。
4.ドメイン。
5.自動登録選択肢(はい/いいえ)。
6.許可される暗号の組。
7.バックエンドIPアドレス及びSPA412トランスポートプロトコル及びポート。
8.タイムスタンプ。
9.デジタル署名。
ユーザ/装置が追加されると、管理サービスは、クライアント装置202のSPA412登録公開鍵、1回限りで使用する公開鍵、及び証明書シリアル番号の複製を、次回のログインセッションの検証のためにユーザデータベース400内に格納する。
登録が始まる前に、クライアント装置202が、SPA412メッセージをクラウドサービスに送信する場合、SPA412は、キャッシュされたSPA412公開鍵を検索して、署名を検証するSPA412公開鍵を識別し、次に、登録のためにファイアウォール規則をインストールする。SPA412の動作が、このクライアント装置202のためのファイアウォールを開くことに失敗する場合、SPA412は、休止し、成功するまで再試行する。クライアント装置202は、SPA412メッセージパケット内のソースIPアドレスによって識別されることができる。
クライアント登録処理
エージェント装置402は、以下を実行する。
1.SPA412が有効な場合、SPA412メッセージを送信する。
2.管理サービスへのIPSecトンネルを作成し、事前に割り当てられた1回限りで使用する証明書を用いて自身を認証する。
3.許可された暗号の組を要求し、何も受諾できない場合、登録を続行しない。
4.バックエンドへの次回のログインを行うために、IPSecとSPA412(有効な場合)とについて鍵の対を作成する。
5.管理サービスに以下の情報を送信する。
a.版番号。
b.ソルト付き及びハッシュ化されたユーザパスワード。
c.ドメイン識別。
d.次回のログインのために使用されるSPA412公開鍵(有効な場合)。
e.次回のログインセッションのためのエージェント証明書のCSR。
管理サービスは、以下を実行する。
1.クライアント装置202から、入ってくるIPsec接続を受信し、(例えば、OCSP(online Certificate Status Protocol)を使用して)、クライアント証明書を検証し、その失効状態を検査する。
2.証明書のユーザ名、装置、及び制御シリアル番号が、ユーザデータベース400内のクライアント装置202のために格納された証明書シリアル番号と一致することを検証する。
3.クライアント情報をユーザデータベース400内に格納する。
4.適切な中間CAによって、署名のためにCMS408にCSRメッセージを渡す。この一時的な証明書は、次回のログインセッションのために使用される。
エージェント装置402は、次回のログインのために、一時的な証明書、SPA412ポート番号、及びバックエンドIPアドレスを受信する。ここで、エージェント装置402は、完全に登録される。クラウドサービスは、1回限りで使用する証明書を失効させ、IPSec接続を閉じる。
クライアントログイン処理
エージェント装置402は、SPA412が有効である場合、SPA412メッセージを作成及び送信して、ファイアウォールを開く。一時的なログイン証明書を使用して、クラウドサービスへのIPSec接続を作成する。IPSec接続が利用可能になった後、エージェント装置402は、クライアント装置202のパスワードを使用してログインし、以下を送信する。
1.版番号。
2.(装置とドメインとを含む)ログインユーザ名。
3.次回のログインのために、一時的な証明書を生成するための署名を有するCSR。
4.SPA412が有効である場合、次回のログインのためのSPA412の公開鍵。
管理サービスは以下を含む。
1.(OCSPを使用して)クライアント証明書が有効であり、失効されていないことを検証する。
2.一時的な証明書のユーザ名及びシリアル番号が、クライアント/ユーザデータベース400内の情報と一致することを検証する。
3.パスワードを、認証のための第2の要素として検証する。
4.(SPA412について有効な場合)次回のログインのために、ログインSPA412公開鍵を格納する。
5.クライアント装置202について、新しい証明書を生成し、ユーザデータベース400内の新たな制御シリアル番号を更新する。
エージェント装置402は、以下を受信する。
1.次回のログインセッションのための一時的な証明書。
2.有効なアプリケーションと有効な宛先とを含むセッション固有のポリシー/設定。
3.グループのピア一覧表。
ここで、エージェント装置402は、管理サービスにログインされ、エンクレーブを開始又は受信するために利用可能である。
クライアントエンクレーブ要求
エージェント装置402は、以下の3つの方法のうちの1つにおいて、エンクレーブ要求を生成する。
-エージェント装置402が、明示的に、ピア(管理されたクライアント)とのエンクレーブを設定することを要求する場合、又は、
-クライアント装置202の設定(自動エンクレーブ選択肢/非管理クライアント)に基づいて自動的に、又は
-有効なアプリケーションからのトラフィックによって起動される、要求に応じたエンクレーブ。
クライアント装置202のエンクレーブは、クライアント装置202と管理サービスとの間の交換を用いて確立され、これは以下を含む。
1.エージェント装置402は、特定のピア又は名前付きサービスとのエンクレーブ要求において、バックエンドに要求を送信する。
2.管理サービス:
a.)ユーザ名及びセッションIDを検証する。
b.)ピアがログインされるかどうか、及び2つのピアが互いにエンクレーブを形成することを許可されるかどうかを検査する。
c.)エンクレーブに固有のエンクレーブIDを生成する。
d.)エンクレーブ要求をピアに転送し、ピアがエンクレーブ要求を受諾する。
3.ピア:
a.)ピアが受諾する場合、ピアは、エンクレーブIDをサブジェクト代替名として含むCSRを生成する。
b.)応答時に、CSRを添付するエンクレーブ要求を受諾する。
4.管理サービスは、エンクレーブIDに渡すCSRの生成をクライアントに要求する。
5.エージェント装置402は、エンクレーブIDをサブジェクト代替名として有するCSRを生成して、送信する。
6.管理サービス:
a)クライアント及びピアのための新しい証明書を生成する。
b)上記を含むエンクレーブパラメータを、クライアントとピアとの両方に送信する。
ピアツーピアのエンクレーブ
ピアツーピアのクレーブは、以下によって設定される。
1.接続は、エンクレーブ証明書を使用するIPSecトンネル上のエンクレーブパラメータにおいて指定されたポート番号を使用したクライアントIPアドレスを用いて、作成される。
2.エンクレーブIDは、IPSecトンネルの確立中に渡される。
3.エンクレーブが確立されると、アプリケーションデータはエンクレーブ内で渡される。
4.アダプタのエンクレーブにおいて受信された、入ってくるパケットは、復号化され、有効なアプリケーションに返送される。
5.各クライアント装置202は、周期的なエンクレーブ状態更新を管理サービスに送信する。
エンクレーブ終了
クライアント装置202又はそのピア装置202がエンクレーブを終了すると、エンクレーブIDを渡すことによって、クライアント装置202によってバックエンドに終了が返報される。両方のクライアント装置202が終了を報告することに失敗する場合、バックエンドは、エンクレーブ状態更新におけるアイドルタイムアウト後に、それを検出し、セッションを終了する。エージェント上のエンクレーブの終了は、IPsecセッションの切断と、エンクレーブのために使用された証明書の除去とを必要とする。バックエンド上の終了は、エンクレーブ状態を切断状態に更新することと、ログアウトを続行することとを必要とする。
ログアウト
クライアント装置202がログアウトすると、バックエンドは、クライアント装置202を、接続について利用不可と記録し、クライアント装置202からのトラフィックを許可するファイアウォール規則を閉じる。
クラウドサービスは、自身の鍵を生成することができる、又はOEMパートナーの鍵管理システムを使用するように構成されることができることに留意されたい。エージェント装置402のための証明書の生成は、提供される場合、ルートとしてOEM顧客のCA、及びCAを中間CAとして含む証明書チェーンを使用することができる。提供されない場合、システムは、独自のルートCAを提供する。エージェント装置402によって生成されたすべての鍵は、クライアント装置202上で利用可能な場合、任意選択で乱数発生器の機能を活用することができる。エージェント装置402内のすべての署名動作は、任意選択で、クライアント装置202上のTPM(Trust Platform Module)機能を活用することもできる。クラウドサービス上のすべての鍵は、安全な乱数生成器を使用することによって生成される。エージェント装置402は、そのユーザ名によって一意に識別される。CSRと証明書サブジェクトフィールドとは、ユーザ名又はプラットフォームを共通名に埋め込む(例えば、ユーザ名::装置(例えば、Mary::windows10)等)。エージェント装置402内で使用されるIPsecスタックは、以下をサポートする。
1.認証方法:
RSA署名(2048、4096がサポートされる。特注の鍵サイズもサポートされる)。
2.暗号化アルゴリズム:
AES(鍵サイズ128、192、256)。
AES暗号化方式:GCM、CTR、GMAC、XCBC。
3.完全アルゴリズム:
SHA2-256、SHA2-384、SHA2-512。
4.鍵合意:
ディフィー・ヘルマン(2048、3072、4096、6144、8192)。
マイクロサーバのための共通ライブラリ
図7は、システム共通ライブラリの高位レベル図を示す。システム共通ライブラリは、すべての他のマイクロサービス204によって使用されるソフトウェアモジュールを提供する。共通ライブラリは、(700の参照先に戻って)メッセージング(例えば、SQS(Simple Queue Service))、証明書管理、暗号化機能、他の雑多な機能などを含む。共通ライブラリは、Go言語で記述されることができる。さらに、「C」言語ラッパーを提供することができ、C/C++、Java、及びPythonを含む他の言語で記述されたアプリケーションがライブラリを直接使用することができる。
マイクロサービスメッセージライブラリ(MML700)は、APIを提供して、AWSのSQSを介してメッセージを送受信する。MML700は、メッセージの安全性を透過的に実装し、ライブラリ内のメッセージ暗号化及び復号化を処理するので、アプリケーションは、どうのようにメッセージを暗号化及び復号化するのか、又はどの証明書が使用されるかについて何も知る必要がない。さらに、MML700は、マイクロサービスメッセージを介して要求/応答凡例を実装する。マイクロサービスメッセージバスは、個々のコンテナに導入される認証情報を介して保護される。
暗号は、標準的なJWE(Json Web Encryption)を使用して、JSON(JavaScript Object Notation)メッセージの暗号化/復号化を提供する。また、JWS(JSON Web Signature)を使用して、JSONメッセージに署名及びJSONメッセージを検証するAPIも提供する。JWEは、JSONメッセージを符号化するための標準に基づく方法を提供する。メッセージは、受信者の公開鍵を使用して暗号化される。暗号化のために、AESアルゴリズムは、ガロアカウンタモード(GCM:Galois Counter Mode)において、256ビットの鍵を用いて使用されることができる。この方式では、組み合わされた暗号化及びメッセージの完全性を提供する。RSA最適非対称暗号化パディング(RSA-OAEP:RSA Optimal Asymmetric Encryption Padding)方式を使用して、AES暗号化鍵を暗号化することができる。
JWS署名について、RSAが使用される。暗号702は、タイムスタンプ、リプレイ検出、及びプルーフ・オブ・ワークなどの署名を使用した追加の特徴についてサポートする。これらは暗号ライブラリ内で処理されるため、アプリケーションは、これらを実装する必要はない。有効なタイムスタンプについてのウィンドウは、構成可能である(例えば、初期設定は、5分とすることができる)。プルーフ・オブ・ワークのために必要なワークの量も構成可能である。所期設定では、無効とすることができる(0に設定)。JWEに基づく暗号化/復号化では、暗号ライブラリは、メッセージの暗号化のために使用される公開鍵を識別して検索し、鍵が利用可能でない場合、CMS408から鍵を要求する。CMSマイクロサービスは、Vault404から鍵を検索する。また、メッセージの復号に使用される秘密鍵を識別して検索する。
証明書管理408は、自動化された証明書管理を実装する。証明書は、必要に応じて、Vaultデータベース406から自動的に検索される。マイクロサービス204は、別のマイクロサービス204にメッセージを送信する必要がある場合、メッセージを暗号化する必要がある。暗号化は、メッセージの受信者の証明書を必要とする。この証明書は、CMS408に要求を送信することによって、Vault404から取得される。サービスの起動時の初期化中に、共通ライブラリによって以下の一連の動作が実行される。
1.サービスの証明書と秘密鍵とは、ローカルファイルシステムから読み込まれる(これらが存在する場合)。ファイル名は、構成されたベースディレクトリと構成されたサービス名とに基づく。名前は、以下のように導出される。
証明書:BASEDIR/ca/certs/SERVICENAME-cert.pem
秘密鍵:BASEDIR/ca/private/SERVICENAME-privkey.pem
2.CMS408の証明書が読み込まれる。これは、CMS408から他のマイクロサービス204の証明書を検索するために必要とされる。
3.工程1において証明書又は秘密鍵が見つけられない場合、新しい秘密/公開鍵の対が生成され、CSRメッセージが生成される。CSRは、CMS408に送信されて、サービスの証明書を取得する。この証明書は、ローカルファイルシステムに保存されるため、将来使用することが可能である。
4.工程1において証明書と秘密鍵とが見つけられた場合、その有効期限を確認する。証明書の有効期限が切れている場合、証明書は使用されず、工程3が実行されて、新しい証明書を生成する。
5.証明書と秘密鍵とは、記憶部内にキャッシュされて保持され、将来使用するためにディスクにも保存される。
6.サービスが別のサービスと通信する必要がある場合、サービスは、受信者のサービスについて証明書を調べる。キャッシュされた記憶部内に証明書が存在する場合、期限切れでない限り証明書は使用される。証明書が存在しない、又は期限切れである場合、証明書は、GetCertメッセージをCMS408に送信することによって検索される。
図8は、代表的なコンピュータシステム800を示す。コンピュータシステム800は、本開示の分散アーキテクチャの実施形態、又はその一部が、コンピュータ可読コードとして実装され得る。例えば、本明細書で開示されるクライアント装置、通信装置、サーバ、ルータ、サービス、及びエンドポイントは、ハードウェア、ソフトウェア、ファームウェア、命令が格納された非一時的コンピュータ可読媒体、又はそれらの組み合わせを使用して、コンピュータシステム800によって、全体的又は部分的に実装されることができる。さらに、本明細書で開示されるクライアント装置、通信装置、サーバ、ルータ、サービス、及びエンドポイントは、1つ以上のコンピュータシステム又は他の処理システムにおいて実装されることができる。ハードウェア、プロセッサにおいて実行されるソフトウェア、又はそれらの任意の組合せは、本開示の方法及び工程を実装するために使用されるモジュール及び構成要素を具体化することができる。
前述のように、本開示の分散アーキテクチャは、クラウド上、データセンタ内、仮想マシン上、又はそれらの任意の組合せで実行することができ、本開示において後述されるようにマイクロサービス間で使用されることさえできる。インターネットの利用がより普及するにつれて、「クラウドコンピューティング」がより主流になった。クラウドコンピューティングは、ユーザのアプリケーションを処理するローカルサーバ又はパーソナル装置を有することの代替として使用されることができる。一般に、クラウドコンピューティングは、機能又は記憶装置が「クラウド」から生じることを示すことができる。クラウドは、公衆ネットワーク(TCP/IPネットワークに基づくものである可能性がある)を意味すると理解されることが多く、特にインターネットと仮定されることが多いので、環境内の機能が特定の識別可能な装置から生じない。クラウドコンピューティングの後ろにあるアーキテクチャは、「クラウドサーバ」のネットワークを含むことができる。「クラウドサーバ」のネットワークは、時には仮想化の技術を使用して、並列に実行するグリッド内にあるかのように相互接続され、コンピュータ及び/又はサーバごとにコンピューティング出力を最大化する。一般に、クラウドコンピューティングは、グリッドコンピューティングの部分集合を表すことができる。グリッドコンピューティングの部分集合は、ユーティリティコンピューティングと、共有コンピューティングリソースの使用に対する他のアプローチとを含むことができる。
プログラマブルロジックが使用される場合、そのようなロジックは、実行可能ソフトウェアコードによって構成された市販の処理プラットフォーム上で実行することができ、特定の目的のコンピュータ又は特別の目的の装置(例えば、プログラマブルロジックアレイ、特定用途向け集積回路等)になる。当業者は、開示された主題の実施形態が、様々なコンピュータシステム構成を用いて実施され得ることを理解することができる。この様々なコンピュータシステム構成は、マルチコアマルチプロセッサシステム、ミニコンピュータ、メインフレームコンピュータ、分散機能を用いてリンク又はクラスタ化されたコンピュータ、ならびに仮想的に任意の装置に埋め込まれ得るパーベイシブ又は小型コンピュータを含む。例えば、少なくとも1つのプロセッサ装置及び記憶部が、上述の実施形態を実装するために使用されることができる。
本明細書で論じられるプロセッサユニット又は装置は、単一のプロセッサ、複数のプロセッサ、又はそれらの組み合わせとすることができる。プロセッサ装置は、1つ以上のプロセッサ「コア」を有することができる。本明細書で論じられる用語「コンピュータプログラム媒体」、「非一時的コンピュータ可読媒体」、及び「コンピュータ使用可能媒体」は、概して、取り外し可能記憶ユニット818、取り外し可能記憶ユニット822、及びハードディスクドライブ812内にインストールされたハードディスクなどの有形媒体を指すために使用される。
本開示の様々な実施形態は、この代表的なコンピュータシステム800に関して説明される。この説明を読んだ後、他のコンピュータシステム及び/又はコンピュータアーキテクチャを使用して、どのように本開示を実装するかは、当業者には明らかとなるであろう。
動作は連続的な処理として説明されることができるが、動作の一部は、実際には、並列に、同時に、及び/又は分散環境において、さらに単一又はマルチプロセッサマシンによるアクセスのためにローカルに又は遠隔に格納されたプログラムコードを用いて、実行されることができる。さらに、ある実施形態では、動作の順序は、開示される主題の趣旨から逸脱することなく、再構成されることができる。
プロセッサ装置804は、本明細書で論じられる機能を実行するように具体的に構成された専用又は汎用プロセッサ装置とすることができる。プロセッサ装置804は、通信インフラストラクチャ806に接続されることができる。これは、例えば、バス、メッセージキュー、ネットワーク、マルチコアメッセージパッシング方式などである。ネットワークは、本明細書で開示されるような機能を実行するのに適した任意のネットワークとすることができ、構内通信網(「LAN」)、広域通信網(「WAN」)、無線通信網(例えば、「Wi-Fi」)、移動体通信網、衛星通信網、インターネット、光ファイバ、同軸ケーブル、赤外線、無線周波数(「RF」)、又はそれらの任意の組合せを含むことができる。他の適切なネットワークの種類及び構成は、当業者には明らかであろう。また、コンピュータシステム800は、主記憶部808(例えば、ランダムアクセスメモリ、読み出し専用メモリ等)を含むことができ、補助記憶部810も含むことができる。補助記憶部810は、ハードディスクドライブ812と、フロッピーディスクドライブ、磁気テープドライブ、光ディスクドライブ、フラッシュメモリ等の取り外し可能記憶ドライブ814とを含むことができる。
取り外し可能記憶ドライブ814は、周知の方法で、取り外し可能記憶ユニット818から読み取ることができ、及び/又はそれに書き込むことができる。取り外し可能記憶ユニット818は、取り外し可能記憶媒体を含むことができる。取り外し可能記憶媒体は、取り外し可能記憶ドライブ814によって読み取られることができ、書き込まれることができる。例えば、取り外し可能記憶ドライブ814がフロッピーディスクドライブ又はユニバーサルシリアルバスポートである場合、取り外し可能記憶ユニット818は、それぞれフロッピーディスク又は持ち運びできるフラッシュドライブとすることができる。一実施形態では、取り外し可能記憶ユニット818は、非一時的コンピュータ可読記録媒体とすることができる。
ある実施形態では、補助記憶部810は、コンピュータプログラム又は他の命令をコンピュータシステム800内に読み込まれることを可能にするための代替手段、例えば、取り外し可能記憶ユニット822及びインタフェース820を含むことができる。そのような手段の例は、(例えば、ビデオゲームシステムに見られるような)プログラムカートリッジ及びカートリッジインタフェース、取り外し可能メモリチップ(例えば、EEPROM、PROM等)及び関連付けられたソケット、ならびに当業者には明らかであるような他の取り外し可能記憶ユニット822及びインタフェース820を含むことができる。
コンピュータシステム800内に(例えば、主記憶部808及び/又は補助記憶部810内に)格納されたデータは、任意の種類の適切なコンピュータ可読媒体に格納されることができる。これは、例えば、光学記憶装置(例えば、コンパクトディスク、デジタル多用途ディスク、ブルーレイディスク等)又は磁気テープ記憶装置(例えば、ハードディスクドライブ)である。データは、任意の種類の適切なデータベース構成で構成されることができる。これは、例えば、関係データベース、SQLデータベース、分散データベース、オブジェクトデータベース等である。適切な構成及び記憶装置の種類は、当業者には明らかであろう。
また、コンピュータシステム800は、通信インタフェース824を含むことができる。通信インタフェース824は、ソフトウェア及びデータを、コンピュータシステム800と外部装置との間で転送することを可能にするように構成されることができる。例示的な通信インタフェース824は、モデム、ネットワークインタフェース(例えば、イーサネットカード)、通信ポート、パーソナルコンピュータメモリカード国際協会(PCMCIA)のスロット及びカード等を含むことができる。通信インタフェース824を介して転送されるソフトウェア及びデータは、信号の形態とすることができ、この信号は、電子信号、電磁信号、光信号、又は当業者には明らかであるような他の信号とすることができる。信号は、通信経路826を介して移動することができる。通信経路826は、信号を搬送するように構成されることができ、電線、ケーブル、光ファイバ、電話回線、携帯電話リンク、無線周波数リンク等を使用して実装されることができる。
コンピュータシステム800は、表示インタフェース802をさらに含むことができる。表示インタフェース802は、データを、コンピュータシステム800と外部表示装置830との間で転送することを可能にするように構成されることができる。例示的な表示インタフェース802は、高精細度マルチメディアインタフェース(HDMI)、デジタルビジュアルインタフェース(DVI)、ビデオグラフィックスアレイ(VGA)等を含むことができる。表示装置830は、コンピュータシステム800の表示インタフェース802を介して送信されるデータを表示するための任意の適切な種類の表示装置とすることができる。これは、陰極線管(CRT)表示装置、液晶表示装置(LCD)、発光ダイオード(LED)表示装置、静電タッチ表示装置、薄膜トランジスタ(TFT)表示装置等を含む。
コンピュータプログラム媒体及びコンピュータ使用可能媒体は、主記憶部808及び補助記憶部810などの記憶部を参照することができる。この記憶部は、メモリ半導体(例えば、ダイナミックランダムアクセスメモリ(DRAM)等)とすることができる。これらのコンピュータプログラム製品は、コンピュータシステム800にソフトウェアを提供するための手段とすることができる。コンピュータプログラム(例えば、コンピュータ制御ロジック)は、主記憶部808及び/又は補助記憶部810内に格納されることができる。また、コンピュータプログラムは、通信インタフェース824を介して受信されることができる。そのようなコンピュータプログラムは、実行されると、コンピュータシステム800が本明細書で論じられる本方法を実施することを可能にすることができる。特に、コンピュータプログラムは、実行されると、プロセッサ装置804が本明細書で論じられる方法を実施することを可能にすることができる。したがって、そのようなコンピュータプログラムは、コンピュータシステム800の制御機構を表すことができる。本開示が、ハードウェア上で実行されるソフトウェアを使用して実施される場合、ソフトウェアは、コンピュータプログラム製品内に格納され、取り外し可能記憶ドライブ814、インタフェース820、及びハードディスクドライブ812、又は通信インタフェース824を使用して、コンピュータシステム800内に読み込まれることができる。
プロセッサ装置804は、コンピュータシステム800の機能を実行するように構成された1つ以上のモジュール又はエンジンを含むことができる。モジュール又はエンジンの各々は、ハードウェアを使用して実装されることができ、いくつかの例では、ハードウェア上で実行されるソフトウェアを利用することもできる。例えば、このソフトウェアは、主記憶部808又は補助記憶部810内に格納されたプログラムコード及び/又はプログラムに対応する。そのような例では、プログラムコードは、コンピュータシステム800のハードウェアによる実行の前に、プロセッサ装置804によって(例えば、コンパイルモジュール又はエンジンによって)コンパイルされることができる。例えば、プログラムコードは、プロセッサ装置804及び/又はコンピュータシステム800の任意の追加のハードウェア構成要素による実行のために低水準言語(例えば、アセンブリ言語又は機械コード)に翻訳されるプログラミング言語で書かれたソースコードとすることができる。コンパイルする処理は、語彙解析、前処理、構文解析、意味解析、構文主導型変換、コード生成、コード最適化、及びコンピュータシステム800を制御して本明細書で開示される機能を実行するのに適した低水準言語へのプログラムコードの翻訳に適し得る任意の他の技術の使用を含むことができる。そのような処理の結果、コンピュータシステム800は、上述の機能を実行するように一意にプログラムされた、特別に構成されたコンピュータシステム800となることは、当業者には明らかであろう。
値域の開示は、終点を含む、その範囲内のすべての数値の開示であることを理解されたい。いくつかの構成要素、特徴、及び/又は構成は、1つの特定の実施形態のみに関連して説明されることができるが、別段の記載がない限り、又はそのような構成要素、特徴、及び/又は構成が他の実施形態とともに使用することが技術的に不可能でない限り、これらの同じ構成要素、特徴、及び/又は構成は、多くの他の実施形態とともに適用又は使用されることができ、他の実施形態に適用可能であると考えられるべきであることが理解されたい。したがって、様々な実施形態の構成要素、特徴、及び/又は構成は、任意の方法において一緒に組み合わせられることができ、そのような組み合わせは、本明細書によって、明示的に企図され、開示される。
本開示の上記の教示を考慮して、説明された例及び実施形態の多数の修正及び変形が可能であることが、当業者に明らかであろう。開示された例及び実施形態は、例示の目的のためにのみ提示される。他の代替実施形態は、本明細書に開示される特徴の一部又は全部を含むことができる。したがって、すべてのそのような修正及び代替実施形態を網羅することが目的であり、その全範囲を与えられることが目的である。
本明細書に開示される実施形態に対する修正は、設計基準の特定の集合を満たすように行われることができることを理解されたい。したがって、本明細書に開示される装置と、その使用及び製造方法との特定の例示的な実施形態が論じられ、例示されてきたが、本開示は、それらに限定されず、以下の特許請求の範囲内で、他に様々に具体化及び実施され得ることを明確に理解されたい。

Claims (20)

  1. クライアント装置間の安全な通信を提供する方法であって、前記方法は、
    安全な通信プラットフォームにおいて、第1のクライアント装置から、第2のクライアント装置と通信するための要求を受信することと、
    前記安全な通信プラットフォームによって、前記第1のクライアント装置が、前記第2のクライアント装置と通信することを許可されるか否かを判定することと、
    通信が許可される場合、
    前記安全な通信プラットフォームによって、1回限りで使用する一時的な鍵を生成することと、
    前記安全な通信プラットフォームによって、前記生成された1回限りで使用する一時的な鍵を、前記第1のクライアント装置と第2のクライアント装置とに送信することと、
    前記安全な通信プラットフォームによって、前記第1のクライアント装置と第2のクライアント装置との間の安全な通信セッションを確立することであって、前記第1のクライアント装置と第2のクライアント装置との間の通信が、前記1回限りで使用する一時的な鍵を使用して、暗号化及び復号化される、ことと、
    前記第1のクライアント装置と第2のクライアント装置との間の前記安全な通信セッションの終了に際し、前記安全な通信プラットフォームによって、前記1回限りで使用する一時的な鍵を破棄することと、
    を含む、方法。
  2. 請求項1に記載の方法において、前記第1のクライアント装置と第2のクライアント装置との間の後続の安全な通信セッションごとに、前記安全な通信プラットフォームによって、新しい1回限りで使用する一時的な鍵を生成することをさらに含む、方法。
  3. 請求項1に記載の方法において、前記1回限りで使用する一時的な鍵は、公開鍵と秘密鍵との対を含む、方法。
  4. 請求項1に記載の方法において、
    前記安全な通信プラットフォームによって、前記第1のクライアント装置と第2のクライアント装置とから、制御セッション情報を受信することと、
    前記安全な通信プラットフォームによって、前記受信された制御セッション情報を使用して、前記安全な通信セッションの終了を判定することと、
    をさらに含む、方法。
  5. 請求項4に記載の方法において、前記安全な通信セッションの終了が判定されると、前記安全な通信プラットフォームによって、前記第1のクライアント装置と前記第2のクライアント装置との間のすべての情報トラフィックを停止することをさらに含む、方法。
  6. 請求項1に記載の方法において、通信が許可されないと判定される場合、前記安全な通信プラットフォームによって、前記第1のクライアント装置による前記要求を拒否することをさらに含む、方法。
  7. 請求項1に記載の方法において、前記安全な通信セッションから前記安全な通信プラットフォームを除去して、前記安全な通信セッションが、前記第1のクライアント装置と第2のクライアント装置との間に直接存在することをさらに含む、方法。
  8. 請求項1に記載の方法において、前記安全な通信プラットフォームの制御を介して管理インフラストラクチャを確立することをさらに含み、前記管理インフラストラクチャは、仮想プライベートクラウドとして配置される、方法。
  9. 請求項8に記載の方法において、Dockerに基づくマイクロサービスアーキテクチャを介して、要求に応じたエラスティックスケーラビリティを提供することをさらに含む、方法。
  10. 請求項1に記載の方法において、単一パケット認証セキュリティ層を介して、前記第1のクライアント装置と前記第2のクライアント装置とのうちの少なくとも1つの真正性を検証する、方法。
  11. クライアント装置間の安全な通信を提供するためのシステムであって、前記システムは、安全な通信プラットフォームを含み、前記安全な通信プラットフォームは、処理サーバを含み、前記処理サーバは、
    第1のクライアント装置から、第2のクライアント装置と通信するための要求を受信することと、
    前記第1のクライアント装置が前記第2のクライアント装置と通信することを許可されるか否かを判定することと、
    通信が許可される場合、
    1回限りで使用する一時的な鍵を生成することと、
    前記生成された1回限りで使用する一時的な鍵を、前記第1のクライアント装置と第2のクライアント装置とに送信することと、
    前記第1のクライアント装置と第2のクライアント装置との間の安全な通信セッションを確立することであって、前記第1のクライアント装置と第2のクライアント装置との間の通信は、前記1回限りで使用する一時的な鍵を使用して、暗号化及び復号化される、ことと、
    前記第1のクライアント装置と第2のクライアント装置との間の前記安全な通信セッションの終了に際し、前記1回限りで使用する一時的な鍵を破棄することと、
    を実行するように構成される、システム。
  12. 請求項11に記載のシステムにおいて、前記処理サーバは、前記第1のクライアント装置と第2のクライアント装置との間の後続の安全な通信セッションごとに、新しい1回限りで使用する一時的な鍵を生成するようにさらに構成される、システム。
  13. 請求項11に記載のシステムにおいて、前記1回限りで使用する一時的な鍵は、公開鍵と秘密鍵との対を含む、システム。
  14. 請求項11に記載のシステムにおいて、前記処理サーバは、
    前記第1のクライアント装置と第2のクライアント装置とから制御セッション情報を受信することと、
    前記受信された制御セッション情報を使用して、前記安全な通信セッションの終了を判定することと、
    を実行するようにさらに構成される、システム。
  15. 請求項14に記載のシステムにおいて、前記処理サーバは、前記安全な通信セッションの終了が判定されると、前記第1のクライアント装置と前記第2のクライアント装置との間のすべての情報トラフィックを停止するようにさらに構成される、システム。
  16. 請求項11に記載のシステムにおいて、前記処理サーバは、通信が許可されないと判定される場合、前記第1のクライアント装置による前記要求を拒否するようにさらに構成される、システム。
  17. 請求項11に記載のシステムにおいて、前記処理サーバは、前記安全な通信セッションから、前記安全な通信プラットフォームを除去して、前記安全な通信セッションは、前記第1のクライアント装置と第2のクライアント装置との間に直接存在するようにさらに構成される、システム。
  18. 請求項11に記載のシステムにおいて、前記安全な通信プラットフォームは、仮想プライベートクラウドとして配置される、システム。
  19. 請求項18に記載のシステムにおいて、前記仮想プライベートクラウドは、Dockerに基づくマイクロサービスアーキテクチャを含む、システム。
  20. 請求項11に記載のシステムにおいて、前記第1のクライアント装置と前記第2のクライアント装置とのうちの少なくとも1つの真正性を検証するように構成された単一パケット認証セキュリティ層をさらに含む、システム。
JP2022550682A 2020-02-21 2021-02-19 安全な通信のための方法及びシステム Pending JP2023514736A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202062979711P 2020-02-21 2020-02-21
US62/979,711 2020-02-21
PCT/US2021/018647 WO2021168164A1 (en) 2020-02-21 2021-02-19 Method and system for secure communication

Publications (1)

Publication Number Publication Date
JP2023514736A true JP2023514736A (ja) 2023-04-07

Family

ID=77365482

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022550682A Pending JP2023514736A (ja) 2020-02-21 2021-02-19 安全な通信のための方法及びシステム

Country Status (4)

Country Link
US (2) US11621945B2 (ja)
EP (1) EP4107903A4 (ja)
JP (1) JP2023514736A (ja)
WO (1) WO2021168164A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11343195B1 (en) 2020-12-10 2022-05-24 .Amazon Technologies, Inc. Ephemeral data stream routing service
US11457050B1 (en) * 2020-12-10 2022-09-27 Amazon Technologies, Inc. Ephemeral data stream service
US11831638B1 (en) * 2021-04-19 2023-11-28 Amazon Technologies, Inc. Single-packet authorization using proof of work
US11785449B2 (en) * 2021-09-30 2023-10-10 Visa International Service Association Secure on-demand ultra-wideband communication channels systems and methods
CN113992365A (zh) * 2021-10-15 2022-01-28 北京天融信网络安全技术有限公司 一种密钥分发方法、装置及电子设备
CN114257471B (zh) * 2021-11-09 2024-04-05 网宿科技股份有限公司 验证方法、网络设备及存储介质
CN114039949B (zh) * 2021-12-24 2024-03-26 上海观安信息技术股份有限公司 云服务浮动ip绑定方法及系统
US11553058B1 (en) * 2022-02-09 2023-01-10 coretech It, UAB Sticky sessions in a proxy infrastructure
US20240121321A1 (en) * 2022-10-05 2024-04-11 Hong Kong Applied Science and Technology Research Institute Company Limited Method and apparatus for removing stale context in service instances in providing microservices

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004501532A (ja) * 2000-03-29 2004-01-15 ヴァディアム テクノロジー インコーポレイテッド 鍵中央提供及びキー入力可能文字によるワンタイムパッド暗号化
US20020136410A1 (en) * 2001-03-26 2002-09-26 Sun Microsystems, Inc. Method and apparatus for extinguishing ephemeral keys
US7581100B2 (en) * 2003-09-02 2009-08-25 Authernative, Inc. Key generation method for communication session encryption and authentication system
US7545932B2 (en) * 2004-10-29 2009-06-09 Thomson Licensing Secure authenticated channel
SE534384C2 (sv) * 2009-07-03 2011-08-02 Kelisec Ab Förfarande för att alstra en krypterings-/dekrypteringsnyckel
US9886267B2 (en) 2014-10-30 2018-02-06 Equinix, Inc. Interconnection platform for real-time configuration and management of a cloud-based services exchange
WO2017106793A1 (en) * 2015-12-16 2017-06-22 Visa International Service Association Systems and methods for secure multi-party communications using a proxy
US10917239B2 (en) * 2016-02-26 2021-02-09 Fornetix Llc Policy-enabled encryption keys having ephemeral policies
WO2017168228A1 (en) * 2016-03-08 2017-10-05 Marvell World Trade Ltd. Methods and apparatus for secure device authentication
US10075518B2 (en) * 2016-04-06 2018-09-11 Box, Inc. Collaborator network creation using cloud-based metadata
US10205595B2 (en) * 2016-06-22 2019-02-12 Vmware, Inc. Methods and apparatus to authenticate and differentiate virtually identical resources using session chaining
US10877785B2 (en) * 2017-01-24 2020-12-29 Microsoft Technology Licensing, Llc Enclave abstraction model
EP3748900A1 (en) * 2017-03-01 2020-12-09 Apple Inc. System access using a mobile device
US11082412B2 (en) * 2017-07-12 2021-08-03 Wickr Inc. Sending secure communications using a local ephemeral key pool
US10541814B2 (en) * 2017-11-08 2020-01-21 Wickr Inc. End-to-end encryption during a secure communication session
US11126699B2 (en) * 2018-02-07 2021-09-21 Nec Corporation Replica trusted execution environment: enabling seamless replication of trusted execution environment (TEE)-based enclaves in the cloud
US10958425B2 (en) * 2018-05-17 2021-03-23 lOT AND M2M TECHNOLOGIES, LLC Hosted dynamic provisioning protocol with servers and a networked responder
CN113169881A (zh) * 2018-11-27 2021-07-23 区块链控股有限公司 经由区块链网络高效且安全地处理、访问和传输数据的系统和方法
EP3610405B1 (en) * 2019-03-26 2021-07-21 Advanced New Technologies Co., Ltd. Program execution and data proof scheme using multiple key pair signatures

Also Published As

Publication number Publication date
US20230208822A1 (en) 2023-06-29
EP4107903A1 (en) 2022-12-28
US11621945B2 (en) 2023-04-04
US20210266303A1 (en) 2021-08-26
WO2021168164A1 (en) 2021-08-26
EP4107903A4 (en) 2023-08-23

Similar Documents

Publication Publication Date Title
US11621945B2 (en) Method and system for secure communications
US10778659B2 (en) System and method for protecting communications
US10903999B1 (en) Protecting PII data from man-in-the-middle attacks in a network
US10382595B2 (en) Systems and methods for protecting communications
US10389524B2 (en) Introducing middleboxes into secure communications between a client and a server
US8082574B2 (en) Enforcing security groups in network of data processors
US20170201382A1 (en) Secure Endpoint Devices
US20070074282A1 (en) Distributed SSL processing
US11652637B2 (en) Enforcing a segmentation policy using cryptographic proof of identity
US20180375648A1 (en) Systems and methods for data encryption for cloud services
JP2018117340A (ja) コンピュータネットワーク内のユーザの認証
WO2023174143A1 (zh) 数据传输方法、设备、介质及产品
US20200252384A1 (en) Method for distributed application segmentation through authorization
Walsh et al. Intra-cloud and inter-cloud authentication
CN106576050B (zh) 三层安全和计算架构
US11611541B2 (en) Secure method to replicate on-premise secrets in a cloud environment
US11968302B1 (en) Method and system for pre-shared key (PSK) based secure communications with domain name system (DNS) authenticator
US20240195795A1 (en) Computer-implemented methods and systems for establishing and/or controlling network connectivity
EP4323898A1 (en) Computer-implemented methods and systems for establishing and/or controlling network connectivity
Calbimonte et al. Privacy and security framework. OpenIoT deliverable D522
answers Verizon 1.2 Securing Device Connectivity in the IoT
WO2008021159A2 (en) Enforcing security groups in network of data processors

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221003

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221003

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231003

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231128