2019-08-01 公開鍵暗号・RSA暗号のアルゴリズム アルゴリズム 鍵の生成 適当な素数$p$, $q$を適当に生成。 素数$p$と素数$q$の積$n = p \times q$を計算。 $p-1$と$q-1$の最小公倍数を求める。$l=\mathrm{lcm}(p-1, q-1)$ $l$と互いに素な整数$e$を$2<e<l$の範囲で適当に生成。 $d \times e \mod l = 1$となるdを$2<d<l$の範囲で適当に生成。 ここで、$e$と$n$が公開鍵、$d$と$n$が秘密鍵。 暗号化 \[ c = m^e \mod n \] 復号 \[ m' = c^d \mod n \]