The standard calea este prin folosire estimatorul LWE (dacă este simplu sau nu este discutabil).
Estimă costul atacurilor cunoscute împotriva instanțelor LWE cu parametrii dați
$n$, $\alpha$, și $q$, Unde $\alpha$ reprezintă raportul de zgomot și poate fi obținut din parametru $\sigma$ din Gaussianul discret folosind formula $\alpha = \sqrt{2 \pi} \cdot \sigma / q$, deja implementat la comandă alfa = alfa(sigmaf(sigma), q)
.
Estimatorul găsește practic dimensiunea blocului $\beta$ pe care algoritmul BKZ va trebui să-l folosească pentru a sparge problema LWE. Dar estimarea duratei de funcționare a BKZ-$\beta$ nu este simplu, așa că, pentru a obține nivelul real de securitate, trebuie să alegeți un model de cost pentru BKZ.
Pe scurt, BKZ rulează pe o rețea de dimensiune $d$ și face mai multe apeluri către un rezolvator SVP în dimensiune $\beta$. Se presupune adesea că oracolul SVP necesită $2^{0,292\cdot \beta}$ operaţii într-un calculator clasic şi $2^{0,265\cdot \beta}$ într-una cuantică.
Astfel, folosind reduction_cost_model=BKZ.sive
în estimatorul LWE vă va oferi numărul de operații ca $2^{0,292\cdot \beta + 16,4 + \log_2(8 \cdot d)}$ și vrei să fie mai mare decât $2^\lambda$ pentru $\lambda$ bucăți de securitate.
Unii oameni sunt mai conservatori (paranoici?) și ignoră costurile legate de dimensiune $d$ și numeroasele apeluri către oracolul SVP, prin urmare, ele estimează numărul de operațiuni ale BKZ ca un singur apel către solutorul SVP, astfel, obțin $2^{0,292\cdot \beta}$ sau $2^{0,265\cdot \beta}$. Acesta se numește modelul de cost „core-SVP” și a fost folosit, de exemplu, pentru a estima securitatea SABRE.