注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

はじめに

このガイドには以下のセクションが含まれています:

Cipher Channel の作成

Cipher Channel を作成する際には、まず暗号化アルゴリズムを選択し、その後で秘密鍵を作成します。新たな Cipher Channel を作成する方法は2つあります:

オプション 1:プラットフォームのファイルシステムを通じて Cipher Channel を作成する

ユーザーの選択したプロジェクトに移動し、+ New > Cipher Channel を選択して新たな Cipher Channel を作成します。ユーザーの選択したアルゴリズムを選択します;暗号化された値で結合を実行するため、AES SIV を推奨します。

Channel action

Foundry のファイルシステムに Cipher Channel を作成する能力がない場合は、Palantir の担当者に問い合わせてサポートを受けてください。

オプション 2:Cipher アプリケーションを通じて Cipher Channel を作成する

パネルの左側に移動し、Platform Apps > Data Governance の下にある Cipher を探し、オプション 1 と同じ手順を実行します。

Channel Dialog

暗号化アルゴリズムの選択方法

画面上のガイドは、ユーザーの選択したプロトコルで Cipher Channel を作成するプロセスを案内します。以下は、ユーザーのユースケースに最適な設定を選択する際に役立つ追加の詳細です:

  • アルゴリズム: Cipher は現在、AES_GCM_SIV 確率的暗号化アルゴリズム、AES_SIV 決定的暗号化アルゴリズム、SHA-256 ハッシュアルゴリズム(ペッパー付き)、SHA-512 ハッシュアルゴリズム(ペッパー付き)をサポートしています。

ハッシュ化と暗号化の主な違いは、暗号化された値はユーザーが適切な権限を持っていれば復号化することができる一方で、ハッシュ化された値は暗号化操作を通じて復元や再識別することができないということです。再識別が必要なユースケースの場合、暗号化を推奨します。

確率的と決定的な暗号化の主な違いは以下の通りです:

  • 確率的暗号化: 同じ入力は常に異なる出力を生成します。
  • 決定的暗号化: 同じ入力は常に同じ出力を生成します。
  • ハッシュ化: 常に決定的です。

決定的なアルゴリズムと確率的なアルゴリズムの間で選択する際に考慮すべきいくつかの点は以下の通りです:

  • 暗号化されたデータで結合や集約を実行する必要がある場合は、決定的なアルゴリズムが必要です。
  • 暗号化したいデータのカーディナリティが低い、または統計的な分布がよく知られている場合は、暗号化されたデータに対する辞書攻撃や統計攻撃のリスクを制限するために、確率的なアルゴリズムを選択したい場合があります。

暗号システムのキー設定方法

画面上のガイドは、暗号システムの設定方法を案内します。以前に選択した暗号化アルゴリズムにより、ユーザーの敏感なデータを保護するために選択できる秘密鍵の形式が異なります。

  • 秘密鍵:
    • 暗号化: 秘密鍵からキーを導出するためのキー取得方法が2つあります:
      • 拡張キー導出(推奨):Cipher サービスは、キーを伝統的に強化する方法を適用して秘密鍵からキーを導出します。キーボタンをクリックすると、秘密鍵をランダムに生成できます。
      • 単一キー:この方法には導出関数が含まれません。すでに適切に設計された AES_SIV キーがある場合は、そのキー自体として使用することを推奨します。これは、長さが64の base64 エンコードされた文字列として入力する必要があります。
    • ハッシュ化: ハッシュ秘密鍵の作成:
      • ユーザーのターミナルでコマンドを実行してハッシュ秘密鍵を自分で作成することを推奨します(最小14文字、ランダムに生成)。
      • または、キーボタンをクリックして秘密鍵をランダムに生成することもできます。

Create cipher channel をクリックすると、Cipher Channel の作成プロセスが完了します。

ライセンスの発行

Cipher ライセンスを発行するには、Cipher Channel に移動し、Create New Cipher License ボタンをクリックします。

Issue a Cipher License

ユーザーに Cipher ライセンスによって許可された操作へのアクセスを許可するには、そのユーザーにライセンスへの表示アクセスを与えてください。

ライセンスの種類は3つから選べます:

運用ユーザーライセンスデータマネージャーライセンス管理者ライセンス
セルレベルで監査可能
レートリミットを適用できる
全行 の暗号化/復号化に使用する
暗号鍵へのアクセスを事実上許可する⚠️
使用可能な場所
オブジェクトレイヤー(Workshop、Object Explorer など)
関数(Checkpoints のバイパスを参照)
Pipeline Builder
Contour
Code Authoring

運用ユーザーライセンス

運用ユーザーライセンス(以前は "Frontend License")は、Foundry ユーザーが個々の値を暗号化または復号化できるようにします。

運用ユーザーライセンスには2つの設定可能な権限があります:

  • 個々の値の暗号化/ハッシュ化: Foundry アプリケーションを通じた単一値の暗号化またはハッシュ化。この操作に対してレートリミットカウンターを設定できます。
  • 個々の値の復号化: Foundry アプリケーションを通じた単一値の復号化。この操作に対してレートリミットカウンターを設定できます。この設定は、Workshop や Object Explorer などのフロントエンドで特定の暗号化された値を表示することをユーザーに許可するのに便利です。

レートリミットは、設定した時間内に個々が許可される単一値の暗号化操作の数を指示するオプションの設定です。ユーザーが限度を超えると、期間がリセットされるまでブロックされます。

運用ユーザーライセンスを使用した操作は完全に監査可能です。

Checkpoints のバイパス

ライセンスが checkpoints をバイパスすることを許可すると、ライセンスは Functions や直接の API 呼び出しのような、checkpoints を表示できない場所で使用できます。このライセンスの使用は、セルレベルで監査可能であり、レート制限が適用されます。

データマネージャーライセンス

データマネージャーライセンス(以前は "High Trust License")は、Foundry ユーザーが Pipeline Builder や Contour などのツールを使ってデータセットの全行を暗号化または復号化できるようにします。この設定は、ポイント・アンド・クリックのツールから利益を得るユーザーや、厳格なセキュリティ懸念を持つユーザーにとって便利です。Pipeline Builder での Cipher の使用について詳しく学んでください。

データマネージャーライセンスには2つの設定可能な権限があります:

  • 行レベルの暗号化/ハッシュ化: Pipeline Builder や Contour などのツールを通じてのデータセット行の暗号化またはハッシュ化。
  • 行レベルの復号化: Pipeline Builder や Contour などのツールを通じてのデータセット行の復号化。

管理者ライセンス

管理者ライセンス(以前は "Transforms License")は、Foundry ユーザーが Code Repositories でデータセットの全行を暗号化または復号化し、暗号鍵へのアクセスを許可します。

Transforms での操作を許可すると、ユーザーに事実上暗号鍵へのアクセスを許可します。このライセンスへのアクセスは、昇格した権限を持つユーザーにのみ付与されるように確認してください。

管理者ライセンスには2つの設定可能な権限があります:

  • 暗号化/ハッシュ化管理者: Code Repositories でのデータセット行の暗号化またはハッシュ化と暗号化鍵へのアクセス。
  • 復号化管理者: Code Repositories でのデータセット行の復号化と復号化鍵へのアクセス。

ウォークスルーガイド

上記の手順に慣れたら、このチュートリアルを参照して、Cipher アプリケーションを使用して暗号化操作を実行する方法を説明します。

このチュートリアルでは、概念的な従業員データを使用します。このドキュメントで共有されるすべての情報(画像や付随するデータセットなどを含むがこれに限らない)は概念的なものです。

再現手順

始める前に、概念的な従業員データセットをダウンロードし、Foundry にアップロードします。

  1. ユーザーのランディングプロジェクトで**Cipher Channel を作成**します。
  2. **データマネージャーライセンスを作成**し、暗号化許可を付与します。
  3. Pipeline Builder で敏感な行を暗号化します: 新しいパイプラインを作成し、右上隅の + New > Pipeline を選択して従業員データセットを Pipeline Builder にインポートします。その後、作成したばかりのデータマネージャーライセンスを使用して Cipher encrypt 変換を選択し、データセットの Employee_name 行に適用します。この行は今や暗号化されています。暗号化が完了したら、データセットとともに Object type パイプライン出力を追加し、Employee_number をプライマリーキーとタイトルとして使用できます。(Pipeline Builderについて詳しく学んでください)

Encrypting a column using Pipeline Builder

  1. オブジェクト出力を追加します: Pipeline outputs の下のロータリーアイコンの Output settings に移動します。Target ontologyOutput folder を選択し、保存をクリックします。このデータセット内の任意のオブジェクトにアクセスすると、先に暗号化した値のセットが表示できなくなり、閲覧することができないことに気付くでしょう。次のステップでは、これらの値を復号化する方法を説明します。

Configuring Ciphertext property type

  1. 運用ユーザーライセンスを作成します: Cipher Channel に戻り、新しい運用ユーザーライセンスを作成し、復号化許可を付与します。このライセンスを使用すると、オブジェクト上で復号化を実行できます。上記と同じ操作を実行すると、オブジェクトの値を復号化できるようになるはずです。

Workflow of a decryption request with Cipher