Код: Выделить всё
StatusOr CreateGroup(int curve_id) {
auto ec_group_ptr = EC_GROUP_new_by_curve_name(curve_id);
// If this fails, this is usually due to an invalid curve id.
if (ec_group_ptr == nullptr) {
return InvalidArgumentError(
absl::StrCat("ECGroup::CreateGroup() - Could not create group. ",
OpenSSLErrorString()));
}
return ECGroup::ECGroupPtr(ec_group_ptr);
}
Код: Выделить всё
EC_GROUP_new_by_curve_nameМои вопросы:
- Могу ли я изменить код, чтобы заменить встроенные кривые на X25519 для моего протокола? Мой протокол использует его для ECDH.
- Если нет, то в чем проблема, кроме того, что X25519 не проверен по FIPS?
- Или, проще говоря, в чем вариант использования: мне следует использовать secp256r1/k1, а что за X25519?
Подробнее здесь: https://stackoverflow.com/questions/758 ... and-x25519