Pentru criptosistemele McEliece/Niederreiter, o alegere eficientă, aparent sigură, a codului este un cod Goppa binar ireductibil, definit de un cod ireductibil. $g(x)\în GF(2^m)[x]$ de grad $t$ și un vector suport $L=(\alpha_0,\ldots,\alpha_{n-1})$ cu distincte $\alpha_i\în GF(2^m)$.
Codul în sine este $GF(2)$-vectori valoroși în nucleul matricei de verificare a parității
$$
H=\stânga(
\begin{matrice}{cccc}
g(\alpha_0)^{-1}&g(\alpha_1)^{-1}&\ldots&g(\alpha_{n-1})^{-1}\
g(\alpha_0)^{-1}\alpha_0&g(\alpha_1)^{-1}\alpha_1&\ldots&g(\alpha_{n-1})^{-1}\alpha_{n-1}\
\vdots&\vdots&\ldots&\vdots\
g(\alpha_0)^{-1}\alpha_0^{t-1}&g(\alpha_1)^{-1}\alpha_1^{t-1}&\ldots&g(\alpha_{n-1})^{ -1}\alpha_{n-1}^{t-1}\
\end{matrice}\dreapta).
$$
Rețineți că $H$ este de rang complet. Pentru a produce o matrice de verificare a parității $H'$ peste $GF(2)$, se pot înlocui intrările de $H$ cu vectori coloană în $GF(2)$ (folosind o anumită bază pentru extensie $GF(2^m)/GF(2)$).
Aproape toate sursele pe care le consult listează codul rezultat ca $[n,k]=[n, n-mt]$, dar construcția generală (să zicem pentru codurile alternative) dă $k=n-mt$ ca limita inferioară pentru dimensiune $k$ a codului subspațial rezultat.
Întrebările mele sunt:
- Cât de des este rangul rezultat $k=n-mt$? În configurația AG, cred că aceasta este o dimensiune Riemann-Roch, așa că poate un geometru algebric poate răspunde.
- Contează dacă avem rânduri redundante în verificarea parității $H'$? Afectează acest lucru implementările criptosistemului?
Cred că acest lucru a fost abordat în generatorul de chei de la https://eprint.iacr.org/2017/595.pdf (secțiunea 5.2), chiar dacă doar pentru a returna un eșec și a reporni procesul de generare a cheii atunci când rref nu este atins; ele dau 29% ca probabilitate de succes bazata pe densitatea de $GL_{mt}(GF(2))$ în $Mat_{mt\times mt}(GF(2))$, adică densitatea asimptotică este
$$
\prod_{i=1}^{\infty}\left(1-\frac{1}{2^i}\right)=0,288\ldots.
$$
Gândindu-mă a doua oară în ceea ce privește 1), cred că este mai degrabă o întrebare despre când nucleul unei hărți liniare este definit într-un subcâmp (de exemplu, nucleul de $x-\sqrt{2}y$ are dimensiunea unu peste $\mathbb{Q}(\sqrt{2})$ dar dimensiunea zero când este limitată la $\mathbb{Q}$).