concrete-core 1.0.2

Concrete is a fully homomorphic encryption (FHE) library that implements Zama's variant of TFHE.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use crate::backends::cuda::private::vec::CudaVec;
use crate::commons::numeric::UnsignedInteger;
use crate::prelude::{GlweDimension, PolynomialSize};

/// One GLWE ciphertext on GPU 0.
///
/// There is no multi GPU support at this stage since the user cannot
/// specify on which GPU to convert the data.
// Fields with `d_` are data in the GPU
#[derive(Debug)]
pub(crate) struct CudaGlweCiphertext<T: UnsignedInteger> {
    // Pointer to GPU data: one cuda vec on GPU 0
    pub(crate) d_vec: CudaVec<T>,
    // Glwe dimension
    pub(crate) glwe_dimension: GlweDimension,
    // Polynomial size
    pub(crate) polynomial_size: PolynomialSize,
}