IBM の FIPS 準拠の JCE/JSSE セキュリティ プロバイダを使用するように Oracle JDK を設定したいと考えています。どの JAR ファイルが必要で、どこにインストールする必要がありますか? java.security
ファイル内のプロバイダー リストはどのようになりますか?
3 に答える
Sun jdk5 で IBMJCE を使用していますが、正常に動作します。fips に似ているかもしれませんね。
ibmjceprovider.jar、ibmpkcs.jar、ibmjcefips.jar が必要です
それらは ibm jre で見つけることができます
このようなコード
static{
//install ibm's provider
java.security.Security.addProvider(new IBMJCE());
}
public byte[] encrypt(byte[] input)throws SecurityException{
KeyGenerator kg = KeyGenerator.getInstance("DES");
//call ibm's provider
SecureRandom sr = SecureRandom.getInstance("IBMSecureRandom", new IBMJCE());
sr.setSeed(str.getBytes());
kg.init(sr);
Key key = kg.generateKey();
Cipher cipher = Cipher.getInstance("DES");
cipher.init(1, key);
byte[] ret = cipher.doFinal(input);
return ret;
}
これは古い投稿ですが、とにかく...
IBM JVM は、IBMJCEFIPS プロバイダーを使用するように構成する場合、FIPS に準拠しています。
ただし、これは IBM Java にのみ適用されます。
SUN JDK に jar をドロップしないでください。
SUN の場合は、FIPS 準拠でもあるNSSプロジェクトを使用する必要があります。
このIBM ドキュメントによると、FIPS 承認のプロバイダーは IBM SDK でのみ使用できます。
もう 1 つの手がかり (最初は、Solaris 上の WebSphere は Oracle JVM で実行されると思っていたからです): Solaris 上の WebSphere MQ の要件では、メモに次のように明確に記載されています。
FIPS 準拠は、IBM SDK でのみサポートされています
実際、Solaris プラットフォームでは、IBM SDK は Sun/Oracle JVM に基づいて構築されていますが、多くの変更(ORB やセキュリティなど) があります。