В bee2evp для статических объектов криптопримитивов реализованы функции, возвращающие ссылки на такие объекты.
Например,
const EVP_CIPHER* evpBeltECB128()
{
return EVP_belt_ecb128;
}
Вызов такой функции невозможен через EVP-интерфейс, а для вызова напрямую необходимо статически подключать в вызывающую программу и bee2evp, и OpenSSL, что противоречит концепции bee2evp как динамически загружаемого плагина для OpenSSL.
Получение параметров в EVP-интерфейсе реализовано функциями, принимающими имя алгоритма как параметр, например EVP_get_cipherbyname("belt-ecb128").
Следует отметить, что внутри OpenSSL такие функции реализованы и стали частью API, но в плагинах, например gost-engine, они отсутствуют.
Если такие функции не используются внутри bee2evp, то лучше их удалить.
В bee2evp для статических объектов криптопримитивов реализованы функции, возвращающие ссылки на такие объекты.
Например,
Вызов такой функции невозможен через EVP-интерфейс, а для вызова напрямую необходимо статически подключать в вызывающую программу и bee2evp, и OpenSSL, что противоречит концепции bee2evp как динамически загружаемого плагина для OpenSSL.
Получение параметров в EVP-интерфейсе реализовано функциями, принимающими имя алгоритма как параметр, например
EVP_get_cipherbyname("belt-ecb128").Следует отметить, что внутри OpenSSL такие функции реализованы и стали частью API, но в плагинах, например
gost-engine, они отсутствуют.Если такие функции не используются внутри bee2evp, то лучше их удалить.