Web

HTML5にフル対応させ(たようにみせかけ)る

HTML5が待ち遠しくて待ち遠しくて、各種ブラウザも徐々に対応はしてきているのだけど、もう待ちきれないよ!とお悩みの紳士淑女の皆様。 そんなHTML5フリークな皆様は、ブラウザのアップデートのたびに、HTML5testでスコアを確かめ、一喜一憂していることで…

greasemonkeyでグローバルスコープの汚染をしたい

表題がおかしい。 greasemonkeyのスクリプトはブラウザで表示しているwindowのスコープとは別なスコープで動きます。 これは、greasemonkeyスクリプトで使用している名前と、サイト側で使っているjavascriptの名前が衝突しないようにするための工夫ですね。 …

documentオブジェクトの挙動を変える

あー、getElementByIdの動作変えたいなーとか、createElementの動作変えたいなー、という要求は多いかと思います。あ、javascriptの話ですよ。 そんな変テコなことを考えるあなたにはこれ。インスタントdocument wrapping、もしくはdocumentのプロパティの上…

ブラウザでグリッドコンピューティングとかやったらどうか

最近はコンピュータの性能上がっているし、JITだしで、 ブラウザ上で重い処理をやっちまっても結構何とかなっちゃいます。3Dとか扱えちゃうしね。 おまけに、Web Workersなんか使っちゃえば、javascriptでマルチスレッドまでできちゃう。 それじゃあ、こんな…

HTML5の仕様書を見て歳を感じる

HTML3.2の頃を知る身としては、隔世の感があると本当に思う次第です。 世間はcanvasだvideoだと賑やかですが、個人的には廃止になった機能に目がいきます。 HTML5のobsolete項を見ると、レイアウト系のattributeが結構削られています。 特に、table系要素のa…

JavascriptのMath.random()でユーザートラッキングができるという話

Web

表題の件について。 地味な話ですが、javascript(というかECMAの仕様)にあるMath.random()には、乱数のシードを与える方法が無いようです。 そんなわけで、われわれ一般市民は各ブラウザが独自に実装している、謎のシードで初期化された謎のアルゴリズムで…

json hijack、ブラウザセキュリティ、サイト側のセキュリティリテラシーとかなんとか

JSONハイジャックでよく攻撃の例として挙げられるパターンとして、 サイトAの認証Cookieを持ったマシンBが、攻撃者Cのサイトにアクセスした際、 BにAからデータをリクエストさせるという例が良くあります。 形式的にはまあ、昔々からあるお話で、通路がJSON…