暗号化と復号化では同じ鍵は使えない

1 2つの素数(p, q)を入れる。
2 暗号化する文字(アルファベット小文字)を入れる。
3 計算ボタンを押す。

秘密鍵 (p, q) = ( , )  p,qは異なる2個の素数(2〜3桁くらい)
d =


e=65537、edは(p-1)(q-1)で割って1余る数、としてdを計算する。
公開鍵 n = pq =
e = 65537
1)  暗号化する文字
      (アルファベット小文字)

2) 1)の文字を数に変更する
3) 2)を公開鍵で暗号化する
  
    ↑
aが元の数、cが暗号化された数
aをe乗してnで割った余りがc
3') 2)を秘密鍵で暗号化する
  
    ↑
aが元の数、cが暗号化された数
aをd乗してnで割った余りがc
4) 3)を公開鍵で戻す
  
    ↑
cをaに戻す
cをe乗してnで割った余りがa

4') 3')を秘密鍵で戻す
  
    ↑
cをaに戻す
cをd乗してnで割った余りがa

5) 4)の数を文字に戻す
  元に戻らないはず
5') 4')の数を文字に戻す
  元に戻らないはず
    公開鍵、秘密鍵を正しく 使うと

(C) 2009 rthcj inserted by FC2 system