用 hashcash 打击垃圾邮件
2007-03-29 12:40:11 来源:WEB开发网为什么这会起作用?
生成一个 20-比特的戳记只需要几秒钟的时间。当您一天中只发送几十封电子邮件时,这个代价并不大。但是,对那些想要发送数百万消息的垃圾邮件制造者来说,不能容忍每条消息使用额外几秒的 CPU 时间。一天之中只有 86,400 秒。即使垃圾邮件制造者利用植入木马(trojans)的僵尸(zombies)的技术,需要使用具体的 hashcash 戳记至少也会减少那些僵尸进程的发出量。当然,校验一个戳记所需的时间只是一秒的一小部分。
另一方面,向您自己的 MUA 添加 hashcash 生成和校验对其他所有人没有任何负面影响(不像其他一些反垃圾邮件方法)。对那些不使用该协议的接收者而言,这些只是一个他们很容易忽略的附加头文件。对那些没有添加 hashcash 戳记的发送者而言,检验 X-Hashcash: 的接收者不用校验任何内容。如果发送者没有添加戳记,那么您的境况不会因为进行检验而变得更糟;也不会因此变得更好。
一个好的 MUA 或者垃圾邮件过滤系统可以将拥有合法 hashcash 戳记的电子邮件列入白名单(whitelist)。SpamAssassin 甚至更巧妙地为更多合法 hashcash 比特提供了更高的 +ve 分数。我认为,将基于 bashcash 的方法应用于白名单是对 TMDA 等交互式质询系统的改进 —— 质询消息在返回时不会丢失,发送者不会忘记响应质询。质询响应就在原始消息之中(作为一个 hashcash 戳记)。
hashcash 的其他应用
hashcash 对非交互式质询最为实用。不过,没有理由使得它不能同样用于交互式上下文中。随着更多工具增加了对 hashcash 的支持,尤其是 Mozilla 套件等多用途应用程序,在交互式和非交互式条件下使用 bashcash 都同样变得更加简单。
例如,如果 Thunderbird 邮件工具得到了进行 hashcash 计算的 API 调用,那么它应该直接让它的同属工具 Firefox Web 浏览器用与生成 hashcash 戳记的 API 去响应交互式质询。
更多精彩
赞助商链接