トップ «前日 最新 次日» 追記
RSS feed

ただのにっき


2000-02-07(月)

RuBBS

週末にやっとこま犬ライブラリを更新できたので、今日は久々にRuBBSのアップデートでもしようかね。まずはこのマシンにRuBBSをインストールしなければならない。/home/httpd/cgi-bin/bbsを作ってそこに0.2.2を展開。アクセス権をnobody/webmasterにして、テスト用の掲示板をmakebbsで作成してできあがったファイルにuser/groupに対する書き込み権を与える。やっぱこの過程はかなり面倒だなぁ。makebbsの構造か、マニュアル(汗)を整備しないと使えねぇよ、これ(笑)。

とまぁ、環境が整ったところで実装開始。まずは、文中にURLを見つけたら自動的にリンクに変える機能がバグっていて、URLの末尾に空白があると正しく動作しない拳の修正。これはすでにパッチが出ていたのでそれをあてて終り(ちとバグってたけど)。

続いて新真コンダラ掲示板でリクエストがあったReply機能の実装。これもわりと簡単で、新しいフォームを作って対象になるアーティクルを引用符付きで突っ込むだけ。が、ここで問題が。存在しないアーティクル番号を指定しても落ちないようにしようと思って例外処理をいれたら、思ったように動かない。なに、Rubyはいつからraiseに文字列指定しちゃいけなくなったの!?

思わぬ非互換に泡を食ったが、class NoArticleError < StandardError endという感じで新しい例外クラスを作ってそれを上げるように修正。あー、びっくりした。でもうちはまだRubyが1.2系なので、1.2でも1.4でも動くようにしないといけない。たぶん大丈夫だと思うので、自サイトだけアップデート。すでに5つの掲示板が運用されているので、入れ換えはちょっとドキドキするが、いちおう問題なし。

Reply用のイメージが、サイトごとに変えられるようにした方がいいかなぁ。掲示板によって背景色が違うから、同じイメージ使うのは無理があるか。もしくは透過色じゃなくすという手もあるな。そっちにするか、楽だし(笑)。よし、明日公開しよう。


2001-02-07(水) eRuby

電車で隣に座った女の子が503i(Java憑きiモード端末)を手に持って、熱心に何かを延々とやっている。何かと思ってこっそり覗いたら15ゲームだった。キミは人生の無駄遣いをしてないか?

eRuby

eRuby遊び、引き続き。cookieを扱いたいと思ったけど、普通のやり方ではHTTPヘッダをいじれない。[ruby-list:27567]で質問。すると前田さんから[ruby-list:27571]という回答が。ううむ。eRubyとcgi.rbの協調は奥が深いのぅ。

他にもERbを試してみる。こちらはpure Rubyで書かれているので、ポータビリティの高さが魅力だ。付属のerbcgi.rbを使うことで、ヘッダを制御できるようになる。ただ、ちょっといじらないといつもの環境では動かせず。ちょっと整理してパッチを出すべきかも知れない。今日はcgi.rbの問題にもブチ当たったりして、なかなか勉強になった一日であったよ。


2002-02-07(木) 0歩(付け忘れ)

本日のハンティング

最近、Nanaのハント率の方が高いなぁ。

NahaNaha NewEdition。周囲から三日坊主を予想されながら5ヶ月も続いてるなんて偉いです(笑)。

そうそう、昨日のはすべて直しました。すみません。

本日のサボり

朝、起きられなかったので、休んでしまった。日に日にモチベーションが下がっていくなぁ。まずい。

午後、伊勢丹に出かけて昼食。九州沖縄物産展をやっていたので、久留米ラーメンを食べる。うまい。やっぱラーメンは九州がいいなぁ。ついでにサータアンダギーが売っていたので買ったけど、こっちで作ってるのはイマイチかも。

tDiary

ツッコミメールのMessage-ID重複、おっしゃるとおり。パッチ採用します。つーか、おれもちゃんと日付入れたつもりだったのに……なんで番号だけ入ってんだろう……。

というわけで、ひさびさにスナップショットを公開。変更点はChangeLog参照。あ、tdiary.confに入れるmail-via-smtp云々のおまじないはいらなくしました。SMTPはデフォルトにしたので。つーか、いまだに他のメソッドが動かない……。suExec配下なら動くかなぁ?

本日のツッコミ(全2件) [ツッコミを入れる]

woods [うちの日記もに書いたんですけど、ツッコミメールのMessage-IDが重複しそうなんでパッチを作ってみました。 h..]

Furu [5ヶ月目に見つかってしまいました(笑]


2003-02-07(金)

Amazonの「おすすめ」

最近、Amazonにやたらと宇宙論の関連本を勧められる。どうも、何かの拍子に勧められた『ホーキング宇宙を語る』を「持っています」と答えたからだと思うんだけど、だからといってそれ方面ばっかり推薦することもあるまいに。宇宙に逃避しろとでも言いたいのか?

そうかと思えば、こないだ読んだ『プランク・ゼロ』の続編『真空ダイヤグラム』が出ても、勧めてくれないし。こういうのは、新刊をタイムリーに教えてくれた方がいいんじゃないの、売る方も買う方も。

web@Doctor!

バイクの任意保険を選ぶのに使った、いや使っていたサイト。ネットで見積もりできるバイクの任意保険は少ないので貴重なサイトである。

BMWの保険が切れたという案内をくれたので、「盗難されたので継続できません」とメールを出したら、22時過ぎなのに5分あまりで返事が来た。びっくり。このレスポンス、sf.netにも見習って欲しい(←謎)。

で、「中断証明書」というのを出しておけば、将来また乗り始めた時に等級を継続できるらしい。聞いてみるもんだな。

本日のツッコミ(全5件) [ツッコミを入れる]

kdmsnr [bk1に新刊案内メールっていうのがあります。お気に入りの作者を登録できます。便利ですよ。(そして買うのはAmazon..]

ただただし [著者名10人までなんて、少なすぎて使い物になりません(笑) >bk1 以前あったTRCの新刊案内を越えるサービスは、..]

yoshimi [相対URLの件、紹介しました(汗)。 ところでテーブルにはclass=hogeをいれてほしいです。]

ただただし [class指定がなくても、 div.section table { ... } って感じで指定できません?]

yoshimi [そうですね。失礼しました。こちらのほうがいいと思います(汗)。]


2004-02-07(土)

我輩の辞書に「パケ死」の文字はない

その証拠に、「ぱけし」で変換すると「波消し」に。

というわけで、auのWIN端末(って書くとまるでOSがWindowsみたいだ)、W11Hを使い始めて約1週間が経過した。ADSL導入の時もそうだが、ブロードバンドというヤツは、その「速度」よりも「つなぎっぱなし」という面が生活に影響を及ぼす。もうね、電車のなかでアクセスしっぱなしですよ。おかげで毎日ちゃんと充電しないとダメ。

巡回

巡回したってへっちゃら。アンテナをちょっといじって、UP.Browserからのアクセスに限って最新100リンクで切るようにした。でないとメモリ不足のエラーがうるさいので。100もいらんな。50でいいかも。今まで、巡回時間が朝昼夕夜と決まっていたので、たまてばこのような伝統的なアンテナでよかったんだけど、もっといい感じに更新チェックがかかるようにしたいな。やはりsamidareか?

で、tDiary系のサイトは(当然ながら)いっさい問題なし。自分では使わないのに携帯対応しておいてよかったよ。ただ、ツッコミが途中で切れる点はもうちょっと調整がいるかも。

その他のウェブログ系は、レイアウト次第では読めるものも少なくないが、サイドバーがページの冒頭にあるようなところはメモリ不足で本文にたどり着けないことが多い。tDiaryでは読み上げブラウザを考慮してサイドバーをフッタに入れるように推奨してきたが、携帯アクセスを意識した時にもこの原則は重要だなぁ。

ニュースサイトはほとんど使い物にならない。たいてい、サイドバーが重すぎる。ひどいところはヘッドラインの画像で限界に達したりする。テキストで勝負するサイトがこういうことでええんかい。Webサイトデザイナーは、試しに自分のところを携帯でアクセスしてみるべきだ。

goopas

去年、H"からは登録できず、悔しい思いをしたgoopasにも入ってみた。あれだけ根掘り葉掘り個人情報を聞いてきたわりには、たいして興味のある情報を送ってこない。まぁ、相模原と町田という乗降駅が問題って気もするが……。しばらく使ってみて傾向が変わらなければ解約するだろう。

mobileimap

mobileimapは大活躍である。長らく1.0からバージョンアップしてなかったけど、これを期に、最新にしておくか。

GPS

GPS機能はまだほとんど使っていない。こま犬の取材をしたときに記録しておくと、あとで楽になりそうだ。他にも、写真と組み合わせてできそうな、面白い遊びを考えてみたい。……なんて、増井さんのパクリになりそうな気がするけど。

本日のツッコミ(全10件) [ツッコミを入れる]

Before...

74 [な、なんと( ̄□ ̄;)!! 実はここ数日、auに変えようかどうしようか迷っていた のですが、これで心は決まりました..]

ただただし [うっ、責任感じちゃうな。「少なくともW11Hでは」って補完しておいて下さいよ(^^;]

なかだ [たまに携帯(211)で更新してます。]

michieru [うちのmDiary、たまにA5404Sから更新してます。追記のみでプレビューが欲しいかなと思うことがありますけど。(..]

ま2 [goopasって最初の登録が本当に大変ですよね。で,役に立つのは事故情報だけ。事故情報は「改札を通ったタイミングでメ..]

rgfx [自鯖にnogate.cgiを置いてブラウズしています。 たまに見れないページもありますが快適です。 http://w..]


2006-02-07(火)

「本日のリンク元」を大改造(4)

@referer_day_onlyオプションを復活(2.1.3.20060206)。ただし、

  • tdiary.conf中でしか指定できない(設定画面なし)
  • デフォルトでtrue
  • falseにしても最新日記へのrefererの記録先は揮発のみ

って感じに、従来よりは格下げの方向で。でもこれで、アンテナ経由のアクセスもいちおうチェック可能になる。

あとは、「本日のリンク元」と「この日のリンク元」という苦し紛れの用語をなんとかしないとね……。


Tips。「強制的に揮発にする」オプションである@only_volatileには、検索エンジン経由のアクセスを指定するのがオススメ。この手のrefererはデータを太らせる原因なので、恒久的に保存するとページの生成がどんどん重くなる。検索エンジンだけでなく、RSSリーダやソーシャルブックマーク経由のアクセスもここに入れると良いと思う。

Tags: tDiary

たいして積もらなかった

自宅前 けっこう寒かったし、天気予報でさんざん脅されていたわりにはぜんぜん積もってなかった。かみさんは雪が好きだが、おれは大嫌いなので、歓迎である。

しかし7時のNHK、これっぽちの雪でもトップニュースだし。全国ニュースとはとても思えん視野の狭さよ。

本日のツッコミ(全4件) [ツッコミを入れる]

halchan [@only_volatile ですよね?]

ただただし [ぎゃぁ、本当だ。直します。 それにつけても、統一感のない命名よ……とほほ。]

TrackBack [http://www.hsbt.org/diary/20060207.html#p01 HsbtDiary tDia..]

TrackBack [http://mtakeshi.dpost.jp/?date=20060207#p01 mtakeshiの「宵越しの..]


2007-02-07(水)

tDiary: 環境変数とproxyでハマる

最近はWebサービスを使うプラグインが増えてきて、必然的にtDiaryの動いているWebサーバからHTTPリクエストを出すことになるんだが、企業内で運用されてたりするとproxyを経由しなくてはいけない。この手のプラグインのさきがけであるamazon.rbが@options['amazon.proxy']というオプションを持っていたため、これを使いまわすプラグインがあり、「あんまりだ」という話になった。

そこで解決策として、新たに@options['proxy']というオプションを設け、これを共有することにした。HTTP以外のproxyなんて考慮しない大胆な設計。これを「HTTP脳」と名付けよう(余談)。

そうなるとさらに楽をしたくなるもので、GETリクエストしか使わない簡便なWebサービスの場合、open-uriを使ってproxy対応も「お任せ」にしたい。open-uriは環境変数を見てくれるので、@options['proxy']の値を環境変数に設定したらいいのではないか、ということで実装してみた。

まずはENV['HTTP_PROXY']に代入してみたところ、この値を見てくれない。調べてみたらruby-dev:22013という大昔の投稿を発見する。なるほど、たしかに危険だ。

じゃあ、ということでENV['CGI_HTTP_PROXY']を設定したら、proxyへのコネクションを開くところでこんどはInsecure operationなる例外が。これも調べてみると、ENVへのプログラム内部からの代入はすべて「汚染済み」扱いされてしまって、おまけにfronzen状態なのでuntaintもできない、と。そりゃそうか。今日は新発見が多いなぁ。何年Rubyやってんだ、おれ。

というわけで、@options['proxy']は採用するけど、それ以上の楽はできない、ということになりました。とほほ。巻き戻さないと(←ENV['HTTP_PROXY']代入版をcommit済みだったりする)。

Tags: tDiary ruby
本日のツッコミ(全2件) [ツッコミを入れる]

yoosee [open-uri のソース見ると opt_proxy が String の時はそれを使うっぽいので open(..]

ただただし [現在の実装がそうなっているんです。それを環境変数に頼ることで不要にし、proxyの存在を気にかけない実装者がいても問..]


2009-02-07(土)

Debian lenny導入メモ(on VMware Player)

マジ個人的な作業メモ。なんか、この日記を始めた頃のことを思い出したよ。当時はKondaraだったが。

さすがにインストールでつまづく時代ではないので省略。パッケージのセットは、「Webサーバ」と「ファイルサーバ」を選択。インストール直後、まだVMwareのコンソールからしか入れない段階で最低必要なパッケージを導入:

# aptitude install sudo zsh vim subversion ssh screen keychain ruby

rubyは最新の1.8.7-p72ですな。1.9.1はあとで野良ビルドする。

sudoの設定。visudoして以下を追加:

sho     ALL=(ALL) NOPASSWD: ALL

sambaをセットアップして、sshの鍵をコピーするための穴のあける。

# smbpasswd -a sho
# vi /etc/samba/smb.conf
([homes]のread onlyを「no」にする。ファイルのパーミッションは775に)

sshを設定。Windows側の公開鍵を、samba経由で~/.ssh/authorized_keysへ。パーミッションを適切に設定する。

Windows側の/etc/hostsに192.168.43.128を追加。これはDHCPらしいので、あとで固定に変更していいかも。 Poderosaからログインできたら、コンソールは不要なのでTrayIt!あたりで目立たなくしてしまってよい。

あとは.screenrcにUTF-8関連の設定を追加。

defencoding utf-8
encoding utf-8 utf-8
cjkwidth on
Tags: debian lenny

lenny上のruby 1.9.1のビルドでparse.cのコンパイルが固まる

続いてruby 1.9.1を野良ビルド。そもそもこれが目的である。まずは必要なパッケージを導入。

% sudo aptitude install gcc make libreadline-dev zlib1g-dev bison

続いてruby 1.9.1を持ってきてビルド。

% wget ftp://ftp.ruby-lang.org/pub/ruby/ruby-1.9.1-p0.tar.gz
% tar zxf ruby-1.9.1-p0.tar.gz
% cd ruby-1.9.1-p0
% ./configure --prefix=/home/sho --program-suffix=19 && make

あとは待ってればいい……はずだったのに、待てど暮らせど終わらない。parse.cのコンパイルでえらい時間がかかっている。メモリの割り当てが足らないのかと思い、VMwareの設定を128→256MBにしてみたがダメ。

などと嘆いていたら、Twitterでヒントをもらった。詳細は1.9.1のビルドがparse.cのコンパイルで詰まっていた件。なぜか-O2ではダメらしい。先週、職場のマシンに入れたVMwareでは問題なかったのに、なんで???

まぁいいや、これで通るようになった(丸写しすぎ)。

% optflags="-O3 -pipe" ./configure --prefix=/home/sho --program-suffix=19 && make

まだmake test-allが最後まで走らないけど、追ってなんとかする。

screenとUTF-8の相性をなんとかする

さて、先日書いたUTF-8環境でscreenがおかしい件パッケージを作り直せばいいというすばらしい情報をもらったけど……ハードル高いなぁ!

Kondara時代はrpmを作り直すなんて日常茶飯事だったけど、debianになってから自力でdeb作ったことなんてないし。とりあえず、見よう見まねでやってみた作業記録を試行錯誤の部分を削って書いておく。というか、おまじないだらけで、書いておかないと二度と同じことができない(笑)。

まずはパッケージ再作成に必要なパッケージを導入。deb一般だけでなく、screenのビルドに必要なものも含む:

% sudo aptitude install pentium-builder dpkg-dev fakeroot libncursesw5-dev libpam0g-dev debhelper dpatch

ソースパッケージを取得:

% mkdir screen
% cd screen
% apt-get source screen

あと、教えてもらったパッチを取得して置いておく(patch-cjkwidth-cvs-2006052001)。

Debianのパッチはdiffじゃなくてdpatchというもので管理されてるそうなので、dpatch用のパッチを作成しなくてはならない。持ってきたdiffを元にして作成する:

% cp -a screen-4.0.3 screen-4.0.3.orig
% cd screen-4.0.3
% patch < ../patch-cjkwidth-cvs-2006052001
% cd ..
% diff -Nru screen-4.0.3.orig screen-4.0.3  > cjkwidth.diff
% mv screen-4.0.3.orig screen-4.0.3
% cd screen-4.0.3/debian/patches
% dpatch patch-template -p 60cjkwidth "support cjkwidth" < ../../../cjkwidth.diff > 60cjkwidth.dpatch

ようするに、debian/patchの下に、60cjkwidth.dpatchを作成する手順である。60というのはdebian/patchesの下にある複数のパッチの最後が50~だったので。

同じdebian/patchesにある00listをエディタで開き、「40cjk_eastasian」の行を削り、代わりに「60cjkwidth」を追加する。これでcjkまわりのパッチが入れ替わったパッケージが作れる。

じゃあ作ってみましょう。

% cd ../..
% dpkg-buildpackage -rfakeroot -uc -b

これで上のディレクトリにdebファイルができてるはず。本来ならパッケージ名とかも変えるべき。インストールしておわり。

% sudo dpkg -i screen_4.0.3-11_i386.deb

で、結果としてどうなったかというと、改善したけどまだダメ~というところ。こないだ書いた、w3mのステータス行の問題はまったく改善されていないが、表示はよくなった部分もある。特にvimでのトラブルはほとんどなくなったので、何か書くのに困ることはなさそう。

うーん、w3m捨てちまおうかなー。

本日のツッコミ(全4件) [ツッコミを入れる]

densuke [元コメントにあったように「かなりマシ」というレベルなんですよね。 個人的にはこれと http://debian.fa..]

ただただし [うっ、うちのw3mには「ある種のUnicode文字を全角にする」なんて設定がない(笑)。なんかおかしいな……]

ay [「ある種の~」は http://d.hatena.ne.jp/macks/20061001 が参考になると思います。..]

ただただし [おー、ありがとうございます! パッチは試してみたいと思います。ちょっといま時間がない……。]


2010-02-07(日)

日々のT-POINTをim.kayac.com経由でiPhoneに通知する

スタバよりドトール、エクセルシオール派なので、先月から(ついに)T-POINTの軍門に下っている。あんまりいろんな店舗で使えるポイントカードはセキュリティ的に好きじゃないんだが、ドトールはけっこう使うからねぇ。

さて、T-POINTはT-SITEでいろいろな管理ができるので、ポイントの参照なんかもここでする。レシートをとっておかなくてもいい反面、いちいちWebにアクセスするのもめんどくさい。メルマガ取れば書いてあるかも知れないけど、週イチみたいだし。毎日その日のポイントだけメールしてくれればいいのにね。

……というものを作ったのであった。Mechanize使うの、1年ぶりくらいかも知れなくて、新しい環境へのセットアップやら、使い方の復習やらで2時間もかけてしまった。おれはもうダメだ。

T-SITEをスクレイピングして、ポイントを吐き出すだけのスクリプトはgistに(tsite.rb)。今回は、これをim.kayac.comを使ってiPhoneに送ることにした。専用アプリ230円。さくらのサーバにはcurlが入っていたので、サンプルどおりに使って、毎朝1回cronで実行させる:

curl -d "T-POINT:`tsite.rb`" http://im.kayac.com/api/post/USERNAME
Tags: kayac tpoint
関連する日記: 2012-02-18(土), 2015-05-04(月)

映画「インビクタス -負けざる者たち-」を見てきた

例によって、頼んでもいないのに音が出たりする公式サイトにはリンクしない。

かみさんが見たいというので、下調べいっさいせず、予備知識ゼロで見てきた。ネルソン・マンデラとラグビーの映画、というのも知らないレベル。いやー、でもかなり面白かったね!

マンデラが南アフリカの大統領に就任した翌年、自国開催のラグビー・ワールドカップでナショナルチームが奇跡的な優勝をするまでを描いたドキュメンタリー風映画なんだけど、しょっぱなからマンデラ役のモーガン・フリーマンが激似すぎて、どこまでが記録映像なのかよくわからんという。

前半は、マンデラが就任してから国政を掌握していくまでの過程を描いているんだけど、脚本のこの部分だけ抜き出して新書にしたらビジネス書としてベストセラーになってもいいくらい、リーダーシップについてよく描かれている。とにかく演説がいちいちカッコイイんだこれが。どこまで史実に忠実なのかよくわからんけど、実際に喋ったように再現されてるんだとしたら、マンデラのプレゼンスキルはとんでもないレベルだ。

このまま政治劇になるのかと思いきや、ラグビーチームのキャプテン、ピナールとのお茶会を境に、視点はピナールに移る。マンデラからリーダーシップについて伝授された若きリーダーが悩みながら成長していく姿を描く、これもまたリーダーシップについて考えさせられる良シナリオ。

……というわけで、想定外にビジネスマン向けな映画だったという感想なんだけど、もちろん終盤のラグビーの描かれ方や国内の描写も良いので、スポーツファンにもオススメできる。こうしてみると、国際試合に出るスポーツチームには「使命」が必要なんだなぁと思うね。今年はサッカーが南アでワールドカップだけど、もし日本がいいとこ行けなかったとしたら、それはチームや監督のせいじゃなくて、「使命」を与えられなかった国民のせいだろうな。

あと、脇役の表情がみんなうまくて、そんなところも楽しい。特にピナール家の黒人家政婦役の人がよかった。


ところで今回は、海老名のワーナー・マイカルで見てきた。ワーナーはいま、すべての映画が一律1,000円のキャンペーンなので、見なきゃ損だよ! でも、それでも客足少なかったけどね……*1。なんつーか、売店の手際が悪くて開演時刻が迫ってるのに延々と待たされたり、サイトがiPhoneで見られなかったり、サービス悪いんだよな、あそこは。TOHOがいいというわけじゃないんだけど。

Tags: movie

*1 海老名では、ワーナーはTOHOに押されて風前の灯火なのである。


2012-02-07(火)

Androidから写真の自動アップロードに「Syncly」を使うようにした

相変わらずDesireのストレージ不足に悩まされております。そろそろ次の端末を選定しはじめる時期なんだけど、どれもこれも4インチとかバカみたいにでかくていやになる。片手で扱えないスマートフォンになんの価値があるのか。iPhoneの唯一の美点はあのスクリーンサイズだよな。

いきなり脱線してしまったが、Desireで撮った写真を自動的にクラウド上に保存したいのでいろいろなアプリを使ってきたのだが、ここしばらくはEye-Fiを常用していた。Picasaにあげてくれるだけでなく、PCにも自動的にダウンロードしてくれるから写真の整理がだいぶ楽*1。ただ、ムダにでかい。最近の端末ならなんの問題もないと思うが、Desireで使うにはでかすぎる。SDカードにも移動できないし。

で、IDEA*IDEAで紹介されていた「Syncly」を使ってみることにした。Eye-FiみたいにPicasaへのアップロード機能はないけど、Dropboxに入れてくれれば同期しているいろんな端末から見られるからそれはそれで便利だな。しかもサイズがEye-Fiに比べてかなり小さいので、SDカードに移動できないながらも2.5MBほど空き容量をかせげた。これでもうちょっと生き延びられる。

たぶんDropboxクライアントが近いうちにこの機能を実装してくれるので(→Experimental Android Forum Build - 2.0.9 « Dropbox Forums)、それまではしばらくはこれで運用しよう。

Tags: android

*1 いくつかのPicasaに直接あげてくれるアプリも試用したのだけど、なぜかPicasa上で写真が途中でぶった切られるという挙動があって断念している。みんな困ってないのかな、これ。

本日のツッコミ(全3件) [ツッコミを入れる]

kiri [初めまして、いつも楽しく拝見しております。 Dropboxのその機能は、βとしてforumにアプリがアップされている..]

ただただし [あのー、一番最後に書いてあるんですけど、読んでないんでしょうか?]

kiri [すみません、私の日本語能力が足りなかったようです。 以下のように読んでしまいました、失礼しました。 「たぶんDro..]


2014-02-07(金)

数字6桁の暗証番号が危険なのは総当りで簡単に解かれてしまうから、というわけではない

JALマイレージバンクの不正アクセスが発覚して数日、いろんな人の意見を読んでいるのだけど「数字6桁の暗証番号*1は今どきのPCなら総当りでもすぐに解けてしまうから脆弱だ」という意見がみられて、それはまぁそうなんだけど、今回のような事件に関しては適切な表現ではないと思う。

ちなみに、'000000'から'999999'までバカ正直に順番にMD5を計算し、結果を別途計算してあった正解と比較するプログラムを実行すると、手元の環境ではたった1.5秒しかかからない*2。それでもJMBの会員2700万人分を計算すると450日余りかかることになるが、これだって今どきならクラウドで100コア分調達すれば4日ちょいで解ける計算だ*3

じゃあやっぱり総当りで解けちゃうから危ないじゃんと思うかも知れないが、この計算が成り立つには「別途計算してあった正解」が手元にあることが前提だ。つまりどういうことかというと暗証番号のハッシュを含めた会員データが漏洩しているということを意味する。これはもうとんでもない事件なわけで「暗証番号の変更を呼びかけ」なんてのんびりやってる場合じゃない、(JMB側で)漏洩ルートを閉じた上で即座に暗証番号を強制リセットすべき案件だ。類似の事件として最近ではAdobeの事件Yahoo! Japanの事件がある。いずれも漏洩が判明したのちすぐにパスワードを(サービス側で)リセットしている。これをやれば犯人の手元にあるデータは無効になるのでとりあえず安心できる*4

JMBがこれらの事例にならって暗証番号をリセットしていないのは、今回の事案がデータの漏洩を伴っているわけではないと判断しているからだ*5。犯人の手元に暗証番号のハッシュがないということは、CPUにものを言わせて力技で解くのではなく、1件ごとにJMBのWebサーバに問い合わせて、その暗証番号が正しいかどうかを確認しなければならない。ローカルでは100万分の1秒で試せた行為が、この状況では1秒近くかかってしまう。先ほどの数値をすべて100万倍すれば、この攻撃が現実的でないのはすぐにわかるだろう。

じゃあ実際にはどんな攻撃が行われたの? という解説をしようと思っていたんだけど、先に徳丸さんが解説を書いてくれたので、ぜひとも読んでもらいたい。これね、もう本当にすばらしくわかりやすいです。

というわけで、少なくとも今回の事件に関しては「総当たり攻撃に弱いから」数字6桁の暗証番号が危険というわけではないとわかったと思う。徳丸さんの記事にも出てきたが、数字6桁だと同じ暗証番号を持つ会員が2700万人のうち数十人いると期待できる*6、つまりオンラインのリバースブルートフォース攻撃がとても効率的になってしまう点が問題なのだ。

さらに言えば、ユーザ側の工夫でこれを避けることができない点が問題だ。例えば英数字と記号を使った数十文字からなるパスワードを使えるようになっていれば、ユーザが十分に複雑なパスワードを使うことでリバースブルートフォース攻撃を簡単に無効にできる。数字6桁という制約の中ではこういう工夫がほとんどできない*7。サービス提供者はこのようにユーザが自身の工夫でリスクを回避する手段を奪わないよう、気を配って欲しいものですね。

こちらからは以上です。

Tags: security

*1 パスワードと呼ぶにはあまりにアレなので暗証番号と呼ぶべきだろう。

*2 VirtualBox上のLinux、ruby 2.1を利用、並列実行なし。

*3 ちなみにANAは4桁なのでPC1台あれば十分である。

*4 言い換えると「オフラインの総当たり攻撃に対抗するにはパスワードリセットが有効」ということになる。

*5 もちろん調査が進むにつれてそういうことが判明する可能性はある。

*6 人は覚えやすい暗証番号をつけたがるはずなので実際はこの数倍から数十倍の率になるだろう。今回の被害者が数十人ということは、この事件の試行回数は想像以上に少ない可能性がある。

*7 逆に言えば十分に複雑なパスワードを指定可能な環境でわざわざクラックされやすい簡素なパスワードをつけていたら、それはユーザ側の責任だ。

本日のツッコミ(全2件) [ツッコミを入れる]

Shintani [>JMBがこれらの事例にならって暗証番号をリセットしていないのは、 >今回の事案がデータの漏洩を伴っているわけではな..]

ただただし [「こちらのblogでの考察」の何を指しているのかがよくわからないのですが……。暗証番号方式を変更することなく、低コス..]


2015-02-07(土)

Heroku上のtDiaryを運用する

さて、インストールができてデータ移行もできたら、次は運用である。運用つっても多岐にわたるけど、とりあえずはシステムのアップデートとバックアップができればいいだろう。

tDiaryのアップデート

追記: 本記事を書いたときはHeroku専用ブランチである「herokuブランチ」を利用してたが、最新版では「masterブランチ」を使えるようになっているので書き換えた。スクリーンショットは「heroku」のままなので読み替えてほしい。

Herokuボタンでできるのは初期インストールまでで、その後のアップデートまではサポートしてくれない。HerokuにはGitHub連携機能があって、指定したGitHubリポジトリの更新をフックして自動的にデプロイしてくれるんだけど、これ自分のリポジトリじゃないとダメなので、tDiaryの公式リポジトリを監視しておくわけにはいかない。

というわけで、うまいことやるためにちょっとひと工夫することにした。少し内部に踏み込んで説明するとこんな感じ:

  1. 公式リポジトリのforkを自分のリポジトリに作る
  2. そのリポジトリでGitHub連携を有効にする
  3. 任意のタイミングで公式リポジトリの差分を自分のリポジトリへのPull Request (PR)にする
  4. そのPRをマージするとGitHub連携が動いてシステムが更新される

3と4が実際のアップデート手順になるんだけど、やってみるとけっこう面倒な上に間違えそうなので、この部分をtDiaryのプラグインにして、設定画面でポチっとやるだけで済むようにした。

ではその手順。まずはtDiaryの公式リポジトリへアクセスして、右上にある「Fork」ボタンをクリック。これで自分のアカウントにコピーができる。

続いて、この「自分のID/tdiary-core」という名前のリポジトリをHerokuに監視してもらう。Herokuにアクセスして、Herokuボタンで作ったtDiaryアプリの設定へ。「Deploy」タブをクリックすると「Heroku Git」「GitHub」「Dropbox」が並んでいるので、中央の「GitHub」をクリック:

[スクリーンショット]HerokuのGitHub連携設定

一番下に「Connect to GitHub」ボタンが出るのでクリックすると、GitHubのIDとリポジトリを選択する場面になるので、自分のIDと「tdiary-core」を選んで認証する。と、Automatic deploysとManual deployという項目が現れる:

[スクリーンショット]AutomacitとManual Deploy

Automatic deploysの方の設定を先にしておく。ドロップボックスからmasterブランチを選択してから「Enable Automatic Deploys」ボタンを押せば設定完了。

これだけでは何も起こらないので、続いてまずは手動でアップデートする。Manual deployの横にあるブランチの選択を「master」にしてから「Deploy Branch」ボタンをクリック。あとはデプロイが進んでいくのを眺めていればよい。

これでtDiaryが最新版になったので、tDiaryの設定に移り、プラグイン選択へ。新たに「system_update.rb」が増えているはずなので、これを有効にすると「基本」の中に「システム更新」が増えている。これをクリック:

[スクリーンショット]tDiaryの「システム更新」プラグイン

GitHub access tokenとGitHub user nameの2つを入力する。access tokenはGitHub SettingsのApplicationsで生成できる。「Personal access tokens」から「Genrate new token」で40文字の英数字列ができるのでそれをコピーすればOK。

ようやく各種設定が終わったぞ、ぜえぜえ。あとは「システムを更新」のチェックボックスを入れてから「OK」を押すと、さきほど書いた手順が裏で走って、forkした自分のリポジトリが公式リポジトリに同期する。……とはいえさっき最新にしたばかりなので、いまは何も起こらない。tDiaryの最新版がリリースされたタイミングで実行してみて欲しい。

テストで何度かやってみたけどさ、なんつーか、ボタン押すだけでシステムが最新になるの、まるでWindows Updateならぬ「tDiary Update」て感じで、自分で作って自分で感動してしまったよ(笑)。すごいのはHerokuとGitHubなんだけど。

バックアップ

最後はバックアップ。Herokuで動作しているtDiaryは、残しておくべきデータをすべてMongoDBに入れているので、これをダンプすればバックアップになる。

Herokuのアプリ管理画面からResourceに入り、MongoLabをクリックするとDB管理ページになる:

[スクリーンショット]MongoLabの管理画面

「Backup」という文字が見えるのでクリックすると、バックアップの方法を選べる説明が出てくる(が、これは有料。でもone-timeは安いのでこれ使うのもいいと思う)。自力でバックアップを取りたいひとは「Tools」をクリックするとコマンドラインからMongoDBのバックアップ/リストアをする方法が読めるのでそれを使いましょう。ちなみにtDiary.Netではデイリーで過去3日分のバックアップをとってる。


というわけで、日記を運用するにはこれで十分かな。Enjoy!

Tags: tDiary heroku
本日のツッコミ(全3件) [ツッコミを入れる]

next [Herokuこれで初めて使うので、いろいろ試しつつ初期導入まではなんとかできたんですが、ここでつまづいています。 ..]

ただただし [わ、ごめんなさい。ここの記述はちょっと古くなってますね。最近の変更で、Herokuへデプロイするブランチはherok..]

next [ご返答ありがとうございます。その後いろいろ試して、Masterブランチだと動くしプラグインの表記もそうなってるけどこ..]


2016-02-07(日)

THE IDOLM@STER MILLION LIVE! 3rdLIVE TOUR BELIEVE MY DRE@M!!」仙台公演のライブビューイングへ行ってきた

昨日のトラプリの余韻がまだ強く残っているが、気持ちを入れ替えて先週の名古屋に続いて仙台公演のLV。出かける前に「中谷育Pが仙台公演に行くために有給をとること」を「育休」と呼んでいるのを知って爆笑しつつ、シネマサンシャイン池袋へ。初めての映画館だが、さほど大きくもないビルの各階に1シアターづつあるようなシネコンで、でもまぁ他のシアターに音が漏れないからライブのLVにはむいてるかも。でもちょっと狭いね。


Machicoを除いて全員入れ替えという顔ぶれで、名古屋のときに抱いた「いつもの劇場をそのまま各地へ」という印象がさらに強まる。人数は同じだから構成もほぼ同じで、でも出演者が違うからかかる曲もぜんぜん違う。面白いねぇ。演者やスタッフはたいへんかもだが。

夏川椎菜。仙台リーダーその1。ナンスは見るたびにきれいになって(そういうお年ごろなんだけど)、めきめき大人らしさを身につけているので毎回楽しみ。みっくといっしょに10代ペアのリーダーだけど経験は豊富だし、まわりのお姉さんたちも優しいからちゃんとリーダーシップを発揮できてた。「Dreaming!」直後がそのリーダーユニットでの「成長Chu→LOVER!!」が息もピッタリでたいへんよろしかった。

伊藤美来。仙台リーダーその2。みっくもいつ見ても可憐でねぇ。この2人をリーダーにするなんて、なんて粋な計らいだ。そういえば名古屋と違ってリーダーユニットが2曲もあって「カワラナイモノ」が2人の含まれないユニット曲のカバーだったんだけど、若くて年齢の近い2人でこれを歌うのは青春ぽくて実にいい。天ちゃんと歌った「Vault That Borderline!」もカッコよかった。

原嶋あかり。主要ライブ初参戦で、仙台のみの参加。140cm以下という低身長に加えて、ちょっとぽっちゃりしてるあたりが育役としてはむしろポジティブで、小さいことを感じさせない大きなアクションもあいまって、これはまたすごい人が出てきたな、という印象。ソロでは「グッデイ・サンシャイン!」を歌って、アイマス動物園ならず。次回に期待。

Machico。ぴょんころが揃っていない中、存分に存在感を発揮していた。やっぱ今回のツアーでの注目株だと思う。「piece of cake」でぴらみの代わりに入ったけど、曲の雰囲気がまったく違って面白かったねー。翼が歌うだけで年齢がぐっと下がって甘酸っぱさが増大するんだなぁ。

郁原ゆう。「君だけの欠片」を正座して歌うというとんでもない演出でびっくり(実際はブーツがあるので膝立ちに近いんだけど、意図的にはあれは正座なんだろう、エミリーだし)。1stのリベンジはしっかり果たせたもよう。あといつものメガネと違ってたような。エミリーカラーの紫なのは変わらないけど、弦に金属装飾が入って衣装に合わせてゴージャス感がましてたかも。あとで1stの映像確認しなくては。あー、彼女も仙台だけか。惜しい。

麻倉もも。MCで食べ物の話しかしない。あと冒頭の挨拶で「めっ」とした直後に恥ずかしくなって後ろ向いちゃうの、かわいかったですねー。でも歌もダンスもあいかわらずのクオリティ。「夢色トレイン」でダンサーとぴったり合ってるのはすごかった。でも「Legend Girls!!」では並んだみっくの方がダンスの表情は豊かで、まだ伸びしろあるんだなーと気付かされた。というかみっくのすごさよ。

雨宮天。例によって天ちゃんを目で追う機械と化していたわけだが、あいかわらず「ライアー・ルージュ」の妖艶な美女と「Thank You!」でぴょんぴょん飛び跳ねて喜ぶ天ちゃんが同一人物とは思えないのだった。言うまでもなく、どちらも文句なく良いです。


終演後は「池袋 牛タン」で検索して、偶然前回の渋谷と同じ顔ぶれになったわさます3人で駅前にある仙台アンテナショップが運営するレストラン「伊達の牛たん」へ。同じことを考えたPは多いと思われる。ぜんぶもちょのせい(笑)。

[写真]極厚牛タン

[写真](話題の)牛タンシチュー

[写真]MCで名前がわからなかった定義山三角揚げの炙り焼き

[写真]ずんだアイス。あんこと合う

Tags: idolm@ster

2017-02-07(火)

シンデレラガールズ三題

THE IDOLM@STER CINDERELLA MASTER EVERMORE

調子がわるくて午前中は自宅にいたらフラゲで届いた。捨てる神あれば拾う神あり。Amazonは発売当日にすら届かないことがあったから、CDはもう確実に前日に届けてくれるyodobashi.comからしか買わんよ。

EVERMORE、5周年にふさわしい、ほんといい曲。歌詞も曲も、編曲もいい。4thライブですでに観ているから、ピアノとストリングスからのイントロであの特徴的な糸巻きダンスが目に浮かぶところもいい。

さらにこのCDにはSSA公演45人分のライブ音源を使った4thライブMIXが入ってて、これが嬉しい。ライブのたびにアンケートに「ライブCDを出してくれ」って書いてて、その願いはちっともかなえられないながらも、こうしてちょいちょいライブ音源が入ってくるのは、まぁ良い。というかこれは良すぎて泣ける。

デレステイベント「Sweet Witches' Night」

ハイスコア212,115位

本日最終日。もりくぼが報酬SRなのでがんばった……と言いたいところだけど、LIVE Paradeは全エリアをクリアできない程度の腕前なので……それでもEx栃木(だっけ?)を残してぜんぶ刈り取ったけど。本当は3万pt目指したかったけど、普通にサラリーマンやってるとムリだよなぁ。といいつつ110万動員には到達したが。

とはいえ、LIVE Paradeはゲームやってる感が高くて手応えがあるので、イベントの中では一番好きだな。

新宿アルプス広場の広告

THANK YOU FOR YOUR PRODUCE

帰りに新宿に寄れたので、アルプス広場の広告をみてきた。今日が最終日なので滑り込み。さすがにメトロプロムナードのあれみたいな大規模なものではなかったから、大騒ぎはなかったものの、Pたちはひっきりなしに来ていたね。

5年間でこんなにCDが出たんだなぁと感慨深くながめつつ「これを全部持ってるんだよなぁ」と考えるとちょっと怖くなる。もう置き場がないので、いい加減データで売ってくれよ、ほんと。いまがいつだと思ってんだ。2017年だぞ。

Tags: idolm@ster

トップ «前日 最新 次日» 追記
RSS feed