2.2 技術的なこと

セッションキー

セッション維持は PHP のセッション機能を利用しなかった。理由は自己生成したランダム番号の MD5 ハッシュといった方法に衝突の危険を感じたためである。ユーザ ID とランダム番号の両方を照合すれば、この衝突は防げる。

PHP のセッションキー生成は MD5 を使っているので衝突の可能性は(限りなく)低いといった議論が見つかるが、話はそう単純でもない。プログラマの心理としては衝突しない処理方法がある限りそちらを選ぶ。

日本語ファイル名

日本語文字(二バイト文字)によるファイルのアップロードでは常にファイル名の文字化け問題がつきまとう。ブラウザ、OS 等の環境次第で復元できる日本語 encode とそうでないものとが入り乱れている。最終的にはブラウザや OS の状況を調べてそれに合わせた会社の方法を採ることでこれに対応した。


Yutaka Yasuda (yasuda@bakkers.gr.jp)