HEMaster {distcomp}R Documentation

Create a HEMaster process for use in a distributed homomorphic encrypted (HE) computation

Description

HEMaster objects run a distributed computation based upon a definition file that encapsulates all information necessary to perform a computation. A master makes use of two non-cooperating parties which communicate with sites that perform the actual computations using local data.

Public fields

den

denominator for rational arithmetic

den_bits

number of bits for denominator for rational arithmetic

Methods

Public methods


Method new()

Create a HEMaster object to run homomorphic encrypted computation

Usage
HEMaster$new(defn)
Arguments
defn

the homomorphic computation definition

Returns

a HEMaster object


Method getNC_party()

Return a list of noncooperating parties (NCPs)

Usage
HEMaster$getNC_party()
Returns

a named list of length 2 of noncooperating party information


Method getPubkey()

Return the public key from the public private key pair

Usage
HEMaster$getPubkey()
Returns

an R6 Pubkey object


Method addNCP()

Add a noncooperating party to this master either using a url or an object in session for prototyping

Usage
HEMaster$addNCP(ncp_defn, url = NULL, ncpWorker = NULL)
Arguments
ncp_defn

the definition of the NCP

url

the url for the NCP; only one of url and ncpWorker should be non-null

ncpWorker

an instantiated worker object; only one of url and ncpWorker should be non-null


Method run()

Run a distributed homomorphic encrypted computation and return the result

Usage
HEMaster$run(debug = FALSE)
Arguments
debug

a flag for debugging, default FALSE

Returns

the result of the distributed homomorphic computation


Method clone()

The objects of this class are cloneable with this method.

Usage
HEMaster$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.

See Also

NCP()


[Package distcomp version 1.3-3 Index]