OpenSSL - проверить, какой движок называется функцией, и если аппаратное обеспечение действительно используется?

Прежде всего, я новичок в мире OpenSSL. Я заранее извиняюсь за любые основные, варварские ошибки.

Рассмотрим поток:

  • Инициализировать OpenSSL с помощью механизма с помощью аппаратного обеспечения (позвольте ему назвать EngineHW).
  • Вызов функции OpenSSL, например. X509_sign.

Как проверить, была ли вызвана функция на аппаратном обеспечении?

Как проверить функцию EngineHW? Что делать, если функция не определена EngineHW - будет ли резервная копия OpenSSL на любой двигатель по умолчанию, который у него есть?

Вопрос связан с утверждением качества - поскольку у меня есть аппаратное обеспечение для криптографии для меня, я считаю использование программного обеспечения регрессией (по крайней мере для важных функций).

Ответы

Ответ 1

Не знаю, какова цель этого. Проверяете ли вы, что работает OpenSSL, или вы тестируете свой собственный код? Кажется, вы хотите провести регрессионное тестирование OpenSSL и HSM?

Однако, если вы хотите проверить, работает ли X509_sign, удалите все ключи программного обеспечения/диска из тестовой системы и проверьте, можете ли вы что-то подписать. Если вы получите действительную подпись, вы можете быть уверены, что она исходит из вашего HSM. Если вы вернетесь обратно, это не так. OpenSSL не отступает от другой знаковой функции, и даже если она и делает, она не может быть подписана, поскольку для ее подписи требуется ключ. Надеюсь, что ответили на ваш вопрос.