2014-02-11 3 views
1

Я собираю OpenSSL с FIPS.Ошибка OpenSSL 1.0.1e в режиме FIPS

Когда я попытался запустить OpenSSL бинарного в режиме FIPS экспортирующего OPENSSL_FIPS = 1, это дает ниже ошибки,

47657709811344:error:2D06B06F:FIPS routines:FIPS_check_incore_fingerprint:fingerprint does not match:fips.c:232: 

Моей платформа Linux Suse.

Пожалуйста, помогите.

EDIT 1:

Я использую следующую команду, чтобы построить

./Configure no-idea fips --prefix=build/Linux.2.6.16_x86-64_gcc-4.1.2/result --with-fipslibdir=Current/lib/Linux.2.6.16_x86-64_gcc-4.1.2/ --with-fipsdir=Current linux-x86_64 --openssldir=/opt/VRTSssl shared no-zlib no-sse2 no-ec2m 

make depend ; make ; make install 
+0

Как вы компилируете? Используете ли вы статическую связь с OpenSSL или динамическую компоновку? Если статический, как * точно * вы вызываете GCC и/или делаете? – jww

+0

См. EDIT 1. – pratibha

+0

Это, наверное, немой вопрос, но вы создали и установили 'openssl-fips-2.0.N'? '--with-fipslibdir', а друзья должны указывать на установку' openssl-fips-2.0.N'. – jww

ответ

1

макияж зависит; делать ; make install

Сделайте make all, а не только make. Один из вопросов здесь: make install строит вещи, а не просто устанавливает вещи. Его сломанные другие платформы в прошлом, такие как Android. Один из способов, который я знаю, чтобы избежать создания вещей во время установки, заключается в выпуске make all.

Еще одна плохая вещь о скрипте OpenSSL, который включает в себя отпечаток пальца, заключается в том, что он терпит неудачу. Я узнал, что на Android тоже сложно.


--with-fipsdir = Текущий Linux-x86_64

Это пространство, вероятно, вызывает проблемы.


--with-fipsdir = ...

Кажется, я припоминаю каталог ФИПС должен включать fips-2.0 где-то. Его немного отличается от openssldir.


--with-fipslibdir = Текущий/Библиотека/Linux.2.6.16_x86-64_gcc-4.1.2/

Поскольку вы используете --with-fipsdir, я не верю, что вам нужно --with-fipslibdir.


Есть ли у OpenSSL двоичная в libcrypto.so зависимость или rpath набор? Я сейчас на Mac, поэтому не могу проверить, что делает Linux.

+0

Я пробовал делать все, кроме ошибки, с той же ошибкой. Я не понимаю: «Это пространство, вероятно, вызывает проблемы». комментарий. да, это зависит от libcrypto. – pratibha

+0

Да, настройка _RPATH_ выполняется с помощью исполняемой сборки _openssl_. Также '--with-fipsdir' эквивалентно установке _FIPSDIR_ var для' Configure'. Установочный каталог _openssl-fips_ по умолчанию: _/usr/local/ssl/fips-2.0_. – CristiFati