IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インテル・コーポレーションの特許一覧

特許7452813エッジシステムにおける加速化階層キーキャッシングのための技術
<>
  • 特許-エッジシステムにおける加速化階層キーキャッシングのための技術 図1
  • 特許-エッジシステムにおける加速化階層キーキャッシングのための技術 図2
  • 特許-エッジシステムにおける加速化階層キーキャッシングのための技術 図3
  • 特許-エッジシステムにおける加速化階層キーキャッシングのための技術 図4
  • 特許-エッジシステムにおける加速化階層キーキャッシングのための技術 図5
  • 特許-エッジシステムにおける加速化階層キーキャッシングのための技術 図6
  • 特許-エッジシステムにおける加速化階層キーキャッシングのための技術 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-11
(45)【発行日】2024-03-19
(54)【発明の名称】エッジシステムにおける加速化階層キーキャッシングのための技術
(51)【国際特許分類】
   H04L 9/08 20060101AFI20240312BHJP
   H04L 9/14 20060101ALI20240312BHJP
【FI】
H04L9/08 B
H04L9/08 E
H04L9/14
【請求項の数】 26
【外国語出願】
(21)【出願番号】P 2020016412
(22)【出願日】2020-02-03
(65)【公開番号】P2020167664
(43)【公開日】2020-10-08
【審査請求日】2023-01-30
(31)【優先権主張番号】16/368,982
(32)【優先日】2019-03-29
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】591003943
【氏名又は名称】インテル・コーポレーション
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】ティモシー ヴェラル
(72)【発明者】
【氏名】トーマス ウィルハルム
(72)【発明者】
【氏名】フランチェスク グイム ベルナート
(72)【発明者】
【氏名】カーティク クマー
(72)【発明者】
【氏名】ネッド エム. スミス
(72)【発明者】
【氏名】ラジェシュ プーアナチャンドラン
(72)【発明者】
【氏名】カピル ソード
(72)【発明者】
【氏名】タルン ヴィスワナサン
(72)【発明者】
【氏名】ジョン ジェイ. ブラウン
(72)【発明者】
【氏名】パトリック クッチ
【審査官】中里 裕正
(56)【参考文献】
【文献】米国特許出願公開第2014/0050317(US,A1)
【文献】米国特許出願公開第2016/0269179(US,A1)
【文献】米国特許出願公開第2018/0041336(US,A1)
【文献】米国特許出願公開第2018/0146041(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/08
H04L 9/14
(57)【特許請求の範囲】
【請求項1】
キー管理のためのコンピューティングデバイスであって、
キーキャッシュであって、前記キーキャッシュは、前記コンピューティングデバイスのセキュアストレージに含まれている、キーキャッシュと、
エッジ階層キーマネージャと、を備え、
前記エッジ階層キーマネージャは、
第1のキーに対する要求を受信することであって、前記要求は前記コンピューティングデバイスのテナントに関連付けられており、前記要求は、エッジデバイスに関連付けられたFunction‐as‐a‐Service(FaaS)インスタンスによって提供されるキー識別子を示す、受信することと、
前記要求の受信に応じて、前記第1のキーが前記キーキャッシュ内に格納されているかどうかを判定することと、
前記第1のキーが前記キーキャッシュ内に格納されていないとの判定に応じ、前記第1のキーをリモートコンピューティングデバイスに対し要求することであって、前記コンピューティングデバイスおよび前記リモートコンピューティングデバイスはエッジ階層に含まれており、前記コンピューティングデバイスは前記エッジ階層の第1の層に含まれ、前記リモートコンピューティングデバイスは、前記エッジデバイスから前記第1の層と比較して論理的により遠隔にある、前記エッジ階層における次の層に含まれる、要求することと、
前記第1のキーが前記キーキャッシュ内に格納されているとの判定または前記第1のキーの要求に応じ、前記第1のキーを、前記要求に対する応答として提供することと、を実行する、コンピューティングデバイス。
【請求項2】
アクセラレータをさらに備え、前記アクセラレータが前記エッジ階層キーマネージャを含む、請求項1に記載のコンピューティングデバイス。
【請求項3】
前記エッジ階層キーマネージャは、さらに、
前記コンピューティングデバイスの管理インタフェースを介して、前記テナントに関連付けられた優先度レベルを受信することと、
前記テナントに関連付けられた前記優先度レベルに基づき、前記キーキャッシュを構成することと、を実行する、請求項1に記載のコンピューティングデバイス。
【請求項4】
エッジ階層キーマネージャは、さらに、前記第1のキーが前記キーキャッシュ内に格納されていないとの前記判定に応じ、前記第1のキーを第2のリモートコンピューティングデバイスに対し要求し、前記第2のリモートコンピューティングデバイスは、前記エッジ階層の前記第1の層に含まれる、請求項1に記載のコンピューティングデバイス。
【請求項5】
前記第1のキーに対する前記要求を受信することは、前記FaaSインスタンスからの前記要求を受信することを含み、前記FaaSインスタンスは前記コンピューティングデバイスによってインスタンス化されており、
前記第1のキーを前記応答として提供することは、前記第1のキーを、前記テナントに関連付けられた前記FaaSインスタンスに提供することを含む、請求項1に記載のコンピューティングデバイス。
【請求項6】
前記第1のキーを前記FaaSインスタンスに提供することは、前記第1のキーを、前記コンピューティングデバイスのメモリコントローラまたは計算要素に提供することを含む、請求項5に記載のコンピューティングデバイス。
【請求項7】
前記第1のキーに対する前記要求を受信することは、前記エッジ階層内の第2のリモートコンピューティングデバイスからの前記要求を受信することを含み、
前記第1のキーを提供することは、前記第1のキーを前記第2のリモートコンピューティングデバイスに提供することを含む、請求項1に記載のコンピューティングデバイス。
【請求項8】
前記第2のリモートコンピューティングデバイスは、前記エッジ階層内の前の層に含まれ、前記前の層は、前記エッジデバイスから前記第1の層と比較して論理的により遠隔ではない、請求項7に記載のコンピューティングデバイス。
【請求項9】
前記エッジ階層キーマネージャは、さらに、
前記第1のキーが前記キーキャッシュ内に格納されていないとの前記判定に応じ、前記キーキャッシュがいっぱいかどうかを判定することと、
前記キーキャッシュがいっぱいであるとの判定に応じ、前記コンピューティングデバイスのキャッシュ管理ポリシー加速化ロジックをアクティブ化することであって、前記キャッシュ管理ポリシー加速化ロジックは前記テナントに関連付けられている、アクティブ化することと、
前記第1のキーの識別に応じ、前記キーキャッシュから前記第1のキーをエビクションすることと、を実行し、
前記キャッシュ管理ポリシー加速化ロジックは、前記キャッシュ管理ポリシー加速化ロジックのアクティブ化に応じ、前記キーキャッシュ内のエビクションする前記第1のキーを識別する、請求項1に記載のコンピューティングデバイス。
【請求項10】
前記エッジ階層キーマネージャは、さらに、
前記コンピューティングデバイスの管理インタフェースを介して前記キャッシュ管理ポリシー加速化ロジックを受信することと、
前記キャッシュ管理ポリシー加速化ロジックの受信に応じ、前記キャッシュ管理ポリシー加速化ロジックを用いてアクセラレータをプログラムすることと、を実行する、請求項9に記載のコンピューティングデバイス。
【請求項11】
前記エッジ階層キーマネージャは、さらに、前記コンピューティングデバイスのキープリフェッチ加速化ロジックをアクティブ化し、前記キープリフェッチ加速化ロジックは前記テナントに関連付けられており、
前記キープリフェッチ加速化ロジックは、前記キープリフェッチ加速化ロジックのアクティブ化に応じ、プリフェッチする前記第1のキーを識別し、
前記第1のキーをリモートコンピューティングデバイスに対し要求することは、さらに、プリフェッチする前記第1のキーの識別に応じ、前記第1のキーを前記リモートコンピューティングデバイスに対し要求することを含む、請求項1に記載のコンピューティングデバイス。
【請求項12】
前記エッジ階層キーマネージャは、さらに、
前記コンピューティングデバイスの管理インタフェースを介して、前記キープリフェッチ加速化ロジックを受信することと、
前記キープリフェッチ加速化ロジックの受信に応じ、前記キープリフェッチ加速化ロジックを用いてアクセラレータをプログラムすることと、を実行する、請求項11に記載のコンピューティングデバイス。
【請求項13】
前記第1のキーを識別することは、前記コンピューティングデバイスに関連付けられたテレメトリ情報に基づき、前記第1のキーを識別することを含む、請求項11に記載のコンピューティングデバイス。
【請求項14】
キー管理のための方法であって、
コンピューティングデバイスによって、第1のキーに対する要求を受信する段階であって、前記要求は前記コンピューティングデバイスのテナントに関連付けられており、前記要求は、エッジデバイスに関連付けられたFunction‐as‐a‐Service(FaaS)インスタンスによって提供されるキー識別子を示す、段階と、
前記コンピューティングデバイスによって、前記第1のキーが前記コンピューティングデバイスのキーキャッシュ内に格納されているかどうかを判定する段階であって、前記キーキャッシュは、前記コンピューティングデバイスのセキュアストレージ内に含まれている、段階と、
前記コンピューティングデバイスによって、前記第1のキーが前記キーキャッシュ内に格納されていないとの判定に応じ、前記第1のキーをリモートコンピューティングデバイスに対し要求する段階であって、前記コンピューティングデバイスおよび前記リモートコンピューティングデバイスはエッジ階層に含まれており、前記コンピューティングデバイスは前記エッジ階層の第1の層に含まれ、前記リモートコンピューティングデバイスは、前記エッジデバイスから前記第1の層と比較して論理的により遠隔にある、前記エッジ階層における次の層に含まれる、段階と、
前記コンピューティングデバイスによって、前記第1のキーが前記キーキャッシュ内に格納されているとの判定または前記第1のキーの要求に応じ、前記第1のキーを、前記要求に対する応答として提供する段階と、を備える、方法。
【請求項15】
前記コンピューティングデバイスによって、前記コンピューティングデバイスの管理インタフェースを介して、前記テナントに関連付けられた優先度レベルを受信する段階と、
前記コンピューティングデバイスによって、前記テナントに関連付けられた前記優先度レベルに基づき、前記キーキャッシュを構成する段階と、をさらに備える、請求項14に記載の方法。
【請求項16】
前記コンピューティングデバイスによって、前記第1のキーが前記キーキャッシュ内に格納されていないとの判定に応じ、前記第1のキーを、第2のリモートコンピューティングデバイスに対し要求する段階をさらに備え、前記第2のリモートコンピューティングデバイスは前記エッジ階層の前記第1の層に含まれる、請求項14に記載の方法。
【請求項17】
前記第1のキーに対する前記要求を受信する段階は、前記FaaSインスタンスからの前記要求を受信する段階を含み、前記FaaSインスタンスは前記コンピューティングデバイスによってインスタンス化されており、
前記第1のキーを前記応答として提供する段階は、前記第1のキーを、前記テナントに関連付けられた前記FaaSインスタンスに提供する段階を含む、請求項14に記載の方法。
【請求項18】
前記第1のキーを前記FaaSインスタンスに提供する段階は、前記第1のキーを、前記コンピューティングデバイスのメモリコントローラまたは計算要素に提供する段階を含む、請求項17に記載の方法。
【請求項19】
前記第1のキーに対する前記要求を受信する段階は、前記エッジ階層内の第2のリモートコンピューティングデバイスからの前記要求を受信する段階を含み、
前記第1のキーを提供する段階は、前記第1のキーを前記第2のリモートコンピューティングデバイスに提供する段階を含む、請求項14に記載の方法。
【請求項20】
前記第2のリモートコンピューティングデバイスは、前記エッジ階層内の前の層に含まれ、前記前の層は、前記エッジデバイスから前記第1の層と比較して論理的により遠隔ではない、請求項19に記載の方法。
【請求項21】
前記コンピューティングデバイスによって、前記第1のキーが前記キーキャッシュ内に格納されていないとの判定に応じ、前記キーキャッシュがいっぱいかどうかを判定する段階と、
前記コンピューティングデバイスによって、前記キーキャッシュがいっぱいであるとの判定に応じ、前記コンピューティングデバイスのキャッシュ管理ポリシー加速化ロジックをアクティブ化する段階であって、前記キャッシュ管理ポリシー加速化ロジックは前記テナントに関連付けられている、アクティブ化する段階と、
前記キャッシュ管理ポリシー加速化ロジックによって、前記キャッシュ管理ポリシー加速化ロジックのアクティブ化に応じ、前記キーキャッシュ内のエビクションする第1のキーを識別する段階と、
前記コンピューティングデバイスによって、前記第1のキーの識別に応じ、前記キーキャッシュから前記第1のキーをエビクションする段階と、をさらに備える、請求項14に記載の方法。
【請求項22】
前記コンピューティングデバイスによって、前記コンピューティングデバイスのキープリフェッチ加速化ロジックをアクティブ化する段階であって、前記キープリフェッチ加速化ロジックは前記テナントに関連付けられている、段階と、
前記キープリフェッチ加速化ロジックによって、前記キープリフェッチ加速化ロジックのアクティブ化に応じ、プリフェッチする前記第1のキーを識別する段階と、をさらに備え
前記第1のキーをリモートコンピューティングデバイスに対し要求する段階は、さらに、プリフェッチする前記第1のキーの識別に応じ、前記第1のキーを前記リモートコンピューティングデバイスに対し要求する段階を含む、請求項14に記載の方法。
【請求項23】
プロセッサと、
格納された複数の命令を有するメモリと、を備えるコンピューティングデバイスであって、前記複数の命令が前記プロセッサによって実行されると、前記コンピューティングデバイスに対し、請求項14から22のいずれか一項に記載の方法を実行させる、コンピューティングデバイス。
【請求項24】
コンピューティングデバイスに、請求項14から22のいずれか一項に記載の方法を実行させるための、プログラム。
【請求項25】
請求項14から22のいずれか一項に記載の方法を実行するための手段を備える、コンピューティングデバイス。
【請求項26】
請求項24に記載のプログラムを備える、1または複数の機械可読ストレージ媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[背景技術]
クラウドコンピューティングアーキテクチャの中に、Function as a Service(FaaS)サービスを提供し得るものがある。典型的なFaaSシステムは、クライアントが専用のサービス処理を実行することなく、オンデマンドで特定の機能を呼び出すことを可能にする。特定のFaaSシステムは、当該機能に関連付けられたデータを保護すべく、クライアントプライベートキー、テナントプライベートキーまたは他の秘密キー等の1または複数のプライベートキーを使用し得る。FaaSサービスを実行するユーザの数は、無限であり得る。
【図面の簡単な説明】
【0002】
本明細書に記載される概念が添付図面中に、限定ではなく例示として示されている。図示を簡潔および明確にするために、図面中に示された要素は、必ずしも縮尺通りに描かれてはいない。適切と思われる箇所においては、図面を通して対応するまたは同様の要素を示すために参照符号が繰り返されている。
【0003】
図1】加速化階層キーキャッシングのためのシステムに係る少なくとも1つの実施形態の簡略ブロック図である。
【0004】
図2図1のシステムの様々な環境に係る少なくとも1つの実施形態の簡略ブロック図である。
【0005】
図3図1~2のエッジアプライアンスデバイスによって実行されてよい、キーキャッシュ管理およびアクセスのための方法に係る少なくとも1つの実施形態の簡略フロー図である。
図4図1~2のエッジアプライアンスデバイスによって実行されてよい、キーキャッシュ管理およびアクセスのための方法に係る少なくとも1つの実施形態の簡略フロー図である。
【0006】
図5図1~2のエッジアプライアンスデバイスによって実行されてよい、キー要求処理のための方法に係る少なくとも1つの実施形態の簡略フロー図である。
【0007】
図6図1~2のエッジアプライアンスデバイスによって実行されてよい、キー要求プリフェッチのための方法に係る少なくとも1つの実施形態の簡略フロー図である。
【0008】
図7図1~2のシステムを含んでよい、エッジアーキテクチャの少なくとも1つの実施形態の簡略ブロック図である。
【発明を実施するための形態】
【0009】
本開示の概念には、様々な修正形態および代替形態が加えられ得るが、本開示の概念に係る特定の実施形態は図面中に例示として示されており、本明細書において詳細に説明される。しかしながら、本開示に係る概念を、開示された特定の形態に限定する意図はなく、反対に、本開示および添付の特許請求の範囲に整合する修正形態、均等形態、および代替形態をすべて包含する意図であることを理解されたい。
【0010】
本明細書中の「一実施形態」、「実施形態」、「例示的な実施形態」等の言及は、説明された実施形態は特定の機能、構造、または特性を含み得るが、すべての実施形態がその特定の機能、構造または特性を含んでいてもよいし、必ずしも含んでいなくてもよいことを示す。またこのような文言が必ずしも、同一の実施形態を指すとは限らない。さらに、特定の機能、構造または特性がある実施形態に関し説明された場合に、明示的な記載の有無に関わらず、このような特徴、構造または特性を他の実施形態に関し実効あらしめることは、当業者の知識の範囲内のものであると考えられる。また、「少なくとも1つのA、BおよびC」という形態で一覧に含まれる項目は、(A);(B);(C);(AおよびB);(AおよびC);(BおよびC)または(A、BおよびC)を意味し得ることを理解されたい。同様に、「少なくとも1つのA、BまたはC」という形態で列挙された項目は、(A);(B);(C);(AおよびB);(AおよびC);(BおよびC);または(A、BおよびC)を意味し得る。
【0011】
いくつかの場合において、開示された実施形態は、ハードウェア、ファームウェア、ソフトウェアまたはこれらの組み合わせで実装されてよい。開示された実施形態はまた、一時的または非一時的機械可読(例えば、コンピュータ可読)ストレージ媒体によって保持された、または当該媒体上に格納された命令として実装されてよく、当該命令は、1または複数のプロセッサによって読み取られ、実行されてよい。さらに、開示された実施形態は、まず、一連の予備命令としてエンコーディング(例えば、機械可読ストレージ媒体上にエンコーディング)されてよく、当該一連の予備命令は、命令を対象デバイス上で実行するために準備するための予備的な処理動作を要求し得る。予備的な処理には、当該命令をデバイス上に存在するデータと組み合わせること、当該命令を異なる形式に変換すること、圧縮化、圧縮解除、暗号化、および/または復号化を実行すること、並びに当該命令の異なるセクションを含む複数のファイルを結合すること、当該命令をデバイス上に存在する、ライブラリ、オペレーティングシステム等の他のコードと統合すること、または同様の動作が含まれてよい。予備的な処理は、ソース計算デバイス(例えば、当該命令を送信するデバイス)、デスティネーション計算デバイス(例えば、当該命令を実行するデバイス)、または中間デバイスによって実行されてよい。機械可読ストレージ媒体は、任意のストレージデバイス、メカニズム、または情報を機械によって読み取り可能な形態(例えば、揮発性または不揮発性メモリ、メディアディスクまたは他のメディアデバイス)で格納または送信する他の物理的構造として具現化されてよい。
【0012】
図面中、いくつかの構造または方法に係る特徴は、特定の配置および/または順序で示されてよい。しかしながら、このような特定の配置および/または順序は、必須でなくてよいことを理解されたい。むしろ、いくつかの実施形態において、このような特徴は例示的な図に示されるものとは異なる態様および/または順序で配置されてよい。また、特定の図に構造または方法に係る特徴が含まれていても、このような特徴がすべての実施形態で必要とされることを示唆する意図はなく、いくつかの実施形態において、このような特徴は含まれていなくてもよく、あるいは他の特徴と組み合わされてもよい。
【0013】
ここで、図1を参照すると、加速化階層キーキャッシングのためのシステム100は、複数のエッジアプライアンスデバイス102および複数のエンドポイントデバイス104を含む。さらに後述するように、使用において、各アプライアンスデバイス102は、セキュアキーキャッシュを維持する。エンドポイントデバイス104を操作するユーザは、エッジアプライアンスデバイス102によって実行されるFunction as a Service(FaaS)インスタンスにアクセスする。セキュアなユーザデータおよびテナントデータにアクセスすべく、FaaSインスタンスは、加速化キー管理ロジックを用いて、セキュアキーキャッシュにアクセスする。加速化キー管理ロジックは、エッジネットワーク階層内の内部層に対しキーを要求してよい。内部層は、より中央寄りであってよく、故に、エンドポイントデバイス104から論理的または物理的により遠隔にあってよい。キーキャッシュからエビクション(eviction)するキーを識別すべく、テナントごとの加速化ロジックが実行されてよい。エッジ階層の他の層からプリフェッチするキーを識別すべく、テナントごとの加速化ロジックが実行されてよい。システム100は、FaaSテナント環境間でのより高速なキー移動を容易化すべく、キャッシュされたキーのコピー(プライベートキー、秘密キー、公開キーおよび他のキーを含む)がネットワーク内の様々な場所に存在することを可能にする。中央サーバにキーをアクセスするのと比較して、複数のエッジアプライアンスデバイス102内にキーをキャッシュおよび/またはプリフェッチすることで、エンドポイントデバイス104のユーザが低遅延で適切なキーを入手可能となってよい。また、テナントごとのキャッシュ置換ロジックが、エッジアーキテクチャの外層内での限られたキャッシュスペースの使用の向上を可能にさせてよい。故に、システム100は、ネットワークのエッジにおけるサービスの認証ユーザに対するキーの供給を高速化させてよい。
【0014】
各エッジアプライアンスデバイス102は、本明細書に記載の機能を実行可能な任意のタイプのデバイスとして具現化されてよい。例えば、エッジアプライアンスデバイス102は、限定ではないが、コンピュータ、サーバ、ワークステーション、マルチプロセッサシステム、分散コンピューティングデバイス、スイッチ、ルータ、ネットワークデバイス、仮想化システム(例えば、仮想マシンまたは仮想コンテナ等の、仮想環境内で実行される1または複数の機能であり、仮想環境内では、基礎となるハードウェアリソースが、仮想環境内で実行されるソフトウェアに対する物理的ハードウェアのように見えるが、抽象化レイヤによってソフトウェアから分離されている)および/またはコンシューマ電子デバイスとして具現化されてよい。追加的または代替的に、エッジアプライアンスデバイス102は、1または複数のコンピュートスレッド、メモリスレッド、または他のラック、スレッド、コンピューティングシャーシ、または物理的に非集合であるコンピューティングデバイスの他のコンポーネントとして具現化されてよい。図1に図示される通り、例示的エッジアプライアンスデバイス102は、計算エンジン120、I/Oサブシステム122、メモリ124、データストレージデバイス126および通信サブシステム128を含む。また、いくつかの実施形態において、例示的なコンポーネントのうちの1または複数は、別のコンポーネント内に組み込まれてよい、あるいは、別のコンポーネントの一部を形成してもよい。例えば、いくつかの実施形態において、メモリ124、またはメモリ124の一部が、計算エンジン120内に組み込まれてよい。
【0015】
計算エンジン120は、本明細書の記載の機能を実行可能な任意のタイプの計算エンジンとして具現化されてよい。例えば、計算エンジン120は、単一のプロセッサ若しくはマルチコアプロセッサ、デジタル信号プロセッサ、マイクロコントローラ、フィールドプログラマブルゲートアレイ(FPGA)、または他の構成可能な回路、特定用途向け集積回路(ASIC)、または他のプロセッサ若しくは処理/制御回路またはこれらの仮想化バージョンとして具現化されてよい。同様に、メモリ124は、本明細書に記載の機能を実行可能な、任意のタイプの揮発性または不揮発性メモリまたはデータストレージとして具現化されてよい。稼働中、メモリ124は、エッジアプライアンスデバイス102の動作中に用いられる、オペレーティングシステム、アプリケーション、プログラム、ライブラリおよびドライバ等の様々なデータおよびソフトウェアを格納してよい。図示の通り、メモリ124は、I/Oサブシステム122を介して計算エンジン120に通信可能に結合されてよく、I/Oサブシステム122は、エッジアプライアンスデバイス102の計算エンジン120、メモリ124および他のコンポーネントとの入/出力処理を容易化するための回路および/またはコンポーネントとして具現化されてよい。例えば、I/Oサブシステム122は、当該入/出力処理を容易化すべく、メモリコントローラハブ、入/出力制御ハブ、センサハブ、ホストコントローラ、ファームウェアデバイス、通信リンク(すなわち、ポイントツーポイントリンク、バスリンク、ワイヤ、ケーブル、光ガイド、プリント回路基板トレース等)並びに/または他のコンポーネントおよびサブシステムとして具現化されてよい、または、これらを含んでもよい。いくつかの実施形態において、メモリ124は、例えば、統合メモリコントローラハブを介して、計算エンジン120に直接結合されてよい。また、いくつかの実施形態において、I/Oサブシステム122は、システムオンチップ(SoC)の一部を形成してよく、エッジアプライアンスデバイス102の計算エンジン120、メモリ124、アクセラレータ130および/または他のコンポーネントと共に単一の集積回路チップに組み込まれてよい。
【0016】
データストレージデバイス126は、短期または長期のデータストレージのために構成された任意のタイプのデバイスとして、例えば、メモリデバイスおよび回路、メモリカード、ハードディスクドライブ、ソリッドステートドライブ、不揮発性フラッシュメモリまたは他のデータストレージデバイスとして具現化されてよい。通信サブシステム128は、ネットワーク106上でのエッジアプライアンスデバイス102と、他のリモートデバイスとの間の通信を可能する、任意の通信回路、デバイスまたはこれらの集合体として具現化されてよい。通信サブシステム128は、このような通信を有効にするための、任意の1または複数の通信技術(例えば、有線または無線通信)および関連するプロトコル(例えば、Ethernet(登録商標)、Bluetooth(登録商標)、Wi‐Fi(登録商標)、WiMAX、3G、4G LTE、5G等)を用いるよう構成されてよい。
【0017】
アクセラレータ130は、加速化された機能(例えば、加速化されたアプリケーション機能、加速化されたネットワーク機能または他の加速化された機能)を実行可能なフィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、コプロセッサ、または他のデジタルロジックデバイスとして具現化されてよい。例示的に、アクセラレータ130は、製造後に構成可能なプログラム可能なデジタルロジックリソースを含む集積回路として具現化されてよい、FPGAである。FPGAは、例えば、構成可能なデータインタチェンジ上で通信する構成可能なロジックブロックアレイを含んでよい。アクセラレータ130は、周辺バス(例えば、PCI Expressバス)若しくはインタープロセッサインターコネクト(例えば、インダイインターコネクト(IDI)またはQuickPath Interconect(QPI))等の高速接続インタフェースを介して、または任意の他の適切な相互接続を介して、計算エンジン120に結合されてよい。いくつかの実施形態において、アクセラレータ130は、通信サブシステム128のネットワークインタフェースコントローラ(NIC)等の、エッジアプライアンスデバイス102の1または複数の他のコンポーネントに組み込まれてよい、あるいは結合されてよい。
【0018】
各エンドポイントデバイス104は、本明細書に記載の機能を実行可能な任意のタイプのコンピューテーションまたはコンピュータデバイスとして具現化されてよく、このようなものとしては、限定ではないが、コンピュータ、モバイルコンピューティングデバイス、ウェアラブルコンピューティングデバイス、ネットワークアプライアンス、ウェブアプライアンス、分散コンピューティングシステム、自律車両、自律空中車両、モノのインターネット(IoT)センサ、IoTゲートウェイ、産業用オートメーション機器、プロセッサベースのシステム、および/またはコンシューマ電子デバイスが含まれる。このため、各エンドポイントデバイス104は、エッジアプライアンスデバイス102と同様の、計算エンジン120、I/Oサブシステム122、メモリ124、データストレージ126、通信サブシステム128および/または様々な周辺デバイス等のコンポーネントおよび機能を含んでよい。各エンドポイントデバイス104のこれらの個々のコンポーネントは、エッジアプライアンスデバイス102の対応するコンポーネントと同様であってよく、これらの説明がエンドポイントデバイス104の対応するコンポーネントに該当するので、説明の簡明さのために、繰り返さないこととする。
【0019】
以下により詳しく説明される通り、エッジアプライアンスデバイス102およびエンドポイントデバイス104は、ネットワーク106経由で、互いに、および/または、システム100の他のデバイスとデータを送信および受信するよう構成されてよい。ネットワーク106は、任意の数の様々な有線および/または無線ネットワーク、またはこれらのハイブリッド若しくは組み合わせとして具現化されてよい。例えば、ネットワーク106は、モバイルアクセスネットワーク、ネットワークエッジインフラストラクチャ、有線または無線のローカルエリアネットワーク(LAN)および/または有線または無線のワイドエリアネットワーク(WAN)として具現化されてよい、またはこれらを含んでよい。このため、ネットワーク106は、システム100のデバイス間の通信を容易にすべく、追加の基地局、アクセスポイント、コンピュータ、ルータおよびスイッチ等の任意の数の追加のデバイスを含んでよい。例示的な実施形態では、ネットワーク106は、エッジネットワークファブリックとして具現化されている。
【0020】
ここで図2を参照すると、例示的な実施形態において、各エッジアプライアンスデバイス102は、動作中に環境200を確立する。例示的な環境200は、アクセラレータ130、キーキャッシュ214、セキュアアクセスロジック216、およびいくつかの実施形態において、Function as a Service(FaaS)インスタンス218を含む。アクセラレータ130は、エッジ階層キーマネージャ202を含み、且つ、1または複数のキャッシュ管理ポリシーロジック210および/またはキープリフェッチロジック212を含んでよい。環境200の様々なコンポーネントは、ハードウェア、ファームウェア、ソフトウェア、またはこれらの組み合わせとして具現化されてよい。このため、いくつかの実施形態において、環境200のコンポーネントのうちの1または複数は、電気的デバイスの回路または集合体(例えば、キー管理回路202、キャッシュ管理ポリシーロジック回路210、キープリフェッチロジック回路212、キーキャッシュセキュリティ214、セキュアアクセスロジックセキュリティ216および/またはFaaSインスタンス回路218)として具現化されてよい。このような実施形態においては、キー管理回路202、キャッシュ管理ポリシーロジック回路210、キープリフェッチロジック回路212、キーキャッシュセキュリティ214、セキュアアクセスロジックセキュリティ216および/またはFaaSインスタンス回路218のうちの1または複数は、エッジアプライアンスデバイス102の計算エンジン120、I/Oサブシステム122、アクセラレータ130、および/または他のコンポーネントの一部を形成してよいことを理解されたい。また、いくつかの実施形態において、例示的なコンポーネントのうちの1または複数は、別のコンポーネントを形成してよく、および/または、例示的なコンポーネントのうちの1または複数は、互いに独立していてよい。
【0021】
図示の通り、キーマネージャ202は、構成ロジック204、キー管理ロジック206、および/またはアクセラレータ管理ロジック208を含む1または複数のサブコンポーネントを含む。構成ロジック204は、エッジアプライアンスデバイス102の管理インタフェースを介して、オーケストレータまたは他の管理エンティティと通信するよう構成されている。構成ロジック204は、事前プロビジョニング済みプライベートキーを受信するよう構成されてよい。さらに、構成ロジック204は、管理インタフェースを介して、各テナントに関連付けられた優先度レベルを受信し、且つ、テナントに関連付けられた優先度レベルに基づき、キーキャッシュ214を構成するよう構成されてよい。いくつかの実施形態において、構成ロジック204は、システム100のオーケストレーションスタックによってのみアクセスされ得る、1または複数のアウトオブバンド方式インタフェースを確立してよい。
【0022】
アクセラレータ管理ロジック208は、管理インタフェースを介して、1または複数のキャッシュ管理ポリシー加速化ロジック210を受信するよう構成されており、キャッシュ管理ポリシー加速化ロジック210を用いてアクセラレータ130をプログラムするよう構成されている。さらに、アクセラレータ管理ロジック208は、管理インタフェースを介して、1または複数のキープリフェッチ加速化ロジック212を受信するよう構成されており、キープリフェッチ加速化ロジック212を用いてアクセラレータ130をプログラムするよう構成されている。
【0023】
キー管理ロジック206は、プライベートキー、公開キー、秘密対称キーまたは他のキー等の、キーに対する要求を受信するよう構成されている。各要求は、エッジアプライアンスデバイス102のテナントに関連付けられている。要求は、エンドポイントデバイス104と関連付けられたFunction‐as‐a‐Service(FaaS)インスタンス218によって提供されるキー識別子を示す。要求は、エッジアプライアンスデバイス102によってインスタンス化されたFaaSインスタンス218から、または、後述のリモートエッジアプライアンスデバイス102から受信されてよい。いくつかの実施形態において、要求は、FaaSインスタンス218によって提供される資格情報を示し、キー管理ロジック206は、資格情報を認証するよう構成されている。
【0024】
キー管理ロジック206は、さらに、要求されたキーがキーキャッシュ214内に含まれるかどうかを判定するよう構成されており、含まれていない場合、当該キーをリモートエッジアプライアンスデバイス102に対し要求するよう構成されている。リモートエッジアプライアンスデバイス102は、エッジ階層の、エンドポイントデバイス104から論理的にさらに遠隔にある次の層に含まれる。いくつかの実施形態において、エッジアプライアンスデバイス102はまた、同一のピア層内の1または複数のエッジアプライアンスデバイス102に対し、キーを要求してもよい。キー管理ロジック206は、さらに、要求されたキーをリモートエッジアプライアンスデバイス102から受信し、受信されたキーをキーキャッシュ214に格納するよう構成されている。キー管理ロジック206は、さらに、例えば、FaaSインスタンス218へ、または要求元エッジアプライアンスデバイス102へ応答として、要求されたキーを要求の応答として提供するよう構成されている。
【0025】
キー管理ロジック206は、さらに、要求されたキーがキーキャッシュに格納されていないとの判定に応じ、キーキャッシュ214がいっぱいかどうかを判定し、キーキャッシュ214がいっぱいの場合、キャッシュ管理ポリシー加速化ロジック210をアクティブ化するよう構成されている。キャッシュ管理ポリシー加速化ロジック210は、テナントに関連付けられている。キー管理ロジック206は、さらに、キャッシュ管理ポリシー加速化ロジック210によって識別された1または複数のキーを、キーキャッシュ214からエビクションするよう構成されている。
【0026】
キー管理ロジック206は、さらに、テナントに関連付けられたキープリフェッチ加速化ロジック212をアクティブ化するよう構成されている。キー管理ロジック206は、さらに、キープリフェッチ加速化ロジック212が、プリフェッチするキーを識別したことに応じ、リモートエッジアプライアンスデバイス102に対しキーを要求するよう構成されている。キー管理ロジック206は、キープリフェッチ加速化ロジック212のアクティブ化とアクティブ化の間において、テナントに関連付けられた予め定められた時間を待機するよう構成されている。
【0027】
キャッシュ管理ポリシーロジックは、アプリケーション機能ユニット(Application Functional Unit,AFU)、カーネル、ビットストリーム、またはアクセラレータ130の他のプログラム可能な加速化ロジックとして具現化されてよい。キャッシュ管理ポリシーロジック210は、アクティブ化されることに応じ、キーキャッシュ214内のエビクションする1または複数のキーを識別するよう構成されている。同様に、キープリフェッチロジック212は、アプリケーション機能ユニット(Application Functional Unit,AFU)、カーネル、ビットストリーム、またはアクセラレータ130の他のプログラム可能な加速化ロジックとして具現化されてよい。キープリフェッチロジック212は、アクティブ化に応じ、プリフェッチする1または複数のキーを識別するよう構成されている。図示の通り、環境200は、複数のキャッシュ管理ポリシーロジック210および/またはキープリフェッチロジック212を含んでよい。例えば、各テナントは、キャッシュ管理ポリシーロジック210および/またはキープリフェッチロジック212を提供してよい。
【0028】
キーキャッシュ214は、エッジアプライアンスデバイス102のセキュアストレージに含まれている。キーキャッシュ214は、テナントによって編成されるエッジアプライアンスデバイス102のテナントのキーを、セキュアに格納するよう構成されている。例えば、キーキャッシュ214内の特定のキーは、計算エンジン120によって、インバンド方式でアクセス可能でなくてよく、特定のテナント(適切な資格情報を持つ)によって実行されているFaaSインスタンス218によってのみアクセスされてよい。いくつかの実施形態において、キーキャッシュ214は、ローカルハードウェアセキュリティモジュール(HSM)、Intel(登録商標)Software Guard Extensions(SGX)セキュアエンクレーブ、または他のセキュアストレージとして具現化されてよい、またはこれらを用いて格納されてよい。追加的または代替的に、いくつかの実施形態において、キーキャッシュ214は、暗号キーを直接キャッシュするのではなく、キー状態をキャッシュしてよく、エッジインフラストラクチャを用いてキーの最新状態を維持してよい。オーケストレータは、キー状態の認識に基づき、ワークロードごとにどのエッジデバイス104が必要とされるか、および必要に応じてプロビジョニングキーを判定してよい。
【0029】
セキュアアクセスロジック216は、エッジアプライアンスデバイス102の暗号化されたメモリ、ストレージまたは他のリソースへのセキュアなアクセスを実行するために、キーを用いるよう構成されている。例えば、セキュアアクセスロジック216は、エッジアプライアンスデバイス102のメモリコントローラ、計算要素、または他のハードウェアコンポーネントにキーを提供してよい。上記の通り、各FaaSインスタンス218は、エンドポイントデバイス104の要求または他の操作を処理すべく、ユーザプライベートキー、テナントプライベートキーまたは他の秘密キーを要求してよい。FaaSインスタンス218(特定のテナントによって実行されている)は、セキュアアクセスロジック216を介して、当該キーを用いて、テナントデータ、ユーザデータまたは他のアプリケーションデータにセキュアにアクセスしてよい。
【0030】
ここで図3および4を参照すると、使用において、エッジアプライアンスデバイス102は、キーキャッシュ管理およびアクセスのための方法300を実行してよい。いくつかの実施形態において、方法300の動作は、図2に図示されるようなエッジアプライアンスデバイス102の環境200の、アクセラレータ130等の1または複数のコンポーネントによって実行されてよいことを理解されたい。方法300は、ブロック302で開始し、ここでは、エッジアプライアンスデバイス102が、エッジアプライアンスデバイス102の1または複数のテナントのためにキーキャッシュ214を構成する。各テナントは、エッジアプライアンスデバイス102上で1または複数のFaaSインスタンス218を実行するオーナ、オペレータ、プロバイダまたは他のエンティティとして具現化されてよい。いくつかの実施形態において、ブロック304で、エッジアプライアンスデバイス102は、各テナントに、キーキャッシュ214の一部または全部を割り当ててよい。例えば、エッジアプライアンスデバイス102は、性能向上を必要とするテナントには、キーキャッシュ214内のデータをより多く割り当ててよい。いくつかの実施形態において、ブロック306において、エッジアプライアンスデバイス102は、各テナントに関連付けられたサービスレベルアグリーメント(SLA)に基づき、サービスの品質(QoS)または優先度を構成してよい。各テナントは、異なる関連付けられた優先度またはSLAを有してよい。これにより、オペレータに、キーアクセスに対し異なるQoSまたはSLAメカニズムを提供することを可能にする。例えば、エッジアプライアンスデバイス102は、高リアルタイム性またはクリティカルサービスのために、特定のキーアクセス保証を提供してよい。SLAは、アウトオブバンド方式の管理インタフェースを介して、例えば、システムオーケストレータまたは他の管理エンティティから受信されてよい。
【0031】
ブロック308において、エッジアプライアンスデバイス102は、各テナントのためのキャッシュ管理ポリシー加速化ロジック210を登録または登録解除してよい。キャッシュ管理ポリシー加速化ロジック210は、アクセラレータ130へのプログラム可能なビットストリームまたは他のデータとして具現化されてよい。キャッシュ管理ポリシー加速化ロジック210は、アウトオブバンド方式の管理インタフェースを介して、例えば、システムオーケストレータまたは他の管理エンティティから受信されてよい。受信後、エッジアプライアンスデバイス102は、アクセラレータ130をプログラムしてよく、または、キャッシュ管理ポリシー加速化ロジック210を後でプログラミングするために格納してよい。例えば、アクセラレータ130は、キャッシュ管理ポリシー加速化ロジック210を用いて、アプリケーション機能ユニット(Application Functional Unit,AFU)または他の加速化コンポーネントとして、部分的に再構成されてよい。
【0032】
ブロック310において、エッジアプライアンスデバイス102は、1または複数の事前プロビジョニング済みキーを受信してよい。事前プロビジョニング済みキーは、アウトオブバンド方式の管理インタフェースを介して、例えば、システムオーケストレータまたは他の管理エンティティから受信されてよい。事前プロビジョニング済みキーは、承認されていない開示を防ぐべく、例えば、暗号化された通信チャネルを介してセキュアに送信されてよい。事前プロビジョニング済みキーは、例えば、1または複数のテナントまたはユーザ(例えば、FaaSインスタンス218のユーザ)に関連付けられたプライベートキー、1または複数のテナントまたはユーザに関連付けられた公開キー(例えば、署名キー)または他のキーとして具現化されてよい。さらに後述される通り、事前プロビジョニング済みキーは、後の使用のためにキーキャッシュ214内に格納されてよい。
【0033】
いくつかの実施形態において、エッジにおいて、キーキャッシングのためにクラスタ化アプローチが用いられてよい。サービスに対するユーザの「位置」(例えば、セルステーション、ホームIP等)および/またはサービスのタイプに、「セットアップスピードSLA」が付与され得、当該SLAを用いて、エッジクラスタにおけるローカルキーキャッシングの寿命および位置(またはキー状態追跡)を定義する。キャッシュ位置は、トポロジの測定された遅延にマッピングされた必要な遅延から計算されてよい。クラスタは、例えば、セルトラッキングエリア、4G/5G集約ゲートウェイ、ブロードバンド/ケーブル集約ゲートウェイ、またはこれらのクラスタの組み合わせであってよい。サービスの使用は、オーケストレーションサービスによって追跡されてよく、キーは、要求に先立って、セルステーション等の、ユーザにより近接するセキュア「エンクレーブ」にプッシュされてよい。エンクレーブは、サービスごとのセットアップスピードSLAに基づきキーを維持してよい。サービスごとのアクセスおよび位置制約並びにキーのライフスパン制限を割り当てることと組み合わせて、ユーザにより近いローカルのHSM/SGMセキュアエンクレーブ内にキーをセキュリティ保護することで、キーに対するアドホックなクラスタアタックサーフェスは限定的となってよい。キーアクセステレメトリが用いられて、アクセスパターンおよび使用法をセキュリティオーケストレーションシステムに返すことで、悪意の試みを検出してよい。セキュリティ管理システムは、認証への変更をトリガしてよく、必要に応じて、中央でのキー取得を強制適用すべく、SLAを変更してよい。任意の事前プロビジョニング済みキーを受信した後、エッジアプライアンスデバイス102は図4に示されるブロック312に進み、プライベートキーにアクセスする要求を待機する。
【0034】
図4に示されるブロック312において、エッジアプライアンスデバイス102は、FaaSインスタンス218からのキーにアクセスするための要求を受信する。要求は、例えば、FaaSインスタンス218によって、関連付けられたエンドポイントデバイス104によって、および/または関連付けられたエンドポイントデバイス104のユーザによって要求された処理を実行すべく生成されてよい。要求は、キー(例えば、キー名、キーIDまたは他の識別子を含めることによって)を識別する。キーは、例えば、非対称キー暗号のためのユーザまたはテナントプライベートキー、対称キー暗号のための共有秘密キー、または他の秘密キーとして具現化されてよい。いくつかの実施形態において、キーは、非対称キー暗号のための公開キー、例えば、エンドポイントデバイス104によって生成される署名を検証するために用いられ得る公開キーとして具現化されてよい。エッジアプライアンスデバイス102は、また、FaaSインスタンス218から資格情報または他の認証方法を受信してよい。資格情報は、要求内に含まれてよく、または別個に提供されてもよい。
【0035】
ブロック314において、エッジアプライアンスデバイス102は要求を認証する。エッジアプライアンスデバイス102は、例えば、FaaS218によって提供された資格情報または他の認証方法を認証してよい。いくつかの実施形態において、エッジアプライアンスデバイス102は、SGX構成証明を、基本的なセキュリティ認証技術として用いてよい。複数のテナントの分離もSGXによって提供されてよく、これにより、テナントが自身のキー階層をセキュアに所有および管理できるようにする。要求が正常に認証されない場合、エッジアプライアンスデバイス102はエラーを示してよく、さもなければ要求の処理を停止してよい。要求が正常に認証された場合、方法300はブロック316に進む。
【0036】
ブロック316において、エッジアプライアンスデバイス102は、要求されたキーが、関連付けられたテナントのためのキーキャッシュ214内に格納されているかどうかを判定する。エッジアプライアンスデバイス102は、例えば、要求元FaaSインスタンス218と関連付けられたテナントに割り当てられたキーキャッシュ214の部分を検索してよい。ブロック318において、コンピューティングデバイスは、要求されたキーがロ-カルキーキャッシュ214内に格納されているかどうかをチェックする。要求されたキーがキーキャッシュ214内に格納されている場合、方法300は、後述されるブロック338へと分岐する。要求されたキーがキーキャッシュ214内に格納されていない場合、方法300はブロック320に進む。
【0037】
ブロック320において、エッジアプライアンスデバイス102は、現在のテナントのためのキーキャッシュ214がいっぱいかどうかを判定する。すなわち、エッジアプライアンスデバイス102は、要求されたキーを格納すべく、キーをキーキャッシュ214からエビクションする必要があるかどうかを判定してよい。キーキャッシュ214がいっぱいでない(すなわち、エビクションが必要でない)場合、方法300は後述のブロック332へと分岐する。キーキャッシュ214がいっぱい(すなわち、エビクションが必要である)である場合、方法300はブロック322に進む。
【0038】
ブロック322において、エッジアプライアンスデバイス102は、現在のテナントに関連付けられたキャッシュ管理ポリシーロジック210をアクティブ化する。上記の通り、エッジアプライアンスデバイス102は、アクセラレータ130に対し、キャッシュ管理ポリシーロジック210をプログラムしてよく、または、キャッシュ管理ポリシーロジック210を操作のために準備してよい。いくつかの実施形態において、ブロック324において、エッジアプライアンスデバイス102は、ブロック308に関し上記した通り、現在のテナントによって前に登録されたキャッシュ管理ポリシーロジック210をアクティブ化してよい。いくつかの実施形態において、ブロック326において、エッジアプライアンスデバイス102は、既定のキャッシュ管理ロジックをアクティブ化してよい。例えば、現在のテナントのためのロジックが登録されていない場合、エッジアプライアンスデバイス102は、既定のロジックをアクティブ化してよい。ブロック328において、動作中に、キャッシュ管理ポリシーロジック210はキーキャッシュ214内でエビクションのための1または複数の犠牲(すなわち、キー)を識別する。キャッシュ管理ロジック210は、任意の適切なキャッシュ置換ポリシーを用いてよく、上記の通り、使用中の特定のポリシーがテナントによって供給されてよい。キーエビクションポリシーは、例えば、現在のテナントのために、どのようなキー(例えば、キーID)が現在キーキャッシュ214内に格納されているか、およびそれらがどのように使用されているかを認識してよい。潜在的なセキュリティ脅威を回避すべく、キャッシュ管理ロジック210は、キーキャッシュ214内に含まれる実際のキーへのアクセスを有していなくてよい(例えば、キャッシュ管理ロジック210は、キーを読み取りまたは修正しなくてよい)。
【0039】
ブロック330において、エッジアプライアンスデバイス102は、識別された犠牲キーを、キーキャッシュ214からセキュアにエビクションする。エッジアプライアンスデバイス102は、例えば、識別された犠牲キーを用いて、キーキャッシュ214のエビクションインタフェースをアクティブ化してよい。キーをエビクションすることで、追加のキーをキーキャッシュ214内に格納することが可能になる。キーがキャッシュを離れるとき、他のエンティティがそのキーを読み取ることがないよう、キーはセキュリティ保護されてよい。キーをエビクションした後、方法300はブロック332に進む。
【0040】
ブロック332において、エッジアプライアンスデバイス102は、要求されたキーを、エッジネットワーク階層における次の内部層にある別のエッジアプライアンスデバイス102に対し要求する。次の層は、エッジアプライアンスデバイス102と比較して、エンドポイントデバイス104から論理的により遠隔にある。例えば、現在のエッジアプライアンスデバイス102が、セルタワーまたは基地局内に位置する場合、エッジアプライアンスデバイス102は、中央局にある、または他のより中央寄りの位置にあるエッジアプライアンスデバイス102に対しキーを要求してよい。キー要求は、エッジアプライアンスデバイス102間の管理インタフェースまたは他のアウトオブバンド方式リンクを介して送信されてよい。
【0041】
いくつかの実施形態において、ブロック334で、エッジアプライアンスデバイス102は、要求されたキーを、エッジネットワーク階層におけるエッジアプライアンスデバイス102と同一のピア層にある別のエッジアプライアンスデバイス102に対し要求する。例えば、現在のエッジアプライアンスデバイス102がセルタワーまたは基地局内に位置する場合、エッジアプライアンスデバイス102は、隣接するセルタワーまたは基地局に位置するエッジアプライアンスデバイス102に対しキーを要求してよい。キーは、推測的に要求されてよく、すなわち、リモートエッジアプライアンスデバイス102は、格納された要求されたキーを有していなくてもよい。このようなピア層に位置するエッジアプライアンスデバイス102は、中央局または他のより中央寄りの内部層と比較して、より低遅延でアクセスされてよく、故に、内部層よりも、要求されたキーをより迅速に戻してよい。接触される特定のリモートエッジアプライアンスデバイス102は、例えば、ネットワークオーケストレータまたは他の管理エンティティによって事前構成されてよい。
【0042】
ブロック336において、エッジアプライアンスデバイス102は、要求されたキーを受信し、受信されたキーをキーキャッシュ214内に格納する。上記の通り、キーは、エッジ階層のより中央寄りの内部層または同一の層にあるリモートエッジアプライアンスデバイス102から受信されてよい。リモートエッジアプライアンスデバイス102からの送信中、キーは暗号化されてよい、または他の方法で保護されてよい。キーは、キーキャッシュ214のテナントごとに予約された部分に格納されてよく、または他の方法でキーキャッシュ214内にテナントごとに格納されてよい。
【0043】
ブロック338において、エッジアプライアンスデバイス102は、要求されたキーを要求元FaaSインスタンス218に提供する。FaaSインスタンス218は、当該キーを用いて、暗号化されたデータ、例えば、特定のテナントまたは特定のユーザに関連付けられたデータにセキュアにアクセスしてよい。例えば、キーは、一対の非対称キーの秘密部分であるプライベートキーであってよく、ユーザデータまたはテナントデータをセキュリティ保護すべく用いられてよい。別の例として、キーは、ユーザデータまたはテナントデータをセキュリティ保護すべく、対称キー暗号で用いられる共有秘密キー、セッションキー、または秘密キーであってよい。いくつかの実施形態において、キーは、非対称キー暗号の公開キーであってよい。これらの実施形態においては、エンドポイントデバイス104は、プライベートキーを保持してよく、プライベートキーを用いてデータを署名してよく、FaaSインスタンス218は、要求された公開キーを用いて、エンドポイントデバイス104によって生成された署名を検証してよい。承認されていない開示を防ぐべく、要求されたキーは、FaaSインスタンス218にセキュアに提供されてよい。いくつかの実施形態において、ブロック340で、エッジアプライアンスデバイス102のメモリコントローラ、計算要素または他のハードウェアコンポーネントは、要求されたキーを用いて、暗号化されたデータへのアクセスを提供してよい。例えば、FaaSインスタンス218に対し透過的に、暗号化されたメモリにアクセスすべく、要求されたキーはメモリコントローラに供給されてよい。すなわち、これらの実施形態において、キーは、FaaSインスタンス218に直接示されなくてよい。要求されたキーを提供した後、方法300はブロック312にループバックして、追加のキー要求を処理する。
【0044】
ここで図5を参照すると、使用において、エッジアプライアンスデバイス102はキー要求処理のための方法500を実行してよい。いくつかの実施形態において、方法500の動作は、図2に示されるエッジアプライアンスデバイス102の環境200の、アクセラレータ130等の1または複数のコンポーネントによって実行されてよいことを理解されたい。方法500はブロック502で開始し、ここではエッジアプライアンスデバイス102が、他のエッジアプライアンスデバイス102からのキー要求をモニタリングする。キー要求は、エッジアプライアンスデバイス102間の管理インタフェースまたは他のアウトオブバンド方式リンクを介して受信されてよい。要求は、特定の要求されたキーおよび関連付けられたテナントを示してよい。ブロック504において、エッジアプライアンスデバイス102は、エッジアプライアンスデバイス102と比較して、エンドポイントデバイス104から論理的により遠隔ではない、エッジネットワーク階層の次の外層から受信される要求をモニタリングしてよい。例えば、現在のエッジアプライアンスデバイス102が中央局に位置する場合、エッジアプライアンスデバイス102は、セルタワーまたは基地局内のエッジアプライアンスデバイス102からの要求をモニタリングしてよい。いくつかの実施形態において、ブロック506で、エッジアプライアンスデバイス102は、エッジネットワーク階層の同一の層から受信される要求をモニタリングしてよい。例えば、現在のエッジアプライアンスデバイス102が中央局に位置する場合、エッジアプライアンスデバイス102は、中央局に位置する他のデバイスからの要求をモニタリングしてよい。
【0045】
ブロック508において、エッジアプライアンスデバイス102は、要求が受信されたかどうかを判定する。受信されていない場合、方法500はブロック502にループバックして、要求のモニタリングを継続する。要求が受信された場合、方法500はブロック510に進む。ブロック510において、エッジアプライアンスデバイス102は、要求されたキーが関連付けられたテナントのためのキーキャッシュ214に格納されているかどうかを判定する。上記の通り、エッジアプライアンスデバイス102は、例えば、要求元テナントに割り当てられたキーキャッシュ214の部分を検索してよい。ブロック512において、コンピューティングデバイスチェックは、要求されたキーがロ-カルキーキャッシュ214内に格納されているかどうかをチェックする。要求されたキーがキーキャッシュ214内に格納されていない場合、方法500は、後述するブロック516へと分岐する。要求されたキーが、キーキャッシュ214内に格納されている場合、方法500はブロック514へと分岐する。ブロック514において、エッジアプライアンスデバイス102は、要求されたキーを要求元エッジアプライアンスデバイス102に戻す。承認されていない開示を防ぐべく、キーは、例えば、暗号化された通信チャネルを介して、要求元エッジアプライアンスデバイス102にセキュアに戻されてよい。上記の通り、要求元エッジアプライアンスデバイス102は、キーを要求元FaaSインスタンス218に提供してよい、またはキーを用いてよい。キーを提供した後、方法500はブロック502にループバックして、要求のモニタリングを継続する。
【0046】
ブロック512へ参照を戻すと、要求されたキーがキーキャッシュ214内に存在しない場合、方法500は、ブロック516へと分岐し、ここでエッジアプライアンスデバイス102は、エッジ階層のより中央寄りの層に対しキーを要求するかどうかを判定する。例えば、要求がより中央寄りではない外層から(例えば、エンドポイントデバイス104に論理的により近い層から)受信された場合、エッジアプライアンスデバイス102は、要求を、より中央寄りの層へ向けて内向きに伝播してよい。別の例として、要求がピア層から受信された場合、要求は、推測可能であってよく、要求を伝播する必要がなくてよい。エッジアプライアンスデバイス102が、キーを要求しないと判定した場合、方法500はブロック502にループバックして、要求のモニタリングを継続する。エッジアプライアンスデバイス102がキーを要求すると判定した場合、方法500はブロック516に進む。
【0047】
ブロック516において、エッジアプライアンスデバイス102は、要求されたキーを、エッジアプライアンスデバイス102と比較して、エンドポイントデバイス104からより論理的に遠隔に存在する、エッジネットワーク階層の次の内部層にある別のエッジアプライアンスデバイス102に対し要求する。例えば、現在のエッジアプライアンスデバイス102が中央局に位置する場合、エッジアプライアンスデバイス102は、コアネットワークまたは他のより中央寄りの位置にあるエッジアプライアンスデバイス102に対しキーを要求してよい。上記の通り、キー要求は、エッジアプライアンスデバイス102間の管理インタフェースまたは他のアウトオブバンド方式リンクを介して送信されてよい。上記の通り、エッジアプライアンスデバイス102は、キーを受信してよく、キーをキーキャッシュ214内に格納してよい。要求を転送し、任意の応答を処理した後、方法500は、ブロック502にループバックして要求のモニタリングを継続する。
【0048】
ここで図6を参照すると、使用において、エッジアプライアンスデバイス102は、キー要求プリフェッチのための方法600を実行してよい。いくつかの実施形態において、方法600の動作は、図2に示されるエッジアプライアンスデバイス102の環境200の、アクセラレータ130等の1または複数のコンポーネントによって実行されてよいことを理解されたい。方法600はブロック602で開始し、ここではエッジアプライアンスデバイス102が、各テナントのためのキープリフェッチ加速化ロジック212を登録または登録解除する。キープリフェッチ加速化ロジック212は、アクセラレータ130へのプログラム可能なビットストリームまたは他のデータとして具現化されてよい。キープリフェッチ加速化ロジック212は、アウトオブバンド方式の管理インタフェースを介して、例えば、システムオーケストレータまたは他の管理エンティティから受信されてよい。受信後、エッジアプライアンスデバイス102は、アクセラレータ130をプログラムしてよく、または、キープリフェッチ加速化ロジック212を後でプログラミングするために格納してよい。例えば、アクセラレータ130は、キープリフェッチ加速化ロジック212を用いて、アプリケーション機能ユニット(Application Functional Unit,AFU)または他の加速化コンポーネントとして部分的に再構成されてよい。
【0049】
ブロック604において、エッジアプライアンスデバイス102は、現在のテナントに関連付けられたキープリフェッチ加速化ロジック212をアクティブ化する。上記の通り、エッジアプライアンスデバイス102は、アクセラレータ130に対し、キープリフェッチ加速化ロジック212をプログラムしてよく、または、キープリフェッチ加速化ロジック212を操作のために準備してよい。ブロック606において、エッジアプライアンスデバイス102は、テレメトリデータをキープリフェッチ加速ロジック212に入力として提供する。テレメトリデータは、エッジアプライアンスデバイス102に関するハードウェア情報、性能活用、ネットワーク利用または他の情報および潜在的には、特定のオーナIDに関連付けられたリソースまたは範囲リストを識別してよい。いくつかの実施形態において、テレメトリデータは、ユーザ情報、例えば、その特定のテナントからのどのFaaSおよびユーザが、エッジアプライアンスデバイス102上で実行されたか、または実行されているかに関する情報を含んでよい。
【0050】
ブロック608において、動作中、キープリフェッチ加速化ロジック212は、キーをプリフェッチするかどうかを判定する。キープリフェッチ加速化ロジック212は、プリフェッチする特定のキー(例えば、キー名またはキーID)、および/または、キーを要求する特定のリモートエッジアプライアンスデバイス102を識別してよい。キープリフェッチ加速化ロジック212は、エッジアプライアンスデバイス102によって提供されたテレメトリデータに基づき、キーおよび/またはリモートエッジアプライアンスデバイス102を識別してよい。例えば、キープリフェッチ加速化ロジック212は、次の層からもたらされる必要があり、且つ、近い将来において使用される可能性が非常に高いキーを識別してよい。例えば、テナントが、特定のFaaSインスタンス218aが、特定のユーザによって実行中、または使用中であると認識した場合、キープリフェッチ加速化ロジック212は、別のFaaSインスタンス218bが特定のユーザによって実行される可能性が非常に高く、故に、関連付けられたキーがプリフェッチされる必要があると判定してよい。潜在的なセキュリティ脅威を回避すべく、キープリフェッチ加速化ロジック212は、キーキャッシュ214内に含まれる実際のキーへのアクセスを有していなくてよい(例えば、キープリフェッチ加速化ロジック212は、キーを読み取りまたは修正しなくてよい)。
【0051】
ブロック610において、エッジアプライアンスデバイス102は、キープリフェッチ加速化ロジック212の出力に基づき、キーをプリフェッチするかどうかを判定する。いいえの場合、方法600は、ブロック604にループバックして、キープリフェッチ加速化ロジック212のアクティブ化を継続する。いくつかの実施形態において、エッジアプライアンスデバイス102は、キープリフェッチ加速化ロジック212を周期的にアクティブ化してよく、例えば、アクティブ化とアクティブ化との間に、予め定められた時間を待機することによってアクティブ化してよい。アクティブ化の特定の頻度または待機時間は、特定のテナントに依存してよい。
【0052】
ブロック610に参照を戻すと、エッジアプライアンスデバイス102がキーをプリフェッチすると決定した場合、方法600はブロック612に進む。ブロック612において、エッジアプライアンスデバイス102は、図3に関し上記したキャッシュ管理ポリシー加速化ロジック210を用いて、キーキャッシュ214から1または複数のキーをエビクションしてよい。
【0053】
ブロック614において、エッジアプライアンスデバイス102は、エッジネットワーク階層の異なる層にある別のエッジアプライアンスデバイス102に対し、プリフェッチする1または複数の識別されたキーを要求する。エッジアプライアンスデバイス102は、より中央寄りの内部層、すなわち、エッジアプライアンスデバイス102と比較して、エンドポイントデバイス104から論理的により遠隔にある層に対し、キーを要求してよい。いくつかの実施形態において、エッジアプライアンスデバイス102は、より中央寄りではない外層、すなわち、エンドポイントデバイス104から論理的により遠隔ではない位置にある層に対しキーを要求してよい。キー要求は、エッジアプライアンスデバイス102間の管理インタフェースまたは他のアウトオブバンド方式のリンクを介して送信されてよい。
【0054】
上記の通り、ブロック616において、エッジアプライアンスデバイス102は、要求されたキーを受信し、それらをキーキャッシュ214内に格納する。キーがキーキャッシュ214内に格納された後、当該キーは、エッジアプライアンスデバイス102によって用いられてよい。例えば、上記の通り、キーは、エッジアプライアンスデバイス102のFaaSインスタンス218による使用のために利用可能であってよい。要求されたキーを格納した後、方法600はブロック604にループバックして、キープリフェッチ加速化ロジック212のアクティブ化を継続する。上記の通り、いくつかの実施形態において、エッジアプライアンスデバイス102は、キープリフェッチ加速化ロジック212を、例えば、アクティブ化とアクティブ化との間の予め定められた時間を待機することによって周期的にアクティブ化してよい。特定のアクティブ化の頻度または待機時間は、特定のテナントに依存してよい。
【0055】
ここで図7を参照すると、ダイアグラム700は、システム100を含み得るエッジアーキテクチャを示す。図示の通り、エッジアーキテクチャは、複数の層702、704、706、708を含む。各層は、同一の層の他のノードおよび/または他の層のノードに、エッジファブリックを介して通信してよい複数のノードを含む。図示の通り、エンドポイントデバイス104は、モノ/エンドポイント層702に含まれてよい。モノ/エンドポイント層702は、異種であり、モバイルであってよく、地理的に広く分散された多数のエンドポイントデバイス104を含んでよい。アクセス/エッジ層704は、無線タワー、アクセスポイント、基地局、中間ノード、ゲートウェイ、フォグノード、中央局、および他のアクセスネットワークまたはエッジコンポーネント等のアクセスネットワークコンポーネントを含んでよい。アクセス/エッジ層704のコンポーネントは、ビル、スモールセル、近隣、またはセルスケールに分散されてよい。故に、アクセス/エッジ層704のコンポーネントは、モノ/エンドポイント層702のコンポーネントに対し、物理的に近接して比較的近くてよい。コアネットワーク層706は、コアネットワークルータ、ネットワークゲートウェイ、サーバ、および他のより中央寄りのコンピューティングデバイスを含んでよい。コアネットワーク層706のコンポーネントは、地域または国に分散されてよい。クラウド/インターネット層708は、インターネットバックボーンルータ、クラウドサービスプロバイダ、データセンタおよび他のクラウドリソースを含んでよい。クラウド/インターネット層708のコンポーネントは、グローバルに分散されてよい。図示の通り、エッジアプライアンスデバイス102は、アクセス/エッジ層704、コアネットワーク層706および/またはクラウド/インターネット層708のすべてに含まれてよい。
【0056】
図示の通り、エッジアーキテクチャは、グローバルなクラウドベースコンポーネントから、ローカルのエンドポイントデバイスに向かう論理勾配710に従って編成されてよい。ネットワークエッジにより近い(すなわち、エンドポイント層702により近い)コンポーネントは、ネットワークコアにより近い(すなわち、よりクラウド/インターネット層708により近い)コンポーネントと比較して、より小型で、より少ない処理リソースおよびより低い電力消費量を持つ、より多数のコンポーネントであってよい。しかしながら、ネットワークエッジにより近いコンポーネント間のネットワーク通信は、ネットワークコアにより近い層を横切る通信と比較して、より高速であってよく、および/または、より低遅延であってよい。同一の論理勾配710を、層内の複数のコンポーネントに適用してよい。例えば、アクセス/エッジ層704は、多数の広範囲に及ぶ基地局、ストリートキャビネットおよび他のアクセスノードに加え、より少数であるがより高度な中央局または他の集約ノードを含んでよい。故に、ネットワークエッジの近くにある(例えば、エンドポイントデバイス104に論理的に近い)アクセス/エッジ層704または他のコンポーネントにキーキャッシュ機能を含めることで、システム100は、従来のクラウドコンピューティングベースのFaaSアーキテクチャと比較して、遅延および性能を向上させてよい。
【0057】
上記のモバイルエッジコンピューティング実装に加え、前述のシステムおよび方法は、任意の環境(例えば、スマートファクトリ、スマートシティおよびスマートビル等)に実装されてよく、当該環境において、個々のデバイスの名称はある実装と次の実装とで異なる可能性があるが、デバイスは図1を参照して説明した態様と同様の態様において編成され、相互運用されることを理解されたい。例えば、スマートファクトリにおいては、上記のシステムおよび方法は、特に工程がリアルタイム、または、ほぼリアルタイムで実行されるべき場合(例えば、低遅延が非常に重要である)において、1または複数の製造工程が実行される際の精度、効率および/または安全性を向上させてよい。スマートシティにおいては、上記のシステムおよび方法は、トラフィック制御システム、環境モニタリングシステム、および/または他の自動化システムまたは半自動化システムの工程において、精度、効率および/または安全性を向上させてよい。同様に、スマートビルにおいては、上記の開示は、情報を収集し、収集された情報に対し機能するセンサに依存する任意のシステム(例えば、脅威の検出および避難管理システム、ビデオモニタリングシステム、エレベータ制御システム等)の工程を向上すべく適用されてよい。
【0058】
いくつかの実施形態において、方法300、500および/または600は、コンピュータ可読媒体上に格納された様々な命令として具現化されてよく、当該命令は、エッジアプライアンスデバイス102の計算エンジン120、I/Oサブシステム122、アクセラレータ130、および/または他のコンポーネントによって実行され、エッジアプライアンスデバイス102に対しそれぞれの方法300、500、および/または600を実行させてよいことを理解されたい。コンピュータ可読媒体は、エッジアプライアンスデバイス102によって読み取り可能な任意のタイプの媒体として具現化されてよく、このようなものとしては、限定ではないが、エッジアプライアンスデバイス102のメモリ124、データストレージデバイス126、ファームウェアデバイス、他のメモリまたはデータストレージデバイス、エッジアプライアンスデバイス102の周辺デバイスによって読み取り可能なポータブル媒体および/または他の媒体が含まれる。
[例]
【0059】
以下に、本明細書に開示された技術の例示的な例を示す。本技術の実施形態は、以下の例のうちの1または複数、およびこれらの任意の組み合わせを含んでよい。
【0060】
例1は、キー管理のためのコンピューティングデバイスを含み、上記コンピューティングデバイスは、キーキャッシュであって、上記キーキャッシュは、上記コンピューティングデバイスのセキュアストレージに含まれている、キーキャッシュと、エッジ階層キーマネージャと、を備え、上記エッジ階層キーマネージャは、第1のキーに対する要求を受信することであって、上記要求は上記コンピューティングデバイスのテナントに関連付けられており、上記要求は、エッジデバイスに関連付けられたFunction‐as‐a‐Service(FaaS)インスタンスによって提供されるキー識別子を示す、受信することと、上記要求の受信に応じて、上記第1のキーが上記キーキャッシュ内に格納されているかどうかを判定することと、上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記第1のキーをリモートコンピューティングデバイスに対し要求することであって、上記コンピューティングデバイスおよび上記リモートコンピューティングデバイスはエッジ階層に含まれており、上記コンピューティングデバイスは上記エッジ階層の第1の層に含まれ、上記リモートコンピューティングデバイスは、上記エッジデバイスから上記第1の層と比較して論理的により遠隔にある、上記エッジ階層における次の層に含まれる、要求することと、上記第1のキーが上記キーキャッシュ内に格納されているとの判定または上記第1のキーの要求に応じ、上記第1のキーを、上記要求に対する応答として提供することと、を行う。
【0061】
例2は、例1の発明の主題を含み、さらに、アクセラレータを備え、上記アクセラレータがエッジ階層キーマネージャを含む。
【0062】
例3は、例1および2のいずれかに係る発明の主題を含み、上記エッジ階層キーマネージャは、さらに、(i)上記第1のキーの上記要求に応じ、上記リモートコンピューティングデバイスからの上記第1のキーを受信し、および(ii)上記第1のキーの受信に応じ、上記第1のキーを上記キーキャッシュ内に格納し、上記第1のキーを上記応答として提供することは、さらに、上記第1のキーの上記キーキャッシュ内への格納に応じ、上記第1のキーを提供することを含む。
【0063】
例4は、例1~3のいずれかに係る発明の主題を含み、上記エッジ階層キーマネージャは、さらに、上記コンピューティングデバイスの管理インタフェースを介して、上記テナントに関連付けられた優先度レベルを受信し、上記テナントに関連付けられた上記優先度レベルに基づき、上記キーキャッシュを構成する。
【0064】
例5は、例1~4のいずれかに係る発明の主題を含み、エッジ階層キーマネージャは、さらに、上記第1のキーが前記キーキャッシュ内に格納されていないとの判定に応じ、上記第1のキーを第2のリモートコンピューティングデバイスに対し要求し、上記第2のリモートコンピューティングデバイスは、上記エッジ階層の上記第1の層に含まれる。
【0065】
例6は、例1~5のいずれかに係る発明の主題を含み、上記第1のキーに対する上記要求を受信することは、上記FaaSインスタンスからの上記要求を受信することを含み、上記FaaSインスタンスは上記コンピューティングデバイスによってインスタンス化されており、上記第1のキーを上記応答として提供することは、上記第1のキーを、上記テナントに関連付けられた上記FaaSインスタンスに提供することを含む。
【0066】
例7は、例1~6のいずれかに係る発明の主題を含み、上記第1のキーを上記FaaSインスタンスに提供することは、上記第1のキーを、上記コンピューティングデバイスのメモリコントローラまたは計算要素に提供することを含む。
【0067】
例8は、例1~7のいずれかに係る発明の主題を含み、上記エッジ階層キーマネージャは、さらに、上記要求の上記受信に応じ、上記要求の資格情報を認証し、上記要求は、上記FaaSインスタンスによって提供される上記資格情報を示し、上記第1のキーが上記キーキャッシュ内に格納されているかどうかを判定することは、上記資格情報の認証に応じ、上記第1のキーが上記キーキャッシュ内に格納されているかどうかを判定することを含む。
【0068】
例9は、例1~8のいずれかに係る発明の主題を含み、上記第1のキーに対する上記要求を受信することは、上記エッジ階層内の第2のリモートコンピューティングデバイスからの上記要求を受信することを含み、上記第1のキーを提供することは、上記第1のキーを上記第2のリモートコンピューティングデバイスに提供することを含む。
【0069】
例10は、例1~9のいずれかに係る発明の主題を含み、上記第2のリモートコンピューティングデバイスは、上記エッジ階層内の前の層に含まれ、上記前の層は、上記エッジデバイスから上記第1の層と比較して論理的により遠隔ではない。
【0070】
例11は、例1~10のいずれかに係る発明の主題を含み、上記第2のリモートコンピューティングデバイスは、上記エッジ階層の上記第1の層に含まれる。
【0071】
例12は、例1~11のいずれかに係る発明の主題を含み、上記エッジ階層キーマネージャは、さらに、上記第1のキーが上記キーキャッシュ内に格納されていないとの上記判定に応じ、上記キーキャッシュがいっぱいかどうかを判定することと、上記キーキャッシュがいっぱいであるとの判定に応じ、上記コンピューティングデバイスのキャッシュ管理ポリシー加速化ロジックをアクティブ化することであって、上記キャッシュ管理ポリシー加速化ロジックは上記テナントに関連付けられている、アクティブ化することと、上記第1のキーの識別に応じ、上記キーキャッシュから上記第1のキーをエビクションすることと、を実行し、上記キャッシュ管理ポリシー加速化ロジックは、上記キャッシュ管理ポリシー加速化ロジックのアクティブ化に応じ、上記キーキャッシュ内のエビクションする上記第1のキーを識別する。
【0072】
例13は、例1~12のいずれかに係る発明の主題を含み、上記エッジ階層キーマネージャは、さらに、上記コンピューティングデバイスの管理インタフェースを介して上記キャッシュ管理ポリシー加速化ロジックを受信することと、上記キャッシュ管理ポリシー加速化ロジックの受信に応じ、上記キャッシュ管理ポリシー加速化ロジックを用いてアクセラレータをプログラムすることと、を実行する。
【0073】
例14は、例1~13のいずれかに係る発明の主題を含み、上記エッジ階層キーマネージャは、さらに、上記コンピューティングデバイスのキープリフェッチ加速化ロジックをアクティブ化し、上記キープリフェッチ加速化ロジックは上記テナントに関連付けられており、上記キープリフェッチロジックは、上記キープリフェッチ加速化ロジックのアクティブ化に応じ、キープリフェッチする上記第1のキーを識別し、上記第1のキーをリモートコンピューティングデバイスに対し要求することは、さらに、プリフェッチする上記第1のキーの識別に応じ、上記第1のキーを上記リモートコンピューティングデバイスに対し要求することを含む。
【0074】
例15は、例1~14のいずれかに係る発明の主題を含み、上記エッジ階層キーマネージャは、さらに、上記コンピューティングデバイスの管理インタフェースを介して、上記キープリフェッチ加速化ロジックを受信することと、上記キープリフェッチ加速化ロジックの受信に応じ、上記キープリフェッチ加速化ロジックを用いてアクセラレータをプログラムすることと、を実行する。
【0075】
例16は、例1~15のいずれかに係る発明の主題を含み、上記第1のキーを識別することは、上記コンピューティングデバイスに関連付けられたテレメトリ情報に基づき、上記第1のキーを識別することを含む。
【0076】
例17は、例1~16のいずれかに係る発明の主題を含み、上記エッジ階層キーマネージャは、さらに、予め定められた時間待機し、上記予め定められた時間は上記テナントに関連付けられており、上記キープリフェッチ加速化ロジックをアクティブ化することは、上記予め定められた時間の待機に応じ、上記キープリフェッチ加速化ロジックをアクティブ化することを含む。
【0077】
例18は、例1~17のいずれかに係る発明の主題を含み、上記第1のキーは、ユーザプライベートキーまたはテナントプライベートキーを含む。
【0078】
例19は、キー管理のための方法を含み、コンピューティングデバイスによって、第1のキーに対する要求を受信する段階であって、上記要求は上記コンピューティングデバイスのテナントに関連付けられており、上記要求は、エッジデバイスに関連付けられたFunction‐as‐a‐Service(FaaS)インスタンスによって提供されるキー識別子を示す、段階と、上記コンピューティングデバイスによって、上記第1のキーが上記コンピューティングデバイスのキーキャッシュ内に格納されているかどうかを判定する段階であって、上記キーキャッシュは、上記コンピューティングデバイスのセキュアストレージ内に含まれている、段階と、上記コンピューティングデバイスによって、上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記第1のキーをリモートコンピューティングデバイスに対し要求する段階であって、上記コンピューティングデバイスおよび上記リモートコンピューティングデバイスはエッジ階層に含まれており、上記コンピューティングデバイスは上記エッジ階層の第1の層に含まれ、上記リモートコンピューティングデバイスは、上記エッジデバイスから上記第1の層と比較して論理的により遠隔にある、上記エッジ階層における次の層に含まれる、段階と、上記コンピューティングデバイスによって、上記第1のキーが上記キーキャッシュ内に格納されているとの判定または上記第1のキーの要求に応じ、上記第1のキーを、上記要求に対する応答として提供する段階と、を備える。
【0079】
例20は、例19の発明の主題を含み、さらに、上記コンピューティングデバイスによって、上記第1のキーの要求に応じ、上記第1のキーを上記リモートコンピューティングデバイスから受信する段階と、上記コンピューティングデバイスによって、上記第1のキーの受信に応じ、上記第1のキーを上記キーキャッシュ内に格納する段階とをさらに備え、上記第1のキーを上記応答として提供する段階は、さらに、上記キーキャッシュ内への上記第1のキーの格納に応じ、上記第1のキーを提供する段階を含む。
【0080】
例21は、例19および20のいずれかに係る発明の主題を含み、上記コンピューティングデバイスによって、上記コンピューティングデバイスの管理インタフェースを介して、上記テナントに関連付けられた優先度レベルを受信する段階と、上記コンピューティングデバイスによって、上記テナントに関連付けられた上記優先度レベルに基づき、上記キーキャッシュを構成する段階と、をさらに備える。
【0081】
例22は、例19~21のいずれかに係る発明の主題を含み、上記コンピューティングデバイスによって、上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記第1のキーを、第2のリモートコンピューティングデバイスに対し要求する段階をさらに備え、上記第2のリモートコンピューティングデバイスは上記エッジ階層の上記第1の層に含まれる。
【0082】
例23は、例19~22のいずれかに係る発明の主題を含み、上記第1のキーに対する上記要求を受信する段階は、上記FaaSインスタンスからの上記要求を受信する段階を含み、上記FaaSインスタンスは上記コンピューティングデバイスによってインスタンス化されており、上記第1のキーを上記応答として提供する段階は、上記第1のキーを、上記テナントに関連付けられた上記FaaSインスタンスに提供する段階を含む。
【0083】
例24は、例19~23のいずれかに係る発明の主題を含み、上記第1のキーを上記FaaSインスタンスに提供することは、上記第1のキーを、上記コンピューティングデバイスのメモリコントローラまたは計算要素に提供することを含む。
【0084】
例25は、例19~24のいずれかに係る発明の主題を含み、上記コンピューティングデバイスによって、上記要求の上記受信に応じ、上記要求の資格情報を認証する段階であって、上記要求は、上記FaaSインスタンスによって提供される上記資格情報を示す、段階をさらに備え、上記第1のキーが上記キーキャッシュ内に格納されているかどうかを判定する段階は、上記資格情報の認証に応じ、上記第1のキーが上記キーキャッシュ内に格納されているかどうかを判定する段階を含む。
【0085】
例26は、例19~25のいずれかに係る発明の主題を含み、上記第1のキーに対する上記要求を受信する段階は、上記エッジ階層内の第2のリモートコンピューティングデバイスからの上記要求を受信する段階を含み、上記第1のキーを提供する段階は、上記第1のキーを上記第2のリモートコンピューティングデバイスに提供する段階を含む。
【0086】
例27は、例19~26のいずれかに係る発明の主題を含み、上記第2のリモートコンピューティングデバイスは、上記エッジ階層内の前の層に含まれ、上記前の層は、上記エッジデバイスから上記第1の層と比較して論理的により遠隔ではない。
【0087】
例28は、例19~27のいずれかに係る発明の主題を含み、上記第2のリモートコンピューティングデバイスは、上記エッジ階層の上記第1の層に含まれる。
【0088】
例29は、例19~28のいずれかに係る発明の主題を含み、上記コンピューティングデバイスによって、上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記キーキャッシュがいっぱいかどうかを判定する段階と、上記コンピューティングデバイスによって、上記キーキャッシュがいっぱいであるとの判定に応じ、上記コンピューティングデバイスのキャッシュ管理ポリシー加速化ロジックをアクティブ化する段階であって、上記キャッシュ管理ポリシー加速化ロジックは上記テナントに関連付けられている、段階と、上記キャッシュ管理ポリシー加速化ロジックによって、上記キャッシュ管理ポリシー加速化ロジックのアクティブ化に応じ、上記キーキャッシュ内のエビクションする第1のキーを識別する段階と、上記コンピューティングデバイスによって、上記第1のキーの識別に応じ、上記キーキャッシュから上記第1のキーをエビクションする段階と、をさらに備える。
【0089】
例30は、例19~29のいずれかに係る発明の主題を含み、上記コンピューティングデバイスによって、上記コンピューティングデバイスの管理インタフェースを介して上記キャッシュ管理ポリシー加速化ロジックを受信する段階と、上記コンピューティングデバイスによって、上記キャッシュ管理ポリシー加速化ロジックの受信に応じ、上記キャッシュ管理ポリシー加速化ロジックを用いてアクセラレータをプログラムする段階と、をさらに備える。
【0090】
例31は、例19~30のいずれかに係る発明の主題を含み、上記コンピューティングデバイスによって、上記コンピューティングデバイスのキープリフェッチ加速化ロジックをアクティブ化する段階であって、上記キープリフェッチ加速化ロジックは上記テナントに関連付けられている、段階と、上記キープリフェッチロジックによって、上記キープリフェッチ加速化ロジックのアクティブ化に応じ、プリフェッチする上記第1のキーを識別する段階と、をさらに備え、上記第1のキーをリモートコンピューティングデバイスに対し要求する段階は、さらに、プリフェッチする上記第1のキーの識別に応じ、上記第1のキーを上記リモートコンピューティングデバイスに対し要求する段階を含む。
【0091】
例32は、例19~31のいずれかに係る発明の主題を含み、上記コンピューティングデバイスによって、上記コンピューティングデバイスの管理インタフェースを介して上記キープリフェッチ加速化ロジックを受信する段階と、上記コンピューティングデバイスによって、上記キープリフェッチ加速化ロジックの受信に応じ、上記キープリフェッチ加速化ロジックを用いてアクセラレータをプログラムする段階と、をさらに備える。
【0092】
例33は、例19~32のいずれかに係る発明の主題を含み、上記第1のキーを識別する段階は、上記コンピューティングデバイスに関連付けられたテレメトリ情報に基づき、上記第1のキーを識別する段階を含む。
【0093】
例34は、例19~33のいずれかに係る発明の主題を含み、上記コンピューティングデバイスによって、予め定められた時間待機する段階であって、上記予め定められた時間は上記テナントに関連付けられている、段階をさらに備え、上記キープリフェッチ加速化ロジックをアクティブ化する段階は、上記予め定められた時間の待機に応じ、上記キープリフェッチ加速化ロジックをアクティブ化する段階を含む。
【0094】
例35は、例19~34のいずれかに係る発明の主題を含み、上記第1のキーは、ユーザプライベートキーまたはテナントプライベートキーを含む。
【0095】
例36は、プロセッサと、格納された複数の命令を有するメモリと、を備えるコンピューティングデバイスであって、上記複数の命令が上記プロセッサによって実行されると、上記コンピューティングデバイスに対し、例19から35のいずれかに係る方法を実行させる、コンピューティングデバイスを含む。
【0096】
例37は、格納された複数の命令を備える1または複数の非一時的コンピュータ可読ストレージ媒体を含み、上記命令が実行のために準備されることに応じ、その後実行されると、例19~35のいずれかに係る方法を実行するコンピューティングをもたらす。
【0097】
例38は、例19~35のいずれかに係る方法を実行するための手段を備える、コンピューティングデバイスを含む。
他の可能な請求項
(項目1)
キー管理のためのコンピューティングデバイスであって、
キーキャッシュであって、上記キーキャッシュは、上記コンピューティングデバイスのセキュアストレージに含まれている、キーキャッシュと、
エッジ階層キーマネージャと、を備え、
上記エッジ階層キーマネージャは、
第1のキーに対する要求を受信することであって、上記要求は上記コンピューティングデバイスのテナントに関連付けられており、上記要求は、エッジデバイスに関連付けられたFunction‐as‐a‐Service(FaaS)インスタンスによって提供されるキー識別子を示す、受信することと、
上記要求の受信に応じて、上記第1のキーが上記キーキャッシュ内に格納されているかどうかを判定することと、
上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記第1のキーをリモートコンピューティングデバイスに対し要求することであって、上記コンピューティングデバイスおよび上記リモートコンピューティングデバイスはエッジ階層に含まれており、上記コンピューティングデバイスは上記エッジ階層の第1の層に含まれ、上記リモートコンピューティングデバイスは、上記エッジデバイスから上記第1の層と比較して論理的により遠隔にある、上記エッジ階層における次の層に含まれる、要求することと、
上記第1のキーが上記キーキャッシュ内に格納されているとの判定または上記第1のキーの要求に応じ、上記第1のキーを、上記要求に対する応答として提供することと、を行う、コンピューティングデバイス。
(項目2)
アクセラレータをさらに備え、上記アクセラレータが上記エッジ階層キーマネージャを含む、項目1に記載のコンピューティングデバイス。
(項目3)
上記エッジ階層キーマネージャは、さらに、
上記コンピューティングデバイスの管理インタフェースを介して、上記テナントに関連付けられた優先度レベルを受信することと、
上記テナントに関連付けられた上記優先度レベルに基づき、上記キーキャッシュを構成することと、を行う、項目1に記載のコンピューティングデバイス。
(項目4)
エッジ階層キーマネージャは、さらに、上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記第1のキーを第2のリモートコンピューティングデバイスに対し要求し、上記第2のリモートコンピューティングデバイスは、上記エッジ階層の上記第1の層に含まれる、項目1に記載のコンピューティングデバイス。
(項目5)
上記第1のキーに対する上記要求を受信することは、上記FaaSインスタンスからの上記要求を受信することを含み、上記FaaSインスタンスは上記コンピューティングデバイスによってインスタンス化されており、
上記第1のキーを上記応答として提供することは、上記第1のキーを、上記テナントに関連付けられた上記FaaSインスタンスに提供することを含む、項目1に記載のコンピューティングデバイス。
(項目6)
上記第1のキーを上記FaaSインスタンスに提供することは、上記第1のキーを、上記コンピューティングデバイスのメモリコントローラまたは計算要素に提供することを含む、項目5に記載のコンピューティングデバイス。
(項目7)
上記第1のキーに対する上記要求を受信することは、上記エッジ階層内の第2のリモートコンピューティングデバイスからの上記要求を受信することを含み、
上記第1のキーを提供することは、上記第1のキーを上記第2のリモートコンピューティングデバイスに提供することを含む、項目1に記載のコンピューティングデバイス。
(項目8)
上記第2のリモートコンピューティングデバイスは、上記エッジ階層内の前の層に含まれ、上記前の層は、上記エッジデバイスから上記第1の層と比較して論理的により遠隔ではない、項目7に記載のコンピューティングデバイス。
(項目9)
上記エッジ階層キーマネージャは、さらに、
上記第1のキーが上記キーキャッシュ内に格納されていないとの上記判定に応じ、上記キーキャッシュがいっぱいかどうかを判定することと、
上記キーキャッシュがいっぱいであるとの判定に応じ、上記コンピューティングデバイスのキャッシュ管理ポリシー加速化ロジックをアクティブ化することであって、上記キャッシュ管理ポリシー加速化ロジックは上記テナントに関連付けられている、アクティブ化することと、
上記第1のキーの識別に応じ、上記キーキャッシュから上記第1のキーをエビクションすることと、を実行し、
上記キャッシュ管理ポリシー加速化ロジックは、上記キャッシュ管理ポリシー加速化ロジックのアクティブ化に応じ、上記キーキャッシュ内のエビクションする上記第1のキーを識別することを実行する、項目1に記載のコンピューティングデバイス。
(項目10)
上記エッジ階層キーマネージャは、さらに、
上記コンピューティングデバイスの管理インタフェースを介して上記キャッシュ管理ポリシー加速化ロジックを受信することと、
上記キャッシュ管理ポリシー加速化ロジックの受信に応じ、上記キャッシュ管理ポリシー加速化ロジックでアクセラレータをプログラムすることと、を実行する、項目9に記載のコンピューティングデバイス。
(項目11)
上記エッジ階層キーマネージャは、さらに、上記コンピューティングデバイスのキープリフェッチ加速化ロジックをアクティブ化し、上記キープリフェッチ加速化ロジックは上記テナントに関連付けられており、
上記キープリフェッチ加速化ロジックは、上記キープリフェッチ加速化ロジックのアクティブ化に応じ、キープリフェッチする上記第1のキーを識別し、
上記第1のキーをリモートコンピューティングデバイスに対し要求することは、さらに、プリフェッチする上記第1のキーの識別に応じ、上記第1のキーを上記リモートコンピューティングデバイスに対し要求することを含む、項目1に記載のコンピューティングデバイス。
(項目12)
上記エッジ階層キーマネージャは、さらに、
上記コンピューティングデバイスの管理インタフェースを介して、上記キープリフェッチ加速化ロジックを受信することと、
上記キープリフェッチ加速化ロジックの受信に応じ、上記キープリフェッチ加速化ロジックでアクセラレータをプログラムすることと、を実行する、項目11に記載のコンピューティングデバイス。
(項目13)
上記第1のキーを識別することは、上記コンピューティングデバイスに関連付けられたテレメトリ情報に基づき、上記第1のキーを識別することを含む、項目11に記載のコンピューティングデバイス。
(項目14)
キー管理のための方法であって、
コンピューティングデバイスによって、第1のキーに対する要求を受信する段階であって、上記要求は上記コンピューティングデバイスのテナントに関連付けられており、上記要求は、エッジデバイスに関連付けられたFunction‐as‐a‐Service(FaaS)インスタンスによって提供されるキー識別子を示す、段階と、
上記コンピューティングデバイスによって、上記第1のキーが上記コンピューティングデバイスのキーキャッシュ内に格納されているかどうかを判定する段階であって、上記キーキャッシュは、上記コンピューティングデバイスのセキュアストレージ内に含まれている、段階と、
上記コンピューティングデバイスによって、上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記第1のキーをリモートコンピューティングデバイスに対し要求する段階であって、上記コンピューティングデバイスおよび上記リモートコンピューティングデバイスはエッジ階層に含まれており、上記コンピューティングデバイスは上記エッジ階層の第1の層に含まれ、上記リモートコンピューティングデバイスは、上記エッジデバイスから上記第1の層と比較して論理的により遠隔にある、上記エッジ階層における次の層に含まれる、段階と、
上記コンピューティングデバイスによって、上記第1のキーが上記キーキャッシュ内に格納されているとの判定または上記第1のキーの要求に応じ、上記第1のキーを、上記要求に対する応答として提供する段階と、を備える、方法。
(項目15)
上記コンピューティングデバイスによって、上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記第1のキーを、第2のリモートコンピューティングデバイスに対し要求する段階をさらに備え、上記第2のリモートコンピューティングデバイスは上記エッジ階層の上記第1の層に含まれる、項目14に記載の方法。
(項目16)
上記第1のキーに対する上記要求を受信する段階は、上記FaaSインスタンスからの上記要求を受信する段階を含み、上記FaaSインスタンスは上記コンピューティングデバイスによってインスタンス化されており、
上記第1のキーを上記応答として提供する段階は、上記第1のキーを、上記テナントに関連付けられた上記FaaSインスタンスに提供する段階を含む、項目14に記載の方法。
(項目17)
上記第1のキーに対する上記要求を受信する段階は、上記エッジ階層内の第2のリモートコンピューティングデバイスからの上記要求を受信する段階を含み、
上記第1のキーを提供する段階は、上記第1のキーを上記第2のリモートコンピューティングデバイスに提供する段階を含む、項目14に記載の方法。
(項目18)
上記コンピューティングデバイスによって、上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記キーキャッシュがいっぱいかどうかを判定する段階と、
上記コンピューティングデバイスによって、上記キーキャッシュがいっぱいであるとの判定に応じ、上記コンピューティングデバイスのキャッシュ管理ポリシー加速化ロジックをアクティブ化する段階であって、上記キャッシュ管理ポリシー加速化ロジックは上記テナントに関連付けられている、段階と、
上記キャッシュ管理ポリシー加速化ロジックによって、上記キャッシュ管理ポリシー加速化ロジックのアクティブ化に応じ、上記キーキャッシュ内のエビクションする第1のキーを識別する段階と、
上記コンピューティングデバイスによって、上記第1のキーの識別に応じ、上記キーキャッシュから上記第1のキーをエビクションする段階と、をさらに備える、項目14に記載の方法。
(項目19)
上記コンピューティングデバイスによって、上記コンピューティングデバイスのキープリフェッチ加速化ロジックをアクティブ化する段階であって、上記キープリフェッチ加速化ロジックは上記テナントに関連付けられている、段階と、
上記キープリフェッチロジックによって、上記キープリフェッチ加速化ロジックのアクティブ化に応じ、キープリフェッチする上記第1のキーを識別する段階と、をさらに備え
上記第1のキーをリモートコンピューティングデバイスに対し要求する段階は、さらに、プリフェッチする上記第1のキーの識別に応じ、上記第1のキーを上記リモートコンピューティングデバイスに対し要求する段階を含む、項目14に記載の方法。
(項目20)
格納された複数の命令を備える1または複数のコンピュータ可読ストレージ媒体であって、上記命令は、上記命令の実行に応じ、コンピューティングデバイスに対し、
第1のキーに対する要求を受信する手順であって、上記要求は上記コンピューティングデバイスのテナントに関連付けられており、上記要求は、エッジデバイスに関連付けられたFunction‐as‐a‐Service(FaaS)インスタンスによって提供されるキー識別子を示す、手順と、
上記第1のキーが上記コンピューティングデバイスのキーキャッシュ内に格納されているかどうかを判定する手順であって、上記キーキャッシュは、上記コンピューティングデバイスのセキュアストレージ内に含まれている、手順と、
上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記第1のキーをリモートコンピューティングデバイスに対し要求する手順であって、上記コンピューティングデバイスおよび上記リモートコンピューティングデバイスはエッジ階層に含まれており、上記コンピューティングデバイスは上記エッジ階層の第1の層に含まれ、上記リモートコンピューティングデバイスは、上記エッジデバイスから上記第1の層と比較して論理的により遠隔にある、上記エッジ階層における次の層に含まれる、手順と、
上記第1のキーが上記キーキャッシュ内に格納されているとの判定または上記第1のキーの要求に応じ、上記第1のキーを、上記要求に対する応答として提供する手順と、を実行させる、1または複数のコンピュータ可読ストレージ媒体。
(項目21)
格納された複数の命令をさらに備え、上記命令は、上記命令の実行に応じ、上記コンピューティングデバイスに対し、上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記第1のキーを、第2のリモートコンピューティングデバイスに対し要求する手順を実行させ、上記第2のリモートコンピューティングデバイスは上記エッジ階層の上記第1の層に含まれる、項目20の1または複数のコンピュータ可読ストレージ媒体。
(項目22)
上記第1のキーに対する上記要求を受信する手順は、上記FaaSインスタンスからの上記要求を受信する手順を含み、上記FaaSインスタンスは上記コンピューティングデバイスによってインスタンス化されており、
上記第1のキーを上記応答として提供する手順は、上記第1のキーを、上記テナントに関連付けられた上記FaaSインスタンスに提供する手順を含む、項目20に記載の1または複数のコンピュータ可読ストレージ媒体。
(項目23)
上記第1のキーに対する上記要求を受信する手順は、上記エッジ階層内の第2のリモートコンピューティングデバイスからの上記要求を受信する手順を含み、
上記第1のキーを提供する手順は、上記第1のキーを上記第2のリモートコンピューティングデバイスに提供する手順を含む、項目20に記載の1または複数のコンピュータ可読ストレージ媒体。
(項目24)
格納された複数の命令をさらに備え、上記命令は、上記命令の実行に応じ、上記コンピューティングデバイスに対し、
上記第1のキーが上記キーキャッシュ内に格納されていないとの判定に応じ、上記キーキャッシュがいっぱいかどうかを判定する手順と、
上記キーキャッシュがいっぱいであるとの判定に応じ、上記コンピューティングデバイスのキャッシュ管理ポリシー加速化ロジックをアクティブ化する手順であって、上記キャッシュ管理ポリシー加速化ロジックは上記テナントに関連付けられている、手順と、
上記キャッシュ管理ポリシー加速化ロジックによって、上記キャッシュ管理ポリシー加速化ロジックのアクティブ化に応じ、上記キーキャッシュ内のエビクションする第1のキーを識別する手順と、
上記第1のキーの識別に応じ、上記キーキャッシュから上記第1のキーをエビクションする手順と、を実行させる、項目20に記載の1または複数のコンピュータ可読ストレージ媒体。
(項目25)
格納された複数の命令をさらに備え、上記命令は、上記命令の実行に応じ、上記コンピューティングデバイスに対し、
上記コンピューティングデバイスのキープリフェッチ加速化ロジックをアクティブ化する手順であって、上記キープリフェッチロジック加速化ロジックは上記テナントに関連付けられている、手順と、
上記キープリフェッチ加速化ロジックによって、上記キープリフェッチ加速化ロジックのアクティブ化に応じ、プリフェッチする上記第1のキーを識別する手順と、を実行させ、
上記第1のキーをリモートコンピューティングデバイスに対し要求する手順は、さらに、プリフェッチする上記第1のキーの識別に応じ、上記第1のキーを上記リモートコンピューティングデバイスに対し要求する手順を含む、項目20に記載の1または複数のコンピュータ可読ストレージ媒体。
図1
図2
図3
図4
図5
図6
図7