●公開鍵 (n,e)

n=116232311005172322403
e=48154933114927891117

n は大きな2つの素数 p, q の積であり、
e は (p-1)(q-1) と互いに素でなければいけない(大抵そうなっている)。

公開鍵は広く公開して構わない。

●秘密鍵: n の素因数分解

n = pq,  p = 6335678101, q = 18345678103.

秘密鍵は非公開とし、厳重に保管しておく。

●もとの文:

かずはせかいをつくる

●暗号化:公開鍵 (n, e) を知っていれば誰でも暗号文を作れる。

(1) もとの文を数字 m に変換する。

    かずはせかいをつくる
    ↓↓↓↓↓↓↓↓↓↓
m = 25824533252164372760

(2) m の e 乗を n で割った余り c を求める。

c = (m^e mod n) = 26827231170163415492

この c が暗号文である。

●暗号解読:公開鍵 (n, e) だけを使って暗号文 c を解読する方法

(1) n を素因数分解する。

n = pq,  p = 6335678101, q = 18345678103.

秘密鍵を知っていればこのステップを省略できる。
p, q が数百桁の素数とき n の素因数分解は現実的な時間内では不可能だと
考えられている。そのとき暗号解読は最初のステップで頓挫する。

(2) p-1 と q-1 の最小公倍数 r を求める。

r = lcm(p-1,q-1) = 19372051830081827700.

(3) r を法とする e の逆元 d を求める。

de ≡ 1 mod r,  d = 19102163426605063453.

(4) c の d 乗を n で割った余りを求める。

m = (c^d mod n) = 25824533252164372760

(5) 数字を文字に変換する。

m = 25824533252164372760
    ↓↓↓↓↓↓↓↓↓↓
    かずはせかいをつくる