C++アプリケーションでAWS S3を使用してファイルをアップロードおよびダウンロードしています。コードにアクセスキーと秘密を含めましたが、誰かがバイナリからそれらを読むことができるのではないかと心配しています。それらを難読化するための標準的なテクニックはありますか?C++でAWS S3のアクセスキーとシークレットを非表示にするにはどうすればよいですか?
アップデート:PC上でこのアプリケーションを実行しているわけではありませんが、実際には埋め込み型のデバイスであるため、ユーザーはファイルやRAMからキーと機密情報を読み取る心配はありません(デバイスにアクセスするのはもっと難しい) 。私が心配しているのは、アップデートファイルをbinwalkしてバイナリから鍵と秘密を引っ張っている人です。
私は質問を(そしてこれまでに与えられたように)正しく理解していれば、コード内のキーが何らかの形で読み取られるということです。実際のキーがどこにあるかを知ることができますが、静的なデータがどこにあるかを知ることができ、このデータをブルートフォース攻撃のベースとして使用することはできません(例えば、4文字のすべてのシーケンスを試し、次に5つの静的データ内で)。 – marom
これは難しい質問です。私は、あなたが達成しようとしていることが完全にはっきりしていないと思うし、答えは(通常はセキュリティがついているので)おそらく "間違っている"ということです。経験則として、自分のPC上でユーザーから何も秘密にすることはできません。 http://security.stackexchange.com/で質問したことがありますか? – BoBTFish