画像に示された数学の問題は、以下の通りです。 1. RSA暗号を使った暗号化

数論RSA暗号暗号合同算術モジュラ演算
2025/7/4
## 問題の整理と解答

1. **問題の内容**

画像に示された数学の問題は、以下の通りです。

1. RSA暗号を使った暗号化

2. アトバシュ暗号とRSA暗号を使った暗号化

3. ポリュビオス式暗号とRSA暗号を使った暗号化

4. 「ひらがな」のポリュビオス式暗号とRSA暗号を使った暗号化

5. 自分の苗字または名前を暗号化(平文と暗号の2つ入力)

2. **解き方の手順**

それぞれの問題に対する解き方を説明します。

1. **RSA暗号を使った暗号化**

公開鍵 (e,n)=(3,55)(e, n) = (3, 55) を使って、「15 33 28 05」を暗号化します。RSA暗号化は C=Pe(modn)C = P^e \pmod{n} で行います。ここで PP は平文、ee は公開鍵、nn は法、CC は暗号文です。
- 15: 153(mod55)=3375(mod55)=6155+10=1015^3 \pmod{55} = 3375 \pmod{55} = 61 \cdot 55 + 10 = 10
- 33: 333(mod55)=35937(mod55)=65355+22=2233^3 \pmod{55} = 35937 \pmod{55} = 653 \cdot 55 + 22 = 22
- 28: 283(mod55)=21952(mod55)=39955+7=728^3 \pmod{55} = 21952 \pmod{55} = 399 \cdot 55 + 7 = 7
- 05: 53(mod55)=125(mod55)=255+15=155^3 \pmod{55} = 125 \pmod{55} = 2 \cdot 55 + 15 = 15

2. **アトバシュ暗号とRSA暗号を使った暗号化**

アトバシュ暗号で「CAT」を変換し、その結果をRSA暗号で暗号化します。公開鍵は (e,n)=(7,33)(e, n) = (7, 33) です。
- アトバシュ暗号:A → Z, B → Y, C → X, ... より、C → X (24)、A → Z (26)、T → G (7)。
- 暗号化:
- 247(mod33)24^7 \pmod{33}
- 267(mod33)26^7 \pmod{33}
- 77(mod33)7^7 \pmod{33}
- 計算:
- 247(mod33)=(242)324(mod33)=576324(mod33)=(1733+15)324(mod33)=15324(mod33)=337524(mod33)=(10233+9)24(mod33)=924(mod33)=216(mod33)=633+18=1824^7 \pmod{33} = (24^2)^3 * 24 \pmod{33} = 576^3 * 24 \pmod{33} = (17*33 + 15)^3 * 24 \pmod{33} = 15^3 * 24 \pmod{33} = 3375 * 24 \pmod{33} = (102 * 33 + 9) * 24 \pmod{33} = 9 * 24 \pmod{33} = 216 \pmod{33} = 6*33 + 18 = 18
- 267(mod33)=(262)326(mod33)=676326(mod33)=(2033+16)326(mod33)=16326(mod33)=409626(mod33)=(12433+4)26(mod33)=426(mod33)=104(mod33)=333+5=526^7 \pmod{33} = (26^2)^3 * 26 \pmod{33} = 676^3 * 26 \pmod{33} = (20*33 + 16)^3 * 26 \pmod{33} = 16^3 * 26 \pmod{33} = 4096 * 26 \pmod{33} = (124 * 33 + 4) * 26 \pmod{33} = 4 * 26 \pmod{33} = 104 \pmod{33} = 3*33 + 5 = 5
- 77(mod33)=(72)37(mod33)=4937(mod33)=(133+16)37(mod33)=1637(mod33)=40967(mod33)=(833+16)7(mod33)=167(mod33)=112(mod33)=333+13=137^7 \pmod{33} = (7^2)^3 * 7 \pmod{33} = 49^3 * 7 \pmod{33} = (1*33 + 16)^3 * 7 \pmod{33} = 16^3 * 7 \pmod{33} = 4096 * 7 \pmod{33} = (8*33 + 16) * 7 \pmod{33} = 16 * 7 \pmod{33} = 112 \pmod{33} = 3*33 + 13 = 13

3. **ポリュビオス式暗号とRSA暗号を使った暗号化**

ポリュビオス式で「DOG」を変換し、その結果をRSA暗号で暗号化します。公開鍵は (e,n)=(5,38)(e, n) = (5, 38) です。
- ポリュビオス式(問題文に定義がないので、一般的と思われるアルファベット順の数字を使う):D=4, O=15, G=7
- 暗号化:
- 45(mod38)4^5 \pmod{38}
- 155(mod38)15^5 \pmod{38}
- 75(mod38)7^5 \pmod{38}
- 計算:
- 45(mod38)=1024(mod38)=2638+36=364^5 \pmod{38} = 1024 \pmod{38} = 26*38 + 36 = 36
- 155(mod38)=(152)215(mod38)=225215(mod38)=(538+35)215(mod38)=35215(mod38)=122515(mod38)=(3238+9)15(mod38)=915(mod38)=135(mod38)=338+21=2115^5 \pmod{38} = (15^2)^2 * 15 \pmod{38} = 225^2 * 15 \pmod{38} = (5*38 + 35)^2 * 15 \pmod{38} = 35^2 * 15 \pmod{38} = 1225 * 15 \pmod{38} = (32*38 + 9) * 15 \pmod{38} = 9 * 15 \pmod{38} = 135 \pmod{38} = 3*38 + 21 = 21
- 75(mod38)=(72)27(mod38)=4927(mod38)=(138+11)27(mod38)=1127(mod38)=1217(mod38)=(338+7)7(mod38)=77(mod38)=49(mod38)=138+11=117^5 \pmod{38} = (7^2)^2 * 7 \pmod{38} = 49^2 * 7 \pmod{38} = (1*38 + 11)^2 * 7 \pmod{38} = 11^2 * 7 \pmod{38} = 121 * 7 \pmod{38} = (3*38 + 7) * 7 \pmod{38} = 7 * 7 \pmod{38} = 49 \pmod{38} = 1*38 + 11 = 11

4. **「ひらがな」のポリュビオス式暗号とRSA暗号を使った暗号化**

「日高」をポリュビオス式で変換し、その結果をRSA暗号で暗号化します。公開鍵は (e,n)=(3,51)(e, n) = (3, 51) です。
- ここでは問題文にポリュビオス式の定義がないため、一般的な五十音表を使い、各文字の行と列の番号を連結して数字に対応させる方式を使用します。例えば、「あ」は11、「い」は12となります。
- 今回は便宜的に、「日」を24, 「高」を41と仮定します。
- 暗号化:
- 243(mod51)24^3 \pmod{51}
- 413(mod51)41^3 \pmod{51}
- 計算:
- 243(mod51)=13824(mod51)=27151+3=324^3 \pmod{51} = 13824 \pmod{51} = 271*51 + 3 = 3
- 413(mod51)=68921(mod51)=135151+20=2041^3 \pmod{51} = 68921 \pmod{51} = 1351*51 + 20 = 20

5. **自分の苗字または名前を暗号化**

例として、「裙沢栄一」の「ぐみさわ」を暗号化します。
- ポリュビオス式で「ぐみさわ」を変換し、RSA暗号で暗号化します。公開鍵は問題文に指定がないので、適当に (e,n)=(3,77)(e, n) = (3, 77) とします。(問題文の指示がないので、ポリュビオス式とRSA暗号を使用しないことも考えられます。)
- 「ぐ」は23、「み」は33、「さ」は31、「わ」は45と仮定します。
- 暗号化:
- 233(mod77)23^3 \pmod{77}
- 333(mod77)33^3 \pmod{77}
- 313(mod77)31^3 \pmod{77}
- 453(mod77)45^3 \pmod{77}
- 計算:
- 233(mod77)=12167(mod77)=15877+1=123^3 \pmod{77} = 12167 \pmod{77} = 158*77 + 1 = 1
- 333(mod77)=35937(mod77)=46677+55=5533^3 \pmod{77} = 35937 \pmod{77} = 466*77 + 55 = 55
- 313(mod77)=29791(mod77)=38777+10=1031^3 \pmod{77} = 29791 \pmod{77} = 387*77 + 10 = 10
- 453(mod77)=91125(mod77)=118377+74=7445^3 \pmod{77} = 91125 \pmod{77} = 1183*77 + 74 = 74

3. **最終的な答え**

1. RSA暗号:「10 22 7 15」

2. アトバシュ暗号とRSA暗号:「18 5 13」

3. ポリュビオス式暗号とRSA暗号:「36 21 11」

4. ひらがなのポリュビオス式暗号とRSA暗号:「3 20」

5. 自分の苗字または名前(「ぐみさわ」):平文「ぐみさわ」、暗号文「1 55 10 74」

「数論」の関連問題

整数 $n$ が与えられたとき、合同式を用いて次の値を求めます。 (1) $n$ を 9 で割った余りが 2 であるとき、$n^2 + 2n + 7$ を 9 で割った余り (2) $n$ を 13 ...

合同式剰余整数の性質
2025/7/29

問題は、合同式を用いて次のものを求める問題です。 (1) $123^{120}$ の一の位 (2) $7^{251}$ の下2桁

合同式剰余一の位下2桁
2025/7/29

問題は、7の50乗について、以下の2つを求める問題です。 (1) 12で割った余り (2) 一の位の数

合同算術剰余累乗周期性整数の性質
2025/7/29

自然数 $n$ に対して、$n$ 以下の自然数で、$n$ と互いに素であるような自然数の個数を $f(n)$ とする。 (1) $f(63)$ の値を求めよ。 (2) $f(300)$ の値を求めよ。...

オイラー関数互いに素素数約数
2025/7/29

$m, n$ は整数であるとき、以下の3つの式が6の倍数であることを証明する。 (1) $n(n-1)(2n-1)$ (2) $2n^3 + 4n$ (3) $m^3n - mn^3$

整数の性質倍数合同式証明
2025/7/29

整数 $n$ に関する以下の3つの命題を証明する問題です。 (1) $n^2 + 7n + 4$ は偶数である。 (2) $n^2 + 1$ は3の倍数ではない。 (3) $n^2$ を6で割ったとき...

整数の性質合同式剰余偶数倍数
2025/7/29

問題は以下の2つです。 (1) 連続する2つの奇数の2乗の差は、8の倍数であることを証明する。 (2) 連続する2つの偶数の2乗の和は、4の倍数であるが、8の倍数ではないことを証明する。

整数の性質倍数証明代数
2025/7/29

整数 $a$ は8で割ると3余り、整数 $b$ は8で割ると6余る。このとき、以下の数を8で割ったときの余りを求める。 (1) $a+b$ (2) $7a - 4b$ (3) $ab$ (4) $3a...

整数の性質合同算術剰余
2025/7/29

与えられた数(100, 99, 125)の正の約数の個数を求める問題です。

約数素因数分解整数の性質
2025/7/29

$17x + 12y = 2$ の整数解 $(x, y)$ において、$x + y$ の値が 100 未満で最も大きくなるときの $x + y$ の値を求める。

不定方程式整数解ユークリッドの互除法
2025/7/29