PALISADE Lattice Crypto Library  1.11.9
A lattice crypto library for software engineers by software engineers.
bfvrnsB-ser.h
1 // @file bfvrnsB-ser.h - serialize BFVrnsB; include this in any app that needs
2 // to serialize this scheme
3 // @author TPOC: contact@palisade-crypto.org
4 //
5 // @copyright Copyright(c) 2019, New Jersey Institute of Technology(NJIT)
6 // All rights reserved.
7 // Redistribution and use in source and binary forms, with or without
8 // modification, are permitted provided that the following conditions are met:
9 // 1. Redistributions of source code must retain the above copyright notice,
10 // this list of conditions and the following disclaimer.
11 // 2. Redistributions in binary form must reproduce the above copyright notice,
12 // this list of conditions and the following disclaimer in the documentation
13 // and/or other materials provided with the distribution. THIS SOFTWARE IS
14 // PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
15 // IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
16 // MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
17 // EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
18 // INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
19 // (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
20 // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
21 // ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
23 // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 
25 #ifndef LBCRYPTO_CRYPTO_BFVRNSBSER_H
26 #define LBCRYPTO_CRYPTO_BFVRNSBSER_H
27 
28 #include "palisade.h"
29 #include "utils/serial.h"
30 
36 extern template class lbcrypto::LPAlgorithmMultipartyBFVrnsB<
37  lbcrypto::DCRTPoly>;
39 
41 CEREAL_REGISTER_TYPE(
43 
44 #endif
Main public key encryption scheme for BFVrnsB implementation,.
Definition: bfvrnsB.h:998
Ideal lattice for the double-CRT representation. The implementation contains a vector of underlying n...
Definition: backend.h:73
Encryption algorithm implementation for BFVrnsB for the basic public key encrypt, decrypt and key gen...
Definition: bfvrnsB.h:695
This is the parameters class for the BFVrnsB encryption scheme. This scheme is also referred to as th...
Definition: bfvrnsB.h:72
Concrete class for the FHE Multiparty algorithms on BFVrnsB. This scheme is also referred to as the F...
Definition: bfvrnsB.h:941
SHE algorithms implementation for BFVrnsB.
Definition: bfvrnsB.h:748
Parameter generation for BFVrnsB. This scheme is also referred to as the FV scheme.
Definition: bfvrnsB.h:653