月例奥多摩


2017年2月12日日の出山にて

久しぶりに参加のピクニック企画の山行。YamaCaféのメンバが一緒でクレームブリシュレをご馳走になる。 美味しいコーヒー付き。


今回は焼き物を準備する予定が、前日に準備ができずご馳走になってしまった。

山は雪の季節。日向和田駅で、熊が出ているから気を付けるように言う方がいたが、まだ早かったようだ。

富士山方面だけ、ピンポイントで雲がかかっていたのがやや残念。つるつる温泉に下り、久しぶりにアルカリ泉を楽しんだ。

広告

笹一忘年会


2016年12月24日お坊山より(右端が北岳)

笹子雁腹摺山から尾根伝いに米沢山、お坊山と歩き、尾根伝いに下って、笹一酒造へ。
前回と同じコース。毎回好天に恵まれるが、その分寒い。
2年ぶりの参加だったので風邪気味のところ少し無理をしてしまったかも。
石和温泉に連れて行ってもらい、ぬるい露天風呂で長湯をした。電車に乗っている間に湯冷めもしたのだろう。
日曜の予定はキャンセルしてしまった。

お坊山からの富士が輝いている。お坊山の方が笹子雁腹摺山より少し高いようだ。

皇居一周ラン

24日土曜日、久しぶりに皇居1周してきた。皇居ランナーが増えて渋滞するくらいになったのに閉口して行かなくなってしまっていた。シーズンの割りにはランナーが少なく、一時のブームは去ったのかもしれない。

いつ以来のことかと調べてみると、どうも2013年4月以来らしい。

朝飯前のランは今も続いている。この日は甘酒135kcalを飲んでから走った。20kmを特にシャリバテせずに走りきれている。

RSA暗号

法33でのべき乗の表。

この表を見るとRSA暗号の構成が分かりやすい。A列に平文が、2行にべき乗数を並べてある。交点には平文をべき乗した値の、33を法として計算した値が入っている。21列目に平文が現れるのが暗号、復号の原理。平文を3乗して暗号化し、暗号を7乗すると平文に戻ることになる。7乗して暗号化、暗号を3乗しても同じ。21の約数は1、3、7と21なのでこうなるが、1と21の組み合わせでは暗号ができない。11列目と31列目にも平文が現れるが、どちらも約数が1と11しかないので暗号にならない。

33は二つの素数3と11の積になっている。11乗、21乗と31乗は、(3-1)=2と(11-1)=10との公倍数10、20、30それぞれに1を足した11、21と31に由来する。

二つの素数p,qの積p*qを法とする。(p-1)と(q-1)の最小公倍数をL=lcm((p-1),(q-1))とする。n* L+1の約数のうち、1とその数を除く約数uと、u*v= n* L+1となるv,nを取ると、uとvが暗号鍵、復号鍵となる。

vとnとは、不定方程式u*v- n* L = 1の解なので、拡張ユークリッドの互除法で特異解v0, n0を求めることができ、一般解はv0+k*L, n0+k*uとなる。

P=3,q=11の場合、L=10。,u=3とすると3v-10n=1の特異解は、7,2なので、暗号鍵u=3の時、復号鍵はv=7と確認できる。この時n=2でべきは21になることも確認できる。一般解は、v=7+10*k,n=2+3*k。暗号鍵が3の時、17も復号鍵になる。この時のべきは51。

この表はexcelで作成しており、二つの素数をp,q、A列の平文x、2行のべきuとすると、交点の暗号はy=mod(x^u,p*q)で計算でき、mod(y^v,p*q)で復号できることになる。但し、x^u,y^vはすぐに大きな数になるので、u=10あたりから先はオーバーフローしてしまう。u,vを2進数で表現してx,x^2,x^4,x^8,x^16・・・の法を取った積を計算することでp*qの範囲の積に収まる。べきの小さな項から計算すれば前の計算結果が使えるので計算量も激減する。

この表はこちらのページにあったもの。数式で理解していたつもりのところが、実感できてよかった。証明はこちらのページのが分かりやすかった。あらすじは以下。
p*qより小さな正の数xが暗号化、復号化して、x=x^(u*v) mod(p*q) となる必要十分条件を考える。
変形して、x*(x^(u*v-1)-1)=0 mod(p*q)
すなわちx* (x^(u*v-1)-1)はp*qの倍数。ここでpとqは素数なのでpの倍数且つqの倍数となる。
x*(x^(u*v-1)-1)=0 mod(p) 且つx*(x^(u*v-1)-1)=0 mod(q) —(1)
ここでxがp,qのどちらかの倍数の時は自明。以下はxはp,qと素である場合を考える。
Xは0でなく、且つp,qの倍数でないので、これはxで割っても成立する。
両式を変形して、x^(u*v-1)=1 mod(p) 且つ x^(u*v-1)=1 mod(q)
xとp,qが素なので、フェルマーの小定理(aとpが素な時、a^(p-1)=1 mod(p))より、
u*v-1=mod(p-1) 且つ u*v-1=mod(q-1)
p,qとそれぞれ素なk,lについて
u*v-1=k(p-1), u*v-1=l(q-1)
の時、(1)の両式が成立する。
L=lcm((p-1),(q-1))とすると、u*v-1=0 mod(L) が必要十分条件となる。
すなわち、u*v=n*L+1となれば良い。

復号鍵17のケース(普通7とするところ)をMaximaで計算すると、次のような感じ。15を3乗して33で法を取り暗号9を得、17乗して法を取って復号化して15に戻る。拡張ユークリッド互除法の仕様の関係で、k=1のところ、2のように見える。

(%i21)

p:3;
q:11;
factor((p-1)*(q-1));
load(gcdex);



(%i43)

u:3;
igcdex(u,lcm((p-1),(q-1)));



(%i45)

v:%[1]+2*lcm((p-1),(q-1));
x:15;
y:mod(x^u,p*q);
mod(y^v,p*q);


桜田門まで

2016年12月3日桜田門から

東京タワーまでのランのつもりが、気持ちが良いので、桜田門まで足を伸ばした。お堀の水は満杯。久しぶりに見たのだが、今はこんなに深くしているのだろうか。

神宮外苑 イチョウ

2016年11月26日神宮外苑

今年のいちょう祭りは何故か中止に。とは言え、イチョウの色づきも人出も例年と変わりない。快晴の空の青さに良く映える。

神宮までのランは久しぶりで心地良かった。

池田山公園も紅葉の盛り。こちらもいつもより人出が多い。

GIMP2

GIMPは高機能・多機能なのだが、使いこなすには新しい概念になれる必要がある。Favicon.icoを作れるようになった。

トリミング:選択範囲だけを保存する手順(覚え):
ファイル・インポート、選択、レイヤー・選択範囲で切り抜き、画像・キャンパスをレイヤーに合わせる、ファイル・名前を付けて保存、ファイル・名前を付けてエキスポート。
選択範囲は変形可能。拡大・縮小で選択範囲を選んで大きさを変え、トリミングする。

壁紙:
4k50xは縦横比16:9で画素数3840×2160。EOS kiss digital Nは縦横比3:2で3456×2304。なので、壁紙用に縦横比を合わせるためには縦1944にトリムする。Dell3008WFPは2560×1600。EOSの写真の縦横比を合わせるためには横2400にトリムする。

Favicon.ico:
正方形にトリミングした後、16×16、32×32、48×48、64×64、96×96に縮小したレイヤを用意して、Microsoft Windows アイコン形式でエキスポートして作成する。