HEQueryCountMaster objects instantiate and run a distributed homomorphic query count computation; they're instantiated by non-cooperating parties (NCPs)

See also

HEQueryCountWorker() which goes hand-in-hand with this object

Super class

distcomp::QueryCountMaster -> HEQueryCountMaster

Public fields

pubkey

the master's public key visible to everyone

pubkey_bits

the number of bits in the public key (used for reconstructing public key remotely by serializing to character)

pubkey_n

the n for the public key used for reconstructing public key remotely

den

the denominator for rational arithmetic

den_bits

the number of bits in the denominator used for reconstructing denominator remotely

Methods

Public methods

Inherited methods

Method new()

Create a new HEQueryCountMaster object.

Usage

HEQueryCountMaster$new(defn, partyNumber, debug = FALSE)

Arguments

defn

the computation definition

partyNumber

the party number of the NCP that this object belongs to (1 or 2)

debug

a flag for debugging, default FALSE

Returns

a new HEQueryCountMaster object


Method setParams()

Set some parameters of the HEQueryCountMaster object for homomorphic computations

Usage

HEQueryCountMaster$setParams(pubkey_bits, pubkey_n, den_bits)

Arguments

pubkey_bits

the number of bits in public key

pubkey_n

the n for the public key

den_bits

the number of bits in the denominator (power of 2) used in rational approximations


Method kosher()

Check if inputs and state of object are sane. For future use

Usage

HEQueryCountMaster$kosher()

Returns

TRUE or FALSE


Method queryCount()

Run the distributed query count, associate it with a token, and return the result

Usage

HEQueryCountMaster$queryCount(token)

Arguments

token

a token to use as key

Returns

the partial result as a list of encrypted items with components int and frac


Method cleanup()

Cleanup the instance objects

Usage

HEQueryCountMaster$cleanup()


Method run()

Run the homomorphic encrypted distributed query count computation

Usage

HEQueryCountMaster$run(token)

Arguments

token

a token to use as key

Returns

the partial result as a list of encrypted items with components int and frac


Method clone()

The objects of this class are cloneable with this method.

Usage

HEQueryCountMaster$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.