Google Appengine 内のコードで使用する必要がある対称キーを保護する最善の方法は何ですか?
私たちのアプリケーションは Python 2.7 を使用しています
編集: 保護したいデータベース フィールドがいくつかあります。コード内でアクセスする必要がありますが、それらをプレーン テキストでデータベースに残す理由はありません。明らかに、キーを取得するのをできるだけ難しくしたいと思います (決して不可能ではないことを理解しています)。
Google Appengine 内のコードで使用する必要がある対称キーを保護する最善の方法は何ですか?
私たちのアプリケーションは Python 2.7 を使用しています
編集: 保護したいデータベース フィールドがいくつかあります。コード内でアクセスする必要がありますが、それらをプレーン テキストでデータベースに残す理由はありません。明らかに、キーを取得するのをできるだけ難しくしたいと思います (決して不可能ではないことを理解しています)。
コードが実行されている環境を信頼しない場合、キーを完全に保護する方法はありません。キー (の一部) を信頼できる場所に保存し、ドメイン/IP からのキーのクエリのみを受け入れることができます。あなたのアプリ。しかし、それはまだその appengine インスタンスのメモリにあります。
発信メッセージの最善の解決策は、公開鍵暗号を使用することです。秘密にしておく必要がないため、コードで相手の公開鍵を使用できるようにします。その後、リモートの秘密鍵でのみ復号化できます。
appengine の環境を信頼できない場合、受信した公開鍵メッセージを復号化できません。これは、秘密鍵をアプリケーションで使用できるようにする必要があるためです。
編集:いくつかのデータベースフィールドを保護したいと追加したので、それらをハッシュすることを考えましたか?