|
| | SecKey ()=delete |
| |
| | ~SecKey () override=default |
| |
| | SecKey (const Context &_context) |
| |
| bool | operator== (const SecKey &other) const |
| |
| bool | operator!= (const SecKey &other) const |
| |
| void | clear () override |
| | Clear all secret-key data. More...
|
| |
| long | ImportSecKey (const DoubleCRT &sKey, double bound, long ptxtSpace=0, long maxDegKswitch=3) |
| |
| long | GenSecKey (long hwt=0, long ptxtSpace=0, long maxDegKswitch=3) |
| |
| void | GenKeySWmatrix (long fromSPower, long fromXPower, long fromKeyIdx=0, long toKeyIdx=0, long ptxtSpace=0) |
| |
| void | Decrypt (NTL::ZZX &plaintxt, const Ctxt &ciphertxt) const |
| |
| template<typename Scheme > |
| void | Decrypt (Ptxt< Scheme > &plaintxt, const Ctxt &ciphertxt) const |
| | Decrypt a ciphertext into a plaintext. More...
|
| |
| void | Decrypt (NTL::ZZX &plaintxt, const Ctxt &ciphertxt, NTL::ZZX &f) const |
| | Debugging version, returns in f the polynomial before reduction modulo the ptxtSpace. More...
|
| |
| long | skEncrypt (Ctxt &ctxt, const NTL::ZZX &ptxt, long ptxtSpace, long skIdx) const |
| | Symmetric encryption using the secret key. More...
|
| |
| long | skEncrypt (Ctxt &ctxt, const zzX &ptxt, long ptxtSpace, long skIdx) const |
| |
| long | Encrypt (Ctxt &ciphertxt, const NTL::ZZX &plaintxt, long ptxtSpace=0) const override |
| |
| long | Encrypt (Ctxt &ciphertxt, const zzX &plaintxt, long ptxtSpace=0) const override |
| |
| long | genRecryptData () |
| | Generate bootstrapping data if needed, returns index of key. More...
|
| |
| friend | void ::helib::writeSecKeyBinary (std::ostream &str, const SecKey &sk) |
| |
| friend | void ::helib::readSecKeyBinary (std::istream &str, SecKey &sk) |
| |
| template<> |
| void | Decrypt (Ptxt< BGV > &plaintxt, const Ctxt &ciphertxt) const |
| |
| template<> |
| void | Decrypt (Ptxt< CKKS > &plaintxt, const Ctxt &ciphertxt) const |
| |
| | PubKey () |
| | This constructor thorws run-time error if activeContext=nullptr. More...
|
| |
| | PubKey (const Context &_context) |
| |
| | PubKey (const PubKey &other) |
| | Copy constructor. More...
|
| |
| virtual | ~PubKey ()=default |
| | Default destructor. More...
|
| |
| bool | operator== (const PubKey &other) const |
| |
| bool | operator!= (const PubKey &other) const |
| |
| const Context & | getContext () const |
| |
| long | getPtxtSpace () const |
| |
| bool | keyExists (long keyID) const |
| |
| double | getSKeyBound (long keyID=0) const |
| | The size of the secret key. More...
|
| |
| bool | isReachable (long k, long keyID=0) const |
| | Is it possible to re-linearize the automorphism X -> X^k See Section 3.2.2 in the design document (KeySwitchMap) More...
|
| |
| void | setKeySwitchMap (long keyId=0) |
| | Compute the reachability graph of key-switching matrices See Section 3.2.2 in the design document (KeySwitchMap) More...
|
| |
| long | getKSStrategy (long dim) const |
| | get KS strategy for dimension dim dim == -1 is Frobenius More...
|
| |
| void | setKSStrategy (long dim, int val) |
| | set KS strategy for dimension dim dim == -1 is Frobenius More...
|
| |
| long | Encrypt (Ctxt &ciphertxt, const NTL::ZZX &plaintxt, long ptxtSpace, bool highNoise) const |
| |
| long | Encrypt (Ctxt &ciphertxt, const zzX &plaintxt, long ptxtSpace, bool highNoise) const |
| |
| void | CKKSencrypt (Ctxt &ciphertxt, const NTL::ZZX &plaintxt, double ptxtSize=1.0, double scaling=0.0) const |
| |
| void | CKKSencrypt (Ctxt &ciphertxt, const zzX &plaintxt, double ptxtSize=1.0, double scaling=0.0) const |
| |
| template<typename Scheme > |
| long | Encrypt (Ctxt &ciphertxt, const Ptxt< Scheme > &plaintxt, long ptxtSpace=0) const |
| | Encrypts a plaintext into a ciphertext. More...
|
| |
| double | securityLevel () const |
| | An estimate for the security level. The estimated security level for the "worst" secret-key associated with this public-key object. The security estimate is determined by the key's weight and the context parameters. More...
|
| |
| bool | isCKKS () const |
| |
| bool | isBootstrappable () const |
| |
| void | reCrypt (Ctxt &ctxt) const |
| |
| void | thinReCrypt (Ctxt &ctxt) const |
| |
| friend | void ::helib::writePubKeyBinary (std::ostream &str, const PubKey &pk) |
| |
| friend | void ::helib::readPubKeyBinary (std::istream &str, PubKey &pk) |
| |
| void | hackPtxtSpace (long p2r) |
| |
| template<> |
| long | Encrypt (Ctxt &ciphertxt, const Ptxt< BGV > &plaintxt, long ptxtSpace) const |
| |
| template<> |
| long | Encrypt (Ctxt &ciphertxt, const Ptxt< CKKS > &plaintxt, UNUSED long ptxtSpace) const |
| |
| const std::vector< KeySwitch > & | keySWlist () const |
| |
| const KeySwitch & | getKeySWmatrix (const SKHandle &from, long toID=0) const |
| | Find a key-switching matrix by its indexes. If no such matrix exists it returns a dummy matrix with toKeyID==-1. More...
|
| |
| const KeySwitch & | getKeySWmatrix (long fromSPower, long fromXPower, long fromID=0, long toID=0) const |
| |
| bool | haveKeySWmatrix (const SKHandle &from, long toID=0) const |
| |
| bool | haveKeySWmatrix (long fromSPower, long fromXPower, long fromID=0, long toID=0) const |
| |
| const KeySwitch & | getAnyKeySWmatrix (const SKHandle &from) const |
| | Is there a matrix from this key to any base key? More...
|
| |
| bool | haveAnyKeySWmatrix (const SKHandle &from) const |
| |
| const KeySwitch & | getNextKSWmatrix (long fromXPower, long fromID=0) const |
| | Get the next matrix to use for multi-hop automorphism See Section 3.2.2 in the design document. More...
|
| |