use poulpy_core::{ GetDistribution, layouts::{GGSWInfos, GLWEInfos, GLWESecretPreparedToRef, LWEInfos, LWESecretToRef}, }; use poulpy_hal::{ layouts::{Backend, DataMut, Scratch}, source::Source, }; use crate::bin_fhe::blind_rotation::{BlindRotationAlgo, BlindRotationKeyCompressed}; pub trait BlindRotationKeyCompressedEncryptSk { fn blind_rotation_key_compressed_encrypt_sk_tmp_bytes(&self, infos: &A) -> usize where A: GGSWInfos; #[allow(clippy::too_many_arguments)] fn blind_rotation_key_compressed_encrypt_sk( &self, res: &mut BlindRotationKeyCompressed, sk_glwe: &S0, sk_lwe: &S1, seed_xa: [u8; 32], source_xe: &mut Source, scratch: &mut Scratch, ) where D: DataMut, S0: GLWESecretPreparedToRef + GLWEInfos, S1: LWESecretToRef + LWEInfos + GetDistribution; }