Skip to main content

GLWEToLWESwitchingKeyEncryptSk

Trait GLWEToLWESwitchingKeyEncryptSk 

Source
pub trait GLWEToLWESwitchingKeyEncryptSk<BE: Backend> {
    // Required methods
    fn glwe_to_lwe_key_encrypt_sk_tmp_bytes<A>(&self, infos: &A) -> usize
       where A: GGLWEInfos;
    fn glwe_to_lwe_key_encrypt_sk<R, S1, S2, E>(
        &self,
        res: &mut R,
        sk_lwe: &S1,
        sk_glwe: &S2,
        enc_infos: &E,
        source_xe: &mut Source,
        source_xa: &mut Source,
        scratch: &mut ScratchArena<'_, BE>,
    )
       where S1: LWESecretToBackendRef<BE>,
             S2: GLWESecretToBackendRef<BE>,
             E: EncryptionInfos,
             R: GGLWEToBackendMut<BE> + GGLWEInfos;
}

Required Methods§

Source

fn glwe_to_lwe_key_encrypt_sk_tmp_bytes<A>(&self, infos: &A) -> usize
where A: GGLWEInfos,

Source

fn glwe_to_lwe_key_encrypt_sk<R, S1, S2, E>( &self, res: &mut R, sk_lwe: &S1, sk_glwe: &S2, enc_infos: &E, source_xe: &mut Source, source_xa: &mut Source, scratch: &mut ScratchArena<'_, BE>, )

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<BE> GLWEToLWESwitchingKeyEncryptSk<BE> for Module<BE>
where BE: Backend + EncryptionImpl<BE>,

Source§

fn glwe_to_lwe_key_encrypt_sk_tmp_bytes<A>(&self, infos: &A) -> usize
where A: GGLWEInfos,

Source§

fn glwe_to_lwe_key_encrypt_sk<R, S1, S2, E>( &self, res: &mut R, sk_lwe: &S1, sk_glwe: &S2, enc_infos: &E, source_xe: &mut Source, source_xa: &mut Source, scratch: &mut ScratchArena<'_, BE>, )

Implementors§