HEaaN
Crypto Lab's great homomorphic encryption library
include
HEaaN
Decryptor.hpp
Go to the documentation of this file.
1
// //
3
// Copyright (C) 2021-2023 Crypto Lab Inc. //
4
// //
5
// - This file is part of HEaaN homomorphic encryption library. //
6
// - HEaaN cannot be copied and/or distributed without the express permission //
7
// of Crypto Lab Inc. //
8
// //
10
11
#pragma once
12
13
#include "
HEaaN/Context.hpp
"
14
#include "
HEaaN/HEaaNExport.hpp
"
15
16
namespace
HEaaN
{
17
18
class
SecretKey;
19
class
Message;
20
class
Ciphertext;
21
class
Plaintext;
22
26
class
HEAAN_API
Decryptor
{
27
public
:
28
explicit
Decryptor
(
const
Context
&context);
29
34
void
decrypt(
const
Ciphertext
&ctxt,
const
SecretKey
&sk,
35
Message
&msg)
const
;
36
43
void
decrypt(
const
Ciphertext
&ctxt,
const
SecretKey
&sk,
44
Plaintext
&ptxt)
const
;
45
63
void
partialDecrypt(
const
Ciphertext
&ctxt,
const
SecretKey
&sk,
64
Ciphertext
&ctxt_out)
const
;
65
66
private
:
68
const
Context
context_
;
69
};
70
}
// namespace HEaaN
HEaaN::Decryptor
Abstract entity for decrypting ciphertexts.
Definition:
Decryptor.hpp:26
HEaaN::SecretKey
Secret key class.
Definition:
SecretKey.hpp:26
HEaaN::Message
Definition:
Message.hpp:30
HEaaN::Decryptor::context_
const Context context_
A context with which decryptor is associated.
Definition:
Decryptor.hpp:68
HEaaN::Plaintext
A class of plaintexts each of which is simply a polynomial.
Definition:
Plaintext.hpp:26
HEaaN::Ciphertext
A class of ciphertexts each of which contains a vector of polynomials of length > 1.
Definition:
Ciphertext.hpp:27
HEaaN::Context
std::shared_ptr< ContextContent > Context
Definition:
Context.hpp:27
Context.hpp
HEaaNExport.hpp
HEAAN_API
#define HEAAN_API
Definition:
HEaaNExport.hpp:26
HEaaN
Definition:
Bootstrapper.hpp:16
Generated by
1.8.17