カテゴリー
ネットのサービス

CodeCaptcha – プログラマーだけを通すための CAPTCHA サービス

CodeCaptcha.io は、文字通り Code で CAPTCHA させるためのサービスです。

webサービスの利用や登録時に、プログラム(bot)による不正な自動投稿や大量の連続投稿・いやがらせなどを防ぐため、人間でないとできない入力を要求する CAPTCHA 、一番よく見かけるのはグネグネと曲げられたりした文字列を入力するものだと思います。

一般的なCAPTCHA の目的はbot を弾いて人間を通す関所のような役目ですが、CodeCaptcha では、この通行資格を人間ではなくプログラマ、あるいは少なくともプログラミングが多少わかる人、としているわけです。

デモで出てくるプログラムはこちら。

「プログラマといったって、道具も言語も人によってバラバラだろうし、どんな問題が出るのか?」と思いましたが、言語は JavaScript です。特にweb系のプログラマ向けなら妥当な選択ですね。そして、その中身もこれぐらいなら他言語しか知らないプログラマでも問題ないかと。

function isEvenNumber(num) {
return false; // Fix this
}

// Fix this とあるように、関数名の意図にあうような結果を出すようにこのプログラムを直せばいいんですね。

コードを書き換えるにつれて、リアルタイムでテスト結果が下部に表示されます。

テストが通るように修正を終えると、PASSED となり、設定された目的の画面に移行します。

問題はリロードのたびに違うものが出てきますが、どれも非常に簡単なレベルのものです。

これについては、今後リンク作成時に問題の難易度を選べるようにしたいということですので、うんうんうなって時間を掛けないと解けない CodeCaptcha も使えるようになるかもしれません。

「リンクをシェアしたいけれど、シェアする相手はプログラマに限定したい」時などに使ってください、ということでした。

via Hacker News

カテゴリー
セキュリティ

PoW! Capthca – クライアント側で重い計算をさせるCAPTCHA

PoW! Captcha は、Proof of Work (作業量証明)を組み込んだ CAPTCHA ライブラリです。

ウェブサイトのコメント欄で使われるときのイメージが公開されています

コメント欄の下にプログレスバーが出ていて、これがブラウザが与えられた計算をこなしている進度を示すようです。計算が完了すると投稿ボタンが押せるようになり、コメントを投稿できます。

どうしてこれでスパム投稿が防げるかというと、ブラウザ上で計算するときに消費される計算資源はスパマーのマシンにあるからですね。スパム投稿で同時や連続で多数のコメントをしようとすると、クライアントPC のリソースが大量に使われて動かなくなると。

PoW Captcha も、Pow Captcha が参考にした同様の mCaptcha も、このPoW 方式の利点としてユーザーの追跡をする必要がないことを押し出しています。ローカルで計算させるだけですからね。

依存ライブラリもなくコードもコンパクトだということです。

チューリングテストではないので正確には CAPTCHA じゃありませんが、不正な大量リトライを予防するという意味では CAPTCHA と同様の働きをするのかもしれません。

via Hacker News

カテゴリー
fun

新CAPTCHAを解くロボット

読みにくい画像の文字を入れることを要求されず、「私はロボットではありません」とクリックするだけの新しいタイプのCAPTCHAが普及していますが、それを扱った動画が50万回ほど再生されていました。

「人とbotではクリックする時の時間やクリックする場所が異なる」という前提でCAPTCHAを突破した、というネタに見えますが、実際のところはそういう仕組みではないんですけどね。

Googleは、そのPC/ブラウザ上でこれまでユーザーが見てきたサイト・ページを多く把握していて、そこから利用者がプログラムではなく人間である、という確信が十分に取れた時に、このような「私はロボットではありません」というチェックを入れるだけで先に進めるようにしています。

この動画のパソコンも、ロボットアームの設定をする前までさんざん人力で使っていたパソコンで、その流れて人力だと判定される状態なだけで、もっと人間の行動に似ていない位置や速度でのクリックでも、この場合は通っているはずです。

だから、アームロボットを大量に発注しても無駄ですよ > スパム業者の人

via reddit