web-dev-qa-db-ja.com

ブラウザでJavaScript数学関数を実行して得られる情報

いくつかのサイトで興味深いJavaScriptに遭遇しました。これは、abs、acos、randomなどのJavaScript数学関数を数千回、または私の場合は4,000回実行していますが、反復回数は変化しているか、ランダムであるようです。

問題のサイトは評判の良いサイトです。コードは、これらの関数の実行にかかった時間を収集し、データをサードパーティではなくサーバーに送信しています。

数学関数の実行からどのような情報を収集できますか?ファイル内の他の関数に基づいて、彼らは実行環境、つまりブラウザーに関する情報を収集しようとしていますが、これらの関数を実行するために数学関数を実行し、期間を計算することによって収集できる情報を理解できませんでした。

仮想マシンは、通常のデスクトップよりもこれらの機能を処理するのに時間がかかりますか?

6
user871199

まあ、彼らは確かにユーザーエージェントをベンチマークしています。

CPU馬力のみを必要とする数学関数の実行にかかる時間は、CPUパフォーマンスの測定基準です。 CPUのパフォーマンスが高いほど、メトリックは高くなります(またはサイクルを完了するための時間が短くなります)。

それはisベンチマークです。ここで問題は、セキュリティ/プライバシーの範囲でベンチマークをどのように使用できるかということです。

  • フィンガープリント?多分。

私は繰り返し amiunique.org を見てきましたが、それらはオープンソースプロジェクトであり、内部の内容を詳細に説明しています。真実は キャンバスフィンガープリント は、ブラウザのフィンガープリントに追加するキャンバスをレンダリングするシステムのパフォーマンスを測定する手法です。サイトがパフォーマンスメトリックを使用してサーバー側のフィンガープリントルーチンに追加しているのは可能です。サーバーを監査せずに知っている人。キャンバスイメージの Mozillaプロンプト (または、とにかくTorブラウザーで動作するように計画していた)であり、数学関数をキャンバスの回避策として使用できることに注意してください

  • 訪問者統計?可能性が非常に高い

評判の良いサイトは、訪問者のCPUに関する情報を収集したいだけかもしれません。これは、フロントエンドの変更による影響を理解したり、限られたパフォーマンスのマシンでブラウザーテストを実行したりする場合に特に当てはまります。通常、Web開発者はRAMと大画面を備えた強力なマシンを使用しています。複数のブラウザー、解像度、接続速度で簡単にテストできます。しかし、CPUの上限についてはどうですか?サイトは引き続き表示されますか?そのようなメトリックを使用すると、グラフを描画してテストケースを見つけることができます。

  • ターゲットを絞ったプロファイリング?知るか...

私はここでクリエイティブになっています。あまり真面目になりすぎないでください。広告会社は、このような情報を使用して、ハードウェアの強力さを理解できます。次に、マシンで実行できる最新の3Dハイパーパフォーマンスゲーム、またはCPUが十分に強力ではない場合は古いクラシックの広告を取得できます。

ラストは真剣に受け止めないでください。冗談を言っていた。