Наверное не из коробки. Но вам, вероятно, даже не стоит пытаться использовать его, в основном потому, что, по словам самого Google, он не предназначен для общего пользования.
Никогда не хорошо быть одному при использовании библиотеки, особенно криптографической. Обычно это синоним отсутствия исправлений ошибок, поддержки, пользовательских форумов среди прочего.
Вы могли бы рассмотреть библиотеку, которая была разработана для этой цели, например mbedtls (ранее известная как PolarSSL).
Он используется в самых разных системах, от систем с «голым железом» (FreeRTOS) до Linux (например, Веб-сервер Hiawhata использует его).
Обновлять: Даже если требуется поддержка аппаратных криптографических расширений Armv8-a, вы все равно можете повторно использовать оптимизированные подпрограммы BoringSSL Armv8-a (лицензия ISC) или Библиотека Cavium armv8_crypto (лицензия BSD) для замены эквивалентных подпрограмм mbedtls (лицензия Apache 2.0): криптографические функции обычно иметь чистые и маленькие интерфейсы.
По моему опыту, это все же может быть быстрее, чем перенос библиотеки, ориентированной на операционную систему общего назначения, если ваша цель — «голое железо», но в конечном итоге вам придется оценить затраты на оба варианта в вашем конкретном случае.
Я предполагаю, что гораздо меньше работы требуется для добавления поддержки криптографических расширений Armv8-a в mbedtls с использованием уже существующего поддерживаемого кода под соответствующей лицензией, чем попытка урезать openssl или Boringssl для использования на голом железе. .
Существует очень хорошая часть документации, объясняющая, как добавить поддержку криптографии с аппаратным ускорением в mbedtls здесь, это может помочь вам оценить ваши варианты.
это очень хороший момент, я соответственно обновил ответ выше.
Очень полезная информация, я хочу сказать вам большое спасибо, Франт, я думаю, что теперь у меня есть смысл.
mbedtls не поддерживает крипторасширение armv8, поэтому я его не выбирал