モバゲーの各種ゲームのPCアクセスブロック実装を調べてみた
最近のモバゲーのゲームはPCからのアクセスをブロックするものが多くなってきています。
技術的にどのようにブロックしているのか気になったのでFiddlerを使って幾つか調べてみたところ、各ページに以下のチェックを行うJavaScriptを実装しておき、マッチしない環境の場合はエラーページに飛ばすといった対応になっていました。
- ontouchstart 等のタッチデバイス固有のプロパティが存在するかどうかチェック
- navigator.platform が iPhone 等の値を返すかどうかチェック
- navigator.useragent をチェック
- window.chrome、documentElement 配下に script 要素が存在しないかチェック (Chrome かどうかのチェックになる)
例えば
if (!(('createTouch' in document) || ('ontouchstart' in document))) {
// NG!!
}
[/javascript]
とか
if (window.orientation === undefined) {
// NG!!
}
[/javascript]
とか、こんな感じの実装がちょろちょろあります。
まぁどれもクライアントサイドでチェックしているということなので、Chrome や Safari の Extension を実装すれば突破できそうだな・・・と思い、Chrome の Extension を書いてみたら無事通りました。そりゃそうですね。
ここまでやる人はそうそういないと思うので、実際はこのくらいのブロックで充分かもしれません。
と、ここまで書いておいてアレですが、各社PC利用はNGとしているので、良い子の皆さんはゲームは素直にガラケー・スマートフォンで遊びましょうね。