WEB开发网
开发学院软件开发Python 用 hashcash 打击垃圾邮件 阅读

用 hashcash 打击垃圾邮件

 2007-03-29 12:40:11 来源:WEB开发网   
核心提示:hashcash 是一个基于可广泛应用的 SHA-1 算法的巧妙系统,它使得请求者要进行大量可参数化的工作,用 hashcash 打击垃圾邮件,而求值程序仍可以“廉价”地进行检验,换句话说,CPU 周期就是金钱),但首先找到那些因数,发送者为了向您的收件箱中放入一些内容,不得不去做一些切实的工作

hashcash 是一个基于可广泛应用的 SHA-1 算法的巧妙系统,它使得请求者要进行大量可参数化的工作,而求值程序仍可以“廉价”地进行检验。换句话说,发送者为了向您的收件箱中放入一些内容,不得不去做一些切实的工作。您当然可以使用 hashcash 来防止垃圾邮件,不过它还有其他方面的应用,其中包括为 Wiki 防止垃圾邮件以及加速分布式并行应用程序的运转。在本文中,您将接触到 David 自己的基于 Python 的 hashcash 实现。

hashcash.org Web 站点(请参阅 参考资料)指出,hashcash 系统的主要功能是作为一个垃圾邮件过滤协议

Hashcash 是一个拒绝服务(denial-of-service)计数器度量工具。当前它的主要作用是帮助 hashcash 用户避免因为使用了基于内容和基于黑名单的(blacklist-based)反垃圾邮件系统而丢失邮件。

可是,我认为,这项技术有着广泛的适用性,并不是只适用于电子邮件。本文还将介绍这项技术在邮件过滤方面的应用,并将提供它在其他一些方面的应用。文中将介绍我自己用 Python 完成的 hashcash 实现(它似乎是第一个 当前 发布的 Python 版本),hashcash.org 站点上现在已经包含该实现。David McNab 创建了一个 Python 实现,该实现使用的协议与 hashcash 不是特别相似;其他一些开发人员也创建了部分实现 hashcash 的不完全的 Pytyhon 版本。

不过,在开始这些话题之前,让我们来回顾一下什么是 hashcash。

hashcash 基础知识

hashcash 的灵感来自于这样一个想法,即一些数学结果 难于发现而易于校验。一个众所周知的例子是因数分解一个大的数字(尤其是因数较少的数字)。将一些数字相乘来获得它们的积的代价是低廉的(毕竟,CPU 周期就是金钱),但首先找到那些因数,而这项操作的代价却要高得多。

1 2 3 4 5 6  下一页

Tags:hashcash 打击 垃圾

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接