如何解决配置Oracle JDK以使用IBM JCE / JSSE提供程序以符合FIPS要求
|| 我想将Oracle JDK配置为使用IBM的FIPS兼容JCE / JSSE安全提供程序。我需要什么JAR文件,应该在哪里安装?java.security
文件中的提供者列表应该是什么样的?
解决方法
我在sun jdk5上使用IBMJCE,它工作正常。我想这可能类似于菲普斯
您需要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中。
对于SUN,您应该使用同样符合FIPS的NSS项目
,根据此IBM文档,FIPS认可的提供程序仅可用于IBM SDK。
另一个提示(因为我最初认为Solaris上的WebSphere运行在Oracle JVM上):在Solaris上的WebSphere MQ要求中,有一条注释清楚地指出:
仅IBM SDK支持FIPS合规性
实际上,在Solaris平台上,IBM SDK是基于Sun / Oracle JVM构建的,但是有很多更改(ORB和安全性...)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。