网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Jcrontab - java定时程序进阶学习.
.关于Java单元测试中的伪对象介绍.
.调试工具系列--java 正则表达式(.
.maven的POM结构.
.多线程在JAVA ME应用程序中的使用.
.Java设计模式之修饰模式篇.
.使用jetty配置 开发web应用.
.提升EJB性能的12招.
.Java与C的不同点.
.global 属性.
.Java模式研究袖珍版之Flyweight模.
.初学者入门篇:小议Java和C++区别.
.构建高性能J2EE应用的10个技巧.
.[学习笔记]Thinking in Java (th.
.在Java应用程序读取8位和24位Win.
.文件下载程序中文件名过长的问题.
.浅谈Hibernate获得成功的十大理由.
.Struts,MVC 的一种开放源码实现.
.JAVA程序员必读:基础篇(7)编程中.
.X3D实战基础讲座之七.

Sender ID框架规范概述

发表日期:2008-1-5



  前言:
  这篇文章是我为了配合朋友-Windows IT Pro杂志社的编辑小夫而非凡撰写的。因为时间仓促,难免有误,如有不正之处欢迎大家指正。
  
  Sender ID框架规范概述
  当今时代,网络早已根深蒂固的融入到了大家的日常生活中,电子邮件想必也早成为了大家联系亲朋好友乃至生意伙伴不可或缺的好帮手。也正因为电子邮件的如此流行,越来越多的人已经感受到了"垃圾邮件"带来的种种不便。而这些又被叫做junk e-mail或spam的垃圾邮件通常都是靠伪造发信人的地址来实现的。这也是我们一般都知道的技术术语"spoofing"(欺骗)的一种.
  
  现在产业界为了针对这一日趋突出的问题而联合推出了所谓的Sender ID框架,该框架就是针对垃圾邮件现象而提出的解决方案. 该框架由三个主要部分组成:
  
  1. 微软的Sender ID规范,
  
  2. pobox.com 的Meng Wong制定的邮件发送者策略框架(SPF),
  
  3. 递交者优化规范(SO).
  
  该框架的目的就是通过对每一封发出的邮件的域名进行自动审核。 只要能够做到消灭域名欺骗, 核实发送者身份,那么邮件发送者的域名,名誉和品牌都会自然得到保护,并且该框架规范还将协助邮件接受者可以更准确的进行针对垃圾邮件的过滤.
  
  现在该框架规范已经被递交给了因特网工程工作组(IETF)审核并等待批准。
  
  当前活跃在该框架规范化的各主要合作组织有:
  
  反垃圾技术联盟:Anti-Spam Technical Alliance (ASTA)
  
  全球国际网络安全基础构架联盟Global InfrastrUCture Alliance for Internet Safety (GIAIS)
  
  什么是Sender ID
  具体来说,
  
  1.Sender ID是一种保护邮件发送者的品牌和域名被冒用的方式
  
  2.Sender ID 是一种让邮件接受者核查邮件来源的方式
  
  3.可以容许采用更多的垃圾邮件过滤的方式
  
  4.是让域名被可靠使用的基础。
  
  注: Sender ID也不是完全的解决方法,因为垃圾邮件发送者也会注册他们的域名,不过这样做的好处是他们的域名可以被锁定。
  
  当前可以提供Sender ID框架方案的大型组织有:
  
  微软,VeriSign, BSP,Trusted E,IRONPOINT Systems,Send Mail,Symantec等。
  
  Sender ID 的工作原理
  这里有几个要害步骤:
  
  1. 发件者一次性登记自己的SPF记录后发送邮件给受件者.
  
  2. 收件者的邮件接受服务器接受邮件.
  
  3. 收件者的邮件服务器检查在邮件发送者登记在合法DNS里的邮件域名的SPF记录.
  
  4. 邮件接受服务器然后核实邮件发送服务器的IP地址是否吻合该邮件域名登记在合法DNS里的IP地址.
  
  5. 假如核实正确接受邮件。
  
  6. 假如核实不正确则拒绝邮件(如图)
  
Sender ID框架规范概述

  SPF记录的格式
  SPF记录的格式有很多种,我在这里只列举有两种最简单的举例说明:
  
  1.Domain.com TXT “v=spf1 -all”
  
  说明:这个域名永远不会发送邮件
  
  2.Domain.com TXT “v=spf1 mx -all”
  
  说明:这个域名可以发送和接受邮件,并且发送和接受的服务器是同一个
  
  假如要更具体的有关SPF记录的资料说明,你可以查阅http://www.zytrax.com/books/dns/ch9/spf.Html。
  
  什么是PRA
  PRA的意思是假想响应地址(Purported Responsible Address),也就是在邮件发送过程中所有邮件发送服务器的地址。PRA的来源有很多,比较常见的有:
  
  1.发送者源始服务器:(这种多发生在小型网络中,及发送者和接受者的邮件服务器中没有第三者存在)
  
  2.邮件转发服务器地址:(多发生在大型网络中,及发送者和接受者的邮件服务器中有第三者存在)
  
  3.更复杂的还包括邮件代发服务器地址:(这种通常就是当你浏览网页时,有的网页提供类似发给你的朋友之类的功能,你是邮件发送人,可是服务器却是该网站的邮件服务器)。
  
  假如要知道更多关于PRA的资料,你可以查询[RFC2822]
  
  http://community.roxen.com/developers/idocs/rfc/rfc822.html
  
  既然讲到了PRA,那么这里还有一个不得不提的就是Submitter Optimization(SO):
  
  这是一个相对于SMTP 邮件命令的可选延伸,它容许发件者在SMTP协议中公布PRA。
  
  假如一旦使用,只要PRA和邮件的来源不同,你就必须要在邮件的FROM命令里加入 “SUBMITTER=”的参数
  
  举例:
  
  下面我以一个比较具体的邮件例子来说明:
  
  S: 220 sample.domain.edu ESMTP server ready
  
  C: EHLO example.com
  
  S: 250- sample.domain.edu
  
  S: 250-DSN
  
  S: 250-AUTH
  
  S: 250-SUBMITTER  《=加入递交者对EHLO的回应
  
  S: 250 SIZE
  
  C: MAIL FROM: SUBMITTER=fumtek@example.com 《=递交者参数的注入
  
  S: 250 sender ok
  
  C: RCPT TO:
  
  S: 250 recipient ok
  
  C: DATA
  
  S: 354 okay, send message
  
  C: From: fumtek@example.com
  
  C: (message body goes here)
  
  C: .
  
  S: 250 message accepted
  
  C: QUIT
  
  S: 221 goodbye
  
  从上面的例子我们可以看到,一旦在SMTP协议中包括了递交者信息以及结合邮件发送者的SPF记录,垃圾邮件的查处就轻易多了。
  
  后记:虽然这是业界针对垃圾邮件及网络安全的一大动向,但是由于牵涉到的范围很大,真正可以具体实现的时间还需要我们拭目以待呀。
上一篇:如何判断字符串是否为空串? 人气:1177
下一篇:一个数据库序号类NoCtr类的实现 人气:537
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐