Javaで、安全に破棄する必要があるオブジェクトがある場合、どのオプションがありますか?
次の点を考慮してください。
a) when : オブジェクトがいつ破棄されるかについて、何らかの保証が必要です。System.gc() を呼び出すことが唯一の/より良いオプションですか?
b) 方法: GC では不十分であり、オブジェクト インスタンスが使用しているメモリが適切に消去されていることを確認する必要があります。最初に、リフレクションを介して内部オブジェクト表現への参照を取得し (文字列内の char[] を取得)、データを上書きできます。ただし、このメソッドには、オブジェクトのタイプごとに実装が必要です。
パスワードと秘密鍵オブジェクトが RAM に残らないようにするためのより良い方法はありますか?
更新: パスワードは一例です。この質問は、オブジェクトを安全に破壊するための一般的な方法に焦点を当てています。BigInteger、PGPPrivateKey、RSAWhatever などを考えてみてください。