Struct RingGSWBTKey

Page Contents

Struct Documentation

struct lbcrypto::RingGSWBTKey

The struct for storing bootstrapping keys.

The 32-bit members hold the internal forms generated directly by KeyGen with internal32 requested, or narrowed by BTKeyGen or BTKeyLoad. When one is set, the corresponding 64-bit member stays null (or is released) and the 32-bit copy is the only resident one, so the key material is half size.

Public Functions

inline bool HasRefreshKey() const

Checks whether a refreshing key is present in either representation

Returns

true if the 64-bit or the 32-bit refreshing key is set

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 Members

RingGSWACCKey BSkey

refreshing key (64-bit form)

LWESwitchingKey KSkey

switching key (64-bit form)

LWEPublicKey Pkey

public key

RingGSWACCKey32 BSkey32

refreshing key in the 32-bit internal form, null when BSkey is resident

LWESwitchingKey32 KSkey32

switching key in the 32-bit internal form, null when KSkey is resident

Public Static Functions

static inline uint32_t SerializedVersion()