【コメント】
【問題2−2】について、参考としたサイトの表記の違いで、若干の混乱がありました。
「高校数学で遊ぶ公開鍵暗号RSA」
では、暗号鍵Eと解読鍵Dとの関係は
E・D≡1 MOD((p-1)(q-1))となっていますが、
「サルにもわかるRSA暗号」では
E・D≡1 MOD(LCM(p-1,q-1))でした。
753は前者で、353は後者で求めたものです。
353の方が解としてはベターかと思います。
◆東京都の高校生 羅剛 さんからの解答
【問題1】
まず、今年は平成17年だから H=17
次にX=2005−Eとして、このXが2,3,5,7,11,13のうちの4つの数字により素因数分解でき、各数字が1回ずつでなければいけないので、Eにそれぞれを代入して検証する。
◆京都府 so-un さんからの解答
【問題1】
Before make the answer.
F=17(knowledge)
A,B,C,D have same value.
… represents integral number.
The answer
If I use 5,I can't make 2005 by calculaion.
∵2005=5*41
If,I use 5 for AtoD,E must be a multiple of 5.
If,I use 5 for E,
A*B*C*D must be a multiple of 5.
It is unable,because of the precondition.
If E=13
(2005-E=)1992=4*…
∴¬
If E=11,2
1994(or+9)/3=664+2/3(or+3)
∴¬
If E=7
1998=9*…
∴¬
If E=3
2002=2*7*11*13
O.K.
So,the answer is (A,B,C,D)=(2,7,11,13),E=3,F=17
◆神奈川県の中学校3年生 Ozza さんからの解答
【問題1】
今年は平成17年なのでF=17
すると、残りは2,3,5,7,11,13
もし、AからEに全て奇数が入ったとすると、A×B×C×D+Eは偶数となり不適。
よって、必ず2が含まれる。
(1) E=2の場合
A×B×C×D=2003
しかし2003は素数なので、A,B,C,Dに1以上のどんな整数を入れても成立しないので、不適。
(2) それ以外
A=2として問題ないので、今後はそう仮定する。
ところで、Eには3,5,7,11,13しか入らないので、
B×C×Dの候補として、1001,1000,999,997,996
ところで、B,C,Dは全て奇数なのでB×C×Dも奇数。
よって候補としては1001,999,997となる。
(i) B×C×D=997の場合(E=11)
997は素数なのでA,B,C,Dに1以上のどんな整数を入れても成立しないので、不適。
(ii) B×C×D=999の場合(E=7)
999は9の倍数であり、3で少なくとも2回以上整除されるが、B,C,Dはすべて素数だから同じ素因数を2つ以上持つことはできない、よって不適。
(iii) B×C×D=1001の場合(E=3)
このとき1001に素因数分解を試みると、
1001=7×11×13
よって、B=7,C=11,D=13とすれば条件を満たす。
よって、A=2,B=7,C=11,D=13,E=3,F=17(A,B,C,Dは順序を問わないとする)が求める全ての答えである。
【問題2】
【問題2−1】
N=121717について、それぞれ401,5で割った余りを見る。
(1) 401で割った余り
以下、≡はmod 401での等号とする。
121717
≡1417
≡(142)8×14
≡1968×14
≡(1962)4×14
≡((-80)4)×14
≡804×14
≡((802)2)×14
≡(-16)2×14
≡162×14
≡256×14
≡376
(2) 5で割った余り
以下、≡はmod 5での等号とする。
121717
≡217
≡(22)8×2
≡48×2
≡(-1)8×2
≡1×2
≡2
上記(1)、(2)の両方を満たす解は中国剰余定理よりmod 2005において唯一つである。
それを以下で求める。
(1)より、N=401k+376・・・(*)とかける。
ここに(2)を用いると以下のような方程式がたつ。
401k+376≡2 (mod 5)・・・(**)
これを解く。
5k≡0 (mod 5)は常に成り立つ。
よって、両辺80倍して、
400k≡0 (mod5)
(**)から両辺それぞれ引いて、
k+376≡2 (mod 5)
k+1≡2 (mod 5)
k≡1 (mod 5), 解が求まった。
ここで、(*)にk=1を代入して、
N≡401×1+376≡777 (mod 2005)
よって求める答えは、777である。
【問題2−2】
2005=5×401だから、
今、秘密鍵をdとおくと、
17d≡1 (mod 1600)・・・(***)の解を求めればよい。
この解を求める。
1600d≡0 (mod 1600)は常に成り立つ。
(***)を両辺94倍して、
1598d≡94,
これを上の式から引いて、
2d≡-94 (mod 1600),
これを両辺8倍して、
16d≡-752 (mod 1600),
この式を(***)より引いて、
d≡753 (mod 1600),
解が求まった。
よって、753が秘密鍵である。
【感想】
やはり難しいですね。
◆東京都 まっちゃん さんからの解答
【問題1】
まず、F=17が分かります。
次にA〜DとEに2、3、5、7、11、13を入れるわけですが、これはつまりEに入れる素数とどれにも入らない素数を見つければよいということです。
ここで右辺を素因数分解してみると5×401となり5の倍数であることが分かります。
もしA〜Dに5が含まれているとEは5の倍数ではないので左辺は5の倍数ではありません。
またEが5の場合もA×B×C×Dが5の倍数でないので左辺は5の倍数ではありません。
よって5はどれにも入らないことが分かります。
あとは2、3、7、11、13からEに入る素数を探すだけなので5通り試してもすぐに見つかります。
少しだけ楽をするには2×3×7×11×13=6006から3と見当をつけてもいいかも知れません。
【問題2−1】
121717
=12171+2+4+8+2
=12171×12172×12174×12178×12172
2005を法として
12171≡1217
12172≡1399
12174≡321
12178≡786より
121717
≡1217×1399×321×786×1399
≡1217×321×321×786
≡1217×786×786
≡1217×256
≡777 となります。
【問題2−2】
2005=5×401よりp=5、q=401と分かる。
(p−1)(q−1)=4×400=1600から
秘密鍵βは17β≡1(mod1600)を満たす。
分かりやすくいうと
17β=1600n+1 …(1) (ただしnは自然数とする)
となっている。
ここで右辺の1の位の数は1であり、βの1の位の数は3であることが分かるので
β=10m+3 …(2) (ただしmは0以上の整数)
とおくことができて(1)に代入して整理すると
17m+5=160n …(3)
再び右辺の1の位に注目すると、0であることから、17mの1の位は5であることが分かる。
つまりmの1の位が5であることが分かったので
m=10k+5 …(4) (ただしkは0以上の整数)
とおくことができて(3)に代入して整理すると
17k+9=16n …(5) これを変形すると
17(k−7)=16(nー8) …(6) となる。
17と16(=24)は互いに素なので
k−7=16i …(7) (ただしiは整数)
kは0以上の整数であることから、iも0以上の整数であることが分かる。
(7)を(4)に代入して
m=160i+75 …(8)
さらに(8)を(2)に代入すると
β=1600i+753 となる。
【感想】
RSA暗号の内容を初めて知りました。
簡単な数ですが実際に計算で出してみると嬉しいものですね。
◆滋賀県 松尾 さんからの解答
【問題1】
Fは 17 です。
あと6個の数ですが、全てをかけると 30030 です。
30030 ÷ 2005 = 14.978 ですので、2個の数をかけた時に15になるような組合せ、
すなわち 3 と 5 をかけ算から除きます。
答は 2 × 7 × 11 × 13 + 3 = 2005 です。
【問題2−1】
参考にしたページから
( A × B ) mod C ≡ (( A mod C ) × ( B mod C )) mod Cです。
また、
12173 mod 2005 ≡ 338
12172 mod 2005 ≡ 1399
ですから、
1217 17 mod 2005
≡ (( 1217 3 ) 3× ( 1217 3 ) 2× 12172) mod 2005
≡ ( 338 3× ( 3382× 1399 )) mod 2005
≡ ( 177 × 786 ) mod 2005
= 777
【問題2−2】
2005 = 5 × 401 だから、参考にしたページより
17 × D = n × (5 - 1) × (401 - 1) + 1 となるような D , n は
D = 753 , n = 8 となります。
答は 753 です。
念のため計算しますと、
( 3乗 ごとに計算したのは電卓の有効桁数に合わせたためです。)
7773 mod 2005 ≡1618
7779 mod 2005 ≡16183 mod 2005 = 1942
77727 mod 2005 ≡19423 mod 2005 = 578
77781 mod 2005 ≡5783 mod 2005 = 1007
777243 mod 2005 ≡10073 mod 2005 = 843
777729 mod 2005 ≡8433 mod 2005 = 1152
ですから、
777 753 mod 2005
≡ ( 777 729× (777 9)2× (777 3)2) mod 2005
≡ ( 1152 × 19422× 16182 ) mod 2005
≡ ( 888 × 16182) mod 2005
= 1217
◆千葉県 ベスの親分 さんからの解答
【問題1】
A=2,B=7,C=11,D=13,E=3、F=17
【問題2】
2005を法とし、公開鍵を17
【問題2−1】
1217x12178x12178≡777(mod2005)
12172≡738(mod2005)
12174のmodは738x738÷2005の余りで321
12178のmodは321x321÷2005の余りで786
121716のmodは786x786÷2005の余りで256
121717のmodは1217x256÷2005の余りで777
【問題2−2】
秘密鍵は、(秘密鍵をAとする)
2つの素数をPとQにする
PxQ=2005である。
下一桁が5であることから、どちらかの下一桁は5である。
下一桁が5の数字で素数は5のみ。
もう一つは2005÷5=401
PとQは5と401
17xA=n(P−1とQ−1の最小公倍数)+1
17xA=nx400+1
A=(nx400+1)÷17 Aは正の整数
A=6001÷17
A=353
秘密鍵は353、753、…と。 353+nx400 (nは0,1,2,3,…)
◆ 問題へもどる
◆ 今週の問題へ