Использование Openssl fipsld в статической библиотеке - PullRequest
0 голосов
/ 21 сентября 2019
  • У меня есть библиотека FIPS capable openssl.
  • Openssl Версия 1.0.2t и FIPS object module 2.0.16.
  • Я читал руководство пользователя для FIPS object module, в котором говорилось, что последний шаг при создании программы с FIPS capable openssl былиспользуйте fipsld, чтобы связать мою программу с openssl, а не gcc/ld, поскольку она вычисляет sha1sum из fipscansiter.o с использованием fipsprelim.c.
  • После этого мне нужно вызвать FIPS_mode_set(1), что позволяет fips режим.
  • Это работает, если я генерирую исполняемый файл.Но в моем проекте мы предоставляем нашим клиентам библиотеку static и со своей стороны разрешаем все зависимости, поэтому распаковываем libcrypto.a с использованием ar x libcrypto.a и добавляем все объектные файлы openssl в нашу статическую библиотеку libapi.a.
  • Существует один класс (API_DigitalSignature.cpp), который построен как оболочка для openssl API для цифровой подписи.

Теперь проблема в том, что я запутался в том, как мне использовать fipsld в моем проекте, потому что я не генерирую программу, а просто архив?

Также я уточнил с некоторыми сотрудниками службы безопасности, что распаковка libcrypto.a не влияет на проверку FIPS, если только мы не изменим ciphers.

...