All Classes and Interfaces
Class
Description
The
alice
class represents Alice in the Socialist Millionaire's Problem.Represents Alice's implementation of the ElGamal protocol for secure computation.
Interface defining the operations for Alice in the Socialist Millionaires' Problem (SMP) protocol.
Represents Alice's implementation of the Joye and Salehi protocol for secure computation.
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.
The
bob
class represents Bob in the Socialist Millionaire's Problem.Represents Bob's implementation of the multi-party protocols for secure computation with ElGamal cryptography.
Interface defining the operations for Bob in the Socialist Millionaires' Problem (SMP) protocol.
Represents Bob's implementation of the Joye and Salehi protocol for secure comparison.
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.
This interface defines constants used across various cryptographic operations,
particularly in the context of homomorphic encryption schemes.
Interface representing a DGK (Damgård-Geisler-Krøigaard) key.
This class is responsible for generating DGK key pairs (public and private keys)
used in the DGK cryptosystem.
DGKOperations is responsible for all the basic DGK functions.
Represents a DGK (Damgård-Geisler-Krøigaard) private key used for homomorphic encryption.
Represents the public key for the DGK (Damgård-Geisler-Krøigaard) cryptosystem.
Represents an ElGamal ciphertext consisting of two components: g^r and m * h^r (or g^m * h^r).
Interface representing an ElGamal key.
This class provides methods for encryption, decryption, and homomorphic operations
using the ElGamal cryptosystem.
This class is responsible for generating ElGamal key pairs.
Represents the private key for the ElGamal encryption scheme.
Represents the public key for the ElGamal encryption scheme.
This class provides methods for signing and verifying messages using the ElGamal signature scheme.
This class implements the Goldwasser-Micali (GM) encryption scheme.
Interface representing a Goldwasser-Micali (GM) key.
This class is responsible for generating key pairs for the Goldwasser-Micali (GM) encryption scheme.
This class represents the private key for the Goldwasser-Micali (GM) encryption scheme.
This class represents the public key for the Goldwasser-Micali (GM) encryption scheme.
This class represents a custom exception for errors related to homomorphic encryption operations.
This class serves as a Java instrumentation agent, allowing the measurement of object sizes at runtime.
This class provides utility methods for cryptographic operations, inspired by the NTL (Number Theory Library).
This class implements the Paillier cryptosystem, which supports homomorphic encryption operations
on
BigInteger
values.This interface represents a Paillier key used in the Paillier cryptosystem.
This class is responsible for generating Paillier key pairs (public and private keys)
used in the Paillier cryptosystem.
This class represents a private key in the Paillier cryptosystem.
Represents the public key for the Paillier cryptosystem.
This class provides methods for signing and verifying messages using the Paillier cryptosystem.
Abstract class representing the Socialist Millionaires' Problem (SMP) protocol.