続・PHP Conference 2005

はい、行ってきましたPHPCon2005。
京急蒲田駅って何も無いのな!
コンビニすらないし。ちょっと歩けばあったけど。

んで、メモ書き(間違いは責任放棄)、かつ感想。

PHPセキュリティ関連

XSS

  • ctype_hoge関数を使う
とか
  • PEAR::Validateを使う

SQLインジェクション

  • まず、ユーザ入力チェック
  • 次にSQL文字のエスケープ(addslashes, mysql_escape_stringなど)または、プリペアドステートメントを使う(php5のPDOとかPEAR::DBとか)

セッションハイジャック

  • session_regenerate_id関数を使う
 使う場所はsession_start()の後らへんで良いんじゃん?

コマンドインジェクション

  • escapeshellarg関数を使う

暗号化

  • 不可逆
    • md5() ファイルハッシュなどに
    • crypt() DES, unixパスワードの保持に
  • 可逆
    • mcrypt() 3DES, AES, RC4
    • PEAR::BlowFish BlowFishアルゴリズムに対応

php.ini

  • register_globals
  • magic_quotes
  • error_reporting, display_errors
  • safe_mode
  • expose_php
ここらへんをチェック

セキュリティ向上ツール

  • Hardened_PHP
  • ionCube PHP Encorder

フレームワークの話

Mojavi

良かったんですけど、早口で聞き取りづらかったのと、ソースの文字が小さくて見づらくて残念だった。
そしてmojaviだと海外製なのでICC(Input, Confirm, Complete)やろうとするとめんどくさいらしい。
確かにそうかも。
agaviとかいうのがあるらしい。既にjpドメインも取ったらしい。
おもしろそう。

Ethna

プレゼンが良かった。分かりやすくて。
あと正直な言い回しが好感が持てる。
んでドキュメントが足りてないんでアレなんだけど、
  • Ethna_AppObject ・・・ O/Rマッパー?
  • Ethna_MailSender ・・・ メール送信
とかもあるらしい。
そして今後はRuby on Railsに負けずにとか言っていたので勝手に期待大。

maple

あ!聴いててメモるの忘れてた!
確かDIの説明とかしてた。
DIを標準で搭載してるのってmapleだけだっけか??

php5

いろいろ問題もあるけどphp5.1 になってそろそろ使ってもいいんじゃん?
みたいな結論?
Zendエンジン早くなったらしい。
個人的にはPDO使ってみたい。
あと配列の値を更新する時に、
foreach ( $arr as $key => &$value ) {
    $value = "{$value}!!!!!";
}
みたいな書き方が出来るようになったらしい。
これは今までなんで出来ないんだろーと思っていたので嬉すい。