Am studiat lucrarea Wieschebrink „Cryptanalysis of the Niederreiter Public Key Scheme Based on GRS Codes”. În lucrare este expus un criptosistem care folosește coduri GRS cu un atac propus criptosistemului, acesta fiind atacul Sidelnikov-Shestakov (bine, de fapt o reformulare din cel original care cel puțin pentru mine este mai ușor de înțeles).
În atac încerci să recuperezi multiplicatorii și evaluatorii care generează un cod GRS egal cu cel original. Într-o parte a acestuia se încheie cu ecuații de forma:
$$ \frac{b_{1,j}}{b_{2,j}}(\alpha_j-\alpha_1)=\frac{c_{b_1}}{c_{b_i}}(\alpha_j-\alpha_2) $ $
pentru anumite valori ale $j$ cu $\alpha_j$ și $\frac{c_{b_1}}{c_{b_i}}$ ca necunoscutele. Obiectivul tău este să recuperezi asta $\alpha_j$, Unde $\alpha_j$ sunt evaluatorii codului. Această ecuație nu poate fi rezolvată direct (două necunoscute și o ecuație), dar în atac se ghicește o valoare de $\frac{c_{b_1}}{c_{b_i}}$ și lucrează prin ea.
Lucrul este că acest proces de ghicire mă deranjează, deoarece în lucrare nu se explică de ce este garantat că vei termina cu succes. Înțeleg că dacă presupunerea ta este corectă, reușești, dar ce se întâmplă când presupunerea ta este greșită? Presupun că ai putea termina recuperarea parametrilor care nu sunt potriviți pentru un cod GRS, în acest caz, unii $\alpha_j$ care este egal cu $\alpha_i$ pentru $i\neq j$, și ați ști că presupunerea dvs. este greșită, dar există posibilitatea ca să ajungeți să recuperați parametrii unui cod GRS care nu este „egal” cu cel original? Astfel, atacul ar fi un eșec.