Security of keys and performances


Version of concrete-numpy used: 0.5.0

I was trying to find the level of security from the function circuit.keygen().

I have found that the minimum supported by Zama was 128bits from this post .

Can I update or change the security parameters by myself on concrete-numpy ? Or is it expected for a later release ?

Also, is there a blog post on the performances of the concrete library ? Is it the same as TFHE, 16ms/bit ? From the concrete original paper, I have found that it was around 16ms, is it still the case?

Thanks for the amazing work

1 Like


We do plan to give the user more control to choose the n-bit security to use, so it should come in a later release.

Concrete numpy rely on the concrete library for all the crypto operations, so you should get similar performances. However, I’m not really sure about the exact number, let me get back to you or someone else about this.

Hi again,

So currently, the compiler is responsible for choosing the crypto parameters, given the circuit that needs to be computed. As I said previously, the choice might be parameterized in the future, by providing the target n-bits of security, or other extra information that can affect parameter selection. And since parameters are being computed depending on the circuit that’s compiled, performance will vary. Some recent numbers might be found here (using concrete-boolean), but keep in mind that these are specific to the parameter set in the table.

1 Like