Skip to content

Commit

Permalink
~
Browse files Browse the repository at this point in the history
  • Loading branch information
valbert4 committed Jul 24, 2024
1 parent 43f8e8e commit 8f69041
Show file tree
Hide file tree
Showing 8 changed files with 14 additions and 12 deletions.
5 changes: 3 additions & 2 deletions codes/classical/q-ary_digits/ag/residueAG/goppa.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,12 @@ features:
decoders:
- 'Algebraic decoding algorithms \cite{doi:10.1109/TIT.1975.1055350}. If \( \text{deg} G(x) = 2t \) , then there exists a \(t\)-correcting algebraic decoding algorithm for \( \Gamma(L,G) \).'
- 'Sugiyama et al. modification of the extended Euclidean algorithm \cite{doi:10.1016/S0019-9958(75)90090-X,doi:10.1017/CBO9780511606267}.'
- 'Guruswami-Sudan list decoder \cite{doi:10.1109/18.782097,doi:10.1109/SFCS.1998.743426}.'
- 'Binary Goppa codes can be decoded using a RS-based decoder \cite{manual:{Daniel J. Bernstein, "Understanding binary-Goppa decoding." Cryptology ePrint Archive (2022).}}.'
- 'List decoder for binary Goppa codes \cite{doi:10.1109/TIT.2013.2243800}.'

realizations:
- 'Initial version of the McEliece public-key cryptosystem \cite{manual:{R. J. McEliece, A public-key cryptosystem based on algebraic coding theory, Technical report, Jet Propulsion Lab. DSN Progress Report (1978).},doi:10.1007/BF00173300} and its variation by Niederreiter \cite{manual:{H. Niederreiter (1986). \emph{Knapsack-type cryptosystems and algebraic coding theory}. Problems of Control and Information Theory. Problemy Upravlenija I Teorii Informacii. 15: 159–166.}} where the generator matrix is replaced by the parity check matrix. Some of these were proven to be insecure since the public key exposes algebraic structure of code \cite{doi:10.1515/dma.1992.2.4.439}.'
- 'The McEliece public-key cryptosystem \cite{manual:{R. J. McEliece, A public-key cryptosystem based on algebraic coding theory, Technical report, Jet Propulsion Lab. DSN Progress Report (1978).},doi:10.1007/BF00173300}.'


notes:
- 'GAP function \href{https://www.gap-system.org/Manuals/pkg/guava/doc/chap5.html#X7EE808BB7D1E487A}{GoppaCode(G,L)} takes in a polynomial \(G\) that satisfies the necessary conditions for a Goppa code and a list \(L\) that contains elements in \(GF(q)\) that are not roots of \(G\). It returns a Goppa code.'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ description: |
An \([q-1,k,q-k]_q\) narrow-sense RS code can be extended twice by adding two evaluation points (of which one can be zero) to yield a \([q+1,k,q-k+2]_q\) \textit{doubly extended narrow-sense RS code}.
The two extra columns sometimes correspond to evaluating at zero and infinity if one switches to projective coordinates, in which case the doubly extended GRS code is an evaluation code.
There also exist \textit{triply extended RS codes} with parameters \([q+2,3,q-1]_q\) or \([q+2,q-1,4]_q\) \cite{doi:10.1201/9781315371993}.
Their automorphism groups have been identified \cite{doi:10.1016/0097-3165(87)90060-4}.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ features:
realizations:
- 'Commonly used in mass storage systems such as CDs, DVDs, QR codes etc.'
- 'Various cloud storage systems \cite{arxiv:1612.01361}.'
- 'Public-key cryptosystems generalizing those that used Goppa codes \cite{manual:{R. J. McEliece, A public-key cryptosystem based on algebraic coding theory, Technical report, Jet Propulsion Lab. DSN Progress Report (1978).},doi:10.1007/BF00173300,manual:{H. Niederreiter (1986). \emph{Knapsack-type cryptosystems and algebraic coding theory}. Problems of Control and Information Theory. Problemy Upravlenija I Teorii Informacii. 15: 159–166.}}, some of which were proven to be insecure \cite{doi:10.1515/dma.1992.2.4.439}. More recent works focus on methods to mask the algebraic structure using subcodes of GRS codes \cite{doi:10.1007/s10623-003-6151-2}. For example, a key-recovery attack was developed in Ref. \cite{arxiv:1307.6458} for a variant of masking method proposed in Ref. \cite{arxiv:1108.2462}.'
- 'A variation of the McEliece public-key cryptosystem \cite{manual:{R. J. McEliece, A public-key cryptosystem based on algebraic coding theory, Technical report, Jet Propulsion Lab. DSN Progress Report (1978).},doi:10.1007/BF00173300} by Niederreiter \cite{manual:{H. Niederreiter (1986). \emph{Knapsack-type cryptosystems and algebraic coding theory}. Problems of Control and Information Theory. Problemy Upravlenija I Teorii Informacii. 15: 159–166.}} replaced the generator matrix by the parity check matrix of a GRS code. This was proven to be insecure since the public key exposes the algebraic structure of code \cite{doi:10.1515/dma.1992.2.4.439}. More recent works focus on methods to mask the algebraic structure using subcodes of GRS codes \cite{doi:10.1007/s10623-003-6151-2}. For example, a key-recovery attack was developed in Ref. \cite{arxiv:1307.6458} for a variant of masking method proposed in Ref. \cite{arxiv:1108.2462}.'

# - 'Generalized Reed Solomon codes contain the special case of conventiontal Reed Solomon codes. These are cyclic codes, and can also be defined by using the discrete Fourier transform.'

Expand Down
4 changes: 2 additions & 2 deletions codes/classical/q-ary_digits/ag/varieties/deligne_lusztig.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ name: 'Deligne-Lusztig code'
introduced: '\cite{doi:10.1006/ffta.2001.0313,manual:{S.H. Hansen, The geometry of Deligne-Lusztig varieties: Higher dimensional AG codes, Ph.D. Thesis, University of Aarhus, 1999.},doi:10.1007/s002290050146,doi:10.1007/BFb0087993}'

description: |
Evaluation code of polynomials evaluated on points lying on a Deligne-Lusztig variety.
Evaluation code of polynomials evaluated on points lying on a Deligne-Lusztig curve.
relations:
parents:
- code_id: evaluation_polynomial
detail: 'Deligne-Lusztig codes are polynomial evaluation codes with \(\cal X\) a Deligne-Lusztig variety.'
detail: 'Deligne-Lusztig codes are evaluation AG codes with \(\cal X\) a Deligne-Lusztig curve.'


# Begin Entry Meta Information
Expand Down
2 changes: 1 addition & 1 deletion codes/classical/q-ary_digits/ag/varieties/grassmannian.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ name: 'Grassmannian code'
introduced: '\cite{manual:{C. T. Ryan, An application of Grassmannian varieties to coding theory. Congr. Numer. 57 (1987) 257–271.},manual:{C.T. Ryan, Projective codes based on Grassmann varieties, Congr. Numer. 57, 273–279 (1987).},doi:10.1016/0166-218X(90)90112-P}'

description: |
Evaluation code of polynomials evaluated on points lying on a Grassmannian \({\mathbb{G}}(\ell,m)\).
Evaluation code of polynomials evaluated on points lying on a Grassmannian \({\mathbb{G}}(\ell,m)\) \cite{doi:10.1515/9783110811056.145}.
relations:
parents:
Expand Down
6 changes: 3 additions & 3 deletions codes/classical/q-ary_digits/ag/varieties/serge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,16 @@ code_id: serge
physical: q-ary_digits
logical: q-ary_digits

name: 'Serge-variety RM-type code'
name: 'Segre-variety RM-type code'
introduced: '\cite{doi:10.1006/ffta.2002.0360}'

description: |
Evaluation code of polynomials evaluated on points lying on a Serge variety.
Evaluation code of polynomials evaluated on points lying on a Segre variety.
relations:
parents:
- code_id: evaluation_polynomial
detail: 'Serge-variety RM-type codes are polynomial evaluation codes with \(\cal X\) being a Serge variety.'
detail: 'Segre-variety RM-type codes are polynomial evaluation codes with \(\cal X\) being a Segre variety.'


# Begin Entry Meta Information
Expand Down
2 changes: 1 addition & 1 deletion codes/classical/q-ary_digits/easy/hexacode.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ notes:
relations:
parents:
- code_id: hyperoval
detail: 'Columns of hexacode''s generator matrix represent the six homogeneous coordinates of a hyperoval in the projective plane \(PG(2,4)\) \cite[pg. 289]{doi:10.1201/9781315371993}\cite[Exam. 19.2.1]{preset:HKStwoweight}.'
detail: 'Columns of hexacode''s generator matrix represent the six points of a hyperoval in the projective plane \(PG(2,4)\) \cite[pg. 289]{doi:10.1201/9781315371993}\cite[Exam. 19.2.1]{preset:HKStwoweight}.'
- code_id: evaluation
detail: 'The hexacode is an evaluation AG code over \(GF(4) = \{0,1,\omega, \bar{\omega}\}\) with \(\cal X\) defined by \(x^2 y + \omega y^2 z + \bar{\omega} z^2 x = 0\) \cite[Ex. 2.77]{preset:HPAlgCodes}.'
- code_id: q-ary_quad_residue
Expand Down
4 changes: 2 additions & 2 deletions codes/classical/q-ary_digits/group/cyclic/q-ary_bch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ short_name: 'BCH'
introduced: '\cite{doi:10.1137/0109020}'

description: |
Cyclic \(q\)-ary code, with \(n\) and \(q\) relatively coprime, whose zeroes are consecutive powers of a primitive \(n\)th root of unity \(\alpha\). More precisely, the generator polynomial of a BCH code of \textit{designed distance} \(\delta\geq 1\) is the lowest-degree monic polynomial with zeroes \(\{\alpha^b,\alpha^{b+1},\cdots,\alpha^{b+\delta-2}\}\) for some \(b\geq 0\). BCH codes are called \textit{narrow-sense} when \(b=1\), and are called \textit{primitive} when \(n=q^r-1\) for some \(r\geq 2\).
Cyclic \(q\)-ary code, with \(n\) and \(q\) relatively prime, whose zeroes are consecutive powers of a primitive \(n\)th root of unity \(\alpha\). More precisely, the generator polynomial of a BCH code of \textit{designed distance} \(\delta\geq 1\) is the lowest-degree monic polynomial with zeroes \(\{\alpha^b,\alpha^{b+1},\cdots,\alpha^{b+\delta-2}\}\) for some \(b\geq 0\). BCH codes are called \textit{narrow-sense} when \(b=1\), and are called \textit{primitive} when \(n=q^r-1\) for some \(r\geq 2\).
More general BCH codes can be defined for zeroes are powers of the form \(\{b,b+s,b+2s,\cdots,b+(\delta-2)s\}\) where gcd\((s,n)=1\).
The code dimension is related to the \textit{multiplicative order} of \(q\) modulo \(n\), i.e., the smallest integer \(m\) such that \(n\) divides \(q^m-1\). The dimension of a BCH code is at least \(n-m(\delta-1)\). The field \(GF(q^m)\) is the smallest field containing the above root of unity \(\alpha\), and is the splitting field of the polynomial \(x^n-1\) (see \ref{topic:Cyclic-to-polynomial-correspondence}).
Expand All @@ -26,7 +27,6 @@ features:
- 'Berlekamp-Massey decoder with runtime of order \(O(n^2)\) \cite{doi:10.1109/TIT.1968.1054109,doi:10.1109/TIT.1969.1054260,preset:Berlekamp} and modification by Burton \cite{doi:10.1109/TIT.1971.1054655}; see also \cite{preset:PetersonWeldon,doi:10.1007/978-3-7091-2945-6}.'
- 'Gorenstein-Peterson-Zierler decoder with runtime of order \(O(n^3)\) \cite{doi:10.1109/TIT.1960.1057586,doi:10.1137/0109020} (see exposition in Ref. \cite{preset:Blahut}).'
- 'Sugiyama et al. modification of the extended Euclidean algorithm \cite{doi:10.1016/S0019-9958(75)90090-X,doi:10.1017/CBO9780511606267}.'
- 'Guruswami-Sudan list decoder \cite{doi:10.1109/18.782097,doi:10.1109/SFCS.1998.743426} and modification by Koetter-Vardy for soft-decision decoding \cite{doi:10.1109/TIT.2003.819332}.'

notes:
- 'See books \cite{preset:MacSlo,preset:LinCostello,doi:10.1017/CBO9780511807077} for expositions on BCH codes and code tables.'
Expand Down

0 comments on commit 8f69041

Please sign in to comment.