java.lang.Object
org.apache.sysds.runtime.controlprogram.paramserv.homomorphicEncryption.SEALClient

public class SEALClient extends Object
  • Constructor Details

    • SEALClient

      public SEALClient(byte[] a)
  • Method Details

    • generatePartialPublicKey

      public PublicKey generatePartialPublicKey()
      generates a partial public key stores a partial private key corresponding to the partial public key in ctx
      Returns:
      the partial public key
    • setPublicKey

      public void setPublicKey(PublicKey public_key)
      sets the public key and stores it in ctx
      Parameters:
      public_key - the public key to set
    • encrypt

      public CiphertextMatrix encrypt(MatrixObject plaintext)
      encrypts one block of data with public key stored statically and returns it setPublicKey() must have been called before calling this
      Parameters:
      plaintext - the MatrixObject to encrypt
      Returns:
      the encrypted matrix
    • partiallyDecrypt

      public PlaintextMatrix partiallyDecrypt(CiphertextMatrix ciphertext)
      partially decrypts ciphertext with the partial private key. generatePartialPublicKey() must have been called before calling this function
      Parameters:
      ciphertext - the ciphertext to partially decrypt
      Returns:
      the partial decryption of ciphertext