HElib  1.0
Implementing Homomorphic Encryption
 All Classes Files Functions Variables Friends Pages
Public Member Functions | Friends | List of all members
SKHandle Class Reference

A handle, describing the secret-key element that "matches" a part, of the form s^r(X^t). More...

#include <Ctxt.h>

Public Member Functions

 SKHandle (long newPowerOfS=0, long newPowerOfX=1, long newSecretKeyID=0)
 
void setBase (long newSecretKeyID=-1)
 Set powerOfS=powerOfX=1.
 
bool isBase (long ofKeyID=0) const
 Is powerOfS==powerOfX==1?
 
void setOne (long newSecretKeyID=-1)
 Set powerOfS=0, powerOfX=1.
 
bool isOne () const
 Is powerOfS==0?
 
bool operator== (const SKHandle &other) const
 
bool operator!= (const SKHandle &other) const
 
long getPowerOfS () const
 
long getPowerOfX () const
 
long getSecretKeyID () const
 
bool mul (const SKHandle &a, const SKHandle &b)
 Computes the "product" of two handles. More...
 

Friends

class Ctxt
 
istream & operator>> (istream &s, SKHandle &handle)
 

Detailed Description

A handle, describing the secret-key element that "matches" a part, of the form s^r(X^t).

Member Function Documentation

bool SKHandle::mul ( const SKHandle a,
const SKHandle b 
)
inline

Computes the "product" of two handles.

The key-ID's and powers of X must match, else an error state arises, which is represented using a key-ID of -1 and returning false. Also, note that inputs may alias outputs.

To detremine if the resulting handle canbe re-liearized using some key-switchingmatrices from the public key, use the method pubKey.haveKeySWmatrix(handle,handle.secretKeyID), from the class FHEPubKey in FHE.h


The documentation for this class was generated from the following file: