Cannot Find Any Function to do Blind Rotation in Concrete-Core

Hello, I am using the Concrete-Core library for implementing a FHE based protocol. I need to perform Blind-rotations on some RLWE ciphertexts. But I could not find any function for that in concrete-core. I tried to write the function on my own; but the problem is: after rotating a RLWE ciphertext by k degree, the last k coefficients of the resultant polynomials theoretically becomes negative. But negative values cannot be assigned to any RLWE ciphertext’s co-ordinates. Please let me know how to overcome this. If there is already any function defined in Concrete-core for performing blind rotation, please suggest me that. Any help is highly appreciated. Thank you.

Hello @Megha,

Concrete-core used to be the low level Rust crate for TFHE, but it has been renamed (and refactored) as TFHE-rs. Could you please create a new post in the TFHE-rs category?

Thank you!

Hello @Megha!

As @alex mentioned, Concrete-core has been deprecated and the reference Rust library is now TFHE-rs. It should be much better suited to your needs. There you will find a blind rotation entry point in tfhe-rs/tfhe/src/core_crypto/algorithms/lwe_programmable_bootstrapping.rs at line 232. You can check out the TFHE-rs documentation here: What is TFHE-rs? - TFHE-rs. As @alex said, don’t hesitate to ask for help in the TFHE-rs category!

Cheers,
Agnès