trapdoor.rs 602 B

12345678910111213141516171819
  1. use openfhe::ffi;
  2. fn main() {
  3. // Parameters based on https://github.com/openfheorg/openfhe-development/blob/7b8346f4eac27121543e36c17237b919e03ec058/src/core/unittest/UnitTestTrapdoor.cpp#L314
  4. let n: u32 = 16;
  5. let size: u32 = 4;
  6. let k_res: u32 = 51;
  7. let base: i64 = 8;
  8. let params = ffi::GenILDCRTParamsByOrderSizeBits(2 * n, size, k_res);
  9. let u = ffi::DCRTPolyGenFromDug(&params);
  10. let trapdoor = ffi::DCRTPolyTrapdoorGen(&params, base, false);
  11. let k = 68; // to calculate
  12. let _res = ffi::DCRTPolyGaussSamp(n.try_into().unwrap(), k, &trapdoor, &u, base);
  13. }