メソッド: 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

アルゴリズムが RSAES-OAEP の場合、Base64 でエンコードされたラベル L。アルゴリズムが 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="
}