%% This is a LaTeX document.  Hey, Emacs, -*- latex -*- , get it?
\documentclass[12pt]{article}
\usepackage[francais]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{times}
% A tribute to the worthy AMS:
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}
%
\usepackage{mathrsfs}
\usepackage{wasysym}
\usepackage{url}
%
\theoremstyle{definition}
\newtheorem{comcnt}{Tout}
\newcommand\exercice{%
\refstepcounter{comcnt}\bigbreak\noindent\textbf{Exercice~\thecomcnt.}}
\newcommand{\limp}{\mathrel{\Rightarrow}}
\newcommand{\liff}{\mathrel{\Longleftrightarrow}}
\newcommand{\pgcd}{\operatorname{pgcd}}
\newcommand{\ppcm}{\operatorname{ppcm}}
\newcommand{\signe}{\operatorname{signe}}
\newcommand{\tee}{\mathbin{\top}}
\newcommand{\Frob}{\operatorname{Frob}}
\DeclareUnicodeCharacter{00A0}{~}
%
\newif\ifcorrige
\corrigetrue
\newenvironment{corrige}%
{\ifcorrige\relax\else\setbox0=\vbox\bgroup\fi%
\smallbreak\noindent{\underbar{\textit{Corrigé.}}\quad}}
{{\hbox{}\nobreak\hfill\checkmark}%
\ifcorrige\relax\else\egroup\fi\par}
%
%
%
\begin{document}
\ifcorrige
\title{INFMDI720\\Contrôle de connaissance --- Corrigé\\{\normalsize Rappels mathématiques pour la cryptographie}}
\else
\title{INFMDI720\\Contrôle de connaissance\\{\normalsize Rappels mathématiques pour la cryptographie}}
\fi
\author{}
\date{25 novembre 2014}
\maketitle
\pretolerance=10000
\tolerance=8000

\vskip1truein\relax

\noindent\textbf{Consignes.}

Les exercices sont complètement indépendants.  Ils pourront être
traités dans un ordre quelconque, mais on demande de faire apparaître
de façon très visible dans les copies où commence chaque exercice.

Il n'est pas nécessaire de faire des réponses longues.

L'usage de tous les documents (notes de cours manuscrites ou
imprimées, livres) est autorisé.

L'usage des calculatrices électroniques est interdit.

Durée : 2h

\bigbreak

%
%
%

\renewcommand*{\thefootnote}{(\alph{footnote})}

\exercice

On rappelle que $1\,000\,000! = 1 \times 2 \times 3 \times \cdots
\times 1\,000\,000$ (produit de tous les entiers entre $1$ et
$1\,000\,000$).  On s'intéresse au nombre $2^{1\,000\,000!}$.

(1) Pourquoi $4$ divise-t-il $2^{1\,000\,000!}$ ?  À quoi
$2^{1\,000\,000!}$ est-il congru modulo $4$ ?
\begin{corrige}
On a évidemment $1\,000\,000! \geq 2$, donc $2^2 = 4$ divise
$2^{1\,000\,000!}$.  Autrement dit, $2^{1\,000\,000!}$ est congru
à $0$ modulo $4$.
\end{corrige}

(2) Que vaut $\varphi(25)$ (où $\varphi$ désigne la fonction
indicatrice d'Euler) ?  Que vaut $2^{20}$ modulo $25$ ?
\begin{corrige}
On a $\varphi(25) = \frac{4}{5}\times 25 = 20$.  Puisque $2$ est
premier à $25$, le théorème d'Euler permet d'en déduire que $2^{20}
\equiv 1 \pmod{25}$.
\end{corrige}

(3) Déduire de (2) la valeur de $2^{1\,000\,000!}$ modulo $25$.
\begin{corrige}
Il est évident que $1\,000\,000!$ est multiple de $20$ (puisque $20$
est un des facteurs du produit $1\,000\,000! = 1 \times 2 \times
\cdots \times 1\,000\,000$), disons $1\,000\,000! = 20\, N$ avec $N$
entier.  Alors $2^{1\,000\,000!} = (2^{20})^N \equiv 1^N = 1
\pmod{25}$.
\end{corrige}

(4) En utilisant le théorème chinois, déduire de (1) et (3) la valeur
de $2^{1\,000\,000!}$ modulo $100$.
\begin{corrige}
D'après les questions (1) et (3), $2^{1\,000\,000!}$ est congru à $0$
modulo $4$ et à $1$ modulo $25$.  On cherche donc quel nombre entre
$0$ et $99$ est congru à $0$ modulo $4$ et à $1$ modulo $25$.

On calcule une relation de Bézout entre $25$ et $4$ : comme $25 =
6\times 4 + 1$, on a $1 = 25 - 6\times 4$.  La version explicite du
thèorème chinois (ou la simple observation de cette formule) montre
alors que $-6\times 4$ est congru à $1$ modulo $25$ et à $0$
modulo $4$.  Autrement dit, $2^{1\,000\,000!} \equiv -6\times 4 = -24
\equiv 76 \pmod{100}$.
\end{corrige}

(5) Quels sont les deux derniers chiffres de l'écriture décimale
de $2^{1\,000\,000!}$ ?
\begin{corrige}
On vient de voir que $2^{1\,000\,000!} \equiv 76 \pmod{100}$,
c'est-à-dire que $2^{1\,000\,000!}$ s'écrit comme $76$ plus un
multiple de $100$, ce dernier ayant ses deux derniers chiffres nuls en
écriture décimale, dont les deux derniers chiffres de
$2^{1\,000\,000!}$ en décimal sont : $76$.
\end{corrige}

%
%
%

\exercice

(1) Vérifier que le polynôme $t^2 + 1 \in \mathbb{F}_7[t]$ est
irréductible.
\begin{corrige}
On vérifie simplement que $0^2 + 1 = 1$, $(\pm 1)^2 + 1 = 2$, $(\pm
2)^2 + 1 = 5$ et $(\pm 3)^2 + 1 = 10 = 3$ dans $\mathbb{F}_7$, donc
$x^2 + 1$ ne s'annule pour aucun $x \in \mathbb{F}_7$, donc $t^2 + 1$
n'a pas de racine dans $\mathbb{F}_7$.  Comme ce polynôme est de
degré $\leq 3$, il est irréductible.

Autre méthode : on peut appliquer le critère d'irréductibilité de
Rabin.  Il s'agit alors de vérifier que $t^2 + 1$ divise $t^{49} - t$
et est premier avec $t^7 - t$.  Pour cela, on calcule modulo $t^2 +
1$ : on a $(\bar t)^2 = -1$ donc $(\bar t)^3 = -\bar t$ et $(\bar t)^4
= 1$, donc $(\bar t)^7 = -\bar t$, donc $(\bar t)^{49} = ((\bar
t)^7)^7 = (-\bar t)^7 = \bar t$.  Ces calculs montrent que $(\bar
t)^{49} - \bar t = 0 \in \mathbb{F}_7[t]/(t^2 + 1)$ et que $(\bar t)^7
- \bar t = -2\bar t \in \mathbb{F}_7[t]/(t^2 + 1)$ : le premier
signifie bien que $t^2 + 1$ divise $t^{49} - t$, et le second signifie
que le reste de la division euclidienne de $t^7 - t$ par $t^2 + 1$
vaut $-2t$ (ou $5t$, si on préfère) ; pour conclure l'algorithme
d'Euclide entre $t^7 - t$ et $t^2 + 1$, il s'agit ensuite de diviser
$t^2 + 1$ par $5t$, ce qui donne $t^2 + 1 = 5t\times 3t + 1$, si bien
que le reste ($1$) est une constante, et le pgcd vaut $1$ donc les
polynomes $t^7 - t$ et $t^2 + 1$ sont bien premiers entre eux, et le
critère de Rabin permet bien d'affirmer que $t^2 + 1 \in
\mathbb{F}_7[t]$ est irréductible.
\end{corrige}

On pose $F := \mathbb{F}_7[t]/(t^2 + 1)$.

(2) Que peut-on dire de $F$ (nombre d'éléments, structure
algébrique) ?
\begin{corrige}
Comme $\deg(t^2+1) = 2$, le nombre d'éléments de $F$ est $7^2 = 49$.
Comme $t^2 + 1$ est irréductible (on vient de le voir), $F$ est un
corps.  C'est donc le corps $\mathbb{F}_{49}$ à $49$ éléments.
\end{corrige}

Dans ce qui suit, on notera $\alpha$, plutôt que $\bar t$, l'élément
de $F$ représenté par l'indéterminée $t$ (autrement dit, la classe de
$t$ modulo $t^2 + 1$).

(3) Quel est l'ordre multiplicatif de $\alpha \in F^\times$ ?
L'élément $\alpha$ est-il primitif dans $F$ ?
\begin{corrige}
On a $\alpha^2 = -1$ puisque $\alpha^2 + 1 = 0$ par définition (on
travaille modulo $t^2 + 1$).  Par conséquent, $\alpha^3 = -\alpha$ et
$\alpha^4 = -\alpha^2 = 1$.  [Si on a résolu la question (1) en
  utilisant le critère de Rabin, on a déjà fait ces calculs ci-dessus,
  il n'est bien sûr pas nécessaire de les répéter.]  On peut donc
conclure que $\alpha$ est d'ordre multiplicatif $4$, et comme
$\#(F^\times) = 49 - 1 = 48$, cet élément n'est pas primtif.
\end{corrige}

(Il pourra être utile, pour simplifier certains calculs, de se
rappeler que l'élément $6 \in \mathbb{F}_7$ s'écrit aussi $-1$.)

(4) Que valent $(2+\alpha)^2$, $(2+\alpha)^3$, $(2+\alpha)^4$,
$(2+\alpha)^6$, $(2+\alpha)^8$, $(2+\alpha)^{12}$, $(2+\alpha)^{16}$,
$(2+\alpha)^{24}$ et $(2+\alpha)^{48}$ ?  (Cette dernière valeur
devrait permettre de vérifier que les calculs ont été correctement
menés : il est donc conseillé de se demander \textit{a priori} quelle
valeur on doit nécessairement trouver.)
\begin{corrige}
On calcule successivement (et en se rappelant que $\alpha^2 = -1$,
comme expliqué ci-dessus) :
\begin{itemize}
\item[$\bullet$] $(2+\alpha)^2 = 4 + 4\alpha + \alpha^2 = 3+4\alpha$
\item[$\bullet$] $(2+\alpha)^3 = (3+4\alpha)(2+\alpha) = 6 + 11\alpha
  + 4\alpha^2 = 2 + 4\alpha$
\item[$\bullet$] $(2+\alpha)^4 = (3+4\alpha)^2 = 9 + 24\alpha +
  16\alpha^2 = 3\alpha$
\item[$\bullet$] $(2+\alpha)^6 = (2+4\alpha)^2 = 4 + 16\alpha +
  16\alpha^2 = 2 + 2\alpha$
\item[$\bullet$] $(2+\alpha)^8 = (3\alpha)^2 = 9\alpha^2 = 5$
\item[$\bullet$] $(2+\alpha)^{12} = 5\times 3\alpha = \alpha$
\item[$\bullet$] $(2+\alpha)^{16} = 5^2 = 25 = 4$
\item[$\bullet$] $(2+\alpha)^{24} = \alpha^2 = -1$
\item[$\bullet$] $(2+\alpha)^{48} = (-1)^2 = 1$
\end{itemize}
On devait nécessairement trouver $(2+\alpha)^{48} = 1$, puisque
l'ordre multiplicatif de $2+\alpha$ doit diviser l'ordre du
groupe $F^\times$, soit $48$.
\end{corrige}

(5) En utilisant les valeurs calculées à la question précédente, quel
est l'ordre multiplicatif de $2+\alpha \in F^\times$ ?  L'élément
$2+\alpha$ est-il primitif dans $F$ ?
\begin{corrige}
L'ordre multiplicatif de $2+\alpha$ doit diviser l'ordre du
groupe $F^\times$, soit $48$.  Comme on a testé tous les diviseurs de
$48$ (à savoir $1, 2, 3, 4, 6, 8, 12, 16, 24, 48$), et que le plus
petit pour lequel $(2+\alpha)^n = 1$ est $48$ lui-même, cet ordre
multiplicatif vaut $48$, c'est-à-dire que $2+\alpha$ est primitif
dans $F$.
\end{corrige}

%
%
%

\exercice

On admettra que le polynôme $t^7 + t + 1 \in \mathbb{F}_2[t]$ est
irréductible.

On pose $F := \mathbb{F}_2[t]/(t^7 + t + 1)$.

(1) Que peut-on dire de $F$ (nombre d'éléments, structure
algébrique) ?  Quel est le nombre d'éléments de $F^\times$ ?
\begin{corrige}
Comme $\deg(t^7+t+1) = 7$, le nombre d'éléments de $F$ est $2^7 =
128$.  Comme $t^7 + t + 1$ est irréductible (on l'a admis), $F$ est un
corps.  C'est donc le corps $\mathbb{F}_{128}$ à $128$ éléments.  Le
nombre d'éléments de $F^\times$ est donc $128-1 = 127$.
\end{corrige}

Dans ce qui suit, on notera $\gamma$, plutôt que $\bar t$, l'élément
de $F$ représenté par l'indéterminée $t$ (autrement dit, la classe de
$t$ modulo $t^7 + t + 1$).

(2) \emph{Sans faire aucun calcul}, que peut-on dire de l'ordre
multiplicatif de $\gamma$ dans $F^\times$ ?  En remarquant que
l'entier $127$ est premier, quel est exactement l'ordre multiplicatif
de $\gamma$ dans $F^\times$ ?
\begin{corrige}
L'ordre multiplicatif de $\gamma$ doit diviser celui du groupe
$F^\times$, c'est-à-dire $127$.  Comme $127$ est premier, ses
diviseurs sont $1$ et $127$, et comme l'ordre de $\gamma$ n'est
pas $1$ (car $\gamma \neq 1$), il ne peut être que $127$.  Autrement
dit, $\gamma$ est primitif dans $F$.
\end{corrige}

On rappelle que $\Frob\colon F\to F$ est l'application $x \mapsto
x^2$.

(3) Calculer $\Frob^i(\gamma)$ (c'est-à-dire $\gamma^{2^i}$) pour $0
\leq i \leq 7$.  (Il peut être utile de commencer par calculer
$\gamma^7$.  Par ailleurs, la valeur $\Frob^7(\gamma)$ devrait
permettre de vérifier que les calculs ont été correctement menés : il
est donc conseillé de se demander \textit{a priori} quelle valeur on
doit nécessairement trouver.)
\begin{corrige}
On a $\gamma^7 + \gamma + 1 = 0$ par définition (on travaille
modulo $t^7 + t + 1$), donc $\gamma^7 = -(\gamma + 1) = \gamma + 1$
(on est en caractéristique $2$).  On a donc successivement (et en se
rappelat qu'ici, contrairement à l'exercice précédent, on est en
caractéristique $2$, donc $(u+v)^2 = u^2 + v^2$) :
\begin{itemize}
\item[$\bullet$] $\Frob^0(\gamma) = \gamma$
\item[$\bullet$] $\Frob^1(\gamma) = \gamma^2$
\item[$\bullet$] $\Frob^2(\gamma) = \gamma^4$
\item[$\bullet$] $\Frob^3(\gamma) = \gamma^8 = \gamma\times\gamma^7 =
  \gamma(\gamma+1) = \gamma^2 + \gamma$
\item[$\bullet$] $\Frob^4(\gamma) = (\gamma^2 + \gamma)^2 = \gamma^4 +
  \gamma^2$
\item[$\bullet$] $\Frob^5(\gamma) = (\gamma^4 + \gamma^2)^2 = \gamma^8
  + \gamma^4 = \gamma^4 + \gamma^2 + \gamma$
\item[$\bullet$] $\Frob^6(\gamma) = (\gamma^4 + \gamma^2 + \gamma)^2 =
  \gamma^8 + \gamma^4 + \gamma^2 = \gamma^4 + \gamma$
\item[$\bullet$] $\Frob^7(\gamma) = (\gamma^4 + \gamma)^2 = \gamma^8 +
  \gamma^2 = \gamma$
\end{itemize}
(Ce sont là les conjugués absolus de $\gamma$.)

On devait nécessairement trouver $\Frob^7(\gamma) = \gamma$, puisque
le degré (absolu) de $\gamma$ doit diviser le degré (absolu) de $F$,
c'est-à-dire $7$ (ou, de façon équivalente, $\gamma^{128} = \gamma$ à
cause du petit théorème de Fermat dans les corps finis).
\end{corrige}

%
%
%
\end{document}
