Search Results

A concrete implementation of Encoder API for Helib's CKKS scheme. More...

#include <HelibCkksEncoder.h>

Inheritance diagram for helayers::HelibCkksEncoder:
helayers::AbstractEncoder

Public Member Functions

 HelibCkksEncoder (HelibCkksContext &he)
 
void setDecryptAddedNoiseEnabled (bool val) override
 
bool getDecryptAddedNoiseEnabled () const override
 
void setDecryptAddedNoisePrecision (int val) override
 
int getDecryptAddedNoisePrecision () const override
 
void encode (AbstractPlaintext &res, const std::vector< double > &vals, int chainIndex) const override
 
void encode (AbstractPlaintext &res, const std::vector< std::complex< double >> &vals, int chainIndex) const override
 
std::vector< double > decodeDouble (const AbstractPlaintext &src) const override
 
std::vector< std::complex< double > > decodeComplex (const AbstractPlaintext &src) const override
 
void encrypt (AbstractCiphertext &res, const AbstractPlaintext &src) const override
 
void decrypt (AbstractPlaintext &res, const AbstractCiphertext &src) const override
 
void encodeEncrypt (AbstractCiphertext &res, const std::vector< double > &vals, int chainIndex) const override
 
void encodeEncrypt (AbstractCiphertext &res, const std::vector< std::complex< double >> &vals, int chainIndex) const override
 
std::vector< double > decryptDecodeDouble (const AbstractCiphertext &src) const override
 
std::vector< std::complex< double > > decryptDecodeComplex (const AbstractCiphertext &src) const override
 
- Public Member Functions inherited from helayers::AbstractEncoder
 AbstractEncoder (const AbstractEncoder &src)=delete
 
AbstractEncoderoperator= (const AbstractEncoder &src)=delete
 
virtual void setDefaultScale (double scale)
 
virtual double getDefaultScale () const
 
virtual void restoreDefaultScale ()
 
virtual void encode (AbstractPlaintext &res, int val, int chainIndex) const
 
virtual void encode (AbstractPlaintext &res, double val, int chainIndex) const
 
virtual void encode (AbstractPlaintext &res, const std::vector< int > &vals, int chainIndex) const
 
virtual void encode (AbstractPlaintext &res, const std::vector< long > &vals, int chainIndex) const
 
virtual std::vector< int > decodeInt (const AbstractPlaintext &src) const
 
virtual std::vector< long > decodeLong (const AbstractPlaintext &src) const
 
virtual void encodeEncrypt (AbstractCiphertext &res, const std::vector< int > &vals, int chainIndex) const
 
virtual void encodeEncrypt (AbstractCiphertext &res, const std::vector< long > &vals, int chainIndex) const
 
virtual std::vector< int > decryptDecodeInt (const AbstractCiphertext &src) const
 
virtual std::vector< long > decryptDecodeLong (const AbstractCiphertext &src) const
 
virtual double assertEquals (const AbstractCiphertext &c, const std::string &title, const std::vector< int > &expectedVals, double eps, bool percent) const
 
virtual double assertEquals (const AbstractCiphertext &c, const std::string &title, const std::vector< long > &expectedVals, double eps, bool percent) const
 
virtual double assertEquals (const AbstractCiphertext &c, const std::string &title, const std::vector< double > &expectedVals, double eps, bool percent) const
 
virtual double assertEquals (const AbstractCiphertext &c, const std::string &title, const std::vector< std::complex< double >> &expectedVals, double eps, bool percent) const
 

Detailed Description

A concrete implementation of Encoder API for Helib's CKKS scheme.


The documentation for this class was generated from the following files:
  • /opt/IBM/FHE-distro/ML-HElib/src/helayers/hebase/helib/HelibCkksEncoder.h
  • /opt/IBM/FHE-distro/ML-HElib/src/helayers/hebase/helib/HelibCkksEncoder.cpp