私は、私がオンラインで走っているアプレットを持っていて、人々がJavaロボットクラスを使ってアプレットを操作できないようにしたい。 yahooはゲームプラットフォームのいくつかでこれをやっていることを知っています。ロボットマウスと人間のマウスクリックを区別する
答えて
マウスの動きを見て、ある場所から別の場所に「ジャンプ」するのを見ないようにしてください。 http://download.oracle.com/javase/tutorial/uiswing/events/mousemotionlistener.html
これは、ロボットと人のタッチスクリーンやタブレット入力デバイスの違いを検出できない可能性があることに注意してください。Sun/OracleのJ2SEチュートリアルでは、マウスの動きイベントに従う方法を示しています。
もう1つ注目すべきことは、ユーザーが同じピクセルをクリックしているのか、まったく同じ付近にあるのかです。人間はかなり不正確ですが、ロボットは一般的にプログラムされていない限りそうではありません。
また、この情報をコンパイルしてユーザーの実際の動きを把握するためのジェスチャーロガーを用意しました。誰かが不正行為をしている疑いがある場合、実際のマウスの動きがどのように見えるかを見て、それを既知の人と比較することができます。そうすれば、私たちの頭の上から出てくるものよりも、あなたが探しているものの良いアイデアが得られます。
+1データを照合し、それを使用してアルゴリズム/ヒューリスティックのセットを開発します。私は最近、このコンセプトを説明する[記事](http://worrydream.com/LadderOfAbstraction/)を読んでいます。 – Bringer128
それは私がちょうど後で読むためにブックマークした素晴らしい記事です。簡単な例で非常に有益です。 – SplinterReality
は、時間の経過とともにマウスの位置の分布を記録します。人間は、クリックされるたびにどこに配置するかを正確に把握しているロボットとは異なる方法でマウスを動かします。もちろん、スマートなロボットがこの防衛に逆らうことができます。
- 1. クリックとマウスとの区別を区別する
- 2. 時間を区別する方法は?
- 3. "人のユーザーアカウント"と "コンピュータのユーザーアカウント"を区別する方法はありますか?
- 4. キーボードとバーコードガンの間のキーイベントを区別する方法
- 5. マウスクリック間隔のリアルタイム測定
- 6. ASP.net - ページ送信時間とクライアント送信時間を区別する方法
- 7. 音声認識では、声を別の人と区別できる既存の研究はありますか?
- 8. は、単一の間で区別し
- 9. ホットリンクとサイトのユーザーを区別する
- 10. Windowsとdllを区別する方法
- 11. 水と土地を区別するアルゴリズム
- 12. ipadsとiphoneを区別するビューポート
- 13. アンドロイドスマートフォンとタブレットを区別する方法
- 14. Dashcode iPadとiPhoneブラウザを区別する
- 15. ßとssを区別するSQLクエリ
- 16. NTAG213とMF0ICU2を区別する
- 17. タップとドラッグを区別する方法
- 18. ALT + F4とタスクバークローズイベントを区別する
- 19. C++でフォルダとファイルを区別する
- 20. デザイナコードとランタイムコードを区別する
- 21. iOS - NSDictionaryとNSMutableDictionaryを区別する
- 22. レコードインスタンスとマップの区別
- 23. タイプエイリアスとタイプlambdaの区別
- 24. ブロック間の発音区別符を組み合わせるUnicode
- 25. Libgdx Draw 2回のマウスクリックの間
- 26. onProviderDisabled - プロバイダを区別する
- 27. アカウントを区別する
- 28. APKファイルを区別する
- 29. ランダムカラムMYSQLと区別する方法は?
- 30. 人名と動詞から派生した他の名前を区別する方法
*「人々がJavaロボットクラスを使用できないようにしたい」*他の言語のAPIのクラスのようなロボットを使用しても問題ありません。 –
好きではない場合は好きですが、JavaのRobotクラスの検出方法に問題を集中させたいので、そう言いました。 –