このアプリケーションでは、組織/従業員情報には、銀行口座情報、社会保障番号などの PII (個人を特定できる情報) が含まれています。このデータは、REST API 応答からブラウザーに送信されます。
すでに次のコントロールが実装されています
- データはhttps経由で送信されます
- 認証
- 承認されたユーザーのみが完全な情報を表示できます
- データベース内のデータは、暗号化およびマスクされた形式で保存されます
- API にはセキュリティ コントロールもあります。有効なユーザーのみが REST API を実行できます。
別のセキュリティ層を追加したかったのです。つまり、https 経由で送信されるデータはエンコードする必要があります。
Chrome ブラウザーで、ユーザーが F12 キーを押して開発ツールを開くと、ユーザーは REST API 応答の JSON とデータを読み取り可能な形式で表示できます。そのため、送信される PII データは読み取り可能な形式ではなく、エンコードされた形式にする必要がありました。
REST API JSON を Base64 でエンコードし、Base64 を使用して JavaScript でデコードした場合でも、ハッカーはデータをハッキングして Base64 を使用してデコードできます。
送信中にデータが読み取り可能な形式にならないように、PII データをエンコード/ハッシングすることについて、他に提案/推奨事項はありますか? サンプル実装は役に立ちます。