I need to use bootstrapping when implementing machine learning algorithm(Logistic Regression) with seal on encrypted data. But I can't find bootstrapping module in seal. Do I need to implement by myself?
Asked
Active
Viewed 1,009 times
1 Answers
2
Currently SEAL does not support bootstrapping, although for the CKKS scheme the dev team has it on the roadmap. For now, you have a few choices:
- Use the CKKS scheme but with large enough parameters so you don't need to bootstrap. Of course, this will restrict the number of iterations a lot, so you may need some re-encryption protocol anyway where the model is re-encrypted by the secret key owner.
- Implement CKKS bootstrapping yourself; this is not necessarily easy but definitely not unreasonable. If you are considering using BFV and implementing BFV-bootstrapping, I would maybe recommend against that: BFV-bootstrapping is tricky to parameterize and is unlikely to be fast enough to make sense.
- The HEAAN library had earlier an implementation of CKKS bootstrapping, but it seems like that branch is no longer available. Maybe if you ask the authors they might share it with you.

Kim Laine
- 856
- 5
- 10