ぽよ @Poyo_FさんのRSA暗号と素数の話の続き

RSA暗号と素数の話の続きですが、何故、2つの鍵を作るのに素因数分解が必要なのか。モジュロという世界 #変な箱 の原理
2
ぽよ @Poyo_F

RSA暗号と素数の話の続きですが、何故、2つの鍵を作るのに素因数分解が必要なのかということが知りたくなりますよね。やはり。そのためにはモジュロという世界の言葉を操る必要があります。というわけで、次の数ツィで、 #変な箱 の原理的な部分を書いてみます。この時期でないと時間無いし。。

2012-01-02 23:14:36
ぽよ @Poyo_F

モジュロ4は、「数を4で割った余りで分類しているよ」という合図。例えば、数君たちを、4で割った余りでクラス分けして、クラスの代表生徒の名で、クラスを呼称することにする。例えば余りが1になる数{1、5、..}のクラスは、1君に代表をお願いして「1(君)のクラス」と呼ぶ。 #変な箱

2012-01-02 23:18:16
ぽよ @Poyo_F

モジュロの概念が便利なのは、計算は皆、代表君の数の計算だけでクラスの数どうしの計算の性質を確認できる点だ。例えば、1のクラスの数である5を10回掛け合わせた数5^10=9765625も(1^10=1だから)1のクラスの数になることはすぐに分かる。 #変な箱

2012-01-02 23:19:00
ぽよ @Poyo_F

例えばルービックキューブ上面の90度時計回転操作を「tを掛ける」と表現すると、tを4回掛けると元に戻るので、「t×t×t×t×」という操作は「1×」という操作と等しい。このことをt^4=1と書く。例えば、d=t^3ということにしたら、e=tであれば、ed=1になる。 #変な箱

2012-01-02 23:21:00
ぽよ @Poyo_F

モジュロ4の世界とは、このルービックキューブ上面の90度回転操作回数の計算と対応している。例えば3回の「t×」(=t^3×)の後、1回「t×」をやると、元の配置に戻る。つまり0回「t×」をやったのと同じ。これを「モジュロ4で3+1=0」と書く。これはtの指数の計算だ。 #変な箱

2012-01-02 23:24:19
ぽよ @Poyo_F

普通は足し算をすると数は大きくなるが、モジュロの世界では小さくなることもある。3回回したキューブを元に戻すには3回逆に回せばよい(3-3=0)が、1回だけ更に回す事(3+1=0)でも戻せる。暗号とは、3回の操作を暗号化★に使い、1回の操作を復号化●に使うということだ。 #変な箱

2012-01-02 23:26:05
ぽよ @Poyo_F

実際には大きな2つの素数PとQについて、★型鍵の数eと●型鍵の数dについて、モジュロ(P-1)×(Q-1)でed=1になるようにする。メッセージMを暗号化する時は、Mをe乗しC=M^eとすればよい。元のメッセージに戻す時はCをd乗する。これをモジュロPQでやるのだ。 #変な箱

2012-01-02 23:29:36
ぽよ @Poyo_F

C=M^eで暗文を得て、C^d=M^ed=M^1=Mとやって復号する。この暗号化と復号化の計算をモジュロNでやる(但しN=P×Q)。指数のed=1のところは、モジュロ(P-1)×(Q-1)での計算になる。これらの性質は、フェルマーの小定理とかオイラーの定理から導ける。 #変な箱

2012-01-02 23:30:21
ぽよ @Poyo_F

ところがdの値を大事にしまっておいて、N=P×Qの計算結果Nとeの値しか教えないので、NからPとQの値を求められないとdが何なのか分からず、dを知らない人には(C^dによって)復号できないのだ。(逆に言えばNの値の素因数分解によってPとQがバレたら解読されてしまう。) #変な箱

2012-01-02 23:31:03
ぽよ @Poyo_F

フェルマーの定理やオイラーの定理については、またいつか。 #変な箱 。。。それにしても、つい数式に頼ってしまうなぁ。やはり数式無しで説明できなければ、マダマダだな。

2012-01-02 23:34:23