メソッド: privatekeycrypt

ラップされた秘密鍵をラップ解除し、公開鍵に暗号化されたコンテンツ暗号鍵を復号します。

HTTP リクエスト

POST https://BASE_URL/privatekeydecrypt

BASE_URL は、ベース URL に置き換えます。

パスパラメータ

なし。

リクエスト本文

リクエストの本文には、次の構造のデータが含まれます。

JSON 表現
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "encrypted_data_encryption_key": string,
  "rsa_oaep_label": string,
  "reason": string,
  "wrapped_private_key": string
}
フィールド
authentication

string

ユーザーが誰であるかを示す ID プロバイダ(IdP)によって発行された JWT。認証トークンをご覧ください。

authorization

string

ユーザーが resource_name の鍵のラップ解除が許可されていることをアサートする JWT。認証トークンをご覧ください。

algorithm

string

エンベロープ暗号化でのデータ暗号鍵(DEK)の暗号化に使用されたアルゴリズム。

encrypted_data_encryption_key

string (UTF-8)

Base64 でエンコードされた暗号化されたコンテンツ暗号鍵。秘密鍵に関連付けられた公開鍵で暗号化されます。最大サイズ: 1 KB。

rsa_oaep_label

string

Base64 でエンコードされたラベル L(アルゴリズムが RSAES-OAEP の場合)。アルゴリズムが RSAES-OAEP でない場合、このフィールドは無視されます。

reason

string (UTF-8)

オペレーションに関する追加のコンテキストを提供するパススルー JSON 文字列。提供された JSON は、表示する前にサニタイズする必要があります。最大サイズ: 1 KB。

wrapped_private_key

string

Base64 でエンコードされたラップ済み秘密鍵。最大サイズ: 8 KB。

秘密鍵またはラップされた秘密鍵の形式は、鍵アクセス制御リストサービス(KACLS)の実装によって異なります。これは、クライアントと Gmail 側では不透明な blob として扱われます。

レスポンスの本文

成功すると、このメソッドは base64 データ暗号鍵を返します。

オペレーションが失敗すると、構造化エラー応答が返されます。

JSON 表現
{
  "data_encryption_key": string
}
フィールド
data_encryption_key

string

Base64 でエンコードされたデータ暗号鍵。

この例では、privatekeydecrypt メソッドのリクエストとレスポンスのサンプルを示します。

リクエスト

POST https://mykacls.example.org/v1/privatekeydecrypt

{
  "wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
  "encrypted_data_encryption_key": "dGVzdCB3cmFwcGVkIGRlaw...",
  "authorization": "eyJhbGciOi...",
  "authentication": "eyJhbGciOi...",
  "algorithm": "RSA/ECB/PKCS1Padding",
  "reason": "decrypt"
}

レスポンス

{
  "data_encryption_key": "akRQtv3nr+jUhcFL6JmKzB+WzUxbkkMyW5kQsqGUAFc="
}