モバイル/サーバー セキュリティ関連のプロジェクトに取り組んでいます。私は現在、Diffie-Hellman 鍵合意部分の生成に行き詰まっています。サーバー側のプログラムでは正常に動作しますが、モバイル側では動作しません。したがって、Androidとの互換性はないと思います。
次のクラスを使用してパラメーターを取得しました。3 つの値のカンマ区切りの文字列を返します。最初の数値は素数 P です。2 番目の数値は基底生成元 G です。3 番目の数値は乱数指数 L のビット サイズです。
私の質問は、コードに問題があるか、それとも Android 用に圧縮できないのでしょうか?どのような変更を行う必要がありますか?
あなたの提案とガイダンスは私にとって非常に役立ちます。よろしくお願いします。
public static String genDhParams() {
try {
// Create the parameter generator for a 1024-bit DH key pair
AlgorithmParameterGenerator paramGen = AlgorithmParameterGenerator.getInstance("DH");
paramGen.init(1024);
// Generate the parameters
AlgorithmParameters params = paramGen.generateParameters();
DHParameterSpec dhSpec = (DHParameterSpec)params.getParameterSpec(DHParameterSpec.class);
// Return the three values in a string
return ""+dhSpec.getP()+","+dhSpec.getG()+","+dhSpec.getL();
} catch (NoSuchAlgorithmException e) {
} catch (InvalidParameterSpecException e) {
}
return null;
}
よろしく、
セビー