Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
Ú
Úvod do kryptografie
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Package registry
Model registry
Operate
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Martin Mareš
Úvod do kryptografie
Commits
6dd86795
Commit
6dd86795
authored
2 months ago
by
Martin Mareš
Browse files
Options
Downloads
Patches
Plain Diff
Teorie čísel: Kvadratické zbytky (skoro)
parent
8ecb16bc
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
07-teorie-cisel/teorie-cisel.tex
+85
-0
85 additions, 0 deletions
07-teorie-cisel/teorie-cisel.tex
with
85 additions
and
0 deletions
07-teorie-cisel/teorie-cisel.tex
+
85
−
0
View file @
6dd86795
...
@@ -672,6 +672,91 @@ nějaký najdeme.
...
@@ -672,6 +672,91 @@ nějaký najdeme.
\section
{
Diskrétní odmocniny
}
\section
{
Diskrétní odmocniny
}
Prozkoumejme, jak se v~
$
\Zp
$
chovají druhé odmocniny (v~tomto oddílu budeme říkat prostě odmocniny).
Ptáme se tedy na řešení kongruence
$
x
^
2
\equiv
_
p a
$
pro dané~
$
a
$
.
\example
{
V~
$
\Z
_
5
$
je
$
0
^
2
\equiv
0
$
,
$
1
^
2
\equiv
4
^
2
=
1
$
a
$
2
^
2
\equiv
3
^
2
\equiv
4
$
.
Prvky 1 a~4 tedy mají dvě různé odmocniny, 0 má jednu a 2 ani 3 žádnou.
}
Tohle není náhoda:
\theorem
{
V~každém tělese
$
\Zp
$
má prvek 0 právě jednu odmocninu,
$
(
p
-
1
)/
2
$
prvků má dvě odmocniny
(těmto prvkům se říká
\em
{
kvadratické zbytky
}
) a zbylých
$
(
p
-
1
)/
2
$
prvků nemá žádnou.
Zvolíme-li libovolný generátor~
$
\Zp
$
, kvadratické zbytky jsou ty prvky, jejichž
diskrétní logaritmy jsou sudé.
}
\proof
Je-li
$
x
^
2
\equiv
a
$
, je také
$
(-
x
)
^
2
\equiv
a
$
. Odmocniny se tedy vyskytují
v~párech. Přitom
$
x
\equiv
-
x
$
pouze pro
$
x
=
0
$
, takže každý nenulový prvek má sudý
počet odmocnin. 0~má jen jednu (součinem nenulových prvků není nikdy~0).
Odmocniny prvku~
$
a
$
jsou kořeny kvadratického polynomu
$
x
^
2
-
a
$
a ty mohou
v~libovolném tělese existovat nejvýš~2. To v~kombinaci s~předchozím odstavcem dává,
že každy nenulový prvek má 0 nebo 2 odmocniny.
Každý nenulový prvek~
$
\Zp
$
leží v~
$
\Zsp
$
, takže ho můžeme napsat jako mocninu nějakého
generátoru~
$
g
$
. Polovinu~
$
\Zsp
$
tvoří sudé mocniny
$
g
^{
2
k
}$
a ty jistě mají druhou
odmocninu
$
g
^
k
$
, a~tím pádem i
$
g
-
^
k
$
. Těchto
$
(
p
-
1
)/
2
$
čísel patří mezi kvadratické
zbytky.
Každé z~nich ovšem spotřebovalo 2~prvky
$
\Zsp
$
na své odmocniny, takže na zbylých
$
(
p
-
1
)/
2
$
prvků žádné odmocniny nezbyly. Zbylé prvky tedy kvadratickými zbytky nejsou.
\qed
\lemma
{
Pro libovolný generátor~
$
g
$
platí
$
g
^{
(
p
-
1
)/
2
}
\equiv
-
1
$
.
}
\proof
$
g
^{
(
p
-
1
)/
2
}$
je odmocnina z~
$
g
^
(
p
-
1
)
\equiv
1
$
. Odmocniny z~jedničky existují
dvě: 1 a~
$
-
1
$
. Ovšem 1 to být nemůže, protože by se mocniny generátoru začaly
opakovat dřív, než by vygenerovaly celou~
$
\Zsp
$
.
\qed
Jelikož diskrétní logaritmy je těžké počitat, bude se hodit efektivnější test
na kvadratické zbytky:
\theoremn
{
Eulerovo kriterium
}{
Pro
$
x
\in\Zsp
$
je
$
x
^{
(
p
-
1
)/
2
}$
rovno~1, pokud
$
x
$
je kvadratický zbytek,
a~rovno
$
-
1
$
, pokud není.
}
\proof
Opět uvažujme~
$
x
$
jako mocninu nějakého generátoru~
$
g
$
. Pokud
$
x
\equiv
g
^{
2
k
}$
(a~tedy
$
x
$
je kvadratický zbytek), dostaneme
$$
\left
(
g
^{
2
k
}
\right
)
^{
p
-
1
\over
2
}
\equiv
g
^{
2
k
(
p
-
1
)
\over
2
}
\equiv
g
^{
k
(
p
-
1
)
}
\equiv
(
g
^{
p
-
1
}
)
^
k
\equiv
1
^
k
\equiv
1
.
$$
Pro
$
x
\equiv
g
^{
2
k
+
1
}$
(není kvadratický zbytek), vyjde
$$
\left
(
g
^{
2
k
+
1
}
\right
)
^{
p
-
1
\over
2
}
\equiv
g
^{
2
k
(
p
-
1
)
\over
2
}
\cdot
g
^{
p
-
1
}
\equiv
1
\cdot
(-
1
)
\equiv
-
1
.
$$
\qed
\corr
{
Množina všech kvadratických zbytků tvoří podgrupu~
$
\Zsp
$
.
}
\corr
{
Testovat, zda číslo je kvadratickým zbytkem, lze v~čase
$
\O
(
b
^
3
)
$
.
}
TODO: Výpočet odmocnin.
TODO: Odmocniny modulo složené číslo.
\sectionstar
{
Rozbor Rabinova-Millerova testu
}
\sectionstar
{
Rozbor Rabinova-Millerova testu
}
O~Rabinově-Millerově testu již víme, že prvočíslo vždy prohlásí za~prvočíslo
O~Rabinově-Millerově testu již víme, že prvočíslo vždy prohlásí za~prvočíslo
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment