代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1:...

27
代数学と楕円曲線暗号 8 21 () 10:30 – 16:00 講師 : 加塩 朋和 E-mail : kashio [email protected] ※ 某高校生向けイベントで 暗号理論と代数学 に関するお話をさせていただきました. その時のレジュメです. なお, 当日は「暗号を解読してみよう!」というテキストが事前に 配布されていましたが (私が作ったものではないので) ここには未収録です. 目次 0 RSA 暗号: テキスト (※ 本レジュメには未収録) の復習 2 1 代数学 3 1.1 演算 ....................................... 3 1.2 代数的構造 ................................... 4 1.3 群論入門 (ラグランジュの定理の紹介) .................... 4 1.4 群論の応用例: 合同式, フェルマーの小定理, オイラーの定理 ........ 8 2 楕円曲線暗号 11 2.1 準備: 有限体 ................................... 11 2.2 楕円曲線 E(R) ................................. 12 2.3 有限体上の楕円曲線 E(F p ) ........................... 14 2.4 楕円曲線の離散対数問題 ............................ 16 2.5 楕円曲線エルガマル暗号 ............................ 16 3 付録1: 群論の補足 ··· 部分群とその応用 18 3.1 部分群とラグランジュの定理 ......................... 18 3.2 群論の応用例: 整数論 (倍数, 約数, 最大公約数) ............... 19 4 付録2: 素因数分解と 解析的整数論22 4.1 準備 ....................................... 22 4.2 素数の個数 ................................... 22 4.3 解析的整数論 ................................. 24 5 付録3: 講師の専門の紹介 26 「問題」について. 練習 ··· 私と一緒に解く練習問題. 問題 ··· 時間をとりますので, 各自で解いてみましょう. 難問 ··· その場でやるには難しい (?) 問題です. あとで考えてみて下さい. 研究 ··· 今回の目標です. じっくりやってみましょう. •§1, 2 は板書します. §3, 4, 5 はスライドを想定していますが, 時間次第で省略します. 最遅. 10:30-12:00 §1, 13:00-13:45 … 研究 1,2,3, 13:45-15:15 §2, 15:15-16:00 … 研究 4. 最速. 10:30-12:00 §1, 研究 1,2,3, 13:00-14:30 §2, 研究 4, 14:30-16:00 ··· §3,4,5. 1

Upload: others

Post on 01-Feb-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

代数学と楕円曲線暗号 8月21日 (水) 10:30 – 16:00

講師 : 加塩 朋和 E-mail : kashio [email protected]

※ 某高校生向けイベントで 暗号理論と代数学 に関するお話をさせていただきました.

その時のレジュメです. なお, 当日は「暗号を解読してみよう!」というテキストが事前に配布されていましたが (私が作ったものではないので)ここには未収録です.

目次

0 RSA暗号: テキスト (※ 本レジュメには未収録)の復習 2

1 代数学 3

1.1 演算 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 代数的構造 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3 群論入門 (ラグランジュの定理の紹介) . . . . . . . . . . . . . . . . . . . . 4

1.4 群論の応用例: 合同式, フェルマーの小定理, オイラーの定理 . . . . . . . . 8

2 楕円曲線暗号 11

2.1 準備: 有限体 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.2 楕円曲線 E(R) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.3 有限体上の楕円曲線 E(Fp) . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.4 楕円曲線の離散対数問題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.5 楕円曲線エルガマル暗号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3 付録1: 群論の補足 · · · “部分群” とその応用 18

3.1 部分群とラグランジュの定理 . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.2 群論の応用例: 整数論 (倍数, 約数, 最大公約数) . . . . . . . . . . . . . . . 19

4 付録2: 素因数分解と “解析的整数論” 22

4.1 準備 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.2 素数の個数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.3 “解析的” 整数論 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

5 付録3: 講師の専門の紹介 26

• 「問題」について.

練習 · · · 私と一緒に解く練習問題.問題 · · · 時間をとりますので, 各自で解いてみましょう.難問 · · · その場でやるには難しい (?)問題です. あとで考えてみて下さい.研究 · · · 今回の目標です. じっくりやってみましょう.

• §1, 2 は板書します. §3, 4, 5 はスライドを想定していますが, 時間次第で省略します.

最遅. 10:30-12:00 … §1, 13:00-13:45 … 研究 1,2,3, 13:45-15:15 … §2, 15:15-16:00 … 研究 4.最速. 10:30-12:00 … §1, 研究 1,2,3, 13:00-14:30 … §2, 研究 4, 14:30-16:00 · · · §3,4,5.

1

Page 2: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

0 RSA暗号: テキスト (※ 本レジュメには未収録)の復習• 秘密裏に伝えたいこと 平文 と呼びます.

• 平文を, 第三者に分からない形に変えることを 暗号化 と呼びます.

• 受け取った暗号文を平文に戻すことを 復号化 と呼びます.

暗号化–復号化は幾つかの種類があります. 今回は RSA暗号 に着目しています.

例 1 (RSA暗号の例: テキスト p25–26, §7.1–7.3). A さんが秘密裏に

平文: a = 91

という情報を, Bさんに伝えたいとします. 一旦

暗号化: C(a) = “a3 を 493 で割った余り” = 267

に暗号化します. C(a) = 267 は暗号文で, 第三者には何のことか分かりません. Bさんはこの暗号文を復号化します:

復号化: = “C(a)299 を 493 で割った余り” = 91.

見事, 伝えたかった情報が復元できました.

一般的に, 次のことが分かります (ただし a mod n は a を n で割った余りとする):

RSA暗号� �前提: p, q: 相異なる素数, e, d, k: 自然数 で, ed− k(p− 1)(q − 1) = 1 を満たす.

操作: pq 未満の自然数 a (平文)暗号化⇒ C(a) := ae mod pq

復号化⇒ a′ := C(a)d mod pq.

帰結: このとき a = a′ が成り立つ.� �上の例は, p = 17, p = 29, e = 3, d = 299, k = 2, a = 91 のでの実例となっています.

RSA暗号の原理. 暗号は手品ではなく, ちゃんとした “原理” があります.

原理1. · · · 第三者には解読が難しい. 今回は「素因数分解の難解さ」によります.

原理 2. · · · 間違いなく復号化できる. 今回は

定理 2 (テキスト p27–28, §7.4). p, q は相異なる素数で, e, d, k は ed− (p− 1)(q− 1)k = 1

を満たす自然数とする. このとき

a ≡ aed mod pq, すなわち “a を pq で割った余り” と “aed を pq で割った余り”が等しい.

によります. この定理の証明に

約数・倍数, 合同式, ベズー方程式, そして オイラーの定理: “aφ(n) ≡ 1 mod n”

等の理論が必要でした.

今日は, これらの理論の “裏” に 代数学, とくに 群論 があることを紹介します.

2

Page 3: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

1 代数学大学の “数学科” で教えている分野を大きく分けると [代数学] [幾何学] [解析学] の三つになります. 幾何学, 解析学はおそらくイメージ通りの学問です. そして

代数学は演算の性質を調べる学問

だと言えます. 暗号理論の多くは「演算」を使っていますので, 代数学の範疇になります.

1.1 演算

演算 (二項演算)は「二つ定まればもう一つ定まる」ルールのことです. 厳密に書くと

定義 3. A を集合とする. ⋆ が A 上の演算 である, とは

a, b ∈ A ⇒ a ⋆ b ∈ A がただ一つ定まる

事とする.

注意 4. 大学での数学の授業では “あいまいさ” と “冗長さ” を避けるため, 日本語での表記を少なくします. 今日もこの流儀に乗っ取ってお話しするので, しっくりこない場合は気軽に質問して下さい. なお, 上記の

a, b ∈ A ⇒ a ⋆ b ∈ A がただ一つ定まる

は “日本語訳” すると

• A の要素のうち二つを取って, a, b とおく (a, b ∈ A).

• このとき (⇒)

• 記号 a ⋆ b で表記される A の要素がただ一つ定まる (a ⋆ b ∈ A がただ一つ定まる).

となります.

例 5. N := {1, 2, 3, . . . } =“自然数全体”, Z := {. . . ,−2,−1, 0, 1, 2, . . . } =“整数全体”,

R :=“実数全体”, とおく. ここで『∼ := · · ·』は『· · · で ∼ を定義する』という記号です.

(1) ⋆ := + は N 上の演算となる. 実際

自然数を二つ取ってきて a, b とおく. このとき “和” a+ b も自然数となる.

『N 上』を『Z 上』や『R 上』に替えても同じ.

(2) ⋆ := × も N 上の演算となる. Z 上や R 上でも同じ.

(3) ⋆ := − は N 上の演算とならない (∵ 1− 2 /∈ N). しかし Z 上や R 上の演算となる.

(4) m ⋆ y := min(m,n) :=

{m (m ≤ n)

n (n < m)は N 上の演算となる. Z 上, R 上でも同じ.

練習 1. ⋆ := ÷ が R 上の演算となるかどうか考えよ.

3

Page 4: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

1.2 代数的構造

代数学では, 最初に “演算が満たすべき都合の良いルール” を想定して議論を開始します. 「どのようなルールを想定するか」には多くのパターンがあり, それぞれに名前がついています. 名前だけ列挙すると

• 標準的に扱う「パターン」 · · · ベクトル空間 (線形代数), 群 (論), 環 (論), 体 (論).

• 専門によって扱ったり扱わなかったり · · · 加群 (論), ガロア理論.

• かなりレア? · · · 半群, ホップ代数, etc.

例えば授業で「今から群論の授業を始めます」と言われたら

定義 6. 空集合でない集合 G上に演算 ⋆が定まり, さらに以下の法則を満たすと仮定する.

(1) a, b, c ∈ G ⇒ (a ⋆ b) ⋆ c = a ⋆ (b ⋆ c).

(2) [a ∈ G ⇒ a ⋆ e = e ⋆ a = a] を満たすある特別な要素 e ∈ G が, ただ一つ存在する.

(3) 各要素 a ∈ G に対し a ⋆ a′ = a′ ⋆ a = e となる要素 a′ ∈ G が対応する.

を想定します. それぞれの法則は (1) 結合法則, (2) 単位要素の存在, (3) 逆要素の存在, と呼ばれます. 定義中に (0) ⋆ は G 上の演算である 事も含まれていることに注意.

1.3 群論入門 (ラグランジュの定理の紹介)

定義 6 を満たす集合 G とその上の演算 ⋆ の組 (G, ⋆) を 群 と呼びます. 例えば

(Z,+), (R,+), ({1,−1},×), ({x | x ∈ R, x ̸= 0},×)

は, それぞれ群になっています. 実際, (Z,+) と (R,+) は, G := Z,R それぞれに対して

(0) a, b ∈ G ⇒ a+ b ∈ G.

(1) a, b, c ∈ G ⇒ (a+ b) + c = a+ (b+ c)

(2) a ∈ G ⇒ a+ 0 = 0 + a = a

(3) a ∈ G ⇒ a+ (−a) = (−a) + a = 0

が常に成り立つことを要請しているだけなので, 明らかでしょう.

一方で

(N,+)

は群になっていません: (0), (1) は成り立ちますが

(2) a ∈ N ⇒ a+ ? = ? + a = a

を満たすような自然数 ? が存在しないことが証明できます. (∵ 存在するとしたら ? = 0

ですが 0 /∈ N です.)

4

Page 5: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

例 7. ({1,−1},×) が群であることを確かめてみましょう.

(0) 1× 1 = 1, 1× (−1) = −1, (−1)× 1 = −1, (−1)× (−1) = 1 は全て {1,−1} の要素.

(1) 掛け算なので (a× b)× c = a× (b× c)は自明.

(2) 掛け算なので e = 1 が a× 1 = 1× a = a を満たす.

(3) ((2) で e = 1 と決まったので) 1 × x = x × 1 = 1, (−1) × y = y × (−1) = 1 となるx, y ∈ {1,−1} を見つければよい. 実際 x = 1, y = −1 が題意を満たす.

問題 1. ({x | x ∈ R, x ̸= 0},×) が群であることを確かめよ. ただし e を 1 とする.

さて, なぜ「群論」を学ぶかというと

• 多くのモノが群である.

• 群でさえあれば成り立つ定理が沢山ある.

• (各定理を具体的なモノに適用すると) 実用的な応用がある.

という感じになります. 例えば「ルービックキューブ」というパズル (知ってますよね?)

に関して

ルービックキューブに行える操作の全体

は群になっています. これに群論を使うことで「ルービックキューブの解法」を考えることもできます. (この感じは, 環論, 体論, etc. などでも同様です.)

定義 8 (群の定義の補足). (1) 群 (G, ⋆) の演算の方を略して G は群 とも書く.

(2) 定義 6-(2) の e を 群 G の単位要素 と呼ぶ.

(3) 定義 6-(3) の a′ を 要素 a の逆要素 と呼ぶ.

(4) 演算 ⋆ が “掛け算っぽい” ときは, e, a′ を, それぞれ 1, a−1 で表すことが多い. また⋆ を省略する (ab := a ⋆ b) ことも多い.

(5) 演算 ⋆ が “足し算っぽい” ときは, e, a′ を, それぞれ 0,−a で表すことが多い.

(6) 以下のように繰り返し演算した結果を

an := a ⋆ a ⋆ · · · ⋆ a︸ ︷︷ ︸n 個の a

(a ∈ G, n ∈ N)

と書く. (定義-(1) より, これは計算の順序に寄らない.) さらに

a0 :=定義-(2) の単位要素 e(4)= 1,

a−1 :(4)= 定義-(3) の逆要素 a′,

a−n := a−1 ⋆ a−1 ⋆ · · · ⋆ a−1︸ ︷︷ ︸n 個の a−1

(a ∈ G, n ∈ N).

とおく. ただし演算が “足し算っぽい”ときは,それぞれ na, 0a = 0,−a,−naと書く.

5

Page 6: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

以下, 群論の中心的な定理の一つである ラグランジュの定理 (version 1) を紹介して,

次節以降で暗号理論への応用を見ていきます. (ラグランジュの定理は §3 で紹介予定.)

定義 9. 群 G に含まれる要素の個数 n(G) を, 群 G の位数 と呼ぶ. 位数が有限の群を有限群, 位数が無限の群を無限群と呼ぶ.

練習 2. H :=

{x,

1

x

}, f(x) ◦ g(x) := f(g(x)) (合成, つまり代入) とおく. このとき (H, ◦)

は位数 2 の有限群であることを示せ.

証明. まず ◦ が演算であること, すなわち

(0) f(x), g(x) ∈ H ⇒ f(x) ◦ g(x) = f(g(x)) ∈ H

を確かめる. これは総当たり的に

x ◦ x = x, x ◦ 1

x=

1

x,

1

x◦ x =

1

x,

1

x◦ 1

x=

11x

= x

と計算してみて,全て H の要素であることから従う. 一般に合成 (代入)に関する結合法則

(1) (f(x) ◦ g(x)) ◦ h(x) = f(x) ◦ (g(x) ◦ h(x)) · · · (†)

は成立する. 実際

(f(x) ◦ g(x)) ◦ h(x) = [f(g(x)) の x に h(x) を代入] = f(g(h(x))),

f(x) ◦ (g(x) ◦ h(x)) = [f(x) の x に g(h(x)) を代入] = f(g(h(x)))

なので等しくなる. さらに上の計算結果から, H の単位要素は x, x の逆要素は x, 1xの逆

要素は 1xだと分かる. 実際

(2) f(x) ∈ H ⇒ f(x) ◦ x = x ◦ f(x) = f(x),

(3) x ◦ x = x, 1x◦ 1

x= x.

注意 10. 以下のように, 演算の結果をまとめたものを 演算表 などと呼びます.

a÷ b b

1 2

a 1 1 0.5

2 2 1

f(x) ◦ g(x) g(x)

x 1x

f(x) x x 1x

1x

1x

x

とくに有限群は, 演算表を一度作っておくと, その後の議論が楽になります.

研究 1. G :=

{x,

x−√3√

3x+ 1,

x+√3

−√3x+ 1

,1

x,

√3x+ 1

x−√3,−√3x+ 1

x+√3

}, f(x) ◦ g(x) := f(g(x))

とおく. 適宜 手分けして 演算表 (p27, 別紙参照) をつくり, (G, ◦) は位数 6 の有限群であることを示せ. ただし, 上記 (†) より, 合成 (代入)に関する結合法則は一般に成立するので, 証明は省略してよい.

6

Page 7: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

定義 11. 群 G を考える. 各 g ∈ G に対し

min{n ∈ N | gn = e} = “何回演算すると初めて単位要素になるか”

を, 要素 g の位数 と呼ぶ. ただし gn ̸= e (n ∈ N) となるときは, 位数は ∞ と考える.

例 12. 例 7 の群 ({1,−1},×) を考える. 単位要素は 1 であった.

(1) 1 の位数は 1 である. 実際 11 = 1. (定義より, 単位要素 e の位数は常に 1 となる.)

(2) −1 の位数は 2 である. 実際 (−1)1 = −1 ̸= 1, (−1)2 = 1.

定理 13 (ラグランジュの定理 (version 1)). 有限群 G を考える. 任意の要素 g ∈ G に対し, g の位数は n(G) の約数となる.

証明. “部分群” という概念が必要. もし時間があれば, §3.1 で証明の概略を紹介する.

研究 2. 適宜 手分けして, 研究 1 の群 G の各要素の位数を求めよ (p27, 別紙 の演算表参照). さらに上の定理の主張が成立していることを確かめよ.

注意 14. 群 (G, ⋆) が, さらに

(4) a, b ∈ G ⇒ a ⋆ b = b ⋆ a.

を満たすとき 可換群 と呼ぶ. 今回の話に出てくる群は (簡単のため) 研究 1 を除き全て可換群です.

難問 1. 三つの要素からなる集合 A = {1, 2, 3} を考え, “A の要素の入れ替え全体” のなす集合 S3 を考える. 例えば

1 2 3

↓ ↓ ↓2 3 1

は S3 の要素となる. この要素を (1 2 3

2 3 1

)

で表すことにする.

(1 2 3

1 1 2

)のような要素はない (∵ 行き先に 1 が重複しているので

入れ替えになっていない) ことに注意.

(1) S3 の要素を全て書き出せ.

(2) S3 上の演算 ◦ を

7

Page 8: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

σ ◦ τ := “τ で入れ替えたあと, 続けて σ で入れ替える”

で定める. 例えば

(1 2 3

2 3 1

)◦

(1 2 3

2 3 1

)=

1 2 3

↓ ↓ ↓2 3 1

↓ ↓ ↓3 1 2

=

(1 2 3

3 1 2

)

となる. (S3, ◦) は非可換群である (群であるが可換群でない) ことを示せ.

※ n 個の要素 1, 2, . . . , n の入れ替え全体のなす集合 Sn でも同様である. 群 (Sn, ◦) はn 次対称群 と呼ばれる.

1.4 群論の応用例: 合同式, フェルマーの小定理, オイラーの定理

合同式 は

a ≡ b mod ndef⇔ “a を n で割った余り” = “b を n で割った余り”

という意味でした. この “合同 ≡” は, ある集合 (というか群)上の “等号 =” に言い換えることができます.

まずはテキスト p17, §6.1 の定理 19 (ベズー方程式) を思い出しておきましょう.

定理 15. a, b ∈ N に対し

a, b が互いに素 ⇔ 方程式 ax+ by = 1 が整数解 x, y をもつ.

証明. (⇒) は互除法を用いて証明できる (テキスト p17, 例 20参照).

(⇐) を背理法で示す: すなわち

方程式 ax+ by = 1 が整数解 x, y をもち, G := “a, b の最大公約数” > 1

と仮定して矛盾を導く. 実際 a = Ga0, b = Gb0 と書けるので

1 = ax+ by = G(a0x+ b0y)

となり, 1 が G > 1 の倍数になるので矛盾.

定義 16. N ∈ N に対して

ΦN := {a | 1 ≤ a ≤ N, a,N は互いに素 },

a⊗ b := ab を N で割った余り

とおく. また, 任意の整数 a に対し (もし a > N や a < 0 でも)

a := a を N で割った余り

と定義する. とくに N と互いに素な a, b に対して

a ≡ b mod N ⇔ (ΦN の要素として) a = b.

8

Page 9: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

例 17. N = 10 として考えると

Φ10 = {1, 3, 7, 9},1⊗ 7 = 1× 7 = 7, 7⊗ 9 = 7× 9 = 63 = 3, etc.

となります. 1 や 7⊗ 9 などの記法は, 普通の整数 1 や普通の掛け算 7× 9 = 63 とは違うという “目印” で, 本質的な意味はありません.

定理 18. (ΦN ,⊗) は, 位数 φ(N) の有限群である. ただし φ はオイラーのファイ関数とする.

証明. 証明すべきことは以下の三つである:

(a) ⊗ は ΦN 上の演算.

(b) 結合法則, 単位要素の存在, 逆要素の存在.

(c) n(ΦN) = φ(N).

(c) はオイラーのファイ関数の定義より直ちに従う. (b) の結合法則は

(a⊗ b)⊗ c = ab⊗ c = (ab)c = a(bc) = a⊗ bc = a⊗ (b⊗ c)

より従う (真ん中の = は整数の掛け算の結合法則). 単位要素は e = 1 が定義を満たす.

(a) の証明: まず

[a と N は互いに素] かつ [b と N は互いに素] ⇒ [ab と N は互いに素]

を言う. 実際a,N は互いに素 定理 15⇒ as+Nt = 1 (s, t ∈ Z)

b,N は互いに素 定理 15⇒ bu+Nv = 1 (u, v ∈ Z)

⇒ 1 = (as+Nt)(bu+Nv) = ab(su) +N(tu+ sv +Ntv)定理 15⇒ ab,N は互いに素.

あとは

[c(:= ab) と N は互いに素] ⇒ [“c を N で割った余り” と N は互いに素]

を言えばよいが, テキスト p11, §5.2 の補題 10 (= このプリントの p21, §3.2 の定理 36)

より明らかであろう.

(b) の逆要素の存在:

(♯) · · · [a,N は互いに素] ⇒ [b,N は互いに素] かつ [a⊗ b = 1] となる b が存在

9

Page 10: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

を言えばよい. 上と同様に

a,N は互いに素 定理 15⇒ as+Nt = 1 (s, t ∈ Z)

と書ける. b := s とおけば

a⊗ b = ab = 1−Nt = 1

を得る. また, a, b(= s) の役割を入れ替えて

ba+Nt = 1定理 15⇒ b,N は互いに素

を得る.

RSA暗号

平文 a ⇒ 暗号文 C(a) ≡ ae mod (pq)

の復号化

暗号文 C(a) ⇒ 平文 a ≡ C(a)d mod (pq)

に用いられていた オイラーの定理 を, 群論を使って証明してみます. (ここで p, q は相異なる素数で, e, d は ed+ (p− 1)(q − 1)k = 1 (k ∈ Z) を満たす自然数.)

定理 19. (1) (オイラーの定理) a, n ∈ N に対し aφ(n) ≡ 1 mod n.

(2) (フェルマーの小定理) 素数 p と, p と互いに素な a ∈ N に対し ap−1 ≡ 1 mod p.

証明. (1) 群 Φn の “言葉” で言うと, 主張は

aφ(n) = 1

であり,これは定理 13(ラグランジュの定理 (version 1))と,定理 18(とくに n(Φn) = φ(n))

より従う.

(2) φ(p) = p− 1 に注意すれば (1)より従う.

研究 3. (1) Φ32 の要素を全て書き下せ.

(2) φ(32) を求めよ. ただし φ はオイラーのファイ関数とする.

(3) 7 ∈ Φ32 の位数を求めよ.

(4) (テキスト p20, §6.2 の問題 29 (♣)) 720200825 を 32 で割った余りはなんですか?

10

Page 11: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

2 楕円曲線暗号群論の応用の一つとして 楕円曲線暗号 を紹介する.

2.1 準備: 有限体

定義 20. 空でない集合 F 上に, 2種類の演算: 加法 +, 乗法 · が定義されていて以下を満たすとき, (F,+, ·) は 体 である, という. 省略して F は体であるともいう.

(1) (F,+) は可換群である. すなわち

(a) 加法の結合法則: a, b, c ∈ F ⇒ (a+ b) + c = a+ (b+ c).

(b) 零要素の存在: [a ∈ F ⇒ a + 0 = 0 + a = a] を満たす特別な要素 0 ∈ F が存在する.

(c) 加法逆要素の存在: 各要素 a ∈ F に対し a+ (−a) = (−a) + a = 0 を満たす要素 −a ∈ F が対応する.

(d) 加法の可換性: a, b ∈ F ⇒ a+ b = b+ a.

(2) 乗法の結合法則: a, b, c ∈ F ⇒ a · (b · c) = (a · b) · c.

(3) 乗法単位要素の存在: [a ∈ F ⇒ a · 1 = 1 · a = a] を満たす特別な要素 1 ∈ F が存在する.

(4) 分配法則: a, b, c ∈ F ⇒ a · (b+ c) = (a · b) + (a · c), (a+ b) · c = (a · c) + (b · c).

(5) 乗法の可換性: a, b ∈ F ⇒ a · b = b · a.

(6) 乗法逆要素の存在: 零要素 0 以外の各要素 a ∈ F に対し a · a−1 = a−1 · a = 1 を満たす要素 a−1 ∈ F が対応する.

簡単に言えば “F 上で普通に加減乗除ができる” (ただし除算は 0 以外) ということです.

例 21. (1) 有理数全体のなす集合 Q, 実数全体のなす集合 R は体である.

(2) 整数全体のなす集合 Z は, 乗法逆要素の存在を満たさないので, 体ではない. 実際Z ∋ n ̸= ±1 に対して n−1 /∈ Z.

定理 22. p を素数とする. このとき, 集合 Fp を

Fp := {0, 1, . . . , p− 2, p− 1}

(p 個の要素を持つ集合) とし, 演算 ⊕,⊗ を

a⊕ b := a+ b を p で割った余り,

a⊗ b := ab を p で割った余り

11

Page 12: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

と定義する. このとき (Fp,⊕,⊗) は体となる. 特に有限集合なので有限体と呼ばれる.

以下, x が 0, . . . , p− 1 以外でも, x を p で割った余り を x で表し, Fp の要素とみなす.

とくに

a⊕ b := a+ b, a⊗ b := ab, (a)n = a⊗ a⊗ · · · ⊗ a⊗ a︸ ︷︷ ︸n 個

= aa · · · aa︸ ︷︷ ︸n 個

= an

等と書ける.

証明. 零要素は 0, 乗法的単位要素は 1 となる. 零要素 0 以外の乗法的逆要素の存在のみ証明をつける. まず定義 16 を思い出すと

Φp = {1, . . . , p− 2, p− 1} ⊂ Fp = {0, 1, . . . , p− 2, p− 1}

である. よって各 a ∈ Φp の乗法的逆要素を見つければよいが, これは定理 18 の証明中の(♯) の b である.

問題 2. p = 7 の場合の有限体 F7 を考える. ⊕,⊗ に対する演算表 (p27, 別紙参照) をそれぞれ書け. また, 以下の計算をしてみよ.

(1) 0⊕ 1⊕ 2⊕ 3⊕ 4⊕ 5⊕ 6 =?

(2) −0 =?, −1 =?, −2 =?, −3 =?, −4 =?, −5 =?, −6 =?

(3) 2⊗ 4 =?

(4) 1−1

=?, 2−1

=?, 3−1

=?, 4−1

=?, 5−1

=?, 6−1

=?

2.2 楕円曲線 E(R)

∆ := 4a3 +27b2 ̸= 0 を満たす定数 a, b ∈ R に対し, 曲線 E : y2 = x3 + ax+ b を考える.

y2 = x3 + 1 y2 = x3 − x+ 1 y2 = x3 − x y2 = x3 − 3x+ 2 y2 = x3

(∆ = 27) (∆ = 23) (∆ = −4) (∆ = 0) (∆ = 0)

さらに, 集合

E(R) := {(x, y) | y2 = x3 + ax+ b} ∪ {(∞,∞)}

を (R 上の)楕円曲線 と呼ぶ. ただし, O := (∞,∞) は “上に無限に進んだところにある仮想的な点” で 無限遠点 と呼ばれる. 楕円曲線 E(R) 上に, 以下の “ルール” で演算 +

を定義する:

12

Page 13: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

“ルール” · · · O を単位要素とし, P,Q,R ∈ E(R) が一直線上に並べば P +Q+R := O.

すなわち

(1) 無限遠点 O ∈ E(R) は単位要素なので, 任意の P ∈ E(R) に対して

P +O := P, O + P := P.

(2) 2 点 P (x1, y1), Q(x2, y2) ∈ E(R) が x 軸に関して上下対称の位置,

すなわち

P,Q ̸= O, x1 = x2, y2 = −y1 ̸= 0

を満たすとする. このとき P,Q,O が一直線に並ぶとみなして

P +Q+O = O, すなわち P +Q := O, Q := −P.

(3) 2 点 P (x1, y1), Q(x2, y2) ∈ E(R), が

P,Q ̸= O, x1 ̸= x2

を満たすとする. このとき P,Q を通る直線はもう 1 点 R(x3, y3) ∈E(R), R ̸= O と交わる. 座標を計算で求めると

P +Q+R = O, すなわち P +Q := −R(2)= (x3,−y3),

λ :=y2 − y1x2 − x1

, x3 := λ2 − x1 − x2, −y3 := λ(x1 − x3)− y1.

(4) 点 P (x, y) ∈ E(R) が

P ̸= O, y = 0

を満たすとする. このとき, P, P,O が一直線に並ぶとみなして

P + P +O = O, すなわち 2P = P + P = O.

(5) 点 P (x, y) ∈ E(R) が

P ̸= O, y ̸= 0

を満たすとする. このとき, P での接線はもう 1 点 P ′(x′, y′) ∈ E(R),P ′ ̸= O と交わる. 座標を計算で求めると

P + P + P ′ = O, すなわち 2P = P + P = −P ′ (2)= (x′,−y′),

λ :=3x2 + a

2y, x′ := λ2 − 2x, −y′ := λ(x− x′)− y.

13

Page 14: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

定理 23. R 上の楕円曲線 (E(R),+) は可換群になる.

証明の概略. 計算のみで示せる. ただし結合法則は普通にやるとなかなか難しい.

例 24. 楕円曲線 E : y2 = x3 + 8 を考える. E(R) ∋ P (1, 3), Q(2, 4) (∵ 32 = 9 = 12 + 8,

42 = 16 = 23 + 8) である. P +Q, 2P , 3P を計算してみると

P +Q = (1, 3) + (2, 4)(3)= (−2, 0),

2P = 2(1, 3)(5)= (−7

4, −13

8),

3P = P + 2P上= (1, 3) + (−7

4, −13

8)(3)= (433

121, −9765

1331).

注意 25. 「P (x, y) ∈ E(R) ⇔ (x, y) は y2 = x3 + ax + b の実数解」だから, 上の結果から [(x, y) = (−2, 0), (−7

4, −13

8), (433

121, −9765

1331) は y2 = x3 + 8 の解である] ことも分かる.

2.3 有限体上の楕円曲線 E(Fp)

定義 26. Fp := {0, 1, . . . , p− 1} を定理 22 の有限体とする. ただし簡略化のため, p を 2

以外の素数とし, 加法は ⊕ ではなく + で表し, 乗法は ⊗ ではなく · で表すか省略する.

(1) 4a3 + 27b2 ̸= 0 を満たす定数 a, b ∈ Z に対し, 集合

E(Fp) := {(x, y) | x, y ∈ Fp, y2 = x3 + ax+ b} ∪ {O}

を 有限体 Fp 上の楕円曲線 と呼ぶ.

(2) 集合 E(Fp) 上に, 以下の “ルール” で演算 + を定義する:

(a) O ∈ E(Fp) を単位要素とする: P ∈ E(Fp) ⇒ P +O := P , O + P := P .

(b) 2 点 P (x1, y1), Q(x2, y2) ∈ E(Fp) が P,Q ̸= O, x1 = x2, P ̸= Q を満たすなら

P +Q := O.

(c) 2 点 P (x1, y1), Q(x2, y2) ∈ E(Fp), が P,Q ̸= O, x1 ̸= x2 を満たすなら

λ :=y2 − y1x2 − x1

, x3 := λ2 − x1 − x2 とおくと P +Q := (x3, λ(x1 − x3)− y1) .

(d) 点 P (x, y) ∈ E(Fp) が P ̸= O, y = 0 を満たすなら

2P := O.

(e) 点 P (x, y) ∈ E(Fp) が P ̸= O, y ̸= 0 を満たすなら

λ :=3x2 + a

2y, x′ := λ2 − 2x とおくと 2P := (x′, λ(x− x′)− y) .

14

Page 15: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

定理 27. 有限体 Fp 上の楕円曲線 (E(Fp),+) は可換有限群になる.

問題 3. 有限体 F7 上の楕円曲線 E : y2 = x3+3, E(F7) に関して, 以下に答えよ. なお, F7

での加減乗除 (とくに除)に関しては, 問題 2 の結果 (p27, 別紙参照) を使えば早いです.

(1) P (1, 2) ∈ E(F7) を確かめよ.

(2) 5P ∈ E(F7) を, 以下の手順で求めよ.

• 定義 26-(e) を使って 2P を求める: E : y2 = x3 + 3 より a = 0 に注意して

λ =3x2

2y

∣∣∣(x,y)=(1,2)

= , x′ = λ2 − 2x|(x,λ)=(1, )

=

だから

2P = (x′, λ(x− x′)− y) |(x,y,λ,x′)=(1,2, , )

=

(,

).

• 定義 26-(e) の P に 2P を代入して 4P = 2(2P ) を求める:

λ =3x2

2y

∣∣∣(x,y)=( , )

= , x′ = λ2 − 2x|(x,λ)=( , )

=

だから

4P = (x′, λ(x− x′)− y) |(x,y,λ,x′)=( , , , )

=

(,

).

• 定義 26-(c) の P,Q に P, 4P を代入して P + 4P = 5P を求める:

λ =y2 − y1x2 − x1

∣∣∣(x1,y1,x2,y2)=(1,2, , )

= , x3 = λ2 − x1 − x2|(x1,x2,λ)=(1, , )=

だから

5P = (x3, λ(x1 − x3)− y1) |(x1,y1,λ,x3)=(1,2, , )=

(,

).

注意 28. 一般に有限体上の楕円曲線は有限群である. なお, 上の例では, 実は

E(F7) = {nP | n = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}順不同= {(1, 2), (1, 5), (2, 2), (2, 5), (3, 3), (3, 4), (4, 2), (4, 5), (5, 3), (5, 4), (6, 3), (6, 4), O}.

となる.

15

Page 16: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

2.4 楕円曲線の離散対数問題

RSA暗号の安全性は「素因数分解の難しさ」によっていた. 楕円曲線暗号の安全性は,

次の「離散対数問題の難しさ」による. 有限体上の楕円曲線 E(Fp) を考える.

楕円曲線の離散対数問題� �P,Q ∈ E(Fp)が Q = nP (n ∈ N) を満たすとき, 実際に n を計算せよ.� �

難問 2. 問題 3 の楕円曲線 E : y2 = x3 + 3, E(F7) を考える. P (2, 2), Q(6, 3) ∈ E(F7) に対して Q = nP を満たす n を求めよ. また, 求めるのにかかった時間と, 問題 3-(2) にかかった時間を比較してみて下さい. F7 での加減乗除に関しては, 問題 2 の結果 (p27,

別紙参照) を使えば早いです.

もし総当たり法 (順に 2P, 3P, 4P, 5P, . . . を計算して = Q かどうか確かめる) で計算するなら以下のようになります:

• 定義 26-(e) を使って 2P を求める.

• 定義 26-(c) の P,Q に P, 2P を代入して P + 2P = 3P を求める.

• 定義 26-(e) の P に 2P を代入して 4P = 2(2P ) を求める.

• 定義 26-(c) の P,Q に P, 4P を代入して 5P = P + 4P を求める.

• 定義 26-(c) の P,Q に 2P, 4P を代入して 6P = 2P + 4P を求める.

• 定義 26-(c) の P,Q に 3P, 4P を代入して 7P = 3P + 4P を求める.

• 定義 26-(e) の P,Q に 4P を代入して 8P = 2(4P ) を求める.

• 定義 26-(c) の P,Q に P, 8P を代入して 9P = P + 8P を求める.

• 定義 26-(c) の P,Q に 2P, 8P を代入して 10P = 2P + 8P を求める.

• 定義 26-(c) の P,Q に 3P, 8P を代入して 11P = 3P + 8P を求める.

• 定義 26-(c) の P,Q に 4P, 8P を代入して 12P = 4P + 8P を求める.

...

2.5 楕円曲線エルガマル暗号

Aliceが Bobに秘密のメッセージM を送る方法の一つである楕円曲線エルガマル暗号を紹介する. 簡単のため有限体上の楕円曲線 E(Fp) を固定し, M ∈ E(Fp) とする.

16

Page 17: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

準備

(1) 公開鍵 P ∈ E(Fp) を固定する.

(2) Bob は, 非公開鍵 b ∈ N を決め, 公開鍵 B := bP ∈ E(Fp) を計算する.�� ��公開鍵: Fp, E, P,B ∈ E(Fp). (b は Bob だけが知っている)

暗号化

(3) Alice は, 非公開鍵 a ∈ N を決め, 公開鍵 A := aP ∈ E(Fp) を計算する.

(4) Alice は暗号文 C := M + aB を計算する.�� ��送信: C,A ∈ E(Fp) (人に見られるかもしれない). (a は Alice だけが知っている)

復号化

(5) Bob は, 秘密鍵 b と, 送信されてきたデータ C,A から

M⋆= C − bA

を計算する.

⋆ の証明. aB = a(bP ) = (ab)P = b(aP ) = bA. よって C−bA = M+aB−bA = M .

注意 29. 離散対数問題は “難しい”ので, P,B = bP を公開しても bは分からず, bは Bob

だけが知っていることになる. 同様に a は Alice だけが知っていることになる.

研究 4. 問題 3 の F7 上の楕円曲線 E : y2 = x3 + 3 を考え, 公開鍵を

P (4, 5) ∈ E(F7)

とする. 各自 Alice 役, Bob 役, または解読役を選んでください. なお, F7 での加減乗除に関しては, 問題 2 の結果 (p27, 別紙参照) を使うと早いです. 適宜 手分けして 作業してみて下さい.

(1) Bob 役を選んだ人: b ∈ N を選び, B := bP を計算して, B のみ Alice 役と悪人役の人に教えてください.

(2) Alice 役を選んだ人: M ∈ E(F7) (注意 28 参照), a ∈ N を選び, A := aP , C :=

M + aB を計算して, C,A のみ Bob 役と悪人役の人に教えてください.

(3) Bob 役を選んだ人: C,A, b を使って M を求め, “確認” してください.

(4) 解読役を選んだ人: C,A,B を使って M を求め, “確認” してください.

難問 3. 解読役以外の人達も

どうすれば暗号を破る (解読する)ことができるか

を考えてみて下さい. ただし, 実際に使われている楕円曲線暗号 (の一種)では, 70 桁程度の素数 p を用いています.

17

Page 18: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

3 付録1: 群論の補足 · · · “部分群” とその応用RSA暗号に使われている群論をもう少し紹介しておく.

3.1 部分群とラグランジュの定理

定義 30. G の部分集合 H を考える. 同じ演算 ⋆ に関して (G, ⋆), (H, ⋆) の両方が群になるとき, H は G の部分群である, という.

例 31 (§1.3, p4–5 参照). (1) (足し算 + に関して) Z は R の部分群となる.

(2) (掛け算 × に関して) {1,−1} は {x | x ∈ R, x ̸= 0} の部分群となる.

問題 4. d = 0, 1, 2, . . . に対して

dZ := “d の倍数全体” := {dn | n ∈ Z} =

{{0} (d = 0)

{. . . ,−2d.− d, 0, d, 2d, . . . } (d ∈ N)

とおく. (足し算 + に関して) dZ は Z の部分群となることを確かめよ.

略解. dZ が部分集合 Z の部分集合であることは明らかなので (dZ,+) が定義 6 を満たすことを示せばよい. その際, (1), (2), (3) だけでなく

(0) a, b ∈ dZ ⇒ a+ b ∈ dZ (足し算 + が dZ 上の演算となっている)

も確かめるのも忘れずに.

定理 32 ((本当の) ラグランジュの定理). (G, ⋆) を有限群とする. 任意の部分群 H ⊂ G

に対し n(H) は n(G) の約数となる.

証明の概略. 次の二つの命題より従う:

(1) 幾つかの要素 g1, . . . , gr ∈ G が取れて, “左剰余類分解”

G = H⨿

g1H⨿

· · ·⨿

grH, gH := {g ⋆ h | h ∈ H}

の形に書ける. とくに G が 非交和分解 (互いに共通部分を持たない部分集合達H, g1H, . . . , grH の和集合) の形に書ける.

(2) n(H) = n(g1H) = · · · = n(grH).

以上を認めると

n(G)(1)= n

(H⨿

g1H⨿

· · ·⨿

grH)非交和= n(H) + n(g1H) + · · ·+ n(grH)

(2)= r · n(H)

となる.

18

Page 19: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

問題 5. 練習 2 の H は, 研究 1 の G の部分群になっている.

(1) ラグランジュの定理の主張を, この場合に確かめてみよ.

(2) G = H⨿

x−√3√

3x+1H⨿

x+√3

−√3x+1

H を確かめよ.

(3) n(H) = n(

x−√3√

3x+1H)= n

(x+

√3

−√3x+1

H)を確かめよ.

定理 13 (ラグランジュの定理 (version 1)) の証明の概略. 次の二つの命題より従う:

(1) H := {gk | k ∈ Z} ⊂ G が部分群となる.

(2) n(H) = 要素 g の位数.

以上を認めると, ラグランジュの定理より, 要素 g の位数 = n(H) は n(G) の約数.

注意 33. 大学以降の数学では, 理論に理論を重ねて “大理論” とします. 今回は

• 群論

⇒ ラグランジュの定理

⇒ ラグランジュの定理 (version 1)

プリントp8–10, §1.4⇒ オイラーの定理, フェルマーの小定理

テキストp27–28, §7.4⇒ 暗号の “復号化”:

平文 a暗号化⇒ C(a) ≡ ae mod (pq)復号化⇒ a ≡ C(a)d ≡ ade mod (pq)

という流れを紹介しました. 多くの数学者が,時には数百年をかけて,難問に挑んでいます.

(イメージ図)

3.2 群論の応用例: 整数論 (倍数, 約数, 最大公約数)

定理 34. Z の部分群は dZ (d = 0, 1, 2, . . . ) のみである.

証明の概略. H が Z の部分群と仮定する. とくに

H ⊂ Z = {. . . ,−2,−1, 0, 1, 2, . . . }.

H = {0} なら d = 0 で題意を満たす. H ̸= {0} とし,

d := min{n | 0 < n ∈ H} (“H の正の要素で最小のもの”)

19

Page 20: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

とおく. このとき

H(♭)= dZ = {. . . ,−2d.− d, 0, d, 2d, . . . }

が言える. 以下, 等号 (♭) の半分の (⊃), すなわち “dZ の任意の要素は H の要素である”

ことを示す: 最初に H は (Z,+) の部分群であるので, (H,+) も群であり, 定義 6 を満たすことに注意.

(1) d ∈ H.

∵ d の定義より明らか.

(2) 0 ∈ H.

∵ 定義 6-(2) より 0 ∈ H.

(3) dn ∈ H (n ∈ N).

∵ 演算の定義より『 a, b ∈ H ⇒ H ∋ a + b』 が成り立つので『d, d(1)∈ H ⇒ H ∋

d+ d = 2d』. さらに帰納法により『d, d(n− 1) ∈ H ⇒ H ∋ d+ d(n− 1) = dn』.

(4) d(−n) ∈ H (n ∈ N).

定義 6-(3) より『dn(3)∈ H ⇒ H ∋ −dn = d(−n)』.

(2), (3), (4) より (⊃) が従う.

難問 4. 等号 (♭) の残りの半分である (⊂), すなわち “H の任意の要素は dZ の要素である” ことを証明してみよ. 以下略解:

• 任意の要素 m ∈ H をとり dで割った商と余りを q, r とおく: m = dq+r, 0 ≤ r < d.

(テキスト p11, §5.2 の定理 9 (除法の原理) より.)

• H が部分群, とくに (H,+) は群 & m, d ∈ H より r = m− dq ∈ H が言える.

• d は “H の正の要素で最小のもの” だったので, 0 ≤ r < d, r ∈ H より r = 0.

• r = 0 より m = dq ∈ dZ.

練習 3. a, b ∈ Z とする.

aZ+ bZ := {am+ bn | m,n ∈ Z}

は Z の部分群であることを確かめよ.

定理 35. a, b ∈ Z とし, G を a, b の最大公約数とする. このとき

aZ+ bZ = GZ

となる. (ただし 0 と n ∈ Z の最大公約数は |n| とみなす.)

20

Page 21: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

証明. aZ+ bZ は Z の部分群なので, 定理 34 より

aZ+ bZ = dZ (d ∈ N)

の形で書ける. よって

a = 1 · a+ 0 · b ∈ aZ+ bZ = dZ = {0,±d,±2d, . . . }

より a は d の倍数. 同様に b = 0 · a+ 1 · b も d の倍数であることが分かる. よって d はa, b の公倍数, すなわち G の倍数となるので

d = Gd0 (d0 ∈ N).

の形で書ける. 一方で G は a, b の最大公約数だったので

a = Ga0, b = Gb0 (a0, b0 ∈ N, a0, b0 は互いに素).

と書ける. このとき定理 15 (ベズー方程式) より

1 = a0x+ b0y (x, y ∈ Z)

と書けるので

G = G(a0x+ b0y) = ax+ by ∈ aZ+ bZ = dZ = Gd0Z = {0,±Gd0,±2Gd0, . . . }

が成り立ち, d0 = 1, すなわち d = G を得る.

定理 36 (テキスト p11, §5.2 の補題 10). a を b で割った商と余りを q, r とおく (a ∈ Z,b ∈ N). このとき

(a, b の最大公約数) = (b, r の最大公約数).

証明. a = bq + r, 言い換えると r = a− bq である. よって

(a, b の最大公約数) = (b, a− b の最大公約数)

を言えばよい. (これを q 回使えば題意を得る.) このためには, 上の定理より

aZ+ bZ = aZ+ (b− a)Z

を言えばよいことが分かる. これは

(⊂) am+ bn = a(m+ n) + (b− a)n ∈ aZ+ (b− a)Z,(⊃) am+ (b− a)n = a(m− n) + bn ∈ aZ+ bZ

より従う.

難問 5. a1, a2, . . . , ar ∈ Z の最大公約数を G とする.

a1Z+ a2Z+ · · ·+ arZ := {a1n1 + a2n2 + · · ·+ arnr | n1, n2, . . . , nr ∈ Z}

とおくとき

a1Z+ a2Z+ · · ·+ arZ = GZ

となることを示せ.

21

Page 22: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

4 付録2: 素因数分解と “解析的整数論”

RSA暗号には素因数分解が使われていた. 今回は [代数学] がテーマであったが, 素数は[解析学] とも (思わぬところで) 関わるので, 少し紹介しておく.

4.1 準備

命題 37. 0 ≤ a < 1, N ∈ N に対し

1 + a+ a2 + · · ·+ aN =1− aN+1

1− a≤ 1

1− a.

証明. 前半の等式は

(1− a)(1 + a+ a2 + · · ·+ aN) = 1 + a+ a2 + · · ·+ aN

− a− a2 − · · · − aN − aN+1

= 1− aN+1

より従う. 後半の不等式は 0 ≤ a < 1 より明らか.

注意 38. N が大きくなると, 1−aN+1

1−a≤ 1

1−aの差 −aN+1

1−aは, いくらでも小さくなる (∵

0 < a < 1). すなわち “収束” や “極限” (数 II) の言葉で書くと

∞∑n=0

an = limN→∞

(1 + a+ a2 + · · ·+ aN

)=

1

1− a.

4.2 素数の個数

1と自分自身以外に正の約数を持たない自然数を素数と呼んだ. 素数全体のなす集合を

P := {2, 3, 5, 7, 11, 13, . . . }

とおく.

定理 39. n(P) = ∞.

証明. もし n(P) = k < ∞ なら P = {p1, p2, . . . , pk} と書ける. このとき

p1 · p2 · · · · · pk + 1

は, どの素数 pi で割っても 1 余る. よって 1 と自分以外の約数を持たないから素数. しかし, これは全ての素数 p1 ∼ pk より大きい素数となり矛盾.

それでは, 素数はどれくらい多い のであろうか?

22

Page 23: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

例 40. • 1 ∼ 10 のうち, 素数は 2, 3, 5, 7 の 4 個.

• 1 ∼ 100 のうち, 素数は 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67,

71, 73, 79, 83, 89, 97 の 25 個.

• 1 ∼ 1000 のうち, 素数は 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67,

71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167,

173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269,

271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379,

383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487,

491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607,

613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727,

733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853,

857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977,

983, 991, 997 の 168 個.

• 1 ∼ 10000 のうち, 素数は 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103,109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269,271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443,449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631,641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827,829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997, 1009, 1013, 1019, 1021,1031, 1033, 1039, 1049, 1051, 1061, 1063, 1069, 1087, 1091, 1093, 1097, 1103, 1109, 1117, 1123, 1129, 1151, 1153, 1163, 1171, 1181, 1187,1193, 1201, 1213, 1217, 1223, 1229, 1231, 1237, 1249, 1259, 1277, 1279, 1283, 1289, 1291, 1297, 1301, 1303, 1307, 1319, 1321, 1327, 1361,1367, 1373, 1381, 1399, 1409, 1423, 1427, 1429, 1433, 1439, 1447, 1451, 1453, 1459, 1471, 1481, 1483, 1487, 1489, 1493, 1499, 1511, 1523,1531, 1543, 1549, 1553, 1559, 1567, 1571, 1579, 1583, 1597, 1601, 1607, 1609, 1613, 1619, 1621, 1627, 1637, 1657, 1663, 1667, 1669, 1693,1697, 1699, 1709, 1721, 1723, 1733, 1741, 1747, 1753, 1759, 1777, 1783, 1787, 1789, 1801, 1811, 1823, 1831, 1847, 1861, 1867, 1871, 1873,1877, 1879, 1889, 1901, 1907, 1913, 1931, 1933, 1949, 1951, 1973, 1979, 1987, 1993, 1997, 1999, 2003, 2011, 2017, 2027, 2029, 2039, 2053,2063, 2069, 2081, 2083, 2087, 2089, 2099, 2111, 2113, 2129, 2131, 2137, 2141, 2143, 2153, 2161, 2179, 2203, 2207, 2213, 2221, 2237, 2239,2243, 2251, 2267, 2269, 2273, 2281, 2287, 2293, 2297, 2309, 2311, 2333, 2339, 2341, 2347, 2351, 2357, 2371, 2377, 2381, 2383, 2389, 2549,2393, 2399, 2411, 2417, 2423, 2437, 2441, 2447, 2459, 2467, 2473, 2477, 2503, 2521, 2531, 2539, 2543, 2551, 2557, 2579, 2591, 2593, 2609,2617, 2621, 2633, 2647, 2657, 2659, 2663, 2671, 2677, 2683, 2687, 2689, 2693, 2699, 2707, 2711, 2713, 2719, 2729, 2731, 2741, 2749, 2753,2767, 2777, 2789, 2791, 2797, 2801, 2803, 2819, 2833, 2837, 2843, 2851, 2857, 2861, 2879, 2887, 2897, 2903, 2909, 2917, 2927, 2939, 2953,2957, 2963, 2969, 2971, 2999, 3001, 3011, 3019, 3023, 3037, 3041, 3049, 3061, 3067, 3079, 3083, 3089, 3109, 3119, 3121, 3137, 3163, 3167,3169, 3181, 3187, 3191, 3203, 3209, 3217, 3221, 3229, 3251, 3253, 3257, 3259, 3271, 3299, 3301, 3307, 3313, 3319, 3323, 3329, 3331, 3343,3347, 3359, 3361, 3371, 3373, 3389, 3391, 3407, 3413, 3433, 3449, 3457, 3461, 3463, 3467, 3469, 3491, 3499, 3511, 3517, 3527, 3529, 3533,3539, 3541, 3547, 3557, 3559, 3571, 3581, 3583, 3593, 3607, 3613, 3617, 3623, 3631, 3637, 3643, 3659, 3671, 3673, 3677, 3691, 3697, 3701,3709, 3719, 3727, 3733, 3739, 3761, 3767, 3769, 3779, 3793, 3797, 3803, 3821, 3823, 3833, 3847, 3851, 3853, 3863, 3877, 3881, 3889, 3907,3911, 3917, 3919, 3923, 3929, 3931, 3943, 3947, 3967, 3989, 4001, 4003, 4007, 4013, 4019, 4021, 4027, 4049, 4051, 4057, 4073, 4079, 4091,4093, 4099, 4111, 4127, 4129, 4133, 4139, 4153, 4157, 4159, 4177, 4201, 4211, 4217, 4219, 4229, 4231, 4241, 4243, 4253, 4259, 4261, 4271,4273, 4283, 4289, 4297, 4327, 4337, 4339, 4349, 4357, 4363, 4373, 4391, 4397, 4409, 4421, 4423, 4441, 4447, 4451, 4457, 4463, 4481, 4483,4493, 4507, 4513, 4517, 4519, 4523, 4547, 4549, 4561, 4567, 4583, 4591, 4597, 4603, 4621, 4637, 4639, 4643, 4649, 4651, 4657, 4663, 4673,4679, 4691, 4703, 4721, 4723, 4729, 4733, 4751, 4759, 4783, 4787, 4789, 4793, 4799, 4801, 4813, 4817, 4831, 4861, 4871, 4877, 4889, 4903,4909, 4919, 4931, 4933, 4937, 4943, 4951, 4957, 4967, 4969, 4973, 4987, 4993, 4999, 5003, 5009, 5011, 5021, 5023, 5039, 5051, 5059, 5077,5081, 5087, 5099, 5101, 5107, 5113, 5119, 5147, 5153, 5167, 5171, 5179, 5189, 5197, 5209, 5227, 5231, 5233, 5237, 5261, 5273, 5279, 5281,5297, 5303, 5309, 5323, 5333, 5347, 5351, 5381, 5387, 5393, 5399, 5407, 5413, 5417, 5419, 5431, 5437, 5441, 5443, 5449, 5471, 5477, 5479,5483, 5501, 5503, 5507, 5519, 5521, 5527, 5531, 5557, 5563, 5569, 5573, 5581, 5591, 5623, 5639, 5641, 5647, 5651, 5653, 5657, 5659, 5669,5683, 5689, 5693, 5701, 5711, 5717, 5737, 5741, 5743, 5749, 5779, 5783, 5791, 5801, 5807, 5813, 5821, 5827, 5839, 5843, 5849, 5851, 5857,5861, 5867, 5869, 5879, 5881, 5897, 5903, 5923, 5927, 5939, 5953, 5981, 5987, 6007, 6011, 6029, 6037, 6043, 6047, 6053, 6067, 6073, 6079,6089, 6091, 6101, 6113, 6121, 6131, 6133, 6143, 6151, 6163, 6173, 6197, 6199, 6203, 6211, 6217, 6221, 6229, 6247, 6257, 6263, 6269, 6271,6277, 6287, 6299, 6301, 6311, 6317, 6323, 6329, 6337, 6343, 6353, 6359, 6361, 6367, 6373, 6379, 6389, 6397, 6421, 6427, 6449, 6451, 6469,6473, 6481, 6491, 6521, 6529, 6547, 6551, 6553, 6563, 6569, 6571, 6577, 6581, 6599, 6607, 6619, 6637, 6653, 6659, 6661, 6673, 6679, 6689,6691, 6701, 6703, 6709, 6719, 6733, 6737, 6761, 6763, 6779, 6781, 6791, 6793, 6803, 6823, 6827, 6829, 6833, 6841, 6857, 6863, 6869, 6871,6883, 6899, 6907, 6911, 6917, 6947, 6949, 6959, 6961, 6967, 6971, 6977, 6983, 6991, 6997, 7001, 7013, 7019, 7027, 7039, 7043, 7057, 7069,7079, 7103, 7109, 7121, 7127, 7129, 7151, 7159, 7177, 7187, 7193, 7207, 7211, 7213, 7219, 7229, 7237, 7243, 7247, 7253, 7283, 7297, 7307,7309, 7321, 7331, 7333, 7349, 7351, 7369, 7393, 7411, 7417, 7433, 7451, 7457, 7459, 7477, 7481, 7487, 7489, 7499, 7507, 7517, 7523, 7529,7537, 7541, 7547, 7549, 7559, 7561, 7573, 7577, 7583, 7589, 7591, 7603, 7607, 7621, 7639, 7643, 7649, 7669, 7673, 7681, 7687, 7691, 7699,7703, 7717, 7723, 7727, 7741, 7753, 7757, 7759, 7789, 7793, 7817, 7823, 7829, 7841, 7853, 7867, 7873, 7877, 7879, 7883, 7901, 7907, 7919,7927, 7933, 7937, 7949, 7951, 7963, 7993, 8009, 8011, 8017, 8039, 8053, 8059, 8069, 8081, 8087, 8089, 8093, 8101, 8111, 8117, 8123, 8147,8161, 8167, 8171, 8179, 8191, 8209, 8219, 8221, 8231, 8233, 8237, 8243, 8263, 8269, 8273, 8287, 8291, 8293, 8297, 8311, 8317, 8329, 8353,8363, 8369, 8377, 8387, 8389, 8419, 8423, 8429, 8431, 8443, 8447, 8461, 8467, 8501, 8513, 8521, 8527, 8537, 8539, 8543, 8563, 8573, 8581,8597, 8599, 8609, 8623, 8627, 8629, 8641, 8647, 8663, 8669, 8677, 8681, 8689, 8693, 8699, 8707, 8713, 8719, 8731, 8737, 8741, 8747, 8753,8761, 8779, 8783, 8803, 8807, 8819, 8821, 8831, 8837, 8839, 8849, 8861, 8863, 8867, 8887, 8893, 8923, 8929, 8933, 8941, 8951, 8963, 8969,8971, 8999, 9001, 9007, 9011, 9013, 9029, 9041, 9043, 9049, 9059, 9067, 9091, 9103, 9109, 9127, 9133, 9137, 9151, 9157, 9161, 9173, 9181,9187, 9199, 9203, 9209, 9221, 9227, 9239, 9241, 9257, 9277, 9281, 9283, 9293, 9311, 9319, 9323, 9337, 9341, 9343, 9349, 9371, 9377, 9391,9397, 9403, 9413, 9419, 9421, 9431, 9433, 9437, 9439, 9461, 9463, 9467, 9473, 9479, 9491, 9497, 9511, 9521, 9533, 9539, 9547, 9551, 9587,9601, 9613, 9619, 9623, 9629, 9631, 9643, 9649, 9661, 9677, 9679, 9689, 9697, 9719, 9721, 9733, 9739, 9743, 9749, 9767, 9769, 9781, 9787,9791, 9803, 9811, 9817, 9829, 9833, 9839, 9851, 9857, 9859, 9871, 9883, 9887, 9901, 9907, 9923, 9929, 9931, 9941, 9949, 9967, 9973

の 1229 個.

23

Page 24: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

n 以下の素数の個数を π(n) と書くことにする. 上記より

π(10) = 4, π(100) = 25, π(1000) = 168, π(10000) = 1229, π(∞) = ∞.

定理 41 (素数定理).

kπ(10k)

0.4342944819 . . . ∗ 10k≒ 1,

(π(10k) ≒ 0.4342944819 . . . ∗ 10k

k

).

注意 42. 0.4342944819 . . . = log10 e (数 II) であり, 通常は素数定理は

π(x) ∼ x

loge x

と表される. これは “収束” や “極限” (数 II) の言葉で書くと

limx→∞

π(x)x

loge x

= 1

を意味している.

例 43. 「一垓 (いちがい)以下の素数の個数」と, 素数定理の主張する値は以下の通り:

π(1020) = 2220819602560918840,

0.4342944819 . . . ∗ 1020

20≒ 2171472409516259138,

20π(1020)

0.4342944819 . . . ∗ 1020≒ 1.0227252222 . . . .

4.3 “解析的” 整数論

リーマンゼータ関数

ζ(s) = 1 +1

2s+

1

3s+

1

4s+

1

5s+

1

6s+

1

7s+ · · ·

には 素数の情報 が隠されている. 例えば ζ(1) は素因数分解の一意性より

1 +1

2+

1

3+

1

4+

1

5+

1

6+

1

7+

1

8+

1

9+

1

10+

1

11+

1

12+

1

13+

1

14+ · · ·

= 1 +1

2+

1

3+

1

22+

1

5+

1

2 · 3+

1

7+

1

23+

1

32+

1

2 · 5+

1

11+

1

22 · 3+

1

13+

1

2 · 7+ · · ·

=

(1 +

1

2+

1

22+ · · ·

)(1 +

1

3+

1

32+ · · ·

)(1 +

1

5+

1

52+ · · ·

)(1 +

1

7+

1

72+ · · ·

)· · ·

命題 37

≤ 1

1− 12

· 1

1− 13

· 1

1− 15

· 1

1− 17

· · · ·

24

Page 25: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

と変形できる. 一方で, 同じ ζ(1) は

1 +1

2+

1

3+

1

4+

1

5+

1

6+

1

7+

1

8+

1

9+

1

10+

1

11+

1

12+

1

13+

1

14+

1

15+

1

16+ · · ·

1 +1

2+

1

4+

1

4+

1

8+

1

8+

1

8+

1

8+

1

16+

1

16+

1

16+

1

16+

1

16+

1

16+

1

16+

1

16+ · · ·

= 1 +1

2+

2

4+

4

8+

8

16+ · · · = 1 +

1

2+

1

2+

1

2+

1

2+ · · · = ∞

より, いくらでも大きくなることが分かる. もし P = {2, 3, 5, . . . , pk} (有限個) なら

∞ ≤ ζ(1) ≤ 1

1− 12

· 1

1− 13

· 1

1− 15

· 1

1− 17

· · · · · 1

1− 1pk

< ∞

となり矛盾が起きる. すなわち

ζ(1) = ∞ が n(P) = ∞ の別解を与える!!!

更には, ζ(s) = 0 の “複素数” 解 (数 II) と, 素数定理の精密化が関係することが知られて

いる. 関連して興味深い現象がある: z =1

|ζ(x+ y√−1)|

の 3 次元グラフを書くと

このグラフで上に突き出ている所は, ζ(s) = 0 となる複素数解 s = x+ y√−1 である. こ

れらが “一列に並んでいる” ≒ リーマン予想 は 100万ドルの懸賞問題である.

25

Page 26: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

5 付録3: 講師の専門の紹介私の専門は整数論です. とくに 代数的整数論 を中心に研究しています. 雰囲気は

[代数学] ⊃ [代数的整数論] ≒ “方程式を解く為の代数的な理論”

という感じです. 例えば (有理数係数の) 2 次方程式の解の公式

aX2 + bX + c = 0 (a ̸= 0) ⇒ X =−b±

√b2 − 4ac

2a

は “代数的な” 議論で示すことができます.

実は, 私の研究対象は “方程式を解く” こと自体ではなく, “有理数係数多項式の根のなす集合” です. そして, この集合は体 (§2.1) になります:

[体] ⊃ [代数体] ≒ “有理数係数多項式の根のなす集合”

という感じです. 例えば

D = b2 − 4ac となる 2 次方程式 aX2 + bX + c = 0 (a, b, c ∈ Q, a ̸= 0) の解全体

≒{s+ t

√D | s, t ∈ Q

}=: Q

(√D)

となり, この集合は 2 次体と呼ばれる体となります. この一般化を考えると

問題A� �もっと一般の多項式の根を含む代数体を構成せよ.� �

という問題に行き当たります. この “構成” には色んなパターンが考えられますが, 私は“関数の特殊値で代数体を構成する” という方向性で研究しています:

問題B� �f(α) が多項式の根となるような関数 f(x) と値 α を見つけよ.� �

自明な例ですが, f(x) =√x という関数に x = D を代入すれば, X2 −D = 0 の解となっ

ています. 他に知られている例としては

定理 44. cos(abπ) = cos((180a

b)◦) (x ∈ Q) は, ある有理数係数多項式の根となる.

例 45. b = 10 で考えると

cos π10

= 0.951056516 . . . , cos 2π10

= 0.809016994 . . . , cos 3π10

= 0.587785252 . . . ,

cos 4π10

= 0.309016994 . . . , cos 5π10

= 0, cos 6π10

= −0.309016994 . . . ,

cos 7π10

= −0.587785252 . . . , cos 8π10

= −0.809016994 . . . , cos 9π10

= −0.951056516 . . . ,

cos π10, cos 3π

10, cos 7π

10, cos 9π

10· · · 16x4 − 20x2 + 5 の根,

cos 2π10, cos 6π

10· · · 4x2 − 2x− 1 の根,

cos 4π10, cos 8π

10· · · 4x2 + 2x− 1 の根,

cos 5π10

· · · x の根.

私は, この定理の一般化である スターク予想 という未解決問題に取り組んでいます.

26

Page 27: 代数学と楕円曲線暗号 - rs.tus.ac.jp · 1 代数学 3 1.1 演算 ... 3 付録1: 群論の補足 \部分群" とその応用 18 ... の復習 秘密裏に伝えたいこと平文と呼びます

27