|
|
(One intermediate revision by one other user not shown) |
Line 1: |
Line 1: |
− | For a [[Shift register sequence|shift register sequence]] <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l1300501.png" />, the linear complexity <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l1300502.png" /> is just the degree of its minimal polynomial <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l1300503.png" />, i.e. the length of a shortest linear feedback shift register (LFSR; cf. [[Shift register sequence|Shift register sequence]]) capable of producing <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l1300504.png" />. The linear complexity also equals the maximum number of linearly independent vectors among the state vectors
| + | <!--This article has been texified automatically. Since there was no Nroff source code for this article, |
| + | the semi-automatic procedure described at https://encyclopediaofmath.org/wiki/User:Maximilian_Janisch/latexlist |
| + | was used. |
| + | If the TeX and formula formatting is correct, please remove this message and the {{TEX|semi-auto}} category. |
| | | |
− | <table class="eq" style="width:100%;"> <tr><td valign="top" style="width:94%;text-align:center;"><img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l1300505.png" /></td> </tr></table>
| + | Out of 46 formulas, 46 were replaced by TEX code.--> |
| | | |
− | of an arbitrary LFSR of length <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l1300506.png" /> associated with <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l1300507.png" />. | + | {{TEX|semi-auto}}{{TEX|done}} |
| + | For a [[shift register sequence]] $\mathbf{a}$, the linear complexity $L ( \mathbf{a} )$ is just the degree of its minimal polynomial $m$, i.e. the length of a shortest linear feedback shift register (LFSR; cf. [[Shift register sequence|Shift register sequence]]) capable of producing $\mathbf{a}$. The linear complexity also equals the maximum number of linearly independent vectors among the state vectors |
| | | |
− | Now, let <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l1300508.png" /> denote either a finite sequence <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l1300509.png" /> of length <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005010.png" /> or an infinite sequence <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005011.png" /> over a [[Galois field|Galois field]] <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005012.png" /> (in the latter case, put <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005013.png" />). For every positive integer <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005014.png" />, denote by <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005015.png" /> the length of an LFSR <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005016.png" /> of least length over <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005017.png" /> capable of producing a shift register sequence <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005018.png" /> which agrees with <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005019.png" /> for the first <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005020.png" /> entries <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005021.png" />. In this way, one obtains a sequence <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005022.png" /> of the same length <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005023.png" />, which is called the linear complexity profile of <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005024.png" />. Then one defines the linear complexity <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005025.png" /> of <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005026.png" /> as the maximum value of all <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005027.png" /> if these values are bounded, and as <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005028.png" /> otherwise. Thus, <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005029.png" /> if and only if <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005030.png" /> is an infinite sequence which is not ultimately periodic (cf. [[Ultimately periodic sequence|Ultimately periodic sequence]]), and <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005031.png" /> if <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005032.png" /> is a finite sequence of length <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005033.png" />. Hence the linear complexity profile constitutes a refinement of the linear complexity of a sequence. The linear complexity profile of <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005034.png" /> and the associated sequence of LFSRs <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005035.png" /> can be computed efficiently by the celebrated [[Berlekamp–Massey algorithm|Berlekamp–Massey algorithm]], see [[#References|[a1]]] or [[#References|[a2]]].
| + | \begin{equation*} {\bf a}^ { ( t ) } = ( a _ { t } , a _ { t + 1} , \dots , a _ { n + t - 1 }) ( t \geq 0 ) \end{equation*} |
| | | |
− | The linear complexity of a sequence is an important aspect in judging its suitability for use in [[Cryptography|cryptography]]. A high linear complexity by itself does not guarantee any randomness properties of the sequence considered. The linear complexity profiles of binary random sequences are analyzed in [[#References|[a3]]], Chap. 4, where it is shown that a binary random sequence <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005036.png" /> of length <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005037.png" /> usually has linear complexity very close to <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005038.png" /> with the complexity profile growing in a roughly (but not exactly!) continuous manner (so that <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005039.png" /> is close to <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005040.png" />). Moreover, using <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005041.png" /> to generate a periodic sequence <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005042.png" /> with period <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005043.png" /> results in a linear complexity close to <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005044.png" />, provided that <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005045.png" /> is a power of <img align="absmiddle" border="0" src="https://www.encyclopediaofmath.org/legacyimages/l/l130/l130050/l13005046.png" /> or a Mersenne prime number (cf. [[Mersenne number|Mersenne number]]). Consequently, a periodic binary sequence with good randomness properties should have complexity close to the period length and a profile growing more or less smoothly. | + | of an arbitrary LFSR of length $n$ associated with $\mathbf{a}$. |
| + | |
| + | Now, let $\mathbf{a}$ denote either a finite sequence $( a _ { k } ) _ { k = 0 , \dots , N - 1}$ of length $N$ or an infinite sequence $( a _ { k } ) _ { k \geq 0}$ over a [[Galois field|Galois field]] ${F} = \operatorname{GF} ( q )$ (in the latter case, put $N = \infty$). For every positive integer $k<N$, denote by $L _ { k } ( \mathbf{a} )$ the length of an LFSR $\Lambda _ { k } ( \mathbf{a} )$ of least length over $F$ capable of producing a shift register sequence ${\bf s} ^ { ( k ) }$ which agrees with $\mathbf{a}$ for the first $k$ entries $a _{0} , \dots , a _ { k - 1 }$. In this way, one obtains a sequence $\mathbf{L} = ( L _ { k } ( \mathbf a ) )$ of the same length $N$, which is called the linear complexity profile of $\mathbf{a}$. Then one defines the linear complexity $L ( \mathbf{a} )$ of $\mathbf{a}$ as the maximum value of all $L _ { k } ( \mathbf{a} )$ if these values are bounded, and as $\infty$ otherwise. Thus, $L ( \mathbf{a} ) = \infty$ if and only if $\mathbf{a}$ is an infinite sequence which is not ultimately periodic (cf. [[Ultimately periodic sequence|Ultimately periodic sequence]]), and $L ( \mathbf{a} ) = L _ { N } ( \mathbf{a} )$ if $\mathbf{a}$ is a finite sequence of length $N$. Hence the linear complexity profile constitutes a refinement of the linear complexity of a sequence. The linear complexity profile of $\mathbf{a}$ and the associated sequence of LFSRs $\Lambda _ { k } ( \mathbf{a} )$ can be computed efficiently by the celebrated [[Berlekamp–Massey algorithm|Berlekamp–Massey algorithm]], see [[#References|[a1]]] or [[#References|[a2]]]. |
| + | |
| + | The linear complexity of a sequence is an important aspect in judging its suitability for use in [[cryptography]]. A high linear complexity by itself does not guarantee any randomness properties of the sequence considered. The linear complexity profiles of binary random sequences are analyzed in [[#References|[a3]]], Chap. 4, where it is shown that a binary random sequence $\mathbf{a}$ of length $N$ usually has linear complexity very close to $N / 2$ with the complexity profile growing in a roughly (but not exactly!) continuous manner (so that $L _ { k } ( \mathbf{a} )$ is close to $k / 2$). Moreover, using $\mathbf{a}$ to generate a periodic sequence $\mathbf{s}$ with period $N$ results in a linear complexity close to $N$, provided that $N$ is a power of $2$ or a Mersenne prime number (cf. [[Mersenne number]]). Consequently, a periodic binary sequence with good randomness properties should have complexity close to the period length and a profile growing more or less smoothly. |
| | | |
| ====References==== | | ====References==== |
− | <table><TR><TD valign="top">[a1]</TD> <TD valign="top"> R.E. Blahut, "Theory and practice of error control codes" , Addison-Wesley (1983)</TD></TR><TR><TD valign="top">[a2]</TD> <TD valign="top"> D. Jungnickel, "Finite fields: Structure and arithmetics" , Bibliographisches Inst. Mannheim (1993)</TD></TR><TR><TD valign="top">[a3]</TD> <TD valign="top"> R. Rueppel, "Analysis and design of stream ciphers" , Springer (1986)</TD></TR></table> | + | <table> |
| + | <tr><td valign="top">[a1]</td><td valign="top"> R.E. Blahut, "Theory and practice of error control codes", Addison-Wesley (1983)</td></tr> |
| + | <tr><td valign="top">[a2]</td><td valign="top"> D. Jungnickel, "Finite fields: Structure and arithmetics", Bibliographisches Inst. Mannheim (1993)</td></tr> |
| + | <tr><td valign="top">[a3]</td><td valign="top"> R. Rueppel, "Analysis and design of stream ciphers", Springer (1986)</td></tr> |
| + | </table> |
For a shift register sequence $\mathbf{a}$, the linear complexity $L ( \mathbf{a} )$ is just the degree of its minimal polynomial $m$, i.e. the length of a shortest linear feedback shift register (LFSR; cf. Shift register sequence) capable of producing $\mathbf{a}$. The linear complexity also equals the maximum number of linearly independent vectors among the state vectors
\begin{equation*} {\bf a}^ { ( t ) } = ( a _ { t } , a _ { t + 1} , \dots , a _ { n + t - 1 }) ( t \geq 0 ) \end{equation*}
of an arbitrary LFSR of length $n$ associated with $\mathbf{a}$.
Now, let $\mathbf{a}$ denote either a finite sequence $( a _ { k } ) _ { k = 0 , \dots , N - 1}$ of length $N$ or an infinite sequence $( a _ { k } ) _ { k \geq 0}$ over a Galois field ${F} = \operatorname{GF} ( q )$ (in the latter case, put $N = \infty$). For every positive integer $k<N$, denote by $L _ { k } ( \mathbf{a} )$ the length of an LFSR $\Lambda _ { k } ( \mathbf{a} )$ of least length over $F$ capable of producing a shift register sequence ${\bf s} ^ { ( k ) }$ which agrees with $\mathbf{a}$ for the first $k$ entries $a _{0} , \dots , a _ { k - 1 }$. In this way, one obtains a sequence $\mathbf{L} = ( L _ { k } ( \mathbf a ) )$ of the same length $N$, which is called the linear complexity profile of $\mathbf{a}$. Then one defines the linear complexity $L ( \mathbf{a} )$ of $\mathbf{a}$ as the maximum value of all $L _ { k } ( \mathbf{a} )$ if these values are bounded, and as $\infty$ otherwise. Thus, $L ( \mathbf{a} ) = \infty$ if and only if $\mathbf{a}$ is an infinite sequence which is not ultimately periodic (cf. Ultimately periodic sequence), and $L ( \mathbf{a} ) = L _ { N } ( \mathbf{a} )$ if $\mathbf{a}$ is a finite sequence of length $N$. Hence the linear complexity profile constitutes a refinement of the linear complexity of a sequence. The linear complexity profile of $\mathbf{a}$ and the associated sequence of LFSRs $\Lambda _ { k } ( \mathbf{a} )$ can be computed efficiently by the celebrated Berlekamp–Massey algorithm, see [a1] or [a2].
The linear complexity of a sequence is an important aspect in judging its suitability for use in cryptography. A high linear complexity by itself does not guarantee any randomness properties of the sequence considered. The linear complexity profiles of binary random sequences are analyzed in [a3], Chap. 4, where it is shown that a binary random sequence $\mathbf{a}$ of length $N$ usually has linear complexity very close to $N / 2$ with the complexity profile growing in a roughly (but not exactly!) continuous manner (so that $L _ { k } ( \mathbf{a} )$ is close to $k / 2$). Moreover, using $\mathbf{a}$ to generate a periodic sequence $\mathbf{s}$ with period $N$ results in a linear complexity close to $N$, provided that $N$ is a power of $2$ or a Mersenne prime number (cf. Mersenne number). Consequently, a periodic binary sequence with good randomness properties should have complexity close to the period length and a profile growing more or less smoothly.
References
[a1] | R.E. Blahut, "Theory and practice of error control codes", Addison-Wesley (1983) |
[a2] | D. Jungnickel, "Finite fields: Structure and arithmetics", Bibliographisches Inst. Mannheim (1993) |
[a3] | R. Rueppel, "Analysis and design of stream ciphers", Springer (1986) |