目に見えない良いキャプチャとは何ですか? 私のサイトでは JavaScript が必要なので、それが必要なものは何でも問題ありません。
6 に答える
新しい入力フィールドを追加し、「空白のままにしてください」というラベルを付け、CSS を使用して非表示にし、そのフィールドが入力されている場合は投稿を無視します。次のようなものです。
<style type='text/css'>
#other_email_label, #other_email {
display: none;
}
</style>
...
<form action='mail'>
<label id='other_email_label' for='other_email'>Please leave blank:</label>
<input type='text' name='other_email' id='other_email'>
...
</form>
そのため、人間にはそのフィールドは表示されませんが (CSS がオフになっていない限り、ラベルが表示されて空白のままになります)、スパム ロボットが入力します。そのフィールドが入力された投稿は、スパムロボット。
これは、Phil Haackによる簡単な数学のキャプチャです。JavaScriptを無効にしても動作します。
彼自身の言葉で:
それが機能する方法は、javascript をレンダリングして非常に単純な計算を実行し、javascript を使用して非表示のテキスト フィールドに答えを書き込むことです。ユーザーがフォームを送信すると、非表示のフォーム フィールドから送信された値を取得し、秘密のソルト値と組み合わせて、全体をハッシュします。次に、この値を base64 エンコードされた隠しフォーム フィールドに格納されている予想される回答のハッシュと比較します。JavaScript が無効になっている場合は、質問が表示されるテキスト フィールドの横にテキストとして表示されるため、JavaScript を使用していないブラウザーでサイトを閲覧しているユーザーにコメントする機会が与えられます。
私は、Display:None テキスト ボックスの手法を使用し、それを埋める送信を拒否しましたが、それでかなりうまくいきました。
Google が 'Invisible ReCAPTCHA' ( https://www.google.com/recaptcha/intro/comingsoon/invisible.html ) を展開している価値があるため、私は自分のサイトで既にホワイトリストに登録されています。現時点ではそれを実装していますが、ドキュメントはそれほど精巧ではありません...:)
もしあなたが意味するなら-人間が見ることができないキャプチャを人間の検証テストとして使用する-それは不可能だと思います。
このようにして、キャプチャを無視するロボットは実在の人物と見なされます! 単純なスパム ロボットの罠のようです。
キャプチャで保護されたサイトを JavaScript を持たないクライアントで動作させたい場合は、サイトを html にハードコードする必要があります。
また、信頼できるユーザーを確実に特定できる場合 (判断判断または使用パターンの検出によって)、キャプチャなしでサイトに投稿できるようにすることができます。