Template Class CryptoObject

Inheritance Relationships

Derived Types

Template Parameter Order

  1. typename Element

Class Documentation

template<typename Element>
class lbcrypto::CryptoObject

Inheritence diagram for lbcrypto::CryptoObject:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "5" [label="lbcrypto::EvalKeyRelinImpl< Element >" tooltip="lbcrypto::EvalKeyRelinImpl< Element >"] "7" [label="lbcrypto::PublicKeyImpl< Element >" tooltip="lbcrypto::PublicKeyImpl< Element >"] "4" [label="lbcrypto::EvalKeyImpl< Element >" tooltip="lbcrypto::EvalKeyImpl< Element >"] "6" [label="lbcrypto::PrivateKeyImpl< Element >" tooltip="lbcrypto::PrivateKeyImpl< Element >"] "1" [label="lbcrypto::CryptoObject< Element >" tooltip="lbcrypto::CryptoObject< Element >" fillcolor="#BFBFBF"] "3" [label="lbcrypto::Key< Element >" tooltip="lbcrypto::Key< Element >"] "2" [label="lbcrypto::CiphertextImpl< Element >" tooltip="lbcrypto::CiphertextImpl< Element >"] "5" -> "4" [dir=forward tooltip="public-inheritance"] "7" -> "3" [dir=forward tooltip="public-inheritance"] "4" -> "3" [dir=forward tooltip="public-inheritance"] "6" -> "3" [dir=forward tooltip="public-inheritance"] "3" -> "1" [dir=forward tooltip="public-inheritance"] "2" -> "1" [dir=forward tooltip="public-inheritance"] }

CryptoObject.

A class to aid in referring to the crypto context that an object belongs to

Subclassed by lbcrypto::CiphertextImpl< Element >, lbcrypto::Key< Element >

Public Functions

inline explicit CryptoObject(CryptoContext<Element> cc = nullptr, const std::string &tag = "")
inline CryptoObject(const CryptoObject &rhs)
inline CryptoObject(const CryptoObject &&rhs)
inline virtual ~CryptoObject()
inline const CryptoObject &operator=(const CryptoObject &rhs)
inline const CryptoObject &operator=(const CryptoObject &&rhs)
inline bool operator==(const CryptoObject &rhs) const
inline CryptoContext<Element> GetCryptoContext() const
const std::shared_ptr<CryptoParametersBase<Element>> GetCryptoParameters() const
const EncodingParams GetEncodingParameters() const
inline const std::string GetKeyTag() const
inline void SetKeyTag(const std::string &tag)
template<class Archive>
inline void save(Archive &ar, std::uint32_t const version) const
template<class Archive>
inline void load(Archive &ar, std::uint32_t const version)
inline std::string SerializedObjectName() const

Public Static Functions

static inline uint32_t SerializedVersion()

Protected Attributes

CryptoContext<Element> context
std::string keyTag