1.暗号化と復号の手順を見てみよう

まずはe = 13, d = 2197, n = 2987を用いて暗号文Mを暗号化・復号するプロセスを見てみます。
Mにn未満の好きな数字(自然数)を半角で入力してください。


暗号文CはMのe乗をnで割った余りです。
C =

復号文M'はCのd乗をnで割った余りです。平文Mと一致するはずです。
M' =

2.鍵を作ってみよう

a, bに256以上9999以下の好きな数字(自然数)を半角で入力してください。


pはa以上で最小の素数です。q, bについても同様です。
p = , q =

n = p × q, φ(n) = (p - 1) × (q - 1)です。
n =
φ(n) =

適当なeを提案します。ここではφ(n)の約数ではない素数のうちもっとも小さいものとします。
e =

e × dをφ(n)で割った余りは1になります。
d =

3.実際に使ってみよう

2.で分かったe, d, nを入力してください。それ以外の値だと、奇跡的に条件を満たさない限り正しく復号されません。


...

...