Let me start by saying that I have a mathematical background, and have very little experience with cryptography. I only know the very basics.
With that said, I recently read about Homomorphic Encryption (HE), and thought that it was a very interesting concept. What one really cares about, though, is Fully Homomorphic Encryption (FHE), which allows you to (essentially) perform an unlimited amount of additions and multiplications (and possibly other operations) on ciphertexts. HE schemes are sometimes transformed into FHE schemes using the so-called concept of bootstrapping.
How I understand bootstrapping is that one uses limited knowledge about the secret key in order to reduce the existing noise in the ciphertext, allowing for more operations to be performed on it. The extra knowledge that is gained from the secret key is assumed not to endanger security.
While trying to read more about bootstrapping, I felt overwhelmed by the technical details. My current goal is to understand the mere essence of bootstrapping. I thus wonder if there is a very basic example which is still able to capture the very basic idea behind bootstrapping?
The example need not even be of “cryptographic nature”, it might as well just describe a related concept showing how such noise reduction might be realised.
Annotated bibliography: https://people.csail.mit.edu/vinodv/FHE/FHE-refs.html
– yoyo Jun 16 '23 at 19:17