RKX 鍵トークン

CCA で通常使用される鍵トークンは、鍵の値を保護することと、CCA 暗号機能による鍵の使用を制御するために鍵に関連付けられている メタデータを保持することのためにのみ設計されています。 リモート鍵ロード設計においては、RKX 鍵トークンと呼ばれる新しいタイプの鍵トークンが導入されています。 このトークンの目的は多少異なり、その用途は、 リモート鍵ロード設計の CCA に追加されたリモート鍵エクスポート呼び出し可能サービスと直接関係しています。

RKX 鍵トークンでは、特定のトラステッド・ブロックにトークンをバインドする特殊な構造が使用され、 リモート鍵エクスポート呼び出しのシーケンスをアトミック操作であるかのようにまとめることができます。 これにより、リモート鍵エクスポート呼び出し可能サービスを使用して、関連する一連の鍵管理操作を実行できます。 このような機能は、以下の 3 つの機能を RKX 鍵トークン構造に取り込むことによって使用可能になりました。
  • トラステッド・ブロック内の MAC 鍵のバリアントを使用して鍵が暗号化されます。 ランダムに導出された固定のバリアントが使用前の鍵に適用されます。 その結果、トラステッド・ブロック MAC 鍵自体が常に保護されるため、暗号化された鍵の開示を防止できます。
  • その構造には、鍵の作成に使用されたトラステッド・ブロック規則に含まれる規則 ID が組み込まれます。 その後でリモート鍵エクスポート呼び出し可能サービスを呼び出すときに、この鍵を、 その規則 ID を参照するトラステッド・ブロック規則と一緒に使用して、2 つの規則の使用を安全かつ効率的にチェーニングしてまとめることができます。
  • トラステッド・ブロック自体を保護するために使用されるものと同じ MAC 鍵を使用して、暗号化鍵と規則 ID から MAC が計算されます。 この MAC により、鍵や規則 ID が変更されると必ず変更が検知されるようになります。 その結果、整合性が提供され、規則 ID が鍵自体にバインドされます。 また、この MAC で検証されるのは、RKX 鍵トークンが作成されたトラステッド・ブロックと同じトラステッド・ブロックとともに その RKX 鍵トークンが使用されているのかどうかのみです。
次の図は RKX 鍵トークン構造を単純化した概念図を示しています。
図 1. 単純化した RKX 鍵トークン構造