暗号化
Roktは、お客様の個人を特定できる情報(PII)のセキュリティを重視し、最高水準のアプローチを使用して保護しています。クライアントアプリケーションとRoktサーバー間の通信には、排他的にHTTPSプロトコルを使用しています。HTTPSは、Transportation Layer Security(TLS)接続を介してプロトコルを送信し、すべてのリクエストとレスポンスの真正性を確保し、交換されるデータのプライバシーと整合性を保護します。
お客様のPIIに追加のセキュリティレイヤーを設定したい場合は、データを転送する前に暗号化することができ、Roktは受信時にそれを復号化することができます。
PIIの暗号化は高度な統合方法であり、実装中にRokt開発チームと協力して作業する必要があります。これは、お客様の開発チームにとって通常のRokt統合よりも手間がかかり、定期的なメンテナンス(例:年次キーのローテーション)が必要です。
概要
Roktは、PII(名前、姓、メールアドレス、電話番号)として指定された4つのデータ属性に対して、非対称キー暗号化(RSA/ECB/OAEPWithSHA-256AndMGF1Padding)をサポートしています。
まず、各属性を個別にエンドポイントで暗号化する必要があります。Rokt SDKの統合の一環として、暗号化された値とキーID(暗号化に使用されたキーバージョンを参照する)を提供し、暗号化されていないPII以外の属性も提供します。
共通キーを使用して、RoktはPIIを復号化し、他のデータと同様に使用することができます。
はじめに
開始するには、Roktのアカウントマネージャーに連絡し、開発チームとRoktの開発チームの間での会話を開始してもらう必要があります。
Roktは公開/秘密キーペアを生成し、配布します。一緒に、キーIDの定義について合意します。キーを特定の方法で配布することを希望する場合は、それを示すことができます。バックエンドとフロントエンドに使用する技術(例:C#、Java、Ruby)を提供してください。これにより、Roktは送信前に暗号化と復号化プロセスをテストすることができます。
実装
Roktの統合で見つかる標準のPII属性に変更を加えて、次のキー/値ペアにEnc
を追加します:
firstname
lastname
email
mobile
したがって、暗号化された属性は次のようになります:
firstNameEnc
lastNameEnc
emailEnc
mobileEnc
他のすべての属性は、標準ドキュメントまたはアカウントマネージャーによって指定されたとおりに変更しないでください。4つの属性以外を暗号化しようとしてはいけません。
各リクエスト/初期化ごとに:
- 公開鍵を使用して各PII属性値を個別に暗号化します
- 各暗号化された値をBase64エンコードします
- 以下をRoktに送信します:
- 上記のキーで暗号化(およびエンコード)された値
- 平文の非PIIキー/値ペア
- Roktが正しい復号化キーを識別するためのキーID
準備ができたら、Roktチームに連絡して実装を確認してください。
キーローテーション
Roktは、年次(またはそれ以上)でのキーローテーションをサポートしています。キーローテーションは手動で調整する必要があります。