Concrete Numpy is made for data scientists. It allows them to turn numpy programs into their FHE equivalent. There are limits however:
- sometimes due to FHE (eg, we can’t have control-flow functions like
if
that would test encrypted values) - sometimes due to the fact that our framework is a work in progress
- and sometimes because the precision in Concrete Library is currently limited to 7 bits. More or less, you have to have your numpy programs working with integer only and values which are less than 2^7 = 128.
With the next versions of Concrete Numpy, we’ll try to reduce these limits, and make more things available. But, as you can see with our examples, we can already do a lot of things.
Also, we are working on a set of functions to compile directly torch modules. It is currently in a very preliminary version in the current version and will be updated in further releases.