Сконфигурируйте Oracle JDK для использования поставщиков IBM JCE / JSSE для соответствия FIPS - PullRequest
4 голосов
/ 15 апреля 2011

Я хотел бы настроить Oracle JDK для использования FIPS-совместимых поставщиков безопасности JCE / JSSE от IBM. Какие JAR-файлы мне нужны и где они должны быть установлены? Как должен выглядеть список провайдеров в файле java.security?

Ответы [ 3 ]

4 голосов
/ 07 августа 2013

Я использую IBMJCE на Sun JDK5, и он работает нормально.Это может быть похоже на 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;
}
3 голосов
/ 10 сентября 2011

Это старый пост, но в любом случае ...
IBM JVM совместима с FIPS при настройке его для использования поставщика IBMJCEFIPS.
Это применимо только к IBM Java.
Не сбрасывать фляги вSUN JDK.
Для SUN следует использовать проект NSS , который также совместим с FIPS

1 голос
/ 17 октября 2012

Согласно этому документу IBM , одобренные FIPS поставщики доступны только с IBM SDK.

Еще одна подсказка (потому что я впервые подумал, что WebSphere на Solaris работает на Oracle JVM): в Требованиях WebSphere MQ к Solaris в заметке четко говорится, что

Соответствие FIPS поддерживается только в IBM SDK

На самом деле, на платформе Solaris IBM SDK построен на JVM Sun / Oracle, но с много изменений (ORB и безопасность ...).

...