Index
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form
A
- add(ElGamal_Ciphertext, ElGamal_Ciphertext, ElGamalPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Adds two ciphertexts in additive mode.
- add(BigInteger, BigInteger, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
returns the sum of the two DGK encrypted values Note: The result is still encrypted Warning: If the sum exceeds N, it is subject to N
- add(BigInteger, BigInteger, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Performs homomorphic addition of two Paillier encrypted values.
- add_plaintext(BigInteger, long, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
returns the sum of the DGK encrypted value and plaintext value Warning: If the sum exceeds u, it is subject to mod u
- add_plaintext(BigInteger, BigInteger, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
returns the sum of the DGK encrypted value and plaintext value Warning: If the sum exceeds u, it is subject to mod u
- add_plaintext(BigInteger, BigInteger, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Performs homomorphic addition of a Paillier encrypted value and a plaintext value.
- addition(boolean) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_elgamal
-
Performs addition or subtraction to get the encrypted value of two blinded encrypted values
- addition(ElGamal_Ciphertext, ElGamal_Ciphertext) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_elgamal
-
Performs addition on two encrypted values from alice.
- additive - Variable in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPublicKey
-
Indicates whether additive homomorphic encryption is enabled.
- alice - Class in edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
-
The
alice
class represents Alice in the Socialist Millionaire's Problem. - alice() - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Default constructor for the
alice
class. - alice(Socket) - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Constructor for the
alice
class that accepts a client socket. - alice_elgamal - Class in edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
-
Represents Alice's implementation of the ElGamal protocol for secure computation.
- alice_elgamal() - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_elgamal
-
Constructs an instance of `alice_elgamal`.
- alice_interface - Interface in edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
-
Interface defining the operations for Alice in the Socialist Millionaires' Problem (SMP) protocol.
- alice_joye - Class in edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
-
Represents Alice's implementation of the Joye and Salehi protocol for secure computation.
- alice_joye() - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_joye
-
Default constructor for the `alice_joye` class.
- alice_veugen - Class in edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
-
See the papers "Improving the DGK comparison protocol" and Correction to ”Improving the DGK comparison protocol” by Thjis Veugen, You can find these in the papers directory! Represents Alice's implementation of the Veugen protocol for secure comparison.
- alice_veugen() - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_veugen
-
Constructs an instance of `alice_veugen`.
B
- BILLION - Static variable in interface edu.fiu.adwise.homomorphic_encryption.misc.CipherConstants
-
The number of nanoseconds in one second, used for time tracking.
- bit(BigInteger, long) - Static method in class edu.fiu.adwise.homomorphic_encryption.misc.NTL
-
Retrieves the bit at position
k
of the absolute value ofa
. - bob - Class in edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
-
The
bob
class represents Bob in the Socialist Millionaire's Problem. - bob(KeyPair, KeyPair) - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
Constructs a Bob instance with two key pairs.
- bob(KeyPair, KeyPair, KeyPair) - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
Constructs a Bob instance with three key pairs.
- bob_elgamal - Class in edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
-
Represents Bob's implementation of the multi-party protocols for secure computation with ElGamal cryptography.
- bob_elgamal(KeyPair, KeyPair, KeyPair) - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_elgamal
-
Constructs a `bob_elgamal` instance with three key pairs.
- bob_interface - Interface in edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
-
Interface defining the operations for Bob in the Socialist Millionaires' Problem (SMP) protocol.
- bob_joye - Class in edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
-
Represents Bob's implementation of the Joye and Salehi protocol for secure comparison.
- bob_joye(KeyPair, KeyPair) - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_joye
-
Constructs a `bob_joye` instance with two key pairs.
- bob_joye(KeyPair, KeyPair, KeyPair) - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_joye
-
Constructs a `bob_joye` instance with three key pairs.
- bob_veugen - Class in edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
-
See the papers "Improving the DGK comparison protocol" and Correction to ”Improving the DGK comparison protocol” by Thjis Veugen, You can find these in the papers directory! Represents Bob's implementation of the Veugen protocol for secure comparison.
- bob_veugen(KeyPair, KeyPair) - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_veugen
-
Constructs a `bob_veugen` instance with two key pairs.
- bob_veugen(KeyPair, KeyPair, KeyPair) - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_veugen
-
Constructs a `bob_veugen` instance with three key pairs.
C
- CERTAINTY - Static variable in interface edu.fiu.adwise.homomorphic_encryption.misc.CipherConstants
-
The certainty parameter for primality testing algorithms.
- CipherConstants - Interface in edu.fiu.adwise.homomorphic_encryption.misc
-
This interface defines constants used across various cryptographic operations, particularly in the context of homomorphic encryption schemes.
- compute_c(BigInteger, BigInteger[], BigInteger[], int, List<Integer>) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_joye
-
Computes the array of encrypted values (C) used in the Joye protocol.
- compute_delta_a(BigInteger, int) - Static method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_joye
-
Computes the delta value (delta_a) for Alice based on the Hamming weight of the input.
- compute_delta_b(BigInteger[]) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
Computes the delta value (deltaB) for Bob based on the decrypted values in C.
D
- decrypt(ElGamal_Ciphertext, ElGamalPrivateKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Decrypts a ciphertext using the ElGamal private key.
- decrypt(BigInteger[], GMPrivateKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.gm.GMCipher
-
Decrypts an array of Goldwasser-Micali encrypted bits.
- decrypt(BigInteger, DGKPrivateKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Compute DGK decryption c = g^m * h^r (mod n) c^vp (mod p) = g^{vp*m} (mod p), Because h^{vp} (mod p) = 1 Use the pre-computed hashmap to retrieve m.
- decrypt(BigInteger, PaillierPrivateKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Decrypts a ciphertext using the provided Paillier private key.
- DGK_Key - Interface in edu.fiu.adwise.homomorphic_encryption.dgk
-
Interface representing a DGK (Damgård-Geisler-Krøigaard) key.
- DGKKeyPairGenerator - Class in edu.fiu.adwise.homomorphic_encryption.dgk
-
This class is responsible for generating DGK key pairs (public and private keys) used in the DGK cryptosystem.
- DGKKeyPairGenerator() - Constructor for class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Default constructor for DGKKeyPairGenerator.
- DGKKeyPairGenerator(int, int, int) - Constructor for class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Initialize DGK Key pair generator and sets DGK parameters
- DGKOperations - Class in edu.fiu.adwise.homomorphic_encryption.dgk
-
DGKOperations is responsible for all the basic DGK functions.
- DGKOperations() - Constructor for class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
- DGKPrivateKey - Class in edu.fiu.adwise.homomorphic_encryption.dgk
-
Represents a DGK (Damgård-Geisler-Krøigaard) private key used for homomorphic encryption.
- DGKPrivateKey(BigInteger, BigInteger, BigInteger, BigInteger, DGKPublicKey) - Constructor for class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
Constructs a DGKPrivateKey using the provided private key parameters and public key.
- DGKPublicKey - Class in edu.fiu.adwise.homomorphic_encryption.dgk
-
Represents the public key for the DGK (Damgård-Geisler-Krøigaard) cryptosystem.
- DGKPublicKey(BigInteger, BigInteger, BigInteger, BigInteger, int, int, int) - Constructor for class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
-
Constructs a DGKPublicKey with all required parameters.
- divide(ElGamal_Ciphertext, ElGamal_Ciphertext, ElGamalPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Divides one ciphertext by another in multiplicative mode.
- divide(BigInteger, BigInteger, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Compute the division of the DGK cipher-text and a plaintext.
- divide(BigInteger, BigInteger, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Compute the division of the Paillier cipher-text and a plaintext.
- division(long) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_elgamal
-
Performs division on an encrypted value from alice by a given divisor by Bob.
- division(long) - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_interface
-
Performs division on an encrypted integer with alice.
- division(long) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
Please review Protocol 2 in the "Encrypted Integer Division" paper by Thjis Veugen Performs secure division of an encrypted value received from Alice by a given divisor.
- division(ElGamal_Ciphertext, long) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_elgamal
-
Performs division on an encrypted value x from alice by a given divisor from bob.
- division(BigInteger, long) - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_interface
-
Performs division on an encrypted integer.
- division(BigInteger, long) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Please review Protocol 2 in the "Encrypted Integer Division" paper by Thjis Veugen
E
- edu.fiu.adwise.homomorphic_encryption.dgk - package edu.fiu.adwise.homomorphic_encryption.dgk
- edu.fiu.adwise.homomorphic_encryption.elgamal - package edu.fiu.adwise.homomorphic_encryption.elgamal
- edu.fiu.adwise.homomorphic_encryption.gm - package edu.fiu.adwise.homomorphic_encryption.gm
- edu.fiu.adwise.homomorphic_encryption.misc - package edu.fiu.adwise.homomorphic_encryption.misc
- edu.fiu.adwise.homomorphic_encryption.paillier - package edu.fiu.adwise.homomorphic_encryption.paillier
- edu.fiu.adwise.homomorphic_encryption.socialistmillionaire - package edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
- EIGHT - Static variable in interface edu.fiu.adwise.homomorphic_encryption.misc.CipherConstants
-
The constant value 8, represented as a
BigInteger
. - ElGamal_Ciphertext - Class in edu.fiu.adwise.homomorphic_encryption.elgamal
-
Represents an ElGamal ciphertext consisting of two components: g^r and m * h^r (or g^m * h^r).
- ElGamal_Ciphertext(BigInteger, BigInteger) - Constructor for class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamal_Ciphertext
-
Constructs an ElGamal ciphertext with the given components.
- ElGamal_Key - Interface in edu.fiu.adwise.homomorphic_encryption.elgamal
-
Interface representing an ElGamal key.
- ElGamalCipher - Class in edu.fiu.adwise.homomorphic_encryption.elgamal
-
This class provides methods for encryption, decryption, and homomorphic operations using the ElGamal cryptosystem.
- ElGamalCipher() - Constructor for class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
- ElGamalKeyPairGenerator - Class in edu.fiu.adwise.homomorphic_encryption.elgamal
-
This class is responsible for generating ElGamal key pairs.
- ElGamalKeyPairGenerator(boolean) - Constructor for class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalKeyPairGenerator
-
Constructs an ElGamalKeyPairGenerator.
- ElGamalPrivateKey - Class in edu.fiu.adwise.homomorphic_encryption.elgamal
-
Represents the private key for the ElGamal encryption scheme.
- ElGamalPrivateKey(BigInteger, BigInteger, BigInteger, BigInteger, boolean) - Constructor for class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPrivateKey
-
Constructs an ElGamalPrivateKey with the specified parameters.
- ElGamalPublicKey - Class in edu.fiu.adwise.homomorphic_encryption.elgamal
-
Represents the public key for the ElGamal encryption scheme.
- ElGamalPublicKey(BigInteger, BigInteger, BigInteger, boolean) - Constructor for class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPublicKey
-
Constructs an ElGamalPublicKey with the specified parameters.
- ElGamalSignature - Class in edu.fiu.adwise.homomorphic_encryption.elgamal
-
This class provides methods for signing and verifying messages using the ElGamal signature scheme.
- ElGamalSignature() - Constructor for class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalSignature
- encrypt(long, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Encrypt plaintext with DGK Public Key Compute ciphertext = g^{m}h^{r} (mod n)
- encrypt(long, ElGamalPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Encrypts a plaintext message (long) using the ElGamal public key.
- encrypt(long, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Encrypts a plaintext represented as a
long
using the provided Paillier public key. - encrypt(BigInteger, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Encrypt plaintext with DGK Public Key Compute ciphertext = g^{m}h^{r} (mod n)
- encrypt(BigInteger, ElGamalPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Encrypts a plaintext message using the ElGamal public key.
- encrypt(BigInteger, GMPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.gm.GMCipher
-
Encrypts a BigInteger plaintext using the Goldwasser-Micali encryption scheme.
- encrypt(BigInteger, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Encrypts a plaintext using the provided Paillier public key.
- encrypt_bits(BigInteger) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
Encrypts the bits of a given plaintext value.
- encrypted_equals() - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_interface
-
Compares two encrypted integers for equality.
- encrypted_equals() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
.
- encrypted_equals(BigInteger, BigInteger) - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_interface
-
Compares two encrypted integers for equality.
- encrypted_equals(BigInteger, BigInteger) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Performs encrypted equality testing between two encrypted values
a
andb
. - encrypted_xor(BigInteger, BigInteger[]) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Computes the XOR operation between the bits of a plaintext value and an array of encrypted bits.
- equals(Object) - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
Compares this DGKPrivateKey with another object for equality.
- equals(Object) - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
-
Compares this DGKPublicKey with another object for equality.
- equals(Object) - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPrivateKey
-
Compares this private key with another object for equality.
- equals(Object) - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
Compares this public key with another object for equality.
F
- FIELD_SIZE - Static variable in interface edu.fiu.adwise.homomorphic_encryption.misc.CipherConstants
-
A prime number with 16 bits, used in ElGamal and DGK encryption schemes.
- FIVE - Static variable in interface edu.fiu.adwise.homomorphic_encryption.misc.CipherConstants
-
The constant value 5, represented as a
BigInteger
. - form_set_l(BigInteger, int, BigInteger[]) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_joye
-
Forms the set of indices (L) used in the Joye and Salehi protocol.
- FOUR - Static variable in interface edu.fiu.adwise.homomorphic_encryption.misc.CipherConstants
-
The constant value 4, represented as a
BigInteger
.
G
- generateKeyPair() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Generates a DGK key pair.
- generateKeyPair() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalKeyPairGenerator
-
Generates an ElGamal key pair.
- generateKeyPair() - Method in class edu.fiu.adwise.homomorphic_encryption.gm.GMKeyPairGenerator
-
Generates a key pair for the Goldwasser-Micali encryption scheme.
- generateKeyPair() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierKeyPairGenerator
-
Generates a Paillier key pair (public and private keys).
- generateXBitRandom(int) - Static method in class edu.fiu.adwise.homomorphic_encryption.misc.NTL
-
Generates a random n-bit positive number.
- get_bytes_sent() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Retrieves the total number of bytes sent during communication.
- getA() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamal_Ciphertext
-
Retrieves the first component of the ciphertext (g^r).
- getAlgorithm() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
Returns the algorithm name.
- getAlgorithm() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
- getAlgorithm() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPrivateKey
-
Returns the algorithm name.
- getAlgorithm() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPublicKey
-
Returns the algorithm name.
- getAlgorithm() - Method in class edu.fiu.adwise.homomorphic_encryption.gm.GMPrivateKey
-
Returns the algorithm name for this private key.
- getAlgorithm() - Method in class edu.fiu.adwise.homomorphic_encryption.gm.GMPublicKey
-
Returns the algorithm name for this public key.
- getAlgorithm() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPrivateKey
-
Returns the algorithm name for this key.
- getAlgorithm() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
Returns the algorithm name for this key.
- getB() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamal_Ciphertext
-
Retrieves the second component of the ciphertext (m * h^r or g^m * h^r).
- getDGKPublicKey() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Retrieves the DGK public key.
- getElGamalPublicKey() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Retrieves the ElGamal public key.
- getEncoded() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
Returns the encoded form of the key.
- getEncoded() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
- getEncoded() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPrivateKey
-
Returns the encoded form of the key.
- getEncoded() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPublicKey
-
Returns the encoded form of the key.
- getEncoded() - Method in class edu.fiu.adwise.homomorphic_encryption.gm.GMPrivateKey
-
Returns the encoded form of the private key.
- getEncoded() - Method in class edu.fiu.adwise.homomorphic_encryption.gm.GMPublicKey
-
Returns the encoded form of the public key.
- getEncoded() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPrivateKey
-
Returns the encoded form of the key.
- getEncoded() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
Returns the encoded form of the key.
- getFormat() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
Returns the format of the key.
- getFormat() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
- getFormat() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPrivateKey
-
Returns the format of the key.
- getFormat() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPublicKey
-
Returns the format of the key.
- getFormat() - Method in class edu.fiu.adwise.homomorphic_encryption.gm.GMPrivateKey
-
Returns the format of the encoded key.
- getFormat() - Method in class edu.fiu.adwise.homomorphic_encryption.gm.GMPublicKey
-
Returns the format of the encoded key.
- getFormat() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPrivateKey
-
Returns the format of the key encoding.
- getFormat() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
Returns the format of the key encoding.
- getK() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Gets the key size in bits.
- getKMin(List<ElGamal_Ciphertext>, int) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_elgamal
-
Retrieves the k smallest encrypted values from a list.
- getKValues(BigInteger[], int, boolean) - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_interface
-
Retrieves the k largest or smallest values from an array of encrypted integers.
- getKValues(BigInteger[], int, boolean) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Retrieves the k largest or smallest values from the input array using a bubble sort algorithm.
- getKValues(List<BigInteger>, int, boolean) - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_interface
-
Retrieves the k largest or smallest values from a list of encrypted integers.
- getKValues(List<BigInteger>, int, boolean) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Retrieves the k largest or smallest values from the input list using a bubble sort algorithm.
- getL() - Method in interface edu.fiu.adwise.homomorphic_encryption.dgk.DGK_Key
-
Retrieves the bit length \( l \) of the DGK key.
- getL() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Gets the size of plaintext.
- getL() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
Returns the bit length of plaintext values.
- getL() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
- getModulus() - Method in interface edu.fiu.adwise.homomorphic_encryption.paillier.PaillierKey
-
Retrieves the modulus used in the Paillier cryptosystem.
- getModulus() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPrivateKey
-
Retrieves the modulus used in the Paillier cryptosystem.
- getModulus() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
Retrieves the modulus used in the Paillier cryptosystem.
- getN() - Method in interface edu.fiu.adwise.homomorphic_encryption.dgk.DGK_Key
-
Retrieves the modulus \( n \) associated with the DGK key.
- getN() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
Returns the modulus of the key.
- getN() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
- getN() - Method in interface edu.fiu.adwise.homomorphic_encryption.gm.GMKey
-
Retrieves the modulus (n) associated with the GM key.
- getN() - Method in class edu.fiu.adwise.homomorphic_encryption.gm.GMPrivateKey
-
Retrieves the modulus \( n \) associated with this private key.
- getN() - Method in class edu.fiu.adwise.homomorphic_encryption.gm.GMPublicKey
-
Retrieves the modulus \( n \) associated with this public key.
- getN() - Method in interface edu.fiu.adwise.homomorphic_encryption.paillier.PaillierKey
-
Retrieves the value of n, which is part of the Paillier key.
- getN() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPrivateKey
-
Retrieves the value of n, which is part of the Paillier key.
- getN() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
Retrieves the value of n, which is part of the Paillier key.
- getObjectSize(Object) - Static method in class edu.fiu.adwise.homomorphic_encryption.misc.InstrumentationAgent
-
Returns the size of the specified object in bytes.
- getP() - Method in interface edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamal_Key
-
Retrieves the prime modulus \( p \) associated with the key.
- getP() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPrivateKey
-
Returns the prime modulus p.
- getP() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPublicKey
-
Returns the prime modulus.
- getPaillierPublicKey() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Retrieves the Paillier public key.
- getPrime(int, Random) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalKeyPairGenerator
-
Return a prime p = 2 * p' + 1
- getT() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Gets the security parameter.
- getT() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
- getu() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
- getU() - Method in interface edu.fiu.adwise.homomorphic_encryption.dgk.DGK_Key
-
Retrieves the value of \( u \), a parameter associated with the DGK key.
- getU() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
Returns the upper bound for plaintext values.
- getU() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
- GMCipher - Class in edu.fiu.adwise.homomorphic_encryption.gm
-
This class implements the Goldwasser-Micali (GM) encryption scheme.
- GMCipher() - Constructor for class edu.fiu.adwise.homomorphic_encryption.gm.GMCipher
- GMKey - Interface in edu.fiu.adwise.homomorphic_encryption.gm
-
Interface representing a Goldwasser-Micali (GM) key.
- GMKeyPairGenerator - Class in edu.fiu.adwise.homomorphic_encryption.gm
-
This class is responsible for generating key pairs for the Goldwasser-Micali (GM) encryption scheme.
- GMKeyPairGenerator() - Constructor for class edu.fiu.adwise.homomorphic_encryption.gm.GMKeyPairGenerator
- GMPrivateKey - Class in edu.fiu.adwise.homomorphic_encryption.gm
-
This class represents the private key for the Goldwasser-Micali (GM) encryption scheme.
- GMPublicKey - Class in edu.fiu.adwise.homomorphic_encryption.gm
-
This class represents the public key for the Goldwasser-Micali (GM) encryption scheme.
- gr - Variable in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamal_Ciphertext
-
The first component of the ciphertext, g^r.
H
- hamming_weight(BigInteger) - Static method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_joye
-
Computes the Hamming weight of a given value.
- HomomorphicException - Exception in edu.fiu.adwise.homomorphic_encryption.misc
-
This class represents a custom exception for errors related to homomorphic encryption operations.
- HomomorphicException(String) - Constructor for exception edu.fiu.adwise.homomorphic_encryption.misc.HomomorphicException
-
Constructs a new
HomomorphicException
with the specified detail message. - hrgm - Variable in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamal_Ciphertext
-
The second component of the ciphertext, m * h^r or g^m * h^r.
I
- initialize(int, SecureRandom) - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Initializes the DGK key pair generator with the specified key size and random generator.
- initialize(int, SecureRandom) - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalKeyPairGenerator
-
Initializes the key pair generator with the specified key size and random number generator.
- initialize(int, SecureRandom) - Method in class edu.fiu.adwise.homomorphic_encryption.gm.GMKeyPairGenerator
-
Initializes the key pair generator with the specified key size and random number generator.
- initialize(int, SecureRandom) - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierKeyPairGenerator
-
Initializes the Paillier key pair generator with the specified key size and random number generator.
- InstrumentationAgent - Class in edu.fiu.adwise.homomorphic_encryption.misc
-
This class serves as a Java instrumentation agent, allowing the measurement of object sizes at runtime.
- InstrumentationAgent() - Constructor for class edu.fiu.adwise.homomorphic_encryption.misc.InstrumentationAgent
- isDGK() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Checks if DGK encryption mode is enabled.
J
- jacobi(BigInteger, BigInteger) - Static method in class edu.fiu.adwise.homomorphic_encryption.misc.NTL
-
Computes the Jacobi symbol (a/n).
K
- key_size - Variable in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
The size of the key in bits.
- KEY_SIZE - Static variable in interface edu.fiu.adwise.homomorphic_encryption.misc.CipherConstants
-
The default key size (in bits) for cryptographic operations.
M
- main(String[]) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Main method to generate and save DGK key pairs.
- main(String[]) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierKeyPairGenerator
-
Main method to generate and save Paillier public and private keys to files.
- multiplication() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_elgamal
-
Performs multiplication on blinded encrypted values from alice.
- multiplication() - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_interface
-
Performs multiplication on encrypted integers with alice.
- multiplication() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
See the paper "Correction of a Secure Comparison Protocol for Encrypted Integers in IEEE WIFS 2012 (Short Paper)" This performs secure multiplication of two encrypted values.
- multiplication(ElGamal_Ciphertext, ElGamal_Ciphertext) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_elgamal
-
Performs multiplication on two encrypted values.
- multiplication(BigInteger, BigInteger) - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_interface
-
Performs multiplication on two encrypted integers.
- multiplication(BigInteger, BigInteger) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
See the paper "Correction of a Secure Comparison Protocol for Encrypted Integers in IEEE WIFS 2012 (Short Paper)" Performs secure multiplication of two encrypted values using homomorphic encryption.
- multiply(ElGamal_Ciphertext, ElGamal_Ciphertext, ElGamalPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Multiplies two ciphertexts in multiplicative mode.
- multiply(BigInteger, long, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Compute the DGK encrypted value of ciphertext multiplied by the plaintext.
- multiply(BigInteger, long, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Computes the Paillier encrypted value of a ciphertext multiplied by a scalar.
- multiply(BigInteger, BigInteger, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Compute the DGK encrypted value of ciphertext multiplied by the plaintext.
- multiply(BigInteger, BigInteger, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Computes the Paillier encrypted value of a ciphertext multiplied by a plaintext.
- multiply_scalar(ElGamal_Ciphertext, long, ElGamalPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Multiplies a ciphertext by a scalar value (long) in additive mode.
- multiply_scalar(ElGamal_Ciphertext, BigInteger, ElGamalPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Multiplies a ciphertext by a scalar value in additive mode.
N
- NEG_ONE - Static variable in interface edu.fiu.adwise.homomorphic_encryption.misc.CipherConstants
-
The constant value -1, represented as a
BigInteger
. - NTL - Class in edu.fiu.adwise.homomorphic_encryption.misc
-
This class provides utility methods for cryptographic operations, inspired by the NTL (Number Theory Library).
- NTL() - Constructor for class edu.fiu.adwise.homomorphic_encryption.misc.NTL
O
- ONE - Variable in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
-
The encrypted representation of the value 1.
P
- PaillierCipher - Class in edu.fiu.adwise.homomorphic_encryption.paillier
-
This class implements the Paillier cryptosystem, which supports homomorphic encryption operations on
BigInteger
values. - PaillierCipher() - Constructor for class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
- PaillierKey - Interface in edu.fiu.adwise.homomorphic_encryption.paillier
-
This interface represents a Paillier key used in the Paillier cryptosystem.
- PaillierKeyPairGenerator - Class in edu.fiu.adwise.homomorphic_encryption.paillier
-
This class is responsible for generating Paillier key pairs (public and private keys) used in the Paillier cryptosystem.
- PaillierKeyPairGenerator() - Constructor for class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierKeyPairGenerator
- PaillierPrivateKey - Class in edu.fiu.adwise.homomorphic_encryption.paillier
-
This class represents a private key in the Paillier cryptosystem.
- PaillierPrivateKey(int, BigInteger, BigInteger, BigInteger, BigInteger, BigInteger, BigInteger) - Constructor for class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPrivateKey
-
Constructs a Paillier private key with the specified parameters.
- PaillierPublicKey - Class in edu.fiu.adwise.homomorphic_encryption.paillier
-
Represents the public key for the Paillier cryptosystem.
- PaillierPublicKey(int, BigInteger, BigInteger, BigInteger) - Constructor for class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
Constructs a Paillier public key with the specified parameters.
- PaillierSignature - Class in edu.fiu.adwise.homomorphic_encryption.paillier
-
This class provides methods for signing and verifying messages using the Paillier cryptosystem.
- PaillierSignature() - Constructor for class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierSignature
- POSMOD(BigInteger, BigInteger) - Static method in class edu.fiu.adwise.homomorphic_encryption.misc.NTL
-
Computes the positive modulus of a number.
- premain(String, Instrumentation) - Static method in class edu.fiu.adwise.homomorphic_encryption.misc.InstrumentationAgent
-
The premain method is called by the JVM before the application's main method.
- private_equals(BigInteger) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Performs an equality check as part of the encrypted equality testing protocol.
- Protocol1(BigInteger) - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_interface
-
Compares Alice's private integer with Bob's private integer.
- Protocol1(BigInteger) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_joye
-
Executes Protocol 1 for secure comparison of a single unencrypted value with another unencrypted value from Bob.
- Protocol1(BigInteger) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_veugen
-
See the paper "Improving the DGK comparison protocol", this implements Protocol 3.
- Protocol1(BigInteger) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Executes Protocol 1 to securely compute whether
x <= y
in a two-party setting. - Protocol1(BigInteger) - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_interface
-
Compares Alice's private integer with Bob's private integer.
- Protocol1(BigInteger) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
Please review "Improving the DGK comparison protocol" - Protocol 1 Nicely enough; this is the same thing Bob needs to do for Veugen, Joye and checking if two encrypted numbers are equal! This is the original protocol from DGK, the improved versions are in alice_veugen.
- Protocol2() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_elgamal
-
See the papers "Improving the DGK comparison protocol" and Correction to ”Improving the DGK comparison protocol” by Thjis Veugen, You can find these in the papers directory! Sorts a list of encrypted numbers using Protocol 4 (see the Veugen papers).
- Protocol2() - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_interface
-
Compares two encrypted integers and determines if the first is greater than or equal to the second.
- Protocol2() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_joye
-
See the paper "Private yet Efficient Decision Tree Evaluation" paper link Read Section 3.2 of the paper/Figure 2 for Bob Executes Protocol 2 for secure comparison of encrypted values.
- Protocol2() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_veugen
-
See the paper Correction to "Improving the DGK comparison protocol", this implements Protocol 3.
- Protocol2() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
Please review "Improving the DGK comparison protocol" - Protocol 2 Executes Protocol 2 for secure comparison.
- Protocol2(BigInteger, BigInteger) - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_interface
-
Compares two encrypted integers and determines if the first is greater than or equal to the second.
- Protocol2(BigInteger, BigInteger) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_joye
-
Executes Protocol 2 for secure comparison between two encrypted values.
- Protocol2(BigInteger, BigInteger) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_veugen
-
See the paper Corrrection to "Improving the DGK comparison protocol", this implements Protocol 3, Steps 4a - 4j This is Veugen's improved encrypted integer comparison protocol from DGK
- Protocol2(BigInteger, BigInteger) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Executes Protocol 2 to securely compute whether X >= Y in a two-party setting.
- Protocol4(ElGamal_Ciphertext, ElGamal_Ciphertext) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_elgamal
-
See the paper Correction to "Improving the DGK comparison protocol", this implements Protocol 3.
Q
- quadratic_non_residue(BigInteger, BigInteger) - Static method in class edu.fiu.adwise.homomorphic_encryption.misc.NTL
-
Finds a quadratic non-residue modulo
p
andq
.
R
- RandomBnd(BigInteger) - Static method in class edu.fiu.adwise.homomorphic_encryption.misc.NTL
-
Generates a pseudo-random number in the range [0..n-1].
- readBoolean() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Reads a boolean value from the input stream.
- readInt() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Reads an integer value from the input stream.
- readKey(String) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
Deserializes a DGK private key from a file.
- readKey(String) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
-
Deserializes a DGKPublicKey from a file.
- readKey(String) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPrivateKey
-
Reads a private key from a file.
- readKey(String) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
Reads a public key from a file.
- readObject() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Reads an object from the input stream.
- receivePublicKeys() - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_interface
-
Receives public keys from the other party.
- receivePublicKeys() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Receives public keys from Bob and sets them for Alice.
- rnd - Static variable in interface edu.fiu.adwise.homomorphic_encryption.misc.CipherConstants
-
A secure random number generator used for cryptographic purposes.
- run() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
-
Generates the lookup tables for g and h.
- run() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPrivateKey
-
Runs the decryption table generation in a separate thread.
S
- sendPublicKeys() - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_interface
-
Sends public keys to alice.
- sendPublicKeys() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
Sends Bob's public keys (DGK, Paillier, and ElGamal) to Alice.
- set_additive(boolean) - Method in interface edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamal_Key
-
Sets whether the key supports additive homomorphism.
- set_additive(boolean) - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPrivateKey
-
Sets whether additive homomorphic encryption is enabled.
- set_additive(boolean) - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPublicKey
-
Sets whether the key is used for additive homomorphism.
- set_dgk_private_key(DGKPrivateKey) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Sets the DGK private key for Alice.
- set_socket(Socket) - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice_interface
-
Sets the socket for communication.
- set_socket(Socket) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.alice
-
Sets up the socket for communication with Bob using a standard
Socket
. - set_socket(Socket) - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_interface
-
Sets the socket for communication.
- set_socket(Socket) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
Sets the socket for communication with Alice.
- setDGKMode(boolean) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Sets the DGK encryption mode.
- setDGKPublicKey(DGKPublicKey) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Sets the DGK public key and precomputes 2^l.
- setElGamalPublicKey(ElGamalPublicKey) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Sets the ElGamal public key.
- setK(int) - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Sets the key size in bits.
- setL(int) - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Sets the size of plaintext.
- setPaillierPublicKey(PaillierPublicKey) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Sets the Paillier public key.
- setT(int) - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Sets the security parameter.
- sign(BigInteger, ElGamalPrivateKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalSignature
-
Signs a message using the ElGamal private key.
- sign(BigInteger, PaillierPrivateKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierSignature
-
Signs a message using the provided Paillier private key.
- socialist_millionaires - Class in edu.fiu.adwise.homomorphic_encryption.socialistmillionaire
-
Abstract class representing the Socialist Millionaires' Problem (SMP) protocol.
- socialist_millionaires() - Constructor for class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
- sort() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_elgamal
-
See the papers "Improving the DGK comparison protocol" and Correction to ”Improving the DGK comparison protocol” by Thjis Veugen, You can find these in the papers directory! Sorts a list of encrypted numbers using Protocol 4 (see the Veugen papers).
- sort() - Method in interface edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob_interface
-
Sorts a collection of encrypted integers.
- sort() - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.bob
-
Sorts a list of encrypted numbers using Protocol 2.
- subtract(ElGamal_Ciphertext, ElGamal_Ciphertext, ElGamalPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Subtracts one ciphertext from another in additive mode.
- subtract(BigInteger, BigInteger, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Subtract ciphertext1 and ciphertext 2
- subtract(BigInteger, BigInteger, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Performs homomorphic subtraction of two Paillier encrypted values.
- subtract_ciphertext(BigInteger, BigInteger, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
y - [x] = y + [-x] = [-x] + y Computes encrypted DGK value of the cipher-text subtracted by the plaintext
- subtract_ciphertext(BigInteger, BigInteger, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Computes the encrypted Paillier value of the plaintext subtracted by the ciphertext.
- subtract_plaintext(BigInteger, BigInteger, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Computes encrypted DGK value of the cipher-text subtracted by the plaintext Warning: If the difference goes negative, add u.
- subtract_plaintext(BigInteger, BigInteger, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Computes the encrypted Paillier value of the ciphertext subtracted by the plaintext.
- sum(ElGamal_Ciphertext[], ElGamalPublicKey, int) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Computes the sum of an array of ciphertexts in additive mode.
- sum(BigInteger[], DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Compute the sum of the encrypted DGK values
- sum(BigInteger[], DGKPublicKey, int) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Compute the sum of the encrypted DGK values
- sum(BigInteger[], PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Compute the sum of the encrypted Paillier values
- sum(BigInteger[], PaillierPublicKey, int) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Compute the sum of the encrypted Paillier values
- sum(List<ElGamal_Ciphertext>, ElGamalPublicKey, int) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Computes the sum of a list of ciphertexts in additive mode.
- sum(List<BigInteger>, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Compute the sum of the encrypted DGK values
- sum(List<BigInteger>, DGKPublicKey, int) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Compute the sum of the encrypted DGK values
- sum(List<BigInteger>, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Compute the encrypted sum of all Paillier values
- sum(List<BigInteger>, PaillierPublicKey, int) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Note: Compute the sum of all values in the list of Paillier Encrypted values.
- sum_product(ElGamal_Ciphertext[], Long[], ElGamalPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Computes the sum of products of ciphertexts and plaintexts in additive mode.
- sum_product(BigInteger[], Long[], DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Compute the sum-product.
- sum_product(BigInteger[], Long[], PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Compute the sum-product.
- sum_product(List<ElGamal_Ciphertext>, List<Long>, ElGamalPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalCipher
-
Computes the sum of products of the ciphertexts and plaintexts in additive mode.
- sum_product(List<BigInteger>, List<Long>, DGKPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKOperations
-
Compute the sum-product.
- sum_product(List<BigInteger>, List<Long>, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierCipher
-
Compute the sum-product.
T
- THREE - Static variable in interface edu.fiu.adwise.homomorphic_encryption.misc.CipherConstants
-
The constant value 3, represented as a
BigInteger
. - toString() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKKeyPairGenerator
-
Returns a string representation of the DGKKeyPairGenerator.
- toString() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
Returns a string representation of the public key parameters.
- toString() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
- toString() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPrivateKey
-
Returns a string representation of the private key.
- toString() - Method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalPublicKey
-
Returns a string representation of the ElGamal public key.
- toString() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPrivateKey
-
Returns a string representation of the private key, omitting secret parameters.
- toString() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
Returns a string representation of the public key.
- TWO - Static variable in interface edu.fiu.adwise.homomorphic_encryption.misc.CipherConstants
-
The constant value 2, represented as a
BigInteger
.
V
- v - Variable in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
The product of \( vp \) and \( vq \), used for decryption.
- verify(BigInteger, ElGamal_Ciphertext, ElGamalPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.elgamal.ElGamalSignature
-
Verifies a signed message using the ElGamal public key.
- verify(BigInteger, BigInteger, BigInteger, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierSignature
-
Verifies a Paillier signature using its individual components.
- verify(BigInteger, List<BigInteger>, PaillierPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierSignature
-
Verifies a signed message using the provided Paillier public key.
W
- writeBoolean(boolean) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Writes a boolean value to the output stream.
- writeInt(int) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Writes an integer value to the output stream.
- writeKey(String) - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPrivateKey
-
Serializes the private key to a file.
- writeKey(String) - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
-
Serializes the public key to a file.
- writeKey(String) - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPrivateKey
-
Writes the private key to a file.
- writeKey(String) - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
Writes the public key to a file.
- writeObject(Object) - Method in class edu.fiu.adwise.homomorphic_encryption.socialistmillionaire.socialist_millionaires
-
Writes an object to the output stream.
X
- xor(BigInteger[], BigInteger[], GMPublicKey) - Static method in class edu.fiu.adwise.homomorphic_encryption.gm.GMCipher
-
Performs a bitwise XOR operation on two arrays of Goldwasser-Micali encrypted bits.
Z
- ZERO - Variable in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
-
The encrypted representation of the value 0.
- ZERO() - Method in class edu.fiu.adwise.homomorphic_encryption.dgk.DGKPublicKey
- ZERO() - Method in class edu.fiu.adwise.homomorphic_encryption.paillier.PaillierPublicKey
-
Retrieves the encryption of zero using this public key.
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form