static DualHybrid.fft_solver(params, success_probability, t=0)[source]#

Estimate cost of solving LWE via the FFT distinguisher from [AC:GuoJoh21].

  • params – LWE parameters

  • success_probability – the targeted success probability

  • t – the number of secret coordinates to guess mod 2. For t=0 this is similar to lwe_guess.ExhaustiveSearch.


A cost dictionary

The returned cost dictionary has the following entries:

  • rop: Total number of word operations (≈ CPU cycles).

  • mem: memory requirement in integers mod q.

  • m: Required number of samples to distinguish the correct solution with high probability.

  • t: the number of secret coordinates to guess mod 2.


The parameter t only makes sense in the context of the dual attack, which is why this function is here and not in the lwe_guess module.