「HTML5は優先順位を間違った。もういちどセキュリティの設計からやり直すべきだ」と語るJavaScript大家のDouglas Crockford氏
「HTML5の最大の問題は、優先順位を間違ったことだ。機能について議論する前に、セキュリティの扱いについて検討すべきだった」こう語るのは、JSONの発明者として知られ、Yahoo!のシニアJavaScriptアーキテクトでもあるDouglas Crockford氏。5月4日に行われたオライリーのWeb2.0 Expo 2010でのインタビューでのことです。
「もうそれを議論するには遅すぎるという人もいるが、そうは思わない。正しいことをするのに遅すぎることはないのだから」(Crockford氏)
Crockford氏はHTML5は機能が重複しすぎていることも指摘しています。「Local StorageとLocal Databaseの両方が本当に必要なのか? CanvasとSVGのような異なる2つの描画システムは必要なのか? 私はミニマリストだ。最小限の合意のほうが、よりインターオペラビリティを高められると思う。HTML5は台所の流しにあれこれ詰め込みすぎているようなものだ」
現在のHTML5は放棄すべきだ
Crockford氏は以前からHTML5のセキュリティについて指摘した発言をしています。Yahoo! Developer Networkでは、3月に行ったセミナーの様子がビデオで公開されていますが、ここでも「HTML5は間違った方向へ大きく踏み出していると思う」と語っています。
First, they make the browser a much more complicated platform, and complexity is a tool of the enemy. We should actually be looking to simplify and normalize, regularize the platform. HTML5 does not accomplish that.
1つ目の理由は、それらはブラウザを非常に複雑なプラットフォームにしてしまうからだ。そして、複雑さは敵(攻撃者)の武器だ。私たちは実際にシンプルで、標準的で、一般的なものとしてプラットフォームを見るべき。HTML5はそうしなかった。
Two — even worse — HTML5 amplifies the rights that the attacker gets, so the attacker, in addition to doing all the other stuff we talked about, is now able to get at your local database and can pull all the information out of that, or modify it in any way that he wants to. He now has the ability to do some more extended forms of network communication and inter-process communication.
2つ目、さらに悪いことに、HTML5は攻撃者が得るものを拡大してしまう。攻撃者、つまりここでお話ししていることすべて、ローカルデータベースを使うなどで得ることができ、変更することも望むようにできる。攻撃者はさらにネットワーク経由の通信やプロセス間通信といった広範囲な方法などを扱う能力が与えられるのだ。
For all those reasons, I strongly believe that HTML5 in its current form should be abandoned. We should start over with a new set of design rules specifically intended to solve the cross site scripting problem, and then to enhance the browser and make it more competitive with the other platforms as a secondary goal.
ここで説明した理由から、私は現在のHTML5を放棄すべきだと確信している。私たちは新たなデザインルールからもういちどやり直すべきなのだ。特に、クロスサイトスクリプティング(XSS)の問題をまず解決してから、そのあとに続く2番目のゴールとして、ブラウザの拡張と競争力のあるプラットフォームへと取り組むべきだ。
このセミナーでは、セキュリティの問題と対策について突っ込んで詳しく話されているので、興味のある方はぜひ実際に参照してみてください(トランスクリプトもあります)。
Douglas Crockford氏は書籍「JavaScript: The Good Parts」の著者でもあるJavaScriptの大家で、冒頭でも書いたようにJSONの発明者としても知られ、Yahoo!でシニアJavaScriptアーキテクトの肩書きも持つWeb業界の重鎮的な存在です。氏の指摘は大変重たいとは思いますが、すでにHTML5は多くのWebブラウザで実装も進み、もう引き返せないところまできているのが現実でしょう。果たして、Crockford氏が心配するように今後HTML5によって深刻なセキュリティの問題が引き起こされるのか、それとも今後何か対策がとられることになるのでしょうか。
Web2.0 Expo 2010でのインタビュー。HTML5についての質問が始まる3分30秒から再生します。
Yahoo! Developer Networkで公開されているセミナー「Crockford on JavaScript -- Part 5: The End of All Things」。