AndroidでJavaを使用してRSAキーペアを決定論的に生成しようとしています。私の要件は、キーペアを保存できないことであり、以前/将来の実行と同等になるように実行時に生成する必要があります。
私のプロセスは、決定論的に乱数ジェネレーターをシードし、そのジェネレーターを渡してキーを作成することでした。私のコードは次のとおりです。
SecureRandom random=SecureRandom.getInstance("SHA1PRNG");
random.setSeed(1234); //something device specific will be used to set this
KeyPairGenerator keyGen=KeyPairGenerator.getInstance("RSA");
keyGen.initialize(1024, random);
KeyPair pair=keyGen.generateKeyPair();
PublicKey pub=pair.getPublic();
PrivateKey priv=pair.getPrivate();
結果のキーは、実行ごとに異なります。ただし、SecureRandomの数値は実行ごとに同じであり、デバイス間でも同じです。
私は何が欠けていますか?これらのキーを繰り返し生成するにはどうすればよいですか?
ありがとう