5

Java 1.7 では、MD2 アルゴリズムが弱いため、その使用が無効になっています。次のようにファイルに自動的に設定さJAVAHOME/lib/security/java.securityれます。

jdk.certpath.disabledAlgorithms=MD2

SSLContext の 1 つの特定のインスタンスに対して MD2 を再度有効にする方法を見つけようとしていますが、それができないようです。私は次のことを試しました:

  1. "jdk.certpath.disabledAlgorithms=MD2"のプロパティをコメント アウトしますjava.security。しかし...これにより、MD2が常に有効になります。これは望ましくありません
  2. コードでは、Security.setProperty("jdk.certpath.disabledAlgorithms", ""); ただし、単一の SSLContext インスタンスに対してのみそれを行うことはできません-設定したプロパティは設定されたままになり、後で変更することはできません

このようなことをする方法はありますか:

SSLContext context = SSLContext.getInstance("ssl");
/* Enable MD2 here */
SSLContext.setDefault(context);
/* Do stuff here */
SSLContext context = SSLContext.getInstance("ssl");
/* Disable MD2 here */
SSLContext.setDefault(context);

ありがとう。

4

0 に答える 0