対称鍵暗号化を実現するために AES を使用しています。パスワードで保護されたキーストアにキーを保存します。
API は、キーストアからキーをロードするために以下を公開します
keyStore.load(inputStream, keyStorePassword.toCharArray());
そのため、暗号化または復号化するたびに、コンテンツを毎回新たに読み取らなければならないため、少なくとも私の意見ではパフォーマンスが低下する入力ストリームを渡す必要があります。
それをメモリに保存し、それからアクセスしてInputStreamに変換する戦略を手伝ってくれませんか?
注: キーストアの内容を文字列(UTF-8)に読み取って、それをInputStreamに変換してAPIに渡しようとしましたが、次の例外を吐き出しました
java.io.IOException: 無効なキーストア形式です