it-swarm.cn

有效的验证码解决方案

可能重复:
我如何防止我控制的网站上的垃圾邮件?

ReCaptcha目前风靡一时,

根据客户/用户反馈,您为网站使用了哪些其他验证码或一般人工验证工具?

链接到API/Site appriciated,

多谢你们!

16
Aiden Bell

我喜欢在我的表单中使用Honeypots,因为用户不会注意到它们,它们保留了大部分废话,但并非100%万无一失。诀窍是在现有表单中创建一个新的表单字段,例如<input type="text" name="email" id="mailfield"/>并将#mailfield { display: none; }放在CSS中。如果您的表单与电子邮件字段中的数据一起提交,您可以非常确定它是一个机器人并丢弃该消息。

18
D4V360

使用时间戳,微调器,字段名称和蜜罐的组合......

阅读 本文 详细示例。

一个时间戳就是它听起来的样子。隐藏字段,用于标记最初打开表单的时间。这使得复制表单的回放机器人失败,并且每次都使用不同的数据反复重放提交过程。如果时间戳与表单提交时的距离不够,则会自动拒绝提交。

A微调器是使用来自时间戳,IP地址,文章的条目ID和秘密的数据的哈希。

字段名称都是通过将哈希应用于“真实”字段名称生成的。通过在后处理阶段将字段名称与微调器进行比较,您可以验证人员/机器人是否与最初打开表单的人员相同。

蜜罐已由@ D4V360解释。它本质上是一个隐藏的领域,充当机器人的隐形陷阱。如果它填入了数据,则表单会自动被拒绝。

9
Evan Plaice

我喜欢低技术:做一个简单的数学问题很有效。

Enter what 4 + 4 adds up to:

然后在服务器端检查8

这是我在使用 数学评论垃圾邮件保护插件 的博客上成功使用的。

在表单中添加一个额外的字段,如:

<input name="bots_only" value="" style="display: none" />

通常,如果bots_only与值一起传递,那么你就有了机器人。虽然没有CSS的浏览器会看到该字段,但如果您将其放在提交按钮之后,即使由于某种原因可见,它也会被忽略。

3
artlung

我也使用过简单的自然语言挑战,例如:

A ________ is something with numbered pages surrounded by two covers.
Hint: Rhymes with look

这种方法的注意事项是必须为你想要支持的每种语言维护一个单独的挑战/提示/答案文件,但是我越来越倾向于这个方向,因为有些人越来越难以阅读CAPTCHA图像。例如,我的妻子戴着大量的矫正镜片,并且当她多次未通过“人工检查”时会非常沮丧,即使该网站正在使用RE-CAPTCHA。

纯文本中的挑战也可以随着用户根据自己的喜好设置可访问性控制而进行更改。

访问者的唯一要求是基本的识字程度,因此这可能不适用于YouTube或Yahoo Answers等网站。

2
Tim Post

值得注意的一件事是,更多和 更多的垃圾邮件发送者正在使用真人 做他们的工作,而不是机器人。在这种情况下,担心使用哪个验证码或蜜罐不会非常有用。

1
Piers Karsenbarg

Captcha2 是另一种选择。按照屏幕上的说明点击三个字母即可。不确定这如何抵御国际化。在前1000次展示后,它也不是免费的。如果你想要更轻松的事情那么 KittenAuth 很有趣 - 点击3只小猫继续。最后,要了解验证码如何经受自动化破解,请查看 PWNtcha 站点。它有一个开源解决方案,用于破解验证码以及最棘手类型的细节。

1
Wolfwyrd

我只管理了一个基于phpBB的论坛。 Recaptcha是一个天赐之物,将其设置为用户注册,未注册的帖子将垃圾邮件减少到一小部分。此外,我们仍然使用黑名单过滤器,它可以阻止一些剩余的垃圾邮件,但可能比有用的更烦人。

0
reinierpost

我使用广告 Captcha 。它既简洁又有效,但更重要的是:它使用Ads作为验证码。所以,每当有人评论,我都会赚钱。这是一个很大的好处,因为我总是使用一些验证码。垃圾邮件预防方式:它将我的垃圾邮件减少到0。

0
Elad