29 #ifndef CLIENT_HEADER_GUARD
30 #define CLIENT_HEADER_GUARD
51 using namespace PrivateRecommendationsUtils;
54 #define FIRST_USER_ONLY
56 namespace PrivateRecommendations {
64 Client (
const std::shared_ptr<ServiceProvider> &serviceProvider,
const std::shared_ptr<PrivacyServiceProvider> &privacyServiceProvider,
const PaillierPublicKey &publicKey);
70 void ComputeRecommendations ();
103 #endif//CLIENT_HEADER_GUARD
Definition of template class RandomizerCache.
Definition of class PrivacyServiceProvider.
Paillier paillierCryptoProvider
Paillier crypto provider.
Definition of struct BlindingFactorCacheParameters.
Definition of class Config.
Stores precomputed random data.
size_t userCount
Number of users who need recommendations.
const std::shared_ptr< ServiceProvider > serviceProvider
A reference to the ServiceProvider.
Definition of struct DecryptionBlindingFactorContainer.
Implementation of the public-key Paillier Cryptosystem.
Definition of class CpuTimer.
static const std::string configurationPath
Service Provider configuration path.
Definition of class Paillier.
DecryptionBlindingFactorContainer< Paillier, BlindingFactorCacheParameters > BlindingFactorContainer
Alias for the blinding factor container.
Definition of class ServiceProvider.
RandomizerCache< BlindingFactorContainer > blindingFactorCache
Blinding factor cache instance.
const std::shared_ptr< PrivacyServiceProvider > privacyServiceProvider
A reference to the PrivacyServiceProvider.
The public key container structure for the Paillier cryptosystem.
~Client()
Destructor - void implementation.