PHPカンファレンス2017 レポート

廣川類さん,PHPの今とこれから2017 〜PHPカンファレンス2017 ゲストスピーカーセッション

この記事を読むのに必要な時間:およそ 2 分

パスワード保存と攻撃への対策

ハッシュの値をmd5やSHA-1で保存すると総当りに弱いため,この手の攻撃には計算コストを高めることで対応すると良いと言及しました。また,タイミング攻撃に対する対応としては,実装が容易ではないのでハッシュ用のAPIが用意されているほうが望ましいと話しました。

この2点の対応として,次の関数がが新たに実装されたとのことです。

  • ハッシュ生成:password_hash関数
  • パスワード検証:password_verify関数

password_hash関数で採用されたArgon2はPassword Hashing Competition 2015の勝者であり,BcryptScryptの代替になるそうです。より柔軟な設定として,メモリコストや時間コスト,並列度を調整できる仕様になっていると説明しました。

その他,Libsodiumを標準でサポートし,公開鍵・秘密鍵の暗号化システムを自分で構築できるようになりました。認証付き暗号(AEAD)ついては,まだ使いづらいし覚えづらいと述べていました。AEADの実装方法はスライドで示していましたが,たしかに使いづらそうだと感じました。

廃止予定の機能

次に,PHP7.2で廃止予定になるものを紹介しました。McryptはPECLへ移動するとのことです。ほかにも廃止予定の機能を紹介しましたが,詳しくは廣川氏のスライドを参照してください。廣川さん自身が実装したものも入っていて,⁠ようやくか」と述べていたのが見どころでした。

画像

名前によるエクステンションロード

OSによって違っていたエクステンションの指定方法ですが,名前で指定できるようになることを紹介しました。

画像

2017年のフレームワーク

PHPのフレームワークについては,Laeavel人気が顕著になり,他のフレームワークは横ばいか微増減ということを,グラフを用いて紹介しました。廣川さんは「2017年はLaeavelですね」と述べていました。

画像

HHVM/Hackの進化

Hack言語はFacebookが開発し,PHPをサポートする新しい言語です。その処理系であるHHVMの将来は,PHP7との完全互換は目指しません。主なPHPツール,例えばComposer等は提供,相互型変換を準備していたりする一方で,デストラクタやリファレンスの廃止を挙げており,PHPとはつかず離れずの関係性を持っていくという目算のようです。

PHPのこれから

PHPは来年も引き続き開発が進み,JIT(HHVMに入っているもの)の高速版が導入される予定です。現状でもLua用JITエンジンDynASM使用しているようですが,速度面ではあまり成果が上がっていないようです。

コミュニティへの招待

最後に,コミュニティについて話しました。廣川さんは「このカンファレンスには委員長がいますが,PHPユーザー会には会長がいません。ゆるい団体なので,まずは参加してみてください」と述べました。

また,今年のPHPカンファレンスのテーマは「Challenge(チャレンジ)⁠ですが,廣川さんは23年ずっと失敗をし続けてきたこと,その経験の積み重ねが大事だったと振り返りました。そして「失敗から立ち上がるためには周りからの意見を聞くことが主な助けになる。例えばこのようなカンファレンスでも,セッションを話した人を捕まえて話すと,セッションでは語られなかった裏話等がいろいろと聞けるし,覚えられるし,楽しめる」と述べ,⁠この後もカンファレンスも楽しんでください」と締めくくりました。

著者プロフィール

中村慎吾(なかむらしんご)

仕事でPHPを使うようになって10数年。楽しい事には何でもやってみるスタイル。趣味が講じて(拗らせて?)会社も作りました。Web開発となるとPHPは手放せません。

Twitter:@n416
URLhttp://kisaragi-system.co.jp