9#include <userver/crypto/basic_types.hpp>
10#include <userver/utils/strong_typedef.hpp>
12USERVER_NAMESPACE_BEGIN
23 using NativeType = EVP_PKEY;
35 PublicKey() =
default;
37 NativeType* GetNative()
const noexcept {
return pkey_.get(); }
38 explicit operator
bool()
const noexcept {
return !!pkey_; }
63 explicit PublicKey(std::shared_ptr<NativeType> pkey) : pkey_(std::move(pkey)) {}
65 std::shared_ptr<NativeType> pkey_;