3

テキスト領域で滞留時間と飛行時間を測定する簡単なアプリを開発したい ( http://www.techrepublic.com/article/reduce-multi-factor-authentication-costs-with-behavioral-biometrics/6150761を参照) / 箱。これらのイベントを記録するために keypress() または keydown() up() メソッドを使用するにはどうすればよいですか?

4

3 に答える 3

4

なぜこれが価値がないのか理解できません。クライアント側で Javascript を変更できるからといって、攻撃者が実際のユーザーの入力パターンを再現できるわけではありません。

クライアント側でこれを行うと、ユーザーのデータを非公開に保つという追加の利点があります (たとえば、ユーザーのキーストロークを実際に収集するのではなく、入力パターンに関連する情報のみを収集します)。

プライバシーに関する懸念がまだあることは確かですが、これは非常に興味深い認証 (または監査/検出) コントロールです。

于 2012-01-04T20:27:51.040 に答える
0

ここで例を参照してください:http://jsfiddle.net/VDMPt/ source

しかし、Andreaが言ったように、Javascriptはクライアント側であるため、それだけの価値はありません。

var xTriggered = 0;
$('#target').keyup(function(event) {
  if (event.keyCode == '13') {
     event.preventDefault();
   }
   xTriggered++;
   var msg = 'Handler for .keyup() called ' + xTriggered + ' time(s).';
  $.print(msg, 'html');
  $.print(event);
});

$('#other').click(function() {
  $('#target').keyup();
});
于 2011-02-14T16:25:53.647 に答える
0

Javascript で行う処理は、原則として、シンプルな JavaScript デバッガーまたは Firebug などのプログラムを使用して、ユーザーが簡単に変更できるため、このアプローチは実世界の環境では実りのないものになると思います。

つまり、次の方法で 2 つの指標を測定できます。

  • 滞留時間= と の間のkeydown()時間keyup()keydown()メソッドで現在の時刻を保存し、現在の時刻とkeyup()時刻の差として twell 時間を計算しますkeydown()
  • 飛行時間: リンク先の記事の図では定義がわかりにくいですが、最後のキーkeyup()を離したとき ( ) と次のキーを押し始めたとき( ) の差として計算しますkeydown()。したがって、keyup()たとえばlast_key_time、時間を保存しkeydown()、飛行時間を current_time として計算します -last_key_time
于 2011-02-14T16:23:25.630 に答える