Privacy Service Provider. More...
#include <privacy_service_provider.h>
Public Types | |
typedef std::deque< std::deque < Paillier::Ciphertext > > | EncryptedRatings |
Container for encrypted user rating vectors. | |
Public Member Functions | |
PrivacyServiceProvider () | |
Default constructor. More... | |
~PrivacyServiceProvider () | |
Destructor - void implementation. | |
BigInteger | SecureDecryption (const Paillier::Ciphertext &input) const |
Decrypts a blinded Paillier ciphertext. More... | |
void | SetServiceProvider (const std::shared_ptr< const ServiceProvider > &serviceProvider) |
Sets a reference to the Privacy Service Provider. More... | |
const std::shared_ptr < SecureComparisonClient > & | GetSecureComparisonClient () const |
Getter for this->secureComparisonClient. More... | |
const std::shared_ptr < SecureMultiplicationClient < Paillier > > & | GetSecureMultiplicationClient () const |
Getter for this->secureMultiplicationClient. More... | |
const PaillierPublicKey & | GetPaillierPublicKey () const |
Getter for the Paillier crypto provider public key. More... | |
const DgkPublicKey & | GetDgkPublicKey () const |
Getter for the DGK crypto provider public key. More... | |
void | DebugPaillierEncryption (const Paillier::Ciphertext &input) const |
Decrypts and prints a Paillier encrypted integer. More... | |
Private Member Functions | |
PrivacyServiceProvider (PrivacyServiceProvider const &) | |
Copy constructor - not implemented. | |
PrivacyServiceProvider | operator= (PrivacyServiceProvider const &) |
Copy assignment operator - not implemented. | |
Private Attributes | |
Paillier | paillierCryptoProvider |
The Paillier crypto provider. | |
Dgk | dgkCryptoProvider |
The DGK crypto provider. | |
std::shared_ptr< const ServiceProvider > | serviceProvider |
A reference to the ServiceProvider. | |
std::shared_ptr < SecureComparisonClient > | secureComparisonClient |
A reference to the SecureComparisonClient. | |
std::shared_ptr < SecureMultiplicationClient < Paillier > > | secureMultiplicationClient |
A reference to the SecureMultiplicationClient. | |
Static Private Attributes | |
static const std::string | configurationPath |
Service Provider configuration path. More... | |
Privacy Service Provider.
Definition at line 59 of file privacy_service_provider.h.
SeComLib::PrivateRecommendations::PrivacyServiceProvider::PrivacyServiceProvider | ( | ) |
Default constructor.
Generates the Paillier and DGK keys.
Definition at line 44 of file privacy_service_provider.cpp.
void SeComLib::PrivateRecommendations::PrivacyServiceProvider::DebugPaillierEncryption | ( | const Paillier::Ciphertext & | input | ) | const |
Decrypts and prints a Paillier encrypted integer.
input | a Paillier encrypted integer |
Definition at line 102 of file privacy_service_provider.cpp.
const DgkPublicKey & SeComLib::PrivateRecommendations::PrivacyServiceProvider::GetDgkPublicKey | ( | ) | const |
Getter for the DGK crypto provider public key.
Definition at line 95 of file privacy_service_provider.cpp.
const PaillierPublicKey & SeComLib::PrivateRecommendations::PrivacyServiceProvider::GetPaillierPublicKey | ( | ) | const |
Getter for the Paillier crypto provider public key.
Definition at line 88 of file privacy_service_provider.cpp.
const std::shared_ptr< SecureComparisonClient > & SeComLib::PrivateRecommendations::PrivacyServiceProvider::GetSecureComparisonClient | ( | ) | const |
Getter for this->secureComparisonClient.
Definition at line 74 of file privacy_service_provider.cpp.
const std::shared_ptr< SecureMultiplicationClient< Paillier > > & SeComLib::PrivateRecommendations::PrivacyServiceProvider::GetSecureMultiplicationClient | ( | ) | const |
Getter for this->secureMultiplicationClient.
Definition at line 81 of file privacy_service_provider.cpp.
BigInteger SeComLib::PrivateRecommendations::PrivacyServiceProvider::SecureDecryption | ( | const Paillier::Ciphertext & | input | ) | const |
Decrypts a blinded Paillier ciphertext.
input | Paillier ciphertext |
Definition at line 58 of file privacy_service_provider.cpp.
void SeComLib::PrivateRecommendations::PrivacyServiceProvider::SetServiceProvider | ( | const std::shared_ptr< const ServiceProvider > & | serviceProvider | ) |
Sets a reference to the Privacy Service Provider.
serviceProvider | a ServiceProvider instance |
Definition at line 65 of file privacy_service_provider.cpp.
|
staticprivate |
Service Provider configuration path.
Set the configuration path.
Definition at line 108 of file privacy_service_provider.h.