# Embulk Encoder Encryption PGP

この統合は現在ベータ版であり、TDは機能と安定性を向上させるためにフィードバックを積極的に収集しています。

## 概要

PGP暗号化は、PII(個人を特定できる情報)やその他の機密データを含むファイルを暗号化することで、安全なデータ転送を保証します。お客様は、機密情報を安全に処理するためにLiveRampなどの外部システムを使用しています。当社のソリューションは、暗号化要件をサポートすることで、このようなサービスとのシームレスな統合を可能にします。Liveramp向けに暗号化オプションを導入する予定ですが、他のサービスについては、汎用的なSFTP v2およびその他のコネクタに暗号化オプションを実装する予定です。

アドテック企業は、ネイティブAPIに加えて、オーディエンスデータやコンバージョンデータをインポートするためのSFTP、FTPサーバーを提供することがよくあります。暗号化機能を備えたSFTP、FTPなどをサポートすることで、新しい専用コネクタを開発することなく、サードパーティのアドテック企業との統合を実現できます。

![How to encrypt and decrypt files using GPG - SAP C... - SAP Community](https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/04/GoAnywhereMFT_OpenPGP-Diagram-1.png)

主な機能:

**Encryption PGP Encoder**プラグインは、Pretty Good Privacy(PGP)を使用して出力データを安全にエンコードする機能を提供します。このエンコーダーは、**暗号化前にgzip、bzip2などの圧縮をデータに適用**でき、データのセキュリティとデータサイズの削減の両方を実現します。

このプラグインにより、ユーザーは指定されたPGP公開鍵を使用してデータを暗号化できます。データはまずgzip、bzip2で圧縮され、その後暗号化されるため、機密性と効率性の両方が提供されます。

## 前提条件

- TD Toolbeltを含むTreasure Dataの基本的な知識
- 暗号化と復号化の基本的な知識


## エクスポート用のクエリ結果の設定

Treasure コンソールは、データをエクスポートする複数の方法をサポートしています。Data Workbenchからデータをエクスポートするには、次の手順に従ってください。

1. **Data Workbench** > **Queries**に移動します。
2. **New Query**を選択し、クエリを定義します。
3. **Export Results**を選択してデータエクスポートを設定します。SFTP_V2など、暗号化をサポートするコネクタを使用することを忘れないでください。
4. 既存のAuthenticationを選択するか、前述のように新しいものを作成します。
5. **Done**を選択します。


### コネクタ設定パラメータ

| フィールド | 説明 |
|  --- | --- |
| type | エンコーダーのタイプは`encrypt_pgp`である必要があります。 |
| public_key | 暗号化に使用されるPGP公開鍵(文字列、必須)。 |
| key_identifier | PGP鍵の識別子(文字列、必須)を16進数形式で指定します。ファイルを保護するために使用される暗号化サブキーのKey IDを指定します。マスターキーは暗号化プロセスから除外されます。 |
| armor | 暗号化された出力にASCII armorを使用します(ブール値、オプション)。 |
| encryption_algorithm | 使用する暗号化アルゴリズム(文字列、必須、デフォルトは`AES_256`) |
| compression_type | 暗号化前にgzipを使用してデータを圧縮するかどうか(ブール値、オプション)。 |


## (オプション)CLIを使用したエクスポート統合、SFTP V2での例

CLIを使用してencoder暗号化を利用することもできます。

*`td query`*コマンドの*`--result`オプション*を使用して、LinkedInサーバーへのエクスポート情報を指定する必要があります。*`td query`*コマンドの詳細については、[こちらの記事](/tools/cli-and-sdks/td-toolbelt-job-and-query-command-reference)を参照してください。

オプションの形式はJSONで、一般的な構造は次のとおりです。


```
out:  type: file  path_prefix: data_bzip2  file_ext: .csv.bz2.gpg  sequence_format: ""  formatter:    type: csv    delimiter: ','    quote: '"'    quote_policy: MINIMAL    header_line: true  encoders:    - type: encrypt_pgp      public_key: |        -----BEGIN PGP PUBLIC KEY BLOCK-----        your public key content        -----END PGP PUBLIC KEY BLOCK-----      key_identifier: 6B057AFA80C04166      armor: true      encryption_algorithm: AES_256    - type: bzip2      level: 6
```

### SFTP V2での使用例


```bash
td query -d luan_db -w "select * from luan_db.sfcc_500k" -T presto --result '{  "type": "sftp_v2",  "host": "ap-southeast-1.sftpcloud.io",  "auth_method": "password",  "username": "username",  "password": "password",  "path_prefix": "cli/test_27_3_500K.csv.gz.gpg",  "file_ext": ".gpg",  "rename_file_after_upload": false,  "formatter": {    "type": "csv",    "quote_policy": "MINIMAL",    "delimiter": ",",    "null_string": "null",    "newline": ""  },  "compression": "encrypt_pgp",  "public_key": "-----BEGIN PGP PUBLIC KEY BLOCK-----  your public key content-----END PGP PUBLIC KEY BLOCK-----",  "key_identifier": "6B057AFA80C04166",  "armor": true,  "compression_type": "gzip"}'
```

## 関連記事

- SFTP V2: [SFTP V2 Server Export Integration](/ja/int/sftp_v2-server-export-integration)